7.3 Structure and role of the processor and its components Flashcards
What are the 3 main things do processors contain?
Arithmetic logic unit (ALU), Control unit, Registers
What is the role of the ALU?
To perform arithmetic and logic operations.
What is the role of the control unit?
Responsible for controlling the various components of the processor. It also controls the fetch-decode-execute cycle.
What is the role of the registers?
Small storage locations used to hold data temporarily. Have high read and write speeds.
What is the difference between general purpose and specific purpose registers?
General purpose registers can be used as storage for any data that is required by instructions during execution. Special purpose registers are assigned to the storage of specific information.
What is the role of the Program counter (PC)?
Holds the memory address of the next instructions to be executed in the fetch-execute cycle
What is the role of the Current instruction register (CIR)?
Holds the instructions that is currently being executed by the processor
What is the role of the Memory address register (MAR)?
Stores the memory address of a memory location that is to be read or written from.
What is the role of the Memory buffer register (MBR) or Memory data register (MDR)?
Holds the contents of a memory location that has been read from or data that is to be stored.
what is the role of the status register (SR)?
Contains a number of bits, the values of which can change to indicate the occurrence of an interrupt.
What is the role of the clock?
Generates a timing signal which changes at a regular frequency. Used to synchronise communication between the components of the processor and the rest of the computer system.
Describe the Fetch process in the Fetch-execute cycle?
the next instructions to execute is retrieved from main memory.
1. The content of the Program counter (PC) is copied to the Memory address register (MAR).
2. The content of the Memory address register (MAR) is transferred to main memory by the address bus
3. The instruction is sent from the main memory to the Memory buffer register (MBR) by the data bus
4. The program counter is incremented by 1
5. The content of the Memory Buffer register (MBR) is copied to the Current Instruction register (CIR)
Describe the Decode process in the Fetch-execute cycle?
the fetched instruction is decoded
1. The content of the Current instruction register (CIR) is decoded by the control unit
2. The decoded instruction is split into 2 parts: opcode and operands
Describe the Execute process in the Fetch-execute cycle?
The instruction is carried out
1. Any data required by the instruction that isn’t present in registers is fetched
2. The instruction is carried out
3. Results of any calculation are stored in general purpose registers or main memory
Explain how the computer checks for interrupts?
Between each execute stage and fetch stage of the Fetch-execute cycle the content of the status register is checked for changes that could signify the occurrence of an interrupt.
What is a processor’s instruction set and its compatibility?
The group of instructions that a processor can carry out. Each type of processor has its own instruction set, so instructions for one processor may not be compatible with other processors.
How are you instructions usually stored within a computer system?
they are usually stored in machine code and consist of 2 primary parts: opcode and operands
What does Opcode do?
It specifies the type of operation that is to be carried out
What do Operands do?
they are the pieces of data on which the operation is performed.
What are the 2 addressing modes?
immediate and direct.
How does immediate addressing work?
the value specified in the operand is to be treated as the actual value.
How does direct addressing work?
The value specified by an operand signifies a memory address.
What is Logic shifting?
An operation that can be performed on binary numbers which involved shifting all the bits in a number (doubling or halving the number) a specified number of positions to the left or right.
Define Interrupts?
A signal sent to the processor by another part of the computer requesting the attention of the processor. hardware and software can send interrupts which may result in unexpected errors like division by 0 or stack overflow.
How are interrupts detected
A change in the content of the status register between the execute and fetch stages
How are Interrupts handled? Using the vectored interrupt method.
1) When an interrupt occurs the processor stops executing the current program and places the content of its registers onto the system stack
2) The processor loads the appropriate interrupt service routine (specific to type of interrupt)
3) Once finished the processor restores the volatile environment form the system stack and resumes execution of previous programs
What are the 6 factors that can affect a processor’s performance?
Number of cores, Cache memory, Clock speed, Word length, Address bus width and Data bus width
How does the number of cores affect a processors performance?
Each core can perform its own fetch-execute cycle independently of others, so different applications can be allocated different cores.
How does the Cache memory affect a processors performance?
The more cache a processor has the more information it can store and the more time it can save fetching information from main memory.
How does the clock speed affect a processors performance?
The higher the frequency the more cycles of the fetch execute cycle can be completed in the same period of time. However if the speed Is increased too far it can cause errors
How does the Word length affect a processors performance?
The length of a word is the number of bits that are assigned to it, with higher word lengths allowing for more bits to be transferred and manipulated as a single unit.
How does the Address bus width affect a processors performance?
Increasing the width of the address bus increases the range of addresses that it can specify, hence increasing the computer’s amount of addressable memory. Adding a single wire doubles the number of addressable memory locations.
How does the Data bus width affect a processors performance?
Increasing the width of the data bus increases the volume of data that can be transferred over the bus at any one time. A wider data bus allows the processor to fetch more data from main memory in one cycle of the fetch-execute cycle