You are on page 1of 69

Computer Fundamentals-

Computer Org & Arch.


COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Syllabus
Section-B: Computer
Fundamentals
Introduction to Computers, Generations of Computers, Number Systems, Computer
Organization and Architecture, Computer Memory, Introduction to Operating System,
Introduction to System Software and Application Software, Peripheral and Storage
Devices, Introduction to Programming Languages and Programming, Fundamentals of
Computer Hardware, Installation of Hardware Elements, Routine Hardware
Maintenance and General Troubleshooting.

Gaining Proficiency in GUI Operating System, Word Processing using MS Word,


Spreadsheet Analysis using MS Excel, Database Management System using MS Access,
Presentation Software usage using MS Power Point.

Textbook:
1. Introduction to Computers Peter Norton
2. Computer Fundamentals P K Sinha
3. A Guidebook of Computer Fundamentals Syed Mir Talha Zobaed

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 1 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Computer
Organization &
Architecture
1. What do you understand by the term Computer Architecture? Draw a typical layout
of a motherboard showing the processor, BIOS ROM, dc power sockets, RAM and bus
slots. 10 April-2004
2. What do you understand by the term RISC architecture? Enumerate the important
characteristics of a RISC CPU. What are the main differences between a RISC CPU and
a CISC CPU? 12 April-2005
3. What are the functions of BIOS in a PC? Where is the BIOS stored in a modern
computer? Is it possible to upgrade the BIOS in a given computer? If so, how? 8 April-
2005
4. Explain how multiple interrupts could be handled by special hardware. How is the
priority of different interrupts handled in this method? 10 April-2005
5. What is multiprogramming? What conditions should be satisfied to meet the
objectives of multiprogramming? What are the main differences between a RISC CPU
and a CISC CPU?12 April-2005
6. Briefly describe the Architecture of a Simplified Computer System and the operations
of different functional blocks. 12 April-2005 October-2004
7. What is DMA? Briefly describe how it works. 8 April-2005
8. What is a bus? Name and explain the functions of the major types of bus used in a PC.
What is the unique feature of an Intel Pentium processor compared to the earlier
processors? 10 October-2006
9. Show the block diagram of a typical bus layout in a traditional PC. What is a local bus?
Mention the major differences between the ISA-bus and PCI-bus. 10 October-2006
10. Draw a simplified block diagram of a computer showing the major components.
Explain the operation of a computer referring to the above block diagram. 10
October-2007
11. Which number system is used in a modern digital computer and why? Explain, how
subtraction, multiplication and division are performed using the above block
diagram. 10 October-2007
12. Name the various busses of a computer. Describe, with a neat sketch, the functions
of each bus in a computer. What is the major difference between the PCI bus and ISA
bus? 10 October-2007
13. Draw a bus organized architecture of a microcomputer. Give the main characteristics
of address bus, data bus and control bus of the CPU of a microcomputer. 5+5 April-
2008

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 2 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

14. What is a Register? Name five commonly used register and briefly describe the
function of each. 10 April-2009
15. List the main steps involved in the execution of an instruction by the CPU of a
computer system. 10 April-2009 October-2009
16. Draw the block diagram of a Microprocessor illustrating its internal organization.
Explain the functions of the various components of a Microprocessor. 10 October-
2009
17. What are the functions of the following registers in the CPU? 10 April-2010
(i) Program Counter
(ii) Accumulator
(iii) Instruction Register
(iv) Memory Address Register
18. With a diagram, describe the memory hierarchy. 10 April-2010
19. What are the functions of the following registers in the CPU? 10 October-2010
(i) Instruction Register
(ii) Memory Address Register
(iii) Memory Buffer Register
(iv) Accumulator
20. What is the motherboard? List the main components of a motherboard and briefly
describe their uses. 10 April-2011 April-2010 October-2011 April-2012 April-2008
21. Describe the microprocessors of different generation. 5 April-2011
22. What is a PCB? Differentiating among SSI, MSI, LSI and VLSI. 10 October-2011 April-
2010 April-2012
23. What is a register? Name four commonly used register and briefly describe the
function of each. 10 April-2012 October-2010
24. What do you mean by the configuration of 1.86 , 512 MB memory and 256
GB hard disk of a computer? April-2013
25. What are the major functionalities of a motherboard in a computer? 4 April-2013
26. What are CPU registers? Write the functions of the following CPU registers? October-
2014
(i) Accumulator
(ii) Instruction Register
(iii) Program Counter
(iv) Memory Address Register
(v) Floating Point Registers.
27. Draw the block diagram of basic three components: RAM, Hard disk, and CPU.
Explain how they work together while executing a task. 8 October-2012
28. What is an OMR device? Explain the technique used by it for recognition of marks. 6
April-2010
29. What is an OMR device? What types of application is it suitable for? Explain the
technique used by it for recognition of marks. 2+3+5 October-2009
30. Name any four of the basic services provided by Internet. Explain how each of these
services helps Internet Uses. 10 October-2009 April-2010

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 3 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Course Name: Computer Fundamentals


Course Co-Ordinator: Engr. Syed Mir Talha Zobaed
B.Sc. in Computer Science and Engineering (First Class First)
M.Sc. Engineering (Pursuing),
University of Rajshahi
Research: Brain Computer Interfacing
Contact:
Email: s.m.talha.jubaed@gmail.com
telecoaching.royalengg.academy@gmail.com
Website: www.royalengineeringacademy.page.tl
Hotline: +88-01911-088706
+88-01712-535813
+88-01719-033364

Royal Engineering Academy, Rajshahi


[An Ultimate Destination to be an Engineer through AMIE Examination]

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 4 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: What is a Motherboard? List the Main Components of a Motherboard and briefly
describe their functions. 10 October-2009

Motherboard:
A motherboard (sometimes alternatively known as the mainboard, system
board, planar board or logic board, or colloquially, a mobo) is the main printed circuit
board (PCB) found in computers and other expandable systems. It holds and allows
communication between many of the crucial electronic components of a system, such as
the central processing unit (CPU) and memory, and provides connectors for other
peripherals. Unlike a backplane, a motherboard contains significant sub-systems such
as the chipset, processor and other components.

Motherboard specifically refers to a PCB with expansion capability and as


the name suggests, this board is often referred to as the "mother" of all components
attached to it, which often include sound cards, video cards, network cards, hard drives,
or other forms of persistent storage; TV tuner cards, cards providing extra USB or
FireWire slots and a variety of other custom components (the term mainboard is applied
to devices with a single board and no additional expansions or capability, such as
controlling boards in televisions, washing machines and other embedded systems).

Main Components of a Computer Motherboard and Funtions:


The following are the main components found on a computer motherboard:

Memory and their Slots: The computer memory (RAM) is one of the most
important parts of the system board. The number of memory chips of a
motherboard depends on the type of computer and its capacity. There slots are
usually white and black and very close to each other.

Expansion cards: Expansion cards are a typical component of non-integrated


system board as indicated earlier in this discourse. An example is a graphic card.
However this can be integrated into the motherboard it depends on the type of
circuitry.

CPU and slots: The central processing unit and the sockets is highly prolific part
of the computer. It is located right on the motherboard. And it is easily identifiable
as a result of the heat sink or cooling fan directly on it.

BIOS Chip: Just like the CPU, the BIOS chip occupies a top position in terms of the
order of importance on the system board. It directs the CPU with respect to how
it relates with other parts of the computer. The Basic Input and Out System chip
or integrated circuit is fixed on board and it is easily identified. BIOS and the name
of the manufacturer are usually written on the chip.

CMOS Battery: The complementary Metal Oxide Semiconductor (CMOS) is a small


battery on the system board that powers the CMOS memory. The CMOS memory
keep very important settings in the computer such as date, time, configuration of
the hard drive etc. in such a way that when the computer is switched off such

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 5 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

settings are maintained. In order for this to be, the memory most always has
power on. This is achieved via the CMOS battery. If a computer looses correct time
and date for example, it is an indication that the CMOS battery is weak.

Power Supply and Connectors: This is the electrical unit of the system. It is the
unit that supplies power as required for the smooth running of the computer. If it
is bad the system will not power on. The power supply pack can be replaced when
faulty.

Keyboard Connector: This is one of the most important input device for a desktop
computer. It's connector is located on the motherboard. Keyboard connectors
have two main types, the AT and the PS/2 Connector. The AT has round
connecting interface into the motherboard, while the PS/2 connector is
rectangular in shape and is smaller. Modern motherboards come with both
connecting points.

Mouse Connector: The mouse is also a very important input device on the
computer. Its connecting port is located on the motherboard. The connecting
interface is usually round or a USB like interface.

Floppy and Hard Disk Connectors: The Hard drive is the mass storage device of
the computer system, same with the floppy disk. They are on-board connecting
interfaces that enable the computer communicate with both drives.

Expansion slots: Expansion slots on the motherboard or a riser board make it


possible for an additional card or board to be connected to the main board. There
are different types serving different purposes. Mostly you come across PCI, PCI
Express and AGP expansion slots. And for those computers manufactured before
1997, their slots are slightly different from what is obtainable today, though most
of them are being faced out.

Peripheral ports and Slots: The functions performed by the computer require in
most cases an external device connection either for uploading or to download
data or as the case may be. There are various peripheral ports and slots met for
this purpose. The most important peripheral ports are the universal serial bus
(USB), Serial, Ethernet, Parallel, Video, sound, Game ports.

Jumpers and DIP switches: Jumpers and DIP switches used to configure the
system board serving as a regulator for the amount of voltage supply as required
by the various components on the motherboard especially the processor. This is
automatic in some recent motherboards form factors.

These are the main components of a computer motherboard.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 6 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Reference:
[1] https://en.wikipedia.org/wiki/Motherboard
[2] http://hubpages.com/technology/Motherboard-of-a-Computer

Similar Question: List the main components of a motherboard and briefly describe their
functions. 10 April-2012

Similar Question: List main components of a motherboard. 5 October-2011

Similar Question: List the main components of a motherboard and briefly describe their
uses. 10 April-2010

Similar Question: What is the motherboard? List the main components of a motherboard
and briefly describe their uses. 10 April-2011

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 7 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: Draw the block diagram of a Microprocessor illustrating its internal


organization. Explain the functions of the various components of a Microprocessor. 10
October-2009

Block diagram of a Microprocessor:


The microprocessor or CPU reads each instruction from the memory, decodes it and
executes it. It processes the data as required in the instructions. The processing is in the
form of arithmetic and logical operations. The data is retrieved from memory or taken
from an input device and the result of processing is stored in the memory or delivered
to an appropriate output device, all as per the instructions.

To perform all these functions, the P (microprocessor) incorporates various functional


units in an appropriate manner. Such an internal structure or organizational structure
of P, which determines how it operates, is known as its architecture. A typical
microprocessor architecture is shown in Figure 1.2. The various functional units are as
follows:

