Creşterea randamentului energetic şi a siguranţei de funcţionare în proiectele industriale portabile

Cele mai recente microcontrolere dispun de caracteristici ce conduc la creşterea duratei de viaţă a bateriilor şi a siguranţei de funcţionare pentru proiectele industriale portabile, explică David Otten şi Joel Machde la Microchip Technology Inc.



Echipamentele portabile industriale, precum cititoarele de cod de bare, înregistratoare de date, sisteme de urmărire, telefoane cu reducere a zgomotului, dispozitive de control pentru motoare mici şi încărcătoare de baterii, au un lucru în comun: combinaţia dintre microcontrolere de ultimă generaţie şi tehnici de proiectare simple pot extinde semnificativ durata de viaţă a bateriilor, pot reduce costurile şi îmbunătăţi performanţele.

Extinderea duratei de viaţă a bateriilor
Una dintre tehnicile cheie în ceea ce priveşte extinderea duratei de viaţă a bateriilor este aceea de a păstra microcontrolerul în modul de funcţionare cu consum energetic cel mai redus posibil pentru perioada cea mai mare de timp posibilă. Figura 1 prezintă cum vitezele de operare ridicate şi timpii reduşi de revenire la funcţionare pot fi combinate pentru a reduce energia medie consumată. Scopul, în acest caz, este ca microcontrolerul să-şi îndeplinească sarcina cât mai repede posibil, astfel încât acesta să petreacă un timp cât mai mare în starea de joasă putere.

Figura 1: Consum de curent în funcţie de timp pentru un microcontroler.
Un microcontroler ce suportă operare în mod de joasă tensiune este de asemenea crucial pentru maximizarea duratei de viaţă a bateriilor. Figura 2, reprodusă cu amabilitatea Energizer, prezintă durata de utilizare pentru o baterie tip buton alcalină şi una similară cu litiu într-un înregistrator de date tipic, în care cea mai mare parte a timpului este petrecută în stare de joasă putere, cu reveniri ocazionale la procesarea informaţiei. Graficul arată că, operând la o tensiune mai mică, cei cinci ani de viaţă recomandaţi pentru bateriile alcaline AAAA pot fi extinşi cu o perioadă suplimentară de şase luni.

Creşterea siguranţei de funcţionare
Oscilatorul microcontrolerului are impact asupra multor caracteristici ale sistemului: performanţe, cost, mod de fabricare şi siguranţă de funcţionare. Cele mai recente generaţii de microcontrolere nu numai că operează la viteze mari, dar sunt capabile de a lucra la viteze maxime fără o sursă externă de ceas şi de a furniza o gamă largă de frecvenţe de ceas generate intern. Acest lucru permite software-ului să comute la o frecvenţă mai joasă pentru a rămâne în cadrul specificaţiilor de operare precum căderi de tensiune, sau să crească viteza atunci când este ataşata o sursă de tensiune. Obţinerea unei porniri sigure a cristalului este o altă provocare comună a fabricanţilor. Cauzele pornirilor nesigure includ calitatea variabilă a componentelor, reziduul de flux şi erori în layout.
Multe dintre aceste probleme pot fi evitate, dacă folosim un cristal de înaltă calitate şi este implementat pe un layout cu tehnici de testare, precum test de rezistenţă negativă.
Pentru circuite de joasă frecvenţă în particular, negativarea configurabilă a cristalului poate fi folositoare. Ea permite creşterea negativării pentru asigurarea unei porniri sigure într-o varietate de condiţii, sau scăderea negativării pentru a reduce consumul energetic.

Figura 2: Efectul operării la tensiune mică asupra duratei de viaţă a bateriilor. (Imagine obţinută cu amabilitatea Energizer@Eveready Battery Company, Inc.)
O caracteristică esenţială pentru îmbunătăţirea siguranţei de funcţionare este monitorul de ceas de siguranţă (fail-safe) ce monitorizează continuu tranziţiile de ceas ale sistemului. Atunci când lipsesc câteva tranziţii, monitorul de ceas de siguranţă comută automat sursa de ceas pe oscilatorul intern şi asigură întreruperi pentru CPU.
Aceasta permite ca microcontrolerul să păstreze funcţii critice şi să gestioneze o închidere controlată.
Un alt factor care are impact asupra siguranţei de funcţionare este acela că memoria de date EEPROM de pe placă este adesea înlocuită prin emulare software utilizând memorie Flash, în ciuda faptului că unele aplicaţii necesită încă stocare de date independentă. Noua generaţie de microcontrolere integrează memorie EEPROM de mare rezistenţă, cu până la 100000 de cicluri ştergere/scriere, în timp ce rămâne eficientă economic pentru aplicaţii industriale portabile. Oricum însă, consideraţiile trebuie făcute la gama de tensiuni minimă pentru operaţiile de scriere, care pot fi mai mari decât tensiunea de operare minimă a microcontrolerului, ceea ce limitează plaja de operare efectivă.

Gestionarea zgomotului
Deşi microcontrolere de joasă tensiune pot fi utilizate în aplicaţii ce necesită siguranţă mare în funcţionare, utilizarea unei surse de 5V poate simplifica layout-urile de placă, poate creşte imunitatea la zgomot şi poate îmbunătăţi suportul pentru proiecte succesive. Însă, odată cu restrângerea geometrică, disponibilitatea de noi microcontrolere de 5V s-a micşorat. Ca răspuns la cererea continuă de operaţii la 5V, producătorii de cipuri au dezvoltat noi căi de operare la tensiuni ridicate utilizând geometrii mai mici, mai puţin scumpe.
Pentru a îmbunătăţi şi mai mult imunitatea la zgomot, diferite tipuri de buffere de intrare, utilizate pe pinii porturilor şi perifericelor, suportă diferite funcţii chiar dacă sunt multiplexate pe acelaşi pin. Intrările trigger Schmitt oferă nivele de prag de intrare mai largi decât corespondentele lor TTL şi cresc toleranţa sistemului la zgomot.
Rezistenţa ridicată de comandă a portului este un alt element important de proiectare care se referă la comanda directă a LED-urilor.

Figura 3: Debitmetru utilizând un MCU PIC®.
Această rezistenţă previne cuplările nedorite sub influenţa circuitelor zgomotoase, precum stabilizatoare de comutaţie şi semnale PWM de mare viteză. Potenţiala contrapartidă pentru zgomot radiat crescut poate fi compensată prin utilizarea unui mic filtru RC pe pinul portului pentru a menţine beneficiile rezistenţei ridicate de comandă.
Un bun exemplu în ceea ce priveşte subiectul acestui articol este debitmetrul prezentat în Figura 3. Unitatea integrată a microcontro­lerului pentru măsurarea timpului de încărcare (CTMU) citeşte debitul, temperatura şi suprafaţa tactilă capacitivă. Tensiunea bateriei este monitorizată utilizând un convertor analog/digital diferenţial pe 12 biţi şi o referinţă de tensiune, în vreme ce modulul de revenire de ultra-joasă putere iniţiază reveniri periodice (wake-up). Acest design demonstrează faptul că, utilizând caracteristicile oferite de cele mai recente microcontrolere, se pot obţine proiecte robuste şi de joasă putere, care pot permite atingerea de nivele ridicate de performanţă.

www.microchip.com
Citeste tot articolul

Controlul digital al surselor de tensiune: respectarea promisiunilor

de Bill Hutchings, Product Marketing Manager, Divizia de microcontrolere de înaltă performanţă, Microchip Technology Inc.
Controlul surselor de tensiune în comutaţie (SMPS) a fost realizat uzual cu circuite pur analogice. Apariţia controlerelor de semnal digital (DSC) înalt performante şi economice furnizează o cale practică de a beneficia de avantajele surselor de tensiune digitale în ceea ce priveşte:
• Costul componentelor necesare (BOM) pentru surse digitale comparativ cu cele analogice;
• Flexibilitatea controlului si abilitatea de a controla topologii avansate;
• Implementarea de funcţii noi fără costuri suplimentare.

Economii aduse de sursele de tensiune digitale
Figura 1 ilustrează o diagramă bloc de nivel înalt pentru o sursă de tensiune generică AC-DC analogică cu două nivele. Funcţiile cheie includ:
• Tren de putere: comutatoare cu semiconductoare, inductoare, condensatoare şi transformatoare de putere.
• Driver de comutaţie de putere: drivere de poartă şi circuit de suport.
• Reacţie: senzori, amplificatoare şi reţele de rezistenţe.
• Control: controlere dedicate pentru fiecare nivel de putere.
• Operaţii auxiliare: un microcontroler dedicat şi circuitele de suport pentru secvenţiere, monitorizare şi comunicaţii.

Cu scop de comparaţie este propusă o sursă de tensiune cu două nivele. Convertorul frontal este un circuit PFC (power factor correction) ridicător de tensiune, în vreme ce al doilea nivel este un convertor DC-DC în punte cu defazare.



