1 Copyright 1998 Morgan Kaufmann Publishers, Inc. All rights reserved. The single cycle CPU.
1 1998 Morgan Kaufmann Publishers Where we are headed Performance issues (Chapter 2) vocabulary and...
-
Upload
gabriel-evans -
Category
Documents
-
view
214 -
download
0
Transcript of 1 1998 Morgan Kaufmann Publishers Where we are headed Performance issues (Chapter 2) vocabulary and...
11998 Morgan Kaufmann Publishers
Where we are headed
• Performance issues (Chapter 2) vocabulary and motivation
• A specific instruction set architecture (Chapter 3)
• Arithmetic and how to build an ALU (Chapter 4)
• Constructing a processor to execute our instructions (Chapter 5)
• Pipelining to improve performance (Chapter 6)
• Memory: caches and virtual memory (Chapter 7)
• I/O (Chapter 8)
21998 Morgan Kaufmann Publishers
• A given program will require
– some number of instructions (machine instructions)
– some number of cycles
– some number of seconds
• We have a vocabulary that relates these quantities:
– cycle time (seconds per cycle)
– clock rate (cycles per second)
– CPI (cycles per instruction)
a floating point intensive application might have a higher CPI
– MIPS (millions of instructions per second)
this would be higher for a program using simple instructions
Now that we understand cycles
31998 Morgan Kaufmann Publishers
Performance
• Performance is determined by execution time
• Do any of the other variables equal performance?
– # of cycles to execute program?
– # of instructions in program?
– # of cycles per second?
– average # of cycles per instruction?
– average # of instructions per second?
• Common pitfall: thinking one of the variables is indicative of performance when it really isn’t.
41998 Morgan Kaufmann Publishers
• Performance is specific to a particular program/s– Total execution time is a consistent summary of performance
• For a given architecture performance increases come from:– increases in clock rate (without adverse CPI affects)– improvements in processor organization that lower CPI– compiler enhancements that lower CPI and/or instruction count
• Pitfall: expecting improvement in one aspect of a machine’s
performance to affect the total performance
Performance Summary
51998 Morgan Kaufmann Publishers
Instruction Set Architecture Summary
• A very important abstraction
– interface between hardware and low-level software
– standardizes instructions, machine language bit patterns, etc.
– advantage: different implementations of the same architecture
– disadvantage: sometimes prevents using new innovations
True or False: Binary compatibility is extraordinarily important?
61998 Morgan Kaufmann Publishers
Representation Summary
• Computer arithmetic is constrained by limited precision
• Bit patterns have no inherent meaning but standards do exist
– two’s complement
– IEEE 754 floating point
• Computer instructions determine “meaning” of the bit patterns
• Performance and accuracy are important so there are manycomplexities in real machines (i.e., algorithms and implementation).
71998 Morgan Kaufmann Publishers
Some Datapath Issues
• How is control implemented?• What determines cycle length?• How many instructions can execute at one time?
81998 Morgan Kaufmann Publishers
Memory
• How are the different levels of memory related?
• What is the principle of locality and how is it related to the memory hierarchy?
• What does a hit/miss mean in:
– TLB?
– Page Table (Virtual memory)?
– Cache?