KR20140102771A - 전류 스파이크를 제한하기 위한 동작들의 제어 및 시차를 둔 실행 - Google Patents

전류 스파이크를 제한하기 위한 동작들의 제어 및 시차를 둔 실행 Download PDF

Info

Publication number
KR20140102771A
KR20140102771A KR1020147021723A KR20147021723A KR20140102771A KR 20140102771 A KR20140102771 A KR 20140102771A KR 1020147021723 A KR1020147021723 A KR 1020147021723A KR 20147021723 A KR20147021723 A KR 20147021723A KR 20140102771 A KR20140102771 A KR 20140102771A
Authority
KR
South Korea
Prior art keywords
subsystems
memory
power
operations
subsystem
Prior art date
Application number
KR1020147021723A
Other languages
English (en)
Inventor
니르 제이. 와크라트
다니엘 제이. 포스트
케네스 헤르만
바딤 흐멜니트스키
닉 세로프
시아오 티오
매튜 비욤
Original Assignee
애플 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 애플 인크. filed Critical 애플 인크.
Publication of KR20140102771A publication Critical patent/KR20140102771A/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/30Power supply circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

비휘발성 메모리 시스템(예를 들어, 플래시 메모리 시스템)과 같은 시스템의 피크 전력 소비를 관리하기 위한 시스템들 및 방법들이 개시된다. 시스템은 복수의 서브시스템들 및 그 서브시스템들을 제어하기 위한 컨트롤러를 포함할 수 있다. 각 서브시스템은 피키한 전류 프로파일을 가질 수 있다. 따라서, 컨트롤러는, 예를 들어, 전력 집중적인 동작들을 동시에 수행할 수 있는 서브시스템들의 수를 제한하는 것에 의해 또는 임의의 주어진 시간에 서브시스템이 소비할 수 있는 피크 전력을 결정하는 데 서브시스템에 도움을 주는 것에 의해 시스템의 피크 전력을 제어할 수 있다.

Description

