1.1.1 Structure And Function Of The Processor Flashcards
What is the CPU?
- Central Processing Unit
- CPU is often described as the brains of the computer
- CPUs contain a clock that sends signals to keep the timing for all the processes
- Carries out all mathematical and logical operations
- Measured in Hertz
1 Hertz?
What is processor speed
1 pulse per second
Processor speed is measured by the number of clock cycles a CPU can perform in a second
Equation: Frequency = 1/time
1 kilohertz?
1000 pulses per second
1 Megahertz?
1,000,000 pulses per second
1 Gigahertz?
1,000,000,000 pulses per second
What is the ALU?
- Arithmetic Logic Unit
- Carries out the calculations (floating point multiplication)/logical operations (comparison tests)
What is the CU?
- Sends out control signals to co-ordinate how the processor works
- Sent via a control bus to connected devices.
- It controls how data moves around the CPU and how it moves between CPU and memory
- Decodes instructions and controls execution of instructions
What is the PC?
- Program Counter
- Holds the address of the next instruction to be executed
- PC keeps track of the memory location of the line of machine code being executed
- It gets incremented by 1 with each FDE cycle
What is the Accumulator?
- Acc stores the results of calculations made by the ALU
- Temporary storage for data being processed
What is the MDR?
- Memory Data Register
- Temporarily stores the data that has been fetched from or stored in memory
What is the MAR?
- Memory Address Register
- The instruction to which the PC is pointing is loaded into MAR
- Stores the address of the data or instructions that are to be fetched from or sent to
What is the CIR?
- Current Instruction Register
- Stores the instruction currently being decoded and executed into opcode and operand
- Small memory location inside the CPU to assist with the fetch-execute cycle
What is the machine code?
- Machine code is the binary representation of an instruction, split into OPCODE and the instruction’s data
- Machine code is effective but not user friendly to programmers
- We solve this using Assembly Code
What is Assembly Code?
- 1 Above machine code, allows the programmer to write code using mnemonics, which represent machine code instructions
- Examples MOV - moves a value to a register. ADD - adds a value and stores in ACC
What is the Little Man Computer?
- Simplified architecture to help students to understand the concept of machine code and instruction sets
- It takes the f_orm of assembly code mnemonics_ and has a limited set of instructions compared to assembly code
- Only has 2 registers : ACC and PC. Data and instructions are stored in memory locations - mailboxes
A Von Neumann computer is a computer that…
- Uses a single processor
- Uses 1 memory for both instructions and data.
- One system bus/ single set of buses
- Executes programs 1 at a time using Fetch-Decode-Execute
- Has special registers , a control unit and ALU
- Program and data in same format
What are Registers and examples?
- Tiny areas of extremely fast memory located in the CPU
- Used to temporarily store data
- PC, MAR, MDR, CIR, Accumulator
- To enable the fetch-decode-execute cycle to operate
What are buses?
- Are a set of parallel wires which connect 2 or more components inside the CPU
- There are 3 buses in the CPU:
- Data bus
- Control bus
- Address bus
What is the Data Bus
- This bus is bi-directional or a set of wires (meaning bits can be carried in both directions)
- Used for transporting data and instructions between components
What is the Address Bus?
- Used to transmit (pass from 1 to another) memory address from CPU to main memory (2 components) where data is to be sent or retrieved from
What is the Control Bus
- It is a bi-directional bus used to transmit control signals from the control unit to internal and external components of the CPU.
- This bus co-ordinates the use of address and data bus and provides status information between system components
What is Pipelining?
- The process of completing fetch, decode and execute of 3 separate instructions simultaneously.
- This reduces the time the CPU is left idle
- the output of one operation is the input to the next
What do Contemporary Processors use in order to improve performance?
- Contemporary processors use a combination of Harvard and Von Neumann architecture.
- Two separate areas of memory -one for instructions & one for data - instructions and data can be accessed concurrently
- Pipelining - whilst an instruction is being executed the next can be decoded and the subsequent one fetched
- Multiple Cores - Each core acts as a separate processing unit
What is the Harvard Architecture?
- Harvard architecture has physically separate memories for instructions and data, more commonly used with embedded processors.
- This is useful for when memories have different characteristics, i.e. instructions may be read only, while data may be read-write.