Course Syllabus

Examination Objectives

  1. Understand the internal working principles, the composition, and the interconnection of the components of a uniprocessor computer system, and acquire a complete picture of the computer system as a whole.
  2. Understand the concept of the layered structure of a computer system, become familiar with the interface between the hardware and the software, and master the basic knowledge and the basic implementation methods of the instruction set architecture.
  3. Be able to apply the basic principles and the basic methods of computer organisation to compute and analyse the theoretical and practical problems of computer hardware systems, and to carry out a simple design of some basic components; and be able to analyse the related problems in a high-level programming language (such as the C language).

1. Overview of Computer Systems

  • (1) The layered structure of a computer system
    1. The basic composition of a computer system
    2. The basic composition of the computer hardware
    3. The relationship between the computer software and hardware
    4. The working process of the computer system
  • (2) The performance metrics of a computer
    • Throughput, response time; the CPU clock cycle, the clock frequency, CPI, the CPU execution time; MIPS, MFLOPS, GFLOPS, TFLOPS, PFLOPS, EFLOPS, ZFLOPS.

2. The Representation and Operation of Data

  • (1) Number systems and encoding
    1. Positional number systems and the conversions between them
    2. The true value and the machine number
    3. Characters and strings
  • (2) The representation and the operation of fixed-point numbers
    1. The representation of fixed-point numbers: the representation of unsigned numbers; the representation of signed integers.
    2. The operation of fixed-point numbers: the shift operations on fixed-point numbers; the addition and subtraction of sign-magnitude fixed-point numbers; the addition and subtraction of two’s complement fixed-point numbers; the multiplication and division of fixed-point numbers; the concept of overflow and how to detect it.
  • (3) The representation and the operation of floating-point numbers
    1. The representation of floating-point numbers: the IEEE754 standard
    2. The addition and subtraction of floating-point numbers
  • (4) The arithmetic logic unit ALU
    1. The serial adder and the parallel adder
    2. The function and the structure of the arithmetic logic unit ALU

3. The Memory Hierarchy

  • (1) The classification of memory
  • (2) The hierarchical structure of memory
  • (3) Semiconductor random access memory
    1. SRAM memory
    2. DRAM memory
    3. Read-only memory
    4. Flash memory
  • (4) The connection between the main memory and the CPU
  • (5) Dual-port RAM and multi-module memory
  • (6) The cache memory
    1. The basic working principle of the cache
    2. The mapping schemes between the cache and the main memory
    3. The replacement algorithms for the main memory blocks in the cache
    4. The write policies of the cache
  • (7) Virtual memory
    1. The basic concepts of virtual memory
    2. Paged virtual memory
    3. Segmented virtual memory
    4. Segmented-paged virtual memory
    5. The TLB

4. The Instruction Set

  • (1) The instruction format
    1. The basic format of an instruction
    2. The fixed-length opcode instruction format
    3. The expanding opcode instruction format
  • (2) The addressing modes of an instruction
    1. The concept of the effective address
    2. Data addressing and instruction addressing
    3. The common addressing modes
  • (3) The basic concepts of CISC and RISC

5. The Central Processing Unit (CPU)

  • (1) The functions and the basic structure of the CPU
  • (2) The instruction execution process
  • (3) The function and the basic structure of the data path
  • (4) The function and the working principle of the control unit
    1. The hardwired control unit
    2. The microprogrammed control unit: the microprogram, the microinstruction, and the microcommand; the format of the microinstruction and the encoding of the microcommands; the forms of the microaddress.
  • (5) The instruction pipeline
    1. The basic concepts of the instruction pipeline
    2. The basic implementation of the instruction pipeline
    3. The basic concepts of the superscalar and the dynamic pipeline

6. The Bus

  • (1) An overview of the bus
    1. The basic concept of a bus
    2. The classification of buses
    3. The composition and the performance metrics of a bus
  • (2) Bus operations and timing
    1. Synchronous timing
    2. Asynchronous timing
  • (3) Bus standards

7. The Input/Output (I/O) System

  • (1) The basic concepts of the I/O system
  • (2) Peripheral devices
    1. Input devices: the keyboard and the mouse
    2. Output devices: the monitor and the printer
    3. External storage: hard disk storage and disk arrays
  • (3) The I/O interface (the I/O controller)
    1. The function and the basic structure of the I/O interface
    2. The I/O ports and their addressing
  • (4) The I/O modes
    1. The programmed I/O mode
    2. The program interrupt mode: the basic concepts of interrupts; the interrupt response process; the interrupt handling process; the concepts of multiple interrupts and interrupt masking.
    3. The DMA mode: the composition of the DMA controller and the DMA transfer process.

Found an issue with this content?

Tell us what could be improved.