Algorithmic Skeletons for the Design of Partially Reconfigurable Systems



Similar documents
International Workshop on Field Programmable Logic and Applications, FPL '99

Hard Real-Time Reconfiguration Port Scheduling

Reconfigurable Architecture Requirements for Co-Designed Virtual Machines

High-Level Synthesis for FPGA Designs

Example-driven Interconnect Synthesis for Heterogeneous Coarse-Grain Reconfigurable Logic

How To Design An Image Processing System On A Chip

Design and Implementation of an On-Chip timing based Permutation Network for Multiprocessor system on Chip

ESE566 REPORT3. Design Methodologies for Core-based System-on-Chip HUA TANG OVIDIU CARNU

Hardware Task Scheduling and Placement in Operating Systems for Dynamically Reconfigurable SoC

ReCoSoC'11 Montpellier, France. Implementation Scenario for Teaching Partial Reconfiguration of FPGA

Systems on Chip Design

2. TEACHING ENVIRONMENT AND MOTIVATION

A Multi-layered Domain-specific Language for Stencil Computations

SOCWIRE: A SPACEWIRE INSPIRED FAULT TOLERANT NETWORK-ON-CHIP FOR RECONFIGURABLE SYSTEM-ON-CHIP DESIGNS

Automatized Fault Attack Emulation for Penetration Testing

Reconfigurable Low Area Complexity Filter Bank Architecture for Software Defined Radio

CFD Implementation with In-Socket FPGA Accelerators

Data-Aware Service Choreographies through Transparent Data Exchange

NIOS II Based Embedded Web Server Development for Networking Applications

Implementation of emulated digital CNN-UM architecture on programmable logic devices and its applications

zen Platform technical white paper

Partial and Dynamic reconfiguration of FPGAs: a top down design methodology for an automatic implementation

The Click2NetFPGA Toolchain. Teemu Rinta-aho, Mika Karlstedt, Madhav P. Desai USENIX ATC 12, Boston, MA, 13 th of June, 2012

Distributed Elastic Switch Architecture for efficient Networks-on-FPGAs

Eli Levi Eli Levi holds B.Sc.EE from the Technion.Working as field application engineer for Systematics, Specializing in HDL design with MATLAB and

FlexPath Network Processor

Architectures and Platforms

ProGUM-Web: Tool Support for Model-Based Development of Web Applications

Hardware Implementation of AES Encryption and Decryption System Based on FPGA

Distributed Reconfigurable Hardware for Image Processing Acceleration

International Graduate School

FPGA Implementation of IP Packet Segmentation and Reassembly in Internet Router*

SDR Architecture. Introduction. Figure 1.1 SDR Forum High Level Functional Model. Contributed by Lee Pucker, Spectrum Signal Processing

An Integrated Quality Assurance Framework for Specifying Business Information Systems

µfup: A Software Development Process for Embedded Systems

Agenda. Michele Taliercio, Il circuito Integrato, Novembre 2001

7a. System-on-chip design and prototyping platforms

Ping Pong Game with Touch-screen. March 2012

Modular Communication Infrastructure Design with Quality of Service

MsC in Advanced Electronics Systems Engineering

Exploiting Stateful Inspection of Network Security in Reconfigurable Hardware

On-demand Provisioning of Workflow Middleware and Services An Overview

Architectural Level Power Consumption of Network on Chip. Presenter: YUAN Zheng

Cloud deployment model and cost analysis in Multicloud

3D On-chip Data Center Networks Using Circuit Switches and Packet Switches

Wireless 100Gb/s Using A Powerand Hardware-Efficient Approach (Project Real100G.com)

A Novel Cloud Computing Data Fragmentation Service Design for Distributed Systems

FAULT TOLERANCE FOR MULTIPROCESSOR SYSTEMS VIA TIME REDUNDANT TASK SCHEDULING

Generating Aspect Code from UML Models

Activity Mining for Discovering Software Process Models

Networking Virtualization Using FPGAs

Best Practises for LabVIEW FPGA Design Flow. uk.ni.com ireland.ni.com

Xeon+FPGA Platform for the Data Center

Echtzeittesten mit MathWorks leicht gemacht Simulink Real-Time Tobias Kuschmider Applikationsingenieur

Six Strategies for Building High Performance SOA Applications

Techniques de conception et applications sur FPGAs partiellement reconfigurables

GUIDE Gentle User Interfaces for Elderly People

DynaCORE Coprocessor

Business Process Configuration with NFRs and Context-Awareness

Basics of Simulation Technology (SPICE), Virtual Instrumentation and Implications on Circuit and System Design

A Case Study - Scaling Legacy Code on Next Generation Platforms

International Journal of Scientific & Engineering Research, Volume 4, Issue 6, June ISSN

