Open In App

Micro Instruction Sequencing

Need for designing the micro-instruction sequencing technique : 
The first purpose is to minimize the size of control memory because control memory is present inside the processor.
The second purpose is to execute the micro-instructions as fast as possible. Which means the address of the next micro-instruction can be calculated as fast as possible.

The factors which are responsible for reducing the size of control memory are –



The number of microoperations executed in the processor depends upon the processor architecture, and encoding of instructions makes it short. But the major concern is to calculate the address of the next micro-instruction. 

The address of the next micro-instruction can be –



 The address of the first micro-instruction can be calculated once from the opcode of the instruction which is present in the instruction register, then that address is loaded into CMAR (Control Memory Address Register). CMAR passes the address to the decoder. The decoder identifies the corresponding micro-instructions from the Control Memory. 
A micro-instruction has two fields: a control field and an address field. 

As we know, usually micro-instructions are not executed sequentially for a long time . Let’s say after 4 or 5 micro-instructions the branch can usually occur. Therefore, our main motive is to make the branching algorithm better so that the address of the next micro-instruction can be calculated efficiently. 
Therefore, micro-instruction sequencing is the method of determining the flow of the microprogram.

So there are techniques which are based on the number of addresses utilised for sequencing –

  1. Two address fields in each microinstruction (Dual address field).
  2. Single address field(Single address field).
  3. Variable format microinstructions

1. Dual address field –

Dual address field

.

Here, lots of control memory is wasted because at least one of the address fields is not required in many(i.e. for sequential or unconditional) micro-instructions.

2. Single address field –
With some modifications and the added logic, the number of addresses is reduced to one. Here, a new register called microprogram counter is used. In this case, the next microinstruction address can be the address of the next sequential address or it can be the address generated using op-code or it can be the address stored in the address field of the microinstruction. 

Single address field.

This method is commonly used. But the space provided in each micro-instruction in a single address field is not quite useful if the instructions are executed sequentially.  

3. Variable address format –

Variable instruction format

Article Tags :