Unele dintre aceste elemente, de exemplu trenul de putere, circuitele de comandă şi de reacţie, sunt în principiu identice pentru o sursă de tensiune analogică sau digitală.
Figura 2 ilustrează sursa de tensiune digitală corespunzătoare pentru acelaşi exemplu.
Pentru versiunea digitală a acestei surse de tensiune, funcţiile controlerului analog dedicat şi ale microcontrolerului de gestionare pot fi combinate într-un singur DSC dsPIC®.

Figura 1: Schema prezintă, într-o vedere de nivel înalt, blocurile funcţionale majore ale unei surse de tensiune în comutaţie uzuale controlată analogic.

Figura 2: Pentru o implementare digitală a aceleiaşi surse ca în figura 1, software-ul înlocuieşte hardware-ul pentru un număr de funcţii cheie.

Figurile 1 şi 2 prezintă numai diferenţele majore dintr-o perspectivă de nivel înalt; pe de altă parte tot circuitul de suport trebuie inclus în comparaţie. Fiecare nivel al sursei analogice solicită uzual circuitului să ofere putere auxiliară, plus funcţii de compensare, start soft, control secvenţiere, oscilator etc., toate conectate la un controler central. O implementare digitală va necesita şi ea hardware pentru circuite auxiliare de putere, dar fiecare dintre celelalte funcţii de mai sus vor deveni software ce rulează pe controlerul central. Nu numai că sunt necesare mai puţine componente, dar sunt mult reduse şi conexiunile fizice (trasee PCB). Analiza listei de componente necesare va trebui să ţină cont de acest circuit de suport, complexitatea layout-ului şi dimensiunea PCB. Unele dintre funcţiile identificate mai sus pot necesita (în implementarea analogică) doar câteva componente pasive, în vreme ce altele au un cost mai ridicat (de exemplu un microcontroler separat pentru funcţii de management).

Unii ar putea argumenta că o soluţie digitală necesită drivere de poartă MOSFET dedicate, în vreme ce o soluţie analogică poate oferi drivere de poartă pe cip. Acest lucru este adevărat pentru proiecte de joasă putere, însă majoritatea proiectelor analogice de înaltă putere vor necesita drivere de poartă externe.



O comparaţie detaliată a costurilor din lista de componente va arăta invariabil un total semnificativ mai mic pentru o sursă digitală faţă de o sursă analogică comparabilă ca şi caracteristici. O însumare simplă a costurilor componentelor este numai o parte a chestiunii: există numeroase economii ce rezultă dintr-o sursă digitală, aceasta oferind un layout mai simplu, PCB mai mic, operaţii de prelucrare PCB mai reduse şi costuri mai mici de asamblare, o calitate şi siguranţă de funcţionare mult îmbunătăţite.

Optimizări ale randamentului
În ultimii ani, îmbunătăţirile continue în ceea ce priveşte performanţele tranzistoarelor de putere şi utilizarea de topologii noi au contribuit la o îmbunătăţire semnificativă a randamentului surselor de tensiune. Însă randamentul maxim anunţat se aplică cel mai adesea numai în anumite condiţii specifice de operare (randamentul de vârf se specifică la jumătate de sarcină, sau la tensiuni de linie ridicate). Sursele de tensiune digitale oferă versatilitatea necesară pentru optimizarea randamentului în multiple puncte de operare.
Pentru convertoarele ridicătoare de tensiune PFC, pierderile de comutaţie pot fi reduse la sarcini mai uşoare prin operarea convertorului la o frecvenţă de comutaţie mai scăzută. Acest lucru se datorează faptului că la sarcini mai scăzute, componentele magnetice vor performa încă adecvat la frecvenţe de comutaţie mai scăzute. Dacă este implementat un convertor intercalat PFC, o fază poate fi oprită la sarcini uşoare.
Similar, pentru un convertor în punte cu defazare, pierderile de comutaţie suplimentare pot fi eliminate la sarcini reduse prin oprirea comutării MOSFET-urilor sincrone, şi utilizarea în schimb a diodelor dispozitivului.
Un alt exemplu apare în aplicaţiile convertoarelor coborâtoare de tensiune. Convertoarele sincrone coborâtoare de tensiune sunt tipic preferate pentru ieşiri de curenţi ridicaţi. În acest caz, utilizarea MOSFET de sincronizare conduce la curenţi periodici la sarcini reduse, ceea ce cauzează pierderi mari. De aceea, MOSFET-urile sincrone din convertoarele coborâtoare de tensiune pot fi dezactivate atunci când convertorul operează în mod de curent discontinuu.
Aceste tehnici completează creşterea de randament obţinută prin utilizarea de topologii avansate, precum convertoare rezonante şi quasi-rezonante. Controlul digital asigură suport complet pentru aceste topologii avansate, incluzând punte cu defazare, şi convertoare rezonante LLC, pentru obţinerea unui randament foarte mare şi a unei densităţi mari de putere.
Ca rezultat, controlul digital oferă numeroase opţiuni de optimizare a randamentului surselor de tensiune pe întreg domeniul de operare.

Management energetic

Figura 3: Controlul căii principale a sursei de tensiune şi controlul funcţiilor de management intern – circuite separate în designul analogic – sunt realizate împreună în cadrul unui singur controler pentru versiune digitală.
O sursă de tensiune analogică tipică va îndeplini cerinţele de management energetic prin utilizarea unui microcontroler de gestionare internă (Figura 3). Acest MCU transmite parametrii sistemului local către un controler master sau către un înregistrator de date: acesta utilizează circuite de detecţie suplimentare pentru a colecta datele necesare, şi apoi pentru a le retransmite. În unele cazuri, un sistem de comandă de la distanţă poate de asemenea trimite instrucţiuni pentru operaţii de control a convertoarelor de putere locale. Această configuraţie necesită adăugarea de interfaţă hardware între microcontrolerul de gestionare internă şi circuitele de conversie de putere, adăugând cost şi complexitate.
O sursă de tensiune digitală elimină necesitatea acestor circuite adiţionale deoarece toţi parametrii sistemului sunt deja măsuraţi de DSC.

- continuare în numărul viitor –
Citeste tot articolul

Microcontrolere Kinetis ARM® Cortex™-M4

Microcontrolerele Kinetis pe 32 biţi produse de Freescale reprezintă cel mai scalabil portofoliu al procesoarelor ARM® Cortex™-M4 utilizate în industrie.


Portofoliul Kinetis include liniile de produse K10, K20, K30, K40, K60 şi K50 ultra low-power, de semnal mixat DSC, cuprinzând peste 200 de dispozitive compatibile software. Aceste produse sunt construite într-o tehnologie de 90nm Thin Film Storage (TFS) cu memorii flash low power încorporate ce se înscriu în mai puţin de 100µS, cu anduranţă de peste 10M cicluri de scriere/ştergere, convertoare 16-biţi SAR A/D, convertoare 12-biţi D/A, interfeţe sensibile la atingere, interfeţe seriale multiple, timere, interfeţe la memorii externe de date, inclusiv SD, flash şi DRAM. FlexMemory este un bloc de memorie care poate fi configurat ca EEPROM şi/sau memorie flash. Este o combinaţie de matrice flash TFS (FlexNVM) + bloc SRAM (FlexRAM) + maşină de stări (state machine) hardware. Poate fi folosit pentru stocarea codului de program suplimentar de aplicaţie, tabele de date sau date (byte) ale sistemului ce pot fi scrise/şterse. Unele linii de produse Kinetis implementează interfeţe USB 2.0 on-the-go (având capacitate de detecţie şi de alimentare cu energie electrică a echipamentului) controlere LCD şi conectivitate la Ethernet (cu modulul de securitate încorporat).

Figura 1. Portofoliul de microcontrolere Kinetis
Conversia A/D poate fi configurată între 8 şi 16 biţi pentru a scurta timpul de conversie, intrarea ADC se configurează să fie singură sau diferenţială pentru a maximiza imunitatea la zgomot şi domeniul dinamic. Multiple convertoare DAC de 12 biţi, comparatoare de mare viteză, amplificatoare programabile, referinţă de tensiune on-board contribuie la reducerea costului şi efortului de integrare. Microcontrolerele de 32-biţi Kinetis de la Freescale aduc cea mai bună inovaţie de scădere a consumului de energie electrică incluzând 10 moduri de operare pentru optimizarea profilului de putere, separarea puterii şi a ceasului, polarizarea bazei, timpi de wake-up de 4µS, programarea flash şi operaţiuni periferice analogice coborâte până la 1.71V. Rezultatul se vede în curenţi în stările Stop <500nA şi respectiv Run < 200µA/MHz. Un low-power RTC (Real Time Clock) şi un mic curent de trezire contribuie la scăderea consumului, în timp ce un low-power timer permite operarea continuă a sistemului în stările cu consum redus de energie.
Procesorul ARM Cortex ™-M4 este cel mai recent procesor integrat de ARM (ARM Holdings este lider mondial de proprietate intelectuală (IP) în domeniul componentelor electronice digitale, cu sediul în Cambridge, UK) special dezvoltat pentru cerinţele de control digital eficient al semnalelor, uşor de utilizat, având funcţii de control şi capacităţi de prelucrare a semnalelor.

