48
Seminar REKONFIGURIERBARE HARDWARE- STRUKTUREN Alexander Giese Universität Mannheim Lehrstuhl für Rechnerarchitektur 23. November 2004 1

Seminar - ra.ziti.uni-heidelberg.dera.ziti.uni-heidelberg.de/pages/student_work/seminar/ws0405/... · Geschichte des FPGAs Geschichte: - 1960 Estrin´s „fixed plus variable structure

Embed Size (px)

Citation preview

Seminar

REKONFIGURIERBARE HARDWARE-STRUKTUREN

Alexander GieseUniversität Mannheim

Lehrstuhl für Rechnerarchitektur23. November 2004

1

Gliederung1. ASIC/FPGA

1.1 ASIC, Vor/Nachteile1.2 FPGA, Vor/Nachteile1.3 ASIC vs. FPGA

2. FPGA2.1 Herkunft FPGA2.2 Aufbau FPGA (Xilinx)2.3 Virtex 4

3. Structured ASICs3.1 Warum?3.2 Aufbau Structural ASICs3.3 Besonderheiten

4. Embedded FPGA Cores 4.1 Eigenschaften und Aufbau?

5. Zusammenfassung

2

FPGA/ASIC

3

ASIC(Application Specific Integrated Circuit)

Was ist ein ASIC?- für ein genau definiertes, anwendungsspezifisches Problem entworfen und hergestellter Chip

Vorteile:- genau auf die Problemstellung zugeschnittene Lösung in Hardware- hohe Taktrate (schnell)- wenig Platz (kompaktes Design)- gute Siliziumausnutzung (wenig ungenutzte Fläche)- geringe Stückkosten (nach den NRE-Kosten)

Nachteil:- lange Entwicklungszeit- hohe Entwicklungskosten- unflexibel bei Designänderungen

4

FPGA(Field Programmable Gate Array)

Was ist ein FPGA?- besteht aus logischen Einheiten - diese sind individuell einstellbar (SRAM)- mit konfigurierbarem Netzwerk verbunden

Vorteile:- auf mehrere Probleme anpassbar- immer wieder schnell rekonfigurierbar- schnelle Entwicklungszeit- geringe Entwicklungskosten

Nachteile:- langsamer Takt- große Chipfläche- oft viele Logikzellen ungenutzt oder FPGA zu klein- hohe Stückkosten

5

ASIC vs. FPGA

ASIC FPGAPreis Hoch NiedrigEntwicklungszeit Hoch NiedrigFertigungszeit Hoch NiedrigNRE-Kosten Hoch NiedrigFlexibilität Niedrig HochFläche Niedrig HochAusnutzung Hoch NiedrigGeschwindigkeit Hoch NiedrigStückkosten Niedrig Hoch

Gegenüberstellung Vor- und Nachteile ASIC/FPGA:

(Tab. 1) 6

Kostengegenüberstellung

NRE-Kosten (Non recovering Engineering). Kosten für die Entwicklung und Vorbereitung eines Chips bis zur Fertigung.

Gegenübergestellt sind die Herstellungskosten eines FPGAs und ASICs

(Abb. 1)

NRE-KostenASIC NRE-Kosten

FPGA

Kosten

Stückzahl

ASIC

FPGA

7

Zusammenfassung

ASICs:

verwenden wenn:- festes Problem- grosse Stückzahl

- Lösung mit FPGA ungenügend (zu langsam, zu gross, zu teuer)

FPGAs:

verwenden wenn:- Applikation nicht zu komplex- Stückzahl gering- Änderungen an der Apllikation nach Ausgabe

8

FPGA

9

Geschichte des FPGAs

Geschichte:

- 1960 Estrin´s „fixed plus variable structure computer“- 1970 PLD (programmable logic device)- 1985 Field Programmable Gate Arrays- 1990 multi-FPGA CCM's (custom computing machines)

Ehemalige Herausforderung war es, etwas zu entwickeln, was so schnell ist wie Hardware aber so flexibel ist wie Software.

Vorläufer Bauteile des FPGAs:- PLD - CPLD (complex programmable logic device)

10

PLD(Programmable Logic Devices)

