KR101266580B1 - 메모리 디바이스에 대한 인덱스된 레지스터 액세스 - Google Patents

메모리 디바이스에 대한 인덱스된 레지스터 액세스 Download PDF

Info

Publication number
KR101266580B1
KR101266580B1 KR1020110041698A KR20110041698A KR101266580B1 KR 101266580 B1 KR101266580 B1 KR 101266580B1 KR 1020110041698 A KR1020110041698 A KR 1020110041698A KR 20110041698 A KR20110041698 A KR 20110041698A KR 101266580 B1 KR101266580 B1 KR 101266580B1
Authority
KR
South Korea
Prior art keywords
register
index value
memory device
clock domain
implemented
Prior art date
Application number
KR1020110041698A
Other languages
English (en)
Other versions
KR20110121594A (ko
Inventor
마르코 페라리오
다니엘레 발루치
Original Assignee
마이크론 테크놀로지, 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크론 테크놀로지, 인크. filed Critical 마이크론 테크놀로지, 인크.
Publication of KR20110121594A publication Critical patent/KR20110121594A/ko
Application granted granted Critical
Publication of KR101266580B1 publication Critical patent/KR101266580B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/106Data output latches
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1066Output synchronization
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1087Data input latches
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1093Input synchronization

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)
  • Executing Machine-Instructions (AREA)
  • Microcomputers (AREA)

Abstract

비휘발성 메모리 디바이스의 예시적인 실시예들은 메모리 디바이스의 하나 이상의 입력 단자들에서 인덱스 값을 수신하는 것 및 메모리 디바이스의 제 1 레지스터에 인덱스 값을 저장하는 것을 포함한다. 제 1 레지스터는 제 1 클록 도메인에 구현될 수 있고, 인덱스 값은 제 2 클록 도메인에 구현된 메모리 디바이스의 제 2 레지스터를 식별할 수 있다.

Description