Seeking Opportunities for Hardware Acceleration in Big Data Analytics

VHDL-Testbench as Executable Specification

Ramp-Up and Maintenance with Augmented Reality in Development of Flexible Production Control Systems

A First Course in Digital Design Using VHDL and Programmable Logic

FPGA area allocation for parallel C applications

Software Defined Radio Architecture for NASA s Space Communications

Database Scheme Configuration for a Product Line of MPC-TOOLS

Horst Görtz Institute for IT-Security

high-performance computing so you can move your enterprise forward

Hardware and Software

A Flexible Cluster Infrastructure for Systems Research and Software Development

FPGA Implementation of an Extended Binary GCD Algorithm for Systolic Reduction of Rational Numbers

A Survey of Video Processing with Field Programmable Gate Arrays (FGPA)

Implementation and Design of AES S-Box on FPGA

Header Parsing Logic in Network Switches Using Fine and Coarse-Grained Dynamic Reconfiguration Strategies

IMPLEMENTATION OF FPGA CARD IN CONTENT FILTERING SOLUTIONS FOR SECURING COMPUTER NETWORKS. Received May 2010; accepted July 2010

FPGA. AT6000 FPGAs. Application Note AT6000 FPGAs. 3x3 Convolver with Run-Time Reconfigurable Vector Multiplier in Atmel AT6000 FPGAs.

Potential Thesis Topics in Networking

Multiprocessor System-on-Chip

Reconfig'09 Cancun, Mexico

Gaalop High Performance Computing based on Conformal Geometric Algebra

Cloud Computing for Agent-based Traffic Management Systems

Transcription:

for the Design of Partially Reconfigurable Systems Heinz Nixdorf Institute, Florian Dittmann Stefan Frank Franz Rammig Universität Paderborn Motivation Dynamically Reconfigurable Systems - Promising benefits Processing in parallel Runtime reconfiguration Space and time Heinz Nixdorf Institute, Towards Industrialization Major Requirement - Comprehensive Design Methods flexibility Development of new Design Techniques Making reconfigurable computing mature 2 FPGA 1

Content - FPGAs and partially dynamic reconfiguration - - The use of skeletons for the partial reconfiguration Scheduling and Mapping Design of hardware - Prototypical implementation Heinz Nixdorf Institute, - Conclusion 3 Partial and dynamic reconfiguration Partially dynamical reconfiguration for - Mapping of big circuits on small FPGAs - Replacement of circuits at run time problem Which problems are to be overcome? - Fragmentation - Challenging design, - Etc. part 1 part 2 part 3 part 4 Heinz Nixdorf Institute, Problems more abstractly - Decomposition - Distribution - Communication Search for related known approaches 4 2

Similar to Partial Run-time Reconfiguration: Computing cluster of the High Performance Computing domain Tasks require - Decomposition - Distribution - Communication Heinz Nixdorf Institute, Which promising design method fits? consider organization of parallel programs 5 Background Objectives - Separate structure of a computation from the computation itself - Free programmer from the implementation details of the structure - Implementation guidelines for activities and their interactions Related: design patterns - Differences Design level Final implementation left to the freedom of the designer Heinz Nixdorf Institute, Algorithmic skeletons force the applications to be well-formed - Enable to extract valuable information - Design space exploration on a high level of abstraction - Static and dynamic optimization of implementations 6 3

Overview Heinz Nixdorf Institute, Tasks - Programmability and portability - Structure and behavior of the tasks Application level Use of algorithmic skeletons - Wrapping of tasks - Programming templates Runtime environment - Partial reconfiguration capabilities Dispatcher Dynamic Reconfiguration Applications Tasks Skeleton Dispatching Runtime Environment FPGA 7 Problems of the reconfiguration Problems - Decomposition - Distribution - Communication Moreover - Portability - Performance Heinz Nixdorf Institute, algorithmic skeletons offer a suitable concept for abstraction that allows us to reach the goals above 8 4

Important algorithmic skeletons - Pipe - Farm Farm: Pipeline: Heinz Nixdorf Institute, 9 Important algorithmic skeletons - Pipe - Farm Farm: Pipeline: Heinz Nixdorf Institute, 10 5

Important algorithmic skeletons - Pipe - Farm Farm: Pipeline: D 2 Heinz Nixdorf Institute, 11 Important algorithmic skeletons - Pipe - Farm Farm: Pipeline: D 3 D 2 Heinz Nixdorf Institute, 12 6

Important algorithmic skeletons - Pipe - Farm Pipeline: Farm: D 3 D 2 Heinz Nixdorf Institute, 13 Important algorithmic skeletons - Pipe - Farm Pipeline: Farm: D 2 D 3 D 2 Heinz Nixdorf Institute, 14 7

