Caracteristici ale dezvoltării dispozitivelor digitale bazate pe microcontrolere

6.1. Dezvoltarea unui sistem bazat pe un microprocesor bazat pe un microcontroler

6.1.1. Principalele etape ale dezvoltării

MK bazate pe MPS sunt cel mai adesea folosite ca sisteme încorporate pentru rezolvarea sarcinilor de control pentru un obiect. O caracteristică importantă a acestei aplicații este lucrul în timp real, adică asigurarea răspunsului la evenimente externe pe parcursul unui anumit interval de timp. Astfel de dispozitive se numesc controlori.







Tehnologia de proiectare a controlorilor bazată pe MC corespunde pe deplin principiului de proiectare și depanare continuă a hardware-ului și a software-ului, adoptat în tehnologia microprocesorului. Acest lucru înseamnă că dezvoltatorul acestui tip MPS sarcină este punerea în aplicare a unui ciclu complet de proiectare, variind de la dezvoltarea funcționării algoritmului la teste complexe din produs, și, probabil, la fabricarea și întreținerea. Metodologia curentă pentru proiectarea controlorilor poate fi reprezentată așa cum se arată în Fig. 6.1.

În sarcina tehnică cerințele pentru controlor sunt formulate din punctul de vedere al implementării unei funcții de control specifice. Termenii de referință includ un set de cerințe care determină ce vrea utilizatorul de la operator și ce ar trebui să facă dispozitivul în curs de dezvoltare. Sarcina tehnică poate avea forma unei descrieri a textului, nu liberă în cazul general, din contradicții interne.

Caracteristici ale dezvoltării dispozitivelor digitale bazate pe microcontrolere

Fig. 6.1. Etapele de bază ale dezvoltării operatorului.

Pe baza cerințelor utilizatorilor, se face o specificație funcțională care definește funcțiile pe care le efectuează controlerul pentru utilizator după finalizarea proiectului, clarificând astfel cât de bine îndeplinește cerințele dispozitivului. Acesta include descrieri ale formatelor de date, atât la intrare cât și la ieșire, precum și la condițiile externe care controlează acțiunile controlerului.

Specificațiile funcționale și cerințele utilizatorului sunt criteriile de evaluare a funcționării controlerului după finalizarea proiectului. Poate fi nevoie de mai multe iterații, inclusiv discutarea cerințelor și a specificațiilor funcționale cu utilizatorii potențiali ai controlorului și corectarea corespunzătoare a cerințelor și specificațiilor. Cerințele pentru tipul de MC utilizate sunt formulate în acest stadiu cel mai adesea într-o formă implicită.

Etapa de dezvoltare a algoritmului de control este cea mai responsabilă, deoarece erorile din această etapă sunt de obicei detectate numai la testarea produsului finit și conduc la necesitatea unei prelucrări scumpe a întregului dispozitiv. Dezvoltarea algoritmului reduce de obicei la alegerea uneia dintre mai multe variante posibile de algoritmi, care diferă de raportul dintre volumul de software și hardware.

În același timp, trebuie să presupunem că utilizarea maximă a hardware-ului simplifică dezvoltarea și asigură o viteză ridicată a operatorului în ansamblul său, dar este de obicei însoțită de o creștere a costului și a consumului de energie. Acest lucru se datorează faptului că o creștere a cotei

hardware-ul este realizat fie prin selectarea unui MK mai complex, fie prin utilizarea unor circuite specializate de interfață. Ambele conduc la o creștere a costurilor și a consumului de energie. Creșterea proporției de software-ul reduce numărul de componente și costul hardware-ul controlerului, dar aceasta conduce la scăderea vitezei, crește capacitatea necesară a memoriei MC, de a crește în ceea ce privește dezvoltarea și software-ul de depanare. Criteriul de selecție aici este posibilitatea de a maximiza în continuare funcțiile software prestabilite, cu costuri minime de hardware și sub rezerva de performanță parametrii specificate și fiabilitate în întreaga gamă de condiții de funcționare. De multe ori determinate de cerințele sunt capacitatea de a proteja informațiile (cod de program) controler, necesitatea de a asigura timpul de funcționare maximă în mod independent, și altele. Ca urmare a acestei etape, cerințele pentru parametrii MC folosiți sunt definiți în cele din urmă.

