Das SoC Blockset™ bietet Simulink®-Blöcke und Visualisierungs-Tools zur Modellierung, Simulation und Analyse von Hardware- und Software-Architekturen für ASICs, FPGAs, Systeme auf einem Chip (SoC) sowie Multicore-Mikrocontrollern/-Mikroprozessoren.
Mit dem SoC Blockset können Sie Speicher und interne und externe Konnektivität sowie Scheduling und Betriebssystemeffekte simulieren, indem Sie generierten Testverkehr oder reale E/A-Daten verwenden. Sie können rasch unterschiedliche Systemarchitekturen erkunden, die Schnittstellenkomplexität abschätzen und so Entscheidungen zur Partitionierung von Hardware und Software treffen, sowie die Softwareleistung und Hardwareausnutzung bewerten.
Zusammen mit dem Embedded Coder und HDL Coder implementiert das SoC Blockset Anwendungen für Xilinx®- und Intel®-FPGAs, programmierbare SoCs wie Xilinx UltraScale+™ MPSoC und RFSoC sowie Multicore-Mikrocontroller/-Mikroprozessoren wie Texas Instruments C2000™ MCUs.
Jetzt beginnen:
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
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.
Speicher-Transaktionen
Modellieren Sie DDR-Speicher und simulieren Sie Shared Memory-Transaktionen zwischen Hardware-Logik und eingebetteten Prozessoren. Konfigurieren Sie DMA-Speicher-Controller zur Arbitration des Speicherverkehrs. Berücksichtigen Sie in der Simulation Speicherlatenz und -durchsatz.
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.
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.
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.
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.
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.
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.
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 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.
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.
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.
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.
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.
Modellierung von Peripheriegeräten
Führen Sie Simulationen im geschlossenen Regelkreis durch, die das Verhalten von Peripheriegeräten wie ADCs und PWMs berücksichtigen. Die Modelle können ADC-PWM-Synchronisierung sowie -Latenz berücksichtigen.
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.