You are on page 1of 4

Capitolul 1 - Introducere

Aplicaii ale procesoarelor de semnal n comunicaii

Microprocesoarele tradiionale s-au ndreptat n principal ctre manipularea datelor. Similar, procesoarele DSP sunt concepute pentru realizarea calculelor

CAPITOLUL 1

matematice necesare procesrii semnalelor digitale. Tabelul 1.1 arat cele mai importante diferene dintre aceste dou categorii.

INTRODUCERE
Procesoarele numerice de semnal realizeaz operaii matematice. Calculatoarele folosite pentru afaceri i alte aplicaii generale nu sunt optimizate pentru algoritmi de prelucrare numeric a semnalelor (cum ar fi filtrarea digital sau analiza Fourier). Microprocesoarele DSP sunt specializate pentru prelucrarea numeric a semnalelor. Numrul acestor dispozitive a cunoscut o cretere deosebit n ultimii zece ani, fiind folosite aproape n orice domeniu, de la telefoanele celulare pn la instrumentele tiinifice avansate. Calculatoarele sunt extrem de utile n dou direcii principale: - manipularea datelor (procesarea cuvintelor i managementul bazelor de date); - calculele matematice (folosite n tiin, inginerie i procesarea semnalelor digitale). Toate microprocesoarele pot realiza ambele sarcini. Este scump s realizezi un dispozitiv optimizat pentru amndou. Exist diferene n proiectarea hardware, cum ar fi mrimea numrului de instruciuni i manipularea ntreruperilor. Importante sunt i problemele de marketing: costul de dezvoltare i fabricare, durata de via a produsului, etc. .

Manipularea datelor este bazat pe micarea datelor i verificarea inegalitilor, n timp ce calculul matematic folosete n special nmulirea i adunarea. TABELUL 1.1 Manipularea datelor Calcul matematic Procesarea cuvintelor, Procesarea semnalelor digitale; Managementul bazelor de date; Controlul micrii; Aplicaii Sisteme de operare, etc. Simulri tiinifice i inginereti, etc Adunarea (A+B=C) Operaii Micarea datelor (AB) principale Testarea valorii (if A=B then) nmulirea (AxB=C) Manipularea datelor implic stocarea i sortarea informaiei. S considerm un program de procesare a cuvintelor. Sarcina elementar este stocarea informaiei (scris de ctre operator), organizarea informaiei (tergere i copiere, verificarea ortografiei, ncadrarea n pagin, etc.) i apoi stocarea informaiei (cum ar fi salvarea documentului sau printarea). Aceste sarcini sunt finalizate prin mutarea datelor de la o locaie la alta i prin verificarea inegalitilor (A=B, A<B, etc.). Se dorete sortarea unei liste de cuvinte n ordine alfabetic. Fiecare cuvnt este reprezentat de un numr pe 8 bii, valoarea ASCII a primei litere din cuvnt. Aranjarea n ordine alfabetic implic rearanjarea ordinii

Capitolul 1 - Introducere

Aplicaii ale procesoarelor de semnal n comunicaii

cuvintelor pn cnd valoarea ASCII crete continuu de la nceput spre sfritul listei. Aceasta poate fi realizat prin repetarea a doi pai pn cnd aranjarea este terminat. Prima dat, se verific dac dou cuvinte adiacente sunt n ordine alfabetic. (IF A>B THEN). Apoi, dac cele dou cuvinte nu sunt n ordine alfabetic se schimb ntre ele. Cnd acest proces de doi pai se repet de cteva ori, pentru fiecare dintre perechile adiacente de cuvinte, lista va fi eventual aranjat. Ca un alt exemplu, se consider printarea documentelor cu un soft de procesarea cuvintelor. Computerul verific continuu prin dispozitivul de intrare (mouse sau tastatura) codul binar care indic printarea documentului. Cnd acest cod este gsit, programul mut datele din memoria computerului la imprimant. Se observ aceleai dou operaii de baz: mutarea datelor i verificarea inegalitilor. Operaiile matematice sunt folosite ocazional i nu afecteaz semnificativ viteza de execuie. Comparativ, viteza de execuie a celor mai muli algoritmi DSP este limitat aproape complet de numrul de nmuliri i adunri. n Figura 1-1 este prezentat implementarea unui filtru digital FIR. Folosind notaia standard, semnalele de intrare sunt x[ ], n timp ce semnalele de ieire sunt notate y[ ]. Obiectivul este de a calcula eantionul de la locaia n (y[n]). Un filtru FIR execut acest calcul prin adunarea eantioanelor semnalului de intrare ponderate cu coeficienii a0, a1, a2, a3 . Ecuaia y[n] este:

