Computer Organization
Spring Semester, 2024
CoSc 425: Syllabus
Instructor: Stan Warford
Office: RAC 112
Office hours: Monday (11:00-11:50), Tuesday (9:00-9:50),
Thursday (1:00-1:50), Friday (11:00-11:50), and by appointment.
Email: Message to Warford
A1,
A2,
A3,
A4,
A5,
A6,
A7,
A8,
Test 1
A9,
A10,
A11,
A12,
A13,
A14,
A15,
A16,
Test 2
A17,
A18,
A19,
A20,
A21,
A22,
A23,
A24,
A25,
Final
L1,
L2,
L3,
L4,
L5,
L6
Lecture video recordings
Video recordings of all the lectures are posted on YouTube
here.
Text
Computer Systems, Fifth Edition, J. Stanley Warford, Jones and Bartlett, 2017.
Text rebate
As the author of our text, if you purchase it new I will personally refund on your request
15% of the retail price you paid.
Downloads
Access
online drawing tool for logic diagrams.
Download
Pep/9 CPU, required for Assignments 16, 18, 19, and 20.
Download
SPIM, not required, but may be helpful for Assignments 22 and 23.
Download
errata page
for Computer Systems, Fifth Edition, first printing.
Download
lecture slides, Chapter 3
for Computer Systems Fifth Edition.
Download
lecture slides, Chapter 8
for Computer Systems Fifth Edition.
Download
lecture slides, Chapter 9
for Computer Systems Fifth Edition.
Download
lecture slides, Chapter 10
for Computer Systems Fifth Edition.
Download
lecture slides, Chapter 11
for Computer Systems Fifth Edition.
Download
lecture slides, Chapter 12
for Computer Systems Fifth Edition.
Download
exam documentation handout
for Computer Systems Fifth Edition.
Labs
Friday is lab day in KSC 200.
First day of Lab 1: January 19
First day of Lab 2: February 2
First day of Lab 3: February 16
First day of Lab 4: March 8
First day of Lab 5: March 22
First day of Lab 6: April 5
Download
complete data sheets
for the labs.
Download data sheet for
7400,
7402,
7404,
7408,
7432,
7447,
7476,
7485,
7486,
74151,
74164,
74176-177,
74181,
MAN71A.
Papers and links
Out of Bounds,
Gerard J. Holzmann, IEEE Software, vol.32, no. 6, pp. 24-26, Nov.-Dec. 2015.
Reduced Instruction Set Computers Then and Now,
David Patterson, IEEE Computer, December 2017.
RISC-V home page,
A new open-source ISA hardware processor.
RISC-V Offers Simple Modular ISA,
David Kanter, The Linley Group Microprocessor Report, March 28, 2016.
RISC V Guns for Raspberry Pi,
Lucas Laursen, IEEE Spectrum, September, 2022.
The End of (Numeric) Error: An Interview with John L. Gustafson,
Walter Tichy, Ubiquity, An ACM Publication, April 2016.
An Energy-Efficient and Massively Parallel Approach to Valid Numbers,
John L. Gustafson, Slide presentation on the Unum floating-point format, March 2015.
Power Struggles: Revisiting the RISC vs. CISC Debate on Contemporary ARM and x86 Architectures,
Emily Blem, Jaikrishnan Menon, and Karthikeyan Sankaralingam, 19th IEEE International Symposium on High Performance Computer Architecture, 2013.
The Tyranny of the Clock,
Ivan Sutherland, Communications of the ACM, October 2012.
Future Computers: Digital, Quantum, Biological,
Philip Treleaven, IEEE Computer, August 2021.
The Case Against Quantum Computing,
Mikhail Dyakonov, IEEE Spectrum, March 2019.
Quantum Algorithm Implementations for Beginners,
J. Abhijith, ACM Trans. Quantum Comput., Vol. 3, No. 4, Article 18,July 2022.
How the Spectre and Meltdown Hacks Really Worked,
Nael Abu-Ghazaleh, Dmitry Ponomarev, Dmitry Evtyushkin IEEE Spectrum, March 2019.
The IEEE Standard 754: One for the History Books,
David G. Hough, IEEE Computer, December 2019.
Fast Inverse Square Root - A Quake III Algorithm,
Interesting YouTube video with IEEE 754, November 2020.
Intellectual property
You are free to use the material I produce in this course without my explicit permission.
License: Creative Commons, Attribution-ShareAlike (CC BY-SA)
See: https://creativecommons.org/licenses/
for license details.
Submission procedure
You must hand in your written assignments electronically on Courses.
Submissions on Courses must be single, multi-page PDF files, not photos.
Use a scanner, not a raw phone camera image.
Due Thursday, January 11
Video lectures 1, 2, 3
Study Chapter 10.1, 10.2
Chapter 10: Exercises 2, 8, 9(c), 11(a), 15(g, j, m),
16(g, j, m), 17(g, j, m)
To submit your assignment on Courses, name your file xxa01written.pdf
where xx
is your assigned two-digit number for this course.
Note the lower-case a and lower-case w.
Notice
Monday, January 15, Martin Luther King Day holiday
Due Thursday, January 18
Chapter 10: Exercises 21(b, d, g, i), 22(b, d, g, i)
Lab 1 day Friday, January 19
Basic Logic Gates
Due Monday, January 22
Study Chapter 10.3
Chapter 10: Exercises 23(a, f), 24(a, f), 25, 27(b, d, g, i),
28(a, f), 31(b, i), 32(b, i)
For 32, use a Karnaugh map to find the minimum of x' and then De Morgan's law to write the OR-AND expression.
Due Thursday, January 25
Study Chapter 10.4
Chapter 10: Exercises 33(b, c, d), 34(b, c, d), 35(c), 36(c)
For 34, use a Karnaugh map to find the minimum of x' and then De Morgan's law to write the OR-AND expression.
Due Monday, January 29
Chapter 10: Exercises 41, 43, 46, 47
For Exercise 41, use only the two multiplexers and AND, OR, and INVERT gates.
Due Thursday, February 1
Study Chapter 11.1
Chapter 10: Exercises 53, 54(c)
See errata for Exercise 54, electronic edition.
Lab 2 day Friday, February 2
Combinational Logic Circuits
Lab 1 due
Due Monday, February 5
Chapter 10: Exercises 52(b), 54(g), 55
Due Thursday, February 8
Chapter 11: Exercises 2, 3
Monday, February 12
Chapters 10, 11.1 through page 648 The Master-Slave SR Flip-Flop, Lab 1
Due Thursday, February 15
Study Chapter 11.2
Chapter 11: Exercises 5, 7, 8(d, f, h)
For Exercises 7 and 8, design a minimum AND-OR circuit, show the design table and Karnaugh map, and draw the non-abbreviated circuit with the flip-flop.
Lab 3 day Friday, February 16
Sequential Circuits: Flip-flops and Shift Registers
Lab 2 due
Due Monday, February 19
Chapter 11: Exercises 10, 11 (Don't forget to label the output on the transition diagram.)
Due Thursday, February 22
Study Chapter 11.3
Chapter 11: Exercises 13(b), 14(a)
Notice
Monday, February 26 - Friday, March 1
Spring break
Due Monday, March 4
Chapter 11: Exercise 19
Due Thursday, March 7
Chapter 11: Exercises 20, 21, 22
For Exercise 20, you can describe the change in general with one or two sentences.
Lab 4 day Friday, March 8
A Combined Combinational-Sequential System
Lab L3 due
Notice
Monday, March 11, last day to withdraw with grade of W.
Due Monday, March 11
Study Chapter 12.1
No written exercises.
Due Thursday, March 14
Chapter 11: Exercises 23, 24
Chapter 12: Exercise 2
Due Monday, March 18
Chapter 12: Exercises 3, 4
Chapter 12: Problem 28
For Problem 28, use the "Copy to Microcode" button in the Help system to copy the unit test,
which you must include unchanged in every microprogram.
Document your code with name, date, and assignment, which you must include in every microprogram.
Combine cycles as much as possible, which you must do for every microprogram.
Name your file xxProb1228.pepcpu
where xx
is your assigned two-digit number for this course.
Note the upper-case P.
Submit your assignment on Courses.
Thursday, March 21
Chapters 11, 12.1 through page 704 The Store Byte Direct Instruction, Labs 2, 3
Lab 5 day Friday, March 22
Variable Modulus Decade Counter with Display
Lab 4 due
Due Monday, March 25
Start working on Assignment 18.
Due Thursday, March 28
Chapter 12: Problem 29(e)
Chapter 12: Problem 29(f)
Chapter 12: Problem 30
Name your files xxProb1229e.pepcpu
, xxProb1229f.pepcpu
, and xxProb1230.pepcpu
where xx
is your assigned two-digit number for this course.
Note the upper-case P.
Due Monday, April 1
Study Chapter 12.2
Chapter 12: Problem 32(e)
Chapter 12: Problem 33(d)
Name your files xxProb1232e.pepcpu
and xxProb1233d.pepcpu
where xx
is your assigned two-digit number for this course.
Note the upper-case P.
Due Thursday, April 4
Chapter 12: Problem 35(e)
Chapter 12: Problem 36(d)
Report the percentage savings in the number of cycles in the documentation of the microprogram.
Name your files xxProb1235e.pepcpu
and xxProb1236d.pepcpu
where xx
is your assigned two-digit number for this course.
Note the upper-case P.
Lab 6 day Friday, April 5
Arithmetic Logic Unit
Lab 5 due
Due Monday, April 8
Study Chapter 12.3, 12.4
Chapter 12: Exercises 6, 7, 8, 11
Type your solutions in a text editor and export as a .pdf
file.
Name your file xxA21written.pdf
where xx
is your assigned two-digit number for this course.
Submit your file on Courses.
Due Thursday, April 11
Chapter 12: Exercises 14, 15, 16
Use the smallest number of cycles.
Note that 12.16 can be done in three cycles.
For the machine language, do not put a space between each four bits.
Instead, put a space between each field of the instruction as in Example 12.3.
Type your solutions in a text editor and export as a .pdf
file.
Name your file xxA22written.pdf
where xx
is your assigned two-digit number for this course.
Submit your file on Courses.
Notice
Friday, April 12, last day to withdraw with grade of WP/WF.
Due Monday, April 15
Study Chapter 3.5
Extra credit, study Chapter 9.4, 9.5
Chapter 12: Exercises 17(a), 18, 20
Type your solutions in a text editor and export as a .pdf
file.
Name your file xxA23written.pdf
where xx
is your assigned two-digit number for this course.
Submit your file on Courses.
Due Thursday, April 18
Chapter 12: Exercises 22, 25
Chapter 3: Exercises 50, 51, 52(a, b, c), 53(a, b, c)
Here is a
worksheet
for Exercise 12.22.
Extra credit
Due Friday, April 19
Chapter 9: Exercises 12, 13, 15, 16
Type your solutions in a text editor and export as a .pdf
file.
Name your file xxA25written.pdf
where xx
is your assigned two-digit number for this course.
Submit your file on Courses.
Monday, April 22, 4:30 p.m. - 7:00 p.m.
Cumulative, but with emphasis on material after Test 2.