SoC Blockset

 

SoC Blockset

Entwurf, Bewertung und Implementierung von SoC-Hardware- und Software-Architekturen

Jetzt beginnen:

Simulation und Analyse von SoC-Architekturen

Entwickeln und kombinieren Sie Software-Algorithmen, Hardware-Logik, Speichersysteme und E/A-Geräte zu Ihrer individuellen SoC-Anwendung. Bewerten Sie Architektur-Alternativen vor der Bereitstellung auf Hardware.

Entwicklung von SoC-Architekturen nach Spezifikationen

Sie können mit einer funktionalen Architektur Ihrer Anwendung in System Composer™ beginnen und dann funktionale Komponenten in die Hardware-Architektur des SoC (Prozessor), die programmierbare Logik (FPGA) und den Speicher einfügen. Danach simulieren Sie das Verhalten der Anwendung als Ganzes und verifizieren deren funktionale Korrektheit. Diese Implementierung lässt sich dann bewerten, um über die Aufteilung ihrer funktionalen Komponenten in Hardware und Software zu entscheiden.

Analysieren des Ressourcenverbrauchs von Algorithmen

Mit System Composer fügen Sie den Komponenten der SoC-Hardware-Architektur funktionale Komponenten hinzu.

Analysieren des Ressourcenverbrauchs von Algorithmen

Durch Analyse von Simulink-Modellen oder MATLAB®-Funktionen erzeugen Sie Berichte, die einen Überblick über die zur Implementierung erforderlichen arithmetischen Operatoren geben. Mithilfe dieser Berichte können Sie verschiedene Architekturen für FPGA-, ASIC- und SoC-Geräte vergleichen, Design-Tradeoffs abwägen und die Hardware/Software-Partitionierung zu untersuchen.

Anzeigen der geschätzten Anzahl und Art von Operatoren, die zur Implementierung von MATLAB-Funktionen oder Simulink-Modellen benötigt werden

Anzeigen der geschätzten Anzahl und Art von Operatoren, die zur Implementierung von MATLAB-Funktionen oder Simulink-Modellen benötigt werden.

Task-Ausführung

Modellieren Sie die Task-Ausführung von Embedded Software so, wie sie vom Betriebssystem (OS) verwaltet wird. Simulieren Sie Tasks mit deren genauen Timing und berücksichtigen Sie dabei Kontext-Switching, Task Preemption sowie Ausführungsdauer. Modellieren Sie durch die FPGA-Fabric erzeugte Software-Interrupts. Nutzen Sie Statistiken zur Simulation der Ausführungsdauer nicht-deterministischer Tasks oder setzen Sie dazu Ausführungsdauern ein, die während Hardware-Tests aufgezeichnet wurden.

Visualisierung von Task Preemption, Kontext-Switching und Ausführungsdauer in Timing-Diagrammen.

Visualisierung von Task Preemption, Kontext-Switching und Ausführungsdauer in Timing-Diagrammen.

Modellvorlagen für SoCs

Sie können komplette Modelle von SoC-Anwendungen nach einem Schritt-für-Schritt-Ansatz aufbauen oder mit vorgefertigten Vorlagen für das Hardware/Software-Coprocessing beginnen, darunter auch Vorlagen für Vision- und Kommunikations-Anwendungen.

Erzeugung von Modellen für SoC-Anwendungen mithilfe vordefinierter Modellvorlagen.

Erzeugung von Modellen für SoC-Anwendungen mithilfe vordefinierter Modellvorlagen.

Simulation mit aufgezeichneten E/A-Daten

Zeichen Sie Hardware-Peripheriequellen wie HF-Signale oder HDMI-Daten auf und spielen Sie diese anschließend als Quellen für Simulationen oder Hardware-Tests wieder ab.

Wiedergabe von Aufzeichnungen als Quelle für Simulationen.

Wiedergabe von Aufzeichnungen als Quelle für Simulationen.

Analyse der Systemleistung

Bewertung von Speicherleistung und Task-Ausführung in Simulationen sowie On-Device-Profiling.

Analyse der Task-Ausführung

Simulieren Sie das Softwaresystem von SoC-Anwendungen durch Ausführung von Simulink-Modellen, die timer- und ereignisgesteuerte tasks enthalten. Visualisieren Sie dabei Ausführungs-Timing, Task Preemption, Taktüberläufe, ausgelassene Tasks und Kernauslastung. Spielen Sie gespeicherte Task-Ausführungen in Simulationen wieder ab und nutzen Sie dafür während früherer Simulationen aufgezeichnete oder direkt von SoC-Geräten erfasste Timing-Daten.

Analyse der Task-Ausführung

Der Task Execution Report führt die Mindest-, Maximal- und typische Ausführungszeit von Tasks sowie Statistiken zur Auslastung von Prozessorkernen auf.

Leistung von DDR-Speicher

Analysieren Sie die Speicherbandbreite von Systementwürfen. Visualisieren Sie Simulationsergebnisse und Bandbreiten-Metriken vor der Bereitstellung auf dem SoC-Gerät.

Simulation von Shared Memory-Transaktionen und Analysieren der Leistung.

Simulation von Shared-Memory-Transaktionen und Analysieren der Leistung.

On-Device-Überwachung der Speicherleistung und Erstellung von Task-Ausführungsprofilen

Messen Sie die Speicherleistung und Task-Ausführung auf SoC-Geräten und visualisieren Sie dann die Messergebnisse zur Abstimmung Ihres SoC-Modells auf Einhaltung von Leistungsanforderungen. Sie können dabei aus MATLAB oder von Ihrem Simulink-Prüfstand aus in Echtzeit mit SoC-Geräten interagieren.

