Forum: FPGA, VHDL & Co. Einstieg in CPLD &FPGA


von Ths S. (motorburner)


Lesenswert?

Hallo,
da ich mit den Atmegas sehr Pin- und Geschwindigkeitsbegrenzt bin, 
möchte ich in die programmierbare Logik einsteigen. Ich habe aber 
absolut keine Ahnung davon, weder von Hardware noch von Software.
Meine erste Frage wäre also - gibt es ein gutes Tutorial oder Buch, was 
einem in die Materie einführt?
Nächste Frage - Welche Hardware wird benötigt?
vorerst letzte Frage - welche Software?
Danke & fG!

von Alexander F. (alexf91)


Lesenswert?

1. Hardwarebeschreibungssprache lernen (VHDL oder Verilog)
2. Designs im Simulator testen
3. Auf Hardware spielen

Für 1. würde ich ein Buch empfehlen, viele empfehlen "VHDL-Synthese" von 
Jürgen Reichardt und Bernd Schwarz (ISBN: 3486589870)

Bei der Software bieten eigentlich alle Hersteller von FPGAs relative 
umfangreiche Gratisversionen an, für die Hardware würde ich zum Einstieg 
ein Eval-Board nehmen, von Digilent gibts z.B. für Studenten relativ 
billige.

von Ths S. (motorburner)


Lesenswert?

Hallo,
kann ich VHDL sowohl bei CPLD als auch bei FPGA verwenden?
mfG

von Ths S. (motorburner)


Lesenswert?

Edit: Ich hab mir mal die Leseprobe zum o.g. Buch angeschaut. Dort finde 
ich aber nicht wirklich etwas über FPGAs/CPLDs.. sowas bräuchte ich 
aber. Wenn ich bei Amazon nach FPGA/CPLD suche, kommen meistens nur 
Bücher für  Fortgeschrittene.

von R. F. (rfr)


Lesenswert?

FPGA und CPLD werden in VHDL programmiert, von der Elektrikseite her 
sind es normale Bausteine. Entscheidend ist die Logik innendrin, die m 
it VHDL beschrieben wird.

Das Hasmburger Archiv enthält einige Tutorials, villeicht ist das eine 
oder andere nützlich.

Gruss
Robert

von Ths S. (motorburner)


Lesenswert?

Hallo,
ich hab auch mal gesehn, dass es sowas gibt, wo man einfach den 
Schaltplan zeichnet, oder hau ich das was durcheinander?
Ich hätte doch gern ein Buch, das ist mir lieber. Gibts da garnichts, 
was Einsteiger in die Thematik einführt UND Hardware erklärt?
HHardwaretechnisch - was soll ich nehmen, Altera oder Xilinx? Welche 
Evaluationsboards sind für Einsteiger gut geeignet?
Das sind so Fragen, die eigentlich Kopfschütteln bereiten - ich kenn das 
von den µP-Einsteigern - aber ich brauch nunmal Grundlagenwissen..
mfG

von ..,- (Gast)


Lesenswert?

Du willst ein Buch ...
Wie oben schon erwähnt ist "VHDL-Synthese: Entwurf digitaler Schaltungen 
und Systeme" wirklich kein schlechtes ... jedenfalls habe ich damit gute 
Erfahrungen gesammelt. Für den Einsteiger werden die grundlegenden 
Zusammenhänge und Herangehensweisen gut erklärt.
Die Hardware ist, denke ich, eher eine Nebensache ... meine kann seinen 
Entwurf ja auch sehr gut simulieren ... obwohl es natürlich lustiger 
ist, wenn man eine LED zum blinken bekommt. Der Witz an VHDL ist ja die 
Hardwareunabhängigkeit =)

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Thomas S. schrieb:
> Dort finde ich aber nicht wirklich etwas über FPGAs/CPLDs..
> sowas bräuchte ich aber.
Für einen uC gibt es auch (mindestens) 2 Sachen, die du lesen mußt:
1. das Datenblatt (Hardware)
2. das Handbuch zur Programmiersprache (Software)
Woher bekommst du die?
1. gibts vom Hersteller
2. mußt du dir je nach Gusto suchen (C, Basic, Assembler, ...)

Genauso auch bei FPGAs. Du brauchst
1. das Datenblatt (Hardware)
2. eine Anleitung für die gewählte Beschreibungssprache

> Ich hätte doch gern ein Buch, das ist mir lieber. Gibts da garnichts,
> was Einsteiger in die Thematik einführt UND Hardware erklärt?
Bücher gibt es nur zum Thema 2.
Das brauchbarste davon ist m.E. das bereits erwähnte.
Zum Thema 1. (Hardware) gibt es aber vom Hersteller Application Notes, 
wo das Datenblatt mal in der Praxis angewandt wird. Ein hübsches ist 
z.B. von Xilinx das Whitepaper 272: 
http://www.xilinx.com/support/documentation/white_papers/wp272.pdf

Thomas S. schrieb:
> kann ich VHDL sowohl bei CPLD als auch bei FPGA verwenden?
Kann ich C sowohl beim kleinen uC (ATtiny) als auch beim großen uC (ARM) 
verwenden?

