Register Transfer Language (RTL)
In symbolic notation, it is used to describe the micro-operations transfer among
registers. It is a kind of intermediate representation (IR) that is very close to
assembly language, such as that which is used in a [Link] term
“Register Transfer” can perform micro-operations and transfer the result of
operation to the same or other register.
Micro-operations :
The operation executed on the data store in registers are called micro-
operations. They are detailed low-level instructions used in some designs to
implement complex machine instructions.
Register Transfer :
The information transformed from one register to another register is
represented in symbolic form by replacement operator is called Register
Transfer.
Replacement Operator :
In the statement, R2 <- R1, <- acts as a replacement operator. This statement
defines the transfer of content of register R1 into register R2.
There are various methods of RTL –
1. General way of representing a register is by the name of the register
enclosed in a rectangular box as shown in (a).
2. Register is numbered in a sequence of 0 to (n-1) as shown in (b).
3. The numbering of bits in a register can be marked on the top of the box as
shown in (c).
4. A 16-bit register PC is divided into 2 parts- Bits (0 to 7) are assigned with
lower byte of 16-bit address and bits (8 to 15) are assigned with higher bytes
of 16-bit address as shown in (d).
Basic symbols of RTL :
Symbol Description Example
Letters and MAR, R1,
Denotes a Register
Numbers R2
R1(8-bit)
() Denotes a part of register
R1(0-7)
<- Denotes a transfer of information R2 <- R1
R1 <- R2
, Specify two micro-operations of Register Transfer
R2 <- R1
P : R2 <- R1
: Denotes conditional operations
if P=1
Naming Operator Denotes another name for an already existing
Ra := R1
(:=) register/alias
Register Transfer Operations:
The operation performed on the data stored in the registers are referred to as
register transfer operations.
There are different types of register transfer operations:
1. Simple Transfer – R2 <- R1
The content of R1 are copied into R2 without affecting the content of R1. It is
an unconditional type of transfer operation.
2. Conditional Transfer –
It indicates that if P=1, then the content of R1 is transferred to R2. It is a
unidirectional operation.
3. Simultaneous Operations –
If 2 or more operations are to occur simultaneously then they are separated
with comma (,).
If the control function P=1, then load the content of R1 into R2 and at the same
clock load the content of R2 into R1.