Ar trebui să încerc? Decizia de migraţie de la 8 la 32-biţi

by donpedro

Echipa Farnell element14 a sprijinit inginerii de proiectare, prin Comunitatea element14, timp de 8 ani. În acest timp, am asistat la prima modificare în piața de microcontrolere, astfel că progresele tehnologice și lansarea arhitecturii pe 32 de biți oferă inginerilor puterea de a le adopta în proiectele lor, mai mult decât oricând înainte.

Autori: Ankur Tomar, Farnell element14 şi Anthony Huereca, Freescale Semiconductor

Din miliardele de dispozitive integrate ce se utilizează în lume în fiecare zi, un număr mare dintre acestea se bazează pe moștenirea oferită de microcontrolerele pe 8 și 16-biți. Mulţi ingineri proiectanţi de sisteme embedded au crescut cu aceste arhitecturi mai vechi care şi-au păstrat popularitatea – chiar şi atunci când dispozitivele pe 32-biți le-au luat locul – datorită costului lor scăzut, consumului redus de energie și arhitecturii lor simple. Așa cum popularitatea dispozitivelor pe 32 de biți crește, la fel este nevoie de instru­ire cu privire la diferențele, avantajele și oportunitățile pe care arhitecturile noi le pot oferi.
Cu fiecare proiect nou, se ridică mereu întrebări:
Ce pierd folosind dispozitive pe 8 biți?
Ce îmi oferă o arhitectură pe 32 de biți în mod real? Și, astăzi, când dispozitivele pe 32 de biți au luat conducerea în vânzările de microcontrolere embedded, este momentul pentru a trece la o arhitectură nouă, lăsând în urmă dispozitivele pe 8-biţi pentru a fi up-to-date?
Din fericire, cel mai important lucru pentru industria noastră este că nu ne oprim niciodată din inovare. Cu nuclee precum ARM® Cortex® – M0+, care pot fi găsite în dispozitivele de la Freescale®, Atmel®, NXP® și alții, procesoarele pe 32 de biți au ajuns la punctul în care se pot potrivi cu capabilităţile moştenite de la microcontrolerele pe 8/16-biţi și, în plus, oferă o multitudine de avantaje care fac trecerea la un nivel superior, foarte convingător. Nucleul Cortex-M0+ a fost special conceput pentru a face trecerea mai atractivă decât oricând înainte, permițându-vă să transferaţi proiectele dumneavoastră la nivelul următor de putere, pe 32-biți.

De ce 32 de biţi?

Dacă întrebaţi un student nou la inginerie de ce migrează de la 8-biți la 32-biți, s-ar putea obține răspunsul evident: există de 4 ori mai mulți biți, și, mai mult înseamnă întotdeauna mai bine! În realitate, nu e chiar atât de simplu, dar există o mulțime de motive imperioase pentru care microcontrolerele pe 32-biți au sens în a fi utilizate, chiar și pentru proiectele “tradiționale” bazate pe 8 și 16 biți.

• Performanţe superioare: migrarea către un nucleu pe 32 de biți poate oferi de la 2 la 40 ori mai multă performanță per MHz față de arhitecturile pe 8 și 16 biți, utilizate în prezent. Veți obține mult mai rapid procesare matematică pe 32 de biți, și multiplicare pe 32-biţi într-un singur ciclu. Și, există un singur ciclu IO pentru comunicaţii seriale bit banging și emulare de protocol software.
Toată puterea de calcul deschide o lume nouă de posibilități, cu pachete software (USB, Bluetooth etc), RTOS (sistem de ope­rare în timp real), UI (interfață cu utilizatorul) avansată, și mult mai mult, cu rezerve ample de pu­tere de procesare pentru caracteristicile definitorii ale aplicației.
• Eficienţă energetică mai mare: nucleul Cortex-M0+ este, de asemenea, incredibil de eficient, obți­nând scorul de aproape 2x Coremark®/mA faţă de alţi competitori pe 16-biți. Combinat și cu faptul că nucleul Cortex -M0+ este mult mai puternic, sistemul embedded poate utiliza mai puțină energie pentru a finaliza sar­cinile sale mult mai rapid pentru ca apoi să treacă înapoi în modul de somn. Chiar și modurile de somn au acre­di­tări impresionante de mică putere, până la <500nA, în cele mai profunde din cele 9 moduri de putere găsite la familia Freescale Kinetis® L. Și, datorită proiec­tării inteligente de module periferice precum cele gă­site în familiile Kinetis, puteți face acum mult mai mult, fără a trezi nucleul de bază, economisind și mai multă energie. • Densitate de Cod crescută: S-ar putea să pară contra-intuitiv că, folosind un procesor pe 32 de biți se ajunge la dimensiuni mai mici de cod. Cu toate acestea, nucleul Cortex-M0+ foloseşte instrucțiuni Thumb-2, dintre care multe au numai 16 biți în memoria Flash. De asemenea, țineți cont de faptul că multe instrucțiuni privind procesoarele pe 8 biți sunt de fapt pe mai mult de 8-biți. De asemenea, în funcție de aplicație, mai multe instrucțiuni pe 8-biți care sunt realizate prin mai mulți octeți, pot fi înlocuite cu o singură instrucțiune de un MCU pe 32 de biți, ca în cazul înmulțirii cu 16 biți prezentate mai jos.

