BlueAdmiral.com

 

 

Processor technology

 

The CPU is a unit responsible for processing program instructions, as well as communicating with and controlling other functional units of the computer. The CPU will handle each job as it enters the computer system, as well as handle each process within each job. The main function of the CPU is to fetch, decode and execute program instructions stored in main memory which is external to the CPU unit.
The CPU is sometimes considered to be the brains behind the computer system, it will initiate or perform storage requirements, reference stored data, manipulate data and input/output operations.

A typical fetch, execute and decode cycle will look like this:

  • Fetch instruction from memory to an instruction register.
  • Change the Program Counter (increment) to point to next instruction.
  • Determine type of instruction just fetched.
  • If instruction uses data in memory, determine its location.
  • Fetch the data from memory into internal CPU register.
  • Execute instruction.
  • Store results.
  • Repeat previous steps to execute next instruction.

The performance, design and speed of the CPU dictates the performance and speed of the complete computer system. For example, data processing cannot be faster than that permitted by the CPU. A range of different process technologies exist, including microprocessors by Motorola and Intel.

Two common processor designs include CISC and RISC. The Complex Instruction Set Computer (CISC) design may result in complex instructions taking longer than one clock cycle to execute a program instruction. Examples of the CISC processor chips include the Intel range of chips, including the new Pentium range.

The Reduced Instruction Set Computer (RISC) design executes instructions quicker than the CISC design due to the chip's simplified instruction set. The RISC chip can on average run up to 10 times faster than the CISC chip. Examples of RISC processor chip include the Motorola chip used in a number of the Apple Mackintosh range of computers.

The Arithmetic Logic Unit
The Arithmetic Logic Unit (ALU) houses a number of very fast general and specific registers that act as special storage areas. It performs all computations (arithmetic) and a range of Boolean (logic) operations. Examples of Boolean operations include 'And', 'Or', 'Compare', 'True' and 'False'. Arithmetic and logic operations are carried out using comparisons and number complementing, where the results are then stored in a register called an Accumulator.

The control unit
This unit is responsible for handling the interpretation and execution of received programming instructions - in other words it controls what goes on inside the CPU. It reads and understands given instructions before calling up the help of one of the CPU's internal processors. It acts like a traffic policeman, aiming to co-ordinate all the operations within the CPU. The control unit will then direct the orderly flow of programs and data in and out of random access memory and communicates with the ALU.

The resisters
Registers can be special purpose (with one permissible function) or general purpose (where data are temporarily stored). Special purpose registers include the Accumulator, the Instruction Register and the Address Register. These fast access registers provide temporary storage areas within the CPU for undertaking a range of computations.

Processing speed
Large amounts of data are quickly moved around a computer systems in times measured in fractions of a second. The speed of a processor on a PC is measured in megahertz, where one megahertz is equal to 1 million machine cycles or operations per second. This is sometimes known as clock speed. The speed of the processor used in high-end (or super) PCs and mainframes are measured in millions of instructions per second (MIPS). Supercomputer speeds are measured in floating point operations per second (FLOPS). A floating point operation is used to calculate very large, or very small, numbers - for example those found in scientific calculations. It is not unusual for a program instruction to take longer than one machine cycle to execute the CPU, this action would typically be managed by the Process Manager (discussed in detail later).

Computer system clock
A critical support mechanism for any processor is the computer system clock. The clock is responsible for the actual time measurements and is given in electrical frequencies which translate into computer-readable digital pulses. It basically provides the CPU with a signal at regular intervals. The clock speed of the early Intel 8088 CPU was 4.67 MHz, the later Intel 80486 (486 PC) provided increased clocks speeds of between 25-100 MHz. The clock speeds of the newer Pentium processors now exceed the 200 MHz barrier.

Hierarchy of memory
The memory components can be classified into three main groups, forming a hierarchy of storage devices as shown in the following diagram. Typically the smaller and faster the device the more expensive it is.

Main memory
The main memory is the computer's short-term ~iorage area. This is sometimes called main storage, primary storage, internal memory or RAM, though RAM (Random Access Memory) really applies to the storage method. The main memory stores:

  • essential operating system programs
  • working programs (that is instructions within the active software)
  • input data for processing
  • output data as a result of processing.

In addition there will be an area that will, for example, temporarily store the results of calculations or the contents of a newly created (open) word-processed document. It will also temporarily store data awaiting further action, for example a word-processed letter awaiting printing. All computer systems have a main memory where active data and program instructions are stored temporarily or permanently. The size of the main memory will dictate the amount of data and the size of program used at any one time. The size and permanency of the storage space will be different according to the specific computer installation. Size is measured in kilobytes and the permanency of data is dependant on the type of chip. The memory size will have a direct impact on the size of a program (or instruction) allowed into memory and the amount of data permitted to be processed using the program at any one time. Access to the main memory is relatively quick when compared with access to secondary storage. But main memory is usually restricted in size due to its cost when compared to secondary storage, although a variety of main memory expansion options do exist.

