Introduction

Tom Kelliher, CS26

Sept. 3, 1996

Syllabus and Course Administration

``What I Did This Summer''

Definitions

  1. Digital logic.
  2. Computer organization.
  3. Computer architecture.

Functional Units

CPU.

The Stored Program Concept

Memory contents have no inherent meaning: data vs. program.

  1. Machine instructions.
  2. Addresses.
  3. BCD.
  4. ASCII Text.
  5. 2's complement numbers.
  6. IEEE floating point numbers.

Memory Unit

  1. Primary storage --- main memory.
  2. Secondary storage --- disk (tape?).

ALU

  1. Usual functions.
  2. Registers --- fast as CPU.
  3. Capable of controlling numerous, slower I/O devices (gigabit networks?).
  4. Multiprocessing, multiprogramming.

Control Unit

  1. Coordinates all activity.
  2. Issues timing signals.
  3. Determines execution path through program: (How are context switches carried out?)

Basic Concepts

Registers vs. memory. Consider:

add   LOCA, R0
Notice:

Consider:

load   LOCA, R1
Add    R1, R0
Notice:

  1. Instruction register (IR).
  2. Program counter (PC).
  3. General purpose registers.
  4. Memory address register (MAR).
  5. Memory data register (MDR).

Draw an example system; outline instruction cycle.

Bus Structures

Bus --- a collection of wires connecting several modules and carrying related data.

Data, address busses.

A single bus connecting devices --- only one source, one or more sinks.

Connection flexibility (ISA bus).

Synchronous vs. asynchronous, buffering fast to slow devices.

Software

  1. BIOS.
  2. Operating System.
  3. System software.
  4. Application programs.

How is a program run?

How does it communicate with the rest of the system?

How is the system and users protected?

Performance

What techniques are available for speeding up program execution?

What matters most in performance? User view? System view?

Some standard techniques:

For a single program, here's the fundamental equation:

where T is execution time, N is the number of machine instructions to be executed, S is the average number of clock cycles per machine instruction, and R is the clock frequency.

What can we do to improve T?


Thomas P. Kelliher
Tue Sep 3 01:12:46 EDT 1996
Tom Kelliher