Computer Architecture & Organization UNIT 1
Computer Architecture & Organization UNIT 1
Micro Computer
Laptop Computer
Work Station
Super Computer
Main Frame
Hand Held
Multi core
Laptop Computer: A portable, compact computer that can run on power supply or a battery
unit. All components are integrated as one compact unit. It is generally more expensive than a
comparable desktop. It is also called a Notebook.
Work Station: Powerful desktop computer designed for specialized tasks. Generally used for
tasks that requires a lot of processing speed. Can also be an ordinary personal computer
attached to a LAN (local area network).
Super Computer: A computer that is considered to be fastest in the world. Used to execute
tasks that would take lot of time for other computers. For Ex: Modeling weather systems,
genome sequence, etc (Refer site: http://www.top500.org/)
Main Frame: Large expensive computer capable of simultaneously processing data for
hundreds or thousands of users. Used to store, manage, and process large amounts of data that
need to be reliable, secure, and centralized.
Hand Held: It is also called a PDA (Personal Digital Assistant). A computer that fits into a
pocket, runs on batteries, and is used while holding the unit in your hand. Typically used as
an appointment book, address book, calculator and notepad.
Multi Core: Have Multiple Cores – parallel computing platforms. Many Cores or computing
elements in a single chip. Typical Examples: Sony Play station, Core 2 Duo, i3, i7 etc.
GENERATION OF COMPUTERS
Development of technologies used to fabricate the processors, memories and I/O units of
the computers has been divided into various generations as given below:
First generation
Second generation
Third generation
Fourth generation
Beyond the fourth generation
Second generation:
1955 to 1965: Computers of this generation used the germanium transistors as the active
switching electronic device. Ex: IBM 7000, B5000, IBM 1401. Comparatively smaller in
size About ten times faster operating speed as compared to first generation vacuum tube
based computers. Consumed less power, had fairly good reliability. Availability of large
memory was an added advantage.
Third generation:
1965 to 1975: The computers of this generation used the Integrated Circuits as the active
electronic components. Ex: IBM system 360, PDP minicomputer etc. They were still smaller
in size. They had powerful CPUs with the capacity of executing 1 million instructions per
second (MIPS). Used to consume very less power consumption.
Fourth generation:
1976 to 1990: The computers of this generation used the LSI chips like microprocessor as
their active electronic element. HCL horizen III, and WIPRO‟S Uniplus+ HCL‟s Busybee
PC etc.
They used high speed microprocessor as CPU. They were more user friendly and highly reliable
systems. They had large storage capacity disk memories.
A computer in its simplest form comprises five functional units namely input unit, output unit
memory unit, arithmetic & logic unit and control unit. Figure 2 depicts the functional units of
a computer system.
1. Input Unit: Computer accepts encoded information through input unit. The
standard input device is a keyboard. Whenever a key is pressed, keyboard
controller sends the code to CPU/Memory.
Examples include Mouse, Joystick, Tracker ball, Light pen, Digitizer, Scanner etc.
2. Memory Unit: Memory unit stores the program instructions (Code), data
and results of computations etc. Memory unit is classified as:
3. Arithmetic and logic unit: ALU consist of necessary logic circuits like adder,
comparator etc., to perform operations of addition, multiplication, comparison of two
numbers etc.
4. Output Unit: Computer after computation returns the computed results, error
messages, etc. via output unit. The standard output device is a video monitor,
LCD/TFT monitor. Other output devices are printers, plotters etc.
5. Control Unit: Control unit co-ordinates activities of all units by issuing control
signals. Control signals issued by control unit govern the data transfers and then
appropriate operations take place. Control unit interprets or decides the
operation/action to be performed.
2. The CPU fetches those instructions sequentially one-by-one from the main memory,
decodes them and performs the specified operation on associated data operands in
ALU.
4. All activities pertaining to processing and data movement inside the computer
machine are governed by control unit.
o Carries data
Remember that there is no difference between “data” and “instruction” at
this level
o Width is a key determinant of performance
8, 16, 32, 64 bit
• Address Bus
o Identify the source or destination of data
o e.g. CPU needs to read an instruction (data) from a given location in memory
o Bus width determines maximum memory capacity of system
e.g. 8080 has 16 bit address bus giving 64k address space
• Control Bus
o Control and timing information
Memory read
Memory write
I/O read
I/O write
Transfer ACK
Bus request
Bus grant
Interrupt request
Interrupt ACK
Clock
Reset
o Propagation delay - the time it takes for devices to coordinate the use of the bus
o The bus may become a bottleneck as the aggregate data transfer demand approaches
the capacity of the bus (in available transfer cycles/second)
Traditional Hierarchical Bus Architecture
o Use of a cache structure insulates CPU from frequent accesses to main memory
o Main memory can be moved off local bus to a system bus
o Expansion bus interface
buffers data transfers between system bus and I/O controllers on expansion bus
insulates memory-to-processor traffic from I/O traffic
• Timing
o Co-ordination of events on bus
o Synchronous
Events determined by clock signals
Control Bus includes clock line
A single 1-0 is a bus cycle
All devices can read clock line
Usually sync on leading edge
Usually a single cycle for an event
• Bus Width
o Address: Width of address bus has an impact on system capacity i.e. wider bus
means greater the range of locations that can be transferred.
o Data: width of data bus has an impact on system performance i.e. wider bus
means number of bits transferred at one time.
• Data Transfer Type
o Read
o Write
o Read-modify-write
o Read-after-write
o Block
1.8 PCI
PCI is a popular high bandwidth, processor independent bus that can function as mezzanine
or peripheral bus.
PCI delivers better system performance for high speed I/O subsystems (graphic display
adapters, network interface controllers, disk controllers etc.)
PCI is designed to support a variety of microprocessor based configurations including both
single and multiple processor system.
It makes use of synchronous timing and centralised arbitration scheme.
PCI may be configured as a 32 or 64-bit bus.
Current Standard
o up to 64 data lines at 33Mhz
o requires few chips to implement
o supports other buses attached to PCI bus
o public domain, initially developed by Intel to support Pentium-based systems
o supports a variety of microprocessor-based configurations, including multiple
processors
o uses synchronous timing and centralized arbitration
Note: Bridge acts as a data buffer so that the speed of the PCI bus may differ from that of the
processor’s I/O capability.
Note: In a multiprocessor system, one or more PCI configurations may be connected by bridges
to the processor’s system bus.
PCI Commands
• Transaction between initiator (master) and target
• Master claims bus
• Determine type of transaction
o e.g. I/O read/write
• Address phase
• One or more data phases
When we are using multiple general-purpose registers, instead of a single accumulator register, in
the CPU Organization then this type of organization is known as General register-based CPU
Organization. In this type of organization, the computer uses two or three address fields in their
instruction format. Each address field may specify a general register or a memory word. If many
CPU registers are available for heavily used variables and intermediate results, we can avoid
memory references much of the time, thus vastly increasing program execution speed, and
reducing program size.
For example:
R1 <-- R2 * R3
This instruction also can be written using only two address fields as:
MULT R1, R2
By: Namata Singh
In this instruction, the destination register is the same as one of the source registers. This means
the operation
R1 <-- R1 * R2
The use of large number of registers results in short program with limited instructions.
Some examples of General register based CPU Organization are IBM 360 and PDP- 11.
Efficiency of CPU increases as there are a large number of registers are used in this organization.
Less memory space is used to store the program since the instructions are written in compact
way.
Care should be taken to avoid unnecessary usage of registers. Thus, compilers need to be more
intelligent in this aspect.
Since large number of registers are used, thus extra cost is required in this organization.
The computers which use Stack-based CPU Organization are based on a data structure called
stack. The
stack is a list of data words. It uses Last In First Out (LIFO) access method which is the most
popular access
method in most of the CPU. A register is used to store the address of the topmost element of the
stack
which is known as Stack pointer (SP). In this organisation, ALU operations are performed on stack
data. It
means both the operands are always required on the stack. After manipulation, the result is
placed in the
stack.
1) Push –
This operation results in inserting one operand at the top of the stack and it decrease the
stack pointer
register. The format of the PUSH instruction is:
PUSH
It inserts the data word at specified address to the top of the stack. It can be implemented
as:
//decrement SP by 1
SP <-- SP - 1
2) Pop –
This operation results in deleting one operand from the top of the stack and it increase the
stack pointer
register. The format of the POP instruction is:
POP
It deletes the data word at the top of the stack to the specified address. It can be
implemented as:
//increment SP by 1
SP <-- SP + 1
Operation type instruction does not need the address field in this CPU organization. This is
because the
operation is performed on the two operands that are on the top of the stack. For example:
SUB
This instruction contains the opcode only with no address field. It pops the two top data
from the stack,
subtracting the data, and pushing the result into the stack at the top.
PDP-11, Intel’s 8085 and HP 3000 are some of the examples of the stack organized
computers.