Renesas Electronics Synergy - der Entwicklungszeit zu Leibe gerückt

Haben früher die Hardware-Entwickler entschieden, mit welchem Controller sie am besten ihre spezielle Applikation implementieren konnten, sind es heute vielmehr die Software-Komponenten, die die Auswahl treiben. Renesas Electronics will dieser Entwicklung mit der Synergy-Plattform gerecht werden.

Renesas hat bei seiner Synergy-Familie den Schwerpunkt ganz eindeutig auf die Software gelegt. Bislang ist über die eigentlichen Controller noch gar nicht viel bekannt gegeben worden, außer dass die Plattform sowohl Cortex-M0+- als auch Cortex-M4-basierte Controller umfassen wird. Derzeit sind für Synergy vier Serien geplant: S1, S3, S5 und S7. Die S1-Controller basieren auf dem Cortex-M0+-Kern und sind mit bis zu 32 MHz getaktet. Die restlichen Familien basieren auf dem Cortex-M4-Prozessor und weisen Taktraten von bis zu 100, 200 oder 300 MHz auf. Die Details zu den Komponenten sollen noch im Oktober bekanntgegeben werden.

Soweit zur Hardware, viel interessanter ist das dazugehörige Software-Paket. Untersuchungen seitens UBM Tech haben ergeben, dass Entwickler den Großteil ihrer Zeit mit dem Hardware-Design, den Treibern, der Entwicklung der Middleware und der Integration eines RTOS und Connectivity-Optionen verbracht haben. Auf jede dieser Software-Komponenten entfällt ein immer größerer Teil der gesamten Entwicklungszeit, für die eigene Applikation, mit der man sich differenzieren könnte, bleibt immer weniger Zeit übrig.

Also hat sich Renesas zur Aufgabe gesetzt, diesen Prozess umzukehren und zwar indem das Unternehmen genau die erwähnten Aufgaben zum Großteil selbst übernimmt. »Indem wir viele dieser Aufgaben, die überhaupt keine Möglichkeit zur Differenzierung am Markt bieten, übernehmen, können Entwickler mit der Synergy-Plattform viel mehr Zeit für die innovativen Aspekte ihres Produkts aufwenden«, erklärt Joachim Hüpper, Senior Principal Engineer von Renesas Electronics Europe. Und weiter »Das kennzeichnende Merkmal von Synergy ist die qualifizierte und verifizierte Software, die die Vorgaben kommerzieller Standards erfüllt, die kompatibel mit allen Synergy-MCUs sind und die wir zur Verfügung stellen.« Die Software-Komponenten sind laut Hüpper nicht nur für die Synergy-MCUs optimiert und integriert, sondern wurden von Renesas auch harten Tests unterzogen, sowohl hinsichtlich Leistungsfähigkeit als auch Zuverlässigkeit. Renesas verkauft, wartet und bietet eine direkte Unterstützung für die Software, das Unternehmen übernimmt sogar die Garantie, dass die Software genau so funktioniert wie es in den Datenblättern steht. Hüpper: »Das ist ein absolutes Novum in der MCU-Welt.« Einige Software-Komponenten durchliefen außerdem Tests, die die Konformität zu verschiedenen Industriestandards garantiert.

Bilder: 3

Renesas' Synergy Software Package (SSP)

Renesas' Synergy Software Package (SSP)

Wie sehen also die Software-Komponenten im Einzelnen aus? Die Basis stellt das Synergy Software Package (SSP) dar. Das SSP wird mit jeder MCU ausgeliefert und ist im Preis der MCU schon inbegriffen. Das SSP umfasst wichtige Software-Komponenten, die in den meisten embedded Anwendungen und IoT-Applikationen für die Basissystemfunktionen wichtig sind. Dazu zählt das ThreadX-RTOS von Express Logic als Basis des SSPs. Außerdem umfasst es die X-Ware-Middleware und Stacks von Express Logic (siehe unten), die auf die Renesas-MCUs portiert und zusammen mit bausteinspezifischen Software-Komponenten von Renesas integriert wurden. Dazu gehören Treiber, Middleware, Libraries und ein flexibles Application-Framework mit einem API.

