22--MARIE-07--A microprogrammed CPU

22--MARIE-07--A microprogrammed CPU - A microprogrammed CPU...

Info iconThis preview shows pages 1–4. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: A microprogrammed CPU If we look at the 14 control signals side-by-side, we have a 14-bit word that can be considered an "instruction" – a micro-instruction . The microinstructions for the fetch part of the instruction cycle would look like this: Fetch (for ALL instructions): T0: MAR PC PC_out, MAR_in T1: read, PC PC + 1 read, PCincr T2: IR MDR MDR_out, IR_in T3: NOP Time to decode the opcode 1 2 3 4 5 6 7 8 9 10 11 12 13 14 A C C _i n A C C _o ut Al ua dd IR _i n IR _o ut M A R _i n M D R _i n M D R _o ut P C _i n P C _o ut P C _i nc r R ea d T E M P _o ut W rit e 1 1 1 1 1 1 We can consider each of the above 14-bit lines as an "instruction". We can write each one of these register-transfer "instructions" as a string of 14 0s and 1s. We can write the steps for each machine-language instruction as a series of 14-bit numbers ( micro- instructions ) and store them in a control memory in the CPU. If we derive ALL of the 14-bit numbers corresponding to ALL of the micro-instructions for all four instructions, we find that there are: • 4 micro-instructions to implement the FETCH part of each instruction • 3 micro-instructions to implement the LOAD instruction • 4 micro-instructions to implement the ADD instruction • 3 micro-instructions to implement the STORE instruction • 2 micro-instructions to implement the BRZ instruction This is a total of 16 different micro-instructions. That means we can store all of the micro-instructions in a 16x14 memory. However, we are going to add 6 bits to each micro-instruction: • 1 bit for a "branch via table" control signal • 4 bits for the address of the next instruction • 1 bit for "OR address with acceq" How this is implemented: The "Control Store Address Register" is a 4-bit number that holds the address of a micro-instruction. The 4-bit address is passed through a 4x16 decoder that will select one of the 16 memory cells. This memory cell is copied into the Control Store Instruction Register . This micro-program...
View Full Document

This document was uploaded on 02/29/2012.

Page1 / 9

22--MARIE-07--A microprogrammed CPU - A microprogrammed CPU...

This preview shows document pages 1 - 4. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online