数字电路学习笔记

  E0600140.33

Posted by     Keyon                      on April 12, 2018

在我看来,笔记的作用是易于提取关键知识点,以便以后的复习。所以我写这篇笔记有两个原则:符合人脑知识提取规律,保持大纲式的精要和简洁。

于是,为了符合第一项要求,这篇笔记采用树状结构,因为这种结构最符合人们学习与记忆提取的规律,最符合人脑的认知特点。若想详细了解,详见 MIT 认知科学家 Joshua B. Tenenbaum 这篇被引用 330 次的论文 The discovery of structural form 。

为了符合第二项要求,这篇文章没有插入任何图表,因为在我看来插入图片会使笔记大纲变得杂乱。但是众所周知,理工科的知识基本都需要符号和图表来表示,当然这门课也是。所以,我用以下所有详见二字后的超链接或书本章节来补充它们。

另外,数电老师谭峰真是一个非常Nice的人呀。

数制和编码

  • 按位计数制
    • r进制基数是r
    • 基数确定数符的个数
    • 逢基数进一
  • 二进制与八进制和十六进制之间的转换:位数替代法
    • 保持小数点不变,每八进制数对应3位二进制数
    • 每十六进制数对应4位二进制数
  • r进制转十进制:按位权展开
  • 十进制转r进制:基数乘除法
    • 整数部分除r取余,逆序排列
    • 小数部分乘r取整,顺序排列
  • 非十进制数的加法和减法
    • 加法注意进位,详见二进制加法真值表
    • 减法注意借位,详见二进制减法真值表
  • 原码、反码、补码
    • 最高有效位表示符号位
    • 正数的原码、反码、补码都一样
    • 负数的原码除符号位,其他按位取反得反码;反码最低有效 位加1得补码
  • 二进制补码的加法和减法
    • 加法:按普通二进制加法相加
    • 减法:将减数求补再相加
  • 如果加法运算产生的和超出了数制的范围,则结果发生溢出
    • 对于二进制补码,加数的符号相同,和的符号与加数的符号不同
    • 对于无符号二进制数,若最高有效位上发生了进位或借位,就指超出范围
  • 十进制的二进制编码
    • BCD(8421)码
    • 2421码
    • 余3码
    • 二五混合码
    • 10中取1码

其中BCD码与2421码为加权码,2421码和余3码为自反码

BCD数加法类似于4位无符号二进制数加法,结果超过1001必须校正,即将其结果加6

2421码最高位权制为2

余3码为BCD码+”0011”

  • 格雷码
    • 二进制码转换成二进制格雷码:保留二进制码的最高位作为格雷码的最高位,而次高位格雷码为二进制码的高位与次高位相异或而格雷码其余各位与次高位的求法相类似。
    • 二进制格雷码转换成二进制码:保留格雷码的最高位作为自然二进制码的最高位,而次高位自然二进制码为高位自然二进制码与次高位格雷码相异或,而自然二进制码的其余各位与次高位自然二进制码的求法相类似。
    • 详见:Gray code - Wikipedia
  • 奇偶校验码:在每组数据信息上附加一位奇偶校验位,若采用奇校验方式,则使包括校验码在内的数据还有奇数个1;偶校验方式,则使包括检验码在内的数据还有偶数个1。

小结:

  • 正数的十进制、二进制、八进制、十六进制表示,以及它们之间的相互转换
  • 符号数的 S-M码、补码、反码表示,以及它们之间的相互转换
  • 带符号数的补码的加减运算
  • BCD码、GREY码

数字电路

  • 逻辑信号和门电路
  • 逻辑代数的几个公理
    • X = 0, if X ≠ 1 (若X ≠ 1, 则X = 0 )
    • X = 1, if X ≠ 0 (若X ≠ 0, 则X = 1)
    • 0’ = 1 1’ = 0
    • 0 · 0 = 0 1 + 1 = 1
    • 1 · 1 = 1 0 + 0 = 0
    • 0·1 = 1·0 = 0 1+0 = 0+1 = 1
  • CMOS逻辑
    • CMOS逻辑电平
    • MOS晶体管
    • CMOS反相器
    • CMOS“与非”门和“或非”门
    • 非反相门
    • 扇入:门电路所具有的输入端的数目