Figura 2: Procesorul ARM Cortex-M4
Cortex-M4 dispune de o unitate cu un singur ciclu de înmulţire-adunare (MAC), o singură instrucţiune optimizată pentru date multiple (SIMD), instrucţiuni aritmetice saturate şi, opţional, o unitate de calcul în precizie simplă cu virgulă mobilă - Floating-Point Unit (FPU). Nucleul procesor pe 32 de biţi este capabil de 1.25-DMIPS/MHz pentru instrucţiuni Thumb-2. CMSIS (Cortex Microcontroller Software Interface Standard) include Compilatorul C, suport pentru instrucţiunile extinse ale procesorului Cortex-M4 şi este în curs de dezvoltare o bibliotecă proiectată pentru a elabora mai uşor programe de procesare a semnalelor. Această bibliotecă include algoritmi de filtrare digitală (FIR, IIR), transformări (complexe şi reale FFT), operaţii cu matrice şi funcţiile generale, cum ar fi funcţii matematice (vectoriale, interpolare liniară şi biliniară, numere complexe, calcul statistic), trigonometrice (sin, cos) şi de control (PID sau orientat la aplicaţii). Algoritmii filtrului digital au utilitate la filtrarea digitală, dar şi la toolkit-uri de proiectare cum ar fi Matlab şi LabView. Procesorul Cortex-M4 extinde utilizarea de nuclee Cortex-M pentru aplicaţii care necesită calcul matematic intensiv. M4 a fost creat pentru utilizarea în controlul sofisticat al motoarelor (prin estimatori, fără senzori), gestionarea funcţiilor în autovehicule, managementul de putere, aparatură audio performantă, automatizări industriale (inclusiv reglarea PID adaptivă). Funcţii de procesare cu eficienţă înaltă a semnalului, consumul redus de putere, costul redus şi beneficiile uşurinţei de utilizare a familiei de procesoare Cortex-M constituie o combinaţie concepută să satisfacă categorii în dezvoltare (emergente) de soluţii flexibile.

Cortex-M4, Caracteristici


Arhitectură: ARMv7E-M (Harvard)
ISA Support: Thumb® / Thumb-2
Extensii DSP: single cycle 16,32-bit MAC, single cycle dual 16-bit MAC, aritmetica SIMD 8,16-bit, Hardware Divide (2-12 cicluri)
Unitate Floating Point (FPU): unitate de precizie simplă în virgulă mobilă, conformă IEEE 754
Pipeline: 3 etape + branch speculation
Dhrystone (număr rulări program în interval de timp): 1.25 DMIPS / MHz

Familia Kinetis - Caracteristici
Protecţie memorie: opţional 8 regiuni MPU cu subregiuni şi regiune de fundal
Întreruperi: întrerupere non-maskable (NMI) + 1 ... 240 întreruperi fizice
Latenţă întrerupere: 12 cicluri
Latenţă inter-întreruperi: 6 cicluri
Nivele de prioritate la întreruperi: 8 ... 256 nivele de prioritate
Întreruperi wake-up: până la 240 întreruperi
Moduri sleep: instrucţiuni integrate WFI şi WFE şi capacitatea de ieşire din sleep, semnale de sleep şi deep sleep, Optional Retention Mode cu ARM Power Management Kit
Instrucţiuni de manipulare Bit: Instrucţiuni integrate & Bit
Banding (în cod C)
Depanare: porturi opţionale JTAG (IEEE 1149) & Porturi Seriale cu fire. Până la 8 Breakpoints şi 4 Watchpoints.
Urmărire: Optional Instruction Trace (ETM), Data Trace (DWT), şi Instrumentation Trace (ITM).

Aria ocupată, frecvenţa şi consumul de putere depind de procesul de fabricaţie, biblioteci şi optimizări.



Familii MCU 32-biţi Kinetis ARM Cortex-M4

Caracteristici de bază
Performanţă: 1.25DMIPS/MHz cu instrucţiuni DSP până la 100MHz
Optimizarea puterii consumate: 10 moduri low power
Watchdog monitor: extern sau software
Interfaţă om-maşină: sensibilă la atingere (TSI), I/O de uz general
Alimentare: 1.71 ... 3.6V
Temperatura mediu ambiant: -40 ... 105°C
• K10 ultra low power MCU, semnal mixat
• K20 ultra low power MCU, USB On-The-Go
• K30 ultra low power MCU, LCD segmente
• K40 ultra low power MCU, USB + LCD segmente
• K50 ultra low power MCU, Ethernet + LCD + sistem integrat de măsură
• K60 ultra low power MCU, Ethernet + Security.

www.freescale.com
Citeste tot articolul

Freescale lansează platforma de dezvoltare KwikStik pentru microcontrolere Kinetis

Freescale Semiconductor lansează platforma de dezvoltare KwikStik, eficientă, de tip all-in-one, pentru aplicaţii de evaluare, dezvoltare şi depanare cu linia de microcontrolere Freescale Kinetis construite pe miez ARM® Cortex™-M4. Venind în completarea platformei de dezvoltare mai mari Freescale Tower System, KwikStik furnizează un set de unelte adiţionale într-un design cu factor de formă mic pentru dezvoltatorii ce utilizează MCU Kinetis.
Unealta de dezvoltare KwikStik combină o sondă de depanare J-Link, senzori tactili de joasă putere, o interfaţă pentru LCD cu segmente şi o suită de programe de dezvoltare şi rulare. Dispozitivul este proiectat pentru a fi utilizat în mai multe moduri – ca platformă alimentată de baterii, de sine stătătoare pentru dezvoltare cu microcontrolerul integrat Kinetis K40; ca o platformă suplimentară a Tower System sau ca depanator J-Link. Prin combinaţia dintre platforma de dezvoltare KwikStik şi Tower System, dezvoltatorii au acces la multiple opţiuni de extindere de sistem utilizând module periferice Freescale şi terţi, care oferă detecţie senzorială şi conectivitate wireless şi industrială (inclusiv Wi-Fi). Interfaţa de depanare integrată J-Link SEGGER elimină necesitatea unei sonde de depanare separate, asigurând astfel economii semnificative.
Platforma de dezvoltare KwikStik oferă o gamă economică energetic de periferice de comunicaţii, conectivitate şi interfeţe om-maşină cu semnal mixt. Microcontrolerul Kinetis K40, elementul central al KwikStik este caracterizat de memorie flash pe cip de 256 KB şi o cantitate echivalentă de FlexMemory, permiţând spaţii mari pentru programe aplicative. Platforma Processor Expert ce suportă microcontrolerele Kinetis îi ajută pe proiectanţi să scrie cod de aplicaţie chiar şi pentru cerinţele software complexe.

Freescale Semiconductor
www.freescale.com/kwikstik

Citeste toata stirea

Freescale oferă microcontrolere Power Architecture® pentru piaţa industrială

Seria PX: PXD10, PXN20, PXR40, PXS20 oferă performanţă fără precedent având caracteristici de siguranţă consolidate pentru aplicaţii care variază de la drivere de motoare până la energie regenerabilă.
Freescale Semiconductor a anunţat adăugarea de microcontrolere Power Architecture® (MCU) la portofoliul său în extindere de MCU industriale.
MCU single-core de până la 600 DMIPS, opţiunile multicore şi memorie flash de până la 4MB încorporată, face ideală seria PX pentru controlul de mişcare şi alte aplicaţii complexe, în timp real. Un singur cip poate controla până la şase motoare, procesează un complex de algoritmi matematici şi asigură mai mult de trei conexiuni tipice de comu­nicaţii - toate în acelaşi timp. Freescale ajută la dezvoltarea uşoară de aplicaţii cu software run-time, modele de referinţă şi instrumente pentru realizarea rapidă de prototipuri, depanare avansată şi modelarea sistemului. Clienţii pot reduce costurile de pornire a aplicaţiei prin utilizarea gratuită de software run-time Freescale: MQX ™ RTOS, DSP şi biblioteci de control ale motorului şi Swell PEG (GUI portabil încorporat). În plus, MCU din seria Freescale Power Architecture sunt susţinute de instrumente şi sistem de operare INTEGRITY® RTOS de la Green Hills, certificat pentru siguranţă.
Freescale oferă instrumente extinse pentru prototipuri realizate rapid cu seria PX, incluzând:
1. Sistemul modular Tower System platformă hardware de dezvoltare cu cod de iniţializare QuickStart.
2. RAppID Toolbox cu link-uri către MathWorks Simulink®.
3. Depanator GUI FreeMASTER.

Freescale Semiconductor
www.freescale.com

Citeste toata stirea

2 în 1: Primul procesor AMD Fusion duce informatica integrată la nivel superior

Platforma AMD Embedded G-Series combină CPU (Central Processing Unit) cu consum redus de energie şi GPU (Graphics Processor Unit) programabil, într-un pachet compact şi puternic: APU (Accelerated Processing Unit).


Prin lansarea platformei AMD Embedded G-Series, AMD a stabilit un nou standard pentru tehnologiile informatice integrate. Platforma este prima din lume care a integrat un procesor cu consum mic de energie electrică şi un sistem avansat DirectX® 11 GPU într-o singură componentă, Accelerated Processing Unit (APU).
Lucrând în colaborare cu nucleele avansate de procesor ×86, multiplele nuclee vector permit dezvoltatorilor de software, nu numai să creeze noi aplicaţii inovatoare “number crunching” care extind domeniile de aplicare ale informaticii integrate, dar, de asemenea, permit ca multe aplicaţii existente ale informatice integrate să ruleze mult mai repede, fără a depăşi nivele de putere electrică existente la dispozitive SFF (Small Form Factor). Acest lucru face ca platforma AMD Embedded G-Series să devină succesor ideal pentru majoritatea platformelor încorporate concurente, variind de la dispozitive mobile integrate cu putere redusă, până la servere industriale aflate la marginea de sus a integrării. Suportul pentru noile instrumente, cum sunt DirectCompute şi OpenCL™ pentru procesări thread-level şi data-parallel simplifică sarcina de a crea noi aplicaţii.

Procesoarele de astăzi au nevoie de performanţă


Aproximativ la fiecare doi ani, progresele în tehnologia semiconductoarelor au permis arhitecţilor de chip-uri să dubleze numărul de tranzistoare care încap într-o anu­mită zonă de siliciu. În ultimul deceniu, aceste tranzistoare suplimentare au fost folosite pentru a mări dimensiunea de on-chip cache şi de a adăuga mai multe nuclee processor ×86 la proiecte, făcând procesoarele de azi cele mai rapide procesoare care au fost vreodată. Dar, chiar la cât de rapide sunt, procesoarele de azi manifestă lipsă de performanţă ne-oferind o experienţă de calcul activă, în sensul modern. Cele mai recente aplicaţii necesită procesoare care lucrează cu mari cantităţi de date şi necesită sute, dacă nu chiar mii de “fire individuale” pentru a manipula baze de date masive necesare, de exemplu, pentru recunoaşterea unui model în timp real pentru controlul calităţii, la sonar sau analiza de date radar, supraveghere video sau apli­caţii de imagistică medicală (cum ar fi detectarea anomaliilor într-o ima­gine 3D X-ray), pentru a numi doar câteva. Nu este surprinzător, fiindcă arhitecturile tradiţionale CPU şi instrumentele de programare a apli­caţiilor, optimizate pentru structuri scalare de date şi algoritmi seriali, nu sunt cele mai potrivite pentru aceste noi modele vector-oriented, multi-threaded şi data-parallel.

Procesoarele vectoriale îmbunătăţesc viteza de procesare


Un procesor vectorial este o unitate centrală de procesare (CPU), care implementează un set de instrucţiuni ce operează pe mulţimi de date (ca o linie sau o coloană într-o matrice) numite vectori. Acest lucru este în contrast cu un procesor scalar, ale cărui instrucţiuni operează pe date reprezentate ca elemente unice. Marea majoritate a procesoarelor sunt scalare.
Din fericire, au apărut noi arhitecturi şi instrumente inovatoare mai potri­vite pentru aceste sarcini de lucru. Unităţi de procesare grafică (GPU), prevăzute iniţial pentru a spori calitatea reprezentărilor grafice 3D, au evoluat în procesoare puternice, cu programare vectorială, care pot acce­lera o mare varietate de aplicaţii software. Mijloace de programare cum ar fi DirectCompute şi OpenCL™ permit dezvoltatorilor să creeze aplicaţii bazate pe standarde deschise, care combină puterea nucleelor CPU şi miezuri de GPU programabile şi care rulează pe o mare varietate de platforme hardware. Mai mulţi furnizori independenţi de software (ISV - Independent Software Vendors) au adăugat deja aceste capacităţi de programare vectorială în produsele lor cele mai avansate, dar până acum, acestea au avut structura codului de programare în jurul hardware-ului propriu şi au elaborat interfeţe software pentru a lucra. După cum se poate imagina, acest lucru necesită mult efort, iar rezultatele au fost de multe ori sub nivelul optim.

AMD a lansat noua unitate de procesare accelerată (APU)


Noul produs AMD Fusion APU bazat pe platforma Embedded G-Series elimină, pentru prima dată, aceste bariere printr-un nou design electronic. Noua unitate APU de la AMD combină nuclee CPU ×86 de uz general cu unităţi GPU cu adevărat programabile, pe o singură arie de siliciu. Acest lucru permite să apară noi produse OEM şi de a crea noi generaţii de aplicaţii şi interfeţe de utilizator fără constrângerile impuse de arhitecturi de CPU tradiţionale care au dominat industria de calculatoare de zeci de ani. Alţii au criticat apariţia unui CPU şi o unitate grafică de bază împreună, într-un singur pachet, dar nici unul nu a încercat această acţiune cu GPU-uri programabile cu adevărat, să nu mai vorbim de GPU care poate fi programat folosind instrumente încadrate în standarde industriale high-level, cum ar fi uneltele de dezvoltare DirectCompute şi OpenCL™. Vor apare componente APU noi, la fel cum au apărut platformele de astăzi DirectCompute şi OpenCL™, din punct de vedere al software-ului.

Cu o arie de numai 361 mm2 AMD G-Series APU ocupă spaţiul extrem de eficient.
Aceasta înseamnă că, resursele prin care producătorii de echipament original (OEM) sprijină platformele actuale, pot rămâne utile pentru platforme viitoare. În plus, noile APU includ, de asemenea, o varietate de elemente critice ale sistemului, inclusiv controlere de memorie, controlere I/O, decodoare video specializate, ieşiri pentru display şi interfeţe BUS. Toate acestea sunt pe unităţi APU form factor de dimensiuni mici, care conţin single-core sau dual core adaptate la cerinţele pieţelor ţintă, oferind performanţe ridicate într-o platformă eficientă din punct de vedere al puterii consumate, pentru o varietate largă de modele integrate.
Dar, care sunt caracteristicile cheie comune şi beneficiile noii platforme AMD Embedded G-Series pentru producătorii de echipament original, integratorii de sistem şi utilizatorii finali?

Multimedia şi experienţă vizuală remarcabile


În primul rând, noul produs AMD Embedded G-Series permite o plat­formă multimedia completă, expe­rienţă nouă pe Internet şi un nou nivel de performanţă vizuală cu o ameliorare de 87% în scorul 3DMark™06 (vezi 1) (Notă: Un scor 3DMark este o măsură generală a capabilităţilor sistemului de jocuri 3D, bazate pe grafica 3D în timp real şi teste de procesor) şi creşterea de peste trei ori a performanţei per watt, comparativ cu generaţia anterioară de putere mică (vezi 2). Înainte de această platformă AMD Embedded G-Series, utilizarea dispozitivelor grafice discrete sau plăci add-in a fost necesară pentru a atinge un nivel comparabil de performanţă grafică şi video, dar a condus la consumul de energie mult mai mare. Procesorul AMD Embedded G-Series este primul din categoria sa care încorpo­rează grafică capabilă DirectX® 11 cu suport OpenGL4.0 şi OpenCL™.
Disponibilitatea graficii avansate API ajută comunitatea de dezvoltare de software pentru a construi azi, cu uşurinţă, aplicaţiile de mâine. Pentru aceste aplicaţii, platforma asigură două afişări independente printr-o bogată varietate de interfeţe, inclusiv DisplayPort, DVI şi HDMI, precum şi interfeţe integrate LVDS şi VGA la o rezoluţie maximă de 2560 × 1600 pixeli. Toate aceste îmbunătăţiri fac din platforma AMD Embedded G-Series o alegere ideală pentru o gamă largă de aplicaţii în pieţele convergente. Pe de o parte, noua tehnologie nu numai că serveşte tehnologia PC de consum standard, cum ar fi notebook-uri sau tablete grafice, dar şi aplicaţii încorporate în electronice de larg consum (CE - Consumer Electro­nics), cum ar fi Set-Top-Box (×STB) integrat pentru IP-TV, precum şi clienţi de streaming media (ex. radio,TV) sau console de jocuri. Pe de altă parte, platforme scalabile
(Notă: Scalabilitatea este proprietatea unui sistem de a suporta corect un volum mai mare de încărcare sau de a permite mărirea sau extinderea sa), servesc şi domeniul “non-consumator”-ilor orientat spre aplicaţii embedded, care solicită performanţe excep­ţionale vizual şi, în ansamblu pe un factor de formă mic şi design fără ventilator, în combinaţie cu disponibilitatea pe termen lung. Acestea pot fi găsite, de exemplu, în automatizări industriale, infotainment, digital signage (Notă: Signage este orice fel de grafică vizuală creată pentru a afişa informaţii pentru un anumit public), jocuri de noroc, aparate medicale şi informaţii legate de transport.

Design “Small Form Factor” inovator


Datorită îmbunătăţirilor continue de proiectare a procesoarelor, platforma AMD Embedded G-Series are un design compact şi consum optimizat de putere. Integrarea dispozitivului APU reduce aria ocupată pe siliciu a unei platforme tradiţionale de la trei chip-uri, la două chip-uri. APU şi companion-ul ei Controller Hub simplifică proiectarea cablajului imprimat, care necesită mai puţine straturi şi o sursă de alimentare mai mică (vezi 3).