PLD:- durch eine zweistufige UND/ODER-Matrix programmierbar- UND-Matrix bildet aus den Eingangssignalen Produktterme- ODER-Matrix verknüpft die Produkterme disjunkt

(Abb. 2) 11

PLD(Programmable Logic Devices)

Man erhält so eine DNF (disjunktive Normalform) der Eingangssignale.

Bsp. DNF: (ab)+(cd)+(bc)

Vorteile:- günstige Standardbausteine => hohe Stückzahlen- regelmäßige Matrixstruktur => hohe Dichte

Verschiedene Arten:- PLA (UND-Matrix und ODER-Matrix konfigurierbar)- EPROM (UND-Matrix fest, ODER-Matrix konfigurierbar)- PAL (UND-Matrix konfigutierbar, ODER-Matrix fest)

(Abb. 2)

12

CPLD(Complex Programmable Logic Devices)

CPLD: - Logikblöcken - Logikblöcke bestehen aus PAL-ähnlichen Makro-Blöcken- Makro-Blöcke über eine Schaltmatrix verbunden

(Abb. 3)

Schaltmatrix

Logik Block Logik Block

Logik Block

Makro Zellen 13

FPGA(Field Programmable Gate Array)

Aufbau des FPGAs:

- besteht aus mehreren Logikblöcken - mit einem konfigurierbarem Netzwerk

Diese Logikblöcke nennt man bei Xilinx CLBs (Complex Logical Blocks)

Verschiedener Aufbau von CLBs:- Multiplexer- Sea of Gates- Lookup Tables (LUTs)

Ein FPGA enthält zusätzlich noch IO-Zellen, RAM-Blöcke und weiterevordefinierten Blöcke wie zB. DLLs und Power PCs.

14

FPGA(Field Programmable Gate Array)

Strucktureller Aufbau des FPGAs:

(Abb. 4)

IO-Zelle

CLB

RAM-Block

15

CLB(Complex Logical Blocks)

Verschiedene Arten von CLBs:

- Multiplexer:- Ausgangssignal wird aus den Eingangssignalen eines Multiplexers ausgewählt- Ansteuereingang des Multiplexers wird von einem Signal der Anwenderschaltung angesteuert

Beispielaufbau einer UND-Funktion mit einem Multiplexer:

(Abb. 5)

B

0

A 1

0 X = A * B

A B X0 0 00 1 01 0 01 1 1

16

CLB(Complex Logical Blocks)

Verschiedene Arten von CLBs:

- Sea of Gates:- konfigurierbare Transistoren erstellen die Schaltung- OR3/NOR3/AND3/No XOR3

(Abb. 6, 0.25 um Flash Memory Based FPGA For Space Applications, Actel) 17

CLB(Complex Logical Blocks)

Verschiedene Arten von CLBs:

- Lookup Tables:

- SRAMs (statischer Speicher) - Addresierung durch Eingangs- signal - Wert der Speicherzelle ist das Ergebnis

Bsp.: 4-fach AND

(Abb. 7)

00 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15

000000000000001

X1X2X3X4

Y

18

CLB(Complex Logical Blocks)

Vereinfachter Aufbau eines CLB von Xilinx (Spartan Serie) (Abb. 8):

I4 LUTI3 I2 QI1

Carry&

ControlLogic

SD QCK EC

R

I4 LUTI3 I2 QI1

Carry&

ControlLogic

SD QCK EC

R

G4G3G2G1

F5INBYSRF4F3F2F1

CINCLKCE

COUTYBY

YQ

XBX

XQ

19

Verbindungsnetzwerk

Hirarchicher Interconnect Xilinx (Virtex):

(Abb. 9)

Fast Connects

Direkt Connections

Horizontal Hex LinesVertical Hex LinesHorizontal Long LinesVertical Long Lines

20

Horizontal Double LinesVertical Double Lines

Verbindungsnetzwerk

Symmetrische Arrays:

- Logikblöcke in regelmäßiger Matrixstruktur verteilt- dazwischen Interconnect- Area- verschieden Lange direkte Verbindungen- Switchematrix an Kreuzungspunkten

- Bsp: Xilinx PSM = Programmable Switch Matrix

(Abb. 10)

CLB CLB

