
Nykyaikaiset järjestelmät vaativat yhä monipuolisempia prosessointiratkaisuja. Linuxissa ajettava reunatekoly ja koneoppiminen lisäävät kompleksisuutta, samalla kun turvallisuuskriittinen ohjaus ja tietoturvasovellukset edellyttävät reaaliaikaista determinismiä. Tämä yhdistelmä kasvattaa kysyntää arkkitehtuureille, joissa useat hartit eli laitteistoketjut voivat ajaa erilaisia kuormia rinnakkain.
Symmetrinen moniprosessointi (SMP) tarjoaa joustavuutta raskaiden käyttöjärjestelmien ajamiseen, mutta jää usein vajaaksi reaaliaikajärjestelmien deterministisen suorituskyvyn osalta. Epäsymmetrinen moniprosessointi (AMP) puolestaan mahdollistaa tehtäväkohtaisen optimoinnin eristämällä kuormat eri prosessointiyksiköille, mutta toteutus on monimutkaisempi. Tähän Microchip vastaa hyödyntämällä yhtä CPU-klusteria, jossa useat RISC-V-hartit muodostavat kokonaisuuden, joka tukee AMP-toimintaa laajassa joukossa teollisia ja edge-AI-sovelluksia.
PIC64GX-MPU yhdistää Linux-kykyisen prosessorin ja useita harteja samaan core-kompleksiin, joka on koherentti muistialijärjestelmän kanssa. Tämä mahdollistaa determinististen reaaliaikajärjestelmien ja Linuxin ajamisen samassa CPU-klusterissa. Kehittäjälle tämä tarkoittaa, että sama alusta tukee RTOS-ratkaisuja, Linuxia tai bare-metal-koodia ilman erillisiä laitteita.
Reaaliaikaisessa ohjauksessa AMP mahdollistaa kriittisten tehtävien sitomisen omille ytimilleen, jolloin latenssi pysyy ennustettavana. Linuxin ajastin ei ole luonteeltaan reaaliaikainen, ja keskeytysviiveet voivat vaihdella. AMP mahdollistaa tämän kiertämisen: kriittinen ohjaus ajetaan RTOS:lla yhdellä ytimellä, kun taas sovellustaso toimii Linuxissa toisella.
Välimuistit parantavat suorituskykyä, mutta cache-missit voivat aiheuttaa jitteriä ja ennakoimattomia viiveitä. PIC64GX ratkaisee tämän tarjoamalla reaaliaikakonteksteille Loosely Integrated Memory (LIM) -tilan, joka ohittaa välimuistit ja takaa deterministisen käytöksen. Tämä on erityisen hyödyllistä AI- ja ML-pipelineissa, joissa prosessointiajan minimointi on keskeistä.
Järjestelmä rakentuu 600 MHz E51 64-bittisen RV64IMAC-ytimen ympärille, joka toimii valvontaprosessorina. Sillä on 16 kilotavua muistia, joka voidaan konfiguroida joko L1-käskyvälimuistiksi tai tiiviisti integroiduksi muistiksi, sekä 8 kilotavua datamuistia ja PMP-yksikkö muistisuojaukseen.
Varsinainen suorituskyky tulee neljän U54-harti-ytimen klusterista. Ne ovat 64-bittisiä RV64GC-prosessoreita, jotka toimivat jopa 600 MHz taajuudella ja tarjoavat 3,1 CoreMarks/MHz ja 1,7 DMIPS/MHz suorituskyvyn. Sama klusteri on käytössä PolarFire SoC FPGA:ssa, mikä tuo mukanaan kypsän ekosysteemin ja testatun arkkitehtuurin.
Viides hart vastaa järjestelmän valvonnasta, mutta sitä voidaan käyttää myös reaaliaikaisiin tai bare-metal-tehtäviin. Muistialijärjestelmä sisältää 32 kilotavun käsky- ja datavälimuistit, PMP- ja MMU-yksiköt sekä 2 megatavun L2-muistin useilla käyttötiloilla. Mukana on myös DDR-muistiohjain, muistinsuojaus ja sisäinen ei-haihtuva muisti turvalliseen käynnistykseen.
Cache-koherentti väylämatriisi ja joustava L2-muisti ovat keskeisiä AMP-toiminnalle. ECC-suojattu L2 voidaan konfiguroida välimuistiksi, LIM-tilaan determinististä käyttöä varten tai scratchpad-muistiksi hartejen väliseen viestintään.
Integroitu 36-bittinen DDR4/LPDDR4-ohjain tukee jopa 1,6 GT/s nopeuksia ja 8 gigatavun osoiteavaruutta. Yhdessä eNVM-muistin kanssa tämä mahdollistaa järjestelmän konfiguroinnin jo käynnistyksessä joko reaaliaika- tai Linux-käyttöön.

