Computer architecture deals with the logical and physical design of a computer system. The Instruction Set Architecture (ISA) defines the set of machine-code instructions that the computer's central processing unit can execute. The microarchitecture describes the design features and circuitry of the central processing unit itself. The system architecture (with which we are chiefly concerned in this section) determines the main hardware components that make up the physical computer system (including, of course, the central processing unit) and the way in which they are interconnected. The main components required for a computer system are listed below.
- Central processing unit (CPU)
- Random access memory (RAM)
- Read-only memory (ROM)
- Input / output (I/O) ports
- The system bus
- A power supply unit (PSU)
In addition to these core components, in order to extend the functionality of the system and to provide a computing environment with which a human operator can more easily interact, additional components are required. These could include:
- Secondary storage devices (e.g. disk drives)
- Input devices (e.g. keyboard, mouse, scanner)
- Output devices (e.g. display adapter, monitor, printer)
A distinction is usually made between the internal components of the system (those normally located inside the main enclosure or case) and the external components (those that connect to the internal components via an external interface. Examples of such external components, usually referred to as peripherals, include the keyboard, video display unit (monitor) and mouse. Other peripherals can include printers, scanners, external speakers, external disk drives and webcams, to name but a few. The Internal components usually (though not always) include one or more disk drives for fixed or removable storage media (magnetic disk or tape, optical media etc.) although the core computing function does not absolutely require them. The relationship between the elements that make up the core of the system is illustrated below.
The core components in a personal computer
The core system components are mounted on a backplane, more commonly referred to as a mainboard (or motherboard). The mainboard is a relatively large printed circuit board that provides the electronic channels (buses) that carry data and control signals between the various components, as well as the necessary interfaces (in the form of slots or sockets) to allow the CPU, Memory cards and other components to be plugged into the system. In most cases, the ROM chip is built in to the mainboard, and the CPU and RAM must be compatible with the mainboard in terms of their physical format and electronic configuration. Internal I/O ports are provided on the mainboard for devices such as internal disk drives and optical drives.
Exploded view of personal computer system
External I/O ports are also provided on the mainboard to enable the system to be connected to external peripheral devices such as the keyboard, mouse, video display unit, and audio speakers. Both the video adaptor and audio card may be provided "on-board" (i.e. built in to the mainboard), or as separate plug-in circuit boards that are mounted in an appropriate slot on the mainboard. The mainboard also provides much of the control circuitry required by the various system components, allowing the CPU to concentrate on its main role, which is to execute programs. We will be looking at the individual system components in detail in later sections.
Some of the external I/O ports found on a typical IBM PC