Section 1 - Components Of A Computer Flashcards
What is the purpose of the CPU?
Central Processing Unit:
The purpose of the CPU is to process data and instructions by constantly repeating the fetch - decode - execute cycle.
What are the components of a CPU?
Registers
Control Unit
Buses
Cache
Clock
What is the Control Unit?
The Control Unit controls and coordinates the activities of the CPU, directing the flow of data between the CPU and other devices.
What are the types of Buses?
Data Bus
Address Bus
Control Bus
What is an Address Bus?
The address bus transmits the memory addresses of words that are used as operands in program instructions, so that the data can be retrieved and sent back to the processor.
What is a Data Bus?
A data bus, typically consisting of 8, 16, 32 or 64 separate lines, provides a bi-directional path for moving data and instructions between system components.
What is a Control Bus?
A control bus is a bi-directional bus meaning signals can be carried in both directions. The data and address buses are shared by all components of the system. Control lines must therefore be provided to ensure that access to and use of the data and address buses by the different components of the system does not lead to conflict.
The purpose of the control bus is to transmit command, timing and specific status information between system components.
What are the Control Lines?
Bus Request: Indicates that a device is requesting the use of a data bus
Bus Grant: Indicates that the CPU has granted access to the data bus
Memory Write: Causes data on the data bus to be written into the addressed location
Memory Read: Causes data from the addressed location to be placed on the data bus
Interrupt Request: Indicates that a device is requesting access to the CPU
Clock: Used to synchronize operations
What is the ALU?
Arithmetic Logic Unit:
The ALU performs arithmetic and logical operations on the data. It can perform instructions such ass ADD, SUBTRACT, MULTIPLY, DIVIDE on fixed or floating point numbers. It can also perform shift operations, shifting bits to the left or right within a register. It can carry out boolean logic operations such as AND, OR, NOT, XOR.
What are Registers?
Registers are special memory cells that operate at very high speed. Results of all arithmetic, logical or shift operations are temporarily stored in registers. Typically there is up to 16 general purpose registers in the CPU.
What are the types of Registers?
Accumulator (ACC)
Program Counter (PC)
Current Instruction Register (CIR)
Memory Address Register (MAR)
Memory Data Register (MDR)
What is the Accumulator (ACC)?
The accumulator stores the result of calculations and logical operations from the ALU.
What is the Program Counter (PC)?
The program counter holds the address of the next instruction to be executed.
What is the Current Instruction Register (CIR)?
The current instruction register hold the current instruction being executed, divided into operand and opcode.
What is the Memory Address Register (MAR)?
The memory address register holds the address of the memory location from which data (or an instruction) is to be fetched or to which data is to be written.
What is the Memory Data Register (MDR)?
The memory data register is used the temporarily store the data read from or written to the memory. It is sometimes known as the memory buffer register.
What is the fetch-decode-execute cycle?
The FDE cycle is the sequence of operations involved in executing an instruction, divided into three phases. Fetching, Decoding and Executing. This cycle is repeated over and over as each program is executed.
How are the registers used in the FDE cycle?
Fetch:
1. The address of the next instruction is coped from the program counter to the memory address register
2. The instruction held at that address is copied to the memory data register. Simultaneously, the content of the PC is incremented so that it holds the address of the next instruction
3. The contents of the MDR and copied to the current instruction register
Decode:
4. The instruction held in the CIR is decoded. The instruction is split into opcode and operand and the opcode is used to determine the type on instruction and what hardware to use to execute it.
The operand holds either:
The address of the data to be used with the operation, which is then copied to the MAR
The actual data to be operated on, which will be copied to the MDR
The data to be operated on may be passed to the ALU/Accumulator
Execute:
5. The appropriate instruction/opcode is carried out on the operand
What are the main factors affecting processor performance?
Clock speed
Number of cores
Cache memory
How does the clock speed affect processor performance?
All processor activities begin on a clock pulse, although some activities may take longer than one clock cycle to complete. One cycle per second = 1 Hertz (Hz) and clock speed is measured in Gigahertz (GHz), about 1 billion cycles per second. Typical speeds for a PC are between 2 and 4 GHz. The greater the clock speed, the faster instructions will be executed
How does the number of cores affect processor performance?
Each core is theoretically able to process a different instruction at the same time with it’s own FDE cycle, making the processor two or even four time faster with a quad-core chip. However, although a dual core processor has twice the power, it does not always perform twice as fast because the software may not always be able to take full advantage of both processors
How does cache memory affect processor performance?
When an instruction is fetched from main memory it is copied into the cache so if it is needed again soon after, it can be fetched from cache which is much quicker than going back to main memory. As cache fills up, unused instructions or data still being held are replaced with more recent ones
What is pipelining?
Pipelining is a technique used by some processors to improve performance. Without pipelining, the steps in the FDE cycle take place on after the other. While the next instruction is being fetched, the ALU, the arithmetic part of the process is idle. Pipelining allows the next instruction to be fetched at the same time as the processor is performing arithmetic or logic operations, holding them in a buffer close to the processor until the instruction can be performed
What is Von Neumann Architecture?
In Von Neumann architecture the same data bus is used to transfer both data and instructions. Similarly, a single address bus is used to transfer the addresses of data and instruction. The same word length is used for all memory, whether it holds data or instructions