'[HARDWARE]/CORE'에 해당되는 글 11건
- 2010.12.17 DDR3 SDRAM의 동작원리 - ZQ CALIBRATION
- 2009.10.15 DDR2 SDRAM의 동작원리 - POSTED CAS AND ADDITIVE LATENCY 2
- 2009.10.12 DDR2 SDRAM의 동작원리 - OCD
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 -
기존의 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 -
'[HARDWARE] > CORE' 카테고리의 다른 글
DDR3 SDRAM의 동작원리 - RESET, 8bit PREFETCH (1) | 2011.01.06 |
---|---|
DDR3 SDRAM의 동작원리 - DYNAMIC ODT (0) | 2010.12.21 |
DDR2 SDRAM의 동작원리 - POSTED CAS AND ADDITIVE LATENCY (2) | 2009.10.15 |
DDR2 SDRAM의 동작원리 - OCD (0) | 2009.10.12 |
2009. 10. 15. 12:42
DDR2 SDRAM에 새로이 적용된 기술들을 살펴보고 기존 DRAM들과의 차이점을 확인한다.
1.DDR2 SDRAM에 적용된 new function
가. 4-bit PREFETCH
나. ODT (ON DIE TERMINATION)
다. OCD (OFF CHIP DRIVER)
라. POSTED CAS AND ADDITIVE LATENCY
상기의 function들에 대하여 하나씩 검토하였고 이번 포스트가 그 마지막이 되겠다.
☞ DDR2 SDRAM의 동작원리 - 4bit PREFETCH
☞ DDR2 SDRAM의 동작원리 - ODT
☞ DDR2 SDRAM의 동작원리 - OCD
2. DDR SDRAM의 문제점
DDR SDRAM에서의 single read 동작은 다음과 같았다.
가. 'ACT'로 bank를 활성화
나. 'ACT'후 tRCD time이 지나고 선택된 bank에 대해 'READ'명령어 입력
다. 'READ'후 CL time이 지나고 DQ를 latch
하지만 multiple하게 read/wirte가 실행된다면 아래 그림처럼 첫번째의 파란색 RAS신호('ACT')후
tRCD time뒤에 파란색의 CAS신호 ('READ'나 'WRIT')가 나와야 하는데 그렇게 되면 세번째의 노란색
RAS('ACT')신호와 파란색의 CAS('WRIT')신호가 충돌하게 된다.
그 충돌을 피하기 위해 세번째의 노란색 RAS신호는 one clock delay후에 진행되며 그 결과 DQ의
중간에 empty space가생긴다.
이는 command/data bus의 효율을 떨어뜨리고 bandwidth가 감소되는 이유가 된다.
3. DDR2 SDRA에서의 성능 향상
가. RAS신호 바로 뒤나 tRCD time내에선 언제든지 CAS신호를 붙일수 있도록 하여 성능의 향상을
꾀했다.
나. CAS신호가 입력되면 AL time뒤에 CL이 있고 그 뒤에 DQ가 latch되는 것이다.
아래의 그림에서 보듯이 명령어 처리가 매우 단순해지고 empty space가 사라졌음을 확인할 수
있다.
되는 것이다.
라. AL(Additive Latency)를 변경하면서 그에따른 Posted CAS의 위치가 결정되며 이는 아래
Read Latency의 예에서 볼 수 있다.
마. AL의 값은 EMRS register에서 세팅한다.
[참고]
HOW TO USE DDR2 SDRAM
- ELPIDA -
HOW TO USE DDR SDRAM
- ELPIDA -
DDR2 SDRAM TECHNOLOGY
- ELPIDA -
1.DDR2 SDRAM에 적용된 new function
가. 4-bit PREFETCH
나. ODT (ON DIE TERMINATION)
다. OCD (OFF CHIP DRIVER)
라. POSTED CAS AND ADDITIVE LATENCY
상기의 function들에 대하여 하나씩 검토하였고 이번 포스트가 그 마지막이 되겠다.
☞ DDR2 SDRAM의 동작원리 - 4bit PREFETCH
☞ DDR2 SDRAM의 동작원리 - ODT
☞ DDR2 SDRAM의 동작원리 - OCD
2. DDR SDRAM의 문제점
DDR SDRAM에서의 single read 동작은 다음과 같았다.
가. 'ACT'로 bank를 활성화
나. 'ACT'후 tRCD time이 지나고 선택된 bank에 대해 'READ'명령어 입력
다. 'READ'후 CL time이 지나고 DQ를 latch
하지만 multiple하게 read/wirte가 실행된다면 아래 그림처럼 첫번째의 파란색 RAS신호('ACT')후
tRCD time뒤에 파란색의 CAS신호 ('READ'나 'WRIT')가 나와야 하는데 그렇게 되면 세번째의 노란색
RAS('ACT')신호와 파란색의 CAS('WRIT')신호가 충돌하게 된다.
그 충돌을 피하기 위해 세번째의 노란색 RAS신호는 one clock delay후에 진행되며 그 결과 DQ의
중간에 empty space가생긴다.
이는 command/data bus의 효율을 떨어뜨리고 bandwidth가 감소되는 이유가 된다.
3. DDR2 SDRA에서의 성능 향상
가. RAS신호 바로 뒤나 tRCD time내에선 언제든지 CAS신호를 붙일수 있도록 하여 성능의 향상을
꾀했다.
나. CAS신호가 입력되면 AL time뒤에 CL이 있고 그 뒤에 DQ가 latch되는 것이다.
아래의 그림에서 보듯이 명령어 처리가 매우 단순해지고 empty space가 사라졌음을 확인할 수
있다.
되는 것이다.
라. AL(Additive Latency)를 변경하면서 그에따른 Posted CAS의 위치가 결정되며 이는 아래
Read Latency의 예에서 볼 수 있다.
마. AL의 값은 EMRS register에서 세팅한다.
[참고]
HOW TO USE DDR2 SDRAM
- ELPIDA -
HOW TO USE DDR SDRAM
- ELPIDA -
DDR2 SDRAM TECHNOLOGY
- ELPIDA -
'[HARDWARE] > CORE' 카테고리의 다른 글
DDR3 SDRAM의 동작원리 - DYNAMIC ODT (0) | 2010.12.21 |
---|---|
DDR3 SDRAM의 동작원리 - ZQ CALIBRATION (0) | 2010.12.17 |
DDR2 SDRAM의 동작원리 - OCD (0) | 2009.10.12 |
DDR2 SDRAM의 동작원리 - ODT (15) | 2009.10.09 |
2009. 10. 12. 13:55
DDR2 SDRAM에 새로이 적용된 기술들을 살펴보고 기존 DRAM들과의 차이점을 확인한다.
1.DDR2 SDRAM에 적용된 new function
가. 4-bit PREFETCH
나. ODT (ON DIE TERMINATION)
다. OCD (OFF CHIP DRIVER)
라. POSTED CAS AND ADDITIVE LATENCY
상기의 function들에 대하여 하나씩 검토하기로 한다.
☞ DDR2 SDRAM의 동작원리 - 4bit PREFETCH
☞ DDR2 SDRAM의 동작원리 - ODT
☞ DDR2 SDRAM의 동작원리 - POSTED CAS AND ADDITIVE LATENCY
2. OCD의 개요
가. DRAM의 내부에 있는 출력측 driver의 임피던스를 조정하여 신호의 전압을 조정하는 것.
나. 전압 조정을 통하여 출력 신호의 pull-up 저항값과 pull-down 저항값을 동일하게 만드는 것.
3. DQS와 /DQS의 drive 성능 관계
가. DQS와 /DQS의 drive performance가 같다면 DQS의 중간 레벨과 /DQS의 중간 레벨이 교차하게
된다.
나. DQS와 /DQS의 drive performance가 같지 않다면 아래의 그림처럼 DQS와 /DQS가 교차하는 지점이
중간 레벨이 아니게 된다.
4. DQS와 /DQS의 valid data window
가. DDR2에선 I/O data의 reference clock으로 DQS와 /DQS의 cross point를 사용한다.
나. Memory controller는 DQS, /DQS의 reference clock에 동기된 DQ로 부터 data를 latch 한다.
다. VREF 신호레벨을 기준으로 DQ의 high, low를 판별하게 된다.
라. DQS, /DQS의 drive performace가 서로 다를때 형성되는 window는 VREF와 DQ가 만드는
valid window보다 작게된다.
마. DQ와 DQS간의 skew는 data가 latch되는 시간이 줄어드는 결과를 초래한다.
5. OCD의 기능
가. OCD는 DRAM의 내부 output driver의 임피던스값을 조절할 수 있고 이는 DQ, DQS 그리고 /DQS의
전압을 조절하는 기능이다.
나. DQS, /DQS간의 cross point가 있고 VREF와 DQ간의 cross point가 있는데 optimize를 통하여
이 cross point간의 skew를 최소화 하게 한다.
다. 결과적으로 valid data window의 size는 최대가 되어 data를 latch하는 시간을 최대한으로 보장하게
된다.
6. OCD 세팅
가. DRAM의 drive mode에서 임피던스 측정. (SSTL_18일 경우 18±3Ω)
나. DRAM의 adjustment mode에서 임피던스 수정
다. 적절한 임피던스가 될 때까지 상기 항목을 반복
라. DDR2에서 임피던스값의 측정/비교하는 기능은 없기 때문에 외부 계측기가 필요하며 이 OCD
세팅은 EMRS 레지스터를 통하여 가능하다.
[참고]
HOW TO USE DDR2 SDRAM
- ELPIDA -
DDR2 SDRAM TECHNOLOGY
- ELPIDA -
1.DDR2 SDRAM에 적용된 new function
가. 4-bit PREFETCH
나. ODT (ON DIE TERMINATION)
다. OCD (OFF CHIP DRIVER)
라. POSTED CAS AND ADDITIVE LATENCY
상기의 function들에 대하여 하나씩 검토하기로 한다.
☞ DDR2 SDRAM의 동작원리 - 4bit PREFETCH
☞ DDR2 SDRAM의 동작원리 - ODT
☞ DDR2 SDRAM의 동작원리 - POSTED CAS AND ADDITIVE LATENCY
2. OCD의 개요
가. DRAM의 내부에 있는 출력측 driver의 임피던스를 조정하여 신호의 전압을 조정하는 것.
나. 전압 조정을 통하여 출력 신호의 pull-up 저항값과 pull-down 저항값을 동일하게 만드는 것.
3. DQS와 /DQS의 drive 성능 관계
가. DQS와 /DQS의 drive performance가 같다면 DQS의 중간 레벨과 /DQS의 중간 레벨이 교차하게
된다.
나. DQS와 /DQS의 drive performance가 같지 않다면 아래의 그림처럼 DQS와 /DQS가 교차하는 지점이
중간 레벨이 아니게 된다.
4. DQS와 /DQS의 valid data window
가. DDR2에선 I/O data의 reference clock으로 DQS와 /DQS의 cross point를 사용한다.
나. Memory controller는 DQS, /DQS의 reference clock에 동기된 DQ로 부터 data를 latch 한다.
다. VREF 신호레벨을 기준으로 DQ의 high, low를 판별하게 된다.
라. DQS, /DQS의 drive performace가 서로 다를때 형성되는 window는 VREF와 DQ가 만드는
valid window보다 작게된다.
마. DQ와 DQS간의 skew는 data가 latch되는 시간이 줄어드는 결과를 초래한다.
5. OCD의 기능
가. OCD는 DRAM의 내부 output driver의 임피던스값을 조절할 수 있고 이는 DQ, DQS 그리고 /DQS의
전압을 조절하는 기능이다.
나. DQS, /DQS간의 cross point가 있고 VREF와 DQ간의 cross point가 있는데 optimize를 통하여
이 cross point간의 skew를 최소화 하게 한다.
다. 결과적으로 valid data window의 size는 최대가 되어 data를 latch하는 시간을 최대한으로 보장하게
된다.
6. OCD 세팅
가. DRAM의 drive mode에서 임피던스 측정. (SSTL_18일 경우 18±3Ω)
나. DRAM의 adjustment mode에서 임피던스 수정
다. 적절한 임피던스가 될 때까지 상기 항목을 반복
라. DDR2에서 임피던스값의 측정/비교하는 기능은 없기 때문에 외부 계측기가 필요하며 이 OCD
세팅은 EMRS 레지스터를 통하여 가능하다.
[참고]
HOW TO USE DDR2 SDRAM
- ELPIDA -
DDR2 SDRAM TECHNOLOGY
- ELPIDA -
'[HARDWARE] > CORE' 카테고리의 다른 글
DDR3 SDRAM의 동작원리 - ZQ CALIBRATION (0) | 2010.12.17 |
---|---|
DDR2 SDRAM의 동작원리 - POSTED CAS AND ADDITIVE LATENCY (2) | 2009.10.15 |
DDR2 SDRAM의 동작원리 - ODT (15) | 2009.10.09 |
DDR2 SDRAM의 동작원리 - 4bit PREFETCH (0) | 2009.10.09 |