KR20060116684A - 전용 데이터 및/또는 컨트롤 버스들을 사용하는 메모리시스템, 모듈들, 컨트롤러들 및 방법들 - Google Patents

전용 데이터 및/또는 컨트롤 버스들을 사용하는 메모리시스템, 모듈들, 컨트롤러들 및 방법들 Download PDF

Info

Publication number
KR20060116684A
KR20060116684A KR1020060013956A KR20060013956A KR20060116684A KR 20060116684 A KR20060116684 A KR 20060116684A KR 1020060013956 A KR1020060013956 A KR 1020060013956A KR 20060013956 A KR20060013956 A KR 20060013956A KR 20060116684 A KR20060116684 A KR 20060116684A
Authority
KR
South Korea
Prior art keywords
memory
data
buses
control
dedicated
Prior art date
Application number
KR1020060013956A
Other languages
English (en)
Other versions
KR100763352B1 (ko
Inventor
이정배
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US11/267,669 external-priority patent/US7577760B2/en
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Publication of KR20060116684A publication Critical patent/KR20060116684A/ko
Application granted granted Critical
Publication of KR100763352B1 publication Critical patent/KR100763352B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • G11C5/04Supports for storage elements, e.g. memory modules; Mounting or fixing of storage elements on such supports
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1684Details of memory controller using multiple buses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/06Arrangements for interconnecting storage elements electrically, e.g. by wiring
    • G11C5/063Voltage and signal distribution in integrated semi-conductor memory access lines, e.g. word-line, bit-line, cross-over resistance, propagation delay
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/109Control signal input circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)
  • Memory System (AREA)

Abstract

메모리 시스템은 적어도 하나의 메모리 모듈 상에 세트들로 배열되는 복수개의 메모리 디바이스들을 구비하며, 각 세트는 적어도 하나의 메모리 디바이스를 포함한다. 상기 메모리 시스템은 각각의 상기 메모리 디바이스 세트들을 상기 적어도 하나의 메모리 모듈의 외부의 메모리 컨트롤러에 커플하도록 형성되는 각각의 전용 직렬 데이터 및/또는 컨트롤 버스들을 구비한다. 상기 전용 직렬 데이터 및/또는 컨트롤 버스들은 상기 메모리 컨트롤러로부터 상기 각각의 메모리 디바이스들에 비(非)버퍼되는 억세스를 제공하도록 형성될 수 있다.
메모리, 모듈, 데이터, 포인트, 커맨드, 어드레스, 네트 토폴로지

Description

전용 데이터 및/또는 컨트롤 버스들을 사용하는 메모리 시스템, 모듈들, 컨트롤러들 및 방법들{MEMORY SYSTEMS, MODULES, CONTROLLERS AND METHODS USING DEDICATED DATA AND/OR CONTROL BUSSES}
본 발명의 상세한 설명에서 사용되는 도면을 보다 충분히 이해하기 위하여, 각 도면의 간단한 설명이 제공된다.
도 1은 종래의 UDIMM을 나타내는 도면이다.
도 2는 종래의 RDIMM을 나타내는 도면이다.
도 3은 본 발명의 실시예들에 따른 UDIMM 및 메모리 컨트롤러를 나타내는 도면이다.
도 4는 본 발명의 다른 실시예에 따른 메모리 디바이스를 나타내는 도면이다.
도 5는 본 발명의 다른 실시예에 따른 도 3의 UDIMM의 예시적인 동작을 나타내는 타이밍도이다.
도 6은 본 발명의 추가적인 실시예에 따른 UDIMM과 메모리 컨트롤러를 나타내는 도면이다.
도 7은 본 발명의 추가적인 실시예에 따른 RDIMM과 메모리 컨트롤러를 나타 내는 도면이다.
도 8 및 도 9는 본 발명의 다른 실시예에 따른 다수의 UDIMM들의 배열 및 메모리 컨트롤러를 나타내는 도면이다.
본 발명은 메모리 디바이스들 및 그의 구동방법들에 관한 것으로서, 특히, 메모리 모듈 시스템들 및 그의 구동방법들에 관한 것이다.
개인용 컴퓨터들, 노트북 컴퓨터들 및 다른 디바이스들에 사용되는 종래의 메모리 디바이스들은 전형적으로 모듈방식으로 구성된다. 특히, 데스크탑 또는 노트북 컴퓨터는 하나 또는 그 이상의 메모리 모듈을 포함할 수 있으며, 상기 메모리 모듈들 각각은 상기 컴퓨터의 마더보드(motherboard) 상의 버스 커넥터와 상응하도록 형성되는 커넥터를 더 포함하는 회로기판(예; PCB) 상에 탑재된 복수의 메모리 디바이스 칩들을 포함한다. 종래의 메모리 모듈들은 UDIMM(Unbuffered Dual In-line Memory Module), RDIMM(Registered Dual In-line Memory Module)및 FBDIMM(Fully Buffered Dual In -line Memory Module)같은 여러 가지의 다른 형태들을 가질 수 있다.
도 1은 종래의 UDIMM(100)을 나타낸다. 상기 UDIMM(100)은 회로기판(110) 및 그 위에 배치된 복수의 메모리 디바이스(120)들을 포함한다. 상기 메모리 디바이스 (120)들은 UDIMM(100)의 외부의 메모리 컨트롤러(160)에 의해서 제어된다. 도시되는 바와 같이, 각각의 양방향(bidirectional) 데이터 버스들(150)은 각각의 메모리 디바이스들(120)과 상기 메모리 컨트롤러(160) 사이를 확장하는 반면에, 상기 메모리 컨트롤러(160)와 상기 메모리 디바이스(120)들 각각은 컨트롤/어드레스(C/A) 버스(130) 및 클락 라인(140)에 공통으로 커플될 수 있다. 이와 같은 배치에서, 상기 데이터 버스들(150)보다 상기 C/A 버스(130)에 더 많은 메모리 디바이스들이 커플된다. 결과적으로, 상기 C/A 버스(130) 및 상기 클락 버스(140)는 상기 데이터 버스들(150)보다 큰 부하를 가질 수 있다.
메모리 컨트롤러와 메모리 모듈 사이의 컨트롤/어드레스 라인 부하를 줄이기 위한 종래의 한 기술은 상기 메모리 모듈 상의 컨트롤/어드레스, 클락 및/또는 데이터 신호들을 버퍼하여 메모리 컨트롤러와 메모리 모듈 사이에 포인트 대 포인트(point-to-point) 링크(link)들을 제공하는 것이다. 예를 들어, 도 2는 클락 및 C/A 신호 버퍼을 제공하는 종래의 RDIMM(200)을 나타낸다. 상기 RDIMM(200)은 회로기판(210) 상에 배치되는 복수개의 메모리 디바이스(220)들, C/A 버퍼(222) 및 클락 버퍼(예; 위상 동기 루프 회로, PLL)(224)를 포함한다. UDIMM과 유사하게, 각각의 데이터 버스들(250)은 각각의 상기 메모리 디바이스들(220)과 외부 메모리 컨트롤러(260) 사이에 확장된다. 하나의 C/A 버스(230)은 상기 메모리 컨트롤러(260)와 상기 C/A 버퍼(222) 사이에 확장된다. 상기 모듈(200) 상의 C/A 서브(sub) 버스(226)는 상기의 C/A 버퍼(222)와 상기 메모리 디바이스(220)들 커플(couple)한다. 유사하게, 하나의 클락 버스(240)는 상기 메모리 컨트롤러(260)와 상기 클락 버퍼 (224) 사이를 확장하고, 그리고, 클락 서브 버스(228)는 상기 메모리 디바이스(220)에 상기 클락 버퍼(224)를 커플한다. 이와 같은 배치에서, 상기 데이터 버스(250)들, 상기 C/A 버스(230) 및 상기 클락 버스(240)의 부하(loading)는 개략적으로 동등할 수도 있으나, 상기 모듈(200)의 상기 서브 버스들(226, 228)은 상기 데이터 버스들(250)에 비해 상대적으로 더 큰 부하를 가질 수 있다.
본 발명의 목적은 커맨드/어드레스 버스가 데이터 버스와 실질적으로 동일한 부하를 가지는 메모리 시스템을 제공하는 데 있다.
본 발명의 다른 목적은 상기 메모리 시스템의 구동방법을 제공하는 데 있다.
본 발명의 실시예들에서, 메모리 시스템은 적어도 하나의 메모리 모듈 상에 세트들로 배열되는 복수개의 메모리 디바이스들로서, 각 세트는 적어도 하나의 메모리 디바이스를 포함하는 상기 복수개의 메모리 디바이스들을 구비한다. 상기 시스템은 각각의 상기 메모리 디바이스 세트들을 상기 적어도 하나의 메모리 모듈의 외부의 메모리 컨트롤러에 커플하도록 형성되는 각각의 전용 직렬 데이터 및/또는 컨트롤 버스들을 더 구비한다. 상기 전용 직렬 데이터 및/또는 컨트롤 버스들은 상기 메모리 컨트롤러로부터 상기 각각의 메모리 디바이스들에 비(非)버퍼되는 억세스를 제공하도록 형성될 수 있다.
각 메모리 모듈은 상기 메모리 컨트롤러에 커플되도록 형성되는 데이터 및/또는 컨트롤 버퍼를 포함할 수 있다. 상기 적어도 하나의 메모리 모듈은 복수개의 메모리 모듈들을 구비할 수 있으며, 상기 각 메모리 디바이스 세트는 다수개의 상기 모듈들로부터의 디바이스들을 포함할 수 있다. 각 메모리 디바이스는 관련되는 상기 컨트롤 버스에 커플되며, 상기 컨트롤 버스를 통하여 수신되는 패킷들로부터 어드레스 및/또는 커맨드 데이터를 디코딩하도록 형성되는 패킷 디코더를 구비할 수 있다. 상기 시스템은 각각의 상기 메모리 디바이스 세트들을 상기 메모리 컨트롤러에 커플되도록 형성되는 각각의 클락 라인들을 더 구비할 수 있다. 상기 데이터와 컨트롤 버스들은 차동형(differential) 또는 싱글엔드형(single-ended) 버스들을 포함할 수 있다. 상기 컨트롤 버스들은 어드레스 및/또는 커맨드 정보를 전송하도록 형성될 수 있다. 각 컨트롤 버스가 하나 이상의 직렬 버스를 구비할 수 있다. 상기 데이터 버스들이 양방향(bidirectional) 또는 일방향(unidirectional)일 수 있다.
본 발명의 다른 실시예들에 따르면, 메모리 시스템은 적어도 하나의 메모리 모듈 상에 세트들로 배열되는 복수개의 메모리 디바이스들로서, 각 세트는 적어도 하나의 메모리 디바이스를 포함하는 상기 복수개의 메모리 디바이스들; 및 각각의 상기 메모리 디바이스 세트들을 상기 적어도 하나의 메모리 모듈의 외부의 메모리 컨트롤러에 커플하도록 형성되는 각각의 전용 직렬 데이터 및/또는 컨트롤 버스들을 구비한다. 상기 전용 데이터 및/또는 컨트롤 버스들은 동일한 네트 토폴러지(net topology)를 가진다. 동일한 수의 상기 메모리 디바이스들이 상기 전용 데이 터 및/또는 컨트롤 버스들 각각에 커플될 수 있다. 상기 메모리 디바이스 세트들은 하나 또는 다수의 메모리 디바이스들을 포함할 수 있다.
본 발명의 추가적인 실시예에 의하면, 메모리 모듈은 세트들로 배열되는 복수개의 메모리 디바이스들로서, 각 세트는 적어도 하나의 메모리 디바이스를 포함하는 상기 복수개의 메모리 디바이스들; 및 각각의 상기 메모리 디바이스 세트들을 메모리 컨트롤러에 커플하도록 형성되는 각각의 직렬 데이터 및 컨트롤 버스들의 전용 쌍을 구비한다. 각각의 세트는 하나의 메모리 디바이스 또는 다수의 메모리 디바이스들을 포함할 수 있다. 각각의 상기 전용 쌍에서의 상기 데이터 및 컨트롤 버스들은 동일한 네트 토폴러지(net topology)를 가질 수 있다. 각각의 상기 전용 쌍에서의 상기 데이터 및 컨트롤 버스들은 동일한 수의 메모리 디바이스들에 연결될 수 있다.
본 발명의 다른 실시예는 세트들로 배열되는 복수개의 메모리 디바이스들로서, 각 세트는 적어도 하나의 메모리 디바이스를 포함하는 상기 복수개의 메모리 디바이스들을 구비한느 메모리 모듈을 제공한다. 상기 메모리 모듈은 메모리 컨트롤 버퍼, 각각의 상기 메모리 디바이스 세트들을 상기 메모리 컨트롤 버퍼에 커플하는 각각의 전용 직렬 데이터 버스들 및 각각의 상기 메모리 디바이스 세트들을 외부의 메모리 컨트롤러에 커플하도록 형성되는 각각의 전용 직렬 컨트롤 버스들 구비한다. 각각의 세트는 하나의 메모리 디바이스 또는 다수의 메모리 디바이스들을 포함할 수 있다. 각각의 상기 전용 쌍에서의 상기 데이터 및 컨트롤 버스들은 동일한 네트 토폴러지(net topology)를 가질 수 있다. 상기 전용 데이터 및/또는 컨트롤 버스들 각각은 상기 메모리 컨트롤러를 동일한 수의 메모리 디바이스들에 연결할 수 있다. 상기 데이터 버스들은 양방향(bidirectional) 또는 일방향(unidirectional)일 수 있다.
본 발명의 추가적인 실시예는 적어도 하나의 메모리 모듈 상의 복수개의 메모리 디바이스들을 구동하는 방법을 제공한다. 각각의 전용 직렬 데이터 버스들 및/또는 직렬 컨트롤 버스들을 사용하여, 각각의 메모리 디바이스들의 세트들은 상기 적어도 하나의 메모리 모듈의 외부의 메모리 컨트롤러에 직접적으로 커플된다. 상기 각각의 전용 직렬 데이터 및/또는 직렬 컨트롤 버스들 통하여 데이터 및/또는 컨트롤 신호들이 제공된다. 상기 각각의 전용 직렬 데이터 버스들 및/또는 직렬 컨트롤 버스들을 사용하여, 각각의 메모리 디바이스들의 세트들을 상기 적어도 하나의 메모리 모듈의 외부의 메모리 컨트롤러에 직접적으로 커플하는 것은 각각의 직렬 데이터 및 컨트롤 버스들의 전용 쌍을 이용하여, 각각의 상기 메모리 디바이스 세트들을 메모리 컨트롤러에 커플하는 것을 포함할 수 있다. 상기의 메모리 디바이스들과 상기 메모리 컨트롤러 사이의 신호들은 상기 적어도 하나의 메모리 모듈 상의 각각의 메모리 컨트롤 버퍼들을 통하여 버퍼된다.
본 발명은 본 발명의 실시예들이 도시되는 첨부 도면들을 참조하여 더욱 완전하게 기술된다. 그러나, 본 발명은 다양한 다른 형태로 구현될 수 있으며, 여기에 설명되는 실시예에 한정하여 해석되지는 않는다. 오히려, 이러한 실시예들은 이러한 개시가 보다 철저하고 완전하여지고, 당업자에게 발명의 범위를 충분히 전달하기 위하여 제공된다. 상기 도면들에서, 요소들의 크기들 또는 형태들은 명확화를 위하여 이상적이거나 과장될 수 있다.
한 요소가 다른 구성요소에 "연결되는" 또는 "커플(couple)되는" 것으로 언급될 때는, 다른 요소에 직접적으로 연결 또는 커플되거나, 혹은 매개요소가 존재할 수 있다는 것은 이해될 것이다. 반면에, 한 요소가 다른 요소에 "직접적으로 연결되는" 또는 "직접적으로 커플(couple)되는" 것으로 언급될 때는, 매개요소가 존재하지 않는다. 전체적으로 동일한 참조번호는 동일한 구성요소를 언급한다. 본 명세서에서 사용되는 바와 같은, "및/또는" 용어는 관련되어 리스트(list)된 품목의 하나 또는 그 이상의 어떠한 조합 및 모든 조합을 포함한다.
본 명세서에서, 제1, 제2, 제3 등의 용어들이 다양한 요소들, 구성요소들 및/또는 섹션들을 기술하기 위하여 사용되더라도, 이러한 요소들, 구성요소들 및/또는 섹션들은 이러한 용어들에 의해 제한되지 않는다. 이러한 용어들은 단지 하나의 요소, 구성요소 또는 섹션을 다른 요소, 영역(region) 또는 섹션으로부터 구분하기 위하여 사용된다. 그래서, 다음에 논의되는 제1 요소, 구성요소 또는 섹션은, 본 발명의 사상에서 벗어나지 않게, 제2 요소, 구성요소 또는 섹션으로 언급될 수 있다.
본 명세서에서 사용되는 전문용어들은 단지 특별의 실시예들을 기술하기 위한 목적이며, 본 발명의 한정을 의도하지는 않는다. 본 명세서에서 사용되는 바와 같이, 문맥이 명확하게 다른 것을 나타내지 않는다면, 상기 단수형태들은 복수형태들을 포함하도록 의도된다. 그리고, "구비하다" 및/또는 "구비하는" 용어는, 본 명세서에서 사용될 때, 언급되는 특성, 정수들, 단계들, 동작들, 요소들 및/또는 구 성요소들의 존재를 상술하지만, 하나 혹은 그 이상의 다른 특성, 정수들, 단계들, 동작들, 요소들, 구성요소들 및/또는 이들의 그룹들의 존재 또는 추가를 배제하지는 않는다.
다르게 정의되지 않는다면, 본 명세서에서 사용되는 모든 용어들(기술적 및 과학적 용어들 포함)은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의하여 공통적으로 이해되는 의미를 지닌다. 공통적으로 사용되는 사전들에서 정의되는 것과 같은 용어들은, 관련 기술분야의 문맥에서의 그들의 의미와 일관되는 의미를 가지는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의되지 않는다면 이상적 혹은 과도하게 형식적으로 해석되지 않는다는 것은 이해될 것이다.
본 발명의 실시예들은, 메모리 아키텍쳐(architecture)에서의 데이터 및 컨트롤(예;커맨드/어드레스) 라인들의 실질적으로 균형된 부하가 각각의 메모리 디바이스들 또는 메모리 모듈(예; UDIMM, RDIMM 또는 FBDIMM)의 메모리 디바이스들의 그룹들을 메모리 컨트롤 회로(예; 외부의 메모리 컨트롤러 및/또는 상기 모듈 상의 버퍼 회로)에 커플하도록 직렬 데이터 및 컨트롤(예; 커맨드/어드레스) 버스의 전용 쌍을 사용함으로써 이루어질 수 있다는 인식으로부터 기인(基因)되는데, 주어진 메모리 디바이스 혹은 메모리 디바이스들 각각의 그룹에 연결되는 상기 직렬 데이터 및 컨트롤 버스들은 동일한 네트(net) 토폴러지(topology)를 가진다. 예를 들면, 상기 직렬 데이터 및 컨트롤 버스들의 신호 패스(path)들(예; 싱글엔드형(single-ended) 신호 라인들 및/또는 차동형(differential) 신호 라인 쌍들)은 거기에 연결되는 동일한 수의 부하를 가진다. 그래서, 실시예들에서, 비정상적으로 많은 수들의 신호 라인들을 사용하지 않고, 보다 복잡한 포인트 대 포인트(point-to-point) 버퍼 솔루션(buffered solution)에 의하여 제공되는 것과 유사하게, 상대적으로 간단한 및/또는 덜 비싼 UDIMM 형태들이 모듈연결들에 대한 메모리 컨트롤러의 균형된 부하를 이루기 위하여 사용될 수 있다. 추가적인 실시예들에서, 버퍼된 솔루션들의 성능특성은 또한 향상될 수 있다.
본 명세서에서 사용되는 "컨트롤 버스"는 스트로브 신호들(예; CAS, RAS 등), 인에이블 신호들(예; WE, RE 등)과 같은 메모리 컨맨드 신호들 및 어드레스 신호들을 전달하도록 형성되는 버스이다. 데이터 버스는 데이터를 메모리 기억 장소들에 저장되는 데이터 및/또는 메모리 저장 장소들로부터 추출되는 데이터를 이송하도록 형성된다. 컨트롤 및/또는 데이터 버스들은 일방향(unidirectional) 또는 양방향(bidirectional)일 수 있으며, 싱글엔드형(single-ended) 혹은 차동형(differential)일 수 있다. 본 명세서에서 사용되는 바와 같이, "버스"는 다수의 신호 패스들, 예를 들면, 다수의 데이터 채널들 및/또는 다수의 컨트롤 채널들을 포함할 수 있다는 것은 이해될 것이다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다.
도 3은 본 발명의 실시예들에 따른 UDIMM(300)및 메모리 컨트롤러(360)를 나타낸다. 상기 UDIMM(300)은 회로기판(310)(예; PCB)을 포함하며, 상기 회로기판(310) 상에는 복수의 메모리 디바이스(300)가 배치된다. 각각의 메모리 디바이스(320)들은 각각의 직렬 데이터 버스들(350), 클락 버스들(340) 및 직렬 컨트롤/어 드레스(C/A) 버스들(330)에 의하여 메모리 컨트롤러(360)에 커플된다. 그래서, 상기 각각의 메모리 디바이스들(320)은 자신에 연결되는 각각의 데이터 및 컨트롤 버스들의 전용 쌍들을 가진다. 각각의 전용 클락 버스는 각각의 전용 데이터 및 컨트롤 버스들과 함께 제공될 수도 있으며, 혹은 공통 클락 또는 다른 클락 신호 배열이 사용될 수도 있다는 것은 이해될 것이다.
본 발명의 실시예들에서의 컨트롤 정보(예; 커맨드 및 어드레스 정보)는 패킷 형태 즉, 컨트롤 및 어드레스 정보를 포함하는 패킷의 스트림(stream)으로서 C/A 버스를 통하여 전송될 수 있다. 도 4는 본 발명의 실시예들에 따른 도 3의 메모리 모듈(300)에서 사용될 수 있는 패킷 C/A 인터페이스를 가지는 메모리 디바이스(320)에 대한 예시적인 구성을 나타낸다.
상기 메모리 디바이스(320)는 예를 들어, 도 3의 직렬 C/A 버스(330)와 같은 직렬 C/A 버스로부터, C/A 신호 패킷들을 수신하도록 구성되는 패킷 디코더(410)를 포함한다. 상기 패킷 디코더(410)는 수신되는 C/A를 분석하여 그것으로부터 커맨드들(CMDs) 및 어드레스(ADDRESS)를 복원하며, 상기 커맨드들(CMDs) 및 어드레스(ADDRESS)는 메모리 어레이(450)에 대한 독출 및/또는 기입에 사용된다. 상기 어드레스(ADDRESS)는 상기 로우(row) 선택기(430) 및 상기 칼럼(column) 선택기(440)에 제공되는 반면에, 상기 커맨드들(CMDs)은 커맨드 디코더(420)에 제공된다. 상기 커맨드 디코더(420)는 워드라인 신호(WL)들을 발생하는 로우 선택기(430), 메모리 어레이(450)에 대한 칼럼 선택 신호들(CSLs)을 응답적으로 발생하는 칼럼 선택기(440) 및 데이터 버스(DQ)를 통하여 데이터를 송신 및 수신하는 데이터 입출력 회 로(460)에 대한 컨트롤 신호들을 응답적으로 발생한다.
본 발명의 실시예들에 의하면, 도 3의 데이터 및 C/A 직렬 버스들(350, 330)과 같은 전용 직렬 데이터 또는 C/A 버스는 메모리 모듈 상의 각 메모리 디바이스 또는 메모리 디바이스들의 세트를 위하여 제공될 수 있다. 이러한 직렬 버스들의 신호 패스들(혹은 채널들)의 수는 일반적으로 상기 메모리의 크기(예; 요구되는 어드레스 비트들의 수 및/또는 상기 메모리의 데이터 폭(width)), 독출/기입 또는 다른 동작들을 수행하는데 요구되는 커맨드들의 수 등과 같은 요소에 의존한다. 도 5는 다수의 신호 패스들(예; 다수의 싱글엔드형 신호 라인들 및 다수의 차동형 신호 라인 쌍들)을 가지는 전용 직렬 데이터 및 C/A 버스들과 함께 사용되도록 형성되는 메모리 디바이스의, 본 발명의 다른 실시예들에 따른 예시적인 동작을 나타내는 타이밍 다이어그램이다.
16의 버스트 길이(DDR(double data rate) 동작으로 가정하고)를 가지는 독출/기입 싸이클(cycle)에 대하여, 16비트들이 대응하는 클락 신호(CLK)의 주기에 대응하는 구간에서 메모리 컨트롤러(예; 도 3의 메모리 컨트롤러(360))로부터 데이터 패스들(DQ 0-3)을 통하여 메모리 디바이스(예; 도 3의 메모리 디바이스(320))에 전송된다. 데이터의 전송과 동시에, 적어도 32비트의 C/A 정보들이 상기 데이터의 버스트(burst)와 함께 전송되도록, C/A 패스들(C/A1-2)을 통하여 송신될 수 있다. 예를 들어, 상기 메모리 디바이스의 버스트 길이가 16(예;32)보다 높게 제한된다면, 하나의 신호 패스로서 충분한 C/A 비트들을 전송하는 것이 가능할 수 있으며, 반면에, 버스트 길이가 16보다 작게 허용된다면 추가적인 전용 C/A 신호 패스들이 사용 될 수 있다. 일반적으로, 상기 C/A 버스들 상의 "직렬" 또는 "패킷화" 통신은 컨트롤/어드레스 신호들의 수가 C/A 신호 패스들의 수보다 크다는 것을 의미한다.
도 3에 도시되는 형태는 UDIMM(300)의 각 메모리 디바이스(320)에 대한 직렬 데이터 버스(350) 및 직렬 C/A 버스(330)(그리고, 임의적으로 전용 어드레스 버스(340))를 포함하는 전용 쌍의 제공과 관련되는데, 상기 데이터 및 어드레스 버스들은 동일한 네트 토폴러지 즉, 그들의 신호 패스들은 거기에 연결되는 동일한 수의 디바이스들을 가진다. 이것은 상기 데이터 버스들 및 상기 C/A 버스들의 실질적으로 동등한 수용 부하를 제공할 수 있는데, 상기 데이터 및 C/A 버스들은 실질적으로 동일한 비트 레이트(bit rate)를 지원하여서, 상대적으로 단순한 UDIMM 모듈들을 사용하면서도, 종래의 포인트 대 포인트 버퍼된 솔루션들에 비견될 수 있는 이점들을 제공한다.
본 발명의 다른 실시예들에 의하면, 이러한 접근은 복수의 메모리 디바이스들을 포함하는 각각의 그룹들에 직렬 데이터 및 C/A 버스들의 전용 쌍들의 제공에 더욱 일반화될 수 있다. 예를 들면, 도 6은 회로기판(610) 상에 배치되는 메모리 디바이스들(620)의 그룹들(625)을 포함하는 UDIMM(600)을 나타낸다. 메모리 디바이스들(620)의 각각의 그룹들(625)은 직렬 데이터 버스들(650)과 직렬 C/A 버스들(630)의 각각의 전용 쌍(전용 클락 버스들(640)과 함께)에 의해서 메모리 컨트롤러(660)에 커플된다. 따라서, 상기 데이터 버스(650) 및 상기 C/A 버스들(630)은 동일한 네트 토폴러지를 가진다.
본 발명은 RDIMM와 FBDIMM에 또한 응용될 수 있다. 도 7은 RDIMM(700) 및 관 련되는 메모리 컨트롤러(760)를 나타낸다. 상기 RDIMM(700)은 회로기판(710) 상에 배치되며, 각각의 데이터 버스들(750)에 의하여 상기 메모리 컨트롤러(760)에 커플되도록 구성되는 복수개의 메모리 디바이스들(720)을 포함한다. 상기 RDIMM(700)은 각각 C/A 버스(737) 및 클락 버스(747)에 의하여 상기 메모리 컨트롤러(760)에 커플되도록 구성되는 C/A 버퍼(735) 및 클락 버퍼(여기에서는 위상 동기 루프(PLL: phase locked loop)(745))를 더 포함한다. 상기 각각의 메모리 디바이스들(720)은 각각의 C/A 버스들(730)에 의하여 상기 C/A 버퍼(735)에 커플되는데, 각 메모리 디바이스(720)는 직렬 데이터 버스(750) 및 직렬 컨트롤/어드레스 버스(730)을 포함하는 전용 쌍에 의해 지원된다. 도시되는 바와 같이, 전용 클락 버스들(740)은 또한 상기 PLL(745)로부터 상기 각각의 메모리 디바이스들(720)에 제공된다. 도 7에서 도시되는 배열과 유사하게, RDIMM은 또한 다수의 메모리 디바이스들의 각각의 그룹들이 각각의 데이터 및 C/A(컨트롤) 버스들에 의해 지원되도록 배열될 수 있다는 것은 이해될 것이다.
본 발명의 다른 실시예들에 의하면, 다수의 모듈들로부터의 디바이스들을 포함하는 메모리 디바이스들의 세트들의 각각의 그룹들은 데이터 버스들과 C/A 버스들의 각각의 전용 쌍들에 의하여 메모리 컨트롤 회로 요소(예; 상기 모듈 외부의 메모리 컨트롤러)에 커플될 수 있다. 예를 들면, 도 8과 도 9에 도시되는 본 발명의 실시예들에 따른 메모리 모듈/메모리 컨트롤러 형태에서, 메모리 컨트롤러(860)는 각각의 데이터, C/A 및 클락 버스들(850,830,840)에 의하여 다수의 UDIMM들(800)의 메모리 디바이스들(820)의 다수의 세트들(825)에 커플되도록 형성될 수 있 다. 메모리 디바이스들(820)의 각 세트(825)는 다수의 UDIMM들(800)로부터의 디바이스들을 포함하며, 각각의 상기 세트들(825)은 각각의 데이터 및 C/A 버스들(850,830)의 전용 쌍들에 의하여 지원된다.
상기와 같은 본 발명의 메모리 시스템에서는, 컨트롤러와 각 메모리 디바이스 사이의 커맨드/어드레스 버스들은, 데이터 버스와 마찬가지로, 포인트 대 포인트 방식으로 설치된다. 그러므로, 상기 데이터 및 어드레스 버스들은 동일한 네트 토폴러지를 가지게 되며, 커맨드 어드레스 버스의 부하는 상기 데이터 버스의 부하와 실질적으로 동일하게 된다. 따라서, 본 발명의 메모리 시스템에 의하면, 상기 데이터 및 C/A 버스들은 실질적으로 동일한 비트 레이트(bit rate)를 지원하여서, 상대적으로 단순한 UDIMM 모듈들을 사용하면서도, 종래의 포인트 대 포인트 버퍼된 솔루션들에 비견될 수 있는 이점들이 제공된다.
본 발명은 도면에 도시된 일 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (29)

  1. 메모리 시스템에 있어서,
    적어도 하나의 메모리 모듈 상에 세트들로 배열되는 복수개의 메모리 디바이스들로서, 각 세트는 적어도 하나의 메모리 디바이스를 포함하는 상기 복수개의 메모리 디바이스들; 및
    각각의 상기 메모리 디바이스 세트들을 상기 적어도 하나의 메모리 모듈의 외부의 메모리 컨트롤러에 커플하도록 형성되는 각각의 전용 직렬 데이터 및/또는 컨트롤 버스들을 구비하는 것을 특징으로 하는 메모리 시스템.
  2. 제1 항에 있어서, 상기 전용 직렬 데이터 및/또는 컨트롤 버스들은
    상기 메모리 컨트롤러로부터 상기 각각의 메모리 디바이스들에 비(非)버퍼되는 억세스를 제공하도록 형성되는 것을 특징으로 하는 메모리 시스템.
  3. 제1 항에 있어서, 상기 적어도 하나의 메모리 모듈 각각은
    상기 메모리 컨트롤러에 커플되도록 형성되는 데이터 및/또는 컨트롤 버퍼를 구비하는 것을 특징으로 하는 메모리 시스템.
  4. 제1 항에 있어서,
    상기 적어도 하나의 메모리 모듈은 복수개의 메모리 모듈들을 구비하며,
    상기 메모리 디바이스 세트들 각각은 다수개의 상기 모듈들로부터의 디바이스들을 구비하는 것을 특징으로 하는 메모리 시스템.
  5. 제1 항에 있어서, 각 메모리 디바이스는
    관련되는 상기 컨트롤 버스에 커플되며, 상기 컨트롤 버스를 통하여 수신되는 패킷들로부터 어드레스 및/또는 커맨드 데이터를 디코딩하도록 형성되는 패킷 디코더를 구비하는 것을 특징으로 하는 메모리 시스템.
  6. 제1 항에 있어서, 상기 메모리 시스템은
    각각의 상기 메모리 디바이스 세트들을 상기 메모리 컨트롤러에 커플되도록 형성되는 각각의 클락 라인들을 더 구비하는 것을 특징으로 하는 메모리 시스템.
  7. 제1 항에 있어서, 상기 데이터와 컨트롤 버스들은
    차동형(differential) 또는 싱글엔드형(single-ended) 버스들을 구비하는 것 을 특징으로 하는 메모리 시스템.
  8. 제1 항에 있어서, 상기 컨트롤 버스들은
    어드레스 및/또는 커맨드 정보를 전송하도록 형성되는 것을 특징으로 하는 메모리 시스템.
  9. 제1 항에 있어서, 각 컨트롤 버스가
    하나 이상의 직렬 버스를 구비하는 것을 특징으로 하는 메모리 시스템.
  10. 제1 항에 있어서, 상기 데이터 버스들이
    양방향(bidirectional) 또는 일방향(unidirectional)인 것을 특징으로 하는 메모리 시스템.
  11. 메모리 시스템에 있어서,
    적어도 하나의 메모리 모듈 상에 세트들로 배열되는 복수개의 메모리 디바이스들로서, 각 세트는 적어도 하나의 메모리 디바이스를 포함하는 상기 복수개의 메 모리 디바이스들; 및
    각각의 상기 메모리 디바이스 세트들을 상기 적어도 하나의 메모리 모듈의 외부의 메모리 컨트롤러에 커플하도록 형성되는 각각의 전용 직렬 데이터 및/또는 컨트롤 버스들을 구비하며,
    상기 전용 데이터 및/또는 컨트롤 버스들은 동일한 네트 토폴러지(net topology)를 가지는 것을 특징으로 하는 메모리 시스템.
  12. 제11 항에 있어서, 동일한 수의 상기 메모리 디바이스들이
    상기 전용 데이터 및/또는 컨트롤 버스들 각각에 커플되는 것을 특징으로 하는 메모리 시스템.
  13. 제11 항에 있어서, 상기 메모리 디바이스 세트들은
    하나 또는 다수의 메모리 디바이스들을 구비하는 것을 특징으로 하는 메모리 시스템.
  14. 메모리 모듈에 있어서,
    세트들로 배열되는 복수개의 메모리 디바이스들로서, 각 세트는 적어도 하나 의 메모리 디바이스를 포함하는 상기 복수개의 메모리 디바이스들; 및
    각각의 상기 메모리 디바이스 세트들을 메모리 컨트롤러에 커플하도록 형성되는 각각의 직렬 데이터 및 컨트롤 버스들의 전용 쌍을 구비하는 것을 특징으로 하는 메모리 모듈.
  15. 제14 항에 있어서, 각각의 세트는
    하나의 메모리 디바이스 또는 다수의 메모리 디바이스들을 포함하는 것을 특징으로 하는 메모리 모듈.
  16. 제14 항에 있어서, 각각의 상기 전용 쌍에서의 상기 데이터 및 컨트롤 버스들은
    동일한 네트 토폴러지(net topology)를 가지는 것을 특징으로 하는 메모리 모듈.
  17. 제14 항에 있어서, 각각의 상기 전용 쌍에서의 상기 데이터 및 컨트롤 버스들은
    동일한 수의 메모리 디바이스들에 연결되는 것을 특징으로 하는 메모리 모 듈.
  18. 메모리 모듈에 있어서,
    세트들로 배열되는 복수개의 메모리 디바이스들로서, 각 세트는 적어도 하나의 메모리 디바이스를 포함하는 상기 복수개의 메모리 디바이스들;
    메모리 컨트롤 버퍼;
    각각의 상기 메모리 디바이스 세트들을 상기 메모리 컨트롤 버퍼에 커플하는 각각의 전용 직렬 데이터 버스들; 및
    각각의 상기 메모리 디바이스 세트들을 외부의 메모리 컨트롤러에 커플하도록 형성되는 각각의 전용 직렬 컨트롤 버스들 구비하는 것을 특징으로 하는 메모리 모듈.
  19. 제18 항에 있어서, 각각의 세트는
    하나의 메모리 디바이스 또는 다수의 메모리 디바이스들을 포함하는 것을 특징으로 하는 메모리 모듈.
  20. 제18 항에 있어서, 각각의 상기 전용 쌍에서의 상기 데이터 및 컨트롤 버스 들은
    동일한 네트 토폴러지(net topology)를 가지는 것을 특징으로 하는 메모리 모듈.
  21. 제18 항에 있어서, 각각의 상기 전용 쌍에서의 상기 데이터 및 컨트롤 버스들은
    동일한 수의 메모리 디바이스들에 연결되는 것을 특징으로 하는 메모리 모듈.
  22. 각각의 전용 직렬 데이터 및/또는 직렬 컨트롤 버스들에 의해 하나 혹은 그 이상의 메모리 모듈들 상의 각각의 메모리 디바이스들의 세트들에 커플되도록 형성되는 버스 인터페이스를 구비하는 것을 특징으로 하는 메모리 컨트롤러.
  23. 제22 항에 있어서, 각각의 세트는
    하나의 메모리 디바이스 또는 다수의 메모리 디바이스들을 포함하는 것을 특징으로 하는 메모리 컨트롤러.
  24. 제22 항에 있어서, 각각의 상기 전용 쌍에서의 상기 데이터 및 컨트롤 버스들은
    동일한 네트 토폴러지(net topology)를 가지는 것을 특징으로 하는 메모리 컨틀로러.
  25. 제22 항에 있어서, 상기 전용 데이터 및/또는 컨트롤 버스들 각각은
    상기 메모리 컨트롤러를 동일한 수의 메모리 디바이스들에 연결하는 것을 특징으로 하는 메모리 컨트롤러.
  26. 제22 항에 있어서, 상기 데이터 버스들이
    양방향(bidirectional) 또는 일방향(unidirectional)인 것을 특징으로 하는 메모리 컨트롤러.
  27. 적어도 하나의 메모리 모듈 상의 복수개의 메모리 디바이스들을 구동하는 방법에 있어서,
    각각의 전용 직렬 데이터 버스들 및/또는 직렬 컨트롤 버스들을 사용하여, 각각의 메모리 디바이스들의 세트들을 상기 적어도 하나의 메모리 모듈의 외부의 메모리 컨트롤러에 직접적으로 커플하는 단계; 및
    상기 각각의 전용 직렬 데이터 및/또는 직렬 컨트롤 버스들 통하여 데이터 및/또는 컨트롤 신호들을 제공하는 단계를 구비하는 것을 특징으로 하는 복수개의 메모리 디바이스들을 구동하는 방법.
  28. 제27 항에 있어서,
    상기 각각의 전용 직렬 데이터 버스들 및/또는 직렬 컨트롤 버스들을 사용하여, 각각의 메모리 디바이스들의 세트들을 상기 적어도 하나의 메모리 모듈의 외부의 메모리 컨트롤러에 직접적으로 커플하는 단계는
    각각의 직렬 데이터 및 컨트롤 버스들의 전용 쌍을 이용하여, 각각의 상기 메모리 디바이스 세트들을 메모리 컨트롤러에 커플하는 단계를 구비하는 것을 구비하는 것을 특징으로 하는 복수개의 메모리 디바이스들을 구동하는 방법.
  29. 제27 항에 있어서, 상기 적어도 하나의 메모리 모듈 상의 각각의 메모리 컨트롤 버퍼들을 통하여, 상기의 메모리 디바이스들과 상기 메모리 컨트롤러 사이의 신호들을 버퍼하는 단계를 더 구비하는 것을 특징으로 하는 복수개의 메모리 디바이스들을 구동하는 방법.