전류 스파이크를 제한하기 위한 동작들의 제어 및 시차를 둔 실행{CONTROLLING AND STAGGERING OPERATIONS TO LIMIT CURRENT SPIKES}
이 발명은 NAND 플래시 메모리 시스템과 같은 시스템의 피크 전력 소비를 관리하는 것에 관한 것이다.
전자 시스템들은 더욱더 복잡해지고 있고 점점 더 많은 부품들을 포함하고 있다. 따라서, 이들 시스템들에 대한 피크 전력 문제들이 계속해서 관심사가 되고 있다. 특히, 시스템 내의 부품들 중 다수가 동시에 동작할 수 있기 때문에, 시스템은 전력 또는 전류 스파이크들로 시달릴 수 있다. 이 효과는 특히 시스템 부품들이 각각 고전력 동작들을 수행중일 때 두드러질 수 있다.
소비자 전자 제품들에서 대용량 저장을 위해 일반적으로 사용되는 플래시 메모리 시스템은 피크 전력 문제들이 관심사인 현재의 시스템의 일례이다.
플래시 메모리 시스템(예를 들어, NAND 플래시 메모리 시스템)과 같은 시스템의 피크 전력 소비를 관리하기 위한 시스템들 및 방법들이 개시된다.
복수의 서브시스템들 및 그 서브시스템들을 제어하기 위한 컨트롤러를 포함하는 시스템이 제공될 수 있다. 서브시스템들 각각은 실질적으로 동일한 특징들 및 기능을 가질 수 있고 피키한(peaky) 전류 프로파일을 가질 수 있다. 특히, 각각의 서브시스템은 전력 소비가 달라지는 동작들을 수행할 수 있고, 따라서 시간에 걸쳐, 서브시스템의 전류 프로파일에 더 많은 고전력 동작들에 대응하는 전류 피크들이 존재할 수 있다.
일부 실시예들에서, 시스템은 메모리 시스템이거나 메모리 시스템을 포함할 수 있다. 특히 피키한 전류 프로파일들을 가질 수 있는 메모리 시스템의 예가 플래시 메모리 시스템(예를 들어, NAND 플래시 메모리 시스템)이다. 그러한 플래시 시스템들에서, 서브시스템들은 상이한 플래시 다이들을 포함할 수 있는데, 이들은 플래시 다이 전류 소비 프로파일에서 스파이크들을 일으키는 전력 집중적인 동작들을 수행할 수 있다. 플래시 다이들을 제어하는 컨트롤러는 호스트 프로세서(예를 들어, 원시(raw) 또는 관리(managed) NAND 시스템에서) 및/또는 플래시 컨트롤러(예를 들어, 관리 NAND 시스템에서)를 포함할 수 있다. 다른 실시예들에서, 플래시 메모리 시스템 대신에, 시스템은 하드 드라이브 시스템과 같은 임의의 다른 적당한 비휘발성 메모리 시스템, 또는 임의의 적당한 병렬 컴퓨팅 시스템을 포함할 수 있다.
컨트롤러(예를 들어, 호스트 프로세서 및/또는 플래시 컨트롤러)는 시스템의 피크 전력 소비를 관리하도록 구성될 수 있다. 예를 들어, 컨트롤러는 전력 집중적인 동작들을 동시에 수행할 수 있는 서브시스템들의 수를 제한하거나 임의의 주어진 시간에 서브시스템이 소비할 수 있는 피크 전력을 결정하는 데에 서브시스템에 도움을 줄 수 있다. 이렇게 하여, 시스템의 총 전력은 호스팅 시스템의 동작에 적당한 임계 레벨 내에서 유지될 수 있다.
일부 실시예들에서는, 시분할 다중화 방식(time division multiplexing scheme)이 이용될 수 있고, 여기서 컨트롤러는 전력 집중적인 동작들을 수행하기 위한 시간 슬롯을 각각의 서브시스템에 할당한다. 다른 실시예들에서, 컨트롤러는 임의의 주어진 시간에 기껏해야 미리 결정된 수의 서브시스템들에게 전력 집중적인 동작들을 수행하는 허가를 주도록 구성될 수 있다. 대안적으로, 컨트롤러는 실질적인 동작들을 수행하는 서브시스템들의 예상되는 현재 사용의 합계를 계속 추적할 수 있고, 그 합계에 기초하여 추가 서브시스템들에 허가를 줄 수 있다. 또 다른 실시예들에서, 컨트롤러는 시스템에 관한 전력 상태 정보(예를 들어, 전력 집중적인 동작들을 수행하는 서브시스템들의 총수)를 특정 서브시스템에 제공하여 그 특정 서브시스템에게 어떤 유형의 동작들을 수행하는 것이 적절할 수 있는지를 지시할 수 있다.
본 발명의 상기 및 다른 양태들 및 이점들은 첨부 도면들과 함께 다음의 상세한 설명을 고려할 때 더 명백해질 것이며, 첨부 도면들에서 같은 참조 문자들은 전체에 걸쳐 같은 부분들을 지시한다.
도 1은 본 발명의 다양한 실시예들에 따라 구성된 컨트롤러 및 복수의 서브시스템들을 포함하는 예시적인 시스템의 개략도이다.
도 2a는 본 발명의 다양한 실시예들에 따라 구성된 호스트 프로세서 및 관리 비휘발성 메모리 패키지를 포함하는 예시적인 비휘발성 메모리 시스템의 개략도이다.
도 2b는 본 발명의 다양한 실시예들에 따라 구성된 호스트 프로세서 및 원시 비휘발성 메모리 패키지를 포함하는 예시적인 비휘발성 메모리 시스템의 개략도이다.
도 2c는 본 발명의 다양한 실시예들에 따른 메모리 서브시스템의 피키한 전류 소비 프로파일을 예시하는 그래프이다.
도 3은 본 발명의 다양한 실시예들에 따른 시분할 다중화 방식을 이용하여 상이한 서브시스템들의 전력 집중적인 동작들을 시차를 두고 실행하기 위한 예시적인 프로세스의 흐름도이다.
도 4는 본 발명의 다양한 실시예들에 따른 서브시스템에 의한 요청들을 이용하여 상이한 서브시스템들의 전력 집중적인 동작들을 관리하기 위한 예시적인 프로세스의 흐름도이다.
도 5는 본 발명의 다양한 실시예들에 따른 시스템의 전력 상태 정보를 서브시스템에 제공하는 것에 의해 상이한 서브시스템들의 전력 집중적인 동작들을 관리하기 위한 예시적인 프로세스의 흐름도이다.
도 1은 피크 전력 문제들로 시달릴 수 있는 예시적인 시스템(100)의 개략도이다. 특히, 시스템(100)은 컨트롤러(110) 및 복수의 서브시스템들(120)을 포함할 수 있고, 여기서 서브시스템들(120)의 조합된 전력 소비는 컨트롤러(110)에 의해 적당하게 관리되지 않는 경우 바람직하지 않게 피키할 수 있다. 일부 실시예들에서, 서브시스템들(120) 각각은 실질적으로 동일한 특징들 및 기능들을 가질 수 있다. 예를 들어, 서브시스템들(120)은 실질적으로 동일한 제조 프로세스를 이용하여 제조되었을 수 있고 또는 실질적으로 동일한 사양들을 가질 수 있다(예를 들어, 사용된 재료 등에 관하여).
서브시스템들(120) 각각은 피키한 전류 또는 전력 프로파일을 가질 수 있다. 특히, 동작 중에, 서브시스템들(120) 각각은 전력이 더 높은 일부 동작들 및 전력이 더 낮은 일부 동작들을 수행할 수 있다. 따라서, 시간에 걸쳐, 서브시스템들(120) 각각의 전류 또는 전력 프로파일은 오르내릴 수 있고, 여기서 최고 피크들은 서브시스템이 그의 가장 고전력 동작을 수행중일 때 발생한다. 복수의 서브시스템들이 고전력 동작들을 동시에 수행한다면, 시스템(100)에 대한 전체 전력 또는 전류 프로파일은 시스템(100)에 대한 전력 임계 또는 사양보다 높은 피크 전력 레벨에 도달할 수 있다. 본 명세서에서 사용될 때, "전력 집중적인 동작(power-intensive operation)"은 시스템의 전체 전력 레벨들에 상당한 영향을 미칠 수 있는 서브시스템 동작일 수 있다. 예를 들어, "전력 집중적인 동작"은 적어도 미리 결정된 양의 전류를 필요로 하거나 그것을 소비할 것으로 예상되는 동작을 지시할 수 있다.
컨트롤러(110)는 그러한 전체 시스템 피크들이 발생하지 않도록(또는 발생할 가능성이 더 적도록) 서브시스템들(120)에 의해 수행되는 동작들을 제어, 관리, 및/또는 동기화하도록 구성될 수 있다. 특히, 아래 더 상세히 기술되는 바와 같이, 컨트롤러(110)는 기껏해야 미리 결정된 수의 서브시스템들(120)이 전력 집중적인 동작들을 동시에 수행하고 있도록 또는 임의의 주어진 시간에 서브시스템이 사용할 수 있는 피크 전력을 결정하는 데에 서브시스템에 도움을 주는 것에 의해 서브시스템들(120)을 제어할 수 있다. 컨트롤러(110)는 서브시스템들(120)의 관리를 위해 하드웨어 기반(예를 들어, ASIC(application-specific integrated circuit), 필드 프로그램 가능 어레이 등) 및 소프트웨어 기반 부품들(예를 들어, 프로세서, 마이크로프로세서 등)의 임의의 적당한 조합을 포함할 수 있다.
시스템(100)은 3개의 서브시스템을 갖는 것으로 예시되어 있지만, 시스템(100)은 임의의 적당한 수의 서브시스템들(예를 들어, 2개, 4개, 5개, 또는 그보다 많은 서브시스템들)을 포함할 수 있다는 것을 이해해야 한다.
시스템(100)은 피크 전력 문제들로 시달릴 수 있는 임의의 적당한 유형의 전자 시스템일 수 있다. 예를 들어, 시스템(100)은 병렬 컴퓨팅 시스템 또는 메모리 시스템(예를 들어, 하드 드라이브 시스템 또는 NAND 플래시 메모리 시스템 등의 플래시 메모리 시스템)일 수 있거나 그것을 포함할 수 있다.
도 2a 및 2b는 도 1의 시스템(100)의 다양한 실시예들의 예들인 메모리 시스템들의 개략도이다. 먼저 도 2a를 보면, 메모리 시스템(200)은 호스트 프로세서(210) 및 적어도 하나의 비휘발성 메모리("NVM") 패키지(220)를 포함할 수 있다. 호스트 프로세서(210) 및 옵션으로 NVM 패키지(220)는, 휴대용 미디어 플레이어(예를 들어, 캘리포니아주 쿠퍼티노 소재의 애플사에 의해 출시된 아이팟), 휴대폰(예를 들어, 애플사에 의해 출시된 아이폰), 포켓 사이즈의 퍼스널 컴퓨터, PDA(personal digital assistant), 데스크톱 컴퓨터, 또는 랩톱 컴퓨터 등의, 임의의 적당한 호스트 장치 또는 시스템에서 구현될 수 있다.
호스트 프로세서(210)는 현재 이용 가능한 또는 미래에 개발될 하나 이상의 프로세서 또는 마이크로프로세서를 포함할 수 있다. 대안적으로 또는 추가로, 호스트 프로세서(210)는 메모리 시스템(200)의 다양한 동작들을 제어할 수 있는 임의의 다른 부품들 또는 회로(예를 들어, ASIC(application-specific integrated circuit))를 포함하거나 또는 그와 함께 동작할 수 있다. 프로세서 기반 구현에서, 호스트 프로세서(210)는 호스트 상에 구현된 메모리(도시되지 않음)에 로딩된 펌웨어 및 소프트웨어 프로그램들을 실행할 수 있다. 메모리는 임의의 적당한 유형의 휘발성 메모리(예를 들어, 캐시 메모리 또는 DDR(double data rate) RAM 또는 SRAM(static RAM) 등의 RAM(random access memory))를 포함할 수 있다. 호스트 프로세서(210)는 NVM 드라이버(212)를 실행할 수 있는데, NVM 드라이버(212)는 호스트 프로세서(210)가 비휘발성 메모리 패키지(220)에 대한 다양한 메모리 관리 및 액세스 기능들을 수행할 수 있게 하는 벤더 특정(vendor-specific) 및/또는 기술 특정(technology-specific) 명령어들을 제공할 수 있다.
NVM 패키지(220)는 BGA(ball grid array) 패키지 또는 다른 적당한 유형의 IC(integrated circuit) 패키지일 수 있다. NVM 패키지(220)는 관리 NVM 패키지일 수 있다. 특히, NVM 패키지(220)는 임의의 적당한 수의 NVM 다이들(224)에 연결된 NVM 컨트롤러(222)를 포함할 수 있다. NVM 컨트롤러(222)는 프로세서들, 마이크로프로세서들, 또는 하드웨어 기반 부품들(예를 들어, ASIC들)의 임의의 적당한 조합을 포함할 수 있고, 호스트 프로세서(210)와 동일한 부품들 또는 상이한 부품들을 포함할 수 있다. NVM 컨트롤러(222)는 NVM 드라이버(212)와 NVM 다이들(224)의 물리적 메모리 위치들을 관리하고 및/또는 그 물리적 메모리 위치들에 액세스하는 책임을 공유할 수 있다. 대안적으로, NVM 컨트롤러(222)는 NVM 다이들(224)에 대한 실질적으로 모든 관리 및 액세스 기능들을 수행할 수 있다. 따라서, "관리(managed) NVM"은 비휘발성 메모리(예를 들어, NVM 다이들(224))에 대한 적어도 하나의 메모리 관리 기능을 수행하도록 구성된 컨트롤러(예를 들어, NVM 컨트롤러(222))를 포함하는 메모리 장치 또는 패키지를 지시할 수 있다. NVM 컨트롤러(222)에 의해 수행될 수 있는 관리 기능들 중 하나는 메모리 시스템(200)의 피크 전력 소비를 제어하는 것일 수 있다. 이렇게 하여, NVM 컨트롤러(222)는 호스트 프로세서(210)의 동작들 또는 성능에 영향을 미치지 않고 NVM 패키지(210)(및 특히 NVM 다이들(224))의 전력 소비를 관리할 수 있다.
NVM 다이들(224)에 대한 NVM 컨트롤러(222) 및/또는 호스트 프로세서(210)에 의해 수행될 수 있는 다른 메모리 관리 및 액세스 기능들은 판독, 기록, 또는 삭제 명령어들을 발행하는 것 및 마모 균등화(wear-leveling), 불량 블록 관리, 가비지 컬렉션(garbage collection), 논리-물리 어드레스 매핑(logical-to-physical address mapping), SLC 또는 MLC 프로그래밍 판정, 에러 정정 또는 검출의 적용, 및 프로그램 동작들을 셋업하기 위한 데이터 큐잉(data queuing)을 수행하는 것을 포함할 수 있다.
NVM 다이들(224)은 메모리 시스템(200)의 전원이 꺼질 때 보유될 필요가 있는 정보를 저장하는 데 사용될 수 있다. 본 명세서에서 사용될 때, 그리고 상황에 따라, "비휘발성 메모리"는 데이터가 저장될 수 있는 NVM 다이들을 지시할 수 있고, 또는 NVM 다이들을 포함하는 NVM 패키지를 지시할 수 있다. NVM 다이들(224)은 플로팅 게이트 또는 전하 트래핑 기술에 기초한 NAND 플래시 메모리, NOR 플래시 메모리, EPROM(erasable programmable read only memory), EEPROM(electrically erasable programmable read only memory), FRAM(ferroelectric RAM), MRAM(magnetoresistive RAM), PCM(phase change memory), 임의의 다른 공지된 또는 미래의 비휘발성 메모리 기술 유형들, 또는 이들의 임의의 조합을 포함할 수 있다.
이제 도 2b를 참조하면, 도 1의 시스템(100)의 다른 실시의 예일 수 있는, 메모리 시스템(250)의 개략도가 도시되어 있다. 메모리 시스템(250)은 도 2a의 메모리 시스템(200)과 관련하여 위에 기술된 특징들 및 기능들 중 임의의 것을 가질 수 있다. 특히, 도 2b에 도시된 부품들 중 어떤 것이라도 도 2a의 같은 이름의 부품들의 특징들 및 기능들 중 임의의 것을 가질 수 있고, 그 반대도 마찬가지이다.
메모리 시스템(250)은 호스트 프로세서(260) 및 비휘발성 메모리 패키지(270)를 포함할 수 있다. 도 2a의 메모리 시스템(200)과 다르게, NVM 패키지(270)는 내장된 NVM 컨트롤러를 포함하지 않고, 따라서 NVM 다이들(274)은 호스트 프로세서(260)에 의해(예를 들어, NVM 드라이버(262)를 통해) 전적으로 관리될 수 있다. 따라서, 비휘발성 메모리 패키지(270)는 "원시(raw) NVM"이라고 지칭될 수 있다. "원시 NVM"은 NVM 패키지의 외부에 구현된 호스트 컨트롤러 또는 프로세서(예를 들어, 호스트 프로세서(260))에 의해 전적으로 관리될 수 있는 메모리 장치 또는 패키지를 지시할 수 있다. 그러한 원시 NVM 구현들에서 호스트 프로세서(260)에 의해 수행되는 관리 기능들 중 하나는 메모리 시스템(250)의 피크 전력 소비를 제어하는 것일 수 있다. 호스트 프로세서(260)는 또한 도 2a의 호스트 프로세서(210) 및 NVM 컨트롤러(222)와 관련하여 위에 논의된 다른 메모리 관리 및 액세스 기능들 중 임의의 것을 수행할 수 있다.
도 2a 및 2b 둘 다를 계속 참조하여, NVM 컨트롤러(222)(도 2a) 및 호스트 프로세서(260)(예를 들어, NVM 드라이버(262)를 통해)(도 2b)는 각각 도 1과 관련하여 위에 논의된 컨트롤러(110)의 특징들 및 기능을 구현할 수 있고, NVM 다이들(224 및 274)은 도 1과 관련하여 위에 논의된 서브시스템들(120)의 특징들 및 기능을 구현할 수 있다. 특히, NVM 다이들(224 및 274)은 각각 피키한 전류 프로파일을 가질 수 있고, 여기서 최고 피크들은 다이가 그의 가장 전력 집중적인 동작들을 수행중일 때 발생한다. 플래시 메모리 실시예들에서, 그러한 전력 집중적인 동작의 예는 센싱 동작(예를 들어, 전류 센싱 동작)이고, 이는 메모리 셀들에 저장된 데이터를 판독할 때 사용될 수 있다. 그러한 센싱 동작들은, 예를 들어, 프로그래밍 후에 데이터가 제대로 저장되었는지를 검증할 때 호스트 프로세스 및/또는 NVM 컨트롤러로부터의 판독 요청들에 응답하여 수행될 수 있다.
도 2c는 예시적인 전류 소비 프로파일(290)을 보여준다. 전류 소비 프로파일(290)은 검증 유형 센싱 동작 중에 NVM 다이(예를 들어, NVM 다이들(224 또는 274) 중 하나)의 전류 소비의 예를 제공한다. 피크들(292 및 294)을 포함하는, 몇 개의 피크들로, 전류 소비 프로파일(290)은 검증 유형 센싱 동작이 얼마나 피키할 수 있는지를 예시한다. 이들 검증 유형 센싱 동작들은 특히 중요할 수 있는데, 그 이유는 이들 동작들이 복수의 NVM 다이들에 걸쳐서 동시에(즉, 복수의 다이들에 걸쳐서 병렬 기록들을 사용하는 것으로 인해) 발생할 가능성이 있을 수 있기 때문이다. 따라서, NVM 컨트롤러(222)(도 2a) 또는 호스트 프로세서(260)에 의해 관리되지 않는다면, 상이한 NVM 다이들의 피크들이 겹칠 수 있고 총 전류 합계가 받아들이기 어려울 정도로 높을 수 있다. 이러한 상황은 삭제 및 프로그램 동작들과 같은 다른 유형의 전력 집중적인 동작들과 함께 발생할 수 있다.
따라서, 위에 논의된 바와 같이, NVM 컨트롤러(222)(도 2a) 또는 호스트 프로세서(260)(도 2b)에 의해 수행되는 메모리 관리 및 액세스 기능들은, 예를 들어, 전력 집중적인 동작들을 동시에 수행할 수 있는 NVM 다이들(224 또는 274)의 수를 제한하는 것(예를 들어, 전류 피크들이 동시에 발생할 것 같지 않도록 전력 집중적인 동작들을 시차를 두고 실행하는 것)에 의해 또는 임의의 주어진 시간에 NVM 다이가 소비할 수 있는 피크 전력을 결정하는 데 NVM 다이에 도움을 주는 것에 의해, 그들 각각의 시스템들의 전체 피크 전력을 관리하도록 NVM 다이들(224 또는 274)을 제어하는 것을 더 포함할 수 있다. 이렇게 하여, NVM 컨트롤러(222)(도 2a) 또는 호스트 프로세서(260)(도 2b)는 그들 각각의 메모리 시스템들의 전체 피크 전력 소비가 너무 높아지는 것을 막을 수 있다.
도 1을 참조하면서, 도 2a 및 2b를 계속 참조하여, 컨트롤러(110)(예를 들어, NVM 컨트롤러(222)(도 2a) 또는 호스트 프로세서(260)(도 2b))는 시스템(100)의 전체 피크 전력 소비를 관리하기 위해 임의의 적당한 방법을 이용할 수 있다. 일부 실시예들에서는, 시분할 다중화 방식이 이용될 수 있는데, 여기서 컨트롤러(110)는 전력 집중적인 동작들을 수행하기 위한 시간 슬롯을 각각의 서브시스템에 할당한다. 이는 서브시스템들(120)이 그들의 전력 집중적인 동작들을 시차를 두고 실행할 수 있게 할 수 있다. 이 방법의 일례가 도 3과 관련하여 아래 기술될 것이다.
다른 실시예들에서, 컨트롤러(110)는 임의의 주어진 시간에 기껏해야 미리 결정된 수의 서브시스템들에게 전력 집중적인 동작들을 수행하는 허가를 주도록 구성될 수 있다. 예를 들어, 서브시스템들(120)은 각각 전력 집중적인 동작을 수행하기 전에 컨트롤러로부터의 허가를 요청할 수 있고, 컨트롤러(110)는 허가가 주어지는 서브시스템들(120)의 수를 관리할 수 있다. 컨트롤러(110)가 서브시스템에 허가를 줄지는, 예를 들어, 이미 허가가 주어진 서브시스템들의 예상되는 총 전류에 의존할 수 있다. 이 방법의 일례가 도 4와 관련하여 아래 기술될 것이다.
또 다른 실시예들에서, 컨트롤러(110)는 시스템에 관한 전력 상태 정보를 특정 서브시스템에 제공하여 그 특정 서브시스템에게 어떤 유형의 동작들을 수행하는 것이 적절할 수 있는지를 지시할 수 있다. 예를 들어, 전력 상태 정보는 현재 전력 집중적인 동작들을 수행중인 서브시스템들(110)의 총수를 지시할 수 있고, 또는 전력 상태 정보는 전력 집중적인 동작들을 수행중인 서브시스템들(110)에 의해 사용되는 예상되는 전류 합계를 지시할 수 있다. 이 방법의 일례가 도 5와 관련하여 아래에 기술될 것이다. 이들 3가지 방법들은 예시적인 것에 불과하고 대신에 다른 방법들이 컨트롤러(110)에 의해 구현될 수 있다는 것을 이해해야 한다.
도 3-5는 본 발명의 다양한 실시예들에 따라 구성된 시스템들에 의해 수행될 수 있는 예시적인 프로세스들의 흐름도들이다. 예를 들어, 도 1, 2a, 및 2b와 관련하여 위에 논의된 시스템들(예를 들어, 플래시 메모리 시스템, 병렬 컴퓨팅 시스템 등) 중 어느 것이라도 이들 프로세스들 중 하나 이상의 프로세스의 단계들을 수행하도록 구성될 수 있다.
우선 도 3을 보면, 시분할 다중화 방식을 이용하여 다수의 서브시스템들 사이에 전력 집중적인 동작들을 시간 지정(timing)하기 위한 예시적인 프로세스(300)의 흐름도가 도시되어 있다. 프로세스(300)는 단계 302에서 시작될 수 있다. 그 후, 단계 304에서, 각 서브시스템의 클록들이 동기화될 수 있다. 클록들은 동일한 클록(즉, 동일한 소스 클록으로부터 얻어진 클록 신호들)을 서브시스템들 각각에 공급하거나 컨트롤러를 이용하여 각 서브시스템의 내부 클록을 동기화시키는 것과 같은, 임의의 적당한 방법을 이용하여 동기화될 수 있다.
그 후, 단계 306에서, 시간이 다수의 시간 슬롯들로 분할될 수 있다. 시간 슬롯들의 수는 서브시스템들의 수에 기초할 수 있는데, 예를 들어 서브시스템마다 하나의 시간 슬롯, 2개의 서브시스템마다 하나의 시간 슬롯을 제공하는 것 등이다. 시간 슬롯들은 길이가 N 클록 사이클과 같은 임의의 적당한 길이를 가질 수 있고, 여기서 N은 임의의 적당한 양의 정수일 수 있다. 예를 들어, 4개의 서브시스템이 있다면, 단계 306은 각각 N 클록 사이클의 4개의 시간 슬롯 사이에 생성하고 회전하는 것을 포함할 수 있다.
단계 308로 계속하여, 각 서브시스템이 시간 슬롯들 중 하나에 할당될 수 있다. 특정 서브시스템에 할당된 시간 슬롯 동안에, 그 서브시스템은 플래시 메모리 시스템들에서의 프로그램 동작과 같은 임의의 전력 집중적인 동작들을 수행할 수 있다. 특정 서브시스템에 할당되지 않은 시간 슬롯 동안에, 그 서브시스템은 전력 집중적인 동작들을 수행하는 것을 미룰 수 있고, 대신에 그동안에 그의 할당된 시간 슬롯이 시작될 때까지 정지(stall)하거나 및/또는 비-전력 집중적인 동작들을 수행할 수 있다. 일부 실시예들에서, 각 서브시스템은 시간 슬롯들 중 상이한 시간 슬롯에 할당될 수 있어, 임의의 주어진 시간에 하나의 서브시스템만이 전력 집중적인 동작들을 수행할 수 있다. 다른 실시예들에서는, 1개보다 많은(그러나 전부보다는 적은) 서브시스템들이 동일한 시간 슬롯에 할당될 수 있다. 이 시분할 다중화 방식을 이용하는 것에 의해, 피크 전력이 제한될 수 있는데, 그 이유는 이러한 방식은 전력 집중적인 동작들이 시차를 두고 실행되는 것을 보증할 수 있기 때문이다.
프로세스(300)는 단계 310으로 계속되어 종료할 수 있다. 다른 실시예들에서, 프로세스(300)는 서브시스템들의 클록들이 동기로 유지되기 위해 주기적으로 조정될 필요가 있을 수 있는 실시예들에서 적당한 양의 시간 후에 단계 302로 되돌아갈 수 있다.
이제 도 4를 보면, 컨트롤러로의 요청들을 이용하여 다수의 서브시스템들 사이에 전력 집중적인 동작들을 동기화시키기 위한 예시적인 프로세스의 흐름도가 도시되어 있다. 프로세스(400)는 단계 402에서 시작될 수 있다. 그 후, 단계 404에서, 시스템 내의 서브시스템들 중 하나(도 4에서 제1 서브시스템이라고 함)가 전력 집중적인 동작을 시작하기로 결정할 수 있다. 예를 들어, 플래시 메모리 시스템에서는, 플래시 다이들 중 하나에 대한 다음 큐잉된(queued) 동작이 (예를 들어, 판독-검증 동작 내에) 데이터를 판독하기 위한 센싱 동작과 같은 전력 집중적인 동작일 수 있다.
단계 406에서, 서브시스템은 시스템의 컨트롤러(예를 들어, 비휘발성 메모리 시스템에 대한 NVM 드라이버 또는 컨트롤러)에 전력 집중적인 동작을 시작하기 위한 요청을 제공할 수 있다. 예를 들어, 서브시스템은 이 목적에 전용되는 물리적 통신 링크를 통해, 적당한 통신 프로토콜 또는 인터페이스를 통해 적당한 명령을 발행하는 것에 의해, 또는 임의의 다른 적당한 방법을 이용하여, 전력 집중적인 동작을 수행하는 허가를 컨트롤러에 요청할 수 있다.
그 후 컨트롤러는, 단계 408에서, 하나 이상의 다른 서브시스템이 전력 집중적인 동작들을 수행하고 있는지를 결정할 수 있다. 일부 실시예들에서, 컨트롤러는 컨트롤러가 이미 미리 결정된 수(예를 들어, 1개, 2개, 등)보다 많은 다른 서브시스템들에 전력 집중적인 동작을 수행하는 허가를 승인했는지 그리고 이들 동작들이 아직 완료되지 않은 것을 검증하는 것에 의해 이러한 결정을 할 수 있다. 단계 410에서, 컨트롤러는 서브시스템이 전력 집중적인 동작을 수행하도록 허용할지를 결정할 수 있다. 일부 실시예들에서, 컨트롤러는 미리 결정된 수의 다른 시스템들이 현재 전력 집중적인 동작들을 수행하고 있다면 그 동작을 허용하지 않을 수 있고, 그렇지 않다면 그 동작을 허용할 수 있다.
일부 실시예들에서, 단계 408에서의 결정은 전력 집중적인 동작들을 수행하고 있는 하나 이상의 다른 서브시스템들의 예상된 결합 피크 전류를 결정하는 것을 더 포함할 수 있다. 이렇게 하여, 단계 410에서, 전력 집중적인 동작들을 수행하는 다른 서브시스템들의 수에 기초하여 동작이 진행되도록 허용하는(또는 허용하지 않는) 대신에, 컨트롤러는 예상된 전류 사용량에 기초하여 이러한 결정을 할 수 있다. 컨트롤러는, 예를 들어, 전력 소비가 적은 전력 집중적인 동작들을 수행하고 있는 몇 개의 서브시스템들이 있다면 동작을 허용하기로 결정할 수 있지만, 전력 소비가 많은 전력 집중적인 동작들을 수행하고 있는 더 적은 수의 서브시스템(예를 들어, 1개의 다른 서브시스템)이 있다면 동작을 허용하지 않기로 결정할 수 있다.
단계 410에서, 컨트롤러가 동작이 허용되지 않아야 한다고 결정하면, 프로세스(400)는 단계 412로 이동할 수 있고, 컨트롤러로부터 서브시스템으로, 전력 집중적인 동작을 수행하는 것을 기다리라는 신호가 제공될 수 있다. 그 신호는 전용 물리적 라인 상의 신호로서, 적당한 프로토콜 또는 인터페이스를 이용한 적당한 명령으로서, 등과 같은, 임의의 적당한 형태로 제공될 수 있다. 이렇게 하여, 서브시스템은 그 동작을 수행하는 것을 미루도록 명령받을 수 있고, 대신에 그동안에 더 이상의 동작들을 정지하거나 다른 비-전력 집중적인 동작들을 수행할 수 있다. 이것은 너무 많은 서브시스템들이 동시에 전력 집중적인 동작들을 수행하고 있지 않은 것, 또는 전체 시스템의 피크 전류가 소정의 포인트를 초과하여 증가하지 않는 것을 보증할 수 있다. 그 후 프로세스(400)는 단계 410으로 되돌아가서 전력 집중적인 동작이 컨트롤러에 의해 허용될 수 있는지(예를 들어, 하나 이상의 서브시스템들이 전력 집중적인 동작의 수행을 완료했는지)를 다시 결정할 수 있다.
단계 410에서, 컨트롤러가 전력 집중적인 동작이 허용되어야 한다고 결정하면, 프로세스(400)는 단계 414로 이동할 수 있다. 단계 414에서, 컨트롤러로부터 서브시스템으로, 전력 집중적인 동작을 진행하라는 허가가 제공될 수 있다. 그 허가는, 예를 들어, 전용 물리적 라인 상의 신호로서, 적당한 프로토콜 또는 인터페이스를 이용한 적당한 명령으로서, 또는 임의의 다른 적당한 방법을 이용하여 제공될 수 있다. 그 후, 단계 416에서, 전력 집중적인 동작이 서브시스템에 의해 수행될 수 있다. 서브시스템이 전력 집중적인 동작의 수행을 완료하면, 서브시스템은 단계 418에서 전력 집중적인 동작의 완료를 컨트롤러에 지시할 수 있다. 그 지시는 컨트롤러로의 명시된 지시일 수 있고 또는 서브시스템이 그 동작의 결과(예를 들어, 플래시 메모리 시스템의 경우, 판독 동작으로부터의 임의의 결과 데이터)를 제공할 때 컨트롤러가 전력 집중적인 동작의 완료를 추론할 수 있다. 이렇게 하여, 컨트롤러는 전력 집중적인 동작을 수행하는 허가를 다른 서브시스템에 승인할 수 있다.
그 후 프로세스(400)는 단계 420에서 종료할 수 있다.
이제 도 5를 보면, 시스템의 전력 상태 정보를 서브시스템에 제공하는 것에 의해 다수의 서브시스템들(예를 들어, 플래시 다이들) 사이에 전력 집중적인 동작들을 관리하기 위한 예시적인 프로세스(500)의 흐름도가 도시되어 있다. 프로세스(500)는 단계 502에서 시작될 수 있다. 단계 504에서, 전력 집중적인 동작들을 수행하고 있는 서브시스템들의 수가, 예를 들어, 그 서브시스템들을 제어할 수 있는 컨트롤러에 의해 결정될 수 있다. 예를 들어, 전술한 기법들 중 임의의 것을 이용하여, 서브시스템들은 각각 서브시스템이 전력 집중적인 동작을 시작하거나 종료할 때 컨트롤러에 신호하도록 구성될 수 있다. 이렇게 하여, 컨트롤러는 임의의 주어진 시간에 전력 집중적인 동작들을 수행하고 있는 서브시스템들의 수를 계속 추적할 수 있다.
그 후, 단계 506에서, 전력 집중적인 동작들을 수행하고 있는 서브시스템들의 수에 대한 지시가 컨트롤러로부터 서브시스템들 중 하나 이상의 서브시스템에 제공될 수 있다. 그 지시는 시스템 내의 모든 서브시스템들에 또는 전력 집중적인 동작들을 수행하고 있는 모든 서브시스템들에 제공될 수 있다. 그 지시는 임의의 적당한 시간에 또는 임의의 적당한 자극에 응답하여, 예를 들어 서브시스템이 막 전력 집중적인 동작을 수행하려 하고 있다는 지시를 서브시스템으로부터 수신하는 것에 응답하여 제공될 수 있다. 이렇게 하여, 서브시스템이 전력 집중적인 동작을 셋업할 때, 서브시스템은 몇 개의 다른 서브시스템들이 또한 전력 집중적인 동작을 수행하고 있는지를 통지받을 수 있다.
그 후 프로세스(500)는 단계 506으로 계속될 수 있다. 단계 506에서는, 전력 집중적인 동작들을 수행하고 있는 서브시스템들의 수에 기초하여 서브시스템에서 동작들이 수행될 수 있다. 종종, 동작을 수행하고 있을 때, 서브시스템은 속도와 전력의 균형을 유지할 수 있다(즉, 서브시스템은 전력 소비가 증가하는 것을 대가로 고속으로 동작을 수행할 수 있고, 또는 서브시스템은 동작을 완료하는 데 더 오래 걸리는 것을 대가로 저전력으로 동작을 수행할 수 있다). 예를 들어, 서브시스템은 계산들을 직렬화하는 대신에 그것들을 병렬화하는 것에 의해, 또는 충전 펌프를 더 고속으로 충전하는 것에 의해 전력을 대가로 속도를 증가시킬 수 있다. 따라서, 단계 506에서, 서브시스템이 그것이 전력 집중적인 동작을 수행하고 있는 유일한 서브시스템이라는 지시를 수신하면, 그 서브시스템은 더 고속/최고속, 더 고전력/최고전력 방식을 이용할 수 있다. 전력 집중적인 동작들을 수행하고 있는 서브시스템들의 수가 많을수록, 특정 서브시스템은 더 적은 전력을 사용하기로 결정할 수 있다. 서브시스템이 더 저속, 더 저전력 방식을 사용하기로 결정할지라도, 시스템의 전체 속도가 향상될 수 있는데, 그 이유는 각 서브시스템이 더 고전력 모드에서 동작했을 경우에 가능한 것보다 더 많은 서브시스템들이 동시에 동작할 수 있기 때문이다.
그 후 프로세스(500)는 단계 510에서 종료할 수 있다.
도 3-5의 프로세스들(300, 400, 및 500)은 단지 예시적인 것이라는 것을 이해해야 한다. 본 발명의 범위에서 벗어나지 않고, 그 단계들 중 어느 것이든 제거되거나, 수정되거나, 조합될 수 있고, 임의의 추가 단계들이 추가될 수 있다.
설명된 본 발명의 실시예들은 제한을 위해서가 아니라 예시를 위하여 제시되었다.

