Intel FPGAs und SoCs

Modellierung, Verifikation und Programmierung Ihrer Algorithmen auf Intel- Geräten

Fachexperten und Hardware-Ingenieure nutzen MATLAB® und Simulink® zur Entwicklung von Prototypen- und Produktionsanwendungen und nachfolgenden Bereitstellung auf FPGA- und SoC-Geräten von Intel®.

Mit MATLAB und Simulink ist Folgendes möglich:

  • Modellierung der Hardware-Architektur auf Systemebene
  • Programmierung Ihrer FPGAs oder SoCs, ohne Code schreiben zu müssen
  • Simulation und Debugging von FPGAs und SoCs mit MATLAB- und Simulink-Produkten
  • Generierung von Produktionscode in HDL und C für die FPGA- oder SoC-Integration

„Wir haben zwar umfangreiche Erfahrung in unserem Bereich, aber nur begrenzte Erfahrung mit der FPGA-Integration. Mit Simulink und HDL Coder konnten wir uns voll auf den Entwurf intelligenter Algorithmen für unser Produkt konzentrieren anstatt darauf, wie diese Algorithmen auf einem bestimmten FPGA ausgeführt werden.“

Boris Van Amerongen, Orolia

Nutzung von MATLAB mit Intel-FPGAs und -SoCs 

Modellierung und Simulation

Mit Simulink für das Model-Based Design lässt sich die Entwicklungszeit von Anwendungen für Intel-FPGAs und -SoCs verkürzen, indem die Hardware-Implementierung auf einer hohen Abstraktionsebene modelliert und dann im Systemkontext simuliert wird. Sie können etwa zur effizienteren Ressourcennutzung Festkomma-Quantisierungen vornehmen oder zur einfacheren Programmierung von FPGAs synthetisierbaren nativen Gleitkomma-HDL-Code generieren.

Für Anwendungen wie die Signalverarbeitung, drahtlose Kommunikation, Motorsteuerung und Leistungsregelung sowie die Bild-/Videoverarbeitung generiert der HDL Coder™ aus HDL-fähigen Simulink- und MATLAB-Funktionsblöcken direkt synthetisierbaren VHDL®- oder Verilog®-Code.

Der DSP Builder for Intel FPGAs erweitert Simulink um Intel-spezifische Blöcke und ermöglicht so die Simulation auf der Systemebene und die Bereitstellung für Hardware. DSP Builder-Blöcke lassen sich zudem für die Generierung von HDL-Code mit nativen Simulink-Blöcken integrieren.

Mit dem SoC Blockset™ können Sie die Interaktion zwischen Hard- und Software für Intel-SoCs analysieren und beispielsweise die Speicherauslastung sowie durch das Scheduling oder das Betriebssystem auftretende Effekte untersuchen.

Gleitkomma- und Festkomma-Operationen nebeneinander im gleichen Entwurf. Diese trigonometrische Berechnung wurde mit den mitgelieferten Ressourcen für Intel-FPGAs als Gleitkomma-Operation implementiert.


In diesem Prototypen zur Bereitstellung eines Deep-Learning-Netzes auf einer Intel SoC-Plattform aus MATLAB heraus führt die MATLAB-Anwendung eine Inferenz aus.

Prototyping auf FPGA- und SoC-basierten Plattformen

Für den Einstieg in das Prototyping können Sie Support-Pakete zum Targeting vorkonfigurierter FPGA- und SoC-basierter Evaluierungsplattformen von Intel herunterladen. Der HDL Coder führt Sie anschließend direkt in Simulink durch die einzelnen Schritte zur Programmierung Ihres FPGAs oder SoCs, ohne dass Sie dazu auch nur eine Zeile HDL-Code schreiben müssen.

Zum Debugging von FPGAs direkt aus MATLAB und Simulink heraus stehen verschiedene Techniken zur Verfügung. Sie können IP einfügen, mit dem Sie: AXI-Register lesen und schreiben sowie große Signal- oder Bilddateien zwischen MATLAB und On-Board-Speicherplätzen übertragen; Daten interner Signale des FPGA erfassen und in MATLAB analysieren; oder Ihren Algorithmus auf einem Evaluierungskit testen können, das zusammen mit Ihrer MATLAB- oder Simulink-Testbench als FPGA-in-the-Loop läuft.


Generierung von HDL und IP-Cores zur Produktionsintegration

Die meisten Blöcke, die eine HDL-Codegenerierung unterstützen, verfügen über HDL-Blockeigenschaften, mit denen Sie individuelle Optionen für die Hardware-Implementierung wie Pipelining, Shared Resources und RAM Mapping festlegen können. In den Einstellungen für die HDL-Codegenerierung können Sie Optimierungen, Reset-Stile, Clock Enables, Namenskonventionen und vieles mehr global anpassen. Zusammen mit der Fähigkeit, Implementierungs-Architekturen in Simulink zu entwerfen, haben Sie die volle Kontrolle über Geschwindigkeits- und Flächenoptimierungen für Intel FPGAs und -SoCs.

Sie können lesbares, synthetisierbares RTL zur Integration mit dem nicht-algorithmischen Inhalt in Quartus® erzeugen. Wenn Sie das HDL Coder Support-Paket für Intel SoC installiert haben, können damit Sie einen IP-Core-Wrapper erzeugen, der verschiedene AXI-Protokolle zur Kommunikation mit dem ARM®-Prozessor und anderen Gerätekomponenten nutzt. Mit dem Embedded Coder™ Support-Paket für Intel SoC können Sie die Treiber- und Anwendungssoftware für die Programmierung des ARM-Anwendungsprozessors erstellen.

Berichte aus generiertem HDL und IP-Cores. Der IP Core Generation Report enthält das Mapping der Design-Inputs und -Outputs auf die AXI-Register und -Protokolle.


Hier wurde ein individueller Referenzentwurf mit einem Platzhalter mit I/O-Mappings definiert, in den Sie HDL-Code generieren können.

Erweiterung der unterstützten Target-Plattformen

Wenn Sie Code auf FPGA- oder SoC-basierten Plattformen bereitstellen müssen, für die es kein Support-Paket von MathWorks gibt, können Sie selbst ein Referenzdesign erstellen oder herunterladen und es in den HDL Coder laden. Solche Referenzentwürfe lassen sich mit dem SoC Blockset oder Quartus Prime entwickeln.