近期重新学习数字电子技术基础,知识点有些多,读者也是边学习边整理,如文中有出现错误,欢迎指正!要是是习题的问题,希望各位认真思考后再提问,谢谢!
教材为阎石老师版本,第六版,全文按照教材顺序进行。
如若想系统学习,这边建议B站或慕课,清华大学王红老师主讲版本或者西安工业大学版本。
-
原码、反码、补码的概念
原码:加一个符号位,其1表示负数,0表示正数(如+1000=01000;-1000=11000)
反码:正数反码和原码一样,负数除去符号位都取反(如(-1000)=10111)
补码:正数和原码一样,负数在其反码的基础上加1(如(-1000)=11000)
总结: “即正数原码、反码和补码都一样,负数的反码除去符号位都取反,补码在其反码的基础上再加1即可”
例: 1101-1011
【 注:一般不会用这种形式考,而是给出11-8类似的形式,让你用补码进行计算,其做题方法化为二进制,正负数补码形式进行相应的计算即可。】
【遵循逢二进一的原则,计算机内部没有减法,都是利用补码原理进行减法运算】
3. 加法运算
例:1010+0011
其中涉及到乘法、除法运算的可能性很低很低,如有涉及,一般出现在计算机组成原理中,所以没有整理关于乘除法的知识点,如有需要,评论区留言即可。
printf("当前数电学习进度1%。\n");
【第一章考点分为三个模块:数制转换;原码、反码、补码转换;二进制补码运算,没有其它难点,所以复习时只需牢固掌握基础计算即可。题不用做很多,每个类型掌握计算即可,万变不离其宗。】
对于任意一个逻辑式Y,若将其所有的“.”换成“+”,“+”换成“.”,0换成1,1换成0,原变量换成反变量,反变量换成原变量,则得到的结果就是Y’。
如Y=A(B+C)+CD 则Y’=(A’+B’C’)(C’+D’)
即乘换成加,加换成乘,原边反,反边原。
对于任意一个逻辑式Y,若将其所有的“.”换成“+”,“+”换成“.”,0换成1,1换成0,则得到的一个新的逻辑式就是Y(D这个D在右上角,我打不上去,只好搁在这里)。
如:Y=A(B+C) 则Y(D)=A+BC
【对偶与反演不同的一点是原变量和反变量不会相互变化,只需乘边加加变乘而已】
输入与输出之间对应的一种函数关系,记作Y=F(A,B,…),比如只要我知道ABC…的状态(0或1)我就可以唯一确定Y。
-
逻辑真值表
部分截图,也就是ABC的输入对应着Y的输出。
2.逻辑函数式
比如:Y=A(B+C)
3.逻辑图
利用前面所学的与或非的关系,根据Y=ABC或其它式子画出对应的逻辑图。
此图为Y=A(B+C)的逻辑图
4.波形图(本章了解即可,第五章有详细说明)
其中低电平对应着0,高电平对应着1。
5、各种描述方法间的相互转换
真值表与逻辑函数式的转换:
其中0代表着非,1与0恰好相反,比如此图中Y=A’B’C’+A’BC+AB’C+ABC’(Y的输出为1的需要写出来,为0的则不需要写出来)
逻辑函数式与逻辑图的相互转换
它为逻辑表达式Y=(A+B’C)‘+A’BC’+C的逻辑图!
波形图与真值表的相互转换
也就是ABC的状态与Y一一对应
6、最小项
比如0010可以记作m2
比如1000可以记作m8
再比如:
-
普通编码器
编码器的功能就是将输入的每一个高、低电平信号编成一个对应的二进制代码。其本质就是赋予二进制代码特定含义的过程,
一般分为普通编码器和优先编码器两类。
普通和优先的区别在于普通编码器要求只输入一个有效编码信号,而优先编码器允许多个有效编码信号的输入,但是我只会从优先级最高的那个开始,比如3-8线优先编码器,则最先从I7开始编码。
普通编码器(任何时刻只允许输入一个编码信号,否则输出将发生混乱!)
>
-
3-8线集成优先编码器(不太重要~)
允许同时输入两个以上的编码信号!
其中小圆圈代表该管低电平有效!S’为选通输入端,只有在S’=0的条件下,编码器才能正常工作。而在S’=1时,所有的输出端均被锁在高电平。
其真值表如上图,注意,输出端Y均为反码输出!
后面还有一个二=十进制编码器74HC147,这个了解即可。
3、译码器
将每个输入的二进制代码译成对应的输出高、低电平信号或另外一个代码,因此,译码是编码的反操作。常用的译码器有二进制译码器、二-十进制译码器和显示译码器三类。
二进制译码器
(这款是用二极管与门阵列构成的译码器,缺点多,不常用)
与非门3线-8线译码器74HC138(CMOS门电路组成,低电平有效!必须掌握!)
其中,S1为1,S2’+S3’=0时,译码器处于工作状态;否则,译码器被禁止,所有输出端被封锁在高电平。
二-十进制译码器74HC42(低电平有效!具有拒绝伪码功能!)
显示译码器(七段字符显示译码器)
常见的七段字符显示译码器有半导体数码管和液晶显示器两种,其中需要掌握的是前者!
因为这种数码管的每个线段都是一个发光二极管,所以也称为LED数码管或LED七段显示译码器!其为了增加使用的灵活性,同一规格的数码管一般都有共阴极和共阳极两种类型可以供选用。
半导体数码管优点有:工作电压低、体积小、寿命长、可靠性高、响应时间短、亮度较高。
半导体数码管缺点:工作电流比较大。
4、数据选择器(超级重要!必须掌握!)
从一组输入数据中选出特定的数据。
二选一选择器(最小的选择器,了解即可)
四选一选择器(74LS153,掌握!)
其中A1和A0为两位输入地址,Y为一个输出数据,E为一个输入控制(低电平有效),D0D1D2D3为四路输入数据(这里可以发现数据选择器输入数据不考虑有效方式)。
双四选一数据选择器74HC153(掌握!)
原理和4选1选择器一样,S2和S1接低电平有效,A1A0为两位输入地址,Y2和Y1为输出,D为输入数据,与之不同的一点就是双4选1选择器内部有两个相同的4选1选择器的单元的模块。
八选一选择器(74HC151掌握!)
5、加法器(原理必须掌握!)
比如说1001和0111相加,图中(1)这个位置也就是1和1相加后向它的高位也就是(2)进了1,(1)这里并没有考虑低位的进位(直接相加),而在(2)这个位置,它考虑了(1)位置的进位1,后面的(3)位置或者更高位也都要考虑来自低位的进位,所以我们把不考虑低位的进位实现半加运算的电路称为半加器,把考虑低位进位的称为全加器。
1位加法器
1位半加器:不考虑来自低位的进位而将两个1位二进制数相加。实现半加运算的电路称为半加器。
从真值表可以看出S=A’B+AB’; CO=AB;(所以半加器由一个异或门和一个与门组成。)这里的S是相加后本位的结果,而CO是相加后本位向高位的进位。
1位全加器:除去最低位外,每一位都考虑来自低位的进位。(多了一个输入进位端CI)
即两个对应位的加数和低位的进位3个数相加。所用电路称为全加器。其中CI为低位向本位的进位,S为相加后本位的结果,CO为本位向高位的进位。
如果理解了1位半加器的话,那么1位全加器也不难理解,它只是多了一个低位向高位的进位CI,本质还是不变,比如,表中第5行,A=0,B=0,A+B本应该为0的,但是CI为1,也就是低位向高位进一,所以最后的结果为A+B+CI=1,再比如A=0, B=1, CI=1时,A+B=1,但是低位向本位进1,所以最后的结果为1+0+1=10,S为0,本位向高位进1,CO为1。
多位加法器(了解即可,不了解也行)
分为串行进位加法器和超前进位加法器。如有需要深入学习,可以去看课本。
6、数值比较器(了解即可~)
作用如其名,就是用来比较两个数值的大小。两个数比较大小,一定有三种结果,大于、等于和小于。
1位数值比较器
> 多位数值比较器
比较两个多位数的大小时,必须自高而低逐位比较,只有在高位相等时,才需要比较低位。比如ABC和DEF,首先比较A和D,如果A>D,那么ABC>DEF,如果A=B,则需进行B和E的比较,反之,若A<D,则ABC<DEF。
在组合逻辑电路中,当某一个变量经过两条以上路径到达输出端时,由于每条路径上的延迟时间的不同,到达终点的时间有先后,这一现象称为竞争。(输入级)
由于竞争使电路的输出端出现了稳态下没有的干扰脉冲(毛刺)的现象称为冒险。(输出级)
-
竞争-冒险
由于竞争而在电路输出端可能产生尖峰脉冲的现象称为竞争-冒险。可以这样理解,本来最终结果应该都为0的,但是出现了一小段的1(也就是出现了本不该在理论设计中出现的脉冲干扰信号)。
【有竞争不一定有冒险,但是有冒险一定有竞争!】
4. 判别竞争-冒险
只要输出端的逻辑函数在一定条件下可以简化为Y=A+A’或Y=AA’,则可判定存在竞争-冒险现象。
比如某个电路输出逻辑函数表达式为Y=AB+A’C,此时判断它是否存在竞争-冒险现象,
不可以对表达式进行化简
,观察有没有一个变量同时出现了原状态和非状态,然后保持这个变量不变,其它变量取0和1的组合,例如:
当B=C=1时,上式将成为Y=A+A’,也就是存在竞争冒险现象。
5. 消除竞争-冒险现象的方法
接入滤波电容
引入选通脉冲
修改逻辑设计,增加冗余项
printf("当前数电学习进度25%。\n");
组合逻辑电路的基本设计和分析方法、译码器(38译码器)和数据选择器(四选一、双四选一、八选一)、加法器(一位半加器和全加器)必须掌握!!!
严禁套娃!!!
【
这道题要注意的一点是以Y为分界线(分为Y上半部分和Y下半部分,同一区域之间是或的关系,而不同区域之间是与的关系,比如接通1000后Y输出端表达式为A+B,而接通1001时则变为了(A+B) (A’+B’) =AB’+A’B。其它就是S3S2S1S0哪个为1,也就是哪个与非门有效,比如0001时,就是S0有效,输入端为AB,输出端为(AB)’=A’+B’
】
本题也有点套娃,耐心一下,一次成功!
也可以用卡诺图化简,更方便~
【
这道题要注意的一点是水面高于检测元件,输出低电平(0),低于检测元件输出高电平(1)
】
格雷码,卡诺图化简,记得画图找对应。
做数电的题,一定要仔细和耐心,一次给它做对了,省去了很多不必要的找错过程。
相对来讲,考的概率极低。(当然,如果专业课就是数电当我没说~)
【这里还有一点是顺序颠倒没有关系,比如低位向本位的进位放在了第三列,化简出来的结果有一点点出入,但是原理是对的,所以也可以。】
【补充:如何理解全减器?比如本位向高位的进位?低位向本位的进位?】
例:21-13的运算过程。首先进行个位的相减,发现1小于3,所以1也就是个位向十位2借了一位,于是变成11-3等于8,个位向十位的借位也就是本位向高位的借位;接下来我们十位进行相减,本来是2减1的,但是因为刚刚十位把一位借给了低位1,所以这里的2变为了1,这也叫做低位向本位借位,所以1-1=0,所以21-13等于8;
【回到一位全减器,比如Mi=1,Ni=0,低位向本位借位为1,本来是被减数1减去减数0等于1的,但是因为低位向本位借了一位,所以本位应该是0,也就是0-0等于0,所以最后本位的结果为0;再比如Mi=1,Ni=1,低位向本位借1,本来是1-1=0,但是因为低位的借位,被减数1变为了0,显然,0-1不够减,所以本位向高位借了一位,本位变为了2(为什么是2,因为这里是二进制,如果是刚刚讨论的十进制,那借一位就是借十),所以2-1=1,最后本位的结果为1,本位向高位借位为1。注意这里要和一位全加器有所区分~不要混淆了 全加器是要加个1,而全减器是要减个一】
补充:什么是脉冲触发?
JK脉冲触发器波形图绘制只考虑第一次变化!(比如从00变到10,则Q置1,注意,这里的Q置1是在一个脉冲结束后再变化,也就是在CLK第一个有效脉冲结束后,Q才发生变化,而不是在上升沿发生变化!!后续如在同一个脉冲内再发生变化,不用管)RS脉冲触发器每一次变化都得考虑(如从00变到10,则置1,从10变到00则保持,但是是按照最后的状态绘制Q)!还要注意正脉冲和负脉冲,正脉冲看CLK为1的部分,负脉冲看CLK为0的部分。
根据电路内部结构形式
:基本触发器(没有CLOCK信号),同步触发器,主从触发器,维持阻塞触发器,CMOS边沿触发器。
根据逻辑功能
:RS触发器,JK触发器,D触发器,T和T’触发器。
根据存储数据原理
:静态触发器、动态触发器。
其中静态触发器是靠电路状态的自锁存储数据,而动态触发器是通过MOS管栅极输入电容上存储电荷束存储数据的。
补充!
【其中JK触发器和D触发器最重要,且JK触发器可以转换为RS触发器或者T触发器】
【比如在需要SR触发器时,只要将JK触发器的J、K端当作S、R端使用,即可实现SR触发器的功能;在需要T触发器时,只要将J、K连在一起当作T端使用,就可以实现T触发器的功能(
利用了特性方程的思想,即对于JK触发器的特性方程为Q
=JQ’+K’Q,当J=K=T时,Q
=TQ’+T’Q,这样一来就变为了T触发器的特性方程,实现了从JK触发器转变为T触发器这一变化)
】
SR触发器(置0置1触发器)
特性方程:Q
✳=S+R’Q; SR=0
特性表:(其中:前一二行功能为保持,三四行为置0,五六行为置1,七八行为不定,可以巧记为00保持,01置0,10置1,11不定)
【补充:如何看待置1和置0的功能?
我们把Q称为初态,Q✳称为次态,从初态到次态的变化代表了相应的功能,比如下面SR触发器中前两行,Q分别从01变为对应的Q*的01,也就是状态并没有发生变化,我们称它的功能为保持,后面的依次类推即可。】
状态转换图:
JK触发器(置1和置0翻转触发器)
*
特性方程:A
✳=JQ’+K’Q
特性表(最后两行体现了翻转功能,00保持,01置0,10置1,11翻转)
状态转换图:
T触发器(翻转触发器)
特性方程:Q✳=TQ’+T’Q(异或关系,异为1)
特性表
状态转换图
D触发器(跟随触发器)
特性方程:Q✳=D
特性表
状态转换图
【波形图的绘制,根据触发器电路,写次态函数等】
【补充:本章重点是波形图的绘制,尤其是电平触发器(正电平和负电平)、边沿触发器(上升沿和下降沿)、脉冲触发器(正脉冲和负脉冲),其中JK触发器的各种类型和SR触发器的各种类型为重点和难点。
电平触发器:观察有效电平期间SR或JK的变化,绘制Q的变化波形图。
边沿触发器:分清楚是上升沿还是下降沿(上升沿CLK那里没有小圆圈,而下降沿有小圆圈),上升沿则是观察上升沿时JK或SR的变化,下降沿则是观察下降沿时SR或JK的变化,绘制Q的变化波形图。
脉冲触发器:分清楚是正脉冲还是负脉冲,负脉冲同样是CLK那里有小圆圈,如果是正脉冲JK触发器或者SR触发器,观察CLK为1期间JK的第一次变化和SR的所有变化(也可以是最后一次变化,但是如果最后一次变化是保持,则保持它前一次的变化,而非上一个CLK有效期间的变化),得出相应的Q的变化;如果是JK负脉冲和SR负脉冲则观察CLK为0期间JK的第一次变化和SR的所有变化,得出相应的Q的变化。】
【何谓一次变化?保持到翻转(或置1或置0)为一次变化,然后J为1K为0为一次变化,J为0K为0是保持,不算一次变化,所以要小心一些~还有一定要看清楚是脉冲触发还是边沿触发还是电平触发,但是就考试来讲,脉冲触发可能性比较大,所以下面的习题必须掌握!】
直接看评论区~【因为这里没有时钟脉冲作用,所以可以直接根据00置1,01置0,10置1,11不定来绘图,但是要注意的是这里的RS是R’和S’不是R和S!还有要注意的一点是SR为11本来是不定,也就是当SR为11时Q可能为0也可能为1,所以有些朋友可能疑惑本题中的SR为11时为什么Q变为了1,起初我也有困惑,但是后面做题有一个是直接标出不定,也就是在波形图中对应的地方标出不定即可,所以我建议最好标个不定,更严谨一些。】
因为这里有时钟脉冲CLK,而且是电平触发,也就是在CLK为1的地方再看R和S的状态,最后确定Q的波形图。因为刚开始Q为0,直到下一个CLK为1的时候,S为1,R为0,10置1,所以Q为1,Q为1持续到下一个CLK为1时看RS对应的状态,比如本题SR分别为01,01置0,所以Q为0,循环往复即可~
这里是D触发器,然后是电平触发,CLK为1期间有效,D触发器也叫保持触发器,也就是D在CLK为1期间怎么变化,Q就怎么变化。
上升沿D触发器,所以从波形图中我们可以看到,刚开始Q为1,在下一个上升沿到达时,D为0,所以Q持续到下一个上升沿都是0,结果下一个D还是为0,直到第三个上升沿D为1,Q才变化为1。
这里RD’为使能端,也就是RD’为0,RD为1时,Q强制为0,然后D=D1D2,上升沿D触发器,画图原理和前面一样。要注意的一点是,使能端发挥作用后,也就是Q被强制置为0后状态要一直保持在下一个上升沿前,不会使完后再回到刚刚的状态!
上升沿JK触发器,R为使能端,R为1时,Q被强制置0。
正脉冲SR触发器,刚开始Q为0,持续到下一个脉冲前,注意观察CLK为1期间SR的第一次变化,比如本题SR是10,所以Q被置为1,然后Q再持续到下一个CLK为1结束前,观察本次CLK为1期间SR的第一次变化也就是00保持,依次往后推即可。SR触发器需要注意的一点是在脉冲有效期间内发生的变化我都得考虑到,或者只需按照最后一次变化即可。比如本题中倒数第二次CLK为1期间,SR从00变到了10,也就是从保持到置1,所以最后的Q从0变为1。
本题也是正脉冲JK触发器!
本题是负脉冲JK触发器,区别于JK正脉冲,这里需要考虑的是JK的第一次变化,在CLK为0期间,也就是JK从00变到10,Q应该在这个脉冲结束后置1,依次类推。
SR正脉冲触发器
JK正脉冲触发器,这里要注意的一点是SD’和RD’是使能端,当SD’为1时,Q强制置1,当RD’为1时,Q强制置0,比如在画波形图时,刚开始SD’为0,所以Q强制置1直到下一个脉冲前,再比如后续RD’为0时,Q从原来的1强制置0,直到下一个脉冲前。这里的CLK是正脉冲(图形那里没有小圆圈),所以看CLK为1时发生的变化。
本题给的题目的图是错的,但是不影响做题,T触发器特性方程是TQ’+Q’T,也就是T异或Q,TQ异为1,同为0,刚开始Q为0,第一个CLK为1期间,T为1,所以Q在第一个CLK结束后变为1,第二个CLK为1期间,T为0,而刚刚的Q为1,所以后面的Q依旧为1,第三个CLK为1期间,T为1,Q也为1,所以后面的Q为0,其实原理和前面都一致。
本题画图较多,但是万变不离其宗,根据给出的逻辑图写出Q
也就是驱动方程,最后结合CLK来绘图,一定要看清楚属于哪种类型的触发器。比如说第一个逻辑图化简得到Q
=Q’,也就是下一次是上一次的非,正脉冲JK触发器,照着CLK图画就行了。
本题也是根据逻辑图写出驱动方程,判断触发器类型,根据CLK绘波形图。仔细一些~
本题需要注意的一点是Q1的波形图是按照图中给出的CLK来绘制,但是看清楚逻辑图,Q2的波形图的绘制中,是把Q1的波形图作为CLK的,而不是原图中给出的CLK,为什么呢?当然是因为逻辑图中第二个D触发器CLK接入的是Q1’也就是Q1(驱动方程化简得到),所以Q2的波形图不仅是把Q1的波形变化作为时钟变化参考,而且它是下降沿,因为它接入的是Q1’,有小圆圈,同理可得,Q3的波形图参考Q2的CLK变化,也是下降沿,所以这里一定要注意注意,它不是原图中直接给出的CLK图!!!还要注意刚开始的RD’使能端,强制置0,直到下一个脉冲到达前结束。
本题需要注意的一点是Q1Q2Q3是按照哪个CLK绘制的,第一个是JK下降沿触发器,根据图中给出的CLK绘制Q的变化即可,第二个是上升沿JK触发器,根据Q1的变化作为CLK绘制Q2的波形图,第三个是下降沿JK触发器,根据Q1的变化图作为CLK绘制Q3的波形图。
本题如何做呢?首先观察逻辑图,写出驱动方程,不难发现,D1=D2=Y=(Q1+Q2)',D1是上升沿D触发器,D2是下降沿D触发器,因为本题没有给出CLK图,所以需要我们自己画一个CLK图,然后先画Q1和Q2的波形图,再画Y的波形图。刚开始,Q1和Q2分别置0,第一个上升沿到达前,和第一个下降沿到达前,Q1=Q2都是为0的,但是,它们之间有错开半个脉冲,所以我们可以从图中得到,Q1为0时Q2也为0,所以Q1在第一个上升沿之后置1,而此时,Q2置0,就是结合Q1与Q2的关系,一步一步推出后续Q1和Q2的变化即可。
本题需要注意的一点是有一个使能端R=(CLK与Q),也就是当CLK和Q同时为1时,R会被激活强制置0,所以Q的波形图中,本来是要持续到下一个正脉冲结束时才发生变化的,但是因为CLK为1,此时Q也是1,触发了使能端R,所以Q被强制置0,后面的也是如此。还有一个要注意的是这里是正脉冲JK触发器,所以需要考虑CLK有效期间内A的第一次变化!
>
本题没有特别要注意的点,判断触发器类型,根据逻辑图写出驱动方程,仔细画图即可。因为波形图画多了容易走火入魔
所以不要以为所有波形图的绘制都是根据CLK的,本题中的Y和Z仅仅只根据Q1和Q2的变化而变化,与CLK无关
同步时序逻辑电路的分析方法:
1、写出驱动方程
看图写方程,必须多加练习,掌握。
2、把驱动方程带入特性方程得到状态方程
判断使用的是哪种类型的触发器(一般是SR触发器、JK触发器、T触发器和D触发器,带入对应的触发器的特性方程)
3、写出输出方程
这一步也可以提前写,直接写出Y即可。从图中可以直接得到。
4、根据状态方程得到状态转换方程,画出状态转换图
其实这里可以简画一下状态转换表,根据状态转换表写出状态转换图,也可以直接代入状态转换方程写出状态转换图。
5、依据状态转换表说出该电路的功能
一般来讲,根据画出的状态转换图或者状态转换表就可以观察出该电路可以实现哪些功能,后续有例题可以练习。
6、检查有没有自驱动(也叫自启动)功能
如何判断有没有自驱动能力只需要两步,第一步是看这个状态转换图是否有闭环,如果没有闭环,则不能自驱动,如果有闭环,则再看所有的闭环是否在一个图中,比如有两个闭环,但是这两个闭环没有交际,那么也不具备自驱动能力,专业点来说就是无效状态没有形成自己的闭环的同时,有效状态形成了自己的闭环就具备自启动能力。
【具有自启动能力】
【不具有自启动能力】
总结一下:时序逻辑电路做题方法(一步步来,做题不要急,要仔细!)
1、看题,判断电路类型,同步时序or异步时序?
2、根据触发器写出驱动方程
3、根据驱动方程代入触发器的特性方程,写出状态方程
4、再写出输出方程
5、根据输出方程推出电路的状态转换真值表、状态转换图、时序图
6、最后总结时序电路的功能
用于完成寄存功能,存储二进制数据和代码的电路。寄存器以触发器为核心单元,而一个触发器能寄存一位二进制代码;有并行和串行方式。
-
寄存器的分类
普通寄存器
完成对并行输入数据的存储,数据也只能并行输出,形成并行输入、并行输出的传输结构;存储单元采用基本触发器、边沿触发器和同步触发器,这三者皆可构成。
一般使用JK触发器或者D触发器进行对输入数据的存储。
74LS175基本寄存器
移位寄存器
移位寄存器除了具有存储代码的功能外,还具有移位功能。所谓移位功能,是指寄存器里存储的代码能在移外脉冲的作用下依次左移或右移。因此,移位寄存器不但可以用来寄存代码,还可以用来实现数据的串行-并行转换、数值的运算和数据处理等,具有灵活的传输数据结构,
但是存储单元只能用边沿触发器构成
。
单向移位寄存器
4位右移寄存器
从图中可以看出,假设输入数据为1011,那么首先1先进入到D0,然后原来D0存储的数据进入到D1,依次类推,第二个1进入,原先D0中的1进入到D1,依次往后,直到1011全部输入完,如果此时D0存储为1,D1存储为0,D2和D3依次为11,如果没有时钟脉冲,那么输出端就会是1011,如果再来一个时钟脉冲,那么会继续往右边移动。
4位左移寄存器
左移寄存器是D3作为第一个输入,原理和右移寄存器一样。
双向移位寄存器
既可以左移又可以右移的寄存器。增加了一个M端用来控制是左移还是右移,M取0或1。
4位双向移位寄存器74LS194
其中有两个符号比较特殊:DSR和DSL,其实是用来控制左移还是右移,S指英文单词signal,那对应的R和L就是right 和left(即左边和右边)。
从下面这张功能表可以看出,M0M1就是工作方式控制端,当M1M0为01时,右移;M1M0为10时左移,且都在时钟脉冲上升沿工作。
3. 计数器(超级重要!!!)
数字系统中使用的最多的时序电路,不仅能用于对时钟脉冲计数,还可以用于分频、定时、产生节拍脉冲和脉冲序列以及进行数字运算等。
同步计数器(时钟脉冲输入时触发器的翻转是同时发生的)
74LS161(4位二进制同步加法计数器)
说明:
【从74161的功能表可以看出,当CR非低有效时,无论输入怎么变化,输出均为0,所以它称为清零控制端;而当CR非为1,LD非为低有效时,输入和输出都相对应,所以LD非称之为置数控制端。】
【那同步和异步又是怎么判断的?首先看清零控制端,当它低有效时,无论其它输入怎么变化,输出均为0,所以它被称之为异步清零,也叫做直接清零;而对于第二行,LD非为0时还需要借助一个CLK上升沿脉冲,才能达到置数的目的,所以称之为同步置数,也就是没有CLK“我”不能独自完成任务,所以它也被称之为间接置数。】
【当EP和ET同时高有效时,完成上升沿工作,实现计数功能。不清零不置数时则保持,CO为进位输出端。其中的优先顺序:清零>置数>计数】
74LS163(和74LS161很像,但是有细微差别)
74LS163的清零方式是同步清零!!!而非异步清零,其余没有差异。
74LS160(十进制同步加法计数器)
与前面161163不同的是74LS160EPET高有效时的输出是十进制加法计数(也就是从0000到1001)。
异步计数器(触发器的翻转有先有后,不是同时发生的)
异步二进制计数器
置零法(也叫清零法):0000是工作循环的起点,也就是实现几进制计数功能,工作循环处状态必须从0开始;
置数法:工作循环的起点可以任意选择,可以从0001或者0010或者其它开始,但是一定要在置数数据输入端输入才可。
假定已有的是N进制计数器,而需要得到的是M进制计数器。这时有M<N和M>N两种可能的情况。
步骤:
1、选用的计数器芯片的状态迁移顺序要符合设计目标的要求
2、正确消除无需利用的其它功能的影响(比如选择置数时,让RC非接1)
3、正确为芯片的计数控制端接入有效信号
4、注意二进制计数器芯片和十进制计数器芯片的技术进制的差异
5. 同步清零和异步清零的区别
异步清零:终止于工作循环终点的下一个状态生成控制信号;
同步清零:终止于工作循环状态生成控制信号;
举例:比如利用74LS190分别用异步清零法和同步清零法实现7进制计数。
则同步清零是从0000到0110;而异步清零是从0000到0111(为什么会多出一个状态,原因在于异步清零它不借助于时钟信号,一旦CR非低有效时直接清零,如果到达0110时CR非低有效,那么0110直接清零后实现的其实是从0000到0101也就是一个六进制计数,而不是七进制计数了,而对于同步来说,会等到下一个CLK到来之前暂时保持住当前状态,所以是从0000到0110)
【第六章非常非常重要,必须掌握用同步或异步置数法或清零法设计进制数,74161和74163还有74160芯片的功能表得熟记,大题比较套路,原理理解之后直接可以套模板,多做练习。要想得高分,下面的习题必须全部掌握。】
【补充:时序图如何理解?】
【其实时序图也被称之为波形图,所以这里时序图的画法和第五章学过的波形图一致,两个下降沿JK触发器,刚开始时Q1Q2都为0,根据得出的驱动方程,当Q1Q2都为0时,Q1*为1,所以在下一个下降沿到达之前,Q1被置1,然后此时Q2被置0,依次类推即可。当然,还有一种方法就是根据状态转换图,Q1Q2从00到10再从10到01,最后回到00,不难发现,对应的时序图的变化也是如此,所以本题需要注意的一点就是触发器的类型得判断好,本来这题给出的是下降沿,但是难免有些朋友看错眼看成上升沿或者负脉冲JK触发器,都有可能,所以做题一定要仔细!】
这里给的有错误,形成闭环的那里,100—>010是错的,应该是100---->110,还有一个问题,直接看评论区。在此感谢各位的指正!
【补充,可能在这里有朋友疑惑怎么得出的这个状态转换图,其实只需画一个状态转换表即可,如下:画了一个草图,也就是当Q3Q2Q1状态不同时,对应着他们的次态Q3
Q2
Q1
(都有*号,显示不出来)状态也不同,其中Y为输出,从第一行开始,000到001,Y输出为0,然后从001到010,Y输出为0,依次类推,直到从100到000时,形成一个闭环,这时,需要重新出发,101到011依次类推,最终画完状态转换图。】
*
【这里要注意的一点是可以看到74160(1)中不需要特定的数字,所以它这里的LD和RD都接入了高电平,也就是不能发挥其作用,因为LD和RD只有低电平有效,而第二个芯片74LS160(2)LD接入了低电平有效是因为我置初态为0111,使用了置数功能,所以我接入了LD低电平有效。总的来讲,就是在设计芯片实现进制时一定要重视LD和RD的连接】
【说明:可能会有朋友疑惑为什么这里是83进制计数器而不是53进制计数器?】
在此作出解释:
74161是四位二进制同步加法器,而不是十进制
,我们从图中可以得到,第一个芯片74161从0000到1111时会向第二个芯片74161进一位(74LS161(2)为高位),也就是第二个芯片的EPET开始高有效,第二个芯片从0000变为0001,此时第一个芯片又开始从0000到1111,再进位,直到第二个芯片达到0101第一个芯片达到0010时全部清零。所以它总共进行了16*5+2+1(加1是因为它是同步)=83次,也就是实现了八十三进制计数器。
本质就是低位片运行一周,高位片计数一次,这也是级联扩展的思想。
】
本题可能会有朋友化简得出的J3的结果与答案不一致,有可能得出的是Q3*不是等于Q2Q1(Q3+Q3’)+Q3Q2’嘛,为什么J3=Q1Q2,那Q3Q2Q1去哪了?其实是因为这里设计的是七进制,所以Q3Q2Q1在这里是无效状态,可以把它作为约束项处理,在卡诺图化简时,所以这里需要注意一下,其它地方就是按步骤做可以了。至于为什么选定的触发器是JK下降沿,大胆猜测是随机的(具体缘由真不知道~)
本题做起来未免过于恶心,所以如果期末要求没有不是很高,直接可以不看~
printf("当前数电学习进度95%。\n");
【D/A转换精度】
1、分辨率
:表示D/A转换器理论上可以达到的精度。
2、转换误差:表示D/A转换器的实际转换特性和理想D/A转换特性之间的最大偏差。转换误差是一个综合性的静态指标:通常包括比例系数误差、非线性误差、漂移误差等多个成分、这些误差的绝对值之和,就是转换误差大小。(影响转换误差的因素有:三极管特性不一致,参考电压VREF的波动,阻网络中电阻阻值的偏差,模拟开关存在一定的导通内阻和导通压降,运算放大器的零点漂移)
【计算分辨率】
例如8位DAC:分辨率为255(也就是2的8次方减1),或者8位
【D/A转换速度】
1、建立时间tset:从数字信号输入DAC开始,到输出端对应得到稳定的模拟信号为止,整个转换过程所需要的时间。
2、一般而言,电流输出型DAC的建立时间较短,电压输出型DAC的建立时间长一些。
[DAC的选型]
并不是任何时候都选择尽量高的技术指标,要根据实际需要确定。
1、DAC的分辨率要根据CPU的数据处理位数选择;
2、DAC的转换误差越小越好,选择高精度DAC、运放和参考电压源等,但这也意味着器件成本的提高;
3、DAC的转换速度不是越快越好,这与整个系统的时序要求有关,符合要求即可。
【补充:D/A转换器类型及其优缺点】
1、权电阻D/A转换器:优点是所用电阻元件少,结构简单;缺点是各个电阻间电阻值相差较大。
2、权电容D/A转换器:优点是电容器制作简单;缺点是各个电容器之间电容量相差较大,会降低转换速度。
3、权电流D/A转换器:优点是转换速度和转换精度都比较高;缺点暂时没有。
4、倒T型D/A转换器:优点是转换速度较快;缺点是模拟开关存在一定的导通内阻和导通压降,会引起转换误差。
5、开关树D/A转换器:优点是所用电阻元件类型单一,有利于集成电路的制作;缺点是所用开关太多。
【转换精度】
1、分辨率:用来说明ADC对输入信号的分辨能力,可以用输出二进制或十进制数的位数表示。
2、转换误差:表示器件实际的输出数字量和理论
输出数字量
之间的偏差。
【计算分辨率】
1、公式:(1/2^n)*FSR(其中FSR为满量程)
2、举例:8位ADC,输入满量程5V,则转换误差为?
【转换速度】
主要取决于转换器的电路结构,不同类型的ADC的转换速度差异极大。
【ADC选型】
1、ADC的分辨率要根据CPU的数据处理位数选择;
2、ADC的转换误差,理论上当然越小越好,但这也意味着期间成本的提高,实际选型时,要根据对数据处理精度的要求,合适即可;
3、ADC的转换速度1也不是越快越好,与整个系统的时序要求有关,符合要求即可,由此可以更好地控制系统成本。
【补充:A/D转换器类型及其优缺点】
1、并联比较型:优点是转换速度是最快的;缺点是功耗大、成本高、分辨率低。
2、流水线型:优点是功耗低、分辨率高、转换精度高,可以简化电路;缺点是输入信号要经过特殊处理,锁存的定时要求比较严格。
3、逐次逼近型:优点是分辨率低于12位时,价格较低,电路规模比并联比较型小的多;缺点是分辨率高于14位时,价格较高。
4、双积分型:优点是工作性能比较稳定,抗干扰能力强,价格低;缺点是转换速度低。
5、V-F型:优点是抗干扰能力强,价格低;缺点是转换速度低。