Noua componentă AMD Fusion APU bazată pe platforma Embedded G-Series combină una sau două nuclee de procesor ×86 cu o serie de motoare programabile SIMD (Single Instruction, Multiple Data). În plus, integrează memorie şi controlere I/O, decodoare video specializate, ieşiri pentru display şi interfeţe de BUS.
Îmbunătăţirea de 48% a eficienţei utilizării ariei, comparativ cu generaţiile anterioare, amprenta mică pe placheta de siliciu şi consumul redus de energie ajută la reducerea costurilor globale ale sistemului şi permite dispozitivelor ultramobile să funcţioneze fără ventilator, cum ar fi TabletPC pentru logistică şi asistenţă medicală, pentru a funcţiona mai mult timp între încărcările bateriei.

Costurile minimizate în ciclul de viaţă mare al produsului


Cu o serie de opţiuni de performanţă, variind funcţie de variantă - 1.2GHz single-core sau 2 × 1.6GHz dual core, platforma AMD Embedded G-Series permite OEM-urilor să utilizeze mo­dele unice de placă de circuit imprimat pentru întreaga gamă - de la nivel simplu până la soluţii high-end. Astfel, o platformă poate fi utilizată pentru o gamă întreagă de variante de produse, de exemplu, pentru o familie de display-uri de PC-uri, variind de la low-power până la versiuni de înaltă performanţă. Dacă cineva a dezvoltat un nou sistem, bazat pe această platformă, factorul de reutilizare pentru un nou proiect este extraordinar din cauza procesorului care acoperă până la 80% din ce­rinţele de performanţă de astăzi, în toate pieţele embedded. Acest lucru comun în proiectarea platformei sca­labile simplifică lanţul de aprovizionare şi ajută la minimizarea complexitaţii operaţionale, împreună cu costurile asociate. Designul unic al platformei scalabile ajută producă­torii de echipament original să re­ducă costurile de dezvoltare, să poată optimiza soluţii şi de a creşte stabilitatea produsului. Mai mult, durata de viaţă mare preconizată a acestui produs al AMD asigură disponibilitatea pe termen lung a platformei, care este esenţială, mai ales pentru pieţele de informatică integrată, non-CE.

Concluzie


Platforma AMD Embedded G-Series oferă clienţilor de produse embedded un sistem complet şi scalabil. Se oferă performanţă şi o experienţă vizuală remarcabile, menţinând în acelaşi timp consumul de energie foarte scăzut. Cu toate aceste beneficii disponibile pe o arie de siliciu redusă dramatic, nu este surprinzător că, în paralel cu lansarea noii platforme AMD Embedded G-Series, mai mulţi producători de embedded hardware, cum ar fi Compulab, Congatec, Fujitsu, Kontron şi Quixant au anunţat planul de a sprijini primul APU din lume pe o gamă largă produse factor form embedded. Prin introducerea uneia dintre tehnologiile sale cele mai competitive la aceasta dată, noua tehnologie APU de la AMD este o soluţie convingătoare, care este potri­vită pentru aproape 80% din întreaga piaţă embedded, dar, de asemenea, are potenţialul de a revoluţiona piaţa de integrate de calcul în sine. Astfel, pro­ducătorii de echipamente originale ar trebui să ia în considerare evaluarea acestei noi tehnologii în efortul acestora de a îndeplini cerinţele clienţilor, pentru a activa experienţa utilizatorilor şi a folosi transferuri masive de date, asigurând astfel toate clasele de performanţă cerute pe pieţe.

1 Atunci când se compară procesorul AMD G-T56N cu AMD AthlonTM Neo L325/780E Platform.
• AMD G-T56N, 3DMark06 (1280×1024) are scorul 1938.
• AMD ASB1 AthlonTM Neo 325/780E platform, 3DMark06 (1280 × 1024) are scorul 1033.
• Rezultă: (1938-1033)/1033 = .876 × 100 = 87%
• Testarea internă a generaţiei actuale faţă de sistemul anterior AMD bazat pe procesoare integrate, precum cea din 13 octombrie 2010, a arătat îmbunătăţi­rea 87% a scorului 3DMark06 peste generaţia anterioară. Sistemul actual: AMD G-T56N APU, Inagua - platformă de dezvoltare, 2GB RAM, Windows 7.
Generaţia anterioară: AMD Athlon ™ Neo L325 - procesor, placă de bază MSI 9858, 2 GB RAM, Windows 7.

2 Când se compară AMD G-Series T44R Platform cu AMD SempronTM 210U/780E Platform rulând 3DMark06:
• T44R: 1401(3DMark06 1280×1024)/(9+4.7)=102.3 3DMarks/Watt
• AMD SempronTM 210U/780: 1000(3DMark06 1280×1024)/ (15W+13W+4.5W)= 30.8 DMarks/Watt
• Rezultă 102.3/30.8 = 3.32
• Testarea internă a generaţiei actuale faţă de cea prece­dentă a sistemelor AMD bazate pe procesoare integrate, precum cea din 13 octombrie 2010 a arătat creşterea mai mult de 3X la performanţa grafică-per-watt ca avantaj pentru generaţia actuală. Sistemul actual: AMD G-T44R APU (9W TDP), Inagua - platformă de dezvoltare, 2GB RAM, Windows 7. Generaţia anterioară: AMD Sempron ™ 2010U- procesor (TDP 15W), placă de bază MSI 9858, 2GB RAM, Windows 7. Performanţa grafica-per-watt este calculată pe baza 3DMark ® 06 de referinţă împărţit la TDP (Thermal Design Power = valoarea maximă a puterii sistemului de răcire).

3 AMD G-Series Platform are o amprentă pe siliciu, cu 48% mai mică faţă de generaţia anterioară:
• G-Series APU (19×19)361mm2 + G -Series FCH (23×23) 529mm2 = 890mm2
• ASB1 729mm2 + 780E 441mm2, + SB710 529mm2 = 1699mm2
• Rezultă (1699mm2 - 890mm2 ) / 1699mm2 × 100 = 48%


www.amd.com
Citeste tot articolul

Creşterea integrării în HMI (Human Machine Interface)

Implementarea MCU (Microcontroller) care combină controlere de afişaj grafic (graphic display), cu suport pentru senzori la atingere de tip capacitiv (capacitive touch), cu ecran tactil (touch screen) şi periferice USB.



de Rishi Vasuki, Product Marketing Manager, Advanced Microcontroller Architecture Division, Microchip Technology

Modelele HMI (Human Machine Interface) în domeniul sistemelor integrate evoluează rapid, iar costul de fabricaţie al interfeţelor la modă şi mai elegante continuă să scadă. Unele aplicaţii combină deja interfeţe sensibile la atingere, cum ar fi butoane, imagini glisante, ecrane sensibile la atingere şi reacţie tactilă (haptic feedback), cu afişaje grafice bogate, utilizând ultima generaţie de MCU (Microcontroller), care integrează contro­lere de afişaj grafic, cu periferice pentru punerea în aplicare a sesizării capacitive a atingerii, controlere “touch-screen” şi cuplare prin USB, totul pe un singur cip.

Figura 1: Termostat cu tehnologii rezistiv şi capacitive sensibile la atingere
Noile MCU promit combinarea între sistemul având un cost mai mic, cu o gamă mai largă de opţiuni pentru integrarea superioară în sistem.
Cu toate acestea, în timp ce tehnologia permite proiectanţilor reduceri de costuri la componente ale sistemului, de fabricaţie şi de depozitare, creşterea complexităţii software-ului de dezvoltare poate avea un impact pe piaţă, vizibil în timp, şi cere o integrare robustă de “touch-sensing” şi alte funcţii de interfaţă cu operatorul uman pe un singur MCU.
În primul rând, trebuie să se ia în considerare originea acestor preocupări. Luaţi, de exemplu, “capacitive touch-sensing”. Când tastele sensibile la atingere au fost introduse pentru prima dată, designerii şi-au dat seama imediat că aceasta noutate nu era la fel de simplu de implementat, precum tradiţionale push-butoane. Tastele sensibile la atingere trebuie să fie considerate în acelaşi mod ca şi senzori analogici, care au nevoie de o administrare atentă fiind sensibile la factori perturbatori: zgomot electric radiat sau zgomot sau care poate fi generat din surse aflate în mediul de lucru apropiat, cum ar fi aparate din locuinţă sau birou, lămpi fluorescente, surse de alimentare cu comutaţie, telefoane mobile şi motoare. Pentru a obţine taste robuste dar, şi receptive, sunt folosite tehnici bazate pe software cum ar fi “envelope detection”, filtrare, “de-bounce” şi filtre de “slew-rate”, în plus, pentru asigurarea unui nivel şi aspect bun al semnalului achiziţionat. Necesitatea de a reîmprospăta continuu un afişaj LCD cu segmente sau grafic, atunci când un utilizator este acceptat la intrare, trebuie să fie luată în considerare în acest sistem de interfaţă cu operatorul uman.
O prezentare grafică, cum ar fi forme geometrice sau text, pe un ecran TFT sau OLED, are nevoie de un procesor care lucrează continuu. De asemenea, se ia în considerare faptul că necesitatea de interfaţă cu operatorul uman care încorporează “touch-screen” este practic o intrare în plus faţă de afişarea graficii şi tastele touch-sensibile, cum ar fi în cazul cu termostatul din Figura 1. În final, este necesară în mod normal şi interfaţa de comunicare, cum ar fi USB.
Provocarea pentru proiectant este prin urmare, de a asigura prelucrarea în timp real a tuturor sarcinilor, reprezentate de intrările derivate din taste sensibile la atingere, un senzor “touch-screen” şi de comunicaţii de date prin USB, precum şi actualizarea informaţiilor pe ecran. Soluţia totală trebuie dată la două categorii de probleme care sunt esenţiale: hardware şi software.

