KR102491579B1 - Memory device, memory module and memory system - Google Patents
Memory device, memory module and memory system Download PDFInfo
- Publication number
- KR102491579B1 KR102491579B1 KR1020160008093A KR20160008093A KR102491579B1 KR 102491579 B1 KR102491579 B1 KR 102491579B1 KR 1020160008093 A KR1020160008093 A KR 1020160008093A KR 20160008093 A KR20160008093 A KR 20160008093A KR 102491579 B1 KR102491579 B1 KR 102491579B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- pattern
- memory
- memory device
- write
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/06—Address interface arrangements, e.g. address buffers
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy 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)
- Microelectronics & Electronic Packaging (AREA)
- Dram (AREA)
Abstract
메모리 장치, 메모리 모듈 및 메모리 시스템이 개시된다. 본 개시의 실시예에 따른 메모리 장치는, 복수의 메모리 영역을 포함하는 메모리 셀 어레이; 미리 설정된 데이터 패턴을 제공하는 데이터 패턴 제공부; 및 외부 장치로부터 제1 기입 커맨드 및 어드레스가 수신되면, 상기 데이터 패턴 제공부로부터 제공되는 데이터 패턴을 상기 어드레스에 대응하는 메모리 영역에 기입하는 기입 회로를 포함할 수 있다. A memory device, memory module and memory system are disclosed. A memory device according to an embodiment of the present disclosure includes a memory cell array including a plurality of memory areas; a data pattern providing unit providing a preset data pattern; and a write circuit configured to write a data pattern provided from the data pattern provider into a memory area corresponding to the address when a first write command and an address are received from an external device.
Description
본 개시는 반도체 메모리 장치에 관한 것으로서, 특정한 기입 커맨드가 수신되면, 입출력 회로를 사용하지 않고 미리 설정된 데이터를 메모리 셀 어레이에 기입하는 메모리 장치, 메모리 모듈 및 메모리 시스템에 관한 것이다. The present disclosure relates to a semiconductor memory device, and relates to a memory device, a memory module, and a memory system that write preset data into a memory cell array without using an input/output circuit when a specific write command is received.
컴퓨터, 스마트 와치, 스마트 폰, 태블릿 PC 등의 메인 메모리(main memory)로서 DRAM과 같은 반도체 메모리 장치가 널리 사용되고 있다. 하드웨어의 경량화 및 고속화와, 그리고 소프트웨어의 복잡화에 따라, 소비 전력이 감소되고, 동작 속도가 증가하는 메모리가 요구되고 있다. 이에 따라, 저전력으로 고속으로 동작하는 메모리 장치를 제공하기 위한 다양한 기술이 개발되고 있다. Semiconductor memory devices such as DRAM are widely used as main memories of computers, smart watches, smart phones, tablet PCs, and the like. As hardware becomes lighter and faster and software becomes more complex, there is a demand for a memory with reduced power consumption and increased operating speed. Accordingly, various technologies are being developed to provide a memory device that operates at low power and at high speed.
선행기술 1: 미국 특허출원공개공보 US2011-0239021호(2011.09.29)
선행기술 2: 미국 특허출원공개공보 US2014-0101381호(2014.04.10)Prior Art 1: US Patent Application Publication No. US2011-0239021 (2011.09.29)
Prior Art 2: US Patent Application Publication No. US2014-0101381 (2014.04.10)
본 개시의 기술적 사상이 해결하려는 기과제는 회로의 소비 전력이 감소되는 메모리 장치를 제공하는 것이다. 또한, 저전력 고속으로 동작하는 메모리 장치, 메모리 모듈 및 메모리 시스템을 제공하는 것이다. An object to be solved by the technical idea of the present disclosure is to provide a memory device in which circuit power consumption is reduced. Another object of the present invention is to provide a memory device, a memory module, and a memory system that operate at low power and high speed.
상기 기술적 과제를 달성하기 위한 본 개시의 실시 예에 따른 메모리 장치는 복수의 메모리 영역을 포함하는 메모리 셀 어레이; 미리 설정된 데이터 패턴을 제공하는 데이터 패턴 제공부; 및 외부 장치로부터 제1 기입 커맨드 및 어드레스 신호가 수신되면, 상기 데이터 패턴 제공부로부터 제공되는 데이터 패턴을 상기 어드레스 신호에 대응하는 메모리 영역에 기입하는 기입 회로를 포함할 수 있다. A memory device according to an embodiment of the present disclosure for achieving the above technical problem includes a memory cell array including a plurality of memory areas; a data pattern providing unit providing a preset data pattern; and a write circuit that writes the data pattern provided from the data pattern provider into a memory area corresponding to the address signal when a first write command and an address signal are received from an external device.
상기 기술적 과제를 달성하기 위한 본 개시의 실시 예에 따른 메모리 시스템은, 외부로부터 입력되는 입력 데이터를 미리 설정된 데이터 패턴과 비교하고, 상기 입력 데이터와 상기 데이터 패턴이 매칭되면, 패턴 기입 커맨드 및 어드레스 정보를 전송하는 메모리 컨트롤러; 및 상기 패턴 기입 커맨드에 응답하여, 상기 데이터 패턴을 내부적으로 생성하고, 상기 데이터 패턴을 상기 어드레스 정보에 대응하는 메모리 영역에 기입하는 메모리 장치를 포함할 수 있다. A memory system according to an embodiment of the present disclosure for achieving the above technical problem compares input data input from the outside with a preset data pattern, and when the input data and the data pattern match, a pattern write command and address information. a memory controller that transmits; and a memory device internally generating the data pattern in response to the pattern writing command and writing the data pattern into a memory area corresponding to the address information.
본 개시의 기술적 사상에 따른 메모리 장치, 메모리 모듈 및 메모리 시스템에 따르면, 메모리 장치에 기입될 데이터가 미리 설정된 데이터 패턴에 매칭되면, 메모리 장치가 외부로부터의 데이터 수신없이, 미리 설정된 데이터 패턴을 메모리 셀 어레이에 기입함으로써, 메모리 장치, 메모리 모듈 및 메모리 시스템의 소비 전력이 감소될 수 있다. 또한, 메모리 장치가 사용하는 데이터 버스의 점유 시간이 감소되므로, 데이터 버스의 효율이 증가될 수 있다. According to a memory device, a memory module, and a memory system according to technical concepts of the present disclosure, when data to be written in the memory device matches a preset data pattern, the memory device transmits the preset data pattern to a memory cell without receiving data from the outside. By writing to the array, power consumption of memory devices, memory modules and memory systems can be reduced. Also, since the occupancy time of the data bus used by the memory device is reduced, the efficiency of the data bus may be increased.
본 개시의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 개시의 실시예에 따른 메모리 시스템을 나타내는 블록도이다
도 2는 본 개시의 실시예에 따른 메모리 장치를 개략적으로 나타내는 블록도이다.
도 3은 본 개시의 실시예에 따른 메모리 장치의 일 구현예를 나타내는 블록도이다.
도 4는 도 3의 데이터 패턴 제공부의 일 예를 나타내는 도면이다.
도 5a 및 도 5b는 기입 커맨드를 설정하는 방법을 나타내는 도면이다.
도 6은 본 개시의 실시예에 따른 기입 커맨드의 설정의 예를 나타내는 테이블이다.
도 7은 본 개시의 실시예에 따른 기입 동작 시 메모리 장치의 입력 신호의 타이밍도를 나타낸다.
도 8은 본 개시의 실시예에 따른 기입 동작 시 어드레스 설정의 일 예를 나타내는 타이밍도이다.
도 9는 본 개시의 실시예에 따른 메모리 장치의 기입 방법을 나타내는 흐름도이다.
도 10은 본 개시의 실시예에 따른 메모리 컨트롤러의 일 구현예를 나타내는 블록도이다.
도 11은 본 개시의 실시예에 따른 메모리 컨트롤러의 동작 방법을 나타내는 흐름도이다.
도 12는 본 개시의 실시예에 따른 메모리 장치가 적용되는 전자 장치의 동작 방법을 나타내는 흐름도이다.
도 13은 본 개시의 실시예에 따른 메모리 장치의 기입 방법을 나타내는 흐름도이다.
도 14는 본 개시의 실시예에 따른 메모리 장치가 적용되는 전자 장치의 동작 방법을 나타내는 흐름도이다.
도 15a및 도 15b는 본 개시의 실시예에 따른 전자 장치에서, 메모리 컨트롤러 및 메모리 장치에 각각 구비되는 패턴 버퍼들이 업데이트 되는 실시예를 나타내는 도면이다.
도 16은, 본 개시의 실시예에 따른 기입 커맨드의 설정의 예를 나타내는 테이블이다.
도 17은 본 개시의 실시예에 따른 메모리 장치의 기입 방법을 나타내는 흐름도이다.
도 18은 본 개시의 실시예에 따른 메모리 장치가 적용되는 전자 장치의 동작 방법을 나타내는 흐름도이다.
도 19는 본 개시의 실시예에 따른 메모리 장치를 개략적으로 나타내는 블록도이다.
도 20은 본 개시의 실시예에 다른 메모리 시스템을 나타내는 블록도이다.
도 21은 본 개시의 실시예에 따른 메모리 컨트롤러의 일 구현예를 나타내는 블록도이다.
도 22는 본 개시의 실시예에 따른 기입 커맨드의 설정의 예를 나타내는 테이블이다.
도 23은 본 개시의 실시예에 따른 메모리 시스템을 나타내는 블록도이다.
도 24는 본 개시의 실시예에 따른 메모리 장치를 개략적으로 나타내는 블록도이다.
도 25는 본 개시의 실시예에 따른 메모리 컨트롤러를 개략적으로 나타내는 블록도이다.
도 26은 본 개시의 실시예에 따른 메모리 장치가 적용되는 전자 장치의 동작 방법을 나타내는 흐름도이다.
도 27은 본 개시의 실시예에 따른 메모리 시스템을 나타내는 블록도이다.
도 28은 메모리 시스템의 랭크에 인가되는 입력 신호의 타이밍도를 나타낸다.
도 29a 및 도 29b는 본 개시의 실시예에 따른 메모리 컨트롤러 및 메모리 모듈을 나타내는 블록도이다.
도 30은 복수의 반도체 레이어들을 구비하는 적층 구조의 메모리 장치를 도시한 블록도이다.
도 31은 본 개시의 실시예에 따른 컴퓨터 시스템을 나타내는 블록도이다.
도 32는 본 개시의 실시예에 따른 메모리 시스템을 포함하는 컴퓨터 시스템을 나타내는 블록도이다.In order to more fully understand the drawings cited in the detailed description of the present disclosure, a brief description of each drawing is provided.
1 is a block diagram illustrating a memory system according to an exemplary embodiment of the present disclosure;
2 is a block diagram schematically illustrating a memory device according to an exemplary embodiment of the present disclosure.
3 is a block diagram illustrating an implementation example of a memory device according to an exemplary embodiment of the present disclosure.
FIG. 4 is a diagram illustrating an example of the data pattern providing unit of FIG. 3 .
5A and 5B are diagrams illustrating a method of setting a write command.
6 is a table showing an example of setting a write command according to an embodiment of the present disclosure.
7 is a timing diagram of an input signal of a memory device during a write operation according to an embodiment of the present disclosure.
8 is a timing diagram illustrating an example of address setting during a write operation according to an embodiment of the present disclosure.
9 is a flowchart illustrating a writing method of a memory device according to an exemplary embodiment of the present disclosure.
10 is a block diagram illustrating an implementation example of a memory controller according to an exemplary embodiment of the present disclosure.
11 is a flowchart illustrating a method of operating a memory controller according to an exemplary embodiment of the present disclosure.
12 is a flowchart illustrating a method of operating an electronic device to which a memory device according to an exemplary embodiment of the present disclosure is applied.
13 is a flowchart illustrating a writing method of a memory device according to an exemplary embodiment of the present disclosure.
14 is a flowchart illustrating an operating method of an electronic device to which a memory device according to an exemplary embodiment of the present disclosure is applied.
15A and 15B are diagrams illustrating an embodiment in which a memory controller and pattern buffers respectively provided in the memory device are updated in an electronic device according to an embodiment of the present disclosure.
16 is a table showing an example of setting a write command according to an embodiment of the present disclosure.
17 is a flowchart illustrating a writing method of a memory device according to an exemplary embodiment of the present disclosure.
18 is a flowchart illustrating an operating method of an electronic device to which a memory device according to an exemplary embodiment of the present disclosure is applied.
19 is a block diagram schematically illustrating a memory device according to an exemplary embodiment of the present disclosure.
20 is a block diagram illustrating a memory system according to an exemplary embodiment of the present disclosure.
21 is a block diagram illustrating an implementation example of a memory controller according to an exemplary embodiment of the present disclosure.
22 is a table illustrating an example of setting a write command according to an embodiment of the present disclosure.
23 is a block diagram illustrating a memory system according to an exemplary embodiment of the present disclosure.
24 is a block diagram schematically illustrating a memory device according to an exemplary embodiment of the present disclosure.
25 is a schematic block diagram of a memory controller according to an exemplary embodiment of the present disclosure.
26 is a flowchart illustrating an operating method of an electronic device to which a memory device according to an embodiment of the present disclosure is applied.
27 is a block diagram illustrating a memory system according to an exemplary embodiment of the present disclosure.
28 is a timing diagram of input signals applied to ranks of a memory system.
29A and 29B are block diagrams illustrating a memory controller and a memory module according to an exemplary embodiment of the present disclosure.
30 is a block diagram illustrating a stacked memory device including a plurality of semiconductor layers.
31 is a block diagram illustrating a computer system according to an embodiment of the present disclosure.
32 is a block diagram illustrating a computer system including a memory system according to an exemplary embodiment of the present disclosure.
이하, 본 개시의 다양한실시예가 첨부된 도면과 연관되어 기재된다. 본 개시의 다양한 실시예는 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들이 도면에 예시되고 관련된 상세한 설명이 기재되어 있다. 그러나, 이는 본 개시의 다양한 실시예를 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 다양한 실시예의 사상 및 기술 범위에 포함되는 모든 변경 및/또는 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용되었다.Hereinafter, various embodiments of the present disclosure will be described in association with the accompanying drawings. Various embodiments of the present disclosure may have various changes and various embodiments, and specific embodiments are illustrated in the drawings and related detailed descriptions are described. However, this is not intended to limit the various embodiments of the present disclosure to specific embodiments, and should be understood to include all changes and/or equivalents or substitutes included in the spirit and technical scope of the various embodiments of the present disclosure. In connection with the description of the drawings, like reference numerals have been used for like elements.
본 개시의 다양한 실시예에서 사용될 수 있는“포함한다” 또는 “포함할 수 있다” 등의 표현은 개시(disclosure)된 해당 기능, 동작 또는 구성요소 등의 존재를 가리키며, 추가적인 하나 이상의 기능, 동작 또는 구성요소 등을 제한하지 않는다. 또한, 본 개시의 다양한 실시예에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. Expressions such as “include” or “may include” that may be used in various embodiments of the present disclosure indicate the existence of a function, operation, or component that is disclosed, and may include one or more additional functions, operations, or components. components, etc. are not limited. In addition, in various embodiments of the present disclosure, terms such as "include" or "have" are intended to designate that there are features, numbers, steps, operations, components, parts, or combinations thereof described in the specification, It should be understood that it does not preclude the possibility of the presence or addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.
본 개시의 다양한 실시예에서 “또는” 등의 표현은 함께 나열된 단어들의 어떠한, 그리고 모든 조합을 포함한다. 예를 들어, “A 또는 B”는, A를 포함할 수도, B를 포함할 수도, 또는 A 와 B 모두를 포함할 수도 있다.Expressions such as “or” in various embodiments of this disclosure include any and all combinations of the words listed together. For example, "A or B" may include A, may include B, or may include both A and B.
본 개시의 다양한 실시예에서 사용된 “제 1,”“제 2,”“첫째,”또는“둘째,”등의 표현들은 다양한 실시예들의 다양한 구성요소들을 수식할 수 있지만, 해당 구성요소들을 한정하지 않는다. 예를 들어, 상기 표현들은 해당 구성요소들의 순서 및/또는 중요도 등을 한정하지 않는다. 상기 표현들은 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 수 있다. 예를 들어, 제 1 사용자 기기와 제 2 사용자 기기는 모두 사용자 기기이며, 서로 다른 사용자 기기를 나타낸다. 예를 들어, 본 개시의 다양한 실시예의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다.Expressions such as “first,” “second,” “first,” or “second,” used in various embodiments of the present disclosure may modify various components of various embodiments, but limit the components. I never do that. For example, the above expressions do not limit the order and/or importance of corresponding components. The above expressions may be used to distinguish one component from another. For example, the first user device and the second user device are both user devices and represent different user devices. For example, a first element may be termed a second element, and similarly, a second element may also be termed a first element, without departing from the scope of rights of various embodiments of the present disclosure.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 새로운 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 새로운 다른 구성요소가 존재하지 않는 것으로 이해될 수 있어야 할 것이다. When an element is referred to as being "connected" or "connected" to another element, the element may be directly connected or connected to the other element, but with the other element. It should be understood that other new components may exist between the other components. On the other hand, when an element is referred to as being “directly connected” or “directly connected” to another element, it will be understood that no new element exists between the element and the other element. should be able to
본 개시의 다양한 실시예에서 사용한 용어는 단지 특정일 실시예를 설명하기 위해 사용된 것으로, 본 개시의 다양한 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. Terms used in various embodiments of the present disclosure are only used to describe a specific embodiment, and are not intended to limit various embodiments of the present disclosure. Singular expressions include plural expressions unless the context clearly dictates otherwise.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 개시의 다양한 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which various embodiments of the present disclosure belong.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 개시의 다양한 실시예에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related art, and unless explicitly defined in various embodiments of the present disclosure, ideal or excessively formal. not interpreted as meaning
도 1은 본 개시의 실시예에 따른 메모리 시스템을 나타내는 블록도이다.1 is a block diagram illustrating a memory system according to an exemplary embodiment of the present disclosure.
도 1을 참조하면, 메모리 시스템(1000)은 메모리 컨트롤러(200) 및 메모리 장치(100)를 포함할 수 있다. 메모리 컨트롤러(200)는 데이터 비교부(210)를 포함하고, 메모리 장치(100)는 메모리 셀 어레이(110), 독출/기입 회로(150) 및 데이터 패턴 제공부(180)를 포함할 수 있다. Referring to FIG. 1 , a
메모리 컨트롤러(200)는 메모리 장치(100)를 제어하기 위한 각종 신호들, 예컨대, 커맨드(CMD) 및 어드레스 신호(ADDR)를 메모리 장치(100)에 제공한다. 메모리 컨트롤러(200)는 메모리 장치(100)와 데이터(DATA)를 주고 받을 수 있다.The
메모리 장치(100)는 메모리 컨트롤러(200)로부터 수신되는 신호들에 기초하여, 메모리 셀 어레이(110)에 데이터(DATA)를 저장하거나, 메모리 셀 어레이(110)에 저장된 데이터를 메모리 컨트롤러(200)에 제공할 수 있다.The
메모리 장치(100)에 데이터(DATA) 기입 시, 메모리 컨트롤러(200)는 기입 커맨드, 기입될 메모리 영역을 나타내는 어드레스 신호(ADDR) 및 기입될 데이터(DATA)를 메모리 장치(100)에 전송할 수 있다. 한편, 본 개시의 실시예에 따른 메모리 컨트롤러(200)는 메모리 장치(100)에 기입될 데이터(DATA)가 미리 설정된 데이터 패턴과 매칭될 경우, 데이터(DATA)를 메모리 장치(100)에 제공하지 않고, 미리 설정된 데이터 패턴의 기입을 지시하는 커맨드 (예컨대 패턴 기입 커맨드) 및 어드레스 신호(ADDR)를 메모리 장치(100)에 제공할 수 있다. When data DATA is written in the
이때, 상기 미리 설정된 데이터 패턴은 메모리 컨트롤러(200)와 메모리 장치(100) 사이에서 동일하게 인식되는 데이터로서, 메모리 컨트롤러(200)와 메모리 장치(100)가 미리 규약한 데이터일 수 있다. 예를 들어, 데이터 패턴은 연속하는 비트가 '0' 또는 '1' 인 데이터일 수 있다. 또는 데이터 패턴은, 이전에 메모리 장치(100)에 기입 데이터로서 제공된 데이터일 수 있다. 또 다른 예로서, 데이터 패턴은 사용자에 의하여 설정된 데이터(이하 사용자 설정 데이터라고 함)일 수 있다. 사용자 설정 데이터는, 메모리 장치(100) 또는 메모리 시스템(1000)의 동작 중에 호스트에 의하여 설정된 데이터 패턴을 의미한다. 또한, 데이터 패턴은 메모리 장치(100)에 빈번하게 기입된 데이터일 수 있다. 이외에도, 데이터 패턴은 메모리 장치(100) 및 메모리 시스템(1000)의 동작 과정에서 설정되는 데이터일 수 있다. In this case, the preset data pattern is data that is recognized as identical between the
메모리 컨트롤러(200)는 미리 설정된 데이터 패턴의 기입을 지시하는 커맨드(예컨대 패턴 기입 커맨드) 및 어드레스 신호(ADDR)를 메모리 장치(100)에 제공할 수 있다. 이때, 메모리 장치(100)는 내부적으로, 상기 데이터 패턴을 생성하거나 또는 미리 저장된 데이터 패턴들 중 하나를 선택하고, 상기 데이터 패턴을 메모리 셀 어레이(110)에 기입할 수 있다. The
메모리 컨트롤러(200)는 데이터 비교부(210)를 구비할 수 있다. 데이터 비교부(210)는 외부 장치, 예컨대 호스트로부터 기입 요청이 수신되면, 기입이 요청된 데이터를 미리 설정된 데이터 패턴과 비교하고, 매칭여부를 판단할 수 있다. 기입이 요청된 데이터가 데이터 패턴과 매칭될 경우, 메모리 컨트롤러(200)는 패턴 기입 커맨드 및 어드레스(ADDR)를 메모리 장치(100)에 전송할 수 있다. 기입이 요청된 데이터가 데이터 패턴과 매칭되지 않을 경우, 메모리 컨트롤러(200)는 노멀 기입 커맨드, 어드레스 신호(ADDR) 및 데이터(DATA)를 메모리 장치(100)에 전송할 수 있다. 데이터(DATA)는 메모리 컨트롤러(200)와 메모리 장치(100) 사이에서 데이터를 전송하는 데이터 버스(미도시)를 통해 전송될 수 있다. The
메모리 장치(100)는 빠른 처리 속도가 요구되는 랜덤 액세스 메모리가 적용될 수 있다. 랜덤 액세스 메모리로서, 메모리 장치(100)는 DRAM(dynamic random access memory) 셀을 포함할 수 있다. 메모리 장치(100)는 DRAM 셀을 포함하는 DRAM 칩일 수 있다. 또는, 메모리 장치(100)는 MRAM(magnetic RAM) 셀, STT-MRAM(spin transfer torque magnetic RAM) 셀, PRAM(phase change RAM) 셀, RRAM(resistive RAM) 셀 등 랜덤 액세스가 가능한 다른 메모리 셀을 포함할 수도 있다. The
메모리 셀 어레이(110)는 복수의 메모리 셀들로 구성되는 복수의 메모리 영역을 포함할 수 있다. 전술한 바와 같이, 메모리 셀은 DRAM 셀 일수 있으며, 이외에도 랜덤 액세스가 가능한 다양한 종류의 메모리 셀을 포함할 수 있다. 또한, 메모리 셀은 각각이 단일 비트 데이터를 저장하는 싱글 레벨 셀 또는 적어도 두 비트 이상의 데이터를 저장하는 멀티 레벨 셀일 수 있다. The
데이터 패턴 제공부(180)는 미리 설정된 데이터 패턴을 생성하고, 상기 데이터 패턴을 독출/기입 회로(150)에 제공할 수 있다. 일 실시예에 있어서, 데이터 패턴 제공부(180)는 메모리 컨트롤러(200)로부터 수신되는 패턴 기입 커맨드에 응답하여, 데이터 패턴을 생성할 수 있다. The
독출/기입 회로(150)는 메모리 셀 어레이(110)에 데이터(DATA)를 기입하거나 메모리 셀 어레이(110)로부터 데이터(DATA)를 독출할 수 있다. 독출/기입 회로(150)는 메모리 컨트롤러(200)로부터 수신되는 어드레스(ADDR)에 대응하는 메모리 영역에 데이터(DATA)를 기입하거나, 상기 메모리 영역으로부터 데이터(DATA)를 독출할 수 있다. 본 실시예에 따라, 메모리 컨트롤러(200)로부터 패턴 기입 커맨드 및 어드레스(ADDR)가 수신되면, 독출/기입 회로(150)는 데이터 패턴 제공부(180)로부터 제공되는 데이터 패턴을 어드레스 신호(ADDR)에 대응하는 메모리 영역에 기입할 수 있다. The read/
본 실시예에 따른 메모리 시스템(1000)에서, 메모리 장치(100)에 기입요청된 데이터(DATA)가 미리 설정된 데이터 패턴과 매칭될 경우, 메모리 컨트롤러(200)는 데이터(DATA)의 전송 없이, 패턴 기입 커맨드 및 어드레스 신호(ADDR)를 메모리 장치(100)에 제공하고, 메모리 장치(100)는 메모리 컨트롤러(200)로부터 데이터(DATA)를 수신하지 않고, 패턴 기입 커맨드에 기초하여 내부적으로 생성되는 데이터 패턴 또는 내부에 저장된 데이터 패턴들 중 패턴 기입 커맨드에 응답하여 선택되는 데이터 패턴을 메모리 셀 어레이(110)에 기입할 수 있다. 이에 따라, 메모리 컨트롤러(200)와 메모리 장치(100) 사이에 데이터 송/수신이 발생하지 않으므로, 메모리 시스템(1000)의 소비 전력이 감소될 수 있다. 또한, 메모리 시스템(1000)의 기입 동작 시, 메모리 컨트롤러(200)와 메모리 장치(100) 사이의 데이터 전송 시간이 감소하므로, 메모리 시스템(1000)의 동작 속도가 증가할 수 있다. In the
도 2는 본 개시의 실시예에 따른 메모리 장치를 개략적으로 나타내는 블록도이다. 2 is a block diagram schematically illustrating a memory device according to an exemplary embodiment of the present disclosure.
도 2를 참조하면, 메모리 장치(100)는 메모리 셀 어레이(110), 제어 로직(120), 어드레스 레지스터(130), 로우 디코더(140), 칼럼 디코더(160), 독출/기입 회로(150), 입출력 버퍼(170) 및 데이터 패턴 제공부(180)를 포함할 수 있다. 이외에도, 메모리 장치(100)는 데이터의 기입 및 독출 동작에 사용되는 다양한 종류의 회로를 더 포함할 수 있다. Referring to FIG. 2 , the
메모리 셀 어레이(110)는 복수의 비트 라인(BL) 및 복수의 워드 라인(WL)이 교차되는 영역에 배치되는 메모리 셀들을 포함할 수 있다. 복수의 메모리 셀들이 메모리 영역을 구성할 수 있으며, 이때, 각각의 메모리 영역은 기입 단위의 메모리 셀들을 포함할 수 있다. The
제어 로직(120)은 커맨드 디코더(121) 및 모드 레지스터(122)를 포함하며, 메모리 장치(100)의 전반적인 동작을 제어할 수 있다. 커맨드 디코더(121)는 외부로부터 인가되는 커맨드(CMD) 관련 신호들, 예컨대, 칩 선택 신호(chip select; /CS), 로우 어드레스 스트로브 신호(Row Address Strobe; /RAS), 컬럼 어드레스 스트로브 신호(Column Address strobe; /CAS), 라이트 인에이블 신호(Write enable; /WE) 및 클록 인에이블 신호(Clock enable; CKE) 등을 디코딩하여, 디코딩된 명령 신호를 내부적으로 발생할 수 있다. 일 실시예에 있어서, 제어 로직(120)은 또한, 어드레스 신호(ADDR)를 디코딩하여, 기입 커맨드와 관련된 제어 신호를 발생할 수 있다. 모드 레지스터(122)는 메모리 장치(100)의 동작 모드를 지정하기 위한 모드 레지스터 신호 및 어드레스 신호(ADDR)에 응답하여, 내부 레지스터를 설정할 수 있다.The
어드레스 레지스터(130)는 외부에서 입력되는 어드레스 신호(ADDR)를 일시적으로 저장할 수 있다. 이후, 어드레스 레지스터(130)는 로우 어드레스(X-ADD)를 로우 디코더(140)에 전달하고, 컬럼 어드레스(Y-ADD)를 컬럼 디코더(160)에 전달할 수 있다. The
로우 디코더(140) 및 컬럼 디코더(160)는 각각 다수의 스위치들을 포함할 수 있다. 로우 디코더(140)는 로우 어드레스(X-ADDR)에 응답하여 워드라인(WL)을 선택하며, 컬럼 디코더(160)는 컬럼 어드레스(Y-ADDR)에 응답하여 비트 라인(BL)을 선택할 수 있다. Each of the
입출력 버퍼(170)는 메모리 셀 어레이(110)로부터 독출되는 데이터(DATA)를 메모리 장치(100)의 외부, 예컨대 메모리 컨트롤러(도 1의 200)에 제공하거나, 외부로부터 수신되는 데이터(DATA)를 독출/기입 회로(150)에 제공할 수 있다. 데이터(DATA)는 데이터 패드(DQ[m-1:0])(또는 데이터 핀이라고 함)를 통해 외부로 송신되거나 또는 외부로부터 수신될 수 있다. The input/
데이터 패턴 제공부(180)는 미리 설정된 데이터 패턴을 독출/기입 회로(150)에 제공할 수 있다. 데이터 패턴 제공부(180)는 외부, 예컨대 메모리 컨트롤러(200)로부터 수신되는 패턴 기입 커맨드에 응답하여, 데이터 패턴을 발생할 수 있다. 일 실시예에 있어서, 데이터 패턴 제공부(180)는 패턴 기입 커맨드에 응답하여, 미리 설정된 복수의 데이터 패턴 중 하나를 선택하여 출력할 수 있다. 예컨대, 데이터 패턴 제공부(180)는 복수의 데이터 패턴이 저장된 패턴 버퍼(미도시)로부터, 패턴 기입 커맨드에 대응하는 데이터 패턴을 선택하고, 선택된 데이터 패턴을 출력할 수 있다. The
독출/기입 회로(150)는 기입 회로(151) 및 독출 회로(152)를 포함하고, 메모리 셀 어레이(110)에 데이터를 기입하거나 메모리 셀 어레이(110)로부터 데이터를 독출할 수 있다. 예를 들어, 기입 회로(151)는 복수의 기입 드라이버를 포함하고, 독출 회로(152)는 복수의 센스 엠프를 포함할 수 있다. The read/
기입 회로(151)는 선택적으로 입출력 버퍼(170)로부터 제공되는 데이터(DATA), 다시 말해 외부로부터 수신되는 데이터 및 데이터 패턴 제공부(180)로부터 제공되는 데이터 패턴 중 하나를 메모리 셀 어레이(110)에 기입할 수 있다. 외부로부터 노멀 기입 커맨드가 수신되는 경우, 기입 회로(151)는 입출력 버퍼(170)로부터 제공되는 데이터(DATA)를 메모리 셀 어레이(110)에 기입하고, 외부로부터 패턴 기입 커맨드가 수신될 경우, 기입 회로(151)는 데이터 패턴 제공부(180)로부터 제공되는 데이터 패턴을 메모리 셀 어레이(110)에 기입할 수 있다. The
이와 같이, 본 개시의 실시예에 따른 메모리 장치(100)는, 메모리 컨트롤러(200)로부터 패턴 기입 커맨드 및 어드레스(ADDR)가 수신되면, 미리 설정된 데이터 패턴을 어드레스 신호(ADDR)에 대응하는 메모리 영역에 기입할 수 있다. 이에 따라, 미리 설정된 데이터 패턴 기입 시, 외부로부터 데이터가 수신되지 않으므로, 메모리 장치(100)의 소비 전력이 감소될 수 있다. 또한, 데이터(DATA)는 메모리 컨트롤러(200)로부터 데이터 버스를 통해 전송되는데, 미리 설정된 데이터 패턴 기입 시에는 메모리 컨트롤러(200)와 메모리 장치(100) 사이에 데이터의 송/수신이 발생하지 않아 데이터 버스가 사용되지 않으므로, 데이터 버스 점유 시간이 감소될 수 있다. 이때, 데이터 버스는, 다른 메모리 장치의 동작 또는 상기 메모리 장치(100)의 다른 동작(예컨대 독출 동작 및 연속하여 수행되는 기입 동작 등)에 이용될 수 있으므로, 데이터 버스 효율(Data Bus Utilization)이 증가될 수 있다. As described above, when a pattern write command and an address ADDR are received from the
도 3은 본 개시의 실시예에 따른 메모리 장치의 일 구현예를 나타내는 블록도이다. 도 3은 기입 동작과 관련하여 메모리 장치의 주요 구성을 나타내며, 도 2에 도시된 메모리 장치의 구성들은 도 3의 메모리 장치에 구비될 수 있다. 도 3을 참조하여 메모리 장치의 기입 동작을 상세하게 설명하기로 한다. 3 is a block diagram illustrating an implementation example of a memory device according to an exemplary embodiment of the present disclosure. FIG. 3 shows main configurations of a memory device in relation to a write operation, and the configurations of the memory device shown in FIG. 2 may be included in the memory device of FIG. 3 . A write operation of the memory device will be described in detail with reference to FIG. 3 .
도 3을 참조하면, 메모리 장치(100a)는 메모리 셀 어레이(110), 커맨드 디코더(121), 기입 회로(151), 입력 버퍼(171), 데이터 패턴 제공부(180) 및 선택기(190)를 포함할 수 있다. Referring to FIG. 3 , the
커맨드 디코더(121)는 외부, 예컨대 메모리 컨트롤러(도 1의 200)로부터 수신되는 기입 동작과 관련된 커맨드(CMD)를 디코딩하여 데이터 패턴 제공부(180) 및 선택기(190)의 동작을 제어하기 위한 제어 신호들을 생성할 수 있다. 기입 동작 시, 커맨드 디코더(121)는 노멀 기입 커맨드(NW) 및 패턴 기입 커맨드(PW) 중 하나를 수신할 수 있다. 따라서, 커맨드 디코더(121)는 노멀 기입 커맨드(NW) 및 패턴 기입 커맨드(PW)를 기초로, 데이터 패턴 제공부(180) 및 선택기(190)의 동작을 제어할 수 있다. The
데이터 패턴 제공부(180)는 패턴 기입 커맨드(PW)에 응답하여, 미리 설정된 데이터 패턴을 출력할 수 있다. 일 실시예에 있어서, 데이터 패턴 제공부(180)는 패턴 기입 커맨드(PW)에 대응하여, 미리 설정된 복수의 데이터 패턴들 중 하나를 선택적으로 생성할 수 있다. 예컨대, 미리 설정된 데이터 패턴이 동일한 비트 값, 예컨대 '0' 또는 '1'이 연속하는 데이터일 경우, 데이터 패턴 제공부(180)는 패턴 기입 커맨드(PW)에 따라, 동일한 비트값이 연속하여 반복되는 데이터 패턴을 생성할 수 있다. 실시예들에 있어서, 데이터 패턴 제공부(180)는 미리 설정된 복수의 데이터 패턴을 저장하는 패턴 버퍼(181)를 구비하고, 패턴 기입 커맨드(PW)에 응답하여, 패턴 버퍼(181)에 저장된 복수의 데이터 패턴들 중 하나를 출력할 수 있다.The
입력 버퍼(171)는 도 2의 입출력 버퍼(170)의 일 구성으로서, 데이터 패드(DQ)를 통해 외부로부터 데이터(DATA)를 수신할 수 있다. 입력 버퍼(171)는 상기 데이터(DATA)를 임시 저장하였다가 기입 회로(151)에 제공할 수 있다. The
선택기(190)는 선택 신호(SEL)에 기초하여 데이터 패턴 제공부(180)로부터 출력되는 데이터 패턴(DP) 및 입력 버퍼(171)로부터 출력되는 입력 데이터(IDATA) 중 하나를 선택적으로 기입 회로(151)로 출력할 수 있다. 선택기(190)는 패턴 기입 커맨드(PW) 및 노멀 기입 커맨드(NW)에 따라 레벨이 설정되는 선택 신호(SEL)에 응답하여, 데이터 패턴(DP) 또는 입력 입력 데이터(IDATA)를 선택적으로 출력할 수 있다. 예를 들어, 노멀 기입 커맨드(NW)가 수신되면, 선택 신호(SEL)는 제1 레벨, 예컨대 로직 하이이고, 패턴 기입 커맨드(PW)가 수신된 경우, 선택 신호(SEL)는 제2 레벨, 예컨대 로직 하이일 수 있다. 선택기(190)는 제1 레벨의 선택 신호(SEL)에 응답하여, 입력 데이터(IDATA)를 출력하고, 제2 레벨의 선택 신호(SEL)에 응답하여, 데이터 패턴(DP)을 출력할 수 있다. The
기입 회로(151)는 어드레스 신호(ADDR)에 대응하는 메모리 셀 어레이(110)의 메모리 영역에, 선택기(190)로부터 출력되는 데이터를 기입할 수 있다. The
노멀 기입이 수행될 경우, 메모리 장치(100a)는 외부, 예컨대 메모리 컨트롤러(도 1의 200)로부터 노멀 기입 커맨드(NW), 어드레스 신호(ADDR) 및 데이터(DATA)를 수신할 수 있다. 이때, 데이터 패턴 제공부(180)는 데이터 패턴을 출력하지 않는다. 선택기(190)는 입력 버퍼(171)로부터 출력되는 외부로부터 수신된 데이터(DATA)를 기입 회로(151)에 제공하고, 기입 회로(151)는 어드레스 신호(ADDR)에 대응하는 메모리 영역에 외부로부터 수신된 데이터(DATA)를 기입할 수 있다. When a normal write operation is performed, the
패턴 기입이 수행될 경우, 메모리 장치(100a)는 외부로부터 패턴 기입 커맨드(PW) 및 어드레스 신호(ADDR)를 수신할 수 있다. 데이터 패턴 제공부(180)는 패턴 기입 커맨드(PW)에 응답하여 데이터 패턴을 출력할 수 있다. 이때, 외부로부터 데이터(DATA)는 수신되지 않는다. 선택기(190)는 패턴 기입 제공부(180)로부터 출력되는 데이터 패턴(DP)을 기입 회로(151)에 제공할 수 있다. 기입 회로(151)는 어드레스 신호(ADDR)에 대응하는 메모리 영역에 데이터 패턴(DP)을 기입할 수 있다. When pattern writing is performed, the
도 4는 도 3의 데이터 패턴 제공부(180)의 일 예를 나타내는 도면이다.FIG. 4 is a diagram illustrating an example of the data
도 4를 참조하면, 데이터 패턴 제공부(180)는 패턴 버퍼(181)를 포함할 수 있다. 패턴 버퍼(181)는 미리 설정된 하나 이상의 데이터 패턴을 저장할 수 있다. 실시예들에 있어서, 데이터 패턴은 연속하는 비트가 '0' 또는 '1'로 설정된 데이터(181a)를 포함할 수 있다. 예를 들어, 데이터 패턴은 모든 비트가 '0'으로 설정되거나 또는 '1'로 설정된 데이터일 수 있다. Referring to FIG. 4 , the
실시예들에 있어서, 데이터 패턴은 메모리 셀 어레이(도 3의 110)에 이전에 기입된 데이터(181b)를 포함할 수 있다. 이전에 기입된 데이터(181b)는 메모리 컨트롤러(도 1의 200)로부터 노멀 기입 커맨드(NW)와 함께 수신되고, 메모리 셀 어레이(도 1의 110)에 기입된 데이터를 의미한다. 실시예에 있어서 데이터 패턴은 이전에 기입된 복수의 데이터(PWD1, PWD2, ...PWDk)를 포함할 수 있다. In some embodiments, the data pattern may include
실시예들에 있어서, 데이터 패턴은 메모리 컨트롤러(도 1의 200)로부터 패턴 버퍼(181)에 기입이 요청된 버퍼 데이터(181c)일 수 있다. 실시예에 있어서 데이터 패턴은 메모리 컨트롤러(200)가 패턴 버퍼(181)에 저장을 요청한 복수의 버퍼 데이터(UDD1, UDD2, ..., UDDz)를 포함할 수 있다. 예를 들어, 버퍼 데이터는 사용자에 의해 설정된 데이터 패턴 또는 메모리 장치(100)에 빈번하게 기입된 데이터 패턴을 포함할 수 있다. In example embodiments, the data pattern may be
실시예들에 있어서, 패턴 버퍼(181)는 전술한 다양한 종류의 데이터 패턴 중 적어도 하나의 데이터 패턴을 저장할 수 있다. 그러나 이는 예시적인 것이며, 패턴 버퍼(181)는 전술한 데이터 패턴 이외에도 다른 종류의 데이터 패턴을 저장할 수 있다. In some embodiments, the
데이터 패턴 제공부(180)는 패턴 기입 커맨드(PW)를 디코딩하여 생성된 내부 패턴 기입 제어 신호(IPW)에 응답하여, 패턴 버퍼(181)에 저장된 데이터 패턴 중 하나를 선택하여 출력할 수 있다. 다른 실시예에 있어서, 데이터 패턴 제공부(180)는 선택된 데이터 패턴을 확장하여, 새로운 데이터 패턴을 생성할 수 있다. 일 예로서, 기입이 요청된 메모리 영역의 용량이 64바이트(byte)이고, 선택된 데이터 패턴이 32 바이트(byte)일 경우, 데이터 패턴 제공부(180)는 선택된 데이터 패턴이 두번 반복되는 데이터 패턴을 생성하고, 생성된 데이터 패턴을 출력할 수 있다. The
도 5a 및 도 5b는 기입 커맨드를 설정을 위한 하는 방법을 나타내는 도면이다.5A and 5B are diagrams illustrating a method for setting a write command.
도 5a 및 도 5b를 참조하면, 기입 커맨드의 종류는 기입 지시를 나타내는 일반적인 기입 커맨드(WCMD) 및 기입 모드를 나타내는 기입 모드 커맨드(MCMD)의 조합에 의하여 설정될 수 있다. 노멀 기입 커맨드(NW) 및 패턴 기입 커맨드(PW)에서, 일반적인 기입 커맨드(WCMD)의 설정은 동일하고, 기입 모드 커맨드(MCMD)가 상이할 수 있다. 그러므로, 기입 모드 커맨드(MCMD)의 설정 값에 따라 노멀 기입 커맨드(NW) 및 패턴 기입 커맨드(PW)가 구분될 수 있다.Referring to FIGS. 5A and 5B , the type of write command may be set by a combination of a general write command (WCMD) indicating a write instruction and a write mode command (MCMD) indicating a write mode. In the normal write command NW and the pattern write command PW, the setting of the general write command WCMD may be the same, but the write mode command MCMD may be different. Therefore, the normal write command NW and the pattern write command PW can be distinguished according to the setting value of the write mode command MCMD.
일반적인 기입 커맨드(WCMD)는 메모리 장치(100)의 커맨드 핀들(또는 커맨드 패드)을 통해 수신되는 칩 선택 신호(/CS), 로우 어드레스 스트로브 신호(/RAS), 컬럼 어드레스 스트로브 신호(/CAS), 라이트 인에이블 신호(/WE)에 의해 설정될 수 있다. 예를 들어, 일반적인 기입 커맨드(WCMD)는 칩 선택 신호(/CS)가 로우 레벨이고, 로우 어드레스 스트로브 신호(/RAS)가 하이 레벨이고, 컬럼 어드레스 스트로브 신호(/CAS) 및 라이트 인에이블 신호(/WE)가 로우 레벨일 때, 설정될 수 있다. 일반적인 기입 커맨드(WCMD)는 클럭 신호(CLK)의 라이징 엣지(R edge)에 동기되어 수신될 수 있다. 그러나, 이에 제한되는 것은 아니며, 기입 커맨드(WCMD)(또는 다른 신호들)은 클럭 신호(CLK)의 라이징 엣지 및 폴링 엣지 및 적어도 하나에 동기되어 수신될 수 있다. 다만, 설명의 편의를 위하여, 이하, 신호들은 클럭 신호(CLK)의 라이징 엣지에 동기되어 수신되는 것을 가정하여 설명하기로 한다.The general write command WCMD includes a chip select signal (/CS), a row address strobe signal (/RAS), a column address strobe signal (/CAS) received through command pins (or command pads) of the
한편, 기입 모드 커맨드(MCMD)는 메모리 장치(100)의 어드레스 핀들(CA Pins)을 통해 수신되는 신호에 의해 설정될 수 있다. 도 5a를 참조하면, 메모리 장치(100)는 12개의 어드레스 핀들(CA[11:0])을 포함하고, 이 중 9개의 어드레스 핀들(CA[8:0])을 통해 어드레스 신호(A0~A8), 예컨대 컬럼 어드레스 신호가 수신되고, 나머지 3 개의 어드레스 핀들(CA[11:9])을 통해 기입 모드 커맨드(MCMD)가 수신될 수 있다. 어드레스 핀들(CA[11:9])을 통해 수신되는 모드 신호(M0, M1, M2)의 설정 값에 따라, 노말 기입 커맨드 또는 패턴 기입 커맨드가 설정될 수 있다. Meanwhile, the write mode command MCMD may be set by a signal received through the address pins CA Pins of the
도 5b를 참조하면, 메모리 장치(100)는 6개의 어드레스 핀들(CA[5:0])을 포함하고, 6개의 어드레스 핀들을 통해 클럭 신호(CLK)의 두번의 라이징 엣지에 동기되어, 어드레스 신호 및 기입 모드 커맨드(MCMD)가 수신될 수 있다. 클럭 신호(CLK)의 제1 라이징 엣지(REdge1)에 동기되어, 6개의 어드레스 핀들(CA[5:0])을 통해 제1 내지 제6 어드레스 신호(A0~A5)가 수신되고, 클럭 신호(CLK)의 제2 라이징 엣지(REdge2)에 동기되어, 3개의 어드레스 핀들(CA[2:0])을 통해 제6 내지 제9 어드레스 신호(A6~A8)가 수신되고, 나머지 3개의 어드레스 핀들(CA[5:3])을 통해 모드 신호(M0, M1, M2)가 수신될 수 있다. Referring to FIG. 5B , the
도 6은 본 개시의 실시예에 따른 기입 커맨드의 설정의 예를 나타내는 테이블이다.6 is a table showing an example of setting a write command according to an embodiment of the present disclosure.
도 5a 및 도 5b를 참조하여 전술한 바와 같이, 기입 커맨드는 일반적인 기입 커맨드 및 기입 모드 커맨드(MCMD)의 조합에 의하여 설정될 수 있다. 기입 모드 커맨드(MCMD)는 어드레스 신호의 전송에 사용되지 않는 메모리 장치의 어드레스 핀들(또는 어드레스 패드), 예컨대 일부 어드레스 핀들(CAx, CAy, CAz)을 통해 전송될 수 있다. As described above with reference to FIGS. 5A and 5B , the write command may be set by a combination of a general write command and a write mode command (MCMD). The write mode command MCMD may be transmitted through address pins (or address pads) of the memory device not used for transmission of address signals, for example, some address pins CAx, CAy, and CAz.
도 6을 참조하면, 어드레스 핀들(CAx, CAy, CAz)을 통해 '0 0 0'의 모드 신호가 수신되는 경우는 노멀 기입 커맨드(NW)가 설정되고, 그 이외의 경우, 패턴 기입 커맨드가 설정될 수 있다. 노멀 기입 커맨드(NW)에 응답하여, 메모리 장치(도 1의 100)는 메모리 컨트롤러(200)로부터 수신되는 데이터를 메모리 셀 어레이(110)에 기입할 수 있다. 이때, 메모리 장치(100)가 데이터를 수신하므로, 데이터 패드(DQ)가 사용될 수 있다. 데이터 패드(DQ)는 복수개의 패드들을 포함한다. Referring to FIG. 6, when the mode signal '0 0 0' is received through the address pins CAx, CAy, and CAz, the normal write command NW is set, and in other cases, the pattern write command is set. It can be. In response to the normal write command NW, the memory device ( 100 in FIG. 1 ) may write data received from the
일 실시예에 있어서, 노멀 기입 커맨드(NW)에 응답하여, 메모리 장치(도 1의 100)는 메모리 컨트롤러(200)로부터 수신되는 데이터를 메모리 셀 어레이(110) 뿐만 아니라, 패턴 버퍼(181)에도 저장할 수 있다. In one embodiment, in response to the normal write command NW, the memory device (100 in FIG. 1) transfers data received from the
패턴 기입 커맨드(PW)에 응답하여, 메모리 장치(도 1의 100)는 내부적으로 미리 설정된 데이터 패턴을 메모리 셀 어레이(110)에 기입할 수 있다. 이때, 메모리 장치(100)가 데이터를 수신하지 않으므로, 데이터 패드(DQ)가 사용되지 않는다.In response to the pattern write command PW, the memory device ( 100 in FIG. 1 ) may internally write a preset data pattern into the
한편, 어드레스 핀들(CAx, CAy, CAz)을 통해 수신되는 신호의 설정값에 따라, 복수개의 패턴 기입 커맨드(PW1, PW2, PW3, PW4)들 중 하나가 설정될 수 있다. 예를 들어, 어드레스 핀들(CAx, CAy, CAz)을 통해 수신되는 신호가 '0 0 1' 또는 '0 1 0'일 경우, 제1 패턴 기입 커맨드(PW1) 또는 제2 패턴 기입 커맨드(PW2)가 설정되고, 제1 패턴 기입 커맨드(PW1) 또는 제2 패턴 기입 커맨드(PW2)에 응답하여, 메모리 장치(100)는 모든 비트가 '0'또는 '1'로 설정된 데이터 패턴을 메모리 셀 어레이(110)에 기입할 수 있다. 다른 예로서, 어드레스 핀들(CAx, CAy, CAz)을 통해 수신되는 신호가 '0 1 1'일 경우, 제3 패턴 기입 커맨드(PW3)가 설정되고, 신호가 '1 0 0'으로 설정될 경우, 제4 패턴 기입 커맨드(PW4)가 설정될 수 있다. 메모리 장치(100)는 제3 패턴 기입 커맨드(PW3)에 응답하여, 이전에 기입이 수행된 데이터를 데이터 패턴으로서 메모리 셀 어레이(110)에 기입할 수 있다. 또한 메모리 장치(100)는 제4 패턴 기입 커맨드(PW4)에 응답하여, 버퍼 데이터를 메모리 셀 어레이(110)에 기입할 수 있다. 도 4를 참조하여 전술한 바와 같이, 버퍼 데이터는 메모리 컨트롤러(도 1의 200)로부터 패턴 버퍼(181)에 기입이 요청되어 패턴 버퍼(181)에 저장된 데이터 패턴으로서, 사용자에 의해 설정된 데이터 패턴(user defined data pattern) 또는 메모리 장치(100)에 빈번하게 기입된 데이터 패턴을 포함할 수 있다. Meanwhile, one of a plurality of pattern write commands PW1 , PW2 , PW3 , and PW4 may be set according to a set value of a signal received through the address pins CAx , CAy , and CAz. For example, when signals received through the address pins CAx, CAy, and CAz are '0 0 1' or '0 1 0', the first pattern write command PW1 or the second pattern write command PW2 is set, and in response to the first pattern write command PW1 or the second pattern write command PW2, the
한편, 메모리 컨트롤러(200)는 버퍼 데이터를 메모리 장치(100)의 패턴 버퍼(181)에 저장하기 위하여, 패턴 버퍼(181)에 버퍼 데이터를 기입하는 것을 지시하는 패턴 저장 커맨드(PS) 및 데이터, 다시 말해 버퍼 데이터를 메모리 장치(100)에 송신하고, 메모리 장치(100)는 패턴 저장 커맨드(PS)가 수신되면, 데이터 패드(DQ)를 통해 수신되는 버퍼 데이터를 패턴 버퍼(181)에 저장할 수 있다. 패턴 저장 커맨드(PS)는 기입 커맨드들 중 하나로서 제공될 수 있다. 도시된 바와 같이, 어드레스 핀들(CAx, CAy, CAz)을 통해 '1 0 1'의 모드 신호가 수신되는 경우는 패턴 저장 커맨드(PS)가 설정될 수 있다.Meanwhile, in order to store the buffer data in the
이상, 도 6을 참조하여, 기입 커맨드를 예시적으로 설명하였다. 그러나 이에 제한되는 것은 아니며, 노멀 기입 커맨드 및 패턴 기입 커맨드를 나타내는 신호는 다양하게 설정될 수 있다. In the above, the write command has been exemplarily described with reference to FIG. 6 . However, it is not limited thereto, and signals indicating the normal write command and the pattern write command may be set in various ways.
도 7은 본 개시의 실시예에 따른 기입 동작 시 메모리 장치의 입력 신호의 타이밍도를 나타낸다.7 is a timing diagram of an input signal of a memory device during a write operation according to an embodiment of the present disclosure.
도 7을 참조하면, 기입 동작 시, 클럭 신호(CLK)의 라이징 엣지에 동기되어, 기입을 나타내는 커맨드(예컨대 도 5a 및 도 5b의 일반적인 기입 커맨드 WCMD), 어드레스 신호(ADDR) 및 기입 커맨드(PW, NW)가 수신될 수 있다. 기입 커맨드(PW, NW)는 어드레스 핀들(CA[n-1:0])의 일부를 통해 수신될 수 있다. 패턴 기입 커맨드(PW)가 수신될 경우, 데이터는 수신되지 않는다. 노멀 기입 커맨드(NW)가 수신될 경우, 외부, 예컨대 메모리 컨트롤러(도 1의 200)로부터 데이터(Din)가 수신될 수 있다. 데이터(Din)는 노멀 기입 커맨드(NW)가 수신된 후, 소정의 시간 이후에 수신될 수 있다. 도시된 바와 같이, 패턴 기입 커맨드(PW)에 따른 제1 기간(T1)에는 데이터(Din)가 수신되는 시간이 요구되지 않는다. 따라서, 상대적으로 짧은 시간에 기입 명령이 수행될 수 있다. 또한, 데이터를 수신하지 않으므로, 데이터 수신에 따른 메모리 장치의 소비전력이 감소될 수 있다. Referring to FIG. 7 , during a write operation, a command indicating write (for example, a general write command WCMD of FIGS. 5A and 5B ), an address signal ADDR, and a write command PW are synchronized with the rising edge of the clock signal CLK. , NW) may be received. The write commands PW and NW may be received through some of the address pins CA[n−1:0]. When the pattern write command PW is received, data is not received. When the normal write command NW is received, data Din may be received from the outside, for example, the memory controller ( 200 in FIG. 1 ). The data Din may be received a predetermined time after the normal write command NW is received. As shown, the time for receiving the data Din is not required in the first period T1 according to the pattern write command PW. Thus, a write command can be executed in a relatively short time. Also, since data is not received, power consumption of the memory device according to data reception may be reduced.
한편, 도 7에서는, 기입 동작 시, 하나의 메모리 영역을 나타내는 어드레스 신호(ADDR)가 전송되는 경우가 도시되었다. 그러나 이에 제한되는 것은 아니고, 기입 동작 시, 복수의 메모리 영역을 나타내는 어드레스 신호(ADDR)가 전송될 수 있다. 이에 대하여 도 8을 참조하여 설명하기로 한다.Meanwhile, in FIG. 7 , a case in which an address signal ADDR representing one memory area is transmitted during a write operation is shown. However, the present invention is not limited thereto, and during a write operation, address signals ADDR indicating a plurality of memory areas may be transmitted. This will be described with reference to FIG. 8 .
도 8은 본 개시의 실시예에 따른 기입 동작 시 어드레스 설정의 일 예를 나타내는 타이밍도이다.8 is a timing diagram illustrating an example of address setting during a write operation according to an embodiment of the present disclosure.
도 8을 참조하면, 기입 동작 시, 메모리 장치(100)는 시작 어드레스 신호(Start ADDR) 및 종료 어드레스 신호(End ADDR)를 수신할 수 있다. 시작 어드레스 신호(Start ADDR)는 메모리 셀 어레이(도 1의 110)내에서, 데이터가 저장되는 시작 지점을 나타내고, 종료 어드레스 신호(End ADDR)는 데이터의 저장이 완료되는 지점을 나타낸다. 어드레스 신호들은 클럭 신호(CLK)의 두번의 라이징 엣지에 동기되어 전송될 수 있다. 예컨대, 클럭 신호(CLK)의 제1 및 제2 라이징 엣지에 동기되어, 시작 어드레스 신호(Start ADDR)가 수신될 수 있다. 일 실시예에 있어서, 도 5b를 참조하여 설명한 바와 같이, 패턴 기입 커맨드(PW)는 어드레스 신호와 함께 수신될 수 있다. 패턴 기입 커맨드(PW)는 클럭 신호(CLK)의 제2 라이징 엣지에 동기되어, 시작 어드레스 신호(Start ADDR)와 함께 수신될 수 있다. 이후, 클럭 신호(CLK)의 다음 라이징 엣지, 예컨대 제3 라이징 엣지 및 제4 라이징 엣지에 동기되어, 종료 어드레스 신호(End ADDR)가 수신될 수 있다. 메모리 장치(100)는 시작 어드레스(Start ADDR) 부터 종료 어드레스(End ADDR)에 대응하는 복수의 메모리 영역에 데이터 패턴을 기입할 수 있다.Referring to FIG. 8 , during a write operation, the
한편, 다른 실시예로서, 시작 어드레스 신호(Start ADDR) 및 패턴 기입 커맨드(PW)가 수신된 후, 제3 라이징 엣지에 동기되어, 길이 정보(length information)가 수신될 수 있다. 길이 정보는 데이터 패턴이 기입될 메모리 영역의 길이에 대응하는 정보를 포함할 수 있다. 메모리 장치(100)는 시작 어드레스 신호(Start ADDR)에 대응하는 메모리 영역부터, 상기 길이 정보에 따라 설정되는 메모리 영역까지 내부에서 생성되는 데이터 패턴을 기입할 수 있다. Meanwhile, as another embodiment, length information may be received in synchronization with the third rising edge after the start address signal Start ADDR and the pattern writing command PW are received. The length information may include information corresponding to the length of a memory area in which a data pattern is to be written. The
도 9는 본 개시의 실시예에 따른 메모리 장치의 기입 방법을 나타내는 흐름도이다.9 is a flowchart illustrating a writing method of a memory device according to an exemplary embodiment of the present disclosure.
도 9를 참조하면, 메모리 장치(100)는 데이터 패턴을 설정한다(S110). 데이터 패턴은 메모리 컨트롤러(200)와 메모리 장치(100) 상호간에 미리 규약된 데이터일 수 있다. 예를 들어, 데이터 패턴은 연속하는 비트가 '0' 이거나 또는 '1'인 데이터일 수 있다. 또는 데이터 패턴은, 이전에 메모리 장치(100)에 기입 데이터로서 제공된 데이터일 수 있다. 또 다른 예로서, 데이터 패턴은 사용자에 의하여 설정된 데이터 또는 메모리 장치(100)에 대한 기입이 빈번하게 수행된 데이터일 수 있다. 이외에도, 데이터 패턴은 메모리 장치(100) 및 메모리 시스템(1000)의 동작 과정에서 설정되는 데이터일 수 있다. 메모리 장치(100)는 내부에 구비되는 버퍼, 예컨대 패턴 버퍼(도 3의 181)에 데이터 패턴을 저장할 수 있다. Referring to FIG. 9 , the
메모리 컨트롤러(200)로부터 패턴 기입 커맨드 및 어드레스 신호가 수신되면(S120), 메모리 장치(100)는 패턴 기입 커맨드에 응답하여, 상기 데이터 패턴, 다시 말해 미리 설정된 데이터 패턴을 생성할 수 있다(S130). 메모리 장치(100)는 패턴 버퍼(181)로부터 패턴 기입 커맨드에 대응하는 데이터 패턴을 선택하여 출력하거나, 또는 상기 선택된 데이터 패턴을 확장하여 새로운 데이터 패턴을 생성할 수 있다.When a pattern write command and an address signal are received from the memory controller 200 (S120), the
메모리 장치(100)는 수신된 어드레스 신호에 대응하는 메모리 영역에 상기 데이터 패턴을 기입한다(S140). The
이와 같이, 메모리 장치(100)는 메모리 컨트롤러로부터 패턴 기입 커맨드가 수신되면, 미리 설정된 데이터 패턴을 내부적으로 발생하고, 상기 데이터 패턴을 메모리 셀 어레이에 기입함으로써, 메모리 컨트롤러(200)로부터 별도의 데이터를 수신하지 않고, 기입 동작을 수행할 수 있다. In this way, when a pattern writing command is received from the memory controller, the
도 10은 본 개시의 실시예에 따른 메모리 컨트롤러의 일 구현예를 나타내는 블록도이다.10 is a block diagram illustrating an implementation example of a memory controller according to an exemplary embodiment of the present disclosure.
도 10을 참조하면, 메모리 컨트롤러(200)는 데이터 비교부(210) 및 패턴 버퍼(220)를 포함할 수 있다. 일 실시예에 있어서, 패턴 버퍼(220)는 데이터 비교부(210)와 동일한 기능 블록으로서 구현될 수 있다. 다른 실시예에 있어서, 메모리 컨트롤러(200)에 구비되는 버퍼의 일부가 상기 패턴 버퍼(220)로 사용될 수 있다.Referring to FIG. 10 , the
패턴 버퍼(220)에는 미리 설정된 데이터 패턴이 저장될 수 있다. 일 실시예에 있어서, 복수의 데이터 패턴(Pattern 1~Pattern m)이 패턴 버퍼(220)에 저장될 수 있다. 복수의 데이터 패턴(Pattern 1~Pattern m)은 메모리 장치(도 3의 100a)의 데이터 패턴 제공부(180)의 패턴 버퍼(181)에 저장된 복수의 데이터 패턴들(도 4의 181a, 181b, 181c)과 실질적으로 동일할 수 있다. 실시예들에 있어서, 복수의 데이터 패턴(Pattern 1~Pattern m)은 모든 비트가 '0' 또는 '1'로 설정된 데이터를 포함할 수 있다. 실시예들에 있어서, 복수의 데이터 패턴(Pattern 1~Pattern m)은 이전에 메모리 장치(100)에 송부된 기입 데이터들을 포함할 수 있다. 실시예들에 있어서, 복수의 데이터 패턴(Pattern 1~Pattern m)은 사용자 설정 데이터로서, 호스트(Host)로부터 제공된 데이터를 포함할 수 있다. A preset data pattern may be stored in the
데이터 비교부(210)는 호스트(Host)로부터 기입 요청과 함께, 어드레스 정보(ADD) 및 데이터(DATA)가 수신되면, 상기 데이터(DATA)를 패턴 버퍼(220)에 저장된 데이터 패턴과 비교할 수 있다. 일 실시예에 있어서, 데이터 비교부(210)는 데이터(DATA)를 복수의 데이터 패턴(Pattern 1~Pattern m)과 비교할 수 있다. 데이터(DATA)가 데이터 패턴, 예컨대 복수의 데이터 패턴(Pattern 1~Pattern m) 중 하나와 매칭되면, 메모리 컨트롤러(200)는 매칭된 데이터 패턴에 상응하는 패턴 기입 커맨드(PW)를 생성할 수 있다. 이와 관련한 실시예는 도 6을 참조하여 설명한 바 자세한 설명은 생략하기로 한다. When address information ADD and data DATA are received along with a write request from the host, the
메모리 컨트롤러(200)는 커맨드(PW) 및 어드레스 신호(ADDR)를 메모리 장치(100)로 전송할 수 있다. 이때, 어드레스 신호(ADDR)는 호스트(Host)로부터 수신된 어드레스 정보(ADD)에 대응하는 메모리 장치의 메모리 영역을 나타낸다. The
한편, 데이터(DATA)가 데이터 패턴과 매칭되지 않으면, 메모리 컨트롤러(200)는 노멀 기입 커맨드(NW)를 생성할 수 있다. 메모리 컨트롤러(200)는 노멀 기입 커맨드(NW), 어드레스 신호(ADDR) 및 데이터(DATA)를 메모리 장치(100)로 전송할 수 있다. Meanwhile, if the data DATA does not match the data pattern, the
도 11은 본 개시의 실시예에 따른 메모리 컨트롤러의 동작 방법을 나타내는 흐름도이다. 11 is a flowchart illustrating a method of operating a memory controller according to an exemplary embodiment of the present disclosure.
도 11을 참조하면, 메모리 컨트롤러(200)는 데이터 패턴을 설정한다(S210). 데이터 패턴은 메모리 장치(100)와 메모리 컨트롤러(200) 상호간에 미리 규약된 데이터일 수 있다. 예를 들어, 데이터 패턴은 연속하는 비트가 '0'이거나 또는 '1'인 데이터일 수 있다. 또는 데이터 패턴은, 이전에 메모리 장치(100)에 기입 데이터로서 송부된 데이터일 수 있다. 또 다른 예로서, 데이터 패턴은 사용자에 의하여 설정된 데이터로서, 호스트(Host)로부터 수신된 데이터일 수 있다. 또 다른 예로서, 데이터 패턴은, 메모리 장치(100)에 기입이 빈번하게 수행되는 데이터로서, 메모리 컨트롤러(200)는 메모리 장치(100)에 기입이 요청되는 데이터를 분석하고, 미리 설정된 임계값 이상 기입이 요청된 데이터를 자주 사용되는 데이터로 판단하고, 상기 데이터를 데이터 패턴으로서 설정할 수 있다. 이외에도, 데이터 패턴은 메모리 컨트롤러(200) 및 메모리 시스템(1000)의 동작 과정에서 설정되는 다양한 종류의 데이터일 수 있다. 메모리 컨트롤러(200)는 데이터 패턴에 대한 정보를 저장하거나, 또는 데이터 패턴을 내부에 구비되는 패턴 버퍼(220)에 저장할 수 있다. 메모리 컨트롤러(200)는 상기 데이터 패턴에 대한 정보 또는 데이터 패턴을 메모리 장치(100)에 제공하고, 메모리 장치(100)는 도 9의 S110 단계에서, 메모리 컨트롤러(200)로부터 수신되는 데이터 패턴에 대한 정보 또는 데이터 패턴을 내부에 구비되는 패턴 버퍼(도 3의 181)에 저장함으로써, 데이터 패턴을 설정할 수 있다. Referring to FIG. 11 , the
호스트로부터 기입 요청과 함께, 데이터 및 어드레스 정보가 수신되면(S220), 메모리 컨트롤러(200)는 수신된 데이터가 미리 설정된 데이터 패턴과 매칭되는지 비교한다(S230). 수신된 데이터가 데이터 패턴과 매칭되면, 메모리 컨트롤러(200)는 메모리 장치(100)에 패턴 기입 커맨드 및 어드레스 신호를 송부한다(S240). 수신된 데이터가 데이터 패턴과 매칭되지 않으면, 메모리 컨트롤러(200)는 메모리 장치(100)에 노멀 기입 커맨드, 상기 데이터 및 어드레스 신호를 송부한다(S250). When data and address information are received along with a write request from the host (S220), the
도 12는 본 개시의 실시예에 따른 메모리 장치가 적용되는 전자 장치의 동작 방법을 나타내는 흐름도이다. 전자 장치는 호스트(300), 메모리 컨트롤러(200) 및 메모리 장치(100)를 포함하며, 도 12는 전자 장치의 노멀 동작 들 중 기입 동작을 나타낸다. 12 is a flowchart illustrating a method of operating an electronic device to which a memory device according to an exemplary embodiment of the present disclosure is applied. The electronic device includes a
도 12를 참조하면, 메모리 장치(100) 및 메모리 컨트롤러(200)는 데이터 패턴을 설정한다(S311, S312). 도 9 내지 도 11을 참조하여 전술한 바와 같이, 데이터 패턴은 메모리 장치(100)와 메모리 컨트롤러(200)사이에서 상호 규약된 데이터로서, 메모리 컨트롤러(200)와 메모리 장치(100)에서 공통적으로 설정될 수 있다. Referring to FIG. 12 , the
호스트(300)로부터 기입 요청이 수신되면(S320), 메모리 컨트롤러(200)는 수신된 데이터를 미리 설정된 데이터 패턴과 비교하고, 매칭 여부를 판단한다(S330). 데이터가 매칭되지 않으면, 메모리 컨트롤러(200)는 메모리 장치(100)에 노멀 기입 커맨드(NW), 어드레스 신호(ADDR) 및 데이터(DATA)를 전송한다(S341). 메모리 장치(100)는 어드레스 신호(ADDR)에 대응하는 메모리 영역에 상기 데이터(DATA)를 기입한다(S342). When a write request is received from the host 300 (S320), the
한편, 수신된 데이터가 미리 설정된 데이터 패턴과 매칭되면, 메모리 컨트롤러(200)는 메모리 장치(100)에 패턴 기입 커맨드(PW) 및 어드레스 신호(ADDR)를 전송할 수 있다(S351). 메모리 장치(100)는 패턴 기입 커맨드(PW)에 응답하여, 데이터 패턴을 생성할 수 있다(S352). 이때 상기 데이터 패턴은 S312 단계에서 미리 설정된 데이터 패턴들 중 하나를 기초로 생성될 수 있다. 일 실시예에 있어서, 생성되는 데이터 패턴은 S312 단계에서, 미리 설정된 복수의 데이터 패턴들 중 하나일 수 있다. 메모리 장치(100)는 어드레스 신호(ADDR)에 대응하는 메모리 영역에 데이터 패턴을 기입할 수 있다(S353). Meanwhile, when the received data matches a preset data pattern, the
도 13은 본 개시의 실시예에 따른 메모리 장치의 기입 방법을 나타내는 흐름도이다. 도 13의 기입 방법은 도 9의 기입 방법의 일 구현예로서, 이전에 메모리 장치(100) 기입된 데이터를 데이터 패턴으로 설정하는 경우의 메모리 장치의 기입 방법을 나타낸다. 13 is a flowchart illustrating a writing method of a memory device according to an exemplary embodiment of the present disclosure. The writing method of FIG. 13 is an implementation example of the writing method of FIG. 9 and shows a writing method of a memory device when data previously written in the
도 13을 참조하면, 메모리 장치(100)는 메모리 컨트롤러(200)로부터 기입 커맨드, 제1 어드레스(또는 어드레스 신호) 및 데이터를 수신한다(S410). 이때, 상기 기입 커맨드는 노멀 기입 커맨드일 수 있다. 메모리 장치(100)는 내부 버퍼, 예컨대 패턴 버퍼(도 3의 181)에 상기 데이터를 저장하고(S420), 제1 어드레스에 대응하는 메모리 영역에 상기 데이터를 기입할 수 있다(S430). 일 실시예에 있어서, S410 단계 및 S420 단계가 복수회 수행되어, 내부 버퍼에 복수의 데이터가 저장될 수 있다. 일 실시예에 있어서, 내부 버퍼의 용량이 제한적이므로, 상대적으로 늦게 메모리 장치(100)에 수신된 데이터, 다시 말해 현재를 기준으로 가까운 시기에 수신된 데이터들이 내부 버퍼에 업데이트될 수 있다. Referring to FIG. 13 , the
이후, 패턴 기입 커맨드 및 제2 어드레스가 수신되면(S440), 메모리 장치(100)는 내부 버퍼에 저장된 데이터를 기초로 데이터 패턴을 생성할 수 있다(S450). 메모리 장치(100)는 패턴 기입 커맨드에 응답하여, 내부 버퍼에 저장된 복수의 데이터 중 하나를 선택하고, 선택된 데이터를 데이터 패턴으로서 출력할 수 있다. Then, when the pattern write command and the second address are received (S440), the
메모리 장치(100)는 제2 어드레스에 대응하는 메모리 영역에 상기 데이터 패턴을 기입할 수 있다(S460). 제2 어드레스는 제1 어드레스와 동일한 메모리 영역을 나타낼 수 있다. 다른 예로서, 제2 어드레스는 제1 어드레스와 상이한 메모리 영역을 나타낼 수 있다. 예컨대, 제2 어드레스는 제1 어드레스에 인접한 메모리 영역을 나타낼 수 있다. The
도 14는 본 개시의 실시예에 따른 메모리 장치가 적용되는 전자 장치의 동작 방법을 나타내는 흐름도이다. 전자 장치는 도 13의 기입 방법에 따라 기입 동작이 수행되는 메모리 장치를 포함할 수 있다. 전자 장치는 호스트(300), 메모리 컨트롤러(200) 및 메모리 장치(100)를 포함하며, 도 14는 전자 장치의 노멀 동작 들 중 기입 동작을 나타낸다. 본 실시예에서, 메모리 컨트롤러(200) 및 메모리 장치(100)는 각각 내부에 데이터 패턴을 저장하는 패턴 버퍼를 포함할 수 있으며, 메모리 컨트롤러(200)의 패턴 버퍼를 제1 버퍼로, 메모리 장치(100)의 패턴 버퍼를 제2 버퍼로 지칭하기로 한다.14 is a flowchart illustrating an operating method of an electronic device to which a memory device according to an exemplary embodiment of the present disclosure is applied. The electronic device may include a memory device in which a write operation is performed according to the write method of FIG. 13 . The electronic device includes a
도 14를 참조하면, 우선, 호스트(300)는 메모리 컨트롤러(200)에 데이터 기입 요청을 할 수 있다(S510). 호스트(300)는 기입 요청 신호, 기입될 데이터 및 어드레스 신호를 메모리 컨트롤러(200)에 송신할 수 있다. 호스트(300)로부터 기입 요청이 수신되면(S510), 메모리 컨트롤러(200)는 데이터 기입 요청과 함께 수신된 데이터를, 제1 버퍼에 저장할 수 있다(S520). 메모리 컨트롤러(200)는 노멀 기입 커맨드(NW), 어드레스 신호(ADDR) 및 데이터(DATA)를 메모리 장치(100)에 전송할 수 있다(S530). Referring to FIG. 14 , first, the
메모리 장치(100)는 메모리 컨트롤러(200)로부터 수신된 데이터를 제2 버퍼에 저장하고(S540) 어드레스 신호(ADDR)에 대응하는 메모리 영역에 상기 데이터를 기입한다(S550). The
상기, S510 내지 S550 과정에 따라, 메모리 장치(100)에 기입된 데이터가 데이터 패턴으로서 설정될 수 있다. According to the above steps S510 to S550, data written in the
이후, 호스트(300)로부터 다시 데이터 기입 요청이 수신되면(S560) 메모리 컨트롤러(200)는 수신된 데이터를 제1 버퍼에 저장된 데이터, 다시 말해 미리 설정된 데이터 패턴과 비교하고, 매칭 여부를 판단한다(S570). 데이터가 매칭되지 않으면, S520 단계 내지 S550 단계가 진행될 수 있다. 호스트(300)로부터 기입 요청된 데이터가 메모리 장치(100)에 기입될 수 있다. 이때, 메모리 컨트롤러(200)는 호스트(300)로부터 수신된 데이터를 제1 버퍼에 저장함으로써, 제1 버퍼의 데이터 패턴을 업데이트할 수 있다. 또한, 메모리 장치(100)는 메모리 컨트롤러(200)로부터 수신되는 데이터를 어드레스 신호(ADDR)에 대응하는 새로운 메모리 영역에 기입하고, 또한, 상기 데이터를 제2 버퍼에 저장함으로써, 제2 버퍼의 데이터 패턴을 업데이트할 수 있다. 제1 버퍼 및 제2 버퍼의 업데이트는 도 15를 참조하여 보다 상세하게 후술하기로 한다. Then, when a data write request is received again from the host 300 (S560), the
데이터가 매칭되면, 메모리 컨트롤러(200)는 패턴 기입 커맨드(PW) 및 어드레스 신호(ADDR)를 메모리 장치(100)에 제공한다(S581). 메모리 장치(100)는 패턴 기입 커맨드(PW)에 응답하여 제2 버퍼에 저장된 데이터 패턴을 출력할 수 있다(S582). 일 실시예에 있어서, 제2 버퍼에 복수의 데이터 패턴이 저장된 경우, 메모리 장치(100)는 패턴 기입 커맨드(PW)에 따라 선택되는 하나의 데이터 패턴을 출력할 수 있다. 메모리 장치(100)는 어드레스 신호(ADDR)에 대응하는 메모리 영역에 상기 데이터 패턴을 기입한다(S583). If the data match, the
메모리 장치(100)에 기입이 요청되는 데이터는 시간적 국부성(Temporal Locality)을 가질 수 있다. 예를 들어, 메모리 장치(100)에 한 프레임의 이미지 데이터가 저장될 경우, 동일한 데이터가 연속적으로 메모리 장치(100)에 저장될 확률이 높다. 이에 따라, 호스트(300)는 동일한 데이터에 대하여 연속하여 메모리 컨트롤러(200)에 기입 요청할 수 있다. 따라서, 메모리 컨트롤러(200) 및 메모리 장치(100)는 데이터 기입을 위하여 상호간에 송/수신한 데이터를 데이터 패턴으로 서 각각의 내부에 구비된 패턴 버퍼에 저장할 수 있다. 호스트(300)로부터 다시 상기 데이터에 대한 기입이 요청될 경우, 메모리 컨트롤러(200) 다시 상기 데이터를 메모리 장치(100)에 송신하는 대신, 패턴 기입 명령(PW)을 메모리 장치(100)에 제공하고, 메모리 장치(100)는 상기 패턴 기입 명령(PW)에 따라, 패턴 버퍼로부터 대응하는 데이터 패턴을 출력하여, 이를 메모리 셀 어레이에 기입할 수 있다. Data requested to be written into the
도 15a및 도 15b는 본 개시의 실시예에 따른 전자 장치에서, 메모리 컨트롤러 및 메모리 장치에 각각 구비되는 패턴 버퍼들이 업데이트 되는 실시예를 나타내는 도면이다. 도 15a 및 도 15b는 도 14의 흐름도에서, S520 단계 및 S540 단계에서 수행되는, 제1 패턴 버퍼 및 제2 패턴 버퍼의 업데이트 방법의 실시예들을 나타낸다. 15A and 15B are diagrams illustrating an embodiment in which a memory controller and pattern buffers respectively provided in the memory device are updated in an electronic device according to an embodiment of the present disclosure. 15A and 15B illustrate embodiments of a method for updating a first pattern buffer and a second pattern buffer, which is performed in steps S520 and S540 in the flowchart of FIG. 14 .
도 15a를 참조하면, 메모리 컨트롤러(200)는 호스트(300)로부터 시간에 따라 순차적으로 복수의 데이터를 수신할 수 있다. 이때, 수신되는 데이터는 이전에 수신된 데이터들 중 하나와 동일한 데이터이거나, 이전에 수신된 데이터들과는 다른 새로운 데이터일 수 있다. 예를 들어, 제1 데이터(Data1)가 수신되고, 그 이후에 또 제1 데이터(Data1)가 수신되거나 또는 제1 데이터(Data1)와는 다른 제2 데이터(Data2)가 수신될 수 있다. 또는 제1 데이터(Data1)가 수신되고, 이후 새로운 데이터들이 수신된 후, 다시 제1 데이터(Data1)가 수신될 수 있다. Referring to FIG. 15A , the
메모리 컨트롤러(200)는 수신된 데이터를 내부에 구비되는 제1 패턴 버퍼(PBUF1)에 저장할 수 있다. 그리고, 수신된 데이터를 메모리 장치(100)에 제공한다. 메모리 장치(100)는 수신된 데이터를 메모리 셀 어레이에 기입하고, 더불어 내부에 구비되는 제2 패턴 버퍼(PBUF2)에 저장할 수 있다. The
호스트(300)로부터 수신되는 새로운 데이터가 이전에 수신된 데이터와 동일한 경우, 전술한 바와 같이, 메모리 컨트롤러(200)는 상기 데이터를 메모리 장치(100)에 제공하는 대신, 패턴 기입 명령을 메모리 장치(200)에 제공할 수 있다. 패턴 기입 명령은, 패턴 기입을 알리는 신호 및 제2 패턴 버퍼(PBUF2)에 저장된 패턴 데이터들 중 하나의 패턴 데이터를 선택하는 신호를 포함할 수 있다. When the new data received from the
예를 들어, 메모리 컨트롤러(200)는 호스트(300)로부터 기입 요청과 함께 제1 데이터(Data1)가 수신되면, 제1 데이터(Data1)를 내부의 제1 패턴 버퍼(PBUF1)에 저장하고, 제1 데이터(Data1)를 메모리 장치(100)에 제공할 수 있다. 이후, 호스트(300)로부터 다시 제1 데이터(Data1)가 수신되면, 패턴 기입 명령을 메모리 장치(100)에 제공한다. 이후, 호스트(300)로부터 제1 데이터(Data1)와 상이한 제2 데이터(Data2)가 수신되면, 제2 데이터(Data2)를 제1 패턴 버퍼(PBUF1)에 저장하고, 제2 데이터(Data2)를 메모리 장치(100)에 제공할 수 있다. 이와 같은 방식으로, 메모리 컨트롤러(200)는 N개의 새로운 데이터를 제1 패턴 버퍼(PBUF1)에 저장할 수 있다. 이때, 제1 패턴 버퍼(PBUF1)가 N개의 저장 영역(SR1~SRN)을 포함할 경우, 제1 패턴 버퍼(PBUF1)에는 더 이상 저장할 영역이 존재하지 않게된다.For example, when first data Data1 is received along with a write request from the
호스트(300)로부터 새로운 데이터, 다시 말해, 제1 패턴 버퍼(PBUF1)에 저장된 데이터들과 다른 제N+1 데이터(DataN+1)가 수신되면, 메모리 컨트롤러(200)는 제1 패턴 버퍼(PBUF1)에 저장된 데이터들 중 가장 오래전에 저장된 데이터, 예컨대 제1 데이터(Data1)를 삭제하고, 제N+1 데이터(DataN+1)을 제1 패턴 버퍼(PBUF1)에 저장할 수 있다. 이와 같이, 메모리 컨트롤러(200)는 오래된 데이터를 삭제하고, 새로운 데이터로 제1 패턴 버퍼(PBUF1)에 저장함으로써, 제1 패턴 버퍼(PBUF1)의 데이터 패턴을 업데이트할 수 있다.When new data, that is, N+1th data DataN+1 different from the data stored in the first pattern buffer PBUF1 is received from the
다른 실시예로서, 호스트(300)로부터 새로운 데이터, 다시 말해, 제1 패턴 버퍼(PBUF1)에 저장된 데이터들과 다른 제N+1 데이터(DataN+1)가 수신되면, 메모리 컨트롤러(200)는 제1 패턴 버퍼(PBUF1)에 저장된 데이터들 중 가장 오래전에 수신된 데이터와 매칭된 데이터를 삭제하고, 제N+1 데이터(DataN+1)을 제1 패턴 버퍼(PBUF1)에 저장할 수 있다. As another embodiment, when new data, that is, N+1th data DataN+1 different from the data stored in the first pattern buffer PBUF1 is received from the
도 15b를 참조하면, 메모리 컨트롤러(200)는 제1 패턴 버퍼(PBUF1)에 데이터를 저장하고 상기 저장된 데이터의 매칭 순서(MN)를 저장할 수 있다. 이때, 매칭 순서(MN)는 제1 패턴 버퍼(PBUF1)에 저장된 데이터들 중 가장 최근에 호스트(300)로부터 수신된 순서를 나타내며, 매칭 순서(MN)가 낮을수록 최근에 호스트(300)로부터 수신되었음을 나타낼 수 있다. 예를 들어, 가장 최근에 제1 패턴 버퍼(PBUF1)에 기입된 데이터 또는 가장 최근에 매칭된 데이터의 매칭 순서(MN)가 낮을 수 있다. 제1 패턴 버퍼(PBUF1)의 저장 영역이 N개일 때, 가장 최근에 제1 패턴 버퍼(PBUF1)에 기입되거나 또는 가장 최근에 매칭된 데이터의 매칭 순서(MN)는 1로 설정되고, 가장 오래전에 매칭된 데이터의 매칭 순서(MN)가 N으로 설정될 수 있다. 매칭 순서(MN)는 호스트(300)로부터 데이터가 수신될 때마다 업데이트될 수 있다.Referring to FIG. 15B , the
제1 패턴 버퍼(PBUF1)의 저장 공간에 데이터가 모두 저장되고, 새로운 데이터, 예컨대 제N+1 데이터(DataN+1)이 수신되며, 메모리 컨트롤러(200)는 가장 오래전에 매칭된 데이터, 다시 말해 매칭 순서(MN)가 N인, 데이터, 즉 제N-1 데이터(DataN)을 삭제하고, 제N+1 데이터(DataN+1)를 저장함으로써, 제1 패턴 버퍼(PUF1)의 데이터 패턴을 업데이트할 수 있다. All data is stored in the storage space of the first pattern buffer PBUF1, new data, for example, N+1th data (DataN+1) is received, and the
한편, 메모리 장치(100)는 메모리 컨트롤러(200)로부터 데이터가 수신되면, 수신된 데이터를 대응하는 메모리 셀 영역에 저장하고, 더불어 내부의 제2 패턴 버퍼(PBUF2)에 저장할 수 있다. 메모리 장치(100)는 메모리 컨트롤러(200)와 실질적으로 동일한 방식으로, 제2 패턴 버퍼(PBUF2)에 수신되는 데이터를 저장할 수 있다. 일 실시예에 있어서, 제1 패턴 버퍼(PBUF1)와 제2 패턴 버퍼(PBUF2)의 저장 용량은 동일하고, 데이터 저장 순서도 동일하게 설정될 수 있다. 제1 패턴 버퍼(PBUF1) 및 제2 패턴 버퍼(PBUF2)에 저장되는 데이터, 및 상기 데이터의 저장 순서가 동일할 수 있다. 이에 따라, 별도의 커맨드나 패턴 버퍼 내의 위치를 지정하는 어드레스 신호 없이, 메모리 컨트롤러(200)와 메모리 장치(100) 사이에서 동일한 데이터 패턴들이 메모리 컨트롤러(200)의 제1 패턴 버퍼(PBUF1)과 메모리 장치(200)의 제2 패턴 버퍼(PBUF2)에 실질적으로 동일한 위치에 저장되거나, 또는 동일한 순서로 저장될 수 있다. Meanwhile, when data is received from the
도 16은, 본 개시의 실시예에 따른 기입 커맨드의 설정의 예를 나타내는 테이블이다. 도 16은 도 13의 기입 방법이 적용되는 메모리 장치와 메모리 컨트롤러 사이에서 전송되는 기입 커맨드의 설정의 예로서, 이전에 기입 수행된 데이터를 데이터 패턴으로서, 메모리 셀 어레이(110)에 기입할 것을 지시하는 제3 패턴 기입 커맨드(PW3, 도 6 참조)의 확장예이다. 16 is a table showing an example of setting a write command according to an embodiment of the present disclosure. FIG. 16 is an example of setting a write command transmitted between a memory device and a memory controller to which the write method of FIG. 13 is applied, instructing to write previously written data into the
도 16을 참조하면, 어드레스 ??들 중 일부 어드레스 핀들(CAx, CAy, CAz, CAj, CAk, CAl)을 통해 수신된 신호에 따라 제3 패턴 기입 커맨드(PW3)가 설정될 수 있다. 도시된 어드레스 핀들(CAx, CAy, CAz, CAj, CAk, CAl) 중 상위 세개의 어드레스 핀들(CAx, CAy, CAz)을 통해 수신되는 값, 예컨대 '0 1 1'은 이전 기입 데이터들 중 하나를 선택하여 메모리 셀 어레이에 기입하라는 기입 명령을 나타내고, 어드레스 핀들(CAx, CAy, CAz, CAj, CAk, CAl) 중 하위 세개의 어드레스 핀들(CAj, CAk, CAl)은 이전 기입 데이터들 중 몇번째로 이전에 기입된 데이터를 선택할 것인지를 나타낸다. 도 15a 및 도 15b를 참조하면, 메모리 장치(100)는 제2 패턴 버퍼(PBUF2)에 복수의 이전 기입 데이터들을 저장할 수 있다. 메모리 장치(100)는 도시된 어드레스 핀들(CAx, CAy, CAz, CAj, CAk, CAl)을 통해 수신되는 제3 패턴 기입 커맨드(PW3)에 기초하여, 상기 제2 패턴 버퍼(PBUF2)에 저장된 복수의 이전 기입 데이터들 중 하나를 선택할 수 있다. 예컨대, 제2 패턴 버퍼(PBUF2)가 8개의 이전 기입 데이터를 저장할 수 있으며, 메모리 장치(100)의 세 개의 어드레스 핀들(CAj, CAk, CAl)을 통해 수신된 값을 기초로, 8개의 이전 기입 데이터들 중 하나를 선택하여, 어드레스 신호(ADDR)에 대응하는 메모리 영역에 저장할 수 있다. Referring to FIG. 16 , the third pattern writing command PW3 may be set according to signals received through some of the address pins CAx, CAy, CAz, CAj, CAk, and CAl among the addresses ??. A value received through the upper three address pins CAx, CAy, and CAz among the illustrated address pins CAx, CAy, CAz, CAj, CAk, and CAl, for example, '0 1 1' indicates one of the previous write data. Indicates a write command to select and write to the memory cell array, and among the address pins CAx, CAy, CAz, CAj, CAk, and CAl, the lower three address pins CAj, CAk, and CAl are assigned to the number of previous write data. Indicates whether to select previously written data. Referring to FIGS. 15A and 15B , the
한편, 도 16에서는, 제2 패턴 버퍼(PBUF2)가 8개의 이전 기입 데이터를 저장하는 것을 가정하여 설명하였으나, 이는 실시예일뿐이며, 제2 패턴 버퍼(PBUF2)에 저장되는 이전 기입 데이터들의 수는 가변될 수 있다. Meanwhile, in FIG. 16 , it has been described assuming that the second pattern
도 17은 본 개시의 실시예에 따른 메모리 장치의 기입 방법을 나타내는 흐름도이다. 도 17 기입 방법은 도 9의 기입 방법의 일 구현예로서, 사용자 설정 데이터를 데이터 패턴으로 설정하는 경우의 메모리 장치의 기입 방법을 나타낸다.17 is a flowchart illustrating a writing method of a memory device according to an exemplary embodiment of the present disclosure. The writing method of FIG. 17 is an implementation example of the writing method of FIG. 9 and shows a writing method of a memory device when user setting data is set as a data pattern.
도 17 참조하면, 메모리 장치(100)는 메모리 컨트롤러(200)로부터 패턴 저장 커맨드 및 데이터를 수신할 수 있다(S610). 패턴 저장 커맨드는 수신되는 데이터를 메모리 장치(100)의 메모리 셀 어레이(110)가 아닌 내부 버퍼에 저장하는 것을 지시하는 커맨드일 수 있다. 수신되는 데이터는 사용자 설정 데이터일 수 있다. 예를 들어, 사용자 설정 데이터는 메모리 장치(100)가 장착된 전자 장치의 동작과 관련하여, 메모리 장치(100)에 주로 저장되는 데이터일 수 있다. 상기 전자 장치의 호스트, 예컨대 호스트 프로세서는 메모리 장치(100)에 주로 저장되는 데이터를 분석하여 사용자 설정 데이터로서 메모리 장치(100)에 제공할 수 있다. Referring to FIG. 17 , the
메모리 장치(100)는 패턴 저장 커맨드에 응답하여, 내부 버퍼에 상기 데이터, 다시 말해 사용자 설정 데이터를 저장할 수 있다(S620). 일 실시예에 있어서, S610 단계 및 S620 단계가 복수회 수행되어, 내부 버퍼에 복수의 사용자 설정 데이터가 저장될 수 있다. The
이후, 패턴 기입 커맨드 및 어드레스가 수신되면(S630), 메모리 장치(100)는 패턴 기입 커맨드에 응답하여, 내부 버퍼에 저장된 사용자 설정 데이터를 기초로 데이터 패턴을 생성할 수 있다(S640). 일 실시예에 있어서, 메모리 장치(100)는 패턴 기입 커맨드에 따라, 복수의 사용자 설정 데이터 중 하나를 선택하고, 선택된 데이터를 데이터 패턴으로서 출력할 수 있다.Then, when a pattern write command and an address are received (S630), the
메모리 장치(100)는 어드레스에 대응하는 메모리 영역에 상기 데이터 패턴, 다시 말해 사용자 설정 데이터를 기입할 수 있다(S650).The
도 18은 본 개시의 실시예에 따른 메모리 장치가 적용되는 전자 장치의 동작 방법을 나타내는 흐름도이다. 전자 장치는 호스트(300), 메모리 컨트롤러(200) 및 메모리 장치(100)를 포함하며, 도 18은 전자 장치의 노멀 동작 들 중 기입 동작을 나타낸다. 본 실시예에서, 메모리 컨트롤러(200) 및 메모리 장치(100)는 각각 내부에 데이터 패턴을 저장하는 패턴 버퍼를 포함할 수 있으며, 메모리 컨트롤러(200)의 패턴 버퍼를 제1 버퍼로, 메모리 장치(100)의 패턴 버퍼를 제2 버퍼로 지칭하기로 한다.18 is a flowchart illustrating an operating method of an electronic device to which a memory device according to an exemplary embodiment of the present disclosure is applied. The electronic device includes a
도 18을 참조하면, 메모리 컨트롤러(200)는 호스트(300)로부터 데이터 패턴 저장 요청을 수신할 수 있다(S710). 일 실시예에 있어서, 호스트(300)가 데이터 기입 요청, 데이터와 함께, 유효하지 않은 어드레스 정보를 전송하면, 메모리 컨트롤러(200)는 상기 기입 요청을 데이터 패턴 저장 요청으로 해석할 수 있다. 메모리 컨트롤러(200)는 호스트(300)로부터 수신된 데이터를 제1 버퍼에 데이터 패턴으로서 저장할 수 있다(S720). 저장되는 데이터 패턴은 사용자 설정 데이터 패턴이라고 지칭할 수 있다. 메모리 컨트롤러(200)는 패턴 저장 커맨드(PS) 및 데이터 패턴(DPT), 다시 말해 사용자 설정 데이터 패턴을 메모리 장치(100)에 전송할 수 있다(S730). 메모리 장치(100)는 패턴 저장 커맨드(PS)에 응답하여 제2 버퍼에 사용자 데이터 패턴(DPT)을 저장할 수 있다(S740). 이로써, 사용자 설정 데이터 패턴이 메모리 컨트롤러(200) 및 메모리 장치(100)에 설정될 수 있다.Referring to FIG. 18 , the
이후, 호스트(300)로부터 데이터 기입 요청이 수신되면(S750), 메모리 컨트롤러(200)는 수신된 데이터를 제1 버퍼에 저장된 데이터 패턴과 비교하고 매칭여부를 판단할 수 있다(S760). 데이터가 매칭되면, 메모리 컨트롤러(200)는 메모리 장치(100)에 패턴 기입 커맨드(PW) 및 어드레스 신호(ADDR)를 전송할 수 있다(S771). 메모리 장치(100)는 패턴 기입 커맨드(PW)에 응답하여, 제2 버퍼에 저장된 데이터 패턴을 출력할 수 있다(S772). 다시 말해, 메모리 장치(100)는 사용자 설정 데이터 패턴을 출력할 수 있다. Then, when a data writing request is received from the host 300 (S750), the
데이터가 매칭되지 않으면, 메모리 컨트롤러(200)는 메모리 장치(100)에 노멀 기입 커맨드(NW), 어드레스 신호(ADDR) 및 데이터(DATA)를 전송할 수 있다(S781). If the data do not match, the
메모리 장치(100)는 어드레스 신호(ADDR)에 대응하는 메모리 영역에 상기 데이터 패턴 또는 수신된 상기 데이터를 기입할 수 있다(S782).The
도 19는 본 개시의 실시예에 따른 메모리 장치를 개략적으로 나타내는 블록도이다. 도 19의 메모리 장치(100b)는 도 2의 메모리 장치(100)의 변형례이며, 도 2를 참조하여 전술한 내용은 도 19의 메모리 장치(100b)에도 적용될 수 있다.19 is a block diagram schematically illustrating a memory device according to an exemplary embodiment of the present disclosure. The
도 19를 참조하면, 메모리 장치(100b)는 복수의 뱅크(Bank)를 포함할 수 있다. 뱅크는 동시에 액세스 가능한 메모리 셀들의 집합으로 정의될 수 있다. 뱅크는 통상적으로 어드레스 신호(ADDR)에 의해 구분될 수 있다. 특히 도시 되지는 않았으나, 수신되는 뱅크 어드레스 신호에 의해 구분될 수 있다. 서로 다른 뱅크들은 독립적으로 기능할 수 있다. 예컨대, 서로 다른 뱅크들은 독립적으로 독출 및 기입 동작이 수행될 수 있다. Referring to FIG. 19 , the
도 19에서 하나의 메모리 셀 어레이(110)에 하나의 로우 디코더(140), 하나의 독출/기입 회로(150), 하나의 컬럼 디코더(160)가 대응될 수 있다. 이 경우, 하나의 메모리 셀 어레이(110)는 하나의 뱅크를 구성할 수 있다. 그러나, 이에 제한되는 것은 아니며, 둘 이상의 메모리 셀 어레이가 하나의 메모리 뱅크를 구성할 수도 있고, 둘 이상의 메모리 셀 어레이에 하나의 로우 디코더(140) 또는 하나의 컬럼 디코더(160)가 대응될 수도 있다. 19, one
한편, 데이터 패턴 제공부(180) 및 입출력 버퍼(170)는 서로 다른 뱅크의 독출/기입 회로(150)에 공유될 수 있다. 데이터 패턴 제공부(180)는 독출/기입 회로(150)들에 데이터 패턴을 제공하고, 입출력 버퍼(170)는 독출/기입 회로(150)들부터 출력되는 데이터(DATA)를 외부로 전송하거나, 또는 외부로부터 데이터(DATA)가 수신되면, 수신되는 데이터를 독출/기입 회로(150)에 제공할 수 있다. Meanwhile, the
본 개시의 실시예에 따른 메모리 장치(100b)에서, 외부로부터 패턴 기입 커맨드가 수신되면, 메모리 장치(100b)는 외부로부터의 데이터 수신 없이, 데이터 패턴 제공부(180)로부터 제공되는 데이터를 어드레스 신호(ADDR)에 대응하는 메모리 영역에 기입할 수 있다. 서로 다른 뱅크(Bank)에 대하여 독립적으로 독출/ 기입 동작이 수행될 수 있으며, 서로 다른 뱅크(Bank)에서 동시에 독출/기입 동작이 수행될 수 있다. 이때, 서로 다른 뱅크(Bank)가 입출력 버퍼(170) 및 데이터 패드(DQ[m-1:0])를 공유하므로, 서로 다른 뱅크(Bank)에서 동시에 독출/기입 동작이 수행더라도, 하나의 뱅크가 입출력 버퍼(170) 및 데이터 패드(DQ)를 사용하고 있다면, 다른 뱅크가 입출력 버퍼(170) 및 데이터 패드(DQ)를 사용하고자 할 경우, 입출력 버퍼(170) 및 데이터 패드(DQ)를 사용하고 있는 뱅크의 사용이 끝날때까지 기다려야 한다. 이에 따라 독출/기입 동작이 지연될 수 있다. 그러나, 본 개시의 실시예에 따른 메모리 장치(100b)는 패턴 기입 커맨드에 따라, 기입 동작이 수행될 경우, 입출력 버퍼(170) 및 데이터 패드(DQ)를 사용하지 않는다. 따라서, 하나의 뱅크에 대하여 패턴 기입 동작이 수행될 경우, 동시에 다른 뱅크가 노멀 기입 동작 또는 독출 동작을 수행하면서, 입출력 버퍼(170) 및 데이터 패드(DQ[m-1:0])를 사용할 수 있다. 따라서, 메모리 장치(100b)의 동작 속도가 향상될 수 있다. In the
도 20은 본 개시의 실시예에 다른 메모리 시스템을 나타내는 블록도이다.20 is a block diagram illustrating a memory system according to an exemplary embodiment of the present disclosure.
도 20을 참조하면, 메모리 시스템(1000a)은 메모리 컨트롤러(200a) 및 메모리 장치(100)를 포함할 수 있다. 메모리 컨트롤러(200)는 데이터 비교부(210), 패턴 버퍼(220) 및 데이터 패턴 분석부(230)를 포함하고, 메모리 장치(100)는 메모리 셀 어레이(110), 독출/기입 회로(150) 및 데이터 패턴 제공부(180)를 포함할 수 있다. 도 20의 메모리 시스템(100a)은 도 1의 메모리 시스템(1000)의 변형예이며, 도 1을 참조하여 설명한 내용은 본 실시예에도 적용될 수 있다. 따라서 중복되는 설명은 생략하기로 한다. Referring to FIG. 20 , a
메모리 컨트롤러(200a)의 데이터 패턴 분석부(230)는 외부, 예컨대 호스트로부터 수신되는 데이터를 분석하여, 자주 사용되는 데이터(frequently used data), 다시 말해 메모리 장치(100)에 빈번하게 기입되는 데이터를 판단할 수 있다. 예컨대, 데이터 패턴 분석부(230)는 호스트로부터의 기입 요청 횟수가 미리 설정된 임계값 이상인 데이터를 자주 사용되는 데이터로 결정할 수 있다. 메모리 컨트롤러(200a)는 자주 사용되는 데이터를 데이터 패턴으로서, 패턴 버퍼(220)에 저장하고, 메모리 장치(100)에 전송할 수 있다. 메모리 장치(100)는 메모리 컨트롤러(200a)로부터 수신되는 자주 사용되는 데이터를 상기 데이터 패턴 제공부(180) 내에 구비되는 패턴 버퍼(미도시)에 저장할 수 있다. 이로써, 자주 사용되는 데이터가 메모리 컨트롤러(200a) 및 메모리 장치(100)에서 데이터 패턴으로서 설정될 수 있다. 일 실시예에 있어서, 데이터 패턴 제공부(180)는 패턴 버퍼일 수 있다. The
데이터 비교부(210)는 호스트로부터 기입 요청된 데이터를 패턴 버퍼(220)에 저장된 데이터 패턴들과 비교하고, 상기 기입 요청된 데이터가 데이터 패턴들 중 하나와 매칭되는지 판단할 수 있다. 메모리 컨트롤러(200a)는 기입 요청된 데이터가 데이터 패턴들 중 하나와 매칭될 경우, 메모리 장치(100)에 상기 데이터를 전송하지 않고, 패턴 기입 커맨드 및 어드레스 신호(ADDR)를 메모리 장치(100)에 전송할 수 있다. 메모리 장치(100)는, 패턴 기입 커맨드에 기초하여 패턴 버퍼에 저장된 데이터 패턴들 중 하나를 선택하고, 선택된 데이터 패턴을 메모리 셀 어레이(110)에 기입할 수 있다. The
본 실시예에 따른 메모리 시스템(1000a)에서는 메모리 컨트롤러(200a)가 기입이 요청되는 데이터를 분석하여 메모리 장치(100)에 빈번하게 기입이 수행되는 자주 사용되는 데이터를 판단하고, 상기 자주 사용되는 데이터를 메모리 컨트롤러(200a)와 메모리 장치(100)간에 데이터 패턴으로서 규약하고 사용함으로써, 메모리 컨트롤러(200a)와 메모리 장치(100) 사이에 데이터의 송/수신 없이 메모리 장치(100)의 메모리 셀 어레이(110)에 상기 자주 사용되는 데이터를 기입할 수 있다. In the
도 21은 본 개시의 실시예에 따른 메모리 컨트롤러의 일 구현예를 나타내는 블록도이다. 도 21은 도 20의 메모리 시스템(1000a)의 메모리 컨트롤러(200a)의 구현예를 나타낸다. 21 is a block diagram illustrating an implementation example of a memory controller according to an exemplary embodiment of the present disclosure. FIG. 21 illustrates an implementation example of the
도 21을 참조하면, 데이터 패턴 분석부(230)는 호스트(Host)로부터 기입 요청과 함께 수신되는 데이터(DATA)를 분석하여, 자주 사용되는 데이터를 결정할 수 있다. 일 실시예에 있어서, 데이터 패턴 분석부(230)는 호스트로부터의 기입 요청 횟수가 미리 설정된 임계값 이상인 데이터를 자주 사용되는 데이터로 결정할 수 있다. 다른 실시예에 있어서, 데이터 패턴 분석부(230)는 미리 설정된 시간 내에 호스트로부터의 기입 요청 횟수가 상기 임계값 이상인 데이터를 자주 사용되는 데이터로 결정할 수 있다. Referring to FIG. 21 , the
데이터 패턴 분석부(230)는 자주 사용되는 데이터를 패턴 버퍼(220)에 제공하고, 패턴 버퍼(220)는 자주 사용되는 데이터를 데이터 패턴으로서 저장할 수 있다. 패턴 버퍼(220)에는 복수의 데이터 패턴(Pattern 1~Pattern m)이 저장될 수 있다. 메모리 컨트롤러(200a)는 데이터 패턴으로서 설정된 데이터를 주소 신호(ADDR) 및 제2 노멀 기입 커맨드(NW2)와 함께 메모리 장치(도 20의 100)에 전송할 수 있다. 메모리 장치(100)는 제2 노멀 기입(NW2)가 전송되면, 상기 데이터를 어드레스 신호(ADDR)에 대응하는 메모리 영역 및 내부의 패턴 버퍼에 저장할 수 있다. 이로써, 상기 데이터가 메모리 컨트롤러(200a) 및 메모리 장치(100)에서 데이터 패턴으로 설정될 수 있다. The
계속하여 호스트(Host)로부터 기입 요청이 수신되면, 데이터 비교부(210)는 기입 요청된 데이터(DATA)를 패턴 버퍼(220)에 저장된 복수의 데이터 패턴(Pattern 1~Pattern m)과 비교할 수 있다. 데이터(DATA)가 복수의 데이터 패턴(Pattern 1~Pattern m) 중 하나와 매칭되면, 메모리 컨트롤러(200a)는 패턴 기입 커맨드(PW) 및 어드레스 신호(ADDR)를 메모리 장치(100)에 전송할 수 있다. 데이터(DATA)가 복수의 데이터 패턴(Pattern 1~Pattern m) 중 어느 것과도 매칭되지 않는다면, 메모리 컨트롤러(200a)는 제1 노멀 기입 커맨드(NW1), 데이터(DATA) 및 어드레스 신호(ADDR)를 메모리 장치(100)에 전송할 수 있다. 메모리 장치(100)는 패턴 기입 커맨드(PW)에 기초하여, 내부의 패턴 버퍼에 저장된 데이터 패턴들 중 하나를 출력하고, 출력된 데이터를 어드레스 신호(ADDR)에 대응하는 메모리 영역에 기입할 수 있다. 또한, 메모리 장치(100)는 제1 노멀 기입 커맨드(NW1)에 기초하여, 수신된 데이터(DATA)를 어드레스 신호(ADDR)에 대응하는 메모리 영역에 기입할 수 있다.If a write request is continuously received from the host, the
도 22는 본 개시의 실시예에 따른 기입 커맨드의 설정의 예를 나타내는 테이블이다.22 is a table illustrating an example of setting a write command according to an embodiment of the present disclosure.
도 22를 참조하면, 어드레스 핀들(CAx, CAy, CAz)을 통해 '0 0 0' 의 모드 신호가 수신되면, 이는 제1 노말 기입 커맨드(NW1)를 나타낸다. 어드레스 핀들(CAx, CAy, CAz)을 통해 '0 0 0' 의 모드 신호가 수신될 때, 데이터 패드(DQ)를 통해 메모리 컨트롤러(200a)로부터 메모리 장치(100)로 데이터가 송신될 수 있다. 메모리 장치(100)는 제1 노말 기입 커맨드(NW1)에 응답하여, 메모리 컨트롤러(200)로부터 수신되는 데이터를 메모리 셀 어레이(110)에 기입힐 수 있다. Referring to FIG. 22 , when a mode signal of '0 0 0' is received through the address pins CAx, CAy, and CAz, this indicates a first normal write command NW1. When a mode signal of '0 0 0' is received through the address pins CAx, CAy, and CAz, data may be transmitted from the
어드레스 핀들(CAx, CAy, CAz)을 통해 '0 0 1' 의 모드 신호가 수신되면, 이는 제2 노말 기입 커맨드(NW2)를 나타낸다. 어드레스 핀들(CAx, CAy, CAz)을 통해 '0 0 1' 의 모드 신호가 수신될 때, 데이터 패드(DQ)를 통해 메모리 컨트롤러(200a)로부터 메모리 장치(100)로 데이터가 송신될 수 있다. 메모리 장치(100)는 제1 노말 기입 커맨드(NW1)에 응답하여, 메모리 컨트롤러(200)로부터 수신되는 데이터를 메모리 셀 어레이(110) 및 패턴 버퍼에 기입할 수 있다. 이로써, 메모리 장치(100)의 패턴 버퍼에 데이터 패턴이 저장될 수 있다. When a mode signal of '0 0 1' is received through the address pins CAx, CAy, and CAz, this indicates the second normal write command NW2. When a mode signal of '0 0 1' is received through the address pins CAx, CAy, and CAz, data may be transmitted from the
어드레스 핀들(CAx, CAy, CAz) 중 상위 하나의 핀(CAx)을 통해 수신되는 신호가 '0'이면, 이는 버퍼 데이터, 다시 말해, 패턴 버퍼에 기입된 데이터를 메모리 셀 어레이에 기입하라는 패턴 기입 명령(PW)을 나타낸다. 패턴 기입 명령(PW)이 수신될 때, 메모리 컨트롤러(200a)와 메모리 장치(100)간의 데이터 송/수신이 없으므로, 데이터 패드(DQ)는 사용되지 않는다. 도 20 및 21을 참조하여 전술한 바와 같이, 패턴 버퍼에 기입된 데이터는 자주 사용되는 데이터일 수 있다. 어드레스 핀들(CAx, CAy, CAz) 중 하위 두 개의 핀(CAy, CAz)을 통해 수신되는 신호에 따라 패턴 버퍼 내에 저장된 데이터 패턴들 중 하나의 데이터 패턴이 선택되어 출력될 수 있다. If the signal received through the upper one of the address pins CAx, CAy, and CAz is '0', this is a pattern write command to write buffer data, that is, data written in the pattern buffer to the memory cell array. Indicates the command (PW). When the pattern write command PW is received, there is no data transmission/reception between the
이상, 도22를 참조하여, 도 20의 메모리 시스템(1000a)의 메모리 장치(100)에 송신될 수 있는 기입 커맨드를 예시적으로 설명하였다. 그러나 이에 제한되는 것은 아니며, 노멀 기입 커맨드 및 패턴 기입 커맨드를 나타내는 신호는 다양하게 설정될 수 있다. In the above, the write command that can be transmitted to the
도 23은 본 개시의 실시예에 따른 메모리 시스템을 나타내는 블록도이다.23 is a block diagram illustrating a memory system according to an exemplary embodiment of the present disclosure.
도 23을 참조하면, 메모리 시스템(1000c)은 메모리 컨트롤러(200c) 및 메모리 장치(100c)를 포함할 수 있다. 메모리 컨트롤러(200c)는 패턴 버퍼(220)를 포함하고, 메모리 장치(100c)는 메모리 셀 어레이(110), 데이터 패턴 제공부(180) 및 데이터 비교부(185)를 포함할 수 있다. 도시되지는 않았으나, 메모리 컨트롤러(200c)는 데이터 비교부, 데이터 패턴 분석부를 더 포함할 수 있다.Referring to FIG. 23 , a
도 1 내지 도 22를 참조하여 전술한 바와 같이, 메모리 컨트롤러(200c) 및 메모리 장치(100c)는 데이터 패턴을 미리 규약하고, 호스트로부터 기입이 요청된 데이터가 데이터 패턴에 매칭되면, 메모리 컨트롤러(200c)는 상기 데이터를 메모리 장치(100c)에 전송하는 대신, 미리 설정된 패턴 기입 커맨드를 전송하고, 메모리 장치(100c)는 패턴 기입 커맨드에 응답하여, 데이터 패턴을 메모리 셀 어레이(110)에 기입할 수 있다. As described above with reference to FIGS. 1 to 22 , the
한편, 도 23의 메모리 시스템(1000c)에서 메모리 셀 어레이(110)로부터 독출된 데이터가 데이터 패턴에 매칭되면, 메모리 장치(100c)는 메모리 컨트롤러(200c)에 독출된 데이터를 전송하는 대신, 미리 설정된 패턴 독출 신호들, 예컨대 매칭 신호(RDM) 및 패턴 정보(BPIF)를 메모리 컨트롤러(200c)에 전송할 수 있다. 메모리 컨트롤러(200c)는 수신된 패턴 독출 신호들에 기초하여, 데이터 패턴을 외부, 예컨대 호스트로 전송할 수 있다. Meanwhile, in the
구체적으로, 메모리 컨트롤러(200c)가 독출 커맨드(CMD) 및 어드레스 신호(ADDR)를 메모리 장치(100c)에 전송하면, 메모리 장치(100c)는 상기 어드레스 신호(ADDR)에 대응하는 메모리 셀 어레이(110)의 메모리 영역으로부터 데이터를 독출할 수 있다. 데이터 비교부(185)는 독출된 데이터를 데이터 패턴 제공부(180)로부터 수신되는 데이터 패턴과 비교하거나, 또는 데이터 패턴 제공부(180)를 엑세스하여, 저장된 데이터 패턴과 독출된 데이터를 비교할 수 있다. 데이터 비교부(185)는 독출된 데이터가 데이터 패턴과 매칭되면, 독출된 데이터가 데이터 패턴과 매칭되었음을 나타내는 매칭 신호(RDM)를 생성할 수 있다. Specifically, when the
메모리 장치(100c)는 상기 매칭 신호(RDM)를 메모리 컨트롤러(200c)에 전송할 수 있다. 또한, 메모리 장치(100c)는 독출된 데이터가 복수의 데이터 패턴들 중 하나와 매칭된 경우, 매칭된 데이터 패턴에 대한 정보(예컨대, 패턴 버퍼 내에서 매칭된 데이터 패턴의 위치 등)를 패턴 정보(BPIF)로서 메모리 컨트롤러(200c)에 제공할 수 있다. The
메모리 컨트롤러(200c)는 메모리 장치(100c)로부터 수신되는 데이터를 독출 신호로서 호스트에 제공할 수 있다. 그러나, 메모리 장치(100c)로부터 매칭 신호(RDM)가 수신될 경우, 메모리 장치(100c)는 메모리 컨트롤러(200c)에 독출 데이터를 송신하지 않는다. 메모리 컨트롤러(200c)는 매칭 신호(RDM)가 수신될 경우, 미리 설정된 데이터 패턴을 호스트로 송신할 수 있다. 실시예에 있어서, 복수의 데이터 패턴이 패턴 버퍼(220)에 저장된 경우, 메모리 컨트롤러(200c)는 메모리 장치(100c)로부터 수신되는 패턴 정보(BPIF)를 기초로, 복수의 데이터 패턴 중 하나를 선택하고, 선택된 데이터 패턴을 호스트로 송신할 수 있다. The
이와 같이, 본 실시예에 따른 메모리 시스템(1000c)에서, 메모리 셀 어레이(110)로부터 독출된 데이터가 미리 설정된 데이터 패턴과 매칭될 경우, 메모리 컨트롤러(200c)는 메모리 장치(100c)로부터의 데이터 수신 없이, 미리 설정된 패턴 독출 신호들에 기초하여, 데이터 패턴을 독출 데이터로서 호스트에 전송할 수 있다. 따라서, 메모리 컨트롤러(200c)와 메모리 장치(100c) 사이에 데이터 송/수신이 발생하지 않으므로, 메모리 시스템(1000c)의 소비 전력이 감소될 수 있다. 또한, 독출 시 데이터 전송 시간이 감소되므로, 메모리 시스템(1000c)의 동작 속도가 향상될 수 있다. As described above, in the
이하, 도 24 및 25를 참조하여, 메모리 장치(100c) 및 메모리 컨트롤러(200c)의 구체적인 구성 및 동작을 설명하기로 한다. Hereinafter, detailed configurations and operations of the
도 24는 본 개시의 실시예에 따른 메모리 장치를 개략적으로 나타내는 블록도이다. 도 24의 메모리 장치(100c)는 도 23의 메모리 시스템(1000c)에 적용될 수 있다. 도 24는 독출 동작과 관련하여 메모리 장치의 주요 구성을 나타내며, 도 2에 도시된 메모리 장치의 구성들은 도24의 메모리 장치(100c)에 구비될 수 있다.24 is a block diagram schematically illustrating a memory device according to an exemplary embodiment of the present disclosure. The
도 24를 참조하면 메모리 장치(100c)는 메모리 셀 어레이(110), 독출 회로(152), 출력 버퍼(172), 데이터 패턴 제공부(180) 및 데이터 비교부(185)를 포함할 수 있다. Referring to FIG. 24 , the
독출 회로(152)는 어드레스 신호에 대응하는 메모리 셀 어레이(110)의 메모리 영역으로부터 데이터를 독출할 수 있다. 독출된 데이터는 출력 버퍼(172) 및 데이터 비교부(185)로 제공될 수 있다.The
출력 버퍼(172)는 도 2의 입출력 버퍼(170)의 일 구성으로서, 데이터 패드(DQ)를 통해 외부로 데이터(DATA)를 송신할 수 있다. The
데이터 패턴 제공부(180)는 미리 설정된 데이터 패턴을 출력할 수 있다. 일 실시예에 있어서, 데이터 패턴 제공부(180)는 미리 설정된 데이터 패턴을 생성할 수 있다. 다른 실시예에 있어서, 데이터 패턴 제공부(180)는 복수의 데이터 패턴을 저장하는 패턴 버퍼(181)를 구비할 수 있다. The
데이터 비교부(185)는 독출 회로(152)로부터 수신된 독출 데이터를 데이터 패턴 제공부(180)로부터 출력된 데이터 패턴과 비교할 수 있다. 또는 데이터 비교부(185)는 패턴 버퍼(185)를 액세스하여 독출 데이터와 복수의 데이터 패턴을 비교할 수 있다. 데이터 비교부(185)는 매칭 신호(RDM)를 출력할 수 있다. 독출된 데이터가 데이터 패턴과 매칭되면, 데이터 비교부(185)는 제1 레벨, 예컨대, 로직 하이의 매칭 신호(RDM)를 출력하고, 독출된 데이터가 데이터 패턴과 매칭되지 않으면, 데이터 비교부(185)는 제2 레벨, 예컨대 로직 로우의 매칭 신호(RDM)를 출력할 수 있다. 매칭 신호(RDM)는 출력 버퍼(172) 및 메모리 컨트롤러(도 23의 200c)에 제공될 수 있다. The
독출된 데이터가 데이터 패턴과 매칭되지 않으면, 출력 버퍼(172)는 데이터 패드(DQ)를 통해 독출된 데이터를 메모리 컨트롤러(200c)로 출력할 수 있다. 그러나, 독출된 데이터가 데이터 패턴과 매칭될 경우, 출력 버퍼(172)의 출력이 차단될 수 있다. 출력 버퍼(172)는 제1 레벨의 매칭 신호(RDM)에 응답하여 출력이 차단될 수 있다. 이에 따라 독출 데이터는 데이터 패드(DQ)를 통해 전송되지 못한다. 독출된 데이터가 패턴 버퍼(181)에 저장된 복수의 데이터 패턴들 중 하나와 매칭된 경우, 데이터 패턴 제공부(180)는 패턴 버퍼(181)내의 매칭된 데이터 패턴의 위치를 나타내는 패턴 정보(BPIF)를 출력할 수 있다. 패턴 정보(BPIF)는 메모리 컨트롤러(200c)로 제공될 수 있다. If the read data does not match the data pattern, the
도 25는 본 개시의 실시예에 따른 메모리 컨트롤러를 개략적으로 나타내는 블록도이다. 도 25의 메모리 컨트롤러(200c)는 도 23의 메모리 시스템(1000c)에 적용될 수 있다.25 is a schematic block diagram of a memory controller according to an exemplary embodiment of the present disclosure. The
도 25를 참조하면, 메모리 컨트롤러(200c)는 패턴 버퍼(220), 데이터 입력 버퍼9260) 및 선택기(290)를 포함할 수 있다. Referring to FIG. 25 , the
메모리 컨트롤러(200c)는 메모리 장치(100c)로부터 데이터(DATA) 및 매칭 신호(RDM)을 수신할 수 있다. 메모리 컨트롤러(200c)는 또한 메모리 장치(100c)로부터 패턴 정보(BPIF)를 수신할 수 있다. The
데이터 입력 버퍼(260)는 메모리 장치(100c)로부터 데이터(DATA)를 수신할 수 있다. 수신된 데이터(DATA)는 선택기(290)를 거쳐, 독출 데이터(RDATA)로서, 호스트(Host)에 전송될 수 있다. The
패턴 버퍼(220)는 복수의 패턴 데이터(Pattern1~Pattern m)을 저장할 수 있다. 패턴 버퍼(220)는 패턴 정보(BPIF)를 기초로 복수의 패턴 데이터(Pattern1~Pattern m) 중 하나를 선택하여 출력할 수 있다. 출력된 패턴 데이터는 선택기(290)를 거쳐, 독출 데이터(RADAT)로서 호스트(Host)로 전송될 수 있다. The
선택기(290)는 매칭 신호(RDM)에 기초하여, 데이터 입력 버퍼(260)로부터 제공되는 데이터(DATA) 및 패턴 버퍼(220)로부터 제공되는 데이터 패턴 중 하나를 독출 데이터(RDATA)로서 출력할 수 있다. 선택기(290)는 제1 레벨의 매칭 신호(RDM)에 응답하여, 데이터 패턴을 출력하고, 제2 레벨의 매칭 신호(RDM)에 응답하여 입력 버퍼(270)로부터 제공되는 데이터(DATA)를 출력할 수 있다. The
도 26은 본 개시의 실시예에 따른 메모리 장치가 적용되는 전자 장치의 동작 방법을 나타내는 흐름도이다. 도 26은 전자 장치의 노멀 동작들 중 독출 동작을 나타낸다. 전자 장치는 호스트(300), 메모리 컨트롤러(200) 및 메모리 장치(100)를 포함하며, 메모리 컨트롤러(200)에는 도 23 및 25를 참조하여 설명한 메모리 컨트롤러(200c)를 포함하고, 메모리 장치(100)는 도 23 및 도 24를 참조하여 설명한 메모리 장치(100c)를 포함할 수 있다. 26 is a flowchart illustrating an operating method of an electronic device to which a memory device according to an embodiment of the present disclosure is applied. 26 illustrates a read operation among normal operations of an electronic device. The electronic device includes a
도 26을 참조하면, 메모리 장치(100) 및 메모리 컨트롤러(200)는 데이터 패턴을 설정한다(S811, S812). 데이터 패턴은 메모리 장치(100)와 메모리 컨트롤러(200)사이에서 상호 규약된 데이터로서, 메모리 컨트롤러(200)와 메모리 장치(100)에서 공통적으로 설정될 수 있다. Referring to FIG. 26 , the
호스트(300)로부터 데이터 독출 요청이 수신되면(S820), 메모리 컨트롤러(200)는 독출 커맨드(RDCMD) 및 어드레스 신호(ADDR)를 메모리 장치(100)에 전송한다(S830). When a data read request is received from the host 300 (S820), the
메모리 장치(100)는 어드레스 신호(ADDR)에 대응하는 메모리 영역으로부터 데이터를 독출할 수 있다(S840). 메모리 장치(100)는 독출된 데이터가 데이터 패턴에 매칭되는지 판단할 수 있다(S850). 메모리 장치(100)는 독출된 데이터를 미리 설정된 데이터 패턴과 비교하고, 매칭 여부를 판단할 수 있다. The
데이터가 매칭될 경우, 메모리 장치(100)는 매칭 신호(RDM) 및 패턴 정보(BPIF)를 메모리 컨트롤러(200)에 전송할 수 있다(S861). 미리 설정된 데이터 패턴이 복수개일 경우, 메모리 컨트롤러(8610)는 패턴 정보(BPIF)를 기초로 복수의 데이터 패턴 중, 하나를 선택하고(S870), 선택된 데이터 패턴을 독출 데이터로서 호스트(300)로 전송할 수 있다(S881). When the data is matched, the
데이터가 매칭되지 않는 경우, 메모리 장치(100)는 독출된 데이터를 메모리 컨트롤러(200)에 전송하고, 메모리 컨트롤러(200)는 메모리 장치(100)로부터 수신된 데이터를 독출 데이터로서 호스트(300)에 전송할 수 있다(S882). If the data do not match, the
도 27은 본 개시의 실시예에 따른 메모리 시스템을 나타내는 블록도이고, 도 28은 메모리 시스템의 랭크에 인가되는 입력 신호의 타이밍도를 나타낸다. 27 is a block diagram illustrating a memory system according to an exemplary embodiment, and FIG. 28 is a timing diagram of input signals applied to ranks of the memory system.
도 27을 참조하면, 메모리 시스템(1000d)은 복수의 랭크(1100, 1200) 및 메모리 컨트롤러(200)를 포함할 수 있다. 복수의 랭크(1100, 1200)는 하나의 메모리 모듈에 탑재될 수 있다. 랭크는 동시에 커맨드와 어드레스 신호를 입력받으며, 동일한 칩 선택 신호(CS)에 따라 선택되는 메모리 장치로 정의될 수 있다. 예컨대, 메모리 모듈에서, 랭크는 동일한 칩 선택 신호(CS)에 따라 선택되는 DRAM 칩들의 집합으로 정의될 수 있다. 랭크는 메모리 모듈로 제공되는 칩 선택 신호(CS)를 이용하여 구분될 수 있다. Referring to FIG. 27 , a
제1 랭크(1100)는 제1 내지 제4 메모리 장치(101, 102, 103, 104)를 포함하고, 제2 랭크(1200)는 제5 내지 제8 메모리 장치(105, 106, 107, 108)를 포함할 수 있다. 제1 내지 제8 메모리 장치(101~108) 중 적어도 하나의 메모리 장치는 도 1 내지 도 18을 참조하여 설명한 본 개시의 실시예들에 따른 메모리 장치(100, 100a)로 구현될 수 있다. The
제1 랭크(1100) 및 제2 랭크(1200)의 메모리 장치들(101~108)은 동시에 커맨드/어드레스 신호(C/A)를 입력받을 수 있다. 이때, 제1 랭크(1100)의 메모리 장치들(101~104)은 제1 칩 선택 신호(CS0)에 의하여 선택되며, 제2 랭크(1200)의 메모리 장치들(105~108)은 제2 칩 선택 신호(CS1)에 의하여 선택될 수 있다. 제1 랭크(1100) 및 제2 랭크(1200)의 메모리 장치들(101~108)은 각각 데이터 패드(DQ[m-1:0])를 통해 데이터 버스(400)에 연결된다. The
제1 랭크(1100) 및 제2 랭크(1200)는 데이터 버스(400)를 공유한다. 제1 랭크(1100)가 데이터 버스(400)를 사용하고 있다면, 제 2 랭크(1200)는 데이터 버스(400)를 사용할 수 없다. 예를 들어, 제1 랭크(1100) 및 제2 랭크(1200)에 데이터를 기입하고자 할 경우, 메모리 컨트롤러(200)는 제1 랭크(1100)에 기입 명령 및 데이터를 송신하고, 데이터의 송신이 완료될 때까지, 즉 제1 랭크(1100)의 데이터 버스(400) 점유가 완료될 때까지 기다린 후, 제2 랭크(1200)에 기입 명령 및 데이터를 송신할 수 있다. 이에 따라 데이터 버스(400)를 통한 데이터 송수신 지연 시간이 메모리 시스템(1000a)의 동작 속도에 영향을 미치게된다. The
그러나, 도 1 내지 도 26을 참조하여 설명한, 본 개시의 실시예에 따른, 메모리 장치 및 메모리 시스템의 동작 방법에 따르면, 제1 랭크(1100)에서 패턴 기입 명령 수행 시, 제1 랭크(1100)는 메모리 컨트롤러(200)로부터 데이터를 수신하지 않으므로 데이터 버스(400)를 사용하지 않는다. 따라서, 메모리 컨트롤러(200)는 제1 랭크(1100)에 패턴 기입 명령을 송신한 후 즉시, 제2 랭크(1200)에 기입 명령(패턴 기입 명령 또는 노멀 기입 명령) 및 데이터를 송신할 수 있다. 제2 랭크(1100)는 데이터 버스(400)를 통해 데이터를 수신할 수 있다. 이와 유사하게 메모리 컨트롤러(200)는 제1 랭크(1100)에 패턴 기입 명령을 송신한 후 즉시, 제2 랭크(1200)에 독출 명령을 송신하고, 제2 랭크(1200)로부터 독출 데이터를 수신할 수 있다. 이에 따라, 제1 랭크(1100)가 패턴 기입 명령을 수행할 경우, 제2 랭크(1200)는 바로 기입 또는 독출 명령을 수행할 수 있다.However, according to the method of operating a memory device and a memory system according to an embodiment of the present disclosure described with reference to FIGS. 1 to 26 , when a pattern write command is executed in the
도 28을 참조하면, 기입 동작시, 클럭 신호(CLK)의 라이징 엣지에 동기되어, 기입 커맨드들, 예컨대 패턴 기입 커맨드 및 노멀 기입 커맨드(PW, NW)가 수신될 수 있다. 도시된 바와 같이, 패턴 기입 커맨드(PW)가 수신될 경우, 데이터는 수신되지 않는다. 데이터(Din)는 노멀 기입 커맨드(NW)가 수신된 후, 소정의 시간 이후에 수신될 수 있으며, 데이터(Din)가 수신되는 시간은 상대적으로 커맨드(CMD)가 수신되는 시간보다 길 수 있다. Referring to FIG. 28 , during a write operation, write commands such as a pattern write command and normal write commands PW and NW may be received in synchronization with the rising edge of the clock signal CLK. As shown, when the pattern write command PW is received, data is not received. The data Din may be received after a predetermined time after the normal write command NW is received, and the time at which the data Din is received may be longer than the time at which the command CMD is received.
도시된 바와 같이, 제1 랭크(1100, Rank0)에 패턴 기입 커맨드(PW)가 수신될 수 있다. 패턴 기입 커맨드(PW)에 따른 제1 기간(T1)에는 데이터(Din)가 수신되는 시간이 요구되지 않는다. 따라서, 클럭 신호(CLK)의 라이징 엣지(또는 클럭)에 응답하여 제1 랭크(1100)에 패턴 기입 커맨드(PW)가 수신된 후, 바로 다음 라이징 엣지(또는 다음 클럭)에 동기되어 제2 랭크(1200, Rank1)에 대한 기입 커맨드가 수신될 수 있다. 제1 랭크(1100)가 패턴 기입 명령을 수행할 때, 제2 랭크(1200)는 바로 노멀 기입 명령을 수행할 수 있다. 이에 따라, 메모리 시스템(1000d)의 동작 속도가 향상될 수 있다. 또한, 패턴 기입이 수행될 때, 메모리 컨트롤러(200)와 메모리 장치간 데이터의 송수신이 없어, 데이터 버스(400)가 사용되지 않으므로, 데이터 버스 효율(Utilization)이 향상될 수 있다. As shown, the pattern write command PW may be received in the first rank 1100 (Ran0). In the first period T1 according to the pattern writing command PW, the time for receiving the data Din is not required. Therefore, after the pattern write command PW is received in the
도 29a 및 도 29b는 본 개시의 실시예에 따른 메모리 컨트롤러 및 메모리 모듈을 나타내는 블록도이다. 29A and 29B are block diagrams illustrating a memory controller and a memory module according to an exemplary embodiment of the present disclosure.
도 29a를 참조하면, 메모리 시스템(2000A)은 메모리 모듈(2100A) 및 메모리 컨트롤러(2200A)를 포함한다. 메모리 모듈(2100A)은 인쇄 회로 기판(2120A), 복수의 메모리 칩들(2110A) 및 커넥터(2130A)를 포함할 수 있다. 복수의 메모리 칩들(2110A)은 인쇄 회로 기판(2120A)의 상면과 하면에 결합될 수 있다. 커넥터(2130A)는 도전선들(미도시)을 통해 복수의 메모리 칩들(2110A)과 전기적으로 연결된다. 또한, 커넥터(4230A)는 외부 호스트의 슬롯에 연결될 수 있다. 메모리 모듈(2100A)은 DIMM (Dual In-Line Memory Module) 형태일 수 있다.Referring to FIG. 29A , a
복수의 메모리 칩(2110A)들은 DRAM 셀과 같은 휘발성 메모리 또는 STT-MRAM 셀과 같은 비 휘발성 메모리 셀을 포함할 수 있다. 이 때, 메모리 칩(2110A)들은 동작 메모리, 캐시 메모리 등과 같이 컴퓨터 시스템의 데이터를 단기적으로 또는 임시로 저장할 수 있다. The plurality of
복수의 메모리 칩(2110a)들은 인쇄 회로 기판(2120A)의 길이 방향으로 나란해 2행으로 배치될 수 있다. 커넥터(4230A)로부터 상대적으로 먼 제1 행의 메모리 칩(2110A)들은 제1 랭크(R0)를 구성하고, 커넥터(4230A)로부터 인접한 제2 행의 메모리 칩들은 제2 랭크(R1)를 구성할 수 있다. The plurality of memory chips 2110a may be arranged in two rows parallel to each other in the longitudinal direction of the printed
제1 랭크(R0) 및 제2 랭크(R1)는 서로 다른 선택 신호에 의하여 활성화될 수 있다. The first rank R0 and the second rank R1 may be activated by different selection signals.
메모리 컨트롤러(2200A)는 커맨드를 큐잉하거나, 커맨드를 출력하는 동작을 수행할 수 있다. 메모리 시스템에서 메모리 컨트롤러(2200A)와 메모리 모듈(2100A) 사이에 디램 인터페이스가 적용될 수 있다. 본 개시의 실시예에 따른 디램 인터페이스에 따르면, 메모리 컨트롤러(2200A)는 메모리 칩(21100A)에 저장될 데이터가 미리 설정된 데이터 패턴에 매칭되면, 메모리 칩(21100A)에 패턴 기입 커맨드 및 어드레스 신호를 전송하고, 데이터는 전송하지 않을 수 있다. 메모리 칩(2110A)은 데이터의 수신 없이, 패턴 기입 커맨드에 응답하여, 내부적으로 데이터 패턴을 생성하고, 생성된 데이터 패턴을 메모리 셀 어레이에 기입할 수 있다. 메모리 칩(2110A)은 데이터 패턴을 저장하는 패턴 버퍼를 구비하고, 패턴 기입 커맨드에 응답하여 패턴 버퍼에 저장된 데이터 패턴 중 하나를 메모리 셀 어레이에 기입할 수 있다. The
도 29a의 메모리 시스템(2000A)에서 메모리 컨트롤러(2200A)는 메모리 모듈(2100A)과 별개로 구비되는 것으로 도시되었으나, 메모리 컨트롤러(2200A)는 메모리 모듈(2100A)에 구비될 수도 있다. 메모리 컨트롤러(2200A)는 인쇄 회로 기판(2110A)의 상면 또는 하면에 결합될 수 있으며, 도전선들(미도시)을 통해 메모리 칩들(2110A)과 통신할 수 있다. In the
한편, 도 29b에 도시된 바와 같이, 메모리 시스템(2000B)은 메모리 모듈(2100B) 및 메모리 컨트롤러(2200B)를 포함하며, 메모리 모듈(2100B)은 셀 어레이를 각각 포함하는 하나 이상의 반도체 칩과, 셀 어레이에 대한 메모리 동작을 관리하기 위한 버퍼 칩(2110B)을 포함할 수 있다. Meanwhile, as shown in FIG. 29B, the
버퍼 칩(2120B)은 메모리 컨트롤러(2200B)로부터 커맨드, 어드레스 신호 및 데이터를 수신하고, 랭크들(R0, R1) 중 선택되는 랭크에 커맨드, 데이터를 제공할 수 있다. 버퍼 칩(2120B)은 패턴 버퍼(2111B)를 구비할 수 있다. 메모리 컨트롤러(2200B)로부터 패턴 기입 명령이 수신되면, 버퍼 칩(2120B)은 패턴 버퍼(2111B)로부터 패턴 기입 명령에 대응하는 데이터 패턴을 출력하여 복수의 랭크들(R0, R1) 중 선택된 랭크에 포함되는 메모리 칩들(2110B)에 제공할 수 있다. 메모리 컨트롤러(2200B)로부터 노멀 기입 명령이 수신되면, 버퍼 칩(2120B)은 메모리 컨트롤러(2200B)로부터 수신되는 데이터를 복수의 랭크들(R0, R1) 중 선택된 랭크에 포함되는 메모리 칩들(2110B)에 제공할 수 있다.The
도 29b의 예에서는 메모리 컨트롤러의 기능의 일부가 LRDIMM 형태의 메모리 모듈에서 수행되는 예가 도시되었으나 본 발명의 실시예는 이에 국한될 필요는 없다. 예컨대, FBDIMM 형태의 메모리 모듈이 적용됨에 따라 관리 칩으로서 AMB(Advanced Memory Buffer) 칩이 메모리 모듈에 장착될 수도 있다. 이외에도, 다른 형태의 메모리 모듈이 적용되고, 전술한 메모리 컨트롤러의 기능의 적어도 일부가 메모리 모듈에서 수행되도록 구현될 수 있다.In the example of FIG. 29B , an example in which some of the functions of the memory controller are performed in an LRDIMM type memory module is illustrated, but embodiments of the present invention need not be limited thereto. For example, as a memory module in the form of an FBDIMM is applied, an Advanced Memory Buffer (AMB) chip may be mounted in the memory module as a management chip. In addition, other types of memory modules may be applied, and at least some of the functions of the above-described memory controller may be implemented in the memory module.
도 30은 복수의 반도체 레이어들을 구비하는 적층 구조의 메모리 장치를 도시한 블록도이다.30 is a block diagram illustrating a stacked memory device including a plurality of semiconductor layers.
도 30을 참조하면, 메모리 장치(3000)는 복수의 반도체 레이어(LA1 ~ LAn)를 구비할 수 있다. 반도체 레이어들(LA1 ~ LAn) 각각은 메모리 셀 어레이(1100)를 포함하는 메모리 칩일 수 있다. 또는, 반도체 레이어들(LA1 내지 LAn) 중 일부는 메모리 칩이고 다른 일부(또는, 어느 하나의 레이어)는 메모리 칩과 인터페이싱을 수행하는 컨트롤러 칩일 수 있다. 도 30의 예에서는 제n 레이어(LAn)가 컨트롤러 칩인 것으로 가정한다.Referring to FIG. 30 , the
컨트롤러 칩(LAn)은 메모리 칩들(LA1 내지 LA n-1)과 통신하고, 메모리 칩들(LA1 내지 LA n-1)의 동작 모드를 제어한다. 컨트롤러 칩(LAn)은 메모리 칩들(LA1 내지 LA n-1)의 모드 레지스터를 이용하여 다양한 기능들, 특성들 그리고 모드들을 제어할 수 있다. 또한, 컨트롤러 칩(LAn)은 커맨드를 큐잉하거나, 커맨드를 출력하는 동작을 수행할 수 있다. The controller chip LAn communicates with the memory chips LA1 to LA n−1 and controls operation modes of the memory chips LA1 to LA n−1. The controller chip LAn may control various functions, characteristics, and modes using mode registers of the memory chips LA1 to LA n−1. Also, the controller chip LAn may perform an operation of queuing a command or outputting a command.
또한, 컨트롤러 칩(LAn)은 패턴 버퍼(3210)를 포함할 수 있다. 메모리 컨트롤러(미도시)로부터 패턴 기입 명령이 수신되면, 컨트롤러 칩(LAn)은 패턴 버퍼(3210)로부터 패턴 기입 명령에 대응하는 데이터 패턴을 출력하여 메모리 칩들(LA1 내지 LA n-1)에 제공할 수 있다. 메모리 컨트롤러로부터 노멀 기입 명령이 수신되면, 컨트롤러 칩(LAn)은 메모리 컨트롤러로부터 수신되는 데이터를 메모리 칩들(LA1 내지 LA n-1)에 제공할 수 있다.Also, the controller chip LAn may include a
메모리 장치(3000)에서 적층 구조의 복수의 반도체 레이어들(LA1~LAn)은 관통 전극(Through Silicon Via; TSV, 9300)을 통해 상호 연결될 수 있다.In the
도 31은 본 개시의 실시예에 따른 컴퓨터 시스템을 나타내는 블록도이다. 31 is a block diagram illustrating a computer system according to an embodiment of the present disclosure.
컴퓨터 시스템(4000)은 데스크 톱 컴퓨터, 노트북 컴퓨터, 워크 스테이션, 핸드 헬스 디바이스, 웨어러블 디바이스 등일 수 있다. 도 21을 참조하면, 컴퓨터 시스템(4000)은 프로세서(4100), 시스템 컨트롤러(4200) 및 메모리 시스템(4300)을 포함한다. 컴퓨터 시스템(4000)은 프로세서 버스(4510), 확장 버스(4520), 입력 장치(4410), 출력 장치(4420) 및 저장 장치(4430)를 더 포함할 수 있다. 메모리 시스템(4300)은 적어도 하나의 메모리 장치(4320) 및 메모리 컨트롤러(4310)를 포함할 수 있다. 메모리 컨트롤러(4310)는 시스템 컨트롤러(4200)에 포함될 수 있다. The
프로세서(4100)는 특정 계산들 또는 태스크들을 실행하는 특정 소프트웨어를 실행하는 것과 같이 다양한 컴퓨팅 시스템을 실행할 수 있다. 예를 들어, 프로세서(4100)는 마이크로 프로세서 또는 중앙 처리 장치일 수 있다. 프로세서(4100)는 어드레스 버스, 제어 버스 및/또는 데이터 버스를 포함하는 프로세서 버스(4510)를 통하여 시스템 컨트롤러(4200)에 연결될 수 있다. 시스템 컨트롤러(4200)는 주변 구성 요소 상호 연결(Peripheral component interconnection, PCI) 버스와 같은 확장 버스(4520)에 연결된다. 이에 따라, 프로세서(4100)는 시스템 컨트롤러(4200)를 통하여 키보드 또는 마우스와 같은 하나 이상의 입력 장치(4410), 프린터 또는 디스플레이 장치와 같은 하나 이상의 출력 장치(4420) 또는 하드 디스크 드라이브, 솔리드 스테이트 드라이브 또는 CD-ROM과 같은 하나 이상의 저장 장치(4430)를 제어할 수 있다.
메모리 컨트롤러(4310)는 프로세서(4100)에 의해 제공된 명령을 수행하도록 메모리 장치(4320)를 제어할 수 있다. 메모리 장치(4320)는 메모리 컨트롤러(4310)로부터 제공된 데이터를 저장하고, 저장된 데이터를 메모리 컨트롤러(4310)에 제공할 수 있다. 메모리 장치(4320)는 복수의 메모리 칩들, 예를 들어, 동적 랜덤 액세스 메모리(Dynamic Random Access Memory, DRAM), 정적 랜덤 액세스 메모리(Static Random Access Memory, SRAM) 또는 비 휘발성 메모리 칩을 포함할 수 있다. The
한편, 본 개시의 실시예에 따르면, 메모리 컨트롤러(4310)는, 프로세서(4100)로부터 기입 명령과 함께 제공된 기입 데이터가 미리 설정된 데이터 패턴과 매칭되면, 메모리 장치(4320)에 데이터의 송신 없이 패턴 기입 커맨드를 전송할 수 있다. 메모리 장치(4320)는 미리 설정된 데이터 패턴을 메모리 셀 어레이에 기입함으로써, 프로세서(4100)로부터 기입이 요청된 기입 데이터를 저장할 수 있다. 이에 따라, 메모리 컨트롤러(4310)와 메모리 장치(4320) 사이의 데이터 송/수신이 감소되므로, 컴퓨터 시스템(4000)의 소비 전력이 감소되고, 또한 컴퓨터 시스템(4000)의 동작 속도가 향상될 수 있다. Meanwhile, according to an embodiment of the present disclosure, the
도 32는 본 개시의 실시예에 따른 메모리 시스템을 포함하는 컴퓨터 시스템을 나타내는 블록도이다. 도 32를 참조하면, 컴퓨터 시스템(5000)은 시스템 버스(5100)에 전기적으로 연결되는 중앙 처리장치(5200), 모뎀(5300), 유저 인터페이스(5400) 및 메모리 시스템(5500)을 구비할 수 있다. 메모리 장치(5520)는 DRAM 셀과 같은 휘발성 메모리 셀 또는 STT-MRAM 셀과 같은 비휘발성 메모리 셀을 포함할 수 있다. 32 is a block diagram illustrating a computer system including a memory system according to an exemplary embodiment of the present disclosure. Referring to FIG. 32 , a
메모리 시스템(5500)은 메모리 장치(5520)와 메모리 컨트롤러(5510)를 포함할 수 있다. 메모리 장치(5520)에는 중앙 처리 장치(5200)에 의해서 처리된 데이터 또는 외부에서 입력된 데이터가 저장될 수 있다. 메모리 장치(5520)는 컴퓨터 시스템(5000)에 요구되는 대용량의 데이터를 저장하기 위한 스토리지 또는 시스템 데이터 등의 빠른 액세스를 요하는 데이터를 저장하는 메인 메모리 용도로 적용될 수 있다.The
본 개시의 실시예에 따른 메모리 시스템(5500)은 중앙 처리 장치(5200) 또는 외부로부터 입력된 데이터가 미리 설정된 데이터 패턴에 매칭되는 경우, 메모리 컨트롤러(5510)와 메모리 장치(5520) 사이의 데이터 송/수신 없이 상기 데이터를 메모리 장치(5520)에 저장할 수 있다. 메모리 컨트롤러(5510)는 메모리 장치(5520)에 미리 설정된 데이터 패턴을 기입하라는 패턴 기입 커맨드를 전송한다. 메모리 장치(5520)는 패턴 기입 커맨드에 응답하여 내부적으로 데이터 패턴을 생성하고, 생성된 데이터 패턴을 저장함으로써, 중앙 처리 장치(5200) 또는 외부로부터 입력된 데이터를 저장할 수 있다. 메모리 컨트롤러(5510)와 메모리 장치(5520) 사이의 데이터 송/수신이 감소되므로, 컴퓨터 시스템(5000)의 소비 전력이 감소되고, 또한 컴퓨터 시스템(5000)의 동작 속도가 향상될 수 있다. In the
한편, 도시되지 않았으나, 컴퓨터 시스템(5000)에는 응용 칩셋(Application Chipset), 카메라 이미지 프로세서(Camera Image Processor: CIS), 입출력 장치 등이 더 제공될 수 있다.Meanwhile, although not shown, the
본 개시는 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 개시의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.Although the present disclosure has been described with reference to the embodiments shown in the drawings, this is only exemplary, and those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. Therefore, the true technical scope of protection of the present disclosure should be determined by the technical spirit of the appended claims.
100, 100a, 100b: 메모리 장치
200, 200a: 메모리 컨트롤러
180: 데이터 패턴 제공부
170: 입출력 버퍼
1000: 메모리 시스템100, 100a, 100b: memory device
200, 200a: memory controller
180: data pattern providing unit
170: I/O buffer
1000: memory system
Claims (17)
외부 장치로부터 패턴 기입 명령 및 제1 어드레스를 수신하면 패턴 기입 동작을 수행하고, 노멀 기입 명령, 제2 어드레스 및 기입 데이터를 수신하면 노멀 기입 동작을 수행하는 기입 회로;
상기 패턴 기입 명령에 응답하여 상기 기입 회로에 선택된 데이터 패턴을 제공하며, 상기 선택된 데이터 패턴은 상기 메모리 셀 어레이에 기입될 데이터 패턴인, 데이터 패턴 제공부; 및
상기 외부 장치로부터 상기 기입 데이터를 수신하고, 상기 노멀 기입 동작 동안 상기 기입 회로에 상기 기입 데이터를 제공하는 데이터 입력 버퍼를 포함하고,
상기 패턴 기입 동작 동안 상기 선택된 데이터 패턴은 상기 제1 어드레스에 의해 지정되는 상기 제1 메모리 뱅크에 기입되고, 상기 노멀 기입 동작 동안 상기 외부 장치로부터 수신된 상기 기입 데이터는 상기 제2 어드레스에 의해 지정되는 상기 제2 메모리 뱅크에 기입되며,
상기 제2 메모리 뱅크에서의 상기 노멀 기입 동작의 적어도 일부는 상기 제1 메모리 뱅크에서의 상기 패턴 기입 동작과 병렬로 수행되는 것을 특징으로 하는, 메모리 장치. a memory cell array including a first memory bank and a second memory bank, each of which is independently accessible;
a writing circuit that performs a pattern writing operation when receiving a pattern writing command and a first address from an external device, and performs a normal writing operation when receiving a normal writing command, a second address, and writing data;
a data pattern providing unit providing a selected data pattern to the writing circuit in response to the pattern writing command, wherein the selected data pattern is a data pattern to be written in the memory cell array; and
a data input buffer for receiving the write data from the external device and providing the write data to the write circuit during the normal write operation;
During the pattern write operation, the selected data pattern is written to the first memory bank designated by the first address, and the write data received from the external device during the normal write operation is designated by the second address. written to the second memory bank;
The memory device of claim 1 , wherein at least part of the normal write operation in the second memory bank is performed in parallel with the pattern write operation in the first memory bank.
상기 메모리 장치는 dynamic random access memory (DRAM) 을 포함하는 것을 특징으로 하는, 메모리 장치. According to claim 1,
The memory device, characterized in that the memory device includes dynamic random access memory (DRAM).
상기 노멀 기입 동작을 위해 상기 기입 데이터가 상기 메모리 장치의 DQ 핀들을 통해 수신되고,
상기 패턴 기입 동작을 위해 상기 기입 데이터가 수신되지 않는 것을 특징으로 하는, 메모리 장치. According to claim 2,
For the normal write operation, the write data is received through DQ pins of the memory device;
The memory device, characterized in that the write data is not received for the pattern write operation.
상기 노멀 기입 명령의 수신으로부터 소정의 지연 후에 상기 기입 데이터가 수신되는 것을 특징으로 하는, 메모리 장치. According to claim 3,
The memory device according to claim 1 , wherein the write data is received after a predetermined delay from reception of the normal write command.
복수의 데이터 패턴을 저장하는 패턴 버퍼를 포함하고, 상기 패턴 버퍼에 저장된 상기 복수의 데이터 패턴을 기초로 상기 선택된 데이터 패턴을 생성하는 것을 특징으로 하는, 메모리 장치. The method of claim 4, wherein the data pattern providing unit,
A memory device comprising a pattern buffer for storing a plurality of data patterns, and generating the selected data pattern based on the plurality of data patterns stored in the pattern buffer.
상기 DRAM은 상기 패턴 기입 동작 및 상기 노멀 기입 동작을 수행하기 위한 기입 명령 관련 신호들을 수신하고,
상기 신호들은 칩 선택 신호(/CS), 로우(row) 어드레스 스트로브 신호 (/RAS), 컬럼(column) 어드레스 스트로브 신호(/CAS) 및 기입 활성화 신호 (/WE)를 포함하고, 상기 칩 선택 신호(/CS), 상기 로우 어드레스 스트로브 신호(/RAS), 상기 컬럼 어드레스 스트로브 신호(/CAS) 및 상기 기입 활성화 신호(/WE)의 로직 레벨들은 각각, 로우, 하이, 로우 및 로우이고,
상기 DRAM은 상기 외부 장치로부터 모드 신호를 더 수신하고, 상기 모드 신호는 상기 수신된 기입 명령이 상기 패턴 기입 명령인지 또는 상기 노멀 기입 명령인지를 식별하는 것을 특징으로 하는, 메모리 장치. According to claim 5,
The DRAM receives write command related signals for performing the pattern write operation and the normal write operation;
The signals include a chip select signal (/CS), a row address strobe signal (/RAS), a column address strobe signal (/CAS) and a write enable signal (/WE), and the chip select signal logic levels of (/CS), the row address strobe signal (/RAS), the column address strobe signal (/CAS), and the write enable signal (/WE) are low, high, low, and low, respectively;
wherein the DRAM further receives a mode signal from the external device, and the mode signal identifies whether the received write command is the pattern write command or the normal write command.
상기 모드 신호는 상기 복수의 데이터 패턴 중 상기 선택된 데이터 패턴을 식별하는 것을 특징으로 하는, 메모리 장치.According to claim 6,
The memory device, characterized in that the mode signal identifies the selected data pattern of the plurality of data patterns.
상기 모드 신호는 어드레스 신호들의 전송에 사용되지 않는 적어도 세 개의 어드레스 핀을 통해 수신되는 것을 특징으로 하는, 메모리 장치. According to claim 7,
The memory device, characterized in that the mode signal is received through at least three address pins not used for transmission of address signals.
상기 메모리 장치는 버퍼 데이터와 함께 패턴 저장 명령을 더 수신하고, 상기 버퍼 데이터는 상기 복수의 데이터 패턴 중 하나로서 상기 패턴 버퍼에 저장되는 것을 특징으로 하는, 메모리 장치. According to claim 8,
The memory device, characterized in that the memory device further receives a pattern storage command together with buffer data, and the buffer data is stored in the pattern buffer as one of the plurality of data patterns.
상기 복수의 데이터 패턴은 사용자 정의 데이터 패턴 및/또는 상기 메모리 장치에 빈번하게 기입되는 데이터 패턴을 포함하는 것을 특징으로 하는, 메모리 장치. According to claim 9,
The plurality of data patterns include a user-defined data pattern and/or a data pattern frequently written to the memory device.
상기 복수의 데이터 패턴은 로직 레벨이 모두 로우인 데이터 패턴 및/또는 로직 레벨이 모두 하이인 데이터 패턴을 포함하는 것을 특징으로 하는, 메모리 장치. According to claim 10,
The plurality of data patterns may include data patterns having all low logic levels and/or data patterns having all high logic levels.
상기 패턴 기입 명령 및 상기 노멀 기입 명령은, 각각 클록 신호의 제1 라이징 엣지 및 제2 라이징 엣지에 동기되어 수신되고, 상기 클록 신호의 상기 제2 라이징 엣지는 상기 제1 라이징 엣지 직후에 이어지는 것을 특징으로 하는, 메모리 장치. According to claim 10,
The pattern write command and the normal write command are received in synchronization with a first rising edge and a second rising edge of a clock signal, respectively, and the second rising edge of the clock signal follows immediately after the first rising edge. , a memory device.
호스트로부터 기입 요청, 어드레스 정보 및 데이터를 수신하는 수신 회로; 및
상기 데이터를 상기 데이터 패턴 버퍼에 저장된 상기 데이터 패턴과 비교하는 데이터 비교부를 포함하고,
상기 비교부의 비교 결과를 기초로 패턴 기입 명령 및 노멀 기입 명령 중 하나를 생성하고,
상기 비교 결과가 상기 데이터와 상기 데이터 패턴의 일치이면, 상기 패턴 기입 명령 및 제1 어드레스를 메모리 장치로 전송하고,
상기 비교 결과가 상기 데이터와 상기 데이터 패턴의 불일치면, 상기 노멀 기입 명령, 제2 어드레스 및 기입 데이터를 상기 메모리 장치로 전송하고,
상기 패턴 기입 명령은 상기 데이터 패턴이 상기 호스트로부터 수신된 상기 데이터와 일치하는 것을 나타내는 모드 신호를 포함하는 것을 특징으로 하는, 메모리 컨트롤러. a pattern buffer for storing data patterns;
a receiving circuit for receiving a write request, address information and data from a host; and
A data comparison unit for comparing the data with the data pattern stored in the data pattern buffer;
Generates one of a pattern write command and a normal write command based on the comparison result of the comparison unit;
If the comparison result matches the data and the data pattern, transmits the pattern write command and the first address to a memory device;
If the comparison result is inconsistent between the data and the data pattern, transmit the normal write command, second address, and write data to the memory device;
The memory controller of claim 1 , wherein the pattern write command includes a mode signal indicating that the data pattern matches the data received from the host.
상기 모드 신호는, 상기 패턴 기입 명령에 응답하여 상기 메모리 장치에 저장된 데이터 패턴을 식별하고, 상기 메모리 장치에 저장된 데이터 패턴은 상기 호스트로부터 수신된 상기 데이터와 일치하는 상기 데이터 패턴과 동일한 것을 특징으로 하는, 메모리 컨트롤러. According to claim 13,
The mode signal identifies a data pattern stored in the memory device in response to the pattern write command, and the data pattern stored in the memory device is identical to the data pattern that matches the data received from the host. , memory controller.
상기 데이터 패턴을 상기 메모리 장치에 저장하기 위해 상기 데이터 패턴과 함께 패턴 저장 명령을 더 전송하는 것을 특징으로 하는, 메모리 컨트롤러. 16. The method of claim 15, wherein the memory controller,
Characterized in that, the memory controller further transmits a pattern storage command together with the data pattern to store the data pattern in the memory device.
상기 패턴 기입 명령 및 상기 노멀 기입 명령은, 각각 클록 신호의 제1 라이징 엣지 및 제2 라이징 엣지에 동기되어 수신되고, 상기 클록 신호의 상기 제2 라이징 엣지는 상기 제1 라이징 엣지 직후에 이어지는 것을 특징으로 하는, 메모리 컨트롤러.
17. The method of claim 16,
The pattern write command and the normal write command are received in synchronization with a first rising edge and a second rising edge of a clock signal, respectively, and the second rising edge of the clock signal follows immediately after the first rising edge. , memory controller.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160008093A KR102491579B1 (en) | 2016-01-22 | 2016-01-22 | Memory device, memory module and memory system |
US15/264,774 US9805802B2 (en) | 2015-09-14 | 2016-09-14 | Memory device, memory module, and memory system |
US15/730,379 US10002668B2 (en) | 2015-09-14 | 2017-10-11 | Memory device, memory module, and memory system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160008093A KR102491579B1 (en) | 2016-01-22 | 2016-01-22 | Memory device, memory module and memory system |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170088138A KR20170088138A (en) | 2017-08-01 |
KR102491579B1 true KR102491579B1 (en) | 2023-01-25 |
Family
ID=59650113
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160008093A KR102491579B1 (en) | 2015-09-14 | 2016-01-22 | Memory device, memory module and memory system |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102491579B1 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102591123B1 (en) | 2018-07-16 | 2023-10-19 | 에스케이하이닉스 주식회사 | Semiconductor device |
KR20200109756A (en) | 2019-03-14 | 2020-09-23 | 에스케이하이닉스 주식회사 | Semiconductor device |
KR20200119669A (en) | 2019-04-10 | 2020-10-20 | 에스케이하이닉스 주식회사 | Semiconductor device |
KR20210077082A (en) | 2019-12-16 | 2021-06-25 | 에스케이하이닉스 주식회사 | Semiconductor device |
WO2024035561A1 (en) * | 2022-08-09 | 2024-02-15 | Rambus Inc. | Memory with interleaved preset |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050060600A1 (en) | 2003-09-12 | 2005-03-17 | Jeddeloh Joseph M. | System and method for on-board timing margin testing of memory modules |
US20070011596A1 (en) * | 2005-06-22 | 2007-01-11 | Jungwon Suh | Parity check circuit to improve quality of memory device |
JP2008059449A (en) * | 2006-09-01 | 2008-03-13 | Canon Inc | Memory control circuit and memory control method |
JP2009529202A (en) * | 2006-03-03 | 2009-08-13 | クゥアルコム・インコーポレイテッド | Method and apparatus for testing data steering logic for a data storage device having independently addressable subunits |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6317463B1 (en) * | 1999-06-14 | 2001-11-13 | Mitsubishi Electric Research Laboratories, Inc. | Method and apparatus for filtering data-streams |
US8510598B2 (en) | 2010-03-29 | 2013-08-13 | Dot Hill Systems Corporation | Buffer management method and apparatus for power reduction during flush operation |
KR20120136474A (en) * | 2011-06-09 | 2012-12-20 | 삼성전자주식회사 | Apparatus and method for testing semiconductor device |
-
2016
- 2016-01-22 KR KR1020160008093A patent/KR102491579B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050060600A1 (en) | 2003-09-12 | 2005-03-17 | Jeddeloh Joseph M. | System and method for on-board timing margin testing of memory modules |
US20070011596A1 (en) * | 2005-06-22 | 2007-01-11 | Jungwon Suh | Parity check circuit to improve quality of memory device |
JP2009529202A (en) * | 2006-03-03 | 2009-08-13 | クゥアルコム・インコーポレイテッド | Method and apparatus for testing data steering logic for a data storage device having independently addressable subunits |
JP2008059449A (en) * | 2006-09-01 | 2008-03-13 | Canon Inc | Memory control circuit and memory control method |
Also Published As
Publication number | Publication date |
---|---|
KR20170088138A (en) | 2017-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10002668B2 (en) | Memory device, memory module, and memory system | |
JP6373559B2 (en) | MEMORY DEVICE AND MEMORY DEVICE OPERATION METHOD | |
KR102491579B1 (en) | Memory device, memory module and memory system | |
US10991446B2 (en) | Electronic device performing training on memory device by rank unit and training method thereof | |
US11799479B2 (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 | |
KR101454090B1 (en) | Systems, methods, and apparatuses for hybrid memory | |
KR102025341B1 (en) | Memory controller, Memory system including the memory controller and Method of operating the memory controller | |
KR102453542B1 (en) | Memory device supporting skip calculation mode and method of operating the same | |
KR20210041357A (en) | Memory device including interface circuit and operating method thereof | |
JP2018152112A (en) | Memory device and method of operating the same | |
US20170147230A1 (en) | Memory device and memory system having heterogeneous memories | |
US11423970B2 (en) | Memory device receiving data clock signals and operation method thereof | |
US20200176062A1 (en) | Memory devices and methods of processing security data thereof | |
US11610624B2 (en) | Memory device skipping refresh operation and operation method thereof | |
US9176906B2 (en) | Memory controller and memory system including the same | |
KR20170032032A (en) | Memory device and memory system | |
EP4375840A1 (en) | Memory controller, electronic system including the same and method of controlling memory access | |
KR20200145647A (en) | Memory device, operation method of the memory device, memory module and operation method of the memory module | |
TW202403556A (en) | Memory system and operating method thereof | |
CN114721980A (en) | Accelerator, computing system including the same, and method of operating the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |