Reconfigurable Computing Reconfigurable Computing Introduction - - PowerPoint PPT Presentation

reconfigurable computing reconfigurable computing
SMART_READER_LITE
LIVE PREVIEW

Reconfigurable Computing Reconfigurable Computing Introduction - - PowerPoint PPT Presentation

Reconfigurable Computing Reconfigurable Computing Introduction Introduction Chapter 1 1 Chapter Prof. Dr.- -Ing. Jrgen Teich Ing. Jrgen Teich Prof. Dr. Lehrstuhl fr Hardware- -Software Software- -Co Co- -Design Design


slide-1
SLIDE 1

Reconfigurable Computing

Reconfigurable Computing Reconfigurable Computing Introduction Introduction Chapter Chapter 1 1

  • Prof. Dr.
  • Prof. Dr.-
  • Ing. Jürgen Teich
  • Ing. Jürgen Teich

Lehrstuhl für Hardware Lehrstuhl für Hardware-

  • Software

Software-

  • Co

Co-

  • Design

Design

slide-2
SLIDE 2

Reconfigurable Computing

2

The Von Neumann Computer 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.

slide-3
SLIDE 3

Reconfigurable Computing

3

The Von Neumann Computer The Von Neumann Computer

  • Structure

A memory for storing program and data. The memory consists of the word with the same length A control unit (control path) featuring a program counter for controlling program execution An arithmetic and logic unit(ALU) also called data path for program execution

slide-4
SLIDE 4

Reconfigurable Computing

4

The Von Neumann Computer The Von Neumann Computer

  • Coding

A program is coded as a set of instructions to be sequentially executed

  • Program execution

Instruction Fetch (IF): The next instruction to be executed is fetched from the memory Decode (D): The instruction is decoded to determine the

  • peration

Read operand (R): The operands are read from the memory Execute (EX): The required operation is executed on the ALU Write result (W): The result of the operation is written back to the memory Instruction execution in Cycle (IF, D, R, EX, W)

slide-5
SLIDE 5

Reconfigurable Computing

5

The Von Neumann Computer The Von Neumann Computer Advantage:

Flexibility: any well coded program can be executed

Drawbacks

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 Drawbacks are compensated using high clock speed, pipelining, caches, instruction pre-fetching, etc.

slide-6
SLIDE 6

Reconfigurable Computing

6

The Von Neumann Computer 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 tinstruction = 5*tcycle no improvement. 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 remains sequential.

slide-7
SLIDE 7

Reconfigurable Computing

7

Domain specific processors Domain specific processors

Goal: Overcome the drawback of the von Neumann computer. Optimize the Data path for a given class of applications DSP (Digital Signal Processors) : Signal processing applications are usually multiply accumulate (MAC) dominated. The data path is optimized to execute one or many MACs in only one cycle. Instruction fetching and decoding overhead is removed Memory access is limited by directly processing the input dataflow

slide-8
SLIDE 8

Reconfigurable Computing

8

Domain specific processors Domain specific processors

DSPs:

Designed for high-performance, repetitive, numerically intensive tasks In one Instruction Cycle, can do:

  • many MAC-operations
  • many memory accesses
  • special support for efficient looping

The hardware contains:

  • One or more MAC-Units
  • Multi-ported on-chip and off-chip memories
  • Multiple on-chip busses
  • Address generation unit supporting addressing

modes tailored for DSP-applications

slide-9
SLIDE 9

Reconfigurable Computing

9

Application Application-

  • specific

specific processors processors

Optimize the complete circuit for a given function ASIC: Application-Specific Integrated Circuit. Optimization is done by implementing the inherent parallel structure on a chip The data path is optimized for only one application. Instruction fetching and decoding overhead is removed Memory access is limited by directly processing the input data flow Exploitation of parallel computation

slide-10
SLIDE 10

Reconfigurable Computing

10

Application Application-

  • specific

specific processors processors

ASIC Example:

Implementation of a VN computer

if (a < b) then { d = a+b; c = a*a; } else { d = a+1; c = b-1; }

At least 3 instructions run-time >= 3*tinstruction ASIC implementation: The complete execution is done in parallel in one clock cycle run-time = tclock= delay longest path from input to output The VN computer needs to be clocked at least 3 times faster

slide-11
SLIDE 11

Reconfigurable Computing

11

Conclusion 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.

  • ASICs are

Tailored for one application. Very efficient in speed and resource. Cannot re-adapt to a new application Not flexible

slide-12
SLIDE 12

Reconfigurable Computing

12

Reconfigurable Computing: Definition Reconfigurable Computing: Definition

The Ideal device should combine:

the flexibility of the Von Neumann computer the efficiency of ASICs

The ideal device should be able to

Optimally implement an application at a given time Re-adapt to allow the optimal implementation of a new application.

We call such a device a reconfigurable device.

Reconfigurable computing can be defined as the study of computation involving reconfigurable devices. This includes architecture, algorithms and applications.

slide-13
SLIDE 13

Reconfigurable Computing

13

Flexibility vs Efficiency Flexibility vs Efficiency

Flexibility Efficiency ASIC Application specific computing Von Neumann General purpose computing Reconfigurable systems Reconfigurable Computing DSP Domain specific computing

slide-14
SLIDE 14

Reconfigurable Computing

14