PSM PSM

CLB

CLB CLB CLB

PSM PSM

CLB CLB CLB

21

Verbindungsnetzwerk

Aufbau einer PSM:

(Abb. 11)

Path Transistor

PSM 22

Virtex 4

Feature/Product

Logic Cells 200,448 55,296 142,128Total Block RAM (kbits) 6,048 5,760 9,936Digital Clock Managers (DCM) 12 8 20

8 4 8Max Differential I/O Pairs 480 320 448XtremeDSP™ Slices 96 512 192PowerPC Processor Blocks - - 2

- - 2RocketIO™ Serial Transceivers - - 24Configuration Memory Bits 50,648,448 24,088,320 50,900,352Max Select I/O™ 960 640 896

XC4VLX200

XC4VSX55

XC4VFX140

EasyPath™ Cost Reduction Solutions

XCE4VLX200

XCE4VSX55

XCE4VFX140

Phase-matched Clock Dividers (PMCD)

10/100/1000 Ethernet MAC Blocks

(Tab. 2, Homepage Xilinx) 23

Virtex 4

• 500 MHz XtremeDSP Slices (SX Serie)

- Dedicated 18-bit x 18-bit multiplier, multiply-accumulator, or multiply-adder blocks- Optional 48-bit accumulator for multiply accumulate (MACC) operation- Integrated adder for complex-multiply or multiply-add operation- Up to 100% speed improvement over previous generation devices.

24

Virtex 4

• Embedded PowerPC 405 (PPC405) core (FX-Serie)

- Up to 450 MHz operation- Five-stage data path pipeline- 16 KB instruction and 16 KB data cache- MMU mit TLB

25

Structured ASIC

26

Warum Structured ASICs?Was ist ein Structured ASIC (SA)?- Logikeinheiten und Macros standartmäßig vorgefertigt- nur Verdrahtung der oberen Metalllagen wird vom Kunden festgelegt

Warum Structured ASIC?- schliesst die Lücke zwischen der Entscheidung ob FPGA oder ASIC- hohen Stückkosten des FPGA- hohen Maskenkosten des ASIC

Structured-ASIC:- NRE-Kosten etwa ein Zehntel eines vergleichbaren ASIC-Designs- fast identische Leistung eines ASICs- Stückkosten vielfache niedriger als für ein vergleichbares FPGA

27

Warum Structured ASICs?

Vergleich von ASIC, Structured ASIC, FPGA

Characteristics ASIC SA FPGA Digital path performance ~400 Mhz >250 Mhz <125 Mhz Memory access performance ~300 Mhz >250 Mhz <100 Mhz Design time 9-18 months 6-9 months 6-9 months Implementation time 8-12 weeks 1-3 weeks Manufacturing time 8-10 weeks 4-6 weeks Overall development cost High Low Lowest Design flexibility Maximum Medium Minimum Annual volumes >100K/year >5K/year <5K/year Typical unit pricing Lowest Low High

<20M gates <5M gates <<1Mgates(Tab. 3, Basics of Design (LSILOGIC), 15 März 2004)

Typical design size(ASIC gates)

28

Aufbau Structured ASIC

I/OSea-of-tilesRAM-Block

Clock-Tree

(Abb. 12) 29

Aufbau Structured ASIC

Vorgefertigte Bestandteile:

- Matrix von Tiles (sea of tiles)- konfigurierbare general-purpose I/O- Mikroprozessokerne- Gigabit Transceivers- eingebettete RAM-Blöcke- ...

30

Arten von Tiles

fine-grained tiles ( Transistoren, Widerstände):

(Abb. 13 Structured ASICS, Opportunities and Challenges; Behrooz Zahiri ) 31

Arten von Tiles

medium-grained tiles ( Mux, LUT ):

(Abb. 14 Structured ASICS, Opportunities and Challenges; Behrooz Zahiri )

32

Arten von Tiles

coarse-grained tiles ( generic logic ):

(Abb. 15 Structured ASICS, Opportunities and Challenges; Behrooz Zahiri ) 33

Nachteil Structured ASIC

Nachteile Structured ASIC

- teure, nicht speziell auf Structured ASIC zugeschnittene Design Tools, müssen verwendet werden

