DSP System Toolbox
Entwicklung und Simulation von Streaming-Signalverarbeitungssystemen
Haben Sie Fragen? Vertrieb kontaktieren.
Haben Sie Fragen? Vertrieb kontaktieren.
Die DSP System Toolbox™ bietet Algorithmen, Apps und Scopes für das Entwickeln, Simulieren und Analysieren von Signalverarbeitungssystemen in MATLAB® und Simulink®. Sie können Echtzeit-DSP-Systeme für Kommunikation, Radar, Audio, Medizinprodukte, IoT und andere Anwendungen modellieren.
Mit der DSP System Toolbox ist es möglich, FIR-, IIR-, Multiraten-, mehrstufige und adaptive Filter zu entwickeln und zu analysieren. Sie können Signale von Variablen, Datendateien und Netzwerkgeräten für die Systementwicklung und Verifizierung streamen. Die Tools Time Scope, Spectrum Analyzer und Logic Analyzer ermöglichen zudem eine dynamische Visualisierung und Messung der Streaming-Signale. Beim Desktop-Prototyping und der Bereitstellung auf eingebetteten Prozessoren, einschließlich ARM® Cortex® -Architekturen, unterstützt die System Toolbox die Erzeugung von C/C++ Code. Sie unterstützt zudem bitgenaue Festkomma-Modellierung und HDL-Codegenerierung aus Filtern und anderen Algorithmen.
Die Algorithmen sind als MATLAB-Funktionen, System Objects™ und Simulink-Blöcke verfügbar.
In Simulink bietet die DSP System Toolbox™ eine Bibliothek von Signalverarbeitungsalgorithmen mit Blöcken für Filter, Transformationen und lineare Algebra. Diese Blöcke verarbeiten Streaming-Eingangssignale als einzelne Abtastwerte (Samples) oder als Datenblöcke von gesammelten Abtastwerten, genannt Frames. Sample-basierte Verarbeitung unterstützt kurze Latenzzeiten und Anwendungen, die eine Skalarverarbeitung erfordern. Frame-basierte Verarbeitung unterstützt höheren Durchsatz im Austausch gegen Latenz. Die System-Toolbox unterstützt sowohl Sample-basierte als auch Frame-basierte Verarbeitungsmodi.
MATLAB-Programme, die System Objects verwenden, können entweder mithilfe des MATLAB Function-Blocks oder des MATLAB-Systemblocks in Simulink-Modelle integriert werden. Für die meisten der System Objects sind außerdem Simulink-Blöcke mit identischer Funktionalität vorhanden.
Simulink-Blöcke für Signalverarbeitung können einfach- und doppeltgenaue Gleitkomma-Datentypen und Ganzzahl-Datentypen verarbeiten. Sie unterstützen außerdem Festkomma-Datentypen, wenn sie mit Fixed-Point Designer verwendet werden.
Die Signalverarbeitungsblöcke der DSP System Toolbox umfassen:
Die DSP System Toolbox in MATLAB unterstützt die Multiratenverarbeitung und damit die Abtastratenkonvertierung sowie die Modellierung von Systemen, in denen Komponenten mit unterschiedlichen Abtast- oder Taktraten zusammenarbeiten. Die Multiratenfunktionalität umfasst Multiraten- und mehrstufige Filter wie FIR und IIR-Halbband, Polyphasen-Filter, CIC-Filter und Farrow-Filter. Sie enthält außerdem Signaloperationen wie Interpolation, Heruntertaktung und beliebige Abtastratenkonvertierung.
Die DSP System Toolbox bietet eine Umgebung für die Verarbeitung von Streaming-Signalen in MATLAB. Die System Toolbox verfügt über eine Bibliothek mit Signalverarbeitungsalgorithmen, die für die Verarbeitung von Streaming-Signalen wie z. B. Single-Raten-Filter und Multiratenfilter, adaptive Filter und FFTs optimiert ist. Die System Toolbox ist ideal für Entwicklung, Simulation und Bereitstellung von Signalverarbeitungslösungen für Anwendungen aus den Bereichen Audio, Biomedizin, Kommunikation, Regelung, Seismik, Sensorik und Sprache.
Streaming-Signalverarbeitungs -Methoden ermöglichen die Verarbeitung von kontinuierlichen Datenströmen, die Simulationen oft beschleunigen können, indem Sie die Eingabedaten in Frames aufteilen und jeden Frame bei der Erfassung verarbeiten. Dank der Streaming-Signalverarbeitung in MATLAB können zum Beispiel Mehrkanalaudiodaten in Echtzeit verarbeitet werden.
Die Verarbeitung von Streaming-Signalen wird durch eine DSP Algorithmen-Bibliothek namens System Objects™ ermöglicht, um datengetriebene Algorithmen, Quellen und Senken darzustellen. Diese System Objects ermöglichen zudem das Erstellen von Streaming-Anwendungen durch die Automatisierung von Aufgaben wie Datenindizierung und Pufferung sowie die Verwaltung der Zustände von Algorithmen. System Objects können mit gewöhnlichen MATLAB-Funktionen und -Operatoren kombiniert werden.
Die Tools Time Scope und Spectrum Analyzer lassen sich zudem für die Visualisierung und Messung der Streaming-Signale nutzen.
Sie können Single-Raten, Multiraten- und adaptive Filter auf Streaming-Daten anwenden, indem Sie Algorithmen verwenden, die für Streaming-Signale und Daten optimiert sind.
Die DSP System Toolbox stellt mehr als 350 Algorithmen, die für Entwicklung, Implementierung und Validierung von Streaming-Systemen optimiert sind, zur Verfügung, egal ob diese als MATLAB-Funktion oder als MATLAB-System Objects implementiert sind. Die Algorithmen können einfach- und doppeltgenaue Gleitkomma-Datentypen verarbeiten. Die meisten Algorithmen unterstützen außerdem Ganzzahl-Datentypen und Festkomma-Datentypen, für die der Fixed-Point Designer™ benötigt wird.
In MATLAB enthält die System Toolbox folgende Algorithmentypen:
Die DSP System Toolbox in MATLAB unterstützt die Multiratenverarbeitung und damit die Abtastratenkonvertierung sowie die Modellierung von Systemen, in denen Komponenten mit unterschiedlichen Abtast- oder Taktraten zusammenarbeiten. Die Multiratenfunktionalität umfasst Multiraten- und mehrstufige Filter wie z. B. FIR und IIR-Halbband, Polyphasen-Filter, CIC-Filter und Farrow-Filter. Sie enthält außerdem Signaloperationen wie Interpolation, Heruntertaktung und beliebige Abtastratenkonvertierung.
Zur DSP System Toolbox gehören umfassende Filter Design Tools und Implementierungsalgorithmen für FIR, IIR, mehrstufige, Multiraten- und adaptive Filter. Sie können damit Tiefpass-, Hochpass-, Bandpass- und Bandstoppfilter sowie Filter mit anderen Antworttypen entwickeln. Dazu stehen Filterstrukturen wie Direct-Form-FIR, Overlap-Add-FIR, Direct-Form II mit Second Order Sections (Biquad), Kaskaden-Allpass sowie Lattice-Strukturen zur Verfügung.
Sie können Filter mithilfe der Filterbuilder App, von MATLAB-Code oder von Simulink-Blöcken entwickeln. Sie können außerdem die Festkomma-Quantisierungseffekte für FIR- und IIR-Filter analysieren und die optimale Wortlänge für die Filterkoeffizienten festlegen.
Sie können auch abstimmbare Filter entwickeln, bei denen Sie Schlüsselparameter wie Bandbreite und Amplitude während der Ausführung festlegen können.
Alle mit der DSP System Toolbox in MATLAB entwickelten digitalen Filter lassen sich auch in System-Level-Modelle in Simulink integrieren. Es gibt in der System Toolbox eine einsatzbereite Filterblock-Bibliothek für das Entwickeln, Simulieren und Implementieren von Tiefpass-, Hochpass- und anderen Filtern direkt in Simulink.
Zusätzlich zu den herkömmlichen FIR- und IIR-Filterentwicklungsalgorithmen unterstützt die DSP System Toolbox auch spezialisierte Filter und Entwurfsmethoden wie z. B. die folgenden:
Die DSP System Toolbox bietet verschiedene Methoden für adaptive Filterung in Simulink. Diese Techniken werden häufig für Anwendungen wie Systemidentifikation, Spektrumsbewertung, Entzerrung und Rauschunterdrückung verwendet. Zu solchen adaptiven Filtern gehören Filter auf Basis des kleinsten quadratischen Fehlers (LMS) oder des quadratischen Mittles (RLS), affine Projektion, Fast Transversal, Frequenzbereich, Lattice-basiert und Kalman Filter. Darüber hinaus bietet die System Toolbox Algorithmen zur Analyse dieser adaptiven Filter wie Koeffizientenverfolgung, Lernkurven und Konvergenz.
Die DSP System Toolbox enthält Funktionen für die Entwicklung und die Implementierung von Multiratenfiltern einschließlich Polyphaseninterpolatoren, Dezimatoren, Abtastratenwandlern, FIR-Halbband und IIR-Halbband Farrow-Filter und CIC-Filtern und -Kompensatoren und unterstützt mehrstufige Entwürfe. Zusätzlich bietet sie spezialisierte Analysefunktionen zur Schätzung der Berechnungskomplexität von Multiraten- mehrstufigen Filtern.
Die DSP System Toolbox bietet Scope-Blöcke und Datenprotokollierung für Visualisierungen im Zeit- oder Frequenzbereich, Messungen und die Analyse von Streaming-Signalen in MATLAB und Simulink. Die Scope-Blöcke sind mit Mess- und Statistikfunktionen ausgestattet, die dem Benutzer von branchenüblichen Oszilloskopen und Spektralanalysatoren vertraut sind.
Die System Toolbox bietet außerdem den Logic Analyzer zur Anzeige der Übergänge in Zeitbereichssignalen, was für das Debugging von Modellen, die für die HDL-Implementierung gedacht sind, hilfreich ist.
Sie können auch beliebige Diagramme zur Visualisierung von Datenvektoren erstellen, wie z. B. der Entwicklung von Filterkoeffizienten im Zeitverlauf.
Time Scope zeigt Signale im Zeitbereich an und unterstützt verschiedene Signaltypen – kontinuierliche, diskrete Signale, Signale fester und variabler Größe, Fließkomma- und Festkommadaten sowie n-dimensionale Signale für Mehrkanal-E/A-Systeme. Time Scope erlaubt Ihnen, in einer Darstellung gleichzeitig mehrere Signale anzuzeigen, die ganz unterschiedliche Dimensionen, Abtastraten und Datentypen besitzen können oder verschiedene Anzeigen für mehrere Datenkanäle im gleichen Scope-Fenster. Time Scope führt Analysen, Messungen und Statistiken einschließlich Effektivwert (RMS), Spitze-Spitze, Mittelwert und Median durch.
Der Spectrum Analyzer berechnet das Frequenzspektrum verschiedener Eingangssignale und zeigt dann das Frequenzspektrum auf einer linearen oder logarithmischen Skala an. Der Spectrum Analyzer führt Messungen wie z. B. harmonische Verzerrungsmessungen (THD, SNR, SINAD, SFDR), Messung der Intermodulationsverzerrungen dritter Ordnung (TOI), APCR-Messungen (Adjacent Channel Power Ratio), komplementäre kumulative Verteilungsfunktionen (CCDF) und Höchst- zu Durchschnittswerten Leistungsverhältnisse (PAPR) durch. Die Spektrogramm-Modusanzeige des Spectrum Analyzer zeigt, wie Sie zeitlich variierende Spektren anzeigen können und ermöglicht die automatische Spitzenerkennung.
DSP System Toolbox bietet eine weitere Familie von Visualisierungstools, die Sie verwenden können, um verschiedene Signale oder Daten anzeigen zu lassen und zu messen. Dazu gehören reelle oder komplexe Daten, Vektoren, Arrays und Frames jedes Datentyps einschließlich Festkomma, doppelte Genauigkeit oder benutzerdefinierte Dateneingabesequenz. Manche Visualisierungstools bieten eine 3D-Anzeige Ihrer Streaming-Daten oder -Signale, sodass Sie Ihre Daten im Zeitverlauf analysieren können, bis die Simulation endet.
Zusammen mit dem Fixed-Point Designer lassen sich mit der DSP System Toolbox Algorithmen für die Verarbeitung von Festkommasignalen modellieren sowie der Einfluss der Quantisierung auf das Verhalten und die Leistung solcher Systeme analysieren. Außerdem können Sie aus MATLAB-Code oder Simulink-Modellen Festkomma-C Code generieren.
MATLAB System Objects und Simulink-Blöcke in der DSP System Toolbox lassen sich für Modi des Festkommabetriebs konfigurieren, wodurch bereits vor der Hardware-Umsetzung Trade-off-Analysen und Optimierung durch Simulation mit verschiedenen Wortlängen, Skalierungen, Überlauf- und Rundungseinstellungen ermöglicht werden.
Festkommamodi werden von vielen DSP-Algorithmen, einschließlich FFT, Filter, Statistiken und lineare Algebra, unterstützt. Die DSP System Toolbox automatisiert die Konfiguration von System Objects und Blöcken für Festkommaoperationen.
Mit den Filterentwicklungsfunktionen der DSP System Toolbox und der interaktiven Filterbuilder App lassen sich Fließkommafilter entwickeln und dann auf einfache Weise mit dem Fixed-Point Designer direkt in Festkomma-Datentypen konvertieren. Dieser Workflow vereinfacht die Entwicklung und Optimierung von Festkomma-Filtern und ermöglicht die unkomplizierte Analyse von Quantisierungseffekten.
Zusammen mit MATLAB Coder™ und Simulink Coder™ lassen sich aus ihren Signalverarbeitungsalgorithmen oder Systemmodellen in MATLAB und Simulink entweder C und C++ Code generieren oder eine auf Perfomance optimierte MEX-Funktion erstellen.
Der dabei erzeugte Code eignet sich zur Beschleunigung, zum Rapid Prototyping sowie zur Implementierung und Bereitstellung oder Integration von Systemen im Rahmen der Produktentwicklung.
Sie können effektiven und kompakten ausführbaren Code sowie eine MEX-Funktion, die für die Beschleunigung rechenintensiver Algorithmen in Ihrer Simulation optimiert ist, erstellen. Sie können Ihre Gleitkomma- und Festkomma-Algorithmen einschließlich Filtern, FFTs, Statistiken und linearer Algebra in MATLAB und Simulink beschleunigen.
Um Frame-basierte Streaming-Simulationen zu beschleunigen, verwendet dspunfold DSP-Entfaltung, um die Rechenlast in der generierten MEX-Funktion über mehrere Threads zu verteilen.
Mit der DSP System Toolbox können Sie außerdem den generierten C Code aus Ihrem MATLAB Code oder Simulink-Model für die Bereitstellung und das Prototyping auf dem Desktop verwenden, indem Sie eine eigenständig ausführbare Version Ihres Algorithmus erstellen. Diese eigenständig ausführbare Version kann unter Verwendung von UDP-Komponenten immer noch direkt in MATLAB oder Simulink in Echtzeit angepasst werden. Weil diese eigenständig ausführbare Version auf einem anderen Thread läuft als der MATLAB Code oder das Simulink-Model, verbessert sie die Echtzeit-Leistung Ihres Algorithmus.
Der generierte C Code Ihrer Signalverarbeitungsalgorithmen kann in Form kompilierter Bibliothekskomponenten in andere Software, wie z. B. eigenentwickelte Simulatoren oder Standardmodellierungssoftware wie SystemC, integriert werden.
Zusammen mit dem Hardware Support Package für ARM Cortex-A oder ARM Cortex-M und Embedded Coder® können Sie mit der DSP System Toolbox optimierten C Code aus MATLAB System Objects oder Simulink-Blöcken für entscheidende DSP-Algorithmen wie z. B. FFT, FIR und Biquad-Filter generieren. Der generierte Code bietet Verwendung der optimierten Routinen für die ARM Cortex-A Ne10-Bibliothek oder die ARM Cortex-M CMSIS-Bibliothek. Ein Hauptvorteil ist die sofortige Leistungsverbesserung im Vergleich zu standardmäßigem C-Code. Sie können außerdem Codeverifizierung und Profiling mit Processor-in-the-Loop (PIL)-Tests durchführen.
Der Filter Design HDL Coder™ in MATLAB kann gemeinsam mit der DSP System Toolbox digitale Filter entwickeln und effizienten, synthetisierbaren und portablen VHDL® und Verilog®-Code zur Implementierung in FPGAs oder ASICs erstellen. Sie können für das Simulieren, Testen und Verifizieren des generierten Codes automatisch VHDL- und Verilog-Testbenches erstellen.
Der HDL Coder™ stellt gemeinsam mit der DSP System Toolbox synthetisierbare und lesbare VHDL- und Verilog-Codegenerierung für Ihren Systementwurf zur Verfügung. Ziehen Sie für eine optimale Nutzung und Leistung von FPGA-/ASIC-Ressourcen die Verwendung von Blöcken aus der DSP HDL Toolbox in Erwägung.