Register Transfer Language and Micro operations: Register Transfer language, Register Transfer
A digital computer system connects digital components such as registers, decoders, arithmetic components, and control logic. To make a comprehensive digital system, these digital modules are equipped with some common data and control channels.Furthermore, the registers and the actions performed on the data stored in them best describe digital modules. Micro-operations are operations that are done on data contained in registers.
Understanding Register Transfer Language
Register transfer language is a symbolic notation for describing micro-operation transfers between registers.
The availability of hardware logic circuits that can perform a specified micro-operation and transfer the outcome of the operation to the same or another register is referred to as register transfer. The term “language” was coined by programmers to describe programming languages. This programming language is a method of expressing a computer process through symbols.
Following are some commonly used register transfer example with an example:
- Accumulator: This is the most commonly used register for storing data read from memory.
- General-Purpose Registers: These are used to store data on intermediate outcomes during the execution of a programme. Assembly programming is required to access it.
- Special Purpose Registers: Users do not have access to the Special Purpose Registers. These are computer system registers.
MAR: Memory Address Registers are the registers that store the memory unit’s address
MBR: This register stores instructions and data received from and sent from the memory
PC: Program Counter indicates the next command to be executed
IR: Instruction Register stores the to-be-executed instruction
Register Transfer
The replacement operator designates the information moved from one register to another in symbolic form.
R2 ← R1
It denotes the data transfer from register R1 to register R2.
In most cases, we want the transfer to happen only under specific control conditions. The following if-then sentence demonstrates this: If (P=1), (R2 R1)
The control signal P is generated in the control portion.
Micro-Operations
Micro-operations are operations performed on data stored in registers. A micro-operation is a simple operation that is carried out on data contained in one or more registers.
Example: Load, Shift, count, and clear.
Types of Micro-Operations
The following are the different types of micro-operations:
- Micro-operations that move binary data from one register to another are known as register transfers.
- In registers, arithmetic micro-operations operate on numeric data stored.
- Bit manipulation operations on non-numeric data are performed by logic micro-operations.
- Shift micro-operations are data-based shift micro-operations.
- Arithmetic Micro-Operations
- Add Micro-Operation
The following statement defines it:
R1 + R2 = R3
The foregoing line tells the computer to add the data or contents of register R1 to the data or contents of register R2, then transfer the sum to register R3.
Subtract Micro-Operation
Consider the following scenario:
R1 + R2′ + 1 R3
Instead of using the minus operator, we use the complement of 1 and add one to the register being subtracted.
- Increment/Decrement Micro-Operation
In general, increment and decrement micro-operations are accomplished by adding and removing 1 from the register.
R1 → R1 + 1
R1 → R1 – 1
- Logic Micro-Operations
These are binary micro-operations carried out on the register bits. These procedures treat each bit as a binary variable and consider it separately.
Consider the X-OR micro-operation with the contents of R1 and R2 registers.
P: R1 ← R1 X-OR R2
A Control Function is also provided in the above statement.
- Shift micro-operations
These are the important different types of micro-operations. That means we can move the register’s contents to the left or right. The serial input shifts a bit to the rightmost position in the shift left operation, and a bit to the leftmost position in the shift right action.
There are three different sorts of shifts:
- a) Logical Shift
The serial input is used to send 0 to the device. The symbols “shl” and “shr” are used to represent logical shifts left and right, respectively.
R1 ← she R1
R1 ← she R1
b) Circular Shift
This moves the bits of the register around the two ends without losing any data or contents. The shift register’s serial output is connected to its serial input in this configuration. The terms “cir” and “cil” stand for left and right circular shifts, respectively.
C) Shift in Arithmetic
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.
Add Comment