电子设计竞赛培训数字电路黄正华2013年8月1.组合逻辑电路2.锁存器与触发器3.时序逻辑电路4.脉冲波形的变换与产生5.EDA设计一、组合电路的特点=F0(I0、I1…,In-1)=F1(I0、I1…,In-1)=F1(I0、I1…,In-1))]([)(nntIFtY1.逻辑功能特点电路在任何时刻的输出状态只取决于该时刻的输入状态,而与原来的状态无关。2.电路结构特点(1)输出、输入之间没有反馈延迟电路(2)不包含记忆性元件(触发器),仅由门电路构成I0I1In-1Y0Y1Ym-1组合逻辑电路1.组合逻辑电路二、组合电路逻辑功能表示方法真值表,卡诺图,逻辑表达式,时间图(波形图)三、组合电路分类1.按逻辑功能不同:加法器比较器编码器译码器数据选择器和分配器只读存储器2.按开关元件不同:CMOSTTL3.按集成度不同:SSIMSILSIVLSI典型组合逻辑集成电路真值表,功能表编码器:2n→n普通编码器/优先编码器使能端CD4532:8-3线优先编码器译码器/数据分配器:n→2n译码器扩展:正确设置使能端逻辑函数用译码器实现:译码器输出端为输入函数最小项74X138:2-4线译码器74X139:3-8线译码器数据选择器MUX地址选择端-n、输入数据源端-2n,输出端-单/互补数据选择器扩展逻辑函数发生器:类似译码器数据选择器输出端为地址选择端最小项与各输入数据源端乘积之和74HC151:地址选择端-3、数据源端-8数值比较器3个输出端:FAB,FAB,FA=B位数扩展确定高低位比较顺序,扩展输入端连接串/并联比较方式选择74HC85:4位数值比较器iiDmY半加器、全加器区别:进位操作串行进位加法器结构简单,速度慢超前进位加法器位数扩展确定高低位顺序上级进位输出端与下级进位输入端连接串/并联方式选择;级间超前进位74HC283:4位超前进位加法器74LS182:超前进位产生器减法器正数用原码表示,负数用补码表示用加法器实现74HC181:集成算术/逻辑单元ALU通过选择端实现各种不同功能两片3线–8线4线-16线Y0Y7Y8Y1574LS138Y0Y1Y2Y3Y4Y5Y6A0A1A2STBSTCSTA高位Y7A0A1A2A374LS138Y0Y1Y2Y3Y4Y5Y6A0A1A2STBSTCSTA低位Y710工作禁止有输出无输出1禁止工作无输出有输出07815三片3线-8线5线-24线34AA(1)(2)(3)输出工禁禁70~YY禁工禁158~YY禁禁工2316~YY00011011禁禁禁全为174LS138(1)Y0Y1Y2Y3Y4Y5Y6A0A1A2STBSTCSTAY0Y7Y774LS138(3)Y0Y1Y2Y3Y4Y5Y6A0A1A2STBSTCSTAY16Y7Y2374LS138(2)Y0Y1Y2Y3Y4Y5Y6A0A1A2STBSTCSTAY8Y7Y15A0A1A2A3A4………………1两片8选1(74151)16选1数据选择器A2A1A0A3D15D8≥1Y1S74151(2)D7A2D0ENA0A1YY2……D7D074151(1)D7A2D0ENA0A1SYY1……低位高位0禁止使能070D0D7D0D71使能禁止D8D150D8D15用MSI实现组合逻辑函数1.用数据选择器实现组合逻辑函数一、基本原理和步骤1.原理:选择器输出为标准与或式,含地址变量的全部最小项。例如而任何组合逻辑函数都可以表示成为最小项之和的形式,故可用数据选择器实现。013012011010AADAADAADAADY01270120AAADAAADY4选18选12.步骤(1)根据n=k-1确定数据选择器的规模和型号(n—选择器地址码,k—函数的变量个数)(2)写出函数的标准与或式和选择器输出信号表达式(3)对照比较确定选择器各个输入变量的表达式(4)根据采用的数据选择器和求出的表达式画出连线图2.用二进制译码器实现组合逻辑函数一、基本原理与步骤1.基本原理:二进制译码器又叫变量译码器或最小项译码器,它的输出端提供了其输入变量的全部最小项。0127AAAY0120AAAY0121AAAY0,1321SSS0m1m7m任何一个函数都可以写成最小项之和的形式…74LS138Y0Y1Y2Y3Y4Y5Y6A0A1A2S3S2S1Y0Y1Y2Y3Y4Y5Y6Y7A0A1A2STBSTCSTAY72.基本步骤(1)选择集成二进制译码器(2)写函数的标准与非-与非式(3)确认变量和输入关系(4)画连线图毛刺很窄,因此常在输出端对地并接滤波电容C,或在本级输出端与下级输入端之间,串接一个积分电路,可将尖峰脉冲消除。但C或R、C的引入会使输出波形边沿变斜,故参数要选择合适,一般由实验确定。三、竞争-冒险现象的消除1.接入滤波电容法加滤波电路排除冒险(a)RCU0(b)U1U0毛刺仅发生在输入信号变化的瞬间,因此在这段时间内先将门封锁,待电路进入稳态后,再加选通脉冲使输出门电路开门。这样可以抑制尖峰脉冲的输出。该方法简单易行,但选通信号的作用时间和极性等一定要合适。2.引入选通脉冲法利用选通脉冲克服冒险选通脉冲1ABCL&D111ALD选通脉冲ABCAB=C=1只要在其卡诺图上两卡诺圈相切处加一个卡诺圈,即增加了一个冗余项,就可消除逻辑冒险。BCCAABY3.修改逻辑设计法--增加冗余项ABC0100011110Y1111CAABY2.锁存器和触发器1.双稳态存储单元2.锁存器:电平敏感SR锁存器:Set置1,Reset置0D锁存器74HCHCT373:八D锁存器功能表、国标逻辑符号、波形图动态特性:延时3.触发器:脉冲敏感现态Qn,次态Qn+1,特性方程D触发器:Qn+1=DJK触发器:T触发器:T’触发器:SR触发器:特性方程、特性表国标逻辑符号、波形图、状态图触发器功能转换:特性方程相等nnnQKQJQ1nnnQTQTQ10,1SRQRSQnnnnnnQQTQTQT1,1一、时序电路的特点1.定义任何时刻电路的输出,不仅和该时刻的输入信号有关,而且还取决于电路原来的状态。2.电路特点(1)与时间因素(CP)有关;(2)含有记忆性的元件(触发器)。组合逻辑电路存储电路…………x1…xiy1…yjw1wkq1ql输入输出3.时序逻辑电路二、时序电路逻辑功能表示方法1.逻辑表达式(1)输出方程)](),([)(nnntQtXFtY(3)状态方程)](),([)(1nnntQtWHtQ(2)驱动方程)](),([)(nnntQtXGtW2.状态表、卡诺图、状态图和时序图组合逻辑电路存储电路…………x1…xiy1…yjw1wkq1qlx1y1y2JKQ1Q2x21J1KC1CP三、时序逻辑电路分类1.按逻辑功能划分:计数器、寄存器、读/写存储器、顺序脉冲发生器等。2.按时钟控制方式划分:同步时序电路触发器共用一个时钟CP,要更新状态的触发器同时翻转。异步时序电路电路中所有触发器没有共用一个CP。3.按输出信号的特性划分:Moore型)]([)(nntQFtYMealy型)](),([)(nnntQtXFtY存储电路Y(tn)输出WQX(tn)输入组合电路CPY(tn)输出CPX(tn)输入存储电路组合电路组合电路时序电路的基本设计方法1.设计的一般步骤时序逻辑问题逻辑抽象状态转换图(表)状态化简最简状态转换图(表)电路方程式(状态方程)求出驱动方程选定触发器的类型逻辑电路图检查能否自启动4.典型时序逻辑集成电路移位寄存器LSB→MSB:从左到右,从上到下左移←、右移→74HC/HCT194:多功能双向移位寄存器左移、右移、并行输入、并行输出、串行输入异步二进制计数器纹波计数器(各级延时)各级输出构成分频器74HC/HCT393:双四位异步二进制计数器4.典型时序逻辑集成电路同步二进制计数器触发器同时翻转,速度快,无纹波74LVC161:同步二进制加计数器并行数据同步预置、异步清零、左移、右移、并行输入、并行输出、串行输入非二进制计数器纹波计数器(各级延时)各级输出构成分频器74HC/HCT390:双异步二-十进制计数器4.典型时序逻辑集成电路任意进制(N)计数器采用M进制集成计数器实现反馈清零法反馈置数法进制扩展(NM)进位控制4.脉冲波形的变换与产生1.单稳态触发器特点①单稳态触发器只有一个稳态,还有一个暂稳态,在没有触发信号作用时处于稳定状态②在外来触发信号作用下,电路由稳态翻转到暂稳态③暂稳态维持一定时间后,电路自动回到稳态,暂稳态维持一定时间的长短,取决于电路本身的RC参数波形图:输出脉冲宽度tw≈0.7RC74121:不可重复触发单稳态触发器MC14528:可重复触发单稳态触发器应用:定时、延时、噪声消除2.施密特触发器特点施密特触发器属于电平触发器件,当输入信号达到某一定电压值时,输出电压会发生突变阈值电压正向阈值电压(VT+):输入信号增加负向阈值电压(VT-):输入信号减少回差电压△V=VT+-VT-两种输出形式:同相输出和反相输出工作波形、传输特性门电路构成施密特触发器VT+、VT-、△VCD40106:集成施密特触发器3.多谐振荡器特点多谐振荡器又称矩形波发生器,无稳定状态,有两个暂稳态,电路一旦起振,两个暂稳态就交替变化,不停地输出矩形脉冲信号。基本组成:开关器件,RC门电路构成多谐振荡器t≈1.4RC施密特触发器构成多谐振荡器3.555定时器构成:分压器、电压比较器、SR锁存器、放电三极管、缓冲器各引脚与电路对应关系应用施密特触发器单稳态触发器多谐振荡器5.EDA设计2、编码器设计一个8输入优先级编码器,y0级别最低,y7级别最高;输出为3位编码。3、译码器译码器是编码器的逆过程。如3-8译码器:译码输出低有效4、加法器带进位的4位加法器符号如下:方法1:用for–loop语句实现方法2:直接使用加法“+”函数:加法器仿真结果:5、多路选择器前面用if语句、case语句、条件赋值语句、选择赋值语句分别描述过4选1选择器。6、三态门及总线缓冲器VHDL语言通过指定大写的Z值表示高阻状态a:std_logic;a_bus:std_logic_vector(7downto0);指定高阻状态如下:a=‘Z’;a_bus=“ZZZZZZZZ”;1)三态门电路描述三态门仿真结果:2)单向总线缓冲器3)双向总线缓冲器二、常用时序电路设计1、触发器(Flip_Flop)1)D触发器异步置位/复位D触发器同步复位D触发器比较:异步置位的锁存器(Latch)2、寄存器8位串行输入、串行输出移位寄存器:8位移位寄存器描述(结构描述)8位移位寄存器直接用信号连接描述移位寄存器仿真结果:带允许端的十二进制计数器可逆计数器(加减计数器)可逆计数器仿真结果:例:六十进制(分、秒)计数器60进制计数器仿真结果:例:由8个触发器构成的行波计数器:基本元件dffr的描述:采用元件例化描述8位行波计数器:8位行波计数器仿真结果:摩尔状态机的VHDL设计摩尔型状态机的输出仅与当前状态有关次态逻辑状态寄存器次态逻辑复位信号时钟信号输入次态当前状态输出摩尔型状态机真值表:当前状态下一状态输出X=0X=1S0S0S20S1S0S21S2S2S31S3S3S10米勒状态机的VHDL设计米勒型状态机的输出不仅是当前状态的函数,也是输入信号的函数。次态逻辑状态寄存器次态逻辑复位信号时钟信号输入次态当前状态输出米勒型状态机真值表:当前状态下一状态输出X=0X=1X=0X=1S0S0S201S1S0S200S2S2S310S3S3S101