Unformatted text preview:

Review Combinational Elements DeMorgan Equivalence Wire Inverter In Out CS152 Computer Architecture and Engineering Lecture 4 0 1 Out In 0 1 A A Out 0 0 1 1 B lecture slides http www inst eecs berkeley edu cs152 Out B A B 0 0 0 1 1 0 1 1 2 4 04 Review recall General C L Cell Delay Model B Combinational Logic Cell 1 1 0 0 Out B B Out 1 0 1 0 A 1 1 1 0 0 0 1 1 B Out 0 1 0 1 1 0 0 0 Out A B A B Out B A B 0 0 0 1 1 0 1 1 A 1 1 0 0 B Out 1 0 1 0 1 0 0 0 CS152 Kubiatowicz Lec4 2 UCB Spring 2004 X Clk X Cout A 1 0 Storage Element s Timing Model Delay Va Vout Vout A DeMorgan s Theorem Out A B A B A A 1 1 1 0 February 4 2004 John Kubiatowicz www cs berkeley edu kubitron 0 1 NOR Gate B Out 0 1 0 1 In Out Out Out In NAND Gate Performance and The Design Process A In D Q Setup D Don t Care Q Unknown Hold Don t Care X Clock to Q X X X X delay per unit load Internal Delay Ccritical Cout Combinational Cell symbol is fully specified by functional input output behavior truth table logic equation VHDL load factor of each input critical propagation delay from each input to each output for each transition THL A o Fixed Internal Delay Load dependent delay x load Linear model composes 2 4 04 UCB Spring 2004 CS152 Kubiatowicz Lec4 3 Setup Time Input must be stable BEFORE trigger clock edge Hold Time Input must REMAIN stable after trigger clock edge Clock to Q time Output cannot change instantaneously at the trigger clock edge Similar to delay in logic gates two components Internal Clock to Q Load dependent Clock to Q 2 4 04 UCB Spring 2004 CS152 Kubiatowicz Lec4 4 Critical Path Cycle Time The Design Process Clk To Design Is To Represent Design activity yields description representation of an object Traditional craftsman does not distinguish between the conceptualization and the artifact Separation comes about because of complexity The concept is captured in one or more representation languages This process IS design Critical path the slowest path between any two storage devices Design Begins With Requirements Cycle time is a function of the critical path Functional Capabilities what it will do must be greater than Performance Characteristics Speed Power Area Cost Clock to Q Longest Path through Combination Logic Setup 2 4 04 CS152 Kubiatowicz Lec4 5 UCB Spring 2004 2 4 04 Design Process cont UCB Spring 2004 CS152 Kubiatowicz Lec4 6 Design Refinement Informal System Requirement Design Finishes As Assembly Design understood in terms of components and how they have been assembled CPU Datapath ALU Top Down decomposition of complex functions behaviors into more primitive functions Regs Initial Specification Control Intermediate Specification Shifter refinement increasing level of detail Nand Gate Final Architectural Description bottom up composition of primitive building blocks into more complex assemblies Intermediate Specification of Implementation Design is a creative process not a simple method Final Internal Specification 2 4 04 UCB Spring 2004 CS152 Kubiatowicz Lec4 7 Physical Implementation 2 4 04 UCB Spring 2004 CS152 Kubiatowicz Lec4 8 Design as Search Measurement and Evaluation Problem A Strategy 1 Design Strategy 2 Architecture is an iterative process searching the space of possible designs at all levels of computer systems Analysis SubProb 1 BB1 BB2 SubProb2 SubProb3 BB3 Creativity BBn Cost Performance Analysis Design involves educated guesses and verification Given the goals how should these be prioritized Given alternative design pieces which should be selected Good Ideas Given design space of components assemblies which part will yield the best solution Feasible good choices vs Optimal choices 2 4 04 UCB Spring 2004 CS152 Kubiatowicz Lec4 9 Performance Two notions of performance Plane DC to Paris Speed Passengers Throughput pmph Boeing 747 6 5 hours 610 mph 470 286 700 BAD Sud Concorde 3 hours 1350 mph 132 178 200 Bad Ideas 2 4 04 Mediocre Ideas UCB Spring 2004 CS152 Kubiatowicz Lec4 10 What is Time Straightforward definition of time Total time to complete a task including disk accesses memory accesses I O activities operating system overhead real time response time or elapsed time Alternative just time processor CPU is working only on your program since multiple processes running at same time CPU execution time or CPU time Often divided into system CPU time in OS and user CPU time in user program Which has higher performance Time to do the task Execution Time execution time response time latency Tasks per day hour week sec ns Performance throughput bandwidth Response time and throughput often are in opposition 2 4 04 UCB Spring 2004 CS152 Kubiatowicz Lec4 11 2 4 04 UCB Spring 2004 CS152 Kubiatowicz Lec4 12 How to Measure Time Measuring Time using Clock Cycles User Time seconds CPU execution time for program CPU Time Computers constructed using a clock that runs at constant rate These discrete time intervals called clock cycles or informally clocks or cycles Length of clock period clock cycle time e g 250 picoseconds or 250 ps and clock rate e g 4 gigahertz or 4 GHz which is the inverse of the clock period use these Clock Cycles for a program x Clock Cycle Time One way to define clock cycles Clock Cycles for program Instructions for a program called Instruction Count x Average Clock cycles Per Instruction called CPI 2 4 04 UCB Spring 2004 CS152 Kubiatowicz Lec4 13 Performance Calculation 2 4 04 UCB Spring 2004 CS152 Kubiatowicz Lec4 14 How Calculate the 3 Components CPU execution time for program Clock Cycles for program x Clock Cycle Time Substituting for clock cycles CPU execution time for program Instruction Count x CPI x Clock Cycle Time Clock Cycle Time in specification of computer Clock Rate in advertisements Instruction Count Count instructions in loop of small program Use simulator to count instructions Hardware counter in spec register most CPUs Instruction Count x CPI x Clock Cycle Time CPU time Instructions x Cycles x Seconds Program Instruction Cycle CPI Calculate Execution Time Clock cycle time Instruction Count Hardware counter in special register most CPUs CPU time Instructions x Cycles x Seconds Program Instruction Cycle CPU time Seconds Program 2 4 04 UCB Spring 2004 CS152 Kubiatowicz Lec4 15 2 4 04 UCB Spring 2004 CS152 Kubiatowicz Lec4 16 Example Calculating CPI by averaging separately Op ALU Load Store Branch Freqi 50 20 10 20 CPIi Prod Time 1 5 33 2 4 27 2 2 13 2 4 27 1 5 Instruction Mix Where time spent What Programs Measure for Comparison Ideally run typical programs


View Full Document

Berkeley COMPSCI 152 - Performance and The Design Process

Documents in this Course
Quiz 5

Quiz 5

9 pages

Memory

Memory

29 pages

Quiz 5

Quiz 5

15 pages

Memory

Memory

29 pages

Memory

Memory

35 pages

Memory

Memory

15 pages

Quiz

Quiz

6 pages

Midterm 1

Midterm 1

20 pages

Quiz

Quiz

12 pages

Memory

Memory

33 pages

Quiz

Quiz

6 pages

Homework

Homework

19 pages

Quiz

Quiz

5 pages

Memory

Memory

15 pages

Load more
Loading Unlocking...
Login

Join to view Performance and The Design Process and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Performance and The Design Process and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?