1.4.1 Busses
C (microcomputer), like all computers, manipulates binary information. The binary
information is represented by binary digits, called bits. C operates on a group of bits
which are referred to as a word. The number of bits making-P a word varies with the
P. Common word sizes are 4, 8, 12 and 16 bits (Ps with 32 bit-word have also of late
entered the market). Another binary terms that will be of interest in subsequent
discussions are the byte and the nibble, which represent a set of 8 bits and 4 bits,
respectively.

Figure 1.2 shows busses interconnecting various blocks. These busses allow exchange
of words between the blocks. A bus has a wire or line for each bit and thus allows
exchange of all bits of a word in parallel. The processing of bits in the P is also in
parallel. The busses can thus be viewed as data highways. The width of a bus is the

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 8 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

number of signal lines that constitute the bus. The figure shows for simplicity three
busses for distinct functions. Over the address bus, the P transmits the address of that
I/O device or memory locations which it desires to access. This address is received by
all the devices connected to the processor, but only the device which has been addressed
responds. The data bus is used by the P to send and receive data to and from different
devices (I/O and memory) including instructions stored in memory. Obviously the
address bus is unidirectional and the data bus is bi-directional. The control bus is used
for transmitting and receiving control signals between the P and various devices in the
system.

Arithmetic-Logic Unit (ALU)


The arithmetic-logic unit is a combinational network that performs arithmetic and
logical operations on the data.

Internal Registers
A number of registers are normally included in the microprocessor. These are used for
temporary storage of data, instructions and addresses during execution of a program.
Those in the Intel 8085 microprocessor are typical and are described below:

(i) Accumulator (Acc) or Result Register


This is an 8-bit register used in various arithmetic and logical operations. Out of the two
operands to be operated upon, one comes from accumulator (Acc), whilst the other one
may be in another internal register or may be brought in by the data bus from the main
memory. Upon completion of the arithmetic/logical operation, the result is placed in the
accumulator (replacing the earlier operand). Because of the later function, this register
is also called as result register.

(ii) General Purpose Registers or Scratch Pad Memory


There are six general purpose 8-bit registers that can be used by the programmer for a
variety of purposes. These registers, labelled as B, C, D, E, H and L, can be used
individually (e.g., when operation on 8-bit data is desired) or in pairs (e.g., when a 16-
bit address is to be stored). Only B-C, D-E and H-L pairs are allowed.

(iii) Instruction Register (IR)


This 8-bit register stores the next instruction to be executed. At the proper time this
stored word (instruction) is fed to an instruction decoder which decodes it and supplied
appropriate signals to the control unit. When the execution has been accomplished the
new word in the instruction register is processed.

(iv) Program Counter (PC)


This is a 16-bit register which holds the address of the next instruction that has to be
fetched from the main memory and loaded into the instruction register. The program
controlling the operation is stored in the main memory and instructions are retrieved
from this memory normally in order. Therefore, normally the address contained in the
PC is incremented after each instruction is fetched. However, certain classes of
instruction can modify the PC so that the programmer can provide for branching away

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 9 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

from the normal program flow. Examples are instructions in the jump and call
subroutine groups.
(v) Stack Pointer (SP)
This is also a 16-bit register and is used by the programmer to maintain a stack in the
memory while using subroutines.

(vi) Status Register or Condition Flags


A status register consisting of a few flip-flops, called as condition flags (in 8085 the
number of flags is five) is used to provide indication of certain conditions that arise
during arithmetic and logical operations. These are:
zero Flag is set if result of instruction is 0.
sign Set if MSB of result is 1.
parity Set if result has even parity.
carry Set if carry or borrow resulted.
auxiliary carry Set if instruction caused a carry out of bit 3 and into bit 4 of the
resulting value.

(vii) Dedicated Registers


Several other registers are incorporated in the P for its internal operation. They cannot
be accessed by the programmer and hence do not concern much a P user.

Instruction Decoder and Control Unit


It decodes each instruction and under the supervision of a clock controls the external
and internal units ensuring correct logical operation of the system.

Reference:
[1]
http://www.science.smith.edu/~jcardell/Courses/EGR328/Readings/uProc%20Ovw.
pdf

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 10 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: What are the Major Functionalities of a Motherboard in a Computer? 4 April-


2013

Major Functionalities Of A Motherboard In A Computer:


The function of a motherboard is indispensable for the operation of any computer
system. Motherboards are the primary hardware component on a computer, and
perform a number of critical tasks. Following is an overview of the function of the
motherboard.

Components' Hub
A primary function of the motherboard is to serve as the base upon which a computers
components are built. The motherboard is, in essence, a hub that houses a number of
essential components such as the Central Processing Unit (CPU), system memory (RAM)
and graphics card. The typical computer is designed with these components built onto
the motherboard.

Computer Circuitry
The motherboard is the computers main circuit board, bearing all the basic circuitry
and components that are required for the computer to function. It has electrical
pathways called buses, which enable data to be relayed to the different computer
components as well as between them.

Data Traffic
The motherboard serves as a communications hub for all of the components that are
attached to it directly or indirectly. It is responsible for managing the traffic of
information within the computer system, which it does by means of the motherboard
chipset. The function of the motherboard chipset is to direct the flow of data that the
computer components require or acquire.

BIOS
The motherboard has a built-in Read Only Memory (ROM), which is separate from the
PCs RAM and which contains the computers Basic Input/Output System (BIOS). A key
function of the BIOS is to manage the boot-up process when you power your computer
on, and load your operating system.

Peripherals
The motherboard allows for the use of external components and devices, which greatly
increases the versatility of a computer system. These include printers, keyboard devices,
audio jacks, external hard drives and game controllers. These peripherals can be
connected to the computer by plugging them directly into the motherboard by means of
external ports, sockets and connectors, which are built into it.

Some of the prime functions of a computer motherboard are as follows:

- The motherboard acts as the central backbone of a computer on which other modular
parts are installed such as the CPU, RAM and hard disks.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 11 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

- The motherboard also acts as the platform on which various expansion slots are
available to install other devices / interfaces.

- The motherboard is also responsible to distribute power to the various components of


the computer.

- They are also used in the coordination of the various devices in the computer and
maintain an interface among them.

- a motherboard is the data and power infrastructure for the entire computer".

Reference:
[1]http://www.brighthub.com/computing/hardware/articles/40556.aspx
[2]http://www.careerride.com/view.aspx?id=2564

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 12 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Supplementary Texts for AMIE Students


Motherboard Parts and Functions: Getting to Know Your Hardware

Motherboard Basics

A computer has many components, each with their own roles and functions. The role of
the motherboard is to allow all these components to communicate with each other.
Considering the fact that all the other components are installed on the motherboard or
connected to it, it is safe to say that the motherboard is the central piece of a PC, the
component that brings it all together.

Processor Socket

The processor socket is the central piece of a motherboard, usually being located near
the center of the motherboard. Its also the central piece because it holds the processor
the brain of your computer.

Power Connectors

No computer component can operate without power, and a motherboard is no


exception. The power connector, commonly a 20 or 24-pin connector, can be situated
either near the right edge of the motherboard, or somewhere close to the processor
socket on older motherboards. This is where the power supplys main connector gets
attached, providing power to the motherboard and all the other components.

Newer motherboards have an additional 4-pin or 8-pin connector near the processor,
used to supply additional power directly to the processor.

Memory Slots

Located in the upper-right part of the motherboard, the memory slots are used to house
the computers memory modules. The number of slots can vary, depending on
motherboard, from 2, in low-end motherboards, all the way up to 8 memory slots, on
high-end and gaming motherboards.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 13 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

It is important to pay close attention to the type of memory a motherboard supports, in


order to buy the appropriate memory modules. Newer motherboards support DDR3
memory, the current industry standard memory architecture, but motherboards with
DDR2 memory slots and even DDR1 memory slots are still present on the market. An
interesting aspect is that there are some older motherboard models that supported
different types of memory, and usually come with two DDR1 memory slots and 2 DDR2
memory slots, or two DDR2 slots and two DDR3 slots. These motherboards were great
options for people that wanted to upgrade a motherboard without having to upgrade all
the other components as well.

The number of memory slots should be an important criterion to take into account when
choosing a motherboard, as it will determine the maximum amount of memory you can
install.

Video Card Slot

This is the type of slot that doesnt need an explanation, as its name doesnt leave much
room for interpretation as to what its role is. Coming in the form of a PCI-Express slot
on newer motherboards or AGP on older ones, the video card slot is situated right below
the processor.

It is not uncommon for older motherboards, especially those that target the office
segment, to lack this slot, meaning that you wont be able to install a discrete video card,
thus having to rely on the integrated one. At the opposite pole, high-end gaming
motherboards come with multiple video card slots, allowing the installation of multiple
video cards in a SLI or CrossFire configuration.

Expansion Slots

Expansions have the role of letting you install additional components to enhance or
expand the functionality of your PC. You can install a TV tuner, a video capture card, a
better soundcard, etc. you get the idea. These ports are located under the video card
slot, and come in the form of PCI slots (on older motherboards) or a scaled-down
version of PCI-Express slots (on newer motherboards). Some motherboards come with
both types of expansion slots. The number of slots is usually dependent on the format of
the motherboard larger motherboards (full ATX) have more, while smaller formats
(micro-ATX) have fewer, if any.

IDE and SATA Ports

IDE and SATA ports are used to provide connectivity for the storage devices and optical
drives. The IDE interface is somewhat outdated, so you shouldnt be surprised if you see
a lot of new motherboards coming without this type of port. It was replaced by the
smaller and much faster SATA interface, which currently reached its 3 rd revision, being
able to achieve maximum speeds of up to 600 MB/s, as opposed to the IDE interface,
which can reach a maximum of 133 MB/s.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 14 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

It is not uncommon for manufacturers to include SATA ports of different revisions, such
as two SATA2 ports and two SATA3 ports. Considering the fact that most optical drives
on the market come with a SATA connector, and these devices are not bandwidth-
hungry, using a SATA2 port for an optical drive is perfectly acceptable. In fact, most
mechanical hard drives cannot achieve SATA3 speeds due to mechanical limitations, so
unless you plan to use multiple high-performance solid state drives in your PC, which
can benefit of the higher speeds of SATA3, a combination of SATA2 and SATA3 shouldnt
make much of a difference.

BIOS Chip and Battery

The BIOS chip contains the basic code needed to take your computer through the boot
process, up to the point where the operating system takes over. Since the BIOS code is
stored on a memory chip that needs constant power to function, a battery is also present
to keep the chip powered when the computer is unplugged.

Northbridge and Southbridge

If you have a look at your motherboard, chances are youll see a square metal component
somewhere in the lower-right part of the board. This metal component is actually a
heatsink, and its role is to provide thermal protection for the Northbridge one of the
most important components of a motherboard. The northbridge is responsible for
coordinating the data flow between the memory, the video card and the processor. A
secondary chip, known as Southbridge, has a similar function, coordinating the data flow
between the processor and peripherals such as sound cards or network cards.

Front Panel Connectors, USB Headers and Audio Header