KR20060013956A 2005-05-10 2006-02-14 전용 데이터 및 컨트롤 버스들을 사용하는 메모리 시스템, 모듈들, 컨트롤러들 및 방법들 KR100763352B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20050039008 2005-05-10
KR1020050039008 2005-05-10
US11/267,669 US7577760B2 (en) 2005-05-10 2005-11-04 Memory systems, modules, controllers and methods using dedicated data and control busses
US11/267,669 2005-11-04

Publications (2)

Publication Number Publication Date
KR20060116684A true KR20060116684A (ko) 2006-11-15
KR100763352B1 KR100763352B1 (ko) 2007-10-04

Family

ID=37295609

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20060013956A KR100763352B1 (ko) 2005-05-10 2006-02-14 전용 데이터 및 컨트롤 버스들을 사용하는 메모리 시스템, 모듈들, 컨트롤러들 및 방법들

Country Status (3)

Country Link
JP (1) JP2006318456A (ko)
KR (1) KR100763352B1 (ko)
DE (1) DE102006022026A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008097997A1 (en) 2007-02-06 2008-08-14 Rambus Inc. Semiconductor module with micro-buffers
WO2011132310A1 (ja) * 2010-04-23 2011-10-27 株式会社日立製作所 情報処理装置、及び、半導体記憶装置
US10437483B2 (en) 2015-12-17 2019-10-08 Samsung Electronics Co., Ltd. Computing system with communication mechanism and method of operation thereof
CN112286842B (zh) * 2019-07-22 2023-07-04 苏州库瀚信息科技有限公司 用于存储器控制器与存储器设备互连的总线

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4569912B2 (ja) * 2000-03-10 2010-10-27 エルピーダメモリ株式会社 メモリシステム
TW528948B (en) * 2000-09-14 2003-04-21 Intel Corp Memory module having buffer for isolating stacked memory devices
US6725314B1 (en) * 2001-03-30 2004-04-20 Sun Microsystems, Inc. Multi-bank memory subsystem employing an arrangement of multiple memory modules

