INL, DNL mērīšana

V

vijay_nag

Guest
Hi all!

Es cenšos, lai modelētu INL un DNL izmantojot ritms.Es centos meklējot izveidota pats kuģa.bet es nevarēju iegūt apmierinošas atbildes.var kāds, lūdzu, paskaidrojiet man sīkāk par nosakot pārbaudes stendu, simulācijas procedūras un mērīšanas metodes (viss vajadzīgs)?

Thanks in advance,
Vijay

 
Es iesaku u donnot simulēt statisko rezultātiem, tai ir katastrofu u, novājēšanas ur time!

 
Meklēt Jonathan David (Cadence) izstrādājumi.Viņš ir daži par INL un DNL raksti testbench.Viņš participiant par edaboard

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Smaids" border="0" />

Man ir viens raksts, bet ir grūti atrast.

 
hi all!

lūdzu paskaidrojiet, visa procedūra sīkāk.Es jau esmu mēģinājis visu es varētu bet es neesmu spējīgs izdarīt šajā sakarā breakthoughs.Es cenšos simulācijas ir ritms.lūdzu pastāstīt, kā iet par.

sveicieni,
Vijay

 
Pārbaudiet šo grāmatu
CMOS Circuit Design, Layout, and Simulation
Ir piemēri DA / AD nodaļa

 
Hi all!

var kāds paskaidrot man detalizēti, kā atrast INL, DNL par ADC, izmantojot kodu blīvums (histogrammas) metode?

sveicieni
Vijay

 
vijay_nag wrote:

Hi all!var kāds paskaidrot man detalizēti, kā atrast INL, DNL par ADC, izmantojot kodu blīvums (histogrammas) metode?sveicieni

Vijay
 
renwl wrote:Jūs varat izlasīt ADC rokasgrāmatu par PDD.
 
vijay_nag wrote:renwl wrote:Jūs varat izlasīt ADC rokasgrāmatu par PDD.
 
izmantot verilog-lai sim.those kods es atklāju no amata šeit ... icant atrast link ..
/ / VerilogA par TEST_ADC, inldnlmeasure, veriloga
/ / $ Date: 2005/11/25
/ / $ Revision: 0.0 $
/ / Static klasifikācijai ADC mesure
/ / Precizitāte ir atkarīga no dLSB = S * T / LSB
/ / S-slīpuma uzbrauktuves
/ / T - clock signālu periods
/ / LSB - sprieguma LSB
/ / Thow metodes INL pasākums
/ / Method = 0 - End Point INL
/ / Method = citi - Best Fit INL

"iekļauj" constants.vams "
"iekļauj" disciplines.vams "

"define HIBIT 7
"define HIBIN 1.023

modulis inldnlmeasure (vd, INP, INN);
input [ `HIBIT: 0] vd;
input INP, INN;
elektroierīces [ `HIBIT: 0] vd;
elektriskās INP, krogs, vclk;