The front panel connector is where all the elements present on the front of your case
are connected. Power button, reset button, power led, audio connectors and USB
connectors they are all connected to the front panel or the corresponding headers.

Rear Connectors

These connectors are the bridge between the outside of your computer and the inside.
The name is a bit misleading, as the connectors are actually located on the left edge of
the motherboard; however, since these connectors are accessible from the outside, the
name simply implies where they are accessible from the rear of the PC case. External
peripherals such as keyboard, mouse, monitor, speakers and so on are all connected via
these connectors.

Reference:
[1] https://blog.udemy.com/motherboard-parts-and-functions/

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 15 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: What do you understand by the term Computer Architecture? Draw a typical
layout of a motherboard showing the processor, BIOS ROM, DC power sockets, RAM and
bus slots. 10 April-2004

Computer Architecture:
Computer Architecture is the science and art of selecting and interconnecting hardware
components to create computers that meet functional, performance and cost goals.
In computer engineering, computer architecture is a set of rules
and methods that describe the functionality, organization, and implementation of
computer systems. Some definitions of architecture define it as describing the
capabilities and programming model of a computer but not a particular implementation.
In other descriptions computer architecture involves instruction set architecture
design, microarchitecture design, logic design, and implementation.

Computer architecture is a specification detailing how a set of


software and hardware technology standards interact to form a computer system or
platform. In short, computer architecture refers to how a computer system is designed
and what technologies it is compatible with.

As with other contexts and meanings of the word architecture, computer architecture is
likened to the art of determining the needs of the user/system/technology, and creating
a logical design and standards based on those requirements.

Computer Architecture is the design and internal organization of


a computer system to meet its requirements, as efficiently as possible, within technology
and cost constraints. Simply adding more resources to a computer system does not
always make it faster, especially when the main limit is power consumption.

Computer architecture addresses all levels of the computer system, from the core, chip,
memory, board, to the whole system and its interconnect. Finding the right balance in
the design and proposing new design alternatives are key tasks of the computer
architect

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 16 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 17 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Label Description
A PCI bus connector 2
B PCI bus connector 1
C PCI Express x16 connector
D Rear chassis fan header (3-pin)
E Back panel connectors
F Parallel port header
G 12 V processor core voltage connector (2 x 2 pin)
H Processor socket
I Processor fan header (4-pin)
J DDR2 Channel A DIMM 0 socket
K DDR2 Channel B DIMM 0 socket
L Main power connector (2 x 12 pin)
M IDE connector
N Battery
O Alternate front panel power LED header
P Front panel header
Q Serial ATA connectors (4)
R BIOS configuration jumper block
S High-speed USB 2.0 headers (2)
T Speaker
U Serial port header
V S/PDIF connector
W Front panel audio header

Reference:
[1]
https://downloadmirror.intel.com/17250/eng/DG41RQ_ProductGuide01_English.pdf

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 18 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Supplementary Layout for AMIE Students


Typical Layout Of A Motherboard:

Reference:
[1] https://en.wikipedia.org/wiki/Computer_architecture
[2] https://www.techopedia.com/definition/26757/computer-architecture
[3] https://www.bsc.es/computer-sciences/computer-architecture

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 19 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: What do you understand by the term RISC architecture? Enumerate the
important characteristics of a RISC CPU. What are the main differences between a RISC
CPU and a CISC CPU? 12 April-2005

Reduced instruction set computing:


Reduced instruction set computing, or RISC (pronounced 'risk'), is a CPU
design strategy based on the insight that a simplified instruction set (as opposed to a
complex set) provides higher performance when combined with a microprocessor
architecture capable of executing those instructions using fewer microprocessor cycles
per instruction. A computer based on this strategy is a reduced instruction set computer,
also called RISC. The opposing architecture is called complex instruction set computing,
i.e. CISC.

RISC, or Reduced Instruction Set Computer. is a type of microprocessor


architecture that utilizes a small, highly-optimized set of instructions, rather than a more
specialized set of instructions often found in other types of architectures.

RISC (reduced instruction set computer) is a microprocessor that is


designed to perform a smaller number of types of computer instructions so that it can
operate at a higher speed (perform more millions of instructions per second, or MIPS).
Since each instruction type that a computer must perform requires additional
transistors and circuitry, a larger list or set of computer instructions tends to make the
microprocessor more complicated and slower in operation.

The RISC concept has led to a more thoughtful design of the microprocessor. Among
design considerations are how well an instruction can be mapped to the clock speed of
the microprocessor (ideally, an instruction can be performed in one clock cycle); how
"simple" an architecture is required; and how much work can be done by the microchip
itself without resorting to software help.

Besides performance improvement, some advantages of RISC and related design


improvements are:
A new microprocessor can be developed and tested more quickly if one of its aims
is to be less complicated.
Operating system and application programmers who use the microprocessor's
instructions will find it easier to develop code with a smaller instruction set.
The simplicity of RISC allows more freedom to choose how to use the space on a
microprocessor.
Higher-level language compilers produce more efficient code than formerly
because they have always tended to use the smaller set of instructions to be found
in a RISC computer.

After the introduction of RISC, any "full-set" instruction computer was said to use
complex instruction set computing (CISC).

Characteristics of RISC CPU:


The instruction set is limited and includes only simple instructions.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 20 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Load-and-store architecture
Instructions use only few addressing modes
- Addressing modes are usually register, direct, register indirect, displacement.
Instructions are of fixed length and uniform format
- This makes the loading and decoding of instructions simple and fast; it is not
needed to wait until the length of an instruction is known in order to start
decoding the following one;
- Decoding is simplified because opcode and address fields are located in the same
position for all instructions
A large number of registers is available
- Variables and intermediate results can be stored in registers and do not require
repeated loads and stores from/to memory.
- All local variables of procedures and the passed parameters can be stored in
registers (see slide 8 for comments on possible number of variables and
parameters).

Certain design features have been characteristic of most RISC processors:

One cycle execution time: RISC processors have a CPI (clock per instruction) of one cycle.
This is due to the optimization of each instruction on the CPU and a technique called
pipelining.

Pipelining: a technique that allows for simultaneous execution of parts, or stages, of


instructions to more efficiently process instructions;

Large number of registers: the RISC design philosophy generally incorporates a larger
number of registers to prevent in large amounts of interactions with memory

Differences between a RISC CPU and a CISC CPU:


CISC RISC
Emphasis on hardware Emphasis on software
Includes multi-clock Single-clock,
complex instructions reduced instruction only
Memory-to-memory: Register to register:
"LOAD" and "STORE" "LOAD" and "STORE"
incorporated in instructions are independent instructions
Small code sizes, Low cycles per second,
high cycles per second large code sizes
Transistors used for storing Spends more transistors
complex instructions on memory registers

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 21 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Reference:
[1] http://search400.techtarget.com/definition/RISC
[2]
https://cs.stanford.edu/people/eroberts/courses/soco/projects/risc/whatis/index.ht
ml
[3] https://en.wikipedia.org/wiki/Reduced_instruction_set_computing
[4] https://www.ida.liu.se/~TDTS57/info/lectures/lect9.frm.pdf
[5] http://cs.stanford.edu/people/eroberts/courses/soco/projects/risc/risccisc/

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 22 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: What are the Main Characteristics of RISC architecture?

RISC meaning reduced instruction set as the acronym say aims to reduce the execution
times of instructions by simplifying the instructions. The major characteristics of RISC
are as follows:

- Compared to normal instructions they have a lower number of instructions.

- The addressing modes in case of RISC is also lower.

- All the operations that are required to be performed take place within the CPU.

- All instruction are executed in a single cycle hence have a faster execution time.

- in this architecture the processors have a large number of registers and a much more
efficient instruction pipeline.

- Also the instruction formats are of fixed length and can be easily decoded.

Following are some common features of RISC:

1) Fixed length instructions


Every instruction has the same size bits
2) Limited Loading and Storing Instructions Access Memory
CISC can interact with the values in memory
RISC limits the interaction by placing the values into a register first before
interaction
3)Fewer Addressing Modes
Certain modes degrade performance
Indirect address mode
RISC has quicker addressing modes
Register Direct addressing mode
Relative addressing mode
4)Instruction Pipeline
RISC processors can execute one instruction while fetching and decoding
the next instruction
The instruction pipeline breaks up the execution into stages
5) Large Number of Registers
CISC uses their chip space for the control logic
RISC uses their chip space for more registers
6) Hardwired Control Unit
CISC is too complicated to implement a hardwired control unit
RISC has a hardwired control unit for higher clock rates
7) Delayed loads and branches
This is used to avoid wasting time
The RISC instruction pipeline encounters hazards during
instructions that use a common operand

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 23 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Delayed loads and branches can avoid these hazards


8) Speculative Execution of Instructions
The processor will execute the instruction ahead of time but not save the
value
If the processor was suppose to execute the instruction, it will save
the value
If not, it will discard the value
The Pentium Itanium Processor uses this method
9) Optimizing Compiler
An optimizing compiler can optimize the instructions to facilitate delayed
loads and branches
It optimizes by rearranging the instructions to be executed
10) Separate Instruction and Data Streams
This helps to avoid memory access conflicts

Reference:
[1] http://www.careerride.com/view.aspx?id=2269
[2] http://www.cs.sjsu.edu/faculty/lee/cs147/fall2003/RISCpresentation-
RyanAldana.ppt

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 24 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: What are the differences between RISC and CISC? 10 Marks

CISC RISC
Has more complex hardware Has simpler hardware
More compact software code More complicated software code
Takes more cycles per instruction Takes one cycle per instruction
Can use less RAM as no need to store Can use more RAM to handle
intermediate results intermediate results
CISC RISC
Emphasis on hardware Emphasis on software
Includes multi-clock Single-clock,
complex instructions reduced instruction only
Memory-to-memory: Register to register:
"LOAD" and "STORE" "LOAD" and "STORE"
incorporated in instructions are independent instructions
Small code sizes, Low cycles per second,
high cycles per second large code sizes
Transistors used for storing Spends more transistors
complex instructions on memory registers

Reference:
[1] http://www.teach-
ict.com/as_as_computing/ocr/H447/F453/3_3_3/parallel_processors/miniweb/pg7.h
tm

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 25 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: Write Short Note on: RISC.

Question: Write Short Note on: CISC.

Some Processor Examples


CISC Architectures:
VAX 11/780
Nr. of instructions: 303
Instruction size: 2 - 57
Instruction format: not fixed
Addressing modes: 22
Number of general purpose registers: 16
Pentium
Nr. of instructions: 235
Instruction size: 1 - 11
Instruction format: not fixed
Addressing modes: 11
Number of general purpose registers: 8

RISC Architectures:
Sun SPARC
Nr. of instructions: 52
Instruction size: 4
Instruction format: fixed
Addressing modes: 2
Number of general purpose registers: up to 520

PowerPC
Nr. of instructions: 206
Instruction size: 4
Instruction format: not fixed (but small differences)
Addressing modes: 2
Number of general purpose registers: 32

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 26 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: What is DMA? Briefly describe how it works. 8 April-2005

