|
|
EEL 4713C - Digital Computer Architecture
Catalog Description: (4cr) The use of electronic digital modules to design computers. Organization and operation of computers. Hardware/software tradeoffs. Design of computer interfacing. Laboratory.
Prerequisites: Digital Logic and Computer Systems
Textbook: Computer Organization & Design. Patterson and Hennessey. ISBN number: 1-55869-428-6
Course Objective: To illustrate methods to solve complex scientific and engineering problems using digital electronic computational machines; to show the elements of a development system for solutions to problems in this field; to introduce the VHSIC Hardware Description Language (VHDL) as a tool for design and synthesis of complex digital systems; to study the implementation of microprocessors using micro-programmed state machines; to show the interplay between algorithms and the architectures on which they run.
Professional Component: 4 credits of Engineering Design
Relationship to Outcomes: (To view how the outcomes of this course fit in with the curriculum, click here)
- EE2 - knowledge of mathematics, basic and engineering sciences necessary to analyze and design complex systems
- a - an ability to apply knowledge of mathematics, science, and engineering
- c - an ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability
- e - an ability to identify, formulate, and solve engineering problems
- k - an ability to use the techniques, skills, and modern engineering tools necessary for engineering practice
Class Schedule: 3 classes per week of 50 minutes each, 1 3-hour laboratory section
Topics:
- Introduction. Components of a computer system. Evolution of technology.
- Instruction set architecture design and hardware/software interface.
- Organization of single- and multi-cycle RISC microprocessors.
- Introduction to the design of key datapath components (ALU, registers, shifters, sign-extenders) using VHDL behavioral and structural descriptions. Introduction to micro-programming.
- Performance: measurement, metrics, summarization and interpretation.
- Number systems: representation and operations; fixed and floating-point implementations.
- Pipelining. Data hazards and forwarding. Superscalar design.
- Memory hierarchies, caches: organization, implementation and performance.
- Virtual memory: address translation, placement, look-aside buffers.
- Input/output. Disk technologies, busses and protocols. I/O system design. Redundant arrays of inexpensive disks (RAID).
Course Committee: Dr. Figueiredo, Chair, Dr. Fortes, Dr. George, Dr. T. Li
|
|