RAM
Random Access Memory (RAM) refers to the method in which the memory is used. This refers to bow data are stored and accessed from storage. Data are randomly placed on the storage device, and as a result of some kind of addressing mechanism the data can be dynamically retrieved. The RAM can be likened to a working storage area where the computer will temporarily place active (or dynamic) data, in other-words those data actually being used or generated by a program. RAM is described as being a 'volatile' type of storage as the data will be lost once the computer power is switched off, or lost as a result of a power failure. It provides high speed memory that allows for both active program instructions and data to be stored together during processing. Typically the larger the RAM the faster the processing. If for example the RAM had a 16 MB capacity and required to use a program that exceeded this figure, the RAM would only be able to accommodate part of the program. There would be a time delay as the remaining program instructions would have to be accessed from secondary storage. The computer's motherboard will hold the RAM chips.

RAM/Storage capacity
This can be defined by the number of bytes that can be stored on the given medium. RAM is measured in megabytes (MB). A personal computer using standard Microsoft Windows software with typical packages such as MSWord and Excel is unlikely to require less than 8MB of RAM, however, you are more likely to have much more RAM in order to effectively use today's application software and games.

SIMM
The most common RAM chips are Single Inline Memory Modules (SIMMs). The typical PC motherboard is designed to allow for further expansion, that is, further RAM chips can simply be slotted on to the motherboard, resulting in an increase in memory capacity. Two sizes available include the 30 pin and the 72 pin SIMMs. Some motherboards can accept a mixture of the SIMM sizes, although the 30 SIMM is far more common with lower specification motherboards and the higher SIMM with the high-end motherboard. Typically you will have to install the SIMMs in groups, that is SIMMs of identical size (and to be on the safe side manufacturer) should be placed on the motherboard in paired slots.

ROM/Static data
Static data, or those data that rarely change but are frequently used by the computer system, are stored within Read Only Memory (ROM). These essential data are typically placed on a ROM chip at the time of manufacture of the computer system. As the storage is non-volatile the data are not lost when power to the computer is lost or switched off. Typical data stored in this area might be described as being 'firmware', this includes for example the operating system program and other software that controls essential peripherals such as the keyboard.

Other chips
Other types of non-volatile storage are available, including the following:

  • Programmable Read Only Memory (PROM) where the user can program the data on to the chip which is then permanently stored on the chip.
  • Erasable Programmable Read Only Memory (EPROM) that will also allow data to be programmed on to the chip. The contents stored on the EPROM can be electronically erased using ultraviolet technology. This allows for further re-programming of the chip, bowever the chip has to be physically removed from the computer.
  • The contents of the Electrically Erasable Programmable Read Only Memory (EEPROM) chip can also be erased and reprogrammed using a special program, thus avoiding the need to remove the chip from the computer. The memory is still described as being non-volatile as data are not lost when power to the computer is switched off

Main memory and secondary storage can be classified in terms of cost, storage capacity and speed of access to the storage. However, the year 1998 has seen staggering changes to memory technology, including a substantial drop in chip prices due to changes in econOmic climates and the vast technological improvements in both chip design and materials used. Likewise, the prices of secondary storage has dropped. Both main memory and secondary storage has benefited from these price reductions and increased storage capacities.

Access speed
The main memory provides a working area for the computer during critical operations, such as for example processing. It is essential that the access to the storage is quick and free of as many mechanical interventions as possible, for example the moving of a head to read a disk. Quick access is required.
Access speed can be defined as the time taken to retrieve and move a requested piece of data ready for use. This is measured in KiloHertz (KHz).

Other memory
The CPU is always faster than the memory devices. To avoid the processor sitting idle waiting for access to memory, a range of memory devices and speeds are used.

Cache
The cache memory is a device that offers high speed memory; it is located alongside the CPU and also uses similar technology to the registers housed on the CPU. On computer start-up the cache memory is effectively empty. As words are retrieved from main memory they are stored in cache until they are required again. Access time is reduced as the CPU and the cache are directly linked, so there is no requirement to ~ise the bus. The Cache memory chip provides additional support to the computer's main memory. It can be thought of as a direct link between the processor and the RAM. It is faster and more expensive than the standard RAM chips, but it has a smaller capacity. Notably, cache can operate at the same speed as the CPU. The Cache chip can enhance the RAM performance and subsequent throughput. The cache chip stores critical and frequently used program instructions required only by the processor. Less time is wasted swapping data in and out of RAM.

VRAM
The Video Random Access Memory (VRAM) chip aims to off-load some of the demands on the memory made by graphic intensive programs, for example those commonly found with computer games. It specifically stores graphical images required by the display unit. Nowadays, a minimum of 1MB is required for a standard PC configuration. The VRAM used determines the number of colour combinations possible, display resolution and transfer speed to monitor. You will normally find the VRAM chip located on a video adapter card.

BIOS
The BIOS ROM (Basic Input/Output System) stores the essential input/output information required and is located on a ROM chip resident on the Motherboard. On switching on the computer the BIOS is accessed through a boot-up program. This chip acts as an interface between the devices and the relevant software applications, ensuring that each component works together. On power-up of the computer the BIOS will undertake a number of system checks and initialization steps. It establishes itself as an interface between the hardware and the software.

 

Communications channel/bus

