책/메모리 시스템

메모리 시스템 Ch9_'DRAM 시스템 시그널링 및 타이밍-2'

RyoTTa 2021. 10. 28. 20:18
반응형

9.3 터미네이션

  전송 선로의 끝에서 신호의 반사를 최소화하기 위해, 고속 시스템 설계자들은 전송 선로의 특성 임피던스와 같은 저항 값을 가지는 터미네이션 요소를 배치한다. 터미네이션 요소의 기능은 전송 선로에서 오는 시놓를 제거하고, 부하 인터페이스 단에서 임피던스 불연속에 의해 생기는 반사파를 없애는 것이다.그림 9.20은 전송 선로의 끝에서 배치도니 터미네이션 요소 Zt를 보여준다. 이상적인 터미네이션 요소, Zt의 저항 성분은 전송 선로의 특성 임피던스 Z0와 정확하게 일치한다. 따라서 신호는 터미네이션 요소에 의해 완전히 제거되고, 어떠한 신호도 소스쪽으로 반사되지 않는다.

 

9.4 시그널링

  DRAM 시스템상에서 시그널링 프로토콜은 주어진 시스템상에서 데이터와 커맨드를 전송하고 수신할 때의 전기적인 전압과, 전류의 레벨과 타이밍 사양으로 정의된다. 그림 9.23은 널리 사용되는 기초적인 이진 시그널링 Eye Diagram을 보여준다. V0. V1은 이진 시그널링의 두가지 상태를 보여준다. tCYCLE은 하나의 신호가 전송될때의 사이클 타임을 나타낸다. 신호 전송 시간인 tTRANS, skew와 jitter 타이밍 성분인 tSKEW등 노이즈 성분과 유효한 비트 타임인 tEYE으로 두가지로 요소로 나눌수 있다. 

  높은 데이터 속도를 달성하기 위해서는 tCYCLE 은 짧아야 좋다. 또한 목표는 skew와 jitter로 표현되는 변화 상태의 시간을 줄이고, 셋업과 홀드타임 조건을 만족하는 것이다. 고속 시그널링 시스템의 설계 및 검증과정에서 시그널링 시스템의 신호의 품질을 표시하기 위해 그림 9.23에 표시된 것과 같이 Eye Diagram이 사용된다. 

9.5 타이밍 동기화

  현대의 고속 DRAM 메모리 시스템은 어드레스, 커맨드, 컨트롤, 데이터, 클럭신호 모두 동일한 유형의 PCB 배헌을 통해 전파된다. 그 결과, 클럭신호는 무결성에 영향을 받고 Propagation 지연은 다른 신호들에게 영향을 준다. 

  그림 9.29는 클럭신호의 Propagation 지연이 클럭 주기의 무시할 수 없는 부분보다 커서 문제가 될 수 있음을 간략하게 보여준다. 이러한 경우에 동기화 개념은 클럭신호의 전달에 위상차이를 고려하여 검토해야한다.

  일반적으로 전역 클럭킹 시스템. 소스 동기화 클럭 포워딩 시스템, 위상 보상이나 지연 보상 클럭킹 시스템이 주로 사용된다.

  전역 클럭킹 시스템 : 시스템 내의 다른 장치들 사이의 클럭 신호의 Propagation 지연이 클럭 주기의길이에 비해 작은것으로 가정한다. 이러한 경우에, 타이밍 차이는 시그널링 프로토콜의 타이밍 마진에 반영된다. 결과적으로 SDRAM 메모리 시스템과 같은 낮은 주파수의 DRAM 메모리 시스템으로 사용이 제한된다. 

  소스 동기화 클럭포워딩 시스템 : Direct DRAM, DDR SDRAM 과 같은 높은 데이터 속도 DRAM 메모리 시스템은 메모리 컨트롤러와 DRAM 디바이스 사이에 데이터 전송을 위해 사용한다. 

  위상보상,지연보상 클럭킹 시스템 : 시그널링 데이터 속도가 지속적으로 상승함에 따라 점점 더 정교한 회로가 메모리 컨트롤러와 DRAM 디바이스 사이의 데이터 전송과 동기화를 위해 배치된다.

 

