CSE 3322 Computer Architecture Dr. John Patterson 614 NH Office Hours: M , W 11 –12 noon 817-272-3679 john.patterson@uta.edu Grading Policy: Project 25% Exam I 25% Exam II 25% Exam III 25% Homework 5% add on Turn in start of class – no late homework
CSE 3322 Computer Architecture Course WEB SITE crystal.uta.edu/~jpatters Read Chapter 1 Computer Organization and Design
“If we don’t succeed, we run the risk of failure.” Bill Clinton
CSE 3322 Computer Architecture The Low Level knowledge needed by High Level Programmers and Systems Designers
Five Components of Computers Memory Control Input Datapath Output Processor
Input Instructions Memory Control Input C=A+B A Datapath Output B C
Fetch Instructions Memory Control Input C=A+B ADD A,B A Datapath Output B C
Fetch Operands Memory Control Input C=A+B ADD A,B A Datapath Output B
Execute Command Memory Control Input C=A+B ADD A,B A Datapath Output B
Store Results & Output Memory Control Input C=A+B ADD A,B A Datapath
Some Architecture Considerations • Integer or Floating Point • Number of Operands Memory Control Input ADD A,B C=A+B A Datapath Output B A+B A+B
Architecture Design Criteria Performance
Architecture Design Criteria Performance Hardware Costs
Architecture Design Criteria Performance Hardware Costs Performance
Architecture Design Criteria Performance Hardware Costs Performance Instruction Complexity
Architecture Design Criteria Performance Hardware Costs Performance Hardware Software Trade-Offs Instruction Complexity
Architecture Design Criteria Performance Hardware Costs Performance Hardware Software Trade-Offs Etc., Etc., Etc. Instruction Complexity
Evolution of Registers in Datapath Accumulator Ex: 32 Flip-Flops A ADD 300 Add the contents of memory location 300 to the Accumulator A + Memory[300] A
Evolution of Registers in Datapath Accumulator Ex: 32 Flip-Flops A ADD 300 A + Memory[300] A Special Registers were added with special functions
Evolution of Registers in Datapath Accumulator Ex: 32 Flip-Flops A ADD 300 A + Memory[300] A Models or Abstractions Special Registers were added with special functions
Evolution of Registers in Datapath 32 General Purpose Registers
Evolution of Registers in Datapath 32 General Purpose Registers Called a Load-Store or Register-Register machine
Evolution of Registers in Datapath 32 General Purpose Registers Called a Load-Store or Register-Register machine All Registers can be used for any purpose
Evolution of Registers in Datapath 32 General Purpose Registers Called a Load-Store or Register-Register machine All Registers can be used for any purpose Ex: Add any two Registers and put the result in a third Register
Instruction Set Architecture Consists of All of the Instructions and How Each Works
Instruction Set Architecture Consists of All of the Instructions and How Each Works Models or Abstractions
Instruction Set Architecture Consists of All of the Instructions and How Each Works Is the Interface Between Hardware and Software
Instruction Set Architecture Consists of All of the Instructions and How Each Works Is the Interface Between Hardware and Software Defines the Functionality
Instruction Set Architecture Consists of All of the Instructions and How Each Works Is the Interface Between Hardware and Software Defines the Functionality Determines the Inherent Performance
Instruction Set Architecture Consists of All of the Instructions and How Each Works Is the Interface Between Hardware and Software Defines the Functionality Determines the Inherent Performance Determines the Software Compatibility
Software Hierarchical Layers Machine Instruction 101110001100010000001
Software Hierarchical Layers Assembly Language add $2, $5,$2 Assembler Machine Instruction 101110001100010000001
Software Hierarchical Layers High Level Language g = h + A[8] Compiler Assembly Language add $2, $5,$2 Assembler Machine Instruction 101110001100010000001
Software Hierarchical Layers High Level Language g = h + A[8] Models or Abstractions Compiler Assembly Language add $2, $5, $2 Assembler Machine Instruction 101110001100010000001