von Ths S. (motorburner)


Lesenswert?

Hallo,
okay, dann kaufe ich mir das Buch zur VHDL-Synthese.
Aber was ist denn jetzt besser für den Einstieg geeignet?
Bei Reichelt habe ich verschiedene CPLDs gefunden - laut T. Unmuth 
sollte man mit CPLD anfangen, da diese billiger sind und einen 
nichtflüchtigen Speicher besitzen. Da habe ich gefunden:
- Lattice IspLSI 1016 - PLCC44 - 64 Cells - 2000 Gates - 32 I/Os - 15ns
- Xilinx XC95xx
- Xilinx XC9572XL - PLCC44 - 72 Cells - 1600 Gates - 38 Is/34 Os - 10ns
Altera bietet Reichelt nicht an, deshalb kann ich da keinen 
vergleichbaren CPLD listen.
Wo kann ich dann nach Evaluationsboards gucken? Reichelt hat auf jeden 
Fall nichts.
mfG

von Lomann (Gast)


Lesenswert?

Lothar Miller schrieb:
> Kann ich C sowohl beim kleinen uC (ATtiny) als auch beim großen uC (ARM)
> verwenden?

Ja das geht. Schau dir am besten mal das Tutorial auf dieser Seite an.

von Stefan W. (wswbln)


Lesenswert?

...bevor Du mit dem "alten Kleinkram" (sorry) wie ispLSI und XC95 
anfängst, schau' mal, ob Du ein Board mit MachXO, MachXO2 oder ECP2 
bekommst.

Die haben auch nichtflüchtigen Speicher drin, sind aber schon 
ausgewachsene (kleine) FPGAs. Bei den '1200 und '2280ern gibt's dann 
auch RAM für FIFOs/dual ported und PLL(s) zum Spielen...

Günstige Boards gibt's (wenn nicht vom Disi) z.B. (noch - Restposten!) 
hier: http://www.hardware-design.de/restposten.html



@Lomann: Das war (wahrscheinlich deinerseits völlig unbewusst) der 
Lacher der Woche!!! (Aber nett, dass Du Lothar helfen wolltest.)

von Ths S. (motorburner)


Lesenswert?

Hallo,
die Preise sind ja super. Aber welches Board ist für den Einstieg am 
besten geeignet? Soll ich einfach irgendeins von denen nehmen? Auf was 
ist zu achten? Das HWD-XO-USB würde mir wegen des USB-Ports und der 
entfallenden externen Spannungsversorgung gefallen. Aber wie sieht es 
sonst aus? Soll ich es nehmen?
mfG

von Stefan W. (wswbln)


Lesenswert?

...wirf einen Blick in die Datenbücher der FPGA-Familien und entscheide 
anhand dessen. Bei dem Preis kannst Du im Zweifel glaube ich auch 
einfach 2 verschiedene Boards nehmen... ;-)

von Ths S. (motorburner)


Lesenswert?

Hallo,
ich werde das HWD-XO-USB nehmen. Das sollte für den Anfang reichen.
danke für die Hilfe - jetzt muss ich mir erstmal das Buch durchlesen und 
mich mit der Sache vertraut machen.
Vielleicht kommen später noch neue Fragen.
mfG

von Lattice User (Gast)


Lesenswert?

Thomas S. schrieb:
> ich werde das HWD-XO-USB nehmen. Das sollte für den Anfang reichen.

Schau dir im jedem Fall noch das MachXO2 Pico Development Kit 
(LCMXO2-1200ZE-P1-EVN) an.

Ist nicht viel teurer, aber um einiges moderner.
Der verbaute MachXO2 ist doppelt so gross, der USB Controller ist der 
verbreitete FT2232H.
Kann statt von USB auch mit einer Batterie versorgt werden.

von Ths S. (motorburner)


Lesenswert?

Hallo,
danke für den Vorschlag - aber Google Shopping findet den Artikel nicht, 
wo gibts den zu kaufen?
mfG

von Lattice User (Gast)


Lesenswert?


von Stefan W. (wswbln)


Lesenswert?

...außerdem läuft im "Markt"-Bereich gerade eine Sammelbestellung über 
das Breakout-Board:
Beitrag "Sammelbestellung Breakout-Board für MACHXO2"

(Ein PICO könnte ich Dir dabei auch mitbestellen)


Noch'n Tipp: Auf Messen wie der "Embedded" demnächst in Nürnberg werden 
solche Gadgets auch gerne mal verschenkt...

von Lattice User (Gast)


Lesenswert?

Stefan Wimmer schrieb:
> ...außerdem läuft im "Markt"-Bereich gerade eine Sammelbestellung über
> das Breakout-Board:
> Beitrag "Sammelbestellung Breakout-Board für MACHXO2"

Du schreibst da, dass die ZE typen nicht für 3.3V Umgebungen geeignet 
ist. Das ist nicht richtig, bei den ZEs kann die VCCIO 1.2 - 3.3V 
betragen, braucht dann halt 2 verschiedene Versorgungsspannungen.
5V geht mit keiner Variante.

Auch das Pico Board hat übrigens einen ZE.

von Ths S. (motorburner)


Lesenswert?

Hallo,
mal sehn - vielleicht lass ich mir  bei der Sammelbestellung mal eins 
mitbestellen. Aber 3,3V - daran muss ich mich erst gewöhnen.
mfG

von Michael D. (etzen_michi)


Lesenswert?

Daher das ich mich auch gerade für diese Thema interessiere wollte ich 
mal fragen ob es nicht sinnvoller ist eine Dev. Board eines Chips zu 
nehmen, den man am besten auch bei seinem Versender des Vertrauens z.B. 
Reichelt bekommt...

Auch wenn ich mich bisher nicht allzulange mit dem Thema FPGA 
beschäftigt habe, so habe ich das Gefühlt als wenn man an die Lattice 
nicht so leicht rankommt wie an Xiling.

Lasse mich aber gerne eines besseren belehren.

von Ths S. (motorburner)


Lesenswert?

Hallo,
Reichelt hat m.W. nach gar keine Dev-Boards mit CPLD/FPGAs..
mfG

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Thomas S. schrieb:
> Reichelt hat m.W. nach gar keine Dev-Boards mit CPLD/FPGAs..
Es ging auch mehr um den CPLD/FPGA...
Michael D. schrieb:
> eines Chips ..., den man am besten auch bei seinem Versender des
> Vertrauens z.B. Reichelt bekommt...

Aber konkret würde ich eher sagen:
Nimm ein reichlich ausgestattetes FPGA-Board, dann hast du Hardware, die 
sicher tut. Und du kommst vorerst nicht in die Verlegenheit, mit den 
paar wenigen Flipflops von CPLDs auskommen zu müssen...

Und wenn du dann einschätzen kannst, was du tatsächlich brauchst, kannst 
du immmer noch ein CPLD kaufen.

Michael D. schrieb:
> so habe ich das Gefühlt als wenn man an die Lattice
> nicht so leicht rankommt wie an Xiling.
Du darfst einfach nicht nur im kleinen Dorfladen (Reichelt, Conrad) 
umsehen, sondern mal eher Richtung Großhandel gehen. Bei Digikey, 
Farnell (privat: hbe-shop) und Mouser bekommst du, was du willst.

von Ths S. (motorburner)


Lesenswert?

Hallo,
also gut - dann nehme ich das  MachXO2 Board. Vielleicht nebenbei auch 
noch das MachXO board, bei dem Preis mach ich sicher nix verkehrt.
mfG

von Frank K. (fchk)


Lesenswert?

Denke auch daran, dass Du noch ein Gerät brauchst, das Deine Bytes in 
den Chip lädt. Vorzugsweise eines mit USB-Anschluss, denn der 
Parallelport ist fast ausgestorben. Für Xilinx und Altera gibts auf ébay 
Nachbauten der entsprechenden Herstellerdapter vom Chinamann für wenig 
Geld (da lohnt der Selbstbau definitiv nicht). Bei Lattice weiß ich es 
jetzt nicht, aber da musst Du suchen.

fchk

von MCUA (Gast)


Lesenswert?

>möchte ich in die programmierbare Logik einsteigen.
Da hilft nur Datenblätter lesen. (1.PLDs(aus den 70ern) 2.GALs 
3.CPLDs(nat. nur mit MAC-zellen) 4.FPGAs(grob/feinkörnig)
(ua von Franzis gibts/gabs Bücher mit Übersicht)
Mit HDL lernst du Nichts! über den internen Aufbau der Bausteine!

>...bevor Du mit dem "alten Kleinkram" (sorry) wie ispLSI und XC95
>anfängst,
Mit neuen CPLDs (sofern es von der Grösse her reicht) sind (von In-Out 
an gerechnet) schnellere Logic machbar als mit FPGAs.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Frank K. schrieb:
> Bei Lattice weiß ich es jetzt nicht, aber da musst Du suchen.
Da ist der Programmer schon on Board...
1
USB connector Cable – A mini B USB port provides power, a communication and 
2
debug port via a USB-to-RS-232 physical channel and programming interface 
3
to the MachXO2 JTAG port

Thomas S. schrieb:
> dann nehme ich das  MachXO2 Board.
MachXO2 sind besser ausgestattet
> Vielleicht nebenbei auch noch das MachXO board
MachXO sind schneller

von Ths S. (motorburner)


Lesenswert?

Hallo,
hm, mir ist wohl eher Aussstattung wichtiger..
mfG

von Stefan W. (wswbln)


Lesenswert?

Lattice User schrieb:
> Du schreibst da, dass die ZE typen nicht für 3.3V Umgebungen geeignet
> ist. Das ist nicht richtig, bei den ZEs kann die VCCIO 1.2 - 3.3V
> betragen, braucht dann halt 2 verschiedene Versorgungsspannungen.

Oh, danke für die Korrektur!

Ich hatte damals das Datenblatt nur überflogen und wohl was Falsches im 
Hinterkopf behalten. Wenn man ins mittlerweile im Netz verfügbare User's 
Manual des Breakout-Boards schaut, sieht man auch, dass die VccIOs mit 
3,3V verbunden sind. Prima!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.