1/34
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
What is the Accumulator (ACC) in Von Neumann Architecture?
stores results of any calculations that have taken place in the ALU
CPU (Central Processing Unit)
Processes data and information by constantly repeating the fetch-decode-execute cycle
CU(Control Unit)
Decodes instructions and sends signals to control how data moves around the CPU
Control signals and timing signals are sent to the ALU and other components such as RAM
ALU(Arithmetic Logic Unit)
performs simple calculations and logical operations
Register
extremely small, fast memory located in the CPU
Each register has its own specific purpose
What is the purpose of cache memory?
To provide quick access to frequently used instructions and data.
How does cache memory affect CPU performance?
The more cache there is, the more data can be stored, which speeds up CPU performance.
What does cache memory prevent the CPU from doing?
It prevents the CPU from having to repeatedly fetch frequently used instructions from RAM.
What is the Von Neumann Architecture?
A computer architecture that stores both program instructions and data in the same memory (RAM) and in the same format (binary).
The processor can access the instructions and data in the main memory as required to execute the program. It does this by using dedicated connections called buses:
an address bus is used to identify the addressed location
a data bus is used to transfer the contents to/from that location
This means that the same address and data buses are used in the process of transferring instructions and data between main memory and the processor. A third bus, the control bus, is used to synchronise and control operations.
What is Harvard Architecture?
A computer system that stores instructions and data in separate memories.
The processor accesses these memories using separate data and address buses; the processor is connected to the ‘instructions memory’ using a dedicated set of address and data buses, and is connected to the ‘data memory’ using a different set of address and data buses. The Harvard architecture is used extensively in embedded systems, for example in digital signal processing (DSP) systems.
Many microcontroller devices use a Harvard-like architecture. Some types of smartphones use a modified Harvard architecture — although distinctions between modern processors are difficult to categorise in relation to such 'pure' theoretical models.
What are the key CPU components in Von Neumann Architecture?
Control unit, ALU, registers, cache memory.
Also includes secondary storage for saving/backing up data
What is the Program Counter (PC) in Von Neumann Architecture?
A register that holds the address of the next instruction to be executed.
Increments by 1 as FDE cycle runs
What is the Memory Access Register (MAR) in Von Neumann Architecture?
A register that holds the address of where data/instructions are to be fetched from
What is the Memory Data Register (MDR) in Von Neumann Architecture?
stores data/instruction which has been fetched from memory
opcode
An operation code or instructions used in assembly language.
What is an instruction?
An instruction is an action to perform.
operand
One of the values on which an operator operates.
Fetch-Decode-Execute Cycle
the cycle that the CPU runs through billions of times per second to make a computer work.
What happens in the fetch stage of the FDE cycle?
1) The PC keeps the address of the next instruction to be executed. The contents of the PC are copied into the MAR. The PC is incremented by 1 and now holds the address of the next instruction to be fetched. The processor sends a signal along the address bus to the memory address held in the MAR
2)Once the address of the instruction is on the address bus, the control unit instructs a memory read operation to allow the contents of the memory location to be transferred to the processor. The instruction that is stored at that address is transferred using the data bus from the main memory to the processor, and is saved in the memory buffer register (MBR)/memory data register (MDR).
3)The contents of the memory buffer register (MBR)/memory data register (MDR) are copied to the current instruction register (CIR) as shown in Figure 4. This ensures that the current instruction is kept safe so that the memory buffer register (MBR)/memory data register (MDR) can be used during the execute stage, in order to store additional data that is needed.
What happens in the decode stage of the FDE cycle?
1) the control unit decodes the instruction in the CIR
2)this involves splitting the the instruction into operand and opcode to determine what type of instruction needs to be carried out
3)If the operand specifies a memory location, the decode stage might include the initiation of the process to fetch the data needed for the execution of the instruction.
4)Internal register or flags may need to be set up or initialised based on the instruction being executed.
5)The control unit generates specific control signals based on the decoded instruction. These control signals instruct various components of the processor to execute the instruction
What happens in the execute stage of the FDE cycle?
1)The instruction is executed. The exact sequence of operations depends on the type of instruction that is being executed. For example, for an arithmetic instruction, any required data are fetched from the main memory, then the calculation is executed by the ALU, and the result of the instruction is stored in the ACC, a general-purpose register, or back into main memory.
In case the program requires a non sequential instruction to be executed, for example if the current instruction is a branch at this stage, the address of the next instruction to be executed is determined and loaded to the program counter.
Depending on the type of instruction, executing an instruction can involve the ALU and the general-purpose registers, the accumulator, or the main memory.
At the end of a cycle for each instruction, the processor checks the status register to see if an error, exception, or interrupt needs to be handled. For example, if an interrupt is indicated, the control might be transferred to the corresponding interrupt service routine.
what 3 factors affect CPU performance?
Clock speed, Cache size, Number of cores
What is cache?
Very small, very fast memory located in the CPU. Split into different levels
How does cache memory improve performance?
Closer to the CPU than RAM, meaning that it can provide data and instructions to the CPU at a faster rate. A computer with more cache memory should have a faster performance because repeatedly used instructions can be stored and accessed faster (prevents CPU from repeatedly having to fetch frequently used instructions from RAM..
What is the limitation of cache memory?
Costly, so most computers mostly have a small cache
What is clock speed?
The measure (in Hertz) of how many FDE cycles can be completed in one second.
How does clock speed affect CPU performance?
Higher clock speed means that computer performs FDE cycle faster generally leading to improved performance because more instructions can be processed each second.
Overclocking
When the computer’s clock speed is increased higher than the recommended rate. This will make the computer perform faster, but can lead to overheating and could damage the machine.
Underclocking
When the computer’s clock speed is decreased lower than the recommended rate. This will make the computer perform slower but will increase the lifespan of the machine.
What is a core?
A core is a complete set of CPU components (CU, ALU and registers). Each core is able to perform its own FDE cycle. Multiple core processors mean they have multiple separate processing units that can fetch, decode and execute instructions at the same time. Multi-core processors can run more powerful programs with greater ease.
How do the number of cores affect CPU performance?
In theory, a single-core processor can execute one instruction at a time, a dual-core processor can execute 2 instructions at a time, etc.
Therefore, a computer with more cores will have a higher performance because it can process more instructions at once.
They increase the performance of the CPU by working with clock speed
E.g. a quad core CPU(4 cores) running at a clock speed of 3GHz:
4 cores x 3GHz
4 × 3 billion instructions
12 billion instructions per second
What are the limitations of having more cores?
If one core is waiting for another core to finish processing, performance may not increase at all.
Some software is not written to make use of multiple cores, so it will not run any quicker on a multi-core computer.
What is an embedded system?
An embedded system is computer system built into a larger device to provide a means of control (they monitor and control machinery to achieve the desired result e.g. in a dishwasher the embedded system could control the water pump and water release mechanisms, manage the various dishwasher cycles and control the thermostat to keep the water at an appropriate temperature). Perform specific pre programmed task which is stored in ROM.
Properties of an embedded system
small in size
Perform only specific tasks
Use less power than a general purpose computer
Lower cost
Small amount of storage
Examples of embedded systems
heating thermostats
Dishwashers
Washing machines
Traffic lights
Factory equipment
Satellite navigation systems