본문 바로가기
시스템

AD 변환기 연재 5편 — ADC 설계 체크리스트와 문제 해결 가이드

by 프레스러쉬 2026. 10. 1.

AD 변환기 연재 5편 — ADC 설계 체크리스트와 문제 해결 가이드

부제: 전원, Reference, 입력 범위, Clock, FPGA Interface, PCB Layout까지 실무에서 바로 쓰는 검증 절차

연재의 마지막 편

지금까지 ADC의 기초 원리, Architecture, 입력 Interface, CCD/Linear Sensor와 고속 ADC 연결까지 살펴보았습니다. 마지막 5편에서는 실제 Board Bring-up과 Trouble Shooting 관점에서 “무엇부터 확인해야 하는가”를 단계별 Checklist 형태로 정리합니다. 특히 TCD1209DG + AD8138 + AD9226 + FPGA 구조를 예로 들어 Analog와 Digital 문제를 빠르게 분리하고 원인을 찾는 방법을 설명합니다.

1. ADC 문제는 어디서 시작되는가?

ADC 시스템에서 문제가 발생하면 ADC IC 자체를 먼저 의심하기 쉽습니다. 하지만 실제로는 입력 신호, Reference, Common-Mode, Clock, Driver, 전원, PCB Layout, FPGA Capture Timing 중 하나가 원인인 경우가 많습니다.

따라서 문제 해결의 핵심은 Signal Chain을 단계별로 잘라서 확인하는 것입니다.

Sensor Output
→ Buffer / Offset 제거
→ Differential Driver
→ ADC Analog Input
→ ADC Digital Output
→ FPGA Input Register
→ Algorithm

각 단계마다 Test Point와 측정 기준을 만들어 놓으면 문제가 발생했을 때 원인을 매우 빠르게 좁힐 수 있습니다.

2. 첫 번째 체크 — 전원부터 본다

ADC 회로를 Debug할 때 가장 먼저 확인해야 하는 것은 전원입니다. Logic 회로는 전압이 약간 흔들려도 동작하는 것처럼 보일 수 있지만, ADC는 전원 Noise가 곧 Conversion Noise로 나타날 수 있습니다.

확인할 항목은 다음과 같습니다.

  • AVDD, DVDD, DRVDD가 규격 안에 있는가?
  • FPGA VCCO와 ADC Digital Output Level이 일치하는가?
  • 전원 Ripple이 과도하지 않은가?
  • Regulator 출력에서 Oscillation이 없는가?
  • 각 Power Pin 가까이에 Decoupling Capacitor가 배치되어 있는가?
  • Analog 전원과 Digital 전원의 Return Current가 서로 간섭하지 않는가?

오실로스코프로 전원을 확인할 때는 DC 값만 보지 말고 AC Coupling으로 수 mV~수십 mV 수준의 Noise를 확대해서 보는 것이 좋습니다.

3. Reference Voltage를 반드시 직접 측정한다

ADC의 Reference는 Full-Scale과 직접 연결됩니다. Reference가 흔들리면 입력 신호가 일정해도 Digital Code가 흔들립니다.

확인할 내용:

  • VREF가 목표값과 일치하는가?
  • REFCOM 또는 Reference Return이 올바르게 연결되어 있는가?
  • Reference Bypass Capacitor가 권장값대로 배치되어 있는가?
  • Reference Noise가 Digital Clock과 동기되어 나타나지 않는가?

Reference Pin은 일반적인 Logic Pin처럼 측정해서는 안 됩니다. Probe Ground Lead가 길면 오히려 Noise를 크게 측정할 수 있으므로 Spring Ground나 짧은 Ground Connection을 사용하는 것이 좋습니다.

4. 입력 범위와 Common-Mode를 숫자로 확인한다

Differential ADC는 단순히 AIN+와 AIN-의 차이만 보면 안 됩니다. 반드시 두 값을 동시에 계산해야 합니다.

V_DIFF = V_AIN+ - V_AIN-

V_CM = (V_AIN+ + V_AIN-) / 2

예를 들어 AIN+=1 V, AIN-=4 V라면 Common-Mode는 2.5 V이지만 Differential은 -3 V입니다. Common-Mode는 정상이어도 Differential Full-Scale을 초과하면 ADC는 Saturation됩니다.

따라서 ADC Input Test에서는 항상 다음 네 값을 기록하는 습관이 좋습니다.

  • AIN+ 최소/최대
  • AIN- 최소/최대
  • VDIFF 최대값
  • VCM 평균 및 변동폭

5. DC Offset 제거와 Gain이 맞는지 확인한다