- neue Architekturformen, die mit den Structured ASICs erschienen sind, sind noch nicht formell ausgewertet und vergleichbar analysiert

34

Zusammenfassung Structured ASIC

Zusammenfassung:

- niedrige Entwicklungskosten- schnelle Fertigung- hohe Integrationsdichte- gute Performance- geringer Stromverbrauch- geringe Stückkosten schon bei mittleren Stückzahlen

35

Besonderheiten Structured ASIC

Structured ASICs mit rekonfigurierbaren Blöcken (Gladiator CLD):

(Abb. 16, Product Brief Gladiator CLD, Leopard Logic)

36

Besonderheiten Structured ASIC

Features Gladiator CLD25000 (configurable logic design):

- 500 Mhz system speed- 25.600.000 System Gates- 256K MP-Cells (metal programmable)- 16K FP-Cells (field programmable)- 256 36K DPRAMs- 256 18x18 MACs - 16 PLL/DLL

37

Besonderheiten Structured ASIC

Aufbau MP-Zelle/FP-Zelle:

(Abb. 17) 38

VCC VDD

HyperBlox FP- HyperRoute Multiplexor & SRAM

HyperBlox MP- HyperVia Single Layer Via

Embedded FPGAs

39

Embedded FPGAsProbleme:- Herstellungsprozess des FPGAs IP-Cores (intelectual property) muss mit dem Herstellungsprozess des ASICs kombiniert werden- der eingebettete FPGA darf nicht alle Metallagen beanspruchen- Powerversorgung des FPGA muss gewährleistet sein

Vorteile:- risikoreiche Funktionsblöcke können auf das FPGA abgebildet werden- Protokolle sind im Feld anpassbar- reduzierte Supportkosten (Firmwareupdate)- Designfehler können im Feld behoben werden

40

Embedded FPGAsVariCore FPGA IP-Zelle des Herstellers Actel:

41

- Aufbau 2x1 bis 4x4- konfigurierbar durch JTAG, PROM, CPU- ein Peg 2,5K ASIC gates

(Abb. 18, VariCore Embedded Programmable Gate Array Core (EPGA) , Actel)

Embedded FPGAsAufbau einer PEG-Zelle (8x8 FG-Zellen(functional group)):

42 (Abb. 19, VariCore Embedded Programmable Gate Array Core (EPGA) , Actel)

Embedded FPGAsAufbau einer FG-Zelle, 4 LUs (logic units):

43 (Abb. 20, VariCore Embedded Programmable Gate Array Core (EPGA) , Actel)

Embedded FPGAsAufbau einer Logic Unit:

44 (Abb. 21, VariCore Embedded Programmable Gate Array Core (EPGA) , Actel)

Zusammenfassung

45

Kosten

Stückzahl

FPGA

SA

ASIC

100.0005.000(Abb. 22, Zahlen Basics of Design (LSILOGIC), 15 März 2004

Zusammenfassung

46

Geschwindigkeit

Flexibilität

ASIC

SA

FPGA

ASIC embedded FPGA

SA with FP-Blocks

(Abb. 22)

Literatur

46

Paper:- Product Brief, Gladiator , Leopard Logic- White Paper, Configurable Logic Devices, Leopard Logic- VariCore Embedded Programmable Gate Array Core, Actel- The Actel Embedded FPGA Core, Actel- A Hybrid ASIC and FPGA Architekture, P.S. Zuchowsky, C.B. Reynolds...- Einbindung von programmierbarer Logik in SoC-Desings, Design & Verification- White Paper, IBM Licenses Embedded FPGA Cores from Xilinx for use in SoC ASICs- Proseminar, Geschichte nd Einführung in Aufbau und Arbeitsweise von FPGA, Matthias Fuchs- Reconfigurable Hardware: FPGA Devices, Alex Plotkin- Reconfigurable Computer Origins: The UCLA Fixed-Plus-Variable (F+V) Structure Computer, Gerald Estrin- Skript, DST, Prof. Dr. P. Fischer

Literatur

46

Homepages:- www.xilinx.com- www.actel.com- www.leopardlogic.com- www.ibm.com- http://sus.ti.uni-mannheim.de