这部分要求能看懂电路原理图,这里没有给出,详见《数字设计》3.3 CMOS逻辑

  • CMOS稳态电气特性
    • 逻辑电平
      • VOHmin:输出为高态时的最小输出电压
      • VIHmin:保证能被识别为高态的最小输出电压
      • VILmax:保证能被识别为低态的最大输出电压
      • VOLmax:输出为低态时的最大输出电压
    • 直流噪声容限:一种对噪声程度的度量,表示多大的噪声会使最坏输出电压被破坏,成为不可被输入端识别的值
      • 低态直流噪声容限=VILmax-VOLmax
      • 高态直流噪声容限=VOHmin-VIHmin
    • 带电阻性负载的电路特性
      • IOLmax:输出低态且仍能使输出电压不大于VOLmax时,输出端能吸收的最大电流
        • Iout = Vthev/Rthev
      • IOHmax:输出高态且仍能使输出电压不小于VOHmin时,输出端可提供的最大电流
        • Iout = (Vcc-Vthev)/Rthev
      • 详见《数字设计》3.5.2 带电阻性负载的电路特性
    • 非理想输入时的电路特性
      • 输出电压变坏(有电阻性负载时更差)
      • 输出电流增大,功耗增大
    • 扇出
      • 扇出需考虑输出高电平和低电平两种状态
      • 总扇出=min(高态扇出,低态扇出)
      • 计算扇出
        • 若X驱动Y
        • 低态扇出 = (X的IOL) / (Y的IIL)
        • 高态扇出 = (X的IOH) / (Y的IIH)
    • 负载效应
      • 当输出负载大于它的扇出能力时
        • 输出电压变差(不符合逻辑电平的规格)
        • 传输延迟和转换时间变长
        • 温度可能升高,可靠性降低,器件失效
    • 不用的CMOS输入端绝不能悬空
  • CMOS动态电气特性
    • 速度取决于转换时间传播延迟
    • 转换时间:逻辑电路的输出从一种状态变为另一种状态所需的时间
      • 输出从低态到高态的转换时间称为上升时间
      • 从高态到低态到转换时间称为下降时间
      • 转换时间由两个因素决定:晶体管的“导通”电阻和负载电容
      • 电气工程中有句很有用的格言:电容两端的电压不能瞬间改变
      • 在实际电路中,可用时间常数近似转换时间
    • 传播延迟:从输入信号变化到产生输出信号变化所需的时间
      • 信号通路:一个特定输入信号到逻辑元件的特定输出信号所经历的电气通路
    • 功率损耗
      • 输出不改变时的CMOS电路功率损耗称为静态功耗
      • CMOS电路只在状态转换时消耗可观的电能,成为动态功耗
        • 两个管子瞬间同时导通产生的功耗 PT
        • 对负载电容充、放电所产生的功耗 PL
        • CMOS电路的总动态功耗就是PT与PL的和,详见《数字设计》3.6.3 功率损耗
    • 电流尖峰与去耦电容
      • 电流尖峰:在CMOS的电源和地线支路上呈现为噪声
      • 使用CMOS的系统要求在Vcc与地线之间接去耦电容器
  • 其他CMOS输入输出结构
    • 传输门
      • 当EN = 0,EN_L = 1,晶体管截止, A、B断开
      • 当EN = 1,EN_L = 0,晶体管导通,A、B之间低阻抗连接
      • 一旦传输门被打开,A到B(或相反)的传播延迟非常短
    • 施密特触发器输入
      • 内部反馈的特殊电路
      • 滞后:两个门限电压之差
    • 三态输出(CMOS三态缓冲器)
      • EN=0,C=1,Tp 截止,B=1,D=0,Tn 截止,输出高阻态
      • EN=1,C=A’,B=0,D=A’,由A控制输出逻辑0或逻辑1
    • 漏极开路输出
      • CMOS输出结构中的P沟道晶体管提供有源上拉:在低态到高态到转换中,它们上拉输出电压
      • 要求有一个上拉电阻器,提供到高态的无源上拉
        • 上拉电阻尽量小,这可减少低态到高态的上升时间
  • 双极逻辑
    • 二极管逻辑:使用二极管和电阻来进行逻辑运算
    • 双极结型晶体管:三端器件
      • 肖特基晶体管:确保晶体管正常工作时不饱和,从而消除储存时间,减少传播延迟
    • 晶体管-晶体管逻辑(TTL)
    • 接口(CMOS/TTL Interfacing)
      • 这部分需要考虑:噪声容限、扇出、电容负载

小结:

  • 正逻辑表示和负逻辑表示
  • 三种基本逻辑运算:与、或、非
    • 逻辑表达式、真值表、逻辑符号
  • 作为电子开关运用的二极管、双极型晶体管、MOS场效应管的工作方式
  • 逻辑系列:CMOS系列和TTL系列
  • CMOS反相器的构成及工作状态分析
  • 学习理解逻辑电路的静态、动态特性分析,等价的输入、输出模型
    • 逻辑电压电平和噪声容限
    • 带电阻负载的电路特性、扇出
    • 非理想输入、电流尖峰和去耦电容器
    • 不用的CMOS输入端
    • 速度、功耗
  • 理解特殊的输入输出结构
    • CMOS传输门
    • 施密特触发输入结构
    • 三态输出结构
    • 漏极开路OD输出结构(集电极开路OC)
  • 了解其他类型逻辑电路:TTL、ECL
  • 了解不同类型、不同工作电压的逻辑电路输入输出逻辑电平以及其间的连接配合

组合逻辑设计原理

  • 组合逻辑电路:任何时刻的输出仅取决与当时的输入
    • 电路特点:无反馈回路、无记忆元件
  • 逻辑代数公理
    • X = 0 , if X ≠ 1 X = 1, if X ≠ 0
    • 0’ = 1 1’ = 0
    • 0·0 = 0 1+1 = 1
    • 1·1 = 1 0+0 = 0
    • 0·1 = 1·0 = 0 1+0 = 0+1 = 1
  • 单变量开关代数定理
    • 自等律:X + 0 = X X · 1 = X
    • 0-1律:X + 1 = 1 X · 0 = 0
    • 还原律:( X’ )’ = X
    • 同一律:X + X = X X · X = X
    • 互补律:X + X’ = 1 X · X’ = 0
  • 二变量或三变量开关代数定理
    • 交换律:A · B = B · A A + B = B + A
    • 结合律: A·(B·C) = (A·B)·C A+(B+C) = (A+B)+C
    • 分配律:A·(B+C) = A·B+A·C A+B·C = (A+B)·(A+C)
    • 吸收律:X + X·Y = X X·(X+Y) = X
    • 组合律:X·Y + X·Y’ = X (X+Y)·(X+Y’) = X
    • 添加律(一致性定理):X·Y + X’·Z + Y·Z = X·Y + X’·Z (X+Y)·(X’+Z)·(Y+Z) = (X+Y)·(X’+Z)
  • n变量定理
    • 广义同一律:X + X + … + X = X X · X · … · X = X
    • 香农展开定理:详见Boole’s expansion theorem - Wikipedia
    • 反演定理: [ F(X1 , X2 , … , Xn , + , · ) ]’ = F(X1’ , X2’, … , Xn’ , · , + )
      • 变量取反,· ⇔+,0 ⇔ 1
      • 遵循原来的运算优先次序
      • 不属于单个变量上的反号应保留不变
    • 对偶性:FD(X1 , X2 , … , Xn , + , · , ’ ) = F(X1 , X2 , … , Xn , · , + , ’ )
      • · ⇔ +,0 ⇔ 1
      • 变换时不能破坏原来的运算顺序
      • 对偶原理:若两逻辑式相等,则它们的对偶式也相等
    • 对偶和反演:[ F(X1 , X2 , … , Xn) ]’ = FD(X1’ , X2’, … , Xn’ )
    • 代入定理:在含有变量 X 的逻辑等式中,如果将式中所有出现 X 的地方都用另一个函数 F 来代替,则等式仍然成立

对上述的公式、定理要熟记,做到举一反三

不存在变量的指数

允许提取公因子

没有定义除法

没有定义减法

  • 逻辑函数的标准表示法
    • 逻辑函数最基本的表示法是真值表
    • “积之和”表达式:乘积项的逻辑和
    • “和之积”表达式:求和项的逻辑积
    • 最小项
      • n个因子的标准乘积项
      • n变量函数具有2^n个最小项
      • 全体最小项之和为1
      • 任意两个最小项的乘积为0
    • 最大项
      • n变量最大项是具有n个因子的标准求和项
      • n变量函数具有2^n个最大项
      • 全体最大项之积为0
      • 任意两个最大项的和为1
    • 最大项与最小项之间的关系
      • Mi = mi’ mi = Mi’
      • 某逻辑函数 F,若用 P项最小项之和表示,则其反函数 F’ 可用 P 项最大项之积表示,两者标号完全一致
      • 一个n变量函数,既可用最小项之和表示,也可用最大项之积表示,两者下标互补
    • 标准和(Σ):使函数输出为1的输入组合所对应的最小项之和
    • 标准积(Π):使函数输出为0的输入组合所对应的最大项之积
    • 一个逻辑函数的最小项表达式和最大项表达式之间有互补的关系
  • 逻辑函数的基本运算
    • 相加(或)
    • 相乘(与)
    • 反演
    • 异或(⊕):当两个输入相异时,结果为1
      • 交换律:A⊕B = B⊕A
      • 结合律:A⊕(B⊕C) = (A⊕B)⊕C
      • 分配律:A·(B⊕C) = (A·B)⊕(A·C)
      • 因果互换关系:
        • A⊕B=C ➔ A⊕C=B ➔ B⊕C=A
        • A⊕B⊕C⊕D=0 ➔ 0⊕A⊕B⊕C=D
      • 变量和常量的关系:A⊕A=0 A⊕A’=1 A⊕0=A A⊕1=A’
      • 多变量异或运算(A0 ⊕ A1 ⊕ … ⊕ An )
        • 变量为1的个数是奇数为1
        • 变量为1的个数是偶数为0
    • 同或(⊙):当两个输入相同时,结果为1
      • 交换律:A⊙B = B⊙A
      • 结合律:A⊙(B⊙C) = (A⊙B)⊙C
      • 不满足分配律:A(B⊙C) ≠ AB⊙AC
      • 因果互换关系:
        • A⊙B=C ➔ A⊙C=B ➔ B⊙C=A
      • 变量和常量的关系:A⊙A=1 A⊙A’=0 A⊙1=A A⊙0=A’
      • 多变量同或运算(A0⊙A1⊙ … ⊙An)
        • 变量为0的个数是偶数为1
        • 变量为0的个数是奇数为0
    • 异或和同或的关系
      • 偶数个变量的同或和异或 —— 互反
        • A⊕B = (A⊙B)’
        • A⊕B⊕C⊕D = (A⊙B⊙C⊙D)’
      • 奇数个变量的同或和异或 —— 相等
        • A⊕B⊕C = A⊙B⊙C
      • A⊕B’ = A⊙B A⊕B = A⊙B’
  • 组合电路分析
    • 分析的目的:确定给定电路的逻辑功能
    • 分析步骤:
      • 由输入到输出逐级写出逻辑函数表达式
      • 对输出逻辑函数表达式进行化简
      • (列真值表或画波形图)
      • 判断逻辑功能
    • 穷举法
      • 将全部输入组合加到输入端
      • 根据基本逻辑关系,从输入端到输出端,写出每一级门的输出
      • 根据最后输出结果列出真值表
    • 代数法
      • 从输入端到输出端,逐级写出每一级门的输出逻辑式
      • 及时利用基本定理对逻辑式化简
      • 由最后输出端得到输出函数式
  • 化简逻辑函数
    • 什么是最简
      • 项数最少
      • 每项中的变量数最少
    • 公式法化简
      • 并项法: 利用 A·B+A·B’=A·(B+B’)=A
      • 吸收法: 利用 A+A·B=A·(1+B)=A
      • 消项法: 利用 A·B+A’·C+B·C = A·B+A’·C
      • 消因子法:利用 A+A’·B = A+B
      • 配项法: 利用 A+A=A A+A’=1
    • 卡诺图化简
      • 卡诺图表示逻辑函数,详见:Karnaugh map - Wikipedia
      • 卡诺图的特点
        • 逻辑相邻性:相邻两方格只有一个因子互为反变量
        • 合并最小项:
          • 两个最小项相邻可消去一个因子
          • 四个最小项相邻可消去两个因子
          • 八个最小项相邻可消去三个因子
          • 2^n个最小项相邻可消去n个因子
      • 卡诺图化简步骤
        • 填写卡诺图
          • 可以先将函数化为最小项之和的形式
        • 圈组:找出可以合并的最小项
          • 组(圈)数最少、每组(圈)包含的方块数最多
          • 方格可重复使用,但至少有一个未被其它组圈过
        • 读图:写出化简后的乘积项
          • 消掉既能为0也能为1的变量
          • 保留始终为0或1的变量
        • 圈组原则
          • 圈1,得化简“与或式”--所有的‘1’必须圈定
          • 圈0,得化简“或与式”--所有的‘0’必须圈定
          • 每个圈中0或1的个数为 2i 个
            • 首先,保证圈组数最少
            • 其次,圈组范围尽量大
            • 每个圈组至少要有一个1或0未被其他组圈过
        • 圈组步骤
          • 先圈孤立的1格(0格)
          • 再圈只能按一个方向合并的分组--圈子尽量大
          • 其余可任意方向合并
          • 将每个圈组写成与项(或项),再进行逻辑加(乘)
  • 对于逻辑函数 P(X1,…,Xn) 和 F(X1,…,Xn) ,若对任何使P=1的输入组合,也能使F为1,则称P隐含F,或者F包含P。
  • 逻辑函数 F(X1,…,Xn) 的主蕴含项 是隐含 F 的乘积项 P(X1,…,Xn) ,如果从 P 中移去任何变量,则所得的乘积项不隐含F。
  • 主蕴含项定理:最小和是主蕴含项之和
  • 蕴含项:只包含1的一个矩形圈
  • 主蕴含项 :扩展到最大的蕴含项
  • 奇异“ 1 ”单元:仅被单一主蕴含项覆盖的输入组合
  • 质主蕴含项:覆盖1个或多个奇异“1”单元的主蕴含项
    • 圈组时应从合并奇异“1”单元开始
  • “无关”输入组合:与输出无关的输入组合
    • 约束项:不会出现的输入变量组合
    • 任意项:对电路功能没有影响的输入变量组合
    • 表达方式:
      • 逻辑式:Σd(mi) = 0 Fd(A,B,C) = 0
      • 真值表和卡诺图:对应最小项输出填 d 或 X
    • 应用:
      • 无关项参与运算时,应遵循下列运算规则 X’ = X 0 + X = X 1 + X = 1 0 · X = 0 1 · X = 1
      • 化简时,可根据需要将X任意当作1或0处理,有利于减少电路代价。
  • 多输出函数的最小化
    • 利用各输出共享的乘积项减少与门的使用量
    • 利用各输出函数(卡诺图)与运算的化简得到共享的乘积项
  • 组合电路的综合
    • 根据给出的实际问题,求出实现这一逻辑功能的电路。
      • 进行逻辑抽象,得到真值表或逻辑函数式
      • 选择器件的类型
      • 逻辑化简或变换成适当的形式
      • 电路处理,得到电路图
  • 定时冒险:由于电路延迟,逻辑函数的瞬态特性可能与稳态特性不同,存在冒险。
    • 静态冒险:
      • 静态-1型冒险:主要存在于“与-或”电路中
      • 静态-0型冒险:主要存在于“或-与”电路中
    • 利用卡诺图发现静态冒险:
      • 若卡诺图中,圈与圈之间有相切现象,则可能出现静态冒险。
      • 消除冒险的方法:引入乘积项,即两个原始项的一致项,覆盖冒险的输入对。
    • 动态冒险:
      • 一个输入转变一次而引起输出变化多次的可能性。

小结:

  • 开关代数
    • 公理、定理
    • 摩根定理
    • 对偶、反演
    • 逻辑函数的标准表示法
      • 真值表
      • 积之和、和之积
      • 标准项
      • n 变量最小项(最大项)
  • 组合电路分析
    • 由输入到输出逐级写出逻辑函数表达式
    • 对输出逻辑函数表达式进行化简
    • 判断逻辑功能(列真值表或画波形图)
  • 组合电路综合
  • 定时冒险
    • 冒险的检查和消除

组合逻辑设计实践

  • 文档标准
    • 说明书
    • 方框图
    • 原理图
    • 定时图
    • 结构化逻辑器件描述
    • 电路描述
  • 等效门符号(德·摩根定理):输入输出同时取反,与变或,或变与。
  • 信号名:每个输入和输出信号都应有一个可描述的字母-数字标记。
  • 有效电平:
    • 高电平有效(无反相圈的引脚)
    • 低电平有效(有反相圈的引脚)
    • 信号处于有效电平时,称其为有效;信号不处于有效电平时,称为为无效,或被取消。
    • 给定逻辑功能只在符号框的内部发生
  • “圈到圈”的逻辑设计

  • 电路定时
    • 传播延迟:信号通路输入端的变化引起输出端变化所需的时间
    • 定时规格说明:
      • 最大延迟
      • 典型延迟
      • 最小延迟
    • 定时分析:取最坏情况延迟
    • 定时图:
    • 因果性和传播延迟
    • 最小和最大延迟
    • 确切的和不确切的转换
  • 译码器
    • 多输入、多输出电路
    • 使能输入有效才能实现正常映射功能
    • 输出编码比输入编码位数多
    • 用译码器和逻辑门实现逻辑函数
      • 对于二进制译码器:Yi = EN · mi
      • 当使能端有效时:Yi = mi
      • 对低电平有效输出:Yi_L = Yi’
      • 当使能端有效时:Yi_L = mi’ = Mi
  • 编码器
    • 前提:任何时刻只有一个输入端有效
    • 将 I0~I7转换为 H0~H7,保证其中,任何时刻只有一个有效
    • 如果没有输入有效,则IDLE为1
  • 三态器件
    • 三种状态:高电平,低电平,高阻态
    • 三态器件允许多个信号源共享单个“同线”,条件是每次只有一个器件工作
    • 对典型的三态器件,进入高阻态比离开高阻态的时间快
  • 多路复用器
    • 又称数据开关、多路开关、数据选择器
    • 在选择控制信号的作用下,从多个输入数据中选择其中一个作为输出
  • 多路分配器
    • 把输入数据送到m个目的地之一
  • 奇偶校验电路
    • 奇校验电路:如果输入有奇数个1,则输出为1
    • 偶校验电路:如果输入有偶数个1,则输出为1
    • 奇校验电路的输出反相就得到偶校验电路
    • n个异或门级联,形成具有n+1个输入和单一输出的电路
    • 对于异或门、同或门的任何2个信号(输入或输出)都可以取反,而不改变结果的逻辑功能
  • 比较器
    • 比较2个二进制数值并指示其是否相等的电路
    • 等值比较器:检验数值是否相等
      • 利用异或门(同或门)构造1位等值比较器
      • 并行比较、串行比较构造多位等值比较器
    • 数值比较器:比较数值的大小(>,=,<)
  • 加法器
    • 半加器和全加器
    • 串行加法器
      • 缺点:运算速度慢,有较大的传输延迟
      • 提高速度:并行加法器
    • 减法器
      • 方法一:利用真值表化简设计减法器
      • 方法二:利用加法器设计减法器
    • 先行进位加法器
      • 先行进位法:第i位的进位输入信号可以由该位以前的各位状态决定

小结:

  • 常用的中规模集成电路(MSI)
    • 编码器、译码器、多路复用器、奇偶校验、比较器、加法器、三态器件
    • 掌握基本功能,级联的方法
    • 综合应用:利用基本MSI器件作为基本单元设计更复杂的组合逻辑电路
  • 文档标准和电路定时(了解)

时序逻辑设计原理

  • 时序逻辑电路:任一时刻的输出不仅取决与当时的输入,还取决于过去的输入序列。
    • 电路特点:有反馈回路、有记忆元件。
  • 有限状态机:有有限个状态。
    • 时钟信号高电平有效是指在时钟信号的上升沿或时钟的高电平期间发生变化。
  • 时钟周期:两次连续同向转换之间的时间。
  • 时钟频率:时钟周期的倒数。
  • 时钟触发沿:时钟周期内的第一个脉冲边沿,或时钟本身。
  • 占空比:时钟信号有效时间与时钟周期的百分比。

  • 双稳态元件
    • 基本特性
      • 电路有两种稳定状态:Q=1(1态)和Q=0(0态)
      • 只要一接电源,电路就随机出现两种状态中的一种,并永久地保持这一状态。
    • 亚稳态特性
      • 随机噪声会驱动工作于亚稳态点的电路转移到一个稳态的工作点上去。
      • 从一个“稳态”转换到另一个“稳态”需加一定宽度的脉冲(足够的驱动)。
      • 所有的时序电路对亚稳态都是敏感的。
  • 锁存器和触发器(大多数时序电路的基本构件)
    • 锁存器(电平有效)
      • 根据输入,直接改变输出(无使能端)。
      • 有使能端时,在使能信号的有效电平之内都可以根据输入直接改变其输出状态。
    • 触发器(边沿有效)
      • 只在时钟信号的有效边沿改变其输出状态。
  • S-R锁存器
    • S=R=0 电路维持原态
    • S=0,R=1 锁存器清0
    • S=1,R=0 锁存器置1
    • S=R=1 亚稳态,对噪声敏感,状态不稳定
  • S-R锁存器的动作特点
    • 输入信号在全部有效电平内,都能直接改变锁存器的状态(直接置位-复位触发器)
    • 输入端需遵守约束条件
    • 抗干扰能力最低
      • 当S=R=1,然后同时取消时
      • S和R端输入信号脉冲宽度过小
      • S和R端输入信号同时取反
  • D锁存器
    • C=0,输出状态保持不变
    • C=1,输出随输入状态而改变,Q=D
  • D触发器
    • CLK=0时,主锁存器工作,接收输入信号Qm=D;从锁存器不工作,输出Q保持不变。
    • CLK=1时,主锁存器不工作,Qm保持不变;从锁存器工作,将Qm传送到输出端。
  • D触发器的定时参数
    • 传播延迟
      • 建立时间(输入信号先于时钟到达的时间)
      • 保持时间(有效时钟沿后输入信号保持的时间)
  • 扫描触发器
    • TE=0,正常操作Q=D
    • TE=1,进入测试模式
  • 主从S-R触发器
    • 特征方程:Q*=S+R’·Q,S·R=0
  • 主从J-K触发器
    • 特征方程:Q*=J·Q’ + K’·Q
  • T触发器
    • 在每个时钟脉冲有效沿都会改变状态(翻转)
  • 同一逻辑功能的触发器可用不同电路结构实现
  • 同一电路结构可做成不同逻辑功能的触发器

  • Moore机:输出只与状态有关
  • Mealy机:输出取决于状态和输入
  1. 由电路得到激励方程:D0=… D1=…
  2. 由电路得到输出方程:MAX=…
  3. 由激励方程和触发器特征方程得到状态转移方程Q1=… Q0=…
  4. 由转移方程和输出方程得到状态/输出表
  5. 画状态图
  6. 画时序图
  • 时序逻辑电路的分析与设计
    • 反馈时序电路
      • 采用“门电路+反馈回路”实现记忆功能
    • 状态机
      • 用触发器构造电路,用时钟控制状态转换
    • 同步时序电路
      • 存储元件状态的变化是在同一时钟信号操作下同时发生的
    • 异步时序电路
      • 存储元件状态的变化不是同时发生的
    • Mealy型
      • 输出信号取决于存储电路状态和输入信号
    • Moore型
      • 输出信号仅取决于存储电路状态
  • 时钟同步状态机分析基本步骤:
    • 确定下一状态函数F和输出函数G
    • 将F代入触发器的特征方程得到下一状态Q*
    • 利用Q*、G构造状态/输出表
    • 画出状态图、波形图
    • 检查电路是否可以自启动
    • 描述电路功能
  • 时钟同步状态机设计基本步骤:
    • 根据命题构造状态/输出表
    • 状态化简(状态最小化)
    • 建立转移输出/表,得到状态和输出方程
    • 选择触发器作为状态存储器
    • 构造激励表,得到激励方程
    • 画逻辑电路图
  • 合理的状态赋值
    • 选择复位时容易进入的状态作为初始状态
    • 使每次转移时要发生改变的状态变量数最小化
    • 使一组相关状态中不变化的状态变量数最大化
    • 发现和利用问题描述中的对称性
    • 将状态变量组分解为有明确含义的位或字段,相对于状态机的输入效果或者输出特性
    • 可以使用多余最小值的状态变量数(便于分解)
    • 未用状态的考虑
  • 最小成本设计:未用状态作为无关项
  • 最小风险设计:未用状态➡️初始状态

  • 二义性(构造状态图):
    • 互斥性:离开某一状态的弧线上的任意一对转移表达式的逻辑积为0。
    • 完备性:离开某一状态的弧线上的所有转移表达式的逻辑和为1。

小结:

  • 基本时序元件
    • 锁存器和触发器
      • S-R型、D型、J-K型、T型
      • 电路结构、工作原理、功能表、特征方程、时序特性
      • 不同触发器之间的相互转换
  • 时钟同步状态机
    • 结构、类型
    • 时钟同步状态机的分析(方法、步骤)
    • 时钟同步状态机的设计

时序逻辑设计实践

  • 文档标准
    • 一般要求
    • 逻辑符号
      • 边缘触发、主从输出
      • 异步预置(顶端)、异步清零(底端)
    • 状态机描述
      • 文字、状态表、状态图、状态转移列表
    • 时序图及其规范
  • 锁存器和触发器
    • 详见《数字设计》8.2.1 SSI型锁存器和触发器
    • 详见《数字设计》8.2.2 开关消颤和8.2.3 最简单的开关消颤电路
    • 详见《数字设计》8.2.4 总线保持电路
    • 多位锁存器和寄存器
      • 寄存器:边沿触发特性
      • 锁存器:C有效期间输出跟随输入变化
  • 计数器:状态图中包含有一个循环的任何时钟时序电路。
    • 模:循环中的状态个数
    • 模m计数器,又称m分频计数器
    • 计数器的分类
      • 按时钟:同步、异步
      • 按计数方式:加法、减法、可逆
      • 按编码方式:二进制、十进制BCD码、循环码
    • 计数器的功能
      • 计数、分频、定时、产生脉冲序列、数字运算
  • 行波计数器
    • 只有当第i-1位由1➡️0时,第i位才翻转。
    • 利用T触发器实现。
  • 同步二进制加法计数器
    • 在多位二进制数的末位加1,仅当第i位以下的各位都为1时,第i位的状态才会改变。最低位的状态每次加1都要改变。
    • 利用有使能端的T触发器实现。
    • 利用D触发器实现。
  • MSI型计数器
  • 二进制计数器状态的译码
    • 若在一次状态转移中有2位或多位计数位同时变化,译码器输出端可能会产生“尖峰脉冲” —— 功能性冒险
  • 任意模值计数器
    • 利用SSI器件构成
      • 时钟同步状态机设计
    • 利用MSI计数芯片构成
      • 利用n位二进制计数器实现模m计数器
    • 分两种情况考虑:
      • m<2^n 清零法、计数法
      • m>2^n 级联
  • 移位寄存器
    • MSI移位寄存器
    • 移位寄存器计数器
      • 有2^n-1种非零状态
    • 环形计数器
      • 有2^n-n个状态未利用
  • 修改成自启动的方法
    • 不影响有效循环
    • 无效循环中至少有一个状态能直接或间接进入有效循环
    • 电路应最简
    • 枝尽可能短
    • 检查修改后的状态图是否只有一个圈,若只有一个圈,则宣告成功。否则,重复第二步,直到状态图只有一个圈,其余都是枝为止。
  • 自校正设计
    • 确定有效的状态循环
    • 对无效状态进行处理,使其进入有效循环
  • 扭环形计数器(Johnson Counters)
    • n-bit扭环形计数器模2n
  • LFSR,线性反馈移位寄存器计数器
    • LFSR计数器有2^n-1种有效状态——最大长度序列发生器
  • 同步设计方法
    • 同步系统➡️分解➡️模块结构
    • 数据单元➕控制单元
  • 同步设计中的障碍
    • 竞争和冒险可以不考虑
    • 时钟偏移:同一个时钟信号在不同的时刻到达不同的器件
      • 一个时钟信号的扇出系数不足以驱动所有输入端,有必要提供多个完全相同的时钟
      • 使多个时钟信号的输出负载基本平衡
      • 注意时钟信号的通路
      • 将CLOCK信号线布置为树形结构
      • 选通时钟:设计合理的时钟使能端
      • 异步输入:利用好的同步器协调异步输入

小结:

  • 小规模集成(SSI)芯片
    • 锁存器和触发器(开关消抖、总线保持)
  • 中规模集成(MSI)芯片
    • 多位锁存器和寄存器
    • 计数器、移位寄存器
  • 同步系统设计的其它问题
    • 迭代、同步系统结构、时序
    • 时钟偏移、选通时钟、异步输入
  • 计数器
    • 行波计数器、同步二进制加法计数器的结构
  • 计数器的应用
    • 实现任意模m计数器(分频器)
    • 用作序列信号发生器
    • 获得m中取1码
  • 移位寄存器
    • 移位寄存器的结构(串入、并入、串出、并出)
  • 移位寄存器的应用
    • 实现串/并转换
    • 用作序列信号检测器
    • 用作序列信号发生器
    • 移位寄存器型计数器
      • 环型计数器(m中取1码)
      • 扭环计数器
      • 线性反馈移位寄存器(LFSR)计数器