34
Modeling Methodologies for Dynamic Reconfigurable Systems Thesis Defense - May 2008 Fabio Cancare Thesis Committee: Tanya Berger-Wolf, Shantanu Dutt (Chair), Donatella Sciuto

UIC Thesis Cancare

Embed Size (px)

Citation preview

Page 1: UIC Thesis Cancare

Modeling Methodologies for Dynamic Reconfigurable Systems

Thesis Defense - May 2008

Fabio Cancare

Thesis Committee:

Tanya Berger-Wolf, Shantanu Dutt (Chair), Donatella Sciuto

Page 2: UIC Thesis Cancare

2

RationaleRationale

Dynamic reconfiguration is a new and promising technique, it can be applied to cope with:

Lack of available resourcesSystem adaptabilitySystem reliability

Main drawback: implementing DR systems is a complex and time-consuming taskModel-based design paradigm allow the fast development of complex architecture

Understand how it is possible to exploit the model-design paradigm in dynamic reconfigurable system

implementation

Page 3: UIC Thesis Cancare

3

Innovative ContributionInnovative Contribution

Outline a model-based design flow for implementing large designs onto FPGAs with limited available resources

Page 4: UIC Thesis Cancare

4

Useful NoveltiesUseful Novelties

Development of SysGen, a tool automating a portion of the low-level implementation phase

Implementation of a real-world application demanding for Dynamic Reconfigurable to enhance its perfomance

Page 5: UIC Thesis Cancare

5

OutlineOutline

Fundamental ConceptsProposed Flow

High-level Modeling PhaseLow-level Implementation Phase

Case StudyResultsConclusions and follows-up

Page 6: UIC Thesis Cancare

6

OutlineOutline

Fundamental ConceptsProposed Flow

High-level Modeling PhaseLow-level Implementation Phase

Case StudyResultsConclusions and follows-up

Page 7: UIC Thesis Cancare

7

Reconfigurable ComputingReconfigurable Computing

“Reconfigurable computing is intended to fill the gap between hardware and software, achieving potentially much higher

performance than software, while maintaining a higher level of flexibility than hardware”

(K. Compton and S. Hauck, Reconfigurable Computing: a Survey of Systems and Software, 2002)

Page 8: UIC Thesis Cancare

8

Reasons BehindReasons Behind

Applications often require performance which cannot be achieved by software

Applications often require to be flexible, modifiable, adaptable. Traditional hardware cannot achieve such results

Reconfigurable ComputingReconfigurable Computing techiniques are able to alter a concrete architecture once it has been deployed onto a high-performance device, in order to meet:

Resources constraintsAdaptability constraintsReliability constraints

Page 9: UIC Thesis Cancare

9

Reconfigurable Computing TechniquesReconfigurable Computing Techniques

Targeted devices: PLDs (Programmable Logic Devices)

In particular, FPGAs (Fields Programmable Gate Arrays)

Several configuration techniques:Static vs DynamicPartial vs TotalExternal vs Internal

Page 10: UIC Thesis Cancare

10

Useful DefinitionsUseful Definitions

CoreCore: a specific representation of a functionality. It is possible, for example, to have a core described in VHDL, in C or in an intermediate representation (e.g. a DFG)IP-CoreIP-Core: a core described using a HDL combined with its communication infrastructure (i.e. the bus interface)Reconfigurable Functional UnitReconfigurable Functional Unit: an IP-Core that can be plugged and/or unplugged at runtime in an already working architectureReconfigurable RegionReconfigurable Region: a portion of the device area used to implement a reconfigurable coreReconfigurable SlotReconfigurable Slot: a high-level representation of a Reconfigurable Region

Page 11: UIC Thesis Cancare

11

OutlineOutline

Fundamental ConceptsProposed Flow

High-level Modeling PhaseLow-level Implementation Phase

Case StudyResultsConclusions and follows-up

Page 12: UIC Thesis Cancare

12

Flow OverviewFlow Overview

Dynamic Partial ReconfigurationFlow composed of two phases:

HLMPLLIP

Support from system specification to system FPGA implementation

Page 13: UIC Thesis Cancare

13

High Level Modeling PhaseHigh Level Modeling Phase

From the System Specification to the System Hardware Description

Page 14: UIC Thesis Cancare

14

HLMP – Tools and TechniquesHLMP – Tools and Techniques

Two techniques to model dynamic reconfigurable systems are proposed:

Reconfiguration Aware ModelingReconfiguration Unaware Modeling

Page 15: UIC Thesis Cancare

15

Simulink HDL Coder Compliant ModelsSimulink HDL Coder Compliant Models

Page 16: UIC Thesis Cancare

16

HLMP – Reconfiguration Aware ModelingHLMP – Reconfiguration Aware Modeling