n afar de execuia rapid a calculelor matematice, procesoarele DSP trebuie s realizeze un timp de execuie prestabilit. Presupunem c am programat computerul s efectueze o sarcin, de exemplu s converteasc un document realizat cu un procesor de cuvinte. Nu conteaz dac execuia dureaz 10 milisecunde sau 10 secunde. Ateptm doar ca aciunea s fie terminat nainte s programm computerul s execute o alt operaie. Exist i motive importante s nu fie mai rapid dect necesar. Odat cu creterea vitezei, va crete costul, puterea consumat, dificultatea proiectrii i aa mai departe. Aceasta duce la o cunoatere exact a timpului de execuie, (element important pentru alegerea dispozitivului corespunztor) ct i a algoritmului.

y[n ] = a0 x[n ] + a1 x[n 1] + a2 x[n 2] + a3 x[n 3] + a4 x[n 4] + ....

(1.1)

n funcie de aplicaie, pot fi puini coeficieni sau cteva mii. Dei exist i transfer de date i evaluri ale inegalitilor, operaiile matematice determin timpul de execuie.

Figura 1-1

Filtrul digital FIR

Capitolul 1 - Introducere 1.1 STOCAREA CIRCULAR

Aplicaii ale procesoarelor de semnal n comunicaii

Acum ne uitm napoi la Figura 1-1 i ne imaginm c este implementat un filtru FIR n timp real. Pentru a calcula eantionul de ieire, trebuie s avem acces la cele mai recente eantioane de la intrare. Presupunem c folosim 8 coeficieni pentru acest filtru: a0, a1, ., a7. Trebuie s cunoatem valorile celor mai recente 8 eantioane ale semnalului de intrare: x[n], x[n-1],, x[n-7]. Aceste 8 eantioane trebuie stocate n memorie i rennoite continuu pe msur ce noi eantioane sunt achiziionate. Care este cea mai bun metod s prelucrm aceste eantioane? Rspunsul este stocarea circular. Tabelele 1.2a i b ilustreaz o stocare circular cu 8 eantioane. Am aezat eantioanele n 8 locaii de memorie consecutive, 20041 pn la 20048. Tabelul 1.2a - Stocarea circular la un moment dat Adresa de memorie 20041 20042 20043 20044 20045 20046 20047 20048 Valoarea memorat -0.225767 -0.269847 -0.228918 -0.113940 0.048679 0.222977 0.371370 0.462791 Eantion x[n-3] x[n-2] x[n-1] x[n] x[n-7] x[n-6] x[n-5] x[n-4] cel mai nou eantion cel mai vechi eantion

