Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

[SOLVED] Cancelling gain error of an ADC

Status
Not open for further replies.

dirac16

Member level 2
Joined
Jan 20, 2021
Messages
43
Helped
0
Reputation
0
Reaction score
0
Trophy points
6
Activity points
328
I have read that in order to measure the DNL/INL errors of an ADC one has to nullify the gain and offset error. It's simple to compensate the offset error by shifting the curve either in the x or y direction. However, the gain error compensation is less obvious to me. How do you usually correct the gain error in software?
 

Solution
Obviously you have to test against a standard V swept over range
of A/D or range of interest. You can then do :

1) Least squares error fit equation using the cal values to a-priore
determine equation coefficients.

2) Power curve error fit, typical 5'th order, depends on resolution
you are dealing with.

3) Table lookup and interpolation between cal points.

All possibilities for solution.

Another metod done at manufacturing -

1634155206406.png


Regards, Dana.

danadakk

Advanced Member level 4
Joined
Mar 26, 2018
Messages
1,279
Helped
232
Reputation
478
Reaction score
277
Trophy points
83
Activity points
5,893
Obviously you have to test against a standard V swept over range
of A/D or range of interest. You can then do :

1) Least squares error fit equation using the cal values to a-priore
determine equation coefficients.

2) Power curve error fit, typical 5'th order, depends on resolution
you are dealing with.

3) Table lookup and interpolation between cal points.

All possibilities for solution.

Another metod done at manufacturing -

1634155206406.png


Regards, Dana.
 
Solution

barry

Advanced Member level 5
Joined
Mar 31, 2005
Messages
5,280
Helped
1,129
Reputation
2,270
Reaction score
1,139
Trophy points
1,393
Location
California, USA
Activity points
28,882
I think you have to calculate the slope of two lines: the measured data and the ideal data. You then multiply your measured data by (ideal slope/measured slope).
 

frankrose

Advanced Member level 3
Joined
Nov 27, 2013
Messages
831
Helped
230
Reputation
458
Reaction score
225
Trophy points
1,323
Activity points
7,303
Sometimes, when ADC is quite linear, simple start/endpoint curve fit is enough.
For example you can measure the gain between code 1 and code 2^N-1, fit a straight line on these points. Line steepness difference from ideal is the gain error, normally its unit is LSB.
Better method, as mentioned above to fit a curve with least mean square approximation on data. I don't know other methods, these were enough for my purposes.
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Top