ADC inl i DNL zemljišta

A

Analogworld

Guest
Se bilo tko je Matlab skriptu koja se koristi za zemljište DNL i inl od ADC (Histogram pristup s sine wave ulaz)?Tu je takva Matlab skripta posted in MAXIM's website.Međutim, zemljišta izgleda jako loše, čak i idealna ADC.Dakle, ja sumnjate da broj nije napisan vrlo dobro.Može bilo tko pomoć?Hvala unaprijed.

 
Nije za Matlab, ali pišem ovo pismo na verilog-za inl dnl mjeru komponente
(Žao mi je, Nije moguće napraviti pričvrstiti

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Osmjeh" border="0" />/ / VerilogA za TEST_ADC, inldnlmeasure, veriloga
/ / $ Date: 2005/11/25
/ / $ Revision: 0.0 $
/ / Statični perfomance ADC mesure
/ / Točnost ovisi od dLSB = S * T / LSB
/ / S-nagib rampi
/ / T - sat signal razdoblje
/ / LSB - napon LSB
/ / Thow metode inl mjere
/ / Metoda = 0 - End Point inl
/ / Metoda = drugih - Best Fit inl

`uključuju" constants.vams "
`uključuju" disciplines.vams "

`definirati HIBIT 7
`definirati HIBIN 1023

modul inldnlmeasure (VD, INP, gostionica);
input [ `HIBIT: 0] VD;
ulaz INP, gostionica;
električni [ `HIBIT: 0] VD;
električne INP, gostionica, vclk;

parametar pravi vtrans_clk = 2.5; / / prag
parametar pravi fullscale = 1.0; / / dobitku Greška Estimation
parametar cjelobrojno maxcode = pow (2, `HIBIT); / / Broj smeće
integer parameter method = 0; / / 0 - End Point inl; ostali - Best Fit inl

real X [ `HIBIN: 0], Y [` HIBIN: 0], dnl [ `HIBIN: 0], inl [` HIBIN: 0];
integer maxcount, broj, i;
pravi measbin, offseterr, gainerr, dnlmax, dnlmin, inlmax, inlmin;
integer dnlout, inlout;
real S, S1, S2, S3, S4, D, D1, D0, A1, A0;

analogni begin
@ (initial_step) begin
for (i = 0; i < `HIBIN; i = i 1) počinju
X = 0;
Y = 0;
dnl = 0;
inl = 0;
kraj
count = 0;
dnlout $ = fopen ( "~ / dnlmeasure.dat");
inlout $ = fopen ( "~ / inlmeasure.dat");
kraj

@ (cross (V (BD [0]) - vtrans_clk, 0)) počinju
X [count] = $ abstime;
Y [count] = V (INP, gostionica);
count = count 1;
kraj

@ (final_step) begin
maxcount = count;
/ / Linearna aproksimacija (Best Fit)
S1 = 0; S2 = 0; S3 = 0; S4 = 0;
for (i = 0; i <maxcount; i = i 1) počinju
S1 = S1 pow (x , 2);
S2 S2 = X ;
S3 = S3 X * Y ;
S4 S4 = Y ;
kraj
D = S1 * maxcount - pow (S2, 2);
D1 = S3 * maxcount - S2 * S4;
D0 = S1 * S4 - S2 * S3;
A1 = D1 / D;
A0 = D0 / D;
/ / LSB Estimation
for (i = 1; i <maxcount; i = i 1) počinju
S = S (Y - Y [i-1]);
kraj
measbin = S / (maxcount - 1);
/ / Offset, Gain Greška Estimation
offseterr = -A0/measbin;
gainerr = (fullscale - maxcode * measbin) / measbin;
/ / DNL, inl procjena
dnlmax = 0; dnlmin = 0; inlmax = 0; inlmin = 0;
for (i = 0; i <= maxcount; i = i 1) počinju
/ / DNL
if (i == 0 | | i == maxcount) dnl = 0;
else dnl = (y -Y [i-1]) / measbin-1.0;
if (metoda == 0) počinju
/ / End bodova inl
if (i == 0) inl = 0;
else inl = inl [i-1] dnl ;
end else begin
/ / Best fit inl
if (i == maxcount) inl = 0;
else inl = ((measbin * (i 1,0 / 2,0) A0) - Y ) / measbin;
kraj
/ / Summary
if (dnl > dnlmax) dnlmax = dnl ;
if (dnl <dnlmin) dnlmin = dnl ;
if (inl > inlmax) inlmax = inl ;
if (inl <inlmin) inlmin = inl ;
/ / Write za crtanje
$ fdisplay (dnlout, "% d \ t% 10.6f", i, dnl );
$ fdisplay (inlout, "% d \ t% 10.6f", i, inl );
kraj
$ fclose (dnlout);
$ fclose (inlout);
/ / Sažeci
$ prikaz ( "Summmary od ADC Statični parametara");
$ prikaz ( "mjera Modul: \ t% m");
$ prikaz ( "Broj Codes: \ t% d", maxcount 1);
$ prikaz ( "Max Offset Greška: \ t% .2 f", offseterr);
$ prikaz ( "Max Gain Greška: \ t \ t% .2 f", gainerr);
$ prikaz ( "Max DNL: \ t \ t% .2 f /% .2 f", dnlmin, dnlmax);
$ prikaz ( "Max inl: \ t \ t% .2 f /% .2 f", inlmin, inlmax);
$ prikaz ( "Radnja dnlmeasure.dat & inlmeasure.dat za detalje ...");
kraj
kraj
endmodule
`undef HIBIT

 
Možda biste trebali raspravljati koji dio koda je loše, jer Maxim ne će jednostavno objaviti kod koje su loše za kupca za korištenje i testirati svoje ADC na.

 
Analogworld wrote:

Se bilo tko je Matlab skriptu koja se koristi za zemljište DNL i inl od ADC (Histogram pristup s sine wave ulaz)?
Tu je takva Matlab skripta posted in MAXIM's website.
Međutim, zemljišta izgleda jako loše, čak i idealna ADC.
Dakle, ja sumnjate da broj nije napisan vrlo dobro.
Može bilo tko pomoć?
Hvala unaprijed.
 
Matlab Šifra za kod Gustoća Testiranje za Odrediti inl i DNL
http://www.maxim-ic.com.cn/images/appnotes/2085/inldnl.m

 
Kod Gustoća Testiranje je stvar pomalo zrele metode,
i ja sam se slažu da je kod Maxim će raditi.
No, kako je rekao renwl, broj uzoraka treba biti veliki, uglavnom oko 4 milijuna eura za 12 bit ADC

 
Pozdrav Denismark.Može u dati primjer ur inl.dat?Želite li vidjeti dat formatu?
Kako obaviti u izlaz dat u hspice?

Pozdravi.

 
Nemam primjer inl.dat jer sam to prije dosta vremena.Ova datoteka ima format teksta i kao u može vidjeti iz mog kôd je formirana linija:
/ / Write za crtanje
$ fdisplay (dnlout, "% d \ t% 10.6f", i, dnl );
$ fdisplay (inlout, "% d \ t% 10.6f", i, inl );

to znači izlaz, npr.:
0 0.2e-1
1 1.3E-2
2-2.3e-3

Ja sam radio sa spektra.Ova datoteka se formira po verilog-komponenta.Dakle, ako hspice podrška verilog-da nema problema došlo.

 

Welcome to EDABoard.com

Sponsor

Back
Top