This is a beta course, so its structure, chapters, and examples may continue to change.
Course Syllabus
Taken from the syllabus of the postgraduate entrance examination for the professional course.
- 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.
- 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.
- 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) The layered structure of a computer system
- The basic composition of a computer system
- The basic composition of the computer hardware
- The relationship between the computer software and hardware
- 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.
- (1) Number systems and encoding
- Positional number systems and the conversions between them
- The true value and the machine number
- Characters and strings
- (2) The representation and the operation of fixed-point numbers
- The representation of fixed-point numbers: the representation of unsigned numbers; the representation of signed integers.
- 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
- The representation of floating-point numbers: the IEEE754 standard
- The addition and subtraction of floating-point numbers
- (4) The arithmetic logic unit ALU
- The serial adder and the parallel adder
- The function and the structure of the arithmetic logic unit ALU
- (1) The classification of memory
- (2) The hierarchical structure of memory
- (3) Semiconductor random access memory
- SRAM memory
- DRAM memory
- Read-only memory
- Flash memory
- (4) The connection between the main memory and the CPU
- (5) Dual-port RAM and multi-module memory
- (6) The cache memory
- The basic working principle of the cache
- The mapping schemes between the cache and the main memory
- The replacement algorithms for the main memory blocks in the cache
- The write policies of the cache
- (7) Virtual memory
- The basic concepts of virtual memory
- Paged virtual memory
- Segmented virtual memory
- Segmented-paged virtual memory
- The TLB
- (1) The instruction format
- The basic format of an instruction
- The fixed-length opcode instruction format
- The expanding opcode instruction format
- (2) The addressing modes of an instruction
- The concept of the effective address
- Data addressing and instruction addressing
- The common addressing modes
- (3) The basic concepts of CISC and RISC
- (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
- The hardwired control unit
- 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
- The basic concepts of the instruction pipeline
- The basic implementation of the instruction pipeline
- The basic concepts of the superscalar and the dynamic pipeline
- (1) An overview of the bus
- The basic concept of a bus
- The classification of buses
- The composition and the performance metrics of a bus
- (2) Bus operations and timing
- Synchronous timing
- Asynchronous timing
- (3) Bus standards
- (1) The basic concepts of the I/O system
- (2) Peripheral devices
- Input devices: the keyboard and the mouse
- Output devices: the monitor and the printer
- External storage: hard disk storage and disk arrays
- (3) The I/O interface (the I/O controller)
- The function and the basic structure of the I/O interface
- The I/O ports and their addressing
- (4) The I/O modes
- The programmed I/O mode
- 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.
- The DMA mode: the composition of the DMA controller and the DMA transfer process.