Messung der Task-Ausführung mit dem Code Instrumentation Profiler.

Messung der Task-Ausführung mit dem Code Instrumentation Profiler.

Bereitstellung auf SoC- und FPGA-Geräten

Generierung von Referenzdesigns und RTL-Code für programmierbare Logik. Generierung von C/C++-Code für Prozessor-Tasks. Bereitstellung kompletter Hardware/Software-Anwendungen auf Entwicklerboards.

Generierung eines Embedded-Software-Projekts

Zusammen mit dem Embedded Coder® generiert das SoC Blockset aus Modellen vollständige Embedded-Software-Projekte mit Scheduler, Software-Tasks und Integration von E/A-Gerätetreibern.

Generierung vollständiger Embedded-Software-Projekte aus Modellen.

Generierung vollständiger Embedded-Software-Projekte aus Modellen.

Generierung von Referenzdesigns

Generierung von Referenzdesigns für programmierbare Logik. Referenzdesigns sind konfigurierte Netzwerke von IP-Cores mit Daten- und Reglerpfaden, die mit externem Speicher und Softwareanwendungen verbunden werden können. Das SoC Blockset kann mit den Designtools von Xilinx und Intel verbunden werden, erzeugt dann Bitstreams und programmiert dann FPGA- und SoC-Boards.

Generierung von Referenzdesigns zur Nutzung mit dem vom HDL Coder generierten HDL-Algorithmen-IP.

Generierung von Referenzdesigns zur Nutzung mit dem vom HDL Coder generierten HDL-Algorithmen-IP.

Targeting von handelsüblichen Boards und Kunden-Boards

Implementieren Sie Hardware/Software-Anwendungen auf unterstützten Hardware-Kits wie Xilinx Zynq UltraScale+ MPSoCs und RFSoCs, Zynq-7000 SoCs sowie Intel Cyclone und Arria SoC-FPGAs. Zum Targeting von Boards stehen Hardware-Unterstützungspakete bereit, Sie können aber auch Unterstützung für benutzerdefinierte Boards selbst aufbauen.

Galerie ansehen (4 Bilder)

Ausgewählte Anwendungen

Entwickeln und stellen Sie Hardware-/Softwareanwendungen für drahtlose Kommunikation, Video- und Bildverarbeitung und Steuerungen bereit.

Drahtlose Kommunikation und Radar

Bewerten Sie Anwendungen für Radar und drahtlose Kommunikation unter Berücksichtigung des Einflusses der Prozessor-, FPGA- und DDR-Speicher-Subsysteme. Für Xilinx Zynq UltraScale+ MPSoC- und RFSoC-Geräte stehen vordefinierte Modelle zur Simulation von Hardware-/Softwareanwendungen bereit, die Sie auf Entwicklerboards bereitstellen und dann die Datenkonverter von RFSoC-Geräten konfigurieren können.

Nutzung des SoC Blockset zur Modellierung, Simulation und Bereitstellung von Anwendungen wie Range-Doppler-Radars für Xilinx UltraScale+ RFSoCs.

Video- und Bildverarbeitung

Für datenintensive Anwendungen aus der Video- und Bildverarbeitung müssen Entwickler Anforderungen and die Speicherbandbreite prüfen, um sicherzustellen, dass die Anforderungen der Anwendung an Bildraten und Bildgrößen eingehalten werden. Mit dem SoC Blockset modellieren Sie externen DDR-Speicher und bewerten die Speicherbandbreite dynamisch in Simulationen. Danach generieren Sie mit HDL Coder™ das vollständig konforme AXI4-Interface-IP.

Video- und Bildverarbeitung

Modellierung einer Videoanwendung mit Blöcken aus dem SoC-Blockset

Motorsteuerung und Leistungsregelung

Implementieren Sie Echtzeit-Steuerungen für Motoren und Leistungselektronik auf Multicore-Mikrocontrollern oder SoCs durch Partitionierung der Steueraufgaben auf verschiedene Recheneinheiten. Simulieren Sie die ADC-/PWM-Peripherie-/Interprozessor-Kommunikation mit der Anlage und stellen Sie Ihren Code auf Prototypen-Systemen bereit.

Motorsteuerung und Leistungsregelung

Partitionieren Sie Algorithmen zwischen mehreren Prozessoren.

Simulation und Bereitstellung auf Mikrocontrollern und Mikroprozessoren

Entwicklung Sie Softwarealgorithmen unter Berücksichtigung des Einflusses von Betriebssystem- und Hardware-Komponenten und stellen Sie sie dann auf Hardware bereit.

Modellierung von Multiprozessor-Architekturen

Partitionieren Sie Algorithmen zwischen mehreren Prozessoren zur Erhöhung von Designmodularität und Leistung. Modellieren Sie die Multiprozessor-Ausführung und Interprozessor-Datenkommunikation.

Bereitstellung auf Mikrocontroller- und Mikroprozessor-Boards

Rapid Prototyping auf Hardware-Boards durch Generierung von Software-Anwendungen mit Embedded Coder. Zur Feinabstimmung von Anwendungen führen Sie ein On-Device-Profiling durch.

Bereitstellung von Software-Anwendungen auf dem TI Delfino F28379D LaunchPad.

Bereitstellung von Software-Anwendungen auf dem TI Delfino F28379D LaunchPad.