Sunteți pe pagina 1din 26

1.

Introducere în domeniul procesoarelor


numerice de semnal
1.1 Definire. Caracteristici

1.2 Producători de DSP-uri

1.3 Aplicaţii ale DSP-urilor

2.De ce procesoarele numerice de semnal


2.1 De ce procesarea numerica ?

2.2 De ce nu procesarea numerica ?

2.3 De ce se folosesc dsp-uri ?

3.Sisteme pentru procesarea numerică a


semnalelor
3.1 Introducere în procesarea digitală a semnalelor

3.2 Sisteme DSP

3.3 Familia TMS320

3.4 Arhitectura generală a procesoarelor DSP

4.Aplicatie practica (Procesarea semnalului


audio)
4.1 Introducere
4.2 Descriere generala
4.3 Hardware Design
4.4 Rezultate Obţinute
4.5 Concluzii

4.6 Procesarea semnalului audio (MATLAB)


5 .Referinte
5.1 Biblografie

5.2 Galerie foto


1.1 Definire. Caracteristici
Procesoarele numerice de semnal, numite în literatura de specialitate DSP-uri (DSP - Digital Signal
Processors), sunt sisteme de calcul programabile de tip "single-chip", destinate prelucrării complexe a
semnalelor digitale.

Deşi se numesc procesoare, ele înglobează într-un singur circuit integrat principalele subsisteme
componente ale unui sistem de calcul (unitate centrală, subsistem de memorie, subsistem de intrare / ieşire,
etc.), realizând funcţii complexe de transfer şi de prelucrare a datelor.

Pentru efectuarea unor prelucrări în timp real asupra datelor,procesoarele de semnal lucrează la frecvenţe
mari şi dispun de unset complex de instrucţiuni, putând astfel executa zeci de milioane de operaţii în virgul n
virgulă mobilă pe secund pe secundă (MFLOPS - Million Floating-Point Operations per Second).

Totodată, structura internă paralelă permite efectuarea mai multor operaţii simultan, ceea ce creşte
considerabil puterea de calcul a DSP-ului.
1.2 Producători de DSP-uri
Acestia sunt producători de dsp-uri de pe piata mondială :

•Texas Instruments (57%)

•Motorola (13%)

•AT&T (13%)

•NEC (8%)

•Analog Devices (6%)

•Alte firme (3%)

•Texas Instruments (TI)

• Mai mult de 100 de tipuri de DSP-uri, utilizate în domenii diverse, cum ar fi:

comunicaţii, calculatoare, produse de larg consum, conducerea proceselor industriale,

instrumentaţie, aplicaţii militare, etc.

• Cea mai largă linie de procesoare DSP de uz general într-un singur cip

• Cea mai extinsă reţea de distribuitori si de utilizatori experimentaţi.

• Suport eficient şi complex creat şi oferit pentru fiecare procesor DSP, care cuprinde:

sisteme de dezvoltare hardware şi software de înaltă calitate; asistenţă tehnică

permanentă (telefonic, sau direct la utilizator); buletine de informaţii, ghiduri de

utilizare, cărţi; mii de pagini de note de aplicaţii; şi un volum impresionant de cod

sursă oferit gratuit.

• Produse şi servicii oferite în domeniul prelucrărilor numerice de semnal cu

procesoare TI de către peste 200 de alte firme (third-party).

1.3 Aplicaţii ale DSP-urilor


Tehnicile DSP tind să înlocuiască metodele clasice de procesare analogică a semnalelor în multe domenii.
Procesarea numerică a semnalelor a devenit o tehnică standard în multe domenii, printre care:
telecomunicaţiile, analiza şi prelucrarea semnalelor biomedicale, controlul numeric, procesarea vorbirii şi a
semnalelor audio / video, instrumentaţia numerică, tehnicile radar, sonar, etc.

Se poate observa că domeniul procesării numerice a semnalelor este unul interdisciplinar, bazându-se pe noile
descoperiri din diverse alte domenii.

Aşa cum se poate vedea în figura, graniţele dintre domeniul DSP şi al altor discipline tehnice nu sunt bine
delimitate, existând multe puncte comune.

2.1 De ce procesarea numerica ?

1. garanteaza acuratetea semnalului ce este determinate de numarul de biti utilizati in prelucrare.

2. perfecta reproductivitate – aceleasi performante se obtin de la unitate la unitate, neexistand variatii


