Click to go to ENCM 369 Winter 2020 HOME PAGE

Author: Steve Norman

A new textbook was adopted in 2014!
In 2013 and earlier we used various editions
of
*Computer Organization and Design*,
by David Patterson and John Hennessy.
There are a couple of implications:

- Old exam problems that refer to specific figures in Patterson and Hennessy are probably not worth looking at. The general organizations of the Patterson/Hennessy single-cycle and pipelined processors are very similar to those in Harris and Harris, but many, many details differ between the two texts.
- Regarding caches,
Patterson and Hennessy use the term
*index*for what Harris and Harris call the*set bits*.

One other note:
For out-of-range results in integer addition and subtraction,
we used to use the terms *overflow* and *wraparound*;
in 2014 we started using the terms
*signed overflow*
and *unsigned overflow* instead.

The exam (both documents in PDF format):

Text that I wrote in March: Solutions for the 2019 exam will be posted no later than April 15, 2020.

Update, Tuesday morning, April 21: I apologize for the delay. I am working on posting solutions and expect to have them up by late afternoon today.

Second update, later Tuesday morning, April 21: The solutions were closer to ready than I had remembered! See the links below. (And send email if you think you have spotted a mistake.)

Solutions (all documents in PDF format):

- Problem 1 solutions
- Problem 2 solutions
- Problem 3 solution
- Problem 4 solutions
- Problem 5 solution
- Problem 5: some return address calculations
- Problem 6 solutions
- Problem 7 solutions
- Problem 8 solutions

The exam (both documents in PDF format):

Solutions (all documents in PDF format):

- Problem 1 solution
- Problem 2 solutions
- Problem 3 solutions
- Problem 4 answers
- Problem 4: some return address calculations
- Problem 5 solutions
- Problem 6 solutions
- Problem 7 solutions
- Problem 8 solutions
- Problem 9 solutions

The exam (both documents in PDF format):

Solutions (all documents in PDF format):

- Problem 1 solution
- Problem 2 solutions
- Problem 3 solutions
- Problem 4 answers
- Problem 4:
instruction address calculations

- Problem 5 solutions

Note, 5:55pm Wed Apr 2018: The final answer for part b is correct, but there are typographical errors in the earlier part of the solution. 14 in base ten is 1110 in base two, not 1011.

- Problem 6 solutions
- Problem 7 solutions
- Problem 8 solutions
- Problem 9 solutions

The exam (both documents in PDF format):

Solutions (all documents in PDF format):

- Problem 1 solution
- Problem 2 solutions
- Problem 3 solutions
- Problem 4 solutions
- Problem 5 answers
- Problem 6 solutions
- Problem 7 solutions
- Problem 8 solutions

The exam (both documents in PDF format):

Solutions, all PDF:

- Problem 1
- Problem 2
- Problem 3
- Problem 4
- Problem 5
- Problem 6
- Problem 7
- Problem 8
- Problem 9

**Correction,**made Tue Apr 19 2016: The answer to part c is correct, but there is a mistake in the preliminary work. The calculation of the number of pages in the array should have been written as

1,400,000 bytes / (16,384 bytes/page) = 85.4 pages

The exam (both documents in PDF format):

Solutions, all PDF:

- Problem 1
- Problem 2
- Problem 3
- Problem 4
- Problem 5
- Problem 6
- Problem 7

**Correction,**made Wed Apr 22 2015: The solution to part b should say that for the sw instruction, the data word 1 in set 3, way 1 should remain 0x66. (The 0x55 in word 0 gets written over by the 0x123 that was the store data.)

- Problem 8

**Correction,**posted 1:50pm Wed Apr 22 2015: The solution to part b should read "The data address is 0x7fff_efe0 + 32(base ten) = 0x7fff_f000…" (0x7fff_0000 is wrong.)

- Problem 9

The exam (both documents in PDF format):

Solutions, all PDF:

The exam (both documents in PDF format):

Solutions, all PDF:

- Problem 1
- Problem 2, parts a, b, d
- Problem 2c
- Problem 3
- Problem 4, parts a, c
- Problem 4b
- Problem 5
- Problem 6
- Problem 7
- Problem 8
- Problem 9
- Problem 10
- Problem 11

