Aviral Shrivastava: Teaching: CSE/EEE 230
CSE 230/EEE 230
Computer Organization and Assembly Language Programming
Register-level computer organization, Instruction set architecture,
Assembly language programming, Processor organization and design,
Memory organization, Exception/interrupt handling.
Computer Organization and Design, The Hardware/Software Interface, Revised 4th Edition
Authors - David A. Patterson and John L. Hennessey
Publisher - Morgan Kaufman, now Elsevier
Course Objectives and Outcomes
- Students should understand MIPS assembly language, and write assembly language programs for simple problems, including function calls.
- Students should understand the data representation (2's complement, single and double precision float point) inside the processor, and perform arithmetic operations on them.
- Students should understand the working of a single-cycle, multi-cycle, and
pipelined processor. Students should be able to understand and appreciate more complex architectures.
- Students should understand the importance and impact of pipelining, as a concept and as applicable to processor architecture.
- Students should understand the concept and the rationale behind the memory organization, especially caches.
- Students should understand the metrics of performance and throughput, and quantitatively compare two computers.
- Students should understand how interrupts and exceptions are handled by the processor.
- CSE 120: Digital Design Fundamentals
- CSE 200: Concepts of Computer Science
Major Topics Covered in the Course and Approximate Schedule
- MIPS instruction set architecture and assembly language (3 week)
- Data representation and arithmetic (1 week)
- Performance (1 week)
- Single cycle implementation (3 weeks)
- Multi-cycle implementation (2 week)
- Pipelined implementation (2 week)
- Memory organization (1 week)
- Interrupt and Exception Handling (1 week)
Lectures: 2 hour 30 minutes per week.
Last Updated: Aviral Shrivastava, 10/2008