Bi-directional bus
The bi-directional bus (often simply known as a 'bus') is an essential piece of hardware that effectively joins together the ALU, memory, control unit and other parts of the computer. It is a transmission path that consists of both a data bus and an address bus. The bus allows a data word to travel in parallel to and from the computer's processor, control unit, ALU, and other supporting devices. The bus width determines the size of data word allowed to travel along the bus. It can be likened to a motorway, where the more lanes that are provided, the more cars can travel at one time without causing congestion.
The speed of data transmission along the bus is determined by the cyclic speed itself (MHz), the size of the word and the number of bits in the data bus. The bus is made up of three main sections, the Data Bus, Address Bus and Control Bus.

The data bus
Each data bit (equivalent to a car) is in effect an electrical signal than can travel both directions (1 bit at a time) along the transmission medium. Each electrical signal requires its own wire (a 'motorway lane') to transmit the signal along. A 16 bit bus would therefore consist of 16 wires forming the data bus, thus allowing the simultaneous transmission of 16 bits of data. Throughput can be increased if the data bus is expanded, however this will ultimately be restricted by the capacity of the CPU.

The address bus
The bus also requires additional wires for the address bus which is responsible for sending addresses for data source and data destination along with the actual data. It has no direct impact on the speed of throughput, or the overall computer. It must however, be large enough to be able to uniquely address every location in the main memory.

The control bus
Additional wires are also required for the control bus. The control bus supervises the use of the transmission medium, establishing the direction and timing of data signal, for example if data are input or output. It provides information on the status of the transmission medium, for example showing if lines are busy or not.

There are a number of different bus architecture available, including the ISA (Industry Standard Architecture) which provides for an 8-24 bit bus capacity on an IBM platform, and NuBus which provides for a 32 bit bus capacity on an Apple platform. The ISA is probably the most common example with a standard PC. The small bus size typically results in slow throughput and waiting time by the processor where the typical processor is 32 bit. A number of other platforms exist, including the Extended Industry Standard Architecture (EISA) providing for 32 bits at speeds up to 8.33 MHz, Peripheral Component Interconnect (PCI) providing for 32/34 bits at speeds up to 32 MHz, Video Electronics Standard (VESA) providing for 32 bits at speeds up to 50 MHz, Advanced Graphics Port (AGP) providing for 64 bits at speeds up to 128 MHz, others include for example, Small Computer System Interface (SCSI) and the Universal Serial Bus (USB).

Input/output devices
Regardless of the type, all computers will require facilities to allow input, processing, output and storage. The main computing functions of a computer really only involves two of its functional components, namely the CPU and the memory. The function of the other components is to take care of all communications with the outside world. These components can sometimes be grouped together under the beading input/output (I/O). An input device basically converts a signal from the 'real-world' into a format of data bits (electrical pulses) that the machine can read. When a device is attached to a computer it is considered to be on-line. Data are input or output directly to or from the I/O device. Off-line data input might include data saved from another computer and stored to a disk or a magnetic tape, for example. These data can then become a batch of data used as input on another device.

Input devices
An input device will allow some type of data to be input to the computer system to await fuither manipulation, for example processing. The most common form of input device is the keyboard, closely followed by the mouse. Some input devices are known as 'source data entry devices' which allow for automated data entry. Examples include scanners for bar-codes and voice recognition devices. A computer system will have at least one input device, typically the keyboard, but most computer systems will have many more input devices on the same configuration.

Output devices
An output device will allow the processed data to be presented in a required format. It basically turns the signal from the 'computer-world' into a format understood by the human world. Typical output devices include monitors and printers. A typical PC might have up to 4 comms ports for serial use, (for example to accommodate a mouse, modem, scanner and so on), and 3 parallel ports for use with printers, tape back-up drives and so on.

Secondary storage
Further storage facilities exist within secondary (sometimes known as backing or auxiliary) storage. Unlike main memory this storage is located outside of the CPU. Advantages of secondary storage include its greater storage capacity (or space), its reliability, portability and its non-volatility. It provides good value for money, being scales of magnitude cheaper than primary storage. Speed of transfer of data might be a consideration. Improved access speeds could be obtained where the storage devices where permanently on-line and not shared. However, in a working situation it is probably more likely to have for example a back-up tape drive that can be connected on and off line and so shared between devices. The storage is not normally controlled by the CPU, instead it is directed by the Input/Output (or Device) Manager who calls the data into the main memory when for example processing of data is required. Mechanical support is required to, for example, move a head to read the specified hard disk drive. As a result access and data transfer is far slower than that provided by main memory. However, the volume of storage capacity is usually far greater. Normally, secondary storage is non-volatile as data are not lost when power to the computer is switched of, however as with EPROM the storage is re-useable when desired by the user.

Summary

This section has examined the typical organization of a computer system and its main elements. We have identified the role of the CPU and its main components. Processor technology in general has been reviewed, in particular we have looked at the characteristics of both the Motorola and the Intel chips. A range of memory issues were discussed, ranging from chip characteristics through to memory storage and retrieval capacities. We have also examined the main connection between all these elements of the computer system, in other words the communications channel. Finally we have examined the facilities in place to enable input, storage and output of data.

 

Back