SoC Blockset

 

SoC Blockset

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

Jetzt beginnen:

Simulieren und Analysieren von SoC-Architekturen

Entwickeln und kombinieren Sie Software-Algorithmen, Hardware-Logik, Speichersysteme und E/A-Geräte in Ihrer SoC-Anwendung. Bewerten Sie Architekturalternativen, bevor Sie diese auf Hardware anwenden.

Analysieren des Algorithmus-Ressourcenverbrauchs

Analysieren Sie Simulink-Modelle oder MATLAB-Funktionen zur Erstellung von Berichten, die die Anzahl der zur Implementierung nötigen arithmetischen Operatoren zusammenfassen. Verwenden Sie diese Berichte, um verschiedene Architekturen zu vergleichen, Kompromisse beim Design einzugehen und die Partitionierung von Hardware/Software zu untersuchen.

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

Speicher-Transaktionen

Modellieren und Simulieren von Transaktionen mit gemeinsam genutztem Speicher zwischen Hardware-Logik und eingebetteten Prozessoren. Konfigurieren von DMA-Speicher-Controllern zur Vermittlung des Speicherverkehrs. Berücksichtigung von Speicherlatenzzeit und -durchsatz in der Simulation.

Ausführung der Aufgabe

Modellieren der Aufgabenausführung in einem eingebetteten Prozess, wie er vom Betriebssystem (OS) verwaltet wird. Simulieren der Aufgaben mit genauer Zeitplanung, unter Berücksichtigung des Kontextwechsels, des Vorkaufs von Aufgaben sowie der Ausführungsdauer. Modellieren von Software-Unterbrechungen, die durch FPGA-Fabric erzeugt werden. Anwenden von Statistiken zur Simulation der nicht-deterministischen Aufgabendauer oder Anwenden von Aufgabendauern, die während der Hardware-Tests aufgezeichnet wurden.

Visualisieren Sie Aufgabenvorkauf, Kontextwechsel und Ausführungsdauer mit Zeitdiagrammen.

SoC-Modellvorlagen

Sie können komplette Modelle von SoC-Anwendungen von Grund auf nach einem Schritt-für-Schritt-Ansatz bauen, oder aber Sie beginnen mit vordefinierten Vorlagen für die Hardware/Software-Zusammenarbeit, einschließlich Vorlagen für Vision- und Kommunikationsanwendungen.

Erstellen von Modellen für SoC-Anwendungen unter Verwendung vordefinierter Modellvorlagen.

Simulation mit aufgezeichneten E/A-Daten

Aufzeichnen von Hardware-Peripheriequellen wie RF-Signalen oder HDMI-Daten und anschließende Wiedergabe von Aufzeichnungen als Quellen in Simulationen oder Hardware-Tests.

Wiedergabe von Aufzeichnungen als Quelle für die Simulation.

Analysieren der Systemleistung

Evaluieren der Speicherleistung und Aufgabenausführung durch Simulation sowie Durchführen des On-Device-Profiling.

Analyse der Aufgabenausführung

Simulieren des Softwaresystems von SoC-Anwendungen durch Ausführen von Simulink-Modellen, die zeit- und ereignisgesteuerte Aufgaben enthalten. Visualisieren des Zeitpunkts der Aufgabenausführung, des Vorkaufs, der Ratenüberschreitungen, -abfälle und der Kernnutzung. Wiederholen Sie Aufgabenausführungen in der Simulation unter Verwendung von Aufgaben-Timing-Daten, die aus früheren Simulationen oder direkt von SoC-Geräten erfasst wurden.

Durchführen einer statistischen Analyse der Aufgabenausführungszeiten.

DDR-Speicherleistung

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

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

On-Device-Überwachung der Speicherleistung und Erstellung eines Aufgabenausführungsprofils

Messen der Speicherleistung und Aufgabenausführung auf einem SoC-Gerät und anschließendes Visualisieren und Analysieren dieser Messungen, um ein SoC-Modell so abzustimmen, dass es Ihren Anforderungen an die Systemleistung entspricht. Interagieren Sie in Echtzeit mit SoC-Geräten aus MATLAB oder von Ihrem Simulink-Prüfstand aus.

Messen Sie die Aufgabenausführung mit dem Code Instrumentation Profiler.

Bereitstellen auf SoC- und FPGA-Geräten

Generieren von Referenzdesigns und RTL-Code für programmierbare Logik. Generieren von C/C++ Code für Prozessoraufgaben. Bereitstellen kompletter Hardware/Software-Anwendungen für Entwicklungsboards.

Erstellen eines Embedded-Software-Projekts

Bei Verwendung mit Embedded Coder® generiert das SoC Blockset aus den Modellen komplette Embedded-Software-Projekte, einschließlich Scheduler, Software-Tasks und Integration von E/A-Gerätetreibern.

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

Erstellen von Referenzdesigns

Generieren von Referenzdesigns für programmierbare Logik. Referenzdesigns sind konfigurierte Netzwerke von IP-Cores mit Daten- und Steuerpfaden, die mit externen Speichern und Softwareanwendungen verbunden werden können. Das SoC Blockset wird mit den Designtools von Xilinx und Intel verbunden, um Bitstreams zu erzeugen und dann FPGA- und SoC-Boards zu programmieren.

Generieren von Referenzdesigns zur Verwendung mit dem HDL-Algorithmus IP, der mit HDL Coder generiert wurde.

Ausrichtung auf COTS-Boards und Kunden-Boards

Implementierung von Hardware/Software-Anwendungen auf unterstützten Hardware-Kits, einschließlich Xilinx Zynq UltraScale+ MPSoCs und RFSoCs, Zynq-7000 SoCs und Intel Cyclone und Arria SoC FPGAs. Ausrichtung auf Boards mit Hardware-Unterstützungspaketen oder Aufbau von Unterstützung für benutzerdefinierte Boards.

Galerie erkunden (4 Bilder)

Simulieren und Bereitstellen auf Mikrocontrollern und Mikroprozessoren

Entwickeln von Softwarealgorithmen unter Einbeziehung der Auswirkungen von Betriebssystem- und Hardwarekomponenten und anschließender Bereitstellung auf Hardware.

Periphere Modellierung

Durchführen von Simulationen mit geschlossenem Regelkreis, die das Verhalten von Peripheriegeräten wie ADCs und PWMs einbeziehen. Modelle können die ADC-PWM-Synchronisierung und Latenzzeit berücksichtigen.

Verwenden der ADC-, PWM- und Task-Manager-Blöcke zur Modellierung des Auslöseverhaltens

Modellierung der Multiprozessor-Architektur

Partitionieren von Algorithmen zwischen mehreren Prozessoren für größere Designmodularität und bessere Leistung. Modellieren von Multiprozessor-Ausführung und Interprozessor-Datenkommunikation.

IPC-Kanäle simulieren die Kommunikation zwischen Bare-Metal-Prozessen, die auf separaten Prozessoren ausgeführt werden.

Bereitstellen auf Mikrocontroller- und Mikroprozessorplatinen

Durchführen von Rapid Prototyping auf Hardware-Boards durch Generierung von Software-Anwendungen mit Embedded Coder. Führen Sie eine On-Device-Profilierung zur Feinabstimmung von Anwendungen durch.

Bereitstellen von Softwareanwendungen auf dem TI Delfino F28379D LaunchPad