MICRO PROGRAMMING SEQUENCE
Introduction:
Here we will be discussing what is micro programming sequence , how it works and some few
key terms .
Definition:
The microcode for the control memory should be generated by the inventor once the
configuration of the computer is settled. The generation of code is known as microprogramming.
Internal design:
• The basic components of microprogrammed control unit are the control memory and the
circuits that select the next address.
• The task of Microinstruction sequencing is done by Microprogram sequencer.
• The address selection part is called as microprogram sequencer.
• Microprogram sequencer can be constructed with digital functions to suit a particular
application.
• Two imp. Factors that must be considered while designing the microinstruction sequencer:
1. Size of the microinstruction
2. Time of address generation
• Figure 1.1 shows the internal structure of a microprogram sequencer for a control memory
Figure 1.1
Key terms:
• CAR : Control Address Register
• SBR : Subroutine Register
• CD : Condition
• BR : Branch
Working:
• The purpose of microprogram sequencer is to present an address to
the control memory so that a microinstruction may be read and
executed.
• The next address logic of the sequencer determines the specific
address source to be loaded into the CAR.
• The choice of the address source is guided by the next address
information bits that the sequencer receives from address
information bits that the sequencer receives from the present
microinstruction.
• The control memory is included in the diagram to show the
interaction between the sequencer and the memory attached to it.
• There are two multiplexers in the circuit.
• The first multiplexer selects an address from one of the four sources
and routes it into the CAR.
• The second multiplexer tests the value of a selected status bit and
the result of the test is applied to an input logic circuit.
• The output from CAR provides the address for the control memory.
• The contents of CAR is incremented and applied to one of the
multiplexer inputs and to the SBR.
• The other three input come from the address field of the other three
input come from the address field of the present microinstruction,
from the output of SBR and from an external source that maps the
instruction.
• Variables S0and S1 select one of the source addresses for CAR.
• Variable L enables the load input in SBR
• The CD (condition) field of the microinstruction selects one of the
status bits in the second multiplexer.
• If the bit selected is 1, the T (test) variable is equal to 1, otherwise it
is 0.
• The T value together with the two bits from the BR (branch) field
go to an input logic circuit.
• The Input logic in a particular sequencer determines the type of
operations that are available in the unit.
• Typical sequencer operations are: increment, branch and jump, call
and return from subroutine, load an external address, push or pop
the stack, and other address sequencing operations.
• The binary values of the two selection variables determine the path
in the multiplexer. E.g. S1S0 = 10, multiplexer input number 2 is
selected and establishes a transfer path from SBR to CAR