메모리 디바이스에 대한 인덱스된 레지스터 액세스{INDEXED REGISTER ACCESS FOR MEMORY DEVICE}
본 출원은 2010년 4월 30일자로 출원된 이탈리아 특허 출원 번호 MI2010A000761로부터 우선권을 주장한다.
본 발명은 메모리 디바이스 내에 위치하는 레지스터들의 액세스에 관한 것으로서, 구체적으로는 메모리 디바이스 내의 레지스터들에 대한 인덱스된 레지스터 액세스에 관한 것일 수 있다.
플래시 메모리 디바이스와 같은 비휘발성 메모리 디바이스 유형들을 포함하는 메모리 디바이스들은 광범위한 전자 디바이스들에서 발견될 수 있다. 특히, 플래시 메모리 디바이스들은 컴퓨터, 디지털 카메라, 셀룰러 전화, 개인용 휴대 단말기 등에서 사용될 수 있다. 메모리 디바이스들은 다양한 유형의 정보를 저장하기 위한 하나 이상의 레지스터를 포함할 수 있다. 레지스터들은 예를 들어 메모리 디바이스의 직렬 또는 병렬 입출력 인터페이스에 의해 공유되는 클록 도메인과 같은 메모리 디바이스 상의 비교적 고속 클록 도메인 내에 구현될 수 있다.
청구 대상은 명세서의 끝 부분에서 구체적으로 지시되고 명확하게 청구된다. 그러나, 본 발명의 목적들, 특징들 또는 이점들과 더불어, 그 구성 및 동작 방법 모두는 첨부된 도면들과 함께 검토될 경우 아래의 상세한 설명을 참조하여 가장 잘 이해될 수 있다.
도 1은 컴퓨터 플랫폼의 일 실시예를 나타내는 개략 블록도.
도 2는 비휘발성 메모리 디바이스의 일 실시예를 나타내는 개략 블록도.
도 3은 예시적인 메모리 디바이스에 대한 인덱스된 레지스터 액세스를 위한 레지스터 구성의 일 실시예를 나타내는 개략 블록도.
도 4는 예시적인 메모리 디바이스에 대한 인덱스된 레지스터 액세스를 위한 레지스터 구성의 일 실시예를 나타내는 개략 블록도.
도 5는 예시적인 메모리 디바이스에 대한 인덱스된 레지스터 액세스를 위한 프로세스의 일 실시예를 나타내는 흐름도.
아래의 상세한 설명에서는, 그 일부를 형성하는 첨부 도면들을 참조하며, 도면들 전반에서 동일한 번호들은 대응하거나 유사한 요소들을 지시하기 위하여 동일한 부분들을 지시할 수 있다. 도시의 간략화 또는 명료화를 위해, 도면들에 도시된 요소들은 반드시 비례 축소되지는 않았다는 것을 알 것이다. 예를 들어, 일부 요소들의 치수들은 명료화를 위해 다른 요소들에 비해 과장될 수 있다. 또한, 다른 실시예들이 이용될 수 있다는 것을 이해해야 한다. 더욱이, 청구 대상의 범위를 벗어나지 않고, 구조 또는 논리적 변경들이 이루어질 수 있다. 방향들 또는 기준들, 예를 들어 위, 아래, 상부, 하부 등은 청구 대상의 응용을 제한하려는 의도가 아니라, 도면들의 설명을 용이하게 하는 데 사용될 수 있다는 점에도 유의해야 한다. 따라서, 아래의 상세한 설명은 청구 대상 또는 그 균등물들의 범위를 한정하는 것으로 간주되지 않아야 한다.
아래의 상세한 설명에서는, 청구 대상의 충분한 이해를 제공하기 위해 다양한 구체적인 상세들이 설명된다. 그러나, 이 분야의 기술자들은 청구 대상이 그러한 구체적인 상세들 없이도 실시될 수 있다는 것을 이해할 것이다. 다른 예들에서는, 이 분야의 기술자에게 공지되었을 방법들, 장치들 또는 시스템들은 청구 대상을 불명확하게 하지 않기 위해 상세히 설명되지 않았다.
전술한 바와 같이, 플래시 메모리 디바이스와 같은 비휘발성 메모리 디바이스 유형을 포함하는 메모리 디바이스들은 광범위한 전자 디바이스들에서 발견될 수 있다. 단지 예로서, 하나의 예시적인 메모리 유형인 플래시 메모리 디바이스와 같은 메모리 디바이스들은 컴퓨터, 디지털 카메라, 셀룰러 전화, 개인용 휴대 단말기 등에서 사용될 수 있다. 메모리 디바이스들은 다양한 유형의 정보를 저장하기 위한 하나 이상의 레지스터를 포함할 수 있다. 레지스터들은 메모리 디바이스 상의 비교적 높은 주파수의 클록 도메인 내에 구현될 수 있다. 예를 들어, 메모리 디바이스의 직렬 또는 병렬 입출력 인터페이스에 의해 공유되는 클록 도메인 내에 하나 이상의 레지스터가 구현될 수 있다. 그러나, 메모리 디바이스 내에 점점 더 많은 수의 레지스터를 통합하기 위하여, 비교적 높은 주파수의 클록 도메인 내에 레지스터들을 구현하는 데 있어서 설계 또는 제조 문제들이 발생할 수 있다. 비교적 높은 주파수의 클록 도메인 내에 구현되는 레지스터들과 관련될 수 있는 적어도 일부 문제들을 피하거나 줄이면서 메모리 디바이스 내에 더 많은 수의 레지스터를 통합하기 위하여, 청구 대상에 따른 실시예들은 인덱스된 레지스터 스킴을 이용할 수 있다. 인덱스된 레지스터 스킴들의 실시예들이 본 명세서에 설명된다.
하나 이상의 실시예에서는, 비교적 높은 주파수의 클록 도메인 내에 레지스터들을 구현하는 어려움을 줄이면서, 메모리 디바이스 내의 임의로 많은 수의 레지스터에 액세스하기 위하여, 인덱스된 레지스터 기술이 이용될 수 있다. 인덱스된 레지스터 액세스 기술들을 지원하는 예시적인 메모리 디바이스들은 비교적 높은 주파수의 클록 도메인 내에 구현되는 하나 이상의 레지스터를 이용할 수 있다. 하나 이상의 비교적 높은 주파수의 클록 도메인 레지스터들은 비교적 낮은 주파수의 클록 도메인 내에 구현되는 하나 이상의 추가적인 레지스터에 대한 액세스를 제공할 수 있다. 본 명세서에서 사용될 때, "비교적 높은 주파수"의 클록 도메인은 "고속" 클록 도메인으로서 지칭될 수 있고, "비교적 낮은 주파수"의 클록 도메인은 "저속" 클록 도메인으로서 지칭될 수 있다. 제1 클록 도메인 클록 주파수가 제2 클록 도메인 클록 주파수보다 높은 경우에는, 클록 주파수들 사이의 차이가 비교적 작은 경우에도, 제1 클록 도메인이 "고속" 클록 도메인으로 간주되고, 제2 클록 도메인이 "저속" 클록 도메인으로 간주될 수 있다. 일 실시예에서, 고속 클록 도메인은 약 400 MHz로 동작할 수 있고, 저속 클록 도메인은 약 50 MHz로 동작할 수 있다. 그러나, 이들은 단지 예시적인 클록 주파수들이며, 청구 대상은 이러한 점들에서 범위가 한정되지 않는다. 인덱스된 레지스터 액세스 스킴의 일 실시예를 구현하는 메모리 디바이스들에서는, 데이터 신호들 또는 정보를 나타내는 신호들을 고속 클록 도메인 내의 제1 레지스터에 기록한 후에 제1 레지스터에 저장된 정보를 저속 클록 도메인 내의 제2 레지스터로 전송하는 것이 가능할 수 있다. 다른 실시예에서는, 저속 클록 도메인 내에 복수의 레지스터가 구현될 수 있으며, 고속 클록 도메인의 제1 레지스터는 저속 클록 도메인의 복수의 레지스터 중 임의의 레지스터에 액세스하는 데 이용될 수 있다.
고속 클록 도메인의 하나 이상의 레지스터를 이용하여 저속 클록 도메인의 하나 이상의 레지스터에 액세스하는 것의 하나의 잠재적인 이점은 임의의 광범위한 잠재적 목적에 이용될 수 있는 점점 더 많은 수의 레지스터를 구현하는 경우에 설계 복잡성 또는 제조 비용을 줄일 수 있다는 것이다. 고속 클록 도메인 내에 많은 수의 레지스터를 구현하는 것은 설계 문제를 유발하거나, 제조의 어려움 또는 비용을 증가시킬 수 있다. 설계 문제 또는 제조 문제는, 고속 클록 도메인 내에 비교적 적은 수의 레지스터를 구현하고, 저속 클록 도메인 내에 많은 수의 레지스터를 구현함으로써, 적어도 부분적으로 방지되거나 감소할 수 있다. 고속 클록 도메인 내에 적은 수의 레지스터를 구현함으로써 성능 항목이 충족될 수 있으며, 저속 클록 도메인 내에 추가적인 레지스터들을 구현함으로써, 많은 수의 레지스터들이 고속 클록 도메인 내에 구현되는 경우에 발생할 수 있는 문제들을 피하거나 줄이면서, 많은 수의 레지스터를 제공할 수 있다. 물론, 청구 대상은 이 점에서 범위가 한정되지 않는다.
도 1은 프로세서(110) 및 메모리(130)를 포함하는 컴퓨팅 플랫폼(100)의 일 실시예의 블록도이다. 이 예에서, 메모리(130)는 플래시 메모리 디바이스를 포함하지만, 청구 대상의 범위는 이 점에서 한정되지 않는다. 이 예에서, 메모리(130)는 병렬 상호접속(120)을 통해 프로세서(110)에 결합되지만, 청구 대상의 범위는 이 점에서 한정되지 않는다. 또한, 일 실시예에서, 메모리(130)는 제1 클록 도메인에 구현되는 하나 이상의 레지스터, 및 제2 클록 도메인에 구현되는 하나 이상의 추가 레지스터를 포함할 수 있다. 일 실시예에서, 제1 클록 도메인으로부터의 하나 이상의 레지스터는 제2 클록 도메인의 하나 이상의 레지스터에 액세스하는 데 사용될 수 있다. 또한, 일 실시예에서, 제1 클록 도메인은 비교적 높은 주파수의 클록 도메인을 포함할 수 있고, 제2 클록 도메인은 비교적 낮은 주파수의 클록 도메인을 포함할 수 있다. 청구 대상에 따른 실시예들은 특정 클록 주파수들로 한정되는 것이 아니라, 클록 도메인들은 임의의 광범위한 가능한 클록 주파수를 가질 수 있다.
일 실시예에서, 컴퓨팅 플랫폼(100)의 구성은 도 1에 도시된 바와 같이 제자리 실행(execute-in-place; XiP) 구현을 포함할 수 있으며, 이러한 구현에서 프로세서(110)는 장기간 메모리(long-term memory)로부터 직접적으로 명령어들을 페치(fetch)할 수 있다. 본 명세서에서 사용될 때, "제자리 실행"이라는 용어는 그의 약어 "XiP"와 더불어 프로세서가 예컨대 플래시 메모리와 같은 장기간 저장 디바이스로부터 명령어들을 페치할 수 있는 것과 관련된다. 더 구체적으로, 프로세서들은 예를 들어 동적 랜덤 액세스 메모리(DRAM)와 같은 중간 저장 디바이스로부터 명령어들을 페치한다.
본 명세서에서 사용되는 바와 같은 "컴퓨팅 플랫폼"이라는 용어는 신호의 형태로 데이터를 처리하거나 저장하는 능력을 포함하는 시스템 또는 디바이스를 지칭한다. 따라서, 이와 관련하여, 컴퓨팅 플랫폼은 하드웨어, 소프트웨어, 펌웨어 또는 이들의 조합을 포함할 수 있다. 본 명세서에 포함된 상세한 설명의 일부는 특정 장치 또는 특수 목적 컴퓨팅 디바이스 또는 플랫폼의 메모리 내에 저장된 이진 디지털 신호들에 대한 연산들의 알고리즘들 또는 심벌 표현들과 관련하여 제공된다. 이러한 구체적인 명세서와 관련하여, 특정 장치 등과 같은 용어는 프로그램 소프트웨어로부터의 명령어들에 따라 특정 연산들을 수행하도록 프로그래밍되는 범용 컴퓨터를 포함한다. 도 1에 도시된 바와 같은 컴퓨팅 플랫폼(100)은 하나의 예일 뿐이며, 청구 대상의 범위는 이러한 점들에서 한정되지 않는다. 하나 이상의 실시예에서, 컴퓨팅 플랫폼은 개인용 데스크탑 또는 노트북 컴퓨터, 고화질 텔레비전, 디지털 다기능 디스크(DVD) 플레이어 또는 레코더, 게임 콘솔, 위성 텔레비전 수신기, 셀룰러 전화, 개인용 휴대 단말기, 이동 오디오 또는 비디오 재생 또는 기록 디바이스 등을 포함하지만 이에 한정되지 않는 임의의 광범위한 디지털 전자 디바이스를 포함할 수 있다. 또한, 구체적으로 달리 언급되지 않는 한, 흐름도들을 참고하거나, 다른 방식으로 본 명세서에서 설명되는 바와 같은 프로세스는 컴퓨팅 플랫폼에 의해 전적으로 또는 부분적으로 실행 또는 제어될 수도 있다. 본 명세서에 설명되는 실시예들에서, 컴퓨팅 플랫폼(100)은 셀룰러 전화 또는 스마트폰을 포함할 수 있지만, 다시 청구 대상은 그에 한정되지 않는다.
전술한 바와 같이, 일 실시예에서, 프로세서(110)는 병렬 상호접속(120)을 통해 메모리(130)에 결합될 수 있다. 다른 실시예에서, 상호접속(120)은 직렬 주변 인터페이스(SPI)를 포함할 수 있다. 청구 대상의 범위는 프로세서와 메모리 디바이스 사이의 임의의 특정 유형의 상호접속으로 한정되지 않는다. 또한, 프로세서(110)는 메모리(130)에 직접 접속되는 것으로 도시되지만, 청구 대상의 범위 내의 다른 실시예들은 프로세서(110)를 메모리(130)에 간접적으로 결합할 수 있다.
전술한 바와 같이, 메모리(130)는 일 실시예에서 플래시 메모리 디바이스를 포함할 수 있다. 플래시 메모리는 전기적으로 소거 가능하거나 프로그래밍 가능한 능력에 의해 적어도 부분적으로 특성화될 수 있으며, 단지 몇 가지 예로서 디지털 카메라, 셀룰러 전화, 개인용 휴대 단말기, 휴대용 네비게이션 디바이스, 휴대용 뮤직 플레이어, 노트북 컴퓨터, 데스크탑 컴퓨터 등을 포함하지만 이에 한정되지 않는 광범위한 전자 디바이스 유형들에서 이용될 수 있다. 또한, 플래시 메모리 디바이스들은 병렬 데이터 인터페이스들 또는 직렬 인터페이스들을 포함할 수 있다. 적어도 일부 예에서, 병렬 인터페이스들은 증가된 수의 입출력 단자들에 적어도 부분적으로 기인하여 비교적 양호한 데이터 처리량을 제공할 수 있다. 한편, 직렬 인터페이스들은 감소된 수의 입출력 단자들에 적어도 부분적으로 기인하여 비용 감소를 제공할 수 있다. 물론, 청구 대상은 이러한 점들에서 범위가 한정되지 않는다.
여기에 설명되는 실시예들은 메모리를 플래시 메모리 디바이스들을 포함하는 것으로 설명하지만, 청구 대상의 범위는 이 점에서 한정되지 않으며, 다른 실시예들은 다른 유형의 휘발성 또는 비휘발성 메모리 디바이스들을 이용할 수 있다. 예를 들어, 하나 이상의 실시예는 판독 전용 메모리(ROM), 상변화 메모리(PCM), 동적 랜덤 액세스 메모리(DRAM) 등을 포함할 수 있다. 또한, 청구 대상의 범위는 특정 유형의 플래시 메모리로 한정되지 않는다. 청구 대상에 따른 실시예들은 단지 일례로서 NOR 플래시 메모리를 포함할 수 있다.
일 실시예에 따르면, 메모리 디바이스의 하나 이상의 레지스터는 메모리 디바이스의 특정 상태에 의해 표현되는 바와 같은 데이터 또는 정보를 나타내는 신호들을 저장할 수 있다. 예컨대, 데이터 또는 정보를 이진 정보(예컨대, 본 명세서에서 "1" 또는 "0"로서 개별적으로 지칭되는 1들 또는 0들)로서 표현하도록 메모리 디바이스의 레지스터들의 상태에 영향을 주거나 상태를 변경함으로써 메모리 디바이스 내의 레지스터에 데이터 또는 정보를 나타내는 전자 신호가 "저장"될 수 있다. 예를 들어, 특정 구현에서, 데이터 또는 정보를 나타내는 신호를 저장하기 위한 레지스터의 상태의 변경은 메모리 디바이스의 다른 상태 또는 것으로의 변환을 구성할 수 있다.
도 2는 비휘발성 메모리 어레이(250)를 포함하는 비휘발성 메모리 디바이스(200)의 일 실시예를 나타내는 개략 블록도이다. 메모리 디바이스(200)는 NOR 플래시 메모리 디바이스를 포함할 수 있지만, 다시 청구 대상의 범위는 이 점에서 한정되지 않는다. 하나 이상의 실시예에서, 비휘발성 메모리(200)는 제어기(230), 제어기(260) 및 입출력 버퍼들(210)을 포함할 수 있다. 또한, 일 실시예에서, 메모리(200)는 제1 클록 도메인(201) 및 제2 클록 도메인(202)으로 분할될 수 있다. 일 실시예에서, 제1 클록 도메인(201)은 고속 클록 도메인을 포함할 수 있으며, 제2 클록 도메인(202)은 저속 클록 도메인을 포함할 수 있다. 전술한 바와 같이, "고속" 및 "저속"의 라벨들은 클록 주파수들에 대한 임의의 특정 값 또는 값들의 범위를 나타내는 것이 아니라, 제1 클록 도메인(201)이 제2 클록 도메인(202)보다 높은 클록 주파수로 동작한다는 것을 나타내는 것을 의도한다.
하나 이상의 실시예에서, 제어기(230)는 제1 클록 도메인(201)에 배치되고, 제어기(260)는 제2 클록 도메인(202)에 배치될 수 있다. 실시예에서, 제어기(230)는 프로세서(110)로부터 하나 이상의 제어 신호를 수신할 수 있고, 판독 및/또는 기입 동작들을 포함하는, 다수의 동작들 중 임의의 동작을 수행하기 위해 하나 이상의 내부 제어 신호를 생성할 수 있고, 이에 의해 프로세서(110)는, 예를 들면, 메모리 어레이(250) 내의 정보 또는 뱅크들에 액세스할 수 있다. 또한, 제어기(230)는 하나 이상의 레지스터에의 액세스를 수행하기 위해 하나 이상의 내부 제어 신호를 더 생성할 수 있다. 실시예에서, 제어기(230)는 동작들을 수행하기 위해 제어기(260)와 통신할 수 있다. 여기에 사용될 때, 용어 "제어기"는 커맨드 시퀀스들이 메모리 디바이스들과 관련이 있을 때 그 커맨드 시퀀스들의 관리 또는 실행에 수반되는 임의의 회로 또는 로직을 포함하도록 의도된다. 제어기(230) 또는 제어기(260)는 또한 메모리(200)와 관련된 다수의 기능들 중 임의의 기능을 달성하기 위해 명령어들을 실행할 수 있는 프로세서를 개별적으로 포함할 수 있다. 실시예에서, 제어기(260)는 레지스터들(222, 224, 및 226)과 레지스터들(240) 사이의 정보 전송을 수행할 수 있다. 또한, 제어기(260)는 메모리 어레이(250)에의 액세스를 수행할 수 있다. 물론, 비휘발성 메모리(200)에 대하여 여기에 설명된 실시예들은 단지 예시이고, 청구된 내용은 이 점에 있어서 범위가 제한되지 않는다.
이 예시 실시예에서의 비휘발성 메모리(200)는 인터커넥트(120)를 통하여 프로세서(110)로부터 하나 이상의 어드레스, 데이터, 또는 제어 신호들을 수신할 수 있다. 아래에 더 상세히 설명되는 바와 같이, 프로세서(110)는, 예를 들면, 메모리 액세스 커맨드를 나타내는 하나 이상의 신호를 비휘발성 메모리(200)에 전송할 수 있다. 메모리 액세스 커맨드는 인터커넥트(120)를 통해 전달되어 입력/출력 버퍼들(210)에서 수신된 어드레스를 포함할 수 있다. 프로세서(110)는 메모리 어레이(250)에의 액세스를 요청할 수 있는 어떤 종류의 소프트웨어 에이전트를 실행할 수 있다. 이 소프트웨어 에이전트는, 예를 들면, 메모리 어레이(250)의 코드 뱅크에 저장된 명령어들로부터 실행될 수 있다. 프로세서(110)는 소프트웨어 에이전트에 대한 명령어들을 페치할 수 있고 또한 페치된 명령어들을 실행할 수 있다. 소프트웨어 에이전트로부터의 명령어들 중 하나 이상은 메모리 어레이(250)의 데이터 또는 정보 뱅크 영역에의 판독 또는 기입 액세스를 위한 요청을 포함할 수 있다.
또한, 실시예에서, 프로세서(110)는 제1 클록 도메인(201)에서 구현된 인덱스 레지스터(222), 데이터 또는 정보 기입 레지스터(224), 또는 데이터 또는 정보 판독 레지스터(226)에의 액세스를 요청할 수 있는 어떤 종류의 소프트웨어 에이전트를 실행할 수 있다. 이 소프트웨어 에이전트는 또한 제2 클록 도메인(202)에서 구현된 복수의 레지스터들(240)에의 액세스를 요청할 수 있다.
도 3은 메모리(200)로부터의 인덱스 레지스터(222), 데이터 또는 정보 기입 레지스터(224), 및 데이터 또는 정보 판독 레지스터(226)를 도시하는 개략 블록도이다. 또한 도 3에는 0에서 N-1까지 번호가 매겨진 레지스터들(240)이 도시되어 있다. 도 2에서 확인된 바와 같이, 인덱스 레지스터(222), 기입 레지스터(224), 및 판독 레지스터(226)는 제1 클록 도메인(201)의 일부이고, 따라서 고속 클록 신호(CLKFAST)(211)에 의해 클로킹된다(clocked). 전술한 바와 같이, 클록 도메인과 또는 클록 신호와 관련하여 사용된 용어 "고속"(fast)은 어느 특정한 클록 주파수 또는 주파수 범위를 나타내도록 의도되지 않는다. 오히려, 용어 "고속"은 단지 고속 클록 도메인 또는 고속 클록 신호가 "저속"(slow) 클록 도메인 또는 저속 클록 신호에 대한 클록 주파수보다 더 큰 클록 주파수를 갖는다는 것을 나타내도록 의도된다. 유사하게, 클록 신호 또는 클록 도메인과 관련하여 사용된 용어 "저속"은 단지 저속 클록 도메인 또는 저속 클록 신호가 고속 클록 도메인 또는 고속 클록 신호에 대한 클록 주파수보다 더 작은 클록 주파수를 갖는다는 것을 나타내도록 의도된다. 도 2에 더 도시된 바와 같이, 레지스터들(240)은 제2 클록 도메인(202)의 일부이고, 따라서 저속 클록 신호(CLKSLOW)(212)에 의해 클로킹된다.
실시예에서, 하나 이상의 레지스터(240)는, 예를 들면 프로세서(210)에 의해, 적어도 부분적으로 인덱스 레지스터(222)에 인덱스 값을 기입하는 것에 의해 액세스될 수 있다. 인덱스 값은 레지스터들(240) 중 하나 이상의 레지스터에의 포인터를 포함할 수 있다. 실시예에서, 레지스터들(240) 중 둘 이상의 레지스터에 액세스하기 위해, 인덱스 레지스터(222)는, 인덱스 레지스터가 레지스터들(240) 중 둘 이상의 레지스터 각각에의 둘 이상의 포인터로서의 역할을 할 수 있는 둘 이상의 인덱스 값을 저장할 수 있도록, 둘 이상의 세그먼트로 분할될 수 있다. 그러나, 청구된 내용은 이 점에 있어서 범위가 제한되지 않는다.
예시 레지스터 기입 커맨드에 대하여, 프로세서(110)가 레지스터들(240) 중 레지스터 2에의 기입 액세스를 수행하는 상황을 고려해보자. 프로세서(110)는 레지스터 2에 대하여 예정된(destined) 정보를 기입 레지스터(224)에 기입할 수 있고 레지스터 2를 식별하는 인덱스 값을 인덱스 레지스터(222)에 기입할 수 있다. 실시예에서, 제어기(260)는 기입 레지스터(224)에 저장된 정보를 인덱스 레지스터(222)에 저장된 인덱스 값에 의해 식별된 레지스터(본 예에서는, 레지스터 2임)에 전송할 수 있다. 이런 식으로, 저속 클록 도메인에 구현된 레지스터(이 예에서 레지스터 2)에의 기입 액세스는 고속 클록 도메인에 구현된 레지스터들(이 예에서 인덱스 레지스터(222) 및 데이터 기입 레지스터(224))에 값들을 기입하는 것에 의해 달성될 수 있다. 고속 클록 도메인에 배치된 인덱스 및 레지스터들에의 레지스터 액세스를 허용하는 것에 의해 성능 기준(performance criteria)이 만족될 수 있고, 저속 클록 도메인에서 그 레지스터들을 구현하는 것에 의해 더 많은 수의 레지스터들이 지원될 수 있다. 따라서, 고속 레지스터 액세스 및 더 많은 수의 레지스터들의 잠재적인 이익이 실현될 수 있다.
유사하게, 예시 레지스터 판독 커맨드에 대하여, 프로세서(110)가 레지스터들(240) 중 레지스터 1로부터의 판독 액세스를 수행하는 상황을 고려해보자. 프로세서(110)는 레지스터 1을 식별하는 인덱스 값을 인덱스 레지스터(222)에 기입할 수 있다. 프로세서(110)에 의해 발행된 판독 커맨드를 수행하는 것의 일부로서, 제어기(260)는 인덱스 레지스터(222)에 저장된 인덱스 값에 의해 식별된 레지스터(이 예에서는 레지스터 1임)에 저장된 정보를 판독 레지스터(226)에 전송할 수 있고, 판독 레지스터(226)에 저장된 신호 정보가 프로세서(110)에 제공될 수 있다. 물론, 이것들은 단지 예시 레지스터 기입 또는 판독 액세스들이고, 청구된 내용은 이 점에 있어서 범위가 제한되지 않는다. 유사하게, 도 3에 도시된 레지스터들의 조직 및 구성은 단지 예시이고, 역시, 청구된 내용은 이 점에 있어서 범위가 제한되지 않는다.
도 4는 예시 비휘발성 메모리 디바이스(200)에 대한 인덱스된 레지스터 액세스(indexed register access)를 위한 레지스터 구성의 예시 실시예를 도시하는 개략 블록도이다. 도 4의 예는 몇 가지 점에서 도 3에 도시된 예와 다르다. 도 4에서, 레지스터들(240)은 M개의 그룹으로 분할된다. 실시예에서, 개별 그룹들은 N개의 레지스터를 포함한다. 그러나, 비록 도 4의 예는 M개의 개별 그룹들 내에 같은 수의 레지스터들을 도시하지만, 청구된 내용은 이 점에 있어서 범위가 제한되지 않는다. 하나 이상의 다른 실시예에서, 개별 그룹들은 상이한 수의 레지스터들을 포함할 수 있다. 예를 들면, 그룹 1은 3개의 레지스터를 포함할 수 있고, 그룹 0은 2개의 레지스터를 포함할 수 있다. 그러나, 이것들은 단지 예시이고, 청구된 내용은 이 점에 있어서 범위가 제한되지 않는다.
또한, 도 4의 예에서, 인덱스 레지스터(222)는 2개의 필드로 분할될 수 있다. 청구된 내용에 따른 실시예들은 하나 이상의 필드를 포함할 수 있다. 실시예에서, 인덱스 레지스터(222)는 그룹 ID(identification) 필드(401) 및 레지스터 ID 필드(402)를 포함할 수 있다. 그룹 ID 필드(401)는 레지스터들(240)의 M개의 그룹 중의 한 그룹을 식별하는 그룹 ID 값을 저장할 수 있다. 실시예에서의 레지스터 ID 필드(402)는 그룹 ID 필드에 의해 식별된 그룹 내의 특정한 레지스터를 식별하는 레지스터 ID 값을 저장할 수 있다. 또한, 비록 도 4의 예는 단일 그룹 ID 필드 및 단일 레지스터 ID 필드를 도시하지만, 청구된 내용은 이 점에 있어서 범위가 제한되지 않는다. 청구된 내용에 따른 인덱스 레지스터의 다른 실시예들은 인덱스 레지스터(222)와 같은 인덱스 레지스터에 저장된 인덱스 값에 의해 둘 이상의 그룹 또는 둘 이상의 레지스터가 식별될 수 있도록 둘 이상의 그룹 ID 필드 또는 둘 이상의 레지스터 ID 필드를 포함할 수 있다. 또한, 청구된 내용에 따른 실시예들은 둘 이상의 인덱스 레지스터를 포함할 수 있다. 또한, 다른 실시예들은 인덱스된 레지스터 액세스가 광범위한 목적들을 위해 사용되게 하기 위해 추가적인 필드 유형들을 통합할 수 있다.
실시예에서, 보호된 메모리의 블록을 정의하기 위해 보안 동작에서 레지스터들의 하나 이상의 그룹이 이용될 수 있다. 메모리 보호 방식(memory protection scheme)의 다양한 상세들이 잘 알려져 있지만, 기입 보안 레지스터 또는 판독 보안 레지스터 커맨드들을 포함하는 인덱스된 레지스터 액세스 방식의 실시예는 메모리의 하나 이상의 보호된 영역을 제공하는 데 역할을 할 수 있다. 실시예에서, 고속 클록 도메인에 구현된 인덱스 레지스터는 ID 필드 및 레지스터 유형 필드로 분할될 수 있다. 실시예에서, 보안 레지스터는 저속 클록 도메인에 구현될 수 있다. 또한, 실시예에서, 인덱스 값은 ID 값 및 레지스터 유형 값으로 분할될 수 있고, 여기서 ID 값은 보안 레지스터에의 포인터를 포함할 수 있다. 또한, 실시예에서, 기입 보안 레지스터 커맨드 또는 판독 보안 레지스터 커맨드이 수행될 수 있다. 실시예에서, 고속 클록 도메인에 구현된 기입 데이터 레지스터에 저장된 정보는 적어도 부분적으로 기입 보안 레지스터 커맨드 코드를 수신하는 것에 응답하여 보안 레지스터에 기입될 수 있고, 보안 레지스터에 저장된 정보는 적어도 부분적으로 판독 보안 레지스터 커맨드 코드를 수신하는 것에 응답하여 판독 데이터 레지스터에 전송될 수 있다. 또한, 실시예에서, 보안 레지스터는 보호된 메모리 블록 레지스터를 포함할 수 있다. 그러나, 청구된 내용은 이 점에 있어서 범위가 제한되지 않는다.
도 5는 예시적인 메모리 디바이스에 대한 인덱스된 레지스터 액세스를 위한 프로세스의 예시적인 실시예를 예시하는 흐름도이다. 블록(510)에서, 인덱스 값은 메모리 디바이스의 하나 이상의 입력 단자들에서 수신될 수 있다. 본 명세서에서 사용된 바와 같이, "입력 단자"는 입력 전용 단자뿐 아니라, 입출력 단자들을 포함하는 것을 의미한다. 또한, 실시예에 있어서, 메모리 디바이스는 상변화 메모리(phase-change memory)(PCM) 플래시 메모리 디바이스를 포함할 수 있으나, 청구 대상이 이러한 관점으로 제한되는 것은 아니다. 블록(520)에서, 인덱스 값은 메모리 디바이스의 제1 레지스터에 저장될 수 있다. 제1 레지스터는 제1 클록 도메인에 구현될 수 있다. 인덱스 값은 메모리 디바이스의 제2 레지스터를 식별할 수 있고, 제2 레지스터는 제2 클록 도메인에 구현된다. 실시예에서, 제1 클록 도메인은 제2 클록 도메인에 대한 클록 주파수보다 더 높은 클록 주파수에서 동작할 수 있다. 실시예에서, 제2 레지스터는 제1 레지스터를 통해 액세스될 수 있다. 또한, 실시예에서, 제1 레지스터는 제2 레지스터의 위치를 가리킬 수 있는 인덱스 값을 저장할 수 있다. 블록(530)에서, 인덱스 값에 의해 식별된 제2 레지스터를 액세스하는 커맨드가 수신될 수 있다. 이런 방식으로, 시스템 레벨 관점으로부터, 저속 클록 도메인에 위치한 제2 레지스터에 대한 액세스는, 고속 클록 도메인의 레지스터에 대한 액세스와 유사한 방식으로 동작한다. 또한, 저속 클록 도메인의 레지스터에 기입되거나, 레지스터로부터 판독될 최종 값은 기입 또는 판독 레지스터에 저장될 수 있기 때문에, 실시예에 있어서 디버깅 동작들이 강화될 수 있다. 청구 대상에 따른 실시예들은, 블록들(510 내지 530) 모두를 포함하거나, 그보다 적은 블록들을 포함하거나, 그보다 많은 블록들을 포함할 수 있다. 또한, 블록들(510 내지 530)의 순서는 단지 예시적인 순서일 뿐이며, 청구 대상은 이러한 관점에의 범주로 제한되지 않는다.
본 명세서에 포함된 상세한 설명의 일부 부분들은 특수 목적 연산 디바이스 또는 플랫폼 또는 특정 장치의 디바이스 내에 저장되는 이진 디지털 신호들에 대한 동작들의 알고리즘 또는 심볼 표현들의 관점에서 제시된다. 이러한 특정 명세의 맥락에서, 특정 장치 등의 용어는, 일단 프로그램되면, 프로그램 소프트웨어로부터의 명령어들에 따른 특정 동작들을 수행하는 범용 컴퓨터를 포함한다. 알고리즘적 기술 또는 심볼적 표현들은, 그들의 작업의 요지를 본 기술분야의 다른 이들에게 전달하기 위해 신호 처리 또는 관련 분야의 당업자에 의해 사용되는 기술들의 예들이다. 여기서 알고리즘은, 일반적으로, 원하는 결과를 이끌어 내기 위한 동작들 또는 유사한 신호 처리의 일관성 있는 시퀀스로 간주된다. 이러한 맥락에서, 동작들 또는 프로세싱은 물리적 양들의 물리적 조작을 수반한다. 통상적으로, 필수적인 것은 아니지만, 이러한 양들은, 저장되고, 전달되고, 결합되고, 비교되고 또는 달리 조작될 수 있는 전기 신호 또는 자기 신호의 형태를 취할 수 있다. 때때로, 주로 통상의 사용 이유들 때문에, 이러한 신호들을 비트, 데이터, 값, 요소, 심볼, 캐릭터, 용어, 번호, 숫자 등으로서 지칭하는 것이 편리하다고 알려져 왔다. 그러나, 이러한 용어들 또는 유사한 용어들 모두는 적절한 물리적 양들에 연관되며, 단지 편리한 라벨들이라는 것을 이해해야 한다. 특히 달리 언급되지 않는 한, 본 명세서의 설명으로부터 명확해지는 바와 같이, 본 명세서에 걸쳐 "프로세싱", "컴퓨팅", "계산", "판정" 등과 같은 용어들을 이용하는 논의들은, 특수 목적 컴퓨터 또는 유사한 특수 목적 전자 컴퓨팅 디바이스 등의 특정 장치의 행동들 또는 프로세스들을 지칭한다. 따라서, 본 명세서의 맥락에서, 특수 목적 컴퓨터 또는 유사한 특수 목적 전자 컴퓨팅 디바이스는, 통상적으로 메모리, 레지스터, 또는 그외의 정보 저장 디바이스, 전송 디바이스, 또는 특수 목적 컴퓨터 또는 유사한 특수 목적 전자 컴퓨팅 디바이스의 표시 디바이스 내의 물리적 전자량 또는 자기량으로서 표현되는 신호들을 조작하거나 또는 변형시킬 수 있다.
본 명세서에 걸쳐 "일 실시예" 또는 "실시예"에 대한 언급은, 특정한 실시예와 함께 설명된 특정한 특징, 구조 또는 특성이, 청구 대상의 적어도 하나의 실시예에 포함될 수 있다는 것을 의미한다. 따라서, 본 명세서에 걸쳐 다양한 부분들에서 나타나는 "일 실시예에서" 또는 "실시예"의 문구들은 반드시 동일한 실시예 또는 기술된 임의의 하나의 특정한 실시예를 참조하도록 의도되는 것은 아니다. 또한, 기술된 특정한 특징들, 구조들, 또는 특성들은 하나 이상의 실시예들에서 다양한 방법으로 결합될 수 있다는 것을 이해해야 한다. 물론, 일반적으로, 이러한 쟁점들 및 그외의 쟁점들은 특정한 사용의 맥락에 따라 변화할 수 있다. 따라서, 이 용어들의 사용 또는 설명의 특정한 맥락은, 그 맥락에 대해 도출될 추론들에 관한 유용한 유도를 제공할 수 있다.
마찬가지로, 본 명세서에서 사용된 바와 같은 용어들 "및"과 "또는"은 이러한 용어들이 사용되는 상황에 적어도 부분적으로 의존하는 것으로 예측되는 다양한 의미들을 포함할 수 있다. 통상적으로, "또는"이 A, B 또는 C와 같은 목록을 연관시키는데 사용되는 경우, 배타적인 의미에서 여기서 사용되는 A, B 또는 C 뿐만 아니라 포괄적인 의미에서 여기서 사용되는 A, B 및 C를 의미하는 것으로 의도된다. 추가적으로, 본 명세서에서 사용되는 바와 같은 용어 "하나 이상"은 단수인 임의의 특징, 구조 또는 특성을 설명하기 위해 사용될 수 있거나, 특징들, 구성들 또는 특성들의 일부 조합을 설명하기 위해 사용될 수 있다. 그러나, 이는 단지 예시적인 예일 뿐이며, 청구 대상이 이 예에 제한되는 것은 아니라는 점에 주목해야 한다.
이전 설명에서, 청구 대상의 다양한 양상들이 설명되었다. 설명의 목적으로, 시스템들 또는 구성들이 청구 대상의 이해를 제공하기 위해 설명되었다. 그러나, 청구 대상은 이러한 특정 상세항목들 없이도 실시될 수 있다. 다른 경우들에서, 공지된 특징들은 청구 대상을 모호하게 하지 않게 하기 위해 생략되거나 간략화되었다. 특정한 특징들이 본 명세서에 예시되거나 설명되었지만, 많은 수정들, 대체들, 변경들 또는 균등물들이 이제 본 기술분야에서 통상의 지식을 가진 자에게 발생할 것이다. 따라서, 첨부되는 청구항들이 청구 대상의 진정한 사상 내에 포함되는 것으로서 모든 이러한 수정들 또는 변경들을 커버하도록 의도된다는 점이 이해되어야 한다.

Claims (27)

  1. 메모리 디바이스의 하나 이상의 입력 단자에서 인덱스 값을 수신하는 단계;
    상기 메모리 디바이스의 제1 레지스터에 상기 인덱스 값을 저장하는 단계 ― 상기 제1 레지스터는 제1 클록 도메인에 구현되고, 상기 인덱스 값은 상기 메모리 디바이스의 제2 레지스터를 식별하고, 상기 제2 레지스터는 제2 클록 도메인에 구현됨 ―; 및
    상기 인덱스 값에 의해 식별된 상기 제2 레지스터를 액세스하기 위한 커맨드를 수신하는 단계 ― 상기 커맨드는 기입 레지스터 커맨드 또는 판독 레지스터 커맨드 중 하나를 포함함 ―;
    를 포함하며,
    상기 기입 레지스터 커맨드를 수신하면, 상기 메모리 디바이스의 데이터 기입 레지스터에 저장된 정보가 상기 제2 레지스터에 전송되며,
    상기 판독 레지스터 커맨드를 수신하면, 상기 제2 레지스터에 저장된 정보가 데이터 판독 레지스터에 전송되는 방법.
  2. 제1항에 있어서,
    상기 제1 클록 도메인은 상기 제2 클록 도메인의 클록 주파수보다 더 큰 클록 주파수에서 동작되는 방법.
  3. 삭제
  4. 제1항에 있어서,
    상기 데이터 기입 레지스터 및 상기 데이터 판독 레지스터는 상기 제1 클록 도메인에 구현되는 방법.
  5. 메모리 디바이스의 하나 이상의 입력 단자에서 인덱스 값을 수신하는 단계;
    상기 메모리 디바이스의 제1 레지스터에 상기 인덱스 값을 저장하는 단계 ― 상기 제1 레지스터는 제1 클록 도메인에 구현되고, 상기 인덱스 값은 상기 메모리 디바이스의 제2 레지스터를 식별하고, 상기 제2 레지스터는 제2 클록 도메인에 구현됨 ―; 및
    상기 인덱스 값에 의해 식별된 상기 제2 레지스터를 액세스하기 위한 커맨드를 수신하는 단계
    를 포함하며,
    상기 제1 레지스터는 그룹 식별 필드 및 레지스터 식별 필드로 분할되고, 상기 그룹 식별 필드에 저장된 그룹 식별 값은 상기 제2 클록 도메인에 구현된 레지스터들의 하나 이상의 그룹으로부터 상기 제2 클록 도메인에 구현된 레지스터들의 그룹을 식별하고, 상기 레지스터 식별 필드에 저장된 레지스터 식별 값은 상기 식별된 레지스터들의 그룹으로부터 상기 제2 레지스터를 나타내는 방법.
  6. 메모리 디바이스의 하나 이상의 입력 단자에서 인덱스 값을 수신하는 단계;
    상기 메모리 디바이스의 제1 레지스터에 상기 인덱스 값을 저장하는 단계 ― 상기 제1 레지스터는 제1 클록 도메인에 구현되고, 상기 인덱스 값은 상기 메모리 디바이스의 제2 레지스터를 식별하고, 상기 제2 레지스터는 제2 클록 도메인에 구현됨 ―; 및
    상기 인덱스 값에 의해 식별된 상기 제2 레지스터를 액세스하기 위한 커맨드를 수신하는 단계
    를 포함하며,
    상기 제1 레지스터는 식별 필드 및 레지스터 유형 필드로 분할되는 인덱스 레지스터를 포함하고, 상기 제2 레지스터는 보안(security) 레지스터를 포함하고, 상기 인덱스 값은 식별 값 및 레지스터 유형 값으로 분할되고, 상기 식별 값은 상기 보안 레지스터에 대한 포인터를 포함하고, 상기 커맨드를 수신하는 단계는 기입 보안 레지스터 커맨드 또는 판독 보안 레지스터 커맨드 중 하나를 수신하는 단계를 포함하는 방법.
  7. 제6항에 있어서,
    상기 기입 보안 레지스터 커맨드를 수신하는 단계에 적어도 부분적으로 응답하여 상기 메모리 디바이스의 기입 데이터 레지스터에 저장된 정보를 상기 보안 레지스터에 기입하는 단계; 및
    상기 판독 보안 레지스터 커맨드를 수신하는 단계에 적어도 부분적으로 응답하여 상기 보안 레지스터에 저장된 정보를 판독 데이터 레지스터에 전송하는 단계를 더 포함하는 방법.
  8. 제7항에 있어서,
    상기 보안 레지스터는 보호된 메모리 블럭 레지스터를 포함하는 방법.
  9. 제1항에 있어서,
    상기 메모리 디바이스는 동적 랜덤 액세스 메모리 디바이스, NAND 플래시 메모리 디바이스, NOR 플래시 메모리 디바이스, 및 상변화 메모리 플래시 메모리 디바이스 중 하나 이상을 포함하는 방법.
  10. 인덱스 값 및 커맨드 코드를 수신하는 하나 이상의 입력 단자;
    상기 인덱스 값을 저장하는 제1 레지스터 ― 상기 제1 레지스터는 제1 클록 도메인에 구현되고, 상기 인덱스 값은 제2 클록 도메인에 구현된 제2 레지스터를 식별하고, 상기 커맨드 코드는 기입 레지스터 커맨드 또는 판독 레지스터 커맨드 중 하나를 포함함 ―; 및
    상기 인덱스 값에 의해 식별된 상기 제2 레지스터를 액세스하는 제어기 ― 상기 제어기는 기입 레지스터 커맨드 코드의 실행에 적어도 부분적으로 응답하여 데이터 기입 레지스터에 저장된 정보를 상기 식별된 제2 레지스터에 전송하도록 구성되고, 상기 제어기는 제2 레지스터 액세스 커맨드 코드의 실행에 적어도 부분적으로 응답하여 상기 식별된 제2 레지스터에 저장된 정보를 데이터 판독 레지스터에 전송하도록 더 구성됨 ―;
    를 포함하는 장치.
  11. 제10항에 있어서,
    상기 제1 클록 도메인은 상기 제2 클록 도메인의 클록 주파수보다 더 큰 클록 주파수에서 동작되는 장치.
  12. 삭제
  13. 제10항에 있어서,
    상기 데이터 기입 레지스터 및 상기 데이터 판독 레지스터는 상기 제1 클록 도메인에 구현되는 장치.
  14. 인덱스 값 및 커맨드 코드를 수신하는 하나 이상의 입력 단자;
    상기 인덱스 값을 저장하는 제1 레지스터 ― 상기 제1 레지스터는 제1 클록 도메인에 구현되고, 상기 인덱스 값은 제2 클록 도메인에 구현된 제2 레지스터를 식별하고, 상기 커맨드 코드는 제2 레지스터 액세스 커맨드 코드를 포함함 ―; 및
    상기 제2 레지스터 액세스 커맨드 코드를 수신하는 것에 적어도 부분적으로 응답하여 상기 인덱스 값에 의해 식별된 상기 제2 레지스터를 액세스하는 제어기
    를 포함하며,
    상기 제1 레지스터는 그룹 식별 필드 및 레지스터 식별 필드로 분할되고, 상기 그룹 식별 필드에 저장된 그룹 식별 값은 상기 제2 클록 도메인에 구현된 레지스터들의 하나 이상의 그룹으로부터 상기 제2 클록 도메인에 구현된 레지스터들의 그룹을 식별하고, 상기 레지스터 식별 필드에 저장된 레지스터 식별 값은 상기 식별된 레지스터들의 그룹으로부터 상기 제2 레지스터를 나타내는 장치.
  15. 인덱스 값 및 커맨드 코드를 수신하는 하나 이상의 입력 단자;
    상기 인덱스 값을 저장하는 제1 레지스터 ― 상기 제1 레지스터는 제1 클록 도메인에 구현되고, 상기 인덱스 값은 제2 클록 도메인에 구현된 제2 레지스터를 식별하고, 상기 커맨드 코드는 제2 레지스터 액세스 커맨드 코드를 포함함 ―; 및
    상기 제2 레지스터 액세스 커맨드 코드를 수신하는 것에 적어도 부분적으로 응답하여 상기 인덱스 값에 의해 식별된 상기 제2 레지스터를 액세스하는 제어기
    를 포함하며,
    상기 제1 레지스터는 식별 필드 및 레지스터 유형 필드로 분할되는 인덱스 레지스터를 포함하고, 상기 제2 레지스터는 보안 레지스터를 포함하고, 상기 인덱스 값은 식별 값 및 레지스터 유형 값으로 분할되고, 상기 식별 값은 상기 보안 레지스터에 대한 포인터를 포함하고, 상기 커맨드 코드는 기입 보안 레지스터 커맨드 코드 또는 판독 보안 레지스터 커맨드 코드 중 하나를 포함하는 장치.
  16. 제15항에 있어서,
    데이터 기입 레지스터 및 데이터 판독 레지스터를 더 포함하고,
    상기 제어기는 상기 기입 보안 레지스터 커맨드 코드의 실행에 적어도 부분적으로 응답하여 상기 데이터 기입 레지스터에 저장된 정보를 상기 보안 레지스터에 기입하고, 상기 판독 보안 레지스터 커맨드 코드의 실행에 적어도 부분적으로 응답하여 상기 보안 레지스터에 저장된 정보를 상기 데이터 판독 레지스터에 전송하는 장치.
  17. 제16항에 있어서,
    상기 보안 레지스터는 보호된 메모리 블럭 레지스터를 포함하는 장치.
  18. 제10항에 있어서,
    동적 랜덤 액세스 메모리 디바이스, NAND 플래시 메모리 디바이스, NOR 플래시 메모리 디바이스, 및 상변화 메모리 플래시 메모리 디바이스 중 하나 이상을 포함하는 장치.
  19. 프로세서; 및
    상기 프로세서에 결합된 메모리 디바이스
    를 포함하고,
    상기 메모리 디바이스는,
    상기 프로세서에 의해 전송되는 인덱스 값 및 커맨드 코드를 수신하는 하나 이상의 입력 단자,
    상기 인덱스 값을 저장하는 제1 레지스터 ― 상기 제1 레지스터는 제1 클록 도메인에 구현되고, 상기 인덱스 값은 제2 클록 도메인에 구현된 제2 레지스터를 식별하고, 상기 커맨드 코드는 기입 레지스터 커맨드 또는 판독 레지스터 커맨드 중 하나를 포함함 ―, 및
    상기 인덱스 값에 의해 식별된 상기 제2 레지스터를 액세스하는 제어기 ― 상기 제어기는 기입 레지스터 커맨드 코드의 실행에 적어도 부분적으로 응답하여 데이터 기입 레지스터에 저장된 정보를 상기 식별된 제2 레지스터에 더 기입하도록 구성되고, 상기 제어기는 제2 레지스터 액세스 커맨드 코드의 실행에 적어도 부분적으로 응답하여 상기 식별된 제2 레지스터에 저장된 정보를 데이터 판독 레지스터에 전송하도록 구성됨 ―
    를 포함하는 시스템.
  20. 제19항에 있어서,
    상기 제1 클록 도메인은 상기 제2 클록 도메인의 클록 주파수보다 더 큰 클록 주파수에서 동작되는 시스템.
  21. 삭제
  22. 프로세서; 및
    상기 프로세서에 결합된 메모리 디바이스
    를 포함하고,
    상기 메모리 디바이스는,
    상기 프로세서에 의해 전송되는 인덱스 값 및 커맨드 코드를 수신하는 하나 이상의 입력 단자,
    상기 인덱스 값을 저장하는 제1 레지스터 ― 상기 제1 레지스터는 제1 클록 도메인에 구현되고, 상기 인덱스 값은 제2 클록 도메인에 구현된 제2 레지스터를 식별하고, 상기 커맨드 코드는 제2 레지스터 액세스 커맨드 코드를 포함함 ―, 및
    상기 제2 레지스터 액세스 커맨드 코드를 수신하는 것에 적어도 부분적으로 응답하여 상기 인덱스 값에 의해 식별된 상기 제2 레지스터를 액세스하는 제어기
    를 포함하며,
    데이터 기입 레지스터 및 데이터 판독 레지스터가 상기 제1 클록 도메인에 구현되는 시스템.
  23. 프로세서; 및
    상기 프로세서에 결합된 메모리 디바이스
    를 포함하고,
    상기 메모리 디바이스는,
    상기 프로세서에 의해 전송되는 인덱스 값 및 커맨드 코드를 수신하는 하나 이상의 입력 단자,
    상기 인덱스 값을 저장하는 제1 레지스터 ― 상기 제1 레지스터는 제1 클록 도메인에 구현되고, 상기 인덱스 값은 제2 클록 도메인에 구현된 제2 레지스터를 식별하고, 상기 커맨드 코드는 제2 레지스터 액세스 커맨드 코드를 포함함 ―, 및
    상기 제2 레지스터 액세스 커맨드 코드를 수신하는 것에 적어도 부분적으로 응답하여 상기 인덱스 값에 의해 식별된 상기 제2 레지스터를 액세스하는 제어기
    를 포함하며,
    상기 제1 레지스터는 그룹 식별 필드 및 레지스터 식별 필드로 분할되고, 상기 그룹 식별 필드에 저장된 그룹 식별 값은 상기 제2 클록 도메인에 구현된 레지스터들의 하나 이상의 그룹으로부터 상기 제2 클록 도메인에 구현된 레지스터들의 그룹을 식별하고, 상기 레지스터 식별 필드에 저장된 레지스터 식별 값은 상기 식별된 레지스터들의 그룹으로부터 상기 제2 레지스터를 나타내는 시스템.
  24. 프로세서; 및
    상기 프로세서에 결합된 메모리 디바이스
    를 포함하고,
    상기 메모리 디바이스는,
    상기 프로세서에 의해 전송되는 인덱스 값 및 커맨드 코드를 수신하는 하나 이상의 입력 단자,
    상기 인덱스 값을 저장하는 제1 레지스터 ― 상기 제1 레지스터는 제1 클록 도메인에 구현되고, 상기 인덱스 값은 제2 클록 도메인에 구현된 제2 레지스터를 식별하고, 상기 커맨드 코드는 제2 레지스터 액세스 커맨드 코드를 포함함 ―, 및
    상기 제2 레지스터 액세스 커맨드 코드를 수신하는 것에 적어도 부분적으로 응답하여 상기 인덱스 값에 의해 식별된 상기 제2 레지스터를 액세스하는 제어기
    를 포함하며,
    상기 제1 레지스터는 식별 필드 및 레지스터 유형 필드로 분할되는 인덱스 레지스터를 포함하고, 상기 제2 레지스터는 보안 레지스터를 포함하고, 상기 인덱스 값은 식별 값 및 레지스터 유형 값으로 분할되고, 상기 식별 값은 상기 보안 레지스터에 대한 포인터를 포함하고, 상기 커맨드 코드는 기입 보안 레지스터 커맨드 코드 또는 판독 보안 레지스터 커맨드 코드 중 하나를 포함하는 시스템.
  25. 제24항에 있어서,
    상기 메모리 디바이스는 기입 데이터 레지스터 및 판독 데이터 레지스터를 더 포함하고,
    상기 제어기는 상기 기입 보안 레지스터 커맨드 코드의 실행에 적어도 부분적으로 응답하여 상기 기입 데이터 레지스터에 저장된 정보를 상기 보안 레지스터에 기입하고, 상기 판독 보안 레지스터 커맨드 코드의 실행에 적어도 부분적으로 응답하여 상기 보안 레지스터에 저장된 정보를 상기 판독 데이터 레지스터에 전송하는 시스템.
  26. 제25항에 있어서,
    상기 보안 레지스터는 보호된 메모리 블럭을 포함하는 시스템.
  27. 제19항에 있어서,
    상기 메모리 디바이스는 동적 랜덤 액세스 메모리 디바이스, NAND 플래시 메모리 디바이스, NOR 플래시 메모리 디바이스, 및 상변화 메모리 플래시 메모리 디바이스 중 하나 이상을 포함하는 시스템.
