数字电路基础-逻辑函数及其化简

545 阅读6分钟

1 低功耗设计;

2 数字CMOS逻辑基础知识;

3 矩阵运算,浮点运算近似为定点运算

4 硅农:视频图像处理:基于FPGA的数字字符识别系统

存储器

ROM:只读寄存器,手机,计算机等设备的存储器。

EEPROM: 电可擦除可编程只读存储器。

RAM:随机存取存储器,手机,计算机的运行内存。

SRAM:静态随机存取存储器,只要供电就会保持,但断电数据就会消失。

DRAM:动态随机存储器,利用电容存储电荷的多少来存储,需要不断进行刷新。SRAM不需要刷新也会保持数据,但是两者断电后数据都会消失。

SDRAM:同步动态随机存储器,同时写入和读出的DRAM。

DDR:Double data sdram 双倍速率同步动态随机存储器,双倍速率传输的SDRAM,在时钟上升沿和下降沿都可以进行数据传输。电脑内存条都是DDR芯片。

FLASH:闪存,内存卡或u盘。

数字电路基础

1 byte = 8bit

1word = 2byte

1dword 双字 = 2word

1qword = 4word

原码、反码、补码 以8bit为例

原码为 符号位+真值,最高位为符号位 -127 - +127

反码,正数的反码为他本身,负数的反码为原码除符号位外,逐位取反。

补码,正数的表示与原码相同。 对于负数,补码的计算方式为,除符号位外,原码取反加1。即反码加1。

对于无符号数,原码反码补码都是其本身。

数值转换:

十进制转R进制: 整数部分,除R取余法,除到商为为止。小数部分,乘R取整法,乘到积为为止。

二进制转八进制: 三位一组,整数部分左边补0,小数部分右边补0。

二进制转十六进制: 四位一组,整数左边补0,小数右边补0。

逻辑函数及其化简

公式法:

卡诺图:

五种常用的复合逻辑运算:

与非 或非 与或非 异或 同或

image.png

逻辑代数基本定律:

重叠:A+A= A

分配律:A+BC = (A+B)(A+C)

互补律:A+A非 = 1

吸收律: A+ AB = A

A+A非B = A+B

反演律: A+B 的非 = A非 乘 B非

AB 的非 = A的非+B非

包含律: AB+A非C+BC = AB+ A非C

image.png

image.png 代入规则

对偶规则

反演规则

image.png

逻辑函数化简及真值表

image.png

TTL和CMOS:

TTL与非门电路,CMOS门电路结构简单,功耗低,集成度高。 TTL和CMOS是目前应用最广泛的两种数字集成电路。

实际数字电路中根据需要,常常有两种负载并存的情况。从而出现这两种门电路之间的接口问题。其主要问题是驱动门与负载门之间的高低电平是否符合标准,驱动门是否有足够驱动电流。

1 TTL门电路驱动CMOS门电路

当TTL门电路驱动CMOS门电路时,主要考虑的问题是TTL门电路的输出高电平是否满足CMOS门电路的输入电平要求。一般TTL门电路采用+5V直流电源供电。

如果CMOS门电路的电源也是+5V,要求TTL门电路输出的高电平能够大于CMOS门电路的输入高电平,为此在TTL门电路的输出端与CMOS电源之间接一上拉电阻。如果CMOS电源大于TTL电源电压,则不可以。

上拉电阻和下拉电阻:

上拉电阻一般是一端接电源,一端接芯片管脚的电路中的电阻。

上拉就是将不确定的信号通过一个电阻钳位在高电平,电阻同时起限流作用。

下拉电阻一般是指一端接芯片管脚一端接地的电阻。 当电路中出现高阻态时,而这时人们不希望存在高阻态,这时就会使用上拉电阻或下拉电阻来给引脚一个稳定的电平。

下拉同理,也是将不确定的信号通过一个电阻钳位在低电平。 上拉是对器件输入电流,下拉是输出电流。

2 CMOS门电路驱动TTL门电路

当用CMOS门电路驱动TTL门电路,需要考虑如何提高CMOS门电路在输出低电平时吸收负载电流的能力。

一般在CMOS门电路的输出端增加一级CMOS驱动器。

3 多余输入端的处理

集成逻辑门电路在使用时,经常会遇到不使用的剩余输入端情况,一般是不让多余的输入端悬空,以避免干扰信号引入。对多余输入端的处理是以不影响电路正常的逻辑关系及稳定可靠为原则。

对于TTL与非门,一般让多余输入端通过上拉电阻接电源正端,也可以将他们与信号输入端并连在一起。对于CMOS电路,多余输入端可根据需要使之接地,也可以直接接+UDD。

什么是竞争和冒险,怎么消除

组合逻辑电平电路的分析和设计时,是以输入输出电平 已处于稳定状态为前提进行的。没有涉及两个逻辑电路在两个稳态之间转换时可能出现的问题。

没有考虑门电路的延时时间对逻辑电路产生的影响,实际上,信号从输入到输出的过程中,所通过的路径不同,经过的门的级数不同,延迟时间也不尽相同。这些因素都有可能造成一个输入信号经过不同的路径到达同一点的时间不同,这种现象称为竞争。

信号经非门 相与运算。理想情况的输出应该是一直稳定的0输出,但实际每个门电路从输入到输出一定会有时间延迟,这个时间通常叫做电路的开关延迟。

算上逻辑门的延迟的话,输出F就会产生毛刺,信号经过不同路径传输到达某一汇合点的时间有前有后的现象,就称为竞争。

由于竞争现象所引起逻辑电路输出发生瞬间错误的现象,这一现象称为冒险。

FPGA最简单的避免方法是尽量使用时序逻辑同步输入输出。 image.png

解决方法

增加冗余项: 在逻辑表达式中添加多余项,消除冒险现象。

增加滤波电容。

加选通信号,避开毛刺。