QUESTION BANK COMPUTER ARCHITECTURE ORGANIZATION Q. What is Computer Architecture?

Transcription

QUESTION BANK COMPUTER ARCHITECTURE ORGANIZATION Q. What is Computer Architecture?
QUESTION BANK
COMPUTER ARCHITECTURE ORGANIZATION
Q. What is Computer Architecture?
Ans. Computer Architecture : It is concerned with
structure and behaviour of computer as seen by the user.
It includes the information formats, the instruction set,
and techniques for addressing memory of a computer
system is concerned with the specifications of the various
functional modules, such as processors and memories
and structuring them together into a computer system.
Q. What is Computer Organisation?
Ans. Computer Organisation: It is concerned with the
way the hardware components operate and the way they
are connected together to form the computer system.
The various components are assumed to be in place and
the task is to investigate the organisational structure to
verify that the computer parts operate.
Q. What is the concept of layers in architectural
design?
Ans. The concepts of layers in architectural design are
described as below:
Nitisha Garg
Asst. Prof. (GIET)
1. Complex problems can be segmented into smaller and
more manageable form.
2. Each layer is specialized for specific functioning.
3. Upper layers can share the services of a lower layer.
Thus layering allows us to reuse functionality.
4. Team development is possible because of logical
segmentation. A team of programmers will build. The
system and work has to be sub-divided of along clear
boundaries.
Q. Differentiate between computer architecture
and computer organisation.
Ans. Difference between
computer organisation:
computer
architecture
and
Q. Draw top leveled view of computer components.
Ans. Computer organization includes emphasis on
system components, circuit design, logical design,
structure of instructions, computer arithmetic, processor
control, assembly programming
performance enhancement.
and
methods
of
Diagram : Top level view of computer component
Q.
Write
typical
architecture.
physical
realisations
of
Ans. Important types of bus architecture used in a
computer system are:
(i) PCI bus
(ii) ISA bus
(iii) Universal serial bus (USB)
(iv) Accelerated graphics port (AGP).
PCI bus : PCI stands for peripheral component
interconnect It was developed by Intel. Today it is a
widely used bus architecture. The PCI bus can operate
with either 32 bits or 64 bit data bus and a full 32-bit
address bus.
ISA Bus: ISA stands for industry standard Architecture.
Most Pcs contain ISA slot on the main board to connect
either an 8—bit ISA card or a 16—bit ISA card.
USB : It is a high speed serial bus. It has higher data
.transfer rate than that of a serial port fashion. Several
devices can be connected to it in a daisy chain.
AGP: It is a 32—bit expansion slot or bus specially design
for video card.
Q. What is Channel?
Ans. A channel is one of data transfer technique. This
technique is a traditionally used on mainframe computers
and also becoming more common on smaller systems. It
controls multiple high speed devices. It combines the
features of multiple and selector channels. This channel
provides a connection to a number of High speed
devices.
Q. Draw the machine architecture of 8086.
Ans.
Q. Explain about the computer Organisation.
Ans. Computer organisation is concerned with the way
the hardware components operate and the way they are
connected together to form the computer system. The
various components are assumed to be in place ad task
is to be a organisational structure. IL includes emphasis
on the system components, circuit design, logical design,
structure of instruction, computer arithmetic, processor
control, assembly programming and methods of
performance enhancement.
Q. Explain the significance of layered architecture
Ans. Significance of layered architecture: In layered
architecture, complex problems can be segmented into
smaller and more manageable form. Each layer is
specialized for specific functioning. Team development is
possible because of logical segmentation. A team of
programmers will build. The system, and work has to be
sub-divided of along clear boundaries.
Q. HOw can you evaluate
of processor architecture.
the
performance
Ans. In processor architecture, there is no. of processor
where 8086 and 8088 has taken an average of 12 cycles
to execute a single instruction. XXX286 and XX386 are
4.5 cycles per instruction XX486 and most fourth
generation intel compatible processor such as DMD X 85,
drop the rate further, about 2 cycles per instruction.
Latest
processor
are
pentium
pre,
pentiom
11/111/4/celeron and Athlon/ Duress : These P6 and P7
processor S can execute as many as three or more
instructing per cycle.
Q.Explain
metrics.
the
various
types
of
performance
Ans. Performance metrics include availability, response
time, Channel capacity, latency, Completion time.
Q. Write a short note on “cost/benefit in layered
Architecture design.”
Or
H/W and S/W partitioning design:
Ans. One common architectural design pattern is based
on layers. Layers are an architectural design pattern that
structures applications can be decomposed into groups of
subtasks such that each of subtasks is at a particular
level of abstraction.
A large system requires decomposition. One way to
decompose a system is to segment it into collaborating
objects. Then these objects are grouped to provide
related types of services. Then these groups are
interfaced with each other for inter communication and
that results in a layered architecture. The traditional 3—
tier client server model, which separates application
functionality into three distinct abstractions, is an
example of layered design. The three layers include data,
business rules and graphical user interface. Similar is the
051 seven layer networking model and internet protocol
stack based on layered architecture.
The following are the benefits of layered architecture
1. Complex problems can be segmented into smaller and
more manageable form.
2. Team development is possible because of logical
segmentation. A team of programmers will build the
system, and work has to be sub-divided along
cler boundaries.
3. Upper layers can share the services of a lower layer.
Thus layering allows us to reuse functionality.
4. Each layer is specialized for specific functioning.
Late source code changes should not ripple through the
system
of
layered
architecture.
The
similar
responsibilities should be grouped to help understand
ability and maintainability. Layers are implemented as
software to isolate each disparate concept or technology.
The layers should isolate at the conceptual level. By
isolating the database from the communication code, we
can change one or the other with minimum impact
on each other. Each layer of the system deals with only
one concept. The layered architecture can have many
beneficial effects on application, if it is applied in proper
way. The concept of architecture is simple and easy to
explain to team members and so demonstrate where
each object’s role fits into the team. With the use of
layered architecture, the potential for reuse of many
objects in the system can greatly increased.
Q. Write a note on.
(a) VLIW Architecture (b) Super scalar processor.
Ans. (a) Very long instruction word (VLIW) is a
modification over super scalar architecture VLIW
architecture implements instruction level parallelism
(ILP). VLIW processor fetches very long instruction work
having several operations and dispatches it is parallel
execution to different functional units. The width of
instruction varies from 128 to 1024 bits. VLIW
architecture offers static scheduling as super scalar
architecture offers dynamic (run time) scheduling. That
means view offers a defined plan of execution of
instruction by functional units. Due to static scheduling,
VLIW architecture can handle up to eight operations per
clock cycle. While super scalar architecture can handle up
to five operations at a time. VLIW architecture needs the
complete knowledge of Hardware like processor and their
functional units. It is fast but inefficient for object
oriented and event driver programming. In event driven
and
object
oriented
programming
super
scalar
architecture is used. Hence view and super scalar
architecture are important in different aspects.
(b) Super Scalar Processor : The scalar processor
executes one instruction on one set of operands at a
time. The super scalar architecture allows the execution
of multiple instructions at the same time. In different
pipelines. Here multiple processing elements are used for
different instruction at the same time. Pipelining is also
implemented in each processing elements.
The instruction fetching units fetch multiple instructions
at a time from cache. The instruction decoding unit check
the independence of these instruction so that they can
be executed in parallel. There should be multiple
execution units so that multiple instructions can be
executed at same time. The slowest stage among fetch,
decode and execute will determine the overall
performance of the system. Ideally these three stages
should be equally fast. Practically execution stage in
slowest and drastically affect the performance of system.
Q. Write a note on following:
(i) Pentium Processor - (ii) Server System
Ans. (i) Pentium processor : Pentium processor with
super scalar architecture came as modification of 80486
and 8086. It is based on CISC and uses two pipelines for
integer processor so that two instructions are processed
simultaneously one pipeline will have same condition
then another is compared with hardware 80486
processor had only adder in one chip floating point unit.
One the other side Pentium processor is having adder,
multiplier and divide in on chip floating point unit. That
means Pentium processor can do the multiplication and
division fastly. The separate data and code cache of 8KB
exits on chip. Dual independent bus (DIB) architecture
divides the bus as front side and backside bus. Backside
Bus transfer the data from L2 Cache to CPU and viceversa. Front side bus is used to transfer the data from
CPU to main memory and to other components of
system.
Pentium processor user write back policy for cache data,
while 80486 uses write through policy for cache data.
The detail other common types of processor are AMD and
cyrix Although these two types of processor are less
powerful as compared to Pentium Processor.
(ii) Server System : System is formed as server or
client depending upon the software used in that machine
suppose window 2003 server operating system is
installed on machine, that machine will be termed as
sever. If on the same machine Window 95 is installer
that machine is termed as client. Although server
machine uses specialised hardware meant for faster
processing server provides the service to other machine
called client attached to server. Different types of servers
are Network server, web server, database server, backup
server. Sever system is having powerful computing
power, high performance and higher clock speed. These
system are having good fault tolerance capability using
disk mirroring, disk stripping and RAID concepts. These
system have back up power supply with hot swap. IBM
and SUN servers are providing the different server of
server for different use.
Q. What is principle of performance and scalability
in Computer Architecture.
Ans. Computer Architecture have the good performance
of computer system. It is implementing concurrency can
enhance the performance. The concept of concurrency
can be implemented as parallelism or multiple processors
with a computer system. The computer performance is
measured by the total time needed to execute
application program. Another factor that affects the
performance is the speed of memory. That is reason the
current technology processor is having their own cache
memory. Scalability is required in case of multiprocessor
to have good performance.
The scalability means that as the cost of multiprocessor
increase, the performance should also increase in
proportion. The size access time and speed of memories
and buses play a major role in the performance of the
system.
Q. What is evaluation of computer architecture?
Ans. Computer Architecture involves both hardware
organisation and programming software requirements. At
seen by an assembly language programmer, computer
architecture is abstracted by an instruction set, which
includes opcode (operation codes), addressing modes,
register, virtual memory, etc. from the hardware
implementation point o1 view, the abstract machine is
organised with CPUs, caches, buses, microcode, pipelines
physical memory etc. Therefore, the study of architecture
covers both instruction set architectures and machine
implementation organisation.
Over the past four decades, computer architecture has
gone through evolution rather than revolutionary
changes, sustaining features are those that were proven
performance delivers.
We
started
with
Neumann
architecture
built
as
a
sequential
machine
executing scalar data. The sequential Computer was
improved from bit survival to word-parallel operations,
and from fixed point to floating point operations. The von
Neumann architecture is slow due to sequential
execution of in programs.
Q. What is parallelism and pipelining in computer
Architecture?
Ans. LOOK AHEAD, PARALLELISM , AND PIPELINING IN
COMPUTER ARCHITECTURE
Look ahead techniques were introduced to prefetch
instruction
in
order
to
overlap I/F
(Instruction
fetch/decode and execution) operations and to enable
functional parallelism.
Functional parallelism was supported by two approaches
: One is to use multiple functional units simultaneously
and
the
other
is
to
practice
pipelining
at
various processing levels.
The later includes pipelined instruction execution,
pipelined arithmetic computation, and memory access
operations. Pipelining has proven especially attractive in
performing identical operations repeatedly over vector
data strings. Vector operations were originally carried out
implicitly by software controlled looping using scalar
pipeline processors.
Q.How many cycles are required to execute per
instruction for 8086, 8088, intel 286, 386, 486,
pentium, K6 series, pentium 11/111/4/cebron,
and Athion/Athion XP/Duron?
Ans. The time required to execute instructions for
different processors are as follows:
• 8086 and 8088 : It has taken an average of 12 cycles
to execute a single instruction.
• 286 and 386 : It improve this rate to about 4.5 cycles
per instruction. 486 : The 486 and most other fourth
generation intel-compatible processors, such as the DMD
5 x 86, drop the rate further, to about 2 cycles per
instruction.
• Pentium, K6 Series,: The pentium architecture and
other fifth generation intel compatible processors, such
as those from AMD and cyrix, include twin instruction
pipelines and other improvements that provide for
operation at one or two instruction per cycle.
•
Pentium
pro,
pentium
II,fIII/4/celeron,
and
Athion/Athlon XP/Duron : These P6 and P7 (Sixth and
Seventh generation) processors can execute as many
as three or more instructions per cycle.
Q. What is cost/benefit in layered Architecture
design?
Or
Write functional view of computer which are the
possible computer operational.
Ans. A larger system require decomposition. Only way to
decompose a system is to segment it into collaborating
objects. These objects are grouped to provide related
types of services. Then these groups are interfaced with
each other for inter communication and that results in a
layered architecture.
The following are benefits of layered architecture
1. Complex problems can be segmented into smaller and
more manageable form.
2. Team development is possible because of logical
segmentation. A team of programmes will build the
system, and work has to be subdivided along clear
boundaries.
3. Upper layer can share the services of a lower layer.
Thus layering allows us to reuse functionalities.
4. Each layer is specialized for specific functioning.
5. Late source code changes should not ripple through
the system because of layered architecture.
6. Similar responsibilities should be grouped to help
under stability and maintainability.
7. A message that moves downwards between layers is
called request. A client issues a request to layer. I
suppose layer I cannot fulfill it, then it delegates to layer
J—1.
8. Messages that moves upward between layers are
called notifications. A notification could start at layer I.
Layer I then formulates and sends a message
(notification) to layer j +1.
9. Layers are logical placed to keep information caches.
Requests that normally travel down through several
layers can be cached to improve performance.
10. A system’s programming interface is often
implemented as a layer. Thus if two application or inter
application elements need to communicate placing the
interface responsibilities into dedicated layers. Can
greatly simplify the task and make them more easily
reusable.
Layers are implemented as software to isolate each
disparate concept or technology. The layers should
isolate at conceptual level. By isolating the data base
from the communicate code, we can change one or the
other with minimum impact on each other. Each layer of
the system deals with only one concept.
The layered architecture can have many beneficial effects
on application, if it is applied in proper way. The concept
of the architecture is simple and easy to explain to team
member and so demonstrate where each objects role fits
into the team. With the use of layer architecture, the
potential for reuse of many objects in the system can be
greatly increase. The best benefit of this layering is that
.malws it easy to divide work along layer boundaries is
easy to assign different teams or individuals to work of
coding the layers in layered architectures, since the
interfaces are identified and understood well in
advance of coding. Performance of system is measure of
speed, throughput. Higher is cost involves for
manufacturing of computer, High is the performance as
shown in figure.
Personal computer is cheapest in term of cost among
server, mainframe and super computer. Super computer
is the costliest one. Same is the hierarchy for the
performance of the system. Most of simple applications
can be executed on personal computers. For faster
processing server, mainframe and super computing are
used. Sometimes using too much I/O devices increases
the cost but decreasing the performance in personal
computer. That is termed as diminishing the performance
with increase in the cost/sublinear diminishing, Like SCSI
adopter increase the cost of system but that also
increases the performance of server as termed as super
linear economy in case of server. The ideal case is
termed as linear representation where performance
increases in the same proportion of cost. These are
represented in graph shown in figure.
Q. Define ASCII code.
Ans. ASCII stands for American Standard code for
Information Interchange. It is greatly accepted standard
alphanumeric code used in microcomputers. ACII of bit
code represents 2 128 different characters. These
character represent 26 upper case letter (A to Z), 26
lowercase letters (a to z), 10 numbers (0 to 9), 33
special characters, symbols and 33 control characters.
ASCII 7-bit code is divided into two portions. The left
most 3-bits portion is called zone bits and the 4-bit
portion on the right is called the numeric bits. ASCII 8-bit
version can be used to represent a maximum of 256
characters.
Q. What is EBCDIC?
Ans. EBCDIC stands for extended Binary coded Decimal
interchange code. A standard code that uses 8-bits to
represent each of 256 alphanumeric characters Extended
Binary coded Decimal interchange code is an 8-bit
character encoding used on IBM mainframes EBCDIC
having eight bits code divided into two parts. The first
four, bits (on the left) are called zone and represent the
category of the character and the last four bits (on the
right) are called the digits and identify the specific
character.
Q. Write a short note on: (i) Excess 3 (ii) Gray
code.
Ans. Excess —3 : Excess 3 is a non-weighted code used
to express decimal numbers. The code derives its name
from the fact that each binary code is the corresponding
8421 code plus 0021 (3). Excess representation of
decimal numbers 0 to 9
Example
Gray Code : Gray coding is an important code and is
known for its speed. This code is relatively free from the
errors. In binary coding or 8421 BCD, counting from
7(0111) to 8(1 000) requires 4-bits to be changed
simultaneously. Gray coding avoids this by following only
one bit changes between subsequent numbers.
Q. What is shift register in digital computer.
Ans. Shift registers are the sequential logic circuit used
to shift the data from registers in both directions. Shift
registers are designed as a group of flip-flops connected
together so that the output from one flip-flop becomes
the input to the next flip-flop. The flip-flop are driven by
a common clock signals and can be set or reset
simultaneously. Shift registers can be connected to form
different type of counters.
Q. Which logic name is known as universal logic?
Ans. NAND logic and NOR logic gates are universal logic.
It is possible to implement any logic expression by NAND
and NOR gates. This is because NAND and NOR
gates can be used to perform each of Boolean operations
INVERT, AND and OR. NAND is same as AND gate
symbol except that it has a small circle at output. This a
small circle represents the universal operations.
Q. What is time known when D-input of D-FF must
not change after clock is
applied?
Q. Addition of (1111)2 to 4-bit binary ‘A’ results:
(1) incrementing A (ii) Addition of (F)11
(iii) No change (iv) Decrementing A.
Ans. Addition of (F)H
Q. Register A holds the 8-bit binary 11011001.
Determine the B operand and the logic microoperation to be performed in order to change the
value in A to:
Q. An 8-bit register R contain the binary value 10011100 what is the register
value after an arithmetic shift right? Starting from the initial number
10011100, determine the register value after an arithmetic shift left, and
state whether there is an overflow.
Q. Write an algorithm of summation of a set of
numbers.
Ans. This sum is a sequential operation that requires a
sequence of add and shift micro-operation. There is
addition of n numbers can be done with micro-operation
by
means of combinational circuit that performs the sum all
at once.
An array addition can implemented with a combinational
circuit. The argend and addend are i.e. a0, a1, a2, a3
...a.
There are following steps of summation of a set of
number.
Step 1. There is n-array, numbers which are a1, a1, a2
.. .a so the result is in sum.
Step 2. Input of a0, a2, a3,.. .a1 are given the
combinational logical circuit. It shows the result.
Step 3. The output is takens in sum and some time, a
carry is produced.
Step 4. A carry is put in the carry flag. The total result of
sum is stored in SUM and carry is stored in CARRY.
Q. Simplify the following Boolean functions using
three variable map in sum of product form.
1.f(a,b,c)=(1,4,5,6,7)
2. f.(a, b, c) = E (0, 1, 5, 7)
3. f (a, b, c) = E (1, 2, 3, 6, 7)
4. f (a, Li, c) = (3, 5, 6, 7)
5.f(a, Li, c) Y(O, 2, 3,4,6)
Ans.
Q. Simplify the ( a, b, c, d) = (0,1,2,5,8,9,10)
Boolean functions using four variable map in sum
of product and product of sum form. Verify the
results of both using truth table.
Ans. Sum of Product (SOP)
f(a,b,c,d) =E(O,1,2,5,8,9,1O)
These are two 4-bit input A(A3, A2, A1, A0) B (B3, B2,
B1, l3) and a 4-bit output D (D3, D2,D, D0). The four
inputs form A(A3, A2, A1, A0) are applied directly to X
(X3 X2, X1, X0)
inputs of full adder. The four inputs from B’ (B B2 B1 B0)
are connected to data input I of four multiplexer. The
logic input 0 is connected to data input 12 oi four
multiplexers.
The logic input I is connected to data input 13 of four
multiplexers. One of the four inputs of multiplexer as
output is selected by two selection lines S0 and S1. The
outputs from all four multiplexers are connected to the Y
(Y3 Y2 Y, Y0) inputs of full adder. The input carry Cm is
applied to the carry input of the full adder FAI. The carry
generated by adder is connected to next adder and
finally cout is generated. The output generated by full
adder is represented by expression shown ahead.
Q. Explain the De-Morgan's theorems.
De-Morgan theorem is applicable to n number of
variable. Where n can have value 2, 3, 4 etc. De-Morgan
theorem for three variables will be shown ahead.
(A÷B+C)’ =A’.B’.C’
(A.B.C)’ A’+B’+C’
To prove the following identity
[(A’ + C). (B + D’)]’ = A. C’ + B’. D Let x = [(A’ + C). (B
+ D’)]’
(A’ + C’). (B + D’)’ [De-Morgan theorem]
= (A”. C’) + (B’. D”) [De-Morgan theorem]
= A. C’ + B’. D.
The truth table for the second expression is given ahead.
The equivalent between the entries in column (A’ + B’)
and (A. B’). Prove the 2nd theorem.
Q. 27. What is universality of NAND and NOR
Gates?
Ans. It is possible implement any logic expression using
only NAND gates. This is because NAND gate can he used
to perform each of the Boolean operations INVERT, AND
and OR. NANI) is the same as the AND gate symbol
except that it has a small circle at the output. This small
circle represents the inversion operation. Therefore the
output expression of the input NAND gate is X = (A.B)’
The INVERT, AND OR gates have been constructed using
NAND gates.
NOR is the same as OR gate symbol except that it has a
small circle at the output The small circle represents
the inversion operation
The Boolean expression and logic diagram of two input
NOR gate is described ahead
NAND and NOR are universal gate. It can implement any
logic gate or circuit.
Q. Register a is having S-bit number 11011001.
Determine the operand and logic micro-operation
to be performed in order to change the value in A
to.
(i) 01101101
(ii) 11111101
(iii) Starting from an initial value R = 11011101,
determine the sequence of binary values in R after
a logical shift left, followed by circular shift right,
followed by a logical shift right and a circular shift
left.
Ans. (1) 11011001 A Register
10110100 B Register
01101101 A register after operations.
The selective complement operation complements the
bits in register A where there is 1 in the corresponding
bit of register B. This does not affect the bit value in A.
Where there are 0 in the corresponding bit of register B.
(ii) 11011001 A register
00100100 B register
11111101 A register after operation.
The selective set operation sets the bit in register A to 1.
Where there is I in corresponding bit of register B. This
does not affect the bit value in. A where there are 0 in
corresponding bit of register B.
(iii) 11011101 R register
10111010 R register after logical shift left
01011101 R register after circular shift right
00101110 R register after logical shift right
01011100 R register after circular shift left.
Q. Design a 4-bit common bus to transfer the
contents of one register to other.
Solution. Common bus is a mean for transferring the
information from one register to other. The 4-bit
common bus is constructed with four multiplexers. The
bus is not only used for transferring the information from
register to register but also used for transfer information
from register to memory, memory to register and
memory to memory.
The number of multiplexer are four because there are 4bits in each register used in the common bus. Moreover
there are four registers named register A, register B,
register C and register D. The size of each multiplexer is
4 1 because there are four register. There are two
selection lines S and S in the 4 x 1 multiplexer. These
multiplexers select one of register and its contents are
placed on the common bus. The register is selected as
shown in function table.
Suppose the selection line S1 =00 that means the
selection line has selected register
A. A0 the least significant bit of register A is selected by
MUX 1, A, the second least
significant bit of register A is selected by MUX2, A2 the
third least significant bit of register A is selected by
MUX3 and A3, the most significant bit of the register A. A
is selected by MUX4. Because the value of selection lines
in each multiplexer is S1S0 = 00. The A1, A2 and A.3
have not connected to MUX2, MUX3 and MUX4 because
that will make the diagram to be visually complicated. In
Actual A1, A2 and A3 have been connected to MUX2,
MUX3 and MUX4. Also C1, ‘C2 and C3 have been
connected to MUX 2, MUX3 MUX4. That means ope bit
data is selected by each multiplexer and is transferred to
common bus.
Similarly whee selection S1 5o — that means the register
B is selected. The contents of register B will appear on
common bus.
Similarly when selection S. S0 10, that means the
register D is selected. The contents of register B will
appear on common bus.
Similarly when selection S1 S0—li, that means the
register D is selected. The contents of register will
appear on common bus.
Q. Design 4-bit arithmetic circuit that implements
eight arithmetic operations.
Ans. 4-bit arithmetic circuits constitute of four
multiplexer of size 4 x and four full adders as shown in
Figure 1.
The required arithmetic micro-operation can be
performed by the combination of selection lines So, S1
and C.
1. When S1 S0 = 00, 13 input 0, How multiplexers are
selected as output B(B3, B2, B1, B0) If Cm 0 the output
D = A + B (Add). If Cm =1, the output D A + B + C (Add
with carry).
2 When S1 S = 01, I, input of four multiplexers are
selected as output B’ (B; B2 B1 B0). If cm =6the output
D = A+ B’ (substract with Borrow). If C1n 1, the output
D = A + B’ + 1 (Substract).
These are two 4-bit input A(A3, A2, A1, A0) B (B3, B2,
B1, B0) and a 4-bit output D (D3, D21D, D0). The four
inputs form A(A3, A2, A1, A0) are applied directly to
X (X3 X2, X1, X0) inputs of full adder. The four inputs
from B’ (B; B; B1 B) are connected to data input 13 of
four multiplexer. The logic input 0 is connected to data
input ‘2 of four multiplexers. The logic input I is
connected to data input 13 of four multiplexers. One of
the four inputs of multiplexer as output is selected by
two selection lines S0 and S1. The outputs from all four
multiplexers are connected to the Y (Y3 Y2 Y, Y0) inputs
of full adder. The input carry Cm is applied to the carry
input of the full adder FAI. The carry generated by adder
is connected to next adder and finally cout is generated.
The output generated by full adder is represented by
expression shown ahead.
D = X + y + C1
3. When S1 S0 = 10, 12 input of four multiplexer are
selected as output (0000). If Cm = 0, the output D = A
(transfer A), If Cm =1, the output D = A +1 (increment).
4. When S1S0 =11, 13 input of four multiplexers are
selected as output (1111) is equivalent to the 2’s
complement of 1. (2’s complement of binary 0001 is
1111). That means adding 2’s. Complement of I to A is
equivalent to A - 1. If Cm =1, the output D A (transfer
A). Transfer A micro operation has generated twice.
Hence there are only seven distinct micro-operations.
Q. Briefly explain instruction format.
Ans. An instruction contain number of bits in the so that
it is being to perform specific operation. Generally an
instruction is divided into three fields
Addressing mode: It specifies that how the operands
are accessed in an instruction.
Operation code (O):This field specifies the operation
that is performed in the operand.
Operand : It specifies the data on which operation is
performed.
Q. What is instruction pipelining?
Ans. An
instruction
pipeline
reads
Consecutive
instruction from memory previous instructions are being
executed in other segments Pipeline processing can occur
not only in data stream but in the instruction stream as
well. This causes the instruction fetch and execute
phases to overlap and perform simultaneous. The
pipeline must be emptied and all instructions that have
been read from memory after the branch instruction
must be discarded.
Q. What is RISC and CISC?
Ans. RISC : It means Reduced instruction set
computing. RISC machine use the simple addressing
mode. Logic for implementation of these instructions is
simple because instruction set is small in RISC machine.
CISC: It means complex instruction set computing. It
uses wide range of instruction. These instructions
produce more efficient result. It uses the micro
programmed control unit when RISC machines mostly
uses hardwired control unit. It uses high level statement.
It is easy to understand for human being.
Q. Differentiate between RISC and CISC.
Ans. Difference between RISC and CISC are given
below:
1.It means Reduced Instruction set computing.
2.It uses hardwired control unit.
3.RISC requires fewer and limited instructions
4.Example of RISC processors are BM2PO,. SPARC from
SO p-ticrosoft ycm, power PC and PA- RISC. —.
CISC:
It means complex instruction set computing.
It uses micro programmed control unit.
ClSC requires wide range of instructions.
These instructions produce more efficient results. The example of CISC processor are IBM Z and digital
equipment corporation VAX computer.
Q. What is super pipelining?
Ans. Pipelining is the concept of overlapping of multiple
instructions during execution time. Pipeline splits one
task into multiple subtasks. These subtasks of two or
more different tasks are executed parallel by hardware
unit. The concept of pipeline can be same as the water
tab. The amount of water coming out of tab in equal to
amount of water enters at pipe of tab. Suppose there are
five tasks to be executed. Further assume that each task
can be divided into four subtasks so that each of these
subtasks are executed by one state of hardware. The
execution of these five tasks is super pipe thing.
Q. Explain about RISC processors.
Ans. RISC means Reduced instruction computing. It has
fewer and limited number instruction Earlier RISC
processors do not have port for floating-point data But
the current technology processors suit the float data
type. It consume less power and are having high
performance. RISC processor or systems are more
popular than CISC due to better performance. It mostly
use the hardwired control unit. RISC machines uses load
and store. That means only load and store instruction
can access the memory. This instructions operate on
registers.
Q. Explain micro programmed control.
Ans. Micro programming is the latest software concept
used in designing the control Unit. This is the concept
controlling the sequence of micro operation computer.
The operations are performed on data to read inside the
registers are called micro operations. Micro programming
is the concept for generating control signals using
programs, These programs are called micro programs
which are designed in control unit.
Q. Explain pipelining in CPU design?
Ans. Pipelining is a technique of decomposing a
sequential process into sub-operations, with each
subprocess being executed in a special dedicated
segment that operates concurrently with all other
segments A pipeline is a collection of processing
segments
through
which
binary
information which is deforms partial processing dictated
by the way the task is partitioned. The result obtained
from the computation in each segment is transferred to
next segment in the pipeline. The final result is obtained
after the data have passed through all segments.
Q Write any six characteristics of RISC.
or
Explain the important features of RISC based
system architecture.
Ans. There are following characteristics of RISC.
1. RISC machines require lesser time for its design
implementation.
2. RISC processor consume less power and clock cycle.
3. RISC instructions are executed in single clock cycle,
while most of CISC requires more than one clock cycle.
4. RISC system are more popular. L,
5. The current technology RISC processors support the
floating point data type.
6. RISC machines mostly uses hardwired control unit.
Q. What is SIMD Array processor?
Ans. A SIMD array processor is a computer with multiple
processing units operating in parallel. The processing unit
are synchronised to perform the same operation
under the control of common control unit, thus providing
a single instruction stream, multiple data stream (SIMD)
organization.
Q. How pipelining would improve the performance
of CPU justify.
Ans. Non-pipeline unit that performs the same operation
and takes a time equal to (time taken to complete each
task). The total time required for n tasks is n t. The
speed up of a pipeline processing over an equivalent
non-pipeline processing is defined by the ratio
As the number of tasks increases, n becomes much
larger than k — 1, and K + n — I approaches the value
of n, where K is segments of pipeline and Ip is time used
to execute n tasks. Under this condition, the speed up
becomes.
The time it takes to process a task is the same in the
pipeline and non pipeline circuits. There if t = kt speed
reduces to
Maximum speed that a pipeline can provide is K, where K
is number of segments in pipeline. Speed of pipeline
process is improved the performance of C.P.U. To clarify
the meaning of improving the performance of C.P.U.
through speed up ratio, consider the following numerical
example. Let the time it takes to process sub
operation in each segment be equal to 20 ns. Assume
that the pipeline k 4 segments and executes n 100 tasks
in square. The pipeline system will take (k + n — 1) t =
(4 + 99) 20 = 2060 ns to complete. Assuming that t = kt
= 4 x 20 = 80ns, a non-pipeline system requires nktp =
100 x 80 8080 ns to complete 100 tasks. The speed up
ratio is equal to 8000/2060 88. As the number of tasks
increase, the speed up will approach 4, which is equal to
the number of segment in pipeline. It we assume that =
60ns, then speed up become=60/3.
Q. Compare and contrast super pipelined machine
and super scalar machines.
Ans. Super pipelined machine : Pipelining is the concept
overlapping of multiple instruction during execution time.
Super of pipelining splits one tasks into multiple
subtasks. These subtasks of two or more different tasks
are executed parallel by different hardware units. It
overlaps the multiple instructions in execution. The
instruction goes through the four stages during execution
phase.
1. Fetch an instruction from memory (Fl).
2. Decode the instruction (DI).
3. Calculate the effective address (EA).
4. Execute the instruction (LI).
Fig. Space time diagram
Super scalar processor/Machine : The scalar machine
executes one instruction one set of operands at a time.
The super scalar architecture allows on the execution of
multiple instruction, at the same time in different
pipeline. Here multiple processing elements are used for
different instruction at the same time. Pipeline is also
implemented in each processing elements. The
instruction fetching units fetch multiple instructions at a
time from cache. The instruction decoding units check
the independence of those instructions at a time from
cache. There should be multiple execution units so that
multiple instructions can be executed at the same time.
The slowest stage among fetch, decode and execute will
determine the overall performance of system. Ideally
these three stages should be equal fast.
Q. Give the comparison between and examples of
hardwired control unit and micro programmed
control unit.
Ans. There are two major types of control organisation
(a) Hardwired control. (b) Microprogrammed control.
In Hardwired organisation, the control logic implemented
with gates, flip-flops, decoders. It has the advantage that
it can be optimised to produce a fast mode of operation
In
microprogrammed
organisation,
the
control
information is stored in a control. The control memory is
programmed to initiate the required sequence of micro
operations. A hardwired control; as the name implies,
requires changes in the wiring among the various
components if the design has to be modified or changed.
In the micro programmed control, any required changes
or modifications can be done by updating the
microprogram in control memory. A hardwired control for
the basic computer is presented here.
Difference between hardwired control
programmed control are given below:
and
micro-
Q. What do you understand by
instruction
cycle,
machine
put acknowledgment.
Fetch cycle,
cycle, inter
Ans. Fetch cycle : The sequence counter is initialized to
0. The program counter (PC) contains the address the
first instruction of a program under execution. The
address of first instruction from PC is loaded into the
address register (AR) during first clock cycle (To). Then
instruction from memory location given by address
register is loaded into the instruction register (IR) and
the program counter is incremented to the address of
next instruction in second clock cycle (TL). These microoperations using register transfer is shown as
Instruction cycle: A program in computer consists of
sequence of instructions. Executing these instructions
runs the program in computer. Moreover each instruction
is further divided into sequence of phases. The concept
of execution of an instruction through different phases is
called instruction cycle. The instruction is divided into sub
phases as specified ahead—
1. First of all an instruction in fetched (accessed) from
memory.
2. Then decode that instruction.
3. Decision is made for memory or register or I/O
reference instruction. In case of memory indirect
address, read the effective address from the memory.
4. Finally execute the instruction.
Machine cycle: Machine includes following Hardware
components.
1. A memory unit with 4096 words of 16 bits each.
2. Nine registers.
3. Seven flip-flops.
4. Two decoders : a 3 x 8 operation recorder and a 4 x
16 timing decoder.
5. 16-bit common bus.
6. Control logic gates.
7. Adder and logic circuit connected to the input of AC.
The memory unit is a standard component that can be
obtained readily from a commercial source.
Interrupt Acknowledgment : The programmed
controlled procedure is to external device inform the
computer when it is ready for transfer. In the meantime
the computer can be busy with other tasks. This type of
transfer uses interrupt facility. The interrupt enable flipflop can be set and cleared with two instructions. When
flip-flop is cleared with two instruction. When flip-flop is
cleared to 0, the flags cannot interrupts computer when
flip-flop is set to 1, the computer can be interrupted. This
is way of interrupt acknowledge to C.P.U. and memory.
Q. What is meant by super scalar processor?
Explain the concept of pipelining in superscalar
processor?
Ans. The scalar processor executes one instruction on
one set of operands at a time. The super scalar
architecture allows the execution of multiple instructions
at the same time in different pipelines. Here multiple
processing elements are used for different instruction at
same time. Pipeline is also implemented in each
processing elements. The instruction fetching units
fetch microinstruction at a time from cache. The
instruction decoding unit checks the independence of
these instructions so that they can be executed in
parallel. There should be multiple execution units so the
multiple instructions .can be executed at the same time.
The slowest stage among fetch, decode and execute will
determine the performance of the system. Ideally these
three stages should be equally fast. Practically execution
stage in slowest and drastically affect the performance of
system.
Pipeline overlaps the multiple instructions in execution.
The instruction goes through the four stages during the
execution phase.
1. Fetch an instruction from memory (Fl)
2. Decode the instruction (DI)
3. Calculate the effective address (EA)
4. Execute the Instruction (El).
In space-time diagram above, five instructions are
executed using instruction pipeline.
These five instructions are executed in eight clock cycles.
Each instruction had been through four stages. Although
the various stages may not be of equal duration in each
instruction. That ma result in waiting at certain stages.
Q. Compare the instruction set Architecture is RISC
and CISC processor in the instruction formats,
addressing modes and cycle per instruction. (CPI)
Ans. RISC Architecture involves an attempt to reduce
execution time by simplifying the instruction set of the
computer. The major characteristics of a RISC processor
are:
1. Relatively few instructions.
2. Relatively few addressing modes.
3. Memory access limited to load and store instructions.
4. All operations done with in registers of the CPU.
5. Fixed length, easily decoded instruction format.
6. Single Cycle instruction execution.
7. Hardwired rather than micro programmed control.
The small set of instructions of a typical RISC processor
consists mostly of register to register operations, with
only simple load and store operations for memory
access.
The Berkely RISC is a 82-bit integrated circuit CPU. It
supports 32-bit addresses and either 8-, -16, or 32-bit
data. It has a 32-bit instruction format and a total of 31
instructions. There are three basic addressing modes
register addressing, immediate operand and relative to
PC addressing for branch instructions.
CISC Processor : The major characteristics of CISC
architecture are:
1. A large member of instructions-typically from 100 to
250 instructions.
2. Some instructions that perform specialised tasks and
are used in frequently.
3. A large variety of addressing nodes - typically from 5
to 20 different modes.
4. Variable-Length instruction formats.
5. Instruction that manipulate operands in memory.
Q. What cause of processor pipeline to be under
pipelined?
Ans. The processor may have more than one functional
unit. All these functional unit works under same control
unit. Here the instructions are executed sequentially
but can be overlapped during execution stages using
pipelines. SISD computer executes one instruction on
single data item at a time. This means its
implementation is only for uniprocessor systems. There is
a single control and single execution unit. SIMD
computer executes one instruction on multiple data items
at a time. This concept is implemented in vector or array
processing and multimedia extension (MMX) in pentium.
This means it is implemented in multiprocessor system.
Here all processor receives the same instruction from
control unit and implement it on different data items.
There is single control unit that handle multiple execution
units MISD computer manipulates the same data stream
with different instruction at a time. It involves multiple
control unit, multiple processing units and single
execution unit. This concept is for theoretical interest and
is not feasible practically. Hence attention has not been
paid to implement this architecture. Multiple control units
receive multiple instructions from centralized memory.
Each instruction from centralized unit is passed to its
corresponding processing unit. Then all these instructions
operate on the same data provided by centralised
common memory. MIMD computer involves the
execution of multiple instruction on multiple data stream.
Hence it involves multiple processor.
Array processor is a processor that performs
computations on large array of data underpipeline. The
term is used to refer to two different types of processors.
An attached array processor is n auxiliary processor
attached to a general purpose. An SIMD array processor
is a processor that has a single instruction multiple data
organisation. It manipulates vector instructions by means
of multiple functional units responding to a common
instruction. An attached array processor is designed as
peripheral for a conventional host computer, and its
purpose is to enhance the performance of the computer
by providing vector processing for complex scientific
applications. It achieves high performance by means of
parallel processing with multiple functional units. It
includes an arithmetic unit containing one or more
pipelined. The array processor can be programmed by
the user to accommodate a variety of complex arithmetic
problems. When the different tasks are executed by
different hardware unit is called pipeline. These types of
computer provide the high level of parallelism by having
multiple processors.
Q. Write short note on Hazards of pipelining.
Ans. Pipelining is a techniques of decomposing a
sequential process into suboperations, with each
subprocess being executed in special dedicated segment
that operates Concurrently with all other segments.
Pipeline can be visualized as a collection of processing
segments through which binary information flows. Each
segment performs partial processing. The result obtained
from computation in each segment is transferred to next
segment in pipeline. It implies a flow of information to an
assembly line.
The Simplest way of viewing the pipeline structure is that
each segment consists of an input register followed by a
Combination circuit. The register holds the data and the
combinations circuit performs the sub operations in the
particular segment. The output of Combination CK is
applied to input register of the next segment. A clock is
applied to all registers after enough time has elapsed to
perform all segment activity.
Q. Explain
description.
instruction
set
of
SPARC
with
Ans. SPARC machine use instruction that thirty-two bits
long. The machine has an instruction type for algebric
instruction, for branch instruction, and for jump
instruction (f-format and format & instructions).
The layout of SPARC
Instructions (branch)
instruction
is Format
Two
The SPARC Call Instruction, used to transfer control to
anywhere in 32 bit address
As usual,
the cond
operand
transfers
constant.
the first two bits specify the instruction type,
is the Branch condition and the op2 is the
to compare against. It met the machine
control to location specified by the 22 bit
Non-branch format two instruction is
Format three: (Algebric Instructions)
These instruction are the most common instructions.
They are either algebric instruction to load/store
instruction.
Q. What are reasons of pipeline conflicts
pipelined processor ? How are they resolved?
in
Ans. There are following reasons which create the
conflicts in pipelined processor and way by which it is
resolved:
1. Resource conflicts : It caused by access to memory
by two segments at the same time. Most of these
conflicts can be resolved by using separate instruction
and data memories.
2. Data dependency conflict : It arise when an
instruction depends on the result of a previous
instruction, but this result is not yet available.
3. Branch difficulties: It arise from branch and other
instructions that change the value of PC.
A difficulty that may cause a degradation of performance
in an instruction in pipeline is due to possible collision of
data or address. A collision occurs when an instruction
cannot proceed because previous instructions did not
complete certain operations. A data depending occurs
when an instruction needs data that are not yet
available. For example, an instruction in the Fetch
operand segment may need to fetch an operand that is
being generated at the same time by the previous
instruction in segment EX (Execute). Therefore, the
second instruction must wait for data to become
available by the first instruction. Similarly, an address
dependency needed by address mode is not available.
For example, an instruction with register indirect mode
cannot proceed to fetch the operand if the previous
instruction is loading the address into the register.
Therefore, the operand access to memory must be
delayed until the required address is available.
Pipelined computers deal with such conflicts between
data dependencies in a variety of ways. The most
straight forward method is to insert Hardware inter locks.
An interlock is a circuit that detects instructions whose
source operands are destinations of instructions farther
up in pipeline. This approach maintains the program
sequences by using hardware to insert the required
delays.
Another technique called operand forwarding uses special
hardware to detect a conflict and then avoid it by routing
the data through special paths between pipeline
segments. for example, instead of transforming an ALU
result into a destination register, hardware checks the
destination operand and if it is needed as a source in the
next instruction, it passes the result directly into ALU
input, by passing the register file. This method requires
additional hardware paths through multiplexers as well
as the circuit that detects the conflict.
A procedure employed in some computers is to give the
responsibility for solving data conflicts problems to the
compiler
that
translates
the
high-level
programming language
into
a
machine
language
program.
Q. What do you mean by software and Hardware
interrupts ? How these are used in microprocessor.
Ans. Hardware and software interrupts : Interrupts
caused by I/O devices are called Hardware interrupt. The
normal operation of a micro processor can also be
interrupted by abnormal internal conditions or special
instruction. Such an interrupt is called a software
interrupt. RST is instruction of processor are used for
software interrupt. When RST n instruction is inserted in
a program, the program is executed upto the point
where RST n has been inserted. This is used in
debugging of a program.
The internal abnormal or unusual conditions which
prevent processing sequence of a microprocessor are
also called exceptions. For example, divide by zero will
cause an exception. Intel literature do not use the form
exception. Where Motorola literature use the term
exception. Intel includes exception in software interrupt
when several I/O devices are connected to INR interrupt
line, an external Hardware is used to interface I/O
devices. The external Hardware circuits generate RSTn
codes to implement the multiple interrupt scheme.
P.ST 7.5, RST 6.5 and RST 5.5 are maskable interrupts.
These interrupts are enabled by software using
instructions El and SIM (Set interrupt mask). The
excretion of instruction SIM enables/disables interrupts
according to hit pattern of accemable. Bit — 0 to 2 rest/
set the mask bits of interrupt mask for RST 5.5, 6.7 and
7.5. Bit 0 for RST 5.5 mask, bit I for RSI 6.5 mask and
bit 2 for RST 7.5 mask. If a bit is set of the
corresponding interrupt is masked off (disable). If it is
set to 0, corresponding interrupt is enabled. Bit 3 is set
to 1 to make bits 0 - 2 effective. Bit 4 is an additional
control for RSI 7.5. If it is set to I the flip- flop for RST
7.5 is reset. These RST 7.5 is disabled regardless of
whether bit 2 for RST 7.5 is 0 or 1.
Q. What do you mean by memory hierarchy ?
Briefly discuss.
Ans. Memory is technically any form of electronic
storage. Personal computer system have a hierarchical
memory structure consisting of auxiliary memory (disks),
main memory (DRAM) and cache memory (SRAM). A
design objective of computer system architects is to have
the memory hierarchy work as through it were entirely
comprised of the fastest memory type in the system.
Q. What is Cache memory?
Ans. Cache memory: Active portion of program and data
are stored in a fast small memory, the average memory
access time can be reduced, thus reducing the execution
time of the program. Such a fast small memory is
referred to as cache memory. It is placed between the
CPU and main memory as shown in figure.
Q. What do you mean by interleaved memory?
Ans. The memory is partitioned into a number of
modules connected to a common memory address and
data buses. A primary module is a memory array
together with its own addressed data registers. Figure
shows a memory unit with four modules.
Q. How many memory chips of4128x8) are needed
to provide memory capacity of 40 x 16.
Ans. Memory capacity is 4096 x 16
Each chip is 128 8
No. of chips which is 128 x 8 of 4096 x 16 memory
capacity
Q. Explain about main memory.
Ans. RAM is used as main memory or primary memory in
the computer. This memory is mainly used by CPU so it
is formed as primary memory RAM is also referred as the
primary memory of computer. RAM is volatile
memory because its contents erased up after the
electrical power is switched off. ROM also come under
category of primary memory. ROM is non volatile
memory. Its contents will be retained even after
electrical power is switched off. ROM is read only
memory and RAM is read-write memory. Primary
memory is the high speed memory. It can be accessed
immediately and randomly.
Q. What is meant by DMA?
Ans. DMA : The transfer of data between a fast storage
device such as magnetic disk and memory is limited by
speed of CPU. Removing the CPU from the path and
letting the peripheral device manager the memory buses
directly would improve speed of transfer. This transfer
technique is called Direct my Access (DMA) During DMA
transfer, the CPU is idle. A DMA controller takes over the
buses to manage the transfer between I/O device and
memory
Q. Write about DMA transfer.
Ans. The DMA controller is among the other components
in a computer system. The CPU communicates with the
DMA through the address and data buses with
any interface unit. The DMA has its own address, which
activates with Data selection and One the DMA receives
the start control command, it can start the transfer
between the peripheral device and CPU.
Q. Differentiate among
associate mapping.
direct
mapping
and
Ans. Direct mapping : The direct mapped cache is the
simplest form of cache and easiest to check for a hit.
There is only one possible place that any memory
location can be cached, there is nothing to search. The
line either contain the memory information it is looking
for or it does not.
Associate mapping : Associate cache is content
addressable memory. The cache memory does not have
its address. Instead this memory is being accessed using
its contents.
Each
line
of
cache
memory
will
accommodate the address and the contents of the
address from the main memory. Always the block of data
is being transferred to cache memory instead of
transferring the contents of single memory location from
main
Q. Define the terms: Seek time, Rotational Delay,
Access time.
Ans .Seek time : Seek time is a time in which the drive
can position its read/write ads over any particular data
track. Seek time varies for different accesses in tie disk.
It is preferred to measure as an average seek time. Seek
time is always measured in milliseconds (ms).
Rotational Delay: All drives 1bve rotational delay. The
time that elapses between the moment when the
read/we heal\settles over the desired data track and the
moment when the first byte of required data appears
under the head.
Access time: Access time is simply the sum of the seek
time and rotational latency time.
Q. What do you mean by DMA channel?
Ans. DMA channel: DMA channel is issued to transfer
data between main memory and peripheral device in
order to perform the transfer of data. The DMA controller
access rs address and data buses.
DMA with help of schematic diagram of controller ontile
needs the dual circuits of and e to communicate with CPU and I/O device. In addition, it nee s an address
register; a word count register, and a set of, es The
address register and address lines are used rec
communication with memory to word count register
specifies the no. of word that - must be trEia transfer
may be done directly between the device and memory .
Figure 2 shows the block diagram of typical DMA
controller. The unit communicates with CPU via the data
bus and control lines.
Q. RAM chip 4096 x 8 bits has tio enable lines. How
many pins are needed for the iegrated circuits
package? Draw a block diagram and label all input
and outputs of the RAM. What is main feature of
random access memory?
Ans.
(a) Total RAM capacity of 4096. Moreover the size of
each RAM chip in 1024 x 8, that means total number of
RAM chips required.
4O96
1024
That means total 4RAM chips are required of 1024 x 8
RAM.
No. of address lines required to map each RAM chip of
size 1024 x 8 is calculated as specified ahead.
2 = 1024; 2 = n = 10 that means 10 bit address is
required to map each RAM chip of size 1024 x 8.
8-bit data bus is required for RAM because number after
multiplication is 8 in RAM chip of size 1024 x 8.
10 bit address bus is required to map 1024 x 8RAM. The
11th and bit is used to select one of four RAM chips. Here
we will take 12 bit of address bus because of 11th and
12th bit will select one of the four RAM chip as shown in
memory address in Diagram. N0Q. The RAM 1C as
described above is used in a microprocessor system,
having 16b address line and 8 bit data line. It’s enable —
1 input is active when A15 and A14 bjjóre 0 and 1 and
enable -2 input is active when A13, A12 bits are ‘X’ and
‘0’.
Q. What shall be the range of addresses that is
being used by the RAM.
Ans. The RAM chip is better suited for communication
with the CPU if it has one or more control inputs that
selects the chip only when needed. Another there is
bidirectional data bus that allows the transfer of data
either from memory to CPU during a read operation, or
from CPU to memory during a write operation. A
bidirectional bus can be three-state buffer. A three-stats
buffer output can be placed in one of three possible
states a signal equivalent to logic , a signal equivalent to
logic 0, or a high impedance state. The logic 1 and 0) are
normal digital signals. The high impedance state behaves
like an open circuit which means that the output doesnot carry a signal and has no logic significance.
The block diagram of a RAM chip is shows in figure. The
capacity of memory is 216 work of 16 bit per word. This
requires a 16-bit address and 8-bit bidirectional data
bus.
It has A13 and A12 bits which 1 and 0, 0 and 0 then it is
active to accept two input through chip select CSI and
CS2.
If A15, A14 bits are 0 and I then one input is acceptable
it is active i.e. it is from CS1 or CS2 (Chip selections).
General Functional table
Q. Design a
specifications.
CPU
that
meets
the
following
Ans .can access 64 words of memory, each word being
8-bit long. The CPU does this outputting a 6-bit address
on its output pins A [5 0] and reading in the 8-bit value
from memory on inputs D [7,...O]. It has one 8-bit
accumulator, s-bit address register, 6-bit program
counter, 2-bit instruction register, 8 bit data register.
The CPU must realise the following instruction set:
AC is Accumulator
MUX is Multiplexer
Here instruction register has two bits combination i.e.
Instruction Code Instruction Operation
00 ADD AC - AC + M[A]
01 AND AC - AC A M[A]
10 JMP AC - M[A]
11 INC AC - AC + I
Q. What are the advantages you got with virtual
memory?
Ans permit the user to construct program as though a
large memory space were available, equal to totality
auxiliary memory. Each address that is referenced by
CPU goes through an address mapping from so called
virtual address to physical address main memory.
There are following advantages we got with virtual
memory:
1. Virtual memory helps in improving the processor
utilization.
2. Memory allocation is also an important consideration
in computer programming due to high cost of main
memory.
3. The function of the memory management unit is
therefore to translate virtual address to the physical
address.
4. Virtual memory enables a program to execute on a
computer with less main memory when it needs.
5.Virtual memory is generally implemented by demand
paging concept In demand paging, pages are only loaded
to main memory when they are required
6.Virtual memory that gives illusion to user that they
have main memory equal to capacity of secondary stages
media.
The virtual memory is concept of implementation which
is transferring the data from secondary stage media to
main memory as and when necessary. The data replaced
from main memory is written back to secondary storage
according to predetermined replacement algorithm. If the
data swajd is designated a fixed size. This concept
is called paging. If the data is in the main viiI1ze
subroutines or matrices, it is called segmentation. Some
operating systems combine segmentation and paging.
Q. Write about DMA transfer.
Ans .the CPU communicates with DMA through the
address and data buses as with a interface unit. The DMA
has its own address, which activates the DS and
RS line. CPU initializes the DMA through the data bus.
Once the DMA receives the start control command, it can
start the transfer between peripheral device and the
memory. When the peripheral device sends a DMA
request, the DMA controller activates the BR line,
informing the CPU to relinquish the buses. The CPU
responds with its BC line, informing the DMA that its
buses are disabled. The DMA then puts the current value
of its address register with address bqs, initiates the RD
WR signal, and sends a DMA acknowledge to the
peripheral device. RD and WR lines in DMA controller are
bidirectional. The direction of transfer depends on the
status of BC line.
When BG = 0, the RD and WR are input lines allowing
CPU to communicate with the internal DMA register when
BC =1, the RD and WR are output lines from the DMA
controller to random-access memory to specify the read
or write operation for the data.
When the peripheral device receives a DMA acknowledge,
it puts a word in the data bus (for write) or receives a
word from the data bus (for read). Thus the
DMA controls the read or write operations and supplies.
The address for the memory through the data bus for
direct transfer between two units while CPU is
momentarily disabled.
DMA transfer is very useful in many applications . It is
used for fast transfer of information between magnetic
disks and memory. It is also useful for updating the
display in an interactive terminal. The contents of
memory is transferred to the screen periodically by
means of DMA transfer.
Q. What is memory organization ? Explain various
memories ?
Ans .The memory unit is an essential component in any
digital computer since it is needed for storing programs
and data A very small computer with a limited
application may be able to fulfill its intended task without
the need of additional storage capacity, Most general
purpose computer is run more efficiently if it is equipped
with additional
storage beyond the capacity of main memory. There is
just not enough in one memory unit to accommodate all
the programs used in typical compui Mbst computeiusers accumulate and continue to accumulate large
amounts of data processing software.
There, it is more economical to use low cost storage
devices to serve as a backup for storing. The information
that is not currently used by CPU. The unit that
communicates directly with CPU is called the main
memory Devices that provide backup memory The most
common auxiliary memory device used auxiliary system
are magnetic disks and tapes. They are used for storing
system programs, large data files, and other backup
information. Only proposed data currently needed by the
processor reside in main memory All other information is
stored in auxiliary memory and transferred to main
memory when needed.
There are following types of Memories:
1. Main memory
* RAM (Random - Access Memory)
* ROM (Read only Memory)
2. Auxiliary Memory
* Magnetic Disks * Magnetic tapes etc.
1. Main Memory: The main memory is central storage
unit in computer system. It is used to store programs
and data during computer operation. The technology for
main memory is based on semi conductor integrated
circuit.
RAM (Random Access Memory): Integrated circuit RAM
chips are available in two possible operating modes,
static and dynamic. The static RAM consists of
internal flip flops that store the binary information. The
dynamic RAM stores binary information in form of electric
charges that are applied to capacitors.
ROM: Most of the main memory in general purpose
computer is made up of RAM integrated chips, but a
portion of the memory may be constructed with ROM
chips. Rom is also random access. It is used for string
programs that are permanently in computer and for
tables of constants that do not change in value once the
production of computer is completed.
2. Auxiliary Memory : The most common auxiliary
memory devices used in computer systems are magnetic
disks and magnetic ‘tapes. Other components used, but
not as frequently, are magnetic drums, magnetic bubble
memory, and optical disks. Auxiliary memory devices
must have knowledge of magnetic, electronics and
electro mechanical systems There are following auxiliary
memories.
Magnetic Disk: A magnetic .Disk is a circular plate
constructed of metal or plastic coated with magnetized
material. Both sides of the disk are used and several
disks may be stacked on one spindle with read/write
heads available on each surface. Bits are stored in
magnetised surface in spots along concentric circles
called tracks. Tracks are commonly divided into sections
called sectors. Disk that are permanently attached and
cannot removed by occasional user are called Hard disk.
A disk drive with removable disks are called a floppy
disks.
Magnetic tapes: A magnetic tape transport consists of
electric, mechanical and electronic components to
provide the parts and control mechanism for a magnetic
tape unit. The tape itself is a strip of plastic coated with a
magnetic recording medium. Bits are recorded as
magnetic spots on tape along several tracks. Seven or
Nine bits are recorded to form a character together with
a parity bit R/W heads are mounted one in each track so
that data can be recorded and read as a sequence of
characters.
Q. Compare interrupt I/O with DMA T/O?
Ans. There is following given
interrupt I/O with DMA I/O.
comparison
between
Q.What do you mean by initialization of DMA
controller ? How DMA Controller works? Explain
with suitable block diagram ?
Ans. The DMA controller needs the usual circuits of an
interface to communicate With CPU and I/O device. In
addition, it needs an address register, a word count
register, and a set of address line. The address register
and address line are used for direct communication with
the memory. The word count register specifies the
number of words that must be transferred. The data
transfer may be done directly between the device an
memory under control of DMA,
Figure 2 shows the block diagram of a typical DIA
controller. The unit communicate with CPU via data bus
and control lines. The registers in DMA are selected by
CPU through address bus by enabling PS (DMA select)
and RS (register select) inputs. The RD (read) and WR
(write) inputs are bidirectional When the BG (Bus grant)
Input is 0, The CPU is in communicate with DMA registers
through the data bus to read from or write to DMA
registers. When BC 1, the CPU has the buses and DMA
can communicate directly with the memory by specifying
a address in the address bus and the activating the RD or
WR control. The DMA communicate with the external
peripheral through the request and acknowledge lines by
using handshaking procedure.
The DMA controller has three register : an address
register, a word count register, and control register. The
address register contains an address to specify the
desired location in memory. The address bits go through
bus buffers into the address bus. The address register is
incremented after each word that is transferred to
memory. The word count register holds the number of
words to be transferred. The register is decremented by
one after each word transfer and internally tested for
zero. The control register specifies the mode of transfer.
All register in DMA appear to CPU as I/O interface
register. Thus the CPU can read from or write into DMA
register under program control via the data bus. transfer
data be memory a per unit transferred
Block diagram of DMA controller.
The initialization process is essentially a program
consisting pf I/O instructions that include the address for
selecting particular DMA registers. The CPU’ initializes the
DMA by sending the following information through data
bus:
1. The starting address of the memory lock here data
liable (for read) or when the data are stored (for write).
2. The word cont, which is the number of words in
memory block.
3. Control to specifically the modes of transfer such as
reader Write.
4. A control to start the DMA transfer.
the starting address is stored in the
address
register. the
word
count
is
stored
in the
word register the control information in the control
register. When DMA is initialized, the CPU stops
communicating with DMA unless it receives an
interrupt signal or if it wants to check how many words
have been transferred.
Q. 22. When a DMA module takes control of bus
and while it retain control of bus, what does the
processor do.
Ans. The CPU communicates with the DMA through the
address and data buses as with any interface unit. The
DMA has its own address, which activates the 1)5 and
RS lines. The CPU initializes the DMA through the data
bus. Once the DMA receives the start control command,
it can start the transfer between peripheral device and
the memory. When the peripheral device sends a DMA
request, the DMA controller activates the BR line,
informing the CPU responds with its HG line, informing
the DMA that its buses are disabled. The DMA then puts
the current value of its address register into the address
bus, initiate the RD or WR signal and sends a DMA
acknowledge to the peripheral device. Note that RD and
WR lines in DMA controller are bidirectional. The direction
of transfer depends on the status of BG line. When BG 0,
the RD and WR are input lines allowing the CPU to
communicate with internal DMA registers. When BC = 1,
the RD and WR are output lines from DMA controller to
the random access memory to specify the read or write
operation for the data. When the peripheral device
receives a DMA acknowledge, it puts a word in the data
bus (for write) or receives a word from the data bus (for
read). Thus the DMA controls the read or write
operations and supplies the address for the memory. The
peripheral unit can then communicate with memory
through the data bus for direct transfer between the two
units while the CPU is momentarily disabled.
For each word that is transferred, the DMA increments its
address register and decrements its word count register.
If the word count does not reach zero, the DMA checks
the request line coming from peripheral. For a high speed
device, the line will be active as soon as the previous
transfer is completed. A second transfer is then initiated,
and the process continues until the entire block is
transferred. If the peripheral speed is slower, the DMA
request line may come somewhat late. In this case the
DMA disables the bus request line so that the CPU can
continue to execute its program, when the peripheral
requests a transfer, DMA requests the buses again.
If the word count register reaches zero, the DMA stops
any further transfer and removes its bus request. It also
informs the CPU of the termination by means of
interrupts when the CPU responds to interrupts, it reads
the content of word count register. The zero value of this
register indicates that all the words were transferred
successfully. The CPU can read this register at any
time to check the number of words already transferred.
A DMA controller may have more than one channel. In
this case, each channel has a request and acknowledge
pair of control signals which are connected to
separate peripheral devices. Each channel also has its
own address register and word count register within the
DMA controller. A priority among the channels may be
established so that channels with high priority are
serviced before channels with lower priority.
DMA transfer is very useful in many application. It is
used for fast transfer of information between magnetic
disks and memory. It is also useful for updating the
display in an interactive terminal. The contents of
memory can be transferred to the screen by means of
DMA transfer.
Q. 23. (a) How many 128 x 8 RAM chips are needed
to provide a memory capacity of 2048 bytes?
(b) How many lines of the address bus must be
used to access 2048 bytes of memory ? How many
these lines will be common to all chips?
(c) How many lines must be decoded for chip
select ? Specify the size of recorder. 2048
Q. 24. A computer uses RAM chips of 1024 x 1
capacity.
(a) How many chips are needed, and how should
there address lines be connected to provide a
memory capacity of 1024 bytes?
(b) How many chips are needed to provide a
memory capacity of 16K bytes? Explain in words
how the chips are to be connected to the address
bus ? Specify the size of the decoders. 1024
.
Q. 26. An 8-bit computer has a 16-bit address bus.
The first 15 lines of address are used to select a
bank of 32K bytes of memory. The higher order bit
of address is used to select a register which
receives the contents of the data bus ?
Explain how this configuration can be used to
extend the memory capacity of system to eight
banks of 32 K bytes each, for a total of 256 bytes of
memory.
Ans. The processor selects the external register with an
address 8000 hexadecimal.
Each bank of 32K bytes are selected by address 0000—7
FFF. The processor loads an 8-bit number into the
register with a single I and seven 0’s. Each output of
register selects one of the 8 banks of 32 bytes through
2-chip select input. A memory bank can be changed by
changing in number in the register.
Q. 27. A Hard disk with 5 platters has 2048 tracks/
platter, 1024 sector/track (fixed number of sector
per track) and 512 byte sectors. What is its total
capacity?
Ans. 512 bytes x 1024 sectors 0.5 MB/track. Multiplying
by 2048 tracks/platter gives 1GB/plat platter, or 5GB
capacity in the driver. (in the problem, we use) the
standard computer architecture definition of MB 220
bytes and GB 230 bytes, many hard disk manufactures
use MB = 1,000,000 bytes and GB = 1,000,000,000
bytes. These definitions are close, but not equivalent.
Q. 28. A manufactures wishes to design a hard disk
with a capacity of 30 GB or more (using the
standard definition of 1GB = 230 bytes). If the
technology used to manufacture the disks allows
1024-bytes sectors,.. 2048 sector/track, and 40%
tracks/ platter, how many platter are required?
Ans. Multiplying bytes per sector times sectors per
tracks per platter gives a capacity of 8 GB (8 x 230) per
platter. Therefore, 4 platter will he required to give a
total capacity of 30GB.
Q. 29. If a disk spins at 10,000 rpm vhat is the
average rational latency time of a request? If a
given track on the disk has 1024 sectors, what is
the transfer time for a sector?
Ans. At 10,000 r/min, it takes 6ms for a complete
rotation of the disk. On average, the read/write head will
have to wait for half rotation before the needed sector
reaches it, SC) the average rotational latency will be
3ms. Since there are 1024 sectors on the track, the
transfer time will he equal to the rotation time of the disk
divided by 1024, or approximately 6 microseconds.
Q. 30. In a cache with 64-byte cache lines how may
bits are used to determine which byte within a
cache line an address points to ?
Ans. The 26 = 64, so the low 6 hits of address determine
an address’s byte within a cache line.
Q. 33 For a cache with a capacity of 32 KB, How
many lines does the cache hold for line lengths of
32, 64 or 128 bytes?
Ans. The number of lines in cache is simply the capacity
divided by the line length, so the cache has 1024 lines
with 32-byte lines, 512 lines with 64-byte lines, and 256
lines with 128 byte lines.
Q. 34. If a cache has a capacity of 16KB and a line
length of 128 bytes, how many sets does the cache
have if it is 2-way, 4-way, or 8-way set
associative?
Ans. With 128-byte lines, the cache contains a total of
128 lines. The number of sets in the cache is the number
of lines divided by the associativity so cache has 64 sets
if it is 2-way set association, 32 sets if 4-way set
associative, and 16 set if 8-way set-associative.
Q. 35. If a cache memory has a hit rate of 75
percent, memory request take l2ns to complete if
they hit in the cache and memory request that miss
in the cache take 100 ns to complete, what is the
average access time of cache?
Ans. Using the formula,
The average access time =(THit X H1t) + (TmissX miss)
The average access time is (12 ns x 0.75) + (100 ns x
0.25) = 34 ns.
Q. 36. In a two-level memory hierarchy, if the
cache has an access time of ns and main memory
has an access time of 60ns, what is the hit rate in
cache required to give an average access time
of 10ns?
Ans. Using the formula,
the average access time = (THit X Hit) + (Tmiss x miss)
The average access time
10ns = (8ns x hit rate) + 60 ns x(1 — (hit rate)),
(The hit and miss rates at a given level should sum to
100 percent). Solving for hit rate, we get required hit
rate of 96.2%.
Q. 37. A two-level memory system has an average
access time of l2ns. The top level (cache memory)
of memory system has a hit rate of 90 percent and
an access time of 5ns. What is the access time of
lower level (main memory) of the memory system.
Ans. Using the formula, the average access time = (“THIT
x PHIT) + miss)
The average access time = l2 (5 x 0.9) + (Tmiss x 0.1).
Solving for Tmiss, we get Tmiss 75 ns,
Which is the access time of main memory.
Q. In direct-mapped cache with a capacity of 16KB
and a line length of 32 bytes, how many bits are
used to determine the byte that a memory
operation references within a cache line, and how
many bits are used to select the line in the cache
that may contain the data?
Ans. 2 = 32, so 5 bits are required to determine which
byte within a cache line is being referenced with 32-byte
lines, there are 512 lines in 16KB cache, so, 9 bits are
required to select the line that may contains the address
(2 = 512).
Q. The logical address space in a computer system
consists of 128 segments. 'Each segment can have
up to 32 pages of 4K words in each physical
memory consists of 4K blocks of 4K words in each.
Formulate the logical and physical address formats.
Ans. Logical address:
Q. A memory system contains a cache, a main
memory and a virtual memory. The access time of
the cache is 5ns, and it has an 80 percent hit rate.
The access time of the main memory is 100 ns, and
it has a 99.5 percent hit rate. The access time of
the virtual memory is 10 ms. What is average
access time of the hierarchy.
Ans. To solve this sort of problem, we start at the
bottom of the hierarchy and work up. Since the hit rate
of virtual memory is 100 percent, we can compute the
average access time for requests that reach the main
memory as (l00n s x 0.995) + (10 ns x 0.005)
= 50,099.5 ns. Give this, the average access time for
requests that reach the cache (which is all request) is
(5ns x 0.80) + (50,099.5 ns x 0.20) = 10,024 ns.
Q. Why does increasing the capacity of cache tend
to increase its hit rate?
Ans. Increasing the capacity Of cache allows more data
to be stored in cache. If a program references more data
than the capacity of a cache, increasing the cache’s
capacity will increase the function of a program’s data
that can be kept in the cache. This will usually increase
the bit rate of the cache. If the program references less
data than capacity of a cache, increasing the capacity of
the cache generally does not affect the hit rate unless
this change causes two or more lines that conflicted for
space in the cache to not conflict since the program does
not need the extra space.
Q. Extend the memory system of 4096 bytes to 128
x 8 bytes of RAM and 512 x 8 bytes of ROM. List the
memory address map and indicate what size
decoder are needed if CPU address bus lines are
16 4096
Ans. Number RAM chips = 32
Therefore, 5 x 32 decoder are needed to select each of
32 chips. Also 128 = 2, First 7 lines are used as a
address lines for a selected RAM 4096
Number of ROM chips = 8.
Therefore, 3 x 8 decoders are needed to select each of 8
ROM chips. Also 512 = 2,
First 9 lines are used as a address line for a selected
ROM. Since, 4096 = 212, therefore, There are 12
common address lines and I line to select between RAM
and ROM. The memory address map is tabulated below
Q. A computer employ RAM chips f 256 x 8 and
ROM chips of 1024 x 8. The computer system needs
2k byte of RAM, 4K. bytes of ROM and four
interface units, each with four register. A memory
mapped 1/0 configuration is used. The two highest
order bits of the address assigned 00 for RAM, 01
for ROM, and 10 for interface registers.
(a) How many RAM and ROM chips are rteded?
(b) Draw a memory-address map for the system.
Q .what is an I/O processor ? Briefly discuss.
Ans. I/O processor is designed to handle I/O processes
of device or the computer. This processor is separated
from the main processor (CPU). It controls input/output
operation only. The computer having I/O processor
relieves CPU from input output burden. I/O processor
cannot work independently and is controlled by the CPU.
If I/O processors have been removed and given its job to
a general purpose CPU. It is specialized devices whose
purpose is to take load of I/O activity from the main CPU.
Q . Write major requirement for I/O module.
Ans. I/O module consists of following main components
as its requirement.
(a)-Connection to the system bus.
(b) Interface module.
(c) Data Buffer.
(d) Control logic gates.
(e) Status/control register.
All of these are basic requirement of I/O module.
Q. Write characteristics of I/O channels.
Ans. The characteristics of I/O channels are given below:
1.I/O channel is one of data transfer technique which is
adopted by peripheral.
2. I/O channel has the ability to execute I/O instruction.
These instructions are stored in the main memory and
are executed by a special purpose processor of I/O
channel.
3. Multiplexer I/O channel handles I/O with multiple
devices at the same time.
4. I/O channel is the concept where the processor is used
as 1/0 module with its local memory.
Q. What is channel?
Ans. Channel: The channel is a way where the data is
transferred. It is also a transfer technique which is
adopted by various devices. It is path which is
considered as interface between various device. Here I/O
channel which is used with peripherals. There is no. of
instruction stored in main memory and are executed by
special purpose processor of the I/O channel. There is
various types of channels i.e. multiplexer channel,
selector channel and Block multiplexer channel etc. The
data is transfers between devices and memory.
Q. (a) Explain about I/O modes.
Ans. The CPU executes the I/O instructions and may
accept the data temporally, but the ultimate source or
destination is the memory unit. Data transfer between
the control computer and I/O devices which handled in
variety of I/O modes. Some I/O modes use the CPU as
an intermediate path; others transfer the data directly to
and from the memory unit data transfer to and from
peripherals may be handled in various possible I/O
modes i.e.
(a) Programmed I/O mode
(b) Interrupt initiated I/O mode
(c) Direct Memory Access (DMA).
Q.(b) What is basic function of interrupt controller
?
Ans. Data transfer between CPU and an I/O device is
initiated by CPU. However, the CPU start the transfer
unless the device is ready to communicate with CPU. The
CPU responds to the interrupt request by storing the
return address from PC into a memory stack and then
the program branches to a service routine that processes
the required transfer. Some processors also push the
current PSW (program status word) auto the stack and
load a new PSW for the serving routine, it neglect PSW
here in order not to complicate the discussion of I/O
interrupts. A priority over the various sources
to determine which condition is to be serviced first when
two or more requests arrive simultaneously. The system
may also determine which conditions are permitted to
interrupt the computer while another interrupt is being
serviced. Higher-priority interrupts levels are assigned to
requests which if delayed or interrupted, could have
serious consequences. Devices with high speed transfers
such as magnetic disks are given high priority, and slow
devices such as keyboard receive low priority. When two
devices interrupt the computer at the same time,. the
computer services the device, with higher priority
first. When a device interrupt occurs, basically it is
checked through Daisy chaining priority method into
determine which device issued the interrupt.
Q. Write and explain all classes of interrupts.
Ans. There are two main classes of interrupts explained
below:
1. Maskable interrupts.
2. Non-maskable interrupts.
1. Maskable
interrupts
: The commonly used
interrupts by number are called maskable interrupts The
processor can ask o temporarily ignore such
interrupts These interrupts are temporarily 1gnred such
that processor can finish the task under execution. The
processor inhibits (block) these types of interrupts by use
of special interrupt mask bit. This mask bit is part of the
condition code register or a special interrupt request
input, it is ignored else processor services the interrupts
when processor is free, processor will serve these types
of interrupts.
2. Non-Maskable Interrupts (NMI) Some interrupts
cannot be masked out or ignored by the processor.
These are referred to as non-maskable interrupts. These
are associated with high priority tasks that cannot be
ignored. Example system bus faults.
The computer has a non-maskable interrupts (NMI) that
can be used for serious conditions that demand the
processor’s attentions immediately. The NMI cannot
ignored by the system unless it is shut off specifically. In
general most processors support the nonmaskable
interrupt (NMI). This interrupt has absolute priority.
When it occurs the processor will finish the current
memory cycle and then branch to a special routine
written to handle the interrupt request. When a NMI
signal is received the processor immediately stops
whenever it as doing and attends to it. That can lead to
problem if these type of interrupts are used improperly.
The NMI signal is used only for critical problem situation
like Hardware errors.
Q.Explain
processor.
about
1/0
processor/information
Ans. Input/Output processor/information processor: It is
designed to handle input/ output processes of a device or
the computer. This processor is separate from the
main processor (CPU). I/O processor is similar to CPU
but it controls input output operations only. The
computer having I/O processor relieves CPU from
Input/output operations only. CPU is the master
processor of the computer and it instructs the I/O
processor to handle the input output tasks. I/O processor
cannot work independently and is controlled by the CPU.
The I/O processor is composed of commercially available
TTL logic circuits that generate the micro instructions
necessary to implement the I/O instructions. The
I/O processor is fully synchronous with the system clock
and main processor. it receives starting control from the
main processor (CPU) whenever an input output
instruction is read from memory. The I/O processor
makes use of system buses after taking the permission
from the CPU. It can instruction the I/O processor 1/0
processor responds to CPU by placing a status word at
prescribed location to be checked out by the CPU later on
CPU informs the 1/0 processor to find out the 1/0
program and ask 1/0 processor to transfer the data. I/O
processor can detect and correct the transmission errors.
I/O processor can have its own I/O register.
The I/O instruction require six to twelve microsecond to
execute. There are I/O instructions for setting or clearing
flip flops, testing the state of flip flops and moving data
between registers in the main processor and the input!
output register.
I/O processor are specialized devices whose purpose is to
take the load of I/O activity from the main CPU. The
simplest I/O processor is DMA controller. Complex I/O
processor are full computers dedicated to one task like
NFS servers, X-terminals, terminal concentrators. Other
I/O processor are like graphics accelerators, channels
controller and network interfaces.
Q.Explain various addressing modes in detail.
Ans. The addressing mode specifies a rule for
interpreting or modifying the address field of the
instruction before the operand is actually referenced.
Computers use addressing mode techniques for the
purpose of accommodating one or both of the following
provision:
(a) To give programming versatility to the user by
providing such facilities as pointers to memory, counter
for ioop control, indexing of data, and program
relocation.
(b) To, reduce the number of bits in the addressing field
of the instruction.
There are following addressing modes given below:
1. Immediate Addressing mode : In this mode the
operand is specified in the instruction itself. In other
words, an immediate mode instruction has an operand
field rather an address field. The operand field contain
the actual operand to be used in conjunction with
operations-specified in instruction. Immediate mode
instructions are useful for initialising registers to a
constant value.
2. Register mode: In this mode, the operands are in
registers that reside within the CPU. The particular
register is selected from register field in instruction. A kbit field can specify any one of 2k register.
3. Register indirect mode : In this mode the instruction
specifies a register in the CPU whose contents give the
address of the operand in memory. In other words, the
selected register contains the address of operand rather
than operand itself. Before using a register indirect mode
instruction, the programmer must ensure that the
memory address of the operand is placed in processor
register with a previous instruction. A reference to the
register is than equivalent to specifying a memory
address. The advantage of a register indirect mode
instruction is that the address field of the instruction uses
fever bits to select a register than would have required to
specify a memory address directly.
4. Auto increment or Auto decrement mode : This is
similar to register indirect mode except the register is
incremented or decremented after (or before) its value is
used to access memory. When the address stored in
register refer to a table of data in memory, it is
necessary to increment or decrement the register after
every access to the table. This can be achieved by using
the increment to decrement instruction. However,
because it is such a common requirement some
computers incorporate a special mode that automatically
increments or decrements the contents of register after
data access.
5. Direct address mode: In this mode the effective
address is equal to the address part of the instruction.
The operand resides in memory and its address is
given directly by the address field of instruction. In a
branch type instruction the address field specifies the
actual branch address. The effective address in these
modes is obtained from the following computation:
Effective address= address part of instruction + content
of CPU register.
6. Relative address mode: In this mode, the content of
program counter is added of address part of the
instruction in order to obtain the effective address.
The address part of instruction is usually a signed
number (in 2’s complement representation) which can be
either positive or negative. When this number is added to
the content of program counter, the result produces an
effective address whose position in memory is relative to
the address of the next instruction.
7. Indexed addressing mode: In this mode, the content
of an index register is added to the address part of the
instruction to obtain the effective address. The index
register is special CPU register that contain an index
value. The address field of instruction defines the
beginning address of a data array in memory. Each
operand in array is stored in memory relative to the
beginning address. The distance between the beginning
address and the address of the operand is the index
value stored in the index register. Any operand in the
arrays can be accessed with the same instruction
provided that the index register contains the correct
index value. The index register can be incremented to
facilitate access to consecutive operands.
8. Base register addressing mode : In this mode, the
content of a base register is added to address part of
instruction to obtain the effective address. This
is sisimilar to the indexed addressing mode except that
the register is now called a base register instead of an
index register.
Q. What is the difference between isolated mapped
VO and memory mapped input output. What are
the advantages and disadvantages of each?
Ans. Isolated I/O : In isolated mapped I/O transfer,
there will be common address and data bus for main
memory and I/O devices. The distinction memory
transfer i l7transfer is made through control lines. There
will be separate control signals for main memory and I/O
device. Those signals are memory read, memory write,
I/O read and I/O write. This is an isolated I/O method of
communication using a common bus. When CPU fetches
and decodes the operation code of input or output
instruction, the address associated with instruction is
placed on address bus. If that address is meant for I/O
devices then 1/0 read or I/O write control signal will he
enabled depending upon whether we want to read or
write the data from I/O devices. If that address is meant
for main memory then memory read or memory write
signals will be enabled depending upon whether we want
to read or write the data to main memory. Memory
Mapped I/O: In memory-mapped I/O, certain address
locations are not used by memory and I/O devices use
these address. Example : It address from 0 to 14 are not
used by main memory. Then these addresses can be
assigned as the address of I/O devices. That means with
above example we can connect with 15 I/O devices
to system having addresses from 0 to 14. So we an have
single set of address, data and control buses. It the
address on address bus belongs to main memory. This
will reduce the available address space for main memory
but as most modern system are having large main
memory so that is not normally problem. Memory
mapped I/O treats I/O parts as memory locations
programmer must ensure that a memory-mapped
address used by I/O device is used as a regular memory
address. There are following main point of difference
between isolated mapped I/O and memory mapped I/O.
The Advantage is that the load and store instructions
used for reading and writing from memory can be used
to input and output data from I/O registers. In a typical
computer, there are more memory reference instructions
than I/O instructions with memory-mapped I/O all
instruction that refer to memory are also available for
I/O.
Q. When a device interrupt occurs, how does the
processor determine which device issued the
interrupt
Ans. Data transfer between CPU and an I/O device is
initiated by CPU. However, the CPU cannot start the
transfer unless the device is ready to communicate with
CPU. The CPU responds to the interrupt request by
storing the return address on PC into a memory stack
and then the program branches to a service routine that
processes the required transfer. Some processors also
push the current PSW (program status word) auto the
stack and load a new PSW for the serving routine, it
neglect PSW here in order not to complicate the
discussion of I/O interrupts. A priority over the various
sources to determine which condition is to be serviced
first when two or more requests arrive simultaneously.
The system may also determine which conditions are
permitted to interrupt the computer while another
interrupt is being serviced. Higher-priority interrupts
levels are assigned to requests which if delayed or
interrupted, could have serious consequences. Devices
with high speed transfers such as magnetic disks are
given high priority, and slow devices such as keyboard
receive low priority. When two devices interrupt the
computer at the same time,. the computer services the
device, with higher priority first.
When a device interrupt occurs, basically it is checked
through Daisy chaining priority method into determine
which device issued the interrupt.
The daisy-chaining method of establishing priority
consists of a serial connection of all devices that request
an interrupt. The device with the highest is placed in first
position, followed by lower-priority devices upto the
device with the lowest priority which is placed last in
chain. This method of connection between three devices
and CPU is shown in figure. The interrupt request line is
common to all devices and forms a wired logic
connection. If any device has its interrupt signal in lowlevel state, the interrupt line goes to low level states and
enables the interrupt input in CPU. When no interrupts
are pending, interrupt line stays in the high level state
and no interrupts are recognized by the CPU. This is
equivalent to a negative logic OR operation. The CPU
responds to an interrupt request by enabling the
interrupt acknowledge line. This signal is received
by device 1 at its P1 (priority in) input. The
acknowledge signal passes on to next device through P0
(priority out) output only if device 1 is not requesting an
interrupt. If devices has a pending interrupt, it blocks the
acknowledge signal from next device by placing 0 in P0
output. If then proceeds to insert its own interrupt Vector
Address (VAD) into the data bus for the CPU to use
during the interrupt cycle.
A device with 0 in its input generates a 0 in its P0 output
to inform the next lower priority device that the
acknowledge signal has been blocked. A device that is
requesting an interrupt and has a 1 in its P1 input will
intercept the acknowledge signal by placing 0 in its P0
output. If the device does not have pending interrupts, it
transmits the acknowledge signal to the next device
placing interrupts, a L in its P0 output ( Thus the device
with P1 =1 and PC =0 is the one with the highest priority
that is requesting an interrupt, and this device places its
VAD on the data bus. The daisy chain arragement gives
the highest priority to the device that receives the
interrupts acknowledge signal from the CPU. The farther
the device is form the first position, the lower to its
priority.
Figure shows the internal logic that must be included
within each device when connected in the daisy chaining
scheme. The device sets its RF flip-flop when its wants to
interrupt the CPU. The Output of the R.F. flip-flop goes
through an open-collector in verter, a circuit that
provide the wired logic for the common interrupt line. If
PT = 0, both PC and the enable line to VAD are equal to
0, irrespective of value of RF. If P1 = I and RF 0, then P0
= 1 and vector address is disabled. This condition passes
the acknowledge signal to the next device through P0.
The device is active when P1 = I and RF = 1. This
condition places 0 in P0 and enables the vector address
for the data bus. It is assumed that each device has its
own distinct vector address. The RF flip-flop is reset
after a sufficient delay to ensure that the CPU has
received the vector address.
Q. What is a multiprocess ? Explain the term SIMD.
Ans. A multiprocessor system is having two or more
processors. So, multiprocessor is which execute more
than of one and two processes. The main feature
multiprocessor system is to share main memory or other
resources by all processors.
SIMD : SIMD computer executes one instruction on
multiple data items at a time. This is implemented in
vector or array processing and multimedia extension
(MMX) in Pentium. Here all processor receives the same
instruction from control unit and implement it on
different data items. There is single control unit that
handle multiple execution units. Each processing unit has
its own local memory module.
Q. Compare SIMD and MIMD machine.
Ans. SIMD : SIMD machine executes one instruction on
multiple data items at a time. Here all processor receives
the same instruction from control units and implement it
on different data items. Here is single control unit that
handle multiple execution unit.
MIMD: MIMD Computer involves the execution of
multiple instructions on multiple data stream. Hence this
type of computer involves multiple processing. MIMD
involves multiple control units, multiple processing units
and multiple execution units. These types of computer
provide the highest level of parallelism by having
multiple processors.
Q. Explain about parallel computers.
Ans. Parallel computers provides parallelism in
unprocessor or multiple processors can enhance the
performance
of
computer.
The
concurrency
in
unprocessor or superscalar in terms of hardwares and
software implementation can lead to faster execution of
programs in computer. Parallel processing provides
simultaneous
data
processing
to
increase
the
computational seed of computer.
Q. Explain about MIMD machine.
Ans. MIMD computer provides the execution of multiple
instructions on multiple data stream. Hence the type of
computer involves multiple processors. MIMD involves
multiple central unit, multiple processing units and
multiple execution units. These types of computer
provide highest level, of parallelism by having multiple
processors.
Q.
Explain
computers
about
parallel
and
distribution
Ans. Parallel Computer: Parallel computers require lots
of processor-either in one computer or inside several
linked machine going up to work on a single problem at
one time. A typical desktop PC has one processor, a
computer bit to handle parallel processing can have
several hundred of processors. Specific areas where
parallel processing is required in scientific industries,
although its reach is slowly extending to the business
world. The best candidates for parallel processing are
projects that require many different computations. Single
processor
computers
perform
each
computation
sequentially. Using parallel processing, a computer can
perform several computations simultaneously, drastically
reducing the time it takes to complete a project. The
medical community uses parallel processing super
computers to analyses MRI images and study models of
bus implant systems. Airline uses parallel processing to
process customer information, to forecast demand and to
decide what forces to charge.
Distributed computer: In distributed systems, it should
communicate with each other using some fixed set of
rules (protocols). The methods for this communication
include layered protocols, request/reply messing passing
including
(Remote
procedure
call)
and
group
communication (i.e. multi-casting, broadcasting etc.).
Another important thing that should be focused upon is
how these processes should cooperate and synchronize
with one another. This implies that methods to
implement solutions for the critical section problem and
resources allocation in a distributed systems must he
known.
It
deals
with
inter-process
co-operation
and
sychronization in distributed systems. It is clear that the
methods to implement inter-process co-operation and.
sychronization in distributed system is more complex and
difficult to implement as compared to those in single CPU
systems.
Q. What is meant by hierarchical bus system for
multiprocessing system?
Ans. A system’s work load cannot be handled
satisfactory by a single processor, one response is to
apply multiple processors to the problem and this is
known as multiprocessing environment. There are two
types of multiprocessing system.
1. Symmetrical multiprocessing system
2. Asymmetric multiprocessing system.
Hierarchical bus is also in this multiprocessing system.
1. Symmetrical multiprocessing system : In this, all
of the processors are essentially identical and perform
identical functions. Characteristics of such system can be
specified as
(a) Any processor can initiate an I/O operation can
handle any external interrupt, and can run any processor
in the system.
(b) All of the processors are potentially available to
handle whenever needs. to be done next:
2. Asymmetric multiprocessing system : Asymmetry
implies imbalance, or some difference between
processors. Thus, in asymmetric multiprocessing,
different processors do different things. From design
point of view, it is often implemented so that one
processors job is to control the rest, or it is the
supervisor of the others. Some advantages and
disadvantages of this approach are:
1. In some situation, I/O operation application program
processing may be faster because it does not have to
contend with other operations or programs for access to
a processor i.e. many processors may be available for a
single job.
2. In other situations, I/O operation or application
program processing can be slowed down because not all
of the processors are available to handle peak loads.
3. In asymmetric multiprocessing, if the supervisor
processor handling a specific work fails. The entire
system will go down.
Q. Explain about the multiprocessor?
Ans. A multiprocessor system is having two or more
processors. This type of system will have one master
CPU to control all other processors. The other processor
may be coprocessor or input-output processors. The
main feature is to share main memory or other resources
by
all
processor. The basic characteristics of
multiprocessor system is as specified ahead.
1. This system must have more than one processor. All
these processor must have nearly identical processing
capabilities.
2. All these processor must have common shared
memory.
3. Processors share all I/O devices or other resources.
4. The interaction among processors at program level
must be defined precisely
to have good and efficient design of hardware for
multiprocessor system.
5. The system configuration can enhanced at required
increments at any point of time.
There are two types of multiprocessor i.e.rightly coupled
and loosely coupled. Tightly coupled shares common
memory and each processor is also have its own local
memory. Loosely coupled multiprocessor is not having
shared memory although each processor will have its
own local memory. The processors used in this type of
system are specialized to handle different tasks. This
system increases the overall reliability of system. That
means if one or two processor fails, their load is being
shared by other processor. Present in system the
different schemes used for interconnection of processors
and memories are instead ahead
1. Common Bus.
2. Multiple Bus.
3. Gossbar switching.
4. Multistage interconnection network.
5. Multiport memory.
1. Common Bus : This scheme will provide single bus
for interconnection of processors and memory.
This scheme is most effective and very simple. The
failure of bus system results in total system failure.
Moreover the performance of overall system is being
limited by data transfer rate of bus.
2. Multiple Bus Organisation : This system will provide
two or more buses for interconnection of processor and
memory.
This
scheme
allows
multiple
data
transfer
simultaneously. This will increase reliability without
increasing the cost too much.
3. Gossbar Organisation:
This
scheme
prokles
interconnection of n processor and n memory modules
using switch elements. Switch element is having
electronic circuit to provide desired path it supports
priority logic to resolve conflicts. The interconnections of
three processor with three memory modules have been
in figure.
Since each memory module have separate path. That
means all memory modules can communicate at the
same
time.
The
hardware
implementation
is
comparatively complex as compared to earlier scheme.
4. Multistage Interconnection Network : This scheme
is having more than one stages of electronics switches.
These stages provide the path between processor and
memory modules. Each switch is having two inputs and
two outputs. It is cost effective solution. Omega
switching network is a popular example of this schemes.
5. Multiport memory : This scheme distributes the
control,
switching
and
priority
arbitration
logic
throughout the crossbar switch. Priority logic in used to
resolve memory conflicts. The control and switching logic
is implemented in memory. Hence specialized memories
are required. This scheme provides very high data
transfer rate.
Q. Write a short note on:
(A) Parallel computing. (b) Distributed computing.
(c) Serial and parallel interface.
Ans. (a) Parallel
computing :
Parallel
computing
provides simultaneous data processing to increase the
computation seed of computer. The important goal of
computer architecture is to attain high performance.
Implementing parallelism in uniprocessed or multiple
processors can enhance the performance of computer.
The concurrency in uniprocessor or superscalar in terms
of hardware and software implementation can lead to
faster execution of program in computer. Real times
applications require faster response from computer.
There are three main techniques to implement in parallel
processing:
(a) Multiprocessor system.
(b) Pipelining.
(c) Vector processing or computing.
(b) Distributed computing: In distributed system each
processor has its own local memory rather than having a
shared memory or a clock as in parallel system. The
processor communicate with one another through various
communication media such as telephone lines, highspeed buses etc. Such systems are referred as looselycoupled systems. The processors may be called as sites,
workstations, minicomputers and large general purpose
computers etc.
There are several factors that causes for building such
system
(a) Resource sharing : Users who are sitting-at
different location can share the resources such as a user
who is at location., A can share the printer who is at
location B or vice-versa
(b) Computation speed : When a single computation
job is divided into number of sub computational job than
naturally it executes faster due concurrent execution.
(c) Reliability: In this failure of one processor slows
down the speed of system but if each system is assigned
to perform a pre-specified task then failure of
one system can halt the system. One way to overcome
such problem is use an another processor. Who works as
a backup processor.
(d) Communication : Some programs at different sites
need to exchange the
information, so they communicate with one another via
electronic mail.
(c) Serial and parallel interface: In parallel interface
there is parallel independent lines of data exist from the
I/O part to the device. In addition to these lines a few
other optional lines are needed to synchronize the
transfer of data Serial interfaces have only a single data
line for bit by bit data transfers. Any serial interface has
a shift register that converts serial data into parallel and
vice versa. Serial interfaces are used for longer distance
communication and can be used to connect two
computers or a computer and a remote device. A serial
interface standard such as Rs 232 C allows for inter
connection devices upto 50 meters apart.
Two types of serial interfaces are Asynchronous serial
interface and synchronous serial interface another type
of large number of application, the analog information
has to be converted to digital form for input to the
computer system. Similarly, where the output to device
has to be in form of voltage or current which varies
smoothly, the digital output form needs to be converted
into analog form. A variety of devices are needed to
convert the physical quantities such as pressure,
temperature, light intensity etc. into electrical signals.
These converting devices are called transducers. The
output of transducers is a smoothly varying electric
signal and converted into discrete digital patterns by a
device A/D (analog to digital) converters.
Q. Write and explain types of parallel processor
systems.
Ans. Parallel processing is used to denote a large class of
techniques that is used to provide simultaneous data
processing tasks for purpose of increasing the
computational speech of a computer system. The parallel
processing system is able to perform concurrent data
processing to achieve faster execution time. Parallel
processor system follows the parallel processing
techniques. Parallel processor computers are required to
meet the demands of large scale computations in many
scientific, engineering, military, medical, artificial
intelligence and basic research areas. The following are
some representative applications of parallel processing
computer. Numerical weather forecasting, computational
aerodynamics, finite element analysis, remote sensing
application genetic engineering, computer asserted forro
graphy and weapon research and defence.
There are following types of parallel processors
1. Array processors.
2. Vector processor.
3. Processor in pipeline processing.
4. Multiprocessor.
1. Array processor: An array processor is a processor
that performs a large arrays of data. The term is used to
refer to two types of processors. An attached array
processor is an auxiliary processor attached to a generalpurpose computer. It is intended to improve the
performance of the host computer in specific task. An
SIMD array processor is a processor that has a single
instruction multiple data organisation. It manipulates
vector instruction by mean of multiple functional units
responding to. common instruction.
An attached array processor is designed as a peripheral
for a conventional host computer, and its purpose is to
enhance the performance of the computer by providing
vector processing for the application.
An SIMD array processor is a computer with multiple
processing units operating in parallel. The processing unit
are synchronized to perform the same operation under
the control unit. This provides single instruction multiple
data stream organisation.
A general block of diagram of array processor is shown in
figure 2. It contains a set of identical processing
elements (pEs), Each having a local memory (M).
2. Vector processor : The problem can a formulated in
terms of vectors and matrixes that lend themselves to
vector processing.
Computers with vector processing capabilities are in
demands in specialized applications. The following are
representative
application
areas
where
vector
processing is of utmost importance.
1. Long range weather forecasting.
2. Petroleum exploration.
3. Seismic data analysis.
4. Medical diagnosis.
5. Aerodynamics and space flight simulations.
6. Artificial intelligence and expert system.
7. Mapping the human genome.
8. Image processing.
3. Processor in pipelining : A pipeline is as a collection
of processing segments through which binary information
flows. Each segment performs partial processing dictated
by the way the task is partitioned. The result obtained
from the computation in each segment is transferred to
the next segment in the pipeline. The final result is
obtained after the data have passed through all
segments.
The sub populations performed in each segment of
pipeline are as follows:
4. Multiprocessor: A multiprocessor system is having
two or more processors. This type of system will have
one master CPU to control all other processors. The other
processor may be coprocessor or I/O processor. The
main features of multiprocessor system is to share main
memory or other resources by all processors. The basic
characteristics of multiprocessor system is as specified
ahead:
(a) This system must have more than one processor. All
these processor must have nearly identical processing
capabilities.
(b) All these processor must have common shared
memory.
(c) Processors share all I/O devices of other resources.
(d) The system configuration can be enhanced at
required increments at any point of time.