12.2 寄存器传输语言 (RTL)
对寄存器所存信息的加工和存储称为 寄存器传输操作 。
用 RTL可简练而准确地描述 信息流通 和信息处理 的情况,是描述各模块内部和模块之间连接关系的一种很好的方法。
在 RTL中 寄存器 是 基本的逻辑单元,并且是 广义的,即:在寄存器传送语言中。 术语 寄存器不仅包含 普通的寄存器,而且还包含 移位寄存器、计数器、存储器 以及 其它类型的寄存器。
例如:
加法计数器?可看作为是具有递增(加 1)功能的寄存器。
存储器?可看成是存储信息的寄存器堆。
储存在寄存器的二元信息可以是 二进制数、
二 ---十进制码、字符、控制信息或其它二元代码信息 。而对储存在寄存器的二元信息所执行的操作称为 微操作。
在数字系统中最常遇到的微操作可分为五类:
( 1)寄存器相互传送解释,这种微操作不改变信息内容,只是把二元信息从一个寄存器传送到另一个寄存器。
( 2)逻辑运算解释,是对储存在寄存器的二元信息进行 与、或 和 非 等逻辑运算。
( 3)算术运算解释,是对储存在寄存器的数字量进行 加法,减法 等算术运算。
( 4)移位解释,描述寄存器中二元信息的移位操作。
(5)条件控制语句一、寄存器间的信息传输
1.寄存器的表示方法
① 大写英文字母
② 方块图
A
(a)寄存器 A
… AnAn-1A2A1
(b)寄存器 A的各个位表示
A
(c)寄存器位编号表示
1 n
图 11.2.1 寄存器方块图表示例如:寄存器传送语句为,A?B
表示 寄存器 B的内容传送给 寄存器 A,
箭头 表示 传输方向,离开是源寄存器,指向目标寄存器。传输操作是一个 复制过程,
不改变源寄存器的内容。
例如:寄存器传送语句为,Y?X,B?A;
2.传输操作传送操作通常是 在一定条件下发生的,而这个条件是由逻辑方程来表示的:
实现语句 BATX,1 的逻辑图图 11.2.2
BA:TX 1
控制函数结束控制函数解释,
( 1) A 和 B的位数相同。
( 2) A的数据输入端( D1---Dn)和 B的数据输出端( B1---Bn)相连接。
( 3)寄存器 A还应有并行输入数据的控制端( LD )。
( 4)控制函数由控制电路实现。
解,(1) 分析思路
AB
C D
T1 T5 T6控制网络源寄存器目标寄存器
AB
C DLDLD
选择使能
1 0
MUX2
推广,对于从多个数据源中选择一个传送给多个目标中的一个,构成了寄存器间数据传输的公共通道,这种公共数据通道称为 总线( BUS) 。
强调,图中略去了控制电路二、算术操作基本的算术运算操作有:加法、减法、求补和算术移位。例如:算术操作语句:
强调,递增和递减操作可分别用加法计数器和减法计数器实现。
为了说明算术操作语句和硬件的对应关系,
我们讨论下面两条语句:
T2,A←A+B T5,A←A+1
图 11.2.5 完成加和增,1”操作的方框图并行加法器
B寄存器
A寄存器例如:增加一句,T0,B←X ;
三、逻辑操作逻辑操作是两个寄存器 对应位之间的逻辑运算,基本逻辑操作是 与,或,非 和 异或 等。
与运算符,∧,;或运算符,∨,
—— 为了与算术运算的符号,·”,,+”区别。
T1+T2,A A+B,C D∨ F
两个操作同时实现(并行关系)
说明:
① T 1 和 T 2 之间的,+”是逻辑算符。
② A和 B之间的,+”是算术加算符。
③ D和 F之间的,∨,是逻辑算符。
④ 两表达式之间,,,号用来分开两个传输操作表达式,而这两个表达式具有同一控制函数,也就是这两个操作同时实现。
与之相对应的电路为:
T1+T2,A A+B,C D∨ F
T1+T2,A A+B,C D∨ F
四、移位操作
1.右移操作,X←SR ( A,X)
2.左移操作,X←SL ( X,A)
X←SR ( X)
X←SL ( X)
A X1 X2 … Xn
X1 X2 … Xn A
0 X1 X2 … Xn
X1 X2 … Xn 0
五、条件控制语句
P,IF(条件) Then(微操作 1) Else(微操作 2)
控制函数例如:设 F是 1位触发器,C也是 1位触发器,
那么,这个条件语句可以改写成两个一般语句:
C · T2,F←1 ;
C · T2,F←0 ;
需要说明的是,条件语句 IF之后的条件是控制函数的成分,而不是微操做的成分。
小结一条 RTL 语句,描述数字系统所处的一个状态。
其操作,说明数据处理器要实现的操作。
控制函数,说明控制器发出的命令。
一条 RTL语句可以定义一个数字系统。