CCD 또는 Analog Sensor 출력에 큰 DC Level이 포함되면 ADC Dynamic Range를 낭비하게 됩니다. 따라서 센서 신호를 ADC 범위에 맞추기 위해 Offset 제거와 Gain 조정이 필요할 수 있습니다.

예를 들어 1~5 V 센서 신호에서 3 V를 기준으로 DC 성분을 제거하고 Gain을 0.5로 설정하면 대략 ±1 V 범위로 변환할 수 있습니다.

이때 확인할 항목:

  • VBIAS 기준이 안정적인가?
  • Offset 제거 후 신호 중심이 원하는 위치에 있는가?
  • Gain이 의도한 값으로 동작하는가?
  • OP Amp나 FDA가 Rail 근처에서 Saturation되지 않는가?
  • 출력 Slew와 Settling이 충분한가?

6. Clock이 살아 있다고 해서 Timing이 맞는 것은 아니다

ADC Clock은 주파수뿐 아니라 Duty, Jitter, Edge Quality, Phase가 중요합니다. 특히 Linear Sensor 시스템에서는 Sensor Clock과 ADC Clock의 상대 Phase가 Pixel Code 품질에 직접 영향을 줍니다.

점검 항목:

  • ADC Clock 주파수가 설계값과 일치하는가?
  • Clock Duty Cycle이 지나치게 비대칭이 아닌가?
  • Overshoot/Undershoot가 과도하지 않은가?
  • Clock Line이 Analog Input과 평행하게 길게 배선되지 않았는가?
  • ADC Sampling Edge가 Pixel Stable Window에 위치하는가?

가능하다면 FPGA의 MMCM/PLL을 이용해 ADC Sampling Phase를 단계적으로 이동시키며 Code Noise가 가장 작은 지점을 찾는 방법이 유용합니다.

7. Oscilloscope로 봐야 할 다섯 곳

고속 ADC Board에는 다음 Test Point를 권장합니다.

측정점 목적
TP1 Sensor OS 원래 센서 파형 확인
TP2 Offset/Buffer Out Offset 제거와 파형 보존 확인
TP3 FDA OUT+ Positive Differential Output
TP4 FDA OUT- Negative Differential Output
TP5 ADC CLK Sampling 위치와 Jitter 확인

차동 출력은 CH1, CH2를 따로 보는 것에 그치지 않고 Math 기능으로 CH1-CH2를 반드시 확인하는 것이 좋습니다.

8. FPGA에서 ADC Data가 이상할 때 확인할 순서

Analog 파형이 정상인데 FPGA Data가 이상하면 Digital 쪽으로 범위를 좁힐 수 있습니다.

확인 순서:

  1. ADC Data Pin Mapping 확인
  2. MSB/LSB 순서 확인
  3. ADC Output Enable 상태 확인
  4. ADC Clock과 FPGA Capture Clock 관계 확인
  5. Input Register가 실제 ADC Clock Domain에서 동작하는지 확인
  6. XDC Timing Constraint 확인
  7. ILA에서 adc_data[11:0] 관측

특히 BIT0~BIT11이 뒤집혀 있거나, Signed/Unsigned 해석을 잘못하면 파형은 보이지만 숫자가 이상하게 보일 수 있습니다.

9. Vivado ILA를 Debug Oscilloscope처럼 사용한다

ILA는 FPGA 내부에서 실제 처리되는 값을 볼 수 있기 때문에 매우 강력합니다. 다음 신호를 같이 잡으면 유용합니다.

  • adc_data[11:0]
  • adc_clk
  • pixel_valid
  • line_valid
  • threshold_cross
  • edge_valid
  • edge_position

Analog Scope와 ILA를 동시에 보면 “Analog는 정상인데 Digital Capture가 틀린 경우”와 “Analog 자체가 이미 깨진 경우”를 빠르게 분리할 수 있습니다.

10. PCB Layout 문제를 의심해야 하는 증상

다음과 같은 현상은 회로도보다 Layout 문제일 가능성이 큽니다.

  • Clock을 빠르게 할수록 Noise가 급격히 증가
  • Digital Pattern과 동기된 Analog Ripple 발생
  • 특정 Bit가 전환될 때마다 ADC Code가 튐
  • Board 위치나 Probe 위치에 따라 결과가 크게 달라짐
  • 같은 회로인데 Prototype마다 Noise 수준이 다름

이 경우 확인할 사항:

  • Analog Input과 Digital Bus가 길게 평행하지 않은가?
  • Clock이 Reference나 AIN 근처를 지나지 않는가?
  • Ground Plane이 Split되어 Return Path가 우회하지 않는가?
  • Decoupling Capacitor가 IC Pin에서 너무 멀지 않은가?
  • Differential Pair가 대칭적으로 배선되어 있는가?

