Jedným z najzákladnejších a absolútne prvotných rozhodnutí v architektúre návrhov zabudovaných (embedded) systémov je otázka, či by mal byť výpočtovým jadrom zariadenia Mikrokontrolér (MCU - Microcontroller Unit) alebo Mikroprocesor (MPU - Microprocessor Unit). Hoci oba komponenty vykonávajú softvérové inštrukcie na riadenie hardvérového produktu, ich vnútorná architektúra kremíka, hierarchie rozdelenia pamäte a softvérové formáty využívania sú od základov úplne odlišné. Zvolenie nesprávnej hardvérovej kategórie čipu pri dizajne pre požiadavky daného produktu zvyčajne vedie k masívnemu zlyhaniu pri odhadoch BOM (Bill of Materials) nákladov, dramatickému preseknutiu vyhradeného rozpočtu pre napájanie, alebo neschopnosti vyhovieť hard-real timing (vysokorýchlostným úlohám pri deterministických časových obmedzeniach).
1. Mikrokontrolérové Jednotky (MCUs)
Obvody MCU (napr. platformy radu ARM Cortex-M, obľúbené ESP32 a STM32, či čipy PIC32) sú vyslovene navrhnuté na deterministické riadenie obvodov v prísne reálnom čase. Fyzicky ide v podstate o úplne ucelený a samostatný počítač zosyntetizovaný do jediného kúsku plastového púzdra bez potreby externých periférií pre chod jadra.
- Architektúra pamäte: Pri MCU je dôležité, že spájajú integrovanú a rýchlu internú SRAM pamäť (určenú na dáta) a statickú pamäť internú Flash (vyhradenú pre kód vývojára). Napísaný kód sa zvyčajne najspoľahlivejšie spúšťa a koná priamo pri čítaní obsahu internej Flash pamäte (tento proces nazývame “Execute-In-Place”, tzv. XIP). Architektúra priamočiareho postupu poskytuje vysoké záruky, že presne vopred poznáme dobu časovej paralelizácie v hodinových taktoch spracovania inštrukcie a neriešime oneskorenú stratégiu prenosu (latenciu).
- Operačný systém: Na obvodoch architektúry MCU beží buď len voľný kód priamo nad hardvérom tzv. “bare-metal” kód (čo z programovania predstavuje jeden jediný, nekonečný sled príkazov a podmienkových vetiev zapuzdrený v softvérovej slučkách
while(1)za prítomnosti prioritných služieb obsluhy rôznych prerušení), alebo ľahký minimalistický operačný systém pracujúci na odozvách v reálnom čase (RTOS), akými sú populárne systémy FreeRTOS alebo Zephyr. - Výkonnostné metriky CPU: Základom je takotvanie čipov iba v rozsahoch miliónových operácií desiatok až stoviek megahertzov (napr. jadrá od 16 MHz až do vrcholov tried na úrovniach 600 MHz).
- Spotreba energie: Ich teritóriom majstrovstva sú vyslovene iba inštalácie limitované kapacitou batérií pri extrémnej úspore - v low-power dizajnoch. Vo vypnutých obvodoch pri prechodoch do inteligentných spánkových režimov dokážu dlhodobo cicať z baterky hodnoty rovnajúce sa jednotkám mikroampérov (µA), no súčasne plne fungujúci CPU vedia prerušením pri detekcií hrany na porte prebudiť v rozmedzí stoviek mikrosekúnd do plnej aktívnej pohotovosti a plniť svoje záchranné operácie.
- Oblasti použitia: Priemeyselné procesy spracúvajúce rýchlo sa meniace hodnoty prúdov a fáz elektromotorov (tzv. algoritmy FOC), senzorika snímačov IoT na zložité spracovanie batériového pohonu malých “nositelností” alebo životne kritické prísne normované mechanizmy bŕzd ABS prítomné v automotive, a iných “hard real-time” uzloch, spoliehajúce sa čisto na garanciu rýchlej milisekundovej obsluhy procesných krokov.
2. Mikroprocesorové Jednotky (MPUs)
Obvody architektúry typického MPU procesora (napr. rad línií ARM Cortex-A, produkty NXP i.MX sféry, či všeobecne známych čipov udomácnených pod doskami Raspberry Pi od Broadcomu typov BCM283x) sa zameriavajú na úplne opačný parameter a cielia na zaistenie veľmi vysokej priepustnosti veľkých tokov pre zložité a ťažké masívne aplikácie. Na rozdiel od obvodu u MCU mikrokontroléru, čistý MPU nepredstavuje už okamžite “použiteľný” systém pre elektroniku; jadro CPU je samostatné spracovacie ťažisko tranzistorov, ktoré potrebuje z okolia pridať pomocný kódový podporný most na riadiace pomocné externé hardvérové logiky a zbernice matičných dosiek.
- Architektúra pamäte: Tradičným nevýhodným faktom MPU je neschopnosť obsiahnutia zabudovanej pamäte čipu. Ich vnútro sa neskladá z miesta poskytujúceho beh obrovských a komplikovaných inštalácií či používateľského kódu. Pre dosiahnutie ich potencie na beh programu im pomáha prístup na zapojené vonkajšie, rýchle veľkokapacitné vysokorýchlostné polia RAM buniek typu DDR3/DDR4 (zabezpečujú spúšťanie), a do toho sa ukladajú gigabajty inštalácií softvérov k iným vonkajším pomalým, asynchrónnym statickým bankám typu spájkovanej pamäti eMMC a iným formátom NAND Flash. Práca od načítania sprevádzaná týmito vzdialenými “veľkými cestovaniami po spojoch a externými vplyvmi zberníc” by sa výrazne brzdila a preto technológie u tohto poňatia u procesorov masívne spoliehajú vnútorné urýchľovatele predprípravy kódu: L1/L2 medzipamäte z logických tzv. Cache štruktúr brániacich pomalej odozve mimočipových DDR prenosov.
- Operačný systém: Každé profesionálne MPU osadzujú inžinieri prednostne na výhody plynúce so zabudovaného kremíkového celku procesorových sád pre logické mapovanie veľkých pamätí - takzvanú Jednotku pre Memory Management čipu - Jednotku (MMU - Memory Management Unit). Technologický komponent tohto zrýchlenia prepočítava v drvivých rýchlostiach matematické virtuálne adresovanie adries softvérov do skutočných adries kremíka spomínaných RAM dosiek. Dôsledkom tohto sa rodí jedinečná základná cesta dôležitá spustiť bežné, komplexné, objemné užívateľské systémy - akými poznáte zo smartphonov a Desktopov portovaných do Embedded Linux vývojov, grafické systémy pre smartfóny na Androide plné ikôniek a pod.
- Výkonnostné metriky CPU: Plynulosť posunutá o tisícnásobok rýchlostnej dimenzie a prietokov vo vysokom meraní pracovných režimov ohraničených frekvenciami hodín gigahertzových hladín (napr. pásmo frekvencií 1 GHz stabilne až za stropy k 3 GHz+ taktoch). Drvivá prevaha takýchto zostavení CPU sa nasadzuje iba vo verzií zložitej paralelizovanej viacjadrovej techniky čipových sád typov známych v bežnom názvosloví komerčných letákoch pre laikov a spotrebiteľov s nálepkami (Napríklad viac-jadro typicky známe pre: “Quad-core Cortex-A53” a pod..).
- Spotreba energie: S gigantickým prenosom obrovských balení dát si samotné MPU berú zo zdroja signifikantné, ba niekedy až odstrašujúco silné toky napäťových energetických dávok pre fungovanie – merané už skôr pri jednotkách pre výlučné straty do Wattoch a zriedkavej obsluhe útlmu chladom u spotreby udávanej vôbec pri meridlách u miliwattov a nízkom profile strát obvyklým malých čipom u “standby” vývinu výkonných MCUs v obvodoch. Okrem silných prechodností pre nabíjanie k spracovávaniu veľkého signálového jadra CPU si žiadajú prepracované napäťové regulátory a sofistikovanú distribúciu tzv. IC Správy toku napájaní čipov (Integrované PMICs pre systémy s postupne spínacou radou štartovej sekvencie štrukturálnych vetví napäťových koľajníc). Start-up obvodu a následné tzv. bootovacie stavy operačných systémov po napájaných nabití preberá v ich prípade aj obvyklé “oneskorenie na štart” a boot trvajúci štandardne sekundové intervalové časy.
- Oblasti použitia: Komplexné riadiace moderné dotykové ovládače známych interfejsov z prostredí a panelov prístrojových panelových jednotiek HMI, internetové chrbticové centrály sieťových domových systémových inteligentných routerov k smerovaniam signálov a rozhraniam internetovým systémom brán k uzlom domácich spojov, video kompresné grafické prenosy a živé dátové masívne sieťové balíčky šifrujúcich a krypto stack protokolov do TLS s Wi-Fi pripojeniami verzie 6+ s Docker kontajnermi atď.
Tzv. kategória procesorov: “Crossover”
Príkre striktné tabuľkové oddeľovanie tried o kategórii dvoch absolútne hranične nekompatibilných prienikov z dvoch vyššie uvedených hardvérov inštrukčnej technológie sprevádza v čipovom výskumnom obore od predchádzajúcich rokoch prelínanie obrovského zmazávania tohto ostrého rozdielu, čo na trhu prebudilo rozhranie kedy dizajny výrobcov kremíkovej zliatiny z obvodov do trhu uvádzajú moderný most stredníkov spojených technológií u rady radení hybridných „Prechodiek” procesorov pod hlavičkou názvu (“Crossover” sérii pre čipy premostenia napr. gigantom dovozu pre rady radu s hlavičkou vývoja sŕdc o značke pre rad čipov od: “NXP i.MX RT series”). Táto technologicky extrémne nádejná vetva rodiny dokázala prevziať unikátne plusy z hrubej sily taktu hodinovej prevodovky od plných MPU na taktoch rovných z predolšnej pasáže o číslach k taktom pri rýchlosti od odozvy blížicich na hranici gigahertzov (výkony na príchode na obrat a rýchlostné stupne na 1 GHz takte spracovania jadrom), a súčasne plne podriadiť a dodržať a pri plnej garancií zotrvať u predvídateľnosti bez logického jadra predradníkov na preklady MPU “pamätnej jednotky softvérov k inštaláciovému úložisku”, a beží rovnako spoľahlivo nad okamžitou SRAM odozvou bázou, s “absentovanou jednotkou procesného spracovania” u čipov s nulovým MPU mapovaním pamäte zo slovníka inštruktáži MCU pre odozvu plnohodnotných prenášaní plne dodržiavanej definícii o chode pre systémoch na čistej bázovej hard deterministike MPU prevzatých procesoch. Svoje obvody u týchto špeciálov zlievanej integráciie zvažujú u projektových extrémne kritických “time-delay citlivých” prenášaní tokov u procesných uzloch (tu radíme náročné High-end audio oddeľovacie DSP sady prevodníkov na štúdiové aparátovne, prísne časy a prísne riadenie komunikačnej prenosovej priemyselovej koľajovej trate u plne časovanej rýchlo asynchrónnych paketových zberných prúdoch tzv normy pre zbernice typickej “pre stroje bežiacich synchronizačne v plnej EtherCAT zbernici”) – v tomto bode voľby presný RTOS program pre čip podáva výhodu pre hardvér, ku ktorej výpočtová plachta spomínaná gigabajtového systému postaveného okolo inštalácie objemného voľného MPU strojárskemu limitu, kde klasická rýchlosť v MCU mikrokontrolér CPU bola nedostatočnou pomalou na prevádzku.
Prístup z pohľadu odbornéhou hľadiska procesov u Inovasense
Téma rozhodovania architektúry z “ktorého zo vzájomných” voľby prístupu pri voľbe na plátno projektanta za dvojičkou variant k voľbám riešení nad návrhom čipoch medzi (MCU) naproti náprotivku k hardvéru pri osadznej matičnej doske pre riešenia procesoru zložitého dizajnu od logického celku “počítačovéj bázy”, stavia pre odborníkoch absolútne kľúčové fundamentálne zvažovanie a k prenášaným procesným zásahom silným hľadiskom o dopad na všetky rozvrstvenia obvodového návrhu. Voľba hrubo rozkúskuje pri voľba prác rozpis prístupov cez procesný platený náklad rozpisky BOM (Bill of Materials) cien nakupových lístkov do cien zákazkových hardvérov, urýchleností inžinierov v naprogramovaní, a nakoniec veľmi spomalených zložitostí pri dlhomesačných úzkostí obstarávaných pri úradných zlyhaniach doložiek do EU byrokracii a bezpečnostnému ohraničeniam vo vplyvom k záťaží prístupnosti v certifikátových procesoch k schvaľovačke (v čase normy doložieb CRA pre zistenie zlej architektonicé prístupy vo vydávaní plnohodnotných dôležitých updatovania k aktualizovávaniu u Linux riešení v predávaným komerčno/koncových užívateľom v dlhom 5-ročnom povinne aktualizovanom horizonte EÚ garancií!).
Pre odborný dizajn pri Inovasense je táto prvá brána predpisu vývojového hradla absolútny stred priradzovaní V-Model inžinierových definovaných metodológickej sady pri rozvažovaniach a plnému vyhnútiu včasným defektujúcim výstrahám prvej fázy chýb dizajnu u schvaľovačiek Výchova voľby vychádza z dôsledných predchádzajúcich modelov plne ucelených pre presnú rozvahu systémovým špecifikám z prepočtových hárkov na hrubý dopyt klienta vo fyzickej matematiky. Základňou sú bezodkladne dodržania tvrdých tzv “real-time” uzloch chodu, silné zredukované spotreby a termálne odozvy pri navrhnutej a vymeranej sume napäťovo odberných záťaží rozvádzača plošného spoja, a pochopiteľne prenesenie potrieb náročnosti za prevádzky pri potrieb do grafického výstupu u display displeja u zákazníka pre voľbu s UI prejavom (Rozmery RAM, a čipy MPU na vykreslovanie u procesoroch obvykle presilové ku lacnej logike o obrazovky MCU panelov bez nutných Linux procesných sprievodcovských nadstavieb chodu systémovaných zložitých balíčkov OS.). Pre napájané kompaktné puzdro batérie pri dopytovaní čipov za umelom spracovania z inteligenčných rozborových detekčných logík senzorík (v odvetvi Edge a inferenčných logikách posudku pre sieť AI prístrojov u edge snímačom - k tzv TinyML) sme s úspechmi silno nasadení do modelové a najprijateľnejšie presunuté na “high-end / crossoverové” logické predimenzované silové varianty od vývoja MCUs mikrokontrolérov s vývojmi u vstavaných dedikovaných neurónových akcelerátových sieti akých sa nesie z pohonu a radu modelov u jadra pridaná štrukturálna (tzv dedikovaná čipková a kremíková sieťovka NPU do koprocesorom) — pre príklady moderných výpočtovým čipom architektov rodu STM32N6 koprocesorákov — omnoho šetrnejší skok vopred pred radením nabaľovať celý systém výpočtu do drahej komplikovanej pletence MPU k plne inštalovanom v prevádzkovanej ťažkostí od zapojenia procesorov z rodu Linux prostredia do rozpočtu cien na materiálov, čím razatne skracujeme rozloženie dizajnov puzdro a optimalizujeme náklady z úvodných sérii na BOM náklad z pohotovostných tepelných uzlov rozvodnej skrinky batérie k doske, s udeleným a chrániacim prvenstvom o uspokojenie všetkých hrubých podmieňovacích časov o spúšťacích cyklom pri procese o požiadavkám vo veľmi prísnej EU normou definovaných na časovej bezchybnom a prísno garantovanej bezpečnostnej tabuľke EAE / NESA z postupnosti v plne garantovanom certifikačnom balíka V-Model testovania.