ThreadX ist ein bewährtes RTOS, das ein prioritätsbasiertes und deterministisches Multitasking unterstützt und Systemdienste wie präemptives Scheduling, Semaphoren, Message-Queuing, Interrupt- und Memory-Management, aber auch fortschrittlichen Funktionen wie »Preemption-Threshold Scheduling« (um Kontext-Switches zu reduzieren), integrierte Trace-Funktionen sowie Laufzeitanalysen des Stacks erlaubt. Hüpper: »Das ThreadX-RTOS ist in mehr als 2 Mrd. Elektronikprodukten in einer Vielzahl von Endmärkten zu finden.«

Als TCP/IP-Stacks stehen NetX und NetX Duo zur Verfügung. Diese zwei X-Ware-Komponenten unterstützen sowohl IPv4 als auch IPv6 und brauchen dank zweier Stacks in einem nur wenig Speicherplatz. USBX wiederum umfasst USB-Protokoll-Stacks für eine Konfiguration als Host, Device und On-The-Go. Dank FileX, eine weitere X-Ware-Komponente, bietet das SSP ein MS-DOS-kompatibles Datensystem. Für das GUI-Design und dessen Entwicklung steht GUIX, ebenfalls Teil von X-Ware, zur Verfügung. Laut Hüpper wurde GUIX speziell für die Synergy-MCUs mit ihrer Graphik-Engine optimiert. GUIX-Studio ist ein Design-Programm für den Desktop, mit dem die Entwickler mit Synergy ein GUI-Layout einfach designen können, bevor es auf Silizium- oder embedded Software-Ebene realisiert wird.

Über ein spezielles Framework und mithilfe eines APIs vermischt das SSP das RTOS, die Middleware und die Libraries mit Low-Level-Funktionen für die Peripherie. Damit kann die Applikations-Software einfach auf Peripherals in Form von Funktionen zugreifen. Das Framework erleichtert die Integration der unterschiedlichen Software-Elemente. Nachdem die Treiber die Hardware-Register mithilfe von logisch definierten Werten abstrahieren, sind das API und die Parameter bei den verschiedenen Synergy-Serien identisch. Hüpper: »Entwickler müssen nicht mehr Zeit dafür aufwenden, dass sie sich detailliert in die Hardware-Spezifikationen der MCU einarbeiten, sie müssen sich auch keine spezifischen Register-Definitionen merken oder ThreadX im Detail kennen.«

Renesas wird einen kompletten Satz an Low-Level-Treibern für die Peripherals der MCUs, wie Speicher, Connectivity, Analogfunktionen, Timing, Power-Management, Security und Verschlüsselung, Safety und HMI, zur Verfügung stellen. Entwickler, die direkt auf die einzelnen Peripheral-Treiber zugreifen wollen, können das auch ohne das Framework tun, denn sie können diese Funktionen auch direkt im Applikations-Code aufrufen.

Für die Zukunft denkt Renesas laut Hüpper noch über weitere Software-Funktionen nach, die dem SSP in Form von Qualified Software Add-ons (QSAs) hinzugefügt werden. Diese Komponenten sollen ebenfalls qualifiziert und den harten Vorgaben des SSP entsprechen, aber sie gehören nicht zum Standard-SSP. Ein Beispiel für solch eine QSA-Komponente ist beispielsweise eine spezielle Library für Security-Funktionen, aber auch für Functional Safety gemäß IEC61508. Renesas öffnet Synergy noch für weitere Software und zwar in Form von Verified Software Add-on-Components, kurz VSA. Die VSA-Komponenten sind hinsichtlich ihrer Funktionalität und Kompatibilität gegenüber dem SSP getestet und von Renesas als gut empfunden. Alle Testabläufe und Ergebnisse werden den Entwicklern zur Verfügung gestellt. Hüpper: »Damit wird die Zeit, die Entwickler dafür aufwenden müssen, um Third-Party-Software zu integrieren, deutlich reduziert.« Ein Beispiel für solch eine VSA-Komponente ist beispielsweise ein Kommunikations-Stack für Bluetooth.