Claims (18)

  1. 비휘발성 메모리 시스템으로서,
    복수의 메모리 다이; 및
    컨트롤러
    를 포함하고, 상기 컨트롤러는,
    상기 다이들 중 많아도(at most) 일정 개수의 다이들이 동시에 동작들을 수행하는 것을 허가하고 - 상기 동작들은 프로그램 동작들, 판독 동작들 및 삭제 동작들로부터 선택된 다이 액세스 동작들임 - ,
    가용 전력의 지시(indication)를 수신하고,
    상기 개수를 상기 수신한 지시에 기초하여 조정하도록 구성되는,
    비휘발성 메모리 시스템.
  2. 제1항에 있어서, 상기 동작들은 센싱 동작들을 포함하는, 비휘발성 메모리 시스템.
  3. 제1항에 있어서, 상기 컨트롤러는 적어도 하나의 동작의 예상된 전류 사용량에 기초하여 상기 개수를 조정하도록 더 구성되는, 비휘발성 메모리 시스템.
  4. 제1항에 있어서, 상기 컨트롤러는 수행중에 있는 동작의 유형에 기초하여 상기 개수를 조정하도록 더 구성되는, 비휘발성 메모리 시스템.
  5. 제1항에 있어서, 상기 동작은 상기 비휘발성 메모리 시스템 외의 시스템에 대한 전력의 가용량에 영향을 미칠 수 있는 전력 집중적인 동작인, 비휘발성 메모리 시스템.
  6. 복수의 메모리 서브시스템을 포함하는 비휘발성 메모리 시스템에서 피크 전력 소비를 관리하는 방법으로서,
    상기 메모리 서브시스템들 각각의 클록들을 동기화하는 단계 - 상기 각각의 메모리 서브시스템은 반도체 메모리 다이들을 포함함 - ; 및
    상기 메모리 서브시스템들 각각에, 동작들을 수행하기 위한 시간 슬롯을 할당하는 단계 - 상기 동작은 상기 비휘발성 메모리 시스템 외의 시스템에 대한 전력의 가용량에 영향을 미칠 수 있는 전력 집중적인 동작임 -
    를 포함하는, 방법.
  7. 제6항에 있어서, 상기 동작은 프로그램 동작인, 방법.
  8. 제6항에 있어서, 상기 동작은 판독 동작인, 방법.
  9. 제6항에 있어서, 상기 동작은 삭제 동작인, 방법.
  10. 제6항에 있어서, 상기 동기화하는 단계는 상기 메모리 시스템들의 각각에 동일한 클록 소스로부터 얻어진 클록 신호를 공급(feeding)하는 단계를 포함하는, 방법.
  11. 제6항에 있어서, 상기 메모리 서브시스템들의 각각은 내부 클록을 포함하고, 상기 동기화하는 단계는 상기 메모리 서브시스템들의 각각의 상기 내부 클록을 동기화하는 단계를 포함하는, 방법.
  12. 제6항에 있어서, 상기 시간 슬롯들은 상기 메모리 서브시스템들의 개수에 기초하고, 상기 시간 슬롯들은 계속적으로 반복하는, 방법.
  13. 제6항에 있어서,
    상기 메모리 서브시스템들 중 하나의 메모리 서브시스템에서 동작을 수행하기로 결정하는 단계;
    상기 메모리 서브시스템들 중 상기 하나의 메모리 서브시스템이 현재 시간 슬롯에 할당되었는지를 판정하는 단계; 및
    상기 메모리 서브시스템들 중 상기 하나의 메모리 서브시스템이 상기 현재 시간 슬롯에 할당되었는지에 기초하여 상기 동작을 수행하는 단계
    를 더 포함하는, 방법.
  14. 시스템의 전력 소모를 제어하기 위한 방법으로서,
    상기 시스템은 복수의 서브시스템을 포함하고, 상기 서브시스템들 중 하나는 데이터를 저장하는 적어도 하나의 반도체 메모리 다이를 포함하는 메모리 서브시스템이고, 상기 방법은:
    상기 메모리 서브시스템에서, 동작을 시작하기로 결정하는 단계 - 상기 동작은 판독, 프로그램, 및 삭제 동작 중 하나를 포함함 -;
    상기 동작을 시작하기 위한 컨트롤러부터의 허가를 요청하는 단계;
    상기 컨트롤러에서, 상기 서브시스템들 중 상기 메모리 서브시스템 외의 적어도 하나의 서브시스템이 상기 메모리 서브시스템에 의해 이용되기 위한 가용 전력에 영향을 미치는 동작을 수행하고 있는지를 판정하는 단계;
    상기 판정의 결과에 기초하여 상기 메모리 서브시스템에 허가를 줄지 여부를 선택하는 단계; 및
    상기 메모리 서브시스템에 상기 선택을 지시하는 단계 - 상기 메모리 서브시스템은 상기 선택에 기초하여 선택된 전력 스킴에 따라 상기 동작을 수행함 -
    를 포함하고,
    상기 선택하는 단계는 상기 메모리 서브시스템에 상기 메모리 서브시스템에 의해 이용되기 위한 가용 전력에 영향을 미치는 동작들을 수행하고 있는 다른 서브시스템들의 개수를 제공하는 단계를 포함하고, 상기 메모리 서브시스템은 상기 개수에 기초하여 상기 전력 스킴을 선택하고, 상기 선택된 전력 스킴은 상기 개수에 기초하여 높은 속도, 높은 전력 동작들과 낮은 속도, 낮은 전력 동작들 사이에서 균형을 유지하는(trade off),
    방법.
  15. 제14항에 있어서, 상기 선택하는 단계는 사전 결정된 개수보다 적은 상기 메모리 서브시스템 외의 서브시스템들이 상기 메모리 서브시스템에 의해 사용되기 위한 가용 전력에 영향을 미치는 동작들을 수행하고 있을 때 허가를 주는 단계를 포함하는, 방법.
  16. 제14항에 있어서, 상기 메모리 서브시스템은 비휘발성 메모리 서브시스템인, 방법.
  17. 제14항에 있어서,
    동작들을 수행하고 있는 상기 메모리 서브시스템 외의 서브시스템들 중의 상기 적어도 하나의 서브시스템의 결합된 전류 사용량(combined current usage)을 결정하는 단계
    를 더 포함하고,
    상기 선택하는 단계는 상기 결합된 전류 사용량에 기초하는,
    방법.
  18. 제14항에 있어서,
    상기 메모리 서브시스템에서 상기 동작을 시작하기 위한 허가를 수신하는 것에 응답하여, 상기 동작을 수행하는 단계; 및
    상기 메모리 서브시스템의 상기 동작이 완료되었을 때 상기 컨트롤러에게 지시하는 단계
    를 더 포함하는, 방법.