PIC64GX RISC-V -MPU:n lohkokaavio, joka esittää moniharttisen CPU-klusterin, välimuistihierarkian, nopean väylärakenteen sekä integroidut oheisliitännät Linux- ja reaaliaikaisiin reunasovelluksiin.
AMP käytännössä
RISC-V-arkkitehtuurissa hart on itsenäinen suoritusympäristö. PIC64GX:ssä jokainen hart voi ajaa omaa käyttöjärjestelmäänsä tai bare-metal-koodia. Neljän hartin klusteri voidaan jakaa kahteen erilliseen ohjelmistokontekstiin, joilla on omat muistialueensa ja resurssinsa. Laitteisto estää kontekstien välisen luvattoman pääsyn.
Hart Software Services (HSS) toimii nollavaiheen bootloaderina, järjestelmämonitorina ja runtime-palveluiden tarjoajana. Se hoitaa muun muassa DDR-initialisoinnin, laitteiston konfiguroinnin ja käyttöjärjestelmien käynnistyksen. HSS mahdollistaa myös turvallisen käynnistyksen ja varmistaa AMP-kontekstien eristyksen.
Käytännössä järjestelmä voidaan konfiguroida esimerkiksi siten, että kolme ydintä ajaa Linuxia ja yksi Zephyr-RTOS:ia. Periferia voidaan jakaa kontekstien kesken.
OpenAMP-kehys tarjoaa ohjelmistokomponentit AMP-järjestelmien toteuttamiseen. Sen keskeiset osat ovat RPMsg-viestinvälitys ja remoteProc, joiden avulla kuormia voidaan jakaa kontekstien välillä.

Suunnittelun haasteet
AMP vaatii huolellista muistialueiden, resurssien ja viestinnän suunnittelua. RPMsg-pohjainen viestintä ja resurssien eksklusiivinen jako ovat keskeisiä. Jokaisella hartilla on oltava riittävästi paikallista muistia, jotta viestintäviiveet pysyvät pieninä ja rinnakkaisuus maksimoituu.
HSS valvoo järjestelmää ja raportoi väylävirheet, ECC-virheet ja kriittiset poikkeukset.
Oheislaitteet
PIC64GX tarjoaa gigabitin Ethernet-liitännät, USB 2.0 OTG:n, SD/SDIO-rajapinnat, kaksi CAN 2.0 -porttia, viisi UARTia sekä SPI- ja I2C-liitännät. Lisäksi mukana on Quad SPI -flash-ohjain ja PCIe Gen2 -liitäntä.
Tietoturva
Turvaominaisuuksiin kuuluvat kaksois-PUF-yksiköt avainten juuriluottamukseen, suojattu NVM-muisti, eNVM-muisti sekä manipuloinnin havaitseminen. Suunnittelu kestää myös differentiaalisen tehon analyysihyökkäyksiä.
Sovellukset
PIC64GX on suunnattu sulautettuun laskentaan, moottoriohjaukseen, reaaliaikajärjestelmiin sekä konenäkö- ja AI-sovelluksiin. Yksi konteksti voi käsitellä sensoridataa RTOS:lla, kun toinen ajaa Linux-pohjaista analytiikkaa.
Konenäössä Linux-konteksti voi hoitaa objektintunnistuksen ja videostriimauksen samalla, kun reaaliaikaydin huolehtii deterministisesta ohjauksesta. Tämä mahdollistaa pienemmät ja kustannustehokkaammat järjestelmät.
Työkalut
PIC64GX:lle on tarjolla laaja työkaluketju Linuxille ja RTOS-järjestelmille. MPLAB-laajennukset helpottavat konfigurointia, ja HSS on saatavilla lähdekoodina. Tuki löytyy Zephyr-ekosysteemistä, Yoctosta ja Ubuntu Linuxista. Debugointi tapahtuu JTAGin kautta laajoin analyysityökaluin.
Yhteenveto
PIC64GX-MPU on suunniteltu nimenomaan AMP-arkkitehtuurin toteuttamiseen edge-älyssä, jossa yhdistyvät reaaliaikaisuus ja monimutkainen sovelluslogiikka. Neljän 64-bittisen RISC-V-ytimen klusteri voidaan konfiguroida turvallisesti ajamaan RTOS:ää ja Linuxia rinnakkain.
Tuloksena on suoraviivaisempi tapa rakentaa AI-pohjaisia konenäköputkia ja reaaliaikaisia järjestelmiä yhdelle piirille. Kypsä työkaluketju ja valmis ekosysteemi lyhentävät kehitysaikaa – juuri siellä, missä kilpailu on kovinta.
Microchipin artikkeli löytyy uudesta ETNdigi-lehdestä. Äänestä lehden parasta artikkelia ja voit voittaa Huawein uuden Watch GT Runner 2 -älykellon. Ohjeet täällä.



















