MathWorks Automatische C-Code Generierung direkt aus MATLAB-Algorithmen

Mit dem neuen MATLAB Coder von MathWorks können Ingenieure ab sofort C und C++ Code direkt aus ihren MATLAB-Algorithmen generieren.
Mit dem neuen MATLAB Coder von MathWorks können Ingenieure ab sofort C und C++ Code direkt aus ihren MATLAB-Algorithmen generieren.

Mit dem neuen MATLAB Coder von MathWorks können Ingenieure ab sofort C und C++ Code direkt aus ihren MATLAB-Algorithmen generieren.

Üblicherweise beginnt das Design von Algorithmus-intensiven Systemen für Elektronik oder Kommunikationssystemen mit MATLAB. Für die Integration in das Endprodukt werden die MATLAB-Algorithmen dann in C-Code konvertiert. Die manuelle Konvertierung von MATLAB in C kann jedoch bis zu mehrere Wochen in Anspruch nehmen, von Fehlern einmal ganz abgesehen. Jetzt können Ingenieure Entwicklungsaufgaben wie Festkomma-Design und Prototyping mit MATLAB beschleunigen und anschließend mit dem MATLAB Coder automatisch C-Code generieren.

MATLAB Coder unterstützt ein umfangreiches Set der MATLAB-Sprachfunktionen zur Entwicklung von Algorithmen, darunter Operatoren für Matrizenmathematik sowie die Verarbeitung dynamischer Arrays. Die automatische Code-Generierung aus MATLAB unterstützt mehrere Hundert Operatoren, Funktionen und System Objects, einschließlich vieler Algorithmen für die digitale Signalverarbeitung und Kommunikationstechnik.

Gleichzeitig mit MATLAB Coder führt MathWorks die neuen Produkte Simulink Coder und Embedded Coder ein. Diese beiden Tools vereinfachen die Code-Generierung für Anwender von Simulink und Stateflow, indem sie Funktionen kombinieren, die zuvor in verschiedenen MathWorks-Produkten verfügbar waren. Die neuen Produkte beinhalten die bewährte Real-Time Workshop Technologie. Sie bieten volle Unterstützung bei der Code-Generierung für Rapid Prototyping, Tests in Echtzeit sowie die Generierung von Production-Code für die Implementierung in Embedded Systeme mit integrierten Links zu Embedded Entwicklungsumgebungen.

Diese Neuerungen wurden im Rahmen der neuen Release 2011a vorgestellt. Die Version beinhaltet aber auch noch ein Update der Polyspace-Produkte für die Verifikation von Embedded Software und Neuerungen für 80 weitere Produkte.

So steigert MathWorks mit Release 2011a erneut die Performance zahlreicher MATLAB-Funktionen im Bereich der Linearen Algebra. In Anwendungen und Komponenten, die mit dem MATLAB Compiler generiert werden, lassen sich nun mithilfe der Parallel Computing Toolbox bis zu acht lokale Worker gleichzeitig nutzen.

Weitere Highlights des R2011a für MATLAB sind:

  • Ein neues Innere-Punkte-Verfahren für quadratische Programmierung in der Optimization Toolsbox.
  • Ein objektorientierter Solver für die Portfolio-Optimierung in der Financial Toolbox, der Umsatz- und Transaktionskosten berücksichtigt.
  • Engle-Granger- und Johansen-Kointegrationstests und VEC-Parameterschätzung in der Econometrics Toolbox.

Zudem führt MathWorks mit dem R2011a vier neue System-Toolboxen für MATLAB und Simulink ein und strukturiert damit das Produktangebot für die Anwender einfacher:

Die DSP System Toolbox kombiniert Funktionen des Signal Processing Blocksets und der Filter Design Toolbox.

Die Communications System Toolbox kombiniert Funktionen der Communications Toolbox und des Communications Blockset.

Die Computer Vision System Toolbox ergänzt die Funktionalität des Video and Image Processing Blocksets mit neuen Algorithmen für maschinelles Sehen.

Die Phased Array System Toolbox bietet Algorithmen und Tools für Design, Simulation und Analyse von Phased-Array-Signalverarbeitungssystemen.

Für Simulink stellt MathWorks den Signal Logging Selector vor, der Simulationsergebnisse verschiedener Modelle und Durchläufe vergleicht. Der Simulink Report Generator kann nun im Rahmen des Vergleichs mehrere Simulink-Modelle zu einem zusammenführen („merge“).

Weitere wichtige Neuerungen in Simulink umfassen:

  • FPGA-in-the-Loop, anpassbare I/O und Board Support für Xilinx-PLDs in Simulink HDL Coder, EDA Simulator Link und xPC Target.
  • Erstellung eigener Komponenten in SimDriveline mittels der Simscape-Sprache.
  • Automatische Erkennung von Überlauf und Division durch Null Designfehler im Modell mithilfe der Polyspace-Technologie in Simulink Design Verifier.