KR102513919B1 - 메모리 시스템 - Google Patents

메모리 시스템 Download PDF

Info

Publication number
KR102513919B1
KR102513919B1 KR1020180134170A KR20180134170A KR102513919B1 KR 102513919 B1 KR102513919 B1 KR 102513919B1 KR 1020180134170 A KR1020180134170 A KR 1020180134170A KR 20180134170 A KR20180134170 A KR 20180134170A KR 102513919 B1 KR102513919 B1 KR 102513919B1
Authority
KR
South Korea
Prior art keywords
data
memory
control signal
input
bus
Prior art date
Application number
KR1020180134170A
Other languages
English (en)
Other versions
KR20200051174A (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
Application filed by 에스케이하이닉스 주식회사 filed Critical 에스케이하이닉스 주식회사
Priority to KR1020180134170A priority Critical patent/KR102513919B1/ko
Priority to US16/287,990 priority patent/US10909052B2/en
Priority to CN201910183960.9A priority patent/CN111143254B/zh
Priority to TW108109646A priority patent/TW202018522A/zh
Priority to JP2019054064A priority patent/JP2020077355A/ja
Priority to US16/858,414 priority patent/US11288012B2/en
Publication of KR20200051174A publication Critical patent/KR20200051174A/ko
Priority to US17/134,117 priority patent/US11487473B2/en
Application granted granted Critical
Publication of KR102513919B1 publication Critical patent/KR102513919B1/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
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • 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
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • 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/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4096Input/output [I/O] data management or control circuits, e.g. reading or writing circuits, I/O drivers or bit-line switches 
    • 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/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • 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/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1045Read-write mode select 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/1048Data bus control circuits, e.g. precharging, presetting, equalising
    • 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/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1069I/O lines read out arrangements
    • 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/1096Write circuits, e.g. I/O line write drivers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/10Aspects relating to interfaces of memory device to external buses
    • G11C2207/105Aspects related to pads, pins or terminals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/10Aspects relating to interfaces of memory device to external buses
    • G11C2207/108Wide data ports
    • 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)
  • Databases & Information Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Dram (AREA)
  • Bus Control (AREA)
  • Memory System (AREA)

Abstract

본 발명은 메모리 시스템에 관한 것으로, 메모리 장치들 간에 데이터를 전송하기 위한 기술이다. 이러한 본 발명은 데이터의 리드 동작 또는 라이트 동작을 제어하기 위한 메모리 제어신호를 생성하는 메모리 제어부 및 메모리 제어신호에 대응하여 상기 데이터의 리드 동작 또는 라이트 동작이 수행되는 복수의 메모리 장치를 포함하고, 복수의 메모리 장치 중 제 1메모리 장치는 메모리 제어부로부터 수신되는 전체 데이터를 저장하고, 제 2메모리 장치는 전체 데이터 중 특정 개수의 일부 데이터를 수신하여 제 2메모리 장치 내에서 카피하여 저장한다.

Description

메모리 시스템{Memory system}
본 발명은 메모리 시스템에 관한 것으로, 메모리 장치들 간에 데이터를 전송하기 위한 기술이다.
최근 스마트 폰, 태블릿 PC와 같은 이동 통신 단말기의 보급이 대중화되고 있다. 그리고, 소셜 네트워크 서비스(SNS, Social Network Service), 사물 네트워크(M2M, Machine to Machine), 센서 네트워크(Sensor Network) 등의 사용이 증가하고 있다. 이에 따라, 데이터의 양, 생성 속도 및 그 다양성이 기하급수적으로 증가하고 있다. 빅 데이터의 처리를 위해서는 메모리의 속도도 중요하지만 저장 용량이 큰 메모리 장치 및 메모리 모듈이 요구된다.
이에, 메모리 시스템은 데이터의 저장 용량을 늘리기 위하여 복수의 메모리 장치들을 구비한다. 메모리 시스템은 복수의 메모리 장치들이 데이터 라인을 공유하여 컨트롤러에 연결된다. 그런데, 메모리 시스템 내에 포함되는 메모리 장치들의 개수가 많은 경우 로딩이 증가하게 된다. 또한, 메모리 장치들과 컨트롤러 간의 데이터 전송시 데이터 이동 시간 및 전력 소모가 증가하게 된다.
본 발명의 실시예는 데이터 라인을 공유하여 메모리 장치들 간에 데이터를 직접 전송하고, 공유된 데이터 라인을 통해 인가되는 데이터를 메모리 장치 내에서 카피하여 데이터의 이동 시간 및 전력 소모를 줄일 수 있도록 하는 메모리 시스템을 제공한다.
본 발명의 실시예에 따른 메모리 시스템은, 데이터의 리드 동작 또는 라이트 동작을 제어하기 위한 메모리 제어신호를 생성하는 메모리 제어부; 및 메모리 제어신호에 대응하여 데이터의 리드 동작 또는 라이트 동작이 수행되는 복수의 메모리 장치를 포함하고, 복수의 메모리 장치 중 제 1메모리 장치는 메모리 제어부로부터 수신되는 전체 데이터를 저장하고, 제 2메모리 장치는 전체 데이터 중 특정 개수의 일부 데이터를 수신하여 제 2메모리 장치 내에서 카피하여 저장한다.
본 발명의 다른 실시예에 따른 메모리 시스템은, 메모리 제어신호에 대응하여 데이터의 리드 동작 또는 라이트 동작이 수행되고, 제 1데이터 버스, 제 2데이터 버스를 통해 인가되는 전체 데이터를 저장하는 제 1메모리 장치; 및 제 1메모리 장치로부터 인가되는 전체 데이터 중 특정 개수의 일부 데이터를 제 2데이터 버스를 통해 수신하고 수신된 일부 데이터를 카피하여 저장한다.
본 발명의 실시예는 데이터의 전송 속도를 향상시키고 전력 소모를 줄일 수 있도록 하는 효과를 제공한다.
아울러 본 발명의 실시예는 예시를 위한 것으로, 당업자라면 첨부된 특허청구범위의 기술적 사상과 범위를 통해 다양한 수정, 변경, 대체 및 부가가 가능할 것이며, 이러한 수정 변경 등은 이하의 특허청구범위에 속하는 것으로 보아야 할 것이다.
도 1은 본 발명의 실시예에 따른 메모리 시스템의 구성도.
도 2는 도 1의 메모리 장치의 상세 구성도.
도 3은 도 2의 메모리 코어에 관한 상세 구성도.
도 4는 도 3의 메모리 코어에 관한 실시예.
도 5는 도 3의 메모리 코어에 관한 다른 실시예.
도 6은 도 3의 메모리 코어에 관한 또 다른 실시예.
도 7은 도 3의 메모리 코어에 관한 또 다른 실시예.
도 8은 도 3의 메모리 코어에 관한 또 다른 실시예.
도 9는 본 발명의 실시예에 따른 메모리 시스템의 동작을 설명하기 위한 도면.
이하, 첨부한 도면을 참조하여 본 발명의 실시예에 대해 상세히 설명하고자 한다. 본 발명의 실시예를 설명함에 있어서 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때 이는 "직접적으로 연결"되어 있는 경우뿐만 아니라 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함" 또는 "구비"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함하거나 구비할 수 있는 것을 의미한다. 또한, 명세서 전체의 기재에 있어서 일부 구성요소들을 단수형으로 기재하였다고 해서, 본 발명이 그에 국한되는 것은 아니며, 해당 구성요소가 복수 개로 이루어질 수 있음을 알 것이다.
도 1은 본 발명의 실시예에 따른 메모리 시스템의 구성도이다.
본 발명의 실시예에 따른 메모리 시스템(10)은 메모리 제어부(100)와 복수의 메모리 장치 M1~M4를 포함한다.
메모리 제어부(100)는 호스트로부터 명령을 인가받아 복수의 메모리 장치 M1~M4를 제어하기 위한 메모리 제어신호 MCON를 생성한다. 메모리 제어부(100)는 외부의 호스트와 인터페이싱을 수행하기 위한 호스트 인터페이스(미도시)를 더 포함할 수 있다.
예를 들어, 메모리 제어부(100)는 호스트로부터 입력된 명령을 분석하고 처리할 수 있다. 여기서, 호스트로부터 입력된 명령은 복수의 메모리 장치 M1~M4에 데이터를 라이트하기 위한 라이트 명령과, 복수의 메모리 장치 M1~M4에 저장된 데이터를 리드하기 위한 리드 명령 등을 포함할 수 있다.
메모리 제어부(100)는 호스트로부터 명령이 인가되면 복수의 메모리 장치 M1~M4를 구동하기 위한 펌웨어(Firmware) 또는 소프트웨어에 따라서 백그라운드 기능 블럭들의 동작을 제어할 수 있다.
복수의 메모리 장치 M1~M4는 메모리 제어부(100)로부터 인가되는 메모리 제어신호 MCON에 응답하여 데이터를 서비스할 수 있다. 예를 들면, 복수의 메모리 장치 M1~M4는 메모리 제어부(100)로부터 제공된 데이터를 저장하거나, 저장된 데이터를 리드하여 리드 데이터를 메모리 제어부(100)로 제공할 수 있다.
본 발명의 실시예에서 메모리 장치 M1~M4가 4 개인 것을 일 예로 설명하였지만, 본 발명의 실시예는 이에 한정되는 것이 아니며 메모리 장치의 개수는 한정되지 않는다.
또한, 본 발명이 실시예에서 메모리 장치 M1~M4는 휘발성 메모리로 구성될 수 있다. 하지만, 본 발명의 실시예는 이에 한정되는 것이 아니라, 메모리 장치 M1~M4가 낸드 플래시 메모리, 노어 플래시 메모리, PRAM(Phase-change RAM), FRAM(Ferroelectric RAM), MRAM(Magnetic RAM) 등의 불휘발성 메모리 장치들 중 하나로 구성될 수 있다.
복수의 메모리 장치 M1~M4는 데이터 버스 DB1, DB2를 통해 메모리 제어부(100)와 연결되어 서로 데이터를 전송할 수 있다. 여기서, 복수의 메모리 장치 M1~M4는 데이터 버스 DB2를 통해 인가되는 데이터를 서로 공유할 수 있다.
즉, 본 발명의 실시예에 따른면, 복수의 메모리 장치 M1~M4는 메모리 제어부(100)를 거치지 않고 데이터 버스 DB2를 통해 복수의 메모리 장치 M1~M4 간에 데이터가 직접 전달될 수 있다.
예를 들어, 복수의 메모리 장치 M1~M4는 전체 데이터 중 일부 데이터가 전달되는 데이터 버스 DB2를 공유한다. 이에 따라, 복수의 메모리 장치 M1~M4 중 메모리 장치 M1는 (A)의 경로와 같이 메모리 제어부(100)를 거치지 않고 데이터 버스 DB2를 통해 메모리 장치 M2에 직접 데이터를 전달할 수 있다. 마찬가지로, 복수의 메모리 장치 M1~M4 중 메모리 장치 M2는 (B)의 경로와 같이 메모리 제어부(100)를 거치지 않고 데이터 버스 DB2를 통해 메모리 장치 M3에 직접 데이터를 전달할 수 있다. 그리고, 복수의 메모리 장치 M1~M4는 (C)의 경로와 같이 데이터 버스 DB1, DB2를 통해 메모리 제어부(100)에 리드된 데이터를 전달할 수 있다.
도 2는 도 1의 메모리 장치 M1~M4에 관한 상세 구성도이다. 복수의 메모리 장치 M1~M4는 그 구성이 모두 동일하므로, 도 2의 실시예에서는 두 개의 메모리 장치 M1, M2 만을 도시하고, 메모리 장치 M2에 관한 상세 구성을 일 예로 설명하기로 한다.
메모리 장치 M2는 제어부(200), 인터페이스(300) 및 메모리 코어(400)를 포함한다.
여기서, 제어부(200)는 메모리 제어부(100)로부터 입력된 메모리 제어신호 MCON에 대응하여 데이터의 제어 모드를 설정하기 위한 제어신호 CON를 생성한다. 예를 들어, 제어부(200)는 메모리 제어신호 MCON에 대응하여 제어신호 CON를 '노말모드'로 출력하거나 '압축모드'로 출력한다.
인터페이스(300)는 제어신호 CON에 대응하여 데이터 버스 DB1, DB2와 메모리 코어(400) 간의 인터페이싱을 수행한다. 인터페이스(300)는 제어신호 CON에 대응하여 모든 데이터 버스 DB1, DB2를 선택하기 위한 연결 회로와, 일부 데이터 버스 DB2를 선택하기 위한 연결 회로를 포함할 수 있다.
예를 들어, 인터페이스(300)는 제어신호 CON가 '노말모드'로 설정되는 경우 데이터 버스 DB1, DB2를 통해 전체 데이터를 입력받아 메모리 코어(400)에 전달한다. 반면에, 인터페이스(300)는 제어신호 CON가 '압축모드'로 설정되는 경우 데이터 버스 DB2를 통해 일부 데이터를 입력받아 메모리 코어(400)에 전달한다.
메모리 코어(400)는 '노말모드'시 인터페이스(300)를 통해 데이터 버스 DB1, DB2의 전체 데이터를 입력받아 뱅크(후술함)에 저장한다. 그리고, 메모리 코어(400)는 '압축모드'시 인터페이스(300)를 통해 데이터 버스 DB2의 일부 데이터를 입력받는다. 그리고, 메모리 코어(400)는 인터페이스(300)를 통해 인가된 일부 데이터를 카피(Copy) 하는 방식으로 뱅크(후술함)에 전체 데이터를 저장할 수 있다. 데이터 버스 DB2에 실린 데이터는 메모리 제어부(100)로 이동되지 않은 상태에서 각 메모리 장치 M1, M2에 직접 제공될 수 있다.
예를 들어, 메모리 장치 M1는 '노말모드'로 동작하여 전체 데이터의 리드 또는 라이트 동작이 수행될 수 있다. 또한, 메모리 장치 M1가 노말 리드 또는 라이트 동작을 수행하는 동안, 메모리 장치 M2는 '압축모드'로 동작하여 일부 데이터를 카피하는 방식으로 전체 데이터를 저장할 수 있다. 여기서, 메모리 제어부(100)로부터 제공되어 메모리 장치 M1, M2에 제공되는 데이터는 모두 동일한 데이터일 수 있다.
이상에서와 같이, 본 발명의 실시예에 따른 메모리 장치 M2는 메모리 제어신호 MCON에 대응하여 데이터 버스 DB2를 통해 인가되는 일부 데이터를 메모리 장치 M2의 메모리 코어(400)에 카피(Copy)하여 저장할 수 있다. 이에 따라, 본 발명의 실시예는 메모리 장치 간에 데이터를 직접 전달하고, 일부 데이터만 입력받아 메모리 장치 내에서 병렬 데이터를 카피하여 저장하므로, 데이터의 이동 시간 및 전력 소모를 줄일 수 있다.
도 3은 도 2의 메모리 코어(400)에 관한 상세 구성도이다.
메모리 코어(400)는 데이터 입출력부(410), 데이터 구동부(420), 데이터 압축부(430), 로오 디코더 RDEC 및 뱅크 BA, BB를 포함한다.
본 발명의 실시예에서는 메모리 코어(400) 내에 두 개의 뱅크 BA, BB가 포함된 경우를 일 예로 설명하기로 한다. 하지만, 본 발명의 실시예는 이에 한정되는 것이 아니며 뱅크의 개수는 변경이 가능하다.
여기서, 데이터 입출력부(410)는 인터페이스(300)와 데이터 인터페이싱을 수행한다. 즉, 데이터 입출력부(410)는 라이트 동작시 인터페이스(300)를 통해 인가되는 데이터를 데이터 구동부(420)에 전달한다. 그리고, 데이터 입출력부(410)는 리드 동작시 데이터 압축부(430)를 통해 인가되는 데이터를 인터페이스(300)에 전달한다.
그리고, 데이터 구동부(420)는 라이트 동작시 데이터 입출력부(410)로부터 인가되는 데이터를 구동하여 뱅크 BA, BB에 전달한다. 또한, 데이터 구동부(420)는 리드 동작시 뱅크 BA, BB로부터 인가되는 데이터를 구동하여 데이터 압축부(430)에 전달한다.
또한, 데이터 압축부(430)는 리드 동작시 데이터 구동부(430)로부터 인가되는 데이터를 압축하여 데이터 입출력부(410)에 전달한다. 뱅크 BA, BB로부터 인가되는 데이터는 데이터 압축부(430)에 의해 압축되어 데이터 입출력부(410)에 전달된다. 그리고, 데이터 입출력부(410)를 통해 출력되는 압축 데이터는 인터페이스(300)를 통해 데이터 버스 DB2에 전달되므로 리드 동작시 데이터의 전달로 인한 로딩을 줄일 수 있다.
또한, 뱅크 BA, BB는 라이트 동작시 데이터 구동부(420)로부터 인가되는 데이터를 저장한다. 그리고, 뱅크 BA, BB는 리드 동작시 저장된 데이터를 리드하여 데이터 구동부(420)에 출력한다. 로오 디코더 RDEC는 라이트 동작 또는 리드 동작시 뱅크 BA, BB의 로오 라인을 선택하여 해당 셀의 데이터가 액세스 될 수 있도록 한다.
도 4는 도 3의 메모리 코어(400)에 관한 실시예이다.
메모리 코어(400)는 데이터 입출력부(410), 데이터 구동부(420), 로오 디코더 RDEC 및 뱅크 BA, BB를 포함한다.
도 3의 실시예는 데이터의 '라이트' 동작을 기준으로 설명하기로 한다. 기준이 되는 메모리 장치(예를 들면, 메모리 장치 M1)에서 리드된 데이터가 타겟이 되는 메모리 장치(예를 들면, 메모리 장치 M2)의 메모리 코어(400)에 저장될 수 있다.
또한, 도 3의 실시예는 제어신호 CON가 '노말모드'인 경우를 나타낸다. 메모리 코어(400)는 '노말모드'시 인터페이스(300)를 통해 데이터 버스 DB1, DB2의 전체 데이터를 입력받아 뱅크 BA에 저장할 수 있다. 도 3에서는 두 개의 뱅크 BA, BB 중 뱅크 BA에 데이터가 저장되는 경우를 일 예로 설명하였다. 하지만, 두 개의 뱅크 BA, BB 중 뱅크 BB에 입력된 데이터가 저장될 수도 있다.
예를 들어, 데이터 버스 DB1를 통해 인가되는 데이터가 ×12이고, 데이터 버스 DB2를 통해 인가되는 일부 데이터가 ×4인 것을 가정한다. 그러면, 데이터 버스 DB1, DB2를 통해 인가되는 전체 데이터는 총 ×16이 된다.
본 발명의 실시예에서는 데이터 버스 DB1를 통해 인가되는 데이터가 ×12이고, 데이터 버스 DB2를 통해 인가되는 일부 데이터가 ×4, 데이터 버스 DB1, DB2를 통해 인가되는 전체 데이터가 총 ×16인 것을 일 예로 설명한다. 하지만, 이는 일 실시예일 뿐, 데이터 버스 DB1, DB2를 통해 전달되는 데이터이 개수는 이에 한정되지 않는다.
인터페이스(300)는 '노말 모드'시 ×16의 전체 데이터를 메모리 코어(400)의 데이터 입출력부(410)에 전달한다. 즉, 메모리 코어(400)의 전체 데이터 핀의 개수가 16개인 경우, 전체 데이터 핀을 통해 인가되는 16개의 데이터 DQ0~DQ15가 모두 데이터 입출력부(410)에 입력될 수 있다. 데이터 입출력부(410)는 인터페이스(300)로부터 16개의 데이터 DQ0~DQ15를 입력받아 입출력버스 IOB에 전달한다.
그러면, 데이터 구동부(420)는 입출력버스 IOB를 통해 인가되는 데이터 DQ0~DQ15를 구동하여 데이터 D0~D15를 뱅크 BA에 전달한다. 뱅크 BA는 데이터 구동부(420)를 통해 전달되는 데이터 데이터 D0~D15를 저장한다. 뱅크 BA는 로오 디코더 RDEC에 의해 워드라인 WL이 선택되고 컬럼 선택신호 CYI에 의해 컬럼 라인이 선택되어 해당하는 셀에 데이터 D0~D15를 라이트한다.
도 5는 도 3의 메모리 코어(400)에 관한 다른 실시예이다.
메모리 코어(400A)는 데이터 입출력부(410A), 데이터 구동부(420A), 로오 디코더 RDEC 및 뱅크 BA, BB를 포함한다.
도 5의 실시예는 데이터의 '라이트' 동작을 기준으로 설명하기로 한다. 기준이 되는 메모리 장치(예를 들면, 메모리 장치 M1)에서 리드된 데이터가 타겟이 되는 메모리 장치(예를 들면, 메모리 장치 M2)의 메모리 코어(400A)에 저장될 수 있다.
또한, 도 5의 실시예는 제어신호 CON가 '압축모드'인 경우를 나타낸다. 메모리 코어(400A)는 인터페이스(300)를 통해 데이터 버스 DB2의 일부 데이터를 입력받아 뱅크 BA에 저장할 수 있다. 도 5에서는 두 개의 뱅크 BA, BB 중 뱅크 BA에 데이터가 저장되는 경우를 일 예로 설명하였다. 하지만, 두 개의 뱅크 BA, BB 중 뱅크 BB에 입력된 데이터가 저장될 수도 있다.
예를 들어, 데이터 버스 DB1를 통해 인가되는 데이터가 ×12이고, 데이터 버스 DB2를 통해 인가되는 일부 데이터가 ×4인 것을 가정한다. 그런데, '압축모드'에서는 인터페이스(300)가 데이터 버스 DB2를 통해 인가되는 ×4의 일부 데이터만 메모리 코어(400A)에 전달한다.
데이터 입출력부(410A)는 인터페이스(300)로부터 4개의 데이터 DQ0~DQ3를 입력받아 공통 입출력버스 CIOB0~CIOB3에 전달한다. 공통 입출력버스 CIOB0~CIOB3에 전달된 일부 데이터는 입출력버스 IOB를 통해 카피되어 데이터 D0~D15가 뱅크 BA에 전달된다.
예를 들어, 공통 입출력버스 CIOB0에 인가된 데이터 DQ0는 입출력버스 IOB를 통해 데이터 D0, D4, D8, D12로 카피된다. 그리고, 공통 입출력버스 CIOB1에 인가된 데이터 DQ1는 입출력버스 IOB를 통해 데이터 D1, D5, D9, D13으로 카피된다. 또한, 공통 입출력버스 CIOB2에 인가된 데이터 DQ2는 입출력버스 IOB를 통해 데이터 D2, D6, D10, D14로 카피된다. 또한, 공통 입출력버스 CIOB3에 인가된 데이터 DQ3는 입출력버스 IOB를 통해 데이터 D3, D7, D11, D15로 카피된다.
이에 따라, 입출력버스 IOB를 통해 뱅크 BA에 전달되는 입력 데이터는 총 16개의 데이터 D0~D15가 된다. 데이터 구동부(420A)는 입출력버스 IOB를 통해 인가되는 데이터 D0~D15를 구동하여 뱅크 BA에 전달한다. 뱅크 BA는 로오 디코더 RDEC에 의해 워드라인 WL이 선택되고 컬럼 선택신호 CYI에 의해 컬럼 라인이 선택되어 해당하는 셀에 데이터 D0~D15가 저장된다.
도 6은 도 2의 메모리 코어(400)에 관한 또 다른 실시예이다.
메모리 코어(400B)는 데이터 입출력부(410B), 데이터 구동부(420B), 로오 디코더 RDEC 및 뱅크 BA, BB를 포함한다.
도 6의 실시예는 데이터의 '라이트' 동작을 기준으로 설명하기로 한다. 기준이 되는 메모리 장치(예를 들면, 메모리 장치 M1)에서 리드된 데이터가 타겟이 되는 메모리 장치(예를 들면, 메모리 장치 M2)의 메모리 코어(400A)에 저장될 수 있다.
또한, 도 6의 실시예는 제어신호 CON가 '압축모드'인 경우를 나타낸다. 메모리 코어(400B)는 인터페이스(300)를 통해 데이터 버스 DB2의 일부 데이터를 입력받아 뱅크 BA, BB에 저장할 수 있다. 즉, 도 6의 실시예에서는 두 개의 뱅크 BA, BB에 모두 데이터가 저장되는 경우를 일 예로 설명하기로 한다.
예를 들어, 데이터 버스 DB1를 통해 인가되는 데이터가 ×12이고, 데이터 버스 DB2를 통해 인가되는 일부 데이터가 ×4인 것을 가정한다. 그런데, '압축모드'에서는 인터페이스(300)가 데이터 버스 DB2를 통해 인가되는 ×4의 일부 데이터만 메모리 코어(400B)에 전달한다.
데이터 입출력부(410B)는 인터페이스(300)로부터 4개의 데이터 DQ0~DQ3를 입력받아 공통 입출력버스 CIOB0~CIOB3에 전달한다. 공통 입출력버스 CIOB0~CIOB3에 전달된 일부 데이터는 입출력버스 IOB를 통해 카피되어 데이터 D0~D15가 뱅크 BA에 전달되고 데이터 D0~D15가 뱅크 BB에 전달된다.
예를 들어, 공통 입출력버스 CIOB0에 인가된 데이터 DQ0는 입출력버스 IOB를 통해 데이터 D0, D4, D8, D12로 카피된다. 그리고, 공통 입출력버스 CIOB1에 인가된 데이터 DQ1는 입출력버스 IOB를 통해 데이터 D1, D5, D9, D13으로 카피된다. 또한, 공통 입출력버스 CIOB2에 인가된 데이터 DQ2는 입출력버스 IOB를 통해 데이터 D2, D6, D10, D14로 카피된다. 또한, 공통 입출력버스 CIOB3에 인가된 데이터 DQ3는 입출력버스 IOB를 통해 데이터 D3, D7, D11, D15로 카피된다.
이에 따라, 입출력버스 IOB를 통해 총 16개의 데이터 D0~D15가 뱅크 BA에 전달된다. 마찬가지로, 입출력버스 IOB를 통해 총 16개의 데이터 D0~D15가 뱅크 BB에 전달된다. 데이터 구동부(420B)는 입출력버스 IOB를 통해 인가되는 데이터 D0~D15를 구동하여 각 뱅크 BA, BB에 전달한다.
뱅크 BA는 로오 디코더 RDEC에 의해 워드라인 WL이 선택되고 컬럼 선택신호 CYI에 의해 컬럼 라인이 선택되어 해당하는 셀에 데이터 D0~D15가 저장된다. 마찬가지로, 뱅크 BB는 로오 디코더 RDEC에 의해 워드라인 WL이 선택되고 컬럼 선택신호 CYI에 의해 컬럼 라인이 선택되어 해당하는 셀에 데이터 D0~D15가 저장된다. 여기서, 뱅크 BA와 뱅크 BB는 동시에 액세스 되어 데이터의 라이트 동작이 수행될 수 있다.
도 7은 도 3의 메모리 코어(400)에 관한 또 다른 실시예이다.
메모리 코어(400C)는 데이터 입출력부(410C), 데이터 구동부(420C), 데이터 압축부(430C), 로오 디코더 RDEC 및 뱅크 BA, BB를 포함한다.
도 7의 실시예는 데이터의 '리드' 동작을 기준으로 설명하기로 한다. 또한, 도 7의 실시예는 제어신호 CON가 '압축모드'인 경우를 나타낸다.
메모리 코어(400C)는 뱅크 BA로부터 리드된 전체 데이터를 압축하여 인터페이스(300)를 통해 일부 데이터를 데이터 버스 DB2에 제공할 수 있다. 도 7에서는 두 개의 뱅크 BA, BB 중 뱅크 BA의 데이터를 리드하는 경우를 일 예로 설명하였다. 하지만, 두 개의 뱅크 BA, BB 중 뱅크 BB에 저장된 데이터를 리드할 수도 있다.
예를 들어, '압축모드'에서는 뱅크 BA에서 리드된 ×16의 전체 데이터를 압축하여 일부 데이터만 인터페이스(300)에 출력한다. 데이터 버스 DB1에 전달되는 데이터가 ×12이고, 데이터 버스 DB2에 전달되는 일부 데이터가 ×4인 것을 가정한다. 그러면, 인터페이스(300)는 ×4의 일부 데이터만 데이터 버스 DB2에 전달한다.
뱅크 BA는 로오 디코더 RDEC에 의해 워드라인 WL이 선택되고 컬럼 선택신호 CYI에 의해 컬럼 라인이 선택되어 해당하는 셀에 저장된 데이터 D0~D15가 데이터 구동부(420C)에 출력된다. 여기서, 뱅크 BA에서 출력되는 출력 데이터 D0~D15는 총 16개가 된다.
데이터 구동부(420C)에서 출력된 데이터 D0~D15는 압축부(430C)에 전달된다. 압축부(430C)는 데이터 D0~D15를 압축하여 공통 입출력버스 CIOB0~CIOB3에 출력한다. 여기서, 압축부(430C)는 복수의 배타적노아게이트 XNOR0~XNOR3를 포함할 수 있다.
배타적노아게이트 XNOR0는 데이터 D0~D15 중 일부의 데이터 D0, D4, D8, D12를 배타적노아 연산하여 공통 입출력버스 CIOB0에 출력한다. 그리고, 배타적노아게이트 XNOR1는 데이터 D0~D15 중 일부의 데이터 D1, D5, D9, D13을 배타적노아 연산하여 공통 입출력버스 CIOB1에 출력한다. 또한, 배타적노아게이트 XNOR2는 데이터 D0~D15 중 일부의 데이터 D2, D6, D10, D14를 배타적노아 연산하여 공통 입출력버스 CIOB2에 출력한다. 배타적노아게이트 XNOR3는 데이터 D0~D15 중 일부의 데이터 D3, D7, D11, D15를 배타적노아 연산하여 공통 입출력버스 CIOB3에 출력한다.
데이터 입출력부(410C)는 공통 입출력버스 CIOB0~CIOB3로부터 인가되는 4개의 데이터 DQ0~DQ3를 인터페이스(300)를 통해 데이터 버스 DB2에 전달한다.
도 8은 도 3의 메모리 코어(400)에 관한 또 다른 실시예이다.
메모리 코어(400D)는 데이터 입출력부(410D), 데이터 구동부(420D), 데이터 압축부(430D), 로오 디코더 RDEC 및 뱅크 BA, BB를 포함한다.
도 8의 실시예는 데이터의 '리드' 동작을 기준으로 설명하기로 한다. 또한, 도 8의 실시예는 제어신호 CON가 '압축모드'인 경우를 나타낸다.
메모리 코어(400D)는 뱅크 BA, BB로부터 리드된 전체 데이터를 압축하여 인터페이스(300)를 통해 일부 데이터를 데이터 버스 DB2에 제공할 수 있다. 도 8의 실시예에서는 두 개의 뱅크 BA, BB의 모든 데이터를 리드하는 경우를 일 예로 설명하였다.
예를 들어, '압축모드'에서는 뱅크 BA에서 리드된 ×16의 데이터와 뱅크 BB에서 리드된 ×16의 데이터를 합하여 총 ×32의 전체 데이터를 압축부(430D)에 출력한다. 데이터 버스 DB1에 전달되는 데이터가 ×12이고, 데이터 버스 DB2에 전달되는 일부 데이터가 ×4인 것을 가정한다. 그러면, 압축부(430D)는 ×32의 전체 데이터를 압축하여 ×4의 일부 데이터만 인터페이스(300)를 통해 데이터 버스 DB2에 전달한다.
뱅크 BA는 로오 디코더 RDEC에 의해 워드라인 WL이 선택되고 컬럼 선택신호 CYI에 의해 컬럼 라인이 선택되어 해당하는 셀에 저장된 데이터 D0~D15가 데이터 구동부(420D)에 출력된다. 여기서, 뱅크 BA에서 출력되는 데이터 D0~D15는 총 16개가 된다.
그리고, 뱅크 BB는 로오 디코더 RDEC에 의해 워드라인 WL이 선택되고 컬럼 선택신호 CYI에 의해 컬럼 라인이 선택되어 해당하는 셀에 저장된 데이터 D0~D15가 데이터 구동부(420D)에 출력된다. 여기서, 뱅크 BB에서 출력되는 데이터 D0~D15는 총 16개가 된다.
뱅크 BA, BB에서 리드된 각각의 데이터 D0~D15는 데이터 구동부(420D)에서 구동되어 압축부(430D)에 전달된다. 압축부(430D)는 뱅크 BA, BB에서 리드된 각각의 데이터 D0~D15를 압축하여 공통 입출력버스 CIOB0~CIOB3에 출력한다. 이러한 압축부(430D)는 복수의 배타적노아게이트 XNOR4~XNOR1와, 복수의 앤드게이트 AND1~AND4를 포함할 수 있다.
배타적노아게이트 XNOR4는 데이터 D0~D15 중 일부의 데이터 D0, D4, D8, D12를 배타적노아 연산하여 앤드게이트 AND1에 출력한다. 그리고, 배타적노아게이트 XNOR5는 데이터 D0~D15 중 일부의 데이터 D1, D5, D9, D13을 배타적노아 연산하여 앤드게이트 AND2에 출력한다. 또한, 배타적노아게이트 XNOR6는 데이터 D0~D15 중 일부의 데이터 D2, D6, D10, D14를 배타적노아 연산하여 앤드게이트 AND3에 출력한다. 배타적노아게이트 XNOR7는 데이터 D0~D15 중 일부의 데이터 D3, D7, D11, D15를 배타적노아 연산하여 앤드게이트 AND4에 출력한다.
그리고, 배타적노아게이트 XNOR8는 데이터 D0~D15 중 일부의 데이터 D0, D4, D8, D12를 배타적노아 연산하여 앤드게이트 AND1에 출력한다. 그리고, 배타적노아게이트 XNOR9는 데이터 D0~D15 중 일부의 데이터 D1, D5, D9, D13을 배타적노아 연산하여 앤드게이트 AND2에 출력한다. 또한, 배타적노아게이트 XNOR10는 데이터 D0~D15 중 일부의 데이터 D2, D6, D10, D14를 배타적노아 연산하여 앤드게이트 AND3에 출력한다. 배타적노아게이트 XNOR11은 데이터 D0~D15 중 일부의 데이터 D3, D7, D11, D15를 배타적노아 연산하여 앤드게이트 AND4에 출력한다.
또한, 앤드게이트 AND1는 배타적노아게이트 XNOR4, XNOR8의 출력을 앤드연산하여 공통 입출력버스 CIOB0에 출력한다. 앤드게이트 AND2는 배타적노아게이트 XNOR5, XNOR9의 출력을 앤드연산하여 공통 입출력버스 CIOB1에 출력한다. 앤드게이트 AND3는 배타적노아게이트 XNOR6, XNOR10의 출력을 앤드연산하여 공통 입출력버스 CIOB2에 출력한다. 앤드게이트 AND4는 배타적노아게이트 XNOR7, XNOR11의 출력을 앤드연산하여 공통 입출력버스 CIOB3에 출력한다.
데이터 출력부(410D)는 공통 입출력버스 CIOB0~CIOB3로부터 인가되는 4개의 데이터 DQ0~DQ3를 인터페이스(300)통해 데이터 버스 DB2에 전달한다.
이상에서와 같이, 본 발명의 실시예는 전체 데이터를 출력하는 것이 아니라 데이터를 압축하여 일부 데이터를 출력할 수 있다. 이러한 경우 데이터의 전달시 로딩을 줄이고 데이터의 전달 속도를 향상시킬 수 있으므로 전력 소모가 줄어들게 된다.
도 9는 본 발명의 실시예에 따른 메모리 시스템의 동작을 설명하기 위한 도면이다.
메모리 제어부(100)는 호스트로부터 명령을 수신한다.(단계 S1) 그리고, 메모리 제어부(110)는 호스트로부터 입력된 명령을 분석하고 메모리 장치 M1~M4 간에 직접 데이터를 전송하는 동작이 필요한 경우인지를 판단한다.(단계 S2) 예를 들어, 메모리 제어부(110)는 전력 소모를 줄이거나 메모리 장치의 동작 속도를 높이거나 메모리 장치의 신뢰성을 개선해야 하는 경우 메모리 장치 M1~M4 간에 직접 데이터를 전송하는 동작이 필요하다고 판단한다.
만약, 메모리 장치 M1~M4 간에 직접 데이터를 전송하는 동작이 필요하지 않은 경우 메모리 제어부(100)를 거쳐 각 메모리 장치 M1~M4가 노말 모드로 동작하게 된다.(단계 S3) 반면에, 메모리 장치 M1~M4 간에 직접 데이터를 전송하기 위한 명령이 인가된 경우 메모리 제어부(100)는 이에 대응하는 메모리 제어신호 MCON를 생성한다.(단계 S4)
메모리 제어부(100)는 호스트로부터 라이트 명령 또는 리드 명령이 인가되는 경우 제어부(200)에 라이트 명령 또는 리드 명령을 실행하기 위한 메모리 제어신호 MCON를 전달한다. 제어부(200)는 메모리 제어신호 MCON에 대응하여 각 메모리 장치 M1~M4 간에 전체 데이터를 전달하기 위한 '노말모드'인지 아니면 일부 데이터만 전달하기 위한 '압축모드'인지의 여부를 판단한다.
만약, 전체 데이터를 전달하기 위한 '노말모드'인 경우 각 메모리 장치 M1~M4는 노말 모드로 동작하게 된다.(단계 S5) 반면에, 메모리 장치 M1~M4의 제어부(200)는 '압축모드'시 데이터 버스 DB2를 통해 일부 데이터만 전달하기 위한 제어신호 CON를 생성한다. 각 메모리 장치 M1~M4는 제어신호 CON에 대응하여 압축 모드로 동작하게 된다.(단계 S6)
여기서, 기준 메모리 장치와 타겟 메모리 장치를 독립적으로 동작이 가능하다. 예를 들어, 기준이 되는 메모리 장치(예를 들면, 메모리 장치 M1)가 '노말모드'로 전체 데이터의 액세스 동작이 수행되는 동안, 타겟이 되는 메모리 장치(예를 들면, 메모리 장치 M2)는 '압축모드'로 일부 데이터의 카피 동작이 수행될 수 있다. 즉, 기준 메모리의 장치와 타겟 메모리 장치의 액세스 동작은 동시에 수행될 수도 있고 연속적으로 수행될 수도 있다.
이후에, 메모리 제어부(100)는 호스트로부터 리드 명령을 수신한다.(단계 S7) 그러면, 메모리 제어부(100)는 복수의 메모리 장치 M1~M4 중 해당하는 메모리 장치에서 리드된 데이터를 호스트에 전송한다.(단계 S8)
본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있으므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (20)

  1. 데이터의 리드 동작 또는 라이트 동작을 제어하기 위한 메모리 제어신호를 생성하는 메모리 제어부; 및
    상기 메모리 제어신호에 대응하여 상기 데이터의 리드 동작 또는 라이트 동작이 수행되는 복수의 메모리 장치를 포함하고,
    상기 복수의 메모리 장치 중 제 1메모리 장치는 상기 메모리 제어부로부터 수신되는 전체 데이터를 저장하고, 제 2메모리 장치는 상기 전체 데이터 중 특정 개수의 일부 데이터를 수신하여 상기 제 2메모리 장치 내에서 카피하여 저장하는 메모리 시스템.
  2. 제 1항에 있어서,
    상기 복수의 메모리 장치는 서로 간에 직접적으로 데이터를 전달하는 메모리 시스템.
  3. 제 1항에 있어서, 상기 복수의 메모리 장치는
    제 1데이터 버스와 제 2데이터 버스를 통해 상기 메모리 제어부와 연결되는 메모리 시스템.
  4. 제 3항에 있어서, 상기 복수의 메모리 장치는
    상기 제 2데이터 버스를 통해 상기 일부 데이터를 서로 공유하는 메모리 시스템.
  5. 제 1항에 있어서,
    상기 제 1메모리 장치와 상기 제 2메모리 장치는 독립적으로 동작하는 메모리 시스템.
  6. 제 1항에 있어서,
    상기 제 1메모리 장치와 상기 제 2메모리 장치는 연속적으로 동작하는 메모리 시스템.
  7. 제 1항에 있어서,
    상기 전체 데이터는 모두 동일한 데이터 인 메모리 시스템.
  8. 제 1항에 있어서, 상기 복수의 메모리 장치 각각은
    상기 메모리 제어신호에 대응하여 상기 데이터의 제어 모드를 설정하기 위한 제어신호를 생성하는 제어부;
    상기 제어신호에 대응하여 상기 메모리 제어부와 인터페이싱을 수행하는 인터페이스; 및
    상기 인터페이스를 통해 인가되는 데이터를 저장하거나 저장된 데이터를 상기 인터페이스에 출력하는 메모리 코어를 포함하는 메모리 시스템.
  9. 제 8항에 있어서, 상기 인터페이스는
    상기 제어신호가 노말모드로 설정되는 경우 상기 전체 데이터를 상기 메모리 코어에 전달하고, 상기 제어신호가 압축모드로 설정되는 경우 상기 일부 데이터를 상기 메모리 코어에 전달하는 메모리 시스템.
  10. 제 8항에 있어서, 상기 메모리 코어는
    상기 인터페이스와 상기 데이터의 인터페이싱을 수행하는 데이터 입출력부;
    상기 데이터를 구동하는 데이터 구동부; 및
    상기 라이트 동작시 상기 데이터를 저장하고 상기 리드 동작시 저장된 데이터를 출력하는 뱅크를 포함하는 메모리 시스템.
  11. 제 10항에 있어서, 상기 메모리 코어는
    상기 데이터 입출력부를 통해 인가된 상기 일부 데이터를 전달하는 공통 입출력버스를 더 포함하는 메모리 시스템.
  12. 제 11항에 있어서, 상기 메모리 코어는
    상기 공통 입출력버스를 통해 인가되는 일부 데이터가 카피되어 상기 데이터 구동부에 전달되는 입출력버스를 더 포함하는 메모리 시스템.
  13. 제 10항에 있어서, 상기 메모리 코어는
    상기 데이터 입출력부를 통해 인가되는 상기 일부 데이터가 복수의 뱅크에 카피되어 저장되는 메모리 시스템.
  14. 제 10항에 있어서, 상기 메모리 코어는
    상기 리드 동작시 상기 데이터 구동부로부터 인가되는 전체 데이터를 압축하여 상기 데이터 입출력부에 일부 데이터를 전달하는 데이터 압축부를 더 포함하는 메모리 시스템.
  15. 제 14항에 있어서, 상기 데이터 압축부는
    복수의 뱅크로부터 인가되는 데이터를 압축하여 상기 데이터 입출력부에 전달하는 메모리 시스템.
  16. 메모리 제어신호에 대응하여 데이터의 리드 동작 또는 라이트 동작이 수행되고, 제 1데이터 버스, 제 2데이터 버스를 통해 인가되는 전체 데이터를 저장하는 제 1메모리 장치; 및
    상기 제 1메모리 장치로부터 인가되는 상기 전체 데이터 중 특정 개수의 일부 데이터를 상기 제 2데이터 버스를 통해 수신하고 수신된 상기 일부 데이터를 카피하여 저장하는 제 2메모리 장치를 포함하는 메모리 시스템.
  17. 제 16항에 있어서, 상기 제 1메모리 장치와 상기 제 2메모리 장치 각각은
    상기 메모리 제어신호에 대응하여 상기 데이터의 제어 모드를 설정하기 위한 제어신호를 생성하는 제어부;
    상기 제어신호에 대응하여 상기 메모리 제어부와 인터페이싱을 수행하는 인터페이스; 및
    상기 인터페이스를 통해 인가되는 데이터를 저장하거나 저장된 데이터를 상기 인터페이스에 출력하는 메모리 코어를 포함하는 메모리 시스템.
  18. 제 17항에 있어서, 상기 인터페이스는
    상기 제어신호가 노말모드로 설정되는 경우 상기 전체 데이터를 상기 메모리 코어에 전달하고, 상기 제어신호가 압축모드로 설정되는 경우 상기 일부 데이터를 상기 메모리 코어에 전달하는 메모리 시스템.
  19. 제 17항에 있어서, 상기 메모리 코어는
    상기 인터페이스와 상기 데이터의 인터페이싱을 수행하는 데이터 입출력부;
    상기 데이터를 구동하는 데이터 구동부;
    상기 리드 동작시 상기 데이터 구동부로부터 인가되는 데이터를 압축하여 상기 데이터 입출력부에 전달하는 데이터 압축부; 및
    상기 라이트 동작시 상기 데이터를 저장하고 상기 리드 동작시 저장된 데이터를 출력하는 뱅크를 포함하는 메모리 시스템.
  20. 제 19항에 있어서, 상기 메모리 코어는
    상기 데이터 입출력부를 통해 인가된 상기 일부 데이터를 전달하는 공통 입출력버스; 및
    상기 공통 입출력버스를 통해 인가되는 일부 데이터가 카피되어 상기 데이터 구동부에 전달되는 입출력버스를 더 포함하는 메모리 시스템.
KR1020180134170A 2018-07-23 2018-11-05 메모리 시스템 KR102513919B1 (ko)

Priority Applications (7)

Application Number Priority Date Filing Date Title
KR1020180134170A KR102513919B1 (ko) 2018-11-05 2018-11-05 메모리 시스템
US16/287,990 US10909052B2 (en) 2018-11-05 2019-02-27 Memory system capable of transmitting data directly between memory devices
CN201910183960.9A CN111143254B (zh) 2018-11-05 2019-03-12 存储系统
TW108109646A TW202018522A (zh) 2018-11-05 2019-03-20 記憶體系統
JP2019054064A JP2020077355A (ja) 2018-11-05 2019-03-22 メモリーシステム
US16/858,414 US11288012B2 (en) 2018-07-23 2020-04-24 Memory system
US17/134,117 US11487473B2 (en) 2018-07-23 2020-12-24 Memory system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180134170A KR102513919B1 (ko) 2018-11-05 2018-11-05 메모리 시스템

Publications (2)

Publication Number Publication Date
KR20200051174A KR20200051174A (ko) 2020-05-13
KR102513919B1 true KR102513919B1 (ko) 2023-03-27

Family

ID=70459592

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180134170A KR102513919B1 (ko) 2018-07-23 2018-11-05 메모리 시스템

Country Status (5)

Country Link
US (1) US10909052B2 (ko)
JP (1) JP2020077355A (ko)
KR (1) KR102513919B1 (ko)
CN (1) CN111143254B (ko)
TW (1) TW202018522A (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210133330A (ko) 2020-04-28 2021-11-08 주식회사 만도 운전자 보조 시스템 및 운전자 보조 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007310680A (ja) 2006-05-18 2007-11-29 Matsushita Electric Ind Co Ltd 不揮発性記憶装置およびそのデータ転送方法

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0464848B1 (en) 1990-07-06 1996-05-01 Nec Corporation Structure for enabling direct memory-to-memory transfer
US5923654A (en) 1996-04-25 1999-07-13 Compaq Computer Corp. Network switch that includes a plurality of shared packet buffers
US7899052B1 (en) 1999-01-27 2011-03-01 Broadcom Corporation Memory structure for resolving addresses in a packet-based network switch
US8429143B2 (en) 2008-04-25 2013-04-23 International Business Machines Corporation Methods and systems for improving hash table performance
KR101626084B1 (ko) * 2009-11-25 2016-06-01 삼성전자주식회사 멀티 칩 메모리 시스템 및 그것의 데이터 전송 방법
JP5066209B2 (ja) * 2010-03-18 2012-11-07 株式会社東芝 コントローラ、データ記憶装置、及びプログラム
JP5751156B2 (ja) * 2011-12-19 2015-07-22 富士通株式会社 ストレージシステム、制御装置およびストレージシステムの制御方法
US9473373B2 (en) 2012-04-04 2016-10-18 Viavi Solutions, Inc. Method and system for storing packet flows
US20140115579A1 (en) 2012-10-19 2014-04-24 Jonathan Kong Datacenter storage system
KR101997794B1 (ko) * 2012-12-11 2019-07-09 삼성전자주식회사 메모리 제어기 및 그것을 포함한 메모리 시스템
US9495246B2 (en) 2013-01-21 2016-11-15 Kaminario Technologies Ltd. Raid erasure code applied to partitioned stripe
WO2016045055A1 (en) 2014-09-25 2016-03-31 Intel Corporation Network communications using pooled memory in rack-scale architecture
CN105573662B (zh) * 2014-10-31 2020-05-26 群联电子股份有限公司 数据写入方法、存储器控制电路单元以及存储器存储装置
DE102014223035A1 (de) * 2014-11-12 2016-05-12 Robert Bosch Gmbh Verfahren und Speicherverwaltungsvorrichtung zum Übertragen von Daten innerhalb eines Compuer-Systems, Speichersystem und Computer-System
US20160283303A1 (en) 2015-03-27 2016-09-29 Intel Corporation Reliability, availability, and serviceability in multi-node systems with disaggregated memory
US9665415B2 (en) 2015-09-26 2017-05-30 Intel Corporation Low-latency internode communication
US9952925B2 (en) 2016-01-06 2018-04-24 Micron Technology, Inc. Error code calculation on sensing circuitry
US10481799B2 (en) * 2016-03-25 2019-11-19 Samsung Electronics Co., Ltd. Data storage device and method including receiving an external multi-access command and generating first and second access commands for first and second nonvolatile memories
US9983821B2 (en) 2016-03-29 2018-05-29 Samsung Electronics Co., Ltd. Optimized hopscotch multiple hash tables for efficient memory in-line deduplication application
US10083722B2 (en) 2016-06-08 2018-09-25 Samsung Electronics Co., Ltd. Memory device for performing internal process and operating method thereof
US9996440B2 (en) 2016-06-20 2018-06-12 Vmware, Inc. Fault tolerance using shared memory architecture
US10275272B2 (en) 2016-06-20 2019-04-30 Vmware, Inc. Virtual machine recovery in shared memory architecture
US10002081B2 (en) * 2016-07-05 2018-06-19 Intel Corporation Apparatus for hardware implementation of heterogeneous decompression processing
CN110737398B (zh) 2018-07-20 2023-09-01 伊姆西Ip控股有限责任公司 协调访问操作的方法、设备和计算机程序产品

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007310680A (ja) 2006-05-18 2007-11-29 Matsushita Electric Ind Co Ltd 不揮発性記憶装置およびそのデータ転送方法

Also Published As

Publication number Publication date
TW202018522A (zh) 2020-05-16
JP2020077355A (ja) 2020-05-21
KR20200051174A (ko) 2020-05-13
US20200142841A1 (en) 2020-05-07
CN111143254A (zh) 2020-05-12
CN111143254B (zh) 2023-08-04
US10909052B2 (en) 2021-02-02

Similar Documents

Publication Publication Date Title
US11886754B2 (en) Apparatuses and methods for configuring I/Os of memory for hybrid memory modules
CN101957726B (zh) 双列直插式存储模块中的相变存储器
TWI529523B (zh) A memory device control method, and a memory device
US20130329491A1 (en) Hybrid Memory Module
US10599206B2 (en) Techniques to change a mode of operation for a memory device
KR20190102778A (ko) 전자 장치 및 그것의 동작 방법
TW201415462A (zh) 半導體記憶體裝置
CN111679783A (zh) 存储器控制器
KR20210091647A (ko) 비휘발성 메모리에 대한 자동 증분 기입 카운트
KR20170032053A (ko) 메모리 장치 및 메모리 장치를 포함하는 전자 장치
US10754768B2 (en) Memory system using descriptor lookup tables to access setting information for a non-volatile memory, and an operating method thereof
KR102513919B1 (ko) 메모리 시스템
CN111694772A (zh) 存储器控制器
KR20140082181A (ko) 메모리 시스템
US20100329027A1 (en) Nonvolatile memory device and method of operating the same
US11669393B2 (en) Memory device for swapping data and operating method thereof
KR20170001818A (ko) 스토리지 장치 컨트롤러 및 그것의 결함을 테스트하기 위한 방법
KR20160086059A (ko) 데이터 저장 장치
KR20110000878A (ko) 낸드 플래시 메모리를 실장한 메모리 장치 및 그의 리드 오퍼레이션 방법

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