fpga evaluation board - heenes.deheenes.de/fpga/fpga.pdf · 2 fpga evaluation board das pld besteht...
TRANSCRIPT
-
Fachbereich InformatikFachgebiet Rechnerarchitektur
FPGA
Evaluation Board
W. HeenesJ.-P. SchwickerathC. Spahn
J. Jendrsczok
-
Wer aufhrt, besser zuwerden, hrt auf, gut zusein.
Hartmut Eklh
c Copyright 2005 W. Heenes, J.-P. Schwickerath, C. Spahn, J. Jendrsczok
Alle Rechte vorbehalten.
Ausgabe 2005, Stand Juli 2005
-
iii
Vorwort
Das Fachgebiet Rechnerarchitektur hat in den vergangenen Semestern wiederholt das Praktikum
der Rechnertechnologie angeboten. In vier Versuchen (von insgesamt neun) wurden Grundlagen
des modernen Hardware-Entwurfs vermittelt. Zur Simulation und Synthese wurden die Entwick-
lungsumgebungen MAX+plus II und Quartus II 4.1 der Firma Altera verwendet. Zum Hardware-
Test wurde das Education Board UP 2 verwendet, welches einen FLEX 10K70 FPGA besitzt.
Dieses ber das University Program vertriebene Board kostet ca. 200.- e .
Viele Studierende haben wiederholt den Wunsch geuert eine solche Plattform zur Verfgung
zu haben, um eigene Projekte durchzufhren. Die hohen Kosten fr kommerzielle Boards haben
allerdings viele Interessenten abgeschreckt. Aus diesem Grund wurde ein einfaches LowCost
Board entwickelt, welches auerdem einfach nachzubauen ist und dessen Materialkosten 50.- e
nicht bersteigen.
Die folgende Dokumentation beschreibt alle Designentscheidungen und die berlegungen, die
zur Auswahl der Hard- und Software gefhrt haben. Auerdem werden kurz die Funktionsblcke
beschrieben. Hinweise zum Aufbau des Boards und zum Funktionstest schlieen diese Doku-
mentation ab.
Allen Studierenden, die durch Ihre Neugier den Ansto zu diesem Projekt gegeben haben, sei
hiermit herzlich gedankt. Christian Spahn hat die technische Realisierung (Schaltplan, Layout,
Prototyping) bernommen, die besser nicht durchzufhren ist. Jean-Pierre Schwickerath und Jo-
hannes Jendrsczok haben die undankbare Aufgabe der Dokumentation meisterhaft gelst.
Wolfgang Heenes
Darmstadt, Juli 2005
-
iv FPGA Evaluation Board
Inhaltsverzeichnis
1 Einfhrung 1
1.1 Programmable Logic Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2 Boarddesign 4
2.1 Schaltplan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2 Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3 Hinweise zum Aufbau 11
3.1 Lten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4 Funktionstests 13
4.1 Inbetriebnahme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.2 Test der Komponenten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
5 Ausblick 14
A Software 15
-
KAPITEL 1. EINFHRUNG 1
Kapitel 1
Einfhrung
Seit der Einfhrung der FPGAs1 Mitte der 80er Jahre ist, wie in allen Bereichen der Mikroelektro-
nik ein fortlaufender Integrationsprozess zu beobachten. Sowohl die Anzahl der Logic Elements,
als auch der maximal erreichbare Takt wurden deutlich gesteigert. Neue Entwicklungen integrie-
ren auerdem CPUs2 und FPGAs auf einem Die.
1.1 Programmable Logic Devices
Die Grobstuktur eines PLD3 der Familie FLEX 10K ist ein Abbildung 1 zu sehen. Das Datenblatt
zum FLEX 10K ist im ZIP-Archiv zu finden.
Abb. 1: Grobstruktur des FLEX 10K
1Field Programmable Gate Arrays2Central Processing Units3Programmable Logic Devices
-
2 FPGA Evaluation Board
Das PLD besteht aus:
I/O Elementen
Diese Elemente kontaktieren die eigentlichen Ein- und Ausgabepins des PLDs. Sie enthal-
ten Treiber und Register.
Logic Arrays
Die Logic Arrays bestehen aus Gruppen von Logik-Elementen, den kleinsten Einheiten zur
Realisierung der eigentlichen logischen Funktion. Die Logik-Elemente enthalten ein Regi-
ster und eine Funktionstabelle zur Realisierung logischer Funktionen mit vier Variablen.
Embedded Array Blcke
Diese Blcke enthalten hauptschlich RAM4.
Verbindungskanle
Die einzelnen Elemente werden durch programmierbare Verbindungen verschaltet.
Abb. 2: Logic Array Block
4Random Access Memory
-
KAPITEL 1. EINFHRUNG 3
Abb. 3: Logic Element
Whrend das Altera Education Board einen FLEX 10K70 mit 3744 Logic Elements besitzt, wurde
fr das LowCost Board ein FLEX 10K10 ausgewhlt. Dieser Baustein besitzt 576 Logic Elements
und ermglicht die Durchfhrung aller Versuche aus dem Rechnertechnologiepraktikum. So be-
legt der WKP-Prozessor nach der Synthese mit Quartus II 5.0 ca. 25 % der Ressourcen.
Um einen einfachen Nachbau zu ermglichen, wurde ein 84-Pin PLCC Gehuse ausgewhlt.
Dies ermglicht ggf. auch den einfachen Aufbau auf Lochrasterplatinen.
Die Kosten fr das FPGA betragen ca. 22.- e .
Bei der Entwicklungsumgebung fiel die Wahl auf Quartus II 5.0 Web Edition der Firma Altera5.
Diese entegrierte Entwicklungsumgebung enthlt alle Programme, die zur Eingabe (AHDL6, Ve-
rilog HDL, VHDL7), Synthese und Programmierung des Boards notwendig sind.
Das Layout wurde mit dem Programm EAGLE der Firma CadSoft8 durchgefhrt. Dieses Pro-
gramm ist fr nicht-kommerzielle Nutzung mit einigen Einschrnkungen kostenlos verfgbar. Als
wichtigste Einschrnkung bei der Entwicklung des Evaluation Boards ist die Begrenzung auf eine
halbe Euro-Karte (100mmx80mm) zu nennen.
5www.altera.com6Altera Hardware Description Language7Very High Speed Integrated Circuit HDL8www.cadsoft.de
www.altera.comwww.cadsoft.de
-
4 FPGA Evaluation Board
Kapitel 2
Boarddesign
Bei der Entwicklung elektronischer Schaltungen ist die Anzahl der Freiheitsgrade sehr hoch. Die
unzhligen verfgbaren Gehusetypen tragen ebenso dazu bei, wie die zur Verfgung stehende
Flche des PCB1. Auerdem hat man noch die Mglichkeiten, die Verbindungen auf verschie-
denen Layern zu realisieren. Fr komplexe Schaltungen ist die Multilayertechnik unersetzlich.
Mehrere Layer machen das Board in der Herstellung aufwendiger und damit teurer.
2.1 Schaltplan
Abbildung 4 zeigt den Schaltplan des Boards.
Abb. 4: Schaltplan des LowCost Boards
1Printed Circuit Board
-
KAPITEL 2. BOARDDESIGN 5
2.2 Layout
Abb. 5: Layout des Boards
Abb. 6: Bestckung des Boards
Auf dem Board sind mehrere Baugruppen vorhanden.
Stromversorgung: Die Versorgungsspannung wird ber einen Spannungsregler 7805 sta-
bilisiert. Eine Leuchtdiode signalisiert das Vorhandensein einer Versorgungsspannung. Au-
erdem ist ber eine Diode ein verpolungssicherer Anschlu gewhrleistet.
Programmier-Interface: Das Programmier-Interface ermglicht die Programmierung des
FPGAs ber die parallele Schnittstelle. Als Bustreiber kommt ein 74HCT244 zum Einsatz.
Taster: Es stehen zwei entprellte Taster zur Verfgung.
-
6 FPGA Evaluation Board
Anzeigeeinheit: Zur Anzeige steht eine Bargraph-Anzeige mit 10 Elementen zur Verfgung.
Quarz: ber eine dedizierte Taktleitung ist ein 25 MHz Quarz angeschlossen.
FPGA: Altera FLEX 10K10 FPGA im PLCC-Gehuse.
Die einzelnen Bauteile finden sich in folgender Tabelle. Mit Hilfe der Bestellnummern sind diese
Bauteile bei Reichelt Elektronik2 im Online-Shop zu beziehen. Die Datenbltter befinden sich im
Anhang.
2http://www.reichelt.de
http://www.reichelt.de
-
KAPITEL 2. BOARDDESIGN 7
Menge Bestellnummer Bezeichnung1 HEBW 21 Einbaubuchse fr Hohlstecker, Geschlossene Bauform, 2.1 mm,
gewinkelt. Plastikausfhrung mit Ltfahnen. Max. Strom: 2 A bei16 VDC. Nicht fr Schwallltverfahren geeignet.
1 A 7805 Spannungsregler 1 A positiv. Gehuse: TO-2201 1N 4004 Diode.1 RAD 100/25 Elektrolytkondensator 100 F / 25 Volt. Radiale Bauform, Toleranz:
20%. Temperaturbereich: -40 bis +85 C. Max.-Mae: Durchmes-ser: 6.3 mm, Hhe: 11 mm, RM: 2.5 mm.
1 OSZI25,000000
Quarzoszillator, C-Mos/TTL-kompatibel Frequenz: 25.00 MHz,Frequenztoleranz: 100 ppm, Temperaturbereich: 070 C, Spei-sespannung: 5 V, Ausgang fr 2 TTL oder 10 LS-Gatter. Ausgn-ge: 1: nicht beschaltet, 7: Masse, 8: Ausgang, 14: Speisespan-nung.
1 PLCC 84 IC-Fassung, 84-polig, PLCC.1 WSL 14G Wannenstecker, vergoldet. Ausfhrung: gerade, 14-polig. Raster-
ma: 2.54 mm.1 PFL 14 Pfostensteckverbinder, vergoldet, mit Zugentlastung fr Flach-
bandkabel, 14-polig. Rasterma: 2.54 x 2.54 mm.1 D-SUB ST 25 25-poliger D-Subminiatur-Stecker, in Ltkelch-Ausfhrung mit ver-
goldeten Kontakten.1 KAPPE 25PM Kappe fr 25-poligen D-Sub-Verbinder. Ausfhrung: mit langer
Verschraubung, Kunststoff.1 SIL 6-3 100 Widerstands-Netzwerk, 1/8 Watt, 100 , 6 Pins, 3 Widerstnde.
Toleranz: 2%, max. Spannung: 100 V, Temperaturkoeffizient: 200.
2 SIL 8-4 100 Widerstands-Netzwerk, 1/8 Watt, 100 , 8 Pins, 4 Widerstnde.Toleranz: 2%, max. Spannung: 100 V, Temperaturkoeffizient: 200.
1 SIL 7-6 2,2K Widerstands-Netzwerk, 1/8 Watt, 2.2 k, 7 Pins, 6 Widerstnde.Toleranz: 2%, max. Spannung: 100 V, Temperaturkoeffizient: 200.
2 SIL 6-5 180 Widerstands-Netzwerk, 1/8 Watt, 180 , 6 Pins, 5 Widerstnde.Toleranz: 2%, max. Spannung: 100 V, Temperaturkoeffizient: 200.
1 74HC 244 8-Bit-Bustreiber.1 74HC 00 High-Speed CMOS 4x 2-Input NAND.1 SIL 5-4 10K Widerstands-Netzwerk, 1/8 Watt, 10 k, 5 Pins, 4 Widerstnde.
Toleranz: 2%, max. Spannung: 100 V, Temperaturkoeffizient: 200.
1 LED 3MM STBL
Standard-LED, 3 mm, blau. Gehuse eingefrbt, diffus. Abstrahl-winkel: 60, (430 nm)/12.540 mcd.
1 LED 3MM STGN
Standard-LED, 3 mm, grn. Gehuse eingefrbt, diffus. Abstrahl-winkel: 60, (565 nm)/832 mcd.
4 KERKO 100N Keramischer Miniatur-Scheibenkondensator, EGPU, Rasterma:2.55 mm, 63 V bis 100 V. Kleine Kapazittstoleranzen, hoheResonanzfrequenz. Toleranz: 2%.
1 RBG 1000 Bargraph-Anzeige. Farbe: rot. 10.16 x 25.4 mm, Bauhhe: 8 mm,10 Elemente. (625 nm)/22005600 cd. Kingbright-Serie DC10.
3 SL 2X17G 2,54 2-reihige Stiftleiste, gerade2 1/4W 220 220 Ohm Widerstand2 1/4W 1,0k 1 kOhm Widerstand2 DIT 1 rt Eingabetaster ITT4 DI 8mm Distanzbolzen Innengewinde M34 SZK M3x6mm Zylinderkopfschrauben
-
8 FPGA Evaluation Board
1 GS 14P Przisionsfassung IC1 GS 20P Przisionsfassung IC
Auf dem Board sind drei Extension Ports verfgbar. Die folgenden Tabellen zeigen, wie die ein-
zelnen Pins des FPGAs an die Stiftleisten angeschlossen sind.
SW0 SW1
Ext B
Quarz
1
1
90
1
1
Ext
. A
Ext
. CLEDs
Abb. 7: Schematischer Aufbau des Evaluation Boards
-
KAPITEL 2. BOARDDESIGN 9
Ext. A FLEX Verwendung
1 VCC
2 GND
3 1 Oszillator
4 2
5 3
6 5
7 6
8 7
9 8
10 9
11 10
12 11
13 16
14 17
15 18
16 19
17 21
18 22
19 23
20 24
21 25
22 Nicht angeschlossen
Tabelle 2.2: Verbindungen zwischen den Pins des FPGAs und Ext. A
Ext. B FLEX Verwendung
1 VCC
2 GND
3 27 LED 0
4 28 LED 1
5 29 LED 2
6 30 LED 3
7 35 LED 4
8 36 LED 5
9 37 LED 6
10 38 LED 7
11 39 LED 8
12 42 SW0
13 43
14 44 SW1
15 47 LED 9
16 48
17 49
18 50
19 51
20 52
21 53
22 54
Tabelle 2.3: Verbindungen zwischen den Pins des FPGAs und Ext. B
-
10 FPGA Evaluation Board
Ext. C FLEX Verwendung
1 VCC
2 GND
3 58
4 59
5 60
6 61
7 62
8 64
9 65
10 66
11 67
12 69
13 70
14 71
15 72
16 73
17 78
18 79
19 80
20 81
21 83
22 84
Tabelle 2.4: Verbindungen zwischen den Pins des FPGAs und Ext. C
-
KAPITEL 3. HINWEISE ZUM AUFBAU 11
Kapitel 3
Hinweise zum Aufbau
Der Aufbau kann entweder auf einem PCB oder auf einer Lochrasterplatine erfolgen. Lochra-
sterplatinen erfordern allerdings mehr Erfahrung. Auerdem ist es unerllich, jede Verbindung
sofort auf Durchgang zu berprfen und in dem Schaltplan zu makieren.
3.1 Lten
Es gibt mehrere Mglichkeiten elektronische Bauelemente zu verbinden. Neben Steckbrettern
gibt es z. B. noch die Wire Wrap Technik. Steckbretter haben den Nachteil relativ teuer und
unzuverlig zu sein. Der Aufwand fr Wire Wrap ist zumindest fr ein solches Projekt zu hoch.
Ltverbindungen stellen immernoch die zuverlssigste Art elektrischer Verbindungen dar und
sind auerdem einfach und kostengnstig zu realiseren.
Zum Lten des Evaluationsboards eignet sich z. B. der Ltkolben ERSA Tip 260. Dieser Ltkol-
ben besitzt 16 Watt und austauschbare Spitzen.
Hinweise, zum Teil mit Bildern zum richtigen Lten finden sich unter den folgenden Links:
Seite mit Links zu Bilderfolgen, die das optimale Lten dokumentieren:
http://www.elektor.de/links/details/k1203.htm
Verhalten beim Lten, Tipps zur Fehlersuche:
http://www.tams-online.de/htmls/tippsundtricks.html
Allgemeine lttechnische Hinweise:
http://www.hornbach.com/tips/de/data/2_Anleitung_Loeten_neu.pdf
Tipps zur Auswahl des Ltgerts und der Betriebstemperatur:
http://www.oe5.oevsv.at/basteln_js/technik/tipps/richtig_loeten/hp-loeten.pdf
http://www.elektor.de/links/details/k1203.htmhttp://www.tams-online.de/htmls/tippsundtricks.htmlhttp://www.hornbach.com/tips/de/data/2_Anleitung_Loeten_neu.pdfhttp://www.oe5.oevsv.at/basteln_js/technik/tipps/richtig_loeten/hp-loeten.pdf
-
12 FPGA Evaluation Board
Grundstzliches zum Lten und Entlten:
http://www.electronicsplanet.ch/Praxis/Loeten/loeten.htm
Allgemeines zum Lten, Lten von bedrahteten Bauteilen, SMD-Bauteilen, Entlten:
http://home.t-online.de/home/hraeuchle/titelseiten/ttl_d05.htm
Halbleiter sind temperaturempfindlich und drfen nicht zu hei werden. In diesem Fall ist sowohl
bei den Leuchtdioden, der Bargraph-Anzeige und beim 7805 besondere Vorsicht geboten. Alle
ICs sind mit Sockel zu versehen, denn zum Entlten von DIL-Gehusen bentigt man Spezial-
werkzeug.
http://www.electronicsplanet.ch/Praxis/Loeten/loeten.htmhttp://home.t-online.de/home/hraeuchle/titelseiten/ttl_d05.htm
-
KAPITEL 4. FUNKTIONSTESTS 13
Kapitel 4
Funktionstests
Der Aufbau des Boards wird mit einem Funktionstest abgeschlossen. Der Funktionstest ist in
zwei Teile unterteilt.
4.1 Inbetriebnahme
Bei der ersten Inbetriebnahme sollte, wenn der Strom einstellbar ist, ein Strom von ca. 200 mA als
Maximalstrom eingestellt werden. Nach Anlegen der Betriebsspannung sollte die Power-On LED
leuchten. Ist dies nicht der Fall, sollte die Platine sofort wieder spannungslos gemacht werden.
In diesem Fall ist eine berprfung auf Kurzschlsse notwendig. Dies kann mit einem Vielfach-
megert erfolgen.
4.2 Test der Komponenten
Zum Testen der Taster, Leuchtdioden und des Quarzes steht ein Testprogramm in AHDL, Verilog
HDL und VHDL zur Verfgung. Whrend und nach der Programmierung leuchtet die Programmier-
LED. Danach kann mit dem linken Taster das Clock-Signal fr einen 4-Bit Zhler generiert wer-
den. Beim berlauf leuchten alle Leuchtdioden fr eine Dauer von zwei Sekunden auf. Durch
drcken des rechten Tasters luft der Zhler rckwrts.
Sollten die Testprogramme dieses Verhalten nicht zeigen, so liegt entweder ein Bestckungsfeh-
ler vor (z. B. falsche Polung des Widerstand-Arrays) oder fehlerhafte Ltstellen. Luft der Zhler
nicht rckwrts, kann evt. ein defekter Taster dafr verantwortlich sein.
-
14 FPGA Evaluation Board
Kapitel 5
Ausblick
Fr welche Anwendungen kann das vorgestellte Board eingesetzt werden? Wie schon erwhnt
lassen sich alle Versuche des Rechnertechnologiepraktikums damit durchfhren. Dies ermglicht
es interessierten Studenten, die Versuche ggf. zu Hause vorzubereiten bzw. bei Zeitproblemen
die Versuche zu Hause abzuschlieen. Die Platine kann, nach Erweiterung mit entsprechen-
der Leistungselektronik, z. B. auch zur Steuerung von Lampen (Dmmerungsschalter, Lauflicht
etc.) eingesetzt werden. Fr zeitkritische Anwendungen, die eine bestimmte Komplexitt nicht
bersteigen, ist das ggf. einem Mikrocontroller vorzuziehen. Ein Nachteil ist allerdings der ver-
gleichweise hhe Preis.
Fr Hardware-/Software-Co-Design kann eine Kopplung z. B. mit einem Atmel Mikroprozessor
erfolgen. Das FPGA kann dann zur Berechnung aufwendigerer Algorithmen verwendet werden.
Ein entsprechendes Board ist in Vorbereitung.
-
ANHANG A. SOFTWARE 15
Anhang A
Software
ZIP-Archiv
Fr dieses Projekt wird ein ZIP-Archiv mit allen verwendeten Programmen zur Verfgung gestellt.
Auerdem enthlt das Archiv verschiedene Skripte, Tutorials und Papers.
ausblick: Verschiedene Tutorials und Simulatoren fr VHDL und Verilog.
VLSI-Entwurfsprogramm, auerdem Skripte ber VLSI-Entwurf.
altera: Im Verzeichnis ahdl befindet sich eine Kurzanleitung fr AHDL. Einige Papers zu
PLDs, FPGAs befinden sich in pld. Das Tutorial Getting Started und die Dokumentation fr
das Board befinden sich im Verzeichnis altera.
rtpprozessor: Im Verzeichnis RTPSim befindet sich ein Simulator und ein Assembler fr den
RTP-Prozessor. Im Verzeichnis speicher befindet sich der Speicher.
1 Einfhrung1.1 Programmable Logic Devices
2 Boarddesign2.1 Schaltplan2.2 Layout
3 Hinweise zum Aufbau3.1 Lten
4 Funktionstests4.1 Inbetriebnahme4.2 Test der Komponenten
5 AusblickA Software