2022纯季学期 数字逻辑电路 期末复习笔记

markdown丢失图片,可直接下载pdf版

Lect02

码制

8421 BCD 有权 权为8421 后六个数不允许出现表示十进制 一个一个转

5421 有权 5 = 1000 一半以后首位是1

2421 有权 只能表示0-9 一半以后首位是1 4=0100 5=1011

余3 无权 = 8421+0011 相加时注意和减3 进位则加3

为什么?4位才是1个10进制位 直接相加并没有道理 其他有权码甚至不能正确判断相加的进位。余3因为两个余3就是一个6,10+6=16可以进位并且抵消低位的余3image-20220616131433804

格雷码 无权码 多形式 :任何相邻的十进制数格雷码仅有1位不同

减少代码变化中电路书瞬间产生的错误,可靠性高image-20220616131548032

典型格雷不能9回1,修改格雷不从0000开始

  • 格雷码1:除最高位之外中线对称 45 36 27 18 90

  • 典型格雷码:对任意长的二进制数编码(除10进制是对BCD)

    G=B_i+1 xor Bi 每个位都是自己异或高位 最高位直接拿来用(或者假设虚高位是0)

    解码?

  • 修改格雷码:从余3开始编典型格雷码,为了前后循环 3和12衔接,也可满足中线对称。

字符编码

7位ASCII 教材P13 高3位区分控制字符、数字符号、大写英文、小写

Chap 2 逻辑代数

2.1 基本运算公式

  • n输入的不同逻辑共有多少种?

​ 相当于对于定义域在所有输入组合上,有多少种不同的函数关系?2^2^n

同或:not(xor) 相同取1,不同为0 AB+!A!B

image-20220616132840673

image-20220616132931893

互补——A与!A 1律 0律 重叠律A A 双非(对合)

交换 结合 分配 不加括号也是&先算,即使在后面也可以&对|分配
image-20220616133125129

自己+自己求反&条件B = 自己+条件B
自己+自己&条件B = 自己
image-20220616133249173

image-20220616133257627

image-20220616133306312image-20220616133840636

反演规则反函数 与或互换;变量求反;01互换即可 得到反函数

对偶规则 与或互换;01互换;得到对偶式 (F’’=F; F=G => F’ = G’)

2.2 公式法化简——吸收!包含!

image-20220616134142961

image-20220616134816149

貌似还是用与或去化简然后狄摩根成或与。。

化简不动的时候试试拆分一个假1变成A+!A的形式:

尤其是在很对称工整的形式里面化简,化成不对称不公整但是可以凑一起的形式

image-20220616135237721

image-20220616135753628

Lect 3

最小项 n个变量与 从000开始到111排序 三变量0-7 C是最高位

只有一组取值为1剩下都是0 任何逻辑函数表示为唯一一组最小项的或

某个最小项不是在F中就是在F的反函数中,用m_i 来表示 下图0-7 image-20220616135958004

最大项 n个变量或一起,唯一一组为0 从0到7 C最高位

任何F都是最大项之积(与),标准或与 大家与一起必为0

image-20220616140236012

m和M之间是求反的关系 M_i = ! m_i

而sigmami和paiMi为对偶式

image-20220616140635842

按循环码顺序,首尾满足格雷性质,00 01 11 10 110 111 101 100

  1. 画图
  2. 填数
  3. 合并
  4. 先大后小,能大就大——多检查上下左右边界
  5. 不重不漏

多输出化简:在与或中尽量找公共或项让多个函数共享,容易最简,并不是单个最简

无关项:打X,可以1

Lect4 与非门与外特征

3.1 引言

输出取决于输入逻辑组合,和过去状态无关,只有关于当前

实际情况:前后沿存在延迟且不相等

image-20220616142053976

集成电路?image-20220616142149598

image-20220616142221118

集成度18月翻一番(Moore Law)XXSI 0S\12 M\100 L\10,000 VL \1,000,000 UL

