telos® VHDL Entwicklung

Unser Unternehmen programmiert bereits seit Jahrzehnten in VHDL, der Very High Speed Integrated Circuit Hardware Description Language Logikbausteine von Altera, Xilinx, Actel und anderen.

Aktuelle FPGAs von Altera, XILINX, Actel und anderen bieten geradezu unendliche Möglichkeiten der Nutzung. Mehrere CPUs plus arbiträre Logik auf einen Baustein zu vereinen ist kein Problem.

Aber auch für weniger komplexe Systeme oder Baugruppen mit geringem Platzangebot gibt es passende FPGAs. Hier bietet sich zum Beispiel die iCE-Serie von Lattice an, deren Bausteine auch in geringen Stückzahlen für weniger als 2€ pro Stück erhältlich sind und die bereits zum Beispiel integrierte I2C- und SPI-Cores besitzen.

VHDL Entwicklung

Historisch gesehen sind field-programmable gate arrays FPGAs flexible, aber sehr teure Lösungen für die Umsetzung komplexer Schaltlogik, die zumeist in Kleinstserien oder auf Prototypen und häufig als Vorstufe für IC-Masken Verwendung fanden.
Mit dem rasanten Preisverfall der ICs von Altera und Co und dem immer mächtiger werdendem Leistungsumfang solcher Chips hat sich dies grundlegend gewandelt.
FPGAs kommen dort zum Einsatz, wo Microcontroller entweder nicht schnell bzw. zeitsynchron genug reagieren können oder eine Parallelverarbeitung von Daten erforderlich ist. Beispielsweise nutzen unsere I2C-Produkte wie Tracii XL 2.0 diese Technologie.

Durch die Verwendung von VHDL als Hardwarebeschreibungssprache lassen sich auch komplexe Probleme mit vertretbarem Zeitaufwand lösen. Als Entwicklungsumgebungen kommen hierbei sowohl Quartus (Altera) als auch, je nach Anforderungen, Vivado von Xilinx bzw. Libero von Actel zum Einsatz.

Ihre Individuelle CPU

Leistungsfähige EPLDs bieten faszinierende Möglichkeiten. Mit Hilfe von Altera Bausteinen der Cyclone-, Arria– und Stratixfamilie lassen sich so z.B. mehrere Prozessoren auf einem einzigen FPGA implementieren. Dabei handelt es sich nicht um bescheidene CPUs, sondern um den performanten NIOS Prozessor, der sehr genau auf die Applikation skaliert werden kann.

Testbenches

Eine immer größere Bedeutung bei der steigenden Komplexität von VHDL-Designs kommt auch der Entwicklung von Testbenches zu.

Mit deren Hilfe wird die Funktionalität des VHDL-Codes verifziert und das Design überprüft, noch bevor es zum ersten Mal auf einem FPGA zum Einsatz kommt. Zudem kann der Code damit während der Enwicklung fortlaufend validiert werden.

telos implementiert zusätzlich zum eigentlichen VHDL-Code auch entsprechende Testcases, die mit leistungsfähiger Simulationssoftware, zum Beispiel mit Modelsim (für Altera-Designs) oder Active-HDL (für Lattice-Designs) als voll- oder halbautomatische Tests ausgeführt werden können.

Dabei kommt es vor allem auf die Erstellung von geeigneten Stimuli an, die möglichst alle Testfälle abdecken.

Dauerhaft gespeicherte Konfiguration

Bemerkenswert ist, daß inzwischen auch Bausteine angeboten werden, die ihren Inhalt persistent halten und deshalb ohne ein Laden der Logik beim Systemstart (z.B. von externem EPROM oder Flash) auskommen.

Diese Flash-FPGAs (z.B. von Actel und Altera) können auch in sicherheitskritischen Anwendungen zum Einsatz kommen. Es ist hier ausgeschlossen, daß bedingt durch äußere Störeinflüsse Bits innerhalb der SRAM-Zellen wie bei herkömmlichen FPGAs ihren Sollwert verlieren können und so die gesamte Konfiguration unbrauch barwird.

Sichere Updates

Ein weiterer Vorteil ist, daß man diese FPGAs auch im Feld mit Hilfe einer verschlüsselten FPGA-Konfiguration aktualisieren kann, ohne daß Dritte den Code in duplizierten Schaltungen verwenden können, da ein solches Update nur auf den FPGAs mit dem entsprechenden (im Vorwege programmierten) Schlüssel lauffähig ist.

Altera bietet zudem mit der Alteras Cyclone® III LS Familie auch Lösungen an, bei denen die Konfigurationsdaten zwar in einem externe Flash vorgehalten werden, die Daten aber mit einem 256 bit langem Schlüssel mitttels AES verschlüsselt sind.