26
Rekonfigurovateľné číslicové systémy IS, letný semester Jana Flochová, UPSS, FIIT STU

Rekonfigurovateľné číslicové systémy IS, letný semester

Embed Size (px)

DESCRIPTION

Rekonfigurovateľné číslicové systémy IS, letný semester. Jana Flochová, UPSS, FIIT STU. Rekonfigurovateľné číslicové (digitálne systémy). - PowerPoint PPT Presentation

Citation preview

Rekonfigurovateľné číslicové systémyIS, letný semester

Jana Flochová, UPSS, FIIT STU

Rekonfigurovateľné číslicové (digitálne systémy)

Ciele: Získať znalosti z oblasti rekonfigurovateľných číslicových systémov (RCS). Vedieť popísať postupy a metódy syntézy RCS na úrovni architektúry, logiky a topológie. Vedieť riešiť problémy z oblasti návrhu RCS použitím FPGA na modelovanie a emuláciu.

Rozsah: 2/2, letný semester IS

Rekonfigurovateľné číslicové obvody

Ciele: Získať znalosti z oblasti rekonfigurovateľných číslicových systémov (RCS). Vedieť popísať postupy a metódy syntézy RCS na úrovni architektúry, logiky a topológie. Vedieť riešiť problémy z oblasti návrhu

RCS použitím FPGA na modelovanie a emuláciu.

Kľúčové slová: rekonfigurovateľné systémy, FPGA, rekonfigurovateľné výpočty, rekonfigurovateľný hardware

http://www2.fiit.stuba.sk/~tomalova/tutorial.doc

http://www12.informatik.uni-erlangen.de/edu/rc/slides/1_RC_introduction.pdf

Von Neumann ASICflexibilita, rýchlosť, paralelizmus Fetch, decode, execute..., program adapts to the machine, time to market

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

Configware and morphware going mainstreamJurgen Becker, Reiner HartensteinJournal of Systems Architecture 49 (2003) 127–142The Roles of FPGAs in Reprogrammable SystemsScott Hauck to appear in Proceedings of the IEEE.

Topologies (e.g.)

Hauck-Argaval,Northwestern University, Dept. of ECE, Technical Report, 1996

Reconfigurable Computing: A Survey of Systems and SoftwareKATHERINE COMPTON, Northwestern UniversityAND SCOTT HAUCK, University of WashingtonACM Computing Surveys, Vol. 34, No. 2, June 2002, pp. 171–210.

Software Technologies for Reconfigurable SystemsScott Hauck Anant AgarwalNorthwestern University, Dept. of ECE, Technical Report, 1996.

Stručná osnova predmetu:

• Hardware rekonfigurovateľných systémov• Základné princípy, metódy a prostriedky

rekonfigurácie číslicových systémov.• Modely a úrovne abstrakcie číslicových systémov.• Typické architektúry technických prostriedkov pre

implementáciu rekonfigurovateľných číslicových systémov.

• Hlavné etapy návrhu, architektúry návrhových systémov.

• Návrh dynamicky rekonfigurovateľných číslicových systémov.

Stručná osnova predmetu:

• Hardware rekonfigurovateľných systémov• Základné princípy, metódy a prostriedky rekonfigurácie

číslicových systémov.

• Inicializácia, konfigurácia, čiastočná rekonfigurácia FPGA obvodov spôsoby inicializácie (pasívna, aktívna, sériová, paralelná), typické formáty inicializačných súborov, technológia hraničných testov, testovanie v obvodoch FPGA

• Vývojové prostriedky pre efektívny návrh FPGA aplikácií - LPM, SOPC Builder, DSP Builder, Placement & Route (P&R), logic lock, verifikácia, časová simulácia, optimalizácia návrhu (kritická cesta, spotreba, rýchlosť, ve!kosť)

• Prehľad rodín FPGA obvodov významných výrobcov - veľkosti obvodov, napájacie napätia, cena, vložené pamäte, teplotné rozsahy, púzdra

• testovacie a vývojové dosky (UP1, UP3, NIOS), možnosti a obmedzenia

Stručná osnova predmetu:

• Hardware rekonfigurovateľných systémov• Základné princípy, metódy a prostriedky

rekonfigurácie číslicových systémov.• Modely a úrovne abstrakcie číslicových systémov.• Typické architektúry technických prostriedkov pre

implementáciu rekonfigurovateľných číslicových systémov.

• Hlavné etapy návrhu, architektúry návrhových systémov.

• Návrh dynamicky rekonfigurovateľných číslicových systémov.

Stručná osnova predmetu:

• Hardware rekonfigurovateľných systémov• Základné princípy, metódy a prostriedky

rekonfigurácie číslicových systémov.• Modely a úrovne abstrakcie číslicových systémov.• Typické architektúry technických prostriedkov pre

implementáciu rekonfigurovateľných číslicových systémov.

• Hlavné etapy návrhu, architektúry návrhových systémov.

• Návrh dynamicky rekonfigurovateľných číslicových systémov.

Stručná osnova predmetu:

• Hardware rekonfigurovateľných systémov• Základné princípy, metódy a prostriedky

rekonfigurácie číslicových systémov.• Modely a úrovne abstrakcie číslicových systémov.• Typické architektúry technických prostriedkov pre

implementáciu rekonfigurovateľných číslicových systémov.

• Hlavné etapy návrhu, architektúry návrhových systémov, software RCS.

• Návrh dynamicky rekonfigurovateľných číslicových systémov.

Stručná osnova predmetu:

• Hardware rekonfigurovateľných systémov• Základné princípy, metódy a prostriedky

rekonfigurácie číslicových systémov.• Modely a úrovne abstrakcie číslicových systémov.• Typické architektúry technických prostriedkov pre

implementáciu rekonfigurovateľných číslicových systémov.

• Hlavné etapy návrhu, architektúry návrhových systémov.

• Návrh dynamicky rekonfigurovateľných číslicových systémov.

1. Configware and morphware going mainstream

2.  A Decade of Reconfigurable Computing: a Visionary Retrospective3.  Software Technologies for Reconfigurable Systems4.  Programovatelné logické obvody5.  Reconfigurable Computing: A Survey of Systems and Software6.  Seeking Solutions in Configurable Computing

…………..

Prezentácia  FPGA ADVANTAGE 

Books1. Gokhale, Maya, B., Graham, Paul S.: Reconfigurable ComputingAccelerating Computation with Field-Programmable Gate Arrays2005, 238 p., Springer Netherland, HardcoverISBN: 0-387-26105-2

2. Bobda Ch.: Introduction to Reconfigurable Computing Architectures, Algorithms, and Applications, Springer Netherlands, 2007, ISBN 978-1-4020-6088-5, 5 (Print) 978-1-4020-6100-4 359

• Gokhale, Maya, Graham, Paul S.: Reconfigurable Computing, Accelerating Computation with Field-Programmable Gate Arrays., Springer, 238 strán, ISBN: 978-0-387-26105-8. 2005.

• System Level Design of Reconfigurable Systems-on-Chip, editori Voros, N.S., Masselos K.M. Springer.231 strán, ISBN 0387261036.  2005.

• Hartenstein, R.W.- Keevallik, A.: Field-Programmable Logic and Applications. From FPGAs to Computing Paradigm. Springer-Verlag, 1998, Germany.

• Murgai, R.- Brayton, R.- Sangiovanni-Vincentelli, A.: Logic Synthesis for Field-Programmable Gate Arrays. Kluwer Academic Publishers, 1995.Wirth, N.: Digital Circuits Design. Springer-Verlag, 1995, Germany.

• Hauck Scott, Dehon Andre: Reconfigurable Computing The Theory And Practice Of Fpga-Based Computation Elsevier Science & Technology (United States), 2007, Hardback, 944 stran, Velikost: 235x191 mmx50mm, ISBN: 9780123705228 (0123705223)

Články na webe – Hauck, Compton, Hartenstein, Tessier, ...

Building up a course in reconfigurable computingBobda, C.   Departement of Comput. Sci. 12, Erlangen-Nurnberg Univ., Erlangen, Germany;