三维集成延续摩尔定律——功耗太高(电力、热问题、延迟、可靠性

系统功耗是关键因素,低功耗设计环节,优化、封装

3.2 门电路

74LSXX元件速查 00 30image-20220616142628182

74LS139 138 154 LECT5 P37

74LS85 四位比较器 2*4bitAB输入,前面大小等于输入以及后面大小等于输出

76163 标准四位二进制计数器image-20220618003455536

与非门的封锁 0即封锁为1

与或非门的封锁 1即封锁为0

与或非的数据选择,在两路数据分别与上C和!C即可控制,1为选择端

正逻辑和负逻辑,用1表示高电平为正逻辑

简单二值逻辑

  • 开关:闭合为L 打开H 输出在Vcc一侧
  • 晶体管:截止、放大、饱和、倒置(不用)Lect4 P50

与非门的外部特性

  • 开关特性:扇入(可用输入)、扇出(驱动数)、传输延迟(输入传输到输出的时间,速度和最大传输延迟反比)、功耗

    • 传输延迟:一般参考HL的中间电平来参考时间点,t_PHL t_PLH不同,t_pd=max(t_PHL, t_PLH)
    • 测量延迟时间?一个输入即可,tpd = (tpd1+tpd2)/2n
    • 自激励震荡电路:奇数个非门串联,周期为n*单个总延迟
  • 转移特性:门电路中输出电压随输入电压的变化特性Vin-Vout

    • Vout急剧改变的门槛电压、阈值电压VT
  • 直流参数:0输入电流<=1.6mA 1输出IOH<=400uA Voh>=3V…

    一般高电压H的时候要求的电流比较小,在几十几百uA左右 输入电流比输入小上十倍差不多(因为正常负载能力在10)

  • *技术参数:噪音容限

    • 叠加到正常输入的外部噪声电压,不会造成不可预料变化

      image-20220616144721117

与非门电路级联

  • 负载计算

    • 计算负载能力?N=IOH/IIH = 400uA/40uA = 10 输出1的情况

      输入0 则IOL/IIL = 16/1.6mA = 10 输出0的情况,电流方向反

    • 负载太大?非正常 低电平变高 高电平变低整个逻辑工作异常

电路设计的“线与”问题 需要多个外设输出连接一个输入总线,要求一个发送数据D时候其他都为1,线与在一起为1*1*D 即可

普通与非门:不能线与,Vcc和GND形成通路有50mA的电流损坏T4,5

图腾结构不能线与的理解:有H有L会有大电流流过烧坏

  1. 使用OC门(集电极开路输出的门电路)???速度慢

  2. 三态门TSC 保留totem输出结构但是可以输出线与的特点,速度快

    image-20220616145231140

image-20220616145244231

叫G非的控制端,为0的时候切换为高组态,平时1的时候正常与非门

有的时候G非为0阻断,有时候是1阻断切换高阻态,看有无圈圈。总的来说是在与门接受0的时候阻断

多个三台门线与的时候:要先都到高阻态再有个别到正常态否则出现“浪涌电流”影响工作image-20220616145717602

image-20220616145728437

电流方向!=数据流向

Lect5 译码器 数据选择器

3.3 常用的中规模组合逻辑电路

3.3.1 译码器 变量译码(所有组合2-4 3-8 4-16)、码制译码、显示译码

变量译码器 只有一个输入为0

image-20220616153400455输入只能接1个负载,所以加1级缓冲之后再译码。用的都是与非门所以化简之后的表达式要加大非。

应用 CPU2bit控制信号到译码器,连接4bit控制信号到4个设备上

有使能端的2-4译码 E非=1时 所有Y为1 E非的时候为disable而不是enable 则输入为1时候连到与门里面是0封锁 ——扩展、选通

多片2-4扩展3-8 高位输入C选片 AB译码

5片2-4扩展4-16 用高位CD来接入2-4选片,剩下AB译码

选通——解决竞争与冒险 A和A非输入,与非产生负向尖峰Spike 或非会出现正向尖峰:用EN解决

有时还会有“0”重叠Overlap现象,就同一时刻选择器中产生两个0,因为A’B’这种会有两极延迟相比于AB,导致AB和A’B’产生0重叠的危险

注意画尖峰的时候不光前面的延迟,产生尖峰本身也要有延迟

image-20220616160909702

如果AB的改变没有同时到来存在skew的偏移,尖峰更宽 overlap两段

t_spike = t_skew+delay*1 t_overlap = delay*1image-20220616162236841

用使能端消除 AB变化中覆盖变化的EN非 = 1 强制Y0 = Y3 = 1 消干扰

这个使能信号要早于等于变量变化到来,对晚变化的信号至少滞后1级门延迟image-20220616162641950

image-20220616162750720记得覆盖掉变化,但是会使得输出有效波形变窄(有效时间短)

3-8译码器 一样的写ABC连接三输入与非门即可

扩展4-16? 用高位D选片,低三位译码。。

多使能端的译码器?3EN的3-8:E2A+E2B为使不能1封锁//E1是使能0封锁

这样的选片更方便,直接使能和使不能连接高位D,总的使不能连接到分片的使不能上。

3-8译码分配地址07 256 CPU地址换算到每个ROM中的04共32地址空间

cpu高三位用来选片(CE非),低5位用来寻址

image-20220616163615413

译码器作为数据分配器(一分多) 使能端为Data,C1C2控制多输出

Data变,C1C2选择把当前位分配给哪一个通道,如果通道恒1则被封锁

4-16译码器 真值表/功能表 组合逻辑中差不多,列所有输入和对应的输出

有两个使不能端,有一个1就锁死全1

问题:负载大,A非要负载9(2^n/2+1)个门,A要负载8个门2^n/2,使能端负载16门2^n

当输入变量增多,单级译码器不好实现,负载太大了。一般采用多级译码

4-16的多级译码,先前后翻译两个

先把四位输入翻译成EFGH WXYZ的两组合共8种有效值,再解码2-4

image-20220616164943718

每个A只有4个负载降低了一半,每个与门也是4负载。相当于先粗分类成4+4类打包,然后讨论这4+4的两两组合每个对应一种结果

8-256的分级? 划分为(4-4)对四输入粗分类成(16-16)然后讨论16*16的组合结果 每个A带8个负载 A非带9个 每个与门16个

码制译码器 编码换编码,如二换十进制译码(8421BCD to 1 bit Dec)

不完全译码比较简单,有不少X项用来化简但是完全的必须每个连4位

显示译码器 以共阳极,Low亮为例 4bit BCD转换为7bit亮灯(码制)对每一个输出都化简表达式即得。。

3.3.2 数据选择器(多选一\多选多)

4选1 四个D 两个控制S 一个输出Y 写出(化简)Y 连接即得

EN为1的时候使不能,输出恒为0image-20220616170240473

image-20220616170229738

有两个EN的双4选1,提供正反两个输出,用3个双4选1得到一个16选4image-20220616171058380

16路输入,4个控制,这个选择 的过程是从输出到入的。从1分成4然后每个都是一个1分4(无EN)image-20220616171348134

有使能端时候,S23译码成四个选择器的EN,然后同时3个使不能,这样四个四选一其中三个都是0,如果三态门可以直接“线与”

总线发送控制

译码器是CPU往多个外设分配信息,这个是多个外设向CPU发送数据选择

译码器:看成N个输入组成的2^N个最小项。加一层与非即可实现与或逻辑

可以实现与或表达式的逻辑 一个译码器选择几个最小项接入与非即可

数据选择器 逻辑是与或表达 N个控制端的2^N最小项 和2^N个输入组成的与或,可以用数据来调节01。只需把含有的最小项对应的D进1就好。

甚至8选1可以实现四变量函数:三个控制+一个数据输入

把对应的ABC代入函数得到1 0 或者D D非,然后把这个结果放到对应Di上

Lect6 编码器 比较器 奇偶校验

3.3.3编码器

  • 编码器原理

反向译码,对应编码如4-2 8-3 10-BCD等等

应用在CPU控制端告诉那个外设在上传数据(只一个0 其他都1)

键盘的输入检测,哪个键被按下…

image-20220616203353864

2-4编码的时候,如果取大非可以直接对里面的取补 8-3类似???

8421编码器 0-9的十个信号转成4 bit 8421码 L6 P12

A+B+C+D = AB或非 CD或非再与非到一起

  • 优先编码器:两条及以上为0的时候,优先输出高位编码

image-20220616205002210

模拟键盘,如果同时被按下输出高位编码,以3-8编码为例

除了8个输入,还需要 使不能Ei非

输出有效Gs(当本八位有有效输出的时候为0,可以区分是0被按下还是没有按键被按下的状态),输出级联E0(如果是0则允许级联,意思是没有按键被按下且没有使不能)

如果7是0则剩下无所谓,一定翻译000出去(反码编码,平时111)

由于反码编码,化简表达式也是化简Ai非=找0行

级联 高位板子允许低位级联把Eo连到低位Ei使不能 允许0的时候低位使能正常工作。高位级联接低位使能 两个有效与为总的有效

注意还是个3-8编码,编码结果只能接低三位,高位要高位板子的是否按下的有效Gs判断。切换的是提供低三位的片image-20220616205221331

应用 按照优先级编码,中断相应,键盘输入读取等

3.3.4数据比较器

image-20220616210038402可以级联,以4位为例,高位比不出来才比低位

单bit比较:>10 <01 not xor同或为1

设计的级联是低位连接高位,即最高的四位作为最终输出

如果当前片比不出来才会去读取输入结果,否则以当前片结果为准

3.3.5 奇偶校验

8个输入xor到4个xor到2个xor到一个即为结果,1是奇数 如果多位则在对应层级补进去

组合逻辑电路的竞争冒险

竞争 输入信号由于延迟,走不同路影响到输出的时间不同。

  • 非临界 不产生错误输出 临界 产生错误输出

冒险 由竞争导致了错误信号

!组合电路中的险象是瞬态、暂时的尖脉冲,稳定后可恢复正常逻辑关系

判断存在险象 代数法:函数表达式可能存在X和X非 尝试消除其他变量得到X+X非或者X*X非的形式

卡诺图 把函数表达式化成卡诺圈进去,如果有圈相切(相邻但是不被同圈包含) 那这两个相邻项就是危险的

避免险象

  • 增加冗余项 卡诺圈相切的时候手动把他们圈一起,冗余项可以保证当只有一个输入量变化的时候不再产生险象。在代数上理解是:把化简到A+A非 时候限制的其他条件加这么一项

  • 电容滤波 过滤高频信号 要求惯性环节时间常数τ大于尖脉冲 不要太大否则畸变严重 image-20220616212115268image-20220616212022099

  • 选通 在最终结果的与门上再增加一路选通脉冲的输入,我只在电路稳定之后出现选通高电平脉冲,避开险象脉冲

3.3.6 可编程逻辑器件PLD

包括ROM PLA逻辑阵列 PAL 阵列逻辑 GAL通用阵列逻辑 )L6 P60

  • ROM 写入后只读(简单、规律、大容量) 区别可读可写RAM

与阵列+或阵列,输入后与阵列附近只有一条是1的其他都0

然后每个输出都是或阵列,可以直接出

其实本质上是对不同输入的分情况讨论,上面按照从小到大排列输入,下面每一列都是一种输出结果。讨论好标上对应点出去就好了image-20220616213053380

应用 比如翻译8421到格雷码之类

3输入4输出的rom为84的rom 可以*实现0-7的平方

储存计算机程序,每个地址(一列)为一个字节8bit

  • PLA可编程逻辑阵列 逻辑压缩 PROM或阵列可编程
  • PAL是与阵列可编程或阵列固定,分组合的和时序的
  • GAL是可以同时实现组合+时序的芯片

rom是完全讨论的,输入相当于是地址需要完全寻址2^N

PLA是压缩的,逻辑函数需要什么我们才保留什么,我们需要最简与或表达式。

每一列代表输出中的一项,上面是项的与表示,下面输出的或image-20220616214011685

储存讨论的信息的时候也可以压缩最简单的输出项表达式,然后用每一列代表一个乘积项最后或在一起。一组地址多个P okimage-20220616214429147

Lect7 运算器

3.3.6 加法器

半加器:不考虑进位,异或就好了

一位全加器 写出表达式不化简直接得image-20220616214811608

卡诺图化简一下 都表示成与非、与或非等形式。直接找的是F非和C非(找0)这样都是2级门延迟image-20220616215017114

尝试用Cn表示Fn,即先把Cn算出来之后用其结果和ABC组合得Fn

注意这里一种思路是写Cn和Fn,另一种是写Cn非和Fn非

image-20220616215522846

image-20220616215540150

四位串行加法器

如果都用方案2 最终F4 C4都是8级门延迟

都用方案3,最终为F4 9级 C4 8级

方案34 交叉串联呢?C1两级但是C1非其实1级就好直接扔D得到C2也是2级。C3非一级就好C3 C4都是4级 那么C5就是5级

这种方式主要是交替利用C和C非作为传递使得C的计算飞快。F总是当前的C+1级即可

超前进位加法器 提前算出C1234 在表达式中看出:

搞一个产生进位函数G=XY 传递进位函数P=X+Y 记得写表达式的时候直接找C = 大非(XXX) XXX为C非的表达式image-20220616221302739image-20220616221251932image-20220616221619605

Ci都是2级 Fi都是3级

16位加法器 记得算延迟都要先算各级的C再算F

4个超前进位4位加法器也可以再加一个超前进位器 P34为构成方法

这时C4 8 12 16的延迟都是3 F1-4是3 后面都是6级image-20220616222527657

p146 SN74182 超前进位扩展器专用器件

3.3.7 算术运算逻辑单元 4位

