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可以进位并且抵消低位的余3
格雷码 无权码 多形式 :任何相邻的十进制数格雷码仅有1位不同
减少代码变化中电路书瞬间产生的错误,可靠性高
典型格雷不能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


互补——A与!A 1律 0律 重叠律A A 双非(对合)
交换 结合 分配 不加括号也是&先算,即使在后面也可以&对|分配
自己+自己求反&条件B = 自己+条件B
自己+自己&条件B = 自己



反演规则反函数 与或互换;变量求反;01互换即可 得到反函数
对偶规则 与或互换;01互换;得到对偶式 (F’’=F; F=G => F’ = G’)
2.2 公式法化简——吸收!包含!


貌似还是用与或去化简然后狄摩根成或与。。
化简不动的时候试试拆分一个假1变成A+!A的形式:
尤其是在很对称工整的形式里面化简,化成不对称不公整但是可以凑一起的形式


Lect 3
最小项 n个变量与 从000开始到111排序 三变量0-7 C是最高位
只有一组取值为1剩下都是0 任何逻辑函数表示为唯一一组最小项的或
某个最小项不是在F中就是在F的反函数中,用m_i 来表示 下图0-7 
最大项 n个变量或一起,唯一一组为0 从0到7 C最高位
任何F都是最大项之积(与),标准或与 大家与一起必为0

m和M之间是求反的关系 M_i = ! m_i
而sigmami和paiMi为对偶式

按循环码顺序,首尾满足格雷性质,00 01 11 10 110 111 101 100
- 画图
- 填数
- 合并
- 先大后小,能大就大——多检查上下左右边界
- 不重不漏
多输出化简:在与或中尽量找公共或项让多个函数共享,容易最简,并不是单个最简
无关项:打X,可以1
Lect4 与非门与外特征
3.1 引言
输出取决于输入逻辑组合,和过去状态无关,只有关于当前
实际情况:前后沿存在延迟且不相等

集成电路?

集成度18月翻一番(Moore Law)XXSI 0S\12 M\100 L\10,000 VL \1,000,000 UL
三维集成延续摩尔定律——功耗太高(电力、热问题、延迟、可靠性
系统功耗是关键因素,低功耗设计环节,优化、封装
3.2 门电路
74LSXX元件速查 00 30
74LS139 138 154 LECT5 P37
74LS85 四位比较器 2*4bitAB输入,前面大小等于输入以及后面大小等于输出
76163 标准四位二进制计数器
与非门的封锁 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)
*技术参数:噪音容限
叠加到正常输入的外部噪声电压,不会造成不可预料变化

与非门电路级联
负载计算
计算负载能力?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会有大电流流过烧坏
使用OC门(集电极开路输出的门电路)???速度慢
三态门TSC 保留totem输出结构但是可以输出线与的特点,速度快


叫G非的控制端,为0的时候切换为高组态,平时1的时候正常与非门
有的时候G非为0阻断,有时候是1阻断切换高阻态,看有无圈圈。总的来说是在与门接受0的时候阻断
多个三台门线与的时候:要先都到高阻态再有个别到正常态否则出现“浪涌电流”影响工作

电流方向!=数据流向
Lect5 译码器 数据选择器
3.3 常用的中规模组合逻辑电路
3.3.1 译码器 变量译码(所有组合2-4 3-8 4-16)、码制译码、显示译码
变量译码器 只有一个输入为0
输入只能接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重叠的危险
注意画尖峰的时候不光前面的延迟,产生尖峰本身也要有延迟

如果AB的改变没有同时到来存在skew的偏移,尖峰更宽 overlap两段
t_spike = t_skew+delay*1 t_overlap = delay*1
用使能端消除 AB变化中覆盖变化的EN非 = 1 强制Y0 = Y3 = 1 消干扰
这个使能信号要早于等于变量变化到来,对晚变化的信号至少滞后1级门延迟
记得覆盖掉变化,但是会使得输出有效波形变窄(有效时间短)
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位用来寻址