La alegerea tipului de MC, sunt luate în considerare următoarele caracteristici principale: capacitatea de biți;

cerințele de alimentare și consumul de energie în diferite moduri, cantitatea de programe ROM și RAM de date;

posibilitatea extinderii memoriei programelor și a datelor;

disponibilitatea și capacitățile dispozitivelor periferice, inclusiv instrumentele de suport în timp real (timere, procesoare de evenimente etc.);

posibilitatea reprogramării ca parte a dispozitivului, disponibilitatea și fiabilitatea mijloacelor de protecție a informațiilor interne;

posibilitatea de livrare în diferite versiuni ale proiectului, costul în diferite versiuni;

prezența documentației complete;

Disponibilitatea și disponibilitatea instrumentelor de programare eficiente și depanarea MK, numărul și disponibilitatea canalelor de furnizare, capacitatea de a înlocui produsele altor firme.

Această listă nu este exhaustivă, deoarece specificitatea dispozitivului proiectat poate transfera accentul cerințelor la alți parametri ai MC. Factorii de determinare pot fi, de exemplu, cerințele privind acuratețea comparatorului intern de tensiune sau prezența unui număr mare de canale PWM de ieșire.

Gama MK produsă în prezent este estimată în mii de tipuri de produse de la diverse companii. Strategia de design modulară modernă oferă consumatorului o varietate de modele MK cu același nucleu procesor. O astfel de diversitate structurală deschide posibilitatea dezvoltatorului de a selecta MK optim fără redundanță funcțională, ceea ce minimizează costul părților componente.

Cu toate acestea, pentru a realiza în practică posibilitatea de a alege MC optim, este necesar să se studieze aprofundat algoritmul de control, să se estimeze cantitatea programului executabil și numărul de linii de interfață cu obiectul în stadiul de alegere a MC. Calculele greșite admise în acest stadiu pot duce ulterior la necesitatea de a schimba modelul MC și de a redimensiona placa de circuite a structurii controlerului. În astfel de condiții, este oportună efectuarea modelării preliminare a principalelor elemente ale programului de aplicație folosind modelul software-logic al MC selectat.







În absența MC, care oferă caracteristicile necesare ale controlerului proiectat, este necesar să revenim la stadiul de dezvoltare al algoritmului de control și să revizuim raportul selectat între cantitatea de software și hardware. Lipsa unui MC adecvat înseamnă adesea că, pentru a realiza cantitatea necesară de calcule (algoritmi de control) în timpul alocat, este nevoie de suport suplimentar hardware. Un rezultat negativ al căutării unui MK cu caracteristicile necesare poate fi, de asemenea, asociat nevoii de a menține un număr mare de obiecte de control. În acest caz, este posibil să se utilizeze scheme externe de încadrare MC.

În etapa de dezvoltare a structurii controlerului, se determină în final compoziția modulelor hardware existente și care urmează să fie dezvoltate, schimbarea protocoalelor între module, tipuri de conectori. Se efectuează proiectarea preliminară a operatorului. În ceea ce privește software-ul, compoziția și relațiile modulelor de program, limbajul de programare sunt determinate. În același timp

etapa este selectarea instrumentelor de proiectare și de depanare.

funcții de redistribuire între capacitatea de hardware și software în acest stadiu există, dar este limitată de caracteristicile unui MK deja selectat. Trebuie avut în vedere faptul că MK modernă a produs, de regulă, serie (familii) controlere, software-ul compatibil și constructiv, dar diferă în capacitățile lor (de memorie, set periferice, etc.). Acest lucru permite selectarea structurii controlerului, în scopul de a găsi varianta cea mai optimă.

