Nu este o exagerare să spunem că microcontrolerele au declanșat Legea lui Moore; integrarea MOSFET-urilor a condus la primele unități logice aritmetice, care au dus la primul „computer” complet integrat. Modul în care Gordon Moore a prognozat, într-un stadiu incipient, cum va continua integrarea tranzistorilor, a creat legea omonimă. La ora actuală, microcontrolerele sunt componente omniprezente în majoritatea circuitelor ce dau viață aparatelor / echipamentelor esențiale în viața noastră, în aplicații în cadrul sistemelor de calcul, a industriei auto, roboticii, echipamentelor medicale și, nu în ultimul rând, a aparaturii electrocasnice.
Microcontrolerul, sau MCU, este un văr primar al microprocesorului, sau MPU. Acesta din urmă primește toată gloria, în timp ce primul face toată treaba. Așa a fost de la originea lor comună, Intel 4004 pe 4 biți. Acest dispozitiv i-a inspirat pe inginerii de la Texas Instruments să proiecteze TMS 1000, creditat ca primul MCU adevărat din lume. S-a diferențiat de acele MPU-uri timpurii nu prin dimensiunea magistralei, ci prin modul în care a integrat aproape tot ce avea nevoie pentru a funcționa într-un singur dispozitiv. Primele MPU-uri aveau nevoie de suportul unei memorii externe (și încă mai au), dar MCU-ul conținea deja propria memorie. Ca atare, primul MCU a fost și primul sistem pe cip (SoC), dar mai multe despre asta mai târziu.
Integrarea procesorului, a memoriei și a intrărilor/ieșirilor (I/O) pe un singur dispozitiv a dat putere electronicii embedded, care stă la baza oricărei piețe verticale de astăzi. De fapt, industria auto a fost prima piață finală care a adoptat MCU la scară, pe măsură ce a început procesul de electrificare, încă de la mijlocul anilor ’70.
Lumea nu ar arăta la fel astăzi fără sectorul electronicelor embedded, iar electronica embedded nu ar putea exista fără MCU. A început ca un controler relativ simplu, programabil, folosit pentru a-și utiliza pinii de intrare și ieșire pentru a controla alte părți ale unui sistem. Fără a-și pierde cu adevărat originile, microcontrolerul a evoluat în ultimii 50 de ani pentru a ocupa astăzi un loc central în aproape fiecare produs electronic de pe piață.
Scalabilitatea arhitecturii MCU este de neegalat de către orice altă clasă de componente. În consecință, probabil că nu există nicio sarcină pentru care un MCU nu este aplicabil. Dar pentru unii, MCU rămâne un controler digital simplu, puțin mai mult decât un lipici logic cu unele periferice inteligente, cum ar fi interfețele digitale seriale sau o ieșire PWM. Poate că este timpul să reconsiderăm MCU-ul și să vedem ce poate face cu adevărat.
“Sunt inginer de electronică analogică, MCU-urile nu sunt pentru mine!”
În trecut, a fost o critică obișnuită asupra capacității MCU de a gestiona bine semnalele analogice. Probabil că se referea la capacitatea de a implementa elemente analogice de înaltă calitate într-un proces CMOS sau la efectele semnalelor digitale de ceas asupra semnalelor analogice sensibile. Astăzi majoritatea circuitelor integrate analogice sunt implementate în CMOS, iar industria semiconductoarelor a reușit să controleze zgomotul la nivelul tranzistorului pentru multe generații de procese. Circuitele analogice folosesc chiar și noduri CMOS agresive acum. În multe privințe, cele mai recente dispozitive digitale seamănă mult cu cele analogice, datorită vitezei lor de funcționare și a cererii unui semnal de calitate.
Integrarea funcțiilor analogice în CMOS nu mai este o barieră, deci ce părere aveți de integrarea lor alături de funcțiile digitale? Majoritatea MCU-urilor prezintă posibilități de operare cu semnalul mixt, integrând adesea convertoare analog/digitale și digital/analogice. Familia ADuCM de MCU-uri (Nr. stoc RS: 786-3372) de la Analog Devices, de exemplu, are ADC-uri Sigma-Delta pe 24-biți pe mai multe canale. Bariera potențială aici se mișcă între domenii; analog la digital și digital la analog. Dar, odată ajunse în domeniul digital, inginerii pot face mult mai mult cu datele, cum ar fi aplicarea filtrelor, căutarea de modele și eliminarea anomaliilor. Cheia acestui lucru este suportul software oferit pentru implementarea acestor funcții analogice complexe în firmware. MCU-urile folosesc în prezent din ce în ce mai multe nuclee de procesare pe 32-biți care includ instrucțiuni DSP (Digital Signal Processing) extrem de capabile, adesea cu hardware dedicat pentru a accelera aceste instrucțiuni.
Familia de nuclee Arm Cortex-M este cea mai larg licențiată și implementată arhitectură a setului de instrucțiuni din cadrul MCU-urilor. Multe dintre nuclee includ acum unități cu virgulă mobilă (FPU) și instrucțiuni DSP, ceea ce le face capabile să gestioneze algoritmi de filtrare digitală extrem de complecși. Mai recent, controlerul de semnal digital, sau DSC, a apărut pe baza combinației funcționalității DSP și MCU într-un singur dispozitiv. Acestea sunt potrivite aplicațiilor care trebuie să monitorizeze și să reacționeze la semnale analogice, cum ar fi controlul motorului.
“Sunt inginer RF, MCU-urile nu sunt pentru mine!”
Aceasta este o altă concepție greșită obișnuită bazată pe natura specifică a proiectării RF. Adesea văzută ca o „magie neagră”, există o lungă istorie a proiectanților de RF care lucrează în domenii stranii, aruncând descântece peste PCB-uri pentru a le face să funcționeze.
Astăzi modul de abordare este foarte diferit față de începuturile utilizării RF. Desigur, o parte importantă a domeniului RF este încă misterioasă, iar cunoștințele secrete sunt transmise selectiv, doar celor vrednici. Pentru restul dintre noi, scopul principal este de a implementa o formă de protocol standard de comunicații fără fir, cum ar fi Bluetooth, Wi-Fi sau altele similare. Pentru aceste aplicații, mai simplu este mai bine. Aici intervine MCU wireless.
Chiar și pentru inginerii RF, aceste dispozitive pot oferi o opțiune de proiectare mai simplă, datorită flexibilității platformei. Utilizarea mai multor protocoale este o cerință de bază în domeniul IoT, ceea ce înseamnă adesea crearea de rețele cu dispozitive care utilizează interfețe wireless diferite. Aici, abordarea este de a utiliza un dispozitiv denumit în general o poartă de acces, care leagă aceste interfețe diferite. Proiectarea unei aplicații care utilizează mai multe protocoale ar putea fi o provocare chiar și pentru cel mai priceput expert în RF, dar dezvoltarea MCU-urilor fără fir cu mai multe protocoale aduce un plus de liniște. Un exemplu ar fi familia EFM32MG22 de MCU-uri Wi-Fi de la Silicon Labs (Nr. Stoc RS: 200-9664). Aceste dispozitive au fost proiectate să funcționeze la protocoale cu frecvențe de 2,4 GHz, inclusiv Zigbee, Thread și Bluetooth, adesea pe același dispozitiv și uneori în același timp.
Poate că cea mai avantajoasă caracteristică a MCU-urilor Wi-Fi este nivelul de asistență software oferit de producători. Aceasta include, de obicei, o stivă pre-verificată pentru protocol, furnizată gratuit și optimizată pentru dispozitivul specific utilizat. Acest lucru poate reduce într-adevăr ciclul de proiectare, iar natura modulelor de interfațare RF integrate înseamnă că procesul de certificare este, de obicei, mult mai simplu.
“Sunt inginer hardware, MCU-urile nu sunt pentru mine!”
Aceasta este probabil o critică a necesității de a configura un MCU prin software. Pentru inginerii mai familiarizați cu utilizarea dispozitivelor digitale și analogice discrete, mutarea unei părți importante a designului în domeniul software poate fi ușor descurajantă. Cu toate acestea, nivelul de suport pentru dezvoltarea de software este, acum, atât de ridicat încât inginerii hardware – care sunt într-adevăr ținta principală pentru MCU – ar trebui să ia în considerare, înainte de toate, utilizarea a unui MCU.
Unul dintre principalele motive pentru care MCU-urile sunt populare în domeniul embedded este faptul că sunt extrem de centrate pe hardware. Nucleul de procesare a devenit mai important în timp, deoarece industria a evoluat de la arhitecturi pe 4 biți la seturi de instrucțiuni pe 32 de biți. În esență, nucleul este acolo pentru a sprijini perifericele cablate incluse în dispozitive.
Din acest motiv, modul în care nucleul se conectează cu perifericele a cunoscut o mare dezvoltare în ultimele decenii. Și pentru că una dintre principalele cerințe tehnice care reies din domeniul embedded este legată de operarea cu consum redus de energie, tehnicile utilizate de producători pentru a obține un consum redus sunt acum destul de sofisticate. Efectul acestui lucru este că, acum, nucleul este capabil să-și petreacă majoritatea timpului într-un mod de somn profund (deep sleep), executând puține instrucțiuni (sau deloc) în majoritatea timpului.
În timp ce frontierele dintre nucleele MCU și MPU pot fi neclare, modurile de repaus/somn rămân una dintre principalele caracteristici de diferențiere.
Pentru a economisi energia electrică a bateriei, unele MCU-urile pot furniza un semnal de ceas sau porți de alimentare pentru zone întinse de funcționalitate și pot pune nucleul în sine într-un mod de consum foarte scăzut. Trezirea la apariția unei întreruperi este o tehnică obișnuită, care trezește nucleul dispozitivului doar atunci când primește un stimul extern. Cu toate acestea, chiar și acest lucru are consecințe, astfel încât tendința este acum spre a face perifericele mai autonome, permițându-le să se descurce mai mult pe cont propriu, fără a mai trezi nucleul.
De exemplu, multe dintre MCU-urile PIC și AVR de la Microchip, inclusiv PIC16LF18875 (Nr. Stoc RS: 905-3050), sunt echipate cu „periferice independente de nucleu”. Acesta este un termen general folosit pentru a descrie periferice care pot fi configurate pentru a efectua funcții repetitive sau funcții de întrerupere fără intervenția procesorului. Acest lucru poate include detectarea și condiționarea semnalului, generarea formelor de undă sau monitorizarea interfeței cu utilizatorul, precum și altele.
Abilitatea de a implementa o structură cu consum redus la nivelul întregului sistem prin câteva linii de cod ar trebui să îi facă pe inginerii hardware fericiți. Împreună cu faptul că toate „legăturile” dintre funcții sunt gestionate pentru voi, printr-o magistrală de comunicații integrată în cip, înseamnă că dezvoltarea sistemului devine mai simplă.
Unele MCU-uri avantajează acum inginerul de proiectare hardware oferind și mai multă flexibilitate față de funcționalitatea perifericelor. Familia de MCU-uri PSoC de la Cypress (acum Infineon) oferă un control foarte precis asupra I/O, precum și funcții analogice și digitale programabile.
” Sunt informatician, MCU-urile nu sunt pentru mine!”
Acesta este o abordare critică nouă. Informaticienii tind să facă abstracție de structura hardware a sistemului de calcul pe care îl folosesc pentru a-și rula codul. Acest cod este, de obicei, foarte intensiv în calcul, deci principala lor preocupare este legată de puterea brută. În acest sens, performanța medie a MPU-urilor de înaltă performanță o depășește chiar și pe cea a celui mai performant MCU.
Cel puțin așa era în mod obișnuit. Tendința dispozitivelor cu nuclee multiple a intrat în domeniul MCU, ceea ce înseamnă că multe MCU-uri au acum nuclee de procesare de înaltă performanță alături de un nucleu de microcontroler mai modest. În prezent, vedem că o mulțime de „informații” migrează din centrul rețelei către zona limitrofă/terminală/ de margine; unde trăiesc sistemele embedded. În consecință, pe piață au apărut microcontrolere cu performanțe mai mari de procesare. În cele mai recente exemple, aceste dispozitive sunt capabile să ruleze motoare de inferență, ceea ce aduce capabilități de inteligență artificială și învățare automată în senzori miniaturali, conectați la distanță.
Ce înseamnă acest lucru în practică este că abilitățile de programare necesare pentru informaticieni sunt acum solicitate în domeniul embedded. Învățarea automată pentru dispozitivele de margine va fi uriașă, suportul pentru procesarea în zona de margine este în creștere, iar abilitățile necesare sunt la mare căutare. Dacă sunteți un informatician, care lucrează la AI și ML, este posibil să vă întâlniți cu MCU-urile în viitorul apropiat.
Când un MCU nu mai este MCU?
Această întrebare ridică un subiect interesant. Dacă MCU-urile preiau mai multe capabilități de procesare, mai sunt MCU-uri? Nu există o definiție clară a ceea ce este sau nu un MCU, dar revenind la acele exemple timpurii, am putea spune că, dacă integrează un nucleu de procesare, stocare permanentă și unele I/O flexibile, atunci este un MCU. Dacă luăm aceasta afirmație drept definiție, atunci SoC-urile devin submulțime (sau superset?) al MCU-urilor.
Există alte mulțimi și submulțimi. Am discutat deja despre conceptul DSC (controler de semnal digital). Acest concept arată că industria semiconductoarelor nu este reținută în ceea ce privește preluarea unor părți cheie ale tehnologiei MCU și combinarea lor cu cele mai bune părți din restul dispozitivelor/modulelor pentru a crea ceva nou.
Să luăm drept exemplu învățarea automată (Machine Learning). Punerea motoarelor de inferență pe MCU-uri este un domeniu de explorare nou și are perfect sens. MCU-urile sunt interfața cu lumea reală, iar datele din lumea reală sunt cele cu care trebuie să interacționeze inteligența artificială. Provocarea este că motoarele de inferență sunt dezvoltate în mod normal pe platforme de procesare cu resurse de calcul și memorie practic nelimitate. Cum transformăm acești algoritmi mari pe MCU-uri care sunt constrânse de resurse? Și dacă o facem, mai sunt MCU-uri?
O parte a răspunsului constă în optimizarea procesului de creare a unui motor de inferență și apoi transformarea acelei versiuni optimizate într-un cadru software conceput pentru a rula pe un nucleu de procesare care poate fi integrat în mod realist într-un MCU.
Aici intervin organizații precum tinyML. Fundația tinyML este o inițiativă non-profit axată pe obținerea tehnologiei de Machine Learning pe MCU-uri cu consum ultra redus de energie aflate chiar la marginea rețelei. Un altul este TensorFlow Lite, un alt cadru open-source pentru executarea algoritmilor de învățare (deep learning) pe dispozitive mici.
În ceea ce privește partea hardware, NXP dezvoltă MCU-uri cu structură încrucișată. La fel precum dispozitivele DSC, MCU-ul cu structură încrucișată (crossover) aduce elemente potrivite unui anumit domeniu. În acest caz, domeniul este Machine Learning.
Viitorul MCU-urilor
Este probabil să vedem o integrare continuă de funcții în arhitecturile MCU. Există deja aproape 8000 de MCU-uri disponibile în oferta RS și fiecare dintre ele are propriile sale caracteristici unice. Acest lucru nu înseamnă că nu este loc pentru mai mult.
Este ușor de prevăzut că MCU-urile vor deveni, în cele din urmă, dispozitivele dominante în sistemele embedded. Aproape orice produs are cel puțin unul, dacă nu mai multe, MCU-uri. La prețuri de vânzare destul de mici pentru atâta funcționalitate, este greu să argumentăm împotriva utilizării lor pe scară largă.
Tendințele către hibridizare, precum DSC și MCU pe structuri mixte, indică faptul că acest număr va crește în continuare. Acest lucru ne duce cu gândul că, la un moment dat, va exista un MCU potrivit pentru aproape orice aplicație imaginabilă. În acest moment, nevoia de SoC, ASIC și chiar FPGA ar putea fi discutabilă. În mod obișnuit, aceste dispozitive sunt utilizate atunci când nu există un produs standard disponibil, dar cu o astfel de diversitate și entuziasm pentru dezvoltarea de mai multe dispozitive, acest lucru ar putea deveni de domeniul trecutului. Clar este că dominația MCU urmează să continue încă mulți ani.
Kit de evaluare CY3214-PSOCEVALUSB de la Cypress Semiconductor
Nr. stoc RS: 196-4375 – Cod producător CY3214 – PSOCEVALUSB – Marca Cypress Semiconductor
Acest kit include o placă de dezvoltare pentru dispozitivul CY8C24894-24LTXI PSoC®. Placa dispune de dispozitivul CY8C24094, care este o componentă de depanare pe cip pentru familia CY8C24x94. Puteți să vă realizați propriile proiecte cu PSoC Designer™ sau prin modificarea exemplelor de programe oferite cu acest kit. Platforma de evaluare reprezintă o combinație de tehnologii, care oferă oportunități pentru dezvoltarea unei game noi de produse USB de semnal mixt economice.
Arhitectura sa permite crearea unor configurații de periferice particularizate pentru aplicații individuale. Kitul de evaluare CY3214-PSoCEVALUSB este bazat pe familia PSoC 1.
Platforma PSoC (Programmable System-on-Chip™) se adresează aplicațiilor pe 8 biți. Aceasta combină semnalele analogice de precizie și logica digitală cu un CPU de înaltă performanță. Cu ajutorul PSoC, se poate crea exact combinația de periferice pentru a răspunde aplicațiilor voastre.
Kitul conține:
- Placă PSoCEvalUSB
- Modul LCD
- Unitate de programare MIniProg
- Cablu USB mini
- Software PSoC Designer și exemple de proiecte
- Ghid de start
- Pachet de fire
Soluție de sistem pe cip de la Silicon Labs: EFR32MG22C224F512IM40-C (MCU wireless)
Nr. stoc RS: 200-9663 – Cod producător: EFR32MG22C224F512IM40-C – Producător Silicon Labs
Seria Silicon Labs EFR32MG22 din familia wireless Gecko SoC este ideală pentru realizarea de rețele multi-protocol prietenoase energetic pentru dispozitive IoT. Soluția pe o singură pastilă de siliciu combină un nucleu ARM Cortex-M33 la 76.8MHz cu un circuit radio de înaltă performanță de 2,4GHz pentru a oferi un sistem pe circuit SoC pentru aplicații conectate IoT.
Aplicațiile wireless Gecko includ: • senzori de recuperare energetică • controlul iluminării • automatizarea clădirilor • automatizarea casei.
Microcontrolerele, denumite și MCU, sunt dispozitive semiconductoare embedded, în esență un computer în cadrul unui circuit integrat (IC). Microcontrolerele sunt utilizate în cea mai mare parte în aplicații „încorporate” cu funcție unică, spre deosebire de microprocesoare care sunt proiectate pentru aplicații în calculatoare personale, tablete și smartphone-uri. Microcontrolerele sunt prezente la ora actuală în majoritatea dispozitivelor electronice datorită plajei largi de aplicabilitate și a flexibilității utilizării lor. Vă oferim microcontrolere de la cei mai cunoscuți producători, precum Analog Devices, Atmel, Bridgetek, Cypress Semiconductor, Infineon, LAPIS, Maxim Integrated, Microchip, NXP, ON Semiconductor, Parallax Inc, Renesas Electronics, Silicon Labs, STMicroelectronics, Texas Instruments, XMOS, Zilog. Pentru a accesa întreaga gamă de microcontrolere, dar și de semiconductoare în general, vă invităm pe site-ul ro.rsdelivers.com
Autor:
Bogdan Grămescu
Aurocon Compec
https://www.compec.ro