Direct Memory Access (DMA):


Direct Memory Access (DMA) is a method of allowing data to be moved from one location
to another in a computer without intervention from the central processor (CPU).

The way that the DMA function is implemented varies between computer architectures,
so this discussion will limit itself to the implementation and workings of the DMA
subsystem on the IBM Personal Computer (PC), the IBM PC/AT and all of its successors
and clones.

The PC DMA subsystem is based on the Intel 8237 DMA controller. The 8237 contains
four DMA channels that can be programmed independently and any one of the channels
may be active at any moment. These channels are numbered 0, 1, 2 and 3. Starting with
the PC/AT, IBM added a second 8237 chip, and numbered those channels 4, 5, 6 and 7.
The original DMA controller (0, 1, 2 and 3) moves one byte in each transfer. The second
DMA controller (4, 5, 6, and 7) moves 16-bits from two adjacent memory locations in
each transfer, with the first byte always coming from an even-numbered address. The
two controllers are identical components and the difference in transfer size is caused by
the way the second controller is wired into the system.

The 8237 has two electrical signals for each channel, named DRQ and -DACK. There are
additional signals with the names HRQ (Hold Request), HLDA (Hold Acknowledge), -
EOP (End of Process), and the bus control signals -MEMR (Memory Read), -MEMW
(Memory Write), -IOR (I/O Read), and -IOW (I/O Write).

The 8237 DMA is known as a ``fly-by'' DMA controller. This means that the data being
moved from one location to another does not pass through the DMA chip and is not
stored in the DMA chip. Subsequently, the DMA can only transfer data between an I/O
port and a memory address, but not between two I/O ports or two memory locations.
Note: The 8237 does allow two channels to be connected together to allow memory-to-
memory DMA operations in a non-``fly-by'' mode, but nobody in the PC industry uses
this scarce resource this way since it is faster to move data between memory locations
using the CPU.

In the PC architecture, each DMA channel is normally activated only when the hardware
that uses a given DMA channel requests a transfer by asserting the DRQ line for that
channel.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 27 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

A Sample DMA transfer (IBM-PC)

Peripheral (say disk controller) asserts DRQ2


DMA requests buses by asserting HRQ
CPU releases bus and asserts HLDA
DMA ``is in charge'' activates its -MEMR, -MEMW, -IOR, -IOW output signals (-IOR,
-MEMW in this case), and the memory address
DMA asserts the DACK2 to peripheral
Peripheral places the byte to be transferred on the bus Data lines
DMA waits one clock, and then de-asserts -MEMW and -IOR signals so that the
memory will latch and store the byte
Peripheral drops the DRQ2 signal, so that the DMA knows it is no longer needed
DMA de-asserts -DACK2 signal and peripheral releases data bus
DMA controller tri-states the -MEMR, -MEMW, -IOR, -IOW and address signals
DMA will de-assert the HRQ signal.
CPU sees this, and de-asserts the HOLDA signal.
CPU activates its -MEMR, -MEMW, -IOR, -IOW and address lines, and it resumes
executing instructions and accessing main memory and the peripherals.

Reference:
[1] http://www.le.ac.uk/eg/fss1/lect_dma.doc

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 28 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: List the main steps involved in the execution of an instruction by the CPU of a
computer system. 10 April-2009 October-2009

Six Steps to Execute an Instruction by the CPU:


The main purpose of a CPU is to execute instructions. We've already seen some simple
examples of instructions, i.e., add and addi.

The CPU executes the binary representation of the instructions, i.e., machine code.

Since programs can be very large, and since CPUs have limited memory, programs are
stored in memory (RAM). However, CPUs do its processing on the CPU. So, the CPU must
copy the instruction from memory to the CPU, and once it's in the CPU, it can execute it.

The PC is used to determine which instruction is executed, and based on this execution,
the PC is updated accordingly to the next instruction to be run.

Essentially, a CPU repeatedly fetches instructions and executes them.

The following is a summary of the six steps used to execute a single instruction.

Step 1: Fetch instruction

For some reason, the verb "fetch" is always used with instruction. We don't
"get an instruction" or "retrieve an instruction". We "fetch an instruction".

To fetch an instruction involves the following steps:

CPU must place an address to the MAR.


CPU must activate the tri-state buffer so MAR contents are placed on
the address bus.
CPU sends R/\W = 1 and CE = 1 to memory, to indicate it wants to
do a read.
Memory eventually puts instruction on the data bus.
Memory sends ACK = 1.
CPU loads the instruction to the MDR.
CPU transfers instruction from MDR to IR.
CPU sets CE = 0 to memory indicate it's done with fetching the
instruction.

As you can see, the steps are rather involved. You can speed up this step if
you assume instructions are in a fast instruction cache. For now, we won't
assume that.

You should go back to the notes on memory if you have forgotten how it
works, in particular, if you have forgotten the control signals used by
memory.

Step 2: Decode instruction and Fetch Operands

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 29 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

In the second step, the bits used for the opcode (and function, for R-type
instructions) are used to determine how the instruction should be
executed. This is what is meant by "decoding" the instruction.

Recall that operands are arguments to the assembly instruction.

However, since R-type and I-type instructions both use registers, and those
registers are in specific locations of the instruction, we can begin to fetch
the values within the registers at the same time we are decoding.

In particular, we're going to do the following:

Get IR31-26, the opcode


Get IR25-21, which is $rs, the first source register.
Get IR20-16, which is $rt, the second source register.
Get IR15-11, which is $rd, the destination register.
Get IR15-0, the immediate value
Get IR5-0, the function code

You'll notice that we're extracting these bits directly from the instruction
register.

You'll also notice that we extracted IR15-11 and IR15-0. How can we do both?
Well, they're merely wires, so there's no reason you can't get both quantitie
out.

The key is to realize that sometimes we use IR15-11 and sometimes we use
IR15-0. We need to have both of them ready because this is hardware. It's
easier to have everything we need, and then figure out what we need, than
to decide what we need and try to get it.

In particular, when we fetch the operands (i.e., the registers) we want to


send the source and destination registers bits to a device called the register
file.

For example, if IR25-21 has value 00111, this means we want register $r7
from the register file. We sent in 00111 to this circuit, and it returns the
contents back to us.

We'll be discussing the register file soon.

If we are executing an I-type instruction, then typically, we'll sign-extend


(or zero-extend, depending on the instruction) the immediate part (i.e.,
IR15-0) to 32 bits.

Step 3: Perform ALU operation

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 30 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

The ALU has two 32-bit data inputs. It has a 32-bit output. The purpose of
the ALU is to perform a computation on the two 32-bit data inputs, such as
adding the two values. There are some control bits on the ALU. These
control bits specify what the ALU should do.

For example, they may specify an addition, or a subtraction, or a bitwise


AND.

Where do the input values of the ALU come from?

Recall that an instruction stores information about its operands. In


particular, it encodes registers as 5-bit UB numbers. These register
encodings are sent to the register file as inputs.

The register file then outputs the 32-bit values of these registers. These are
the sent as inputs to the ALU.

Step 4: Access memory

There are only two kind of instructions that access memory: load and store.

load copies a value from memory to a register. store copies a register value
to memory.

Any other instruction skips this step.

Step 5: Write back result to register file

At this point, the output of the ALU is written back to the register file. For
example, if the instruction was: add $r2, $r3, $r4 then the result of adding
the contents of $r3 to the contents of $r4 would be stored back into $r2.

The result could also be due to a load from memory.

Some instructions don't have results to store. For example, branch and
jump instructions do not have any results to store.

Step 6: Update the PC

Finally, we need to update the program counter. Typically, we perform the


following update:

PC <- PC + 4

Recall that PC holds the current address of the instruction to be executed.


To update it means to set the value of this register to the next instruction
to be executed.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 31 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Unless the instruction is a branch or jump, the next instruction to execute


is the next instruction in memory. Since each instruction takes up 4 bytes
of memory, then the next address in memory is PC + 4, which is the address
of the current instruction plus 4.

The PC might change to some other address if there is a branch or jump.

These are the six steps to executing an instruction. Not every instruction goes
through every step. However, we label each step so that you can be aware they
exist.

Some of these steps may not make much sense now, but hopefully, they're be
clearer once we start implementing the steps in depth.

Six Steps, In Summary


To make it easier to read, the six steps are listed below.

Step Description

1 Fetch Instruction from Memory

2 Decode Instruction and Fetch Operands

3 Perform ALU Operations

4 Memory Access (for load/store)

5 Store ALU result to register file

6 Update PC

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 32 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Supplementary Text for AMIE Students


Registers

A register is a discrete memory location within the CPU designed to hold temporary data
and instructions

.A modern CPU will hold a number of registers. There are a number of general purpose
registers that the programmer can use to hold intermediate results whilst working
through a calculation or algorithm.

Then there are special-purpose registers designed to carry out a specific role. Each of
these registers are given a name so that the programmer can write their software code
to access them. Different manufacturers of CPU chips call them by different names
(which makes life interesting for a professional programmer!)

But generically these include

Program Counter (PC)

This holds the address in memory of the next instruction.

For example if the program counter has the address 305 then the next instruction will
be at location 305 in main memory (RAM). When a program is running, the program
counter will often just be incrementing as it addresses one instruction after the other,
e.g. 305, 306, 307. However, the instructions will often modify the next address, for
example, 305 becomes 39. What has happened is called a 'jump instruction'. This is how
the software programmer will cause different parts of his code to run depending on
some condition e.g. a conditional IF statement. It is also how an interrupt routine is
serviced. The program counter will be loaded with the starting address of the interrupt
routine.

Current Instruction Register (CIR)

This holds the current instruction to be executed, having been fetched from memory.

Program Status Word (PSW)

The PSW has a number of duties all rolled into one.

The Arithmetic Logic Unit compares two data items together, and it arranges for
the result of that comparison to appear in this register i.e. the result of 'greater
than' etc.
The PSW also indicates if program conditions have been met that would lead to a
jump to a different part of the program. In programming terms this means the
result of an IF statement. An IF statement is important in any programming
language as it allows execution to jump from one set of instructions to another.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 33 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

The PSW also holds error flags that indicate a number of problems that may have
happened as a result of an instruction, such as 'overflow' which means a
calculation has exceeded it allowed number range.

A commonly used term is 'flag'. This denotes a single binary bit within a register. They
are often used to indicate a true or false condition.

Memory Address Register (MAR)

Remember that data and program instructions have to fetched from memory? The
memory address register, or MAR, holds the location in memory (address) of the next
piece of data or program to be fetched (or stored).

Memory Buffer Register or Memory Data Register

When the data or program instruction is fetched from memory, it is temporarily held in
the 'Memory Buffer Register' or MBR for short sometimes also called the Memory Data
Register or MDR

A 'buffer' is a commonly used computer term to describe memory designed to hold data
that is on its way to somewhere else.

