KR20170059239A - 이종 메모리들을 포함하는 메모리 장치 및 메모리 시스템 - Google Patents

이종 메모리들을 포함하는 메모리 장치 및 메모리 시스템 Download PDF

Info

Publication number
KR20170059239A
KR20170059239A KR1020150163338A KR20150163338A KR20170059239A KR 20170059239 A KR20170059239 A KR 20170059239A KR 1020150163338 A KR1020150163338 A KR 1020150163338A KR 20150163338 A KR20150163338 A KR 20150163338A KR 20170059239 A KR20170059239 A KR 20170059239A
Authority
KR
South Korea
Prior art keywords
memory
latency
signal
command
memory device
Prior art date
Application number
KR1020150163338A
Other languages
English (en)
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
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020150163338A priority Critical patent/KR20170059239A/ko
Priority to US15/295,566 priority patent/US20170147230A1/en
Publication of KR20170059239A publication Critical patent/KR20170059239A/ko

Links

Images

Classifications

    • 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/1694Configuration of memory controller to different memory types
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1041Resource optimization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/205Hybrid memory, e.g. using both volatile and non-volatile memory
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Dram (AREA)

Abstract

본 개시에 따른 메모리 장치는, 제1 하드웨어 속성을 갖는 제1 메모리, 제1 하드웨어 속성과 다른 제2 하드웨어 속성을 갖는 제2 메모리, 그리고, 제1 또는 제2 하드웨어 속성을 나타내는 신호를 커맨드와 함께 수신하고, 수신된 신호에 따라 제1 메모리 또는 제2 메모리를 선택하며, 선택된 제1 또는 제2 메모리에 대해 커맨드에 따른 동작이 수행되도록 선택된 제1 또는 제2 메모리를 제어하는 제어부를 포함한다.

Description

