Course Code: CS223 Course Name: Computer Architecture and Organization Prerequisites: CS221 Syllabus: Functional units of a computer: CPU, memory, I/O; instruction set architecture: instruction format, addressing modes, ISAs for common CPUs and assembly languages; data representation: signed number representation, fixed and floating point representations; processor design: datapath components, control unit, pipelining and hazards; memory: concept of hierarchical memory organization, cache memory, mapping functions and replacement algorithms, main memory organisation, virtual memory; Input-Output: I/O transfers - program controlled, interrupt driven and DMA, I/O devices - secondary storage; Introduction to multi-core architectures. Texts: 1. D. A. Patterson, J. L. Hennessy, Computer Organization and Design, 4th Ed., Morgan Kaufmann, 2010. 2. W. Stallings, Computer Organization and Architecture: Designing for Performance, 8th Ed., Pearson, 2010. References: 1. C. Hamacher, Z. Vranesic, S. Zaky, Computer Organization, 6th Edition, McGraw Hill Education, 2011. 2. M. Mano, Computer System Architecture, 3rd Ed., Pearson, 1992. |