A memory buffer is a bit like the buffers on a train carriage, as the carriages connect with
each other, the buffers will soak up the force. In memory, a bunch of data is absorbed
quickly, then released at a controlled rate.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 34 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 35 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: What are CPU registers? Write the functions of the following CPU registers?
October-2014 April-2010 October-2010
(a) Accumulator
(b) Instruction Register
(c) Program Counter
(d) Memory Address Register
(e) Memory Buffer Register
(f) Floating Point Registers.

CPU registers:

A register is a discrete memory location within the CPU designed to hold temporary data
and instructions

.A modern CPU will hold a number of registers. There are a number of general purpose
registers that the programmer can use to hold intermediate results whilst working
through a calculation or algorithm.

Then there are special-purpose registers designed to carry out a specific role. Each of
these registers are given a name so that the programmer can write their software code
to access them. Different manufacturers of CPU chips call them by different names
(which makes life interesting for a professional programmer!)

But generically these include:

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 36 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

(a) Accumulator
(b) Instruction Register
(c) Program Counter
(d) Memory Address Register
(e) Memory Buffer Register
(f) Floating Point Registers.

Functions of Accumulator:
An accumulator is an 8-bit register that is a part of ALU (Arithmetic-Logic Unit) of a
processor. It is used for temporary storage of 8-bit data and to perform arithmetic
operations like addition, subtraction, multiplication, division or logical operations like
AND, OR, XOR etc. The result of operation is stored in accumulator.

Functions of Program Counter (PC)

This holds the address in memory of the next instruction.

For example if the program counter has the address 305 then the next instruction will
be at location 305 in main memory (RAM). When a program is running, the program
counter will often just be incrementing as it addresses one instruction after the other,
e.g. 305, 306, 307. However, the instructions will often modify the next address, for
example, 305 becomes 39. What has happened is called a 'jump instruction'. This is how
the software programmer will cause different parts of his code to run depending on
some condition e.g. a conditional IF statement. It is also how an interrupt routine is
serviced. The program counter will be loaded with the starting address of the interrupt
routine.

Instruction Register (IR)

This holds the current instruction to be executed, having been fetched from memory.

Memory Address Register (MAR)

Remember that data and program instructions have to fetched from memory? The
memory address register, or MAR, holds the location in memory (address) of the next
piece of data or program to be fetched (or stored).

Memory Buffer Register or Memory Data Register

When the data or program instruction is fetched from memory, it is temporarily held in
the 'Memory Buffer Register' or MBR for short sometimes also called the Memory Data
Register or MDR

A 'buffer' is a commonly used computer term to describe memory designed to hold data
that is on its way to somewhere else.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 37 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

A memory buffer is a bit like the buffers on a train carriage, as the carriages connect with
each other, the buffers will soak up the force. In memory, a bunch of data is absorbed
quickly, then released at a controlled rate.

Functions of Floating Point Registers:


Floating-point registers (FPRs) store floating point numbers in many architectures.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 38 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Supplementary Text for AMIE Students


CPU Registers and Their Functions
Registers are the most important components of CPU. Each register performs a specific
function. A brief description of most important CPU's registers and their functions are
given below:

1. Memory Address Register (MAR):


This register holds the address of memory where CPU wants to read or write data. When
CPU wants to store some data in the memory or reads the data from the memory, it
places the address of the required memory location in the MAR.

2. Memory Buffer Register (MBR):


This register holds the contents of data or instruction read from, or written in memory.
The contents of instruction placed in this register are transferred to the Instruction
Register, while the contents of data are transferred to the accumulator or I/O register.
In other words you can say that this register is used to store data/instruction coming
from the memory or going to the memory.

3. I/O Address Register (I/O AR):


I/O Address register is used to specify the address of a particular I/O device.

4. I/O Buffer Register (I/O I3R):


I/O Buffer Register is used for exchanging data between the I/O module and the
processor.

5. Program Counter (PC)


Program Counter register is also known as Instruction Pointer Register. This register is
used to store the address of the next instruction to be fetched for execution. When the
instruction is fetched, the value of IP is incremented. Thus this register always points or
holds the address of next instruction to be fetched.

6. Instruction Register (IR):


Once an instruction is fetched from main memory, it is stored in the Instruction Register.
The control unit takes instruction from this register, decodes and executes it by sending
signals to the appropriate component of computer to carry out the task.

7. Accumulator Register:
The accumulator register is located inside the ALU, It is used during arithmetic & logical
operations of ALU. The control unit stores data values fetched from main memory in the
accumulator for arithmetic or logical operation. This register holds the initial data to be
operated upon, the intermediate results, and the final result of operation. The final
result is transferred to main memory through MBR.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 39 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

8. Stack Control Register:


A stack represents a set of memory blocks; the data is stored in and retrieved from these
blocks in an order, i.e. First In and Last Out (FILO). The Stack Control Register is used to
manage the stacks in memory. The size of this register is 2 or 4 bytes.

9. Flag Register:
The Flag register is used to indicate occurrence of a certain condition during an
operation of the CPU. It is a special purpose register with size one byte or two bytes.
Each bit of the flag register constitutes a flag (or alarm), such that the bit value indicates
if a specified condition was encountered while executing an instruction.

For example, if zero value is put into an arithmetic register (accumulator) as a result of
an arithmetic operation or a comparison, then the zero flag will be raised by the CPU.
Thus, the subsequent instruction can check this flag and when a zero flag is "ON" it can
take, an appropriate route in the algorithm.

Reference:
[1] http://www.selfgrowth.com/articles/cpu-registers-and-their-functions

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 40 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: What is a PCB? Differentiating among SSI, MSI, LSI and VLSI. 10 October-2011
April-2010 April-2012

Printed Circuit Board:


A Printed Circuit Board (PCB) mechanically supports and electrically connects
electronic components using conductive tracks, pads and other features etched from
copper sheets laminated onto a non-conductive substrate. PCBs can be single sided (one
copper layer), double sided (two copper layers) or multi-layer (outer and inner layers).
Multi-layer PCBs allow for much higher component density. Conductors on different
layers are connected with plated-through holes called vias. Advanced PCBs may contain
components - capacitors, resistors or active devices - embedded in the substrate.

Differentiating among SSI, MSI, LSI and VLSI:


SSI MSI LSI VLSI
Has fewer than 30 Has 30 1000 Contains 100-5000 Has 5000-50000
transistors per electronic circuit elements and electronic
chip and a few components 200-200000 gates per components per chip.
gates. per chip and 20 chip. Uses over 1000000
200 gates. transistors (NOT
number of gates)
Used in old Example, Example, perform Used in modern day
television decoder, specific digital memory,
receivers. register, operations such as microprocessors etc.
multiplexers, arithmetic and logic
adders. units.
late 1960s Mid 1970s, 1 Kb RAM. Starting 1980s, 1 MB
1970s Used as main memory RAM
in 1970s.

Reference:
[1] https://en.wikipedia.org/wiki/Printed_circuit_board
[2] https://seeteri.wordpress.com/computing/9-questions/

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 41 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: What is Printed Circuit Board? What are the advantages of Printed Circuit
Board? 10 Marks

Printed Circuit Board:

Printed circuit board is one of the new wonders in the modern production of electronics
parts. It is made of glass fabricated plastic with copper tracks that act as wire to which
the components are attached. In order for components to be properly placed into the
board, the production requires holes to be drilled on the board. PCB is soldered to create
a stronger hold for the components.

Although the PCB is one of the most convenient electronic boards to use today, it still
has advantages and disadvantages on the application. Below is the list of both the
advantages and disadvantages of using printed circuit boards.

Advantages of Printed Circuit Boards:

Enumerated below are the five reasons why printed circuit boards are more
advantageous to use than the manually- made bread board.

1. All of the PCB components are fixed

Printed circuit board has no complex wirings attached all over the board. Thus, it makes
the circuit board a simple electronic part to use. Since the board components are fixed
and easy to identify, it makes the board easy to maintain.

2. Minimal concern on short circuits and wrong wirings

A PCB has minimal chance of short circuits and wrong wirings in its production since
the copper tracks are embedded to the board. Another reason of PCB has little chance of
creating short circuits is that has been designed using a computer, hence, it has been
checked for any errors before production.

3. No need for further inspection

Corollary to the point that it has been designed and tested using computer applications,
it eliminates further inspection before using the product. One does not need to worry
about broken circuits and has a bigger chance of it working than boards that the
manually created bread board.

4. Inexpensive to mass produced

Creation of multiple circuit boards from one design is easy to do since it only needs to
print the design and etch it in a copper board. It makes mass production cheaper than
manually created boards. One can save the schematic design and can reproduce it
anytime that the board is needed.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 42 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

5. Perfect for making reproduction

As mentioned above, printed circuit boards are ideal for reproduction of multiple
boards. Since it is computer generated, one can create uniform printed circuit boards
using the same schematic layout. Thus, creating boards that are identical is effortless to
make.

Disadvantage of Printed Circuit Boards

Despite the many advantages on the application of printed circuit boards, there are
certain disadvantages that come with its use. Listed below are the major disadvantages
of PCB.

1. Printed circuit board is not easy to repair when damaged

PCBs are impossible to repair when already damaged. Compared to ordinary bread
board wherein you can remove the components and fix damaged parts, the only way to
remedy a damaged printed circuit board is to replace the whole board.

2. Etching of printed circuit boards poses a harmful effect to the environment

Because etching PCBs involves the use of some chemicals, it can produce harmful effect
to the environment. Hence, in terms of being eco-friendly, PCB is the least choice to use.

3. Printed circuit boards cannot be updated

One cannot update the printed circuit board once it was already created. Thus, to add
even for just one component to test a certain circuitry, it should be re-printed again.

4. PCBs can only be used for specific circuits

The design of printed circuit boards is specific and fixed. Thus, you need to use a
different PCB for different types of circuits.

Reference:
[1] http://www.dredging-m3.com/the-advantages-and-disadvantages-of-printed-
circuit-boards/

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 43 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Supplementary Text for AMIE Students


Advantages of a PCB Board

Printed circuit boards, or PCBs, have become an integral part of electronic equipments.
A typical PCB contains a large number of active and passive components connected
together through traces on the board. With the availability of very small-size electronic
components, it is possible to develop large circuits on small PCBs.

Low Electronic Noise

When properly laid out, a PCB minimizes electronics noise that could significantly
degrade performance. The electrical components on a PCB are organized in such
as way that the path lengths of the electrical current between them are
minimized, leading to low radiation and pickup of electromagnetic waves. This
ensures lower cross-talk between components and between different traces,
which is a major concern in electronic circuits.

Ease in Diagnostics and Repair

PCBs are helpful in performing diagnostics for a number of reasons. The


components and their polarities on a well-designed PCB are clearly labeled on the
board, which is convenient for installation as well as repair. For diagnostics, one
often needs to trace signal paths, which would be very difficult to perform if the
traces were not exposed and well organized.

Compact Size

A typical PCB contains a large number of electronic components, most of which


are very small in size. Without a PCB, it would be nearly impossible to connect
such components together with wires. A PCB provides a convenient platform to
arrange the electronic components in a compact and efficient way. This
compactness allows development of large and complicated electronic circuits in
small form factors, taking less space in devices.

