De NXP i.MX RT500 benutten voor DSP-gestuurde slimme apparaten: Multi-threading, XOS en de Cadence Fusion F1 Audio DSP
Multi-threading, XOS RTOS, semafoorbasisd resource sharing en hoe de i.MX RT500 van NXP DSP-aangedreven slimme apparaten mogelijk maakt
Hedendaagse consumentenelektronica eist componenten die enorme hoeveelheden data met snelheid en efficiëntie kunnen verwerken. Microcontrollers die geoptimaliseerde digitale signaalprocessoren integreren, zijn essentieel voor beveiliging, spraak- en beeldtoepassingen.
Dit artikel belicht de Cadence® Tensilica® Fusion F1 audioprocessor – een autonoom co-processor die samenwerkt met de Cortex-M33-kernen van de i.MX RT500 om high-performance signaalverwerkingsworkloads te leveren.
Kernconcepten van multi-threaded programma's
Moderne processoren geven de indruk alsof ze meerdere threads gelijktijdig uitvoeren, doch een enkele CPU-kern voert maar één thread tegelijk uit. Wanneer het aantal threads de beschikbare kernen overschrijdt, moet een besturingssysteem de taken plannen.
De OS houdt de status van elke thread bij, wijst CPU-tijdsplakken toe zodat applicaties lijken parallel te draaien terwijl eerlijkheid gewaarborgd blijft.

Figuur 1. Thread-levenscyclusstatussen
De scheduler onderhoudt drie wachtrijen: ready, blocked en running. Hij houdt rekening met thread-prioriteiten, blokkerende events (bijv. I/O, interrupts) en de noodzaak voor preëmptie. Het kiezen van een geschikte planningsstrategie is cruciaal voor real-time workloads.
Voorwaarden en events in XOS
XOS stelt ontwikkelaars in staat om voorwaarden te definiëren die een thread blokkeren tot een door de gebruiker gedefinieerd predicaat waar wordt. Events, voorgesteld als bitmaskers, maken het mogelijk dat meerdere threads of interrupt-handlers zich gelijktijdig synchroniseren.
Interrupts in XOS
XOS ondersteunt snelle, aanpasbare interruptafhandeling, inclusief geneste interrupts – waarbij een hogere-prioriteit interrupt een lagere tijdelijk onderbreekt. Het systeem hervat de onderbroken service automatisch zodra het hogere niveau voltooid is.
Threads profiteren ook van getimerde vertragingen en periodieke callbacks. De DSP co-processor biedt tot drie interne timers die ontwikkelaars naar wens kunnen configureren.
Semaforen begrijpen
Semaforen coördineren toegang tot gedeelde resources. Ze onderhouden een interne teller die weergeeft hoeveel threads gelijktijdig een kritieke sectie mogen binnengaan. Wanneer de teller nul bereikt, blokkeren wachtende threads tot de resource weer beschikbaar komt.

Figuur 2. Semafoor-werkstroomdiagram
Overzicht van de i.MX RT500 MCU en de DSP
De i.MX RT500-serie bevat twee Cortex-M33-kernen die tot 275 MHz draaien, met maximaal 5 MB SRAM. Beveiliging wordt versterkt door Arm TrustZone, een MPU met acht regio's en de CASPER crypto co-processor voor hardware-versnelde asymmetrische algoritmen.
Energiemanagementopties laten ontwerpers het verbruik finetunen op de behoeften van de applicatie. Toegewezen accelerators – waaronder de Cadence® Tensilica® Fusion F1 audio DSP, een 2D GPU en meerdere displayinterfaces – maken veilige, laag-energie-operatie mogelijk in HMI, IoT, hearables en spraakassistenten.
De Audio DSP nader bekeken
De Fusion DSP draait tot 200 MHz en beschikt over een hardware drijvende-komma-eenheid, wat het ideaal maakt voor always-on voice-triggered apparaten. Het bundelt pre-processing en post-processing modules voor een breed scala aan audio-codecs.
Het deelt de SRAM van de MCU voor data-uitwisseling, met eerbiediging van geheugenbeveiligingsgrenzen voor veilige toegang.
Programmeren met de DSP in gedachten
Tensilica DSP's zijn compatibel met FreeRTOS®, Zephyr®, Linux® en XOS. Cadence's XOS-kernel, geschreven in standaard C, biedt taakscheduling, adaptieve context switching, synchronisatieprimitieven en robuuste interruptafhandeling – allemaal afgestemd op Xtensa-processoren.
Aan de eisen van slimme consumentenapparaten voldoen
Met zijn mix van kernprestaties, beveiliging en gespecialiseerde accelerators stelt de i.MX RT500 ingenieurs in staat de volgende generatie slimme, always-on consumentenapparaten te leveren.
Voor diepere inzichten raadpleegt u NXP's applicatienota AN13159, die ondersteunde API's, XOS voorwaarde- en eventvoorbeelden en meer beschrijft. De NXP-website biedt ook trainingsmateriaal – video's, webinars en documentatie – om ontwikkelaars op weg te helpen.
Industry Articles zijn een vorm van content die industriële partners in staat stelt nuttig nieuws, berichten en technologie te delen met All About Circuits-lezers op een manier waar redaktionele content niet goed voor geschikt is. Alle Industry Articles zijn onderworpen aan strenge redaktionele richtlijnen met de bedoeling lezers nuttig nieuws, technische expertise of verhalen te bieden. De meningen en standpunten die in Industry Articles worden uitgedrukt, zijn die van de partner en niet noodzakelijk die van All About Circuits of zijn schrijvers.
Ingebed
- DSP handbediening beheersen: cruciale richtlijnen voor optimale prestaties
- Wanneer een DSP een hardware-accelerator overtreft
- Kiezen tussen hardware-accelerators en DSP's: een praktische gids
- Contactloze vloeistofniveausensing met een reflectometer-chip
- RFID‑gebaseerde huisbeveiliging: Lage‑kost, batterijvrije monitoringsoplossingen
- 4D Imaging Radar‑chipsets leveren precieze objectidentificatie voor next‑gen automotivesensoren
- Power‑up fase‑determinisme: Multichip‑synchronisatie in high‑speed ADC/DAC‑platforms benutten
- Renesas RX23W MCU versterkt IoT-beveiliging met Bluetooth 5.0
- STM32WB50: Dual-core wireless MCU voor veilige IoT-toepassingen
- CEVA-BX: Een Geünificeerde DSP/MCU Processor voor Next-Gen IoT, Automotive en Industriële Toepassingen
- C# using-statements: imports, aliasen en static directives