HDL Coder

 

HDL Coder

Generierung von VHDL- und Verilog-Code für FPGA- und ASIC-Entwürfe

Hardware-Architekturdiagramm für einen Pulserkennungssalgorithmus.

High-Level-Design der Hardware

Entwerfen Sie Ihr Subsystem: Wählen Sie aus mehr als 300 HDL-fähigen Simulink-Blöcken und MATLAB-Funktionen und fügen Sie Stateflow-Diagramme, Simscape-Modelle und Deep-Learning-Netzwerke hinzu. Sie können das Hardware-Verhalten Ihres Designs simulieren, alternative Architekturen untersuchen und synthetisierbaren VHDL- oder Verilog-Code mit Festkomma- oder Fließkomma-Datentypen oder einer Kombination aus beiden erzeugen.

Diagramm zur Veranschaulichung synthetisierbarer HDL-zu-FPGA- und ASIC-Workflows.

Herstellerunabhängige Ausrichtung

Generieren Sie synthetisierbaren RTL-Code, der für FPGAs von führenden Anbietern optimiert ist, und verwenden Sie ihn auch für ASICs. Wiederverwendung derselben Modelle für die Prototyp- und Produktions-Codegenerierung.

Diagramm der Geschwindigkeit im Verhältnis zur Fläche für eine Reihe von Implementierungsoptionen. Vollparallele und Voll-Pipeline-Architekturen für einen FIR-Filter.

Designoptimierung

Erkunden Sie eine Vielzahl von Hardware-Architekturen und Festkomma-Quantisierungsoptionen, bevor Sie sich auf eine RTL-Implementierung festlegen. Verwenden Sie Optimierungstechniken bei der Synthese auf hoher Abstraktionsebene wie Ressourcensharing, Pipelining und Verzögerungsausgleich, die sich effizient auf Bausteinressourcen wie Logik, DSPs und RAMs abbilden lassen.

Entwicklungsplatinen mit Xilinx-, Microchip- und Intel-FPGAs.

FPGA-basierte Bausteine

Generieren Sie RTL-Code, der effizient auf AMD-, Intel- und Microchip-FPGA- sowie SoC-Bausteinen abgebildet wird. Ordnen Sie Eingänge und Ausgänge mithilfe von Hardware-Support-Paketen für gängige Platinen den E/A- und AXI-Registern auf Bausteinebene zu oder definieren Sie Ihr eigenes Referenzdesign.

Prozessschritte bei der Anpassung von MATLAB- und Simulink-Algorithmen an ASICs.

ASIC-Workflow

Entwickeln und verifizieren Sie Ihre Architektur und Hardware-Funktionalität auf hoher Abstraktionsebene im Kontext Ihres gemischten Analog-, Digital- und Softwaresystems. Generieren Sie RTL mit hoher Ergebnisqualität (QoR) oder generieren Sie synthetisierbares SystemC für die Verwendung mit Cadence® Stratus HLS.

Ein Standbild einer Armaturenbrettkamera mit einem Simulink-Modell für die Videoverarbeitung und einem Logikanalysator.

Anwendungsentwicklung

Entwerfen Sie Kommunikationsalgorithmen mit Subsystemen und Blöcken aus der Wireless HDL Toolbox, oder entwickeln Sie Streaming-Implementierungen von Bildverarbeitungsalgorithmen mit der Vision HDL Toolbox. Implementierung komplexer Motorsteuerungssysteme mit geringer Latenzzeit. 

Ein übergeordnetes Arbeitsablaufdiagramm für die automatische Frame-to-Sample-Konvertierung.

Hardware-Entwicklung

Entwickeln Sie Algorithmen, die effizient mit Datenströmen arbeiten. Fügen Sie Details der Hardware-Architektur mit HDL-fähigen Simulink-Blöcken, benutzerdefinierten MATLAB-Funktionsblöcken und Stateflow-Diagrammen hinzu.

Speedgoat-FPGA-I/O-Karten, die einem Simulink-Modell mit einem FPGA Block überlagert sind.

Echtzeit-Simulation und -Tests

Verwenden Sie die programmierbaren FPGA-I/O-Module von Speedgoat mit dem HDL Workflow Advisor, und führen Sie die Simulation mithilfe von Simulink Real-Time durch. Oder greifen Sie auf zusätzliche FPGA-I/O-Module von dSPACE und NI zurück. Generieren Sie nativen Gleitkomma-HDL-Code, um den Workflow für hochpräzises Prototyping zu vereinfachen.

Frühzeitige Verifikation

Mit dem HDL Verifier stellen Sie sicher, dass Ihr generiertes RTL im Systemkontext wie gewünscht funktioniert. Verifizierung des generierten HDL-Codes mit MATLAB und Simulink Testbenches unter Verwendung der Co-Simulation mit führenden HDL-Simulatoren. Verwenden Sie FPGA-in-the-Loop-Tests, um die Implementierung Ihrer Entwicklung auf FPGA-Entwicklungsplatinen zu überprüfen.

„Simulink erleichtert die Kommunikation zwischen Systemarchitekten und Hardware-Entwicklern. Es ist wie eine gemeinsame Sprache, die es uns ermöglicht, Wissen, Ideen und Designs untereinander auszutauschen. Simulink und HDL Coder gestatten es uns, uns auf die Entwicklung unserer Algorithmen und die Optimierung unseres Designs mittels Simulation zu konzentrieren anstatt auf VHDL-Syntax und Programmierregeln.“