Implementarea Hardware-ului
Există un număr de MCU-uri (Microcontrolere) care combină un controler şi periferice LCD-tactil sensibile pe un singur cip, dar, de obicei este un controler LCD display cu segmente, mai degrabă, decât o grafică LCD.
Cea mai recentă generaţie de MCU-uri, cum ar fi PIC24FJ256DA210, prezentat în Figura 2, reali­zează integrarea la un nou nivel, prin combinarea unui controler “graphic display”, un periferic USB 2.0 On-The-Go şi un periferic analogic special, care poate fi folosit pentru touch- sensing. Pentru a putea să afişeze grafice, PIC24FJ256DA210 a construit un tablou în culori, o memorie RAM mare, cu capacitatea de 96KB, o unitate de procesare grafică (GPU) şi o interfaţă directă la STN, TFT şi display OLED. Memoria RAM mare on- board permite ca datele să fie stocate pentru o grafică cu 256 de culori, la 8-biţi per pixel, pentru un display QVGA 320×240 în cadrul RAM on-chip. Palete de culori, utilizate în tablou, pot fi, de asemenea, comutate pentru a utiliza un set diferit de 256 de culori pe o imagine diferită. GPU permite obiecte simple, cum ar fi linii, dreptunghiuri, text ASCII şi decompresia imaginii din format PNG, pentru a fi executate prin emitere de o singură comandă. Acest lucru reduce supra-solicitarea CPU la 0%.
Figura 2 arată perifericele analogice legate la unitatea centrală, care are ca sarcină executarea măsurării timpului de încărcare - Charge Time Measurement Unit (CTMU).
“Capacitive touch-sensing” este una din mai multe aplicaţii susţinute de periferice CTMU.
CTMU conţine o sursă de curent constant, cu un timer, care poate fi folosită pentru a încărca cu semnal tip rampă un “sensor pad”.
Tensiunea de pe pad poate fi măsurată printr-un Analog-to-Digital Converter (ADC) aflat în cip. Când degetul unui utilizator este plasat pe pad, schimbarea de capacitate la “sensor pad” este înregistrată ca o modificare a tensiunii de ADC.
În cea mai simplă implementare, fiecare canal ADC poate fi conectat la o intrare “touch-sensitive” ce corespunde unei chei sau buton.

Figura 2: MCU cu integrare mare având controler grafic, touch-sensing şi USB
Cu 24 de canale de conversie analog/digitală - ADC, PIC24FJ256DA210 oferă canale suficiente “capacitive-touch” pentru a acoperi nevoile celor mai multe aplicaţii.
Putem examina hardware-ul mai departe: În cazul în care aplicaţia are atât o intrare rezistivă de “touch-screen”, precum şi taste sensibile la atingere, pentru funcţiile de meniu “short-cut”, mo­dulul grafic LCD este acoperit cu un senzor rezistiv sensibil la atingerea ecranului. În cazul în care controlerul touch-screen este integrat pe MCU principal, ieşirile din senzorul touch-screen, care de obicei sunt 4 sau 5 fire, pot fi conectate la canalele analogice ale MCU. În acest caz, conversia ADC pe MCU este împărţită între funcţiile chei sau taste “touch-sensitive” şi funcţia “touch-screen”. Măsurătorile ADC sunt utilizate pentru a estima coordonatele X & Y simţite pe ecranul tactil.

Implementarea Software-ului
De obicei, firmware-ul (software dedicat apli­caţiei) pentru driverele de afişaj şi capacitive touch-sensing va fi disponibil ca biblioteci separate. Pentru o integrare eficientă a acestor bi­blioteci, o rutină principală este necesară, func­ţionând ca Sistem de operare Real-Time (RTOS), pentru a stabili prioritatea şi frecvenţa de servire pentru fiecare sarcină. Pentru sarcinile care folo­sesc resurse comune hardware, rutina principală trebuie să stabilească un mecanism pentru actua­lizarea non-distructivă a registrelor de control şi de date pentru resursele partajate, înainte de comutarea între sarcini. În exemplul de mai sus, atât senzorii touch-screen şi touch-sensitive sunt conectaţi la ADC. Rata de eşantionare ADC, canalele eşantionate şi numărul de eşan­tioane necesare, diferă la senzorul de touch-screen, faţă de cele pentru taste. Prin urmare, este necesar ca rutina principală să salveze aceşti parametri înainte de a comuta între cele două sarcini.
Deoarece utilizatorul poate, în orice moment, să ceară informaţii, fie touch-screen, fie prin taste, rutina principală poate necesita utilizarea unui timp-de tăiere (time-slicing) pentru ambii senzori şi a permite să fie făcută scanarea suficient de des. Afişajul poate necesita actualizări periodice în cazul în care, de exemplu, se cere redare grafică cu animaţie pe ecran. Dacă afişajul este actualizat doar atunci când utilizatorul face selecţiile de meniu, atunci nu există nicio resursă disputată de CPU între funcţiile touch-sensing şi display-driver. În dispozitivul dat de exemplu (PIC24FJ256DA210) s-a de­di­cat un hardware pentru accelerare grafică, astfel ca un timp de “feliere” între “touch” şi funcţia grafică să nu fie o problemă. Pe acest dispozitiv, redarea unei casete (box), o linie sau text ASCII necesită pur şi simplu o singură comandă care să fie emisă de către CPU. Un proiect demonstrativ care evidenţiază integrarea de: taste sensibile la atingere, senzor touch-screen şi afişarea graficii, folosind biblioteci care stau la baza software-ul, este disponibil pentru download gratuit cu biblioteca mTouch ™ Capacitive-Touch şi pot fi rulate pe placa de dezvoltare cu PIC24FJ256DA210 se arată în Figura 3.

Figura 3: Placa de Dezvoltare PIC24FJ256DA210 cu Kit ecran TFT de 3,2"
Există şi alte funcţii care pot fi integrate pe un singur cip, împreună cu touch-sensing. De exemplu, CTMU periferic poate fi folosit pentru măsurarea temperaturii, instrumente medicale, de măsurare a timpului sau alte funcţii. Într-o aplicaţie, cum ar fi un termostat, este posibil să se utilizeze un CTMU periferic pentru măsurarea variaţiei de temperatură prin utilizarea unei diode externe, adică o funcţie în plus faţă de touch-sensing.
Din moment ce măsurarea temperaturii trebuie să fie efectuată mai rar, este posibil de a partaja acest periferic pe aceste două funcţii.

Comunicaţii prin USB
Integrarea USB cu touch-sensing este relativ uşoară, dacă sunt respectate reguli simple. Atunci când aplicaţia este conectată la o gazdă USB, trebuie ca procesorul să consume timp cu rutina dedicată să realizeze comunicaţia prin USB. Funcţiile touch-sensing pot fi reîncepute în câteva minute, după parcurgerea fazei de conectare (enumeration) şi finalizarea ei cu succes. Odată ce conectarea este completă, funcţiile USB consumă o cantitate foarte mică de lăţime de bandă CPU, de obicei sub 2%. În acest moment, rutina principală poate alege să servească funcţia de recepţie USB periodic, să zicem la fiecare milisecundă sau se foloseşte o abordare prin cereri de întreruperi.
Multe aplicaţii cu interfeţe touch-sensitive au început să includă “feedback haptic”.
Integrarea “haptică” într-o aplicaţie este mai mult o provocare a mecanicii. De obicei, “hapticele” au nevoie de un simplu Pulse Width Modulation (PWM) periferic pentru a conduce un mic vibrator sau motor. Este posibil ca, în unele aplicaţii, PWM “on-chip” periferic să fie de asemenea utilizat pentru a conduce un difuzor audio.
În astfel de cazuri, o integrare eficientă poate necesita baze separate de timp pentru canalul PWM care conduce motorul haptic şi cel de conducere a dispozitivului audio.

Concluzie
În timp ce integrarea single-cip de display grafic şi funcţii touch-sensing pot reduce costul sistemului, complexitatea software-ul poate fi un factor real de cost în timp, pe piaţă. Punerea în aplicare este simplificată prin selectarea unei platforme MCU care este susţinută de grafică, USB şi bibli­oteci software care asigură touch-sensing, care au fost proiectate şi testate pentru a fi inter-ope­rabile dar, şi în cazul în care integrarea robustă a fost demonstrată.
www.microchip.com
Citeste tot articolul

RX - Microcontrolerul eXtrem de la Renesas cel mai performant microcontroler de 32 biţi la preţ de 8 biţi!