11. 자주 발생하는 증상별 원인표

증상 가능성 높은 원인 확인 방법
Code가 000h 근처에 고정 Negative Over-range / 입력 극성 문제 VDIFF 측정
Code가 FFFh 근처에 고정 Positive Over-range AIN+/AIN- 측정
몇 bit가 계속 흔들림 Noise, Clock Jitter, Reference Noise DC 입력 후 Histogram 확인
속도를 높이면 파형 붕괴 Driver Settling 부족 ADC 입력 직전 Scope 측정
주기적인 Pattern Noise Clock Coupling / GND Return Clock과 Noise 주기 비교
데이터 순서가 이상함 Bit Mapping / Capture Timing ILA로 Raw Bus 확인

12. DC 입력 테스트가 매우 강력한 이유

Sensor를 연결한 상태에서는 Sensor Noise, Clock, Timing, 조명, 광학계가 모두 섞여 있어 원인 파악이 어렵습니다. 따라서 ADC 자체와 FPGA Capture를 검증할 때는 깨끗한 DC 입력을 넣어 보는 것이 매우 효과적입니다.

예를 들어 DAC나 정밀 Voltage Source로 ADC 입력을 몇 단계로 바꾸면서 Digital Code가 일정하게 증가하는지 확인합니다.

이 Test만으로 다음을 빠르게 검증할 수 있습니다.

  • ADC 기본 동작
  • Bit Mapping
  • Reference 설정
  • FPGA Capture
  • Code Linearity의 대략적인 상태

13. 최종 양산 전 반드시 확인할 항목

  • 최소/최대 입력에서 ADC Saturation이 없는가?
  • Common-Mode가 전 온도 범위에서 유지되는가?
  • Reference Drift가 시스템 요구치 내인가?
  • ADC Clock Jitter가 충분히 낮은가?
  • 전원 Ripple이 Conversion Noise에 영향을 주지 않는가?
  • Sensor 최대 속도에서 Settling Margin이 충분한가?
  • FPGA Timing Closure가 완료되었는가?
  • ESD/Surge Protection이 신호 품질을 훼손하지 않는가?
  • Board 간 Cable/FPCB 연결 시에도 동일 성능이 유지되는가?
  • 온도 변화 및 장시간 동작에서도 Offset과 Gain이 안정적인가?

14. ADC 회로 Review용 최종 Checklist

전원

  • AVDD/DVDD 정상
  • Decoupling 충분
  • Regulator 안정성 확인

Reference

  • VREF 값 정상
  • Noise 확인
  • Bypass 위치 확인

Analog Input

  • Full-Scale 초과 없음
  • Common-Mode 정상
  • Driver Settling 충분
  • RC Filter 적절

Clock

  • 주파수 정상
  • Duty 정상
  • Sampling Phase 확보
  • Jitter/Noise 확인

Digital Interface

  • Bit Mapping 정상
  • Logic Level 일치
  • Timing Constraint 완료
  • ILA Debug 가능

PCB

  • Analog Path 짧음
  • Clock과 Analog 분리
  • Ground Return 연속
  • Differential Pair 대칭

15. 5편 연재를 마치며

ADC는 단순히 아날로그 전압을 숫자로 바꾸는 칩이 아닙니다. Sensor, Analog Front-End, Reference, Clock, PCB, FPGA가 하나의 시스템으로 동작할 때 비로소 ADC의 데이터시트 성능에 가까운 결과를 얻을 수 있습니다.

특히 Machine Vision이나 Wafer Edge Detection처럼 Timing과 Repeatability가 중요한 시스템에서는 “더 높은 bit 수”보다 정확한 입력 범위, 안정적인 Common-Mode, 충분한 Settling Margin, 좋은 Clock, 검증 가능한 Debug 구조가 더 중요할 수 있습니다.

이번 5편 연재에서 다룬 내용을 하나의 설계 흐름으로 기억하면 좋습니다.

신호를 이해한다 → ADC를 선택한다 → 입력을 맞춘다 → Clock을 맞춘다 → FPGA에서 검증한다 → PCB와 Noise를 다듬는다.

 

태그
#ADC #AD변환기 #ADC설계 #ADCDebug #Troubleshooting #ADC체크리스트 #TCD1209 #AD8138 #AD9226 #CCD #LinearSensor #FPGA #Vivado #ILA #ADCClock #CommonMode #DifferentialInput #ReferenceVoltage #SignalConditioning #PCBLayout #Noise #Jitter #MachineVision #WaferAligner #회로설계 #전자회로 #아날로그설계