sheldon
|
Greetings,
For a testbench, I use an ideal ADC created by modifying the ideal8bitADC[?] from ahdlLib. By changing a variable in the VerilogA code, any number of bits can be supported. Also you will need to update the symbol to match the number of bits defined in the VerilogA code. The ADC is driven by sine source. The clock frequency is the same as the DAC clock frequency. The input, sine, frequency is determined using the procedure outlined for selecting ADC test frequencies in previous posts.
Assuming that you are using resistive loads to convert the current back to voltage, then there are two options for analyzing the results.
Option 1: Waveform Calculator
To perform the standard measurements for data converters: SINAD [SNDR], SNR, SFDR, ENOB, use the spectrum function in the ViVA calculator. There is one item that you need to be aware of, the spectrum function selects all the time domain data for the FFT. So you will manually need to select the data for the FFT using the clip function. An enhancement request has been filed for this functionality.
NOTE: You can use ViVA is stand-alone mode with simulation data generated by IC5141, if you have the correct licenses and the software installed.
Option 2: Fourier Integral
Unfortunately, this option only provides the SINAD. The reason for mentioning it is that is since the "entire" waveform is considered. As a result, the effect of glitch impulse is included in the analysis. An FFT only samples the waveform, potentially using only one time point per clock period. This might be useful later.
Best Regards,
Sheldon
|