Soluţia inovatoare de la Renesas a fost combinarea avantajelor design-ului CPU de mare viteză redefinite în familia SuperH cu flexibilitatea şi eficienţa de cod ale design-ului CISC din familiile H8S/H8SX şi M16C/R32C. Special, pentru a crea noua generaţie de arhitectură CPU, echipa de proiectare a RX a adăugat unitatea de virgulă mobilă simplă precizie împreună cu registrul de uz general de arhitectură Harvard şi tehnologia 5-stage pipeline din RISC împreună cu instrucţiunile de lungime variabilă din CISC.

Conceptul RX
Þelul RX este de a atinge o frecvenţă maximă de lucru mai mare, performanţe mai bune, eficienţă de cod îmbunătăţită şi un consum de energie mai redus decât la produsele anterioare.
O prezentare grafică a acestui concept este făcută în figura alăturată.
Încă de la lansare diverse publicaţii şi site-uri au afirmat că: “RX este nucleul CPU care poate învinge ARM-ul”, această afirmaţie este perfect valabilă dacă privim prin comparaţie performanţele de mai jos:

ARM7 = 0.95 DMIPS/MHz
ARM926 = 1.04 DMIPS/MHz
CortexM3 = 1.25 DMIPS/MHz
AVR32 = 1.30 DMIPS/MHz
PIC32 = 1.56 DMIPS/MHz


Platforma RX
Platforma RX de MCU eXtreme se prezintă în două serii, în funcţie de performanţe şi de domeniul de utilizare.

Gama RX600
MCU din seria RX600 asigură caracteristici şi posibilităţi orientate spre sistemele de control integrate. MCU sunt ideale pentru procesarea programelor de aplicaţie mari care trebuie executate la viteză foarte mare şi cu eficienţă sporită. Nucleul CPU RX poate accesa memoria flash on-chip într-un singur ciclu la 100MHz şi rulează la o frecvenţă a ceasului până la 200MHz. O unitate hardware FPU şi un multiplicator pe 32-biţi, divizor şi MAC permit RX600 să execute operaţii de filtrare în timp real şi procesarea rapidă a algoritmilor care implementează controlul precis al motoarelor. La seriile RX600 viitoare va fi disponibilă şi o unitate de protecţie a memoriei.

RX610
RX610 este primul dispozitiv aflat în producţie de masă şi de aceea este gata pentru evaluare şi design-in. Grupul RX610 oferă 8 dispozitive cu o capacitate de memorie între 768KB şi 2MB. Memoria flash este MONOS (Metal Oxide Nitride Oxide Silicon) de mare viteză, structură care poate fi accesată la 100MHz într-un singur ciclu. În plus, 128KB de SRAM şi o memorie data flash de 32KB cu funcţie de operare ca suport elimină nevoia de memorie externă. În plus faţă de funcţiile standard îmbunătăţite cum ar fi comunicarea serială şi timer-ul, noile produse încorporează o varietate de funcţii deja populare folosite în produsele Renesas, incluzând DMAC (Direct Memory Access Controller) pentru transfer rapid de date în locul CPU-ului, DTC (Data Transfer Controller) pentru a face transferul de date mai eficient şi CMT (Compare Match Timer) folositor pentru întreruperi sau polling. Mai mult decât atât, a fost adoptată o structură multi-layer pentru magistrala internă a RX600 pentru separarea căilor de transfer, făcând posibil transferul rapid extern cu ajutorul DMAC şi DTC.
Noile cipuri, prezente în capsule LQFP-144 şi BGA-176, integrează funcţii periferice noi şi îmbunătăţite pentru o proiectare flexibilă a sistemelor.
MCU din seria RX610 oferă un consum redus de energie în lucru de 0.5mA/MHz.

Scule de dezvoltare
Mediile de dezvoltare pentru grupul RX610 sunt: E100, E20, şi E1.
E100 este un emulator de înaltă funcţionalitate, în timp ce E20 asigură un raport eficient cost-performanţă, iar E1 este modelul low-cost.

Compilatoarele pentru RX600
Pentru a ajuta clienţii în sensul scurtării ciclului de proiectare al noilor sisteme integrate, Renesas şi furnizorii third-party cum ar fi IAR şi KPIT sprijină seria RX:
- Renesas RX Compiler Integrated development environment foloseşte HEW4;
- IAR Systems RX C/C++ Compiler Integrated development environment şi compilator optimizat C/C++ pentru RX;
- KPIT GNU compilator FOC pentru RX integrat în mediul de dezvoltare HEW;
Este disponibil şi kitul de start pentru RX610 de la Renesas.

Kitul include:
- Placă CPU cu microcontroler;
- Panou LCD pentru user/diagnosticare interactivă;
- E1 JTAG On Chip Debugger;
- Trial Renesas C compiler şi IDE (60 zile nelimitat şi apoi limitat la 128K cod);
- Tutorial cu sesiuni;
- Mostre de drivere pentru periferice.
Pentru cei interesaţi vă stăm cu plăcere la dispoziţie cu detalii tehnice sau comerciale.

Contact
Ing. Marian Enache
inginer asistenţă tehnică
mena@msc-ge.com
Mobil +40 (722) 300 028

MSC-Mibatron s.r.l.
O firmă a grupului MSC Vertriebs GmbH
Tel +40 (21) 2302521
Tel./Fax +40 (21) 2302530
bucuresti@msc-ge.com
www.msc-ge.com

COMPETENÞÃ ÎN ELECTRONICÃ
Citeste tot articolul

Sistem de dezvoltare multimedia complet: Placă multimedia pe 32 de biţi de la mikroElektronika

