Search This Blog

Wednesday, 18 June 2025

Register Transfer Language (RTL)

0 comments

Role of Registers and Register Transfer Language

  • A register is a group of flip-flops with each flip-flop capable of storing one bit of information. 
  • An n-bit register has a group of n flip-flops and is capable of storing any binary information of n bits. 
  • In addition to the flip-flops, a register may have combinational gates that perform certain data-processing tasks. 
  • In its broadest definition, a register consists of a group of flip-flops and gates that effect their transition. 
  • The flip-flops hold the binary information and the gates control when and how new information is transferred into the register. 
Here is the Presentation on RTL

Micro Operations on Registers in a CPU:
  • Digital modules are best defined by the registers (one of the digital component) they contain and the operations that are performed on the data stored in them.
  • Similarly, the internal operation of a digital computer is mainly determined by the following factors: 
    1. The set of registers (called general purpose registers) a CPU contains for internal storage of data to be processed
    2. The sequence of operations (called micro operations) performed on the binary information stored in the registers 
    3. The control that initiates the micro operations on the data available in registers
  • The operations executed on data stored in registers are called micro operations
  • micro operation is an elementary operation performed on the information stored in one or more registers. Examples of micro operations are shift , count, clear, and load. 
  • The result of a micro operation may replace the previous binary information of a register or transfer the content of one register to another register. 
    • For example, a counter with parallel load is capable of performing the micro-operations increment and load.
    • A bidirectional shift register is capable of performing the shift right and shift left micro operations.


Register Transfer Language (RTL)
  • It is possible to specify the sequence of micro operations in a computer by explaining every operation in words, but this procedure usually involves a lengthy descriptive explanation. 
  • It is more convenient to adopt a suitable symbology to describe the sequence of transfers between registers and the various arithmetic and logic micro operations associated with the transfers. 
  • The use of symbols instead of a narrative explanation provides an organized and concise manner for listing the micro operation sequences in registers and the control functions that initiate them.
  • The symbolic notation used to describe the micro operation transfers among registers is called a Register Transfer Language (RTL) 


  • The term "register transfer" implies the availability of hardware logic circuits that can perform a stated micro operation and transfer the result of the operation to the same or another register. 
  • In general, a programming language is a procedure for writing symbols to specify a given computational process. 
  • A register transfer language is a system for expressing in symbolic form the micro operations that will take place using the registers of a digital module. 
  • It is a convenient tool for describing the internal organization of digital computers in concise and precise manner.

Symbolic Representation of Registers in Micro Operations:
  • Computer registers are designated by capital letters (sometimes followed by numerals) to denote the function of the register. 
  • For example, the register that holds an address for the memory unit is usually called a Memory Address Register and is designated by the name MAR.
  • Other examples for registers are PC (for Program Counter), IR (for Instruction Register, and R1 (for processor register).
  • The most common way to represent a register is by a rectangular box with the name of the register inside, as in Fig. 4-1(a). 
  • The individual bits can be distinguished as in (b). 
  • The numbering of bits in a 16-bit register can be marked on top of the box as shown in (c). 

Program Counter (PC):
  • A 16-bit register is partitioned into two parts in Fig. 4-1(d). Bits 0 through 7 are assigned the symbol L (for low byte) and bits 8 through 15 are assigned the symbol H (for high byte). 
  • Program Counter (PC) is an example of 16-bit register, which keeps track of the address of the next instruction to be fetched and executed. 
  • The symbol PC(0-7) or PC(L) refers to the low-order byte and PC(S-15) or PC ( H) to the high-order byte.

Register Transfer:
  • Information transfer from one register to another is designated in symbolic form by means of a replacement operator (ß
  • The statement 
                R2 ß R1 
         denotes a transfer of the content of register R1 into register R2. 
  • It designates a replacement of the content of R2 by the content of Rl. 
  • By definition, the content of the source register R1 does not change after the transfer. 
  • A statement that specifies a register transfer implies that circuits are available from the outputs of the source register to the inputs of the destination register and that the destination register has a parallel load capability.
Basic Symbols for Register Transfer:
  • The basic symbols of the register transfer notation are listed in Table 4-1. 
  • Registers are denoted by capital letters, and numerals may follow the letters.
  • Parentheses are used to denote a part of a register by specifying the range of bits or by giving a symbol name to a portion of a register.
  • The arrow denotes a transfer of information and the direction of transfer. 
  • A comma is used to separate two or more operations that are executed at the same time.
  • The statement 
                    T: R2 ß R1, R1 ß R2 
          denotes an operation that exchanges the contents of two registers during one common clock pulse provided that T = 1. 
  • This simultaneous operation is possible with registers that have edge-triggered flip-flops.

Leave a Reply