Before we start we will revise the main components of a computer system and the basic fetch-execute cycle.
Input Unit, Central Processing Unit and Output Unit. These components are the building blocks of a computer.
Components of a Computer System
The relationship among these components is well established by the following diagram:
Input unit is responsible for controlling the various input devices that are used to enter data into the computer. The commonly used input devices are mouse, keyboard, light pen, optical scanner etc.
Special Purposes input devices: such as Optical Character Recognition (OCR), Magnetic Ink Character Recognition (MICR) and Bar Code Reader etc, there are other devices that accept input by responding to physical touch and voice such as ATMs.
It performs all the arithmetical calculations and computations like addition, subtraction, multiplication and division. It is also responsible for logical calculations like comparisons among data items.
Central Processing Unit (CPU) (cont’d)
The data has to be stored in the memory blocks of the computer before it is retrieved for actual processing.
As the name suggests, control unit controls and coordinates the activities of all the components of the computer system. It reads data from the memory, decodes the instructions, looks after its execution, and fetches the next instruction and so on.
It controls various output devices like printer, graphic plotter, pen drive, speaker, monitor (also known as Visual Display Unit or VDU) to produce the desired output and present it to the user. It ensures the convertibility of output into human readable form that is understandable by the user.
A standard process describes the steps needed for processing to take place. It is called the Fetch - Decode - Execute cycle or sometimes simply called the Fetch-Execute Cycle.
First of all, both the data and the program that acts upon that data are loaded into main memory (RAM) by the operating system. The CPU is now ready to do some work.
The first step the CPU carries out is to fetch some data and instructions (program) from main memory then store them in its own internal temporary memory areas. These memory areas are called 'registers'.
This is called the 'fetch' part of the cycle.
For this to happen, the CPU makes use of a vital hardware path called the 'address bus'.
The CPU places the address of the next item to be fetched on to the address bus.
Data from this address then moves from main memory into the CPU by travelling along another hardware path called the 'data bus'.
Example: that it is a bit like a boat attendant at a lake calling in customers when their time is up -- "Boat number 3, time to come in!" The 'address' of the boat is 3 and the 'data' is its content. The boat is parked at a pier, which is like the internal register of the CPU.
The next step is for the CPU to make sense of the instruction it has just fetched.
This process is called 'decode'.
The CPU is designed to understand a specific set of commands. These are called the 'instruction set' of the CPU. Each make of CPU has a different instruction set.
The CPU decodes the instruction and prepares various areas within the chip in readiness of the next step.
This is the part of the cycle when data processing actually takes place. The instruction is carried out upon the data (executed). The result of this processing is stored in yet another register.
Once the execute stage is complete, the CPU sets itself up to begin another cycle once more.
Architecture & Organization
Computer Architecture is abstract model and are those attributes that are visible to programmer like instructions sets, no of bits used for data, addressing techniques.
A computer's organization expresses the realization of the architecture or how features are implemented like these registers ,those data paths or this connection to memory. contents of CO are ALU, CPU and memory and memory organizations.
Suppose you are in a company that manufactures cars, design and all low-level details of the car come under computer architecture (abstract, programmers view), while making it’s parts piece by piece and connecting together the different components of that car by keeping the basic design in mind comes under computer organization (physical and visible).
For example, both Intel and AMD processors have the same X86 architecture, but how the two companies implement that architecture (their computer organizations) is usually very different. The same programs run correctly on both, because the architecture is the same, but they may run at different speeds, because the organizations are different.