parametrs nekustamo vtrans_clk = 2,5; / / Threshold
parametrs nekustamo fullscale = 1,0; / / For Gain Error Estimation
parametrs integer maxcode = pow (2, "HIBIT); / / Number of urnas
parametrs integer method = 0; / / 0 - End Point INL, citi - Best Fit INL

reālā X [ `HIBIN: 0] Y [` HIBIN: 0] dnl [ `HIBIN: 0] inl [` HIBIN: 0];
vesels skaitlis maxcount, count, i;
nekustamo measbin, offseterr, gainerr, dnlmax, dnlmin, inlmax, inlmin;
vesels skaitlis dnlout, inlout;
nekustamo S, S1, S2, S3, S4, D, D1 D0, A1, A0;

analog sākt
@ (initial_step) sāk
for (i = 0; i < "HIBIN, i = i 1) sākas
X = 0;
Y = 0;
dnl = 0;
inl = 0;
beigas
count = 0;
dnlout = $ fopen ( "~ / dnlmeasure.dat");
inlout = $ fopen ( "~ / inlmeasure.dat");
beigas

@ (pāri (V (vd [0]) - vtrans_clk, 0)) sākas
X [skaitīšanas] = $ abstime;
Y [skaitīšanas] = V (INP, INN);
count = count 1;
beigas

@ (final_step) sāk
maxcount = skaits;
/ / Linear tuvināšana (Best Fit)
S1 = 0; S2 = 0; S3 = 0; S4 = 0;
for (i = 0; i <maxcount, i = i 1) sākas
S1 = S1 pow (X , 2);
S2 = S2 X ;
S3 = S3 X * Y ;
S4 = S4 Y ;
beigas
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) sākas
S = S (Y - Y [i-1]);
beigas
measbin = S / (maxcount - 1);
/ / Offset, Gain Kļūda Estimation
offseterr = -A0/measbin;
gainerr = (fullscale - maxcode * measbin) / measbin;
/ / DNL, INL novērtējums
dnlmax = 0; dnlmin = 0; inlmax = 0; inlmin = 0;
for (i = 0; i <= maxcount; i = i 1) sākas
/ / DNL
if (i == 0 | | i == maxcount) dnl = 0;
else dnl = (Y -Y [i-1]) / measbin-1.0;
if (metode == 0) sākas
/ / End punkti INL
if (i == 0) inl = 0;
else inl = inl [i-1] dnl ;
end else sākt
/ / Best fit INL
if (i == maxcount) inl = 0;
else inl = ((measbin * (I 1,0 / 2,0) A0) - Y ) / measbin;
beigas
/ / Summary
if (dnl > dnlmax) dnlmax = dnl ;
if (dnl <dnlmin) dnlmin = dnl ;
if (inl > inlmax) inlmax = inl ;
if (inl <inlmin) inlmin = inl ;
/ / Write vilkšanai
$ fdisplay (dnlout, "% d \ t% 10.6f", i, dnl );
$ fdisplay (inlout, "% d \ t% 10.6f", i, inl );
beigas
$ fclose (dnlout);
$ fclose (inlout);
/ / Kopsavilkumi
$ displejs ( "Summmary of ADC Static Parametri");
$ displejs (pasākums Module: \ t% m ");
$ displejs (skaits Kodi: \ t% d ", maxcount 1);
$ displejs ( "Max Offset Kļūda: \ t% ,2 f", offseterr);
$ displejs ( "Max Gain Kļūda: \ t \ t% ,2 f", gainerr);
$ displejs ( "Max DNL: \ t \ t% ,2 f /% ,2 f", dnlmin, dnlmax);
$ displejs ( "Max INL: \ t \ t% ,2 f /% ,2 f", inlmin, inlmax);
$ displejs ( "Plot dnlmeasure.dat & inlmeasure.dat Sīkāk ...");
beigas
beigas
endmodule
`undef HIBIT

 
Es cenšos, lai izmērītu INL / DNL par DAC.I esmu saskaras ar problēmu ar MATLAB rakstībā Dallas mērīšanas INL / DNL par ADC in following.PLs ieteikt man, lai saņemtu simulāciju.

% Kods blīvums histogrammas testu, lai aprēķinātu INL un DNL pieprasīt
lielu paraugu skaitu.
% Step 1: Piesakies gandrīz pilna mēroga sinusa vilni (bet ne nogriešana)
un atrast vidū kodu piemēro signālu.
% Step 2: Piesakies pats sinusa vilni ievadi, bet nedaudz lielāks
amplitūda uz klipu ADC nedaudz.
% Palaist šādu programmu, ievadiet paraugu skaita,
rezolūcija un vidēja kodu no Step 1and turpināt.
% Autortiesības Au / Höfner, Maxim produkciju integrētajai, 120 San Gabriel
Drive, Sunnyvale, CA94086
www.maxim-ic.com/an2085
Page 7 of 9
% Šī programma, domājams, jābūt precīzām un uzticamām.Šis
programmu var saņemt mainīt bez iepriekšēja paziņojuma.
filename = input ( 'Faila nosaukums vai nospiediet ENTER, lai Listing Transfer
HP16500C: ');
ja isempty (filename)
filename = 'saraksts';
beigas
fid = fopen (filename, "r");
numpt = input ( 'datu punktu skaits?');
numbit = input ( 'ADC Rezolūcija?');
mid_code = input (Ievadiet Mid-Code (vidējais): ');
par i = 1:13,% Izmest 13 līnijas lieki vai header-related
HP16500C dati
fgetl (FID);
beigas
[v1, count] = fscanf (FID, "% f", [2, numpt]);
fclose (FID);
v1 = v1 ';
kods = v1 :), 2);
code_count = nulles (1,2 ^ numbit);% Kods skaits
par i = 1: lielums (kods),
code_count (kods (i) 1) = code_count (kods (i) 1) 1;
beigas
% Parasta, lai konstatētu, vai ADC ir ieguldījums ir apgriešana vai nav
ja code_count (1) == 0 | code_count (2 ^ numbit) == 0 | ...
(code_count (1) <code_count (2)) | (code_count (2 ^ numbit-1)>
code_count (2 ^ numbit))
disp ( "Palielināt Sine-viļņu amplitūdas nedaudz Clip
ADC !!!');
break;
beigas
= Max (mid_code, 2 ^ numbit-1-mid_code) 0,1,% Sākotnējais novērtējums
faktiskā sine zoba amplitūda
vin = (0:2 ^ numbit-1)-mid_code,% attālumā no kodu vidus kods
sin2ramp = 1. / (pi * sqrt (a ^ 2 * operatoriem (size (vin))-vin .* vin));
% sin2ramp * numpt nav gaidāms
% Count katram kodam; turpina pieaugt tāmi līdz faktiskajam
kopējais skaits no
% KODI NO 1 LĪDZ 2 ^ numbit-2 spēles, ka prognozētais
sin2ramp * numpt
kamēr summa (code_count (2:2 ^ numbit-1)) <
numpt * sum (sin2ramp (2:2 ^ numbit-1))
= 0,1;
sin2ramp = 1. / (pi * sqrt (a ^ 2 * operatoriem (size (vin))-vin .* vin));
beigas
disp ( "You Have Lietišķā sinusu (dBFS) vilnis: ');
Amplitūda = / (2 ^ numbit / 2)
skaitli;
gabals ([0:2 ^ numbit-1], code_count, [0:2 ^ numbit-1], sin2ramp * numpt);
Nosaukums ( "CODE Histogramma - SINE WAVE ');
xlabel ( "digitālā izeja CODE ');
ylabel ( 'skaits');
ass ([0 2 ^ numbit-1 0 max (code_count (2), code_count (2 ^ numbit-1 ))]);
code_countn = code_count (2:2 ^ numbit-1). / (numpt * sin2ramp (2:2 ^ numbit -
1));% beigu punktu jāiznīcina!
skaitli;
gabals ([1:2 ^ numbit-2], code_countn);
Nosaukums ( "CODE Histogramma - normalizēts")
xlabel ( "digitālā izeja CODE ');
ylabel ( "normalizētā skaits ');
dnl = code_countn-1;% DNL = Vj 1- Vj-1LSB kur Vj ir
Pārejas punkts
% Vj 1- Vj ir proporcionāls normalizēti kods
count
inl = nulles (size (dnl));
kur j = 1: lielums (inl ")
inl (j) = SUM (dnl (1: j)),% INL, j = DNL, 0 DNL, 1 ... DNL, j
beigas
% INL joprojām ir ofseta un iegūt kļūda!
% INL ar beigu punktu fit, ti INL = 0 beigās punktiem taisni
līnija, kas savieno 2 beigu punktus
% [p, S] = polyfit ([1,2 ^ numbit-2], [inl (1), inl (2 ^ numbit-2)], 1);
% vislabāk piemērots taisne
[p, S] = polyfit ([1:2 ^ numbit-2], inl, 1);
inl = inl-p (1) * [1:2 ^ numbit-2]-p (2);
disp ( "beigu punkti jālikvidē par DNL un INL Aprēķini ');
skaitli;
gabals ([1:2 ^ numbit-2], dnl);
režģis on;
Nosaukums ( "DNL");
xlabel ( "digitālā izeja CODE ');
ylabel (DNL (LSB) ');
skaitli;
gabals ([1:2 ^ numbit-2], inl);
režģis on;
nosaukums (INL (BEST beigu punktu FIT) ');
xlabel ( "digitālā izeja CODE ');
ylabel (INL (LSB) ');

sveicieni,
fazal

 
Čau!

Mēs varam darīt, ofseta un gūt kļūdu aprēķinus, izmantojot kodu blīvums metodi?
Teorētiski, mēra, kad mēs vēziens ievades spriegumu.

Sveicieni,
Vijay

 
Es nezinu, kā mērīt INL / DNL in Cadence

Bet, ja jūs zināt dažus vienkāršus C kodēšanas iemaņas, ir viegli veikt programmu, lai aprēķinātu INL DNL.

varbūt es vēlos šo kodu ir bijis noderīgs.

Esiet piesardzīgs, ka kods nav perfekts
Atvainojiet, bet jums ir nepieciešams autorizēties, lai skatītu šo pielikumu

 
020.170 wrote:

Es nezinu, kā mērīt INL / DNL in CadenceBet, ja jūs zināt dažus vienkāršus C kodēšanas iemaņas, ir viegli veikt programmu, lai aprēķinātu INL DNL.varbūt es vēlos šo kodu ir bijis noderīgs.Esiet piesardzīgs, ka kods nav perfekts
 
hi Vijay.
var u help me in imitē inl un dnl, sfdr par DAC cadence.plz palīdzēt man šajā aspektā ..
pateicība

 
venkats wrote:

hi Vijay.

var u help me in imitē inl un dnl, sfdr par DAC cadence.plz palīdzēt man šajā aspektā ..

pateicība
 
vijay_nag wrote:020.170 wrote:

Es nezinu, kā mērīt INL / DNL in CadenceBet, ja jūs zināt dažus vienkāršus C kodēšanas iemaņas, ir viegli veikt programmu, lai aprēķinātu INL DNL.varbūt es vēlos šo kodu ir bijis noderīgs.Esiet piesardzīgs, ka kods nav perfekts
 
Hi friends,

Es saņēmu INL un DNL kļūdas ADC, izmantojot kodu blīvums metodi.Ja i do pārejošs simulācija šīs metodes nav kodi nav.Bet, kad man DC analīze design by slaucīšana ieejas spriegums Es uzskatu, ka ir trūkstošo kodu partijas.Ko tas liecina?Vai tas nozīmē, ka kods blīvums metode dod nepareizu rezultātu?Vai kāds, lūdzu, paskaidrojiet man discrepency.

Sveicieni,
Vijay

 

Welcome to EDABoard.com

Sponsor

Back
Top