Ich habe absolut keinen Hintergrund in programmierbarer Logik, ich verwende hauptsächlich Mikrocontroller in meinen Projekten, aber vor kurzem musste ich mit Video arbeiten und der Mikrocontroller ist einfach zu langsam für das, was ich brauchte, also fing ich an, mit CPLDs zu spielen.
Ich konnte mit dem CPLD nur mit schematischem Design gute Ergebnisse erzielen, aber als ich nach Informationen zu CPLDs suchte, stieß ich auf viele Beispiele mit VHDL und Verilog. Ich bin neugierig, was mich dazu bringen könnte, mein Gerät in einer dieser Sprachen zu definieren. Was können sie, was der Schaltplan nicht kann? Werden sie hauptsächlich für Funktionen verwendet?
Bisher habe ich nur CPLDs verwendet, profitieren FPGA-Designs mehr von der Verwendung dieser Sprachen als CPLDs?
Das schematische Design ist nur dann sinnvoll, wenn Sie nur einige Standardmodule (Zähler, Addierer, Speicher usw.) zusammenbinden. Aber die Implementierung eines tatsächlichen Algorithmus (z. B. eines Kryptografie-Hashing-Algorithmus) ist ohne HDL (wie VHDL oder Verilog) nahezu unmöglich, da es keine Möglichkeit gibt, ein System auf Verhaltensebene mit schematischen Symbolen zu beschreiben.
Die meisten Projekte werden in HDL im Verhaltensstil durchgeführt, da sie zu komplex sind, um von Hand synthetisiert und mit logischen Grundelementen schematisch gezeichnet zu werden.
CPLDs werden im Allgemeinen für die Glue-Logik und weniger für die Verarbeitung verwendet, und im Allgemeinen ist die Logik einfach schematisch zu implementieren, daher denke ich, dass Sie Recht haben, wenn Sie vorschlagen, dass FPGA-basierte Designs mehr von der Verwendung eines HDL profitieren.
Ein paar praktische Aspekte zusätzlich zu Jays ausgezeichneter Antwort:
*Mein Lieblingsfehler in Xilinx ISE war die Unfähigkeit, vertikale Drähte auszuwählen.
Es gibt viele Vorteile einer HDL (Hardware Description Languages) als Design-Entry-Standard.
Die Beschreibung der Funktionalität kann auf einer höheren Ebene erfolgen, HDL-basierte Designs können zu einer Beschreibung einer ausgewählten Technologie auf Gate-Ebene synthetisiert werden. Ein HDL-Design ist leichter verständlich als eine Netzliste auf Gate-Ebene oder eine schematische Beschreibung und HDLs Reduzieren Sie Fehler aufgrund einer starken Typprüfung.
Die Hardwarebeschreibungssprachen VHDL und Verilog wurden für die Modellierung von Hardware mit der Absicht entwickelt, auf einer höheren Abstraktionsebene zu modellieren, die Merkmale wie Parallelität, Timing, Hierarchie, Wiederverwendung von Komponenten, Zustandsverhalten, synchrones Verhalten, asynchrones Verhalten, Synchronisation und inhärente Parallelität umfasst .
Probleme treten während der Synthese auf, wenn die Entwurfsbeschreibung einem bestimmten Prozess und einer Gate-Implementierung zugeordnet wird. Dies erfordert, dass Sie die High-Level-Funktionen von HDL nicht verwenden können – Sie müssen „synthetisierbares Verilog/VHDL“ erstellen.
Sie haben also HDL für die Synthese und HDL für die Simulation, und die synthetisierbare Teilmenge ist werkzeugspezifisch.
Sie können nicht von einer Verhaltensdesignbeschreibung zu einer Netzliste/einem Netzlayout wechseln. Sie können Ihr Design jedoch so strukturieren, dass es Verhaltenskomponenten enthält, die auch einen synthetisierbaren Aspekt haben, der miteinander verglichen werden kann. Sie beginnen mit dem Verhalten und sobald das funktioniert, schreiben Sie es für die Synthese um (was eine Teilmenge ist). Sie gehen vom Allgemeinen zum Spezifischen und bauen nebenbei Prüfstände auf.
Ein weiterer Vorteil ist, dass HDLs dieselben Vorteile wie normale Programmiersprachen haben, indem sie in Standard-Versionskontrollsystemen verwendet werden können, um Änderungen zu untersuchen usw.
Ergänzend zu dem bereits Gesagten: Textdarstellungen sind einfach viel handlicher, gerade in großen Projekten. Sie können (wenn auch mit großen Schwierigkeiten) jedes synthetisierbare HDL in ein Schaltbild umwandeln, aber mit Hunderten von Zeilen reinem Text ist es einfacher zu arbeiten als mit Hunderten von Schaltplanelementen.
David
Markt
Stanri
user_1818839
Markt
Stanri