Prepared by
KARTHIK. S -
KARTHIK. S
Approved BY
HOD(ECE) -
SYLLABUS:
KARTHIK. S
1. INTRODUCTION:
The technical term for a PC is micro data processor. Computers have their roots 300
years back in history. Mathematicians and philosophers like Pascal, Leibnitz, Babbage
and Boole made the foundation with their theoretical works. Only in the second half of
this century was electronic science sufficiently developed, to make practical use of their
theories.
The modern PC has roots back to USA in the 1940's. Among the many scientists, I like to
remember John von Neumann (1903-57). He was a mathematician, born in Hungary. We
can still use his computer design today. A great majority of the computers of our daily
use are known as general purpose machines. These are machines that are built with no
specific application in mind, but rather are capable of performing computation needed by
a diversity of applications. These machines are to be distinguished from those built to
serve (tailored to) specific applications. The latter are known as special purpose
machines.
Definitions:
It may also be defined as the science and art of selecting and interconnecting hardware
components to create computers that meet functional, performance and cost goals
It is the arrangement of computer components and their relationships.
Computer architecture is the theory behind the design of a computer. In the same way as
a building architect sets the principles and goals of a building project as the basis for the
draftsman's plans, so too, a computer architect sets out the computer architecture as a
basis for the actual design specifications.
KARTHIK. S
KARTHIK. S
The functional units of a computer are Arithmetic and logic unit, Control unit, Memory unit
Input unit & Output unit.
Arithmetic & Logic Unit:
It is the unit of the system where most of the computer operations are carried out.
For example if we perform any arithmetic or logical operation we have to fetch the required
operands from the memory into processor and in processor the required operation is carried out
by ALU.
The result may be stored in memory or retained in the registers for immediate use.
Control Unit:
It is the unit which co-ordinates the operations of ALU, Memory, Input and output units.
It is the nerve center of the computer system that sends control signals to other units.
Data transfer between computer and memory is controlled by control unit through timing signals.
KARTHIK. S
Program counter will point to the first instruction of a program at the starting of the
execution of the program.
Contents of PC are transferred to MAR and a read control signal is sent to memory.
After memory access time is completed the requested word is read out of the memory and
placed in the MDR.
KARTHIK. S
Next the contents of the MDR are transferred to IR and now the instruction is ready to be
executed.
If the operands resides in the memory, it has to be fetched by sending its address to
MAR and initiating a read cycle.
When the operand has been read from the memory into MDR, it is transferred from MDR
to ALU.
After fetching one or more operands in this way ALU can perform the desired operation.
If the result of the operation is to be stored in the memory then result is sent to MDR.
The address of location where the result is to be stored is transferred to MAR and write
cycle is initiated.
Somewhere during the execution of the current instruction the contents of the PC is
incremented and the PC contains address of the next instruction to be executed.
KARTHIK. S
As soon as the execution of the current instruction is completed, a new instruction fetch
may be started.
Bus Structure:
The group of lines that connect CPU and the peripherals is termed as BUS. The three types of
buses are Address bus, Data bus and Control bus. Typically, a bus consists of 50 to hundreds of
separate lines. On any bus the lines are grouped into three main function groups: data, address,
and control. There may also be power distribution lines for attached modules. The Address bus is
unidirectional because it carries only the address information from CPU to Memory. The Data
bus is bidirectional since it carries data to and from the CPU. In conventional systems multiple
buses were used but in modern systems single bus structure is used as shown in the figure.
Fetch
Decode
Execute
Store
The basic function performed by a computer is execution of a program, which consists of a set of
instructions stored in memory. The processor does the actual work by executing instructions
KARTHIK. S
KARTHIK. S
KARTHIK. S
Availability.
Scalability.
Lastly,
KARTHIK. S
Functional requirements
Power
Performance
KARTHIK. S
KARTHIK. S
KARTHIK. S
wafer yield accounts for wafers that are completely bad and so need not be tested. --is a
parameter that corresponds inversely to the number of masking levels, a measure of
manufacturing complexity, critical to die yield.
Example:
Find the number of dies per 30-cm wafer for a die that is 0.7 cm on a side.
Solution:
2
But this only gives the maximum number of dies per wafer. The critical question is, What is the
fraction or percentage of good dies on a wafer number, or the die yield? A simple empirical
model of integrated circuit yield, which assumes that defects are randomly distributed over the
wafer and that yield is inversely proportional to the complexity of the fabrication process, leads
to the following:
KARTHIK. S
Direct costs refer to the costs directly related to making a product. These include labor
costs, purchasing components, scrap (the left over from yield), and warranty
Gross margin, the companys overhead that cannot be billed directly to one product.
Indirect cost- It includes the companys research and development (R&D), marketing,
sales, manufacturing equipment maintenance, building rental, cost of financing, pretax
,profits, and taxes.
Average selling pricethe money that comes directly to the company for each product
sold.
List price-that companies offer volume discounts, lowering the average selling price.
KARTHIK. S
Since execution time is the reciprocal of performance, the following relationship holds:
The phrase the throughput of X is 1.3 times higher than Y signifies here that the number of
tasks completed per unit time on machine X is 1.3 times the number completed on Y. Because
performance and execution time are reciprocals, increasing Performance decreases execution
time.
Measuring Performance:
The most straightforward dentition of time is called wall-clock time, response time, or elapsed
time, which is the latency to complete a task, including disk accesses, memory accesses,
input/output activities, operating system overheadeverything. With multiprogramming the
CPU works on another program while waiting for I/O and may not necessarily minimize the
elapsed time of one program. Hence we need a term to take this activity into account. CPU time
recognizes this distinction and means the time the CPU is computing, not including the time
waiting for I/O or running other programs. (Clearly the response time seen by the user is the
KARTHIK. S
Toy benchmarks
Toy benchmarks are typically between 10 and 100 lines of code and produce a
result the user already knows before running the toy program.
example Puzzle, and Quicksort
Synthetic benchmarks
KARTHIK. S
Parallelism:
It is one of most important methods for improving performance.
One of the simplest ways to do this is through pipelining ie, to over lap the instruction Execution
to reduce the total time to complete an instruction sequence.
KARTHIK. S
Amdahls law is used to find the performance gain that can be obtained by improving some
portion or a functional unit of a computer Amdahls law defines the speedup that can be gained
by using a particular feature.
Speedup is the ratio of performance for entire task without using the enhancement when possible
to the performance for entire task without using the enhancement. Execution time is the
reciprocal of performance. Alternatively, speedup is defined as the ratio of execution time for
entire task without using the enhancement to the execution time for entire task using the
enhancement when possible. Speedup from some enhancement depends on two factors:
i.
The fraction of the computation time in the original computer that can be converted to
take advantage of the enhancement. Fraction enhanced is always less than or equal to
Example: If 15 seconds of the execution time of a program that takes 50 seconds in
total can use an enhancement, the fraction is 15/50 or 0.3
ii.
ii. The improvement gained by the enhanced execution mode; ie how much faster the
task would run if the enhanced mode were used for the entire program. Speedup
KARTHIK. S
iii.
Enhanced is the time of the original mode over the time of the enhanced mode and is
always greater than 1.
KARTHIK. S