KR20220043302A - 스토리지 장치의 리셋 방법 및 이를 수행하는 스토리지 장치 - Google Patents
스토리지 장치의 리셋 방법 및 이를 수행하는 스토리지 장치 Download PDFInfo
- Publication number
- KR20220043302A KR20220043302A KR1020200126539A KR20200126539A KR20220043302A KR 20220043302 A KR20220043302 A KR 20220043302A KR 1020200126539 A KR1020200126539 A KR 1020200126539A KR 20200126539 A KR20200126539 A KR 20200126539A KR 20220043302 A KR20220043302 A KR 20220043302A
- Authority
- KR
- South Korea
- Prior art keywords
- control signal
- reset control
- reset
- level
- voltage
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 230000015654 memory Effects 0.000 claims description 94
- 238000001514 detection method Methods 0.000 claims description 47
- 239000000872 buffer Substances 0.000 claims description 25
- NGVDGCNFYWLIFO-UHFFFAOYSA-N pyridoxal 5'-phosphate Chemical compound CC1=NC=C(COP(O)(O)=O)C(C=O)=C1O NGVDGCNFYWLIFO-UHFFFAOYSA-N 0.000 claims description 19
- 230000004913 activation Effects 0.000 claims description 8
- 230000000630 rising effect Effects 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 24
- 238000007726 management method Methods 0.000 description 14
- 230000002159 abnormal effect Effects 0.000 description 9
- 230000004044 response Effects 0.000 description 9
- 238000012795 verification Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 101100481702 Arabidopsis thaliana TMK1 gene Proteins 0.000 description 2
- 101100481704 Arabidopsis thaliana TMK3 gene Proteins 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000009849 deactivation Effects 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000002779 inactivation Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 229920000642 polymer Polymers 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
- G11C5/148—Details of power up or power down circuits, standby circuits or recovery circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/30—Power supply circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/24—Resetting means
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
- G11C5/147—Voltage reference generators, voltage or current regulators; Internally lowered supply levels; Compensation for voltage drops
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Power Engineering (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
스토리지 장치의 리셋 방법에서, 외부 전원 전압에 기초하여 내부 전원 전압을 생성한다. 내부 전원 전압의 레벨에 기초하여 활성화 또는 비활성화되는 제1 리셋 제어 신호를 생성한다. 제1 리셋 제어 신호와 다른 타이밍으로 활성화 또는 비활성화되는 제2 리셋 제어 신호를 생성한다. 제1 리셋 제어 신호 및 제2 리셋 제어 신호에 기초하여 제1 리셋 제어 신호 및 제2 리셋 제어 신호와 다른 타이밍으로 활성화 또는 비활성화되는 최종 리셋 제어 신호를 생성한다. 외부 전원 전압이 오프(off)되는 경우에, 최종 리셋 제어 신호에 기초하여 리셋 동작을 수행한다.
Description
본 발명은 반도체 집적 회로에 관한 것으로서, 더욱 상세하게는 스토리지 장치의 리셋 방법 및 상기 리셋 방법을 수행하는 스토리지 장치에 관한 것이다.
최근에는 메모리 장치를 이용하는 SSD(solid state drive)와 같은 스토리지 장치가 널리 사용되고 있다. 상기와 같은 스토리지 장치는 기계적인 구동부가 없어 안정성 및 내구성이 뛰어나며 정보의 액세스 속도가 매우 빠르고 전력 소모가 적다는 장점이 있다. 최근 들어 노트북과 같은 전자 시스템뿐만 아니라, 자동차, 항공기, 드론(drone) 등과 같은 다양한 종류의 시스템에 전자 회로가 적용됨에 따라, 스토리지 장치 역시 다양한 종류의 시스템에서 사용되고 있다.
상기 스토리지 장치는 스토리지 컨트롤러 및 비휘발성 메모리를 포함하며, 스토리지 장치에 인가되는 전원이 갑자기 오프(off)되는 경우와 같이 특정 이벤트가 발생하는 경우에 스토리지 컨트롤러를 리셋(reset)할 필요가 있다. 이 때, 리셋 동작이 정상적으로 완료되지 않으면 스토리지 컨트롤러 및 스토리지 장치에 동작 오류가 일어날 수 있다.
본 발명의 일 목적은 리셋 동작이 의도치 않게 중단되는 비정상 리셋 오프(abnormal reset off)를 방지하여 스토리지 장치를 효과적으로 보호할 수 있는 리셋 방법을 제공하는 것이다.
본 발명의 다른 목적은 상기 리셋 방법을 수행하는 스토리지 장치를 제공하는 것이다.
상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 스토리지 장치의 리셋 방법에서, 외부 전원 전압에 기초하여 내부 전원 전압을 생성한다. 상기 내부 전원 전압의 레벨에 기초하여 활성화 또는 비활성화되는 제1 리셋 제어 신호를 생성한다. 상기 제1 리셋 제어 신호와 다른 타이밍으로 활성화 또는 비활성화되는 제2 리셋 제어 신호를 생성한다. 상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호에 기초하여 상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호와 다른 타이밍으로 활성화 또는 비활성화되는 최종 리셋 제어 신호를 생성한다. 상기 외부 전원 전압이 오프(off)되는 경우에, 상기 최종 리셋 제어 신호에 기초하여 리셋 동작을 수행한다.
상기 다른 목적을 달성하기 위해, 본 발명의 실시예들에 따른 스토리지 장치는 전원 손실 보호 집적 회로(Power-Loss Protection Integrated Circuit; PLP IC), 리셋 검출부, 리셋 제어부 및 스토리지 컨트롤러를 포함한다. 상기 전원 손실 보호 집적 회로는 외부 전원 전압에 기초하여 내부 전원 전압을 생성한다. 상기 리셋 검출부는 외부 전원 전압에 기초하여 내부 전원 전압을 생성한다. 상기 리셋 제어부는 상기 제1 리셋 제어 신호 및 상기 제1 리셋 제어 신호와 다른 타이밍으로 활성화 또는 비활성화되는 제2 리셋 제어 신호에 기초하여, 상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호와 다른 타이밍으로 활성화 또는 비활성화되는 최종 리셋 제어 신호를 생성한다. 상기 스토리지 컨트롤러는 스토리지 장치의 동작을 제어하고, 상기 외부 전원 전압이 오프(off)되는 경우에 상기 최종 리셋 제어 신호에 기초하여 리셋 동작을 수행한다.
상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 스토리지 장치의 리셋 방법에서, 외부 전원 전압에 기초하여 상기 외부 전원 전압보다 낮거나 같은 레벨을 가지는 내부 전원 전압을 생성한다. 상기 외부 전원 전압 및 상기 내부 전원 전압 중 하나에 기초하여 적어도 하나의 구동 전압을 생성한다. 상기 구동 전압에 기초하여 정상 동작을 수행한다. 상기 내부 전원 전압의 레벨을 검출하여, 상기 내부 전원 전압의 레벨이 기준 레벨보다 높은 경우에 활성화되도록 제1 리셋 제어 신호를 생성한다. 상기 제1 리셋 제어 신호와 다른 타이밍으로 활성화 또는 비활성화되는 제2 리셋 제어 신호를 생성한다. 상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호에 기초하여, 상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호 중 적어도 하나가 활성화되는 경우에 활성화되는 최종 리셋 제어 신호를 생성한다. 상기 외부 전원 전압의 레벨을 검출하여, 상기 외부 전원 전압이 오프(off)되는 경우에 상기 외부 전원 전압이 오프되었음을 나타내는 파워 오프 검출 신호를 생성한다. 상기 외부 전원 전압이 오프되는 경우에, 상기 최종 리셋 제어 신호 및 상기 구동 전압에 기초하여 리셋 동작을 수행한다. 상기 제2 리셋 제어 신호는 스토리지 장치에 포함되는 스토리지 컨트롤러로부터 제공되는 오프 레디(off ready) 신호 또는 상기 파워 오프 검출 신호에 기초하여 생성되는 신호이다. 상기 외부 전원 전압이 오프된 이후에도 상기 최종 리셋 제어 신호는 미리 정해진 시간 동안 활성화 레벨을 계속 유지하고, 상기 활성화 레벨을 유지하는 상기 최종 리셋 제어 신호 및 상기 내부 전원 전압에 기초하여 생성되는 상기 구동 전압에 기초하여 상기 리셋 동작이 수행된다.
상기와 같은 본 발명의 실시예들에 따른 스토리지 장치의 리셋 방법 및 스토리지 장치에서는, 내부 전원 전압에 기초하여 생성되는 제1 리셋 제어 신호뿐만 아니라, 제1 리셋 제어 신호와 다른 타이밍을 가지는 제2 리셋 제어 신호를 추가적으로 이용하여 리셋 동작을 제어할 수 있다. 구체적으로, 제1 및 제2 리셋 제어 신호들에 기초하여 생성되는 최종 리셋 제어 신호에 기초하여 리셋 동작을 수행할 수 있다. 따라서, 리셋 동작이 의도치 않게 중단되는 비정상 리셋 오프를 방지하여, 스토리지 장치를 효과적으로 보호할 수 있다. 다시 말하면, 전원 손실 보호 동작을 지원하는 스토리지 장치에서, 의도치 않은 리셋 오프를 방지하고 PLP 덤프 동작의 실패를 방지하며, 스토리지 장치가 블랙 아웃 현상에 따라 에러 모드로 진입하는 것을 보호하여 스토리지 장치의 신뢰성이 향상될 수 있다.
도 1은 본 발명의 실시예들에 따른 스토리지 장치의 리셋 방법을 나타내는 순서도이다.
도 2는 본 발명의 실시예들에 따른 스토리지 장치 및 이를 포함하는 스토리지 시스템을 나타내는 블록도이다.
도 3은 본 발명의 실시예들에 따른 스토리지 장치에 포함되는 스토리지 컨트롤러의 일 예를 나타내는 블록도이다.
도 4는 본 발명의 실시예들에 따른 스토리지 장치에 포함되는 비휘발성 메모리의 일 예를 나타내는 블록도이다.
도 5는 도 1의 제1 리셋 제어 신호를 생성하는 단계의 일 예를 나타내는 순서도이다.
도 6은 도 1의 제2 리셋 제어 신호를 생성하는 단계의 일 예를 나타내는 순서도이다.
도 7은 도 1의 최종 리셋 제어 신호를 생성하는 단계의 일 예를 나타내는 순서도이다.
도 8은 도 1의 리셋 동작을 수행하는 단계의 일 예를 나타내는 순서도이다.
도 9는 도 2의 스토리지 장치의 일 예를 나타내는 블록도이다.
도 10은 도 9의 스토리지 장치에 포함되는 전원 손실 보호 집적 회로의 일 예를 나타내는 블록도이다.
도 11은 도 9의 스토리지 장치에 포함되는 리셋 검출부의 일 예를 나타내는 블록도이다.
도 12는 도 9의 스토리지 장치에 포함되는 리셋 제어부의 일 예를 나타내는 블록도이다.
도 13 및 14는 도 9의 스토리지 장치의 동작을 설명하기 위한 도면들이다.
도 15는 도 1의 제2 리셋 제어 신호를 생성하는 단계의 다른 예를 나타내는 순서도이다.
도 16은 도 2의 스토리지 장치의 다른 예를 나타내는 블록도이다.
도 17은 도 16의 스토리지 장치에 포함되는 지연부의 일 예를 나타내는 블록도이다.
도 18 및 19는 도 16의 스토리지 장치의 동작을 설명하기 위한 도면들이다.
도 20은 본 발명의 실시예들에 따른 스토리지 장치의 리셋 방법을 나타내는 순서도이다.
도 21은 본 발명의 실시예들에 따른 스토리지 시스템이 적용된 데이터 센터를 나타내는 블록도이다.
도 2는 본 발명의 실시예들에 따른 스토리지 장치 및 이를 포함하는 스토리지 시스템을 나타내는 블록도이다.
도 3은 본 발명의 실시예들에 따른 스토리지 장치에 포함되는 스토리지 컨트롤러의 일 예를 나타내는 블록도이다.
도 4는 본 발명의 실시예들에 따른 스토리지 장치에 포함되는 비휘발성 메모리의 일 예를 나타내는 블록도이다.
도 5는 도 1의 제1 리셋 제어 신호를 생성하는 단계의 일 예를 나타내는 순서도이다.
도 6은 도 1의 제2 리셋 제어 신호를 생성하는 단계의 일 예를 나타내는 순서도이다.
도 7은 도 1의 최종 리셋 제어 신호를 생성하는 단계의 일 예를 나타내는 순서도이다.
도 8은 도 1의 리셋 동작을 수행하는 단계의 일 예를 나타내는 순서도이다.
도 9는 도 2의 스토리지 장치의 일 예를 나타내는 블록도이다.
도 10은 도 9의 스토리지 장치에 포함되는 전원 손실 보호 집적 회로의 일 예를 나타내는 블록도이다.
도 11은 도 9의 스토리지 장치에 포함되는 리셋 검출부의 일 예를 나타내는 블록도이다.
도 12는 도 9의 스토리지 장치에 포함되는 리셋 제어부의 일 예를 나타내는 블록도이다.
도 13 및 14는 도 9의 스토리지 장치의 동작을 설명하기 위한 도면들이다.
도 15는 도 1의 제2 리셋 제어 신호를 생성하는 단계의 다른 예를 나타내는 순서도이다.
도 16은 도 2의 스토리지 장치의 다른 예를 나타내는 블록도이다.
도 17은 도 16의 스토리지 장치에 포함되는 지연부의 일 예를 나타내는 블록도이다.
도 18 및 19는 도 16의 스토리지 장치의 동작을 설명하기 위한 도면들이다.
도 20은 본 발명의 실시예들에 따른 스토리지 장치의 리셋 방법을 나타내는 순서도이다.
도 21은 본 발명의 실시예들에 따른 스토리지 시스템이 적용된 데이터 센터를 나타내는 블록도이다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 실시예들에 따른 스토리지 장치의 리셋 방법을 나타내는 순서도이다.
도 1을 참조하면, 본 발명의 실시예들에 따른 리셋 방법을 수행하는 스토리지 장치는 데이터를 저장하는 복수의 비휘발성 메모리들 및 상기 복수의 비휘발성 메모리들의 동작을 제어하는 스토리지 컨트롤러를 포함한다. 또한, 상기 스토리지 장치는 전원 손실 보호 동작을 수행하는 전원 손실 보호 집적 회로(Power-Loss Protection Integrated Circuit; PLP IC), 적어도 하나의 구동 전압을 생성하는 전원 관리 집적 회로(Power Management Integrated Circuit; PMIC), 및 리셋 동작을 제어하기 위한 리셋 제어 신호를 생성하는 리셋 신호 생성부를 포함하여 구현된다. 상기 스토리지 장치 및 이를 포함하는 스토리지 시스템의 구체적인 구조에 대해서는 도 2 등을 참조하여 후술하도록 한다.
본 발명의 실시예들에 따른 스토리지 장치의 리셋 방법에서, 외부 전원 전압에 기초하여 내부 전원 전압을 생성한다(단계 S100). 상기 외부 전원 전압은 상기 스토리지 장치의 정상 동작 시에 상기 구동 전압을 생성하는데 이용되며, 상기 내부 전원 전압은 상기 외부 전원 전압이 오프(off)되는 경우에 상기 구동 전압을 생성하는데 이용될 수 있다.
상기 내부 전원 전압에 기초하여 제1 리셋 제어 신호를 생성한다(단계 S200). 예를 들어, 상기 내부 전원 전압의 레벨에 기초하여 활성화 또는 비활성화되도록 상기 제1 리셋 제어 신호를 생성할 수 있다. 단계 S200의 구체적인 동작 및 이를 위한 구체적인 구성에 대해서는 도 5, 9 및 11을 참조하여 후술하도록 한다.
상기 제1 리셋 제어 신호와 다른 타이밍을 가지는 제2 리셋 제어 신호를 생성한다(단계 S300). 예를 들어, 상기 제2 리셋 제어 신호는 상기 제1 리셋 제어 신호와 다른 타이밍으로 활성화 또는 비활성화될 수 있다.
일 실시예에서, 상기 제2 리셋 제어 신호는 상기 스토리지 컨트롤러로부터 제공되는 오프 레디(off ready) 신호일 수 있다. 다른 실시예에서, 상기 제2 리셋 제어 신호는 상기 전원 손실 보호 집적 회로로부터 제공되는 파워 오프 검출 신호에 기초하여 생성될 수 있다. 다만 본 발명은 이에 한정되지 않으며, 상기 제2 리셋 제어 신호는 그 밖에 상기 제1 리셋 제어 신호와 다른 타이밍을 가지는 임의의 신호일 수 있다. 단계 S300의 구체적인 동작 및 이를 위한 구체적인 구성에 대해서는 도 6, 9, 15, 16 및 17을 참조하여 후술하도록 한다.
상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호에 기초하여 최종 리셋 제어 신호를 생성한다(단계 S400). 예를 들어, 상기 최종 리셋 제어 신호는 상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호와 다른 타이밍으로 활성화 또는 비활성화될 수 있다. 단계 S400의 구체적인 동작 및 이를 위한 구체적인 구성에 대해서는 도 7, 9 및 12를 참조하여 후술하도록 한다.
상기 외부 전원 전압이 오프되는 경우에, 상기 최종 리셋 제어 신호에 기초하여 리셋 동작을 수행한다(단계 S500). 예를 들어, 상기 리셋 동작은 상기 스토리지 컨트롤러의 제어에 기초하여 수행될 수 있다. 단계 S500의 구체적인 동작에 대해서는 도 8을 참조하여 후술하도록 한다.
스토리지 장치에서 전원 손실 보호 동작은, 외부 전원 전압의 공급이 중단되더라도 일정 시간 동안 내부 전원 전압에 기초하여 스토리지 장치를 구동시키는 것을 나타내며, 특히 내부 전원 전압의 공급이 중단되기 전에 스토리지 장치의 동작을 정상적으로 종료할 수 있도록 내부 전원 전압에 기초하여 스토리지 장치에 대한 리셋 동작을 수행하는 것을 나타낸다. 이 때, 전원 전환 및/또는 누설 전류의 증가에 의해 내부 전원 전압이 순간적으로 기준 레벨보다 낮아지는 경우에, 리셋 동작이 의도치 않게 중단되는 비정상 리셋 오프(abnormal reset off)가 발생할 수 있으며, 이 경우 스토리지 장치의 동작 오류가 발생할 수 있다.
본 발명의 실시예들에 따른 스토리지 장치의 리셋 방법에서는, 상기 내부 전원 전압에 기초하여 생성되는 상기 제1 리셋 제어 신호뿐만 아니라, 상기 제1 리셋 제어 신호와 다른 타이밍을 가지는 상기 제2 리셋 제어 신호를 추가적으로 이용하여 상기 리셋 동작을 제어할 수 있다. 구체적으로, 상기 제1 및 제2 리셋 제어 신호들에 기초하여 생성되는 상기 최종 리셋 제어 신호에 기초하여 상기 리셋 동작을 수행할 수 있다. 따라서, 상기 리셋 동작이 의도치 않게 중단되는 상기 비정상 리셋 오프를 방지하여, 상기 스토리지 장치를 효과적으로 보호할 수 있다. 다시 말하면, 상기 전원 손실 보호 동작을 지원하는 상기 스토리지 장치에서, 의도치 않은 리셋 오프를 방지하고 PLP 덤프(dump) 동작의 실패를 방지하며, 상기 스토리지 장치가 블랙 아웃(black out) 현상에 따라 에러 모드로 진입하는 것을 보호하여 상기 스토리지 장치의 신뢰성이 향상될 수 있다.
도 2는 본 발명의 실시예들에 따른 스토리지 장치 및 이를 포함하는 스토리지 시스템을 나타내는 블록도이다.
도 2를 참조하면, 스토리지 시스템(100)은 호스트 장치(200) 및 스토리지 장치(300)를 포함한다.
호스트 장치(200)는 스토리지 시스템(100)의 전반적인 동작을 제어한다. 예를 들어, 상세하게 도시하지는 않았으나, 호스트 장치(200)는 호스트 프로세서 및 호스트 메모리를 포함할 수 있다. 상기 호스트 프로세서는 호스트 장치(200)의 동작을 제어하고, 예를 들어 운영 체제(Operating System; OS)를 실행할 수 있다. 상기 호스트 메모리는 상기 호스트 프로세서에 의해 실행 및 처리되는 명령어(instruction) 및 데이터를 저장할 수 있다. 예를 들어, 상기 호스트 프로세서에 의해 실행되는 상기 운영 체제는 파일 관리를 위한 파일 시스템(file system), 및 스토리지 장치(300)를 포함하는 주변 기기를 상기 운영 체제 레벨에서 제어하기 위한 장치 드라이버(device driver)를 포함할 수 있다.
스토리지 장치(300)는 호스트 장치(200)에 의해 액세스된다. 스토리지 장치(300)는 전원 손실 보호 집적 회로(310), 전원 관리 집적 회로(320), 리셋 신호 생성부(330), 스토리지 컨트롤러(340), 복수의 비휘발성 메모리들(350a, 350b, 350c) 및 버퍼 메모리(360)를 포함한다.
전원 손실 보호 집적 회로(310)는 외부 전원 전압(VEXT)에 기초하여 내부 전원 전압(VINT)을 생성한다. 스토리지 장치(300)에 전원이 오프(off)된 경우에(예를 들어, 외부 전원 전압(VEXT)이 갑자기 오프되는 sudden power off(SPO)의 경우에), 내부 전원 전압(VINT)은 보조 전원 전압으로 이용될 수 있다.
전원 관리 집적 회로(320)는 외부 전원 전압(VEXT) 및 내부 전원 전압(VINT) 중 하나에 기초하여 스토리지 컨트롤러(340), 복수의 비휘발성 메모리들(350a, 350b, 350c) 및 버퍼 메모리(360)에 공급되는 적어도 하나의 구동 전압(VD)을 생성 및 제어한다. 다시 말하면, 스토리지 컨트롤러(340), 복수의 비휘발성 메모리들(350a, 350b, 350c) 및 버퍼 메모리(360)를 구동하기 위한 전원이 전원 관리 집적 회로(320)에 의해 제어 및 조절될 수 있다.
예를 들어, 전원 관리 집적 회로(320)는 외부 전원 전압(VEXT)이 오프되기 전에는 외부 전원 전압(VEXT)에 기초하여 구동 전압(VD)을 생성하고, 외부 전원 전압(VEXT)이 오프된 이후에는 내부 전원 전압(VINT)에 기초하여 구동 전압(VD)을 생성하며, 따라서 스토리지 장치(300)에 전원이 오프된 이후에도 구동 전압(VD)을 일정 시간 동안 공급할 수 있다. 도시의 편의상 생략하였으나, 도 9 및 16을 참조하여 후술하는 것처럼 전원 관리 집적 회로(320)는 외부 전원 전압(VEXT)을 수신할 수 있다.
리셋 신호 생성부(330)는 스토리지 컨트롤러(310)에 제공되는 최종 리셋 제어 신호(FRST)를 생성한다. 리셋 신호 생성부(330)의 구체적인 구성에 대해서는 도 9, 16 등을 참조하여 후술하도록 한다.
스토리지 컨트롤러(340)는 스토리지 장치(300)의 동작을 제어할 수 있다. 예를 들어, 스토리지 컨트롤러(340)는 호스트 장치(200)로부터 수신된 커맨드 및 데이터에 기초하여 복수의 비휘발성 메모리들(350a, 350b, 350c)의 동작을 제어할 수 있다.
복수의 비휘발성 메모리들(350a, 350b, 350c)은 복수의 데이터들을 저장할 수 있다. 예를 들어, 복수의 비휘발성 메모리들(350a, 350b, 350c)은 메타 데이터들 및 그 밖의 사용자 데이터들을 저장할 수 있다.
일 실시예에서, 복수의 비휘발성 메모리들(350a, 350b, 350c) 각각은 NAND 플래시 메모리(Flash Memory)를 포함할 수 있다. 다른 실시예에서, 복수의 비휘발성 메모리들(350a, 350b, 350c) 각각은 EEPROM(Electrically Erasable Programmable Read-Only Memory), PRAM(Phase Change Random Access Memory), RRAM(Resistance Random Access Memory), NFGM(Nano Floating Gate Memory), PoRAM(Polymer Random Access Memory), MRAM(Magnetic Random Access Memory), FRAM(Ferroelectric Random Access Memory) 또는 이와 유사한 메모리를 포함할 수 있다.
버퍼 메모리(360)는 스토리지 컨트롤러(340)에 의해 실행 및 처리되는 명령어 및 데이터를 저장할 수 있고, 복수의 비휘발성 메모리들(350a, 350b, 350c)에 저장되어 있거나 저장하고자 하는 데이터를 임시로 저장할 수 있다. 예를 들어, 버퍼 메모리(360)는 DRAM(Dynamic Random Access Memory) 등과 같은 휘발성 메모리를 포함할 수 있다.
전원 손실 보호 집적 회로(310), 리셋 신호 생성부(330) 및 스토리지 컨트롤러(340)는 도 1을 참조하여 상술한 본 발명의 실시예들에 따른 리셋 방법을 수행한다. 예를 들어, 전원 손실 보호 집적 회로(310)는 외부 전원 전압(VEXT)에 기초하여 내부 전원 전압(VINT)을 생성하고, 리셋 신호 생성부(330)는 제1 리셋 제어 신호를 생성하고 제2 리셋 제어 신호를 생성하고 상기 제1 및 제2 리셋 제어 신호들에 기초하여 최종 리셋 제어 신호(FRST)를 생성하며, 스토리지 컨트롤러(340)는 외부 전원 전압(VEXT)이 오프되는 경우에 최종 리셋 제어 신호(FRST)에 기초하여 리셋 동작을 수행한다. 다시 말하면, 리셋 신호 생성부(330)는 2개의 리셋 제어 신호들에 기초하여 비정상 리셋 오프를 방지할 수 있는 최종 리셋 제어 신호(FRST)를 생성함으로써, 스토리지 장치(300)에 대한 제품 신뢰성을 향상시킬 수 있다. 또한, 전원 손실 보호 집적 회로(310), 리셋 신호 생성부(330) 및 스토리지 컨트롤러(340)는 도 20을 참조하여 후술하는 리셋 방법을 수행할 수도 있다.
일 실시예에서, 전원 손실 보호 집적 회로(310), 전원 관리 집적 회로(320), 리셋 신호 생성부(330) 및 스토리지 컨트롤러(340)는 각각 별개의 칩으로 형성될 수 있다. 실시예에 따라서, 리셋 신호 생성부(330)는 2개 이상의 칩으로 형성될 수도 있다. 실시예에 따라서, 스토리지 컨트롤러(340), 복수의 비휘발성 메모리들(350a, 350b, 350c) 및 버퍼 메모리(360)는 각각 별개의 칩으로 형성되거나 이 중 적어도 일부는 하나의 칩으로 형성될 수도 있다.
일 실시예에서, 스토리지 장치(300)는 SSD(Solid State Drive)일 수 있다. 다른 실시예에서, 스토리지 장치(300)는 UFS(Universal Flash Storage), MMC(Multi Media Card) 또는 eMMC(embedded MMC)일 수 있다. 또 다른 실시예에서, SD(Secure Digital) 카드, 마이크로 SD 카드, 메모리 스틱(memory stick), 칩 카드(chip card), USB(Universal Serial Bus) 카드, 스마트 카드(smart card), CF(Compact Flash) 카드 또는 이와 유사한 형태로 구현될 수 있다.
일 실시예에서, 스토리지 장치(300)는 SATA(Serial Advanced Technology Attachment) 버스, SCSI(Small Computer Small Interface) 버스, NVMe(Non-Volatile Memory Express) 버스, SAS(Serial Attached SCSI) 버스, UFS, eMMC 등의 버스를 포함하는 블록 액세서블 인터페이스(block accessible interface)를 통해 호스트 장치(200)와 연결되고, 호스트 장치(200)에 의해 상기 블록 액세서블 인터페이스를 통하여 블록 단위로 액세스될 수 있다.
일 실시예에서, 스토리지 시스템(100)은 PC(Personal Computer), 서버 컴퓨터(server computer), 데이터 센터(data center), 워크스테이션(workstation), 디지털 TV(digital television), 셋-탑 박스(set-top box) 등의 임의의 컴퓨팅 시스템일 수 있다. 다른 실시예에서, 스토리지 시스템(100)은 휴대폰(mobile phone), 스마트 폰(smart phone), 태블릿(tablet) PC(Personal Computer), 노트북(laptop computer), PDA(Personal Digital Assistant), PMP(Portable Multimedia Player), 디지털 카메라(digital camera), 캠코더(camcorder), 휴대용 게임 콘솔(portable game console), 음악 재생기(music player), 동영상 재생기(video player), 네비게이션(navigation) 기기, 웨어러블(wearable) 기기, IoT(Internet of Things) 기기, e-북(e-book), VR(Virtual Reality) 기기, AR(Augmented Reality) 기기, 드론(drone) 등의 임의의 모바일 시스템일 수 있다.
도 3은 본 발명의 실시예들에 따른 스토리지 장치에 포함되는 스토리지 컨트롤러의 일 예를 나타내는 블록도이다.
도 3을 참조하면, 스토리지 컨트롤러(400)는 적어도 하나의 프로세서(410), 메모리(420), 호스트 인터페이스(430), ECC(Error Correction Code) 블록(440) 및 메모리 인터페이스(450)를 포함할 수 있다.
프로세서(410)는 호스트 장치(도 2의 200)로부터 호스트 인터페이스(430)를 통하여 수신된 커맨드에 응답하여 스토리지 컨트롤러(400)의 동작을 제어할 수 있다. 예를 들어, 프로세서(410)는 스토리지 장치(도 2의 300)를 구동하기 위한 펌웨어(Firmware)를 채용하여 각각의 구성들을 제어할 수 있다.
메모리(420)는 프로세서(410)에 의해 실행 및 처리되는 명령어 및 데이터를 저장할 수 있다. 예를 들어, 메모리(420)는 SRAM(Static Random Access Memory), 캐시(cache) 메모리 등과 같은 상대적으로 작은 용량 및 빠른 속도를 가지는 휘발성 메모리로 구현될 수 있다.
에러 정정을 위한 ECC 블록(440)은 BCH(Bose-Chaudhuri-Hocquenghem) 코드, LDPC(Low Density Parity Check) 코드, 터보 코드(Turbo Code), 리드-솔로몬 코드(Reed-Solomon Code), 콘볼루션 코드(Convolution Code), RSC(Recursive Systematic Code), TCM(Trellis-Coded Modulation), BCM(Block Coded Modulation) 등의 부호화된 변조(Coded Modulation), 또는 다른 에러 정정 코드를 이용하여 ECC 인코딩 및 ECC 디코딩을 수행할 수 있다.
호스트 인터페이스(430)는 호스트 장치(200)와 스토리지 장치(300) 사이의 물리적 연결을 제공할 수 있다. 즉, 호스트 인터페이스(430)는 호스트 장치(200)의 버스 포맷(bus format)에 대응하여 스토리지 장치(300)와의 인터페이싱을 제공할 수 있다. 일 실시예에서, 호스트 장치(200)의 버스 포맷은 SCSI 또는 SAS일 수 있다. 다른 실시예에서, 호스트 장치(200)의 버스 포맷은 USB, PCIe(peripheral component interconnect express), ATA, PATA, SATA, NVMe 등일 수 있다.
메모리 인터페이스(450)는 비휘발성 메모리들(도 2의 350a, 350b, 350c)과 데이터를 교환할 수 있다. 메모리 인터페이스(450)는 데이터를 비휘발성 메모리들(350a, 350b, 350c)에 전송할 수 있고, 비휘발성 메모리들(350a, 350b, 350c)로부터 독출된 데이터를 수신할 수 있다. 일 실시예에서, 메모리 인터페이스(450)는 비휘발성 메모리들(350a, 350b, 350c)과 하나의 채널을 통하여 연결될 수 있다. 다른 실시예에서, 메모리 인터페이스(450)는 비휘발성 메모리들(350a, 350b, 350c)과 2 이상의 채널들을 통하여 연결될 수 있다.
도 4는 본 발명의 실시예들에 따른 스토리지 장치에 포함되는 비휘발성 메모리의 일 예를 나타내는 블록도이다.
도 4를 참조하면, 비휘발성 메모리(500)는 메모리 셀 어레이(510), 어드레스 디코더(520), 페이지 버퍼 회로(530), 데이터 입출력 회로(540), 전압 생성기(550) 및 제어 회로(560)를 포함한다.
메모리 셀 어레이(510)는 복수의 스트링 선택 라인들(SSL), 복수의 워드 라인들(WL) 및 복수의 접지 선택 라인들(GSL)을 통해 어드레스 디코더(520)와 연결된다. 또한, 메모리 셀 어레이(510)는 복수의 비트 라인들(BL)을 통해 페이지 버퍼 회로(530)와 연결된다. 메모리 셀 어레이(510)는 복수의 워드 라인들(WL) 및 복수의 비트 라인들(BL)에 연결되는 복수의 메모리 셀들을 포함할 수 있다. 메모리 셀 어레이(510)는 각각 메모리 셀들을 포함하는 복수의 메모리 블록들(BLK1, BLK2, ..., BLKz)로 구분될 수 있다. 또한, 복수의 메모리 블록들(BLK1, BLK2, ..., BLKz) 각각은 복수의 페이지들로 구분될 수 있다.
실시예에 따라서, 메모리 셀 어레이(510)는 2차원 어레이(array) 구조 또는 3차원 수직 어레이 구조로 형성될 수 있다. 수직형(또는 3차원) 메모리 셀 어레이에 대한 자세한 설명은 본 명세서에 참고 문헌으로 결합된 미국 등록 번호 7,679,133; 8,553,466; 8,654,587; 8,559,235 및 미국 공개 번호 2011/0233648에 기술되어 있다.
제어 회로(560)는 외부(예를 들어, 도 2의 호스트 장치(200) 및/또는 스토리지 컨트롤러(340))로부터 커맨드(CMD) 및 어드레스(ADDR)를 수신하고, 커맨드(CMD) 및 어드레스(ADDR)에 기초하여 비휘발성 메모리(500)의 소거 루프, 프로그램 루프 및 독출 동작을 제어한다. 여기서 프로그램 루프는 프로그램 동작과 프로그램 검증 동작을 포함하고, 소거 루프는 소거 동작과 소거 검증 동작을 포함할 수 있다. 여기서 독출 동작은 노멀 독출 동작과 데이터 리커버리 독출 동작을 포함할 수 있다.
예를 들어, 제어 회로(560)는 커맨드(CMD)에 기초하여 전압 생성기(550)를 제어하기 위한 제어 신호들(CON) 및 페이지 버퍼 회로(530)를 제어하기 위한 제어 신호들(PBC)을 생성하고, 어드레스(ADDR)에 기초하여 로우 어드레스(R_ADDR) 및 컬럼 어드레스(C_ADDR)를 생성할 수 있다. 제어 회로(560)는 로우 어드레스(R_ADDR)를 어드레스 디코더(520)에 제공하고, 컬럼 어드레스(C_ADDR)를 데이터 입출력 회로(540)에 제공할 수 있다.
어드레스 디코더(520)는 복수의 스트링 선택 라인들(SSL), 복수의 워드 라인들(WL) 및 복수의 접지 선택 라인들(GSL)을 통해 메모리 셀 어레이(510)와 연결된다.
예를 들어, 소거/프로그램/독출 동작 시에, 어드레스 디코더(520)는 로우 어드레스(R_ADDR)에 응답하여, 복수의 워드 라인들(WL) 중 적어도 하나를 선택 워드 라인으로 결정하고, 복수의 워드 라인들(WL) 중에서 상기 선택 워드 라인을 제외한 나머지 워드 라인들을 비선택 워드 라인들로 결정할 수 있다.
또한, 소거/프로그램/독출 동작 시에, 어드레스 디코더(520)는 로우 어드레스(R_ADDR)에 응답하여, 복수의 스트링 선택 라인들(SSL) 중 적어도 하나를 선택 스트링 선택 라인으로 결정하고, 나머지 스트링 선택 라인들을 비선택 스트링 선택 라인들로 결정할 수 있다.
또한, 소거/프로그램/독출 동작 시에, 어드레스 디코더(520)는 로우 어드레스(R_ADDR)에 응답하여, 복수의 접지 선택 라인들(GSL) 중 적어도 하나를 선택 접지 선택 라인으로 결정하고, 나머지 접지 선택 라인들을 비선택 접지 선택 라인들로 결정할 수 있다.
전압 생성기(550)는 전원 전압(PWR) 및 제어 신호들(CON)에 기초하여 비휘발성 메모리(500)의 동작에 필요한 전압들(VS)을 생성할 수 있다. 전압들(VS)은 어드레스 디코더(520)를 통해 복수의 스트링 선택 라인들(SSL), 복수의 워드 라인들(WL) 및 복수의 접지 선택 라인들(GSL)에 인가될 수 있다. 또한, 전압 생성기(550)는 전원 전압(PWR) 및 제어 신호들(CON)에 기초하여 소거 동작에 필요한 소거 전압(VERS)을 생성할 수 있다. 소거 전압(VERS)은 메모리 셀 어레이(510)에 직접 인가되거나 비트 라인(BL)을 통해 인가될 수 있다.
예를 들어, 소거 동작 시에, 전압 생성기(550)는 하나의 메모리 블록의 공통 소스 라인 및/또는 비트 라인(BL)에 소거 전압(VERS)을 인가하고, 어드레스 디코더(520)를 통해 하나의 메모리 블록의 모든 워드 라인들 또는 일부의 서브 블록에 해당하는 워드 라인들에 소거 허용 전압(예를 들어, 접지 전압)을 인가할 수 있다. 소거 검증 동작 시에, 전압 생성기(550)는 하나의 메모리 블록의 모든 워드 라인들에 소거 검증 전압을 인가하거나 워드 라인 단위로 소거 검증 전압을 인가할 수 있다.
예를 들어, 프로그램 동작 시에, 전압 생성기(550)는 어드레스 디코더(520)를 통해 상기 선택 워드 라인에 프로그램 전압을 인가하고, 상기 비선택 워드 라인들에는 프로그램 금지 전압을 인가할 수 있다. 프로그램 검증 동작 시에, 전압 생성기(550)는 어드레스 디코더(520)를 통해 상기 선택 워드 라인에 프로그램 검증 전압을 인가하고, 상기 비선택 워드 라인들에는 검증 패스 전압을 인가할 수 있다.
또한, 노멀 독출 동작 시에, 전압 생성기(550)는 어드레스 디코더(520)를 통해 상기 선택 워드 라인에 독출 전압을 인가하고, 상기 비선택 워드 라인들에는 독출 패스 전압을 인가할 수 있다. 또한 데이터 리커버리 독출 동작 시에, 전압 생성기(550)는 어드레스 디코더(520)를 통해 상기 선택 워드 라인에 인접한 워드 라인에 독출 전압을 인가하고, 상기 선택 워드 라인에는 리커버리 독출 전압을 인가할 수 있다.
페이지 버퍼 회로(530)는 복수의 비트 라인들(BL)을 통해 메모리 셀 어레이(510)와 연결될 수 있다. 페이지 버퍼 회로(530)는 복수의 페이지 버퍼들을 포함할 수 있다. 일 실시예에서, 하나의 페이지 버퍼에 하나의 비트 라인이 연결될 수 있다. 다른 실시예에서, 하나의 페이지 버퍼에 두 개 이상의 비트 라인들이 연결될 수 있다.
페이지 버퍼 회로(530)는 메모리 셀 어레이(510)에 프로그램 될 기입 데이터(DAT)를 저장하거나 혹은 메모리 셀 어레이(510)로부터 감지된 독출 데이터(DAT)를 저장할 수 있다. 즉, 페이지 버퍼 회로(530)는 비휘발성 메모리(500)의 동작 모드에 따라 기입 드라이버로서 또는 감지 증폭기로서 동작할 수 있다.
데이터 입출력 회로(540)는 데이터 라인들(DL)을 통해 페이지 버퍼 회로(530)와 연결될 수 있다. 데이터 입출력 회로(540)는 컬럼 어드레스(C_ADDR)에 응답하여, 기입 데이터(DAT)를 페이지 버퍼 회로(530)를 거쳐서 메모리 셀 어레이(510)에 제공하거나 혹은 메모리 셀 어레이(510)로부터 페이지 버퍼 회로(530)를 거쳐서 출력되는 독출 데이터(DAT)를 외부에 제공할 수 있다.
도 5는 도 1의 제1 리셋 제어 신호를 생성하는 단계의 일 예를 나타내는 순서도이다.
도 1 및 5를 참조하면, 상기 제1 리셋 제어 신호를 생성하는데 있어서(단계 S200), 상기 내부 전원 전압의 레벨을 검출하고(단계 S210), 상기 내부 전원 전압의 레벨이 기준 레벨보다 높은 경우에 활성화되도록 상기 제1 리셋 제어 신호를 생성할 수 있다(단계 S220). 단계 S210 및 S220을 수행하기 위한 구체적인 구성에 대해서는 도 9 및 11을 참조하여 후술하도록 한다.
일 실시예에서, 도 13 등을 참조하여 후술하는 것처럼, 상기 내부 전원 전압은 상기 외부 전원 전압이 오프되기 전에는 상기 외부 전원 전압의 레벨과 동일한 제1 레벨을 가지며, 상기 외부 전원 전압이 오프된 이후에는 상기 제1 레벨보다 낮은 제2 레벨을 가질 수 있다. 이 때, 상기 기준 레벨은 상기 제2 레벨보다 낮을 수 있다. 한편, 상기 제1 리셋 제어 신호는 상기 내부 전원 전압의 레벨이 상기 기준 레벨보다 낮거나 같은 경우에는 비활성화될 수 있다.
도 6은 도 1의 제2 리셋 제어 신호를 생성하는 단계의 일 예를 나타내는 순서도이다.
도 1 및 6을 참조하면, 상기 제2 리셋 제어 신호를 생성하는데 있어서(단계 S300), 상기 제2 리셋 제어 신호는 상기 스토리지 컨트롤러로부터 제공되는 오프 레디 신호일 수 있다. 상기 오프 레디 신호는 상기 리셋 동작이 완료되었음을 나타내는 신호, 즉 상기 스토리지 컨트롤러(또는 스토리지 장치)에 전원이 공급되지 않아도 되고 상기 스토리지 컨트롤러(또는 스토리지 장치)의 동작이 정상적으로 종료 가능한 상태임을 나타내는 신호일 수 있다.
구체적으로, 상기 리셋 동작이 완료된 이후에 비활성화되도록 상기 오프 레디 신호를 생성하고(단계 S310), 상기 오프 레디 신호를 상기 제2 리셋 제어 신호로 이용할 수 있다(단계 S320). 단계 S310 및 S320은 상기 스토리지 컨트롤러에 의해 수행될 수 있다.
일 실시예에서, 도 13을 참조하여 후술하는 것처럼, 상기 오프 레디 신호는 상기 외부 전원 전압이 오프되더라도 활성화 상태를 계속 유지하며, 상기 외부 전원 전압이 오프되고 미리 정해진 시간이 경과한 이후에 비활성화될 수 있다.
도 7은 도 1의 최종 리셋 제어 신호를 생성하는 단계의 일 예를 나타내는 순서도이다.
도 1 및 7을 참조하면, 상기 최종 리셋 제어 신호를 생성하는데 있어서(단계 S400), 상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호 중 적어도 하나가 활성화되는 경우에 활성화되도록 상기 최종 리셋 제어 신호를 생성할 수 있다(단계 S410). 단계 S410을 수행하기 위한 구체적인 구성에 대해서는 도 9 및 12를 참조하여 후술하도록 한다.
도 8은 도 1의 리셋 동작을 수행하는 단계의 일 예를 나타내는 순서도이다.
도 1 및 8을 참조하면, 상기 리셋 동작을 수행하는데 있어서(단계 S500), 상기 버퍼 메모리에 저장된 데이터들을 상기 비휘발성 메모리에 저장(또는 이동)할 수 있다(단계 S510). 단계 S510에서 수행되는 동작을 PLP 덤프 동작으로 부를 수 있다. 다만 본 발명은 이에 한정되지 않으며, 상기 리셋 동작은 상기 스토리지 컨트롤러(또는 스토리지 장치)의 동작을 정상적으로 종료 가능하도록 하는 적어도 하나의 동작을 더 포함할 수 있다.
일 실시예에서, 상기 최종 리셋 제어 신호는 상기 스토리지 컨트롤러에 제공될 수 있다, 상기 스토리지 컨트롤러는 상기 최종 리셋 제어 신호에 기초하여 상기 내부 전원 전압의 레벨이 상기 기준 레벨보다 낮아지기 전에 상기 리셋 동작을 수행할 수 있다.
도 5를 참조하여 상술한 것처럼, 상기 외부 전원 전압이 오프된 이후에 상기 내부 전원 전압은 순간적으로 상기 기준 레벨보다 낮아질 수 있으며, 이에 따라 상기 제1 리셋 제어 신호는 순간적으로 비활성화될 수 있다. 이에 비하여, 도 6을 참조하여 상술한 것처럼, 상기 외부 전원 전압이 오프되더라도 상기 제2 리셋 제어 신호(예를 들어, 상기 오프 레디 신호)는 상기 활성화 상태를 일정 시간 동안 유지할 수 있다. 따라서, 도 7을 참조하여 상술한 것처럼 상기 제1 및 제2 리셋 제어 신호들 중 적어도 하나가 활성화되는 경우에 활성화되도록 상기 최종 리셋 제어 신호를 생성하는 경우에, 그리고 도 8을 참조하여 상술한 것처럼 상기 최종 리셋 제어 신호에 기초하여 상기 리셋 동작을 수행하는 경우에, 상기 리셋 동작이 의도치 않게 중단되는 상기 비정상 리셋 오프를 효과적으로 방지할 수 있다.
도 9는 도 2의 스토리지 장치의 일 예를 나타내는 블록도이다.
도 9를 참조하면, 스토리지 장치(302)는 전원 손실 보호 집적 회로(310), 전원 관리 집적 회로(320), 리셋 검출부(322), 리셋 제어부(324) 및 스토리지 컨트롤러(340)를 포함한다. 도시의 편의상, 도 2의 비휘발성 메모리들(350a, 350b, 350c) 및 버퍼 메모리(360)는 생략하였다.
전원 손실 보호 집적 회로(310)는 외부 전원 전압(VEXT)에 기초하여 내부 전원 전압(VINT)을 생성할 수 있다. 다시 말하면, 전원 손실 보호 집적 회로(310)는 도 1의 단계 S100을 수행할 수 있다. 또한, 전원 손실 보호 집적 회로(310)는 외부 전원 전압(VEXT)에 기초하여 파워 오프 검출 신호(POD)를 생성할 수 있다. 예를 들어, 파워 오프 검출 신호(POD)는 외부 전원 전압(VEXT)이 오프되는 경우에 비활성화되어 외부 전원 전압(VEXT)이 오프되었음을 나타낼 수 있다. 전원 손실 보호 집적 회로(310)의 구체적인 구성에 대해서는 도 10을 참조하여 후술하도록 한다.
전원 관리 집적 회로(320)는 외부 전원 전압(VEXT) 및 내부 전원 전압(VINT) 중 하나에 기초하여 적어도 하나의 구동 전압(VD)을 생성 및 제어할 수 있다. 또한, 도시하지는 않았으나, 전원 관리 집적 회로(320)는 구동 전압(VD)을 제어 및 조절하기 위한 적어도 하나의 신호를 스토리지 컨트롤러(340)와 주고 받을 수 있다.
리셋 검출부(322)는 내부 전원 전압(VINT)의 레벨에 기초하여 활성화 또는 비활성화되도록 제1 리셋 제어 신호(DRST)를 생성할 수 있다. 다시 말하면, 리셋 검출부(322)는 도 1의 단계 S200을 수행할 수 있다. 제1 리셋 제어 신호(DRST)는 디폴트(default) 리셋 제어 신호로 부를 수 있다. 리셋 검출부(322)의 구체적인 구성에 대해서는 도 11을 참조하여 후술하도록 한다.
리셋 제어부(324)는 제1 리셋 제어 신호(DRST) 및 오프 레디 신호(FORDY)에 기초하여, 제1 리셋 제어 신호(DRST) 및 오프 레디 신호(FORDY)와 다른 타이밍으로 활성화 또는 비활성화되는 최종 리셋 제어 신호(FRST)를 생성할 수 있다. 다시 말하면, 리셋 제어부(324)는 도 1의 단계 S400을 수행할 수 있다. 도 9의 실시예는 오프 레디 신호(FORDY)가 제2 리셋 제어 신호로서 이용되는 경우를 나타낸다. 리셋 제어부(324)의 구체적인 구성에 대해서는 도 11을 참조하여 후술하도록 한다.
도 9의 실시예에서, 리셋 검출부(322) 및 리셋 제어부(324)는 도 2의 리셋 신호 생성부(330)를 형성할 수 있다. 실시예에 따라서, 리셋 검출부(322) 및 리셋 제어부(324)는 각각 별개의 칩으로 형성될 수도 있고 1개의 칩으로 통합되어 형성될 수도 있다.
스토리지 컨트롤러(340)는 스토리지 장치(302)의 동작을 제어하고, 구동 전압(VD)에 기초하여 동작하며, 제1 리셋 제어 신호(DRST)와 다른 타이밍으로 활성화 또는 비활성화되는 오프 레디 신호(FORDY)를 생성할 수 있다. 또한, 스토리지 컨트롤러(340)는 파워 오프 검출 신호(POD)를 수신하여 외부 전원 전압(VEXT)이 오프되는지 확인하며, 외부 전원 전압(VEXT)이 오프되는 경우에 최종 리셋 제어 신호(FRST)에 기초하여 리셋 동작을 수행할 수 있다. 다시 말하면, 스토리지 컨트롤러(340)는 도 1의 단계 S300 및 S500을 수행하며, 이 때 단계 S300은 도 6의 실시예에 따라 수행될 수 있다. 오프 레디 신호(FORDY)는 상기 리셋 동작이 완료되었음을 나타내는 신호이며, 펌웨어 오프 레디 신호로 부를 수 있다.
일 실시예에서, 도 8을 참조하여 상술한 것처럼, 상기 리셋 동작은 버퍼 메모리(360)에 저장된 데이터들을 비휘발성 메모리들(350a, 350b, 350c)에 저장(또는 이동)하는 동작을 포함할 수 있다. 외부 전원 전압(VEXT)이 오프되는 경우에, 스토리지 컨트롤러(340)는 내부 전원 전압(VINT)에 기초하여 생성되는 구동 전압(VD)에 기초하여 상기 리셋 동작을 수행할 수 있다.
한편, 외부 전원 전압(VEXT)이 오프되지 않은 경우에, 스토리지 컨트롤러(340)는 외부 전원 전압(VEXT)에 기초하여 생성되는 구동 전압(VD)에 기초하여 정상 동작을 수행할 수 있다. 예를 들어, 상기 정상 동작은 프로그램/독출/소거 동작, 가비지 컬렉션(garbage collection) 동작 등을 포함할 수 있다.
도 10은 도 9의 스토리지 장치에 포함되는 전원 손실 보호 집적 회로의 일 예를 나타내는 블록도이다.
도 10을 참조하면, 전원 손실 보호 집적 회로(310a)는 파워 오프 검출기(312) 및 전압 생성기(314)를 포함할 수 있다.
파워 오프 검출기(312)는 외부 전원 전압(VEXT)에 기초하여 파워 오프 검출 신호(POD)를 생성할 수 있다. 예를 들어, 파워 오프 검출기(312)는 외부 전원 전압(VEXT)의 레벨을 검출하는 전압 레벨 검출기를 포함할 수 있다.
전압 생성기(314)는 외부 전원 전압(VEXT)에 기초하여 내부 전원 전압(VINT)을 생성할 수 있다. 예를 들어, 내부 전원 전압(VINT)은 외부 전원 전압(VEXT)보다 낮거나 같은 레벨을 가질 수 있다. 예를 들어, 전압 생성기(314)는 내부 전원 전압(VINT)을 생성하기 위해 전하를 저장하는 적어도 하나의 커패시터를 포함할 수 있다.
도 11은 도 9의 스토리지 장치에 포함되는 리셋 검출부의 일 예를 나타내는 블록도이다.
도 11을 참조하면, 리셋 검출부(322a)는 전압 레벨 검출기(323)를 포함할 수 있다.
전압 레벨 검출기(323)는 내부 전원 전압(VINT)의 레벨을 검출하여 내부 전원 전압(VINT)의 레벨이 기준 레벨보다 높은 경우에 활성화되도록 제1 리셋 제어 신호(DRST)를 생성할 수 있다. 예를 들어, 전압 레벨 검출기(323)는 내부 전원 전압(VINT)의 레벨이 상기 기준 레벨보다 낮거나 같은지를 검출하는 저전압(low voltage) 레벨 검출기일 수 있으며, 다만 본 발명은 이에 한정되지 않을 수 있다.
도 12는 도 9의 스토리지 장치에 포함되는 리셋 제어부의 일 예를 나타내는 블록도이다.
도 12를 참조하면, 리셋 제어부(324a)는 OR 게이트(325)를 포함할 수 있다.
OR 게이트(325)는 제1 리셋 제어 신호(DRST) 및 상기 제2 리셋 제어 신호인 오프 레디 신호(FORDY)에 대한 OR 연산을 수행하여 최종 리셋 제어 신호(FRST)를 생성할 수 있다. 다만 본 발명은 이에 한정되지 않으며, 리셋 제어부(324a)는 임의의 논리 게이트를 포함하여 구현될 수 있다.
도 13 및 14는 도 9의 스토리지 장치의 동작을 설명하기 위한 도면들이다.
도 13을 참조하면, 외부 전원 전압(VEXT), 내부 전원 전압(VINT), 제1 리셋 제어 신호(DRST), 오프 레디 신호(FORDY) 및 최종 리셋 제어 신호(FRST)의 파형을 나타낸다.
도 13 및 이후의 도면에서, 각 신호가 논리 로우 레벨(즉, "0")에서 논리 하이 레벨(즉, "1")로 천이되는 상승 에지를 각 신호의 활성화 시점으로 정의하고, 각 신호가 논리 하이 레벨에서 논리 로우 레벨로 천이되는 하강 에지를 각 신호의 비활성화 시점으로 정의한다. 이에 따라 각 신호가 논리 로우 레벨을 가지는 경우는 비활성화 상태를 나타내며, 각 신호가 논리 하이 레벨을 가지는 경우는 활성화 상태를 나타낸다. 다만 본 발명은 이에 한정되지 않으며, 각 신호의 활성화/비활성화는 다양하게 구현될 수 있다.
시간 t11에서, 외부 전원 전압(VEXT)이 온(on)되며, 외부 전원 전압(VEXT)은 접지 레벨에서 제1 레벨(VL1)까지 상승할 수 있다. 예를 들어, 상기 접지 레벨은 약 0V이고, 제1 레벨(VL1)은 약 3.3V일 수 있다. 외부 전원 전압(VEXT)이 온 됨에 따라, 내부 전원 전압(VINT) 또한 상기 접지 레벨에서 제1 레벨(VL1)까지 상승할 수 있다.
이 때, 내부 전원 전압(VINT)을 생성하는 전압 생성기(도 10의 314) 내의 소자들의 동작/지연 등에 의해 외부 전원 전압(VEXT)의 레벨 상승 시점과 내부 전원 전압(VINT)의 레벨 상승 시점 사이에는 일정한 시간 차이가 존재하며, 외부 전원 전압(VEXT)의 레벨 상승률과 내부 전원 전압(VINT)의 레벨 상승률 또한 서로 다를 수 있다. 한편, 외부 전원 전압(VEXT)이 온 되어 있는 동안에는(즉, 외부 전원 전압(VEXT)이 오프되기 전에는), 외부 전원 전압(VEXT)과 내부 전원 전압(VINT)은 동일한 제1 레벨(VL1)을 유지할 수 있다.
또한, 시간 t11부터 시간 t12까지의 동작 초기 구간에서, 제1 리셋 제어 신호(DRST) 및 오프 레디 신호(FORDY)가 모두 비활성화 상태를 가지며, 이에 따라 최종 리셋 제어 신호(FRST) 또한 비활성화 상태를 가질 수 있다.
시간 t12에서, 내부 전원 전압(VINT)의 레벨이 기준 레벨(VLR)보다 높아질 수 있다. 예를 들어, 기준 레벨(VLR)은 약 2.6V일 수 있다. 이 경우, 제1 리셋 제어 신호(DRST)가 활성화되며, 이에 따라 최종 리셋 제어 신호(FRST) 또한 활성화될 수 있다.
시간 t13에서, 스토리지 컨트롤러(340)에 대한 부팅이 완료되어 펌웨어가 오픈(open)되며, 이에 따라 오프 레디 신호(FORDY)가 활성화될 수 있다. 최종 리셋 제어 신호(FRST)는 활성화 상태를 유지할 수 있다.
시간 t13부터 시간 t14까지의 구간에서, 스토리지 컨트롤러(340)는 외부 전원 전압(VEXT)에 기초하여 생성되는 구동 전압(VD)에 기초하여 상기 정상 동작을 수행할 수 있다.
시간 t14에서, 외부 전원 전압(VEXT)이 오프되며, 외부 전원 전압(VEXT)은 제1 레벨(VL1)에서 상기 접지 레벨까지 하강할 수 있다. 도시하지는 않았으나, 도 18에 도시된 것처럼 외부 전원 전압(VEXT)이 오프되는 경우에 파워 오프 검출 신호(POD)는 비활성화될 수 있다.
외부 전원 전압(VEXT)이 오프 됨에 따라, 내부 전원 전압(VINT)에 대한 동작 모드는 외부 전원 전압(VEXT)의 레벨과 동일한 제1 레벨(VL1)을 가지는 제1 모드에서 제1 레벨(VL1)보다 낮은 제2 레벨(VL2)을 가지는 제2 모드로 전환될 수 있다. 예를 들어, 제2 레벨(VL2)은 약 3.0V일 수 있다. 예를 들어, 상기 제1 모드에서는 외부 전원 전압(VEXT)이 그대로 내부 전원 전압(VINT)으로 출력되고 상기 제2 모드에서는 전압 생성기(도 10의 314)에 포함되는 커패시터를 이용하여 내부 전원 전압(VINT)을 생성할 수 있다. 상술한 내부 전원 전압(VINT)에 대한 동작 모드의 전환을 PLP 모드 전환으로 부를 수 있다.
상술한 동작 모드의 전환 시에 일정한 시간(또는 지연)이 요구되며, 이 경우 내부 전원 전압(VINT)에 대한 순간적인 전압 강하(voltage drop 또는 dip)가 발생할 수 있다. 구체적으로, 시간 t14에서, 동작 모드의 전환이 아직 완료되지 않음에 따라 내부 전원 전압(VINT)은 외부 전원 전압(VEXT)과 동일하게 레벨이 하강할 수 있다. 시간 t15에서, 내부 전원 전압(VINT)의 레벨이 기준 레벨(VLR)보다 낮아질 수 있다. 이후에 동작 모드의 전환이 완료됨에 따라 내부 전원 전압(VINT)의 레벨이 상승할 수 있다. 시간 t16에서, 내부 전원 전압(VINT)의 레벨이 기준 레벨(VLR)보다 높아질 수 있다. 이후에 내부 전원 전압(VINT)은 제2 레벨(VL2)까지 상승하여 제2 레벨(VL2)을 유지할 수 있다.
상술한 것처럼 내부 전원 전압(VINT)에 대한 순간적인 전압 강하가 발생하는 경우에, 시간 t15에서 제1 리셋 제어 신호(DRST)가 비활성화되었다가 시간 t16에서 제1 리셋 제어 신호(DRST)가 다시 활성화될 수 있다(점선 동그라미로 표시된 부분). 다만, 이 경우에도 오프 레디 신호(FORDY)는 활성화 상태를 유지하며, 따라서 최종 리셋 제어 신호(FRST)는 활성화 상태를 유지할 수 있다.
또한, 시간 t14에서 외부 전원 전압(VEXT)이 오프 됨에 따라, 스토리지 컨트롤러(340)는 파워 오프 검출 신호(POD)에 기초하여 외부 전원 전압(VEXT)의 오프를 확인하며, 최종 리셋 제어 신호(FRST) 및 내부 전원 전압(VINT)에 기초하여 생성되는 구동 전압(VD)에 기초하여 상기 리셋 동작을 수행할 수 있다.
시간 t17에서, 상기 리셋 동작이 완료되며, 이에 따라 오프 레디 신호(FORDY)는 비활성화될 수 있다. 오프 레디 신호(FORDY)가 비활성화되는 것은 펌웨어를 종료해도 되는 상태임을 나타낼 수 있다. 다만, 이 경우에도 제1 리셋 제어 신호(DRST)는 활성화 상태를 유지하며, 따라서 최종 리셋 제어 신호(FRST)는 활성화 상태를 유지할 수 있다.
상기 리셋 동작이 완료된 이후에, 내부 전원 전압(VINT)은 서서히 감소하기 시작할 수 있다. 시간 t18에서, 내부 전원 전압(VINT)의 레벨이 기준 레벨(VLR)보다 낮아지고, 이에 따라 제1 리셋 제어 신호(DRST)가 비활성화될 수 있다. 오프 레디 신호(FORDY) 또한 비활성화 상태를 가지므로, 이에 따라 최종 리셋 제어 신호(FRST) 또한 비활성화될 수 있다.
도 14를 참조하면, 리셋 제어부(324)에 입력되는 제1 리셋 제어 신호(DRST) 및 오프 레디 신호(FORDY)의 논리 레벨에 따라 리셋 제어부(324)로부터 출력되는 최종 리셋 제어 신호(FRST)의 논리 레벨을 나타낸다.
제1 리셋 제어 신호(DRST) 및 오프 레디 신호(FORDY)가 모두 논리 로우 레벨(즉, "0")을 가지는 CASE11의 경우에만 최종 리셋 제어 신호(FRST)가 논리 로우 레벨을 가지며, 제1 리셋 제어 신호(DRST) 및 오프 레디 신호(FORDY) 중 적어도 하나가 논리 하이 레벨(즉, "1")을 가지는 CASE12, CASE13 및 CASE14의 경우에는 최종 리셋 제어 신호(FRST)가 논리 하이 레벨을 가질 수 있다.
일 실시예에서, CASE11은 파워 온 이전 구간 및 펌웨어 오픈 이전에 파워 온 초기 리셋 구간(즉, 도 13의 시간 t12 이전)을 포함하며, PLP 덤프 동작이 완료되고 제1 리셋 제어 신호(DRST)가 비활성화된 구간(즉, 도 13의 시간 t18 이후)을 포함할 수 있다. CASE12는 PLP 모드 전환 구간 또는 제1 리셋 제어 신호(DRST)만이 비활성화된 구간(즉, 도 13의 시간 t15와 t16 사이)을 포함할 수 있다. CASE13은 펌웨어 오픈 이전 구간(즉, 도 13의 시간 t12와 t13 사이)을 포함하며, PLP 덤프 동작이 완료되고 제1 리셋 제어 신호(DRST)가 활성화 상태인 구간(즉, 도 13의 시간 t17과 t18 사이)을 포함할 수 있다. CASE14는 펌웨어 오픈 이후 정상 동작 구간(즉, 도 13의 시간 t13과 t15 사이)을 포함하며, PLP 덤프 구간(즉, 도 13의 시간 t16과 t17 사이)을 포함할 수 있다.
본 발명의 실시예들에 따르면, 제1 리셋 제어 신호(DRST) 및 오프 레디 신호(FORDY)에 기초하여 생성되는 최종 리셋 제어 신호(FRST)에 기초하여 PLP 덤프 동작을 수행하며, 따라서 CASE12의 경우(즉, 도 13의 시간 t15와 t16 사이)에서 비정상 리셋 오프에 대한 리스크 필터링(risk filtering)을 수행하고 비정상 리셋 오프를 방지할 수 있다.
도 15는 도 1의 제2 리셋 제어 신호를 생성하는 단계의 다른 예를 나타내는 순서도이다.
도 1 및 15를 참조하면, 상기 제2 리셋 제어 신호를 생성하는데 있어서(단계 S300), 상기 제2 리셋 제어 신호는 상기 전원 손실 보호 집적 회로로부터 제공되는 파워 오프 검출 신호에 기초하여 생성될 수 있다. 상기 파워 오프 검출 신호는 상기 외부 전원 전압이 오프되었음을 나타내는 신호일 수 있다.
구체적으로, 상기 파워 오프 검출 신호를 생성하고(단계 S330), 상기 파워 오프 검출 신호를 지연시켜 상기 제2 리셋 제어 신호를 생성할 수 있다(단계 S340). 예를 들어, 상기 파워 오프 검출 신호의 상승 에지 및 하강 에지 중 하나를 지연시켜 상기 제2 리셋 제어 신호를 생성할 수 있다. 단계 S330 및 S340을 수행하기 위한 구체적인 구성에 대해서는 도 16 및 17을 참조하여 후술하도록 한다.
일 실시예에서, 도 18을 참조하여 후술하는 것처럼, 상기 파워 오프 검출 신호는 상기 외부 전원 전압이 오프되는 경우에 비활성화될 수 있다.
도 16은 도 2의 스토리지 장치의 다른 예를 나타내는 블록도이다. 이하 도 9와 중복되는 설명은 생략한다.
도 16을 참조하면, 스토리지 장치(304)는 전원 손실 보호 집적 회로(310), 전원 관리 집적 회로(320), 리셋 검출부(322), 리셋 제어부(324), 지연부(326) 및 스토리지 컨트롤러(340)를 포함한다.
스토리지 컨트롤러(340)가 오프 레디 신호(FORDY)를 생성하지 않고 제2 리셋 제어 신호(PODDLY)를 생성하는 지연부(326)를 더 포함하는 것을 제외하면, 스토리지 장치(304)는 도 9의 스토리지 장치(302)와 실질적으로 동일할 수 있다.
지연부(326)는 파워 오프 검출 신호(POD)를 지연시켜 제2 리셋 제어 신호(PODDLY)를 생성할 수 있다. 다시 말하면, 지연부(326)는 도 1의 단계 S300을 수행하며, 이 때 단계 S300은 도 15의 실시예에 따라 수행될 수 있다. 예를 들어, 제2 리셋 제어 신호(PODDLY)는 지연된 파워 오프 검출 신호로 부를 수 있다. 도 16의 실시예는 파워 오프 검출 신호(POD)에 기초하여 제2 리셋 제어 신호(PODDLY)를 생성하는 경우를 나타낸다. 지연부(326)의 구체적인 구성에 대해서는 도 17을 참조하여 후술하도록 한다.
리셋 제어부(324)는 제1 리셋 제어 신호(DRST) 및 제2 리셋 제어 신호(PODDLY)에 기초하여 최종 리셋 제어 신호(FRST)를 생성할 수 있다. 오프 레디 신호(FORDY)가 제2 리셋 제어 신호(PODDLY)로 변경되는 것을 제외하면, 리셋 제어부(324)는 도 11을 참조하여 상술한 것처럼 구현될 수 있다.
도 16의 실시예에서, 리셋 검출부(322), 리셋 제어부(324) 및 지연부(326)는 도 2의 리셋 신호 생성부(330)를 형성할 수 있다. 실시예에 따라서, 리셋 검출부(322), 리셋 제어부(324) 및 지연부(326)는 각각 별개의 칩으로 형성될 수도 있고 이 중 적어도 2개는 1개의 칩으로 통합되어 형성될 수도 있다.
도 17은 도 16의 스토리지 장치에 포함되는 지연부의 일 예를 나타내는 블록도이다.
도 17을 참조하면, 지연부(326a)는 에지 지연 회로(327)를 포함할 수 있다.
에지 지연 회로(327)는 파워 오프 검출 신호(POD)의 상승 에지 및 하강 에지 중 하나를 지연시켜 제2 리셋 제어 신호(PODDLY)를 생성할 수 있다. 예를 들어, 에지 지연 회로(327)는 파워 오프 검출 신호(POD)의 하강 에지만을 지연시키는 하강 에지 지연 회로일 수 있으며, 다만 본 발명은 이에 한정되지 않을 수 있다.
도 18 및 19는 도 16의 스토리지 장치의 동작을 설명하기 위한 도면들이다. 이하 도 13 및 14와 중복되는 설명은 생략한다.
도 18을 참조하면, 외부 전원 전압(VEXT), 내부 전원 전압(VINT), 제1 리셋 제어 신호(DRST), 파워 오프 검출 신호(POD), 제2 리셋 제어 신호(PODDLY) 및 최종 리셋 제어 신호(FRST)의 파형을 나타낸다.
시간 t21 및 t22에서의 동작은 도 13의 시간 t11 및 t12에서의 동작과 실질적으로 동일할 수 있다.
시간 t23에서, 파워 온 동작이 완료되면 파워 오프 검출 신호(POD)가 활성화되며, 이에 따라 제2 리셋 제어 신호(PODDLY) 또한 활성화될 수 있다. 최종 리셋 제어 신호(FRST)는 활성화 상태를 유지할 수 있다.
시간 t24, t25 및 t26에서의 동작은 도 13의 시간 t14, t15 및 t16에서의 동작과 실질적으로 동일할 수 있다.
이 때, 시간 t24에서 외부 전원 전압(VEXT)이 오프 됨에 따라, 파워 오프 검출 신호(POD)는 비활성화될 수 있다. 다만 시간 t24에서 제2 리셋 제어 신호(PODDLY)는 비활성화되지 않으며, 에지 지연 회로(도 17의 327)에 의해 제2 리셋 제어 신호(PODDLY)의 하강 에지가 일정 시간만큼 지연되고, 시간 t27에서 제2 리셋 제어 신호(PODDLY)가 비활성화될 수 있다.
일 실시예에서, 외부 전원 전압(VEXT)이 오프되는 시간 t24에서 제2 리셋 제어 신호(PODDLY)가 비활성화되는 시간 t27까지의 시간은, PLP 덤프 동작을 수행하는데 필요한 최대 PLP 수행 시간과 실질적으로 동일할 수 있다.
시간 t28에서의 동작은 도 13의 시간 t18에서의 동작과 실질적으로 동일할 수 있다.
도 19를 참조하면, 리셋 제어부(324)에 입력되는 제1 리셋 제어 신호(DRST) 및 제2 리셋 제어 신호(PODDLY)의 논리 레벨에 따라 리셋 제어부(324)로부터 출력되는 최종 리셋 제어 신호(FRST)의 논리 레벨을 나타낸다.
CASE21, CASE22, CASE23 및 CASE24는 각각 도 14의 CASE11, CASE12, CASE13 및 CASE14와 실질적으로 동일할 수 있다.
일 실시예에서, 도 14의 CASE11과 유사하게, CASE21은 파워 온 이전 구간 및 파워 온 초기 리셋 구간(즉, 도 18의 시간 t22 이전)을 포함하며, PLP 덤프 동작이 완료되고 제1 리셋 제어 신호(DRST)가 비활성화된 구간(즉, 도 18의 시간 t28 이후)을 포함할 수 있다. 도 14의 CASE12와 유사하게, CASE22는 PLP 모드 전환 구간 또는 제1 리셋 제어 신호(DRST)만이 비활성화된 구간(즉, 도 18의 시간 t25와 t26 사이)을 포함할 수 있다. 도 14의 CASE13과 유사하게, CASE23은 파워 온 동작 완료 이전 구간(즉, 도 18의 시간 t22와 t23 사이)을 포함하며, PLP 덤프 동작이 완료되고 제1 리셋 제어 신호(DRST)가 활성화 상태인 구간(즉, 도 18의 시간 t27과 t28 사이)을 포함할 수 있다. 도 14의 CASE14와 유사하게, CASE24는 정상 동작 구간(즉, 도 18의 시간 t23과 t25 사이)을 포함하며, PLP 덤프 구간(즉, 도 18의 시간 t26과 t27 사이)을 포함할 수 있다.
도 20은 본 발명의 실시예들에 따른 스토리지 장치의 리셋 방법을 나타내는 순서도이다. 이하 도 1과 중복되는 설명은 생략한다.
도 20을 참조하면, 본 발명의 실시예들에 따른 스토리지 장치의 리셋 방법에서, 외부 전원 전압에 기초하여 상기 외부 전원 전압보다 낮거나 같은 레벨을 가지는 내부 전원 전압을 생성한다(단계 S1100). 단계 S1100은 도 1의 단계 S100과 실질적으로 동일할 수 있다.
상기 외부 전원 전압 및 상기 내부 전원 전압 중 하나에 기초하여 적어도 하나의 구동 전압을 생성하고(단계 S1200), 상기 구동 전압에 기초하여 정상 동작을 수행한다(단계 S1300). 단계 S1200 및 S1300은 각각 전원 관리 집적 회로 및 스토리지 컨트롤러에 의해 수행될 수 있다.
상기 내부 전원 전압의 레벨을 검출하여, 상기 내부 전원 전압의 레벨이 기준 레벨보다 높은 경우에 활성화되도록 제1 리셋 제어 신호를 생성하고(단계 S1400), 상기 제1 리셋 제어 신호와 다른 타이밍으로 활성화 또는 비활성화되는 제2 리셋 제어 신호를 생성하며(단계 S1500), 상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호에 기초하여, 상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호 중 적어도 하나가 활성화되는 경우에 활성화되는 최종 리셋 제어 신호를 생성한다(단계 S1600). 단계 S1400, S1500 및 S1600은 각각 도 1의 단계 S200, S300 및 S400과 실질적으로 동일할 수 있다.
상기 외부 전원 전압의 레벨을 검출하여, 상기 외부 전원 전압이 오프(off)되는 경우에 상기 외부 전원 전압이 오프되었음을 나타내는 파워 오프 검출 신호를 생성한다(단계 S1700). 단계 S1700은 전원 손실 보호 집적 회로에 의해 수행될 수 있다.
상기 외부 전원 전압이 오프되는 경우에, 상기 최종 리셋 제어 신호 및 상기 구동 전압에 기초하여 리셋 동작을 수행한다(단계 S1800). 단계 S1800은 도 1의 단계 S500과 실질적으로 동일할 수 있다.
상술한 것처럼, 상기 제2 리셋 제어 신호는 상기 스토리지 컨트롤러로부터 제공되는 오프 레디(off ready) 신호 또는 상기 파워 오프 검출 신호에 기초하여 생성되는 신호일 수 있다. 상기 외부 전원 전압이 오프된 이후에도 상기 최종 리셋 제어 신호는 미리 정해진 시간 동안 활성화 레벨을 계속 유지하고, 상기 활성화 레벨을 유지하는 상기 최종 리셋 제어 신호 및 상기 내부 전원 전압에 기초하여 생성되는 상기 구동 전압에 기초하여 상기 리셋 동작이 수행될 수 있다.
한편, 본 발명의 실시예들은 컴퓨터로 판독 가능한 매체에 저장된 컴퓨터로 판독 가능한 프로그램 코드를 포함하는 제품 등의 형태로 구현될 수도 있다. 상기 컴퓨터로 판독 가능한 프로그램 코드는 다양한 컴퓨터 또는 다른 데이터 처리 장치의 프로세서로 제공될 수 있다. 상기 컴퓨터로 판독 가능한 매체는 컴퓨터로 판독 가능한 신호 매체 또는 컴퓨터로 판독 가능한 기록 매체일 수 있다. 상기 컴퓨터로 판독 가능한 기록 매체는 명령어 실행 시스템, 장비 또는 장치 내에 또는 이들과 접속되어 프로그램을 저장하거나 포함할 수 있는 임의의 유형적인 매체일 수 있다. 예를 들어, 상기 컴퓨터로 판독 가능한 매체는 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, 비일시적은 저장 매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장 매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
도 21은 본 발명의 실시예들에 따른 스토리지 시스템이 적용된 데이터 센터를 나타내는 블록도이다.
도 21을 참조하면, 데이터 센터(3000)는 각종 데이터를 모아두고 서비스를 제공하는 시설로서, 데이터 스토리지 센터라고 지칭될 수도 있다. 데이터 센터(3000)는 검색 엔진 및 데이터 베이스 운용을 위한 시스템일 수 있으며, 은행 등의 기업 또는 정부기관에서 사용되는 컴퓨팅 시스템일 수 있다. 데이터 센터(3000)는 어플리케이션 서버들(3100~3100n) 및 스토리지 서버들(3200~3200m)을 포함할 수 있다. 어플리케이션 서버들(3100~3100n)의 개수 및 스토리지 서버들(3200~3200m)의 개수는 실시예에 따라 다양하게 선택될 수 있고, 어플리케이션 서버들(3100~3100n)의 개수 및 스토리지 서버들(3200~3200m)의 개수는 서로 다를 수 있다.
어플리케이션 서버(3100) 또는 스토리지 서버(3200)는 프로세서(3110, 3210) 및 메모리(3120, 3220) 중 적어도 하나를 포함할 수 있다. 스토리지 서버(3200)를 예시로 설명하면, 프로세서(3210)는 스토리지 서버(3200)의 전반적인 동작을 제어할 수 있고, 메모리(3220)에 액세스하여 메모리(3220)에 로딩된 명령어 및/또는 데이터를 실행할 수 있다. 메모리(3220)는 DDR SDRAM(Double Data Rate Synchronous DRAM), HBM(High Bandwidth Memory), HMC(Hybrid Memory Cube), DIMM(Dual In-line Memory Module), Optane DIMM 또는 NVMDIMM(Non-Volatile DIMM)일 수 있다. 실시예에 따라, 스토리지 서버(3200)에 포함되는 프로세서(3210)의 개수 및 메모리(3220)의 개수는 다양하게 선택될 수 있다. 일 실시예에서, 프로세서(3210)와 메모리(3220)는 프로세서-메모리 페어를 제공할 수 있다. 일 실시예에서, 프로세서(3210)와 메모리(3220)의 개수는 서로 다를 수도 있다. 프로세서(3210)는 단일 코어 프로세서 또는 다중 코어 프로세서를 포함할 수 있다. 스토리지 서버(3200)에 대한 상기 설명은, 어플리케이션 서버(3100)에도 유사하게 적용될 수 있다. 실시예에 따라, 어플리케이션 서버(3100)는 스토리지 장치(3150)를 포함하지 않을 수도 있다. 스토리지 서버(3200)는 적어도 하나 이상의 스토리지 장치(3250)를 포함할 수 있다. 스토리지 서버(3200)에 포함되는 스토리지 장치(3250)의 개수는 실시예에 따라 다양하게 선택될 수 있다.
어플리케이션 서버들(3100~3100n) 및 스토리지 서버들(3200~3200m)은 네트워크(3300)를 통해 서로 통신할 수 있다. 네트워크(3300)는 FC(Fiber Channel) 또는 이더넷(Ethernet) 등을 이용하여 구현될 수 있다. 이 때, FC는 상대적으로 고속의 데이터 전송에 사용되는 매체이며, 고성능/고가용성을 제공하는 광 스위치를 사용할 수 있다. 네트워크(3300)의 액세스 방식에 따라 스토리지 서버들(3200~3200m)은 파일 스토리지, 블록 스토리지, 또는 오브젝트 스토리지로서 제공될 수 있다.
일 실시예에서, 네트워크(3300)는 SAN(Storage Area Network)과 같은 스토리지 전용 네트워크일 수 있다. 예를 들어, SAN은 FC 네트워크를 이용하고 FCP(FC Protocol)에 따라 구현된 FC-SAN일 수 있다. 다른 예에서, SAN은 TCP/IP 네트워크를 이용하고 iSCSI(SCSI over TCP/IP 또는 Internet SCSI) 프로토콜에 따라 구현된 IP-SAN일 수 있다. 다른 실시예에서, 네트워크(3300)는 TCP/IP 네트워크와 같은 일반 네트워크일 수 있다. 예를 들어, 네트워크(3300)는 FCoE(FC over Ethernet), NAS(Network Attached Storage), NVMe-oF(NVMe over Fabrics) 등의 프로토콜에 따라 구현될 수 있다.
이하에서는, 어플리케이션 서버(3100) 및 스토리지 서버(3200)를 중심으로 설명하기로 한다. 어플리케이션 서버(3100)에 대한 설명은 다른 어플리케이션 서버(3100n)에도 적용될 수 있고, 스토리지 서버(3200)에 대한 설명은 다른 스토리지 서버(3200m)에도 적용될 수 있다.
어플리케이션 서버(3100)는 사용자 또는 클라이언트가 저장 요청한 데이터를 네트워크(3300)를 통해 스토리지 서버들(3200~3200m) 중 하나에 저장할 수 있다. 또한, 어플리케이션 서버(3100)는 사용자 또는 클라이언트가 독출 요청한 데이터를 스토리지 서버들(3200~3200m) 중 하나로부터 네트워크(3300)를 통해 획득할 수 있다. 예를 들어, 어플리케이션 서버(3100)는 웹 서버 또는 DBMS(Database Management System) 등으로 구현될 수 있다.
어플리케이션 서버(3100)는 네트워크(3300)를 통해 다른 어플리케이션 서버(3100n)에 포함된 메모리(3120n) 또는 스토리지 장치(3150n)에 액세스할 수 있고, 또는 네트워크(3300)를 통해 스토리지 서버(3200~3200m)에 포함된 메모리(3220~3220m) 또는 스토리지 장치(3250~3250m)에 액세스할 수 있다. 이로써, 어플리케이션 서버(3100)는 어플리케이션 서버들(3100~3100n) 및/또는 스토리지 서버들(3200~3200m)에 저장된 데이터에 대해 다양한 동작들을 수행할 수 있다. 예를 들어, 어플리케이션 서버(3100)는 어플리케이션 서버들(3100~3100n) 및/또는 스토리지 서버들(3200~3200m) 사이에서 데이터를 이동 또는 카피(copy)하기 위한 명령어를 실행할 수 있다. 이 때 데이터는 스토리지 서버들(3200~3200m)의 스토리지 장치로(3250~3250m)부터 스토리지 서버들(3200~3200m)의 메모리들(3220~3220m)을 거쳐서, 또는 바로 어플리케이션 서버들(3100~3100n)의 메모리(3120~3120n)로 이동될 수 있다. 네트워크(3300)를 통해 이동하는 데이터는 보안 또는 프라이버시를 위해 암호화된 데이터일 수 있다.
스토리지 서버(3200)를 예시로 설명하면, 인터페이스(3254)는 프로세서(3210)와 컨트롤러(3251)의 물리적 연결 및 NIC(3240)와 컨트롤러(3251)의 물리적 연결을 제공할 수 있다. 예를 들어, 인터페이스(3254)는 스토리지 장치(3250)를 전용 케이블로 직접 접속하는 DAS(Direct Attached Storage) 방식으로 구현될 수 있다. 또한, 예를 들어, 인터페이스(3254)는 ATA(Advanced Technology Attachment), SATA(Serial ATA), e-SATA(external SATA), SCSI(Small Computer Small Interface), SAS(Serial Attached SCSI), PCI(Peripheral Component Interconnection), PCIe(PCI express), NVMe(NVM express), IEEE 1394, USB(universal serial bus), SD(secure digital) 카드, MMC(multi-media card), eMMC(embedded multi-media card), UFS(Universal Flash Storage), eUFS(embedded Universal Flash Storage), CF(compact flash) 카드 인터페이스 등과 같은 다양한 인터페이스 방식으로 구현될 수 있다.
스토리지 서버(3200)는 스위치(3230) 및 NIC(3240)을 더 포함할 수 있다. 스위치(3230)는 프로세서(3210)의 제어에 따라 프로세서(3210)와 스토리지 장치(3250)를 선택적으로 연결시키거나, NIC(3240)과 스토리지 장치(3250)를 선택적으로 연결시킬 수 있다. 이와 유사하게, 어플리케이션 서버(3100)는 스위치(3130) 및 NIC(3140)을 더 포함할 수 있다.
일 실시예에서 NIC(3240)는 네트워크 인터페이스 카드, 네트워크 어댑터 등을 포함할 수 있다. NIC(3240)는 유선 인터페이스, 무선 인터페이스, 블루투스 인터페이스, 광학 인터페이스 등에 의해 네트워크(3300)에 연결될 수 있다. NIC(3240)는 내부 메모리, DSP, 호스트 버스 인터페이스 등을 포함할 수 있으며, 호스트 버스 인터페이스를 통해 프로세서(3210) 및/또는 스위치(3230) 등과 연결될 수 있다. 호스트 버스 인터페이스는, 앞서 설명한 인터페이스(3254)의 예시들 중 하나로 구현될 수도 있다. 일 실시예에서, NIC(3240)는 프로세서(3210), 스위치(3230), 스토리지 장치(3250) 중 적어도 하나와 통합될 수도 있다.
스토리지 서버(3200~3200m) 또는 어플리케이션 서버(3100~3100n)에서 프로세서는 스토리지 장치(3150~3150n, 3250~3250m) 또는 메모리(3120~3120n, 3220~3220m)로 커맨드를 전송하여 데이터를 프로그램하거나 리드할 수 있다. 이 때 데이터는 ECC(Error Correction Code) 엔진을 통해 에러 정정된 데이터일 수 있다. 데이터는 데이터 버스 변환(Data Bus Inversion: DBI) 또는 데이터 마스킹(Data Masking: DM) 처리된 데이터로서, CRC(Cyclic Redundancy Code) 정보를 포함할 수 있다. 데이터는 보안 또는 프라이버시를 위해 암호화된 데이터일 수 있다.
스토리지 장치(3150~3150m, 3250~3250m)는 프로세서로부터 수신된 리드 커맨드에 응답하여, 제어 신호 및 커맨드/어드레스 신호를 NAND 플래시 메모리 장치(3252~3252m)로 전송할 수 있다. 이에 따라 NAND 플래시 메모리 장치(3252~3252m)로부터 데이터를 독출하는 경우, RE(Read Enable) 신호는 데이터 출력 제어 신호로 입력되어, 데이터를 DQ 버스로 출력하는 역할을 할 수 있다. RE 신호를 이용하여 DQS(Data Strobe)를 생성할 수 있다. 커맨드와 어드레스 신호는 WE(Write Enable) 신호의 상승 엣지 또는 하강 엣지에 따라 페이지 버퍼에 래치될 수 있다.
컨트롤러(3251)는 스토리지 장치(3250)의 동작을 전반적으로 제어할 수 있다. 일 실시예에서, 컨트롤러(3251)는 SRAM(Static Random Access Memory)을 포함할 수 있다. 컨트롤러(3251)는 기입 커맨드에 응답하여 낸드 플래시(3252)에 데이터를 기입할 수 있고, 또는 독출 커맨드에 응답하여 낸드 플래시(3252)로부터 데이터를 독출할 수 있다. 예를 들어, 기입 커맨드 및/또는 독출 커맨드는 스토리지 서버(3200) 내의 프로세서(3210), 다른 스토리지 서버(3200m) 내의 프로세서(3210m) 또는 어플리케이션 서버(3100, 3100n) 내의 프로세서(3110, 3110n)로부터 제공될 수 있다. DRAM(3253)은 낸드 플래시(3252)에 기입될 데이터 또는 낸드 플래시(3252)로부터 독출된 데이터를 임시 저장(버퍼링)할 수 있다. 또한, DRAM(3253)은 메타 데이터를 저장할 수 있다. 여기서, 메타 데이터는 사용자 데이터 또는 낸드 플래시(3252)를 관리하기 위해 컨트롤러(3251)에서 생성된 데이터이다. 스토리지 장치(3250)는 리셋 신호 생성부(RSG)(3255)를 포함하여 비정상 리셋 오프를 방지하고 제품 신뢰성이 향상되도록 구현될 수 있다.
스토리지 장치(3150~3150m, 3250~3250m)는 도 1 내지 20을 참조하여 상술한 본 발명의 실시예들에 따른 스토리지 장치 및 리셋 방법에 기초하여 구현될 수 있다.
본 발명의 실시예들은 스토리지 장치 및 스토리지 시스템을 포함하는 임의의 전자 장치 및 시스템에 유용하게 이용될 수 있다. 예를 들어, 본 발명의 실시예들은 PC(Personal Computer), 서버 컴퓨터(server computer), 데이터 센터(data center), 워크스테이션(workstation), 노트북(laptop), 핸드폰(cellular), 스마트 폰(smart phone), MP3 플레이어, PDA(Personal Digital Assistant), PMP(Portable Multimedia Player), 디지털 TV, 디지털 카메라, 포터블 게임 콘솔(portable game console), 네비게이션(navigation) 기기, 웨어러블(wearable) 기기, IoT(Internet of Things) 기기, IoE(Internet of Everything) 기기, e-북(e-book), VR(Virtual Reality) 기기, AR(Augmented Reality) 기기, 드론(drone) 등과 같은 전자 시스템에 더욱 유용하게 적용될 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술분야의 숙련된 당업자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 것이다.
Claims (20)
- 외부 전원 전압에 기초하여 내부 전원 전압을 생성하는 단계;
상기 내부 전원 전압의 레벨에 기초하여 활성화 또는 비활성화되는 제1 리셋 제어 신호를 생성하는 단계;
상기 제1 리셋 제어 신호와 다른 타이밍으로 활성화 또는 비활성화되는 제2 리셋 제어 신호를 생성하는 단계;
상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호에 기초하여 상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호와 다른 타이밍으로 활성화 또는 비활성화되는 최종 리셋 제어 신호를 생성하는 단계; 및
상기 외부 전원 전압이 오프(off)되는 경우에, 상기 최종 리셋 제어 신호에 기초하여 리셋 동작을 수행하는 단계를 포함하는 스토리지 장치의 리셋 방법. - 제 1 항에 있어서, 상기 최종 리셋 제어 신호를 생성하는 단계는,
상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호 중 적어도 하나가 활성화되는 경우에 활성화되도록 상기 최종 리셋 제어 신호를 생성하는 단계를 포함하는 것을 특징으로 하는 스토리지 장치의 리셋 방법. - 제 1 항에 있어서,
상기 제2 리셋 제어 신호는 상기 스토리지 장치에 포함되는 스토리지 컨트롤러로부터 제공되는 오프 레디(off ready) 신호인 것을 특징으로 하는 스토리지 장치의 리셋 방법. - 제 3 항에 있어서, 상기 제2 리셋 제어 신호를 생성하는 단계는,
상기 리셋 동작이 완료된 이후에 비활성화되도록 상기 오프 레디 신호를 생성하는 단계; 및
상기 오프 레디 신호를 상기 제2 리셋 제어 신호로 이용하는 단계를 포함하는 것을 특징으로 하는 스토리지 장치의 리셋 방법. - 제 1 항에 있어서,
상기 제2 리셋 제어 신호는 상기 스토리지 장치에 포함되는 전원 손실 보호 집적 회로(Power-Loss Protection Integrated Circuit; PLP IC)로부터 제공되는 파워 오프 검출 신호에 기초하여 생성되는 것을 특징으로 하는 스토리지 장치의 리셋 방법. - 제 5 항에 있어서, 상기 제2 리셋 제어 신호를 생성하는 단계는,
상기 파워 오프 검출 신호를 생성하는 단계; 및
상기 파워 오프 검출 신호를 지연시켜 상기 제2 리셋 제어 신호를 생성하는 단계를 포함하는 것을 특징으로 하는 스토리지 장치의 리셋 방법. - 제 6 항에 있어서,
상기 파워 오프 검출 신호의 상승 에지 및 하강 에지 중 하나를 지연시켜 상기 제2 리셋 제어 신호를 생성하는 것을 특징으로 하는 스토리지 장치의 리셋 방법. - 제 1 항에 있어서, 상기 제1 리셋 제어 신호를 생성하는 단계는,
상기 내부 전원 전압의 레벨을 검출하는 단계; 및
상기 내부 전원 전압의 레벨이 기준 레벨보다 높은 경우에 활성화되도록 상기 제1 리셋 제어 신호를 생성하는 단계를 포함하는 것을 특징으로 하는 스토리지 장치의 리셋 방법. - 제 8 항에 있어서,
상기 내부 전원 전압은 상기 외부 전원 전압이 오프되기 전에는 상기 외부 전원 전압의 레벨과 동일한 제1 레벨을 가지며, 상기 외부 전원 전압이 오프된 이후에는 상기 제1 레벨보다 낮은 제2 레벨을 가지는 것을 특징으로 하는 스토리지 장치의 리셋 방법. - 제 9 항에 있어서,
상기 기준 레벨은 상기 제2 레벨보다 낮은 것을 특징으로 하는 스토리지 장치의 리셋 방법. - 제 1 항에 있어서,
상기 최종 리셋 제어 신호는 상기 스토리지 장치에 포함되는 스토리지 컨트롤러에 제공되며,
상기 스토리지 컨트롤러는 상기 최종 리셋 제어 신호에 기초하여 상기 내부 전원 전압의 레벨이 기준 레벨보다 낮아지기 전에 상기 리셋 동작을 수행하는 것을 특징으로 하는 스토리지 장치의 리셋 방법. - 제 1 항에 있어서, 상기 리셋 동작을 수행하는 단계는,
상기 스토리지 장치에 포함되는 버퍼 메모리에 저장된 데이터들을 상기 스토리지 장치에 포함되는 비휘발성 메모리에 저장하는 단계를 포함하는 것을 특징으로 하는 스토리지 장치의 리셋 방법. - 외부 전원 전압에 기초하여 내부 전원 전압을 생성하는 전원 손실 보호 집적 회로(Power-Loss Protection Integrated Circuit; PLP IC);
상기 내부 전원 전압의 레벨에 기초하여 활성화 또는 비활성화되는 제1 리셋 제어 신호를 생성하는 리셋 검출부;
상기 제1 리셋 제어 신호 및 상기 제1 리셋 제어 신호와 다른 타이밍으로 활성화 또는 비활성화되는 제2 리셋 제어 신호에 기초하여, 상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호와 다른 타이밍으로 활성화 또는 비활성화되는 최종 리셋 제어 신호를 생성하는 리셋 제어부; 및
스토리지 장치의 동작을 제어하고, 상기 외부 전원 전압이 오프(off)되는 경우에 상기 최종 리셋 제어 신호에 기초하여 리셋 동작을 수행하는 스토리지 컨트롤러를 포함하는 스토리지 장치. - 제 13 항에 있어서, 상기 리셋 제어부는,
상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호에 대한 OR 연산을 수행하여 상기 최종 리셋 제어 신호를 생성하는 OR 게이트를 포함하는 것을 특징으로 하는 스토리지 장치. - 제 13 항에 있어서,
상기 제2 리셋 제어 신호는 상기 스토리지 컨트롤러로부터 제공되고 상기 리셋 동작이 완료되었음을 나타내는 오프 레디(off ready) 신호인 것을 특징으로 하는 스토리지 장치. - 제 13 항에 있어서,
상기 전원 손실 보호 집적 회로는 상기 외부 전원 전압이 오프되었음을 나타내는 파워 오프 검출 신호를 더 생성하며,
상기 파워 오프 검출 신호를 지연시켜 상기 제2 리셋 제어 신호를 생성하는 지연부를 더 포함하는 것을 특징으로 하는 스토리지 장치. - 제 16 항에 있어서, 상기 지연부는,
상기 파워 오프 검출 신호의 하강 에지를 지연시켜 상기 제2 리셋 제어 신호를 생성하는 에지 지연 회로를 포함하는 것을 특징으로 하는 스토리지 장치. - 제 13 항에 있어서, 상기 리셋 검출부는,
상기 내부 전원 전압의 레벨을 검출하여 상기 내부 전원 전압의 레벨이 기준 레벨보다 높은 경우에 활성화되도록 상기 제1 리셋 제어 신호를 생성하는 전압 레벨 검출기를 포함하는 것을 특징으로 하는 스토리지 장치. - 제 13 항에 있어서,
상기 외부 전원 전압 및 상기 내부 전원 전압 중 하나에 기초하여 상기 스토리지 컨트롤러에 공급되는 적어도 하나의 구동 전압을 생성하는 전원 관리 집적 회로(Power Management Integrated Circuit; PMIC)를 더 포함하는 것을 특징으로 하는 스토리지 장치. - 외부 전원 전압에 기초하여 상기 외부 전원 전압보다 낮거나 같은 레벨을 가지는 내부 전원 전압을 생성하는 단계;
상기 외부 전원 전압 및 상기 내부 전원 전압 중 하나에 기초하여 적어도 하나의 구동 전압을 생성하는 단계;
상기 구동 전압에 기초하여 정상 동작을 수행하는 단계;
상기 내부 전원 전압의 레벨을 검출하여, 상기 내부 전원 전압의 레벨이 기준 레벨보다 높은 경우에 활성화되도록 제1 리셋 제어 신호를 생성하는 단계;
상기 제1 리셋 제어 신호와 다른 타이밍으로 활성화 또는 비활성화되는 제2 리셋 제어 신호를 생성하는 단계;
상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호에 기초하여, 상기 제1 리셋 제어 신호 및 상기 제2 리셋 제어 신호 중 적어도 하나가 활성화되는 경우에 활성화되는 최종 리셋 제어 신호를 생성하는 단계;
상기 외부 전원 전압의 레벨을 검출하여, 상기 외부 전원 전압이 오프(off)되는 경우에 상기 외부 전원 전압이 오프되었음을 나타내는 파워 오프 검출 신호를 생성하는 단계; 및
상기 외부 전원 전압이 오프되는 경우에, 상기 최종 리셋 제어 신호 및 상기 구동 전압에 기초하여 리셋 동작을 수행하는 단계를 포함하고,
상기 제2 리셋 제어 신호는 스토리지 장치에 포함되는 스토리지 컨트롤러로부터 제공되는 오프 레디(off ready) 신호 또는 상기 파워 오프 검출 신호에 기초하여 생성되는 신호이며,
상기 외부 전원 전압이 오프된 이후에도 상기 최종 리셋 제어 신호는 미리 정해진 시간 동안 활성화 레벨을 계속 유지하고, 상기 활성화 레벨을 유지하는 상기 최종 리셋 제어 신호 및 상기 내부 전원 전압에 기초하여 생성되는 상기 구동 전압에 기초하여 상기 리셋 동작이 수행되는 스토리지 장치의 구동 방법.
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200126539A KR20220043302A (ko) | 2020-09-29 | 2020-09-29 | 스토리지 장치의 리셋 방법 및 이를 수행하는 스토리지 장치 |
US17/346,212 US11488640B2 (en) | 2020-09-29 | 2021-06-12 | Method of resetting storage device, storage device performing the same and data center including the same |
EP21180210.3A EP3975186A1 (en) | 2020-09-29 | 2021-06-18 | Method of resetting storage device and storage device performing the same |
CN202111134038.4A CN114328279A (zh) | 2020-09-29 | 2021-09-27 | 使存储设备复位的方法、存储设备以及数据中心 |
US17/947,301 US11854648B2 (en) | 2020-09-29 | 2022-09-19 | Method of resetting storage device, storage device performing the same and data center including the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200126539A KR20220043302A (ko) | 2020-09-29 | 2020-09-29 | 스토리지 장치의 리셋 방법 및 이를 수행하는 스토리지 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220043302A true KR20220043302A (ko) | 2022-04-05 |
Family
ID=76796891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200126539A KR20220043302A (ko) | 2020-09-29 | 2020-09-29 | 스토리지 장치의 리셋 방법 및 이를 수행하는 스토리지 장치 |
Country Status (4)
Country | Link |
---|---|
US (2) | US11488640B2 (ko) |
EP (1) | EP3975186A1 (ko) |
KR (1) | KR20220043302A (ko) |
CN (1) | CN114328279A (ko) |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11119876A (ja) | 1997-10-16 | 1999-04-30 | Fujitsu Ltd | バックアップ機能を有する記憶回路及び情報処理装置 |
JP3904859B2 (ja) * | 2001-07-30 | 2007-04-11 | シャープ株式会社 | パワーオンリセット回路およびこれを備えたicカード |
KR100901972B1 (ko) | 2002-06-29 | 2009-06-08 | 매그나칩 반도체 유한회사 | Pofr 회로 |
KR100551074B1 (ko) | 2003-12-30 | 2006-02-10 | 주식회사 하이닉스반도체 | 반도체 메모리 소자의 파워업 회로 |
KR100672989B1 (ko) * | 2004-12-22 | 2007-01-24 | 삼성전자주식회사 | 파워다운 모드에서 레귤레이터에 의한 전력 소모를방지하는 전자장치 및 전력 소모 방지 방법 |
KR100656469B1 (ko) | 2005-12-29 | 2006-12-11 | 주식회사 하이닉스반도체 | 반도체 메모리의 파워다운 제어장치 |
KR101226685B1 (ko) | 2007-11-08 | 2013-01-25 | 삼성전자주식회사 | 수직형 반도체 소자 및 그 제조 방법. |
KR101402493B1 (ko) | 2008-01-02 | 2014-06-03 | 엘지전자 주식회사 | 파워 온 리세트회로 |
KR100942973B1 (ko) | 2008-06-30 | 2010-02-17 | 주식회사 하이닉스반도체 | 반도체 메모리 장치 및 그의 리셋 제어 회로 |
US8090988B2 (en) * | 2009-11-24 | 2012-01-03 | Virtium Technology, Inc. | Saving information to flash memory during power failure |
KR101691092B1 (ko) | 2010-08-26 | 2016-12-30 | 삼성전자주식회사 | 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템 |
US8553466B2 (en) | 2010-03-04 | 2013-10-08 | Samsung Electronics Co., Ltd. | Non-volatile memory device, erasing method thereof, and memory system including the same |
US9536970B2 (en) | 2010-03-26 | 2017-01-03 | Samsung Electronics Co., Ltd. | Three-dimensional semiconductor memory devices and methods of fabricating the same |
KR101682666B1 (ko) | 2010-08-11 | 2016-12-07 | 삼성전자주식회사 | 비휘발성 메모리 장치, 그것의 채널 부스팅 방법, 그것의 프로그램 방법 및 그것을 포함하는 메모리 시스템 |
KR101878200B1 (ko) * | 2012-01-09 | 2018-07-16 | 삼성전자 주식회사 | 서든 파워 오프 발생 시 메모리 시스템을 제어하는 방법 |
JP2013196494A (ja) | 2012-03-21 | 2013-09-30 | Toshiba Corp | メモリシステム |
US9990023B2 (en) | 2016-03-28 | 2018-06-05 | Apple Inc. | Systems and methods for handling sudden power failures in solid state drives |
JP6748760B1 (ja) * | 2019-05-13 | 2020-09-02 | ウィンボンド エレクトロニクス コーポレーション | 半導体記憶装置 |
KR20220011429A (ko) * | 2020-07-21 | 2022-01-28 | 에스케이하이닉스 주식회사 | 반도체 장치와 반도체 메모리 장치 |
-
2020
- 2020-09-29 KR KR1020200126539A patent/KR20220043302A/ko unknown
-
2021
- 2021-06-12 US US17/346,212 patent/US11488640B2/en active Active
- 2021-06-18 EP EP21180210.3A patent/EP3975186A1/en active Pending
- 2021-09-27 CN CN202111134038.4A patent/CN114328279A/zh active Pending
-
2022
- 2022-09-19 US US17/947,301 patent/US11854648B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20230016511A1 (en) | 2023-01-19 |
EP3975186A1 (en) | 2022-03-30 |
US11854648B2 (en) | 2023-12-26 |
US20220101889A1 (en) | 2022-03-31 |
US11488640B2 (en) | 2022-11-01 |
CN114328279A (zh) | 2022-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10509602B2 (en) | Data storage device and operating method thereof | |
KR102233400B1 (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
KR20190117117A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
KR102592796B1 (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
KR20220055034A (ko) | 스토리지 장치의 구동 방법 및 이를 이용한 스토리지 시스템의 구동 방법 | |
KR20180097026A (ko) | 불휘발성 메모리 장치, 그것을 포함하는 데이터 저장 장치 및 데이터 저장 장치의 동작 방법 | |
KR102549548B1 (ko) | 메모리 시스템, 그것의 동작 방법 및 전자 장치 | |
US9588708B2 (en) | Semiconductor memory device, operating method thereof, and data storage device including the same | |
KR102374076B1 (ko) | 보조 전원 장치의 불량 방지 회로를 포함하는 스토리지 장치 및 보조 전원 장치의 제어 방법 | |
US11669470B2 (en) | Storage system with capacity scalability and method of operating the same | |
KR102561095B1 (ko) | 반도체 메모리 장치의 동작 방법 | |
EP3975186A1 (en) | Method of resetting storage device and storage device performing the same | |
KR102655360B1 (ko) | 컨트롤러, 데이터 저장 장치 및 그것의 동작 방법 | |
US20190179749A1 (en) | Memory system, operating method thereof and nonvolatile memory device | |
KR20200034312A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
US20230112776A1 (en) | Operation method of memory module, operation method of memory controller, and operation method of memory system | |
KR102434036B1 (ko) | 보조 전원 장치의 수명을 위한 충전 전압 제어 방법 및 이를 수행하는 스토리지 장치 | |
KR102408829B1 (ko) | 리텐션 강화를 위한 스토리지 장치의 구동 방법 및 이를 수행하는 스토리지 장치 | |
US11977447B2 (en) | Storage device, operating method for the same and memory system | |
US20240211424A1 (en) | Memory expander and computing system including the same | |
US20230409219A1 (en) | Storage device and method of operating the same | |
EP4160419A1 (en) | Operation method of memory module, operation method of memory controller, and operation method of memory system | |
US20240256175A1 (en) | Storage device, operation method of storage device, and operation method of storage controller | |
US20240176540A1 (en) | Storage device and storage system for direct storage | |
KR20170089646A (ko) | 반도체 메모리 장치 및 그것을 포함하는 데이터 저장 장치 |