KR1020147021723A 2010-01-11 2011-01-11 전류 스파이크를 제한하기 위한 동작들의 제어 및 시차를 둔 실행 KR20140102771A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US29406010P 2010-01-11 2010-01-11
US61/294,060 2010-01-11
US12/843,419 2010-07-26
US12/843,419 US20110173462A1 (en) 2010-01-11 2010-07-26 Controlling and staggering operations to limit current spikes
PCT/US2011/020801 WO2011085357A2 (en) 2010-01-11 2011-01-11 Controlling and staggering operations to limit current spikes

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020127021161A Division KR20120116976A (ko) 2010-01-11 2011-01-11 전류 스파이크를 제한하기 위한 동작들의 제어 및 시차를 둔 실행

Publications (1)

Publication Number Publication Date
KR20140102771A true KR20140102771A (ko) 2014-08-22

Family

ID=44259439

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020127021161A KR20120116976A (ko) 2010-01-11 2011-01-11 전류 스파이크를 제한하기 위한 동작들의 제어 및 시차를 둔 실행
KR1020147021723A KR20140102771A (ko) 2010-01-11 2011-01-11 전류 스파이크를 제한하기 위한 동작들의 제어 및 시차를 둔 실행
KR1020127021807A KR20120098968A (ko) 2010-01-11 2011-01-11 전류 스파이크를 제한하기 위한 동작들의 제어 및 시차를 둔 실행

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020127021161A KR20120116976A (ko) 2010-01-11 2011-01-11 전류 스파이크를 제한하기 위한 동작들의 제어 및 시차를 둔 실행

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020127021807A KR20120098968A (ko) 2010-01-11 2011-01-11 전류 스파이크를 제한하기 위한 동작들의 제어 및 시차를 둔 실행

