A top-down approach to computer design. Computer architecture: introduction to assembly language programming and machine language set design. Computer organization: logical modules; CPU, memory and I/O units. Instruction cycles, the datapath and control unit. Hardwiring and microprogramming. The memory subsystem and timing. I/O interface, interrupts, programmed I/O and DMA. Introduction to pipelining and memory hierarchies. Fundamentals of computer networks.
Credits: 3:3:0:4 Pre-Requisite: CS 2204 (C- or better for undergraduate computer engineering students); or CS 2134 (C- or better) and MA 2312/2322. Co-Requisite: none Notes: none