Also Published As

Publication number Publication date
KR100763352B1 (ko) 2007-10-04
JP2006318456A (ja) 2006-11-24
DE102006022026A1 (de) 2006-11-16

Similar Documents

Publication Publication Date Title
US7577760B2 (en) Memory systems, modules, controllers and methods using dedicated data and control busses
US11727966B2 (en) Memory controllers, systems, and methods supporting multiple request modes
US20190191561A1 (en) Load reduced memory module
US7024518B2 (en) Dual-port buffer-to-memory interface
US7574555B2 (en) Memory system having daisy chained memory controllers
US7730254B2 (en) Memory buffer for an FB-DIMM
US6742098B1 (en) Dual-port buffer-to-memory interface
US7966446B2 (en) Memory system and method having point-to-point link
US7965530B2 (en) Memory modules and memory systems having the same
US7463535B2 (en) Memory modules and memory systems having the same
US11947474B2 (en) Multi-mode memory module and memory component
US10109324B2 (en) Extended capacity memory module with dynamic data buffers
US7778042B2 (en) Memory system having point-to-point (PTP) and point-to-two-point (PTTP) links between devices
US11809712B2 (en) Memory system with threaded transaction support
US7711887B1 (en) Employing a native fully buffered dual in-line memory module protocol to write parallel protocol memory module channels
US7761668B2 (en) Processor architecture having multi-ported memory
KR100763352B1 (ko) 전용 데이터 및 컨트롤 버스들을 사용하는 메모리 시스템, 모듈들, 컨트롤러들 및 방법들
JP5165233B2 (ja) メモリシステム
US20100238695A1 (en) Memory module including memory chips
KR100599444B1 (ko) 글로벌 데이터 버스 연결회로를 구비하는 멀티-포트메모리 소자
US7404055B2 (en) Memory transfer with early access to critical portion

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120831

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130902

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140901

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150831

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee