



Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
The instructions and problems for the ece 2030 computer engineering final exam held in fall 2008. The exam consists of five problems, each with multiple parts, and covers various topics such as digital logic design, microcode, and memory systems. Students are required to work in pencil, without calculators or notes, and must show their work for full credit.
Typology: Exams
1 / 7
This page cannot be seen from the preview
Don't miss anything!




OUTX = A ⋅ B ⋅ ( C + D ) + E
OUTY = ( A + B + C ) ⋅ D
0 0
1 0
0 1
1 1
A 0
A 1
Out
In
φ 1 φ 2
In Out
En
Latch
In Out
En
Latch
WE RE
A 0 0 ↑↓
A 1 0 ↑↓
A 0 1 ↑↓
A 1 1 ↑↓
Φ 1
Φ 2
WE
In
Out
memory
register file 32 x 32
5 5 5
rwe
X Y Z
au en
-a/s arithmetic unit
sign extender
im en im va
lu en
logical unit
lf 4
addr
data
r/-w msel
st en
ld en
shift types 0 = logical 1 = arithmetic 2 = rotate
logical functions X Y out 0 0 lf (^0) 1 0 lf (^1) 0 1 lf (^2) 1 1 lf (^3)
cycle cycle number X register driven onto X bus Y register driven onto Y bus Z register written from Z bus rwe register write enable im en immediate enable on Y bus im va immediate value
au en arithmetic unit enable -a/s -add / sub (0 = add, 1 = subtract) lu en logical unit enable lf logical function su en shift unit enable st shift type ld en load enable st en store enable r/-w read/-write (0 = write, 1 = read) msel memory select description operation description
su en
shift unit
st 2
count
16
32
instruction example meaning add add^ $1,$2,$3^ $1^ =^ $2^ +^ $ subtract sub^ $1,$2,$3^ $1^ =^ $2^ -^ $ add immediate addi^ $1,$2,100^ $1^ =^ $2^ +^100 multiply mul^ $1,$2,$3^ $1^ =^ $2^ ^ $ divide div^ $1,$2,$3^ $1^ =^ $2^ /^ $ and and^ $1,$2,$3^ $1^ =^ $2^ &^ $ or or $1,$2,$3 $1 = $2 | $ xor xor $1,$2,$3 $1 = $2 xor $ and immediate andi $1,$2,100 $1 = $2 & 100 or immediate ori $1,$2,100 $1 = $2 | 100 xor immediate xori $1,$2,100 $1 = $2 xor 100 shift left logical sll $1,$2,5 $1 = $2 << 5 (logical) shift right logical srl $1,$2,5 $1 = $2 >> 5 (logical) shift left arithmetic sla $1,$2,5 $1 = $2 << 5 (arithmetic) shift right arithmetic sra $1,$2,5 $1 = $2 >> 5 (arithmetic) load word lw $1, ($2) $1 = memory [$2] store word sw $1, ($2) memory [$2] = $ load upper immediate lui $1,100 $1 = 100 x 2 16 branch if equal beq $1,$2,100 if ($1 = $2), PC = PC + 4 + (1004) branch if not equal bne $1,$2,100 (^) if ($1 ≠ $2), PC = PC + 4 + (100*4) set if less than slt $1, $2, $3 if ($2 < $3), $1 = 1 else $1 = 0 set if less than immediate slti $1, $2, 100 if ($2 < 100), $1 = 1 else $1 = 0 jump j 10000 PC = 10000 jump register jr $31 PC = $ jump and link jal 10000 $31 = PC + 4; PC = 10000