译码器作为数据分配器(一分多) 使能端为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

每个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的时候使不能,输出恒为0

有两个EN的双4选1,提供正反两个输出,用3个双4选1得到一个16选4
16路输入,4个控制,这个选择 的过程是从输出到入的。从1分成4然后每个都是一个1分4(无EN)
有使能端时候,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)
键盘的输入检测,哪个键被按下…

2-4编码的时候,如果取大非可以直接对里面的取补 8-3类似???
8421编码器 0-9的十个信号转成4 bit 8421码 L6 P12
A+B+C+D = AB或非 CD或非再与非到一起
- 优先编码器:两条及以上为0的时候,优先输出高位编码

模拟键盘,如果同时被按下输出高位编码,以3-8编码为例
除了8个输入,还需要 使不能Ei非,
输出有效Gs(当本八位有有效输出的时候为0,可以区分是0被按下还是没有按键被按下的状态),输出级联E0(如果是0则允许级联,意思是没有按键被按下且没有使不能)
如果7是0则剩下无所谓,一定翻译000出去(反码编码,平时111)
由于反码编码,化简表达式也是化简Ai非=找0行
级联 高位板子允许低位级联把Eo连到低位Ei使不能 允许0的时候低位使能正常工作。高位级联接低位使能 两个有效与为总的有效
注意还是个3-8编码,编码结果只能接低三位,高位要高位板子的是否按下的有效Gs判断。切换的是提供低三位的片
应用 按照优先级编码,中断相应,键盘输入读取等
3.3.4数据比较器
可以级联,以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非 时候限制的其他条件加这么一项
电容滤波 过滤高频信号 要求惯性环节时间常数τ大于尖脉冲 不要太大否则畸变严重


选通 在最终结果的与门上再增加一路选通脉冲的输入,我只在电路稳定之后出现选通高电平脉冲,避开险象脉冲
3.3.6 可编程逻辑器件PLD
包括ROM PLA逻辑阵列 PAL 阵列逻辑 GAL通用阵列逻辑 )L6 P60
- ROM 写入后只读(简单、规律、大容量) 区别可读可写RAM
与阵列+或阵列,输入后与阵列附近只有一条是1的其他都0
然后每个输出都是或阵列,可以直接出
其实本质上是对不同输入的分情况讨论,上面按照从小到大排列输入,下面每一列都是一种输出结果。讨论好标上对应点出去就好了
应用 比如翻译8421到格雷码之类
3输入4输出的rom为84的rom 可以*实现0-7的平方
储存计算机程序,每个地址(一列)为一个字节8bit
- PLA可编程逻辑阵列 逻辑压缩 PROM或阵列可编程
- PAL是与阵列可编程或阵列固定,分组合的和时序的
- GAL是可以同时实现组合+时序的芯片
rom是完全讨论的,输入相当于是地址需要完全寻址2^N
PLA是压缩的,逻辑函数需要什么我们才保留什么,我们需要最简与或表达式。
每一列代表输出中的一项,上面是项的与表示,下面输出的或
储存讨论的信息的时候也可以压缩最简单的输出项表达式,然后用每一列代表一个乘积项最后或在一起。一组地址多个P ok
Lect7 运算器
3.3.6 加法器
半加器:不考虑进位,异或就好了
一位全加器 写出表达式不化简直接得
卡诺图化简一下 都表示成与非、与或非等形式。直接找的是F非和C非(找0)这样都是2级门延迟
尝试用Cn表示Fn,即先把Cn算出来之后用其结果和ABC组合得Fn
注意这里一种思路是写Cn和Fn,另一种是写Cn非和Fn非


四位串行加法器
如果都用方案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非的表达式


Ci都是2级 Fi都是3级
16位加法器 记得算延迟都要先算各级的C再算F
4个超前进位4位加法器也可以再加一个超前进位器 P34为构成方法
这时C4 8 12 16的延迟都是3 F1-4是3 后面都是6级
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读取 两个与非交叉

时钟控制方式:电位触发、边沿触发、主从触发器
功能分类:D、R-S、J-K、T(Toggle)
重点:边沿触发的D和JK触发器
如何解决00时的异常?限制输入or保持稳定不坏
电位方式触发 Clock Pulse
修改R-S的输入,增加使能端,就EN=1的时候一定是保持状态,优化成与非,E成为真正使能,0的时候一定是11保持
这时候的修改RS电位触发器变成了00保持 11异常
改进?单端输入,一定控制两个输入是相反的,改成D
但是延迟太大了吧,D到Q非最大要4级,再改进得到
电位D触发器 E仍然是使能,0的时候是保持(读取)
问题:抗干扰差 使能脉冲某个跳变来时,输出才变化为输入的值
正边沿D触发器 某个约定跳变来才接受数据,没约定跳变就保持

CP = 0 时 上面为基本RS的11状态,保持
如果正边沿到来,在信号到来产生一级门作用的时候改变状态



其余情况在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,主从触发器

00保持11翻转 JK分别为Set Reset P4-P9 为操作的结构原理
异步是不需要等CP的强制清零,0是选中态,正常为11
主从触发器 两极电位串联 CP=1主触发器接受从封锁(+电位)
负跳变主封锁从触发器接受主触发器的状态(负跳变)
主从RS触发器 17为加入异步 21有划归到主从RS的方法



主从JK功能表与主从RS相同,只是11支持翻转
只是在正时钟周期中JK不变化的前提下给出,不然能不满足功能表,抗干扰差
主从VS边沿 主从似乎是负边沿因为正边沿接受负跳变才状态变化,但是触发方式不同。主从在负跳变时反应的是从触发器的状态可不一定是JK等输入的状态
经常从触发器在负边沿读主的时候,反应的是正边沿中的第一次变化(第二次有时候由于从触发器QQ非没变导致JQ非=0 KQ=0而不发生变化,即最多可以发生和原来Q不同的一次变化比如把Q的1换成0,但是不能变第二次了会hold) 分析具体变化看下面这张图(注意从的之前状态)
所以主从适合正脉冲窄,短高电平的情况
T触发器 Trigger cp来就翻转,一般都是边沿(由DorJK构成)
D的翻转需要Q非接D JK=11自带翻转
CP由功能控制T和真实时钟cp与成,T=1时Toggle模式
触发器的功能互换? 功能需求=》用卡诺图写出Qn+1与Qn和输入之间的关系,再转换成激励表达式接入电路即可。
D转JK
Lect11 同步时序电路的分析与设计

统一CP,约定脉冲改变整体的状态且只改变一次
功能表(含Q真值表) 输入(激励)+Qn 得到 输出+Qn+1
现在的状态+不同的激励能造成什么样的结果(未来状态)
状态表 卡诺图中一维是激励,一维是Qn 表中内容是Qn+1
现在状态+不同的激励造成什么样的未来状态
状态图 圈里面是状态(Qn)转移边上有 输入/输出
状态方程 Qn+1 = 激励条件(D)
下一个状态的决定方程
激励表Qn Qn+1 得到 激励项(例如D、JK)
状态的不同转移需要什么样的激励条件
逻辑图——状态图——文字描述(设计为逆)
同步时序电路分析
根据电路图列出触发器激励函数表达式D= 和电路输出函数**F=**f(Q)
输入怎么影响D Q怎么影响输出
建立Qn+1表达式(根据上面的激励)以及状态表(类似真值功能表,Qn和输入得到激励得到次态和输出的表格)
常用Qn+1 = D // Qn+1 = J !Qn + !K Qn
状态(转移)图 记得画完整
由状态图和次态、输出表达式带来的时序图(规定cp和输入,画Qn和输出的波形)
分析输出和输入的关系说明逻辑功能
可以先明确里面状态、中间态的含义(如保存上一位的进位结果)
不完全的(6状态集合)也可以叫3位格雷码计数器 两个状态互换为clk的2分频 这样属于不能自启动的格雷码计数器(不保证一定能进入主循环)
这是能够自启动的4位二进制计数器 JK更方便实现“取反“

把几个D触发器串行接好,低Q进高D,最高!Q进最低D得计数器 如何修复自启动???
同步时序电路设计
确定输入输出变量
原始状态图和状态表(可能并不最简)状态表:

状态化简,画出最简的状态图和状态表
对于完全相同的行,合并其状态,直至不能这么做,
状态表和状态图:一般每个转移边对应表中一行
状态分配:给每个状态用一串二进制来编码
求出激励函数和输出函数 化简前就检查好能否自启动
根据状态图 画一个大号的功能表(真值)分别为
输入 Qn| Qn+1|激励DorJK(由Qn+1)|输出(由Qn和输入)
根据后两列可以求出激励的表达式和Z的表达式
这时候可以用卡诺图来化简 横纵二维都是输入和各位Qn,里面是各个Qn+1。能直接写出来的就直接写

画(电路)逻辑图
计数器 对CP脉冲计数,每次变化一次状态
同步、异步;加法、减法、可逆;二进制、十进制、任意进制;
同步四位二进制计数器 偶尔需要“实用” 这里的Q0Q1都是二、四分频
用JK触发器设计时,经常统一JK即可,而
十进制计数器
编码、化简即可
可逆计数器 一个输入X表示是否正向计数 满1111之后进位Z为1
用X表示模式的时候,经常可以两边化简完之后用XF1+!XF2来调节
设计计数器的问题——自启动 修正状态图,改变激励表
Lect13 集成化的4位二进制计数器
需要:异步、同步清零;同步置数;计数;保持;扩展;进位
仍然是0是确认态,常态为111 RC是进位在1111or1001时,这样下一时刻cp来了可以一起动。
T 串行控制:低位RC接入高位的T,常态是0即FFHold状态
片间的进位RC逐片传递导致计数频率不能太高,RC每一片都要延迟
P并行控制:即快速扩展,分析进位条件是所有低位片都是1111
只有当TP都是1的时候本片才进位,最低位RC连各个P,然后T都是RC(次低片可以直接1)当最低片1111(RC=1)且上一位RC=1时本片进入进位预备状态。
这样就是除了最低位,每片到1111之后就已经在RC—HighT预备好了
随时等待最低位的1111就位得到P=1时候进入预备,只需一个延迟
但是最高位的RC并不代表整体的进位。。

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


Rd!:触发器提供or(谨慎)组合逻辑直接清零Rd*Q这种
CLR:从激励方程入手,直接在D上修改,下次检测就可以改了
Load:接着改激励方程,L!(输入)+L(Q)
TP:接着改激励方程记得改RC,保持的时候D取自己的Q

用76163自动循环状态 在到一定值之后启动置数预备Load,置0000
产生固定序列信号如101001
用上面自动循环状态的计数器
常规方法,用DorJK
循环移位设计,用QQQ表示长3子串然后循环起来(记得循环到下一个的前三位),注意不能一对多 101001101001
输出随便接其中一个Q即可
Lect14-1 寄存器——存储
基本寄存器
基本4D寄存器,需要异步清零(!Rd=0)和置数(!Rd=1)
记得减少对外负载,但是数据不在的时候不能保留了呜呜呜
!Rd异步清零 !E置数 CP时钟 11的时候Qn+1 = Qn否则Dn


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

再加个使不能 !OE = 1的时候为高阻态P13
两个相反的寄存器作为输入输出,让两个E和OE相反来控制
移位寄存器
需要寄存器有移位功能,每一个cp脉冲,寄存器数据顺序向左(右)移动一位,要采用边沿触发(or主从触发器)
串入变并出的移位,每一个Q接高位D,但是不循环移位(叫右移其实是左移。。)
并入并出的双向移位Reg 双向用S0S1控制 1就是哪个方向,11置数

应用:用移位寄存器设计信号发生器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输入函数?

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

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