The exam (both documents in PDF format):

Please note that this exam turned out to be unreasonably long! The 2014 exam will not necessarily be easy to finish in three hours, but it will be significantly shorter than the 2011 exam.

Solutions, all PDF:

- Problem 1
- Problem 2

Correction to Part b: Lo gets 0x2334_4000, not 0x2334_0000. - Problem 3
- Problem 4
- Problem 5
- Problem 6
- Problem 7
- Problem 8
- Problem 9
- Problem 10

The exam (both documents in PDF format):

Solutions, all PDF.

- Problem 1
- Problem 2
- Problem 3
- Problem 4
- Problem 5
- Problem 6
- Problem 7
- Problem 8
- Problem 9
- Problem 10

The exam (both documents in PDF format):

- 2009 question paper

Corrections to question paper ...- (March 19, 2010) Problem 4, extra information needed to solve the problem:
The argument to
`bar`goes in the single-precision`$f12`register.

- (March 19, 2010) Problem 4, extra information needed to solve the problem:
The argument to
- 2009 reference material

Solutions, all PDF.

- Problem 1
(Correction, 19 April, 2010: In part a,
`$t4`gets`0xffff_ffff`, not`0xffff_fffe`. The explanation of what`mult`did is correct, but somehow I read`mflo $t4`instead of`mfhi $t4`.) - Problem 2
- Problem 3
- Problem 4
- Problem 5
- Problem 6
- Problem 7 (Correction, 25 April, 2010: The answer for part d should be "ID/EX.RegisterRt gets 01001 (base two) for $9;" that was what comes from bits 20-16 of the OR instruction.)
- Problem 8
- Problem 9
- Problem 10

The exam (both documents in PDF format):

Solutions, all PDF.

- Problem 1: original solution
- Problem 1: corrected solution
- Problem 2
- Problem 3
- Problem 4 was about ``multi-cycle'' processors, a topic covered in the 3rd edition of the textbook but not the 4th. Multi-cycle processors were not covered in ENCM 369 in Winter 2009, so students in 2009 should ignore Problem 4.
- Problem 5
- Problem 6
- Problem 7
- Problem 8
- Problem 9

This year's instructors don't have access to the 2007 final exam material.

The exam (both documents in PDF format):

Solutions, all PDF.

- Problem 1
- Problem 2
- Problem 3
- Problem 4 (Note that this problem got recycled as Lab 9 Exercise B in 2008.)
- Problem 5
- Problem 6
- Problem 7
- Problem 8
- Problem 9

The exam (both documents in PDF format):

Solutions:

- Problem 1 (ASCII text)
- Problem 2 (ASCII text)
- Problem 3 (ASCII text)
- Problem 4 (ASCII text)
- Problem 5 (PDF)
- Problem 6 (ASCII text)
- Problem 7 (ASCII text)
- Problem 8 (ASCII text)
- Problem 9 (ASCII text)

The exam (both documents in PDF format):

Solutions:

- Problem 1 (ASCII text)
- Problem 2 (ASCII text)
- Problem 3 (ASCII text)
- Problem 4 (ASCII text)
- Problem 5 (PDF format)
- Problem 6 (ASCII text)
- Problem 7 (ASCII text)
- Problem 8 (ASCII text)
- Problem 9 (ASCII text)
- Problem 10 (ASCII text)

The exam (both documents in PDF format):

Solutions:

- Problem 1 (ASCII text)
- Problem 2 (ASCII text)
- Problem 3 (HTML)
- Problem 4 (HTML)
- Problem 5 (ASCII text)
- Problem 6 (ASCII text)
- Problem 7 (ASCII text)
- Problem 8 (ASCII text)
- Problem 9 (ASCII text)
- Problem 10 (ASCII text)

The exam (both documents in PDF format):

Solutions:

- Problem 1 part a (ASCII text)
- Problem 1 parts b and c (ASCII text)
- Problem 2 (ASCII text)
- Problem 3 part a (ASCII text)
- Problem 3 part b (HTML)
- Problem 4 (ASCII text)
- Problem 5 (ASCII text)
- Problem 6 (ASCII text)
- Problem 7 (ASCII text)
- Problem 8 (ASCII text)

The exam (both documents in PDF format):

Solutions: