Hallo,
ich suche eine gute Einführung in die FPGA-Technologie für Anfänger,
möglichst für die Altera Systeme.
Sie sollte einen Überblick über das Quartus-System mit ggf. einigen
Beispielprojekten bieten.
LG Fried
Das würde in einem anderen Forum etwa so lauten:
Ich suche eine gute Einführung ins die Raumfahrt. Möglichst für SpaceX
Systeme. Sie sollte einen Überblick über die SuperHeavy geben und
beschreiben, in welcher Reihenfolge man die Knöpfe drücken muss, um das
Ding zu fliegen.
Liest sich ein wenig eigenartig, nicht?
Wenn du bisher mit FPGAs noch nichts gemacht hast, dann hast du nämlich
im Grunde mehrere Stellen, die du lernen musst:
1. Was ist Hardware? Wie mache ich in Hardware Kombinatorik,
Multiplexer, Zähler, Zustandsautomaten usw?
2. Was ist ein FPGA, welche Teile üben darin welche Funktion aus und wie
kann man sie zusammenschalten?
3. Wie beschreibe ich diese Hardware, die ich im FPGA haben will, so,
dass die Toolchain dann die Komponenten richtig verschaltet?
4. Welches FPGA nehme ich und wie bediene ich die zugehörige Toolchain?
Und du fragst jetzt gleich zu Beginn nach 4.
Das wird nicht gutgehen. Denn auch wenn du mit Beispielen ein Alters
Board zum Blinken bringst, fehlen für brauchbare eigene Projekte 1. - 3.
Fried schrieb:> Hallo,> ich suche eine gute Einführung in die FPGA-Technologie für Anfänger,> möglichst für die Altera Systeme.
Also steinalt, aber vielleicht deswegen ein guter FPGA-Technologie
Einstieg:
ISBN: 978-3826627125
> Sie sollte einen Überblick über das Quartus-System mit ggf. einigen> Beispielprojekten bieten.
Gibt es nicht, weil es das Quartus system nicht gibt. Das ist in den
letzten 10 Jahren so oft umgestossen worden (Quartus Prime, Quartus Pro,
Quartus Standard, Quartus Webpack, Qsys, SOPC - builder). da man sich
schon auf eins festlegen sollte. Bspw. auf das Neueste.
Gut sind eigentlich die Click4Clock4Dummies Anleitungen/Tutorials der
Evalboard (bemicro, digilent,arrow) Hersteller. Einfach mal die alten
Threads durcharbeiten:
Beitrag "Wie wird aus einem Cyclone II FPGA eine Nios II CPU?"Beitrag "Einstieg in CPLD - Altera Max"
Fried schrieb:> Hallo,> ich suche eine gute Einführung in die FPGA-Technologie für Anfänger,> möglichst für die Altera Systeme.> Sie sollte einen Überblick über das Quartus-System mit ggf. einigen> Beispielprojekten bieten.> LG Fried
Such dir auf Youtube ein paar Videos dazu.
Ich hab im forum64 mal sowas für die cyclone2 mini dev Boards starten
wollen, aber da fehlte aber das Interesse.
Inzwischen gibt es da aber so eine Endlos Konversation, wo paar Anfänger
ihre Probleme und Fortschritte austauschen.
Fried schrieb:> Hallo,> ich suche eine gute Einführung in die FPGA-Technologie für Anfänger,> möglichst für die Altera Systeme.> Sie sollte einen Überblick über das Quartus-System mit ggf. einigen> Beispielprojekten bieten.> LG Fried
Vielleicht helfen diese beiden Quellen weiter:
https://www.nandland.comhttps://vhdlwhiz.com
Fried schrieb:> Hallo,> ich suche eine gute Einführung in die FPGA-Technologie für Anfänger,> möglichst für die Altera Systeme.> Sie sollte einen Überblick über das Quartus-System mit ggf. einigen> Beispielprojekten bieten.
So ein Buch hatte ich mal. War ein dicker Wälzer. Ging um Digitaltechnik
und Altera Quartus. Es wurde alles erklärt, angefangen von FFs, CMOS
Gatter-Schaltungen und Logik. Dann erst ging es zu den PLDs und FPGAs.
Alles rund um Quartus II. Leider habe ich den genauen Titel nicht mehr
im Kopf um es zu finden. War ein fester Einband.
Das hier habe ich gefunden, das war es aber nicht:
Hands-on Experience with Altera FPGA Development Boards
Ich empfehle
https://tams.informatik.uni-hamburg.de/vhdl/doc/ajmMaterial/vhdl.pdf
Das ist für mich noch das Verständlichste, auch wenn ohne Altera / Intel
Bezug.
Für die Quartus Inbetriebnahme gibt es Youtube Videos, das hat man für
ein einfaches "Hello World" Blink Projekt nach einer halben Stunde
zusammengestellt. Für die Programmierung in VHDL sind solche Uni
Ausarbeitungen besser.
Kleitz - Digital Electronics with VHDL, am Beispiel von Quartus II
ISBN-10 : 0131714902
ISBN-13 : 978-0131714908
Im Buch werden auch ganz rudimentäre Schaltungen mit Gattern und
Logik-Bausteinen vorgestellt, d.h. man lernt ERST die Schaltung und dann
deren Beschreibung in VHDL. Ich kenne kein andere Buch, das das so
macht.
Auch eine tolle Seite um ein wenig in die Welt der FPGA's einzutauchen.
https://www.nandland.com
Das schöne daran ist, dass es auch einen Channel auf YouTube dazu gibt.
Dort wird sehr viel erklärt und auch die Code Beispiele beschrieben. Und
dies alles in VHDL und Verilog. Viele weitere Beispiele gibt es bei
GitHub. Es wird auch mit einem Online Tool Namens EDA playground
simuliert und das Tool erklärt.
https://www.edaplayground.com
Der einzige Nachteil besteht vielleicht für den ein oder anderen darin,
dass es in englischer Sprache ist.
Wir haben im forum64 so ne kleine Gruppe, in der wir mit dem 15,-
mini-dev Board von ebay, Altera und Verilog basteln um den Umgang mit
FPGAs zu lernen.
No Y. schrieb:> Doch hat er.> Heißt irgendwas mit Nios.
Eingebettete Prozessoren und SoC ist aber nicht das, was der TO
angefragt hat.
Die Spartan3 basierte Einführung von Chu war definitiv ihr Geld wert.
Also ich lese:
Hallo, ich suche eine gute Einführung in die FPGA-Technologie für
Anfänger, möglichst für die Altera Systeme. Sie sollte einen Überblick
über das Quartus-System mit ggf. einigen Beispielprojekten bieten. LG
Fried
Was ist da an dem Nios Buch falsch?
Da ist Quartus Einführung drin. Jede Menge FPGA und halt auch Nios. Da
sind Beispiele für UART, Speicher Controller usw. In VHDL drin welche
dann mit einem Nios gekoppelt werden.. Wenn man damit nichts lernt??
Andreas Rückert schrieb:> Wir haben im forum64 so ne kleine Gruppe, in der wir mit dem 15,-> mini-dev Board von ebay, Altera und Verilog basteln um den Umgang mit> FPGAs zu lernen.
Was ist denn Forum64? Wo findet man euch?
Lothar M. schrieb:> Steffen H. schrieb:>> Was ist denn Forum64? Wo findet man euch?> Ist das dein Ernst?>> Ich hoffe, du hast diese Frage einfach nur zufällig im falschen> Textfenster eingegeben:> https://www.google.com/search?q=+Was+ist+denn+Forum64
Asche auf mein Haupt wenn ich Forum64 nicht kenne - ohhhh
Aber nein, kenne ich nicht.
UND
Ja, das ist mein Ernst :)
Im Ernst geht es darum dass du anscheinend noch nie was von Google,
Bing, Duckduckgo und wie sie alle heissen gehört hast. Damit hast du das
Forum64 schneller gefunden als du die Frage : "Wo findet man euch?"
eintippen kannst.
Hey, trollo! Respekt!!
geil, das ich dich hier treffen kann!
Du bist mir noch ein Foto schuldig! ;-P
Es geht da um nen Altera Cyclone Max 10,
der auf nem Board mit 2 Trancecivern drauf
ist.
Ich würde aber gerne erstmal mein schon vor 2 Jahren
aus TTL gebauten Zähler zum "warmwerden" versuchsweise
implementieren. Und ein bissel mit Multiplexern
experimentieren.
Sollte ich das wagen? Oder doch noch ein andeses Board
zum Üben besorgen?
Ich bin ja noch Anfängerin in FPGA
Ich will das feine Board (ist auch vergoldet!) nicht
schrotten. :-O
mfg
> Ich will das feine Board (ist auch vergoldet!) nicht> schrotten. :-O
Ich wuerde mir da nicht zuviel Sorgen machen. Es ist zwar sicherlich
moeglich sich ein board kaputt zu programmieren, aber da braucht
es IMHO eher eine bewusste Anstrengung. Zumal ja auch die Versorgung
des Boards dann genug Leistung liefern koennen muss.
Das Hauptrisiko eines Board liegt eher darin das man einen
Ausgang kurzschliesst oder mit dem Tastkopf vom Oszi abrutscht.
Olaf
~Lolita~ schrieb:> Kann frau eigendlich nen FPGA durch dauernde Versuche> kaputtt machen, nutzt der sich ab, etwa wie ein EPROM?
Die mit internem Flash kann man theoretisch kaputt schreiben aber z.B
der Max 10 spezifiziert 10000 Zyklen.
Aber man kann einen FPGA auch thermisch zerstören wenn die Kühllösung zu
schwach ist für das darauf laufende Design. Wenn viele Flipflops mit
hoher Frequenz schalten geht die Leistung deutlich hoch. Auf Evalboards
sollte die Kühllösung gut genug sein, auf eigenen Boards sollte man sich
Gedanken machen.
Blechbieger schrieb:> ~Lolita~ schrieb:>> nutzt der sich ab, etwa wie ein EPROM?>> Die mit internem Flash kann man theoretisch kaputt schreiben aber z.B> der Max 10 spezifiziert 10000 Zyklen.
Bestätigt, siehe Datenblatt-Auszug im Anhang.
> Aber man kann einen FPGA auch thermisch zerstören wenn die Kühllösung zu> schwach ist für das darauf laufende Design. Auf Evalboards> sollte die Kühllösung gut genug sein,
Da bin ich sehr skeptisch, weil die meisten Evalboards keine Kühlkörper
oder gar Fans haben. Aber da sollte der gelegentliche Test mit der
Fingerspitze auf den FPGA reichen.
Einige FPGA's haben einen internen Temperaturfühler (bspw. Xilinx
systemmonitor). Damit kann sich eine Notabschaltung 'basteln', bspw.
clocks auf reset und ausgänge auf hochohmig. Das könnte man ja als eines
der ersten Projekte umsetzen.
> Bestätigt, siehe Datenblatt-Auszug im Anhang.
Ist aber irrelevant. Wenn man am Rechner etwas entwickelt wird doch
immer zuerst direkt in den FPGA laden. Nicht nur weil das klueger ist,
sondern weil es viel Zeit spart.
> oder gar Fans haben. Aber da sollte der gelegentliche Test mit der> Fingerspitze auf den FPGA reichen.
Wenn man so ein fettes Board hat dann koennte man das ja auch ueber
Labornetzteil betreiben und die Strombegrenzung auf Werte einstellen die
20-30% ueber dem liegen was man da gerade so treibt.
Olaf
Olaf schrieb:>> Bestätigt, siehe Datenblatt-Auszug im Anhang.>> Ist aber irrelevant. Wenn man am Rechner etwas entwickelt wird doch> immer zuerst direkt in den FPGA laden.
In den FPGA muß ja nicht "in den Flash" bedeuten, Beim Max10 kann man
doch auswählen, ob man das *.sof in das flüchtige SRAM schreibt oder das
*.pof in den abnutzbaren Config-PROM.
Und wenn man es schnell will, schreibt man sich ein script was nebenher
einen counter beim Erase hochzählt, für den Überblick wieviel Pfeile man
noch im Köcher hat.
Hey, ich danke Euch für die feine Diskussion!
Huch, warum wurde trollos Post gelöscht? :-O
trollo hat ja gemeint, das auch asyncrone Designkonzepte
Wettlaufzustände (racing) zur Temperaturerhöhung führen.
Sollte man sein Design also syncron halten, oder ist das egal?
und:
was ist dann besser vhdl oder verilog zu lernen?
mfg
> Huch, warum wurde trollos Post gelöscht? :-O
Gute Frage! Naechste Frage?
> Du bist mir noch ein Foto schuldig!
[ ]
> (ist auch vergoldet!)
Soso vergueldet, das klingt zumindest teuer.
Fuer solche waghalsigen Experimente sollte man vielleicht
ein guenstigeres Zweit-Board in Erwaegung ziehen.
Ob Cyclone 2, 3 oder 4e ist da eigentlich egal.
Selbst ein alter Cyclone 2 der auf den "billigen" Boards ist,
reicht zum Experimentieren. Gibt es reichlich bei Ebay.
Den USB-Blaster dazu nicht vergessen!
Fuer den Cyclone 2 muss halt eine alte Quartus 2 Version:
V 11.1 SP 2 installieren. Fuer den Cyclone 3 die V 13.1 glaube ich.
Beim Cyclone 4 kann man sich das sparen.
Aber: Je mehr auf einem Board ist, umso mehr kann man als Anfaenger
kaputtmachen.
So ein Zaehlerchen ist ja schnell geschrieben.
Und Muxe baut Quartus auch von ganz alleine in seine
Bitstreams ein. Die LEs sind ja im Prinzip eigentlich nur
programmierbare Muxe um ein Register ergaenzt.
Beim MAX10 ist der Flash intern, d.h. wenn der ablebt
ist das ziemlich doof. Totalschaden kwasi.
Bei den Cyclonen ist der Konfigflash extern und damit
zumindest prinzipiell ersetzbar.
VHDL ist "ordentlicher" als Verilog.
Mein Tipp: VHDL.
> Selbst ein alter Cyclone 2 der auf den "billigen" Boards ist,> reicht zum Experimentieren. Gibt es reichlich bei Ebay.
Ich verweise mal auf den parallel laufenden Thread zum chinesischen
Board. Nachdem ich die Sache mit dem BRAM auf die Reihe bekommen habe
bin ich damit zufrieden. Und fuer 20-30Euro?
> Beim MAX10 ist der Flash intern, d.h. wenn der ablebt> ist das ziemlich doof. Totalschaden kwasi.
Ich hab es in meinem ganzen Leben noch nicht geschafft internen Flash in
einem Baustein auf dem Entwicklertisch zu zerstoeren. Und ich hab noch
irgendwo eine Palette von Controllern rumliegen wo der Hersteller nur
100(!) Programmiervorgaenge erlaubt. Das mag dann irgendwann
Auswirkungen auf die ueblichen 10-20Jahren Datenerhalt ueber den
gesamten industriellen Temperaturbereich haben, aber nichts was einen
Bastler irgendwie interessieren muss.
Olaf
trallalala schrieb:> Selbst ein alter Cyclone 2 der auf den "billigen" Boards ist,> reicht zum Experimentieren. Gibt es reichlich bei Ebay.> Den USB-Blaster dazu nicht vergessen!> Fuer den Cyclone 2 muss halt eine alte Quartus 2 Version:> V 11.1 SP 2 installieren.
Nein, die empfehlenswerte aktuellste Version für CycII is die V13.0 SP1.
Anbei die offizielle tabelle der Device/Software-Kombis von
https://fpgasoftware.intel.com/devices/
Wobei ich mit solchen alten Mist wie CycII nicht einsteigen würde,
sondern mit einem der von den heutogen Tools wie Quartus Prime Lite und
Qsys unterstützt. Viele CycII Tutorials setzen noch auf
Platformgenerator und Co. Software die man zum teil heute garnicht mehr
ans Laufen bekommt.
trallalala schrieb:> Beim MAX10 ist der Flash intern, d.h. wenn der ablebt> ist das ziemlich doof. Totalschaden kwasi.
Nö, das ist nur für Doofe total doof, die nicht wissen das man einen
Max10 auch aus anderen Quellen als den internen Flash configurieren
kann. Bei einem Evalboard geht dann immer noch die Konfiguration per
*.sof. Flüchtig, aber es tut.
Bild aus:
https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/hb/max-10/ug_m10_config.pdf
Und betrachtet man sich die Dual Config option mancher Max10 dann
erkennt man das man auch bei einzelnen kaputten Sektoren noch die Chance
hat den Flash zu nutzen
Hey, geil.
Ich frag mal einfach:
1.)
hat einer von Euch schon mal mit SystemC
gearbeitet?
Das ist ja ne library, wo man mit C++ Komponenten
für(vhdl?)schreiben kann, ähnlich Delphi.
Ich find da das "slot concept" gar nicht schlecht,
hab da aber noch nicht ganz durchgesehen.
Kann man mit SystemC auch für den PC proggen?
2.) Wie müßte ich nen Durchgangsprüfer konstruieren,
der sich von pn-Übergängen nicht irre machen läßt und
trotzdem zum Durchknacken/Durchklingeln taugt ohne was
zu killen?
Herzlichen Dank an alle
mfg
trallalala schrieb:>> Gute Frage! Naechste Frage?
Was hälst Du davon, wenn wir Beide unser Handle ändern?
Du solltes das Handle "trollo" benutzen, es steht Dir
einfach besser.
>> Du bist mir noch ein Foto schuldig!
Hm. Ich biete Dir nen Deal an:
Ich verzichte auf das Foto, und Du gibst mir nen bissel
Welpenschutz, genauer, Du hilfst mit dann über die
ersten Hürden hinweg wenns dann endlich soweit ist und
ich hier aus dem Mädcheninternat rauskomme.
> Fuer solche waghalsigen Experimente sollte man vielleicht> ein guenstigeres Zweit-Board in Erwaegung ziehen.> Ob Cyclone 2, 3 oder 4e ist da eigentlich egal.> Selbst ein alter Cyclone 2 der auf den "billigen" Boards ist,> reicht zum Experimentieren. Gibt es reichlich bei Ebay.> Den USB-Blaster dazu nicht vergessen!
Recht hast Du! Es wäre schade um das Board, gerad die Sendeempfänger
mit der Antennen-Mux-Mimik (MIMO) ist/sind für erste Experimente
zu schade.
> Fuer den Cyclone 2 muss halt eine alte Quartus 2 Version:> V 11.1 SP 2 installieren. Fuer den Cyclone 3 die V 13.1 glaube ich.> Beim Cyclone 4 kann man sich das sparen.> Aber: Je mehr auf einem Board ist, umso mehr kann man als Anfaenger> kaputtmachen.
Recht hast Du! (siehe oben).
Ich werde also deinen Anweisungen folgen. Es könnte sich lohnen.
> So ein Zaehlerchen ist ja schnell geschrieben.> Und Muxe baut Quartus auch von ganz alleine in seine> Bitstreams ein. Die LEs sind ja im Prinzip eigentlich nur> programmierbare Muxe um ein Register ergaenzt.> Beim MAX10 ist der Flash intern, d.h. wenn der ablebt> ist das ziemlich doof. Totalschaden kwasi.> Bei den Cyclonen ist der Konfigflash extern und damit> zumindest prinzipiell ersetzbar.
Wie lang brauchst Du als Profi etwa, um nen 8 Stufigen Zähler,
den Frequenzteiler und die alles verbindene Logik mit Torschaltung
in VHDL zu entwerfen?
> VHDL ist "ordentlicher" als Verilog.> Mein Tipp: VHDL.
Dein Tip in "Gottes Ohr" ;-P
Ich hab mir mal die Quelltexte hier angesehen:
Die Struktur ist ja so ähnlich wie Delphi! :-O
Mit Interface, Implementation und so.
Das ist ein Ding.
Also:
Was meinst du dazu?
Deine Nachrichtenhelferin. :-P