lect-datapath_2up

lect-datapath_2up - 1 CS/COE1541: Introduction to Computer...

Info iconThis preview shows pages 1–7. 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

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: 1 CS/COE1541: Introduction to Computer Architecture Datapath and Control Review Sangyeun Cho Dept. of Computer Science University of Pittsburgh Datapath elements Arithmetic logic unit (ALU) Combinational logic (=function) Input: a, b, ALU operation (carryin is hidden) Output: result, zero, overflow, carryout Adders For PC incrementing, branch target calculation, Mux We need a lot of these CS/CoE1541: Intro. to Computer Architecture University of Pittsburgh Registers Register file, PC, (architecturally visible registers) Temporary registers to keep intermediate values 2 Register file Interface: read port, write port, clock, control signal CS/CoE1541: Intro. to Computer Architecture University of Pittsburgh Register file 1 1 0x11223344 CS/CoE1541: Intro. to Computer Architecture University of Pittsburgh 0x11223344 3 Processor building blocks CS/CoE1541: Intro. to Computer Architecture University of Pittsburgh Abstract implementation CS/CoE1541: Intro. to Computer Architecture University of Pittsburgh 4 Analyzing instruction execution lw (load word) Fetch instruction Read a base register Sign-extend the immediate offset Add the two numbers made available in the above two steps Access data memory with the address computed in the above step Store the value from the memory to the target register specified in the instruction CS/CoE1541: Intro. to Computer Architecture University of Pittsburgh Analyzing instruction execution add (add) Fetch instruction Read from two source registers Add the two numbers made available in the above step Store the result to the target register specified in the instruction CS/CoE1541: Intro. to Computer Architecture University of Pittsburgh 5 Analyzing instruction execution j (jump) Fetch instruction Extend the 26-bit immediate field Shift left by 2 bits (28 bits now) Extract the most significant 4 bits from the current PC and concatenate to form a 32-bit value Assign this value to PC CS/CoE1541: Intro. to Computer Architecture University of Pittsburgh Common steps in inst. execution Fetching the instruction word from the instruction memory Decoding the instruction and reading from the register file Or prepare a value from the immediate value (and PC) Performing an ALU operation Accessing the data memory (if needed) Making a jump (assigning a computed value to PC) (if needed) Writing to the register file CS/CoE1541: Intro. to Computer Architecture University of Pittsburgh Designing a control logic is based on our (more formal) analysis of instruction execution Consider all instructions 6 Fetching an instruction Instruction width is 4 bytes!is 4 bytes!...
View Full Document

This note was uploaded on 09/01/2009 for the course CS 1541 taught by Professor Cho,s during the Fall '08 term at Pittsburgh.

Page1 / 24

lect-datapath_2up - 1 CS/COE1541: Introduction to Computer...

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

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