이종 메모리들을 포함하는 메모리 장치 및 메모리 시스템{Memory device and memory system having heterogeneous memories}
본 개시의 기술적 사상은 메모리 장치에 관한 것으로, 더욱 상세하게는, 이종 메모리들을 포함하는 메모리 장치 및 메모리 시스템에 관한 것이다.
컴퓨터 시스템은 다양한 형태의 메모리 시스템을 포함할 수 있다. 메모리 시스템은 데이터를 저장하기 위한 메모리 장치와 메모리 장치의 동작을 제어하는 메모리 컨트롤러를 포함한다. 메모리는 DRAM, SRAM 등과 같은 휘발성(volatile) 메모리와 EEPROM, FRAM, PRAM, MRAM, Flash Memory 등과 같은 비휘발성(nonvolatile) 메모리로 분류된다. 휘발성 메모리에 저장된 데이터는 전원 공급이 중단되면 소멸되는 반면, 비휘발성 메모리에 저장된 데이터는 전원 공급이 중단되더라도 소멸되지 않는다. 최근에는 이러한 이종의 메모리들이 탑재된 메모리 모듈이 개발되고 있는데, 이때, 이종의 메모리들은 데이터 버스를 공유하여 메모리 컨트롤러에 연결될 수 있다.
본 개시의 기술적 사상이 해결하려는 과제는 메모리 장치에 포함된 이종의 메모리들 각각의 하드웨어 속성에 적응적으로 이종의 메모리들을 제어함으로써 메모리 장치와 메모리 컨트롤러 사이의 데이터 버스의 효율성을 향상시킬 수 있는 메모리 장치 및 메모리 시스템을 제공하는 데에 있다.
본 개시의 기술적 사상에 따른 메모리 장치는, 제1 하드웨어 속성을 갖는 제1 메모리, 상기 제1 하드웨어 속성과 다른 제2 하드웨어 속성을 갖는 제2 메모리, 및 상기 제1 또는 제2 하드웨어 속성을 나타내는 신호를 커맨드와 함께 수신하고, 수신된 상기 신호에 따라 상기 제1 메모리 또는 상기 제2 메모리를 선택하며, 선택된 상기 제1 또는 제2 메모리에 대해 상기 커맨드에 따른 동작이 수행되도록 선택된 상기 제1 또는 제2 메모리를 제어하는 제어부를 포함한다.
일부 실시예들에 있어서, 상기 제1 및 제2 하드웨어 속성들은, 레이턴시, 메모리 대역폭 또는 메모리 전력 소모를 포함할 수 있다. 일부 실시예들에 있어서, 상기 제1 하드웨어 속성은 제1 레이턴시에 대응하고, 상기 제2 하드웨어 속성은 상기 제1 레이턴시와 다른 제2 레이턴시에 대응하며, 상기 신호는 상기 제1 레이턴시 또는 상기 제2 레이턴시를 나타내는 레이턴시 신호일 수 있다. 일부 실시예들에 있어서, 상기 제1 레이턴시는 제1 독출 레이턴시이고, 상기 제2 레이턴시는 제2 독출 레이턴시일 수 있다.
일부 실시예들에 있어서, 상기 메모리 장치는 상기 레이턴시 신호 및 상기 커맨드를 수신하기 위한 복수의 핀들을 포함하는 커넥터를 더 포함하고, 상기 레이턴시 신호는 상기 복수의 핀들 중 적어도 하나의 핀을 통해 수신될 수 있다. 일부 실시예들에 있어서, 상기 복수의 핀들은 어드레스 입력이 수신 가능한 복수의 어드레스 핀들을 포함하고, 상기 레이턴시 신호는 상기 복수의 어드레스 핀들 중 적어도 하나의 어드레스 핀을 통해 수신될 수 있다. 일부 실시예들에 있어서, 상기 레이턴시 신호는, 상기 복수의 핀들 중 n개의 핀들을 통해 수신되는 n 비트 신호일 수 있고, n은 자연수이다.
일부 실시예들에 있어서, 상기 제1 메모리는 휘발성 메모리이고, 상기 제2 메모리는 비휘발성 메모리일 수 있다. 일부 실시예들에 있어서, 상기 제1 및 제2 메모리들은 휘발성 메모리들일 수 있다. 일부 실시예들에 있어서, 상기 제1 및 제2 메모리들은 비휘발성 메모리들일 수 있다.
또한, 본 개시의 다른 기술적 사상에 따른 메모리 시스템은, 제1 하드웨어 속성을 갖는 제1 메모리, 및 상기 제1 하드웨어 속성과 다른 제2 하드웨어 속성을 갖는 제2 메모리를 포함하는 메모리 장치, 및 상기 제1 또는 제2 하드웨어 속성을 나타내는 신호 및 커맨드를 상기 메모리 장치에 함께 전송함으로써, 상기 제1 및 제2 메모리들을 선택적으로 제어하는 메모리 컨트롤러를 포함한다.
일부 실시예들에 있어서, 상기 제1 하드웨어 속성은 제1 레이턴시에 대응하고, 상기 제2 하드웨어 속성은 상기 제1 레이턴시와 다른 제2 레이턴시에 대응하며, 상기 신호는 상기 제1 레이턴시 또는 상기 제2 레이턴시를 나타내는 레이턴시 신호일 수 있다. 일부 실시예들에 있어서, 상기 메모리 컨트롤러는 상기 레이턴시 신호를 어드레스 입력 또는 커맨드 입력의 일부로써 상기 메모리 장치에 전송할 수 있다.
일부 실시예들에 있어서, 상기 메모리 장치는 상기 레이턴시 신호 및 상기 커맨드를 수신하기 위한 복수의 핀들을 포함하는 커넥터를 더 포함하고, 상기 레이턴시 신호는 상기 복수의 핀들 중 적어도 하나의 핀을 통해 전달될 수 있다. 일부 실시예들에 있어서, 상기 복수의 핀들은 어드레스 입력을 수신 가능한 복수의 어드레스 핀들을 포함하고, 상기 레이턴시 신호는 상기 복수의 어드레스 핀들 중 적어도 하나의 어드레스 핀을 통해 수신될 수 있다.
본 개시의 기술적 사상에 따른 메모리 장치는 이종의 메모리들 각각에 대한 하드웨어 속성에 적응적으로 메모리 장치를 제어함으로써 메모리 장치와 메모리 컨트롤러 사이의 데이터 버스의 효율성을 향상시킬 수 있고, 메모리 장치에 대한 동작 속도를 향상시킬 수 있다. 구체적으로, 액세스 하고자 하는 메모리의 레이턴시를 나타내는 레이턴시 신호를 온-더-플라이로 결정하고, 결정된 레이턴시 신호를 커맨드/어드레스와 함께 메모리 장치에 제공함으로써, 데이터 버스에서 데이터 충돌을 방지할 수 있고, 커맨드 버스에서 커맨드 충돌을 방지할 수 있다.
도 1은 본 개시의 일 실시예에 따른 메모리 시스템을 나타내는 블록도이다.
도 2는 본 개시의 일 실시예에 따른 메모리 시스템의 동작을 나타내는 개념도이다.
도 3은 본 개시의 일 실시예에 따른 메모리 컨트롤러를 나타내는 블록도이다.
도 4는 본 개시의 일 실시예에 따른 메모리 장치를 나타내는 블록도이다.
도 5는 본 개시의 일 실시예에 따른, 도 3의 레이턴시 테이블의 일 예를 나타낸다.
도 6은 본 개시의 일 실시예에 따른, 도 1의 메모리 시스템의 독출 동작의 일 예를 나타내는 타이밍도이다.
도 7 및 도 8은 본 개시의 일 실시예에 따른 메모리 시스템의 독출 동작의 예들을 나타내는 타이밍도들이다.
도 9는 본 개시의 일 실시예에 따른 메모리 장치의 동작 방법을 나타내는 흐름도이다.
도 10은 본 개시의 일 실시예에 따른 메모리 장치(1100)를 상세하게 나타내는 블록도이다.
도 11a 및 도 11b는 본 개시의 실시예들에 따른 메모리 시스템을 나타내는 블록도들이다.
도 12는 본 개시의 일 실시예에 따른 컴퓨터 시스템을 나타내는 블록도이다.
이하, 첨부한 도면을 참조하여 본 발명의 실시예에 대해 상세히 설명한다. 본 발명의 실시예는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공되는 것이다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다. 첨부된 도면에 있어서, 구조물들의 치수는 본 발명의 명확성을 기하기 위하여 실제보다 확대하거나 축소하여 도시한 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 벗어나지 않으면서, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 갖는다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 개시의 일 실시예에 따른 메모리 시스템(10)을 나타내는 블록도이다.
도 1을 참조하면, 메모리 시스템(10)은 메모리 장치(100) 및 메모리 컨트롤러(200)를 포함할 수 있다. 일부 실시예들에서, 메모리 장치(100)는 예를 들어, NVDIMM(Nonvolatile Dual In-line Memory Module), LR-DIMM(Load Reduced DIMM), RDIMM(Registered DIMM) 등과 같은 메모리 모듈로 구현되고, 메모리 컨트롤러(200)는 호스트의 일부로 구현될 수 있다. 일부 실시예들에서, 메모리 장치(100)와 메모리 컨트롤러(200)는 하나의 메모리 모듈 내에 배치될 수 있다.
메모리 장치(100)와 메모리 컨트롤러(200)는 데이터의 독출 또는 기입 동작을 지시하기 위한 커맨드/어드레스(C/A) 및 클럭 신호(CLK)을 전송하기 위한 제어 버스, 및 데이터(DATA)를 주고받기 위한 데이터 버스(즉, DQ 버스)를 통하여 서로 전기적으로 연결될 수 있다. 메모리 장치(100)는 적어도 제1 및 제2 메모리들(110, 120)을 포함할 수 있고, 제1 및 제2 메모리들(110, 120)은 데이터 버스를 공유할 수 있다. 이에 따라, 제1 및 제2 메모리들(110, 120)은 데이터 버스를 통해 메모리 컨트롤러(200)로부터 기입 데이터를 수신하거나 메모리 컨트롤러(200)에 독출 데이터를 전송할 수 있다. 메모리 장치(100)에 포함되는 메모리들의 개수는 실시예에 따라 다양하게 변경될 수 있다.
본 실시예에서, 제1 및 제2 메모리들(110, 120)은 서로 다른 하드웨어 속성을 갖는 이종의 메모리들일 수 있다. 제1 및 제2 메모리들(110, 120)은 각각 메모리 칩으로 구현될 수 있다. 예를 들어, 하드웨어 속성은 레이턴시(latency), 메모리 대역폭(bandwidth), 또는 메모리 전력 소모 등을 포함할 수 있다. 여기서, 레이턴시는 독출 레이턴시, 기입 레이턴시, CAS(Column Address Strobe) 레이턴시, RAS(Row Address Strobe) 레이턴시 등일 수 있다.
일 실시예에서, 제1 메모리(110)는 제1 독출 레이턴시를 갖고, 제2 메모리(120)는 제2 독출 레이턴시를 가질 수 있다. 예를 들어, 제1 독출 레이턴시는 제2 독출 레이턴시보다 작을 수 있고, 이에 따라, 제1 메모리(110)는 제2 메모리(120)보다 상대적으로 빠른 응답 시간으로 동작할 수 있다. 따라서, 제1 및 제2 메모리들(110, 120)에서 각각 독출된 데이터가 데이터 버스 상에서 충돌하지 않도록, 서로 다른 제1 및 제2 독출 레이턴시들을 기초로 제1 및 제2 메모리들(110, 120)에 대한 개별적인 제어가 필요하다.
일 실시예에서, 제1 메모리(110)는 휘발성 메모리이고, 제2 메모리(120)는 비휘발성 메모리일 수 있다. 일 실시예에서, 제1 및 제2 메모리들(110, 120)은 휘발성 메모리들일 수 있다. 일 실시예에서, 제1 및 제2 메모리들(110, 120)은 비휘발성 메모리들일 수 있다. 예를 들어, 휘발성 메모리는 DRAM(Dynamic Random Access Memory), 모바일 DRAM, SDRAM(Synchronous DRAM), DDR(Double Data Rate) DRAM, LPDDR(Low Power Double Data Rate) SDRAM, GDDR(Graphics Double Data Rate) SDRAM, RDRAM(Rambus DRAM) 등을 포함할 수 있다. 예를 들어, 비휘발성 메모리는 낸드(NAND) 플래시 메모리, 노어(NOR) 플래시 메모리, PRAM(Phase-Change Random Access Memory), MRAM(Magnetic Random Access memory), ReRAM(Resistive Random Access Memory), FRAM(Ferroelectric Random Access Memory) 등을 포함할 수 있다.
일 실시예에서, 메모리 장치(100)는 NVDIMM일 수 있고, 제1 메모리(110)는 휘발성 메모리이고, 제2 메모리(120)는 비휘발성 메모리일 수 있다. 이때, 메모리 장치(100)는 두 가지 동작 모드를 가질 수 있고, 비상용 파워(예를 들어, 커패시터)를 더 포함할 수 있다. 제1 동작 모드에서, 메모리 장치(100)는 메인 메모리로 동작할 수 있고, 비휘발성인 제2 메모리(120)는 백업 메모리로 이용될 수 있다. 구체적으로, 메모리 장치(100)는 호스트의 파워가 불안정한 경우 비상용 파워를 이용하여 휘발성인 제1 메모리(110)의 데이터를 비휘발성인 제2 메모리(120)로 백업하는 동작을 수행할 수 있고, 이에 따라, 호스트 파워의 페일에 따른 데이터의 유실을 방지할 수 있다. 제2 동작 모드에서, 메모리 장치(100)는 스토리지로 동작할 수 있고, 휘발성인 제1 메모리(110)는 버퍼 메모리로 이용될 수 있다. 이때, 제2 메모리(120)의 저장 용량이 제1 메모리(110)의 저장 용량보다 클 수 있다.
메모리 컨트롤러(200)는 호스트로부터의 읽기/쓰기 요청에 응답하여 메모리 장치(100)에 저장된 데이터를 독출하도록 또는 메모리 장치(100)에 데이터를 기입하도록 메모리 장치(100)를 제어할 수 있다. 구체적으로, 메모리 컨트롤러(200)는 메모리 장치(100)에 제어 버스를 통해 커맨드/어드레스(C/A) 및 클럭 신호(CLK)를 제공함으로써, 메모리 장치(100)에 대한 기입, 독출 및 소거 동작을 제어할 수 있다. 또한, 데이터 버스를 통해 기입할 데이터(DATA)와 독출된 데이터(DATA)가 메모리 컨트롤러(200)와 메모리 장치(100) 사이에서 송수신될 수 있다.
본 실시예에서, 메모리 컨트롤러(200)는 제1 및 제2 메모리들(110, 120) 중 액세스 하고자 하는 메모리의 레이턴시 값을 나타내는 레이턴시 신호(LS)를 커맨드/어드레스(C/A)와 함께 메모리 장치(100)에 전송할 수 있다. 구체적으로, 메모리 컨트롤러(200)는 액세스 하고자 하는 메모리에 따라 레이턴시 신호(LS)를 온-더-플라이(on-the-fly)로 결정하고, 결정된 레이턴시 신호(LS)를 커맨드/어드레스(C/A)와 함께 메모리 장치(100)에 전송할 수 있다. 또한, 메모리 컨트롤러(200)는 액세스 하고자 하는 메모리의 레이턴시 값을 기초로, 데이터 버스 상에서 제1 및 제2 메모리들(110, 120) 각각에서 독출된 데이터들 사이의 충돌이 발생하지 않도록 제1 및 제2 메모리들(110, 120) 각각에 대한 커맨드/어드레스(C/A)의 전송 시점들을 조절할 수 있다. 이와 같이, 본 실시예에 따르면, 제1 및 제2 메모리들(110, 120)의 서로 다른 레이턴시 값들에 적응적으로 메모리 장치(100)에 대한 동작을 제어함으로써 데이터 버스의 효율성을 향상시킬 수 있다.
한편, 본 발명은 레이턴시 신호(LS)에 한정되지 않으며, 메모리 컨트롤러(200)는 제1 및 제2 메모리들(110, 120) 중 액세스 하고자 하는 메모리의 하드웨어 속성 값을 나타내는 임의의 신호를 커맨드/어드레스(C/A)와 함께 메모리 장치(100)에 제공할 수도 있다. 예를 들어, 메모리 컨트롤러(200)는 제1 및 제2 메모리들(110, 120) 중 액세스 하고자 하는 메모리의 대역폭을 나타내는 대역폭 신호를 커맨드/어드레스(C/A)와 함께 메모리 장치(100)에 전송할 수 있다. 구체적으로, 메모리 컨트롤러(200)는 액세스 하고자 하는 메모리에 따라 대역폭 신호를 온-더-플라이로 결정하고, 결정된 대역폭 신호를 커맨드/어드레스(C/A)와 함께 메모리 장치(100)에 전송할 수 있다. 또한, 메모리 컨트롤러(200)는 액세스 하고자 하는 메모리의 대역폭을 기초로, 데이터 버스 상에서 제1 및 제2 메모리들(110, 120) 각각에 기입할 데이터들 또는 제1 및 제2 메모리들(110, 120) 각각에서 독출된 데이터들 사이의 충돌이 발생하지 않도록 제1 및 제2 메모리들(110, 120) 각각에 대한 커맨드/어드레스(C/A)의 전송 시점들을 조절할 수 있다. 이와 같이, 본 실시예에 따르면, 제1 및 제2 메모리들(110, 120)의 서로 다른 대역폭들에 적응적으로 메모리 장치(100)에 대한 동작을 제어함으로써 데이터 버스의 효율성을 향상시킬 수 있다.
메모리 장치(100)는 제어부(130)를 더 포함할 수 있으며, 제어부(130)는 메모리 컨트롤러(200)로부터 커맨드/어드레스(C/A)와 함께 레이턴시 신호(LS)를 수신할 수 있다. 구체적으로, 제어부(130)는 수신된 레이턴시 신호(LS)에 응답하여 제1 및 제2 메모리들(110, 120) 중 하나를 선택할 수 있고, 선택된 메모리에 대해 커맨드/어드레스(C/A)에 따른 동작이 수행되도록 선택된 메모리를 제어할 수 있다. 일부 실시예들에서, 제어부(130)는 별도의 칩, 예를 들어, 모듈 제어칩으로 구현될 수 있다. 일부 실시예들에서, 제어부(130)는 인터페이싱 회로의 일부로서 구현될 수도 있다.
본 실시예에 따르면, 제어부(130)는 레이턴시 신호(LS)를 기초로 선택된 메모리에 커맨드/어드레스(C/A)를 제공함으로써, 선택된 메모리에 대한 동작을 제어할 수 있다. 상술한 바와 같이, 메모리 컨트롤러(200)는 제1 및 제2 레이턴시 값들을 기초로 커맨드/어드레스(C/A)의 전송 시점들을 결정할 수 있다. 따라서, 제어부(130)는 제1 및 제2 메모리들(110, 120)에서 독출된 데이터들이 데이터 버스 상에서 충돌하지 않도록 제1 및 제2 메모리들(110, 120)에서 독출된 데이터들이 데이터 버스에 전송되는 시점을 별도로 조절하지 않아도 된다.
도 2는 본 개시의 일 실시예에 따른 메모리 시스템(10)의 동작을 나타내는 개념도이다.
도 1 및 도 2를 참조하면, 메모리 컨트롤러(200)는 메모리 장치(100)에 액티브 커맨드를 전송할 수 있고, 메모리 장치(100)는 액티브 커맨드에 응답하여 특정 뱅크의 로우를 활성화시키는 액티브 동작을 수행할 수 있다. 이어서, 메모리 컨트롤러(200)는 메모리 장치(100)에 커맨드(CMD)(예를 들어, 독출 커맨드) 및 레이턴시 값을 나타내는 레이턴시 신호(LS)를 함께 전송할 수 있다.
본 실시예에서, 레이턴시 신호(LS)는 액세스 하고자 하는 메모리에 따라 온-더-플라이로 결정될 수 있다. 일 실시예에서, 레이턴시 신호(LS)는 n 비트의 신호로 전송될 수 있고, 메모리 장치(100)의 n개의 핀들을 통해 메모리 장치(100)에 전송될 수 있다(여기서, n은 자연수). 메모리 컨트롤러(200)에서 커맨드(CMD)를 발행한(issue) 이후 레이턴시가 경과하면, 메모리 컨트롤러(200)는 데이터 버스를 통해 메모리 장치(100)로부터 독출된 데이터를 수신할 수 있다.
도 3은 본 개시의 일 실시예에 따른 메모리 컨트롤러(200)를 나타내는 블록도이다.
도 3을 참조하면, 메모리 컨트롤러(200)는 호스트로부터 기입 또는 독출 요청(REQ)을 수신할 수 있고, 메모리 장치에 커맨드/어드레스(C/A)와 함께 레이턴시 신호(LS)를 전송할 수 있다. 본 실시예에 따른 메모리 컨트롤러(200)는 도 1의 메모리 컨트롤러(200)의 일 구현예일 수 있고, 도 1 및 도 2를 참조하여 상술된 내용은 본 실시예에 적용될 수 있다.
일 실시예에서, 커맨드/어드레스(C/A)는 독출 커맨드 및 독출하고자 하는 메모리의 어드레스를 포함할 수 있고, 레이턴시 신호(LS)는 메모리 장치에 포함된 복수의 메모리들 중 독출하고자 하는 메모리의 레이턴시 값을 나타낼 수 있다. 일 실시예에서, 커맨드/어드레스(C/A)는 기입 커맨드 및 기입하고자 하는 메모리의 어드레스를 포함할 수 있고, 레이턴시 신호(LS)는 메모리 장치에 포함된 복수의 메모리들 중 기입하고자 하는 메모리의 레이턴시 값을 나타낼 수 있다. 본 실시예에서, 레이턴시 신호(LS)는 커맨드/어드레스(C/A)의 일부로 메모리 장치에 전송될 수 있다.
본 실시예에서, 메모리 컨트롤러(200)는 커맨드/어드레스 생성부(210), 커맨드/어드레스 버퍼(220) 및 레이턴시 신호 생성부(230)를 포함할 수 있다. 커맨드/어드레스 생성부(210)는 호스트로부터 수신한 요청(REQ)에 따른 커맨드/어드레스(C/A)를 생성할 수 있다. 커맨드/어드레스 버퍼(220)는 커맨드/어드레스 생성부(210)에서 생성된 커맨드/어드레스(C/A)를 버퍼링할 수 있다. 예를 들어, 커맨드 버퍼(210)는 FIFO(First In First Out)로 구현될 수 있다. 레이턴시 신호 생성부(230)는 레이턴시 테이블(235)을 참조하여, 액세스 하고자 하는 메모리의 레이턴시 값을 나타내는 레이턴시 신호(LS)를 온-더-플라이로 생성할 수 있다.
또한, 본 실시예에서, 커맨드/어드레스(C/A)의 전송 시점은 레이턴시 테이블(235)을 참조하여 결정될 수 있다. 구체적으로, 커맨드/어드레스(C/A)의 전송 시점은 레이턴시 값에 따라 온-더-플라이로 결정될 수 있다. 도 1의 실시예에서, 메모리 컨트롤러(200)가 제1 및 제2 메모리들(110, 120)에 대해 연속적으로 커맨드/어드레스(C/A)를 전송하는 경우, 제1 및 제2 메모리들(110, 120) 각각에 대응하는 레이턴시 값을 참조하여 제1 메모리(110)에 커맨드/어드레스(C/A)를 전송하는 시점(예를 들어, 도 6의 T1) 및 제2 메모리(120)에 커맨드/어드레스(C/A)를 전송하는 시점(예를 들어, 도 6의 T2)을 조절할 수 있다.
도 4는 본 개시의 일 실시예에 따른 메모리 장치(100)를 나타내는 블록도이다.
도 4를 참조하면, 메모리 장치(100)는 제1 및 제2 메모리들(110, 120), 제어부(130) 및 커넥터(140)를 포함할 수 있다. 본 실시예에 따른 메모리 장치(100)는 도 1의 메모리 장치(100)의 일 구현예일 수 있고, 도 1 및 도 2를 참조하여 상술된 내용은 본 실시예에 적용될 수 있으며, 중복된 설명은 생략하기로 한다.
커넥터(140)는 복수의 핀들(141 내지 145)을 포함할 수 있고, 복수의 핀들(141 내지 145)은 커맨드 핀들, 어드레스 핀들, 데이터 입출력 핀들 등을 포함할 수 있다. 복수의 핀들(141 내지 145)의 개수는 메모리 장치(100)의 종류에 따라 다를 수 있다. 여기서, 커맨드 핀들은 커맨드 입력을 수신할 수 있고, 커맨드 입력은 칩 선택 신호(/CS), 기입 인에이블 신호(/WE), 로우 어드레스 스트로브 신호(/RAS), 칼럼 어드레스 스트로브 신호(/CAS) 등을 포함할 수 있다. 여기서, 어드레스 핀들은 어드레스 입력을 수신할 수 있고, 어드레스 입력은 로우 어드레스(RA) 및 칼럼 어드레스(CA)를 포함할 수 있다.
본 실시예에서, 레이턴시 신호(LS)는 복수의 핀들(141 내지 145) 중 적어도 하나, 예를 들어, 핀(143)을 통해 메모리 장치(100)에 수신될 수 있다. 일부 실시예들에서, 핀(143)은 커맨드 핀들 중 하나일 수 있다. 일부 실시예들에서, 핀(143)은 어드레스 핀들 중 하나일 수 있다. 일부 실시예들에서, 레이턴시 신호(LS)은 n 비트의 신호일 수 있고, n 개의 핀들을 통해 메모리 장치(100)에 수신될 수 있다.
제어부(130)는 레이턴시 신호(LS) 및 커맨드/어드레스(C/A)를 수신하고, 레이턴시 신호(LS)에 따라 제1 및 제2 메모리들(110, 120) 중 하나를 선택할 수 있다. 또한, 제어부(130)는 선택된 메모리에 대해 커맨드/어드레스(C/A)에 따른 동작을 수행하도록 선택된 메모리를 제어할 수 있다. 예를 들어, 레이턴시 신호(LS)가 제1 메모리(110)에 대응하는 제1 레이턴시 값을 나타내는 경우, 제어부(130)는 제1 메모리(110)에 커맨드(CMD1) 및 어드레스(ADDR1)를 전송할 수 있고, 제1 메모리(110)와 제1 데이터(DATA1)를 송수신할 수 있다. 한편, 레이턴시 신호(LS)가 제2 메모리(120)에 대응하는 제2 레이턴시 값을 나타내는 경우, 제어부(130)는 제2 메모리(120)에 커맨드(CMD2) 및 어드레스(ADDR2)를 전송할 수 있고, 제2 메모리(120)와 제2 데이터(DATA2)를 송수신할 수 있다.
도 5는 본 개시의 일 실시예에 따른, 도 3의 레이턴시 테이블(235)의 일 예를 나타낸다.
도 5를 참조하면, 레이턴시 테이블(235)은 서로 다른 복수의 레이턴시 값들을 저장할 수 있고, 레이턴시 값들은 n비트의 레이턴시 신호로 나타낼 수 있다. 레이턴시 테이블(235)은 업데이트 가능하도록 구현될 수 있고, 비휘발성 메모리에 저장될 수 있다. 일 실시예에서, 레이턴시 신호는 5 비트 신호일 수 있고, 이에 따라, 32개(즉, 25개)의 레이턴시 값들을 나타낼 수 있다. 예를 들어, 레이턴시 신호가 "00000"인 경우 레이턴시 값은 13.75 ns일 수 있고, 레이턴시 신호가 "11111"인 경우 레이턴시 값을 100 ns일 수 있다. 그러나, 본 발명은 이에 한정되지 않으며, 레이턴시 신호는 5 비트 미만의 신호 또는 6 비트 이상의 신호일 수도 있다.
레이턴시 신호는 메모리 장치(예를 들어, 도 1의 100)의 어드레스 핀들(예를 들어, A10, A11, A12, A13, A17)을 통해 메모리 장치에 입력될 수 있다. 이하에서는, 레이턴시 신호가 메모리 장치의 어드레스 핀들을 통해 메모리 장치에 입력되는 실시예에 대해 설명하기로 한다. 그러나, 본 발명은 이에 한정되지 않으며, 레이턴시 신호는 메모리 장치의 커맨드 핀들과 같은 다른 핀들을 통해 메모리 장치에 입력될 수도 있다.
도 6은 본 개시의 일 실시예에 따른, 도 1의 메모리 시스템(10)의 독출 동작의 일 예를 나타내는 타이밍도이다.
도 1 및 도 6을 참조하면, 클럭 신호(CLK), 커맨드(CMD), 어드레스(ADDR) 및 데이터(DQ)는 메모리 컨트롤러(200)와 메모리 장치(100) 사이에서 복수의 신호 라인들을 통해 전송될 수 있다. 따라서, 메모리 장치(100)에 포함된 제1 및 제2 메모리들(110, 120)은 데이터(DQ) 버스를 공유할 수 있다. 본 실시예에 따르면, 레이턴시 값은 독출 레이턴시에 대응할 수 있고, 메모리 컨트롤러(200)는 제1 메모리(110)에 대응하는 제1 독출 레이턴시(RL1) 또는 제2 메모리(120)에 대응하는 제2 독출 레이턴시(RL2)을 나타내는 레이턴시 신호(LS)를, 커맨드(CMD) 및 어드레스(ADDR)와 함께 메모리 장치(100)에 제공할 수 있다.
클럭 신호(CLK)는 2개의 클럭 신호 라인들을 통해 각각 전송되는 2개의 차동(differential) 클럭 신호들(CL_t, CL_c)을 포함할 수 있다. 커맨드(CMD) 및 어드레스(ADDR)는 클럭 신호(CLK)에 동기되도록 전송될 수 있으며, 구체적으로, 클럭 신호(CL_t)의 상승 에지와 클럭 신호(CL_c)의 하강 에지의 교차 시점에서 샘플링될 수 있다.
메모리 컨트롤러(200)는 제1 시점(T1)에, 제1 독출 레이턴시(RL1)에 대응하는 레이턴시 신호(LS)를, 제1 독출 커맨드(READ1) 및 제1 어드레스(ADDR1)와 함께 메모리 장치(100)에 전송할 수 있다. 예를 들어, 제1 독출 레이턴시(RL1)는 15 ns일 수 있고, 이때, 레이턴시 신호(LS)는 "00001"일 수 있다. 제1 독출 커맨드(READ1)가 발행된 후 제1 독출 레이턴시(RL1)가 경과하면, 데이터(DQ) 버스를 통해 제1 메모리(110)로부터 제1 독출 데이터(Dout1)가 전송될 수 있다.
메모리 컨트롤러(200)는 제2 시점(T2)에, 제2 독출 레이턴시(RL2)에 대응하는 레이턴시 신호(LS)를, 제2 독출 커맨드(READ2) 및 제2 어드레스(ADDR2)와 함께 메모리 장치(100)에 전송할 수 있다. 예를 들어, 제2 독출 레이턴시(RL2)는 12.5 ns일 수 있고, 이때, 레이턴시 신호(LS)는 "00000"일 수 있다. 제2 독출 커맨드(READ2)가 발행된 후 제2 독출 레이턴시(RL2)가 경과하면, 데이터(DQ) 버스를 통해 제2 메모리(120)로부터 제2 독출 데이터(Dout2)가 전송될 수 있다.
이때, 서로 다른 제1 및 제2 메모리들(110, 120)은 커맨드(CMD) 버스를 공유할 수 있고, 서로 다른 제1 및 제2 메모리들(110, 120)에 대한 제1 및 제2 독출 커맨드들(READ1, READ2)은 커맨드(CMD) 버스를 통해 메모리 장치(100)로 제공될 수 있다. 따라서, 메모리 컨트롤러(200)는 커맨드(CMD) 버스 상에서 제1 및 제2 독출 커맨드들(READ1, READ2) 사이에서 충돌이 발생하지 않도록 제1 및 제2 시점들(T1, T2)을 조절할 수 있다. 본 실시예에서, 메모리 컨트롤러(200)는 레이턴시 값들을 저장하는 레이턴시 테이블을 참조하여 제1 및 제2 시점들(T1, T2)을 조절할 수 있다.
또한, 서로 다른 제1 및 제2 메모리들(110, 120)은 데이터(DQ) 버스를 공유할 수 있고, 서로 다른 제1 및 제2 메모리들(110, 120)에서 각각 출력되는 제1 및 제2 데이터들(Dout1, Dout2)은 데이터(DQ) 버스를 통해 메모리 컨트롤러(200)로 제공된다. 제1 및 제2 독출 레이턴시들(RL1, RL2)이 서로 다른 경우, 메모리 컨트롤러(200)가 서로 다른 제1 및 제2 시점(T1, T2)에 제1 및 제2 독출 커맨드들(READ1, READ2)을 각각 제공하더라도 데이터(DQ) 버스에서 제1 및 제2 데이터들(Dout1, Dout2)이 충돌할 수 있다.
본 실시예에서, 메모리 컨트롤러(200)는 제1 및 제2 데이터(Dout1, Dout2)가 데이터(DQ) 버스에서 충돌하지 않도록 제1 및 제2 시점들(T1, T2)을 조절할 수 있다. 구체적으로, 데이터(DQ) 버스를 통해 제1 및 제2 데이터(Dout1, Dout2)가 실질적으로 연속적으로 전송되도록, 다시 말해, 제1 데이터(Dout1)와 제2 데이터(Dout2) 사이에서 아이들(idle) 구간이 가능한 발생하지 않도록, 메모리 컨트롤러(200)는 제1 및 제2 시점들(T1, T2)을 조절할 수 있다. 이에 따라, 데이터(DQ) 버스의 효율성(efficiency)이 향상될 수 있다.
도 7 및 도 8은 본 개시의 일 실시예에 따른 메모리 시스템의 독출 동작의 예들을 나타내는 타이밍도들이다. 도 7 및 도 8에서, 메모리 컨트롤러(MC)는 예를 들어, 도 1의 메모리 컨트롤러(200)에 대응할 수 있고, 제1 메모리(MEM1)는 예를 들어, 도 1의 제1 메모리(110)에 대응할 수 있으며, 제2 메모리(MEM2)는 예를 들어, 도 1의 제2 메모리(120)에 대응할 수 있다. 도 1 내지 도 6를 참조하여 상술된 내용은 본 실시예에 적용될 수 있다.
도 7을 참조하면, 본 실시예에서, 제1 메모리(MEM1)는 제1 독출 레이턴시(RL1a)를 갖고, 제2 메모리(MEM2)는 제2 독출 레이턴시(RL2a)를 가질 수 있다. 이때, 제2 독출 레이턴시(RL2a)는 제1 독출 레이턴시(RL1a)보다 클 수 있다. 예를 들어, 제1 메모리(MEM1)는 DRAM과 같은 휘발성 메모리일 수 있고, 제2 메모리(MEM2)는 비휘발성 메모리일 수 있으나, 본 발명은 이에 한정되지 않는다.
본 실시예에서, 메모리 컨트롤러(MC)는 메모리 장치에 커맨드와 함께 레이턴시 신호(LS)를 제공할 수 있다. 일 실시예에서, 레이턴시 신호(LS)는 메모리 장치의 어드레스 핀들을 통해 메모리 장치에 입력될 수 있다. 일 실시예에서, 레이턴시 신호(LS)는 제1 메모리(MEM1)에 대응하는 제1 독출 레이턴시(RL1a) 또는 제2 메모리(MEM2)에 대응하는 제2 독출 레이턴시(RL2a)를 나타낼 수 있다.
메모리 컨트롤러(MC)는 제1 독출 레이턴시(RL1a)를 나타내는 레이턴시 신호(LS)를 제1 커맨드(CMD1)와 함께 메모리 장치로 전송할 수 있다. 레이턴시 신호(LS)에 따라 메모리 장치에 포함된 제1 메모리(MEM1)에 제1 커맨드(CMD1)가 제공될 수 있다. 제1 메모리(MEM1)는 내부 신호 라인을 통해 제1 커맨드(CMD1)를 수신할 수 있고, 제1 커맨드(CMD1)에 따라 독출 동작을 수행할 수 있으며, 데이터 입출력 라인(DOUT1)을 통해 제1 독출 데이터(RD1)를 제공할 수 있다.
메모리 컨트롤러(MC)는 제2 독출 레이턴시(RL2a)를 나타내는 레이턴시 신호(LS)를 제2 커맨드(CMD2)와 함께 메모리 장치로 전송할 수 있다. 레이턴시 신호(LS)에 따라 메모리 장치에 포함된 제2 메모리(MEM2)에 제2 커맨드(CMD2)가 제공될 수 있다. 제2 메모리(MEM2)는 내부 신호 라인을 통해 제2 커맨드(CMD2)를 수신할 수 있고, 제2 커맨드(CMD2)에 따라 독출 동작을 수행할 수 있으며, 데이터 입출력 라인(DOUT2)을 통해 제2 독출 데이터(RD2)를 제공할 수 있다.
이때, 메모리 컨트롤러(MC)는 레이턴시 테이블을 참조하여 제1 및 제2 독출 레이턴시들(RL1a, RL2a)을 비교하고, 비교 결과에 따라 제2 커맨드(CMD2)의 전송 시점을 조절할 수 있다. 도 7에서, 제2 독출 레이턴시(RL2a)가 제1 독출 레이턴시(RL1a)보다 크기 때문에, 제1 메모리(MEM1)는 제1 커맨드(CMD1)를 수신한 후 상대적으로 빨리 제1 독출 데이터(RD1)를 제공할 수 있는 반면, 제2 메모리(MEM2)는 제2 커맨드(CMD2)를 수신한 후 상대적으로 늦게 제2 독출 데이터(RD2)를 제공할 수 있다. 따라서, 메모리 컨트롤러(MC)는 데이터(DQ) 버스의 효율성을 향상시키기 위해, 메모리 장치에 제1 커맨드(CMD1)를 전송한 후 제2 커맨드(CMD2)를 최대한 빨리 전송할 수 있다. 또한, 메모리 컨트롤러(MC)는 데이터(DQ) 버스를 통해 제2 독출 데이터(RD2)가 수신된 후 최대한 빨리 제1 독출 데이터(RD1)가 수신되도록, 그리고, 데이터(DQ) 버스에서 제2 독출 데이터(RD2)와 제1 독출 데이터(RD1) 사이에서 충돌이 발생하지 않도록, 제2 커맨드(CMD2) 이후의 제1 커맨드(CMD1)의 전송 시점을 조절할 수 있다.
도 8을 참조하면, 본 실시예에서, 제1 메모리(MEM1)는 제1 독출 레이턴시(RL1b)를 갖고, 제2 메모리(MEM2)는 제2 독출 레이턴시(RL2b)를 가질 수 있다. 이때, 제2 독출 레이턴시(RL2b)는 제1 독출 레이턴시(RL1b)보다 작을 수 있다. 예를 들어, 제1 메모리(MEM1)는 비휘발성 메모리일 수 있고, 제2 메모리(MEM2)는 휘발성 메모리일 수 있으나, 본 발명은 이에 한정되지 않는다.
본 실시예에서, 메모리 컨트롤러(MC)는 메모리 장치에 커맨드와 함께 레이턴시 신호(LS)를 제공할 수 있다. 일 실시예에서, 레이턴시 신호(LS)는 메모리 장치의 어드레스 핀들을 통해 메모리 장치에 입력될 수 있다. 일 실시예에서, 레이턴시 신호(LS)는 제1 메모리(MEM1)에 대응하는 제1 독출 레이턴시(RL1b) 또는 제2 메모리(MEM2)에 대응하는 제2 독출 레이턴시(RL2b)를 나타낼 수 있다.
메모리 컨트롤러(MC)는 제1 독출 레이턴시(RL1b)를 나타내는 레이턴시 신호(LS)를 제1 커맨드(CMD1)와 함께 메모리 장치로 전송할 수 있다. 레이턴시 신호(LS)에 따라 메모리 장치에 포함된 제1 메모리(MEM1)에 제1 커맨드(CMD1)가 제공될 수 있다. 제1 메모리(MEM1)는 내부 신호 라인을 통해 제1 커맨드(CMD1)를 수신할 수 있고, 제1 커맨드(CMD1)에 따라 독출 동작을 수행할 수 있으며, 데이터 입출력 라인(DOUT1)을 통해 제1 독출 데이터(RD1)를 제공할 수 있다.
메모리 컨트롤러(MC)는 제2 독출 레이턴시(RL2b)를 나타내는 레이턴시 신호(LS)를 제2 커맨드(CMD2)와 함께 메모리 장치로 전송할 수 있다. 레이턴시 신호(LS)에 따라 메모리 장치에 포함된 제2 메모리(MEM2)에 제2 커맨드(CMD2)가 제공될 수 있다. 제2 메모리(MEM2)는 내부 신호 라인을 통해 제2 커맨드(CMD2)를 수신할 수 있고, 제2 커맨드(CMD2)에 따라 독출 동작을 수행할 수 있으며, 데이터 입출력 라인(DOUT2)을 통해 제2 독출 데이터(RD2)를 제공할 수 있다.
이때, 메모리 컨트롤러(MC)는 레이턴시 테이블을 참조하여 제1 및 제2 독출 레이턴시들(RL1b, RL2b)을 비교하고, 비교 결과에 따라 제2 커맨드(CMD2)의 전송 시점을 조절할 수 있다. 도 8에서, 제2 독출 레이턴시(RL2b)가 제1 독출 레이턴시(RL1b)보다 작기 때문에, 제1 메모리(MEM1)는 제1 커맨드(CMD1)를 수신한 후 상대적으로 늦게 제1 독출 데이터(RD1)를 제공할 수 있는 반면, 제2 메모리(MEM2)는 제2 커맨드(CMD2)를 수신한 후 상대적으로 빨리 제2 독출 데이터(RD2)를 제공할 수 있다.
따라서, 메모리 컨트롤러(MC)는 데이터(DQ) 버스에서 제1 및 제2 독출 데이터들(RD1, RD2)의 충돌을 방지하기 위해, 메모리 장치에 제1 커맨드(CMD1)를 전송한 후 일정 시간이 경과한 후에 제2 커맨드(CMD2)를 전송할 수 있다. 또한, 메모리 컨트롤러(MC)는 데이터(DQ) 버스를 통해 제2 독출 데이터(RD2)가 수신된 후 최대한 빨리 제1 독출 데이터(RD1)가 수신되도록, 그리고, 데이터(DQ) 버스에서 제2 독출 데이터(RD2)와 제1 독출 데이터(RD1) 사이에서 충돌이 발생하지 않도록, 제2 커맨드(CMD2) 이후의 제1 커맨드(CMD1)의 전송 시점을 조절할 수 있다.
도 7 및 도 8의 예들을 참조하여 상술된 바와 같이, 본 실시예에 따르면, 이종의 메모리들(MEM1, MEM2)의 하드웨어 속성, 예를 들어, 독출 레이턴시에 따라 이종의 메모리들을 개별적으로 제어할 수 있다. 종래의 메모리 컨트롤러는 고정된 레이턴시를 기초로 커맨드를 발행하였고, 메모리 장치가 레디(ready) 상태임을 확인한 후에 메모리 장치에 커맨드를 전송하였다. 이에 따라, 이종의 메모리들을 포함하는 메모리 장치에 대한 데이터의 송수신 효율이 좋지 않았다. 그러나, 본 실시예에 따르면, 이종의 메모리들(MEM1, MEM2) 각각에 대한 레이턴시를 기초로 레이턴시 신호(LS)를 온-더-플라이로 결정하고, 결정된 레이턴시 신호(LS)를 메모리 장치에 제공함으로써, 이종의 메모리들(MEM1, MEM2)을 포함하는 메모리 장치에 대한 데이터의 송수신 효율을 크게 향상시킬 수 있다.
도 9는 본 개시의 일 실시예에 따른 메모리 장치의 동작 방법을 나타내는 흐름도이다.
도 9를 참조하면, 본 실시예에 따른 메모리 장치의 동작 방법은 이종의 메모리들을 포함하는 메모리 장치의 동작 방법으로서, 예를 들어, 도 1 또는 도 4의 메모리 장치(100)의 동작 방법에 대응할 수 있다. 도 1 내지 도 8을 참조하여 상술된 내용은 본 실시예에도 적용될 수 있고, 중복된 설명은 생략하기로 한다.
단계 S110에서, 메모리 장치(100)는 신규 커맨드가 수신되면 레이턴시 신호(LS)를 체크한다. 본 실시예에서, 메모리 장치(100)는 신규 커맨드와 함께 레이턴시 신호(LS)를 수신할 수 있다. 본 실시예에서, 레이턴시 신호(LS)는 메모리 장치(100)의 커맨드 핀들 또는 어드레스 핀들 중 일부를 통해 메모리 장치(100)에 수신될 수 있다.
단계 S120에서, 메모리 장치(100)는 레이턴시 신호(LS)가 제1 레이턴시 값(LV1)에 대응하는지 확인한다. 여기서, 제1 레이턴시 값(LV1)은 제1 메모리(110)에 대응하는 값일 수 있다. 확인 결과, 레이턴시 신호(LS)가 제1 레이턴시 값(LV1)에 대응하면 단계 S130을 수행하고, 레이턴시 신호(LS)가 제1 레이턴시 값(LV1)에 대응하지 않으면 단계 S140을 수행한다.
단계 S130에서, 메모리 장치(100)는 제1 메모리(110)에 액세스한다. 단계 S140에서, 메모리 장치(100)는 제2 메모리(120)에 액세스한다. 이와 같이, 본 실시예에 따르면, 레이턴시 신호(LS)에 따라 제1 또는 제2 메모리(110, 120)를 바로 선택할 수 있으므로, 메모리 장치(100)에 대한 액세스 속도가 향상될 수 있다.
도 10은 본 개시의 일 실시예에 따른 메모리 장치(1100)를 상세하게 나타내는 블록도이다.
도 10을 참조하면, 메모리 장치(1100)는 예를 들어, DRAM 셀들을 포함하는 메모리 셀 어레이(1101)를 구동하기 위한 각종 회로 블록들을 구비할 수 있다. 예를 들어, 메모리 장치(1100)는 도 1 또는 도 4의 제1 메모리(110)에 대응할 수 있다. 그러나, 본 발명은 이에 한정되지 않으며, 메모리 장치(1100)는 도 1 또는 도 4의 제2 메모리(120)에 대응할 수도 있다.
타이밍 레지스터(1102)는 칩 선택 신호(CS)가 비활성화 레벨(예컨대 로직 하이)에서 활성화 레벨(예컨대 로직 로우)로 변화될 때 활성화될 수 있다. 타이밍 레지스터(1102)는 외부로부터 클럭 신호(CLK), 클럭 인에이블 신호(CKE), 칩 선택신호(CSB), 로우(Row) 어드레스 스트로브 신호(RAS/), 칼럼 어드레스 스트로브 신호(CAS/), 기입 인에이블 신호(WE/) 및 데이터 입력/출력 마스크 신호(DQM) 등의 커맨드 신호를 수신하고, 수신된 커맨드 신호를 처리하여 회로 블록들을 제어하기 위한 각종 내부 커맨드 신호들(LRAS, LCBR, LWE, LCAS, LWCBR, LDQM)을 생성할 수 있다.
타이밍 레지스터(1102)로부터 생성된 일부 내부 커맨드 신호들은 프로그래밍 레지스터(1104)에 저장된다. 예컨대, 데이터 출력에 관계된 레이턴시(Latency) 정보나 버스트 길이(Burst Length) 정보 등이 프로그래밍 레지스터(1104)에 저장될 수 있다. 프로그래밍 레지스터(1104)에 저장된 내부 커맨드 신호들은 레이턴시/버스트 길이 제어부(1106)로 제공될 수 있으며, 레이턴시/버스트 길이 제어부(1106)는 데이터 출력의 레이턴시나 버스트 길이를 제어하기 위한 제어 신호를 칼럼 버퍼(1108)를 통하여 칼럼 디코더(1110)나 출력 버퍼(1112)로 제공할 수 있다.
어드레스 레지스터(1120)는 외부로부터 어드레스 신호(ADD)를 수신할 수 있다. 로우 어드레스 신호는 로우 어드레스 버퍼(1122)를 통하여 로우 디코더(1124)로 제공될 수 있다. 또한, 칼럼 어드레스 신호는 칼럼 어드레스 버퍼(1108)를 통하여 칼럼 디코더(1110)로 제공될 수 있다. 로우 어드레스 버퍼(1122)는 리프레쉬 명령(LRAS, LCBR)에 응답하여 리프레쉬 카운터에서 발생하는 리프레쉬 어드레스 신호를 더 수신할 수 있으며, 로우 어드레스 신호나 리프레쉬 어드레스 신호 중 어느 하나를 로우 디코더(1124)로 제공할 수 있다. 또한, 어드레스 레지스터(1120)는 뱅크를 선택하기 위한 뱅크 신호를 뱅크 선택부(1126)로 제공할 수 있다.
로우 디코더(1124)는 로우 어드레스 버퍼(1122)로부터 입력되는 로우 어드레스 신호 또는 리프레쉬 어드레스 신호를 디코딩하고, 메모리 셀 어레이(1101)의 워드라인을 활성화시킬 수 있다. 칼럼 디코더(1110)는 칼럼 어드레스 신호를 디코딩하고, 메모리 셀 어레이(1101)의 비트라인에 대한 선택 동작을 수행할 수 있다. 일 예로서, 칼럼 선택 라인(Column selection Line)이 메모리 장치(1100)에 적용되어, 칼럼 선택 라인을 통한 선택 동작이 수행될 수 있다.
센스 엠프(1130)는 로우 디코더(1124)와 칼럼 디코더(1110)에 의해 선택된 메모리 셀의 데이터를 증폭하고, 증폭된 데이터를 출력 버퍼(1112)로 제공할 수 있다. 데이터 셀의 기록을 위한 데이터는 데이터 입력 레지스터(1132)를 통하여 메모리 셀 어레이(1101)로 제공되며, 입출력 컨트롤러(1134)는 데이터 입력 레지스터(1132)를 통한 데이터 전달 동작을 제어할 수 있다.
도 11a 및 도 11b는 본 개시의 실시예들에 따른 메모리 시스템을 나타내는 블록도들이다.
도 11a를 참조하면, 메모리 시스템(2000A)은 메모리 모듈(2100A) 및 메모리 컨트롤러(2200A)를 포함한다. 도 11a의 메모리 시스템(2000A)에서 메모리 컨트롤러(2200A)는 메모리 모듈(2100A)과 별개로 구비되는 것으로 도시되었으나, 메모리 컨트롤러(2200A)는 메모리 모듈(2100A)에 구비될 수도 있다. 메모리 컨트롤러(2200A)는 인쇄 회로 기판(2110)의 상면 또는 하면에 결합될 수 있으며, 도전 라인들을 통해 메모리 칩들(2120)과 통신할 수 있다.
메모리 모듈(2100A)은 인쇄 회로 기판(2110), 복수의 제1 메모리 칩들(2120), 복수의 제2 메모리 칩들(2130) 및 커넥터(2140)를 포함한다. 복수의 제1 및 제2 메모리 칩들(2120, 2130)은 인쇄 회로 기판(2110)의 상면과 하면에 결합될 수 있다. 커넥터(2140)는 도전 라인들을 통해 복수의 제1 및 제2 메모리 칩들(2120, 2130)과 전기적으로 연결된다. 또한, 커넥터(2140)는 외부 호스트의 슬롯에 연결될 수 있다. 예를 들어, 메모리 모듈(2100A)은 도 1 또는 도 4의 메모리 장치(100)에 대응할 수 있다.
복수의 제1 메모리 칩들(2120)은 복수의 제2 메모리 칩들(2130)과 다른 하드웨어 속성을 가질 수 있고, 메모리 모듈(2100A)은 하이브리드 메모리라고 지칭될 수 있다. 일 실시예에서, 복수의 제1 메모리 칩들(2120)은 DRAM 셀과 같은 휘발성 메모리를 포함할 수 있고, 예를 들어, 도 1 또는 도 4의 제1 메모리(110)에 대응할 수 있다. 복수의 제2 메모리 칩들(2130)은 플래쉬 메모리 셀과 같은 비휘발성 메모리를 포함할 수 있고, 예를 들어, 도 1 또는 도 4의 제2 메모리(120)에 대응할 수 있다. 이때, 복수의 제1 메모리 칩들(2120)들은 동작 메모리, 캐시 메모리 등과 같이 컴퓨터 시스템의 데이터를 단기적으로 또는 임시로 저장할 수 있고, 복수의 제2 메모리 칩들(2130)은 백업 메모리로 이용될 수 있다. 한편, 복수의 제2 메모리 칩들(2130)은 데이터를 지속적으로 저장할 수 있는 저장 매체로 이용될 수 있고, 복수의 제1 메모리 칩들(2120)은 버퍼 메모리로 이용될 수 있다.
메모리 컨트롤러(2200A)는 커맨드를 큐잉하거나, 커맨드를 출력하는 동작과 병렬적으로 커맨드에 대응하는 어드레스의 결함 여부를 검출하는 동작을 수행할 수 있다. 예를 들어, 메모리 컨트롤러(2200A)는 도 1 또는 도 3의 메모리 컨트롤러(200)에 대응할 수 있다. 구체적으로, 메모리 컨트롤러(2200A)는 제1 및 제2 메모리 칩들(2120, 2130) 각각에 대한 하드웨어 속성을 나타내는 신호를 온-더-플라이로 결정할 수 있고, 결정된 신호를 커맨드/어드레스와 함께 메모리 모듈(2100A)에 전송할 수 있다. 메모리 시스템에서 메모리 컨트롤러(2200A)와 메모리 모듈(2100A) 사이에 디램 인터페이스가 적용될 수 있다.
한편, 도 11b에 도시된 바와 같이, 메모리 시스템(2000B)은 메모리 모듈(2100B) 및 메모리 컨트롤러(2200B)를 포함하며, 메모리 모듈(2100B)은 도 11a에 비해, 메모리 동작을 관리하기 위한 관리 칩(2150)을 더 포함할 수 있다. 이때, 메모리 컨트롤러(2200B)의 기능의 일부가 관리 칩(2150)에서 수행될 수 있다.
도 11b의 예에서는 메모리 컨트롤러의 기능의 일부가 LRDIMM 형태의 메모리 모듈에서 수행되는 예가 도시되었으나 본 발명의 실시예는 이에 국한될 필요는 없다. 예컨대, FBDIMM 형태의 메모리 모듈이 적용됨에 따라 관리 칩으로서 AMB(Advanced Memory Buffer) 칩이 메모리 모듈에 장착될 수도 있다. 이외에도, 다른 형태의 메모리 모듈이 적용되고, 전술한 메모리 컨트롤러의 기능의 적어도 일부가 메모리 모듈에서 수행되도록 구현될 수 있다.
도 12는 본 개시의 일 실시예에 따른 컴퓨터 시스템(3000)을 나타내는 블록도이다.
도 12를 참조하면, 컴퓨터 시스템(3000)은 프로세서(3100), 시스템 컨트롤러(3200) 및 메모리 시스템(3300)을 포함한다. 컴퓨터 시스템(3000)은 프로세서 버스(3510), 확장 버스(3520), 입력 장치(3410), 출력 장치(3420) 및 저장 장치(3430)를 더 포함할 수 있다. 컴퓨터 시스템(3000)은 데스크 톱 컴퓨터, 노트북 컴퓨터, 워크 스테이션, 핸드 헬스 디바이스 등일 수 있다.
프로세서(3100)는 특정 계산들 또는 태스크들을 실행하는 특정 소프트웨어를 실행하는 것과 같이 다양한 컴퓨팅 시스템을 실행할 수 있다. 예를 들어, 프로세서(3100)는 마이크로 프로세서 또는 중앙 처리 장치일 수 있다. 프로세서(3100)는 어드레스 버스, 제어 버스 및/또는 데이터 버스를 포함하는 프로세서 버스(3510)를 통하여 시스템 컨트롤러(3200)에 연결될 수 있다. 시스템 컨트롤러(3200)는 주변 구성 요소 상호 연결(Peripheral component interconnection, PCI) 버스와 같은 확장 버스(3520)에 연결된다. 이에 따라, 프로세서(3100)는 시스템 컨트롤러(3200)를 통하여 키보드 또는 마우스와 같은 하나 이상의 입력 장치(3410), 프린터 또는 디스플레이 장치와 같은 하나 이상의 출력 장치(3420) 또는 하드 디스크 드라이브, 솔리드 스테이트 드라이브 또는 CD-ROM과 같은 하나 이상의 저장 장치(3430)를 제어할 수 있다.
메모리 시스템(3300)은 적어도 하나의 반도체 메모리 장치(3320) 및 메모리 컨트롤러(3310)를 포함한다. 메모리 컨트롤러(3310)는 시스템 컨트롤러(3200)에 포함될 수 있다. 메모리 컨트롤러(3310)는 프로세서(3100)에 의해 제공된 명령을 수행하도록 반도체 메모리 장치(3320)를 제어할 수 있다. 반도체 메모리 장치(3320)는 메모리 컨트롤러(3310)로부터 제공된 데이터를 저장하고, 저장된 데이터를 메모리 컨트롤러(3310)에 제공할 수 있다. 반도체 메모리 장치(3320)는 메모리 컨트롤러(3310)로부터 제공된 데이터를 변환하여 셀 데이터를 생성하고, 셀 데이터를 메모리 셀에 저장할 수 있다. 또한, 반도체 메모리 장치(3320)는 메모리 셀로부터 셀 데이터를 독출하고, 셀 데이터를 변환하여, 변환된 데이터를 메모리 컨트롤러(3310)에 제공할 수 있다.
반도체 메모리 장치(3320)는 복수의 메모리 칩들, 예를 들어, 동적 랜덤 액세스 메모리(Dynamic Random Access Memory, DRAM), 정적 랜덤 액세스 메모리(Static Random Access Memory, SRAM) 또는 비 휘발성 메모리 칩을 포함할 수 있다. 구체적으로, 반도체 메모리 장치(3320)는 서로 다른 하드웨어 속성을 갖는 이종의 메모리들을 포함할 수 있고, 메모리 컨트롤러(3310)는 이종의 메모리들에 각각 대응하는 하드웨어 속성을 나타내는 신호를 커맨드/어드레스와 함께 반도체 메모리 장치(3320)에 전송할 수 있다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.
10: 메모리 시스템, 100: 메모리 장치, 200: 메모리 컨트롤러
110, 210: 제1, 제2 메모리, 130: 제어부, 140: 커넥터