Country Status (9)

Country Link
US (2) US20110173462A1 (ko)
EP (1) EP2524271A2 (ko)
JP (1) JP2013516716A (ko)
KR (3) KR20120116976A (ko)
CN (1) CN102782607A (ko)
AU (2) AU2011203893B2 (ko)
BR (1) BR112012017020A2 (ko)
MX (1) MX2012008096A (ko)
WO (1) WO2011085357A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10891075B2 (en) 2018-02-01 2021-01-12 SK Hynix Inc. Memory system and operating method thereof

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011233114A (ja) * 2010-04-30 2011-11-17 Toshiba Corp メモリシステム
US8555095B2 (en) 2010-07-26 2013-10-08 Apple Inc. Methods and systems for dynamically controlling operations in a non-volatile memory to limit power consumption
US8826051B2 (en) 2010-07-26 2014-09-02 Apple Inc. Dynamic allocation of power budget to a system having non-volatile memory and a processor
US9261940B2 (en) * 2011-02-25 2016-02-16 Samsung Electronics Co., Ltd. Memory system controlling peak current generation for a plurality of memories by monitoring a peak signal to synchronize an internal clock of each memory by a processor clock at different times
US20120221767A1 (en) 2011-02-28 2012-08-30 Apple Inc. Efficient buffering for a system having non-volatile memory
JP5713772B2 (ja) * 2011-04-12 2015-05-07 株式会社東芝 半導体メモリシステム
US8645723B2 (en) 2011-05-11 2014-02-04 Apple Inc. Asynchronous management of access requests to control power consumption
US8400864B1 (en) * 2011-11-01 2013-03-19 Apple Inc. Mechanism for peak power management in a memory
CN104115091B (zh) * 2011-12-30 2017-12-26 英特尔公司 多层级cpu高电流保护
US9417685B2 (en) * 2013-01-07 2016-08-16 Micron Technology, Inc. Power management
US9477257B1 (en) * 2013-03-13 2016-10-25 Juniper Networks, Inc. Methods and apparatus for limiting a number of current changes while clock gating to manage power consumption of processor modules
US9979190B2 (en) 2013-03-13 2018-05-22 Philips Lighting Holding B.V. System and method for energy shedding
US9368214B2 (en) 2013-10-03 2016-06-14 Apple Inc. Programmable peak-current control in non-volatile memory devices
US9361951B2 (en) 2014-01-14 2016-06-07 Apple Inc. Statistical peak-current management in non-volatile memory devices
US9293176B2 (en) 2014-02-18 2016-03-22 Micron Technology, Inc. Power management
US9343116B2 (en) 2014-05-28 2016-05-17 Micron Technology, Inc. Providing power availability information to memory
EP2999113B1 (en) 2014-09-16 2019-08-07 Nxp B.V. Amplifier
US10013345B2 (en) * 2014-09-17 2018-07-03 Sandisk Technologies Llc Storage module and method for scheduling memory operations for peak-power management and balancing
US20160162215A1 (en) * 2014-12-08 2016-06-09 Sandisk Technologies Inc. Meta plane operations for a storage device
US9536617B2 (en) * 2015-04-03 2017-01-03 Sandisk Technologies Llc Ad hoc digital multi-die polling for peak ICC management
US9875049B2 (en) * 2015-08-24 2018-01-23 Sandisk Technologies Llc Memory system and method for reducing peak current consumption
US10120817B2 (en) * 2015-09-30 2018-11-06 Toshiba Memory Corporation Device and method for scheduling commands in a solid state drive to reduce peak power consumption levels
US10095412B2 (en) * 2015-11-12 2018-10-09 Sandisk Technologies Llc Memory system and method for improving write performance in a multi-die environment
KR102603245B1 (ko) 2018-01-11 2023-11-16 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
KR20190109872A (ko) 2018-03-19 2019-09-27 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
KR20200036627A (ko) * 2018-09-28 2020-04-07 에스케이하이닉스 주식회사 메모리 시스템 및 이의 동작 방법
US11454941B2 (en) 2019-07-12 2022-09-27 Micron Technology, Inc. Peak power management of dice in a power network
US11079829B2 (en) 2019-07-12 2021-08-03 Micron Technology, Inc. Peak power management of dice in a power network
US11442525B2 (en) * 2019-08-23 2022-09-13 Micron Technology, Inc. Power management
CN110739019A (zh) * 2019-09-16 2020-01-31 长江存储科技有限责任公司 一种新的存储器装置及操作方法
US11175837B2 (en) * 2020-03-16 2021-11-16 Micron Technology, Inc. Quantization of peak power for allocation to memory dice
US11256591B2 (en) 2020-06-03 2022-02-22 Western Digital Technologies, Inc. Die memory operation scheduling plan for power control in an integrated memory assembly
US11226772B1 (en) 2020-06-25 2022-01-18 Sandisk Technologies Llc Peak power reduction management in non-volatile storage by delaying start times operations
CN114625307A (zh) 2020-12-14 2022-06-14 慧荣科技股份有限公司 计算机可读存储介质、闪存芯片的数据读取方法及装置
TWI747660B (zh) * 2020-12-14 2021-11-21 慧榮科技股份有限公司 多閃存晶片的資料讀取方法及裝置以及電腦程式產品
US11373710B1 (en) 2021-02-02 2022-06-28 Sandisk Technologies Llc Time division peak power management for non-volatile storage
US11508450B1 (en) 2021-06-18 2022-11-22 Western Digital Technologies, Inc. Dual time domain control for dynamic staggering
US20240078025A1 (en) * 2022-09-06 2024-03-07 Western Digital Technologies, Inc. Asymmetric Time Division Peak Power Management (TD-PPM) Timing Windows
US11893253B1 (en) 2022-09-20 2024-02-06 Western Digital Technologies, Inc. Dynamic TD-PPM state and die mapping in multi-NAND channels

