ADC의 Dynamic 특성을 측정하기 위해서 먼저 Input Frequency를 정해야 합니다.
그 신호를 ADC로 Sampling 하려면 Sample 개수, 신호의 주기 수(Cycle), Sampling Frequency도 요구됩니다.
주의해야 할 점은 Sampling Frequency의 정수 배에 해당하는 입력 주파수가 들어가면 안됩니다.
이 경우 특정 페이즈만 반복해서 계속 Sampling 하게 됩니다.
그러면 측정에 필요한 최적의 입력 주파수를 찾는 과정을 알아봅시다.
여기서 최적의 입력 주파수란 샘플링된 사인파가 가능한 많은 서로 다른 위상값을 갖는 주파수입니다.
먼저 측정하고 싶은 주파수를 정합니다.
이제 Sampling 주파수를 입력 주파수로 나누었을 때 자신을 넘지 않는 최대의 정수 r을 구합니다. ([ ] Operator)
다음으로는 총 Sample을 r을 나눠 Cycle 수를 정할 수 있습니다.
마지막으로 $f_{\text{nearopt}}=\frac{C\cdot f_s}{r\cdot C-1} $ 다음 식을 계산하여 구할 수 있습니다.
이 변환된 값으로 살짝 입력 주파수를 수정해서 넣으시면 됩니다.
예를 들어 Sampling 주파수가 3.85kHz, 총 Sample 수가 1024개라 해봅시다.
만약 입력 주파수에 1KHz를 넣는다면, 가장 큰 정수배는 38이 됩니다.
Cycle은 26번 돌 수 있으며 최적의 입력 주파수는 1013.171 Hz가 됩니다.
곧 1KHz의 입력 주파수를 넣는 것이 아닌 1013.171Hz로 약간 비틀어 넣으면 됩니다.
지난 Static 특성에 사용한 Sampling Clock에 경우 주파수가 5kHz였습니다.

그러면 이제 실습을 위해 1kHz를 넣고 4096개의 Sample을 뽑는다고 가정해봅시다.
정수배로는 5가 나오며, 819번의 Cycle이 돌아갑니다.
계산하니 입력 주파수로 1000.24426Hz로 비틀어서 넣으면 된다고 합니다. 한번 넣어봅시다.

신호를 만들었으니 측정 후 바로 분석해보도록 하겠습니다.
측정은 Static 특성과 동일하게 Waveforms의 Logic을 이용하였고 이를 엑셀에 붙여놓았습니다.
이제 나온 Data를 전압으로 변환해주어야 합니다.
DC값을 없애기 위해 먼저 4096개의 데이터를 평균내서 나온 데이터를 각각 뺍니다.
나온 값에 $V_{LSB}$를 곱하면 측정한 전압이 나옵니다.
이제 Hanning Window를 생성해봅시다.
Hanning Window 공식을 대입합니다. $\sin^2\!\left(\frac{\pi \cdot \text{bin}}{\text{Sample}-1}\right)$ 였습니다.
Time Domain에서는 간단히 곱하면 됩니다. Hanning Window와 측정 데이터를 곱해서 Window를 씌웁니다.

청록색 그래프는 측정한 전압 데이터입니다.
노랑색 선이 Hanning Window이며, 이를 곱해서 주황색 데이터가 나왔습니다.
나온 이 주황색 데이터가 실제로 사용할 데이터입니다.
엑셀의 FFT 기능을 이용해 데이터를 FFT 해줍시다.
다음으로는 스펙트럼된 신호를 계산하기 위해서 Magnitude에 제곱을 구해주고 10log10을 해줍시다.
주파수는 Sampling 주파수를 Sample 수로 나눠서 간격을 구해주고 이를 Index와 곱해주면 됩니다.
아시다싶이 주파수는 Sample의 절반까지만 성립합니다.
주파수와 신호를 알았으니 Sample의 절반까지 데이터로 그래프화 하면 됩니다.
저희는 Sample이 4096개였으니 2048개의 데이터가 출력될 것입니다.

Plot하니 위 그래프가 나왔습니다.
1kHz에 입력 신호가 들어온 것을 확인할 수 있습니다.
또한 Sampling 주파수 5kHz의 절반인 2.5kHz까지 출력된 것도 확인할 수 있습니다.
이제 나온 데이터를 기반으로 ENOB(유효 비트)를 계산해봅시다.
Data Converter SNR에 나와있듯 ENOB는$ \mathrm{ENOB}=\frac{\mathrm{SNDR}-1.76}{6.02} $로 구할 수 있습니다.
그러면 SNDR을 먼저 구해보겠습니다.
SNDR은 신호 성분의 전력을 잡음 및 왜곡 성분의 전력으로 나누고 log 취한 후 10을 곱하면 됩니다.
일단 가장 큰 신호의 성분은 819번째 Sample에 위치해 있습니다.
그 근방의 신호의 전력 (Magnitude의 제곱)을 더하고 나머지를 다 더하면 됩니다.
제 경우에는 SNDR이 53.44 dB가 나왔습니다. 이를 ENOB로 변환하면 8.58Bit가 됩니다.
교육용 신호 생성기 및 보드로 측정한 결과, 엑셀의 한계상 Sample 수가 4096개로 한정되어 비교적 작게 나왔습니다.

또한 입력 주파수, Sampling 주파수에 따라 다른 SNDR이 나오니 한번 실제로 변환해보면서 측정하면 됩니다.
'Analog Digital Converter > ADC Test' 카테고리의 다른 글
| #3 ADC Dynamic 특성 (0) | 2026.01.07 |
|---|---|
| #2 ADC Static 특성 측정 (Pmod AD1 / AD7476 측정) (0) | 2026.01.07 |
| #1 ADC Static 특성 (0) | 2026.01.06 |