Skip to content

Latest commit

 

History

History
71 lines (37 loc) · 3 KB

readme.md

File metadata and controls

71 lines (37 loc) · 3 KB

三、时序逻辑

Computer programs use variables, arrays, and objects—abstractions that persist data over time. Hardware platforms support this ability by offering memory devices that know how to maintain state.

总结

时序的概念使电路可以存储过去的状态,让电路中的反馈变得更加可控,并改善门的翻转时间和传输时延导致的竞争冒险问题。

本章以DFF(D触发器)为基础,向其加入置数和保持功能,并扩展至多位,搭建寄存器。

通过多个寄存器,结合数据选择器和分配器,搭建具有取值和读写功能的存储器。

通过触发器,结合增一加法器,搭建计数器。

计数器

用于实现程序指令的顺序执行。可通过置数实现跳转,通过清零使程序重新运行。

代码

PC模块在设计时需注意控制管脚优先级,第一个if对应的reset具有最高优先级,应该输入最后一级Mux。

RAM部分依序逐级构建即可。

电子电路复习

锁存器

将信号通过两个非门接回输入,就得到了一个可以保持自身状态的电路,称为锁存器。

将非门换成有两个输入端的或非或与非门,就得到了一个可以设置状态的锁存器,称为SR锁存器。两个外部输入端分别称为复位、置位端。

触发器

将SR锁存器的输入端与输出端输入一个二路选择器,引入外部时钟作为控制信号。此结构称为触发器,触发方式为电平触发。

将置位复位端通过非门合在一起,称为D触发器。

CMOS电路中,也可在非门环路的输入和反馈电路中放置两个互补控制的传输门,利用门的延时构成D触发器。

将两个电平触发的D触发器连在一起,时钟信号先经过一个非门,再输入第二个触发器,利用门电路的少量延时,可实现边沿触发的触发器。

将边沿触发器中的D触发器换成SR触发器,此时输入端可在触发后回到保持态,构成脉冲触发的触发器。

可在脉冲触发器输入端加上输出端的反馈控制,使其在一个时钟周期内只可响应一次触发信号,构成JK触发器。

寄存器

多个D触发器并列,构成寄存器。实际往往还会加入保持、异步清零、三态输出等功能。保持功能可通过禁用时钟信号实现。

RAM(Random Access Memory)

Static RAM/SRAM

原理与触发器相同,故速度最快,成本最高。常用作缓存(Cache)。

Dynamic RAM/DRAM

利用MOS电容存储,结构简单,集成度高。速度慢于SRAM,需要定期刷新。常用作内存(Memory)。

ROM(Read-Only Memory)

经过发展,现有的ROM主要为采用闪存(Flash Memory)技术,可写,但写入速度远低于读取。常用于存放固件。

Flash的快速发展正使其在移动设备领域替代硬盘,SSD硬盘的原理与Flash有相似之处。

代码

PC设计中,由于三个控制位存在优先级,故无法使用一个Mux8Way16实现,需通过三级Mux电路实现。