Architecture - Identify and describe the main components of contemporary computer architecture, including Von Neumann architectures
Hardware - Physical parts of a computer system e.g. devices you can physically touch such as the keyboard, mouse, processor, monitor, printer, hard drive, scanner, DVD drive etc.
Software - Consists of programs, routines and procedures that can be run on a computer system e.g. MS Office, Adobe Creative Cloud, Windows Operating System.
Peripheral - Piece of equipment that can be attached to the computer system (Central Processing Unit). They can be used to provide input, output and backing storage for the computer system e.g. a printer, scanner etc.
Processor - The processor, (Central Processing Unit - CPU), is the 'brain' of the computer. The CPU consists of the registers, arithmetic and logic unit (ALU), the control unit. It performs all of the arithmetic calculations, every program instruction are interpreted and executed here and every item to be placed in memory or retrieved passes through the CPU.
Operating System - Is a program or suite of programs that controls the entire operation of the computer, handling input/output operations, interrupts and user requests. It acts as an interface between the hardware and the user.
Main Memory - Main memory consists of RAM and ROM. It holds data and instructions and the instructions dictate the action to be taken on the data. Main Memory is sometimes referred to as the Immediate Access Store. RAM is Random Access Memory, it is volatile and is used to store user data and user programs. It is a temporary store. Volatile means the data is lost when the power is switched off. ROM is Read Only Memory. It is non-volatile and is used to store programs that are permanently held in memory. The bootstrap loader is an example of this.
MEMORY:
Main Memory
PERIPHERALS
Keyboard
Monitor
Hard Disk Drive
I/O Ports (Input/Output Ports)
Keyboard Controller
Disk Controller
VDU Controller (Visual Display Unit) i.e. monitor
Note the controllers are not directly connected to the processor otherwise every time there was a new device created the processor would have to be redesigned to cope with it. The above diagram is a representation of an electronic circuit board which has an interface to connect to the buses, devices and status registers.
Some of the internal components of a computer system are the processor, main memory, control bus, address bus, data bus, keyboard controller, VDU controller and the disk controller. These are illustrated in the diagram opposite.
In terms of computer hardware, the term 'bus' means a channel to carry data within the computer. A bus a set of parallel lines connecting independent components.
Address Bus - One way, carries the address of the appropriate memory location for storage/retrieval. When the CPU wishes to access a particular location, it sends this address to memory on the address bus.
Control Bus - Two way; Carries control signals for read/write operations etc and also carries status information. It transmits commands, timing and specific status information between system components e.g. Memory Write/Read; I/O Write/Read; Bus Request/Grant; Clock; Reset.e.g.
MEMORY WRITE causes DATA on the DATA BUS to be written into the ADDRESSED location.
I/O READ - causes DATA from the ADDRESSED I/O port to be placed on the DATA bus.
I/O WRITE - Causes data on the data bus to output the addressed I/O port.
BUS REQUEST - Indicates a components needs to gain control of the system bus.
BUS GRANT - indicates that a requesting component has been granted control of the SYSTEM bus.
CLOCK - Used to synchronise operations.
RESET - Initialises all components.
Data Bus - 2 way. Carries data between processor and storage devices for storage/retrieval. Sends the data from a location to the CPU along the data bus. If the data bus consists of 8 lines the largest denary value that could be transferred in one go is 255 ( 28 -1).
When the first computer was built in the 1940s, Alan Turing and John von Neumann came up with the concept that a machine would hold in a single store (MAIN MEMORY) both the instruction (PROGRAM) and the DATA on which the instructions were to be carried out. It was on this concept that machines are still built today. Computer systems built using the von Neumann architecture use the Stored Program Concept.
A machine that would hold in a single store (main memory) both the instructions (program) and the data on which the instructions were to be carried out. Virtually all computers today are built on this concept. Program/machine code instructions stored in main memory temporarily and available to be used by the processor. The instructions can be fetched and executed and can be replaced by another program any time.
Component A = Control Unit
The Control Unit fetches each instruction in sequence, decodes and synchronises it before executing it by sending control signals to other parts of the computer.
Component B = ALU (Arithmetic and Logic Unit)
The processing and manipulation of data which normally consists of arithmetic operations or logical comparisons, allowing a program to take decisions.
Directs the flow of instructions and/or data
Coordinates the other parts of the CPU
Generates clock ticks or controls the clock
The Control Unit/Clock Manages the Fetch/ Decode/ Execute cycle OR Fetches each instruction in sequence, decodes and synchronises it by sending control signals to other parts of the computer. The system clock generates a continuous sequence of pulses to step the Control Unit through its operation. The clock synchronises its operations all of the time, not just when requested.
The ALU performs all the mathematical calculations and logical operations in the CPU.
The processing and manipulation of data which normally consists of arithmetic operations or logical comparisons, allowing a program to take decisions.
• A small amount of fast access/temporary storage typically addressed by mechanisms other than main memory. storage
• Normally used for a specific purpose where data or control information is temporarily stored
A register is a high speed memory location that has a name not a number. A register can hold a 'word'. Unlike memory in main store it does not have an address but has instead a name. The accumulator, which is part of the ALU is a register, the IR (instruction Register) and the PC (Program Counter) are registers which are part of the Control Unit.
• Processor register that indicates where a computer is in its program sequence.
• Register of a computer's control unit that contains the data to be stored in the computer storage (e.g. RAM), or the data after a fetch from the computer storage.
• Register that either stores the memory address from which data will be fetched to the CPU or the address to which data will be sent and stored. In other words, MAR holds the memory location of data that needs to be accessed.
• Register that holds the instruction currently being executed.
Smaller, faster memory, closer to a processor core
Stores copies of the data from frequently used main memory locations
Most CPUs have different independent caches, including instruction and data caches, where the data cache is usually organized as a hierarchy of more cache levels (L1, L2, etc.)
Cache memory can be accessed by a CPU more quickly than it can access regular RAM to execute frequently accessed items of code (e.g. loops).
• Buses (Data Bus / Control Bus / Address Bus) - They connect all the internal components of a computer, such as CPU and memory, to the motherboard. Buses are channels of communication used to transport data and instructions in the CPU. The bus is sometimes called a highway and is a common pathway shared by signals to and from several components of a computer. A bus can be 1, 4, 8, 16, 32, 64 bits wide. If data is transferred a byte at a time, the bus will consist of 8 separate wires, one for each bit.
Bus - A set of parallel wires connecting two or more components of a computer.
Data Bus - carries the actual data and instructions to be processed. Data bus - carries the actual data between the processor and other components. Buses connect to different components but only one component can transmit at one time. Control lines ensure conflicts do not occur.
Address Bus - carries an identification about where the data are being sent e.g. memory locations. Address bus - carries memory addresses from the processor to other components such as primary memory and input/output devices.
Width of the Address Bus - If the address bus is 8 bits wide it can address 28 (256) different memory locations. So, if the bus is 'n' bits wide then 2n different locations can be addressed. If an address bus is 16 bits wide, the maximum number of addressable memory cells is 216 which is 65,536 (i.e. 64K) bytes,
Control bus - carries control signals from the processor to other components. The control bus also carries the clock's pulses. The control bus transmits timing and status information between components. It transmits command signals which specify operations to be performed such as read or write. It also ensures that access to and use of the data and address buses by different components does not lead to conflict. Typical control lines on the control bus include:-
Bus Request - indicates that a computer needs to gain control of the system bus.
Bus Grant - indicates that a requesting component has been granted control of the system bus.
Sometimes your computer may not be performing as well as it should. The CPU chip itself can affect the performance of your computer system. When looking at the CPU performance it is important to consider factors such as the cache size, clock speed and the number of cores.
Cache Memory
If you were comparing a CPU and one had 4MB and the other had 8MB of cache. The CPU with the higher cache will allow more data/instructions that are repeatedly used by the CPU to be stored, increasing performance as a result.
Clock speed
Clock speed of the CPU is measured in hertz e.g. 5 ghz. A faster clock speed will be able to run the fetch-decode-execute cycle faster as it will be able to process more instructions. However, the down side is it would require more power, which creates greater requirements for heat dissipation and costs more to run.
Number of Cores
You may come across terms such as 'number of cores' when looking at the specification of a PC. For example, a quad core processor in theory is able to process four instructions at the same time, whereas a dual-core CPU can only process two instructions at the same time. (Concept of twice as many).
However, sometimes performance may be affected where one core is waiting on the result of another and therefore cannot carry out any more instructions, leading to the performance of a quad core processor being no better than a dual core processor.
Computer Performance can also be determined by the Word Size and Bus Size.
Word size refers to the number of bits that can be processed simultaneously.
The term 'word' means the number of bits that can be processed as a single unit by the processor.
Bus size refers to the numbers of bits that can be transmitted together.