3.1 Computer Architecture Flashcards
What are the 5 registers used in the Von Neumann architecture?
- Program counter (PC)
- Memory address register (MAR)
- Memory data register (MDR)
- Current instruction register (CIR)
- Accumulator (ACC)
What is the purpose of the ALU?
Arithmetic Logic Unit
- Carries out calculations on data e.g.
- arithmetic operations: add, subtract …
- logical operations: AND, OR …
- Holds temporary values used during calculations …
- .. in a register called the accumulator (ACC)
What is the purpose of the Control Unit (CU)?
Control Unit
- It contains the Current Instruction Register (CIR) and the Program Counter (PC).
- Manages the flow of data and interaction between the components of the processor
- Signals are generated along the control bus to tell the components of the computer what to d
- Reads/fetches instructions from memory
What is the IAS?
Immediate Access Store
- Used to hold data and instructions before they are processed e.g. registers, RAM, cache
Purpose of the Program Counter (PC)?
- Contains the address of the next instruction to be fetched
- Increments to point to the address of the next instruction to be fetched
Purpose of the Memory Address Register (MAR)
- Holds the address(location) of the current instruction/data to be fetched
- The contents of the PC are copied here and …
- … then transferred along the Address Bus
Purpose of the Memory Data Register (MDR)?
- Temporary storage between the Central Processing (CPU) and primary memory
- Contains the instructions/data after it is fetched from main memory
Purpose of the Current Instruction Register (CIR)?
- Contains the instructions to be decoded
- It is copied from the MDR
Purpose of the accumalator (ACC)?
Holds data (temporarily) that is currently being used in calculations by the Logic Unit
What are the 3 buses used in the Von Neumann architecture?
- Address bus
- Control bus
- Data bus
What is the purpose of the 3 buses used in the Von Neumann architecture?
- Buses are used to connect together the internal components of the CPU
Purpose of the address bus?
- Transports the memory address …
- … between processor and memory
- … of the next item to be fetched
- Data travels one way (unidirectional) CPU -> Memory
Purpose of the control bus?
- Carries (transports) signals …
- … that control the actions of the CPU
- … that synchronise the fetch-execute cycle
- Data can travel one way (unidirectional) or both ways (bidirectional)
Purpose of the data bus?
- Carries (transports) data …
- … that is currently being processed
- … between processor, memory and peripherals(input/output devices)
- Data travels both ways (bidirectional)
Explain how an instruction is fetched in a computer based on the Von Neumann model
- PC contains the address of the next instruction to be fetched
- The address held in the PC is copied to the MAR … and placed on the address bus
- The instruction is transferred to the MDR from the memory location contained in the MAR … using the data bus
- The instruction in the MDR is copied to the CIR
- The PC is incremented by 1
- The instruction is then decoded and executed by the Control Unit
Describe the stored program concept when applied to the Von Neumann model?
- Program stored on a secondary storage device
- Data & instructions are moved to RAM/Memory
- Data & Instructions are stored in the same memory
- Data & instructions are moved to registers to be executed
- Instructions are fetched one at a time and executed one after another
To process instructions the CPU goes through 3 main stages. What are they?
- Fetch
- Decode
- Execute
What is being described?
- Carries out calculations on data e.g.
- arithmetic operations: add, subtract …
- logical operations: AND, OR …
- Holds temporary values used during calculations …
- .. in a register called the accumulator (ACC)
Arithmetic Logic Unit
What is being described?
- It contains the Current Instruction Register (CIR) and the Program Counter (PC).
- Manages the flow of data and interaction between the components of the processor
- Signals are generated along the control bus to tell the components of the computer what to d
- Reads/fetches instructions from memory
Control Unit (CU)
What is being described?
- Used to hold data and instructions before they are processed e.g. registers, RAM, cache
Immediate Access Store (IAS)
What is being described?
- Contains the address of the next instruction to be fetched
- Increments to point to the address of the next instruction to be fetched
Program Counter (PC)
What is being described?
- Holds the address(location) of the current instruction/data to be fetched
- The contents of the PC are copied here and …
- … then transferred along the Address Bus
Memory Address Register (MAR)
What is being described?
- Temporary storage between the Central Processing (CPU) and primary memory
- Contains the instructions or data after it is fetched from main memory
Memory Data Register (MDR)
What is being described?
- Contains the instructions to be decoded
- It is copied from the MDR
Current Instruction Register (CIR)
What is being described?
- Holds data (temporarily) that is currently being used in calculations by the Logic Unit
Accumalator (ACC)
What is being described?
- Transports the memory address …
- … between processor and memory
- … of the next item to be fetched
- … between processor and memory
- Data travels one way (unidirectional)
Address Bus
What is being described?
- Carries (transports) signals …
- … that control the actions of the CPU
- … that synchronise the fetch-execute cycle
- Data can travel one way (unidirectional) or both ways (bidirectional)
Control bus
What is being described?
- Carries (transports) data …
- … that is currently being processed
- … between processor, memory and peripherals(input/output devices)
- Data travels both ways (bidirectional)
Data bus
What is being described?
- PC contains the address of the next instruction to be fetched
- The address held in the PC is copied to the MAR … and placed on the address bus
- The instruction is transferred to the MDR from the memory location contained in the MAR … using the data bus
- The instruction in the MDR is copied to the CIR
- The PC is incremented by 1
- The instruction is then decoded and executed by the Control Unit
Fetching an instruction in the Von Neumann model
The CPU consists of …
- a Control Unit (CU)
- an Arithmetic and Logic Unit (ALU)
- registers
- buses
What is responsible for the execution of instructions and the processing of data
CPU
What 3 factors affect the performance of a CPU?
- Number of cores
- Cache size
- Clock speed
Instruction sets are different for each different CPU architecture. Each instruction is made up of …
An Opcode and an Operand
Each processor instruction is made up of a an opcode and an operand. What does the operand represent?
The operand is the data or memory address
Each processor instruction is made up of a an opcode and an operand. What is the purpose of the opcode?
The opcode informs the CPU what operation needs to be done.
CPU - what is meant by clock speed?
- It determines the number of fetch-decode-execute cycles per second
- The higher the clock speed, the faster a CPU can execute instructions
CPU - what is meant by overclocking?
- A CPU will often have a maximum clock speed recommended by the manufacturer
- You can increase the speed above this in the BIOS, which is known as overclocking
Overclocking can improve the performance of a CPU, but what problem can it cause?
It can lead to overheating
CPU - what is meant by number of cores?
- The number of processors linked on a single chip
- Each core contains an ALU, CU and registers
- A quad core processor contains 4 cores
How does the number of cores affect CPU performance?
- Each core can process instructions simultaneously increasing performance, but ….
- Doubling the number of cores doesn’t necessarily double performance because
- Cores need to communicate with each other and programs need to be written to use multiple cores
CPU - What is meant by cache size?
- The amount of cache memory located within the CPU
- Cache memory stores frequently used instructions and data
How does the cache size affect CPU performance?
Cache memory read/write speeds are much faster than RAM
The larger the cache size, the better the performance
What is an embedded system?
- A combination of hardware and software which is designed to carry out a specific set of functions or tasks
- They are feedback oriented systems that will often contain
- a user interface
- analogue or digital inputs
- some form of output
e.g. security systems
What 3 things can an embedded system be based on?
- microcontrollers - They have a CPU in addition to some RAM and ROM and other peripherals all embedded onto one single chip (together they carry out a specific task)
- microprocessors - An integrated circuit which only has a CPU on the chip (there is no RAM, ROM or peripherals - these need to be added)
-
system on chips - An integrated circuit that combines many elements of a computer system into a single chip.
- This may contain a microcontroller as one of its components (they almost always will include CPU, memory, input/output [I/O] ports and secondary storage on a single microchip)
What are the possible benefits of an embedded system?
- they are small in size and therefore easy to fit into devices
- compared to other systems, they are relatively low cost to make
- they can be controlled remotely using a mobile phone, for example
- they are usually dedicated to one task allowing simple interfaces and often no requirement for an operating system
- they consume very little power
- very fast reaction to changing input (operate in real time and are feedback orientated)
- with mass production comes reliability
What are the possible drawbacks of an embedded system?
- it can be difficult to upgrade some devices to take advantage of new technology
- troubleshooting faults in the device becomes a specialist task
- although the interface can appear to be more simple (e.g. a single knob) in reality it can be more confusing (e.g. changing the time on a cooker clock can require several steps!)
- any device that can be accessed over the internet is also open to hackers. viruses, etc.
- due to the difficulty in upgrading and fault finding, devices are often just thrown away rather than being repaired (very wasteful)
- can lead to an increase in the ‘throw away’ society if devices are discarded just because they have become out-of-date