Wie Multi-Hart-RISC-V (PIC64GX) Linux und RTOS im gleichen Coreplex vereint, Cache-Jitter über LIM entschärft und Edge-KI sowie sicherheitskritische Steuerungen deterministisch auf einem Chip ermöglicht.
Die PIC64-Serie an Multicore-Mikroprozessoren setzt auf RISC-V-Kerne und eignen sich speziell für Anwendungen mit asynchronem Multipricessing (AMP) in intelligenten Embedded-Edge-Anwendungen.
(Bild: Microchip)
Moderne Systeme werden immer komplexer und erfordern vielfältige Rechnerarchitekturen, um die Arbeitslast zu bewältigen. Maschinelles Lernen (ML) und künstliche Intelligenz (KI) am Netzwerkrand (Edge) – häufig auf einem Linux-Betriebssystem – erhöhen dabei die Komplexität des Enddesigns.
Sicherheitskritische Anwendungen, Systemsteuerungen und Sicherheitsanwendungen benötigen die Flexibilität von Linux und den Determinismus von Echtzeitsystemen, um Hardware zu steuern. Dies treibt die Nachfrage nach Multi-Hart-Systemen an, in denen mehrere Hardware-Threads („Harts“ in der RISC-V-Terminologie) die gleichzeitige Ausführung unterschiedlicher Workloads ermöglichen.
Symmetrisches Multiprocessing (SMP) bietet zwar die Flexibilität, umfangreiche Betriebssysteme auszuführen, ist aber oft nicht in der Lage, die von Echtzeitsystemen geforderte deterministische Leistung zu liefern. Im Gegensatz dazu ermöglicht asymmetrisches Multiprocessing (AMP) eine aufgabenspezifische Optimierung, indem Workloads auf verschiedene Verarbeitungseinheiten verteilt werden – allerdings kann die Umsetzung dieses Ansatzes komplexer sein.
Bild 1: High-Level-Architektur einer PIC64GX-RISC-V-MPU.
(Bild: Microchip)
Um dem zu begegnen, nutzt Microchip einen Cluster von RISC-V-Harts innerhalb eines einzigen CPU-Coreplex für eine Chip-Architektur, die AMP in einer Vielzahl industrieller und Edge-KI-Anwendungen unterstützt. Die MPU PIC64GX integriert einen Linux-fähigen Prozessor mit mehreren Harts in einem einzigen Komplex, der mit dem Speichersubsystem kohärent ist. Dies ermöglicht eine Kombination aus deterministischen Echtzeitsystemen und dem Linux-Betriebssystem in einem einzigen CPU-Cluster, was AMP für gängige industrielle Bildverarbeitungs- und Edge-KI-Anwendungen ermöglicht. Zudem vereinfacht sich die Entwicklung von Code, der auf Echtzeitbetriebssystemen, Linux oder sogar direkt auf Hardware (Bare Metal) ausgeführt werden kann.
In Echtzeit-Verarbeitungs- und Steuerungssystemen ermöglicht AMP die Zuweisung dedizierter Verarbeitungseinheiten für zeitkritische Aufgaben, was vorhersagbare Leistung und geringe Latenz gewährleistet. Die Linux-Prozessplanung erfolgt in der Regel nicht in Echtzeit und weist erhebliche und unvorhersehbare Interrupt-Latenzen auf. AMP ermöglicht Workloads mit harten Echtzeitanforderungen, ein RTOS für kritische Steuerungsaufgaben auszuführen, während Anwendungen auf Linux auf einem anderen Core weiterlaufen.
Bild 2: AMP in harter Echtzeit.
(Bild: Microchip)
Obwohl Caches die Leistung steigern, können Cache-Fehler zu Ausführungsjitter und unvorhersehbaren Latenzen mit nicht deterministischem Verhalten führen. Die PIC64GX-MPU verhindert dies, indem sie die Ausführung von Echtzeitkontexten im lose integrierten Speicher (LIM; Loosely Integrated Memory) ausführt und so cache-bedingten Nicht-Determinismus vermeidet. Dies sorgt für effiziente Pipelines, insbesondere für KI- und ML-Workloads, die minimale Verarbeitungszeiten erfordern.
Das System basiert auf einem E51-64-Bit-RV64IMAC-Prozessor-Core (600 MHz) als Systemmonitor mit 16 KB Speicher, der als bidirektionaler L1-Fehlerkorrektur-Befehlscache oder eng integrierter Speicher dienen kann, 8 KB eng integriertem Datenspeicher und einer PMP-Einheit für die Anwendungsverarbeitung.
Das Herzstück des Systems ist der Core-Komplex aus vier U54-64-Bit-RV64GC-Anwendungsprozessoren mit einer maximalen Betriebsfrequenz von 600 MHz. Jeder Prozessor bietet eine Leistung von 3,1 CoreMarks/MHz und 1,7 DMIPs/MHz. Es handelt sich um denselben Cluster, der auch im PolarFire-System-on-Chip-/SoC-FPGA verwendet wird, was ein zuverlässiges Multicore-Subsystem und ein gut etabliertes Ökosystem von Tools mit sich bringt. Ein fünfter Hart übernimmt die Überwachungsfunktionen für den Chip, steht aber auch für die direkte Ausführung von Echtzeit- oder Bare-Metal-Workloads zur Verfügung.
Das L1-Speichersubsystem umfasst einen 32 KiB großen 8-Wege-Befehlscache oder optional einen 28 KiB großen, eng integrierten Speicher sowie einen 32 KiB großen 8-Wege-Datencache. Zusätzlich sind eine PMP-Einheit (Physical Memory Protection) und eine MMU (Memory Management Unit) vorhanden. Das Speichersubsystem verfügt über mehrere Funktionen, darunter 2 MiB L2-Speicher mit verschiedenen Zugriffsmodi, einen integrierten Speichercontroller, der verschiedene DDR-Versionen unterstützt, eine Speicherschutzeinheit und nichtflüchtigen Embedded-Speicher für sichere Boot-Optionen.
Die cache-kohärente CPU-Bus-Matrix und das flexible 2MiB-L2-Speichersubsystem sind für den AMP-Betrieb entscheidend. Der fehlerkorrigierte Speicher ist als 16-Wege-assoziativer L2-Cache mit einem LIM-Modus für deterministischen Zugriff und einem kohärenten Scratchpad-Speichermodus für gemeinsam genutzte Nachrichten über Harts hinweg konfigurierbar.
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel Communications Group GmbH & Co. KG, Max-Planckstr. 7-9, 97082 Würzburg einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von redaktionellen Newslettern nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung, Abschnitt Redaktionelle Newsletter.
Ein integrierter 36-Bit-DDR4/LPDDR4-Speichercontroller mit Fehlerkorrektur unterstützt DDR4 mit 1,6 GBit/s und einem Adressraum von 8 GiB mit Speicherschutz und 128 KiB nichtflüchtigem Embedded-Speicher (eNVM) für den Startvorgang. Dies ermöglicht eine vollständig flexible Konfiguration beim Start für die Partitionierung in Echtzeitbetrieb oder Linux-Harts mit L2-Cache-Unterstützung.
In RISC-V werden Verarbeitungseinheiten als Hardware-Threads oder Harts bezeichnet, und jeder Hart in der PIC64GX-MPU stellt einen unabhängigen Ausführungskontext dar, der sein eigenes Betriebssystem oder seine eigene Bare-Metal-Workload ausführen kann. Der Quad-Hart-Anwendungscluster kann so konfiguriert werden, dass er bis zu zwei unabhängige Softwarekontexte ausführt. Jedem Kontext können ein eigenes Betriebssystem, eigene Speicherbereiche und eigene Hardware-Ressourcen zugewiesen werden. Die Hardware verhindert durch Hardware-Trennung den Zugriff auf Ressourcen anderer Kontexte. Verstöße werden von den Hart Software Services (HSS) erkannt und behandelt, während der E51-Monitor-Hart für die Ausführung der HSS-Firmware vorgesehen ist.
Dieser HSS ist ein Zero-Stage-Bootloader sowie Systemmonitor, und er bietet Laufzeitdienste für Anwendungen an. HSS unterstützt das frühe System-Setup, das DDR-Training und die Hardware-Initialisierung/-Konfiguration. Der Service läuft hauptsächlich auf dem E51, wobei ein kleiner Teil der Funktionen auf Maschinenebene auf jedem U54 ausgeführt wird. Er bootet einen oder mehrere Kontexte, indem er eine Anwendungs-Workload aus dem Boot-Speicher lädt, bei dem es sich um den On-Chip-NVM handeln kann. Anschließend werden Plattform-Laufzeitdienste bzw. eine Supervisor Execution Environment (SEE) für Betriebssystem-Cores bereitgestellt. Der Core unterstützt Secure Boot und ist eine wichtige Komponente, um Hardware-Partitionierung/-Trennung für AMP-Kontexte bereitzustellen.
Dies wird zur Konfiguration des Quad-Hart-Komplexes verwendet. Der Komplex lässt sich z. B. so konfigurieren, dass Linux auf drei der U54-Harts und das Zephyr-RTOS auf dem verbleibenden Hart ausgeführt wird. Peripherie kann einem der beiden Kontexte zugewiesen werden.
Ein offenes Standard-Software-Framework namens OpenAMP stellt die Softwarekomponenten für die Entwicklung von Softwareanwendungen auf AMP-Systemen bereit. Wichtige Elemente hierfür sind Remote Processor Messaging (RPMsg) und Remote Processor (remoteProc), um die Workloads auf die beiden AMP-Kontexte aufzuteilen, damit diese problemlos miteinander kommunizieren können.
Design-Tipps
AMP-Workloads unterstützen fortschrittliche Designs und bestehen aus mehreren Software-Komponenten, die zusammenarbeiten. Durch Hardware-Partitionierung ermöglicht AMP gemischte kritische Workloads, um Echtzeitanforderungen und -beschränkungen zu erfüllen.
Entwickler müssen sich auf die Speicherkarte und das Speicherlayout von PIC64GX-MPUs, die Kommunikationsmethoden RPmsg und RPmsg-lite sowie die Ressourcenverwaltung konzentrieren, die die exklusive Zuweisung von Speicher und/oder Peripherie zu einem bestimmten Kontext umfasst.
Anwendungen benötigen einen transparenten Kommunikationskanal zwischen den Kontexten, der RPmsg über den gemeinsamen Speicher verwendet und eine klare Definition der zu übermittelnden Nachrichten enthält. Aufgaben müssen partitioniert werden, um Workloads effektiv in überschaubare Einheiten aufzuteilen, die von verschiedenen Verarbeitungseinheiten effizient ausgeführt werden können. Jeder Hart muss über ausreichende Speicherressourcen und einen minimalen Datentransfer zwischen ihnen verfügen, um die Latenz zu reduzieren und die Parallelität zu maximieren. Das HSS fungiert als Systemmonitor und meldet Busfehler, ECC-Fehler und schwerwiegende Ausnahmen, die vom U54 festgestellt werden.
Peripherie und Security
Die PIC64GX-Reihe von Multi-Hart-Prozessoren enthält Gigabit-Ethernet-MACs für schnelle Verbindungen sowie USB 2.0 OTG und 5.1-SD/SDIO-MMC-Kartenschnittstellen. Zwei CAN-2.0-Ports mit fünf Multimode-UARTs, zwei SPI- und zwei I2C-Schnittstellen sowie ein Execute-in-Place-Quad-SPI-Flash-Controller sind ebenfalls vorhangen, genauso wie ein integrierter x1- oder x4-PCIe-Gen2-Root-Port.
Das System verfügt über verschiedene Sicherheitsfunktionen, die robusten Schutz vor Bedrohungen bieten. Integrierte Dual-PUF (Physically Unclonable Function) bildet die Grundlage für eine Root of Trust für Verschlüsselungsschlüssel. Der Chip verfügt über 56 KiB sicheren nichtflüchtigen Speicher (sNVM) und 128 KiB nichtflüchtigen Embedded-Speicher (eNVM). Das Design bietet auch integrierte Manipulationserkennung und Gegenmaßnahmen, Integritätsprüfungen für die sNVM- und eNVM-Speicherblöcke sowie Widerstandsfähigkeit gegen Differential-Power-Analysis-/DPA-Angriffe, die zum Abfangen von Schlüsseln missbraucht werden.
Anwendungen und Toolchain
PIC64GX-MPUs sind für Single-Board-Embedded-Computing, Motorsteuerung, Echtzeit-Computing, Bildverarbeitung und KI/ML-Anwendungen konzipiert. Sie können für die Sensoraggregation und KI-Inferenz verwendet werden, indem ein Echtzeitbetriebssystem in einem einzigen Kontext ausgeführt wird.
Sensoren lassen sich über Schnittstellenperipherie wie SPI und I2C einfach an die PIC64GX-MPU anschließen. Das Echtzeitbetriebssystem kann dann Sensordaten verarbeiten, und Kommunikationsblöcke wie UART oder CAN können Daten oder Zusammenfassungen je nach Bedarf auf Basis von Edge-Computing übertragen.
Für Embedded-Bildverarbeitung kann ein separater Linux-Kontext die Objektidentifizierung, Klassifizierung und das Video-Streaming über Schnittstellen wie Ethernet bereitstellen – alles auf demselben Chip mithilfe der AMP-Funktion. Dies ermöglicht kleinere, kostengünstigere Designs in industriellen oder medizinischen Anwendungen.
AMP in industriellen KI-Anwendungen wird immer komplexer. Die PIC64GX-MPU verfügt über eine Toolchain mit Build-Systemen für Linux und Open-Source-RTOS, VxWorks und andere Anbieter für die Entwicklung sicherheitskritischer Systeme. MPLAB Extensions bieten Konfigurierbarkeit und erleichtern die Migration von anderen Microchip-Prozessoren, darunter auch die Hart Software Services (HSS), die den Quellcode für den HSS Zero Stage Bootloader und den Systemmonitor bereitstellen.
Upstream-Support innerhalb des Zephyr-RTOS-Ökosystems und des Yocto Project Linux Board Support Packages (BSP) steht bereit. Ein Buildroot-basiertes Linux-Build-System verwendet den Linux4Microchip-Kernel, und Ubuntu Linux wird ab 2024.10 unterstützt. Dies umfasst alle Treiber, einschließlich der für die Entwicklung notwendigen Peripherie. Informationen zu Tools und Systemen finden sich im GitHub-Repository.
Der Cluster ist Teil des etablierten Mi-V-Ökosystems, das auch Tools von Lauterbach und Ashling unterstützt. Das System verfügt über JTAG-Debug-Funktionen mit zehn Hardware-Triggern pro CPU, die als Breakpoints oder Watchpoints und Leistungszähler konfiguriert werden können.
PIC64GX-MPUs wurden speziell für AMP in intelligenten Embedded-Edge-Anwendungen entwickelt, die gemischte Kritikalität erfordern. Ein robuster, bewährter Cluster aus vier 64-Bit-RISC-V-Cores innerhalb eines einzigen Coreplex kann beim Booten sicher konfiguriert werden, um ein Echtzeitbetriebssystem neben einem Linux-Betriebssystem auszuführen. Dies ermöglicht optimierte Bildverarbeitungs-Pipelines mit KI-Inferenz und Echtzeitleistung. Mit einer ausgereiften Toolchain unterstützt die PIC64GX-MPU Entwickler von Embedded-Systemen, die zuverlässige komplexe Anwendungen in den Bereichen Industrie, KI/ML und Echtzeit erstellen wollen. Dies optimiert das Design und sorgt für eine schnellere Markteinführung ihrer Produkte. (sg)
* Venki Narayanan ist Director Marketing der FPGA Business Unit bei Microchip Technology