Professional Documents
Culture Documents
CS G553
‹#›
Lecture – 2,3,4
Introduction: Motivation, Goals, etc…
CS G553 2
Introduction
Research in computer (processor) architecture
o The investing goals vary according to
• Target applications
• Price of the final equipment
• Programmability of the system
• The environment in which processors will be deployed
• Many others
CS G553 3
Introduction
Computer anytime anywhere (pervasive and ubiquity) …
PDA Car
PC
Home Networking
Communication
CS G553 4
Introduction
... communication also.
CS G553 5
Introduction
Explosive growth in
o Computing
o Communication
Information technology
o ʺHand in hand com“ growth in computing and communication
CS G553 6
Performance VS Cost
CS G553 7
Computing Paradigms
Reconfigurable Processors
CS G553 8
The Von Neumann Computer
Principle
In 1945, the mathematician Von Neumann (VN)
demonstrated in study of computation that a computer
could have a simple structure, capable of executing any
kind of program, given a properly programmed control
unit, without the need of hardware modification
CS G553 9
The Von Neumann Computer
CS G553 10
The Von Neumann Computer
Structure
o A memory for storing program and data.
• The memory consists of the word with the same length
o A control unit (control path) featuring a program counter for
controlling program execution
o An arithmetic and logic unit (ALU) also called data path for program
execution
Processor or
Memory
Central processing unit
Datapath Data
Registers Data
and
Instructions
Instruction Address
register
PC Address
register
Controllpath
CS G553 11
The Von Neumann Computer
Coding
A program is coded as a set of instructions to be sequentially
executed
Program execution
o Instruction Fetch (IF): The next instruction to be executed is
fetched from the memory
o Decode (D): The instruction is decoded to determine the
operation
o Read operand (R): The operands are read from the memory
o Execute (EX): The required operation is executed on the ALU
o Write result (W): The result of the operation is written back to
the memory
o Instruction execution in Cycle (IF, D, R, EX, W)
CS G553 12
The Von Neumann Computer
Advantage:
o Flexibility: any well coded program can be executed
Drawbacks
o Speed efficiency: Not efficient, due to the sequential program
execution (temporal resource sharing).
• Resource efficiency: Only one part of the hardware resources is
required for the execution of an instruction. The rest remains
idle.
• Memory access: Memories are about 10 time slower than the
processor
o Drawbacks are compensated using high clock speed,
pipelining, caches, instruction pre-fetching, etc.
CS G553 13
The Von Neumann Computer
Sequential execution
tcycle = cycle execution time
➢ One instruction needs tinstrcution = 5*tcycle
➢ 3 instructions are executed in 15*tcycle
Pipelining:
One instruction needs tinstrcution = 5*tcycle
o no improvement. In instruction cycle
3 instructions need 7*tcycle in the ideal
case.
9*tcycle on a Harvard architecture.
→ Increased throughput
Even with pipeline and other improvements like cache, the execution remain sequential.
CS G553 14
The Von Neumann Computer
Conclusion
o Flexible
o Each algorithm can be implemented on a VN machine only if it is coded
according to the VN rules.
CS G553 15
Domain specific processors
CS G553 16
CS G553 17
CS G553 18
Domain specific processors
DSPs:
Designed for high-performance,
repetitive, numerically intensive tasks
CS G553 19
Domain specific processors
Conclusion
o Faster than VN (MAC in 1 cycle; but for VN 10 steps required)
o Customised according to the application domain
• If the DSP is for image processing (each pixel 8-bit for
RGB); then it cannot be used again for applications
requiring 32-bit computation
CS G553 20
Application Specific Instructionset
Processor
An ASIP is a processor that can be specialized to a
particular application domain
o Adding new instructions
o Extending the processor Datapath
Example
o ASIP for Image processing
o ASIP for mobile phone
CS G553 21
Application specific processors or ASIC
CS G553 22
Application specific processors or ASIC
At least 3 instructions
Mult Add Decr. Incr.
CS G553 23
Application specific processors ASIC
Conclusion
o ASIC uses a spatial approach to implement only one application
o The functional units needed for the computation of all parts of the
application must be available on the surface of the final processor.
o This kind of computation is called ʺSpatial Computation“
o Highly efficient (Parallel computing)
o No flexibility
CS G553 24
Overall Conclusion
Von Neumann computer:
General purpose, used for any kind of function.
High degree of flexibility.
However, high restrictions on the program coding and execution scheme
the program have to adapt to the machine
DSPs are Adapted for a class of applications.
Flexibility and efficiency only for a given class of applications.
ASIPs are Adapted for a class of tailored applications.
Flexibility and efficiency only for a given class of applications.
ASICs are
Tailored for one application.
Very efficient in speed and resource.
Cannot re-adapt to a new application
Not flexible
CS G553 25
Conclusion
CS G553 26
Performance VS Flexibility
CS G553 27
Reconfigurable Computing
CS G553 28
Flexibility vs Efficiency
Flexibility
Von Neumann
General purpose
computing DSP
Domain specific
computing Reconfigurable
systems
Reconfigurable
computing
ASIC
ASIP
Application
specific
computing
Perfromance
CS G553 29
Temporal vs. spatial based computing
CS G553 30
Methods for executing algorithms
Hardware Reconfigurable Software-programmed
(Application Specific computing processors
Integrated Circuits)
CS G553 32
Reconfigurable Computing
CS G553 33
Some Fields of Application
Rapid prototyping
Fault tolerance
CS G553 34
Rapid prototyping
ITALTEL FLEXBENCH
CS G553 35
Post fabrication customization
functions can be
executed on the fly
during system
debugging
CS G553 36
Multi-modal computing tasks
Reconfigurable vehicles,
mobile
o phones, etc..
o Built-in Digital Camera
o Video phone service
o Games service request
o Internet
o Navigation system Configuration
o Emergency
o Diagnostics
o Different standard and
protocols
o Monitoring
o Entertainment
CS G553 37
Adaptive computing systems
Computing systems that are able to adapt
their behaviour and structure to changing
operating and environmental conditions,
time-varying optimization objectives, and
physical constraints like changing
protocols,
new standards, or dynamically changing
operation conditions of technical systems.
CS G553 38
Adaptive Distributed Video Processing
Application in surveillance
o Distributed cameras
• Intelligent
• Adaptive
• Performance
o Communication
• Data exchange
– Knowledge
– Information at boundary
• Wireless
o Self-organization
• Repositioning for better coverage
CS G553 39
Adaptive Distributed Video Processing
Operation on failure
o Failure detection mechanism
o Self healing mechanism
o Failure recovery
o Detection and protection against attacks
CS G553 40
High performance parallel computing
Traditional parallel implementation flow
2 1 2 3 4
Application 3
4 5 6 7
2 3
1
4 5 6 7
2 3
4 5 6 7 Physical Topology
Virtual Topology
CS G553 41
Top View: Field-Effect Transistor
CS G553 42
The Microprocessor
CS G553 43
Microprocessor bottlenecks
CS G553 44
The future of the microprocessor
CS G553 45
The main question
CS G553 46
CS G553 47
The End
Questions ?
CS G553 48