Fields of application Fields of application

  • Rapid prototyping
  • Post fabrication customization
  • Multi-modal computing tasks
  • Adaptive computing systems
  • Fault tolerance
  • High performance parallel computing
slide-15
SLIDE 15

Reconfigurable Computing

15

Rapid Prototyping Rapid Prototyping

Testing hardware in real conditions before fabrication

Software simulation Relatively inexpensive Slow Accuracy? Hardware emulation Hardware testing under real operation conditions Fast Accurate Allow several iterations

APTIX System Explorer ITALTEL FLEXBENCH

slide-16
SLIDE 16

Reconfigurable Computing

16

Post fabrication customization Post fabrication customization

Time to market advantage

Ship the first version of a product Remote upgrading with new product versions Remote repairing

Manufacturer

slide-17
SLIDE 17

Reconfigurable Computing

17

Multi Multi-

  • modal computing tasks

modal computing tasks

Reconfigurable vehicles, mobile phones, etc..

Built-in Digital Camera Video phone service Games Internet Navigation system Emergency Diagnostics Different standard and protocols Monitoring Entertainment

service request configuration

slide-18
SLIDE 18

Reconfigurable Computing

18

Adaptive computing systems Adaptive computing systems

Computing systems that are able to adapt their behaviour and structure to changing

  • perating and environmental conditions,

time-varying optimization objectives, and physical constraints like changing protocols, new standards, or dynamically changing operation conditions of technical systems. Jürgen Teich Dynamic adaptation to environment Dynamic adaptation to threats (DARPA) Extended mission capabilities

slide-19
SLIDE 19

Reconfigurable Computing

19

Fault tolerance Fault tolerance

The RecoNets project at FAU:

Packet-oriented fault detection on communication lines Detections of defect nodes Task migration on node failure Load balancing computation

slide-20
SLIDE 20

Reconfigurable Computing

20

High performance parallel computing High performance parallel computing

Traditional parallel implementation flow

Application Application

1 1 2 2 3 3 4 4 5 5 6 6 7 7 Virtual Topology Virtual Topology Physical Topology Physical Topology 1 1 2 2 3 3 4 4

Exploiting reconfigurable topology

Application Application

1 1 2 2 3 5 6 7 4 Virtual Topology Virtual Topology 1 1 2 2 3 5 6 4 7 7 Physical Topology Physical Topology

slide-21
SLIDE 21

Reconfigurable Computing

21

Moore’s Law Moore’s Law

slide-22
SLIDE 22

Reconfigurable Computing

22

Top View: Field Top View: Field-

  • Effect Transistor

Effect Transistor

slide-23
SLIDE 23

Reconfigurable Computing

23

The Microprocessor The Microprocessor

  • 10 years of Moore’s-law progress led to the microprocessor
  • The second generic component
  • Raised engineers’ productivity
  • Problem-solving became programming
  • Grew to billions of units/year
  • Stalled progress in design methods for thirty years
slide-24
SLIDE 24

Reconfigurable Computing

24

The Personal Computer The Personal Computer

  • 10 years of microprocessor progress led to the PC
  • Dominated the industry for 20 years
  • Supply of performance grows with Moore’s law
  • Demand grows more slowly
  • Diverging growth in supply and demand leads to the

value PC

slide-25
SLIDE 25

Reconfigurable Computing

25

The Path To The Value PC The Path To The Value PC

slide-26
SLIDE 26

Reconfigurable Computing

26

Microprocessors Are Unsuitable Microprocessors Are Unsuitable

slide-27
SLIDE 27

Reconfigurable Computing

27

Application Application-

  • Specific Integrated Circuits

Specific Integrated Circuits

ASIC advantages

– Best performance – Smallest chip – The benchmark for function efficiency

ASIC limitations

– Inflexible – Expensive to design – High fixed costs require large production runs – Requires logic design

slide-28
SLIDE 28

Reconfigurable Computing

28

Nutshell 1 Nutshell 1

PCs are good enough Value PC shifts design emphasis to untethered systems SRAM, DRAM, and flash are unsuitable for untethered systems A new non-volatile memory device will emerge Non-volatile memory improves PLDs

slide-29
SLIDE 29

Reconfigurable Computing

29

Nutshell 2 Nutshell 2

Untethered systems change design goal from cost- performance to cost-performance-per-watt Microprocessors and DSPs are unsuitable for cost- performance-per-watt applications New software enables programmers for circuit-based design Reconfigurable systems will emerge

slide-30
SLIDE 30

Reconfigurable Computing

30

Consequences Consequences

  • Rise of untethered applications

– New non-volatile memories

  • Rise of foundries

– Rise of soft (IP) cores – Horizontal fragmentation of integrated device manufacturers

  • Rise of non-volatile PLDs
  • Rise of reconfigurable systems
slide-31
SLIDE 31

Reconfigurable Computing

31

Industries in Transition Industries in Transition

  • Automotive

Analog ► Digital Mechanical ► Electrical Isolated ► Connected

  • Telecom

Analog ► Digital Copper ► Optical, Wireless

  • Biomedical

Analog ► Digital Wet labs ► Bioinformatics

  • Film/video

Analog ► Digital Isolated ► Connected

  • Consumer

Analog ► Digital Isolated ► Connected Tethered ► Untethered

  • Computers

Desktop ► Embedded