Este imposibil să nu menționăm aici o ideologie nouă pentru dezvoltarea dispozitivelor bazate pe MC, propuse de compania "Scenix". Se bazează pe utilizarea microcontrolerelor RISC de mare viteză din seria SX cu o viteză de ceas de până la 100 MHz. Aceste MC au un set minimal de periferice încorporate, iar modulele periferice din ce în ce mai complexe sunt emulate de software. Astfel de module software se numesc "periferice virtuale", ele oferă o reducere a numărului de elemente ale controlerului, timpul de dezvoltare, creșterea flexibilității execuției. Până în prezent au fost elaborate întregi biblioteci de dispozitive virtuale care conțin module software bine stabilite pentru dispozitive cum ar fi module PWM și PLL, interfețe seriale, generatoare și

aparate de măsură a frecvenței, controale de întrerupere și multe altele.

6.1.2. Dezvoltarea și depanarea hardware-ului

După dezvoltarea structurii hardware-ului și a software-ului, lucrările ulterioare asupra controlerului pot fi paralelizate. Dezvoltarea hardware-ului include dezvoltarea unei scheme de circuite generale, aspectul topologiei circuitului, instalarea layout-ului și depanarea sa autonomă. Timpul de execuție al acestor etape depinde de setul de module funcțional-topologice aprobate, experiența și calificarea dezvoltatorului. În stadiul introducerii diagramei schematice și dezvoltării topologiei, de regulă, sisteme de proiectare comune precum "ACCEL EDA"

6.1.3. Dezvoltarea și depanarea software-ului

Pentru testarea și depanarea software-ului se utilizează așa-numitele simulatoare de software, care permit utilizatorului să execute programul dezvoltat pe modelul software-logic MC. Simulatoarele software sunt, de regulă, distribuite gratuit și sunt configurate imediat pentru mai multe MC din aceeași familie. Selectarea unui tip specific de MC între modelele familiale este furnizată de opțiunea corespunzătoare din meniul de configurare a simulatorului. Acest lucru simulează funcționarea procesorului, toate porturile I / O, întreruperi și alte periferice. Cartea de memorie a MC simulat este încărcată automat în simulator, depanarea se face în notația simbolică a registrelor.

După încărcarea programului în simulator, utilizatorul are posibilitatea să-l execute în mod pas cu pas sau continuu, să stabilească puncte de întrerupere condiționate sau necondiționate, să controleze și să modifice liber conținutul celulelor de memorie și registrele MC simulat.

6.1.4. Metode și instrumente pentru depanarea în comun a hardware-ului și a software-ului

Stadiul de depanare în comun a hardware-ului și a software-ului în timp real este cel mai consumator de timp și necesită utilizarea instrumentelor de depanare. Instrumentele majore de depanare includ:

taxe de dezvoltare (taxe de evaluare); monitoare de depanare;

Emulator în circuit - software și hardware, capabil să înlocuiască MC-ul emulat într-o schemă reală. Docking emulator în circuit cu sistemul de depanare se face folosind un cablu cu un cap de emulare special, care este introdus în loc de MC în sistemul de depanare. Dacă MK nu poate fi eliminat din sistemul de depanare, atunci utilizarea emulatorului este posibilă numai dacă acest microcontroler are un mod de depanare, în care toate terminalele sale sunt în starea a treia. În acest caz, pentru a conecta emulatorul utilizați un clip adaptor special, care se conectează direct la ieșirile MC emulate.

Emulator în circuite - aceasta este cea mai puternică și universală unealtă de depanare, care face procesul de funcționare a controlerului debuggabil transparent, adică controlat ușor, controlat arbitrar și modificabil.