KR1020110041698A 2010-04-30 2011-05-02 메모리 디바이스에 대한 인덱스된 레지스터 액세스 KR101266580B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
ITMI2010A000761A IT1399916B1 (it) 2010-04-30 2010-04-30 Dispositivo di memoria ad accesso di registro indicizzato
ITMI2010A000761 2010-04-30
US12/916,421 2010-10-29
US12/916,421 US8539189B2 (en) 2010-04-30 2010-10-29 Indexed register access for memory device

Publications (2)

Publication Number Publication Date
KR20110121594A KR20110121594A (ko) 2011-11-07
KR101266580B1 true KR101266580B1 (ko) 2013-05-22

Family

ID=43037067

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110041698A KR101266580B1 (ko) 2010-04-30 2011-05-02 메모리 디바이스에 대한 인덱스된 레지스터 액세스

Country Status (7)

Country Link
US (2) US8539189B2 (ko)
JP (1) JP5500457B2 (ko)
KR (1) KR101266580B1 (ko)
CN (1) CN102324246B (ko)
DE (1) DE102011075023A1 (ko)
IT (1) IT1399916B1 (ko)
TW (1) TWI444891B (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1399916B1 (it) 2010-04-30 2013-05-09 Balluchi Dispositivo di memoria ad accesso di registro indicizzato
CN102637453B (zh) * 2012-02-17 2015-05-06 北京时代全芯科技有限公司 一种包括串行输入输出接口的相变存储器
US9424442B2 (en) * 2013-11-27 2016-08-23 Huawei Technologies Co., Ltd. Nonvolatile memory and electronic device
CN103631732B (zh) * 2013-11-27 2016-09-07 华为技术有限公司 非易失存储器及电子设备
US9934831B2 (en) * 2014-04-07 2018-04-03 Micron Technology, Inc. Apparatuses and methods for storing and writing multiple parameter codes for memory operating parameters
TWI619023B (zh) * 2016-11-30 2018-03-21 瑞昱半導體股份有限公司 記憶體控制電路及其方法
CN108053795B (zh) * 2017-12-13 2020-07-10 合肥京东方光电科技有限公司 一种覆晶薄膜电路板、显示装置和信号处理方法
US10622065B2 (en) * 2018-09-12 2020-04-14 Micron Technology, Inc. Dedicated commands for memory operations
CN109558335B (zh) * 2018-10-17 2020-05-12 上海移芯通信科技有限公司 一种基于Nor Flash存储器的嵌入式系统的文件存储格式
WO2020128547A1 (en) * 2018-12-21 2020-06-25 Micron Technology, Inc. Method and device to ensure a secure memory access
CN112036103B (zh) * 2020-09-01 2024-03-08 深圳市傲立电子有限公司 一种从快时钟域跨慢时钟域处理多比特数据的装置及方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050256993A1 (en) 2004-05-03 2005-11-17 Stmicroelectronics S.A. Management of indexed registers in a system on a chip
US20070124566A1 (en) 2005-11-28 2007-05-31 Cohen Daniel S Command decoder for microcontroller based flash memory digital controller system

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04106793A (ja) * 1990-08-28 1992-04-08 Citizen Watch Co Ltd メモリインタフェース回路
JPH05290589A (ja) * 1992-04-03 1993-11-05 Nippon Steel Corp 半導体集積回路
US5509134A (en) * 1993-06-30 1996-04-16 Intel Corporation Method and apparatus for execution of operations in a flash memory array
JPH07307096A (ja) * 1994-05-13 1995-11-21 Fujitsu Ltd 半導体補助記憶装置
JPH11328084A (ja) * 1998-05-18 1999-11-30 Hitachi Ltd ディスク装置のホストインターフェース回路およびディスク装置
US6166963A (en) * 1998-09-17 2000-12-26 National Semiconductor Corporation Dual port memory with synchronized read and write pointers
JP4406988B2 (ja) * 1999-03-29 2010-02-03 ソニー株式会社 不揮発性記録媒体、記録方法、記録装置
JP3882459B2 (ja) * 1999-04-07 2007-02-14 ソニー株式会社 メモリ装置、データ処理装置、データ処理システムおよびデータ処理方法
US20060075395A1 (en) * 2004-10-01 2006-04-06 Lee Charles C Flash card system
JP3784229B2 (ja) * 2000-01-21 2006-06-07 シャープ株式会社 不揮発性半導体記憶装置およびそれを用いたシステムlsi
JP2002015584A (ja) * 2000-06-29 2002-01-18 Sanyo Electric Co Ltd 不揮発性メモリのリードプロテクト回路
FR2813427B1 (fr) * 2000-08-25 2002-11-29 St Microelectronics Sa Circuit de commande d'une memoire dram
US7395399B2 (en) * 2000-08-25 2008-07-01 Stmicroelectronics S.A. Control circuit to enable high data rate access to a DRAM with a plurality of areas
JP2003242474A (ja) 2002-02-18 2003-08-29 Toshiba Corp 非接触型icカード
JP2003242470A (ja) 2002-02-21 2003-08-29 Sony Corp 外部接続機器及びホスト機器
GB0204144D0 (en) 2002-02-22 2002-04-10 Koninkl Philips Electronics Nv Transferring data between differently clocked busses
JP3969240B2 (ja) * 2002-08-02 2007-09-05 ソニー株式会社 半導体記憶装置
JP4256198B2 (ja) * 2003-04-22 2009-04-22 株式会社東芝 データ記憶システム
US7139864B2 (en) * 2003-12-30 2006-11-21 Sandisk Corporation Non-volatile memory and method with block management system
JP4956922B2 (ja) * 2004-10-27 2012-06-20 ソニー株式会社 記憶装置
JP2006202412A (ja) * 2005-01-20 2006-08-03 Sharp Corp 半導体記憶装置
JP2007115382A (ja) * 2005-10-24 2007-05-10 Renesas Technology Corp 半導体集回路、記憶装置、及び制御プログラム
US7461186B2 (en) * 2006-02-03 2008-12-02 Infineon Technologies Ag Data handover unit for transferring data between different clock domains by parallelly reading out data bits from a plurality of storage elements
JP4434171B2 (ja) * 2006-04-26 2010-03-17 Tdk株式会社 メモリコントローラ及びフラッシュメモリシステム
JP4153535B2 (ja) * 2006-05-30 2008-09-24 Tdk株式会社 メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法
JP4991320B2 (ja) * 2007-01-12 2012-08-01 株式会社東芝 ホスト装置およびメモリシステム
JP2008181203A (ja) * 2007-01-23 2008-08-07 Sony Corp 記憶装置およびコンピュータシステム、並びに記憶装置の管理方法
JP2009059434A (ja) * 2007-08-31 2009-03-19 Toshiba Corp 半導体集積回路
US8417893B2 (en) * 2008-02-04 2013-04-09 Apple Inc. Memory mapping techniques
IT1399916B1 (it) 2010-04-30 2013-05-09 Balluchi Dispositivo di memoria ad accesso di registro indicizzato

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050256993A1 (en) 2004-05-03 2005-11-17 Stmicroelectronics S.A. Management of indexed registers in a system on a chip
US20070124566A1 (en) 2005-11-28 2007-05-31 Cohen Daniel S Command decoder for microcontroller based flash memory digital controller system

Also Published As

Publication number Publication date
DE102011075023A1 (de) 2012-03-01
TW201201099A (en) 2012-01-01
US20110271038A1 (en) 2011-11-03
JP2011243274A (ja) 2011-12-01
KR20110121594A (ko) 2011-11-07
CN102324246A (zh) 2012-01-18
US20140019702A1 (en) 2014-01-16
US8832392B2 (en) 2014-09-09
IT1399916B1 (it) 2013-05-09
TWI444891B (zh) 2014-07-11
JP5500457B2 (ja) 2014-05-21
ITMI20100761A1 (it) 2011-10-31
US8539189B2 (en) 2013-09-17
CN102324246B (zh) 2014-12-24

Similar Documents

Publication Publication Date Title
KR101266580B1 (ko) 메모리 디바이스에 대한 인덱스된 레지스터 액세스
KR101620128B1 (ko) 직렬 비휘발성 메모리를 위한 향상된 어드레싱 능력
US10509602B2 (en) Data storage device and operating method thereof
US20130219146A1 (en) Method, device and system for a configurable address space for non-volatile memory
CN109857679B (zh) 存储器控制器、存储器系统以及存储器系统的操作方法
CN102859504B (zh) 复制数据的方法和系统以及获得数据副本的方法
JP2012108999A (ja) シリアルインターフェースメモリの同時読み出し及び書き込みメモリ動作
US8904114B2 (en) Shared upper level cache architecture
US8085584B1 (en) Memory to store user-configurable data polarity
US20130219105A1 (en) Method, device and system for caching for non-volatile memory device
US10432230B2 (en) Error detection or correction of a portion of a codeword in a memory device
US10466938B2 (en) Non-volatile memory system using a plurality of mapping units and operating method thereof
US8856487B2 (en) Configurable partitions for non-volatile memory
JP5839632B2 (ja) シリアル不揮発性メモリに対する向上されたアドレス能力
US8380914B1 (en) Extended address mode for serial flash memory
CN116204124B (zh) 一种基于冲突锁的数据处理方法、系统及电子设备
JP5048074B2 (ja) 固定レジスタアドレス空間での制御及びステータス信号密度を増やす技術
US9497504B2 (en) Method for enhancing fast backward performance and associated electronic device
KR101014511B1 (ko) 프로세서와 다수의 낸드 플래시 메모리의 액세스 연결 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160418

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170421

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180502

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190515

Year of fee payment: 7