29.6 Instrumente avansate de software

Exemplul nostru de filtru personalizat arată modul cel mai simplu de a obține un program care rulează pe SHARC DSP: editare, asamblare, conectare și descărcare, realizate de programe individuale. Această metodă este bună pentru sarcini simple, dar există instrumente software disponibile mai bune pentru programatorul avansat. Să ne uităm la ceea ce este disponibil atunci când sunteți interesat cu privire la DSP-uri.

Tabelul 29-3 Funcții din biblioteca C.

Aceasta este o listă parțială a funcțiilor disponibile când C este utilizat pentru a programa Analog Devices SHARC DSP.

Primul instrument pe dorim să-l examinăm este compilatorul C. Așa cum am discutat în ultimul capitol, atât asamblarea cât și C sunt utilizate în mod obișnuit pentru programare DSP. Un avantaj extraordinar al utilizării lui C este biblioteca de funcții, atât operații standard C, cât și algoritmi DSP. Tabelul 29-3 prezintă o listă parțială a funcțiilor bibliotecii C pentru DSP-urile SHARC. Grupul de matematică include multe funcții comune în DSP, cum ar fi funcțiile trig. (sin, cos, tan, etc.), logaritm și exponent. Dacă aveți nevoie de aceste tipuri de funcții în programul dvs., aceasta este probabil motivație suficientă în sine pentru a folosi C în loc de asamblare. Acordați o atenție deosebită rutinelor de "procesare a semnalului" din Tabelul 29-3. Aici veți găsi algoritmi cheie DSP, inclusiv: FFT-uri reale și complexe, filtre FIR și IIR și funcții statistice, cum ar fi valoarea medie, rms și varianța. Desigur, toate aceste rutine sunt scrise în asamblare, permițându-le să fie foarte eficiente atât în ​​utilizarea vitezei cât și a memoriei.

Figura 29-7 Exemplu de ecran pentru VisualDSP.

Acesta realizează un mediu de dezvoltare integrat pentru crearea programelor pe SHARC. Toate funcțiile următoare pot fi accesate din această singură interfață: editing, compiling, assembling, linking, simulating, debugging, downloading și creare PROM.

Tabelul 29-4 prezintă un exemplu de program C, preluat din "C Compiler Guide and Reference Manual" de la Analog Devices. Acest program generează un ecou prin adăugarea unei versiuni întârziate a semnalului la sine. Cele mai recente 4000 de eșantioane din semnalul de intrare sunt stocate într-un buffer circular. Când fiecare eșantion este achiziționat, bufferul circular este actualizat, cel mai nou eșantion este adăugat la o versiune scalată a celui mai vechi eșantion, iar eșantionul rezultat este direcționat spre ieșire.

Următorul instrument software avansat pe care ar trebui să îl căutați este un mediu de dezvoltare integrat. Acesta este un termen fantezist, ceea ce înseamnă că tot ceea ce este necesar pentru a programa și a testa DSP este combinat într-un singur pachet care funcționează ușor. Analog Devices oferă un mediu de dezvoltare integrat într-un produs numit VisualDSP®, care rulează sub Windows® 95 și Windows NTTM. Figura 29-7 prezintă un exemplu al ecranului principal, oferind o modalitate perfectă de editare, construire și depanare a programelor.

Iată câteva dintre caracteristicile cheie ale VisualDSP, care arată de ce un mediu de dezvoltare integrat este atât de important pentru dezvoltarea rapidă a software-ului. Editorul este specializat pentru crearea de programe în C, asamblare și un amestec al celor două. De exemplu, înțelege sintaxa limbajelor, permițându-i să afișeze diferite tipuri de declarații în culori diferite. Poți de asemenea edita mai multe fișiere simultan. Acest lucru este foarte convenabil, deoarece programul final este creat prin legarea mai multor fișiere împreună.

Figura 29-8 Ecran de depanare VisualDSP.

Acesta este o interfață comună pentru simulare și emulare. Poate vedea un program C alternant cu rezultarea codului de asamblare, urmărește executarea instrucțiunilor, examinează registrele (hardware, software și memoria), trasează activitatea magistralei și multe alte sarcini.

Figura 29-8 prezintă un exemplu de ecran de la debuggerul VisualDSP. Acesta este o interfață pentru două tipuri diferite de instrumente: simulatoare și emulatoare. Simulatoarele testează codul în computerul personal, fără a avea nevoie de nici un DSP să fie prezent. Acesta este, în general, primul pas de depanare după scrierea programului. Simulatorul imită arhitectura și funcționarea hardware-ului, incluzând: fluxuri de date de intrare, întreruperi și alte intrări/ieșiri. Emulatoarele (cum ar fi Analog Devices EZ-ICE®) examinează funcționarea programului pe hardware-ul real. Acest lucru necesită software emulator (pe PC) pentru a putea monitoriza semnalele electrice din interiorul DSP. Pentru a susține acest lucru, DSP-urile SHARC includ un port de acces pentru testul IEEE 1140.1 JTAG, permițând unui dispozitiv extern să urmărească funcțiile interne ale procesorului.

După ce ați utilizat un kit de evaluare și ați luat în considerare cumpărarea unor instrumente software avansate, trebuie să luați în considerare și participarea la o clasă de formare. Acestea sunt date de mulți producători DSP. De exemplu, Analog Devices oferă o clasă de 3 zile, predată de mai multe ori pe an, în mai multe locații diferite. Acestea sunt o modalitate excelentă de a învăța despre DSP de la experți. Uitați-vă la website-urile producătorului pentru detalii.