Micro Instruction Execution

25
Microinstruction Execution Prepared By:Sagar Vaghela M.E. (MSA) Roll No:198

Transcript of Micro Instruction Execution

Page 1: Micro Instruction Execution

Microinstruction Execution

Prepared By:Sagar VaghelaM.E. (MSA)Roll No:198

Page 2: Micro Instruction Execution

• Microinstruction cycle is the basic event on the microprogrammed processors

• Each cycle is made up of two parts (1) Fetch (2) Execute• Effect of execution of a microinstruction is to

generate control signals • Some of these signals control points internal

to the processor & remaining go to the external bus or the other external interface

Page 3: Micro Instruction Execution

Block Diagram Of Control Unit Organization

Page 4: Micro Instruction Execution

Control Unit Organization

Sequencing Logic module• Contain the logic to perform the functions• Generates the next instruction which uses as the

input• ALU flags,the control address register & control

buffer register• The module is driven by a clock that determines the

timing of the microinstruction cycle• Control Logic Module generates control signals

Page 5: Micro Instruction Execution

Taxonomy Of Microinstructions

Classification:1. Vertical/Horizontal 2. Packed/Unpacked3. Hard/Soft Microprogramming4. Direct/Indirect Encoding

Page 6: Micro Instruction Execution

Design Issues

• Originally proposed by WILKES(WILK51)• Each bit of a microinstruction either directly

produced a control signal or one bit of the next addrress

• Requires more complex sequencing logic module

• By encoding control information & subsequently decoding it for producing control signals, control word bits can be saved

Page 7: Micro Instruction Execution

How Can This Encoding Be Done?

• By WILKES’ scheme K bits of microinstruction would be dedicated to this purpose

• This allows all the 2k possible combinations of control signals

• But we can do better than this if we observe that not all of the possible combinations will be used

Example: - two sources can’t be gated to the same

destination - A register can’t be both source & destination - One pattern of control signals can be presented to

the ALU & to external control bus

Page 8: Micro Instruction Execution

• So all possible combinations of control signals can be given by Q<2k possibilities

• But in actual practice this form of encoding is not used because:

(1) It is difficult to program as a pure decoded (WILKES) scheme

(2) It requires a complex & therefore slow control logic module

Some compromises made to avoid this: (1) More bits than strictly necessary are used to

encode the possible combinations (2) Same combinations that arre physically

allowable are not possible to encode

Page 9: Micro Instruction Execution

• At one extreme there is one bit for each control signal

• At the other extreme a highly encoded format is used

• Table shows the characteristics of a micro programmed control unit

Page 10: Micro Instruction Execution

The microinstruction spectrum Characteristics

Unencoded Highly encoded

Many Bits Few bits

Detailed View of hardware Aggregated view of hardwarre

Difficult to program Easy to program

Concurrency fully exploited Concurrency not fully exploited

Little or no control logic Complex control logic

Fast execution Slow execution

Optimize Perrformance Optimize programming

Page 11: Micro Instruction Execution

Unpacked Packed

Horizontal Vertical

Hard Soft

Terminology

Page 12: Micro Instruction Execution

• The pure WILKES scheme will require the most bits

• Encoding is done in such a way as to aggregate functions or resources

• Encoding is designed to ease the microprogramming burden

• With a pure unencoded format,little or no decode logic is needed

Page 13: Micro Instruction Execution

• In general,a design that falls towards the left end of the spectrum is intended to optimize the performance of the control unit

• Towards the right end of the spectrum look very much like machine instruction set

• The degree of packing relates to the degree of identification

Page 14: Micro Instruction Execution

• More packed bit ,more information about given number of bit

• The terms horizontal & Vertical relate to the relative width of microinstructions

• (SIEW82) suggests as a rule of thumb that vertical instructions have lengths in the range of 16 to 40 bits

Page 15: Micro Instruction Execution

• Horizontal microinstructions have lengths in the range of 40 to 100 bits

• The terms Hard & Soft microprogramming are used to suggest the degree of closeness

Page 16: Micro Instruction Execution

Microinstruction Encoding• Microprogrammed control units are not

designed using a pure unencoded or horizontal microinstruction formats

• Considering the implications of this layout

• When microinstruction is executed, every field is decoded & generates control signals

Page 17: Micro Instruction Execution
Page 18: Micro Instruction Execution

The design of an encoded microinstruction format can be stated as follows:

1. Organizing the format into independent field2. Define each field such that the alternative

actions can be specified by the field are mutually exclusive

The encoded microinstruction can be organized by two ways

(1) Functional (2) Source

Page 19: Micro Instruction Execution

• The functional encoding method identifies functions within the machine and designates fields by function type

• Resource encoding views the machine as consisting a set of independent resources & devotes one field to each

• Another method of encoding is Direct/Indirect • In indirect method , one field is used to

determine the interpretation of another field

Page 20: Micro Instruction Execution

Fig 17.12

Page 21: Micro Instruction Execution

Fig shows the example of these concepts• Assume the processor with a single

accumulator & several registers• As shown in figure first three bits indicate the

type the type of operation• Next three bits encode the operation & final

two bit selects an internal registers• In horizontal format different functions

appears in different fields

Page 22: Micro Instruction Execution

LSI-11 Microinstruction Execution

• This is a vertical microinstruction approach

• First member of PDP-11 family

• The board contains three LSI chips,an internal bus known as the microinstruction bue(MIB),and some additional interfacing logic

Page 23: Micro Instruction Execution

Simplified Block Diagram

Page 24: Micro Instruction Execution

• Three chips are data,control and store chips• Data chip contains an 8 bit ALU,twenty six

8 bit registers & storage for several condition codes

• Others include the program status word, memory address registers(MAR) & memory buffer register

• Control store chip contains 22 bit wide control memory

Page 25: Micro Instruction Execution

• MIB ties all the com18 bits ponents together• During fetch operation, the control chip

generates an 11 bit address onto the MIB• Control store is accessed & producinga 22 bit

microinstruction, which is placed on the MIB• The low order 16 bits go to the data chip,

while the low order 18 bits go to the control chip

• The high order 4 bits control special processor board functions