ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • DDR3 SDRAM의 동작원리 - ZQ CALIBRATION
    _[HARDWARE]/CORE 2010. 12. 17. 18:48
    이제 DDR2의 시대는 무르익다 못해 완숙했으며 바야흐로 DDR3의 시대가 도래했다.
    기존의 DDR1, DDR2와 비교하여 DDR3에 새로이 적용되는 기술을 살펴보고 정확히 이해하여 시스템을
    설계할 수 있어야겠다.

    1. DDR3 SDRAM에 적용된 새로운 기능
       가. ZQ CALIBRATION
       나. DYNAMIC ODT
       다. RESET, 8bit PREFETCH

    상기의 function들에 대하여 하나씩 검토하기로 한다.

    ☞ DDR3 SDRAM의 동작원리 - DYNAMIC ODT
    ☞ DDR3 SDRAM의 동작원리 - RESET, 8bit PREFETCH

    혹시 DDR1, DDR2 SDRAM에 대해서 학습이 필요하신 분은 본 블로그의 다른 포스트들을 먼저
    숙지하시고 이 포스트를 접하셨으면 한다.

    2. ZQ CALIBRATION의 개요
       DDR3는 동작 속도가 1066MHz, 1333MHz 그리고 1600MHz로 향상되면서 신호의 안정성에 대해 보다
       특별한 주의가 요구되게 되었다.
       DRAM controller와 DRAM간의 임피던스 부정합의 감소는 신호의 반사와 임피던스 불연속등을 줄여주어
       시스템 안정에 기여하게 된다.
       그래서 다음과 같은 방법을 사용하여 ZQ를 조정해서 임피던스 부정합을 줄이고 시스템의 안정성을
       추구하게 하는것이다.

    3. DRIVER의 구성
       [Merged Driver]
       DDR3 SDRAM은 DQ쪽의 driver가 다음과 같이 구성되어 있다.


       맨 위의 블럭이 여러개 배열되어 pull-up leg array가 구성되있고 아래엔 pull-down leg array가 구성되어
       있다.
       
       이 회로는 DDR3 device에서 ZQ의 조정과 DQ의 ODT기능을 같이 제공한다.
       반면에 DDR2 SDRAM에서는 ZQ의 조정을 위한 OCD회로가 있고 또 ODT를 지원하기 위해 별도의
       회로가 사용되었었다.

       이 DDR3 SDRAM에서 merged driver 구조의 장점은 무엇인가...
       두 가지 기능(ZQ조정, ODT)이 한 회로에서 지원하게되어 있어서 device의 신뢰성이 높아지고
       DRAM의 제조사 입장에선 제조 단가가 내려갈 것이고 우리같은 시스템 설계자의 입장에선 무엇보다
       불필요한 capacitance를 줄일수 있어서 보다 안정적인 시스템 구현이 가능한 것이다.

       DQ신호가 적절한 임피던스 값을 가지고 출력되기 위해선 상단과 하단의
       240Ω pull-up leg / pull-down leg에 의한 약간의 제어가 필요하게 된다.
       이 부분에 대해서 알아보도록 하자.

       위의 그림은 등가회로로 보면 다음과 같이 간단하게 표현된다.


       이 그림은 또한 다음과 같이 더 간단하게 표현될 수 있다.


       240Ω이 6개가 모여서 형성하는 pull-up, pull-down의 어레이된 저항들의 구조에서 40Ω의 임피던스가
       얻어지며
    나중에 설명할 1개의 240Ω과 합쳐지게 된다.
       이렇게 총 7개의 저항성분은 DDR3의 full-strength driver에서 default 출력 임피던스인
    34Ω이
       되는 구조이다.


    4. CALIBRATION을 하는 방법
       [환경]
       - DRAM device의 모든 ZQ ball은 위에서 언급된 1개의 외부 240Ω 저항과 연결되어 있다.
       - 이 외부의 240Ω 저항은 DRAM과 DRAM controller가 공용하여 사용하게 된다.
       - DDR3 SDRAM device내부에 ZQ를 조정하는 제어부인 DQ calibration control block이 있다.


       이제 ADC, 비교기, filter, 내부 reference voltage generator, approximation register가 들어있는 아래의
       control block이 어떻게 동작하는지 살펴보기로 한다.


       - 왼쪽은 calibration control block이며 오른쪽은 240Ω legs이다.
       - 240Ω 저항은 P-channel의 polyresistor로 구현되어 있다.
       - Pull-down leg 부분은 N-channel polyresistor로 구현되어 있을 뿐 동작 방법은 비슷하다.

       DDR3 DRAM의 구조는 이렇고 아래에서 어떻게 동작하는지 살펴보자.


       [동작]
       - 먼저 ZQ calibration command가 발생한다.
       - Control block의 PUP 라인이 low가 되어 pull-up leg들은 VDDQ전압이 들어간다.
       - VPULL-UP 라인을 통해서 XRES포인트의 전압을 controller내부의 reference voltage(VDDQ/2)와
          비교한다.

       - VOH라인을 통하여 P-channel의 polyresistor를 개별 제어해서 XRES부분의 전압이 VDDQ/2가
          되도록 한다.
       - calibration이 완료되어 VOH code가 설정되면 controller내부의 approximation resistor에 저장하고
          그 code를 각 pull-up legs에 전달한다.
       - VPULL-DOWN쪽도 같은 방법으로 VOL code를 획득하고 이후 본 process를 종결한다.

       [COMMAND]
       - ZQ calibration command는 2종류가 있다.
       - ZQCL : ZQ CALIBRATION LONG
          Symtem이 initialize할 때나 device가 reset중에 수행된다.
          Initial temperature와 voltage setting 및 제조상의 특성을 반영한다.
          완료하는데 512 clock cycle이 소요된다.
          ZQCL이 수행되는 동안 DRAM의 data bus는 completely idle하고 quiet해야 한다.
       - ZQCS : ZQ CALIBRATION SHORT
          System이 동작하는중에 수행된다.
          Normal 동작중의 연속적인 voltage와 온도변화에 관련한 특성을 반영한다.
          완료하는데 64 clock cycle이 소요된다.



    [참고]
    DDR3 ZQ CALIBRATION
    - MICRON-

    New Features of DDR3 SDRAM
    - ELPIDA -

Designed by Tistory.