Important algorithmic skeletons - Pipe - Farm Pipeline: Farm: D 3 D 3 D 2 D 2 Heinz Nixdorf Institute, 15 Important algorithmic skeletons - Pipe - Farm Farm: Pipeline: D 3 D 2 D 2 D 3 Heinz Nixdorf Institute, Assumption: all pipeline stages resp. farm workers running in parallel Needs: re-thinking to include partial reconfiguration 16 8

New concept Problem: large circuits for small FPGAs Problem Two possibilities for the placement of reconfigurable slots: - Usage of a pattern - individual placement and calculation of the slots Pattern Database Algorithmic Skeletons Heinz Nixdorf Institute, 17 Mapping & Scheduling Partial Bitstreams Pattern Database Problem Pattern Database Algorithmic Skeletons Heinz Nixdorf Institute, Mapping & Scheduling Partial Bitstreams 18 9

Pattern Database - Pattern consists of: Description of the slot placement Description of the Bus Macro placement FPGA Heinz Nixdorf Institute, 19 Pipe and Farm Problem Pattern Database Algorithmic Skeletons Heinz Nixdorf Institute, Mapping & Scheduling Partial Bitstreams 20 10

Pipe and Farm - The meaning of a pipe in our concept S 1 S 2 Heinz Nixdorf Institute, S 3 S 4 21 Pipe and Farm - The meaning of a pipe in our concept Heinz Nixdorf Institute, 22 11

Pipe and Farm - The meaning of a pipe in our concept Heinz Nixdorf Institute, 23 Pipe and Farm - The meaning of a farm in our concept Heinz Nixdorf Institute, 24 12

Pipe and Farm - The meaning of a farm in our concept Heinz Nixdorf Institute, 25 Mapping and Scheduling Problem Pattern Database Algorithmic Skeletons Heinz Nixdorf Institute, Mapping & Scheduling Partial Bitstreams 26 13

for partial reconfiguration? - Skeletons contains information about: the necessary communication between the components the placement of the components Heinz Nixdorf Institute, 27 Technical realization Problem Pattern- Datenbank Algorithmische Skelette Heinz Nixdorf Institute, Mapping & Scheduling circuit Partielle Bitströme 28 14

Technical realization - Technical realization of a farm: data_receive id_bus data_request Slot 2 Worker Slot 3 Worker Slot 1 Emitter/ Collector data_bus store_bus Heinz Nixdorf Institute, input output store_request workers_ finished send_data all_data_ bus store Storage 29 Generating of partial bitstreams Problem Pattern Database Algorithmic Skeletons Heinz Nixdorf Institute, Mapping & Scheduling Partial Bitstreams 30 15

PaReToFAS - Partial Reconfiguration Tool for FPGAs using - The application developer writes a -file (modules) - The application developer writes a struct file struct vhdl vhdl Heinz Nixdorf Institute, Pattern Database 31 01010 PaReToFAS Pattern Database Heinz Nixdorf Institute, 32 16

PaReToFAS Steps of the tool Analyze structure Estimate neccessary CLBs struct vhdl vhdl Search for pattern Scheduling & Mapping Heinz Nixdorf Institute, Generate file Generate bit files Pattern Database 33 01010 Conclusion Algorithmic skeletons prove to be applicable for the development of partially reconfigurable circuits Experiments showed us that the idea works Algorithmic skeletons allow for evaluating partially reconfigurable designs on a very high level of abstraction A new interpretation of the skeletons is required Heinz Nixdorf Institute, Scheduling and mapping can be time-consuming Design database 34 17

Conclusion (continued) Publications concerning this approach up to now: Götz, Marcelo; Dittmann, Florian; Xie, Tao: Dynamic Relocation of Hybrid Tasks: A Complete Design Flow. In: Proceedings of Reconfigurable Communicationcentric SoCs (ReCoSoc'07), Montpellier, France, (2007) F. Dittmann: for the Programming of Reconfigurable Systems. In Proceedings of IFIP SEUS 2007, Springer LNCS (2007) Heinz Nixdorf Institute, S. Frank: Einsatz algorithmischer Skelette zur Generierung partiell dynamisch rekonfigurierbarer Schaltungen. Diplomarbeit Universität Paderborn (2007) F. Dittmann, S. Frank, S. Oberthür: for the Design of Partially Reconfigurable Systems. In Proceedings of 15th Reconfigurable Architectures Workshop -- RAW 2008, IEEE (2008) 35 Thank you for your attention. Florian Dittmann Stefan Frank Simon Oberthür Heinz Nixdorf Institute, Heinz Nixdorf Institute Fuerstenallee 11 33102 Paderborn Germany Phone: +49 (0) 52 51/60 65 15 Fax: +49 (0) 52 51/62 65 02 Email: oberthuer@upb.de http://www.heinz-nixdorf-institut.de 18