9.5.1 클럭 포워딩

  그림 9.30은 송신단으로 부터 수신단으로 데이터신호, 레퍼런스 클럭신호가 전송되는 경우를 보여준다. 이 기술은 DDR SDRAM, Direct DRAM시스템에서 사용되고, 신호들은 동기화 레퍼런스를 제공하기 위해 클럭 또는 스트로브 신호와 함께 전송되어야 한다. 

  기본적인 가정은 동기화 레퍼런스 신호와 작은 신호 그룹들을 같이 배선하여, 전기적이고 주어진 신호와 동기화 레퍼런스 신호 사이의 기계적인 특성 차이를 더 쉽게 최소화 할 수 있다. 

 

9.6 선택된 DRAM 시그널링과 타이밍 이슈

  DRAM 메모리 시스템에서의 시그널링은 로직 기반 디지털 시스템과 많은 점이 같지만, 또한 많은 점이 다르다. SDRAM, DDR SDRAM과 같은 상용 DRAM 메모리 시스템들은 고속 시그널링 시스템을 사용하는 비 DRAM 기반 디지털 시스템과는 다른점이 있다. 예를들어 상용 DRAM 메모리 시스템에서는 타이밍 컨트롤이나 동기화 같은 복잡한 기능은 메모리 컨트롤러에 들어가고 상용 DRAM 디바이스는 단순하게 설계하여 제조단가를 낮추게 설계된다.

  메모리 컨트롤러 - 디바이스 사이의 Master-slave relationship은 상용 DRAM 메모리의 시스템 시그널링이나 타이밍 특성을 제한하는데, 이는 로직 기반 디지털 시스템에서는 쉽게 볼수 없는 것이다.

  

  그림 9.18은 상용 DRAM 시스템의 데이터 버스 구조를 보여준다. 그림 9.33은 같은 DRAM 시스템에서 커맨드와 어드레스 버스를 보여준다. 이 둘은 유사함에도 불구하고 DRAM 시스템 내의 모든 DRAM 디바이스들이 커맨드와 어드레스 버스들과 연결되어 있음을 보여준다. 그림 9.34는 일반적인 상용 DRAM 시스템에서 어드레스와 커맨드 버스들이 시스템 내의 모든 디바이스에 연결된 것을 보여준다. 로딩 특성이 다른것은 일반적 상용 DRAM 시스템에서 커맨드와 어드레스 버스의 신호는 데이터 버스보다 더 늦게 전달됨을 의미한다.

  커맨드, 어드레스 타이밍과 시그널링 제약을 완화하기 위한 한가지 전략은 버퍼링하거나 레지스터를 사용하는 것이다. 예를들어 RDIMM은 분리된 버퍼칩을 메모리에 두어 커맨드, 어드레스를 버퍼링한다.

  그림 9.35는 메모리 컨트롤러 관점에서 신호의 전송이 시스템 보드에서 버퍼 칩까지로 제한되는 것을 보여준다. 버퍼 사용으로 인해 짧은 전송 선로, 전송 선로당 더 작은 전기적 로드와 전송선로 세그먼트 이다. 단점으로는 추가적인 latency가 추가된다.

 

9.6.1 DDRx SDRAM 메모리 시스템들에서 데이터 읽기와 쓰기 타이밍

  현대의 DDRx SDRAM 시스템들은 데이터 버스의 부하가 더 작은 것을 이용하여, 데이터 버스의 동작 속도를 커맨드와 어드레스 버스의 두배로 동작한다. 흥미로운 점은 타이밍과 동기화 측면에서 컨트롤러와 일반적인 디바이스들의 역할만큼이나 다양한 여러 버스들이 다른 동작이 소개된다.

  그림 9.36은 일반적인 DDRx SDRAM 디바이스의 데이터 read, write 타이밍에 관한 흥미로운 점을 보여주는데 이는 데이터 버스의 소스 동기화 타이밍 레퍼런스 신호로 DQS(Data Strobe Signal)를 사용하고, 커맨드, 어드레스 버스에는 full 클럭 사이클이 사용되는 반면 데이터 버스에는 half 클럭 사이클이 사용되고, DQS 신호와 read 데이터와 write 데이터 사이의 위상관계이다.

  DDRx DRAM 을 나타내는 그림 9.36에서 메모리 컨트롤러에서 전송되는 어드레스와 커맨드 신호는 full 클럭 사이클이고, 데이터 심벌은 half  클럭 사이클로 전송된다. 데이터 버스의 데이터 속도를 두배로 만드는 방법은 타이밍 마진에 대한 부담을 증가시킨다. 즉, 커맨드, 어드레스, 데이터 버스들의 유효한 데이터 윈도우는 여러 병렬 버스들의 Skew와 데이터 Jitter에 의해 제한되는 것을 보여준다. 64bit 데이터 버스를 가지는 DDRx SDRAM에서, 데이터 버스는 개당 8개의 신호를 가지는 작은 그룹으로 나뉘고, 각각에 대해 타이밍 마진을 제공하기 위해 개별적인 DQS 신호를 가진다. (Group-by-Group Basis 방식) 

 

  그림 9.36은 DDRx SDRAM 시스템에서 다른 위상의 DQS에서 write, read 데이터가 보내고 받는 것을 보여준다. 즉. 디바이스는 DQS신호의 각 에지에서 read 커맨드에 대한 데이터버스트를 반환한다. 컨트롤러는 유효한 데이터 윈도우를 판단하고 적절한 시간에 데이터를 래치한다. 반면에 컨트롤러는 write 커맨드에 대해 DQS를 90도 지연시킨다. 즉 DRAM은 데이터의 지연이나 이동없이 DQS의 에지에서 래치할 수 있다. 위상 관계가 다른것은 타이밍 동기화에 대한 부담을 디바이스가 가지는것이 아니라 컨트롤러가 가지기 때문이다. 즉 디바이스를 저렴하게 제조하기 위해서 DRAM 컨트롤러가 write 데이터와 DQS사이의 위상관계를 제공할 책임이 있다.

 

 

9.6.2 DDRx SDRAM 디바이스들의 DLL사용

  DDRx 시스템에서, 이론적으로 송수신되는 데이터 심벌들은 DRAM 메모리 컨트롤러의 클럭이아닌 DQS와 관계가 있다. 그러나 DQS가 독립적으로 동작하면, DRAM 메모리 컨트롤러는 비동기화하게 동작하거나 read 데이터를 버퍼하는 추가적인 단계가 필요하다. 

  DDRx SDRAM 디바이스에 온 칩 DLL이 적용되어 메모리 컨트롤러의 전역 클럭신호와 DQS 신호사이의 동기화를 구현한다. 

  그림 9.37은 DDR SDRAM 디바이스에서 온 칩 DLL의 사용과, DLL이 DQS와 데이터 신호의 타이밍이 갖는 효과를 보여준다.

  DLL이 없이 동작하는 경우, 디바이스는 내부적으로 클럭신호를 버퍼하여 DQS신호를 만들고, 클럭에 맞추어 read데이터를 전송한다. 그러나 클럭 신호 버퍼링은 위상 지연이 생긴다. 따라서 DQ신호는 DQS신호에 정렬되지만, 전역 클럭에는 정렬되지 않는다. 

  온 칩 DLL이 있는 경우, 디바이스는 내부적으로 전역 클럭을 버퍼하지만 DLL은 DQS신호를 더 지연시킨다. 이러한 지연의 효과는 DQ신호와 DQS신호가 함께 전역 클럭신호에 정렬되게 한다.

반응형