IC cost = Die cost Testing cost Packaging cost - PowerPoint PPT Presentation

About This Presentation
Title:

IC cost = Die cost Testing cost Packaging cost

Description:

So if X runs a program in 10 sec. ... Class A, Class B, and Class C, and they require one, two, and three cycles (respectively) ... – PowerPoint PPT presentation

Number of Views:154
Avg rating:3.0/5.0
Slides: 28
Provided by: richarde67
Learn more at: https://www.cs.umb.edu
Category:
Tags: cost | die | packaging | testing

less

Transcript and Presenter's Notes

Title: IC cost = Die cost Testing cost Packaging cost


1
Integrated Circuits Costs
  • IC cost Die cost Testing cost
    Packaging cost
  • Final
    test yield
  • Die cost Wafer cost
  • Dies per Wafer Die
    yield
  • Dies per wafer ? ( Wafer_diam / 2)2
    ? Wafer_diam Test dies
  • Die
    Area 2 Die Area
  • Die Yield Wafer yield 1


???
Defects_per_unit_area Die_Area
?

Die Cost goes roughly with die area4
2
Real World Examples
  • Chip Metal Line Wafer Defect Area Dies/ Yield Die
    Cost layers width
    cost /cm2 mm2 wafer
  • 386DX 2 0.90 900 1.0 43 360 71 4
  • 486DX2 3 0.80 1200 1.0 81 181 54 12
  • PowerPC 601 4 0.80 1700 1.3 121 115 28 53
  • HP PA 7100 3 0.80 1300 1.0 196 66 27 73
  • DEC Alpha 3 0.70 1500 1.2 234 53 19 149
  • SuperSPARC 3 0.70 1700 1.6 256 48 13 272
  • Pentium 3 0.80 1500 1.5 296 40 9 417
  • From "Estimating IC Manufacturing Costs, by
    Linley Gwennap, Microprocessor Report, August 2,
    1993, p. 15

3
Chip Prices (August 1993)
  • Assume purchase 10,000 units

Chip Area Mfg. Price Multi- Comment mm2 cost pli
er 386DX 43 9 31 3.4 Intense
Competition 486DX2 81 35 245 7.0 No
Competition PowerPC 601 121 77 280 3.6 DEC
Alpha 234 202 1231 6.1 Recoup
RD? Pentium 296 473 965 2.0 Early in
shipments
4
Measuring Performance (1.5)
5
Metrics of Performance
Application
Answers per month Operations per second
Programming Language
Compiler
(millions) of Instructions per second
MIPS (millions) of (FP) operations per second
MFLOP/s
ISA
Datapath
Megabytes per second
Control
Function Units
Cycles per second (clock rate)
Transistors
Wires
Pins
6
Systems Performance
?1998 Morgan Kaufmann Publishers
  • Boils down to measure, report, and summarize
  • Make intelligent choices
  • See through the marketing hype -- key to
    understanding underlying organizational motivation

7
Performance
  • Why is some hardware better than others for
    different programs?What factors of system
    performance are hardware related? (e.g., Do we
    need a new machine, or a new operating
    system?)How does the machine's instruction set
    affect performance?

8
Computer Performance TIME, TIME, TIME
  • Response Time (latency) How long does it take
    for my job to run? How long does it take to
    execute a job? How long must I wait for the
    database query?
  • Throughput How many jobs can the machine run
    at once? What is the average execution
    rate? How much work is getting done?

9
Execution Time
  • Elapsed Time
  • counts everything (disk and memory accesses, I/O
    , etc.)
  • a useful number, but often not good for
    comparison purposes
  • CPU time
  • doesn't count I/O or time spent running other
    programs
  • can be broken up into system time, and user time
  • Our focus user CPU time
  • time spent executing the lines of code that are
    "in" our program

10
Unix Times
  • Unix time command report
  • 90.7u 12.9s 239 65
  • Which means
  • User CPU time is 90.7 seconds
  • System CPU time is 12.9 seconds
  • Elapsed time is 2 minutes and 39 seconds
  • Percentage of elapsed time that is CPU time is

11
Book's Definition of Performance
  • For some program running on machine X,
    PerformanceX 1 / Execution timeX
  • "X is n times faster than Y" PerformanceX /
    PerformanceY n

12
Some Definitions
  • What does it mean to say X is n faster than Y?
  • We mean that PerformanceX gt PerformanceY
  • And ...

Performance 1/Execution time
Execution timeY Execution timeX
n
n
PerformanceX PerformanceY
n
13
Example
  • So if X runs a program in 10 sec. and Y runs it
    in 20 sec, then n 2 i.e., X is 200 faster
    than Y
  • If Z runs the same program in 15 seconds, which
    of the follow is (are) true?
  • X is 150 faster than Z
  • Z is 133 faster than Y