Immunity to Movement

Since components on a PCB are held fixed to the board by solder flux, they do not
move, irrespective of the movement of the board. This enables the electronic
circuit to be placed in devices that are moving or shaking without worrying about
the possibility of component displacement and subsequent electronic short
circuits.

Reference:
[1] http://www.ehow.com/info_8261204_advantages-pcb-board.html

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 44 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: With a diagram, describe the Memory Hierarchy. 10 April-2010

Memory Hierarchy:

power (heat!).

--written programs tend to exhibit good locality.

memory hierarchy.

In computer architecture the memory hierarchy is a concept used when discussing


performance issues in computer architectural design, algorithm predictions, and the
lower level programming constructs such as involving locality of reference. The memory
hierarchy in computer storage distinguishes each level in the hierarchy by response
time. Since response time, complexity, and capacity are related,[1] the levels may also be
distinguished by their performance and controlling technologies.

The many trade-offs in designing for high performance will include the structure of the
memory hierarchy, i.e. the size and technology of each component. So the various
components can be viewed as forming a hierarchy of memories (m 1,m2,...,mn) in which
each member mi is in a sense subordinate to the next highest member mi+1 of the
hierarchy. To limit waiting by higher levels, a lower level will respond by filling a buffer
and then signaling to activate the transfer.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 45 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

There are four major storage levels.

1. Internal Processor registers and cache.


2. Main the system RAM and controller cards.
3. On-line mass storage Secondary storage.
4. Off-line bulk storage Tertiary and Off-line storage.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 46 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Supplementary Text for AMIE Students


Memory hierarchy

Diagram Of The Computer Memory Hierarchy

In computer architecture the memory hierarchy is a concept used when discussing


performance issues in computer architectural design, algorithm predictions, and the
lower level programming constructs such as involving locality of reference. The memory
hierarchy in computer storage distinguishes each level in the hierarchy by response
time. Since response time, complexity, and capacity are related,[1] the levels may also be
distinguished by their performance and controlling technologies.

The many trade-offs in designing for high performance will include the structure of the
memory hierarchy, i.e. the size and technology of each component. So the various
components can be viewed as forming a hierarchy of memories (m 1,m2,...,mn) in which
each member mi is in a sense subordinate to the next highest member mi+1 of the
hierarchy. To limit waiting by higher levels, a lower level will respond by filling a buffer
and then signaling to activate the transfer.

There are four major storage levels.[1]

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 47 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

5. Internal Processor registers and cache.


6. Main the system RAM and controller cards.
7. On-line mass storage Secondary storage.
8. Off-line bulk storage Tertiary and Off-line storage.

This is a general memory hierarchy structuring. Many other structures are useful. For
example, a paging algorithm may be considered as a level for virtual memory when
designing a computer architecture, and one can include a level of nearline storage
between online and offline storage.

Contents

1 Properties of the technologies in the memory hierarchy


2 Application of the concept
3 See also
4 References

Properties of the technologies in the memory hierarchy

Adding complexity slows down the memory hierarchy.[2]


CMOx memory technology stretches the Flash space in the memory hierarchy[3]
One of the main ways to increase system performance is minimising how far
down the memory hierarchy one has to go to manipulate data.[4]
Latency and bandwidth are two metrics associated with caches and memory.
Neither of them is uniform, but is specific to a particular component of the
memory hierarchy.[5]
Predicting where in the memory hierarchy the data resides is difficult. [5]
...the location in the memory hierarchy dictates the time required for the prefetch
to occur.[5]

Application of the concept

Memory hierarchy of an AMD Bulldozer server.

The number of levels in the memory hierarchy and the performance at each level has
increased over time. For example, the memory hierarchy of an Intel Haswell Mobile [6]
processor circa 2013 is:

Processor registers the fastest possible access (usually 1 CPU cycle). A few
thousand bytes in size
Cache

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 48 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

o Level 0 (L0) Micro operations cache 6 KiB [7] in size


o Level 1 (L1) Instruction cache 128 KiB in size
o Level 1 (L1) Data cache 128 KiB in size. Best access speed is around 700
GiB/second[8]
o Level 2 (L2) Instruction and data (shared) 1 MiB in size. Best access
speed is around 200 GiB/second[8]
o Level 3 (L3) Shared cache 6 MiB in size. Best access speed is around 100
GB/second[8]
o Level 4 (L4) Shared cache 128 MiB in size. Best access speed is around
40 GB/second[8]
Main memory (Primary storage) Gigabytes in size. Best access speed is around
10 GB/second.[8] In the case of a NUMA machine, access times may not be uniform
Disk storage (Secondary storage) Terabytes in size. As of 2013, best access
speed is from a solid state drive is about 600 MB/second [9]
Nearline storage (Tertiary storage) Up to exabytes in size. As of 2013, best
access speed is about 160 MB/second[10]
Offline storage

The lower levels of the hierarchy from disks downwards are also known as tiered
storage. The formal distinction between online, nearline, and offline storage is:[11]

Online storage is immediately available for I/O.


Nearline storage is not immediately available, but can be made online quickly
without human intervention.
Offline storage is not immediately available, and requires some human
intervention to bring online.

For example, always-on spinning disks are online, while spinning disks that spin-down,
such as massive array of idle disk (MAID), are nearline. Removable media such as tape
cartridges that can be automatically loaded, as in a tape library, are nearline, while
cartridges that must be manually loaded are offline.

Most modern CPUs are so fast that for most program workloads, the bottleneck is the
locality of reference of memory accesses and the efficiency of the caching and memory
transfer between different levels of the hierarchy[citation needed]. As a result, the CPU spends
much of its time idling, waiting for memory I/O to complete. This is sometimes called
the space cost, as a larger memory object is more likely to overflow a small/fast level
and require use of a larger/slower level. The resulting load on memory use is known as
pressure (respectively register pressure, cache pressure, and (main) memory
pressure). Terms for data being missing from a higher level and needing to be fetched
from a lower level are, respectively: register spilling (due to register pressure: register
to cache), cache miss (cache to main memory), and (hard) page fault (main memory to
disk).

Modern programming languages mainly assume two levels of memory, main memory
and disk storage, though in assembly language and inline assemblers in languages such
as C, registers can be directly accessed. Taking optimal advantage of the memory

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 49 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

hierarchy requires the cooperation of programmers, hardware, and compilers (as well
as underlying support from the operating system):

Programmers are responsible for moving data between disk and memory through
file I/O.
Hardware is responsible for moving data between memory and caches.
Optimizing compilers are responsible for generating code that, when executed,
will cause the hardware to use caches and registers efficiently.

Many programmers assume one level of memory. This works fine until the application
hits a performance wall. Then the memory hierarchy will be assessed during code
refactoring.

Reference:
[1] https://en.wikipedia.org/wiki/Memory_hierarchy

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 50 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: What are the functions of BIOS in a PC? Where is the BIOS stored in a modern
computer? Is it possible to upgrade the BIOS in a given computer? If so, how? 8 April-
2005

Functions of BIOS in a PC:


The BIOS (an acronym for Basic Input/Output System and also known as the
System BIOS, ROM BIOS or PC BIOS) is a type of firmware used to perform hardware
initialization during the booting process (power-on startup) on IBM PC compatible
computers, and to provide runtime services for operating systems and programs. The
BIOS firmware is built into personal computers (PCs), and it is the first software they
run when powered on. The name itself originates from the Basic Input/Output System
used in the CP/M operating system in 1975. Originally proprietary to the IBM PC, the
BIOS has been reverse engineered by companies looking to create compatible systems
and the interface of that original system serves as a de facto standard.

The fundamental purposes of the BIOS in modern PCs are to initialize and
test the system hardware components, and to load a boot loader or an operating system
from a mass memory device. The BIOS additionally provides an abstraction layer for the
hardware, i.e., a consistent way for application programs and operating systems to
interact with the keyboard, display, and other input/output (I/O) devices. Variations in
the system hardware are hidden by the BIOS from programs that use BIOS services
instead of directly accessing the hardware. MS-DOS (PC DOS), which was the dominant
PC operating system from the early 1980s until the mid-1990s, relied on BIOS services
for disk, keyboard, and text display functions. MS Windows NT, Linux, and other
protected mode operating systems in general ignore the abstraction layer provided by
the BIOS and do not use it after loading, instead accessing the hardware components
directly.

Where BIOS is Stored:


BIOS software is stored on a non-volatile ROM chip on the motherboard. In
modern computer systems, the BIOS contents are stored on a flash memory chip so that
the contents can be rewritten without removing the chip from the motherboard. This
allows BIOS software to be easily upgraded to add new features or fix bugs, but can make
the computer vulnerable to BIOS rootkits.

How to Update Your BIOS

Your computer's BIOS (Basic Input/Output System) is the first software your PC loads.
It sets the stage for your operating system, so to speak, by finding all your PC's various
hardware components and letting the operating system know it can use them.

As with any software, your computer or motherboard manufacturer periodically


updates the BIOS to fix bugs, add compatibility with new devices, improve caching
functions, and make several other hardware tweaks that can speed up your boot time
and fix annoying issues. These updates are available at the manufacturer's site. But if
you make a mistake in the update process, you risk rendering your PC unbootable.
Here's how to make sure your BIOS update goes without a hitch.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 51 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Step 1: Identify your current BIOS version.


Check your BIOS version, without restarting your PC, by using msinfo32.exe (as
described in the text).

The easiest way to find your BIOS version is to open up the System Information app in
Windows--just type msinfo32 into the search bar (for Windows 7/Vista) or the Run box
(XP), and click System Summary; your BIOS version should now show up on the right
under your processor speed. Record your version number (and the date that appears
afterwards, if applicable).
Step 2: Check your PC/motherboard manufacturer's Website for BIOS updates.

Most PC manufacturers handle BIOS updates based on your specific line and model, so
head over to your manufacturer's support page and check its listings for your PC,
because if you download and install a BIOS intended for a different model, your PC
probably won't work (although most BIOS updaters are smart enough to notice if you
try to install them on the wrong hardware). If there is a BIOS update file available, grab
it--along with any documentation it comes with, because often warnings and specific
instructions are contained in the Read Me docs.

Those of you who assembled your PC yourself will need to look for BIOS updates from
your motherboard manufacturer's Website. If you don't remember your motherboard's
model number, you can look it up without opening up the case by downloading and
running CPU-Z and clicking on the Mainboard tab.

Step 3: Read the included documentation.


Your PC's BIOS handles a lot of the nuts and bolts.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 52 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

The BIOS updater's Read Me file will most likely include a list of fixes and new functions,
often to support new hardware. Updating the BIOS for my Lenovo Thinkpad T500, for
example, added support for a new AC adapter and a 1600-by-900-pixel screen
resolution on an external monitor; the update also fixed fan speed and Webcam issues
that could not have been handled by updating Windows or my specific device driver
software.

