0% found this document useful (0 votes)
31 views

Intro To Computer Architecture

Uploaded by

22it10051
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views

Intro To Computer Architecture

Uploaded by

22it10051
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 16

COMPUTER ARCHITECTURE

COEN 4305
Introduction
• As we know that computers have now become a part of our
routine life.
• The smart work that it performs with a given instruction is
worth exploring.
• It may be a question in our mind as we keep ourselves
thinking that what kind of process is going on in a computer
when any instruction is given.
• What happens inside it?
Introduction
• Computer Architecture is concerned with the structure and
behaviour of the various functional modules of the computer
and how they interact to provide the processing needs of the
user .
• The discipline of Computer Architecture has three main
subcategories:
– Instruction Set Architecture (ISA): The ISA defines the codes that a
central processor reads and acts upon. It is the machine language,
including the instruction set, word size, memory address modes,
processor registers and address and data formats.
Introduction
– Microarchitecture (Computer Organization): This describes the
data paths, data processing elements and data storage elements,
and describes how they should implement the ISA.
– System Design: This includes all of the other hardware
components within a computing system, which includes;
• Data paths, such as computer buses and switches
• Memory controllers and hierarchies
• Data processing other than the CPU, such as direct memory access
(DMA)
• Miscellaneous issues such as virtualization, multiprocessing and
software features.
Introduction
Why study Computer Architecture and Organization?
•The IEEE/ACM Computer Curricula 2001 lists Computer
Architecture as one of the core subjects that should be in the
curriculum of all students in Computer Science and Computer
Engineering.
• The computer lies at the heart of computing. Without it most of
the computing disciplines today would be a branch of theoretical
mathematics.
• To be a professional in any field of computing today, one should
not regard the computer as just a black box that executes programs
by magic.
Introduction
• All students of computing should acquire some understanding
and appreciation of a computer system’s functional
components, their characteristics, their performance, and their
interactions.
• Students need to understand computer architecture in order
to structure a program so that it runs more efficiently on a
real machine.
• In selecting a system to use, they should be able to
understand the trade-off among various components, such as
CPU clock speed Vs. memory size.
The Stored Program Computer
• Instruction vs. Data
– Modern computers accomplish computations by interpreting and manipulating binary
strings
– Binary strings are either 4 or 8 bytes long in most machines (i.e. 32 or 64 bits)
– A single 32- (or 64-) bits string is referred to as a word, which are of two types
• Data: Numbers/ASCII letter codes that correspond to the variables/constants
in our programs
• Instructions: interpreted by the computer and used to control what happens
to the data
– BOTH ARE STORED IN A SINGLE READ-WRITE MEMORY, ALTHO IN DIFF
LOCATIONS
– BOTH WORDS LOOK THE SAME BUT ARE PROCESSED DIFFERENTLY
– BOTH CAN BE MANIPULATED USING DIGITAL LOGIC
– Thus…
– A computer needs to be able to:
• Manipulate data
• Interpret instructions and decide what to do
• Store words (both types)
• Keep track of what is happening next
• Get data/instructions in and out
• Move data/instructions around
– The core of modern computer where software is
executed is the CPU, which must be able to
• Read the program and its data from some external device (memory)
• Process instructions of the program in the correct order
• Manipulate and compute with data in accordance with the instructions
• Take decisions according to the results of the computations
• Send the results of the computations to some external device (screen,
printer) or store them for further use
– Typical CPU must therefore have units which can:
• Load/store instruction and data in memory
• Interpret the instructions to allow the machine to do the necessary
computations
• Send the results to external devices
• Take appropriate decisions and
control what is happening
• Keep track of things
• Storage
– Memory can, roughly, be divided into
• Main memory
– Used to store both instructions and data
– Can hold whole programs and all their data
– Generally physically separate from the main CPU and
therefore slow compared to the Registers
• • Registers
– Used to store active instructions and data which are currently
being used
– Each register holds one word
– Physically within the CPU, therefore very fast compared to MM
– Some registers are special-purpose
» Instruction registers
» Program counters
• • I/O
– Computers are useless if there is no means of putting stuff in
and getting stuff out
– Most devices have some I/O controller which handles external
devices
– These controllers work in several ways
• Assign the external devices some memory addresses
• Use interrupts
• Bus
– The transport network within a computer is known as the bus

– Consists of:
• A set of wires down which information can be sent (instruction, data, addresses, control signal, etc)
• A protocol which allows components to
– Write info on to the bus for transmission to other components of the machine
– Read info from the bus
– Control where the info is being sent and what is reading it
• A bus controller which
– Grants/refuses access to the bus
– Balances the use of the bus between components
• The von Neumann Design
Number Systems
• The binary number system is the most important one in digital
systems, but several others are also important.
• The decimal system is important because it is universally used to
represent quantities outside a digital system.
• This means that there will be situations where decimal values
must be converted to binary values before they are entered into
the digital system.
• Likewise, there will be situations where the binary values at the
outputs of a digital system must be converted to decimal values for
presentation to the outside world.

You might also like