CS470: Computer
Architecture
Spring 2016 (under construction) Course Syllabus
Computers today range from high performance machines to smartphones and embedded processors in appliances. They crunch numbers, drive high definition displays as well as run everyday applications. The course covers: How to build a functional unit using lower level components in an optimal way (cost/power/performance). Combinational and sequential blocks using gates and storage elements. Processor specification using ISA Implementing high-level language constructs using machine/assembly language. Exploiting potential parallelism to achieve high performance. Memory hierarchy to achieve a large address space with a low cost with fast access. How is technology advancing? What to expect in near future?
|
Instructor: Office: GTA: |
Yashwant Malaiya Malaiya @ cs.colostate.edu 356 CSB Office hours: T, Th 2-3 PM PM Mustafa Al-Lail hours : TBD |
|
o
Prerequisites: a grade of
'C' or better in CS 370 (System Architecture and Software).
o
On-Campus and
Distance section: Both will use the same Canvas course, with same quizzes
and assignments. The tests will be arranged separately, they will be in the
class for the on-campus section and take home for the distance students. The
two sections will be graded separately but using the same overall standards.
The on-campus students are required to attend the lectures.
o
Text: David A. Patterson & John L. Hennessy, Computer Organization & Design: The Hardware/Software Interface, 5th ed., Morgan Kaufmann Publishers,
Inc. Some material will be taken from
recent publications and other sources.
o
Homework/Labs: There will be
about some homework and programming assignments. Some assignments will include
use of simulation at the logic level and some will use a machine/assembly level
simulator.
o
Tests: There will be
one midterm and a comprehensive Final Exam.
o
Quizzes: In addition
there will be about quizzes, mostly on-line on Canvas, but some may in the
class, some of which may be unannounced.
o Term project in Computer Architecture: Proposal (1-page): 3/3/16, progress report: 3/31/16, final report 5/4/16. A short presentation powerpoint presentation will be required (4/29/16-5/2/16). The distance students will not have to make presentations in the class, but will just use the discussion board.
Grading
(tentative)
|
Midterm |
March 11 |
20% |
|
Final exam |
May 6 |
25% |
|
Homework
& programs |
as assigned |
about 20% |
|
Quizzes |
In-class or
on-line |
about-15% |
|
Term Project |
Due on 5/4/16 |
15% |
|
Participation |
|
5% |
o
Policies:
o
Assignments are
due on the due date at the start of
class, or by the time specified if electronic submission by CANVAS is
required.
o
You may turn
assignments in up to 24 hours late
for a 20% penalty. No credit will be
given after that.
o
If you will not
be able to take an exam or make an assignment deadline due to an exceptional
reason that can be documented, you must request the instructor in advance
for possible alternative arrangements.
o
Students must
read the CS Department Student
Information Sheet.
Topic Outline
|
o Review of logic design basics o Gates, boolean
algebra and truth tables o Combinational logic and functional
blocks (MUX, decoders, Adders, PLAs) o Flip-flops, registers and memories o Timing analysis o Finite state machines o Use of software packages for
simulation o Computer Performance and Trends o Measuring performance; Metrics o Benchmarks o Trends in density, performance and
cost o Assembly language programming o Operations; Operands o Instruction formats and Addressing
Modes o Decision-making o Procedure/function calls; Stack o Arrays; Pointers o RISC and CISC processors o Computer Arithmetic o Numbers and codes o Binary arithmetic and hardware
implementation o Floating-point numbers o Implementation of Multiplication and
division hardware o Central Processing Unit o Structure; Datapaths
o Control unit o Instruction execution o FSM and microprogrammed control* o Parallelism for enhanced performance o Pipelined Datapaths
o Data Hazards; Forwarding; Stalls o Branch Hazards o Exceptions* o Multiple Issue o Memory Hierarchy o Cache Implementations o Cache Performance o Memory Hierarchy o Storage and IO o Buses and hubs o RAID o Multiple processor systems o SIMD Multimedia Extensions* o Multicore* |
|