Rezultatul este că densitatea de cod poate fi îmbunătățită semnificativ prin trecerea la o arhitectură pe 32 de biți, folosind intrucțiuni Thumb-2.
• Scalabilitate: Utilizarea limbajului de asamblare pe o anumită arhitectură de la un anumit producător de dispozitive pe 8 biţi nu va mai reprezenta o piedică pentru performanţă în momentul în care proiectul va fi transferat pe un procesor mai puternic. Accentul pus pe cod C pentru dispozitivele pe 32 de biți, în loc de asamblare, reduce timpul de dezvoltare și depanare, și face ca portarea de cod către noi dispozitive să fie mai ușoară ca niciodată. Și cu toate că microcontrolerele ARM MCU pe 32 de biți au răspândire în întreaga lume, ecosistemul software este foarte mare și în creștere.
• Dar…. Crezi că sună grozav toate acestea, dar este nevoie de dimensiuni mici, preț scăzut și ușurință în utilizare, caracteristici pe care un microcontroler pe 8/16 biți le dă pentru o anumită aplicaţie.
Din fericire, este o lume cu totul nouă pentru microcontrolerele pe 32-biţi în aceste zile:

• Dimensiuni: Cu dimensiuni mici de numai 1.6 × 2.0mm, așa cum sunt microcontrolerele ARM din familia Freescale Kinetis KL03 – considerate drept cele mai mici din lume – performanța pe 32 de biți apare în unele locuri foarte mici.
• Cost: Cu dispozitive începând de la doar 0.49 cenți $, microcontrolerele pe 32 de biți pot influenţa costul unor aplicații prohibitive anterior. Și, din cauza densității de cod mai mare, poate fi nevoie de mai puțină memorie flash.
• Complexitatea: În mod surprinzător, arhitectura pe 32 de biți poate fi, de fapt, mai simplă în unele aspecte. Dispunând de un spațiu de adresare pe 32-biți, nu este nevoie de paginare, iar locațiile de me­morie pot fi accesate direct. Arhitectura cu nucleu Cortex-M0+ are un controler de întreruperi complex, simplificând astfel tratarea întreruperilor. Descărcarea într-un buffer de urmărire pentru depanare ușoară și doar 56 de instrucțiuni pentru cei care doresc să continue să utilizeze limbajul de asamblare, reprezintă alte avantaje care definesc “saltul” la

complexitatea pe 32 de biți să însemne, mai degrabă, un mic hop.

Dezvoltare cu 32 de biţi

Unul dintre avantajele de a folosi un nucleu ARM pe 32-biți este cantitatea uimitor de mare de software și hardware de activare care este disponibilă pentru el, incluzând o serie de compilatoare și depanatoare compatibile. Reutilizarea de hardware și software devine mai ușoară pentru proiectele de anvergură, între nuclee precum Cortex-M0+ sau mai puternicul Cortex-M4. Compatibilitatea la pini a microcontro­lerelor Freescale Kinetis și a modulelor, între sutele de dispozitive existente în familiile de microcontro­lere Freescale, face ca deplasarea în sus și în jos pe curba performanță/flash să devină mult mai ușoară.
Freescale vă ajută să dezvoltaţi mai repede noile voastre proiecte pe 32-biţi şi datorită soluţiilor software Processor Expert® – instrument software de modelare și MQX™-Lite – sistem de operare în timp real (RTOS). Instrumentul software de modelare Processor Expert este complementar instrumentului de modelare GUI (interfața grafică cu utilizatorul) pentru generarea de cod, crearea de drivere perso­nalizate și scurtează semnificativ timpul de dezvoltare.
MQX-Lite RTOS este o versiune simplificată a cunoscutului MQX RTOS și a fost proiectat special pentru microcontrolere cu memorie sub 4KB. Driverele RTOS provin din instrumentul software de modelare Procesor Expert și reprezintă un subset de MQX RTOS, făcând upgrade-urile viitoare mai ușoare la dispozitive mai puternice. Acesta vine complementar cu instrument software de modelare Procesor Expert, iar pentru acele dispozitive cu USB există o stivă USB complementară, de asemenea disponibilă.

Pasul următor

Acum, dacă doriți să încercați ceea ce are de oferit soluţia pe 32 de biți, de unde vreți să începeți?
Din fericire, există un număr de plăci disponibile, care oferă o puternică platformă de evaluare pe 32 de biți și le puteți obține pentru mai puțin decât costul unei pizza. FRDM-KL05Z este perfectă pentru a pătrunde pentru prima dată în lumea pe 32 de biți și este compatibilă la pini cu dispozitivele pe 8 biți, S08 Freescale. FRDM-KL26Z adaugă module periferice USB și mai avansate, iar FRDM-KL46Z oferă mai mult, atât USB, cât și suport pentru LCD cu segmente. Sau, în cazul în care porturile IO sunt la 5V și robustețea electrică este critică pentru aplicația dumneavoastră, FRDM-KE02 va fi exact ceea ce căutați.
Toate aceste patru plăci de dimensiuni mici sunt dotate cu nuclee Cortex-M0+ și sunt activate cu instrumentul software de modelare Processor Expert, MQX-Lite RTOS, stive USB complementare, și mai mult. Având un circuit de depanare numit OpenSDA cons­truit chiar pe placă, un simplu cablu USB oferă totul pentru depanare, comunicaţie serială și capacitățile de programare flash de care aveți nevoie.
În plus, pe lângă toate aceste plăci din gama de platforme de dezvoltare Freescale Freedom, există modu­lele Arduino™ compatibile, ce oferă acces ușor la pini cu semnale IO digitale și analogice. Kit-ul de evaluare pentru senzorii MEMS – MEMS Sensors Evaluation Kit – este un bun exemplu de posibilități oferite. Acest lucru permite ca o pereche formată dintr-o platformă de dezvoltare Freescale Freedom FRDM-KL25Z și un kit MEMS de evaluare a senzorilor poziționat pe partea de sus a acestei platforme, să ofere acces pentru microcontrolere Kinetis L MCU la o serie de senzori de ultimă oră, pentru a explora lumea din jurul ei.
În timpul dobândirii experienței de învățare este important să se păstreze legătura cu alți ingineri și acesta este momentul în care Comunitatea element14 poate oferi sprijin. Există de multe ori un alt inginer, care a găsit deja o soluție la problema cu care te confrunți, caz în care comunitățile on-line pot fi o resursă excelentă.

Viitor pe 32-biţi

Tehnologia nu se oprește niciodată și merge mai departe, iar tendința de a vedea MCU-uri pe 32 de biți în multe, multe aplicații embedded se va accelera. La element14, noi sprijinim inginerii la fiecare etapă a procesului de proiectare, de la kit-uri de dezvoltare la realizarea de prototip și fabricație, pentru a se asigura că inginerii se simt încrezători atunci când aleg să migreze la o arhitectură nouă pe 32-biți.
Cu performanţe mai mari, eficiență energetică impresionantă și densitate de cod mai bună, acum este momentul pentru a face primul pas pentru un viitor pe 32-biți, mai bun și mai strălucitor.

Freescale Semiconductor România S.R.L.
București
Tel: 021 3052 400
officero@freescale.com
www.freescale.ro

http://uk.farnell.com/

S-ar putea să vă placă și

Adaugă un comentariu