功能控制:加减 比较 与或非 移位 核心是四位并行加法器

  • 控制进位逻辑(简单但少
    • 10得同或结果时:X+Y (非00即可)和 !(XY) (非11即可)与 然后和1进行异或。
    • 11得与结果时: !(XY) 和1取异或
  • 改变Gi 和 Pi获得多种运算能力(多但复杂
    • 四个S是控制如何产生Gi和Pi的
    • M状态控制 ,是否进行逻辑运算

L7 P51 有各种16种的运算 书P141 的元件74181

Lect9

RS基本触发器 问题:0 0时非正常状态(本时刻一定是11,下一时刻如果11读取 就为不定状态了) 11读取 两个与非交叉

image-20220616235817684

时钟控制方式:电位触发、边沿触发、主从触发器

功能分类:D、R-S、J-K、T(Toggle)

重点:边沿触发的D和JK触发器

如何解决00时的异常?限制输入or保持稳定不坏

电位方式触发 Clock Pulse

修改R-S的输入,增加使能端,就EN=1的时候一定是保持状态,优化成与非,E成为真正使能,0的时候一定是11保持

这时候的修改RS电位触发器变成了00保持 11异常

改进?单端输入,一定控制两个输入是相反的,改成Dimage-20220617000835894

但是延迟太大了吧,D到Q非最大要4级,再改进得到

电位D触发器 E仍然是使能,0的时候是保持(读取)image-20220617000932548

问题:抗干扰差 使能脉冲某个跳变来时,输出才变化为输入的值

正边沿D触发器 某个约定跳变来才接受数据,没约定跳变就保持

image-20220617001909754

CP = 0 时 上面为基本RS的11状态,保持

如果正边沿到来,在信号到来产生一级门作用的时候改变状态

image-20220617213002511

image-20220617213053734image-20220617213105154

其余情况在CP = 1 的时候D发生两种改变都不能改变上面的电路状态。分别由两根锁死阻塞线来限制

CP负边沿跳变的时候,34门都输出11为传统RS的保持状态

开关特性

  • 数据建立时间tsu = set up

    数据接受的时候要稳定保证门3、4接受好数据(尤其门4要56处理完之后),有tsu>=tpd5+tpd6 2*delay

  • 数据保持时间th = hold 要等待阻塞线正常工作之后才能撤除这个有效的Data值

    如D = 1,必须等门4的阻塞线封锁住3和6才好则

    th>=max(tpd3,tpd4) 1*delay

  • 传输延迟参数tpd = pass delay

    分别讨论输出HL还是LH CP到Q还是Q非 共四种

  • 主要看两条阻塞线,CP=1时有一条为0则代表一种状态,D只能被阻塞在5或者6门。当低电平两条线都是1时候56都打开才允许数据进入。

    故低电平要保证D通过5和6就位在34门口,低电平>=tsu且tsu只能在低电平区间

    高电平要保证thold形成好封锁>=thold在高电平期间

    tpd cpQ 也需要在高电平时间,在高电平让输出稳定下来47 为的是给下一个器件就位比如下一个触发器的输入就位。所以如果两个触发器之间有组合逻辑电路,这里的延迟仍需要算在tpdcp->Q上。

多个FF最高时钟频率?

Tcp-min = tsu

Tcp+min = max(th , tpdcp->Q+tpdG(组合逻辑电路延迟))

Lect10 负边沿JK,主从触发器

image-20220617215202117

00保持11翻转 JK分别为Set Reset P4-P9 为操作的结构原理

异步是不需要等CP的强制清零,0是选中态,正常为11

主从触发器 两极电位串联 CP=1主触发器接受从封锁(+电位)

负跳变主封锁从触发器接受主触发器的状态(负跳变)

主从RS触发器 17为加入异步 21有划归到主从RS的方法

image-20220617215926900

image-20220617220126799

image-20220617220230542

主从JK功能表与主从RS相同,只是11支持翻转

只是在正时钟周期中JK不变化的前提下给出,不然能不满足功能表,抗干扰差

主从VS边沿 主从似乎是负边沿因为正边沿接受负跳变才状态变化,但是触发方式不同。主从在负跳变时反应的是从触发器的状态可不一定是JK等输入的状态

经常从触发器在负边沿读主的时候,反应的是正边沿中的第一次变化(第二次有时候由于从触发器QQ非没变导致JQ非=0 KQ=0而不发生变化,即最多可以发生和原来Q不同的一次变化比如把Q的1换成0,但是不能变第二次了会hold) 分析具体变化看下面这张图(注意从的之前状态)image-20220617221115739

所以主从适合正脉冲窄,短高电平的情况

T触发器 Trigger cp来就翻转,一般都是边沿(由DorJK构成)

D的翻转需要Q非接D JK=11自带翻转

CP由功能控制T和真实时钟cp与成,T=1时Toggle模式

触发器的功能互换? 功能需求=》用卡诺图写出Qn+1与Qn和输入之间的关系,再转换成激励表达式接入电路即可。

D转JKimage-20220617221951564

Lect11 同步时序电路的分析与设计

image-20220617222131649

统一CP,约定脉冲改变整体的状态且只改变一次

功能表(含Q真值表) 输入(激励)+Qn 得到 输出+Qn+1

现在的状态+不同的激励能造成什么样的结果(未来状态)

状态表 卡诺图中一维是激励,一维是Qn 表中内容是Qn+1

现在状态+不同的激励造成什么样的未来状态

状态图 圈里面是状态(Qn)转移边上有 输入/输出

状态方程 Qn+1 = 激励条件(D)

下一个状态的决定方程

激励表Qn Qn+1 得到 激励项(例如D、JK)

状态的不同转移需要什么样的激励条件

逻辑图——状态图——文字描述(设计为逆)

同步时序电路分析

  1. 根据电路图列出触发器激励函数表达式D= 和电路输出函数**F=**f(Q)

    输入怎么影响D Q怎么影响输出

  2. 建立Qn+1表达式(根据上面的激励)以及状态表(类似真值功能表,Qn和输入得到激励得到次态和输出的表格)

    常用Qn+1 = D // Qn+1 = J !Qn + !K Qn

  3. 状态(转移)图 记得画完整

  4. 由状态图和次态、输出表达式带来的时序图(规定cp和输入,画Qn和输出的波形)

  5. 分析输出和输入的关系说明逻辑功能

可以先明确里面状态、中间态的含义(如保存上一位的进位结果)

不完全的(6状态集合)也可以叫3位格雷码计数器 两个状态互换为clk的2分频 这样属于不能自启动的格雷码计数器(不保证一定能进入主循环

这是能够自启动的4位二进制计数器 JK更方便实现“取反“image-20220617230222268image-20220617230300567

把几个D触发器串行接好,低Q进高D,最高!Q进最低D得计数器 如何修复自启动???

同步时序电路设计

  1. 确定输入输出变量

  2. 原始状态图和状态表(可能并不最简)状态表:image-20220617232606708

  3. 状态化简,画出最简的状态图状态表

    对于完全相同的行,合并其状态,直至不能这么做,

    状态表和状态图:一般每个转移边对应表中一行

  4. 状态分配:给每个状态用一串二进制来编码

  5. 求出激励函数输出函数 化简前就检查好能否自启动

    根据状态图 画一个大号的功能表(真值)分别为

    输入 Qn| Qn+1|激励DorJK(由Qn+1)|输出(由Qn和输入)

    根据后两列可以求出激励的表达式和Z的表达式

    这时候可以用卡诺图来化简 横纵二维都是输入和各位Qn,里面是各个Qn+1。能直接写出来的就直接写image-20220618001545343

  6. 画(电路)逻辑图

计数器 对CP脉冲计数,每次变化一次状态

同步、异步;加法、减法、可逆;二进制、十进制、任意进制;

同步四位二进制计数器 偶尔需要“实用” 这里的Q0Q1都是二、四分频

image-20220618001311015用JK触发器设计时,经常统一JK即可,而image-20220618001649022

十进制计数器

编码、化简即可

可逆计数器 一个输入X表示是否正向计数 满1111之后进位Z为1

用X表示模式的时候,经常可以两边化简完之后用XF1+!XF2来调节

设计计数器的问题——自启动 修正状态图,改变激励表

Lect13 集成化的4位二进制计数器

需要:异步、同步清零;同步置数;计数;保持;扩展;进位

仍然是0是确认态,常态为111 RC是进位在1111or1001时,这样下一时刻cp来了可以一起动。

T 串行控制:低位RC接入高位的T,常态是0即FFHold状态

片间的进位RC逐片传递导致计数频率不能太高,RC每一片都要延迟image-20220618003756551

P并行控制:即快速扩展,分析进位条件是所有低位片都是1111

只有当TP都是1的时候本片才进位,最低位RC连各个P,然后T都是RC(次低片可以直接1)当最低片1111(RC=1)且上一位RC=1时本片进入进位预备状态。

这样就是除了最低位,每片到1111之后就已经在RC—HighT预备好了

随时等待最低位的1111就位得到P=1时候进入预备,只需一个延迟

但是最高位的RC并不代表整体的进位。。

image-20220618004258361

集成化的标准计数器接口与功能表:

image-20220618002457731image-20220618002518601

Rd!:触发器提供or(谨慎)组合逻辑直接清零Rd*Q这种

CLR:从激励方程入手,直接在D上修改,下次检测就可以改了

Load:接着改激励方程,L!(输入)+L(Q)

TP:接着改激励方程记得改RC,保持的时候D取自己的Q

image-20220618004358354

用76163自动循环状态 在到一定值之后启动置数预备Load,置0000image-20220618004541188

产生固定序列信号如101001

  1. 用上面自动循环状态的计数器

  2. 常规方法,用DorJK

  3. 循环移位设计,用QQQ表示长3子串然后循环起来(记得循环到下一个的前三位),注意不能一对多 101001101001

    输出随便接其中一个Q即可

Lect14-1 寄存器——存储

基本寄存器

  • 基本4D寄存器,需要异步清零(!Rd=0)和置数(!Rd=1)

    记得减少对外负载,但是数据不在的时候不能保留了呜呜呜

  • !Rd异步清零 !E置数 CP时钟 11的时候Qn+1 = Qn否则Dnimage-20220618010035888image-20220618010124271

  • 置数、保持还能选择?加Select输入可以选择数据源image-20220618010230692

  • 再加个使不能 !OE = 1的时候为高阻态P13

两个相反的寄存器作为输入输出,让两个E和OE相反来控制image-20220618010422524

移位寄存器

需要寄存器有移位功能,每一个cp脉冲,寄存器数据顺序向左(右)移动一位,要采用边沿触发(or主从触发器)

串入变并出的移位,每一个Q接高位D,但是不循环移位(叫右移其实是左移。。)

并入并出的双向移位Reg 双向用S0S1控制 1就是哪个方向,11置数image-20220618093822452image-20220618093958084

应用:用移位寄存器设计信号发生器101000 选用串进并出的

取n=3得到 101 010 100 000 001 010有重复010无法区分,增加位数

n=4得到 1010 0100 1000 0001 0010 0101无重复,每次通过Q0123讨论出一个下一位要移进去的数字,做出6/16的卡诺图化简D,下一个是Q0讨论即可。

发现并不能自启动。有3个非工作循环。对非工作循环中任取一个状态,让次态进入工作循环比如0000=>0001进入(移入1)卡诺图7/16

记得考虑怎么样比较好通过移位方式进入工作循环

Lect14-2 Ch5可编程逻辑电路

ROM只读存储器 40

PROM与阵列固定(地址译码固定)或可编程(储存信息可以改)

就是全部的输入情况来分情况讨论 计算点数的时候记得与阵列算非

PLA可编程逻辑阵列 47 与或均可编程 组合逻辑表示D

压缩,只表示最小项甚至只表示乘积项即可,不是最小项

先找Fi的最简与或表达式然后找乘积项,一条竖线表示一个乘积项上面与上乘积项的表达式。下面每个输出(一行)自取乘积的sum

计算点数(交叉):2*输入*P+输出*P

计算容量:输入数目* P项数目*输出数 4*

PAL可编程阵列逻辑 与可编程或固定 72

决定好了每个输出取哪几个P项然后自己编写P项

有反馈的寄存器PAL可以实现时序逻辑但不能组合

演变过程P78

GAL通用可编程阵列逻辑 80 与可编程或固定

输出控制OLMC+反馈结构+多次可编程+集成度++

需要:输入、输出、与阵列、输出逻辑宏单元

GAL16V8@20pin 16入(右侧8个在OLMC下通用出入)

8出 8个OLMC(或阵列in it) P86逻辑图

总的电路经验

xor:想逐位加法、01个数等等,化简的时候多用xor简化,逐位判同(尤其是计数、加法)

每两位xor:典型格雷码

分析组合电路:不一定顺着看输入,试试顺着看输出

模式控制:多在激励方程上之际修改,如置数、清零、数据选择。优先的放外面

组合逻辑电路分析与设计:表达式、功能表、描述

对BCD分级译码:先译AD,因为1xx0和1xx1唯一为8和9

分级选数据和分级译码都一样,一定看好怎么分、分谁

比如S3210选D0~9,可以先用S3区别0123和89XX互换

其实BCD译码和数据选择都是对控制端的讨论和翻译

组合电路的开关参数:XX输入到XX输出的延时

2个四选一模拟3输入函数?image-20220618143223330image-20220618143159958

16并4并1:算大PG需2,算C4 8 12 16需3 各片算C需要2 算F1共6

状态表:

image-20220618175655568

时序图没有初始状态就假设一个