Claims (10)

  1. 제1 하드웨어 속성을 갖는 제1 메모리;
    상기 제1 하드웨어 속성과 다른 제2 하드웨어 속성을 갖는 제2 메모리; 및
    상기 제1 또는 제2 하드웨어 속성을 나타내는 신호를 커맨드와 함께 수신하고, 수신된 상기 신호에 따라 상기 제1 메모리 또는 상기 제2 메모리를 선택하며, 선택된 상기 제1 또는 제2 메모리에 대해 상기 커맨드에 따른 동작이 수행되도록 선택된 상기 제1 또는 제2 메모리를 제어하는 제어부를 포함하는 메모리 장치.
  2. 제1항에 있어서,
    상기 제1 및 제2 하드웨어 속성들은, 레이턴시, 메모리 대역폭 또는 메모리 전력 소모를 포함하는 것을 특징으로 하는 메모리 장치.
  3. 제2항에 있어서,
    상기 제1 하드웨어 속성은 제1 레이턴시에 대응하고, 상기 제2 하드웨어 속성은 상기 제1 레이턴시와 다른 제2 레이턴시에 대응하며,
    상기 신호는 상기 제1 레이턴시 또는 상기 제2 레이턴시를 나타내는 레이턴시 신호인 것을 특징으로 하는 메모리 장치.
  4. 제3항에 있어서,
    상기 제1 레이턴시는 제1 독출 레이턴시이고, 상기 제2 레이턴시는 제2 독출 레이턴시인 것을 특징으로 하는 메모리 장치.
  5. 제3항에 있어서,
    상기 레이턴시 신호 및 상기 커맨드를 수신하기 위한 복수의 핀들을 포함하는 커넥터를 더 포함하고,
    상기 레이턴시 신호는 상기 복수의 핀들 중 적어도 하나의 핀을 통해 수신되는 것을 특징으로 하는 메모리 장치.
  6. 제5항에 있어서,
    상기 복수의 핀들은 어드레스 입력이 수신 가능한 복수의 어드레스 핀들을 포함하고,
    상기 레이턴시 신호는 상기 복수의 어드레스 핀들 중 적어도 하나의 어드레스 핀을 통해 수신되는 것을 특징으로 하는 메모리 장치.
  7. 제5항에 있어서,
    상기 레이턴시 신호는, 상기 복수의 핀들 중 n개의 핀들을 통해 수신되는 n 비트 신호이고, n은 자연수인 것을 특징으로 하는 메모리 장치.
  8. 제1항에 있어서,
    상기 제1 메모리는 휘발성 메모리이고, 상기 제2 메모리는 비휘발성 메모리인 것을 특징으로 하는 메모리 장치.
  9. 제1 하드웨어 속성을 갖는 제1 메모리, 및 상기 제1 하드웨어 속성과 다른 제2 하드웨어 속성을 갖는 제2 메모리를 포함하는 메모리 장치; 및
    상기 제1 또는 제2 하드웨어 속성을 나타내는 신호 및 커맨드를 상기 메모리 장치에 함께 전송함으로써, 상기 제1 및 제2 메모리들을 선택적으로 제어하는 메모리 컨트롤러를 포함하는 메모리 시스템.
  10. 제9항에 있어서,
    상기 메모리 컨트롤러는 상기 신호를 어드레스 입력 또는 커맨드 입력의 일부로써 상기 메모리 장치에 전송하는 것을 특징으로 하는 메모리 시스템.
KR1020150163338A 2015-11-20 2015-11-20 이종 메모리들을 포함하는 메모리 장치 및 메모리 시스템 KR20170059239A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150163338A KR20170059239A (ko) 2015-11-20 2015-11-20 이종 메모리들을 포함하는 메모리 장치 및 메모리 시스템
US15/295,566 US20170147230A1 (en) 2015-11-20 2016-10-17 Memory device and memory system having heterogeneous memories

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150163338A KR20170059239A (ko) 2015-11-20 2015-11-20 이종 메모리들을 포함하는 메모리 장치 및 메모리 시스템

Publications (1)

Publication Number Publication Date
KR20170059239A true KR20170059239A (ko) 2017-05-30

Family

ID=58721819

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150163338A KR20170059239A (ko) 2015-11-20 2015-11-20 이종 메모리들을 포함하는 메모리 장치 및 메모리 시스템

Country Status (2)

Country Link
US (1) US20170147230A1 (ko)
KR (1) KR20170059239A (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102688471B1 (ko) * 2019-09-18 2024-07-26 삼성디스플레이 주식회사 표시장치
US11644981B2 (en) * 2020-09-25 2023-05-09 Micron Technology, Inc. Semiconductor devices with security lock and associated methods and systems
US20240071446A1 (en) * 2022-08-30 2024-02-29 Samsung Electronics Co., Ltd. Apparatuses and methods for providing command having on-the-fly (otf) latency to memory
JP7433571B1 (ja) 2023-08-04 2024-02-19 三菱電機株式会社 遅延装置、メモリ制御システム、遅延方法及びプログラム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0619546A1 (en) * 1993-04-05 1994-10-12 Motorola, Inc. Programmable memory controller and method for configuring same
US5920898A (en) * 1996-08-16 1999-07-06 Unisys Corporation Memory control unit providing optimal timing of memory control sequences between different memory segments by optimally selecting among a plurality of memory requests
US6181702B1 (en) * 1997-02-14 2001-01-30 Advanced Micro Devices, Inc. Method and apparatus for capturing source and destination traffic
US6378049B1 (en) * 1998-11-16 2002-04-23 Infineon Technologies A.G. Universal memory controller
JP2002063069A (ja) * 2000-08-21 2002-02-28 Hitachi Ltd メモリ制御装置、データ処理システム及び半導体装置
DE10239322B4 (de) * 2002-08-27 2004-07-08 Infineon Technologies Ag Integrierter Speicher und Verfahren zur Einstellung der Latenzzeit im integrierten Speicher
US6925542B2 (en) * 2003-03-21 2005-08-02 Freescale Semiconductor, Inc. Memory management in a data processing system
KR100567826B1 (ko) * 2004-07-12 2006-04-05 삼성전자주식회사 이종 메모리의 카스 레이턴시와 주파수를 설정하는 방법및 장치
US7702839B2 (en) * 2005-04-12 2010-04-20 Nokia Corporation Memory interface for volatile and non-volatile memory devices
EP2539823B1 (en) * 2010-02-23 2016-04-13 Rambus Inc. Time multiplexing at different rates to access different memory types
US8806245B2 (en) * 2010-11-04 2014-08-12 Apple Inc. Memory read timing margin adjustment for a plurality of memory arrays according to predefined delay tables
US9460813B2 (en) * 2013-03-14 2016-10-04 Kabushiki Kaisha Toshiba Memory system
KR20140123203A (ko) * 2013-04-11 2014-10-22 삼성전자주식회사 메모리 시스템
US8976609B1 (en) * 2014-06-16 2015-03-10 Sandisk Enterprise Ip Llc Low-test memory stack for non-volatile storage
US9430417B2 (en) * 2014-09-08 2016-08-30 Micron Technology, Inc. Sequential memory access operations
KR102076196B1 (ko) * 2015-04-14 2020-02-12 에스케이하이닉스 주식회사 메모리 시스템, 메모리 모듈 및 메모리 모듈의 동작 방법

Also Published As

Publication number Publication date
US20170147230A1 (en) 2017-05-25

Similar Documents

Publication Publication Date Title
US10002668B2 (en) Memory device, memory module, and memory system
KR102693794B1 (ko) 로우 해머링을 개선할 수 있는 메모리 모듈 및 이의 동작 방법
US10268382B2 (en) Processor memory architecture
US11989106B2 (en) Inline buffer for in-memory post package repair (PPR)
US8631193B2 (en) Emulation of abstracted DIMMS using abstracted DRAMS
US11250902B2 (en) Method and apparatus to reduce power consumption for refresh of memory devices on a memory module
US10489061B2 (en) Shift read command for performing rank-to-rank transfers in semiconductor memory devices
US20240014817A1 (en) Apparatus for transmitting and receiving a signal, a method of operating the same, a memory device, and a method of operating the memory device
KR20170057704A (ko) 액세스 동작과 리프레쉬 동작의 충돌을 제어하는 메모리 장치 및 이를 포함하는 메모리 시스템
US20160163377A1 (en) Semiconductor memory device and memory system including same
US20150003172A1 (en) Memory module including buffer chip controlling refresh operation of memory devices
US10109344B2 (en) Semiconductor memory devices with banks with different numbers of memory cells coupled to their bit-lines and memory systems including the same
US9064603B1 (en) Semiconductor memory device and memory system including the same
US10929064B2 (en) Methods of operating mixed device type memory modules, and processors and systems configured for operating the same
KR20170060739A (ko) 반도체 메모리 장치 및 이를 포함하는 메모리 시스템
KR20170059239A (ko) 이종 메모리들을 포함하는 메모리 장치 및 메모리 시스템
KR20210091647A (ko) 비휘발성 메모리에 대한 자동 증분 기입 카운트
NL2031713B1 (en) Double fetch for long burst length memory data transfer
US9030895B2 (en) Memory device with pin register to set input/output direction and bitwidth of data signals
US11423970B2 (en) Memory device receiving data clock signals and operation method thereof
CN107369473B (zh) 存储系统及其操作方法
US20240184487A1 (en) Memory system and operating method thereof
US11804254B2 (en) Memory device and method of refreshing memory device based on temperature
US20240211160A1 (en) System Memory Training with Chipset Attached Memory
KR20170032032A (ko) 메모리 장치 및 메모리 시스템