Family Cites Families (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4939694A (en) * 1986-11-03 1990-07-03 Hewlett-Packard Company Defect tolerant self-testing self-repairing memory system
US5822256A (en) * 1994-09-06 1998-10-13 Intel Corporation Method and circuitry for usage of partially functional nonvolatile memory
US5724592A (en) * 1995-03-31 1998-03-03 Intel Corporation Method and apparatus for managing active power consumption in a microprocessor controlled storage device
JPH11242632A (ja) * 1998-02-26 1999-09-07 Hitachi Ltd メモリ装置
US6233693B1 (en) * 1998-05-06 2001-05-15 International Business Machines Corporation Smart DASD spin-up
US6748493B1 (en) * 1998-11-30 2004-06-08 International Business Machines Corporation Method and apparatus for managing memory operations in a data processing system using a store buffer
US6478441B2 (en) * 1999-03-25 2002-11-12 Sky City International Limited Hand held light apparatus
US6748441B1 (en) * 1999-12-02 2004-06-08 Microsoft Corporation Data carousel receiving and caching
JP4694040B2 (ja) * 2001-05-29 2011-06-01 ルネサスエレクトロニクス株式会社 半導体記憶装置
JP4841070B2 (ja) * 2001-07-24 2011-12-21 パナソニック株式会社 記憶装置
US6643169B2 (en) * 2001-09-18 2003-11-04 Intel Corporation Variable level memory
US6925573B2 (en) * 2002-01-02 2005-08-02 Intel Corporation Method and apparatus to manage use of system power within a given specification
US6857055B2 (en) * 2002-08-15 2005-02-15 Micron Technology Inc. Programmable embedded DRAM current monitor
US7210004B2 (en) * 2003-06-26 2007-04-24 Copan Systems Method and system for background processing of data in a storage system
US7441133B2 (en) * 2002-10-15 2008-10-21 Microsemi Corp. - Analog Mixed Signal Group Ltd. Rack level power management for power over Ethernet
US7400062B2 (en) * 2002-10-15 2008-07-15 Microsemi Corp. - Analog Mixed Signal Group Ltd. Rack level power management
US6865107B2 (en) * 2003-06-23 2005-03-08 Hewlett-Packard Development Company, L.P. Magnetic memory device
US20050210304A1 (en) * 2003-06-26 2005-09-22 Copan Systems Method and apparatus for power-efficient high-capacity scalable storage system
US7155623B2 (en) * 2003-12-03 2006-12-26 International Business Machines Corporation Method and system for power management including local bounding of device group power consumption
CN100435069C (zh) * 2004-05-10 2008-11-19 美高森美股份有限公司-模拟混合信号集团有限公司 用于快速减小端口电源的方法
US7353407B2 (en) * 2004-05-20 2008-04-01 Cisco Technology, Inc. Methods and apparatus for provisioning phantom power to remote devices
US7418608B2 (en) * 2004-06-17 2008-08-26 Intel Corporation Method and an apparatus for managing power consumption of a server
US7899480B2 (en) * 2004-09-09 2011-03-01 Qualcomm Incorporated Apparatus, system, and method for managing transmission power in a wireless communication system
US7305572B1 (en) * 2004-09-27 2007-12-04 Emc Corporation Disk drive input sequencing for staggered drive spin-up
JP2006185407A (ja) * 2004-12-01 2006-07-13 Matsushita Electric Ind Co Ltd ピーク電力制御方法および装置
JP2006195569A (ja) * 2005-01-11 2006-07-27 Sony Corp 記憶装置
US7285079B2 (en) * 2005-03-16 2007-10-23 Steven T. Mandell Exercise device and methods
US7440215B1 (en) * 2005-03-30 2008-10-21 Emc Corporation Managing disk drive spin up
US7539882B2 (en) * 2005-05-30 2009-05-26 Rambus Inc. Self-powered devices and methods
US7444526B2 (en) * 2005-06-16 2008-10-28 International Business Machines Corporation Performance conserving method for reducing power consumption in a server system
US7647516B2 (en) * 2005-09-22 2010-01-12 Hewlett-Packard Development Company, L.P. Power consumption management among compute nodes
US20070211551A1 (en) * 2005-11-25 2007-09-13 Yoav Yogev Method for dynamic performance optimization conforming to a dynamic maximum current level
US7681054B2 (en) * 2006-10-03 2010-03-16 International Business Machines Corporation Processing performance improvement using activity factor headroom
US7793126B2 (en) * 2007-01-19 2010-09-07 Microsoft Corporation Using priorities and power usage to allocate power budget
JP4851962B2 (ja) * 2007-02-28 2012-01-11 株式会社東芝 メモリシステム
US8046600B2 (en) * 2007-10-29 2011-10-25 Microsoft Corporation Collaborative power sharing between computing devices
US7961544B2 (en) * 2008-08-05 2011-06-14 Sandisk Il Ltd. Storage system and method for managing a plurality of storage devices
JP5489434B2 (ja) * 2008-08-25 2014-05-14 株式会社日立製作所 フラッシュメモリ搭載ストレージ装置
US8386808B2 (en) * 2008-12-22 2013-02-26 Intel Corporation Adaptive power budget allocation between multiple components in a computing system
US20100162024A1 (en) * 2008-12-24 2010-06-24 Benjamin Kuris Enabling a Charge Limited Device to Operate for a Desired Period of Time
KR101005997B1 (ko) * 2009-01-29 2011-01-05 주식회사 하이닉스반도체 불휘발성 메모리 장치 및 그 동작 방법
US8281227B2 (en) * 2009-05-18 2012-10-02 Fusion-10, Inc. Apparatus, system, and method to increase data integrity in a redundant storage system
US8307258B2 (en) * 2009-05-18 2012-11-06 Fusion-10, Inc Apparatus, system, and method for reconfiguring an array to operate with less storage elements
US8627117B2 (en) * 2009-06-26 2014-01-07 Seagate Technology Llc Device with power control feature involving backup power reservoir circuit
JP5187776B2 (ja) * 2010-04-13 2013-04-24 日本電気株式会社 電気機器
US8826051B2 (en) * 2010-07-26 2014-09-02 Apple Inc. Dynamic allocation of power budget to a system having non-volatile memory and a processor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10891075B2 (en) 2018-02-01 2021-01-12 SK Hynix Inc. Memory system and operating method thereof

Also Published As

Publication number Publication date
MX2012008096A (es) 2012-12-17
AU2014202877A1 (en) 2014-06-19
KR20120098968A (ko) 2012-09-05
AU2011203893A1 (en) 2012-08-09
CN102782607A (zh) 2012-11-14
JP2013516716A (ja) 2013-05-13
EP2524271A2 (en) 2012-11-21
WO2011085357A2 (en) 2011-07-14
US20140112079A1 (en) 2014-04-24
KR20120116976A (ko) 2012-10-23
WO2011085357A3 (en) 2011-09-01
US20110173462A1 (en) 2011-07-14
BR112012017020A2 (pt) 2016-04-05
AU2011203893B2 (en) 2014-12-11

Similar Documents

Publication Publication Date Title
KR20140102771A (ko) 전류 스파이크를 제한하기 위한 동작들의 제어 및 시차를 둔 실행
US11216323B2 (en) Solid state memory system with low power error correction mechanism and method of operation thereof
TWI598882B (zh) 用於具有非揮發性記憶體之一系統的電力預算的動態分配
US9996460B2 (en) Storage device, system including storage device and method of operating the same
JP5722728B2 (ja) 電力消費を制限するように不揮発性メモリの動作を動的に制御する方法及びシステム
US10241701B2 (en) Solid state memory system with power management mechanism and method of operation thereof
US11237617B2 (en) Arbitration techniques for managed memory
US11914897B2 (en) Arbitration techniques for managed memory
KR102318541B1 (ko) 전력 소비를 제어하는 시스템 및 방법
US20170092366A1 (en) Operating method of nonvolatile memory system
US11687277B2 (en) Arbitration techniques for managed memory
WO2009046115A1 (en) Flash memory controller
US20170131924A1 (en) Data retention charge loss sensor
US11847327B2 (en) Centralized power management in memory devices
AU2014100558B4 (en) Controlling and staggering operations to limit current spikes
CN116126214A (zh) 存储器控制器和包括其的存储器系统的操作方法

Legal Events

Date Code Title Description
A107 Divisional application of patent
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid