- 超大规模集成电路设计教程
- 超大规模集成电路设计 - 首页
- 超大规模集成电路设计 - 数字系统
- 超大规模集成电路设计 - FPGA技术
- 超大规模集成电路设计 - MOS晶体管
- 超大规模集成电路设计 - MOS反相器
- 组合MOS逻辑电路
- 顺序MOS逻辑电路
- VHDL编程
- VHDL - 简介
- VHDL - 组合电路
- VHDL - 顺序电路
- Verilog
- Verilog - 简介
- 行为建模与时序
- 超大规模集成电路设计有用资源
- 超大规模集成电路设计 - 快速指南
- 超大规模集成电路设计 - 有用资源
- 超大规模集成电路设计 - 讨论
超大规模集成电路设计 - 顺序MOS逻辑电路
逻辑电路分为两类:(a)组合电路和(b)顺序电路。
在组合电路中,输出仅取决于最新输入的状态。
在顺序电路中,输出不仅取决于最新的输入,还取决于之前的输入状态。顺序电路包含存储单元。
顺序电路有三种类型:
双稳态 - 双稳态电路有两个稳定的工作点,并且将处于其中任何一个状态。例如 - 存储单元、锁存器、触发器和寄存器。
单稳态 - 单稳态电路只有一个稳定的工作点,即使它们暂时被扰动到相反的状态,它们也会及时返回到其稳定的工作点。例如:定时器、脉冲发生器。
无稳态 - 电路没有稳定的工作点,并在多个状态之间振荡。例如 - 环形振荡器。
CMOS逻辑电路
基于NOR门的SR锁存器
如果置位输入 (S) 等于逻辑“1”,而复位输入等于逻辑“0”,则输出 Q 将被强制为逻辑“1”。而$\overline{Q}$被强制为逻辑“0”。这意味着SR锁存器将被置位,无论其先前状态如何。
类似地,如果 S 等于“0”,而 R 等于“1”,则输出 Q 将被强制为“0”,而$\overline{Q}$被强制为“1”。这意味着锁存器被复位,无论其先前保持的状态如何。最后,如果输入 S 和 R 都等于逻辑“1”,则两个输出都将被强制为逻辑“0”,这与 Q 和$\overline{Q}$的互补性相冲突。
因此,在正常运行期间不允许使用此输入组合。基于NOR门的SR锁存器的真值表在表格中给出。
S | R | Q | $\overline{Q}$ | 操作 |
---|---|---|---|---|
0 | 0 | Q | $\overline{Q}$ | 保持 |
1 | 0 | 1 | 0 | 置位 |
0 | 1 | 0 | 1 | 复位 |
1 | 1 | 0 | 0 | 不允许 |
基于NOR门的CMOS SR锁存器如下图所示。
如果 S 等于 VOH,而 R 等于 VOL,则并联连接的晶体管 M1 和 M2 将都导通。节点$\overline{Q}$上的电压将假设 VOL = 0 的低逻辑电平。
同时,M3 和 M4 都关闭,这导致节点 Q 处的逻辑高电压 VOH。如果 R 等于 VOH,而 S 等于 VOL,则 M1 和 M2 关闭,而 M3 和 M4 导通。
基于NAND门的SR锁存器
基于NAND门的SR锁存器的框图和门级原理图如下图所示。S 和 R 输入端的小圆圈表示电路响应低电平有效输入信号。基于NAND门的SR锁存器的真值表在表格中给出。
S | R | Q | Q′ | |
0 | 0 | NC | NC | 无变化。锁存器保持当前状态。 |
1 | 0 | 1 | 0 | 锁存器置位。 |
0 | 1 | 0 | 1 | 锁存器复位。 |
1 | 1 | 0 | 0 | 无效状态。 |
如果 S 变为 0(当 R = 1 时),Q 变为高电平,将$\overline{Q}$拉低,锁存器进入置位状态。
S = 0 则 Q = 1(如果 R = 1)
如果 R 变为 0(当 S = 1 时),Q 变为高电平,将$\overline{Q}$拉低,锁存器复位。
R = 0 则 Q = 1(如果 S = 1)
保持状态需要 S 和 R 都为高电平。如果 S = R = 0,则不允许输出,因为它会导致不确定状态。基于NAND门的CMOS SR锁存器如下图所示。
基于NAND门的耗尽型负载nMOS SR锁存器如下图所示。其操作与CMOS NAND SR锁存器相似。CMOS电路实现具有低的静态功耗和高的噪声容限。
CMOS逻辑电路
带时钟的SR锁存器
图中显示了一个添加了时钟的基于NOR门的SR锁存器。只有当CLK为高电平时,锁存器才响应输入S和R。
当CLK为低电平时,锁存器保持其当前状态。注意Q状态变化:
- 当S在正CLK期间变高时。
- 在CLK低电平期间S&R变化后的前沿CLK边沿。
- S在CLK为高电平期间的正毛刺。
- 当R在正CLK期间变高时。
带时钟的基于NOR门的SR锁存器的CMOS AOI实现如下图所示。注意只需要12个晶体管。
当CLK为低电平时,N树N中的两个串联端子断开,而P树中的两个并联晶体管导通,从而保持存储单元中的状态。
当时钟为高电平时,电路简化为基于NOR门的CMOS锁存器,它将响应输入S和R。
基于NAND门的带时钟的SR锁存器
电路由四个NAND门实现。如果使用CMOS实现此电路,则需要16个晶体管。
- 只有当CLK为高电平时,锁存器才响应S或R。
- 如果两个输入信号和CLK信号都为高电平有效:即,当CLK =“1”,S =“1”且R =“0”时,锁存器输出Q将被置位。
- 类似地,当CLK =“1”,S =“0”时,锁存器将被复位,并且
当CLK为低电平时,锁存器保持其当前状态。
带时钟的JK锁存器
上图显示了一个基于NAND门的带时钟的JK锁存器。SR锁存器的缺点是,当S和R都为高电平时,其输出状态变得不确定。JK锁存器通过使用从输出到输入的反馈来消除这个问题,这样真值表的所有输入状态都是允许的。如果J = K = 0,则锁存器将保持其当前状态。
如果J = 1且K = 0,则锁存器将在下一个正跳变时钟边沿被置位,即Q = 1,$\overline{Q}$= 0。
如果J = 0且K = 1,则锁存器将在下一个正跳变时钟边沿被复位,即Q = 1,$\overline{Q}$= 0。
如果J = K = 1,则锁存器将在下一个正跳变时钟边沿翻转。
带时钟的JK锁存器的操作总结在下表中。
J |
K |
Q |
$\overline{Q}$ | S |
R |
Q |
$\overline{Q}$ | 操作 |
0 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 保持 |
1 | 0 | 1 | 1 | 1 | 0 | |||
0 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 复位 |
1 | 0 | 1 | 0 | 0 | 1 | |||
1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 置位 |
1 | 0 | 1 | 1 | 1 | 0 | |||
1 | 1 | 0 | 1 | 0 | 1 | 1 | 0 | 翻转 |
1 | 0 | 1 | 0 | 0 | 1 |
CMOS D锁存器实现
D锁存器通常使用传输门(TG)开关实现,如下图所示。输入TG由CLK激活,而锁存反馈环路TG由CLK激活。当CLK为高电平时,接受输入D。当CLK变为低电平时,输入断开,锁存器设置为先前的数 据D。