Uzual, factorul cheie în selectarea unui microcontroler pe 32 de biţi (MCU) era alegerea unităţii centrale de procesare (de exemplu miezul CPU). Până de curând, microcontrolerele pe 32 de biţi erau bazate pe o varietate de miezuri, incluzând în unele cazuri arhitecturi patentate; ca rezultat, proiectanţii embedded trebuiau să se descurce cu un miez sau să crească timpul de dezvoltare pentru a învăţa noi complicaţii hardware şi programe pentru porturile existente. În ultimii ani, apariţia miezurilor ARM Cortex în produsele MCU a schimbat peisajul embedded. Dezvoltatorii au migrat de la miezurile patentate pe 32 de biţi către MCU-urile bazate pe procesoare ARM Cortex, astfel încât nu mai sunt blocaţi în preajma unui singur furnizor de MCU.
de Shahram Tadayon, Microcontroller Marketing Manager, Silicon Labs
Pinul de preset conduce adesea la conflicte de pini, forţând dezvoltatorii să-şi schimbe proiectele sau să migreze către capsule mai mari şi mai scumpe. O arhitectură MCU alternativă dual-crossbar, patentată de Silicon Labs (prezentată în figura 2) oferă dezvoltatorilor o mai mare flexibilitate, selectând mai întâi perifericele necesare şi apoi alegând plasarea pinilor. Abilitatea de a selecta doar periferice necesare permite adesea utilizarea de capsule mai mici, mult mai eficiente economic.
De exemplu, într-un punct de comunicaţii ce necesită 4 UART cu funcţie de control flux (16 pini) şi două SPI-uri (6 pini), un dezvoltator trebuie să fie capabil să selecteze un MCU cu un număr de I/O mai mare de 22. Deci, utilizarea unei arhitecturi fixe standard cu 4 UART şi 3 SIP ar necesita o capsulă cu 64 de pini sau chiar 100 pini pentru a obţine un mix precis de periferice. Prin utilizarea unei tehnologii crossbar flexibile şi configurabile, dezvoltatorul poate obţine mix-ul dorit de periferice cu o capsulă de 40 de pini cu câteva I/O de rezervă. Suplimentar, prin optimizarea localizării perifericelor, dezvoltatorii pot plasa perifericele în apropierea circuitelor lor de conectare, permiţând astfel trasee mai scurte şi reducând potenţial numărul de layere necesare pentru schemă.
Cel mai mare avantaj dintre toate îl reprezintă posibilitatea de modificări de ultim moment, ce pot fi realizate cu uşurinţă în software. De exemplu, dacă punctul de comunicaţie necesită alt circuit integrat cu interfaţă SPI, aceasta nu este o problemă. Un al treilea port SPI poate fi uşor adăugat în aceeaşi amprentă de circuit, doar modificând software-ul.
Pornind de la beneficiile unei arhitecturi flexibile crossbar, există părţi negative în utilizarea unui MCU cu crossbar înalt configurabil? Unii dezvoltatori că o arhitectură crossbar poate fi complex de programat.
Silicon Labs se adresează acestei îngrijorări prin crearea AppBuilder, o unealtă de dezvoltare software gratuită proiectată pentru a simplifica iniţializarea şi configurarea. Unealta AppBuilder bazată pe GUI permite dezvoltatorilor să aleagă rapid şi grafic perifericele necesare, proprietăţile acestora, să stabilească modurile de ceas şi particularizarea pinilor, toate acestea fără să trebuiască să citească datele tehnice. AppBuilder generează chiar programul ce poate fi utilizat cu compilatoare cunoscute precum Keil, IAR şi GCC.
O ultimă, dar importantă consideraţie în selectarea unui microcontroler pe 32 de biţi este aceea a eficienţei energetice. De fapt, consumul energetic ultra-redus a devenit o preocupare critică pentru o largă varietate de aplicaţii embedded. Cu accentul pus astăzi pe “verde” şi pe minimizarea consumului energetic, proiectanţii trebuie să acorde o mare atenţie consumului energetic total. Există diferite metode de a reduce semnificativ consumul energetic.
Cea mai eficientă dintre acestea depinde de aplicaţia finală. De exemplu, în cazul unui dispozitiv de monitorizare a glucozei în sânge, pacientul utilizează dispozitivul de câteva ori pe zi. În cea mai mare parte a timpului dispozitivul se află în modul de adormire Deep sleep. În concluzie, în această aplicaţie, cel mai important lucru este reducerea consumului energetic în modurile de adormire.
Un dispozitiv de tip nod senzorial, pe de altă parte, trebuie să monitorizeze constant apariţia unui eveniment. Dacă monitorizează constant, dispozitivul trebuie să fie mereu în mod activ? Nu neapărat! Nodul senzorial se poate afla în modul sleep, să devină rapid activ, să determine prezenţa unui eveniment precum apariţia de fum şi să se reîntoarcă în modul sleep. În acest tip de sistem, este important de avut un mod sleep de joasă putere, ce include un ceas de timp real (RTC) pentru activarea unui stabilizator intern la fiecare 100 de microsecunde. Este important de avut un timp de activare rapid şi un procesor care sa ruleze rapid numărul fix de comenzi pentru determinarea prezenţei evenimentului.
Unele aplicaţii, precum echipamentele de pe o linie de fabricaţie, nu intră niciodată în modul sleep. În aceste aplicaţii este foarte importantă disponibilitatea unui MCU cu un curent activ foarte redus.
Mai există şi alte mijloace prin care se poate economisi energie, printre care se poate menţiona reducerea frecvenţei în timpul funcţionării pentru a utiliza optim numai viteza de procesare necesară pentru o sarcină dată.
Poate fi o provocare să se găsească un MCU pe 32 de biţi care să răspundă bine la cerinţele cu privire la consum energetic ultra-redus în mod sleep, în mod activ, timpul de activare şi variaţii de frecvenţă de lucru. Familia Precision32 MCU răspunde acestei provocări oferind câteva opţiuni de joasă putere, după cum este prezentat în figura 3. Microcontrolerele pot opera sub 100nA şi includ un detector de cădere de tensiune şi o capacitate de memorare de 4 kB RAM.
Ceasul de timp real poate fi activat cu un supliment de curent de 250nA. Există şi o opţiune de comparator analogic pentru un supliment de 400nA, precum şi un temporizator şi un numărător de pulsuri cu consum energetic redus. MCU pot reveni din modul sleep în microsecunde. În plus, microcontrolerele Precision32 dispun de un consum în mod activ foarte redus de 275µA/MHz, şi sunt caracterizate de un PLL sofisticat ce se poate fixa pe orice frecvenţă de la 1 la 80MHz, permiţând dezvoltatorului să optimizeze energia în funcţie de sarcină. Într-un moment în care mulţi furnizori majori dispun de familii de MCU de 32 biţi, utilizând aceeaşi bază de memorie, cu dimensiuni similare şi numere mari de I/O şi periferice de serie, este uşor pentru un designer să creadă că alegerea unor MCU-uri cu un design integrat nu contează cu adevărat. Cu toate acestea, prin selectarea unui MCU potrivit pentru un design dat, dezvoltatorii pot reduce semnificativ timpul de lucru, consumul de energie şi costul total al sistemului în timp ce câştigă flexibilitatea de a face schimbări de ultim moment, fără o reproiectare majoră de sistem. Pe scurt, este importantă alegerea unui MCU pe 32 de biţi, cu o arhitectură complet flexibilă, făcând munca dezvoltatorului mai uşoară.
Shahram Tadayon
Microcontroller Marketing Manager
Silicon Labs
www.silabs.com