DDR4 ZQ 저항은 전송선 종단을 직접 붙이는 저항이 아니다
DDR4 회로도에서 ZQ pin에 240Ω 저항이 붙어 있다. 메모리 배선의 종단도 저항이니 이것이 DQ line을 직접 끝내 주는 부품일까? 그렇지 않다. ZQ 저항은 I/O의 내부 driver와 on-die termination을 보정하는 기준이다. 기준을 주는 경로와 신호를 실제로 종단하는 경로를 나누어야 저항값의 의미를 제대로 읽을 수 있다.
DRAM 출력 driver와 ODT는 transistor로 구현돼 온도·전압·공정에 따라 effective resistance가 바뀐다. ZQ calibration은 외부 기준을 이용해 내부 설정을 맞추고 보정 결과를 I/O에 반영한다. 외부 240Ω가 매 DQ pin에 직결돼 240Ω 종단을 제공하는 구조로 해석하면 안 된다.
Alliance DDR4 데이터시트 62~63쪽 ZQ Calibration Commands은 calibration engine과 출력 driver·ODT 사이의 반영 과정을 설명한다. MR1 등의 저항 선택은 RZQ의 분수로 표현한다. 표 90의 driver 특성은 RZQ=240Ω 조건을 붙여 제시된다.
기준값과 목표 impedance는 서로 다른 숫자다
RZQ=240Ω을 사용해 RZQ/7과 RZQ/5를 계산하면 각각 약 34.3Ω와 48Ω다. 이 산술은 설정 이름의 목표 scale을 이해하는 데 유용하다. 그러나 출력 transistor가 모든 전압에서 그 저항값인 이상적인 부품이라고 뜻하지는 않는다. 실제 DC 특성에는 pin 전압, pull-up/pull-down, 허용 오차 조건이 붙는다.
DQ 전송선의 characteristic impedance가 가상 50Ω일 때 240Ω 기준 저항과 숫자만 비교해 mismatch라고 판정하면 잘못된 경로를 비교한 셈이다. 채널에서 반사를 결정하는 것은 적용된 driver·termination과 배선의 관계다. RZQ는 그 내부 값의 calibration 기준으로 연결된다.
짧은 보정과 긴 보정의 비용
문서는 reset 뒤 첫 ZQCL에 tZQinit, 정상 동작의 full calibration에 tZQoper, 주기적인 ZQCS에 tZQCS를 구분한다. 이 판본의 timing 표에는 각각 1024, 512, 128clock이 minimum으로 나온다. 같은 ZQ라는 이름이어도 필요한 quiet time이 다르다.
문서의 DLL-on 지원 범위 안인 tCK=0.625ns에서 단순 환산하면 640ns, 320ns, 80ns다. 실제 명령 전후 조건과 환경에 필요한 빈도는 따로 확인해야 한다. 짧은 calibration을 더 자주 넣는 정책과 긴 calibration을 드물게 넣는 정책의 영향은 동일하지 않다.
| 이 판본의 보정 구간 | minimum cycle | 0.625ns 단순 환산 |
|---|---|---|
| reset 뒤 첫 full calibration | 1024 | 640ns |
| 이후 full calibration | 512 | 320ns |
| short calibration | 128 | 80ns |
calibration 동안에는 channel의 다른 활동을 멈추는 조건이 있다. 실제 schedule에는 bank precharge와 tRP도 필요하다. 80ns만 빼면 끝나는 것처럼 성능 비용을 계산하면 열린 행을 닫는 비용과 요청 재배치가 누락될 수 있다.
한 번 맞춘 값이 환경 변화에도 맞는 것은 아니다
ZQCS는 전압과 온도 변화로 생기는 impedance drift를 따라가기 위한 수단이다. 적절한 간격은 해당 제품의 sensitivity와 실제 drift 속도에 따라 정해야 한다. 부팅 때 calibration을 한 번 성공했다는 사실만으로 긴 작동 시간의 모든 환경을 보증하지 못한다.
또한 같은 외부 ZQ 저항을 여러 장치가 공유하는 설계에서는 calibration이 겹치지 않도록 해야 하는 조건이 있다. 공유 부품을 줄여도 scheduling 의무가 생긴다. 부품 수 절감만 보고 동시에 calibrate하면 기준을 사용하는 회로들의 상호 간섭을 놓칠 수 있다.
ZQ calibration을 통과했는데 eye가 좋지 않다면, 기준 저항의 정확도뿐 아니라 ODT mode, 적용 timing, 배선 topology와 driver 설정을 확인해야 한다. 보정은 선택한 내부 impedance를 환경에 맞추는 과정이지 모든 채널 구조를 자동으로 matching하는 과정이 아니다.
회로도의 ZQ 저항을 읽을 때는 “기준 240Ω가 어떤 내부 분수 설정을 calibrate하는가”부터 확인하자. 그리고 그 값이 실제 DQ 경로에 언제 적용되는지, 보정 중 어떤 quiet time을 지켰는지 추적한다. 기준 저항과 종단 저항을 구별하면 같은 저항 기호 뒤에 있는 두 역할이 명확해진다.