Vous êtes sur la page 1sur 5

Computer Design

CPE 432
Homework 1
1) Chip Fabrication Cost
There are many factors involved in the price of a computer chip. New, smaller technology
gives a boost in performance and a drop in required chip area. In the smaller technology,
one can either keep the small area or place more hardware on the chip in order to get
more functionality.
Figure 1. in your te!tbook gives the relevant chip statistics that influence the cost of
several current chips. In the ne!t few e!ercises, you will be e!ploring the effect of
different possible design decisions for the I"# $ower%.
a. &hat is the yield for the I"# $ower%'
Yield = (1 + (Defect per unit re ! die re" # 4$%" & '4$%
= (1 + (%$3 ! 3()#1%%" # 4$%" & '4$%
= (1 + %$2)" & '4$%
= (1$2)" & '4$%
= %$3*
b. &hat is the yield for the (un Niagra'
Yield = (1 + (Defect per unit re ! die re" # 4$%" & '4$%
= (1 + (%$+, ! 3(%#1%%" # 4$%" & '4$%
= (1 + %$+1" & '4$%
= (1$+1" & '4$%
= %$12
c. &hy does the I"# $ower% have a lower defect rate than the Niagara'
-ecuse it uses different process tec.nolog/0 it uses lrger trnsistor feture si1e$
2) Power Consumption in Computer Systems
$ower consumption in modern systems is dependent on a variety of factors, including the
chip clock frequency, efficiency, the disk drive speed, disk drive utili)ation, and *+,#.
Figure 1.- presents the power consumption of several computer system components. In
this e!ercise, we will e!plore how the hard drive affects power consumption for the
system.
a. ,ssuming the ma!imum load for each component, and a power supply efficiency
of ./0, what wattage must the server1s power supply deliver to a system with an
Intel $entium 2 chip, 2 3" 2/4pin 5ingston *+,#, and one 6// rpm hard
drive'
Pek Power Consumption = 1! ** + 4 ! 2$3 + 1 ! +$)
= **$% + )$2 + +$)
= (3$1 2
Power 3uppl/ 2ttge = (3$1 # %$(
= 1%3$) 2
b. 7ow much power will the 6// rpm disk drive consume if it is idle roughly %/0
of the time'
HD Power Consumption= %$, ! +$) + %$, ! 2$)
= ,$4 2
c. 3iven that the time to read data off a 6// rpm disk drive will be roughly 6%0 of
a %2// rpm disk, at what idle time of the 6// rpm disk will the power
consumption be equal, on average, for the two disks'
4et t.e +2%%'disk 5us/ time = 6
+2%%'disk power = ,4%%'disk power
4$% ! (1'6" + +$) ! 6 = 2$) ! (1'6#%$+," + +$% ! 6#%$+,
4$% + 3$) 6 = 2$) 7 3$(+ 6 + )$33 6
1$1 = ,$4+ 6 7 3$) 6
Hence 6 = %$+%
8dle time = 1$% 7 %$+% = %$3%
3) The Cost of Reliability (and Failure) in eb Ser!ers
8!ercises - and 2 deal with the cost of not having reliable &eb servers. The data is in two
sets9 one gives various statistics for 3ap.com, which was down for maintenance for two
weeks in //% :,$ //%;. The other is for ,ma)on.com, which was not down, but has
better statistics on high4load sales days. The e!ercises combine the two data sets and
require estimating the economic cost to the shutdown.
The main reliability measure is #TTF. &e will now look at different systems and how
design decisions affect their reliability. +efer to Figure 1.% for company statistics.
a. &e have a single processor with an FIT of //. &hat is the #TTF for this
system'
9::; = 1%&) # 2%% =
= , ! 1%&*
b. If it takes two days to get the system running again, what is the availability of the
system'
<=il5ilit/ = 9::; # ( 9::; + 9::>"
= , ! 1%&* # (, ! 1%&* + 4("
= ))$)))?
") The Cost of Reliability (and Failure) in eb Ser!ers
Imagine that the government, to cut costs, is going to build a supercomputer out of the
cheap processor system in 8!ercise - above rather than a special purpose reliable system.
&hat is the #TTF for a system with 1// processors' ,ssume that if one fails, they all
fail.
;8: = 1%% ! 2%%
= 2%0%%%
9::; = 1%&) # 2%0%%%
= , ! 1%&4
#) Performance
<our company has =ust bought a new dual $entium processor, and you have been tasked
with optimi)ing your software for this processor. <ou will run two applications on this
dual $entium, but the resource requirements are not equal. The first application needs
6%0 of the resources, and the other only %0 of the resources.
a. 3iven that >/0 of the first application is paralleli)able, how much speedup would
you achieve with that application if run in isolation'
3peedup = 1 # ((1'f" + f#s"
= 1 # ((1'%$*" + %$*#2"
= 1 # (%$4 + %$3"
= 1$43
b. 3iven that ?%0 of the second application is paralleli)able, how much speedup
would this application observe if run in isolation'
3peedup = 1 # ((1'f" + f#s"
= 1 # ((1'%)," + %$),#2"
= 1 # (%$%, + %$4+,"
= 1$)%
c. 3iven that >/0 of the first application is paralleli)able, how much overall system
speedup would you observe if you paralleli)ed it, but not the second application'
3/stem 3peedup = 1 # ((1'f" + f#s"
= 1 # (%$2, + %$+,#1$43"
= 1 # (%$2, + %$,2"
= 1$2)
d. 7ow much overall system speedup would you achieve if you paralleli)ed both
applications, given the information in parts @aA and @bA'
3/stem 3peedup = 1 # ((1'f" + f#s"
= 1 # (%$+, + %$2,#1$)"
= 1 # (%$+, + %$13"
= 1$13
$) %ddressin& 'odes
(how how to implement the addressing modes in Figure ".> using the first three
addressing modes.
' >egister indirect@
add r4, (r1) add r4, 0(r1)
' 8nde6ed@
add r3, (r1,r2) add r1, r2
add r3, 0(r1)
' Direct@
add r1, (1001) add r1, 1001(r0)
' 9emor/ indirect@
add r1, @(r3) lw r3, 0(r3)
add r1, 0(r3)
' <uto increment@
add r1, (r2)+ add r1, 0(r2)
addi r2, 4
' <uto decrement@
add r1, -(r2) addi r2, -4
add r1, 0(r2)
' 3cled@
add r1, 100(r2)[r3] muli r3, 4
add r2, r3
add r1, 100(r2)
() )S% Classes
&rite code sequences to implement *B@,C"A4@DC*AE on the four I(, classes.
' 3tck@
push A
push B
add
push C
push D
add
sub
pop D
' <ccumultor@
lw A
add B
sub C
sub D
sw D
' >egister'9emor/@
lw r1, A
add r1, B
sub r1, C
sub r1, D
sw r1, D
' >egister'>egister@
lw r1, A
lw r2, B
add r1, r2
lw r2, C
sub r1, r2
lw r2, D
sub r1, r2
sw r1, D
*) Fi!e+sta&e Pipeline
Fsing pipeline diagrams, find how many cycles are needed to e!ecute the following
code sequence.
a. &hen stalls are used to solve ha)ards and branch instructions are resolved
in the 8!ecute stage.
b. &hen full forwarding paths are used plus stalls @when neededA, one branch
delay slot, and branch instructions are resolved in the *ecode stage.
add r2, r5, r6
lw r1, 0(r2)
sw r1, 4(r2)
beq r4, r4, skip
andi r3, r3, 0
skip: sw r1, 8(r2)
1 1 1 1 1 1 1 1
(a) 1 2 3 4 ! " # $ 0 1 2 3 4 ! "
add r2, r, r! % D & ' (
lw r1, 0(r2) % D - - & ' (
sw r1, 4(r2) % - - D - - & ' (
b)* r4, r4, s+ip % - - D & ' (
a,di r3, r3, 0 % - , , , ,
s+ip- sw r1, #(r2) % D & ' (
E6ecution tkes 1, c/cles$
1 1 1 1 1 1 1 1
(a) 1 2 3 4 ! " # $ 0 1 2 3 4 ! "
add r2, r, r! % D & ' (
lw r1, 0(r2) % D & ' (
sw r1, 4(r2) % D & ' (
b)* r4, r4, s+ip % D & ' (
a,di r3, r3, 0 % D & ' (
s+ip- sw r1, #(r2) % D & ' (
E6ecution tkes 1% c/cles$