WELCOME TO CE1921
This course introduces the concepts of computer architecture and
performance trade-offs that must be made in the design of
computer systems. Topics covered include reduced instruction set
computers, instruction set design options, processor
implementation, pipelining and memory hierarchy. The lectures are
reinforced through projects in which students design and simulate
the data path and control circuitry of a reduced instruction set
microprocessor.
This website serves as a common syllabus
providing the daily learning objectives, reading assignments,
homework assignments, laboratory assignments, and on-line tutorials.
Instructors may provide a supplemental syllabus to students.
Use the links at the top of the page to learn
about:
- the classroom policies applied by the course instructors,
- the integrated circuit chips used in the laboratory,
- the daily lecture plan,
- the weekly laboratory plan,
- and the software used in the course.
PREREQUISITE COURSES
This class has a prerequisite of CE1911: Digital Logic 2. The
prerequisite is in place because students must have a strong
understanding of:
- binary and hexadecimal numbers,
- logic equations and equation minimization techniques,
- gate-level circuits,
- functional level components such as multiplexers,
full-adders, ALUs, flip-flops, registers, register-files,
counters, and
- basic skills using a hardware description language
WHY DO COMPUTER ENGINEERS STUDY COMPUTER ARCHITECTURE?
Computers serve as the brain in thousands of products that make
daily life easier and more interesting. The prerequisite courses
have introduced basic digital logic techniques, VHDL description
of digital circuits, and instruction set programming. This course
continues the exploration of computer sytems design by exposing
students to the advanced circuitry that forms the heart of all
modern computer systems.
WHAT WILL STUDENTS LEARN IN CE1921?
This class is the third in a three-quarter class sequence that
explores the techniques required to design the microprocessor and
supporting integrated circuit chips used in computer systems.
Students will:
- write basic assembly language programs,
- compare and contrast the Princeton and Harvard computer organizations,
- describe foundational concepts within
instruction set architecture, micro-architecture and system architecture,
- organize hardware component to implement architecture,
- evaluate how architectural and organizational decisions affect system
performance, and
- justify exploiting parallelism to improve
performance.
Laboratory exercises reinforce lecture material by presenting
large design projects where students design and simulate single-cycle
and pipelined ARM processors.