inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

High-Speed 임베디드 Board 설계 프로젝트 (feat. 스마트폰)

[Schematic 설계 실습 1] LPDDR4 schematic 설계하기 - 2

ODT_CA 셋업 관련 문의

해결된 질문

28

아이패드미니6세대

작성한 질문수 3

0

안녕하세요.

해당 Schematic에 ODT_CA_A를 VDDQ로 (10k을 이용해서) 풀업, ODT_CA_B를 GND로 (10k을 이용해서) 풀다운을 한 것을 확인할 수 있었는데요, 그 의도에 대해서 질문하고자 합니다.

 

RS512M32LZ4D2ANP-75BT (LPDDR4 칩)의 데이터시트와, JESD209-4 문서를 확인해보았는데, 모두 ODT_CA_A/ODT_CA_B의 처리에 대해선 나와있지 않았고, 다만 해당 핀과 관계있는 MR11/MR22 레지스터에 대한 설명만 나와있었습니다.

 

RK3399 칩에서도 ODT에 대한 핀 (DDRx_ODTx, x=0 or 1)에 대한 세팅이 있는 것으로 보아, RK3399에서 LPDDR4 칩으로 ODT를 직접 제어할 수 있는 것으로 보였습니다. (chatGPT를 통해서도 같은 대답을 얻을 수 있었고요.)

 

그러나 작성하신 레퍼런스 회로 및 강의에서는 ODT_CA_A를 10k로 풀업, ODT_CA_B를 10k로 풀다운을 하셨는데, 다른 의도가 있을지 여쭤봅니다.

임베디드 hardware artwork kicad orcad odt

답변 1

0

회로설계 멘토 삼코치

안녕하세요, 답변 남겨드립니다.

이 부분은 MR 제어와 strap 개념이 같이 들어가 있어서 문서만 보면 헷갈리기 쉬운 포인트입니다. 강의에서 ODT_CA_A를 10k로 풀업하고 ODT_CA_B를 10k로 풀다운한 의도는, RK3399가 이 핀을 런타임에 직접 토글한다는 의미보다는 어떤 die 또는 rank가 CA bus termination을 제공할 수 있는지를 보드 레벨에서 미리 정해두는 쪽에 가깝습니다. JEDEC LPDDR4 규격에서는 CA ODT 값 자체는 MR11[6:4]로 정하지만, ODT_CA bond pad가 LOW면 MR11이 켜져 있어도 그 die는 CA bus를 terminate하지 않고, HIGH이면서 MR11 값이 valid일 때만 terminate하도록 정의하고 있습니다. 같은 문맥에서 shared command bus 구조라면 ODT_CA ball을 시스템 보드에서 제공하라고 적혀 있는 이유도, termination 제공 주체를 보드에서 선택하기 위해서입니다.

그래서 질문 주신 MR11, MR22와 ODT_CA_A/B는 서로 대체 관계가 아니라 역할이 분리되어 있다고 보시면 맞습니다. MR11은 RTT 값을 240 ohm, 120 ohm, 80 ohm, 60 ohm, 48 ohm, 40 ohm 가운데 어떤 값으로 쓸지 정하는 레지스터이고, MR22는 CK, CS, CA에 대한 override나 disable 동작을 일부 제어합니다. 반면 ODT_CA 핀은 그 ODT 기능을 이 die에서 허용할지 말지를 가르는 하드 strap에 더 가깝습니다. LPDDR4 계열 datasheet에서도 ODT_CA pin is used in conjunction with the mode register to turn on or off the on-die termination for CA pins라고 설명하고 있어서, 핀과 MR이 함께 동작하는 구조로 이해하시는 게 맞습니다.

RK3399 쪽에서 ODT 관련 설정이 보이는 것은 DDR controller 또는 PHY가 ODT를 운용할 수 있다는 의미로 보시면 됩니다. RK3399 datasheet에도 DDR PHY 쪽에 programmable output and ODT impedance with dynamic PVT compensation 기능이 있다고 나와 있는데, 이건 PHY 초기화와 트레이닝, MR 세팅 관점의 기능 설명이지 외부 ODT_CA strap 핀을 대신해 준다는 뜻은 아닙니다. 실제 bring-up에서는 컨트롤러가 MR 세팅과 calibration을 맡고, 보드는 ODT_CA strap으로 어느 쪽 rank나 die가 CA ODT 제공 주체가 될지를 정해주는 식으로 역할이 갈립니다.

그래서 강의 schematic에서 ODT_CA_A를 pull-up, ODT_CA_B를 pull-down 해둔 것은 보통 A 채널 쪽은 terminating rank로 허용하고, B 채널 쪽은 non-terminating rank로 두려는 의도로 읽으시면 됩니다. 보드에 LPDDR4 package가 두 개 들어가고 shared CA topology를 쓴 구조라면, 반대편 package에서는 이 설정을 반대로 가져가서 채널별로 termination provider가 하나만 남도록 맞추는 구성이 자연스럽습니다. JEDEC도 multi-rank system에서는 one rank가 전체 command bus를 terminate하도록 설계된다고 명시하고 있어서, 강의에서 잡은 방향은 이 표준 의도와 맞닿아 있습니다. 다만 이 문장은 전체 rank topology를 같이 봐야 100% 단정할 수 있으니, 반대편 package의 ODT_CA_A/B가 반대로 들어갔는지까지 함께 확인해 보시면 의도가 더 선명해질 것 같아요.

10k 저항값 자체는 고속 종단값을 만드는 용도가 아니라, ODT_CA를 전원 인가 시점부터 확실한 H 또는 L로 고정해 두기 위한 약한 strap 저항으로 보시면 됩니다. 이 핀은 고속 토글 신호가 아니라 defined logic level만 만족하면 되는 입력 성격이라서, 수 kΩ에서 수십 kΩ 정도의 약한 bias를 두는 방식이 실무에서 무난합니다. 이 구간에서는 저항값보다 floating 없이 boot sequence 초기에 논리 상태가 확정되는지가 더 중요하고, 그 다음이 schematic의 strap 방향과 DDR init script의 MR 설정이 서로 충돌하지 않는지 확인하는 부분이네요.

1

아이패드미니6세대

답변 감사합니다.

정리용 + 다른 질문자들을 위해서 ODT_CA 핀 처리 방법 레퍼런스를 여기에 정리해 두었습니다.

4.33.1 ODT Mode Register and ODT State Table
When the ODT_CA pad is LOW, the die will not terminate the CA bus regardless of the state of the mode register CA ODT bits (MR11 OP[6:4]). If, however, the ODT_CA bond-pad is HIGH, and the mode register CA ODT bits are enabled, the die will terminate the CA bus with the ODT values found in MR11 OP[6:4]. In a multirank system, the terminating rank should be trained first, followed by the non-terminating rank(s)

Multi Rank일 때 One Rank만 Termination을 수행 :
When CA, CK and/or CS ODT is enabled via MR11 OP[6:4] and also via MR22 or CA-ODT pad setting, the rank providing ODT will continue to terminate the command bus in all DRAM states including power-down.

0

회로설계 멘토 삼코치

정리 갑사합니다!

13강 프로젝트생성해보기 관련 질문

0

3

1

LPDDR4의 VDD2 / VDDQ 전원 질문

0

16

1

벅컨버터 사용 및 그라운드 분리

0

30

2

수강연장

0

18

2

CS에 관한 질문

0

18

1

[HDL 32장-2부] 참고 링크 관련

0

27

2

EEPROM I2C 풀업저항

0

29

2

강의 만료일 연장 신청

0

25

2

강의수강 만료일 연장 신청

0

30

2

SP와 SP_ELn의 관계

0

23

1

측정관련 질문

0

46

1

강의 질문

0

60

2

제조사측 문의시 대처하는 방법

0

22

0

직접 만들어 봐야 내 지식이 된다

0

20

1

벅컨버터 출력전압

0

46

2

RJ45 library 누락

0

44

2

난방실만들기.4 진행 중, m_state 값 초기화가 안됩니다..

0

31

2

[HDL 22장] F/F CE 관련 질문

1

40

2

아직 보드 5개가 있습니다 - 4월 3일

0

29

1

개발보드에서 커스텀보드로 가는 3단계

0

25

0

por 문의

0

53

1

강의 자료 문의

0

69

2

7. 임베디드 보드 Schematic 설계 - Component Library 및 Symbol 생성 // Mixed_signal 라이브러리

0

67

2

7장 Mixed_signal 라이브러리 다운

0

57

2