eeMmpo - Microprocessor Architectures

eeMmpo - Microprocessor Architectures

Course Overview

This course introduces students to the design features of microporcessor architectures and how high level languages used by a user are translated into signals that control the hardware. The course focuses on software issues rather than the hardware and introduces some of the historical development of computer systems since World War II.

Various aspects of microprocessor architecture are covered, including the use of microcode to control hardware, RISC and CISC architectures, Pipelining, DSP and multiprocessing architectures. A discussion of operating systems for user support and process handling is also covered and an implementation in the KISS architecture described in detail.

The course also introduces the student to the C programming language with emphasis on its relationship with Pascal. The student gains experience of using this high level language to write some simple programs. They are then introduced to the KISS architecture through a simulator. This allows the student to translate their C programs into assembler and follow the execution of a program through memory.

These pages contain notes associated with the course and are for reference. They do NOT replace the lectures themselves, and students are strongly advised to attend the lectures in order to follow the course. The following are sets of notes on different sections of the course, and do not correspond to individual lectures.


C Programming and KISS architecture


  1. Development of the MicroProcessor
  2. KISS architecture
  3. Stack machines
  4. MicroCode Level
  5. Horizontal vs Vertical Design
  6. Pipelining exercises!
  7. RISC vs CISC Performance
  8. Process Scheduling
  9. Memory Management
  10. Advanced Architectures


P.Palmer@ee.surrey.ac.uk
1st September 1998