Procesoarele DSP sunt concepute s implementeze rapid algoritmii de prelucrare numeric. Pentru a nelege partea hardware, trebuie s nelegem mai nti algoritmii. n aceast seciune vom face o list detaliat a pailor necesari implementrii unui filtru FIR. n urmtoarea parte vom vedea cum procesoarele DSP sunt concepute s urmeze aceti pai ct mai eficient posibil. Pentru nceput, trebuie s facem diferena ntre procesarea ntrziat i procesarea n timp real. Un geofizician poate s foloseasc un seismograf pentru a nregistra micarea pmntului n timpul unui cutremur. Dup ce micarea s-a terminat, informaia poate fi citit cu ajutorul unui computer i analizat cumva. Alt exemplu al procesrii ntrziate este constituit de vizualizarea medical, cum ar fi tomografia computerizat. Datele sunt obinute n timp ce pacientul este legat la aparat, dar reconstituirea imaginii poate fi ntrziat. Ideea este c toate informaiile sunt disponibile programului de procesare. n cazul procesrii n timp real, semnalul de ieire este obinut n acelai timp n care semnalul de intrare este recepionat. De exemplu, n telefonie, pentru aparate auditive i radar. Aplicaiile trebuie s obin informaia necesar imediat, dei, uneori, poate fi ntrziat puin. De exemplu, o ntrziere de 10 milisecunde ntr-o convorbire telefonic nu poate fi detectat de vorbitor sau asculttor. Aplicaiile n timp real primesc un eantion, parcurg algoritmul, apoi genereaz un eantion (la ieire) i aa mai departe. Alternativ, pot primi mai multe eantioane, parcurg algoritmul i dau (la ieire) un grup de eantioane. Aceasta este lumea DSP.

Tabelul 1.2a arat cum 8 eantioane de la intrare pot fi stocate la un moment dat, n timp ce Tabelul 1.2b arat schimbrile dup ce urmtorul eantion este achiziionat. Sfritul irului linear este conectat la nceputul lui. Locaia de memorie 20041 este vzuta ca fiind urmtoarea dup 20048, la fel cum 20044

Capitolul 1 - Introducere

Aplicaii ale procesoarelor de semnal n comunicaii

este lng 20045. Urmrim irul cu ajutorul unui pointer (a crei variabil este o adres) care indic unde sunt stocate cele mai recente eantioane. Tabelul 1.2b - Amortizarea circular dup eantionul urmtor Adresa de memorie 20041 20042 20043 20044 20045 20046 20047 20048 Valoarea memorat -0.225767 -0.269847 -0.228918 -0.113940 -0.062222 0.222977 0.371370 0.462791 x[n-4] x[n-3] x[n-2] x[n-1] x[n] x[n-7] x[n-6] x[n-5] cel mai nou eantion cel mai vechi eantion

Pointerul ctre cel mai recent eantion trebuie modificat de fiecare dat cnd noi eantioane sunt achiziionate. Cu alte cuvinte, trebuie s fie un program logic care s controleze cum aceast valoare este rennoita, bazndu-se pe parametrii bufferului circular. Procesoarele DSP trebuie optimizate pentru manevrarea bufferelor circulare pentru a obine cea mai mare viteza de execuie posibil. Stocarea circulara este folositoare i n procesarea ntrziat. O metoda forat este de a stoca n memorie ntreaga lungime a fiecrui semnal intermediar. Stocarea circulara ofer o alt opiune: salvarea numai a eantioanelor necesare calculelor. Se reduce memoria necesara n schimbul unui algoritm mult mai complicat. Principalele companii productoare de procesoare DSP sunt: Texas Instruments, Analog Devices i Motorola, etc.

De exemplu, n Tabelul a pointerul conine adresa 20044, n timp ce n Tabelul b conine adresa 20045. Cnd este achiziionat un nou eantion, se nlocuiete cel mai vechi eantion din ir, iar pointerul este mutat cu o adresa nainte (este incrementat). Stocarea circular este eficient deoarece, cnd este achiziionat un nou eantion, trebuie schimbat o singur valoare. Pentru a manevra un buffer circular avem nevoie de: - un pointer care indic nceputul bufferului circular n memorie (n acest exemplu 20041); - un pointer care s indice sfritul irului (20048), sau o variabila care s memoreze lungimea (8); - trebuie s fie specificat pasul de citire al memoriei. In Tabelul 1.2 pasul este 1, de exemplu: adresa 20043 conine un eantion, adresa 20044 conine urmtorul eantion i aa mai departe.

You might also like