在数位电路设计中,寄存器传输级(英语:register-transfer level, RTL)是一种对同步数位电路的抽象模型,这种模型是根据
数字信号在
硬件寄存器、存储器、组合逻辑装置和总线等逻辑单元之间的流动,以及其
逻辑代数运作方式来确定的。
寄存器传输级抽象模型在诸如
Verilog和VHDL的
硬件描述语言中被用于创建对实际电路的高层次描述,而低层次描述甚至实际电路可以通过高层次描述导出。在现代的数位设计中,寄存器传输级上的设计是最典型的工作流程。逻辑合成工具可以根据寄存器传输级的描述构建更低级别的电路描述。
一个能够按照时间脉冲交替改变输出逻辑电平的简单电路。左边的反相器(带圆点的三角形)构成了组合逻辑(Combination logic)部分,而右边的寄存器(Register)则保持当前的状态。
一个同步电路由两个主要元素构成:寄存器和
组合逻辑电路。寄存器通常由D
触发器组成,按照给定时间脉冲来进行同步时序操作,这个部分使得
时序逻辑电路具有记忆的功能。组合逻辑电路则由
逻辑门组成,提供电路的所有逻辑功能。
例如,一个非常简单的同步电路。寄存器的输出端,通过一个
反相器连接到其输入端,这样,每遇到一个时间脉冲的
上升沿信号,输出端的逻辑电平改变一次。在这个电路中,反相器构成了组合逻辑电路部分。
如果使用
硬件描述语言来设计
数字集成电路,设计人员通常并不在晶体管级进行设计,而是在更高的抽象级别(层次)进行工程设计。在硬件描述语言中,设计人员只需要声明寄存器(就像在
计算机编程语言中声明变量一样),然后使用类似计算机编程中的条件(if...then...else)、选择(case)等运算符来描述组合逻辑的功能。我们把上述这样级别的设计称为寄存器传输级的设计。这个术语主要是指我们的关注点为信号在寄存器之间的流动。
通过使用
电子设计自动化工具来完成
逻辑综合,上面的代码描述可以直接被“翻译”为等效的硬件配置,这一步骤可以在
专用集成电路或
现场可编程逻辑门阵列上实现。逻辑综合工具软件一般还能够将复杂的逻辑进行简化,从而降低成本。
在寄存器传输级,可以分成几种电路。如果寄存器的输出端和输入端存在环路,这样的电路被称为“
状态机”,常被归类到
时序逻辑电路中。如果寄存器之间有连接,而没有上述的“回环”,则这样的电路结构被称为“
流水线结构”。
寄存器传输级流程是
集成电路设计(Integrated circuit design)中进行逻辑设计的步骤。
一个寄存器传输级的描述通常会通过逻辑综合工具转换成逻辑门级电路连线
网表的描述。然后,这一步的成果再经过布线等步骤,得到物理的电路。