3.3 Conversie digital-analogică

În teorie, cea mai simplă metodă de conversie digital-analogică este de a trage eșantioanele din memorie și de a le converti într-un tren de impulsuri. Aceasta este ilustrată în fig. 3-6a, cu spectrul de frecvență corespunzător în (b). Așa cum am descris mai sus, semnalul analogic original poate fi perfect reconstruit prin trecerea acestui tren de impulsuri printr-un filtru trece-jos, cu o frecvență de cutoff egală cu jumătate din rata de eșantionare. Cu alte cuvinte, semnalul original și trenul de impulsuri au spectre de frecvență identice sub frecvența Nyquist (jumătate din rata de eșantionare). La frecvențe mai mari, trenul de impulsuri conține o dublicare a acestor informații, în timp ce semnalul analogic original nu conține nimic (presupunând că aliasing-ul nu a avut loc).

Figura 3-5. Teorema eșantionării în domeniile timp și frecvență.

Figurile (a) și (b) prezintă un semnal analogic compus din componente de frecvență între zero și 0,33 din frecvența de eșantionare fs. În (c), semnalul analogic este eșantionat prin convertirea lui într-un tren de impulsuri. În domeniul frecvență, (d), aceasta duce la un spectru duplicat într-un număr infinit de benzi laterale superioare și inferioare. Deoarece frecvențele originale în (b) există nedistorsionate în (d), are loc o eșantionare corectă. În comparație, semnalul analogic în (e) este eșantionat la 0,66 din frecvența de eșantionare, o valoare care depășește rata Nyquist. Aceasta conduce la aliasing, indicat în (f) prin suprapunerea benzilor laterale.

În timp ce această metodă este pur matematică, este dificil să se genereze impulsurile înguste necesare în electronică. Pentru a face acest lucru, aproape toate DAC-urile funcționează ținând ultima valoare până când este recepționat un alt eșantion. Aceasta se numește zeroth-order hold, echivalentul DAC al sample-and-hold utilizat în timpul ADC. (O reținere de ordinul întâi first-order hold este linia dreaptă dintre puncte, o reținere de ordin doi second-order hold folosește parabole etc.). Zeroth-order hold produce aspectul scării afișat în (c).

În domeniul frecvență, zeroth-order hold rezultă în spectrul trenului de impulsuri multiplicat prin curba întunecată prezentată în (d), dată de ecuația:

Ecuația 3-1

Reducerea amplitudinii de înaltă frecvență datorită lui zeroth-order hold. Această curbă este trasată în fig. 3-6d. Frecvența de eșantionare este reprezentată de fs. Pentru f = 0, H(f) = 1.

Aceasta este de forma generală: sin (πx)/(πx), numită funcție sinc sau sinc(x). Funcția sinc este foarte comună în DSP și va fi discutată mai detaliat în capitolele ulterioare. Dacă aveți deja o bază în acest material, zeroth-order hold poate fi înțeleasă ca convoluția trenului de impulsului cu un impuls dreptunghiular, având o lățime egală cu perioada de eșantionare. Acest lucru duce la multiplicarea domeniului de frecvență prin transformata Fourier a impulsului dreptunghiular, adică funcția sinc. În fig. (d), linia luminoasă arată spectrul de frecvență al trenului de impulsuri (spectrul "corect"), în timp ce linia întunecată a indicat sinc. Spectrul de frecvență al semnalului zeroth-order hold este egal cu produsul acestor două curbe.

(convoluție = funcție de compunere a două funcții de repartiție, care conduce la o nouă funcție de repartiție)

Filtrul analogic folosit pentru a converti semnalul zeroth-order hold (c), în semnalul reconstruit (f), trebuie să facă două lucruri: (1) să elimine toate frecvențele peste jumătate din rata de eșantionare și (2) stimulează frecvențele prin inversul efectului zeroth-order hold, adică 1/sinc(x). Aceasta reprezintă o amplificare de aproximativ 36% la o jumătate din frecvența de eșantionare. Figura (e) prezintă răspunsul ideal de frecvență al acestui filtru analogic.

Această creștere de frecvență 1/sinc(x) poate fi manipulată în patru moduri: (1) ignorați și acceptați consecințele, (2) proiectați un filtru analogic pentru a include răspunsul 1/sinc(x), (3) folosiți o tehnică multirată fantezie descrisă mai târziu în acest capitol sau (4) efectuați corecția în software înainte de DAC (vezi capitolul 24).

Domeniul Timp

Domeniul Frecvență

Figura 3-6

Analiza conversiei digital-analogice. În (a), datele digitale sunt convertite într-un tren de impulsuri, cu spectru în (b). Acesta este modificat în semnalul reconstruit, (f) prin utilizarea unui filtru low-pass electronic pentru a elimina frecvențele mai sus de jumătatea ratei de eșantionare [compară (b) și (g)]. Totuși, majoritatea DAC-urilor creează o formă de undă zeroth-order hold, (c) în locul unui tren de impulsuri. Spectrul zeroth-order hold este egal cu spectrul trenului de impulsuri multiplicat cu funcția sinc arătată în (d). Pentru a converti zeroth-order hold într-un semnal reconstruit, filtrul analogic trebuie să elimine toate frecvențele mai sus de rata Nyquist și corect pentru sinc, cum se arată în (e).

Înainte de a părăsi această secțiune cu privire la eșantionare, trebuie să respingem un mit comun despre semnalele analogice versus digitale. După cum a arătat acest capitol, cantitatea de informații transmise într-un semnal digital este limitată în două moduri: În primul rând, numărul de biți per eșantion limitează rezoluția variabilei dependente. Adică mici modificări ale amplitudinii semnalului pot fi pierdute în zgomotul de cuantificare. În al doilea rând, rata de eșantionare limitează rezoluția variabilei independente, adică evenimentele distanțate foarte aproape în semnalul analogic pot fi pierdute între eșantioane. Acesta este un alt mod de a spune că frecvențele care depășesc jumătate din rata de eșantionare sunt pierdute.

Iată mitul: "Deoarece semnalele analogice folosesc parametri continui, au o rezoluție infinit de bună atât în ​​variabilele independente, cât și în cele dependente". Neadevărat! Semnalele analogice sunt limitate de aceleași două probleme ca semnalele digitale: zgomot și lățime de bandă (cea mai mare frecvență permisă în semnal). Zgomotul dintr-un semnal analogic limitează măsurarea amplitudinii formei de undă, la fel ca și zgomotul de cuantificare, într-un semnal digital. De asemenea, capacitatea de separare a evenimentelor apropiate într-un semnal analogic depinde de frecvența maximă permisă în forma de undă. Pentru a înțelege acest lucru, imaginați-vă un semnal analog care conține două impulsuri la distanțe apropiate. Dacă plasăm semnalul printr-un filtru trece-jos (eliminând frecvențele înalte), impulsurile se vor estompa într-o singură pată. De exemplu, un semnal analog format din frecvențe între DC și 10 kHz va avea exact aceeași rezoluție ca un semnal digital eșantionat la 20 kHz. Trebuie, din moment ce teorema de eșantionare garantează că cele două conțin aceleași informații.

Secțiunea următoare: Filtrele analogice pentru conversia datelor