The stored program concept and processor components

?

The Stored Program Concept

  • Every time a program is run, the processor runs through the fetch-execute cycle.
  • FETCH- the processor fetches the program's next instruction from memory.
  • DECODE- the processor works out what the binary code of the instruction means.
  • EXECUTE- the processor carries out the instruction which may involve reading an item of data from memory, performing a calculation or writing data back into memory.
  • The Control Unit- part of the processor, supervises the fetch-execute cycle. Ensures all the data being processed is routed correctly (to the correct register or RAM).
  • ALU- carries out arithmetic and logic operations. It performs normal maths functions
  • ALU is sent the opcode and the operand
  • The Clock- ALL computers have an internal clock. It generates a signal used to synchronise the operation of the processor and the movement of data around the other components of the computer.
1 of 6

Registers

  • Register- a small section of temporary storage that is part of / inside the processor. Stores data or controls instructions during the fetch-decode-execute cycle.
  • They play a vital role in the operation of the computer.
  • A register must be large enough to hold an instruction
  • There are general purpose registers that can be used by a programmer when creating a program.

There are a number of special purpose registers that you have to learn:

  • Status Register- keeps track of the various functions of the computer such as if the result of the last calculation was positive or negative
  • Program Counter (PC)- Stores the memory address of the next instruction that will be needed by the processor
  • Memory Address Register (MAR)- Stores the memory location of the address that data is either written to or copied from by the processor.
  • Memory Buffer Register (MBR)- Also known as the memory data register (MDR). Holds data that has just been read from or is about to be written to main memory.
2 of 6

Registers

  • Current Instruction Register (CIR)- Holds the instruction that the CPU is currently decoding/executing.

Interrupt Register

  • Stores details of incoming interrupts
  • These have been recieved by the processor from other components attatched to it
  • This will be looked at more for A2.
3 of 6

Fetch Execute Cycle

  • The PC holds the address of the next instruction. The processor sends this along the address bus to the main memory.
  • The contents of the memory location at the address are sent via the data bus to the CIR and at the same time the PC is incremented
  • The details of the addressess are initailly loaded into the MIR and the data initially goes into the MBR.

([X] = Contents of X)

MAR <- [PC]

PC <- [PC] + 1; MBR <- [Memory] Addressed

CIR <- [MBR]

[CIR] decoded and executed

4 of 6

Fetch Execute Cycle

  • The processor then takes the instruction from the CIR and decides what to do with it
  • It does this by referring to the instruction set
  • This is a library of all the things a processor can be asked to do
  • This set is described as either reduced or complex incstruction set (RISC or CISC)
  • Once the instruction has been decoded the processor can carry out the instruction
  • This is the execute bit and once it finished this goes to the fetch
  • A simple instruction might need one clock cycle, a complex instruction more
  • The results of these calculations are written either to a register or to a memory location
5 of 6

Factors affecting processor performance

  • Clock Speed- Measure of performance of the computer
  • It indicates how fast each instruction will be executed
  • In therory, increasing the clock speed increases the speed at which ther processor executes instructions
  • But if other components within the processor are limited it will have little effect on the performance
  • Bus Width- Increasing the width of the data bus means that more bits can be passed down with each clock pulse
  • Address Bus- Increasing the width of the address bus increases the amount of memory that can be addressed and therefore allows more memory to be installed on a computer
  • Word Length- Related to the data bus width. This is a collection of bits that can be addressed and manipulated as a single unit. Commonly 32 or 64 bits.
  • Multiple Cores- Multiple Processors incorporated onto a single chip. Dual core and quad core are common. Core defines the components that enable instructions to be fetched and executed
  • Cache Memory- Instructions and data that are needed frequently are placed in a temporary area of memory that is seperate from main memory. Cache can be accessed much quicker than main memory so programs run faster
6 of 6

Comments

No comments have yet been made

Similar Computing resources:

See all Computing resources »See all The stored program concept and processor components resources »