Microelectronic Systems Education, 2005. (MSE '05). Proceedings. 2005 IEEE International Conference on

Publication Date: 12-14 June 2005On page(s): 7- 8

COURSE CONTENT

• Architecture of reconfigurable systems: In thissection, technology of reconfigurable systems is

considered, from the look up table (LUT) based reconfigurable systems

like the field programmable gate arrays (FPGA)to the new coarse grained technology.• Design and implementation: This section considersthe implementation of reconfigurable systems. Itcovers the steps needed (design entry, functional

simulation,logic synthesis, technology mapping, place androute and bit stream generation) to implement today’sFPGAs. We focus deeply in logic synthesis for FPGAs,in particular LUT technology mapping..

• Temporal partitioning: This section considers the high level synthesis, which covers the implementation of large functions which cannot fit in one FPGA.

• Temporal placement: In this section we assume that a kind of OS for reconfigurable systems is in charge of managing the resources of the system and allocate space on a device for the computation of incoming tasks.

• On-line and Dynamic Interconnection: Modules dynamically placed at run-time on a given device need to communicate with each other and also exchange data with off-chip devices. Therefore, they dynamically create a need of communication on the chip. This chapter reviews and explains the different approaches to solve this dynamic intercommunication need.

• Designing a reconfigurable application on Xilinx Virtex FPGA: This section considers the implementation of a reconfigurable application on Xilinx FPGAs. Apart from the steps (design entry, functional synthesis, technology mapping, place and route and bitstream generation) needed in logic synthesis, the generation of partial bitstreams for component to be placed at run-time on the FPGA is considered.

• System on programmable chip: System on programmable chip are mainly the integration of a system made upon some peripherals (UART, Ethernet, VGA, etc.) but also computational (Coding, filter, etc.) hardware modules on one programmable chip. We present the current usable solutions: The Xilinx EDK, the Altera Excalibur and the Atmel System designer

• Applications: This section presents the use of reconfigurable system in computer architecture (rapid prototyping, reconfigurable supercomputer, reconfigurable massively parallel computers) and suitable algorithms for reconfigurable systems (distributed arithmetic, network packet processing, etc...)

LABORATORY SUPPORT

The laboratory includes:• Capturing a design using VHDL: This is done using the

Synopsys FC2 design environment and Xilinx ISE-tool• Implementation of a design using Xilinx ISE. Here we use the

Xilinx ISE 4 for synthesizing the EDIF-design produced in the previous step. The result is used for configuring the FPGA.

• The Modular design. Here, we use the Xilinx ISE 6, which includes the tool for the modular design. Students learn how to design a large project in a team of engineers. They also learn how to constraint a component to a given location,, and how to produce the partial bitstream for each reconfigurable module. According to the goal seeked, we use three different platforms.

1. The first one is a Digilab XLA, featuring a Spartan XLA (not supported in the current Xilinx CAD tool (the ISE)).

2. 2. The second platform is the Xilinx-Digilab XCR featuring a Spartan 3 FPGA, which is supported in the newest Xilinx tool. The complete design (VHDL entry, Synthesis, download) is done in just one environment.

3. The third platform used is the RC200 board of Celoxica.

Požiadavky návrhu RČS na systémovej úrovni.

– Špecifikácia systému– HARDWARE/SOFTWARE rozdelenie a mapovanie

(partitionning and mapping)

Kedy RČS?

• -keď aplikácia využíva niekoľko hardware akcelerátorov a nie naraz na plný výkon

• -keď sa špecifikácie niektorých častí systému predvídateľne menia

• -ak plánujete pre novú aplikáciu (generáciu aplikácii) a časti aplikácie sa budú meniť, ktoré sa budú meniť

• Problémy – ´schedulling´ a ´temporal allocation´ • Dva možné spôsoby návrhu:• -aplikačne orientovaný (tool oriented)• -jazykovo orientovaný (language oriented)

Návrh architektúry• Čo implementovať rekonfigurovateľnou technológiou

a ktorú rekonfigurovateľnú technológiu použiť?

• Podstatné aspekty:• Kapacita rekonfigurovateľných blokov.• Zistiť ktoré časti software nikdy nebežia paralelne - možné rozličné

kontexty rekonfigurovateľných blokov systému. • • Parametre, ktoré ovplyvňujú výber implementačnej

technológie sú:• Kapacita rekonfigurovateľných blokov (počty hradiel)• Kapacita kontextovej pamäte potrebná na konfiguráciu• Čas rekonfigurácie a podpora parciálnej rekonfigurácie• Spotreba

• Treba skontrolovať nasledujúce parametre:• Priestorové použite (využitie) obvodu.• Časové využitie blokov (porovnanie časov, čas kedy je výpočtový

blok aktívny, čaká na aktiváciu a kedy sa konfiguruje).• Analyzovať vplyv rekonfigurácie na zbernicu systémovej zbernice.• Spotreba energie.

Systémová úroveň=SLD (System Level Design).

Ciele:• Vývoj aplikácie podľa špecifikácií• Výber implementačných technológií• Umiestniť a rozdeliť aplikačný hardware, software a rekonfigurovateľný hardware.• Overiť výkonnosť rozdeleného systému.

Detailný návrh=DD (Detailed design)Ciele• Zjemnenie špecifikácií, návrh hardware, software, rekonfigurovateľného hardware,

integrácia jednotlivých zložiek,  verifikácia.zložiek a celého systému.Nutné riešiť nasledujúce otázky:• Komunikácia a komunikačný mechanizmus jednotlivých častí systému.• Integrácia a koverifikácia hardware si vyžaduje riešiť hardware i rekonfigurovateľný

hardware a software (externý IP, processor a I/O), rekonfigurovateľný hardware sa simuluje HDL simulátorom alebo FPGA emulátorom.

Implementačný design=ID (Implementation design)

• Implementácia, verifikácia, „manufacturing“.Požiadavky na rekonfigurovateľnosť na systémovej úrovni:• Možnosť „upgrade“ v súlade so štandardami.• Adaptivita.• Režimy „power saving“, zmeny kanálov a aplikácii.

Riešené otázky a aspekty rekonfigurácie:

• -typ žiadanej rekonfigurácie (statická alebo dynamická)• -granularita • -spôsob, typ väzby pevného a rekonfigurovateľného

hardware• -požiadavky a obmedzenia kladené na systém (výkonnosť,

cena, náklady...)

• - požiadavky a obmedzenia kladené na metodológiu systémového návrhu (požadovaná architektúra,

technológie, software nástroje)