Ch. 4 Processor fundamentals

4.1 Central Processing Unit (CPU) architecture

Von Neumann model for a computer system

Understanding of the purpose and role of registers

General purpose register

The Accumulator (ACC)

Special purpose registers

Program Counter (PC)

Memory Address Register (MAR)

Memory Data Register (MDR)

Current Instruction Register (CIR)

Index Register (IX)

Status Register (SR)

Purpose and roles of Arithmetic and Logic Unit (ALU), Control Unit (CU) and system clock, Immediate Access Store (IAS)

Arithmetic Logic Unit (ALU)

Control Unit (CU)

System clock

Immediate Access Store (IAS)

How data are transferred between various components of the computer system using the address bus, data bus and control bus

How factors contribute to the performance of the computer system, including processor type and number of cores, the bus width, clock speed and cache memory

How different ports provide connection to peripheral devices, including connection to Universal Serial Bus (USB), High Definition Multimedia Interface (HDMI) and Video Graphics Array (VGA)

Describe the stages of the Fetch-Execute (F-E) cycle

Fetch

Execute

For the whole F-E cycle:

  1. The PC contains the address of the memory location of the next instruction which has to be fetched
  1. This address is then copied from the PC to the MAR using the address bus
  1. The instruction at the address contained in MAR are then copied temporarily into the MDR
  1. The instruction of the MDR are then copied and placed into the CIR
  1. The value in the PC is then incremented by one so that it now points to the next instruction which has to be fetched
  1. The instruction is finally decoded and then executed by sending out signals via the control bus to the various components of the computer system

Using Register Transfer Notation: (fetch stage only)

MAR <- [PC]
PC <- [PC] + 1; MDR <- [[MAR]]
CIR <- [MDR]

Note: square brackets mean the data stored in the entity

[MAR] is the address stored in MAR

[[MAR]] is the data stored at the address stored in MAR

Show understanding of the purpose of interrupts, including possible causes of interrupts, applications of interrupts, use of an Interrupt Service Handling Routine (ISR), when interrupts are detected during the fetch-execute cycle and how interrupts are handled

Reasons for an interrupt to be generated includes:

An interrupt is handled by the following steps:

4.2 Assembly language

Relationship between assembly language and machine code

Different stages of the assembly process for a two-pass assembler

Pass 1

Pass 2

Trace an assembly program

A set of instructions are grouped: data movement, input and output of data, arithmetic operations, unconditional and conditional instructions and compare instructions

Different modes of addressing: immediate, direct, indirect, indexed, relative

Addressing modeUse of the operand
ImmediateThe operand is the value to be used in the instruction
DirectThe operand is the address which holds the value to be used in the instruction
IndirectThe operand is an address that holds the address which has the value to be used in the instruction
IndexedThe operand is an address to which must be added the value currently in the index register (IX) to get the address which holds the value to be used in the instruction

4.3 Bit manipulation

Understand and perform binary shifts: logical, arithmetic and cyclic; left shift, right shift

A shift involves moving the bits stored in a register a given number of places within the register

How bit manipulation can be used to monitor/control a device