Structure and Function of the Processor Flashcards
What is the function of the ALU (Arithmetic Logic Unit)
Performs all of the processor’s Logical and Arithmetic operations
Give examples of Logical Operations
AND, OR, NOT, NAND, NOR, XOR
Give examples of Arithmetic Operations
Addition or Subtraction on Fixed or Floating Point numbers
What is the function of the Control Unit?
Monitors communications between Hardware in the computer
What are the Control Unit’s jobs?
Decoding Instructions
Storing the resulting data back in memory
Accepting the next instruction
What are Registers?
Small memory cells that temporarily store data.
All arithmetic, logical and shift operations occur within registers
Give examples of the CPU’s registers
Program Counter (PC)
Accumulator (ACC)
Memory Address Register (MAR)
Memory Data Register (MDR)
Current Instruction Register (CIR)
What is the function of the Program Counter (PC)?
Holds the address of the next instruction to be executed
What is the function of the Accumulator (ACC)?
Stores the results of ALU calculations
What is the function of the Memory Address Register (MAR)?
Holds the address of a location to be read from/written to
What is the function of the Memory Data Register (MDR)?
Temporarily stores the data that has been read/needs to be written to from the address in the MAR
What is the function of the Current Instruction Register (CIR)?
Holds the current instruction to be executed
What are Buses?
A set of parallel wires which connect two or more components in the CPU so that they can transfer data.
The number of bits that can be transferred simultaneously is to increase the Width of the wire.
What are the 3 buses inside the CPU?
Data, Address and Control
What is the function of the Data Bus?
Transports data and instructions between components.
Bi-directional
What is the function of the Address Bus?
Transmits the memory addresses specifying where data is to be sent to or retrieved from. Uni-directional
What is Assembly Code?
A simplified way of representing machine code using mnemonics. Structured using Opcode and Operand.
(i.e., ADD represents addition, LDA represents load)
What is Opcode in Assembly Language?
(Operation Code)
Represents the type of instruction to be executed.
(ADD, LDA, STA, BRP, BRN, etc)
What is Operand in Assembly Language?
Contains the address of the data that will have an operation performed
for example: ADD 5 (5 is the operand)
What is the purpose of Addressing Mode in Assembly Language?
Specifies how the Operand is used
What is Pipelining?
The process of completing the Fetch, Decode, Execute cycle of three separate instructions simultaneously, holding the appropriate data in a buffer in close proximity to the CPU until its needed.
Whilst one instruction is being executed, another is being decoded and another fetched.
What is Instruction Pipelining?
Divides incoming instructions into a series of sequential steps performed by different processor units.
Different parts of instructions are processed in parallel
Explain the Fetch, Decode, Execute cycle.
Address from PC is copied into MAR.
Instruction from address is copied into MDR by Data Bus.
PC increments by 1.
The value held in MDR copied into CIR.
Contents of CIR split into Opcode and Operand.
Decoded instruction is executed.
What are the 3 main factors that affect CPU performance?
Clock Speed
Number of Cores
Amount and Type of Cache memory