FPGA fun - erste Schritte, Hardware Vorbereitungen

ACHTUNG: ICH ÜBERNEHME KEINERLEI GARANTIE FÜR FUNKTION, SCHÄDEN ETC., ICH GEBE AUCH KEINERLEI SUPPORT BEI PROBLEMEN.

FPGAs sind eine feine Sache, man designed ein board, packt eine FPGA drauf, schließt ein paar Ein- und Ausgänge an - die Logik dazwischen macht man später. Dazu die Vorteile echter paraller Verarbeitung, jede Menge verfügbare Logikzellen, viele IO-Ports.
Aber der Einstieg ist schwierig: VHDL bzw. Verilog als Sprache, diverse Software Tools, kryptische Fehlermeldungen, teure Development Boards.

Auf dieser Seite dokumentiere ich meine allerersten Schritte mit einer XILINX Spartan 6, Ausgang und Fortsetzung dieses Abenteuers sind noch ungewiss.
Zum Einsatz kommen ein ZTEX FPGA Board sowie das zugehörige Experimentier-Board 1.3, welches seinerseits auf einem selbstgebauten Testboard mit 4 Schaltern und 8 LEDs sitzt.

Daten des ZTEX USB-FPGA-Board-1.11c

Die FPGA kann den Bitstream entweder per USB über den EZ-USB FX2 laden oder der EZ-USB liest den Bitstream aus der SD Karte und lädt diese in die FPGA. Es gibt eine Java basierte Entwicklungsumgebung, die auf den EZ-USB zugreift, ein separater Programmieradapter ist also nicht unbedingt notwendig (sehr wohl aber praktisch, wenn man mit der XILINX Software arbeitet).

Daten des ZTEX Experimentier-Board 1.3

Bild: Experimentierboard mit aufgestecktem FPGA Board.

Das Experimentierboard 1.3 verfügt über keine LEDs, Schalter etc., deswegen wird das Experimentierboard auf ein weiteres selbstgefertigtes Board gesteckt. Der Einfachheit halber gebe ich nur den Schaltplan an.

Das Adapterboard für LEDs und Taster

DOWNLOAD schematics

Wichtig beim Adapterboard sind nur die Zuordnungen der Schalter und LEDs zu den FPGA Pins für die nachfolgenden Beispiele:

Alle In- und Outputs des Adapterboards sind mit FPGA Bank 2 verbunden. Zusätzlich befindet sich auf dem Adapterboard ein +5V Linearregler für die Versorgung der LEDs.
WICHTIG: Die Adapterplatine sorgfältigst auf Funktion, Kurzschlüsse etc. prüfen!

Letzte Kontrollen bevor das erste mal Strom angeschlossen wird

Der Jumper JP1 muss so gejumpert werden, dass VCC_IO = 3.3V beträgt. Andernfalls kann eine zu hohe Spannung an den Eingängen die FPGA beschädigen.

Teil 2: Software.

Nach den Hardware Vorbereitungen geht es an die Software. hier geht es weiter..

externe Links