0% found this document useful (0 votes)
18 views9 pages

Task 2

Uploaded by

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

Task 2

Uploaded by

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

TASK 2

Computer processors
The engines that drive computation
Computer processor
This is a digital device that can perform a computation involving multiple steps.
They can use fixed, selectable, parameterized or programmable logic.
The term engine identifies a processor that is a sub piece of a more complex
processor.
Processors are used in various roles including
 Coprocessors
 Microcontrollers
 Embedded processors
 General purpose processors

N/B early processors were created from discrete logic; a modern processor is
implemented as a single VLSI chip.

1. Coprocessors
It operates in conjunction with and under the control of another processor.
It consists of a special purpose processor that performs a single task at a high
speed.
An example of a coprocessor is known as a floating point accelerator to speed up
the execution of arithmetic operations.
When a floating point operation occurs the CPU automatically passes the
necessary value to the core processor and obtain the results and then continues
the execution.
In architecture we are running programs that are not known which programs are
performed directly by the CPU and which are carried out by the coprocessor.
The operation of a coprocessor is transparent to the software.
Typically, in a nutshell we can say the coprocessor are used fixed or selectable
logic.
This means the functions the coprocessor can perform are determined when the
coprocessor is designed
2. Microcontrollers
It consists of a programmable device dedicated to the control of a physical
system.
An example of microcontrollers is landing gear of an aeroplane and automatic
doors in offices.
They test sensors and send signals to control devices.
3. Embedded processors
It runs sophisticated electronic devices such as a wireless router or a smartphone.
Processors used for embedded systems are usually more powerful than those
used as microprocessor and often run a protocol start used in communication.
The processor might not require all functionalities found in a general purpose
CPU.
4. General purpose processors
They are the most familiar and need little explanation. For example, the CPU in a
PC is a general purpose processor.

ARCHITECTURAL APPROACHES
There are two basic approaches
 Harvard architecture
 Von Neumann architecture
I. Harvard architecture
It refers to a memory structure in which the processors are connected to two
independent memory banks via two independent sets of buses.
It was basically developed to overcome the bottlenecks of Von Neumann
Architecture.
The main advantage of having separate buses for instruction and data that is that
the CPU can access instructions and read/write data at the same time.
The advantage of the Harvard Architecture arises from its ability to have one
memory unit optimized to store programs and another memory unit optimized to
store data.
The disadvantage arises from inflexibility: when purchasing a computer, an owner
must choose the size of the instruction memory and the size of data memory.

Main Memory System

Instruction Instruction Data


Address Data address

Arithmetic
Operational registers
And
Logic
Program counter
Unit

Control unit
Input/output system

ii) Von Neumann architecture


It uses a single memory to hold both programs and data.
Modern computers are based on a stored – program concept introduced by John
Von Neumann.
Programs and data are stored in a separate storage unit called memories and are
treated the same.
The von Neumann architecture employs a stored program approach because a
program is stored in the memory mostly in the memory.
More important programs can be loaded into memory just like other data items.
The von Neumann architecture offers complete flexibility: at any time, an owner
can change how much of the memory is devoted to programs and how much is
devoted to data.

Memory

input

Control unit A.L.U output

Accumulator
Processor
The range of processors.
Processors have many variations depending on the work the work they do.
i. Fixed logic processors
It is the least flexible, performs single task
Most important, all the functionality needed to perform the operation is built in
when the processor is created, and the functionality cannot be altered without
changing the underlying hardware.
For example, a fixed logic processer can be designed to compute a function, such
as sine (x), or to perform a graphics operation needed in a video game.
ii. Selectable logic processor
It has slightly more flexibility than a fixed logic processor.
In essence, a selectable logic processor contains facilities needed to perform more
than one function; the exact function is specified when the processor is invoked.
For example, a selectable logic processor might be designed to compute either
sine(x) or cosine(x).
iii. Parameterized logic processor
Adds additional flexibility as compared to selectable logic processor.
Although it only computes a predetermined function, the processor accepts a set
of parameters that control the computation.
iv. Programmable logic processor
Offers the most flexibility because it allows the sequence of steps to be changed
each time the processor is invoked.
The processor can be given a program to run, typically by placing the program in
memory.

Structure of a convectional processor


We can view a processor as having five conceptual units;

Internal connection (s)

ALU Local
Controller
storage

External interface

External connection

a) Controller
The controller forms the heart of the processor.
Controller hardware has overall responsibility for program execution.
That is, the controller steps through the program and coordinates the actions of
all other hardware units to perform specified operations.
b) Arithmetic logic unit
It is the main computational engine in a processor.
The ALU performs all computational tasks, including integer (arithmetic
operations) on bits (e.g. left or right shift) and Boolean (logical operations) (e.g.
Boolean and, or, exclusive or and not).
However, the ALU does not perform multiple steps or initiate activities.
Instead, the ALU only performs one operation at a time and relies on the
controller to specify exactly what operation to perform on the operand.
c) Local storage
A processor must have a local data storage to hold data values such as the
operands for arithmetic operations.
d) Internal connection
A processor contains one or more hardware mechanisms that are used to transfer
values between the other hardware units.
For example, the interconnection hardware is used to move data values from the
local storage to the ALU or to move results from the ALU to local storage.
Architects sometimes use the term data path to describe an internal connection.
e) External connection
The external interface unit handles all communication between the processor and
the rest of the computer system.
In particular, the external interface manages communication between the
processor and external memory and I/O deice.
The external interface connects to the rest of the computer system.

The Fetch-Execute cycle.


All programmable processors follow the same fundamental paradigm.
The underlying mechanism is known as the fetch-execute cycle.
to implement fetch-execute cycle, a processor has an instruction pointer that
automatically moves through the program in memory, performing each step.
That is, each programmable processor executes two basic functions repeatedly.
Program translation
The steps used to translate a source program to the binary object code
representation used by a processor.
Source code preprocessor preprocessed compiler assembly code

source code

assembler relocatable linker binary object code

object code

object code

(functions)

In libraries

Clock rate and instruction rate


Most processors use a clock to control the rate at which the underlying digital
operates.
Anyone who has purchased a computer knows that sales personnel push
customers to purchase a fast clock with the argument that a higher clock rate will
result to higher performance.
Most systems, the time required for the execute portion of the cycle depends on
the instruction being executed.
The fetch-execute cycle may not proceed at a fixed rate because the time taken to
execute an instruction depends on operation being performed.
Although a higher clock rate means higher processing speed, the clock rate does
not give the rate at which the fetch-execute cycle proceed.
Starting the fetch-execute cycle
The steps used to start a processor are known as a bootstrap.
In a memory embedded environment, the program to be run usually resides in
Read Only Memory (ROM).
On a convectional computer, the hardware reads a copy of the operating system
from an I/O device such as a disk and places the copy into memory before starting
the processor.
In either case, hardware assists are needed for bootstrap because a signal must
be passed to the processor that causes the fetch-execute cycle to begin.

You might also like