More important, however, were these notes in the Read Me file: If I was running Vista
on my T500, I'd need to make sure that I had a certain patch installed; and if my T500
had a certain graphics card, I would need to update its drivers above a certain version
before updating my BIOS. Read and reread your docs, or you might make your PC unable
to boot without even knowing why.

Step 4: Update your BIOS.

Most newer PCs have a fairly easy BIOS update procedure: Just download the .exe file
from your PC manufacturer's Website, quit all open programs, run the .exe, and let it
handle the patch; then reboot. If your PC suddenly shuts down in the middle of the BIOS
update, you won't be able to boot up, so make sure you're not running off a laptop
battery. Ideally, you're plugged into an uninterruptible power supply (UPS), especially
if you're in an area prone to blackouts.

Older PCs, however, might require you to set up your own bootable disk to update the
BIOS yourself. You might still be able to download an app that configures a USB thumb
drive, blank CD/DVD, or even a floppy disk so that you can boot off of it to update the
BIOS, or an ISO image file that can be used in your disc-burning app of choice (if you
don't have such an app, try ISO Recorder for Windows XP or the version for Windows
7/Vista) to create a BIOS update CD.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 53 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Other systems will have you copy a few files to your bootable disk, restart, and open up
the BIOS during start-up (typically by pressing a specified key for setup options), and
change the boot order so your system looks for a bootable USB drive or CD before
loading the OS from your hard drive.

Reference:
[1] http://superuser.com/questions/707254/where-is-the-bios-stored
[2] http://www.pcworld.com/article/187437/how_to_update_your_bios.html

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 54 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Supplementary Text for AMIE Students


The BIOS (an acronym for Basic Input/Output System and also known as the System
BIOS, ROM BIOS or PC BIOS) is a type of firmware used to perform hardware
initialization during the booting process (power-on startup) on IBM PC compatible
computers, and to provide runtime services for operating systems and programs. The
BIOS firmware is built into personal computers (PCs), and it is the first software they
run when powered on. The name itself originates from the Basic Input/Output System
used in the CP/M operating system in 1975. Originally proprietary to the IBM PC, the
BIOS has been reverse engineered by companies looking to create compatible systems
and the interface of that original system serves as a de facto standard.

The fundamental purposes of the BIOS in modern PCs are to initialize and test the
system hardware components, and to load a boot loader or an operating system from a
mass memory device. The BIOS additionally provides an abstraction layer for the
hardware, i.e., a consistent way for application programs and operating systems to
interact with the keyboard, display, and other input/output (I/O) devices. Variations in
the system hardware are hidden by the BIOS from programs that use BIOS services
instead of directly accessing the hardware. MS-DOS (PC DOS), which was the dominant
PC operating system from the early 1980s until the mid-1990s, relied on BIOS services
for disk, keyboard, and text display functions. MS Windows NT, Linux, and other
protected mode operating systems in general ignore the abstraction layer provided by
the BIOS and do not use it after loading, instead accessing the hardware components
directly.

Most BIOS implementations are specifically designed to work with a particular


computer or motherboard model, by interfacing with various devices that make up the
complementary system chipset. Originally, BIOS firmware was stored in a ROM chip on
the PC motherboard; in modern computer systems, the BIOS contents are stored on flash
memory so it can be rewritten without removing the chip from the motherboard. This
allows easy updates to the BIOS firmware so new features can be added or bugs can be
fixed, but it also creates a possibility for the computer to become infected with BIOS
rootkits.

Unified Extensible Firmware Interface (UEFI) was designed as a successor to BIOS,


aiming to address its technical shortcomings.[4] As of 2014, new PC hardware
predominantly ships with UEFI firmware.

Reference:
[1] https://en.wikipedia.org/wiki/BIOS

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 55 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Supplementary Text for AMIE Students


Whats a BIOS?

BIOS stands for basic input/output system. When you power your computer on, your
BIOS takes control, starting the power-on self test (POST) and passing control over to
the boot loader, which boots your computers operating system. The BIOS is low-level
system software that should just work without getting in your way. Computers are
now coming with UEFI firmware instead of the traditional BIOS, but the same is true for
UEFI its low-level system software with a similar role.

Unlike your operating system (which is stored on your hard drive), your computers
BIOS is stored on a chip on your motherboard.

Image Credit: Uwe Hermann on Flickr

Flashing a BIOS

Manufacturers often release updates to their computers BIOSes. If you built your own
computer, a BIOS update would come from your motherboard vendor. These updates
can be flashed onto the BIOS chip, replacing the BIOS software the computer came
with with a new version of the BIOS.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 56 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

BIOSes are computer-specific (or motherboard-specific), so you will need the BIOS for
your exact model of computer (or motherboard) to update your computers BIOS.

Why You Probably Shouldnt Update Your BIOS

BIOS updates arent big software upgrades that add new features, security patches, or
performance improvements. BIOS updates typically have very short change logs they
may fix a bug with an obscure piece of hardware or add support for a new model of CPU.

If your computer is working properly, you probably shouldnt update your BIOS. You
likely wont see the difference between the new BIOS version and the old one. In some
cases, you may even experience new bugs with a new version of the BIOS, as the BIOS
that came with your computer may have gone through more testing.

Flashing a BIOS isnt as easy as installing a normal software update. You will often want
to flash your computer from DOS (yes, DOS you may have to create a bootable USB
drive with DOS on it and restart into that environment), as problems could occur when
flashing from Windows. Each manufacturer has their own instructions for flashing a
BIOS.

You will need the version of the BIOS for your exact hardware. If you get a BIOS for
another piece of hardware even a slightly different revision of the same motherboard
this could cause problems. BIOS flashing tools usually try to detect whether the BIOS

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 57 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

fits your hardware, but if the tool attempts to flash the BIOS anyway, your computer
could become unbootable.

If your computer loses power while flashing the BIOS, your computer could become
bricked and unable to boot. Computers should ideally have a backup BIOS stored in
read-only memory, but not all computers do.

Image Credit: Jemimus on Flickr

When You Should Update Your BIOS

Given that you probably will not see any improvements from updating your BIOS, that
new bugs could pop up, and the potential for errors while flashing, you shouldnt update
your BIOS unless you have a reason to. Here are a few cases where updating makes
sense:

Bugs: If you are experiencing bugs that are fixed in a newer version of the BIOS
for your computer (check the BIOS change log on the manufacturers website),
you may be able to fix them by updating your BIOS. A manufacturer may even
advise you to update your BIOS if you contact tech support and have a problem
that has been fixed with an update.
Hardware Support: Some motherboard manufacturers add support for new CPUs,
and potentially other hardware, in BIOS updates. If you want to upgrade your

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 58 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

computers CPU to a new CPU possibly one that wasnt yet released when you
purchased your motherboard you may need to update the BIOS.

Be sure to check the change log for the BIOS updates and see if they actually have an
update you require.

If you are not experiencing any bugs that have been fixed and dont need the hardware
support, dont bother updating. You wont get anything out of it except possible new
problems.

Reference:

[1] http://www.howtogeek.com/136881/htg-explains-do-you-need-to-update-your-
computers-bios/

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 59 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: What is Multiprogramming? What Conditions Should Be Satisfied To Meet The


Objectives Of Multiprogramming? April-2005

Multiprogramming:
Multiprogramming is a rudimentary form of parallel processing in which
several programs are run at the same time on a uniprocessor. Since there is only one
processor, there can be no true simultaneous execution of different programs. Instead,
the operating system executes part of one program, then part of another, and so on. To
the user it appears that all programs are executing at the same time.

In a multiprogramming system there are one or more programs loaded


in main memory which are ready to execute. Only one program at a time is able to get
the CPU for executing its instructions (i.e., there is at most one process running on the
system) while all the others are waiting their turn.

The main idea of multiprogramming is to maximize the use of CPU time.


Indeed, suppose the currently running process is performing an I/O task (which, by
definition, does not need the CPU to be accomplished). Then, the OS may interrupt that
process and give the control to one of the other in-main-memory programs that are
ready to execute (i.e. process context switching). In this way, no CPU time is wasted by
the system waiting for the I/O task to be completed, and a running process keeps
executing until either it voluntarily releases the CPU or when it blocks for an I/O
operation. Therefore, the ultimate goal of multiprogramming is to keep the CPU busy as
long as there are processes ready to execute.

Note that in order for such a system to function properly, the OS must be
able to load multiple programs into separate areas of the main memory and provide the
required protection to avoid the chance of one process being modified by another one.
Other problems that need to be addressed when having multiple programs in memory
is fragmentation as programs enter or leave the main memory. Another issue that needs
to be handled as well is that large programs may not fit at once in memory which can be
solved by using pagination and virtual memory. Please, refer to this article for more
details on that.

Finally, note that if there are N ready processes and all of those are highly
CPU-bound (i.e., they mostly execute CPU tasks and none or very few I/O operations),
in the very worst case one program might wait all the other N-1 ones to complete before
executing.

Conditions that Should Be Satisfied To Meet the Objectives of Multiprogramming:


Could not be Answered

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 60 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: What is Microprocessor? Draw the architecture of Microprocessor. Describe the


Microprocessors Of Different Generation. Also briefly describe some of the processors
from the fifth generation of processors with their specifications. 15 Marks April-2011

Microprocessor:
A microprocessor is a computer processor that
incorporates the functions of a computer's
central processing unit (CPU) on a single
integrated circuit (IC), or at most a few
integrated circuits. The microprocessor is a
multipurpose, programmable device that
accepts digital data as input, processes it
according to instructions stored in its
memory, and provides results as output.
Microprocessors contain both combinational
logic and sequential digital logic. Microprocessors operate on numbers and symbols
represented in the binary numeral system.

A microprocessor is also known as a central processing unit in which numbers of


peripherals are fabricated on a single chip. It has ALU (arithmetic and logic unit), a
control unit, registers, bus systems and a clock to perform computational tasks.

Architecture of Microprocessor

Microprocessor is a single IC package in which a number of useful functions are


integrated and fabricated on a single silicon semiconductor chip. Its architecture
consists of a central processing unit, memory modules, a system bus and an
input/output unit.

Architecture of Microprocessor

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 61 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

The system bus connects the various units to facilitate exchange of information. It
further consists of data, address and control buses to perform data exchanging in a
proper manner.

The Central processing unit consists of one or more arithmetic logic unit (ALU),
registers, and control unit. Based on the registers also the generations of
microprocessor can be classified. A microprocessor consists of general purpose and
special type of registers to execute instructions and to store the address or data while
running the program. The ALU computes all arithmetic as well as logic operations on
data and specifies the size of microprocessor like 16 bit or 32 bit.

The Memory unit holds the program as well as data and is divided into a processor,
primary and secondary memory. The Input and output unit interfaces the I/O peripheral
devices to microprocessor for accepting and sending information.

Generation of Microprocessor

1st Generation: This was the period during 1971 to 1973 of microprocessors history. In
1971, INTEL created the first microprocessor 4004 that would run at a clock speed of
108 KHz. During this period, the other microprocessors in the market including
Rockwell international PPS-4, INTEL-8008 and National semiconductors IMP-16 were
in use. But, all these were not TTL compatible processors.

