Chapter 09

아날로그·혼성 신호 테스트

스캔과 BIST는 응답이 기대값과 같은지를 묻는다. 비트 하나만 달라도 불량이고, 같으면 합격이다. ADC나 고속 직렬 링크 앞에서는 이 질문이 통하지 않는다. 12비트 ADC의 출력은 같은 입력에서도 잡음 때문에 한두 코드씩 흔들리고, 16 Gb/s 링크의 비트는 10¹²개에 하나쯤 틀려도 정상이다. 그래서 혼성 신호 테스트는 "맞는가"를 묻지 않고 "얼마인가"를 잰다. 수천~수십만 개의 샘플을 모아 통계를 내고, 그 숫자를 사양과 비교한다. 이 장은 그 측정이 어떤 원리로 이루어지는지, 그리고 몇 개의 샘플과 몇 초의 시간이 필요한지를 다룬다.

혼성 신호 테스트는 무엇이 다른가

디지털 블록의 테스트는 5장의 폴트 모델 위에 서 있다. 결함이 회로를 어떻게 망가뜨리는지 모델로 정하고, 그 폴트를 드러내는 패턴을 자동으로 만든다. 커버리지라는 하나의 숫자가 테스트의 품질을 말해 준다. 아날로그 회로에는 이런 일반적인 폴트 모델이 사실상 없다. 트랜지스터 하나의 문턱 전압이 20 mV 어긋나도 회로는 "동작"한다. 다만 오프셋이 조금 크고, 왜곡이 조금 많고, 잡음이 조금 높을 뿐이다. 그 "조금"이 사양을 넘는지가 합격과 불량을 가른다.

그래서 혼성 신호 테스트는 사양 기반 테스트(Specification-based test)다. 데이터시트에 적힌 숫자(오프셋 ±2 LSB, DNL ±0.9 LSB, SNR 68 dB 이상)를 직접 재고 한계와 비교한다. 결함을 찾는다기보다 성능을 검증한다. 이 방식의 장점은 판정이 고객의 언어와 같다는 것이고, 단점은 측정마다 많은 샘플과 정밀한 장비가 필요해 비싸다는 것이다. 칩 면적의 5%도 안 되는 아날로그 블록이 테스트 시간과 장비 비용의 절반을 차지하는 일이 흔하다.

장비 쪽에서는 디지털 핀 일렉트로닉스(2장) 옆에 아날로그 계측기가 붙는다. 임의 파형 발생기(AWG, Arbitrary waveform generator)는 메모리에 담긴 샘플을 고정밀 DAC로 내보내 순도 높은 사인파나 램프를 만든다. 디지타이저(Digitizer)는 반대로 DUT의 아날로그 출력을 고정밀 ADC로 받아 메모리에 담는다. DUT의 ADC 출력은 디지털 핀으로 바로 캡처 메모리에 들어간다. 모은 샘플은 테스터 안의 DSP가 FFT, 히스토그램, 평균을 계산해 숫자 몇 개로 줄인다. 이렇게 샘플을 모아 신호 처리로 파라미터를 뽑는 방식을 DSP 기반 테스트(DSP-based testing)라 한다.

공통 기준 클록 (모든 장비 동기) 소스 메모리사인·램프 샘플 AWGDAC + 필터 DUT (TB-7) ADC12비트 SAR DAC(예: 오디오·제어) 캡처 메모리디지털 코드 디지털 소스코드 패턴 디지타이저고정밀 ADC DSPFFT히스토그램 아날로그 코드 코드 아날로그 ADC 테스트: 정밀 아날로그 입력 → DUT가 만든 코드를 분석 DAC 테스트: 코드 입력 → DUT가 만든 전압을 디지타이즈
혼성 신호 테스트 장비. ADC를 시험할 때는 DUT보다 정밀한 아날로그 소스(AWG)가, DAC를 시험할 때는 DUT보다 정밀한 측정기(디지타이저)가 필요하다. 모든 장비가 하나의 기준 클록에서 나온 클록을 쓴다. 그래야 다음 절의 코히런트 샘플링이 성립한다.

모든 장비가 하나의 기준 클록을 공유한다는 점이 디지털 테스트와 가장 다르다. AWG가 내는 사인파의 주파수와 DUT ADC의 샘플링 주파수가 정확한 정수비를 이루어야 FFT 한 번으로 깨끗한 스펙트럼을 얻는다. 기준이 둘이면 몇 ppm의 차이만으로도 스펙트럼이 번진다. 이 조건이 4절의 코히런트 샘플링이다.

측정기는 DUT보다 좋아야 한다 12비트 ADC의 DNL을 0.1 LSB 정밀도로 재려면 입력 램프의 비선형성이 0.1 LSB, 즉 전체 범위의 약 0.0025% 이하여야 한다. 사인파로 SNR 74 dB를 재려면 소스의 잡음과 고조파가 그보다 10 dB쯤 낮아야 한다. 장비 사양이 DUT 사양보다 4~10배 좋아야 한다는 이 원칙은 10장의 측정 시스템 분석에서 숫자로 다시 나온다.

혼성 신호 블록은 무엇을 잡고 무엇을 놓치는가. 사양 테스트는 성능이 나쁜 칩을 확실히 잡는다. 하지만 성능은 사양 안인데 결함이 숨은 칩(예를 들어 바이어스 트랜지스터 하나가 열려 있어 남은 하나가 전류를 다 흘리는 경우)은 놓칠 수 있다. 그래서 바이어스 전류, 기준 전압, 내부 노드 전압을 따로 재는 구조 테스트와 섞어 쓴다. 테스트 시간의 대부분은 샘플을 모으는 데 쓰이므로, 다음 절부터는 "샘플이 몇 개 필요한가"를 계속 묻는다.

ADC 정적 파라미터

이상적인 \(n\)비트 ADC는 입력 범위를 \(2^n\)개의 같은 폭 구간으로 나누고, 입력이 \(k\)번째 구간에 들면 코드 \(k\)를 낸다. 한 구간의 폭이 LSB(Least significant bit)다. TB-7의 12비트 감시용 ADC는 입력 범위 1.2 V를 4,096개로 나누므로 1 LSB ≈ 0.29 mV다. 코드가 바뀌는 입력 전압을 전이 전압(Transition level) \(T_k\)라 한다. 코드 \(k-1\)에서 \(k\)로 넘어가는 지점이다. 실제 ADC의 모든 정적 오차는 이 \(T_k\)가 이상적인 자리에서 얼마나 벗어났는가로 표현된다.

전달 함수 (3비트 예) 01234567 코드 3 누락 폭 1.7 LSB DNL₄ = +0.7 아날로그 입력 (LSB) → 점선: 이상, 실선: 실제 코드별 DNL (LSB) +10−1 123456 전이점별 INL (LSB) +10−1 T₁T₄T₇ INL은 DNL을 차례로 더한 것
DNL과 INL. 코드 3의 폭이 0이 되어 출력에 한 번도 나타나지 않는다(누락 코드, DNL = −1). 그 옆 코드 4는 폭이 1.7 LSB로 넓다. INL은 전이점이 이상적인 직선에서 벗어난 양으로, 왼쪽부터 DNL을 누적한 값과 같다. 이 예에서 최대 |INL|은 0.9 LSB다.

오프셋 오차(Offset error)는 전달 함수 전체가 옆으로 밀린 양이다. 보통 첫 전이점 \(T_1\)이 이상값 0.5 LSB에서 벗어난 양으로 정의한다. 이득 오차(Gain error)는 오프셋을 뺀 뒤 기울기가 틀린 정도로, 마지막 전이점과 첫 전이점의 간격이 이상값 \((2^n-2)\) LSB에서 얼마나 다른지로 잰다. 이 둘은 전 범위에 걸친 선형 오차라서 시스템에서 보정하기 쉽다. TB-7의 감시용 ADC는 웨이퍼 테스트에서 오프셋과 이득을 재고 퓨즈(OTP)에 보정값을 기록한다.

보정이 어려운 것은 코드마다 다른 비선형 오차다. 오프셋과 이득을 바로잡은 뒤 코드 \(k\)의 실제 폭 \(W_k = T_{k+1}-T_k\)가 1 LSB에서 벗어난 양이 미분 비선형성(DNL, Differential nonlinearity)이고, 전이점이 끝점을 잇는 직선에서 벗어난 양이 적분 비선형성(INL, Integral nonlinearity)이다.

$$\mathrm{DNL}_k = \frac{W_k}{W_{\text{avg}}} - 1, \qquad \mathrm{INL}_k = \sum_{j=1}^{k-1} \mathrm{DNL}_j$$
\(W_{\text{avg}}\): 첫 코드와 끝 코드를 뺀 안쪽 코드 폭의 평균(끝점 기준). 이렇게 정의하면 INL은 끝점을 잇는 직선 기준 값이 된다. 최적 직선 기준 INL은 이보다 작게 나온다.

DNL이 −1이면 폭이 0인 코드, 즉 어떤 입력에서도 나오지 않는 누락 코드(Missing code)다. DNL이 −1 근처까지 내려가면 그 코드는 잡음에 따라 나왔다 안 나왔다 한다. 데이터시트의 "누락 코드 없음, DNL ±0.9 LSB 이하"는 모든 코드의 폭이 0.1 LSB보다 넓다는 약속이다. 출력 코드가 입력 증가에 따라 줄어드는 일이 없는 성질은 단조성(Monotonicity)이라 한다. 제어 루프 안의 ADC·DAC에서는 단조성이 깨지면 루프가 진동할 수 있어 중요하다.

파라미터정의원인 예TB-7 ADC 한계(예)
오프셋\(T_1\) − 0.5 LSB비교기 오프셋, 기준 접지 저항±4 LSB (보정 전)
이득 오차끝점 기울기 오차기준 전압 오차, 커패시터 비±0.5% FS (보정 전)
DNL코드 폭 − 1 LSBSAR 커패시터 배열의 비 불일치±0.9 LSB
INL전이점의 직선 이탈누적된 불일치, 기준 전압의 부하 의존±2 LSB
누락 코드DNL = −1인 코드큰 비트 커패시터의 불일치(예: MSB 전이)없음

SAR ADC의 DNL은 무작위로 흩어지지 않는다. 커패시터 배열의 이진 가중치에서 오차가 생기므로 큰 비트가 바뀌는 코드(1023→1024, 2047→2048)에서 가장 크게 튄다. 그래서 DNL 그래프를 보면 반복되는 톱니 무늬가 있고, 중앙(MSB 전이)에서 가장 큰 스파이크가 나온다. 이 무늬는 설계자에게 어느 커패시터를 다시 맞춰야 하는지 알려 주는 진단 정보이기도 하다.

히스토그램 테스트

4,096개 전이점을 하나씩 찾으려면 입력 전압을 미세하게 바꿔 가며 코드가 바뀌는 곳을 서보 루프로 추적해야 한다. 정확하지만 한 전이점에 수십 번의 측정이 들어 수십 초가 걸린다. 양산에서 쓰는 방법은 히스토그램 테스트(Histogram test, code density test)다. 알려진 분포를 가진 신호를 넣고 각 코드가 몇 번 나오는지 센다. 코드 폭이 넓으면 그 구간에 입력이 머무는 시간이 길어 히트가 많고, 좁으면 적다. 히트 수가 곧 코드 폭이다.

램프 입력: 모든 코드가 같은 시간 사인파 입력: 끝 코드에 몰린다 코드별 히트 시간 → 코드별 히트 시간 → 코드 램프 선형성이 곧 측정 정확도 순도 높은 사인은 만들기 쉽고, 분포는 계산으로 보정
램프와 사인파의 히스토그램. 이상적인 ADC라도 사인파를 넣으면 꼭대기와 바닥 근처에서 신호가 천천히 움직이므로 끝 코드의 히트가 많다. 이 모양은 사인의 확률 밀도로 정확히 알려져 있어서 계산으로 나눠 없앨 수 있다. 양 끝 코드는 범위를 조금 넘게 입력해(오버드라이브) 포화시키고 분석에서 뺀다.

가장 단순한 자극은 선형 램프(Linear ramp)다. 램프가 모든 코드를 같은 속도로 지나면 이상적인 ADC의 히스토그램은 평평하고, 코드 \(k\)의 DNL은 \(H_k/\bar H - 1\)로 바로 나온다. 문제는 램프 자체의 선형성이다. 12비트에서 0.1 LSB를 보장하는 램프를 만드는 것은 ADC를 만드는 것만큼 어렵다. 반면 사인파는 필터 하나로 고조파를 −100 dBc 이하로 깎아 순도 높게 만들기 쉽다. 그래서 양산은 대부분 사인파 히스토그램(Sine-wave histogram)을 쓴다.

진폭 \(A\)인 사인파의 순간값 \(v\)가 갖는 확률 밀도는 다음과 같다. 끝에서 무한대로 커지는 욕조 모양이다.

