# Sample-and-hold

:::goals
- track(따라가기)과 hold(붙잡기)의 두 단계로 표본화를 설명할 수 있다.
- 표본이 "스위치가 꺼지는 순간"의 값이라는 것과, 그 순간이 정착 전이면 무엇을 잡게 되는지 안다.
- 순간적인 변화와 표본 시점이 겹칠 때 직전 값과 직후 값을 구분해야 하는 이유를 안다.
- 표본 시점의 흔들림(jitter)과 hold 중 누설(droop)이 만드는 오차를 어림할 수 있다.
:::

## 한 문장으로
움직이는 신호를 숫자로 바꾸려면 먼저 한 순간의 값을 붙잡아 두어야 한다. ==Sample-and-hold==(S/H)는 **스위치를 켜 둔 동안 커패시터가 입력을 따라가다가(track), 스위치를 끄는 순간의 값을 붙잡는(hold)** 회로다. 사진의 셔터와 같다.

## 표본은 "끄는 순간"의 값이다
Track 동안 hold 커패시터 $C_H$는 스위치 저항을 거쳐 입력을 따라간다(06장의 RC 정착). 스위치가 꺼지는 순간 그 전압이 남는다. 그러니 표본 값을 정하는 것은 **스위치가 꺼지는 시각**이다.

- 입력이 아직 정착 중이면, 표본은 최종값이 아니라 **그 순간의 값**이다. 01장에서 본 정착 오차가 이렇게 생긴다.
- 스위치가 꺼지는 순간에는 08장의 charge injection과 feedthrough가 함께 들어간다.
- 붙잡은 뒤의 입력 변화는 표본에 영향을 주지 않는다. 표본과 그 뒤의 회로 상태는 별개다.

[[lab:sh]]

## 같은 순간에 무언가 바뀐다면
표본 시점과 정확히 같은 순간에 회로의 다른 곳에서 갑작스러운 변화(다른 스위치가 꺼지는 등)가 일어난다고 해 보자. 이상적인 모델에서 그 순간의 전압은 "변화 직전 값"과 "변화 직후 값" 두 개가 있다. 어느 쪽을 표본으로 볼지는 **모델에서 미리 정해 두어야 하는 약속**이다.

실제 회로에서는 모든 변화가 유한한 시간에 걸쳐 일어나므로, 두 값 사이의 어딘가가 잡힌다. 그래서 시뮬레이션이나 해석에서는 다음을 구분한다.

- **정확히 같은 시각**: 모델이 정한 약속(직전 또는 직후)을 따른다.
- **아주 가까운 다른 시각**: 그 사이의 회로 응답을 실제로 계산해야 한다. 계산 단계가 같다고 두 사건을 하나로 합치면 안 된다.
- **직후 값**은 정착한 값이 아니다. 변화가 막 반영된 순간의 값일 뿐이다.

## 시점이 흔들리면
표본 시점이 매번 조금씩 흔들리면(==jitter==), 입력이 빠르게 변하는 순간일수록 잡은 값이 크게 달라진다. 오차는 입력의 기울기와 시점 흔들림의 곱이다.

$$
\sigma_V \approx \left|\frac{dV}{dt}\right| \sigma_t
$$

진폭 $A$, 주파수 $f$의 사인이면 RMS 오차는 $A \cdot 2\pi f \sigma_t / \sqrt{2}$다. 이미지센서의 reset·signal 표본처럼 거의 정착한 신호를 잡을 때는 기울기가 작아 이 오차가 작다. 정착이 덜 끝난 순간에 잡을수록 커진다.

## 붙잡은 값이 새어 나간다
Hold 동안 커패시터 전하는 스위치의 누설 전류로 조금씩 빠진다. 이것이 ==droop==다.

$$
\Delta V_{droop} = \frac{I_{leak}\,t_{hold}}{C_H}
$$

fA 수준의 누설도 hold 시간이 길고 $C_H$가 작으면 µV 수준의 오차가 된다. 픽셀의 FD도 일종의 hold node라서, 같은 이유로 reset 뒤 시간이 지날수록 전압이 조금씩 흐른다(소자 교재의 누설·암전류).

## Noise도 같이 붙잡힌다
Track 동안 스위치 저항의 thermal noise가 $C_H$ 전압을 흔든다. 스위치를 끄는 순간 그 흔들림도 함께 붙잡힌다. 붙잡힌 noise의 크기는 저항과 무관하게 $\sqrt{kT/C_H}$다. 12장에서 이 놀라운 결과를 유도한다.

## 핵심 정리
- S/H는 track 동안 따라가다 스위치를 끄는 순간의 값을 붙잡는다.
- 표본은 그 순간의 값이다. 정착 전에 잡으면 정착 오차가 남는다.
- 같은 순간의 다른 변화와 겹치면 직전·직후 중 어느 쪽인지 약속이 필요하고, 가까운 다른 시각은 실제 응답을 계산한다.
- 시점 흔들림 오차는 기울기 × 흔들림, droop은 누설 × 시간 / 용량.
- 표본에는 $\sqrt{kT/C_H}$ 크기의 noise도 함께 붙잡힌다.