14
Clock Cycles - Only Thing That Matters?
?1998 Morgan Kaufmann Publishers
  • Instead of reporting execution time in seconds,
    we often use cycles, i.e.,
  • Clock ticks indicate when to start activities
    (one abstraction)
  • Cycle time time between ticks seconds per
    cycle
  • Clock rate (frequency) cycles per second ( 1Hz
    1 cycle/second)
  • A 200 MHz clock has a

15
How to Improve Performance
?1998 Morgan Kaufmann Publishers
  • So, to improve performance (everything else being
    equal) you can either change
  • of required cycles for a program, or
  • Clock cycle time or, said another way,
  • Clock rate.

16
How Many Cycles for a Program?
?1998 Morgan Kaufmann Publishers
  • Could assume that of cycles of
    instructions

time
This assumption is incorrect, different
instructions take different amounts of time on
different machines.Why? hint remember that
these are machine instructions, not lines of C
code
17
Number of Cycles for Different Instructions
?1998 Morgan Kaufmann Publishers
time
  • Multiplication takes more time than addition
  • Floating point operations take longer than
    integer ones
  • Accessing memory takes more time than accessing
    registers

Important point changing the cycle time often
changes the number of cycles required for various
instructions (more later)
18
Breaking Down Clock Cycles
  • Want to relate clock cycles to instructions
  • Clearly more instructions mean more clock cycles
    needed
  • The relationship is
  • We use CPI to stand for clock cycles per
    instruction
  • Example
  • Two members of the same computer family
  • Model 10 has a clock cycle time of 20 nsec. and a
    CPI of 1.2
  • Model 20 has a clock cycle time of 10 nsec. and
    a CPI of 2.0
  • Which machine is faster and by how much?
  • Answer is the model 20 and it is 1.2 times faster
    (why not 2 times?)

19
Example Calculating CPI
Base Machine (Reg / Reg) Op Freq Cycles CPI(i) (
Time) ALU 50 1 .5 (33) Load 20 2
.4 (27) Store 10 2 .2 (13) Branch 20 2
.4 (27) 1.5
Typical Mix
20
Putting It All Together
  • Can now relate each component
  • CPU time Instructions CPI Clock cycle time
  • CPU time, Instructions, and Clock cycle time are
    easily determined how is CPI determined?
  • Could look it up for each instruction and
    compute
  • But note the interaction between the hardware and
    software
  • The compiler can greatly determine the
    Instructions
  • The designer determines the clock time and the CPI

21
Example
  • Our favorite program runs in 10 seconds on
    computer A, which has a 400 Mhz. clock. We are
    trying to help a computer designer build a new
    machine B, that will run this program in 6
    seconds. The designer can use new (or perhaps
    more expensive) technology to substantially
    increase the clock rate, but has informed us that
    this increase will affect the rest of the CPU
    design, causing machine B to require 1.2 times as
    many clock cycles as machine A for the same
    program. What clock rate should we tell the
    designer to target?"

22
Now That We Understand Cycles
?1998 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

23
Homework problem (not collected)
  • Text problem 1.7 (due next class)
  • We will talk about the solution.

24
Factors Affecting Performance
?1998 Morgan Kaufmann Publishers
  • 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 isnt.

25
of Instructions Example
  • A compiler designer is trying to decide between
    two code sequences for a particular machine.
    Based on the hardware implementation, there are
    three different classes of instructions Class
    A, Class B, and Class C, and they require one,
    two, and three cycles (respectively). The
    first code sequence has 5 instructions 2 of A,
    1 of B, and 2 of CThe second sequence has 6
    instructions 4 of A, 1 of B, and 1 of C.Which
    sequence will be faster? How much?What is the
    CPI for each sequence?

26
Factors Affecting Performance
  • Instruction counts alone cannot be used to assess
    performance
  • Example
  • Sequence 1 Þ 5 instructions Sequence 2 Þ 6
    instructions
  • CPU clock cycles1 10 cycles CPU clock cycles2
    9 cycles (second sequence is faster!)
  • CPI1 2 CPI2 1.5 (code sequence 2 has fewer
    clock cycles and more instructions so its CPI is
    lower)

Instruction Class
CPI
Instruction Counts
Code Sequence
A
B
C
A
1
1
2
1
2
B
2
2
4
1
1
C
3
27
Aspects of CPU Performance
  • Inst Count CPI Clock Rate
  • Program X
  • Compiler X (X)
  • Inst. Set. X X
  • Organization X X
  • Technology X
Write a Comment
User Comments (0)
About PowerShow.com