Characteristics of Contemporary Processors

Cards (64)

  • Buses
    1. Data Bus - Bi-directional bus used for transporting data and instructions between components
    2. Address Bus - Used to transmit memory addresses specifying where data is to be sent to or retrieved from
    3. Control Bus
  • Control Unit

    • Directs the operations of the CPU
    • Controls and coordinates the activities of the CPU
    • Manages the flow of data between the CPU and other devices
    • Accepts the next instruction
    • Decodes instructions
    • Stores the resulting data back in memory
  • Components of a Processor
    • The processor is the brain of a computer
    • It executes instructions which allows programs to run
  • Arithmetic and Logic Unit (ALU)
    • Completes all arithmetical and logical operations
    • Arithmetical operations include mathematical operations such as addition and subtraction on fixed or floating point numbers
    • Logical operations include boolean logic operations such as AND, OR, NOT, and XOR
  • Buses are a set of parallel wires which connect two or more components inside the CPU
  • Registers
    1. Program Counter (PC) - Holds the address of the next instruction to be executed
    2. Accumulator (ACC) - Stores the results from calculations
    3. Memory Address Register (MAR) - Holds the address of a location that is to be read from or written to
    4. Memory Data Register (MDR) - Temporarily stores data that has been read or data that needs to be written
    5. Current Instruction Register (CIR) - Holds the current instruction being executed, divided up into operand and opcode
  • Assembly language
    Uses mnemonics to represent instructions, a simplified way of representing machine code
  • Arithmetic pipelining breaks down arithmetic operations and overlaps them as they are performed
  • Fetch-Decode-Execute Cycle
    Sequence of operations to execute an instruction: Fetch phase copies address from PC to MAR, instruction from that address to MDR, increases PC contents by 1, copies MDR value to CIR. Decode phase splits CIR into operand and opcode. Execute phase executes the decoded instruction
  • Factors affecting CPU performance
    • Clock speed
    • Number of cores
    • Amount and type of cache memory
  • Control Bus
    Bi-directional bus used to transmit control signals between internal and external components, coordinates the use of address and data buses, provides status information between system components
  • Address Bus

    Used to transmit memory addresses specifying where data is to be sent to or retrieved from
  • Instruction pipelining aims to reduce the amount of CPU idle time by completing multiple stages of instruction execution simultaneously
  • System clock determines the clock speed of the CPU by generating signals switching between 0 and 1
  • Pipelining
    Process of completing fetch, decode, and execute cycles of three separate instructions simultaneously, holding appropriate data in a buffer until required
  • Control signals
    • Bus request
    • Bus grant
    • Memory write
    • Memory read
    • Interrupt request
    • Clock
  • Assembly code

    Instruction divided into operand and opcode in the Current Instruction Register, operand contains data or address of data, opcode specifies type of instruction to be executed
  • Clock speed

    Time taken for one clock cycle to complete
  • Contemporary processors
    Use a combination of Harvard and Von Neumann architecture
  • Factors affecting CPU performance
    • Clock speed
    • Number of cores
    • Amount and type of cache memory
  • Von Neumann Architecture

    Includes basic components of the computer and processor with shared memory and shared data bus for both data and instructions
  • Cache Type
    • Level 1 Cache: Very fast memory cells with a small capacity (2-64KB)
    • Level 2 Cache: Relatively fast memory cell with a medium-sized capacity (256KB-2MB)
    • Level 3 Cache: Much larger and slower memory cell
  • Cache memory
    CPU's onboard memory where instructions fetched from main memory are copied for quicker access
  • Advantages of Von Neumann Architecture
    • Cheaper to develop
    • Programs can be optimised in size
  • Harvard Architecture
    Physically separate memories for instructions and data, commonly used with embedded processors
  • Number of cores
    Independent processors that can run their own fetch-execute cycle
  • Advantages of Harvard Architecture
    • Quicker execution as data and instructions can be fetched in parallel
    • Memories can be different sizes, making more efficient use of space
  • Program Counter(PC): Holds the address of the next instruction to be executed
    Accumulator (ACC): Stores the results from calculations
    Memory Address Register (MAR): Holds the address of a location that is to be read from or written to.
    Memory Data Register (MDR): Temporarily stores data that has been read or data that needs to be written
    Current Instruction Register (CIR): Holds the current instruction being executed, divided up into operand and opcode
  • Types of Processor
    • RISC Processor
    • CISC Processor
  • CISC Processors
    Processors with a large instruction set aiming to accomplish tasks in as few lines of assembly code as possible, with instructions built into the hardware
  • Parallel Systems
    Systems that can complete tasks with a single core by using threading, generally perform better in larger projects than parallel systems
  • RISC Processors
    Processors with a small instruction set where each instruction is approximately one line of machine code and takes one clock cycle
  • Multi-core Systems
    CPU systems with multiple independent cores that can complete instructions separately, resulting in higher performance
  • Graphics Processing Unit (GPU) is a device with lots of independent processors working in parallel, making it efficient at completing repetitive tasks such as image processing and machine learning, and is a type of co-processor designed to supplement the activities of the primary processor
  • Input devices
    • Keyboard
    • Webcam
    • Magnetic stripe reader
    • Barcode reader
  • Output device
    • Can be used to send information from the computer
  • Output devices
    • Speakers
    • Printers
    • Projector
  • Important things to consider when purchasing an input device include the speed and accuracy of input, data transfer rates, recording detail, cost, and relevance
  • Input device
    • Can be used to put data and information into a computer
  • Optical storage
    Read from and written to using lasers, binary information represented by portions of the disc reflecting or scattering laser light, written in spiral tracks on the disc's surface