datorate componentelor.Ex. Utilizand tehnici DSP un semnal digital poate fi copiat sau reprodus laintervale de
timp diferite fara nici o degradare a semnalului (reproducerea semnalului de pe un ?)

3. nu exista deviatie sau variatii ale performantelor cu temperatura sau timpul(fen. de imbatranire).

4. avantaje datorate tehnologiei semiconductoarelor avansate : dimensiuni mici, cost redus, putere consumata
redusa(5v,3v,1,2v), viteza f mare de prelucrare a datelor.

5. cresterea flexibilitatii – cea mai importanta functie a DSP. Sistemele pot fi programate si reprogramate
pentru a indeplini diferite functii fara modificari in structura hardware a sistemului.

6. performante superioare. DSP`urile pot fi utilizate pentru realizarea unor functii care nu sunt pasabile in
varianta analogica.

2.2 De ce nu procesarea numerica ?

1. Viteza si cost. Proiectarea cu DSP poate fi costisitoare cand se cere o latime de banda cu frecventa
mare.Convertoarele AID si DIA sunt scumpe si nu au aplicatie larga cu DSP-urile.In mod curent numai CI
speciale pot fi utilizate in procesarea semnalelor de ordinul MHz dar acestea sunt foarte scumpe. Nici DSP-urile
nu sunt foarte rapide, de aceea prelucreaza semnale cu latime de banda de 100 MHz sunt procesate numai
prin metode analogice. O alternativa la CAD si CDA este CODEC.

2. timpul de proiectare

Pentru proiectarea unui sistem ci DSP-uri sunt necesare o serie de resuerse de aceea proiectarea este mare
consumatoare de timp si in unele cazuri chiar imposibila. Este cunoscuta si criza de ingineri pregatiti in acest
domeniu. Situatia se poate rezolva prin limbaje de nivel inalt ca dSpace ce ofera solutii integrate hardware si
software ce permit implementarea algoritmilor pornind de la sursa in c sau blocuri grafice din simulente
MATLAB.

3. Problema latimii finite a cuvintelor

In situatii de timp real considerentele exonomice impun ca in DSP algoritmii sa fie implementati utilizand un
numar limitat de biti. In aceste situatie daca exista un numar insuficient de biti cu care se lucreaza in
reprezentarea variabilelor poate reulta o degradare serioasa a variabilelor sistemului.

2.3 De ce se folosesc dsp-uri ?


3.1 Introducere în procesarea digitală a
semnalelor
Un semnal este definit ca o cantitate fizică dependentă de timp, de poziţie, presiune, etc. (de
exemplu, tensiunea de ieşire furnizată de către un microfon este strâns legată de presiunea acustică a
sunetului ca funcţie de timp).

În aplicaţiile practice, multe dintre semnalele întâlnite sunt analogice, deci prezente la fiecare moment
de timp şi având amplitudini diferite.

Pentru a prelucra astfel de semnale continui în timp folosind DSP-uri, este necesar ca acestea să fie
eşantionate şi cuantizate pentru a produce o frecvenţă numerică.

Această secvenţă discretă în timp, cu o amplitudine de valoare tot discretă, reprezentată pe un număr
finit de biţi, poartă numele de semnal digital.

Sistemele de procesare numerică a semnalelor utilizează un DSP şi o structură hardware digitală, precum
şi două convertoare, unul analog-numeric (ADC - Analog-to-Digital Converter) şi unul numeri-analogic
(DAC - Digital-to-Analog Converter) pentru a înlocui dispozitivele analogice standard, precum:
amplificatoare, modulatoare şi filtre.

Semnalul analogic ce trebuie procesat este mai întâi eşantionat şi codificat într-un semnal digital în
formă binară prin blocul ADC. Procesorul DSP realizează operaţii matematice bazate pe un anumit
algoritm de prelucrare numerică a semnalelor, implementat în software.

Semnalul digital obţinut la ieşire poate fi convertit înapoi în formă analogică prin blocul DAC.

De asemenea, un procesor DSP poate prelucra şi semnale digitale primite la intrare de la alte structuri
numerice şi poate furniza în exterior comenzi digitale către alte sisteme. În unele aplicaţii, un sistem DSP
poate crea intern semnale digitale.

Algoritmii de tip DSP pot fi implementaţi pe mare varietate de structuri digitale:


• sisteme logice programabile sau neprogramabile

• microprocesoare şi microcontrolere de uz general

• procesoare numerice de semnal de uz general

• Sisteme logice programabile sau neprogramabile


Se pot implementa algoritmi de codare şi decodare video, pe un singur cip VLSI (Very Large Scale
Integration - cu Integrare pe Scară Foarte Largă). Totuşi, soluţiile hardware sunt orientate către
rezolvarea unor aplicaţii specifice. Astfel de soluţii sunt mai rapide şi de mai mici dimensiuni decât
soluţiile programabile, însâ necesită un timp mult mai mare pentru proiectare, un cost ridicat pentru
dezvoltare şi sunt dificil de modificat sau upgradat (actualizat). Procesorul programabil poate fi
programat pentru o multitudine de task-uri (sarcini). Se utilizează pentru sisteme complexe şi care sunt
prea dificil de realizat pe seama circuitelor neprogramabile, pentru produse care ncesită un timp de
dezvoltare foarte scurt şi un cost de punere la punct scăzut, sisteme care trebuie upgradate periodic, pe
baza unor noi algoritmi şi standarde. Pentru o sarcină specifică, procesorul este mai lent decât cip-ul VLSI
care ar realiza acelaşi task.

• Microprocesoare şi microcontrolere de uz general


Microprocesoarele şi microcontrolerele de uz general sunt astfel concepute încât să poată realiza
proces realiza procesări în forme extrem de generale, folosind o arhitectură von Neumann, la care există
un spaţiu unitar de memorie, atât pentru instrucţiuni, cât şi pentru date. Prin contrast, o arhitectură
Harvard separă spaţiul de memorie în memoria program şi memoria de date, astfel încât ambele să
poată fi accesate simultan. Cea mai mare parte a DSP-urilor utilizează o arhitectură Harvard modificată şi
sunt optimizate pentru a efectua operaţii repetate de înmulţire şi sumare care accesează în mod
secvenţial datele stocate în locaţii consecutive ale memoriei.

• Procesoare numerice de semnal de uz general


Sistemele de tip DSP au înlocuit în mare parte sistemele de procesare analogică şi au permis extinderea
considerabilă a ariei aplicaţiilor. Principalul avantaj al DSP-urilor este programabilitatea lor. Un sistem DSP
permite utilizatorului să modifice task-urile prin scrierea unui nou cod în memoria sistemului. De
asemenea, permite actualizarea parametrilor sistemului pe baza unor noi algoritmi pentru o mai bună
adaptare la mediul în continuă schimbare. Sistemele DSP se bucură de performanţe deosebite întrucât
atât memoria, cât şi procesorul, sunt practic independente de temperatură şi pot reacţiona corect în
diferite medii externe pe întreaga durată de viaţă a produsului.

Mai mult, un acelaşi algoritm DSP poate fi transpus în diverse limbaje şi poate fi rulat pe diferite
arhitecturi hardware cu aceleaşi rezultate. Costul sistemelor DSP este în continuă scădere, în timp ce
performanţele continuă să crească de la o generaţie la alta. Puterea consumată de către un DSP a scăzut
spectaculos de la o generaţie la următoarea, astfel încât astăzi dispozitivele realizate se pretează foarte
bine a fi incluse în structuri portabile. În plus, unele operaţii de procesare a semnalelor nici nu pot fi
implementate pe baza tehnicilor analogice.

3.2 Sisteme DSP


https://www.google.com/url?
sa=i&source=images&cd=&cad=rja&uact=8&ved=2ahUKEwiLxN_QmZfiAhXnwAIHHUkrA5wQjRx6BAgBEAU&url=http%3A%2F%2Fcs.tau.ac.il
%2F~nin%2FCourses%2Fmivne98%2Fdsp%2Findex.html&psig=AOvVaw3j0Ys3ujZqeEge6nDIIR5F&ust=1557792017039585

De obicei, sistemele DSP sunt incluse în sisteme mai largi cu rolul specializat de a realiza operaţii de
procesare numerică a semnalelor, permiţând astfel întregului sistem să execute task-uri mai generale. De
exemplu, un procesor DSP este utilizat în cadrul unui modem pentru controlul transmisiei de date, iar
întreg ansamblul constituie sistemul DSP al unui calculator.

Destul de des, acest tip de sistem DSP rulează doar o singură aplicaţie (specifică) şi nu poate fi
programat de către utilizator.

De fapt, utilizatorul nici nu are nevoie să ştie că un astfel de procesor (de exemplu, un procesor DSP
care este inclus în sistemul de control al hard-disk-ului pentru controlul motorului şi a poziţionării capului
de citire) este parte componentă a calculatorului.

În cadrul proiectării independente de procesor, limbajele de nivel înalt, precum C sau C++, sunt
preferate şi sunt disponibile pentru majoritatea procesoarelor DSP.

Programele scrise în C sunt mai uşor şi mai rapid de scris şi ele pot fi portate de la un procesor la altul
prin simpla recompilare a codului sursă, folosind un compilator C specific noului procesor. Această
portabilitate este foarte importantă, mai ales când algoritmul va fi implementat pe mai multe procesoare
diferite. Soft-ul dependent de procesor este realizat prin limbaje de asamblare care reflectă arhitectura
unui anumit procesor. Deşi codul de asamblare rulează mai rapid şi necesită mai puţină memorie, el este
mai greu de scris şi trebuie rescris pentru fiecare tip de procesor. Totuşi, limbajul C rămâne metoda
preferată de implementare, atât timp cât poate asigura o viteză de rulare suficient de bună pentru un
anumit procesor şi pentru o aplicaţie dată.

Majoritatea algoritmilor şi aplicaţiilor DSP se dezvoltă şi se verifică pe calculatoare de uz general, fără


constrângeri privind timpul de execuţie, mărimea memoriei, ori costul sistemului. Definitivarea unei
aplicaţii practice trebuie condusă spre o proiectare globală care să asigure algoritmi performanţi,
software eficient şi resurse hardware optime.

De exemplu, un algoritm poate fi implementat fie prin hard, fie prin soft, alegând astfel între viteză şi
flexibilitate. De asemenea, un algoritm poate fi modificat astfel încât să se adapteze mai bine la o
structură hard / soft existentă. Hard-ul poate fi conceput specific pentru un algoritm dat, sau se poate
urmări minimizarea costului pe durata dezvoltării şi utilizării.

Toate aceste variante trebuie avute în vedere în dezvoltarea unei anumite aplicaţii.

Proiectarea unui sistem DSP implică o cunoaştere bună a problemei şi a tuturor cerinţelor necesare.
De obicei se lucrează în echipă: inginer de hard, inginer de sistem, proiectant de soft şi specialist în
testarea structurii. Analiza şi proiectarea unui algoritm DSP eficient care să utilizeze resurse hard şi soft
optime este o muncă complexă, care se bazează cel puţin în faza de proiectare pe unelte soft
performante. Se poate utiliza de exemplu MATLAB şi SIMULINK, cu toolbox-urile aferente de la firma
MathWorks.

3.3 Familia TMS320


În 1982, Texas Instruments a introdus primul procesor DSP, TMS32010,din familia TMS320.

Astăzi, această familie conţine atât procesoare în virgulă fixă, cât şi învirgulă mobilă.

Procesoarele pe 16 biţi în virgulă fixă sunt cuprinse în generaţiile:

TMS320C2000 (cu reprezentanţii C24x şi C28x)

C5000 (C54x şi C55x)

C6000 (C62x şi C64x)

Procesoarele pe 32 biţi în virgulă mobilă sunt cuprinse în generaţiile:

C3x, C4x şi C7x.

Procesoarele din aceeaşi generaţie ale familiei TMS320 au aceeaşi arhitectură de bază, dar posedă
configuraţii diferite ale memoriei pe cip şi a perifericelor.

Arhitectura TMS32010 şi setul de instrucţiuni a fost proiectat pentru a maximiza puterea de calcul şi
flexibilitatea printr-o tehnologie de integrare la o frecvenţă a ceasului de 5MHz, 1982.

Astăzi, unul dintre cele mai rapide procesoare al familiei, C64x, dispune de o viteză de execuţie de până
la 1GHz, ca urmare a îmbunătăţirilor tehnologice şi ale arhitecturii implementate şi a unor cicluri de ceas
mai rapide.
Îmbunătăţirile aduse arhitecturii pentru a o face independentă de viteza ceasului se bazează pe multiple
unităţi de calcul de tip înmulţire-adunare MAC - Multiply-Add Computation), pe o intensivă
implementare a operaţiilor paralele, pe o memorie mai mare şi mai rapidă cu magistrale interne multiple
şi pe introducerea unor instrucţiuni şi motoare hardware mai puternice şi mai bine adaptate
implementării unor algoritmi DSP de utilitate generală.

Modul în care se constituie un sistem DSP în jurul procesorului TMS320

Cele două blocuri externe principale necesare sunt memoria (de program şi/sau de date) şi perifericele.

De obicei, procesoarele DSP dispun de o mică memrie cache on-chip, o memorie de program de tip
ROM, memorie RAM şi periferice. Perifericele precum convertoarele A/N şi N/A pot fi conectate fie la
magistrala de date, utilizând adrese dedicate (specifice), fie la interfaţa serială, dacă cipul dispune de
porturi seriale.

3.4 Arhitectura generală a procesoarelor DSP


Procesorul DSP realizează funcţiile esenţiale de prelucrare a semnalelor.

Dezvoltarea unui sistem DSP eficient se bazează pe:

• arhitecturile hard şi soft ale procesorului DSP,

• resursele disponibile pentru transferul datelor,


• capacităţile aritmetice ale procesorului,

• configuraţiile posibile ale memoriei,

• complexitatea structurilor I/O,

• programabilitatea procesorului, şi

• setul de instrucţiuni al procesorului.

Arhitectura procesorului şi algoritmul DSP folosit trebuie să fie complementare.

Pentru unele aplicaţii, algoritmul este dat şi trebuie ales cel mai potrivit procesor care să-l realizeze.

Pentru altele, procesorul disponibil este cunoscut şi sarcina proiectării este de a dezvolta algoritmi
eficienţi care să satisfacă cerinţele aplicaţiei. Scopul este de a dezvolta un algoritm DSP astfel încât să se
utilizeze un minim de resurse ale procesorului, lăsând astfel neutilizate resurse pentru îmbunătăţiri şi
dezvoltări ulterioare.

Aplicatie practica (Procesarea semnalului


audio)
4.1 Introducere
Un DSP (Digital Signal Processor) sau procesor de semnal numeric este un tip de
procesor optimizat pentru procesarea rapidă (în timp real) a unui flux numeric de natură
diversă precum sunet, video etc. Acesta are intrebuintari diverse in domenii precum
transmisia media. Procesarea de semnal se refera la diferite tehnici pentru
imbunatatirea acuratetii comunicatiilor digitale. Daca semnalul primit este analog(de
exemplu in cazul semnalului tv, el este intai convertit in semnal digital folosind un
convertor analog-digital(ADC – analog-digital converter). Apoi, semnalul este procesat
de DSP pentru eliminarea zgomotului, si transmis convertorului digital-analog(DAC).
Daca semnalul primit este digital, nu mai este nevoie de DAC si ADC. DSP-ul lucreaza
direct pe semnalul primit, eliminand iregularitatile cauzate de zgomot.

Ceea ce ne intereseaza in cadrul prezentului proiect este procesarea de semnal


audio(audio signal processing). Aceasta este folosita in special pentru eliminarea
zgomotului ambiental din cadrul unei inregistrari, insa, o data cu aparitia instrumentelor
electrice si a amplificatoarelor, a capatat un nou rol: adaugarea de efecte audio unui
instrument. Acestea au capatat o popularitate atat de insemnata, incat aproape toate
amplificatoarele audio existente pe piata includ un circuit de procesare a
semnalului(marea majoritate analogice), si unul sau mai multe efecte ce pot fi aplicate,
de la filtre de frecvente pana la efecte complexe (reverb) ce necesita componente
aditionale.

4.2 Descriere generala


Sistemul meu de procesare a semnalului va functiona prin receptarea unui semnal
foarte slab de la o chitara electrica, amplificarea sa, convertirea in semnal digital,
procesarea acelui semnal pentru adaugarea efectelor dorite de utilizator, convertirea din
semnal digital in semnal analog, si apoi reducerea puterii semnalului la nivelul initial,
pentru a putea fi trimis amplificatorului.

http://cs.curs.pub.ro/wiki/pm/_detail/pm/prj2009/cc/vteodorescu/amp.jpg?id=pm%3Aprj2009%3Acc%3Adsp

Partile componente ale ansamblului sunt:

-Pre-amplificatorul – acesta este necesar pentru amplificarea semnalului venit de la chitara


electrica. Datorita faptului ca este un instrument pasiv(ne-alimentat cu energie electrica),
chitara scoate un semnal foarte slab. Conventional, va fi numit amplificator.

-Convertor analog-digital (incorporat in chipul AtMega16)

-Chipul AtMega16

-Display-ul LCD si butoane – acestea sunt necesare pentru afisarea diferitelor informatii (de
exemplu efectele activate/dezactivate) precum si activarea/dezactivarea anumitor efecte.

-Convertorul digital-analog – folosit pentru convertirea semnalului inapoi in semnal analogic,


care sa poata fi interpretat de amplificator

-Reductor – folosit pentru reducerea puterii semnalului, astfel incat sa nu se provoace arderea
circuitelor din amplificator.

4.3 Hardware Design


Schema pre-amplificatorului este urmatoarea:
http://cs.curs.pub.ro/wiki/pm/_detail/pm/prj2009/cc/vteodorescu/amp.jpg?id=pm%3Aprj2009%3Acc%3Adsp

Rolul acesteia este amplificarea puterii semnalului.

Convertorul digital-analogic este folosit pentru transformarea semnalului din semnal digital(pe biti) in
semnal analogic, ce va fi trimis mai departe reductorului de tensiune si/sau unei iesiri jack(pentru a
cupla sistemul la casti/boxe etc.).Rolul convertorului DAC este ilustrat in imaginea de mai jos.

http://cs.curs.pub.ro/wiki/pm/_detail/pm/prj2009/cc/vteodorescu/dac08_2.jpg?id=pm%3Aprj2009%3Acc%3Adsp

Pe piata exista o multitudine de chipuri specializate in conversia digital-analog a semnalului audio,


unele folosite in placi audio foarte performante(Sound Blaster X-Fi). Marea majoritate insa se bazeaza
pe principiul Rezistor ladder(sau R/2R) ilustrat in imaginea de mai jos.
Pentru convertorul digital am decis sa folosesc o schema modificata a structurii R/2R cu 10
intrari(imaginea de mai jos exemplifica principiul pentru intrare pe 8 biti) ce include un buffer de
tensiune:

Pentru conexiunea cu ecranul LCD voi folosi urmatoarea schema, luata de pe internet:
link:pm:prj2009:cc:vteodorescu:schematic.jpg

Aceasta este schema stabilita pentru placuta:

http://cs.curs.pub.ro/wiki/pm/_detail/pm/prj2009/cc/vteodorescu/placuta.jpg?id=pm%3Aprj2009%3Acc%3Adsp

Pentru amplificator am folosit urmatoarea schema:


http://cs.curs.pub.ro/wiki/pm/_detail/pm/prj2009/cc/vteodorescu/schema_circuit_prelucrare.jpg?id=pm%3Aprj2009%3Acc%3Adsp

4.4 Software Design


Codul pentru procesorul de semnal va trebui sa includa urmatoarele:

- o functie care transforma semnalele venite folosind serii fourier discrete, pentru a se lucra in
domeniul frecventa in loc de domeniul amplitudine

- o functie care aplica efectele selectate de utilizator asupra semnalului

- o functie de output pe 10 biti a semnalului procesat

- functii de afisare pe LCD si de interactiune cu intrarile

Din pacate, frecventa scazuta AtMega16 si in special frecventa ADC-ului incorporat nu permit alte
operatii in afara de setarea portului de iesire la valoarea corespunzatoare, iar marimea redusa a
memoriei SRAM(1KB) nu permite aplicarea transformarilor fourier asupra semnalului.

4.5 Rezultate Obţinute


In crearea proiectului am intampinat cateva dificultati:

1.alegerea pieselor: am ales amplificatorul operational LM358, ieftin si performant, precum si un timer
LM555.

2 citirea semnalului: deoarece sinusoida are o parte negativa, ce nu poate fi citita de AtMega16, a fost
nevoie de inca 2 amplificatoare operationale: unul pentru adunarea a 3V la tensiunea primita, si celalat
la iesire, pentru scaderea a 3V din tensiunea primita, pentru a opera cu semnale negative, a fost nevoie
de crearea unui circuit inversor folosind un timer 555.

Schema acestuia :

http://www.reconnsworld.com/power/voltinvert.gif

4.6 Concluzii
In concluzie, crearea unui procesor de semnal pentru chitara/orga/orice instrument, chiar si pentru
iesirea calculatorului, este posibila folosind un chip AtMega 16, insa este mandatata de achizitionarea
unor piese mai performante pentru operatiile cu semnalul,un chip ce aplica transormari DFT
semnalului, permitand lucrul in domeniul frecventa(pe care opereaza majoritatea efectelor) in locul
domeniului amplitudine

4.7 Procesarea semnalului audio (MATLAB)


Pentru realizarea acestei aplicatii am folosit programul Matlab, in continuare avem
codul folosit pentru a observa semnalul audio cu zgomot si cu filtrarea acestuia.
fs = 15000; //frecventa de funtionare a programului
y = audioread(’dsp.mp3’); // declaram y ca fiind semnalul sunetului din
melodia dsp.mp3
p = audioplayer(y,fs); //functia audioplayer este pentru a reda melodia y pe
frecventa fs
play(p); //pentru redare
stop(p); //pentru oprirea melodiei
x = awgn(y,10);// este pentru Aplicarea zgomotul Gaussian alb (cu alte cuvinte
pentru adaugarea zgomotului acestui semnal
sound(x,fs); //redarea semnalul cu zgomot pe frecventa fs
clear sound;
hlpf = fdesign.lowpass(’Fp,Fst,Ap,Ast’,3000,3500,0.5,50,fs);//adaugarea unui filtru
trece jos pentru filtrarea eficienta a sunetului
D = design(hlpf);
s = filter(D,x); //firtrarea semnalului s cu ajutorul filtrului de mai sus
sound(s,fs); //redarea noului semnal filtrat
clear sound;
subplot(3,1,1);
plot(y); //functia plot produce graficul lui y
subplot(3,1,2);
plot(x);
subplot(3,1,3);
plot(s);

In primul grafic avem semnalul curat (fara zgomot) ,dupa cum puteti vedea aplitudinea
semnalului este intre -0.5 si 0.5.Acesta este exact semnalul initial .
In cel de-al doilea grafic avem semnalul cu zgomot ,dupa cum puteti vedea
aplitudinea semnalului a crescut la 4v p-p.

Acesta este zgomotul semnalului.


In ultimul grafic avem semnalul cu zgomot trecut prin filtru ,amplitudinea lui a scazut la
2v p-p.
Toate cele 3 grafice sunt in intervalul 0-10 secunde.

Astfel cu ajutorul DSP-ului putem efectua reducerea nivelului de zgomot a unui semnal
audio.

In continuare vom adauga un echou la fisierul audio folosit


stereo_mix = y; //copiem variabila y
N = fs/2; //impartim frecventa in doua pentru a putea crea ecoul de la dreapta la
stanga si invers
for n = N+1 : lenght(y) //cu acest for strabatem 'semnalul' si ii adaugam ecoul
stereo_mix (n,1) = y(n,1) + y(n-N,2);
stereo_mix (n,2) = y(n,2) + y(n-N,1);
end
sound(stereo_mix,fs); /pornirea sunetului cu ecou
clear sound;

In secventa de cod de mai sus folosim o intirziere pentru cele 2 fisiere audio, si cream
ecou de la dreapta la stinga apoi de la stinga la dreapta.
y_left = y(:,1);
y_right = y(:,2);
y_left_minus_y_right = y_left-y_right;
sound(y_left_minus_y_right,fs);
clear sound;
In secventa de cod de mai sus noi stregem o parte din sunet , de la stinga si de la
dreapta, deci putem observa o reducere a semnalului audio din ambele parti.
5.1 Referinte
Sursa de inspiratie pentru proiect:

The Mechanix Guitar tuner:

http://people.ece.cornell.edu/land/courses/ece4760/

Alte linkuri :

https://www.ikalogic.com/

http://pns.ac.tuiasi.ro/Doc/curs/Prezentare

https://www.dharmanitech.com/2008/09/nokia-3310-lcd-interfacing-with-atmega8.html

-Schema folosita

http://www.cdamian.tuiasi.ro

Carti:

PRELUCRAREA DIGITALĂ A SEMNALELOR,-Aplicaţii şi implementări în FPGA,DE:Serbanescu


Alexandru ,Serban Gheorghe,Iana VasileGabriel ,OroianTeofil ,Rincu Iulian

5.2 Galerie foto


Procesorul atmega16
Amplificator

Circuitul de prelucrare:

LCD

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