第4节 D锁存器
基本单元是最基础的存储器器件,并在特定的情况下发挥着重要的作用。但是,如果在一个基本单元上再加上两个逻辑门,那么就可以构造出更有用的存储器器件,该器件就称为D锁存器。D锁存器使用基本单元作为存储部件,但它只允许在时序控制信号有效时才能改变(或编程)存储器存储的逻辑值。因此,D锁存器有两个输入-时序控制信号和数据输入。时序控制信号,通常也称为“门信号”,或“时钟”,或是“锁存使能”,主要用于同步新数据何时可以写入存储器,何时不能写入。如下图左图所示,可以看出当门信号无效时,S和R信号为1且输出Q由存储在基本单元反馈回路的值决定(所以Q就是存储的逻辑值)。再看右图,可以看出当门信号有效时,D(数据)输入将S和R驱动到各自相反的电平,从而在基本单元中强制了一个置位或复位操作。通过组合时序信号和数据输入信号来强制基本单元的置位或复位操作,我们就构造出了一个非常有用的存储器器件。D锁存器已经广泛使用在所有类型的现代数字电路中了。

如下图所示为D锁存器时序方框图。注意,当门信号有效时,输出Q只是简单的“跟随”输入。但是当门信号无效时,输出“记住”了门信号下降沿时的D值。

1、 在G有效前,Q未定义;Q有效时,Q得到D的值
2、 G无效而D有效,Q不改变
3、 D和G都有效;Q得到D的值
4、 G下降沿;Q存储了D值
5、 D下降沿,而G无效,Q值不改变
6、 G有效,Q得到D值
7、 G有效时,Q跟随D值
练习4:创建并仿真练习文档中D锁存器的结构性VHDL源文件。