2nd Generation: This was the period during 1973 to 1978 in which very efficient 8-bit
microprocessors were implemented like Motorola 6800 and 6801, INTEL-8085 and
Zilogs-Z80, which were among the most popular ones. Owing to their superfast speed,
they were costly as they were based on NMOS technology fabrication.

3rd Generation: During this period 16 bit processors were created and designed using
HMOS technology. From 1979 to 1980, INTEL 8086/80186/80286 and Motorola 68000
and 68010 were developed. Speeds of those processors were four times better than the
2nd generation processors.

4th Generation: From 1981 to 1995 this generation developed 32 bit microprocessors
by using HCMOS fabrication. INTEL-80386 and Motorolas 68020/68030 were the
popular processors.

5th Generation: From 1995 to until now this generation has been bringing out high-
performance and high-speed processors that make use of 64-bit processors. Such
processors include Pentium, Celeron, Dual and Quad core processors.

Thus, microprocessor has evolved through all these generations, and the fifth
generation microprocessors represent advancement in specifications.

Therefore, some of the processors from the fifth generation of processors with their
specifications are briefly explained below.

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 62 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Intel Celeron

Intel Celeron is introduced in April 1998. It refers to a range of Intels X86 CPUs for value
personal computers. It is based on Pentium 2 and can run on all IA-32 computer
programs.

Intel Celeron

From the year 2000 to up to now, here is a brief history of Intel Celeron processors.

The year 2000 marked the introduction of the following processors:

Jan 4-Intel Celeron Processor (533MHz)


Feb14-Mobile Intel Celeron Processor (450, 500 MHz)
June19-Low Voltage Mobile Intel Celeron Processor (500 MHz)

The year 2001 marked the introduction of the following processors:

Jan 3-Intel Celeron Processor (800 MHz)


Oct 2-Intel Celeron processor (1.2 GHz)

The year 2002 marked the introduction of the following processors:

Jan 3-Intel Celeron Processor (1.30 GHz)


Nov 20-Intel Celeron Processor (2.10, 2.20 GHz)

The year 2002 marked the introduction of the following processors:

Jan 14: Mobile Intel Celeron processor (2 GHz)


Low Voltage Mobile Intel Celeron Processor (866 MHz)
Nov 12: Mobile Intel Celeron Processor (2.50GHz)
Ultra-Low Voltage Mobile Intel Celeron Processor (800 MHz)

The year 2004-2007 marked the introduction of the following processors:

Jan4, 2004: Intel Celeron M processor 320 and 310 (1.3, 1.2 GHz)

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 63 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

July 20, 2004: Intel Celeron M processor Ultra Low voltage 353 (900 MHz)
March- Intel Celeron M processor 430-450 (1.73-2.0 GHz)
Nov 23: Intel Celeron D Processor 345 (3.06 GHz)

The year 2008 marked the introduction of the following processor:

Jan 2008 Celeron Core 2 DUO (Allendale)

Pentium

Pentium was introduced on March 2, in 1993. Pentium succeeded the Intel 486; The 4
indicates the fourth generation micro architecture in the microprocessors history.
Pentium refers to an Intels single core x 86 microprocessor, which is based on the fifth
generation micro-architecture. This processors name was derived from the Greek word
penta, means five.

The original Pentium processor was succeeded by the Pentium MMX in 1996. This
processor has a data bus of 64 bits. A standard single transfer cycle can read or write up
to 64 bits at a time. The Burst read and writes back cycles are supported by the Pentium
processors. These cycles are used for cache operations and transfer 32 bytes (size of the
Pentium cache line) in 4 clocks. All cache operations are burst cycles for the Pentium.

Pentium Processor

The year 2000 marked the introduction of the following processors:

March 20: Intel Pentium III processor (866, 850MHz)


March 8: Intel Pentium III processor (1GHz)
Nov 20: Intel Pentium 4 Processor (1.50, 1.40GHz)

The year 2001 marked the introduction of the following processors:

April 23: Pentium 4 Processor 1.7


July 2: Pentium 4 Processor (1.80, 1.60GHz)
Aug 27: Intel Pentium 4 Processor (2, 1.90 GHz)

The year 2002 marked the introduction of the following processors:

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 64 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Jan 7: Intel Pentium 4 processor (2.20, 2GHz)


Jan 8: Intel Pentium III processor for servers (1.40 GHz)
April 2, 2002: Intel Pentium 4 Processor (2.40, 2.20 GHz)
Jan 21: Ultra Low Voltage Mobile Pentium III processor-M
Low Voltage Mobile Pentium III processor (866, 850MHz)
Nov 14, 2002: Intel Pentium 4 processor (3.06 GHz with HT technology)

The year 2003 marked the introduction of the following processors:

Mobile Intel Pentium 4 Processor-M (2. 40 GHz)


May 21: Intel Pentium 4 Processor with Hyper Threading (2.80 C GHz, 2.60 C GHz,
2.40 C GHz)
Nov 3: Intel Pentium 4 Processor Extreme Edition (3.20 GHz)

The year 20004 marked the introduction of the following processors:

Feb 2, 2004: Intel Pentium 4 Processor (90nm) (3.40 GHz, 3.20 GHz, 3.0 GHz, 2.80
GHz)
Intel Pentium 4 Processor Extreme Edition (0.13 micron) (3.40 GHz)
April 7, 2004: Ultra Low Voltage Intel Pentium M Processor (1.10, 1.30 GHz)
Nov 15, 2004: Intel Pentium 4 Processor Extreme Edition Supporting HT
Technology (3.46GHz)

The year 2005-06 marked the introduction of the following processors:

Intel Pentium 4 Processor Extreme Edition supporting HT Technology (3.80GHz)


April 2005: Intel Pentium Processor Extreme Edition 840 (3.20 GHz)
The year 2007&08 marked the introduction of the following processors:
Intel Pentium Processor Extreme Edition 955 (3.46 GHz)
Intel Pentium Processor Extreme Edition 965 (3.73 GHz)

Xeon

Xeon processor is a 400 MHz Pentium processor from the Intel for use in workstations
and enterprise servers. This processor is designed for multimedia applications,
engineering graphics, Internet and large data base servers.

Xeon Processor

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 65 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Brief history of Xeon processors

The year 2000-2001 marked the introduction of the following processors:

Jan 12: Intel Pentium III Xeon Processor (800 Mega Hertz)
Sep 25, 2001: Intel Xeon Processor (2 Giga Hertz)
May 24: Intel Pentium III Xeon Processor (933 Mega Hertz)

The year 2002-2004 marked the introduction of the following processors:

Jan 09, 2002: Intel Xeon Processor (2.20 Giga Hertz)


March 12, 2002: Intel Xeon Processor M (1.60 Giga Hertz)
March 10, 2003: Intel Xeon Processor 3 GHz (400 MHz system bus)
Nov 18: Intel Xeon Processor (2.80 Giga Hertz)
Oct 6, 2003: Intel Xeon Processor (3.20 Giga Hertz)
March 2, 2004: Intel Xeon Processor MP 3 GHz (4 MB L3 CACHE)

The year 2005-2008 marked the introduction of the following processors:

March 2005: Intel Xeon Processor MP (2.666 -3.666 Giga Hertz)


October 2005: Dual Core Intel Xeon Processor (2.8 Giga Hertz)
August 2006: Dual Core Intel Xeon-7140M (3.33-3.40 Giga Hertz)

Reference:

[1] https://www.elprocus.com/microprocessor-history-and-brief-information-about-
its-generations/

[2] http://scanftree.com/microprocessor/Evolution-and-Classification-of-
Microprocessors
[3] https://en.wikipedia.org/wiki/Microprocessor

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 66 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Question: Draw a Bus Organized Architecture Of A Microcomputer. Give the main


Characteristics Of Address Bus, Data Bus And Control Bus of the CPU of a
microcomputer. 5+5 April-2008

Bus Organized Architecture Of A Microcomputer


A system bus is a single computer bus that connects the major components of a
computer system, combining the functions of a data bus to carry information, an address
bus to determine where it should be sent, and a control bus to determine its operation.
The technique was developed to reduce costs and improve modularity, and although
popular in the 1970s and 1980s, more modern computers use a variety of separate
buses adapted to more specific needs.

Characteristics Of Address Bus, Data Bus And Control Bus:


Processor issues the address of the instruction byte or word to the memory system
through the address bus. Processor execution unit, when required, issues the address of
the data (byte or word) to the memory system through the address bus. The address
bus of 32-bits fetches the instruction or data from an address specified by a 32-bit
number.

Let a processor at the start reset the program counter at address 0. Then the processor
issues address 0 on the bus and the instruction at address 0 is fetched from memory. Let
a processor instruction be such that it needs to load register r1 from the memory
address M. The processor issues address M on the address bus and data at address M is
fetched

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 67 of 68 +88-01911-088706
COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH.

Characteristics Of Data Bus:


When the Processor issues the address of the instruction, it gets back the instruction
through the data bus. When it issues the address of the data, it loads the data through
the data bus. When it issues the address of the data, it stores the data in the memory
through the data bus. A data bus of 32-bits fetches, loads, or stores the instruction or
data of 32-bits. When the processor issues address m for an instruction, it fetches the
instruction through data bus from address m. For a 32-bit instruction, the word at data
bus is fetched from addresses m, m + 1, m + 2, and m + 3.

When an instruction is given to store register r1 to the memory address M, the processor
issues address M on the bus and sends the data at address M through the data bus. For
32-bit data, word at data bus is to the memory addresses M, M + 1, M + 2, and M+ 3.

Characteristics of Control Bus:


Control bus Issues signals to control the timing of various actions during
interconnection. Bus signals synchronize the subsystems. Control signals as per the
processor design. Control bus issues signals to control the timing of various actions
during interconnection. Control bus signals from processor to Memory read, Memory
write, IO read, IO write. Control bus signals synchronize the subsystems: memory and
IO systems.

Control bus signals from processor to Address latch enable or data valid. Control bus
signals from systems to processor for Interrupt and hold. Control bus signals from
processor to systems for Interrupt acknowledge, hold acknowledge.

When the processor issues the address, it also issues a memory-read control signal and
waits for the data or instruction. Memory unit must place the instruction or data during
the interval in which memory read signal is active (not inactivated by the processor).

Let the processor issues the address on the address bus, and (after allowing sufficient
time for the all address bits setup) it places the data on the data bus

Also then issues memory-write control signal (after allowing sufficient time for the all
data bits setup) for store signal to memory. The memory unit must write (store) the
data during the interval in which memory-write signal is active (not inactivated by the
processor).

Reference:
[1] https://en.wikipedia.org/wiki/System_bus

COMPUTER FUNDAMENTALS COMPUTER ORG. & ARCH. SYED MIR TALHA ZOBAED
+88-01719-033364 Page 68 of 68 +88-01911-088706

You might also like