Page 17: UIC Thesis Cancare

17

HLMP – Reconfiguration Unaware ModelingHLMP – Reconfiguration Unaware Modeling

The first technique requires more knowledge but can lead to better results

Page 18: UIC Thesis Cancare

18

Low Level Implementation PhaseLow Level Implementation Phase

Page 19: UIC Thesis Cancare

19

System GenerationSystem Generation

Page 20: UIC Thesis Cancare

20

LLIP – The Caronte Flow and SysGenLLIP – The Caronte Flow and SysGen

Main LLIP thesis contribution: SysGen

SysGen

Page 21: UIC Thesis Cancare

21

OutlineOutline

Fundamental ConceptsProposed Flow

High-level Modeling PhaseLow-level Implementation Phase

Case StudyResultsConclusions and follows-up

Page 22: UIC Thesis Cancare

22

Real-world ApplicationReal-world Application

Inpeco Corporation proposed to implement an embedded vision system exploiting dynamic reconfigurationThe goal is to provide functionalities such as:

Mapping of the test-tubes within a rackTest-tube sample chromatic analysisTest-tube lateral recognition

The system must also be as flexible as possible, since new functionalities may be required in the future

Page 23: UIC Thesis Cancare

23

Overall DescriptionOverall Description

Page 24: UIC Thesis Cancare

24

Real-world Application – System Model Real-world Application – System Model

Page 25: UIC Thesis Cancare

25

OutlineOutline

Fundamental ConceptsProposed Flow

High-level Modeling PhaseLow-level Implementation Phase

Case StudyResultsConclusions and follows-up

Page 26: UIC Thesis Cancare

26

FPGA Logical view

Classical SystemClassical System

The static system implementation uses 96.9% of targeted device, a Xilinx XC4VFX12-FF668-10 FPGA, slices (and some functionalities are missing)

FPGA Physical view

BaseArch.

RGB to grayscale

Edge detection

Circle detection

Slot detection

Page 27: UIC Thesis Cancare

27

FPGA Logical view

Dynamic Reconfigurable SystemDynamic Reconfigurable System

The dynamic reconfigurable implementation uses only 66.6% of available slices (26.0% of them can be reused)

Physical view

Static Area

BaseArch.

Rec.Area

RFU

FreeResource

Page 28: UIC Thesis Cancare

28

Occupation DataOccupation Data

Resource Type Used Available PercentageSlices 5303 5472 96.9%Flip Flops 3269 10944 29.9%4 input LUTs 9032 10944 82.5%LUTs used as logic 8624 9032 95.5%LUTs used as shift registers 24 9032 0.3%LUTs used as RAMs 384 9032 4.2%FIFO16/RAMB16s 16 36 44.0%

Static System

System Component Slice Occupied Slice Available PercentageBase architecture 2364 5472 43.2%RGB to grayscale 212 5472 3.9%Edge detector 936 5472 17.1%Circles detector 1427 5472 26.0%Slots detector 507 5472 9.3%

Dynamic Reconfigurable

System

Page 29: UIC Thesis Cancare

29

Classic System vs DR SystemClassic System vs DR System

Page 30: UIC Thesis Cancare

30

Scientific PapersScientific Papers

A paper describing the improved version of the low-level implementation phase has been published in the RAW (Reconfigurable Architectures Workshop) 2008 proceedings:

A Design Flow Tailored for Self Dynamic Reconfigurable Architecture

(Marco D. Santambrogio, Donatella Sciuto and Fabio Cancare)

A paper describing the high-level modeling phase has been submitted at CODES+ISSS (International Conference on Hardware-Software Codesign and System Synthesis) 2008

Page 31: UIC Thesis Cancare

31

OutlineOutline

Fundamental ConceptsProposed Flow

High-level Modeling PhaseLow-level Implementation Phase

Case StudyResultsConclusions and follows-up

Page 32: UIC Thesis Cancare

32

Conclusions and Follow-upsConclusions and Follow-ups

The model-based design paradigm has been successfully used as part of a dynamic reconfigurable system implementation flowTwo high-level modeling techniques were outlinedEnhancement of the Caronte low-level implementation phaseThe proposed flow has been employed to produce a first version of an industrial application

Test the approach with other applicationsFor what concerns the case study, it is necessary to implement the other functionalities and to introduce DMA

Page 33: UIC Thesis Cancare

33

General InformationGeneral Information

Webpagewww.dresd.org/?q=hlr

Mailing [email protected]

ContactTo have more information regarding HLR:

[email protected] a complete list of information on how to contact us:

www.dresd.org/?q=contact_hlr

Page 34: UIC Thesis Cancare

34

Any Question?Any Question?

Thank you very much!