Pentru mai multă ușurință, plăcile de dezvoltare sunt, de asemenea, echipate cu cel mai simplu instrument de depanare bazat pe monitorul de depanare. Se folosesc două tipuri de monitoare de depanare: una pentru MC cu magistrală externă, iar a doua pentru MC-uri care nu au o magistrală externă.

În primul caz, monitorul de depanare este furnizat ca un cip ROM, care este introdus într-o priză specială pe placa de dezvoltare. Placa are, de asemenea, memorie RAM pentru programele de utilizator și un canal de comunicație cu un computer sau un terminal extern. În al doilea caz, placa de dezvoltare are un circuit integrat al ROM programarea internă IC, care sunt controlate de un computer extern. În acest caz, programul de monitorizare este pur și simplu înregistrat în MK ROM împreună cu codurile aplicației utilizatorului. Cererea trebuie să fie pregătite special: în locurile potrivite pe care doriți să inserați apeluri la rutine monitor de depanare. Apoi se efectuează o încercare. Pentru a efectua corecții în program, utilizatorul trebuie să ștergă ROM-ul și să reînregistreze. Programul de aplicare finit se obține din raționalizată prin ștergerea tuturor apelurilor și monitorizează funcțiile monitorului de depanare. Debugging capacitățile furnizate de un set de „comision de dezvoltare, plus un monitor,“ nu este la fel de versatil posibil emulator în circuit, iar unele dintre resursele MC în procesul de depanare este selectat pentru monitor. Cu toate acestea, existența unui set de software gata făcute și hardware care permit nici o pierdere de timp pentru a începe instalarea și depanare a sistemului proiectat, în multe cazuri, este factorul decisiv. Mai ales când considerați că costul unui astfel de set este puțin mai mic decât costul unui emulator mai versatil.

Emulator ROM - firmware care vă permite să înlocuiți ROM-ul pe cartela debugată și să înlocuiți în loc de RAM, care poate fi descărcat de pe computer printr-un computer printr-unul din canalele standard de comunicații. Acest dispozitiv permite utilizatorului să evite multiple cicluri de reprogramare ale ROM-ului. Emulatorul ROM este necesar numai pentru MK, care poate accesa memoria externă a programului. Acest dispozitiv este comparabil în complexitate și cost cu plăcile de dezvoltare și are un mare avantaj: universalitatea. Emulator ROM poate lucra cu orice tip de MC.

Recent, au existat modele de emulatori ROM inteligenți, care permit "să privească" în interiorul MK-ului pe placa utilizatorului. Inteligentele inteligente sunt un hibrid de la un emulator de ROM convențional, un monitor de depanare și circuite de magistrală de schimbare rapidă de la unul la altul. Aceasta creează efectul, ca și cum monitorul de depanare a fost instalat pe placa utilizatorului și, în același timp, nu ocupă resurse hardware pentru MC, cu excepția unei mici zone de pași de program, aproximativ 4K.

Etapa de depanare în comun a hardware-ului și a software-ului în timp real este finalizată atunci când hardware-ul și software-ul împreună asigură executarea tuturor etapelor algoritmului sistemului. La sfârșitul etapei, programul de depanare este stocat utilizând programatorul în memoria nevolatilă a MC, iar controlerul este testat fără emulator. Sunt utilizate surse de energie de laborator. Unele surse externe de semnale pot fi modelate.

Etapa de integrare a controlerului dezvoltat în produs constă în repetarea depanării comune a echipamentului și a programului de control, dar când se lucrează în produs, alimentat de o sursă obișnuită și cu informații din surse de semnal standard și senzori.

Compoziția și domeniul de aplicare a testelor dezvoltate și fabricate de către controlorul depinde de condițiile de funcționare și este determinată de documentele de reglementare relevante. Testarea unor astfel de produse complexe din punct de vedere funcțional ca și controlorii moderni poate necesita dezvoltarea unor mijloace specializate de monitorizare a stării produsului în timpul testării.







Articole similare

Trimiteți-le prietenilor: