KR102585511B1 - 스토리지 디바이스의 초기화 - Google Patents
스토리지 디바이스의 초기화 Download PDFInfo
- Publication number
- KR102585511B1 KR102585511B1 KR1020197028429A KR20197028429A KR102585511B1 KR 102585511 B1 KR102585511 B1 KR 102585511B1 KR 1020197028429 A KR1020197028429 A KR 1020197028429A KR 20197028429 A KR20197028429 A KR 20197028429A KR 102585511 B1 KR102585511 B1 KR 102585511B1
- Authority
- KR
- South Korea
- Prior art keywords
- initialization
- signal
- memory
- storage device
- state
- Prior art date
Links
- 230000004044 response Effects 0.000 claims abstract description 16
- 238000000034 method Methods 0.000 claims description 21
- 230000002596 correlated effect Effects 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 19
- 239000000463 material Substances 0.000 description 18
- 230000008569 process Effects 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 9
- 239000003446 ligand Substances 0.000 description 8
- 230000007704 transition Effects 0.000 description 8
- 239000012212 insulator Substances 0.000 description 5
- 229910000314 transition metal oxide Inorganic materials 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 3
- PXHVJJICTQNCMI-UHFFFAOYSA-N Nickel Chemical compound [Ni] PXHVJJICTQNCMI-UHFFFAOYSA-N 0.000 description 3
- KDLHZDBZIXYQEI-UHFFFAOYSA-N Palladium Chemical compound [Pd] KDLHZDBZIXYQEI-UHFFFAOYSA-N 0.000 description 3
- 229910052799 carbon Inorganic materials 0.000 description 3
- 239000004020 conductor Substances 0.000 description 3
- 230000001276 controlling effect Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- XEEYBQQBJWHFJM-UHFFFAOYSA-N Iron Chemical compound [Fe] XEEYBQQBJWHFJM-UHFFFAOYSA-N 0.000 description 2
- UQSXHKLRYXJYBZ-UHFFFAOYSA-N Iron oxide Chemical compound [Fe]=O UQSXHKLRYXJYBZ-UHFFFAOYSA-N 0.000 description 2
- RTAQQCXQSZGOHL-UHFFFAOYSA-N Titanium Chemical compound [Ti] RTAQQCXQSZGOHL-UHFFFAOYSA-N 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 239000000872 buffer Substances 0.000 description 2
- 239000011651 chromium Substances 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000000875 corresponding effect Effects 0.000 description 2
- 239000006277 exogenous ligand Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- LBSANEJBGMCTBH-UHFFFAOYSA-N manganate Chemical compound [O-][Mn]([O-])(=O)=O LBSANEJBGMCTBH-UHFFFAOYSA-N 0.000 description 2
- 229910000480 nickel oxide Inorganic materials 0.000 description 2
- GNRSAWUEBMWBQH-UHFFFAOYSA-N oxonickel Chemical compound [Ni]=O GNRSAWUEBMWBQH-UHFFFAOYSA-N 0.000 description 2
- 229910052763 palladium Inorganic materials 0.000 description 2
- OYPRJOBELJOOCE-UHFFFAOYSA-N Calcium Chemical compound [Ca] OYPRJOBELJOOCE-UHFFFAOYSA-N 0.000 description 1
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- ZOKXTWBITQBERF-UHFFFAOYSA-N Molybdenum Chemical compound [Mo] ZOKXTWBITQBERF-UHFFFAOYSA-N 0.000 description 1
- KJTLSVCANCCWHF-UHFFFAOYSA-N Ruthenium Chemical compound [Ru] KJTLSVCANCCWHF-UHFFFAOYSA-N 0.000 description 1
- BQCADISMDOOEFD-UHFFFAOYSA-N Silver Chemical compound [Ag] BQCADISMDOOEFD-UHFFFAOYSA-N 0.000 description 1
- ATJFFYVFTNAWJD-UHFFFAOYSA-N Tin Chemical compound [Sn] ATJFFYVFTNAWJD-UHFFFAOYSA-N 0.000 description 1
- HCHKCACWOHOZIP-UHFFFAOYSA-N Zinc Chemical compound [Zn] HCHKCACWOHOZIP-UHFFFAOYSA-N 0.000 description 1
- BQENXCOZCUHKRE-UHFFFAOYSA-N [La+3].[La+3].[O-][Mn]([O-])=O.[O-][Mn]([O-])=O.[O-][Mn]([O-])=O Chemical compound [La+3].[La+3].[O-][Mn]([O-])=O.[O-][Mn]([O-])=O.[O-][Mn]([O-])=O BQENXCOZCUHKRE-UHFFFAOYSA-N 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 229910052782 aluminium Inorganic materials 0.000 description 1
- XAGFODPZIPBFFR-UHFFFAOYSA-N aluminium Chemical compound [Al] XAGFODPZIPBFFR-UHFFFAOYSA-N 0.000 description 1
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 description 1
- 229910052793 cadmium Inorganic materials 0.000 description 1
- BDOSMKKIYDKNTQ-UHFFFAOYSA-N cadmium atom Chemical compound [Cd] BDOSMKKIYDKNTQ-UHFFFAOYSA-N 0.000 description 1
- 229910052791 calcium Inorganic materials 0.000 description 1
- 239000011575 calcium Substances 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 150000001768 cations Chemical class 0.000 description 1
- 229910052804 chromium Inorganic materials 0.000 description 1
- 229910017052 cobalt Inorganic materials 0.000 description 1
- 239000010941 cobalt Substances 0.000 description 1
- GUTLYIVDDKVIGB-UHFFFAOYSA-N cobalt atom Chemical compound [Co] GUTLYIVDDKVIGB-UHFFFAOYSA-N 0.000 description 1
- 229910000428 cobalt oxide Inorganic materials 0.000 description 1
- IVMYJDGYRUAWML-UHFFFAOYSA-N cobalt(ii) oxide Chemical compound [Co]=O IVMYJDGYRUAWML-UHFFFAOYSA-N 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000005323 electroforming Methods 0.000 description 1
- 230000005669 field effect Effects 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 229910052737 gold Inorganic materials 0.000 description 1
- 239000010931 gold Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 229910052742 iron Inorganic materials 0.000 description 1
- 229910052746 lanthanum Inorganic materials 0.000 description 1
- FZLIPJUXYLNCLC-UHFFFAOYSA-N lanthanum atom Chemical compound [La] FZLIPJUXYLNCLC-UHFFFAOYSA-N 0.000 description 1
- WPBNNNQJVZRUHP-UHFFFAOYSA-L manganese(2+);methyl n-[[2-(methoxycarbonylcarbamothioylamino)phenyl]carbamothioyl]carbamate;n-[2-(sulfidocarbothioylamino)ethyl]carbamodithioate Chemical compound [Mn+2].[S-]C(=S)NCCNC([S-])=S.COC(=O)NC(=S)NC1=CC=CC=C1NC(=S)NC(=O)OC WPBNNNQJVZRUHP-UHFFFAOYSA-L 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008018 melting Effects 0.000 description 1
- 238000002844 melting Methods 0.000 description 1
- QSHDDOUJBYECFT-UHFFFAOYSA-N mercury Chemical compound [Hg] QSHDDOUJBYECFT-UHFFFAOYSA-N 0.000 description 1
- 229910052753 mercury Inorganic materials 0.000 description 1
- 229910052751 metal Inorganic materials 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 229910052750 molybdenum Inorganic materials 0.000 description 1
- 239000011733 molybdenum Substances 0.000 description 1
- 239000002070 nanowire Substances 0.000 description 1
- 229910052759 nickel Inorganic materials 0.000 description 1
- SIWVEOZUMHYXCS-UHFFFAOYSA-N oxo(oxoyttriooxy)yttrium Chemical compound O=[Y]O[Y]=O SIWVEOZUMHYXCS-UHFFFAOYSA-N 0.000 description 1
- 229910052760 oxygen Inorganic materials 0.000 description 1
- 239000001301 oxygen Substances 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 229910052697 platinum Inorganic materials 0.000 description 1
- BASFCYQUMIYNBI-UHFFFAOYSA-N platinum Substances [Pt] BASFCYQUMIYNBI-UHFFFAOYSA-N 0.000 description 1
- 229910021420 polycrystalline silicon Inorganic materials 0.000 description 1
- 229920005591 polysilicon Polymers 0.000 description 1
- 230000005233 quantum mechanics related processes and functions Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 229910052702 rhenium Inorganic materials 0.000 description 1
- WUAPFZMCVAUBPE-UHFFFAOYSA-N rhenium atom Chemical compound [Re] WUAPFZMCVAUBPE-UHFFFAOYSA-N 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 229910052707 ruthenium Inorganic materials 0.000 description 1
- 229910052709 silver Inorganic materials 0.000 description 1
- 239000004332 silver Substances 0.000 description 1
- 238000007711 solidification Methods 0.000 description 1
- 230000008023 solidification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- VEALVRVVWBQVSL-UHFFFAOYSA-N strontium titanate Chemical compound [Sr+2].[O-][Ti]([O-])=O VEALVRVVWBQVSL-UHFFFAOYSA-N 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 229910052718 tin Inorganic materials 0.000 description 1
- 229910052719 titanium Inorganic materials 0.000 description 1
- 239000010936 titanium Substances 0.000 description 1
- 229910052723 transition metal Inorganic materials 0.000 description 1
- 150000003623 transition metal compounds Chemical class 0.000 description 1
- 150000003624 transition metals Chemical class 0.000 description 1
- 229910052720 vanadium Inorganic materials 0.000 description 1
- GPPXJZIENCGNKB-UHFFFAOYSA-N vanadium Chemical compound [V]#[V] GPPXJZIENCGNKB-UHFFFAOYSA-N 0.000 description 1
- 229910052725 zinc Inorganic materials 0.000 description 1
- 239000011701 zinc Substances 0.000 description 1
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/20—Memory cell initialisation circuits, e.g. when powering up or down, memory clear, latent image memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0069—Writing or programming circuits or methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0632—Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/41—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
- G11C11/413—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0007—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising metal oxide memory material, e.g. perovskites
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0023—Address circuits or decoders
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0061—Timing circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/24—Memory cell safety or protection circuits, e.g. arrangements for preventing inadvertent reading or writing; Status cells; Test cells
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L27/00—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
- H01L27/02—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
- H01L27/04—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body
- H01L27/10—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body including a plurality of individual components in a repetitive configuration
- H01L27/101—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body including a plurality of individual components in a repetitive configuration including resistors or capacitors only
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10N—ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10N70/00—Solid-state devices having no potential barriers, and specially adapted for rectifying, amplifying, oscillating or switching
- H10N70/20—Multistable switching devices, e.g. memristors
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10N—ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10N70/00—Solid-state devices having no potential barriers, and specially adapted for rectifying, amplifying, oscillating or switching
- H10N70/801—Constructional details of multistable switching devices
- H10N70/881—Switching materials
- H10N70/883—Oxides or nitrides
- H10N70/8833—Binary metal oxides, e.g. TaOx
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2213/00—Indexing scheme relating to G11C13/00 for features not covered by this group
- G11C2213/30—Resistive cell, memory material aspects
- G11C2213/32—Material having simple binary metal oxide structure
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Power Engineering (AREA)
- Materials Engineering (AREA)
- Chemical & Material Sciences (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Human Computer Interaction (AREA)
- Semiconductor Memories (AREA)
- Static Random-Access Memory (AREA)
- Read Only Memory (AREA)
- Logic Circuits (AREA)
Abstract
각각의 제1 신호 라인들 및 제2 신호 라인들에 연결된 복수의 비트셀들을 포함하는 스토리지 부분 및 상기 제1 신호 라인들 및 상기 제2 신호 라인들을 통해 상기 복수의 비트셀들의 메모리 상태를 변경하기 위한 제어 로직을 갖는 스토리지 디바이스; 및 상기 스토리지 디바이스에 연결되어 하나 이상의 초기화 신호들을 스토리지 디바이스에 전송하기 위한 메모리 컨트롤러를 포함하고, 상기 스토리지 디바이스는 상기 하나 이상의 초기화 신호들에 응답하여 클럭 사이클에 걸쳐 상기 스토리지 부분을 초기화하는, 시스템이 제공된다.
Description
본 발명은 컴퓨팅 시스템들에서 메모리에 액세스하기 위한 기술에 관한 것이고, 특히 메모리 내의 비트들을 초기화하기 위한 기술에 관한 것이지만, 전적으로 그에 대한 것만은 아니다.
컴퓨팅 시스템에서, 서로 다른 애플리케이션들(또는 프로세스들)은 동일한 메모리를 사용할 수 있고, 이에 의해 후속 애플리케이션이 이전 애플리케이션에 의해 사용되었던 메모리로부터의 데이터에 액세스하거나 데이터를 복구할 수 있고, 이에 의해 복구된 데이터는 민감한/보안 정보를 포함할 수 있다. 예를 들면, 이러한 액세스는 영구 메모리를 갖는 시스템들에서 정전으로부터 재부팅 후에 발생할 수 있다.
이러한 액세스를 방지하기 위해, 메모리, 또는 그 일부는 애플리케이션에 의한 액세스 전에, 또는 애플리케이션의 효율을 증가시키도록 초기화될 수 있다(예를 들면, 암호화 동작).
이러한 초기화는 초기화를 위한 커널 제로화를 포함할 수 있으므로 데이터가 다른 프로세스에 유출되지 않을 것이다.
또한, Linux는, 페이지들이 쓰기(즉 "Copy-on-Write")되고 있을 때 느린 초기화를 행하는 한편, FreeBSD는 빠른 초기화를 행하며, 이는, 다수의 클럭 사이클들에 걸쳐 메모리의 복수의 페이지들을 초기화하고 할당을 위한 메모리 풀을 유지함에 의한다. 유저공간 애플리케이션들은 C에서와 같이 memset에 의한 할당 후에 힙 메모리를 초기화하거나, 또는 C++ 또는 C#에서와 같이 생성자에 의해 암묵적으로 초기화되는 것이 필요하다.
또한, 하이퍼바이저는, 해당 페이지들을 또 다른 머신에 할당하기 전에, 예를 들면 가상 머신간 보안/데이터 프라이버시를 위해 다수의 클럭 사이클들에 걸쳐 물리 페이지들을 초기화한다.
그러나, 메모리 용량 및 애플리케이션 요구가 증가함에 따라, 초기화는 점차 시간 및 전력 소비적인 프로세스로 되고 있다. 따라서, 초기화를 실시하기 위한 개선된 방법에 대한 필요성이 있다.
제1 기술에 따르면, 각각의 제1 신호 라인들 및 제2 신호 라인들에 연결된 복수의 비트셀들을 포함하는 스토리지 부분 및 상기 제1 신호 라인들 및 상기 제2 신호 라인들을 통해 상기 복수의 비트셀들의 메모리 상태를 변경하기 위한 제어 로직을 갖는 스토리지 디바이스; 및 상기 스토리지 디바이스에 연결되어 하나 이상의 초기화 신호들을 스토리지 디바이스에 전송하기 위한 메모리 컨트롤러를 포함하고, 상기 스토리지 디바이스는 상기 하나 이상의 초기화 신호들에 응답하여 클럭 사이클에 걸쳐 상기 스토리지 부분을 초기화하는, 시스템이 제공된다.
추가 기술에 따르면, 스토리지 디바이스 상의 스토리지의 일부를 초기화하는 방법으로서, 메모리 컨트롤러에서, 적어도 부분적으로, 상기 스토리지의 일부를 초기화하는 버스 마스터로부터의 명령어들에 의거하여 초기화 신호들을 생성하는 스텝 ― 상기 스토리지의 일부는 각각의 제1 신호 라인들 및 제2 신호 라인들에 연결된 복수의 비트셀들을 포함함 ―; 상기 스토리지 디바이스에서, 상기 초기화 신호들을 디코딩하는 스텝; 및 상기 스토리지 디바이스에서, 클럭 사이클에 걸쳐 스토리지 부분을 초기화하는 스텝을 포함하는, 방법이 제공된다.
추가 기술에 따르면, 프로세서 상에서 실행 시, 상기 프로세서에게, 상기 방법을 수행하게 하는 코드를 운반하는, 비일시적인 데이터 캐리어가 제공된다.
추가 기술에 따르면, 버스 마스터로부터의 액세스 요청들을 수신하기 위한 하나 이상의 버퍼들; 상기 액세스 요청들이 실행되는 순서를 결정하기 위한 중재기; 및 적어도 부분적으로, 상기 액세스 요청들에 의거하여 하드웨어 신호들을 생성하기 위한 신호 인터페이스를 포함하고, 상기 하드웨어 신호들은, 초기화 신호, 초기화 어드레스 신호, 초기화 범위 신호, 및 초기화 데이터 신호 중 하나 이상을 포함하는, 메모리 컨트롤러가 제공된다.
추가 기술에 따르면, 각각의 제1 신호 라인들 및 제2 신호 라인들에 연결된 복수의 비트셀들을 포함하는 어드레서블 부분, 및 상기 비트셀들의 메모리 상태를 변경하기 위한 제어 로직을 갖는 스토리지 디바이스로서, 상기 스토리지 디바이스는, 클럭 사이클에 걸쳐 복수의 비트셀들을 초기화하는, 스토리지 디바이스가 제공된다.
도 1은 실시형태에 따른 컴퓨팅 시스템의 개략적 블록도.
도 2는 실시형태에 따른 메모리 컨트롤러의 개략적 블록도.
도 3a는 종래기술 배치에 따른 메모리 및 메모리 컨트롤러의 개략적 블록도.
도 3b는 도 3a의 메모리의 일부를 초기화하기 위한 개략적 타이밍도.
도 4a는 본 기술을 이용하는 실시형태에 따른 메모리 컨트롤러 및 메모리의 개략도.
도 4b는 도 4a의 메모리의 일부를 초기화하기 위한 개략적 타이밍도.
도 4c 및 4d는 본 기술을 이용하는 실시형태에 따른 메모리 컨트롤러 및 메모리의 개략도.
도 5는 본 기술을 이용하는 실시형태에 따른 메모리 어레이를 위한 아키텍처의 개략도.
도 6은 본 기술을 이용하는 실시형태에 따른 메모리의 일부를 초기화하는 프로세스를 나타내는 예시적 흐름도.
도 2는 실시형태에 따른 메모리 컨트롤러의 개략적 블록도.
도 3a는 종래기술 배치에 따른 메모리 및 메모리 컨트롤러의 개략적 블록도.
도 3b는 도 3a의 메모리의 일부를 초기화하기 위한 개략적 타이밍도.
도 4a는 본 기술을 이용하는 실시형태에 따른 메모리 컨트롤러 및 메모리의 개략도.
도 4b는 도 4a의 메모리의 일부를 초기화하기 위한 개략적 타이밍도.
도 4c 및 4d는 본 기술을 이용하는 실시형태에 따른 메모리 컨트롤러 및 메모리의 개략도.
도 5는 본 기술을 이용하는 실시형태에 따른 메모리 어레이를 위한 아키텍처의 개략도.
도 6은 본 기술을 이용하는 실시형태에 따른 메모리의 일부를 초기화하는 프로세스를 나타내는 예시적 흐름도.
사용되는 동일한 부호는 명세서 전체에서 동일한 특징부를 설명하는데 사용될 것이다.
도 1은, 본 실시예에서 프로세서(2)를 포함하는 버스 마스터(2)를 포함하는 컴퓨팅 시스템(1)의 블록도를 개략적으로 나타낸다.
프로세서는 범용 프로세서, 네트워크 프로세서, 애플리케이션 프로세서(예를 들면, 모바일 폰에서 사용됨), 또는 다른 타입의 프로세서(RISC(reduced instruction set computer) 프로세서 또는 CISC(complex instruction set computer) 프로세서를 포함함)를 포함할 수 있다. 또한, 프로세서(2)는 단일 또는 다수의 코어를 가질 수 있다.
본 실시예에서, 프로세서(2)는, 프로세서(2)에 로컬인 데이터(L1 D) 및 명령어들(L1 I)을 캐싱하기 위한 레벨 1(L1) 캐시(4)로서 나타난 로컬 메모리(4)를 포함한다.
배선 또는 버스(6)(이하 "시스템 버스"(6))는 프로세서(2)를 메모리 컨트롤러(8)에 연결하고, 메모리 컨트롤러(8)는, 배선 또는 버스(12)(이하 "메모리 버스"(12))를 통해 예시적 실시예에서 메모리(10)를 포함하는 스토리지 디바이스(10)에 연결된다.
메모리 컨트롤러(8)는 프로세서(2)에 의해 생성되는 판독 또는 쓰기 요청들을 수신하고, 후술하는 바와 같이, 판독 또는 쓰기 요청들에 응답하여 메모리(10)에 액세스하기 위한 신호들을 생성한다.
메모리(10)는 메모리 컨트롤러로부터 수신된 신호들을 디코딩하고 이에 따라 판독 또는 쓰기 액세스를 제공하는 제어 로직을 포함한다.
실시형태에서, 메모리(10)는 복수의 어드레서블 비트셀들을 포함한다. 본원에서 기술하는 "비트셀"은, 그 메모리 상태를 나타내기 위한 값, 심볼, 파라미터 또는 조건을 저장할 수 있는 회로 또는 회로의 일부를 포함함이 이해될 것이다.
메모리(10)는, 나노와이어 메모리, FeTRAM(ferro-electric transistor random access memory), MRAM(magnetoresistive random access memory), 플래시 메모리, STTRAM(Spin Torque Transfer Random Access Memory), STTMRAM(STT magnetic RAM), PCM(phase change memory)과 같은 3D 크로스 포인트 메모리, NAND/NOR 메모리를 갖는 SSD, CEM(correlated electron material)을 이용하는 메모리 등과 같은 비휘발성 메모리일 수 있다. 일부 실시형태에서, NVM 메모리(10)는 SCM(storage class memory)를 포함할 수 있다.
다른 실시형태에서, 메모리(10)는, 랜덤-액세스 메모리(RAM)(예를 들면, SRAM(static RAM) 또는 DRAM(dynamic RAM))와 같은 휘발성 메모리일 수 있다.
구체적으로 나타내지 않았지만, 추가 로직이 시스템(1)에 제공될 수 있다.
예를 들면, 도 1에 나타난 바와 같이, 공유 레벨 2(L2) 캐시(14)가 시스템 버스(6)와 메모리 컨트롤러(10) 사이에 제공될 수 있고, 이에 의해 L2 캐시(14)가 프로세서(2)에 의해 사용되는 데이터 및/또는 명령어들을 저장하는데 사용될 수 있다.
추가 실시예로서, 시스템(1)은, HDD(hard-disk drive)와 같은 추가 스토리지(도시 생략)를 포함할 수 있거나, 프로세서(들), GPU(graphics processing unit)(들), DMA(direct memory access) 컨트롤러(들) 및 I/O(input/output) 인터페이스(들)(단, 이 리스트가 전체인 것은 아님) 중 하나 이상을 포함할 수 있는 추가적 또는 대안적 버스 마스터들(버스 마스터(들)(3)로서 나타냄)을 포함할 수 있다.
도 2는 실시형태에 따른 메모리 컨트롤러(8)의 블록도를 개략적으로 나타내고, 이에 의해 메모리 컨트롤러(8)는 액세스 요청들을 저장하기 위한 버퍼들 또는 큐들을 포함하고, 이에 의해 액세스 요청들은 프로세서로부터의 메모리의 일부에 대한 판독/쓰기(예를 들면, 초기화) 요청들을 포함할 수 있다.
본 발명의 맥락에서, 메모리의 타겟 부분의 초기화는, 모든 비트셀들이 동일한 메모리 상태를 나타내도록, 일반적으로 동일한 값, 심볼, 파라미터 또는 조건을 타겟 부분의 모든 비트셀들에 쓰기하는 프로세스를 말한다.
도 2에서, 큐들은 쓰기 큐(20) 및 판독 큐(22)로서 예시적으로 나타나 있다. 큐들은 FIFO(first-in-first-out) 큐들로서 동작할 수 있다.
중재기(24)로서 나타내는 중재 메커니즘은 액세스 요청들이 실행되는 순서를 결정하고, 중재기(24)는 시스템의 효율, 예측성, 속도, 및 유연성 요건 중 하나 이상에 의거하여 중재를 행할 수 있고, 단 이 리스트가 전체인 것은 아니며 중재는 다른 시스템 요건 또는 유저 명령어들에 의거하여 행해질 수 있음이 이해될 것이다.
인터페이스(I/F)(26)는 실행되는 판독 및 쓰기 요청들에 응답하여 하드웨어/전기 신호들을 생성한다. 메모리 컨트롤러(8)에 의해 생성되는 신호들은, 메모리에 액세스하기 위해 어드레스 신호(A) 및 데이터 신호(DQ), 클럭 신호(CLK), 쓰기 이네이블(WE) 신호, 판독/쓰기(R/W) 신호를 포함할 수 있고, 이는 당업자에 의해 이해될 것이다.
본 기술을 이용하는 실시형태에서, 신호 인터페이스(26)는 또한 메모리의 일부를 초기화하기 위한 추가 신호들을 생성하며, 이는 이하 더 상세히 기술될 것이다.
인터페이스(I/F)(26)는 또한 신호들(예를 들면, 도 3a, 4a 및 4c-d에 나타난 메모리로부터의 출력 신호(RQ))을 수신하고, 버스 마스터에 전송될 응답 신호(Rsp)를 생성할 수 있다. 본 예시적 실시예에서, 메모리 컨트롤러(8)는 수신된 신호들을 저장하기 위한 응답 큐(28)를 포함하고, 이에 의해 응답 큐(28)는 FIFO로서 동작할 수 있다.
도 3a는 종래기술 배치에 따른 메모리(100) 및 메모리 컨트롤러(102)의 블록도를 개략적으로 나타내는 한편, 도 3b는 메모리(100)의 일부를 초기화하기 위한 타이밍도를 개략적으로 나타낸다.
종래기술 배치에서, 메모리(100)는, 메모리 컨트롤러(102)로부터 수신된 신호들 중 하나 이상을 디코딩하기 위한 제어 로직(103, 104)을 포함한다.
메모리(100)는, 본 예시적 실시예에서 'm' 행들 및 'l' 열들을 포함하는 뱅크 또는 어레이(105)로 배치되는 복수의 비트셀들을 더 포함하고, 이에 의해 각각의 비트셀은 행 및 열의 교차점에 의해 정의되는 고유한 어드레스를 갖고, 이에 의해 비트셀들의 행들은 워드라인들 WL(0) 내지 WL(m)로서 배치된 각각의 신호 라인에 연결되며 그를 통해 어드레싱 가능한 한편, 비트셀들의 열들은 비트라인들 BL(0) 내지 BL(l)로서 배치된 각각의 신호 라인에 연결되며 그를 통해 어드레싱 가능하다.
메모리(100)는, 비트셀(들)의 메모리 상태를 결정하고, 이에 따라 출력(RQ)을 생성하기 위한 판독 로직(108)을 더 포함한다.
본 배치에서, 메모리의 워드라인의 비트셀들을 초기화하도록, 도 3b에 나타난 바와 같이, 메모리 컨트롤러(102)는 초기화될 제1 타겟 비트셀 또는 워드를 식별하기 위한 어드레스 신호(A0)를 생성하고, 이에 의해 어드레스 신호는 제1 클럭 사이클에서 어드레스 버스(106) 상에 제공되고, 이에 의해 타겟 비트셀은 제1 워드라인 상의 워드의 제1 비트셀일 수 있다.
메모리 컨트롤러(102)는 또한 데이터 버스(107) 상에 데이터 신호(DQ)를 제공하고, 이에 의해 데이터 신호(DQ)는 제1 타겟 비트셀에 저장 또는 쓰기될 메모리 상태를 정의한다.
도 3b에 나타난 바와 같이, 어드레스 및 데이터 신호의 디코딩 시, 제어 로직(103, 104)은 각각의 워드라인 및 비트라인을 구동하고, 제1 클럭 사이클 동안 (DQ)의 디코딩된 메모리 상태를 워드의 제1 타겟 비트셀 또는 비트셀들에 저장한다.
메모리 컨트롤러(102)는, 도 3b에 나타난 바와 같이 연속 클럭 사이클들에서 어드레스(A1, A2 등)가 메모리 컨트롤러(102)로부터 제어 로직(103, 104)으로 송신됨과 함께 메모리의 일부의 나머지 어드레스들의 각각이 초기화되는 동작을 반복한다.
따라서, 서로 다른 비트셀들 또는 워드들을 초기화하는 것은, 데이터가 클럭 사이클마다 하나의 비트셀 또는 워드에 저장됨과 함께 다수의 클럭 사이클들에 걸쳐 행해지는 일련의 동작을 포함함을 이해할 것이다.
이를 염두에 두고, 다수의 클럭 사이클들에 걸쳐 메모리의 일부(예를 들면, 메모리의 32kb)를 초기화하면, 메모리의 해당 부분의 초기화가 완료될 때까지 애플리케이션이 정지되어, 시스템(1)의 처리 지연으로 될 수 있다.
또한, 메모리 상태를 비트셀에 쓰기하는 것은 쓰기 전류를 야기할 것이다. 예시적 실시예로서 STT-MRAM을 취하면, 메모리를 STT-MRAM의 비트셀에 쓰기하는 것은 대략 1mA를 인출하고, 이에 의해 인출되는 전류는 동일한 클럭 사이클에 걸쳐 쓰기되는 비트셀들의 수에 의존하여 증가될 것이다.
예시적 실시예로서, 단일 클럭 사이클 동안 메모리 상태를 32kb의 STT-MRAM 메모리를 포함하는 다수의 비트셀들에 쓰기하는 것은 대략 32A를 인출할 것이다.
동일한 클럭 사이클에 걸쳐 플래시 메모리 또는 PCM과 같은 다른 타입의 NV 메모리의 유사한 크기 부분(예를 들면, 32kb)에 쓰기하는 것은 유사한 크기의 전류를 인출할 수 있어, 어느 하나의 클럭 사이클에 걸쳐 쓰기되는 비트셀들의 수는 애플리케이션에 의존하여 하나의 워드 이하로 제어된다.
도 4a는 본 기술을 이용하는 실시형태에 따른 메모리 컨트롤러(8) 및 메모리(10)의 블록도를 개략적으로 나타내고, 도 4b는 클럭 사이클에 걸쳐 메모리(10)의 일부를 초기화하기 위한 타이밍도를 개략적으로는 나타낸다.
본 예시적 실시예에서, 메모리(10)는 'm' 행들 및 'l' 열들을 포함하는 뱅크 또는 어레이(205)로 배치되는 복수의 비트셀들을 포함하고, 이에 의해 상술한 바와 같이, 각각의 비트셀은 행 및 열의 교차점에 의해 정의되는 고유한 어드레스를 갖고, 이에 의해 비트셀들의 행들은 본 예시적 실시예에서 워드라인들 WL(0) 내지 WL(m)로서 배치된 각각의 제1 신호 라인들에 연결되고 그를 통해 어드레싱 가능한 한편, 비트셀들의 열은 비트라인들 BL(0) 내지 BL(l)로서 배치된 각각의 제2 신호 라인들에 연결되고 그를 통해 어드레싱 가능하다.
본 발명의 맥락에서, 신호 라인은 신호를 전송하기 위한 컨덕터를 포함하고, 이에 의해 "워드라인"는 판독 동작 또는 쓰기 동작(예를 들면, 초기화 동작)에서 하나 이상의 비트셀들을 선택하기 위한 신호를 전송하는 한편, "비트라인"은, 쓰기 동작에서 그 메모리 상태를 변경하거나, 또는 판독 동작에서 그 메모리 상태 감지하도록, 하나 이상의 비트셀들을 제어 또는 구동하기 위한 신호를 전송한다.
상술한 바와 같이, 메모리 컨트롤러(8)는, 버스 마스터(도시 생략)로부터의 액세스 요청들에 응답하여, 어레이(205) 내의 하나 이상의 타겟 비트셀들에 대한 판독 또는 쓰기 액세스를 개시하도록, 어드레스 신호들(A) 및 데이터 신호들(DQ)과 같은 하드웨어/전기 신호들을 생성하도록 구성된다.
메모리 컨트롤러(8)는 초기화 어드레스(IA) 신호, 초기화 범위(IR) 신호, 및 초기화 데이터(ID) 신호를 포함하는 하나 이상의 초기화 신호들을 생성하도록 더 구성되며, 이들은, 버스 마스터로부터의 명령어들에 응답하여 생성된 하드웨어/전기 신호들을 포함한다.
일부 실시형태에서, 메모리 컨트롤러(8)는, 메모리(10)가 초기화 동작을 행하는 커맨드를 지시하는 초기화(I) 신호를 생성할 수 있다. 예를 들면, 초기화 신호(I)는, 메모리(10)가 디코딩하여 메모리(10)의 일부를 초기화하는 커맨드로서 인식하는 인코딩된 비트(들)를 포함할 수 있다. 그러나, 다른 실시형태에서, 메모리(10)는, 메모리(10)의 일부를 초기화하기 위한 커맨드(들)로서 초기화 어드레스(IA) 신호, 초기화 범위(IR) 신호 및 초기화 데이터(ID) 신호 중 하나 이상을 인식할 수 있다. 예를 들면, 초기화(I) 신호는, 초기화 어드레스(IA) 신호의 최하위 비트들에서와 같이, 이들 신호들 중 하나에 인코딩될 수 있다.
본 예시적 실시예에서, 초기화 어드레스(IA) 신호는 타겟 부분의 제1 또는 시작 어드레스를 포함하고, 이에 의해 제1 어드레스는 비트셀, 워드 또는 워드라인을 참조할 수 있다.
초기화 범위(IR) 신호는 타겟 부분에 대한 최종 또는 종료 어드레스까지의 어드레스들을 지정하고, 이에 의해 범위는 제1 어드레스에서 개시될 수 있다. 실시예에서, 초기화 범위(IR) 신호는 제1 어드레스로부터 마지막 어드레스까지의 범위의 모든 어드레스들을 지정하는데 사용되는 오프셋값일 수 있다. 실시형태에서 타겟 부분의 어드레스들은 연속 비트셀 어드레스들이다.
범위는, 워드, 페이지의 일부, 하나 이상의 페이지들 또는 전체 메모리까지의 어레이와 같이 메모리의 일부를 지정할 수 있음이 이해될 것이다.
실시예에서, 초기화 어드레스 범위(IR) 신호는, 단일 입력 라인 상에서 메모리(10)에 제공되는 하나 이상의 비트들을 포함할 수 있다. 다른 예에서, 초기화 어드레스(IR) 범위 신호는 범위 버스(209)와 같은 버스 라인 상에 제공될 수 있다.
초기화 데이터(ID) 신호는, 그 비트셀들의 메모리 상태, 이하 "초기화 상태"를 나타내도록 타겟 부분의 비트셀들에 저장될 특정 값, 심볼, 파라미터 또는 조건을 지정하고, 이에 의해 수신된 초기화 데이터(ID) 신호를 디코딩하는 제어 로직(203, 204)은 타겟 부분의 비트셀들에 초기화 상태를 저장할 것이다.
실시형태에서, 초기화 데이터(ID) 신호는 단일 입력 라인 상에서 메모리(10)에, 또는 데이터 버스(207)와 같은 버스 라인 상에서 제공될 수 있다. 추가 실시형태에서, 초기화 데이터(ID) 신호는 데이터(DQ) 신호이거나 및/또는 데이터 버스(107)에서 제공될 수 있다(상기 도 3a에서 나타냄). 추가 실시예에서, 초기화 데이터(ID) 신호는 선택적일 수 있으며, 이에 의해 메모리(10)가 수신된 신호들을 메모리(10)의 일부를 초기화하는 커맨드로서 인식할 경우, 디폴트 초기화 상태(예를 들면, 모두 '1' 또는 '0')가 초기화 동작 동안 비트셀들 중 하나 이상에 쓰기될 수 있다. 이러한 수신된 신호는 초기화 신호(I), 초기화 어드레스(IA) 신호 및 초기화 범위(IR) 신호를 포함할 수 있다.
동작에서, 메모리 컨트롤러(8)는 버스 마스터로부터 메모리의 타겟 부분(10)을 초기화하는 액세스 요청들을 수신한다.
액세스 요청에 응답하여, 도 4b에 나타난 바와 같이, 메모리 컨트롤러(8)는 메모리(10)가 초기화 동작을 행하는 커맨드를 지시하는 초기화(I) 신호를 생성한다. 상술한 바와 같이, 초기화(I) 신호는 선택적이다. 메모리 컨트롤러는 또한 타겟 부분의 제1 어드레스를 지정하는 초기화 어드레스(IA) 신호, 및 초기화될 타겟 부분의 모든 어드레스들을 지정하는 초기화 범위(IR) 신호를 생성한다.
메모리 컨트롤러(8)는 또한 타겟 부분의 비트셀들에 저장될 초기화 상태를 지정하는 초기화 데이터(ID) 신호를 생성한다. 상술한 바와 같이, 초기화 데이터(ID) 신호는 선택적일 수 있고, 이에 의해 메모리(10)가 수신된 신호를 메모리(10)의 일부를 초기화하는 커맨드로서 인식할 경우, 대안적 실시예에서 디폴트 초기화 상태(예를 들면, 모두 '1' 또는 '0')가 초기화 동작 동안 하나 이상 비트셀들에 쓰기될 수 있다.
제어 로직(203, 204)은 초기화 신호(I), 초기화 어드레스 신호(IA) 및 초기화 범위(IR) 신호를 수신 및 디코딩하여 타겟 부분의 비트셀들을 식별하고, 초기화 데이터 신호(ID)를 디코딩하여 저장될 초기화 상태를 식별한다.
이어서, 제어 로직(203, 204)은 각각의 비트셀들을 선택하기 위한 초기화 워드라인 신호들(IWL) 및 초기화 비트라인 신호들(IBL)을 생성하고, 선택된 비트셀들을 제어 또는 구동해서 동일한 클럭 사이클에 걸쳐 필요한 초기화 상태를 저장한다(예를 들면, 클럭 신호(CLK)의 상승 에지에서).
따라서, 도 3a의 배치와 달리, 서로 다른 워드라인들 상의 다수의 비트셀들이 동일한 클럭 사이클에 걸쳐 초기화될 수 있다.
상기 개시된 바와 같이, 메모리 용량 및 애플리케이션 요구가 증가함에 따라, 애플리케이션들(예를 들면, 부팅 이후, 또는 애플리케이션에 의한 요청)을 시작하기에 충분한 메모리를 초기화하는 시간이 빠르게 증가한다. 따라서, 단일 클럭 사이클에서 메모리의 일부를 초기화하는 것은, 부팅 프로세스 또는 애플리케이션에 대한 메모리의 일부의 초기화가, 많은 다수의 클럭 사이클들에 걸쳐 행해지는 도 3a의 종래기술 배치와 비교하여, 더 빠르게 행해질 수 있음을 의미한다.
도 4b는 동일한 사이클에 걸쳐 생성되는 초기화 신호들 (I), (IA), (IR) 및 (ID)를 나타내는 한편, 이는 예시적 목적을 위함일뿐이며, 이들 신호들은 서로 다른 클럭 사이클들 동안 생성될 수 있다. 또한, 도 4b는 초기화 신호들의 생성 직후에 클럭 사이클에서 행해지는 초기화 동작을 나타내는 한편, 초기화 동작은 초기화 신호들의 생성 후에 임의의 수의 클럭 사이클들로 행해질 수 있다. 클럭 신호는 PLL(phase-locked loop), CDR(clock-data recovery), 또는 임의의 적절한 생성 수단에 의해 생성될 수 있음이 이해될 것이다.
실시형태에서, 메모리(10)는 초기화 동작이 개시 및/또는 완료되었음을 확인하기 위한 확인응답 신호(ACK)를 생성할 수 있다. 이러한 확인응답은, 판독 로직이 타겟 비트셀들의 초기화 상태를 검증한 후에 행해질 수 있다.
도 4c는 추가 실시형태에 따른 메모리 컨트롤러(8) 및 메모리(10)의 블록도를 개략적으로 나타낸다.
메모리 컨트롤러(8) 및 메모리(10)는 도 4a에서 상술한 것과 유사하고, 이에 의해 제어 로직(203, 204)이 초기화 신호들(예를 들면, 초기화(I) 신호, 초기화 어드레스(IA) 신호 및 초기화 범위(IR) 신호)을 디코딩하여 초기화 동작이 요구됨을 식별하며, 초기화될 타겟 부분을 식별하고, 또한 초기화 데이터(ID) 신호를 디코딩하여 그 타겟 비트셀들에 저장될 초기화 상태를 식별한다.
본 예시적 실시형태에서, 메모리(10)는, 출력이 각각의 워드라인을 선택하는데 사용되는 로직 게이트들의 형태의 추가 로직을 포함하고, 이에 의해, 본 예시적 실시예에서, 로직 게이트들은 'OR' 게이트들(210)을 포함한다.
도 4a 및 4b에서 상술한 바와 같이, 제어 로직(203, 204)은, 초기화 워드라인 신호들(IWL)을 생성함으로써, 타겟 비트셀들이 연결된 워드라인들을 선택할 수 있고, 및 초기화 비트라인 신호들(IBL)을 생성함으로써 초기화 상태를 연결된 타겟 비트셀들에 쓰기 또는 저장하도록 비트라인들 제어 또는 구동하고, 본 실시형태에서 초기화 워드라인 신호들(IWL)은 각각의 로직 게이트들에 대한 제1 입력들로서 사용된다.
또한, 도 4c에 나타난 제어 로직(204)은, 적어도 부분적으로, 초기화 신호들(예를 들면, (I), (IA), (IR), (ID)) 중 하나 이상에 의거하여 초기화 선택(IS) 신호를 생성하고, 이에 의해 초기화 선택(IS) 신호는, 표명될 경우, 모든 로직 게이트들(210)이 모든 각각의 워드라인들을 선택하도록, 각각의 로직 게이트들(210)에 대한 제2 입력으로서 사용된다.
이어서, 초기화 데이터(ID) 신호에 의해 지정된 초기화 상태는, 적어도 부분적으로, 디코딩된 초기화 데이터(ID) 신호에 의거하여, 비트라인들을 제어함으로써 모든 타겟 비트셀들에 쓰기될 수 있다.
따라서, 로직 게이트들(210)의 출력은, 적어도 부분적으로, 초기화 어드레스(IA) 신호 및/또는 초기화 범위(IR) 신호에 의거하여 생성된 각각의 초기화 워드라인 신호들(IWL)을 이용하여 워드라인들 중 하나 이상을 개별적으로 선택하는데 사용될 수 있다.
또는, 로직 게이트들(210)은, 제어 로직(203)에 개별 초기화 워드라인(IWL) 신호들을 생성하도록 요구하는 대신에, (IS) 신호에 응답하여 실질적으로 동시에, 어레이(205) 내의 모든 워드라인들을 선택하는데 사용될 수 있다.
이러한 기능은 다른 방식으로 취한 것보다 복수의 타겟 비트셀들을 초기화하는데 걸리는 시간을 줄일 수 있다.
도 4d는 추가 실시형태에 따른 메모리 컨트롤러(8) 및 메모리(10)의 블록도를 개략적으로 나타낸다. 메모리 컨트롤러(8) 및 메모리(10)는 도 4c에서 상술한 것과 마찬가지이다.
도 4d의 로직 게이트들은 'AND' 게이트들(310)을 포함하고, 초기화 워드라인 신호들(IWL)은 각각의 워드라인들 상에서 각각의 AND 게이트들(310)에 대한 제1 입력으로서 사용된다.
본 실시형태에서, 제어 로직(204)은 또한 적어도 부분적으로, 초기화 신호들(예를 들면, (I), (IA), (IR), (ID)) 중 하나 이상에 의거하여 초기화 선택 신호(IS)를 생성하고, 이에 의해 (IS)는 제2 입력으로서 AND 게이트들(310)에 제공되어, 초기화 선택(IS) 신호가 표명되고 하나 이상의 초기화 워드라인 신호들(IWL)이 제어 로직(203, 204)에 의해 표명될 경우 단지 타겟 워드라인이 선택될 것이다.
따라서, 본 실시형태에서, (IS) 신호가 제어 신호로서 사용될 수 있고, 이에 의해 (IS) 및 대응하는 초기화 워드라인 신호(IWL)가 표명될 경우, 단지 특정 비트셀(들)의 초기화 상태가 저장 또는 쓰기될 것이다.
이러한 기능은 잘못된 초기화 상태들을 비-타겟 비트셀들에 쓰기하는 것을 방지할 수 있다.
도 4c 및 4d의 로직 게이트들(210, 310)은 OR 및 AND 게이트들로서 각각 나타나 있지만, 특허청구범위는 이로 제한되지 않고, 로직 게이트들은 임의의 로직 연산(예를 들면, NOR, NAND, NOR 등)을 제공하도록 배치된 하나 이상의 로직 게이트들을 포함할 수 있다.
상술한 바와 같이, 메모리(10)는 휘발성 메모리 또는 비휘발성(NV) 메모리일 수 있고, 이에 의해 NV 메모리는 SCM(storage class memory)을 포함할 수 있다.
도 5는 상기 도 4a 내지 4d의 메모리 어레이(205)에 대한 예시적 아키텍처의 개략도이다.
상술한 바와 같이, 메모리 어레이(205)는 행들(m) 및 열들(l)로 배치되고 상술한 바와 같이 제어 로직(403, 404)에 의해 어드레싱될 수 있는 복수의 비트셀들(402)(402a-d의 4개가 도 5에 나타남)을 포함한다.
본 예시적 실시예에서, 각각의 비트셀(402a-d)은 각각의 비트라인과 도전성 소자(406)의 제1 단자 사이에 연결된 저장 소자(405)를 포함하는 한편, 도전성 소자(406)의 제2 단자는 레퍼런스 노드(408)에 연결된다.
본 예시적 실시예에서, 도전성 소자(406)의 제3 단자(예를 들면, 게이트 단자)는 각각의 워드라인에 연결되고, 이에 의해 도전성 소자의 동작 상태는 각각의 워드라인을 통해 제어될 수 있다.
본 발명의 맥락에서, "도전성 소자"는, 상술한 바와 같이, 그 제3 단자를 통해 제어될 수 있는 그 동작 상태에 의존하여 그 제1 및 제2 단자들간의 전류의 흐름을 제어할 수 있는 회로 소자를 포함한다. 예를 들면, "온" 또는 "닫힘" 상태에 있을 때, 도전성 소자(406)는 전류가 그 제1 및 제2 단자들간을 통과하는 것을 허용하는 한편, "오프" 또는 "개방" 상태에서 도전성 소자(406)는 실질적으로 모든 전류가 그 제1 및 제2 단자들간을 통과하는 것을 막는다.
또한, "레퍼런스 노드"는, 특정 전압 레벨로 또는 회로 내의 또 다른 노드와의 특정 전압 차이로 유지되는 회로 내의 노드를 포함한다. 하나의 실시예에서, 레퍼런스 노드(408)는 접지 노드를 포함하거나 그에 접속될 수 있다. 다른 특정 실시에서, 레퍼런스 노드(408)는 접지 노드에 대해 특정 전압으로 유지될 수 있다.
도 5에 나타난 예시적 실시예에서, 저장 소자(405)는 도전성 단자들간에 샌드위치된 CEM(correlated electron material)을 갖는 상관 전자 스위치(CES)를 포함한다.
CES는, 그 도전성 단자들에 대한 제1 전류 밀도(JSET)(J(A/μm2))에서의 제1 전압(VSET)을 포함하는 제1 프로그래밍 신호(PS1)의 인가에 의해 낮은 임피던스 또는 도전 상태를 포함하는 제1 임피던스 상태로 놓일 수 있고, 이에 의해 제1 임피던스 상태는 제1 비트셀의 메모리 상태를 나타낸다.
CES는, 또한 그 도전성 단자들에 대한 전류 밀도(JRESET)에서의 제2 전압(VRESET)을 포함하는 제2 프로그래밍 신호(PS2)의 인가에 의해 고임피던스 또는 절연 상태를 포함하는 제2 임피던스 상태로 놓일 수 있고, 이에 의해 제2 임피던스 상태는 비트셀의 제2 메모리 상태를 나타낸다. 실시형태에서, |VSET| > |VRESET| 및 |JRESET| > |JSET|이다.
본 발명의 맥락에서, "임피던스 상태"는, 연관된 비트셀의 메모리 상태를 나타내는 CES의 검출 가능한 임피던스 상태를 의미한다.
또한, 용어들 "저임피던스 상태" 및 "고임피던스 상태"는 상대적 용어이고 임피던스, 컨덕턴스 또는 커패시턴스에 대해 어떠한 특정값으로 특정되는 것은 아님을 이해해야 한다. 예를 들면, 저임피던스 상태에서 CES는, CES가 고임피던스 상태에 있을 때보다 더 도전성(또는 덜 절연성)일 수 있다.
CES를 특정 임피던스 상태로 놓는 프로그래밍 신호(PS1 또는 PS2)가 제어 로직(204)에 의해 생성 또는 각각의 비트라인들을 통해 공급될 수 있다. 또한, 프로그래밍 신호의 전압(V) 및 전류 밀도(J) 모두가 (예를 들면, 제어 로직에 의해) CES의 임피던스 상태를 스위칭하도록 제어될 수 있다. 예를 들면, CES가 제1 임피던스 상태에 있고 전압(VRESET)이 인가될 경우, CES는, 전류 밀도가 필요한 값 (JRESET)일 때까지, 제2 임피던스 상태로 스위칭되지 않을 것이다.
본 예시적 실시예에서, 프로그래밍 신호(PS1 또는 PS2)는, 대응하는 워드라인들이 제어 로직(203)에 의해 선택될 경우, 도전성 소자들(410, 412)를 통해 각각의 비트라인들에 인가되고, 이에 의해, 본 예시적 실시예에서, 도전성 소자들(410, 412)의 동작 상태는 프로그래밍 제어 신호(PCS)를 이용하여 제어되고, 프로그래밍 제어 신호(PCS)는 제어 로직(404)에서 적어도 부분적으로 메모리 컨트롤러(404)로부터의 초기화 데이터(ID) 신호에 의거하여 생성될 수 있거나, 또는 프로그래밍 제어 신호(PCS)는 비트셀들 중 하나 이상에 쓰기될 디폴트 초기화 상태에 의거할 수 있다.
도전성 소자들(410, 412)은 FET(field effect transistor)와 같은 트랜지스터들일 수 있다. 도 5의 예시적 실시예에서, 도전성 소자(410)는 nFET이고, 도전성 소자(412)는 pFET여서, PCS가 하이일 경우(예를 들면, 로직 1), 도전성 소자(410)는 닫힘 또는 "온" 상태에 있고 도전성 소자(412)는 개방 또는 "오프" 상태에 있어서, 제1 프로그래밍 신호(PS1)가 타겟 CES에 인가된다.
마찬가지로, PCS가 로우일 경우(예를 들면, 로직 0), 도전성 소자(412)는 닫힘 또는 "온" 상태에 있고 도전성 소자(410)는 개방 또는 "오프" 상태에 있어서, 제2 프로그래밍 신호(PS2)가 타겟 CES의 비트라인에 인가된다.
따라서, 적어도 부분적으로, 메모리 컨트롤러로부터의 초기화 데이터(ID) 신호에 의거하여, 제1 또는 제2 프로그래밍 신호들(PS1 또는 PS2)을 인가함으로써, CES들 중 하나 이상의 임피던스 상태가 제어될 수 있음이 이해될 것이다.
전형적인 동작에서, 제1 프로그래밍 신호(PS1) 또는 제2 프로그래밍 신호(PS2)를 이용하여 CES 저장 소자를 포함하는 비트셀에 쓰기될 경우의 쓰기 전류는, STT-MRAM와 같은 다른 타입의 메모리의 비트셀과 비교하여 감소된다.
따라서, 다른 스토리지 타입과 비교하여 감소된 쓰기 전류로 단일 사이클 동안 다수의 CES 저장 소자들을 쓰기 또는 초기화하는 것이 가능함이 이해될 것이다.
상술한 도전성 소자들(406, 410, 412)은 FET에 제한되지 않고 BJT(bipolar junction transistor)와 같은 임의의 적절한 타입의 트랜지스터일 수 있음이 이해될 것이다. 또한, 도전성 소자들(406, 410, 412)은 또한 트랜지스터로 제한되지 않고, 다이오드, 가변 저항과 같은 다른 타입의 디바이스들 등이 도전성 소자로서 사용될 수 있고, 주장되는 요지는 이러한 점으로 한정되지 않음이 이해될 것이다.
또한, 본 아키텍처들은 단지 예시적 실시예로서 제공되고, 메모리 어레이를 위한 임의의 적절한 아키텍처가 사용될 수 있음이 이해될 것이다. 예를 들면, 어레이(205)는 도 5에 나타난 배치의 CES 저장 소자들을 갖는 것으로 제한되지 않고, 서로 다른 저장 소자들이 연관된 비트셀의 메모리 상태로서 값, 심볼, 파라미터 또는 조건을 저장하도록 배치되는 기술이 사용될 수 있다. 예시적 실시예로서, 저장 소자(405)는 연관된 비트셀의 메모리 상태로서 값, 심볼, 파라미터 또는 조건을 저장하도록 배치된 하나 이상의 저항들(예를 들면, 가변 저항들), 하나 이상의 커패시터들 및/또는 하나 이상의 트랜지스터들을 포함할 수 있다.
도 6은 메모리의 일부를 초기화하는 프로세스를 나타내는 예시적 흐름도를 나타낸다.
스텝 S500에서 프로세스는 시작된다.
스텝 S502에서, 프로세서와 같은 버스 마스터는 메모리의 일부(예를 들면, 워드, 페이지, 어레이 전체, 메모리 전체 등)를 초기화하는 액세스 요청을 지정하는 소프트웨어 명령어들을 생성하고, 명령어들을 메모리 컨트롤러에 전송한다. 상술한 바와 같이, 본 발명의 맥락에서, 메모리의 일부의 초기화는, 일반적으로 모든 비트셀들이 동일한 초기화 상태를 나타내도록, 동일한 값, 심볼, 파라미터 또는 조건을 타겟 부분의 모든 비트셀들에 쓰기하는 프로세스를 말한다.
스텝 S504에서, 메모리 컨트롤러는 소프트웨어 명령어들을 하드웨어/전기 신호들로 변환하고 신호들을 메모리에 전송한다.
본 실시형태에서, 하드웨어 신호들은 초기화(I) 신호, 초기화될 부분의 어드레스를 포함하는 초기화 어드레스(IA) 신호, 초기화될 메모리의 부분의 어드레스들의 범위를 지정하는 초기화 범위(IR) 신호, 및 지정된 비트셀들에 쓰기될 초기화 상태를 지정하는 초기화 데이터(ID) 신호를 포함한다.
스텝 S506에서, 메모리 내의 제어 로직은 메모리 컨트롤러로부터의 하드웨어 신호들을 디코딩하고, 스텝 S508에서 적절한 워드라인들을 선택하고, 적어도 부분적으로 초기화 데이터(ID) 신호에 의거하여 초기화 상태를 타겟 부분의 비트셀들에 쓰기한다.
비트셀들은 연관된 비트셀의 메모리 상태로서 값, 심볼, 파라미터 또는 조건을 저장하기 위한 저장 소자(들)를 포함한다. 실시형태에서, 저장 소자(들)는 CES(들)를 포함하고, 이에 의해 CES를 초기화하는 것은, 적어도 부분적으로 초기화 데이터(ID) 신호에 의거하여 프로그래밍 신호를 인가하여 CES를 하이 또는 로우 임피던스 상태로 놓는 것을 의미한다. 어레이의 저장 소자들로서 CES를 이용하는 것은, STT-MRAM, NAND 또는 NOR 플래시 등과 같은 다른 타입의 저장 소자들과 비교하여 쓰기 전류를 줄인다.
스텝 510에서, 제어 로직은 선택적으로 초기화 동작이 개시 및/또는 완료되었음을 확인하기 위한 확인응답 신호(ACK)를 생성한다 .
스텝 512에서 프로세스가 종료된다.
전술한 기재에서, 다양한 실시형태의 이해를 제공하기 위해 다양한 세부사항을 기술하고 있다. 그러나, 다양한 실시형태가 특정 세부사항에서 벗어나지 않고 실시될 수 있음이 이해될 것이다.
다른 예에서, 특정 실시형태를 모호하게 하지 않기 위해 주지의 방법, 절차, 컴포넌트, 및 로직은 구체적으로 설명되지 않는다. 또한, 실시형태의 다양한 태양들이, 하드웨어(예를 들면, 집적 반도체 회로와 같은 회로), 소프트웨어(예를 들면, 컴퓨터 프로그램 코드), 또는 하드웨어와 소프트웨어의 일부 조합과 같은 다양한 수단을 이용하여 행해질 수 있다.
본 발명의 목적에 있어서, "로직"이란, 하드웨어, 소프트웨어, 또는 일부 그 조합을 의미한다.
상술한 바와 같이, 도 5에 나타난 바와 같이, 어레이(205)의 비트셀들의 저장 소자들은 CES를 포함할 수 있다. 이 맥락에서, CES는 저임피던스(및 낮은 커패시턴스) 상태로부터 고임피던스(및 높은 커패시턴스) 상태로, 또는 그 반대로, 급격한 컨덕터/절연체 전이를 나타낼 수 있고, 이는, 고체상 구조 상 변화(예를 들면, PCM(phase change memory) 디바이스들에서 발생하는 결정/비결정 변화 또는 저항 RAM 디바이스들에서 발생하는 필라멘트 형성)라기보다는 CEM에서의 전자 상관으로부터 발생한다.
실시형태에서, CEM에서의 급격한 컨덕터/절연체 전이는, 용융/고화 또는 필라멘트 형성과 달리, 양자 역학적 현상에 대한 응답일 수 있다. CES에서의 임피던스 상태들간의 이러한 양자 역학적 전이는 복수의 태양들 중 어느 하나로 이해될 수 있다.
실시형태에서, 제1과 제2 임피던스 상태들간의 양자 역학적 전이들은 모트 전이의 관점에서 이해될 수 있다. 예를 들면, CEM은, 제1 모트 전이 조건이 만족될 경우, 고임피던스 상태로부터 저임피던스 상태로 스위칭될 수 있고, 제2 모트 전이 조건이 만족될 경우, 저임피던스 상태로부터 고임피던스 상태로 스위칭될 수 있다. 이하, 다른 모트 전이 조건이 더 상세히 기술될 것이다.
일 태양에서, 제2 임피던스 상태의 CES의 임피던스는 제1 임피던스 상태의 CES의 임피던스보다 100배 넘게 클 수 있다.
실시형태에서, CEM은, 반도체 상에 (C/S/C) 배치(예를 들면, 적층 배치)로 도전성 영역들(C)과 전기 접촉하여 배치된(예를 들면, 사이에 샌드위치된) 스위칭 영역(S)을 포함한다. 도전성 영역(C)은 임의의 적절한 재료를 포함할 수 있고, 전이 금속 산화물을 포함할 수 있고, 금속-유사 특성을 포함하는 임의의 재료를 더 포함할 수 있고, 예를 들면 폴리실리콘 또는 도핑된 반도체를 포함한다. 실시형태에서, 도전성 영역(C)은, 추가적으로 또는 택일적으로, 알루미늄, 카드뮴, 크롬, 코발트, 구리, 금, 철, 망간, 수은, 몰리브데넘, 니켈, 팔라듐, 레늄, 루테늄, 은, 주석, 티타늄, 바나듐, 및 아연(산소와 같은 양이온 또는 다른 타입의 리간드에 연결될 수 있음), 또는 그 조합을 포함하는 그룹으로부터 선택되는 재료를 포함할 수 있다.
실시형태에 따르면, 스위칭 영역(S)은, 예를 들면, 페로브스카이트, 모트 절연체, 전하 교환 절연체, 및 앤더슨 장애 절연체와 같은 임의의 전이 금속 산화물(TMO) 재료를 포함할 수 있다.
특정 구현에서, 스위칭 영역(S) 재료는, 산화니켈, 산화코발트, 산화철, 산화이트륨과 같은 스위칭 재료, 및 Cr 도핑된 스트론튬 티타네이트, 란타넘 티타네이트와 같은 페로브스카이트, 및 프라에시디움 칼슘, 망가네이트, 및 프라에시디움 란타넘 망가나이트를 포함하는 망가네이트계를 포함할 수 있으며, 이는 단지 몇몇 실시예를 제공하는 것이다. 특히, 불완전한 d 및 f 오비탈 쉘을 갖는 원소들을 포함하는 산화물은 스위칭 영역(S) 재료로서의 사용을 위해 충분한 저항 스위칭 속성들을 나타낼 수 있다. 실시형태에서, CES는 전주(electroforming) 없이 제조될 수 있다.
다른 구현이, 주장되는 요지에서 벗어나지 않고 스위칭 영역(S) 재료로서 다른 전이 금속 화합물을 채용할 수 있다. 예를 들면, {M(chxn)2Br}Br2(M은 Pt, Pd, 또는 Ni를 포함할 수 있고, chxn은 1R, 2R-시클로헥산디아민을 포함함), 및 다른 이러한 금속 복합체가 주장되는 요지에서 벗어나지 않고 사용될 수 있다.
일 태양에서, CEM은, TMO 가변 저항 재료인 재료를 포함할 수 있지만, 이들은 단지 예시이고, 주장되는 요지를 제한하는 것을 의도하지 않음을 이해해야 한다.
특정 구현은 다른 가변 저항 재료도 채용할 수 있다. 상기에서 산화니켈, NiO가 하나의 특정 TMO로서 개시되지만, NiO 재료는 또한 가변 저항 속성들을 안정화시킬 수 있는 외인성 리간드로 도핑될 수 있다. 특히, 본원에 개시된 NiO 가변 저항 재료는, NiO(Cx)로 지시될 수 있는 리간드를 함유하는 탄소를 포함할 수 있다. 여기에서, 당업자는, 임의의 특정 탄소 함유 리간드 및 NiO와 탄소 함유 리간드의 임의의 특정 조합에 대한 x의 값을, 간단히 원자가들의 균형을 맞춤으로써 결정할 수 있다. 또 다른 특정 실시예에서, 외인성 리간드들로 도핑된 NiO는 NiO(Lx)로서 표현될 수 있고, 여기서 Lx는 리간드 요소 또는 화합물이고, x는 NiO의 1 단위에 대한 리간드의 단위 수를 지시한다. 당업자는 임의의 특정 리간드 및 NiO 또는 임의의 다른 전이 금속과 리간드의 임의의 특정 조합에 대한 x의 값을 간단히 원자가들의 균형을 맞춤으로써 결정할 수 있다.
또한, 단자들은 도전성 영역들(C)과 동일한 재료를 포함할 수 있어서, 도전성 영역들(C)은 단자로서 기능할 수 있다. 단자들 및 도전성 영역들(C)에 대한 재료가 동일하지 않은 실시형태에서, CES의 성능에 달리 영향을 줄 수 있는 경계 상호작용 또는 표면 결함의 영향을 줄이도록 서로 다른 재료들이 매칭되는 것이 바람직하다. 예를 들면, 재료들은, CEM 및 단자들의 전기 속성들(예를 들면, 전도도) 및/또는 화학 속성들(예를 들면, 열팽창 매칭 계수)이 CES의 동작에 부정적 영향을 주지 않음을 보장하도록, 매칭되어야 한다.
상기 실시형태는 행들 및 열들을 포함하는 메모리 어레이를 나타내지만, 특허청구범위는 이 점으로 제한되지 않고, 비트셀들은 신호 라인들을 통해 적절하게 선택 및 구동되는 임의의 적절한 구성으로 배치될 수 있다.
본 기술의 동작들을 수행하기 위한 컴퓨터 프로그램 코드는, 객체 지향 프로그래밍 언어들 및 종래의 절차 프로그래밍 언어들을 포함하는 하나 이상의 프로그래밍 언어들의 임의의 조합으로 쓰기될 수 있다.
예를 들면, 본 기술의 동작들을 수행하기 위한 프로그램 코드는 소스, 오브젝트 또는 C 등의 종래의 프로그래밍 언어(해석 또는 컴파일됨)로 실행 가능한 코드, 또는 어셈블리 코드, ASIC(Application Specific Integrated Circuit) 또는 FPGA(Field Programmable Gate Array)를 세트 또는 제어하기 위한 코드, 또는 VerilogTM 또는 VHDL(Very high speed integrated circuit Hardware Description Language)과 같은 하드웨어 디스크립션 언어용 코드를 포함할 수 있다.
명세서에서 "일 실시형태" 또는 "하나의 실시형태"란, 실시형태와 관련해서 설명되는 특정 특징, 구조, 또는 특성이 적어도 구현에 포함될 수 있음을 의미한다. 명세서의 다양한 개소에서의 문구 "일 실시형태에서"의 형태는 모두 동일한 실시형태를 지칭하거나 지칭하는 것이 아닐 수 있다.
또한, 기재 및 특허청구범위에서, 용어 "연결" 및 "접속"와 함께 그들의 파생어가 사용될 수 있다. 일부 실시형태에서, "접속"은 2개 이상의 요소가 서로 직접 물리 또는 전기 접촉함을 지시하는데 사용될 수 있다. "연결"은 2개 이상의 요소가 직접 물리 또는 전기 접촉함을 의미할 수 있다. 그러나, "연결"은 또한 2개 이상의 요소가 서로 직접 접촉하지 않을 수 있지만, 여전히 서로 협력하거나 상호 작용할 수 있음을 의미할 수 있다.
본 기술의 범위에서 벗어나지 않고 상술한 예시적인 실시형태에 대해 많은 개선 및 변형이 이루어질 수 있음이 당업자에게 명백할 것이다.
Claims (28)
- 복수의 비트셀들을 포함하는 스토리지 부분을 갖는 스토리지 디바이스 - 상기 복수의 비트셀들은 2 이상의 행의 비트셀들을 포함하는 어레이로 배치되고 각각의 제1 신호 라인들 및 제2 신호 라인들에 연결되고, 상기 스토리지 디바이스는 상기 제1 신호 라인들 및 상기 제2 신호 라인들을 통해 상기 복수의 비트셀들의 메모리 상태를 변경하기 위한 제어 로직을 더 가짐 -; 및
상기 스토리지 디바이스에 연결되어 하나 이상의 인코딩된 초기화 신호들을 상기 스토리지 디바이스에 전송하기 위한 메모리 컨트롤러 - 상기 하나 이상의 인코딩된 초기화 신호들은 상기 복수의 비트셀들의 각각의 비트셀에 대한 초기화 상태를 지정하는 초기화 데이터 신호를 포함함 - 를 포함하고,
상기 스토리지 디바이스는 상기 하나 이상의 인코딩된 초기화 신호들을 디코딩하고 상기 하나 이상의 디코딩된 초기화 신호들에 응답하여 동일한 클럭 사이클에 걸쳐 상기 복수의 비트셀들의 각각의 비트셀을 상기 지정된 초기화 상태로 초기화하도록 구성되는, 시스템. - 제1항에 있어서,
상기 하나 이상의 초기화 신호들은, 초기화 신호, 초기화 어드레스 신호 및 초기화 범위 신호 중 하나 이상을 포함하는, 시스템. - 제2항에 있어서,
상기 초기화 어드레스 신호는 상기 스토리지 부분의 시작 어드레스를 지정하는, 시스템. - 제2항 또는 제3항에 있어서,
상기 초기화 범위 신호는 복수의 스토리지 부분들의 어드레스들을 지정하는, 시스템. - 제2항 또는 제3항에 있어서,
상기 초기화 범위 신호는 오프셋값을 포함하고, 상기 오프셋값은 어드레스들을 지정하는, 시스템. - 삭제
- 제2항 또는 제3항에 있어서,
상기 제어 로직은, 적어도 부분적으로, 상기 초기화 어드레스 신호 및 상기 초기화 범위 신호 중 하나 이상에 의거하여 상기 제1 신호 라인들을 선택하는, 시스템. - 제1항 내지 제3항 중 어느 한 항에 있어서,
상기 복수의 비트셀들은 2개 이상의 제2 신호 라인들에 연결되는, 시스템. - 제8항에 있어서,
상기 제어 로직은, 적어도 부분적으로, 초기화 데이터 신호 및 디폴트 초기화 상태 중 하나에 의거하여 상기 제2 신호 라인들을 제어하는, 시스템. - 제2항 또는 제3항에 있어서,
상기 스토리지 디바이스는, 적어도 부분적으로, 상기 초기화 신호, 상기 초기화 어드레스 신호, 상기 초기화 범위 신호 및 상기 초기화 데이터 신호 중 하나 이상에 의거하여 초기화 선택 신호를 생성하는, 시스템. - 제10항에 있어서,
상기 스토리지 디바이스는, 적어도 부분적으로, 상기 초기화 선택 신호 및 초기화 워드라인 신호 중 하나 이상에 의거하여 상기 제1 신호 라인들을 선택하기 위한 로직을 포함하는, 시스템. - 제11항에 있어서,
상기 로직은 OR 게이트를 포함하는, 시스템. - 제11항에 있어서,
상기 로직은 AND 게이트를 포함하는, 시스템. - 제1항 내지 제3항 중 어느 한 항에 있어서,
상기 복수의 비트셀들의 각각의 비트셀은 상기 비트셀의 메모리 상태를 나타내기 위한 저장 소자를 포함하는, 시스템. - 제14항에 있어서,
상기 저장 소자는 상관 전자 스위치를 포함하는, 시스템. - 제15항에 있어서,
상기 제어 로직은, 상기 상관 전자 스위치를 제1 임피던스 상태로 놓기 위한 제1 프로그래밍 신호를 인가하는, 시스템. - 제16항에 있어서,
상기 제1 임피던스 상태는 저임피던스 상태를 포함하는, 시스템. - 제16항에 있어서,
상기 제어 로직은, 상기 상관 전자 스위치들을 제2 임피던스 상태로 놓기 위한 제2 프로그래밍 신호를 인가하는, 시스템. - 제18항에 있어서,
상기 제2 임피던스 상태는 고임피던스 상태를 포함하는, 시스템. - 제18항에 있어서,
상기 제1 또는 제2 프로그래밍 신호는, 적어도 부분적으로, 초기화 데이터 신호 및 디폴트 초기화 상태 중 하나에 의거하는, 시스템. - 제1항 내지 제3항 중 어느 한 항에 있어서,
상기 스토리지 부분은 워드, 페이지의 일부, 페이지, 어레이 및 스토리지 디바이스 내의 모든 어드레서블 비트셀들 중 하나 이상을 포함하는, 시스템. - 제1항 내지 제3항 중 어느 한 항에 있어서,
상기 스토리지 디바이스는 휘발성 메모리 및 비휘발성 메모리 중 하나인, 시스템. - 제22항에 있어서,
상기 스토리지 디바이스는 SCM(storage class memory)인, 시스템. - 제1항 내지 제3항 중 어느 한 항에 있어서,
상기 제1 신호 라인들은 워드라인들을 포함하고, 상기 제2 신호 라인들은 비트라인들을 포함하는, 시스템. - 스토리지 디바이스 상의 스토리지의 일부를 초기화하는 방법으로서,
메모리 컨트롤러에서, 적어도 부분적으로, 상기 스토리지의 일부를 초기화하는 버스 마스터로부터의 명령어들에 의거하여 인코딩된 초기화 신호들을 생성하는 스텝 ― 상기 스토리지의 일부는 복수의 비트셀들을 포함하고, 상기 복수의 비트셀들은 2 이상의 행의 비트셀들을 포함하는 어레이로 배치되고 각각의 제1 신호 라인들 및 제2 신호 라인들에 연결되고, 상기 인코딩된 초기화 신호들은 상기 복수의 비트셀들의 각각의 비트셀에 대한 초기화 상태를 지정하는 초기화 데이터 신호를 포함함 ―;
상기 스토리지 디바이스에서, 상기 인코딩된 초기화 신호들을 디코딩하는 스텝; 및
상기 스토리지 디바이스에서, 상기 디코딩된 초기화 신호들에 응답하여 동일한 클럭 사이클에 걸쳐 상기 복수의 비트셀들의 각각의 비트셀을 상기 지정된 초기화 상태로 초기화하는 스텝을 포함하는, 방법. - 프로세서 상에서 실행 시, 상기 프로세서에게, 제25항에 기재된 방법을 수행하게 하는 코드를 운반하는, 비일시적인 데이터 캐리어.
- 2 이상의 행의 비트셀들을 포함하는 어레이로 배치되고 각각의 제1 신호 라인들 및 제2 신호 라인들에 연결된 복수의 비트셀들을 포함하는 어드레서블 부분을 갖는 스토리지 디바이스로서, 상기 스토리지 디바이스는 상기 제1 신호 라인들 및 상기 제2 신호 라인들을 통해 상기 비트셀들의 메모리 상태를 변경하기 위한 제어 로직을 더 갖고,
상기 스토리지 디바이스는,
메모리 컨트롤러로부터의 하나 이상의 인코딩된 초기화 신호들을 디코딩하고 - 상기 하나 이상의 인코딩된 초기화 신호들은 상기 복수의 비트셀들의 각각의 비트셀에 대한 초기화 상태를 지정하는 초기화 데이터 신호를 포함함 -,
상기 하나 이상의 디코딩된 초기화 신호들에 응답하여 동일한 클럭 사이클에 걸쳐 상기 복수의 비트셀들의 각각의 비트셀을 상기 지정된 초기화 상태로 초기화하는, 스토리지 디바이스. - 삭제
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1705294.5A GB2561011B (en) | 2017-03-31 | 2017-03-31 | Initialisation of a storage device |
GB1705294.5 | 2017-03-31 | ||
PCT/GB2018/050782 WO2018178644A1 (en) | 2017-03-31 | 2018-03-26 | Initialisation of a storage device |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190133175A KR20190133175A (ko) | 2019-12-02 |
KR102585511B1 true KR102585511B1 (ko) | 2023-10-10 |
Family
ID=58682595
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020197028429A KR102585511B1 (ko) | 2017-03-31 | 2018-03-26 | 스토리지 디바이스의 초기화 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10964386B2 (ko) |
KR (1) | KR102585511B1 (ko) |
CN (1) | CN110520928A (ko) |
GB (1) | GB2561011B (ko) |
WO (1) | WO2018178644A1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11137919B2 (en) | 2017-10-30 | 2021-10-05 | Arm Ltd. | Initialisation of a storage device |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090089515A1 (en) | 2007-10-02 | 2009-04-02 | Qualcomm Incorporated | Memory Controller for Performing Memory Block Initialization and Copy |
US20120075926A1 (en) | 2007-12-27 | 2012-03-29 | Hitachi, Ltd. | Semiconductor device |
US20170069378A1 (en) * | 2015-09-08 | 2017-03-09 | Arm Ltd. | Correlated electron switch programmable fabric |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61105793A (ja) * | 1984-10-26 | 1986-05-23 | Matsushita Electronics Corp | メモリ装置 |
JP2588936B2 (ja) * | 1988-07-04 | 1997-03-12 | 沖電気工業株式会社 | 半導体記憶装置 |
US5325325A (en) * | 1990-03-30 | 1994-06-28 | Sharp Kabushiki Kaisha | Semiconductor memory device capable of initializing storage data |
JPH0476643A (ja) * | 1990-07-12 | 1992-03-11 | Fujitsu Ltd | 主記憶初期化制御方式 |
JP2001344977A (ja) * | 2000-05-29 | 2001-12-14 | Nec Microsystems Ltd | 半導体記憶装置 |
JP2004062924A (ja) * | 2002-07-25 | 2004-02-26 | Matsushita Electric Ind Co Ltd | 半導体記憶装置及びその初期化方法 |
US7200743B1 (en) * | 2002-09-30 | 2007-04-03 | Mindspeed Technologies, Inc. | Simultaneous initialization of a plurality of memory elements from among a plurality of initialization values |
US7464243B2 (en) * | 2004-12-21 | 2008-12-09 | Cisco Technology, Inc. | Method and apparatus for arbitrarily initializing a portion of memory |
US20080094877A1 (en) * | 2006-10-20 | 2008-04-24 | Honeywell International Inc. | Faster initialization of dram memory |
US8068382B2 (en) * | 2009-08-05 | 2011-11-29 | Mosaid Technologies Incorporated | Semiconductor memory with multiple wordline selection |
DE112009005489T5 (de) * | 2009-12-31 | 2012-10-18 | Nokia Corporation | Eine Vorrichtung |
KR20160120004A (ko) * | 2015-04-07 | 2016-10-17 | 삼성전자주식회사 | 시스템 온-칩 및 이를 포함하는 전자 기기 |
US9514814B1 (en) * | 2015-08-13 | 2016-12-06 | Arm Ltd. | Memory write driver, method and system |
US9851738B2 (en) * | 2015-08-13 | 2017-12-26 | Arm Ltd. | Programmable voltage reference |
US9558819B1 (en) * | 2015-08-13 | 2017-01-31 | Arm Ltd. | Method, system and device for non-volatile memory device operation |
-
2017
- 2017-03-31 GB GB1705294.5A patent/GB2561011B/en active Active
-
2018
- 2018-03-26 WO PCT/GB2018/050782 patent/WO2018178644A1/en active Application Filing
- 2018-03-26 US US16/496,820 patent/US10964386B2/en active Active
- 2018-03-26 KR KR1020197028429A patent/KR102585511B1/ko active IP Right Grant
- 2018-03-26 CN CN201880021805.0A patent/CN110520928A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090089515A1 (en) | 2007-10-02 | 2009-04-02 | Qualcomm Incorporated | Memory Controller for Performing Memory Block Initialization and Copy |
US20120075926A1 (en) | 2007-12-27 | 2012-03-29 | Hitachi, Ltd. | Semiconductor device |
US20170069378A1 (en) * | 2015-09-08 | 2017-03-09 | Arm Ltd. | Correlated electron switch programmable fabric |
Non-Patent Citations (2)
Title |
---|
A. K. Mishra et al. Novel Design Technique of Address Decoder for SRAM. 2014 ICACCCT, 2014, pp. 1032-1035 (2014.05.10.)* |
T.Igarashi et al. A Decoder with ORGates for a Josephson High-Density Memory Circuit. IEEE J. Solid-State Circuits. 1987, pp. 85-91 (1987.02.28.)* |
Also Published As
Publication number | Publication date |
---|---|
CN110520928A (zh) | 2019-11-29 |
US10964386B2 (en) | 2021-03-30 |
GB201705294D0 (en) | 2017-05-17 |
WO2018178644A1 (en) | 2018-10-04 |
US20200286557A1 (en) | 2020-09-10 |
KR20190133175A (ko) | 2019-12-02 |
GB2561011B (en) | 2021-03-17 |
GB2561011A (en) | 2018-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11137919B2 (en) | Initialisation of a storage device | |
US11238914B2 (en) | Apparatuses and methods for compute components formed over an array of memory cells | |
JP7404487B2 (ja) | オン・デマンド・メモリ・ページ・サイズ | |
US9501424B2 (en) | Memory mapping method of nonvolatile memory system and system for providing the memory mapping method | |
KR102016543B1 (ko) | 반도체 장치, 프로세서, 시스템 및 반도체 장치의 동작 방법 | |
KR102240162B1 (ko) | 자기장-지원 메모리 동작 | |
US20150302925A1 (en) | Electronic device including semiconductor memory and operation method thereof | |
US20240036875A1 (en) | Apparatuses and methods for ordering bits in a memory device | |
US10741241B2 (en) | Apparatuses and methods for subarray addressing in a memory device | |
US9865344B2 (en) | Electronic device and method for operating electronic device | |
US11158363B2 (en) | Refresh in memory based on monitor array threshold drift | |
US20210279007A1 (en) | Device-initiated input/output assistance for computational non-volatile memory on disk-cached and tiered systems | |
KR102585511B1 (ko) | 스토리지 디바이스의 초기화 | |
US9183909B2 (en) | Non-volatile semiconductor memory device | |
Wang et al. | Memory Technology: Development, Fundamentals, and Future Trends | |
US10373664B2 (en) | Resistive memory device having reduced chip size and operation method thereof | |
US10878904B2 (en) | Resistive memory device and method for minimizing time for set program operation | |
TW202403742A (zh) | 記憶裝置與記憶系統 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AMND | Amendment | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) |