Placa multimedia pe 32 de biţi de la mikroElektronika este o placă de dezvoltare compactă, all inclusive pentru dezvoltare multimedia completă de înaltă calitate. Placa dispune în pachet de scheme şi manual de utilizare tipărite şi un CD plin de exemple de proiecte uşor de implementat, şi care arată întreaga putere a PIC32. Cele mai mult de 17 MB de programe incluse sunt scrise utilizând pachetele de programe Microchip, făcându-le uşor de utilizat în alte aplicaţii cu numai câteva modificări. Placa are suficientă putere pentru a gestiona un semnal video color pe 16 biţi la 15 cadre pe secundă, preluat de pe un card SD.
Partea din spate dezvăluie crierul plăcii – un dispozitiv PIC32MX460F512L. Această parte dispune de conectori USB Host şi Dispozitiv, dispozitiv flash M25P80, un EEPROM serial 24LC01, conector ICD extern, soclu de card SD, cip Codec stereo cu driver integrat de căşti, şi accelerometru digital.
Placa conţine un ecran tactil 320x240, joystick cu 4 căi, senzor de temperatură
Microchip MCP9700A, modul opţional ZigBee MRF24J40MA, conectori de căşti microfon, port RS-232, şi pini de prototipare. Placa mikroElektronika este disponibilă la un preţ de $149 pe microchipDIRECT (Part # TMIK001). Modulul radio ZigBee opţional 802.15.4 este disponibil la preţul de $9,95 (Part # MRF24J40MA).
www.mikroe.com
Citeste tot articolul

OK. Acum aveţi nevoie de un … Sistem GPS

GPS-ul (Global Positioning System) este una dintre tehnologiile actuale de vârf utilizate în scopul de stabilire a poziţiei unui mobil. Tehnologia este des utilizată în sisteme de navigare pentru automobile. În cele ce urmează vor fi descrise legătura între un receptor GPS şi un microcontroler, cât şi determinarea latitudinii şi longitudinii.


de Dusan Mihajlovic, Mikroelektronika - Departamentul Hardware

Modul SmartGPS conectat la Sistemul de Dezvoltare EasyPIC5
Sistemul global de poziţionare - GPS-ul - se bazează pe un număr mare de sateliţi care emit semnale în domeniul microundelor cu ajutorul cărora receptoarele îşi pot determina locaţia curentă, timpul sau viteza.
Receptoarele GPS pot comunica cu un microcontroler sau un PC în diferite moduri. O metodă comună este printr-un port serial, în timp ce cel mai des utilizat protocol pentru transmisia de date este un protocol NMEA.

Principiul de operare
Protocolul NMEA se bazează pe propoziţii. Fiecare propoziţie începe cu simbolul $ (ASCII 36) şi se termină cu simboluri pentru început de linii noi de program, precum sunt CR (ASCII 13) şi LF (ASCII 10). Semnificaţia întregii propoziţii depinde de primul cuvânt.
De exemplu, o propoziţie care începe cu $GPGLL oferă informaţii despre latitudine şi longitudine, timpul exact (Universal Coordinated Time), validitatea datelor (A - Activ or V - Void) şi date de control care permit să se verifice dacă sunt recepţionate date în mod regulat.
Toate datele sunt separate prin virgulă “,“. La fiecare secundă este trimis către microcontroler un set de propoziţii NMEA. În cazul în care datele despre latitudine şi longitudine nu sunt determinate (dacă receptorul GPS nu reuşeşte să-şi determine locaţia) sau când alte date nu sunt determinate, receptorul GPS va continua să transmită acelaşi set de propoziţii, restrânse acum datorită datelor lipsă.

Iată un exemplu de propoziţie generat de receptorul GPS care nu a reuşit să-şi determine locaţia:

$GPGLL,,,,,,V,*2A



Propoziţia completă NMEA ar fi cea din figura de mai jos:

Hardware
Conexiunea dintre microcontroler şi receptorul GPS este foarte simplă. Este necesar să se asigure în acest scop numai două linii RX şi TX.
Cu referire la Schema 1, linia RX este utilizată pentru transmiterea datelor de la un receptor GPS la microcontroler, în timp ce linia TX poate fi utilizată pentru transmiterea de comenzi specifice de la microcontroler la receptorul GPS.
În acest exemplu este utilizat receptorul GPS U-Blox LED-5. Similar cu majoritatea receptoarelor GPS, tensiunea sursei de alimentare a acestui receptor este de 3V.

Schema 1: Conectarea modulului LEA-5S la un PIC18F4520
Din moment ce microcontrolerul PIC18F4520 utilizează o sursă de alimentare de 5V pentru operare, este necesară utilizarea unui transformator de nivel de tensiune pentru a converti nivelul de tensiune pentru 1 logic de la 3,3V la 5V.
În acest exemplu, un afişaj grafic în rezoluţie de 128 × 64 pixeli afişează o hartă a lumii cu cursorul indicând locaţia.

Software
După cum se poate observa, codul programului care este transferat în microcontroler este foarte scurt. Aproape jumătate din program realizează conversia unui fişier bitmap într-un set de date corespunzător. O astfel de conversie permite microcontrolerului să afişeze harta. Restul codului constă din recepţionarea propoziţiilor NMEA de la receptorul GPS, calcularea latitudinii şi longitudinii, dimensionarea datelor pentru a se potrivi rezoluţiei de afişare de 128 × 64 pixeli şi poziţionarea cursorului la locaţia specificată.

Editorul de bibliotecă mikroC PRO for PIC® cu biblioteci pre-definite cum sunt: GLCD, Ethernet, CAN, SD/MMC etc.

Funcţii utilizate de program
Glcd_box() Desenează pătrat plin
Glcd_circle() Desenează cerc
Glcd_Dot() Desenează un punct*
Glcd_Fill() Şterge/umple afişajul*
Glcd_H_Line() Desenează linie orizontală
Glcd_Image() Importă imagine*
Glcd_Init() Iniţializarea afişajului LCD*
Glcd_Line() Desenează linie
Glcd_Read_Data() Citeşte date de la LCD
Glcd_Rectangle() Desenează dreptunghi
Glcd_Set_Font() Selectare font*
Glcd_Set_Page() Selectare pagină
Glcd_Set_Side() Selectare parte de afişaj
Glcd_Set_X() Determină coordonata X
Glcd_V_line() Desenează linie verticală
Glcd_Write_Char() Scrie caracter
Glcd_Write_Data() Scrie date
Glcd_Write_Text() Scrie text
* Funcţii din biblioteca Glcd utilizate în program
Alte funcţii mikroC PRO for PIC utilizate în program:
Usart_Init() strstr()
Usart_Read() Delay_ms()

NOTÃ
Programul pentru acest exemplu a fost scris pentru microcontrolere PIC® în C, Basic şi Pascal, dar pe pagina web: www.mikroe.com/en/article/ pot fi găsite şi programe scrise pentru microcontrolere dsPIC® şi AVR®.

Contact
MikroElektronika
www.mikroe.com
Citeste tot articolul

OK! Aveţi nevoie de un … CAN Bus

Deseori este necesar să existe integrate într-un sistem câteva microcon­tro­lere care să execute diverse operaţii pentru a funcţiona ca un întreg. În acest articol se prezintă modul de conectare a trei microcontrolere la un CAN şi cum se utilizează filtre în nodurile CAN în scopul filtrării mesajelor.


de Zoran Ristic, Mikroelektronika - Departamentul Software

Trei sisteme de dezvoltare EasyPIC5 conectate la un bus CAN prin module CAN-SPI
De fiecare dată când câteva unităţi periferice împart acelaşi bus de date, este necesar să se definească modul de accesare al acestuia.
Protocolul CAN descrie cu precizie toate detaliile despre conectarea a câteva dispozitive la o reţea şi ca atare este des utilizat în industrie. Protocolul defineşte în principal pre­cedenţa implementării bus şi rezolvă pro­blema “coliziunii” în interiorul hardware-ului în cazul în care încep să comunice simultan câteva unităţi periferice.

Hardware
În acest exemplu, un bus CAN va fi configurat astfel încât primul dispozitiv transmite mesaje constând din 0×10 şi 0×11 ca ID, în timp ce al doilea şi al treilea dispozitiv transmit respectiv mesaje constând din ID-urile 0×12 şi 0×13. De asemenea se vor

Figura 1: Filtrarea mesajelor
configura nodurile CAN astfel încât al doilea nod să răspundă la mesajele primite conţinând numai ID-ul 0×10, în timp ce al treilea răspunde numai la acelea conţinând ID-ul 0×11. Corespunzător, primul dispozitiv este configurat să recepţioneze mesaje conţi­nând un ID 0×12 şi 0×13 (Figura 1). Filtrarea mesajelor este uşor implementată prin ape­larea rutinei CANSPISetFilter care va gestiona de asemenea configuraţia necesară a regis­tre­lor microcontrolerului şi a plăcii SPI CAN.
În general, protocolul CAN nu necesită ca un dispozitiv Master să fie prezent pe bus.
Totuşi, pentru a uşura înţelegerea acestui exem­plu, menţinând-ul în acelaşi timp de uz general, se va configura primul dispozitiv să răspundă la apeluri individuale.

Software
Când se transmite un mesaj, nodul Master lasă timp suficient pentru ca nodul apelat să răspundă. În cazul în care un nod distanţat nu răspunde în perioada de timp impusă, Master-ul raportează o eroare la mesajul curent şi trece la apelarea altor noduri (Figura 2).

Figura 2: Exemplu de comunicaţie
În cazul în care un nod CAN periferic răspunde în acelaşi timp ca un alt nod, va avea loc o “coli­ziune” pe bus-ul CAN. Totuşi, numai prioritatea adresei dispozitivului recomandă ca în acest caz nodul care transmite mesajul cu cea mai mică prioritate se retrage din bus, astfel permiţând nodului să transmită mesaje de prioritate ridicată şi să continue imediat transmisia.
Cum a fost menţionat anterior, se va folosi un modul SPI intern al microcontrolerului pentru a transfera date pe bus-ul CAN. Unele avantaje ale utilizării modulului SPI intern al microcontrolerului sunt: posibilitatea de generare a unei întreruperi când se transmit şi se recepţionează date; modulul SPI operează independent de alte periferice şi are o configuraţie simplă.

Schema 1: Conectarea modulului SPI-CAN la un PIC16F887
Biblioteca SPI CAN permite setarea modului de operare al CAN şi filtrele nodului, citirea datelor de la buffer-ul plăcii CAN SPI etc.
Acest exemplu include de asemenea LED-uri pe pinii microcontrolerului care să indice că reţeaua operează corespunzător. Când nodul 2 răspunde la apelul nodului 1, LED-urile PORTB vor fi aprinse automat. Dacă nodul 3 răspunde apelului, LED-urile PORTD vor fi aprinse. Codul sursă al tuturor acestor noduri din reţea este asigurat de acest exemplu. Pentru a crea fişierul HEX pentru fiecare dintre aceste noduri individual, este necesar să se scrie numai o directivă DEFINE în antetul exemplului.

Editorul de biblioteci mikroC PRO for PIC® cu biblioteci pre-definite cum sunt: CAN_SPI, GLCD, Ethernet etc.
Ca rezumat, a fost descrisă o metodă de conectare a microcontrolerelor la bus-ul CAN. A fost de asemenea descrisă metoda de detectare a erorilor cu ajutorul unui protocol de comunicaţie în cazul în care un nod îndepărtat nu răspunde cum se aşteaptă, cum se filtrează mesaje utilizând filtre CAN, dar şi cum se realizează comunicaţii în general pe bus-ul CAN.

Funcţii utilizate în program
CANSPIGetOperationMode() Modulul de operare curent
CANSPIInitialize()* Iniţializarea modulului CANSPI
CANIRead()* Citirea mesajului
CANSPISetBaudRate() Setarea ratei baud CANSPI
CANSPISetFilter()* Configurarea filtrului de mesaje
CANSPISetMask()* Configurarea avansată a filtrelor
CANSPISet OperationMode()* Modul de lucru curent
CANSPIWrite()* Scrierea mesajului

* Funcţiile bibliotecii CANSPI utilizate în program

Alte funcţii mikroC PRO for PIC utilizate în program:
Delay_us()
SPI1_init()
SPI1_read()


Programul pentru acest exemplu scris pentru microcontrolere PIC® în C, Basic şi Pascal, precum şi programe scrise pentru microcontrolere dsPIC® şi AVR® pot fi găsite pe pagina web: www.mikroe.com/en/article/
Citeste tot articolul