$$p(v) = \frac{1}{\pi\sqrt{A^2 - v^2}}, \qquad T_k = -A\cos\!\left(\frac{\pi\, C_{k}}{N}\right)$$
\(N\): 전체 샘플 수, \(C_k = \sum_{j

코드당 평균 히트 수가 적으면 측정값 자체가 흔들린다. 히트 수는 대략 푸아송 분포를 따르므로 코드당 \(n\)개를 모으면 DNL 추정의 표준오차는 약 \(1/\sqrt{n}\) LSB다. 사인파에서는 중앙 코드의 히트가 평균의 \(2/\pi\)배로 적어 이곳이 가장 불리하다. 블레어(J. Blair, 1994)는 신뢰도 \(Z\)(95%면 1.96)로 DNL을 \(\pm\beta\) LSB 안에서 재는 데 필요한 샘플 수를 다음처럼 정리했다.

$$N \approx \frac{\pi\, 2^{\,n-1} Z^2}{\beta^2}$$
TB-7의 12비트 ADC에 코드당 평균 32개, 즉 \(N = 2^{17} \approx 131{,}000\)개 샘플을 쓰면 \(\beta = 1.96\sqrt{\pi \cdot 2048/131072} \approx 0.43\) LSB다. DNL 한계 ±0.9 LSB를 판정하기에는 충분하지만, 0.1 LSB를 보려면 샘플이 18배 더 필요하다.

샘플링 속도 1 MS/s에서 13만 샘플은 약 0.13 s다. 파이널 테스트 삽입 시간 약 8 s의 1.6%로, ADC 하나를 위한 시간으로는 작지 않다. 그래서 히스토그램 캡처는 스캔이나 다른 블록 테스트와 동시에 돌리고(concurrent test), 계산은 다음 다이를 재는 동안 테스터 DSP가 처리한다.

SIMULATOR

ADC 히스토그램 테스트: 코드 수 세어 DNL·INL 찾기

측정(추정)실제 값누락 코드이론 1/√n
분해능
자극
샘플 수 / 시간(1 MS/s)—
최대 |DNL| 측정 (실제)—
최대 |INL| 측정 (실제)—
DNL 추정 오차 RMS—
찾은 누락 코드 / 실제—
판정 (DNL ±0.9, INL ±2)—
해볼 것: ⓪ 히스토그램이나 DNL 칸을 누르면 그 코드를 누락시키거나 되살린다. ① 코드당 샘플을 4개로 줄이면 측정 DNL이 실제와 크게 어긋나고, 멀쩡한 코드가 누락 코드로 오판되기도 한다. 오른쪽(좁은 화면에서는 맨 아래) 그래프에서 오차가 1/√n을 따라 줄어드는 것을 확인하자. ② "휜 램프"는 램프에 2% 활 모양 비선형을 넣은 것이다. ADC는 그대로인데 INL이 크게 나온다. 측정기의 비선형성이 DUT의 결함처럼 보이는 경우다. ③ 사인파는 원래 끝 코드에 히트가 몰리지만 보정 계산 뒤의 DNL은 평평하다. 중앙 코드의 오차가 가장 크다는 점도 보자. ④ 전이 잡음을 1 LSB로 올리면 누락 코드가 이웃 코드에 묻혀 덜 깊게 보인다. (모델: 코드 폭 = 1 + σ·N(0,1)을 안쪽 코드에 주고 전체 폭을 정규화. 샘플은 위상이 무작위인 사인파 또는 램프, 끝 코드는 오버드라이브로 포화. 코히런트 사인을 쓰면 실제 오차는 이보다 조금 작다.)
히스토그램이 보지 못하는 것 히스토그램은 각 코드가 몇 번 나왔는지만 센다. 언제 나왔는지는 버린다. 그래서 코드가 순간적으로 엉뚱한 값으로 튀는 스파클 코드(Sparkle code)나, 입력 주파수가 높을 때만 생기는 동적 오차는 잘 드러나지 않는다. 이런 동적 특성은 다음 절의 FFT로 본다.

코히런트 샘플링과 FFT

ADC의 동적 성능(잡음, 왜곡)은 순수한 사인파를 넣고 출력 샘플 \(N\)개를 FFT해서 본다. FFT는 \(N\)개의 샘플이 무한히 반복되는 신호의 한 주기라고 가정한다. 기록이 사인파의 정수 주기를 정확히 담고 있으면 반복해 이어 붙여도 이음매가 매끄럽고, 신호의 에너지는 FFT 빈 하나에 모인다. 정수 주기가 아니면 이음매에서 신호가 끊기고, 그 불연속이 모든 빈으로 에너지를 흘린다. 이것이 스펙트럼 누설(Spectral leakage)이다.

코히런트: M = 3 주기를 정확히 담는다 기록 끝 | 반복 FFT (dB, 0~−80) 비코히런트: 3.4 주기, 끝과 처음이 어긋난다 기록 끝 | 반복 FFT (dB, 0~−80)
정수 주기와 누설. 위: 32개 샘플에 사인 3주기가 정확히 들어 있다. 기록을 반복해도(빈 점) 파형이 이어지고, 스펙트럼은 빈 3 하나뿐이다. 아래: 3.4주기를 담으면 반복할 때 끝과 처음이 어긋나고, 이 불연속 때문에 에너지가 모든 빈으로 퍼진다. 퍼진 에너지는 잡음과 고조파를 덮는다.

누설을 없애는 가장 확실한 방법은 기록 안에 정수 주기가 들도록 주파수를 정하는 것이다. 이것이 코히런트 샘플링(Coherent sampling)이다.

$$\frac{f_{in}}{f_s} = \frac{M}{N}, \qquad M \text{은 정수}, \quad \gcd(M, N) = 1$$
\(f_{in}\): 입력 주파수, \(f_s\): 샘플링 주파수, \(N\): 기록 길이(FFT 크기, 보통 2의 거듭제곱), \(M\): 기록 안의 사인 주기 수. TB-7 ADC(\(f_s\) = 1 MS/s, \(N\) = 4,096)에서 약 31 kHz를 넣고 싶으면 \(M\) = 127로 정해 \(f_{in}\) = 127 × 1 MHz / 4096 ≈ 31.006 kHz를 쓴다.

\(M\)과 \(N\)이 서로소여야 하는 이유는 따로 있다. \(N\)이 2의 거듭제곱이므로 \(M\)을 홀수로 고르면 된다. 만약 \(M = 64\), \(N = 1024\)이면 사인 한 주기에 샘플이 정확히 16개씩 같은 위상에 찍힌다. 1,024개의 샘플이 사실은 16개의 서로 다른 값을 64번 반복한 것에 불과하다. ADC의 4,096개 코드 가운데 16개 남짓만 시험하는 셈이고, 양자화 오차도 신호와 같은 주기로 반복되어 잡음 대신 고조파처럼 나타난다. 서로소이면 \(N\)개의 샘플이 사인의 한 주기 위에서 \(N\)개의 서로 다른 위상에 고르게 흩어진다.

코히런트 샘플링이 성립하려면 소스와 ADC가 같은 기준 클록에서 나와야 한다(1절). DUT 내부 PLL이 샘플 클록을 만들거나 기준을 공유할 수 없을 때는 정수 주기를 맞출 수 없다. 이때는 창 함수(Window function)를 곱해 기록의 양 끝을 0으로 부드럽게 줄여 이음매의 불연속을 없앤다. 대가는 두 가지다. 신호 에너지가 빈 하나가 아니라 몇 개의 빈(주엽)에 퍼지고, 창의 끝부분 샘플은 거의 버려지므로 같은 \(N\)에서 잡음 추정이 덜 정밀해진다.

창 함수최대 부엽부엽 감쇠주엽 반폭(빈)등가 잡음 대역폭(빈)쓰임
사각(창 없음)−13 dB−6 dB/옥타브11.00코히런트 샘플링일 때 최선
한(Hann)−31 dB−18 dB/옥타브21.50범용. 10비트 안팎의 비코히런트 측정
블랙먼–해리스 4항(Blackman–Harris)−92 dB−6 dB/옥타브42.0014비트 이상 고해상도 비코히런트 측정

양산 테스트는 거의 언제나 코히런트 샘플링을 쓴다. 창을 쓰지 않으니 모든 샘플이 같은 무게로 쓰이고, 신호는 빈 하나, 고조파도 각각 빈 하나에 모여 계산이 단순하다. 창 함수는 기준 클록을 공유할 수 없는 특성 평가나 현장 진단에서 주로 쓴다.

SNR·THD·SINAD·SFDR·ENOB

코히런트 FFT를 하면 스펙트럼은 세 부분으로 갈라진다. 입력 주파수의 빈에 모인 신호, 입력의 정수배 주파수에 생기는 고조파, 그리고 나머지 모든 빈에 흩어진 잡음이다. 샘플링 때문에 \(f_s/2\)를 넘는 고조파는 접혀서(aliasing) 아래쪽 빈에 나타나므로, 고조파의 빈 위치는 \(k \cdot M \bmod N\)을 \(N/2\) 안으로 접어 찾는다.

0 -20 -40 -60 -80 -100 -120 기본파 (−0.5 dBFS) HD2 HD3 HD4 HD5 SFDR ≈ 71.5 dB 잡음 바닥(빈당) ≈ −101 dB = −74 dB − 10log₁₀(512) 주파수 빈 (0 ~ fs/2, N = 1024) dBFS
스펙트럼 읽기. 12비트 ADC, \(N\) = 1,024, \(M\) = 63. 기본파 아래 가장 큰 가짓값(여기서는 HD3)까지의 거리가 SFDR이다. 잡음 바닥은 전체 잡음이 512개 빈에 나뉜 값이라 SNR보다 \(10\log_{10}(N/2)\) ≈ 27 dB 낮게 보인다. 이 "처리 이득" 때문에 스펙트럼에서 잡음 바닥을 눈으로 읽어 SNR로 착각하면 안 된다.

이 세 성분의 전력 \(P_S\), \(P_H\), \(P_N\)으로 동적 파라미터를 정의한다. 고조파는 보통 2차부터 5차(또는 9차)까지 더한다.

$$\mathrm{SNR} = 10\log_{10}\frac{P_S}{P_N}, \quad \mathrm{THD} = 10\log_{10}\frac{P_H}{P_S}, \quad \mathrm{SINAD} = 10\log_{10}\frac{P_S}{P_N + P_H}$$
SFDR(Spurious-free dynamic range): 기본파와 가장 큰 가짓값(고조파든 아니든)의 전력비. THD는 음수 dB(dBc)로 쓰는 것이 관례다.

이상적인 \(n\)비트 ADC도 양자화 오차를 피할 수 없다. 오차가 ±0.5 LSB 안에 고르게 퍼져 있다고 보면 그 RMS는 \(\mathrm{LSB}/\sqrt{12}\)이고, 만점 사인파에 대한 SNR은 다음과 같다. 반대로 측정한 SINAD를 이 식에 거꾸로 넣으면, 그 ADC가 "실효적으로 몇 비트짜리인가"가 나온다. 이것이 유효 비트 수(ENOB, Effective number of bits)다.

$$\mathrm{SNR}_{\text{ideal}} = 6.02\,n + 1.76\ \text{dB}, \qquad \mathrm{ENOB} = \frac{\mathrm{SINAD} - 1.76}{6.02}$$
12비트의 이상 SNR은 74.0 dB. 입력이 만점보다 \(x\) dB 작으면 측정 SINAD에 \(x\)를 더해 만점 기준으로 환산한다. ENOB 1비트는 SINAD 6 dB에 해당한다.
ADC 종류(대표)분해능SNRTHDENOB양산 FFT 크기
TB-7 감시용 SAR (1 MS/s)12비트~70 dB~−78 dBc~11.04,096
오디오 시그마-델타24비트~105 dB~−100 dBc~1716,384 이상
무선 기저대역 파이프라인 (수백 MS/s)12비트~65 dB~−75 dBc~10.58,192
SerDes 수신기 내부 ADC (수십 GS/s)6~8비트~35 dB~−40 dBc~5.5(내장 모니터로 간접 확인)
SIMULATOR

코히런트 샘플링 FFT 분석기

샘플링 관계
창 함수
FFT 크기 N
M · gcd(M,N)—
실제 fin—
SNR—
THD—
SINAD—
SFDR—
ENOB (만점 환산)—
해볼 것: ① 처음 상태(비코히런트, 창 없음)는 기록 끝과 처음이 어긋나(위 오른쪽 작은 칸) 누설 치마가 고조파와 잡음 바닥을 덮는다. ENOB가 실제보다 몇 비트나 낮게 나온다. ② "정수 M"을 누르면 M = 64가 되어 누설은 사라지지만 gcd = 64다. 추가 잡음을 0으로 내리면 양자화 오차가 주기적으로 반복되어 가짜 고조파가 솟고 SFDR이 나빠진다. ③ "홀수 M"(M = 63)이 정답이다. 이제 SNR이 6.02n + 1.76에 가깝다. ④ 비코히런트 상태에서 창을 한, 블랙먼–해리스로 바꿔 보자. 12비트까지는 한 창도 쓸 만하지만 16비트에서는 블랙먼–해리스가 필요하다. (모델: fs = 1 MS/s, 입력 −0.5 dBFS 사인 + HD2·HD3 + 백색 잡음, 반올림 양자화. 신호·고조파는 창의 주엽 폭만큼 빈을 묶어 더하고 나머지를 잡음으로 본다. 고조파는 5차까지.)

이 숫자들은 서로 다른 결함에 반응한다. 샘플-앤-홀드의 비선형 스위치 저항, 기준 전압의 부하 의존성은 THD와 SFDR을 나쁘게 만든다. 비교기 잡음, 기준 전압 잡음, 클록 지터는 SNR을 낮춘다. SAR의 커패시터 불일치는 정적으로는 DNL, 동적으로는 고조파와 가짓값으로 함께 나타난다. 그래서 정적 테스트(히스토그램)와 동적 테스트(FFT)를 같은 캡처 데이터에서 함께 계산하기도 한다. 코히런트 사인파 13만 샘플이면 히스토그램과 FFT를 동시에 얻을 수 있다.

지터가 정하는 SNR 한계

ADC는 정해진 순간에 입력을 잡아야 한다. 샘플링 순간이 \(\Delta t\)만큼 흔들리면, 신호가 그 순간 움직이는 기울기만큼 전압 오차가 생긴다. 진폭 \(A\), 주파수 \(f_{in}\)인 사인파의 최대 기울기는 \(2\pi f_{in} A\)이므로 오차는 \(\Delta v \approx 2\pi f_{in} A\, \Delta t\)다. 이 흔들림을 조리개 지터(Aperture jitter)라 하고, 샘플 클록의 지터와 ADC 내부 샘플링 스위치의 지터가 함께 들어간다. RMS 지터 \(\sigma_j\)가 만드는 오차를 신호와 비교하면 다음 한계가 나온다.

$$\mathrm{SNR}_{\text{jitter}} = -20\log_{10}\left(2\pi f_{in}\,\sigma_j\right)$$
입력 주파수가 10배 오르면 SNR 한계는 20 dB 떨어진다. 분해능과 무관하므로, 주파수가 높으면 비트 수를 늘려도 소용이 없다. 예: 100 MHz 입력에 \(\sigma_j\) = 1 ps이면 64 dB(약 10.3비트)가 한계다.
±Δt Δv = 기울기 × Δt 0을 지날 때 기울기가 가장 크다 입력 주파수 (로그) SNR (dB) 양자화 한계 6.02n + 1.76 지터 한계 −20 dB/decade 교차점: 3 dB 손실
지터가 만드는 잡음. 같은 시간 오차라도 신호가 빨리 움직이는 곳에서 큰 전압 오차가 된다. 오른쪽: 낮은 주파수에서는 양자화가, 높은 주파수에서는 지터가 SNR을 정한다. 두 한계가 만나는 곳에서 전체 SNR은 3 dB(ENOB 0.5비트) 손해를 본다.

이 식은 테스트 장비에도 똑같이 적용된다. 고속 ADC를 시험하는 AWG 클록과 샘플 클록의 지터가 DUT보다 작아야 한다. 1 GHz 입력으로 12비트 ADC(74 dB)를 시험하려면 전체 지터가 약 30 fs 이하여야 한다. 일반적인 테스터 클록으로는 불가능한 숫자라서, 고속 ADC 양산 테스트에는 저지터 클록 소스를 로드보드에 따로 싣는다. TB-7의 감시용 ADC는 입력이 500 kHz 이하라 지터 요구가 약 60 ps로 아주 느슨하다. 반면 16 Gb/s SerDes의 수신기는 비트 하나가 62.5 ps이므로 피코초 단위의 지터가 곧 성능이다. 지터는 8절에서 다시 나온다.

SIMULATOR

지터 vs SNR: 비트를 늘려도 소용없는 곳

지터 SNR 한계—
양자화 SNR—
전체 SNR · ENOB—
ENOB 0.5비트 손실 주파수—
해볼 것: ① 분해능을 12비트에서 16비트로 올려 보자. 낮은 주파수에서는 SNR이 24 dB 오르지만 100 MHz에서는 거의 그대로다. ② 지터를 1 ps에서 100 fs로 줄이면 한계 주파수가 10배 오른다. ③ TB-7 감시용 ADC(12비트, 입력 500 kHz 이하)에서는 지터를 10 ps까지 키워도 SNR이 줄지 않는 것을 확인하자. (모델: 백색 양자화 잡음과 백색 지터가 독립이라고 보고 전력으로 더함. 위쪽 그림의 흔들림은 보이도록 과장했다.)

DAC 테스트 개요

DAC는 ADC의 거울이다. 코드를 넣고 나오는 전압을 잰다. 정적 테스트는 모든 코드(또는 일부)를 차례로 넣고 출력 전압을 정밀 DMM이나 디지타이저로 재서 오프셋·이득·DNL·INL을 계산한다. 여기서 DNL은 이웃 코드의 출력 전압 차가 1 LSB에서 벗어난 양이다. DAC에는 누락 코드 대신 비단조(Non-monotonic) 문제가 있다. 코드를 하나 올렸는데 출력이 내려가는 경우로, DNL이 −1보다 작을 때 생긴다.

모든 코드를 하나씩 재면 12비트 DAC는 4,096번, 16비트는 65,536번의 측정이 필요하고 매번 세틀링을 기다려야 한다. 그래서 전류 조향형(current-steering)이나 R-2R처럼 구조가 알려진 DAC는 비트 가중치 측정(Major carrier / superposition test)을 쓴다. 각 비트(또는 세그먼트)가 만드는 전압만 \(n\)번 재고, 나머지 코드의 출력은 중첩으로 계산한다. 회로가 선형 중첩을 따른다는 가정이 맞으면 측정 수가 수천 배 준다.

DAC 테스트측정 방법보는 것시간 감각
정적 전수 코드코드 스윕 + DMM/디지타이저 평균오프셋·이득·DNL·INL·단조성코드당 수십 µs~ms
비트 가중치비트별 출력 \(n\)회 측정 + 중첩DNL·INL 추정수 ms
동적(FFT)사인 코드열 출력 → 디지타이저 → FFTSNR·THD·SFDR수 ms
세틀링·글리치큰 코드 계단(예: 중앙 전이) 파형 캡처세틀링 시간, 글리치 면적(pV·s)수 ms

DAC의 동적 테스트는 디지털 소스 메모리에서 사인파 코드열을 내보내고, 출력을 디지타이저로 잡아 FFT한다. 코히런트 조건은 여기서도 똑같다. 차이는 측정기 쪽에 정밀도 부담이 온다는 것이다. 16비트 DAC의 SNR 98 dB를 재려면 디지타이저가 그보다 좋아야 한다. 또 하나의 방법은 DUT 안의 ADC와 DAC를 서로 연결하는 아날로그 루프백(Analog loopback)이다. 비싼 계측기 없이 디지털 핀만으로 둘을 함께 시험할 수 있지만, 두 블록의 오차가 섞이고 서로 상쇄될 수도 있어 진단력이 떨어진다. 고속 직렬 링크의 루프백이 같은 생각을 극단까지 밀고 간 것이다.

고속 직렬 링크: PRBS, 아이, BER

TB-7에는 16 Gb/s SerDes 4레인이 있다. 비트 하나의 길이, 곧 단위 간격(UI, Unit interval)은 62.5 ps다. 테스터의 디지털 채널은 최대 1.6 Gb/s(2장)라 이 신호를 직접 다루지 못한다. 고속 계측기를 핀마다 붙이면 사이트당 비용이 감당할 수 없게 오른다. 그래서 고속 링크의 양산 테스트는 칩이 자기 자신을 시험하게 만드는 방향으로 간다. 송신기에 패턴 발생기를, 수신기에 패턴 검사기를 넣고, 송신 출력을 수신 입력으로 되돌린다. 테스터는 시작 신호를 주고 오류 개수만 읽는다. 7장의 BIST를 아날로그 링크에 적용한 셈이다.

패턴은 PRBS(Pseudo-random binary sequence)를 쓴다. \(k\)단 LFSR이 만드는 길이 \(2^k-1\)의 수열로, 연속된 \(k\)비트의 모든 조합(전부 0 제외)이 한 번씩 나온다. PRBS7(\(x^7+x^6+1\), 127비트)은 연속 같은 비트가 최대 7개라 짧은 ISI만 자극하고, PRBS31(약 21억 비트)은 연속 31비트까지 나와 수신기의 기저선 변동과 CDR 추적을 혹독하게 시험한다. 검사기는 받은 비트로 자기 LFSR을 맞춘 뒤(self-synchronization) 다음 비트를 예측하고 틀릴 때마다 오류를 센다. 기대 데이터를 메모리에서 꺼내 올 필요가 없다.

TB-7 SerDes 레인 (칩 안) 송신 PRBS 발생 직렬화 드라이버 수신 PRBS 검사 역직렬화+ CDR CTLE·DFE등화기 ① ② 패키지 ③ 외부 루프백 로드보드 배선· 감쇠기로 TX→RX ① 병렬(디지털) 루프백 ② 근단 직렬 루프백 테스터는 시작·정지와 오류 수만 읽는다 (IJTAG, 8장)
루프백 경로. ①은 아날로그 회로를 건너뛰어 디지털 논리만 본다. ②는 칩 안에서 드라이버 직전·수신기 직후를 이어 직렬화기와 CDR까지 본다. ③은 패키지 핀과 로드보드 배선까지 포함해 실제 사용에 가장 가깝다. 경로가 길수록 많이 보지만, 송신과 수신이 서로의 약점을 가릴 수 있다는 한계는 같다.

루프백만으로는 놓치는 것이 있다. 송신기의 출력이 약하더라도 수신기 등화기가 강하면 링크는 통과한다. 실제 시스템에서는 다른 칩의 수신기, 더 긴 보드 배선과 연결될 것이므로 이 칩은 불량일 수 있다. 그래서 외부 루프백 경로에 일부러 손실과 지터를 넣어(스트레스 루프백) 여유를 확인하거나, 칩 안의 아이 모니터(On-die eye monitor)로 수신 신호의 열린 정도를 직접 읽는다.

아이 다이어그램

직렬 신호를 비트 클록에 맞춰 2 UI씩 잘라 겹쳐 그리면 눈 모양이 된다. 이것이 아이 다이어그램(Eye diagram)이다. 채널의 대역 제한 때문에 앞 비트의 꼬리가 현재 비트에 남는 부호 간 간섭(ISI, Inter-symbol interference)은 선을 여러 갈래로 가르고, 잡음은 선을 굵게, 지터는 교차점을 옆으로 퍼뜨린다. 수신기는 눈이 가장 크게 열린 곳에서 0과 1을 판정한다. 눈의 세로 열림이 아이 높이(Eye height), 가로 열림이 아이 폭(Eye width)이다.

아이 높이 1 UI = 62.5 ps (16 Gb/s) 교차점: 지터 ISI로 갈라진 선 욕조 곡선 (BER vs 샘플 위치) 1e0 1e-3 1e-6 1e-9 1e-12 1e-15 BER 1e−12에서 열린 폭 0.47 UI 샘플 위치 (UI) 점: 빠르게 잰 고 BER 구간 → 외삽
아이와 욕조 곡선. 왼쪽: 1차 저역 통과 채널을 지난 PRBS7. 같은 비트라도 앞의 비트가 무엇이었는지에 따라 선이 갈라진다. 오른쪽: 샘플 위치를 옮기며 잰 BER. 교차점 근처의 결정적 지터(DJ)가 벽을 만들고 무작위 지터(RJ)의 가우스 꼬리가 바닥을 정한다. 이중 디랙 모델(DJ 0.18 UI, RJ 0.025 UI rms)에서 BER 10⁻¹²의 열린 폭은 약 0.47 UI다.

지터는 성분에 따라 다르게 다룬다. 무작위 지터(RJ, Random jitter)는 열잡음 같은 가우스 분포로 꼬리가 무한히 이어진다. 봉우리-봉우리 값이 없으므로 RMS \(\sigma\)로 말한다. 결정적 지터(DJ, Deterministic jitter)는 ISI, 듀티 사이클 왜곡, 전원 잡음 결합처럼 경계가 있는 성분이다. 표준들은 둘을 이중 디랙 모델(Dual-Dirac model)로 묶어 BER \(10^{-12}\)에서의 전체 지터를 \(TJ = DJ_{\delta\delta} + 2 \times 7.03\,\sigma_{RJ}\)로 계산한다. 7.03은 가우스 꼬리가 \(10^{-12}\)이 되는 \(Q\) 값이다.

BER와 신뢰도

링크 사양은 보통 비트 오류율(BER, Bit error ratio) \(10^{-12}\) 이하다. 문제는 이것을 "확인"하는 데 걸리는 시간이다. \(N\)비트를 보내 오류가 하나도 없었다고 해서 BER이 0인 것은 아니다. 오류 수가 푸아송 분포를 따른다고 보면, 참 BER이 목표값이라도 오류가 0개 나올 확률은 \(e^{-N \cdot \mathrm{BER}}\)이다. 이 확률을 \(1-CL\) 아래로 누르려면 다음 비트 수가 필요하다.

$$N = \frac{-\ln(1-CL)}{\mathrm{BER}} \quad (\text{오류 0개 허용}), \qquad CL = 1 - \sum_{k=0}^{E}\frac{(N\cdot\mathrm{BER})^k}{k!}e^{-N\cdot\mathrm{BER}}$$
\(CL\): 신뢰 수준. 95%면 \(-\ln 0.05 \approx 3.0\)이므로 BER의 역수의 약 3배를 보내야 한다. 오류 \(E\)개까지 허용하면 필요한 비트가 늘어난다(E = 1이면 약 4.74배, E = 2면 6.30배).

TB-7에 넣어 보면 BER \(10^{-12}\), 95%에 \(3.0\times10^{12}\)비트가 필요하고 16 Gb/s에서 약 187 s다. 4레인을 동시에 돌려도 레인마다 같은 시간이 걸린다. 파이널 테스트 한 번의 삽입이 약 8 s이고 테스트 셀 원가가 초당 약 $0.07이니, 8사이트 병렬이어도 개당 약 $1.6로 전체 테스트 비용 목표($0.25, 13장)의 여섯 배가 넘는다. 양산에서 BER \(10^{-12}\)을 직접 확인하는 것은 불가능하다.

대안은 욕조 곡선의 성질을 쓰는 것이다. 샘플 위치를 눈의 가장자리 쪽으로 옮기면 BER이 \(10^{-4}\)~\(10^{-8}\) 정도로 높아져 짧은 시간에도 오류가 충분히 쌓인다. 그 몇 점의 BER을 이중 디랙 모델에 맞추면 RJ와 DJ가 나오고, 이를 \(10^{-12}\)까지 외삽해 아이 폭을 계산한다. 여기에 송신 쪽에서 일부러 사인파 지터를 얹어 수신기가 몇 UI까지 견디는지 보는 지터 허용(JTOL, Jitter tolerance) 시험을 더하면, CDR 루프 대역 밖의 지터에 대한 여유도 확인할 수 있다. 결국 양산에서 재는 것은 "BER이 낮다"가 아니라 "BER이 낮을 만큼 눈이 충분히 열려 있다"는 증거다.

SIMULATOR

아이 다이어그램과 BER: 16 Gb/s 루프백

패턴
샘플점 BER—
아이 높이 (잡음 제외)—
BER 10⁻¹² 아이 폭—
이 BER 확인 시간 (95%)—
판정—
해볼 것: ① 아이 화면을 눌러 샘플 위치와 판정 전압을 옮겨 보자. 채널 손실을 0에서 12 dB까지 올리면 눈이 ISI로 닫힌다. ② "최적점 찾기"를 누른 뒤 RJ를 1 ps에서 3 ps로 키우면, 눈은 아직 열려 보이는데 욕조의 바닥이 좁아지고 BER이 수십 자리 나빠진다. 꼬리는 눈으로 보이지 않는다. ③ 샘플 위치를 눈의 가장자리로 옮겨 BER이 10⁻⁶쯤 되는 곳을 찾아보자. 그 점의 확인 시간은 1 ms 이하다. 양산에서 아이 마진을 재는 방식이 이것이다. (모델: 400 mVpp NRZ, 1차 RC 채널(지연은 CDR이 맞춘다고 보고 보정), 비트마다 가우스 RJ와 가우스 전압 잡음. BER은 패턴의 모든 비트에 대해 해석적으로 평균. 등화기와 CDR 추적은 넣지 않았다.)
SIMULATOR

BER 테스트 시간 계산기

목표 BER
필요한 비트 (레인당)—
테스트 시간—
개당 비용 (8사이트, $0.07/s)—
아이 마진 방식 (10⁻⁶ × 10점)—
판단—
해볼 것: ① TB-7 조건(10⁻¹², 95%, 16 Gb/s)에서 약 187 s가 나오는지 확인하자. 파이널 삽입 전체(8 s, 점선)의 20배가 넘는다. ② 허용 오류를 0에서 3으로 늘리면 필요한 비트가 2.6배가 된다. "오류가 몇 개 나와도 된다"는 조건은 시간을 줄여 주지 않는다. ③ 신뢰 수준을 50%로 낮춰도 시간은 4배쯤만 준다. 목표 BER을 10⁻⁹으로 바꾸면 1,000배가 준다. 시간을 정하는 것은 신뢰 수준이 아니라 BER의 역수다. (모델: 오류는 서로 독립인 푸아송 사건. 레인을 따로 돌리면 시간이 레인 수만큼 늘어난다. 비용은 파이널 테스트 셀 시간당 $250을 8사이트가 나눠 쓴다고 보았다.)

RF 테스트 간략

TB-7에는 RF 송수신기가 없다. 모바일 SoC의 무선 기능은 보통 별도의 RF 칩과 모뎀이 맡는다. 그래도 혼성 신호 테스트의 연장선에서 RF 테스트가 무엇을 재는지는 알아 둘 만하다. RF 블록의 사양은 주파수 영역의 전력비로 표현된다. 측정 원리는 앞 절과 같다. 기준 클록을 공유하는 소스와 수신기, 그리고 FFT다. 다른 점은 주파수가 GHz 대역이라 측정 경로(케이블, 소켓, 로드보드)의 손실과 반사를 보정하지 않으면 숫자가 의미가 없다는 것이다.

파라미터뜻측정
이득·S 파라미터입력 대비 출력 전력, 입출력 반사벡터 네트워크 분석 또는 CW 톤 전력
잡음 지수 (NF)증폭기가 SNR을 얼마나 깎는가Y-팩터법(잡음원 켜기·끄기), 이득과 잡음 바닥으로 추정
P1dB이득이 1 dB 줄어드는 입력 전력입력 전력 스윕
IP33차 상호 변조가 외삽으로 기본파와 같아지는 전력두 톤 입력, IM3 측정
EVM·ACLR변조 신호의 정확도, 옆 채널 누설변조 파형 캡처 후 복조(DSP)

RF 테스트는 장비가 비싸고 접촉 경로의 보정이 어려워 웨이퍼 테스트에서는 최소한만 하고 파이널 테스트에 몰아서 한다. 송신기 출력을 칩 안의 수신기로 되돌리는 RF 루프백, 칩 안 전력 검출기 같은 내장 자가 시험이 늘고 있다는 점은 SerDes와 같은 흐름이다. 패키지와 소켓의 RF 특성은 PackagingBook이 다루는 전기적 설계와 직결된다.

TB-7 TEST PLAN테스트 계획서 · 9장

ADC는 사인 히스토그램 13만 샘플, SerDes는 BER 대신 아이 마진

12비트 감시용 ADC는 파이널 테스트에서 코히런트 사인파(\(f_s\) = 1 MS/s, \(N\) = 4,096의 배수, \(M\) 홀수)로 시험한다. 같은 캡처에서 히스토그램과 FFT를 함께 계산한다. 코드당 평균 약 32개, 전체 \(2^{17}\) ≈ 131,000 샘플(0.13 s)이면 95% 신뢰도에서 DNL을 약 ±0.43 LSB 정밀도로 잴 수 있어 한계 ±0.9 LSB 판정에 충분하다. 캡처는 스캔 테스트와 동시에 돌려 삽입 시간에 거의 더하지 않는다. 오프셋과 이득은 웨이퍼 테스트에서 재고 퓨즈에 보정값을 쓴다.

SerDes 4레인은 근단 직렬 루프백과 PRBS31 검사기로 기능을 확인한다. 사양은 BER \(10^{-12}\)이지만 95% 신뢰도로 직접 확인하려면 \(-\ln 0.05/10^{-12} \approx 3\times10^{12}\)비트, 16 Gb/s에서 약 190 s가 걸린다. 삽입 시간 8 s의 20배가 넘으므로 불가능하다. 대신 송신 지터 주입과 칩 안 아이 모니터로 샘플 위치를 옮겨 BER \(10^{-6}\) 부근의 몇 점(점당 약 0.2 ms)을 재고, 이중 디랙 외삽으로 \(10^{-12}\)의 아이 폭이 한계(예: 0.3 UI) 이상인지 판정한다.

이 장의 결정ADC: 코히런트 사인 히스토그램 + FFT, 131k 샘플. SerDes: 루프백 + PRBS 기능 확인, BER은 아이 마진 측정과 외삽으로 대체.
근거 숫자\(N = \pi 2^{11} Z^2/\beta^2\) → β ≈ 0.43 LSB. BER 확인 3×10¹² 비트 ≈ 187 s vs 아이 마진 10점 ≈ 2 ms. 1 UI = 62.5 ps.
남은 문제측정값 자체가 흔들린다. 아이 폭, Vmin, 누설 전류의 반복성은 얼마이고, 한계를 측정 오차만큼 얼마나 안쪽으로 당겨야 하는가? (10장)

핵심 정리

  1. 혼성 신호 테스트는 폴트 모델이 아니라 사양을 직접 재는 테스트다. 측정기가 DUT보다 4~10배 정밀해야 하고, 모든 장비가 하나의 기준 클록을 공유해야 한다.
  2. ADC의 정적 오차는 전이점의 위치로 정의된다. DNL은 코드 폭이 1 LSB에서 벗어난 양, INL은 DNL의 누적이며, DNL = −1은 누락 코드다.
  3. 히스토그램 테스트는 코드별 히트 수로 코드 폭을 잰다. 사인파는 확률 밀도 \(1/\pi\sqrt{A^2-v^2}\)로 보정하고, 필요한 샘플은 \(N \approx \pi 2^{n-1} Z^2/\beta^2\)이다. TB-7의 12비트 ADC는 13만 샘플로 β ≈ 0.43 LSB.
  4. 코히런트 샘플링 \(f_{in}/f_s = M/N\)(M 홀수, N과 서로소)이면 누설 없이 신호가 빈 하나에 모인다. 맞출 수 없을 때만 창 함수를 쓴다.
  5. SNR·THD·SINAD·SFDR은 신호·고조파·잡음 전력의 비이고, ENOB = (SINAD − 1.76)/6.02다. 높은 입력 주파수에서는 지터가 \(-20\log_{10}(2\pi f_{in}\sigma_j)\)로 SNR의 상한을 정한다.
  6. 고속 직렬 링크는 PRBS 발생기·검사기와 루프백으로 칩이 스스로 시험한다. BER을 신뢰도 CL로 확인하려면 \(-\ln(1-CL)/\mathrm{BER}\)비트가 필요해 10⁻¹²은 양산에서 불가능하고, 아이 마진 측정과 외삽으로 대신한다.

확인 퀴즈

10비트 ADC의 사인파 히스토그램에서 95% 신뢰도로 DNL을 ±0.2 LSB 안에서 재고 싶다. 필요한 샘플 수에 가장 가까운 것은?

\(N = \pi \cdot 2^{9} \cdot 1.96^2 / 0.2^2 = \pi \cdot 512 \cdot 3.84 / 0.04 \approx 154{,}000\). 보기 중 가장 가까운 값은 약 20만 개다. β를 절반으로 줄이면 샘플은 4배가 필요하다는 점이 핵심이다.

\(f_s\) = 1 MS/s, \(N\) = 1,024로 코히런트 FFT를 하려 한다. 다음 입력 주파수 가운데 가장 알맞은 것은?

\(M\)은 정수이면서 \(N\) = 1,024와 서로소여야 한다. 1,024는 2의 거듭제곱이므로 홀수 \(M\)이면 된다. M = 63 → \(f_{in}\) = 63 × 10⁶ / 1024 ≈ 61.52 kHz. M = 64나 128은 같은 위상의 샘플만 반복해 코드를 일부만 시험하고, 63.3은 정수가 아니라 누설이 생긴다.

200 MHz 입력에서 14비트 ADC의 SNR이 62 dB로 나왔다. 저주파에서는 84 dB가 나온다. 가장 먼저 의심할 것은?

주파수에 따라 SNR이 크게 떨어지는 것은 지터의 특징이다. \(-20\log_{10}(2\pi \cdot 2\times10^8 \cdot \sigma_j) = 62\)에서 \(\sigma_j \approx 0.63\) ps. 고조파는 SNR이 아니라 THD에 들어가고, DNL은 주파수와 상관없이 나타난다. DUT 문제인지 테스터 클록 문제인지는 저지터 클록으로 바꿔 확인한다.

25 Gb/s 링크에서 BER 10⁻¹²을 신뢰 수준 95%, 오류 0개 조건으로 확인하는 데 걸리는 시간은 약 얼마인가?

\(N = -\ln 0.05/10^{-12} \approx 3.0\times10^{12}\)비트, 시간은 \(3.0\times10^{12}/25\times10^{9} \approx 120\) s. 데이터 속도가 높아도 양산 테스트로는 여전히 너무 길다. 그래서 아이 마진을 높은 BER 영역에서 재고 외삽한다.