寄存器传输级

科技工作者之家 2020-11-17

在数位电路设计中,寄存器传输级(英语:register-transfer level, RTL)是一种对同步数位电路的抽象模型,这种模型是根据数字信号在硬件寄存器、存储器、组合逻辑装置和总线等逻辑单元之间的流动,以及其逻辑代数运作方式来确定的。

简介寄存器传输级抽象模型在诸如Verilog和VHDL的硬件描述语言中被用于创建对实际电路的高层次描述,而低层次描述甚至实际电路可以通过高层次描述导出。在现代的数位设计中,寄存器传输级上的设计是最典型的工作流程。逻辑合成工具可以根据寄存器传输级的描述构建更低级别的电路描述。1

寄存器传输级描述图中所示为一个能够按照时间脉冲交替改变输出逻辑电平的简单电路。左边的反相器(带圆点的三角形)构成了组合逻辑(Combination logic)部分,而右边的寄存器(Register)则保持当前的状态。

一个同步电路由两个主要元素构成:寄存器和组合逻辑电路。寄存器通常由D触发器组成,按照给定时间脉冲来进行同步时序操作,这个部分使得时序逻辑电路具有记忆的功能。组合逻辑电路则由逻辑门组成,提供电路的所有逻辑功能。

例如,一个非常简单的同步电路如右图所示。寄存器的输出端,通过一个反相器连接到其输入端,这样,每遇到一个时间脉冲的上升沿信号,输出端的逻辑电平改变一次。在这个电路中,反相器构成了组合逻辑电路部分。

如果使用硬件描述语言来设计数字集成电路,设计人员通常并不在晶体管级进行设计,而是在更高的抽象级别(层次)进行工程设计。在硬件描述语言中,设计人员只需要声明寄存器(就像在计算机编程语言中声明变量一样),然后使用类似计算机编程中的条件(if...then...else)、选择(case)等运算符来描述组合逻辑的功能。我们把上述这样级别的设计称为寄存器传输级的设计。这个术语主要是指我们的关注点为信号在寄存器之间的流动。

例如,上面提到过的这个例子可以用下面的VHDL代码来描述:

D

科技工作者之家

科技工作者之家APP是专注科技人才,知识分享与人才交流的服务平台。