Dr. Edward L. Bosworth
Center for Commerce and Technology 443
(706) 565-4128 FAX: (706) 565 – 3529
Office Hours (Fall 2009)
Monday 4:30 PM to 5:30 PM
6:30 PM to 7:15 PM
Tuesday 9:30 AM to 10:45 AM
Wednesday 9:30 AM to
1:00 PM to 2:45 PM
Thursday 9:30 AM to 10:45 AM
The on–line offering (CRN 81171) has no fixed meeting times.
There are no specific
prerequisites for the graduate offering of this course. The student is
expected to have some familiarity with Boolean algebra; two’s complement arithmetic; basic
building blocks such as AND, OR and NOT gates; and basic MSI components such as
encoders, decoders, multiplexers, demultiplexers, and full adders.
The student is expected to be
able to design simple combinational circuits using the basis
logic gates (AND, OR, NOT, and XOR).
The course uses assembly language as a functional
specification for a computer. The
student is expected to be able to understand assembly language statements that will be
used to illustrate the design of the computer.
Architecture of Digital Computers: An Introduction
Edward L. Bosworth, Ph.D. (the instructor)
Other Required Materials:
For the digital lab
you will be required to use the digital logic simulator Multimedia Logic
by Softronix, Inc. Go to the web site http://www.softronix.com and select MMLogic.
Select the Startup Kit and run the setup with the default settings. It is free.
Review of Boolean algebra and simple combinational and
sequential circuits. Study of
the design of the major components of a simple computer: memory, central processing
unit, and Input/Output systems. Considerable focus will be placed on the design of the
Control Unit. Other topics, including examples of real computer architectures, as time
allows. Please see the listing Topics for the Course, attached to this document.
Course Objectives (Learning Outcomes)
At the end of the course the
student will be able to describe and explain the following:
1. The top-level architecture of a computer: CPU, Memory, and I/O Component.
2. The basic MSI Circuits (Encoders, Decoders, Multiplexers, Demultiplexers)
and their use in designing combinational circuits.
3. The four basic flip-flop types and their use in design of sequential circuits.
4. The structure of register files as a set of flip-flops.
5. The basic concepts of finite state machines (FSM).
6. The design of modulo-N counters and their use in control units.
7. The basics of the
interaction of the CPU and computer memory.
8. Design of computer memory from basic memory chips.
9. The internal structure of the CPU, including the CPU buses, the ALU, the
register file, and the control unit.
10. The construction of the arithmetic-logic Unit (ALU).
11. The control unit as issuing a sequence of control signals; how those control
signals effect the execution of the assembly language statements.
12. Hard-wired and microprogrammed control units.
13. The four basic types of I/O: program-controlled, interrupt-driven, direct memory
access (DMA), and I/O channels.
14. The disadvantages of program-controlled I/O and when it can be used.
15. The basic structure of
a vectored-interrupt system.
16. The basic structure of a DMA controller.
17. The use of VHDL to describe simple components of the CPU.
18. The use of a simulation tool to describe the behavior of digital circuits.
1. Attend class
2. Complete all reading assignments and all homework assignments.
3. Actively participate in all class discussions.
4. Participate in the hands-on laboratory for this course.
The times for these laboratories will be posted.
5. Ask the instructor questions.
lectures on the course material.
2. Assign appropriate homework that illustrates the concepts of the course, and
grade and return the homework in a timely manner with adequate explanation.
3. Give tests over the material and grade and return the tests in a timely manner.
4. Provide a website that supports the course.
5. Provide at least four hours of office time primarily designated for assistance of
students in this class, at times expected to be convenient for the students. It is
expected that the instructor be available to the students during these hours.
This will be based on an in-class lecture course, taught face-to-face.
There will be a laboratory component, in
which the student will use a circuit
simulation tool to investigate a number of digital circuits.
There are two options for the lab experience. One option is to run the simulation on the
lab computers in CCT 450. Another option is to download MMLogic by Softronix, run
the experiments at home (or work). Recall that the simulator is a free download.
The lab work will be considered part of the homework and submitted as homework.
All homework is to be submitted
through the WebCT/CougarView tool.
through the standard CougarNet e–mail system are not acceptable. Submissions in class
of “hard copy” homework written on paper are not acceptable.
Lab experiments, while assigned
as homework, are to be submitted in the standard file
format produced by the logic simulation tool.
Other homework assignments are
to be submitted as either MS–Word documents or
Adobe PDF documents. Word–2003 (or Word–2007 in compatibility mode) are
preferred, as this allows me to edit comments into your submission before returning it.
The Research Project
to the requirements placed on the undergraduate students, graduate students
are expected to do a literature research project on a subject related to advanced topics in
computer architecture and organization. The students are expected to produce a paper of
at least three pages in length (single spaced) that conforms to expected standards for
grammar, logical organization, and citation of references.
The schedule for
the paper: Monday, September
28: Proposal for paper due.
Monday, November 30: Final copy of the paper due.
All work submitted must be based
on electronic formats. MS–Word, Adobe
RTF formats are acceptable formats. All work must be submitted through WebCT.
Methods for Evaluating Students
The evaluation methods will
include homework, a laboratory experience, a mid-term
exam, and a final exam. The relative grading is shown below.
Research Paper 20%
Mid-Term Exam 20% The week of Monday, October 5.
Final Exam 30% The week of Monday, December 7.
The Exams: All
exams will be given as timed tests using the WebCT/Cougarview
tool. The time allocated will be the standard.
The Mid–Term Exam will be a one–hour exam.
The Final Exam will be a two–hour exam.
Assignment of Letter Grades
The method of assigning letter grades based on overall course averages is fairly standard.
GRADE POINTS GRADE POINTS
A 90 – 100 C 65 – 79
B 80 – 89 F Below 64
Policy on Tests and Final Exams
All in-class quizzes and tests
(but not the final exam) will be graded and returned on the
following class period. The class meeting immediately preceding the test is devoted to
review for the test, and the class period immediately following the test is devoted to
return of the test and discussion of all test questions and possible answers.
For all in-class quizzes and
tests (but not the final exam), the deadline for requesting a
review of the grade is either two weeks after the test is returned or one week before the
scheduled date for the final exam, whichever date is earlier.
Please note that a grade review will never lead to reduction of an assigned grade.
Other Course Policies
If you have a documented
disability as described by the Rehabilitation Act of 1973
(P.L. 933–112 Section 504) and the Americans with Disability Act (ADA) that may
require you to need assistance attaining accessibility to instructional content to meet
course requirements, we recommend that you contact the Center for Academic Support
in Tucker Hall, room 100 or at (706)568–2330, as soon as possible. It is then your
responsibility to contact and meet with the instructor. It is also your responsibility
to present the instructor with a letter from the Center for Academic Support.
Without this letter detailing the required accommodations, the instructor cannot
help you. The Center for Academic Support can assist you and the instructor in
formulating a reasonable accommodation plan and provide support in developing
appropriate accommodations for your disability. Course requirements will not be waived
but accommodations may be made to assist you to meet the requirements. Technical
support may also be available to meet your specific need. For more information on
services and support available, refer to http://uc.colstate.edu/disability_services.htm.
Parking is a problem at CSU; for
this we apologize. It is the student’s
arrive at class on-time and submit any homework before the beginning of class.
Those students taking the course via distance education are spared the parking problem.
Dropping the Course
We hope that you will complete the course and profit from
it. If it is necessary for you to
withdraw from the course during the semester, you must follow all official CSU
procedures for withdrawing. It is not sufficient to notify the instructor; you must use the
the web page
I would appreciate it if you were first to consult with me
before starting the procedure for
withdrawing from the course. In some cases, we can agree on an arrangement that will
allow you to complete the course with minor adjustments.
Academic dishonesty includes, but is not limited to, activities such as cheating and
plagiarism. It is a basis for disciplinary action. Collaboration is not permitted on
assignments or exams/quizzes in this course. Any work turned in for individual credit
must be entirely the work of the student submitting the work. All work must be your
own. You may share ideas but submitting identical assignments (for example) will be
considered cheating. A simple way to avoid inadvertent plagiarism is to talk about the
assignments, but don't read each other's work or write solutions together. Keep scratch
paper and old versions of assignments until after the assignment has been graded and
returned to you. If you have any questions about this, please see me immediately.
For assignments, access to
notes, textbook, books and other publications is allowed.
Stealing, giving or receiving any code, diagrams, drawings, text or designs from another
person (CSU or non-CSU) is not allowed. Having access to another person’s work on the
system or giving access to your work to another person is not allowed. It is your
responsibility to keep your work confidential, so that other students do not have access to
it without your knowledge. Properly dispose of all your scratch work.
No cheating in any form will be
tolerated. The penalty for the first occurrence of
academic dishonesty is a zero grade on the assignment or exam/quiz; the penalty for the
second occurrence is a failing grade for the course. For exams/quizzes, discussion of any
kind (except with me) is not allowed.
(http://aa.colstate.edu/advising/a.htm#Academic Dishonesty/Academic Misconduct)
CPSC5155: Topics for the Course
1. General Introduction to
Main components of a Stored Program Computer.
Simple designs and modern elaborations that increase efficiency.
Modern Design Principles.
2. Review of Boolean Algebra
and Basic Gates
Basic Boolean functions: AND, OR, NOT, and XOR.
Theorems and Postulates of Boolean Algebra
Truth Tables and Algebraic Representation of Boolean Functions
Basic Gates: AND, OR, NOT, and XOR.
Other Gates: NAND and NOR
The Tri-State Buffer (not a Boolean gate) and its uses.
3. Review of Some Medium
Scale Integration (MSI) Circuits
Encoders and Decoders
Multiplexers and Demultiplexers
The Full Adder and a Ripple-Carry Adder
4. Introduction to Sequential
Circuits, Including Flip-Flops and Registers
The Basic Idea of a Synchronous Computer
The Computer Clock as a Synchronization Mechanism
Four Basic Flip-Flops: SR, JK, D, and T
Registers as Collections of Flip-Flops
Register Files and Conventions for Usage and Representation
5. Analysis and Design of Sequential Circuits
Flip-Flops as Interface Elements
Introduction to Finite-State Machines (FSM)
Modulo-N Counters: Up Counters and Up-Down Counters
A Traffic Light Controller
6. Overview of Computer Architecture
Main components of a Computer: CPU, Memory, and I/O
Computer Buses as Communication Devices
7. The Instruction Set
Architecture of a Model Computer
The Assembly Language
The User Registers
8. The Memory Subsystem of
Interaction of the CPU and Memory: MAR, MBR, and Control Signals
Types of Random Access Memory: RAM and ROM
Design of Main Memory from Memory Chips
Associative Memory and Its Uses
9. The Central Processing
Unit (CPU) of the Computer
Main components: the ALU, Control Unit, and Register File
Internal Bus Structure for the CPU
Design of the Arithmetic-Logic Unit (ALU)
The Register File and Its Communication via CPU Buses
The Control Unit – Specification of Control Signals and Micro-Operations
A Hard-Wired Control Unit
A Microprogrammed Control Unit
10. The Input/Output System
Main classes of I/O: Program-Controlled,
Interrupt-Driven, and DMA
The problem with Program-Controlled Input/Output
Design of a Multi-Level Interrupt Structure for Vectored Interrupts
Basics of a Direct Memory Access (DMA) I/O Controller
11. Miscellaneous Advanced
Pipe-lined execution structures
Parallel execution structures
Other computer architectures