KR20120111951A - 주파수 구성 가능 클록 도메인을 갖는 브릿징 장치 - Google Patents

주파수 구성 가능 클록 도메인을 갖는 브릿징 장치 Download PDF

Info

Publication number
KR20120111951A
KR20120111951A KR20117031159A KR20117031159A KR20120111951A KR 20120111951 A KR20120111951 A KR 20120111951A KR 20117031159 A KR20117031159 A KR 20117031159A KR 20117031159 A KR20117031159 A KR 20117031159A KR 20120111951 A KR20120111951 A KR 20120111951A
Authority
KR
South Korea
Prior art keywords
clock
memory
signal
circuit
logic
Prior art date
Application number
KR20117031159A
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 KR20120111951A publication Critical patent/KR20120111951A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • 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
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device
    • 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
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/04Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Logic Circuits (AREA)
  • Memory System (AREA)

Abstract

복합 메모리 장치는 이산 메모리 장치와 그 이산 메모리 장치를 제어하기 위한 브릿지 장치를 포함한다. 구성 가능 클록 제어기가 시스템 클록을 수신하고, 시스템 클록의 소정의 비인 주파수를 갖는 메모리 클록을 생성한다. 시스템 클록 주파수는 최대와 최소값 사이에서 동적으로 가변적이고, 시스템 클록 주파수에 대한 메모리 클록 주파수는 복합 메모리 장치의 동작 동안의 임의의 시간에 주파수 분할비(FDR)를 주파수 레지스터에 로드시킴으로써 설정된다. FDR 코드에 응답하여, 구성 가능 클록 제어기는 메모리 클록 주파수를 변경한다.

Description

주파수 구성 가능 클록 도메인을 갖는 브릿징 장치{A BRIDGING DEVICE HAVING A FREQUENCY CONFIGURABLE CLOCK DOMAIN}
본 출원은 2009년 6월 29일에 출원된 미국 특허 가출원 61/221,309호에 대한 우선권을 주장하며, 그 개시내용이 전부 참고로 본 명세서에 통합되어 있다.
반도체 메모리 장치는 현재 유용한 산업 및 소비자 가전 제품에서 중요한 부품이다. 예를 들면, 컴퓨터, 휴대 전화기 및 다른 휴대용 전자제품은 모두 데이터를 저장하기 위한 어떤 형태의 메모리에 의존한다. 다수의 메모리 장치들이 일반적으로는 상품으로서 또는 이산 메모리 장치로서 유용하지만, 더 높은 레벨의 집적도 및 더 높은 입/출력(I/O) 대역폭에 대한 요구가 마이크로제어기 및 다른 처리 회로와 같은 시스템과 일체화될 수 있는 매립형 메모리의 개발을 유도하고 있다.
대부분의 가전 제품들은 데이터의 기억을 위한 플래시 메모리 장치와 같은 비휘발성 장치를 채용한다. 플래시 메모리 장치에 대한 요구는 이들 장치가 대용량의 비휘발성 기억장치를 필요로 하면서 작은 물리적인 영역을 차지하는 여러 가지 애플리케이션에 적합하기 때문에 크게 계속 성장하고 있다. 예를 들면, 플래시는 디지털 카메라, 셀 전화기, 유니버설 직렬 버스(USB) 플래시 장치 및 휴대용 뮤직 플레이어와 같은 여러 가지 가전 장치에서, 이들 장치에 의해 사용되는 데이터를 저장하기 위해 널리 이용되고 있다. 또한, 플래시 장치는 하드 디스크 드라이브(HDD) 대체용 고체 드라이브(SSDs)로서 사용된다. 그러한 휴대용 장치들은 바람직하게는 형태 인자(form factor) 크기 및 무게에서 최소화된다. 불행하게도, 멀티미디어 및 SSD 애플리케이션은 그들 제품의 형태 인자 크기 및 무게를 증가시킬 수 있는 대용량의 메모리를 필요로 한다. 따라서, 가전 제품 제조업체들은 소비자들에게 용인되는 그 크기 및 무게를 유지하기 위해 제품에 포함되는 물리적인 메모리의 크기를 제한함으로써 타협을 한다. 더욱이, 플래시 메모리가 DRAM이나 SRAM보다 더 높은 단위 면적당 밀도를 갖기 때문에, 그 성능은, 그 판독 및 기록 처리량에 부정적으로 영향을 주는 그 비교적 낮은 I/O 대역폭으로 인해 제한된다.
본 발명은 메모리 장치의 애플리케이션의 유비쿼터스 성질 및 그에 대한 점진적인 증가 요구를 충족시키기 위해, 고성능 메모리 장치, 즉 더 높은 I/O 대역폭, 더 높은 판독 및 기록 처리량, 및 증가된 동작의 신축성을 갖는 장치를 갖는 것이 바람직하다.
본 출원에 나타난 브릿지 장치 실시예들은 시스템 및 이산 메모리 장치 사이에 고속 인터페이스를 제공한다.
본 양태에 따르면, 글로벌 명령에 응답하여 이산 메모리 장치를 제어하기 위한 브릿지 장치가 제공된다. 브릿지 장치는 제1 로직 회로 및 제1 제어 회로를 갖는 제1 클록 도메인, 주파수 제어기, 및 제2 로직 회로 및 제2 제어 회로를 갖는 제2 클록 도메인을 포함한다. 제1 로직 회로 및 제1 제어 회로는 상기 이산 메모리 장치에 로컬 명령을 발행하기 위해 메모리 클록과 동기하여 동작한다. 주파수 제어기는 상기 메모리 클록을 상기 브릿지 장치에 제공되는 시스템 클록의 적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나로서 생성한다. 제2 로직 회로 및 제2 제어 회로는 상기 시스템 클록과 동기하여 수신된 상기 글로벌 명령을 상기 메모리 클록과 동기화된 상기 로컬 명령으로 변환하기 위해 상기 시스템 클록과 동기하여 동작한다.
이 양태의 일 실시예에서, 상기 브릿지 장치는, 상기 이산 메모리 장치에 제공될 적어도 하나의 시스템 데이터 입력 포트에 의해 수신되는 기록 데이터를 저장하고, 적어도 하나의 시스템 데이터 출력 포트에 제공될 상기 이산 메모리 장치로부터 수신되는 판독 데이터를 저장하는 메모리를 더 포함한다. 상기 메모리는, 상기 메모리 클록의 주파수에 대응하는 제1 데이터 레이트에서 상기 이산 메모리 장치에 상기 메모리의 메모리 어레이에 저장되는 상기 기록 데이터를 제공하는, 상기 제1 클록 도메인의 제1 제어 회로에 의해 제어되는 제1 메모리 입/출력 경로를 포함할 수 있다. 상기 메모리는 상기 메모리 어레이에 기록하기 위해 상기 제1 데이터 레이트에서 상기 판독 데이터를 수신할 수 있다. 상기 메모리는, 상기 시스템 클록의 주파수에 대응하는 제2 데이터 레이트에서 상기 메모리 어레이에 상기 기록 데이터를 제공하는, 상기 제2 클록 도메인의 제2 제어 회로에 의해 제어되는 제2 메모리 입/출력 경로를 포함할 수 있다. 상기 메모리는, 상기 제2 데이터 레이트에서 상기 메모리 어레이로부터 상기 판독 데이터를 제공할 수 있다. 이 실시예에서, 상기 제2 클록 도메인은 상기 제2 메모리 입/출력 경로에 상기 적어도 하나의 시스템 데이터 입력 포트에서 수신된 상기 기록 데이터를 제공하는 데이터 입력 경로 회로 및 상기 제2 메모리 입/출력 경로로부터 수신된 상기 판독 데이터를 상기 적어도 하나의 시스템 데이터 출력 포트에 제공하는 데이터 출력 경로 회로를 더 포함한다. 상기 데이터 입력 경로 회로 및 상기 데이터 출력 경로 회로는 상기 시스템 클록과 동기하여 동작한다.
본 실시예의 일 양태에 따르면, 상기 제2 로직 회로 및 상기 제2 제어 회로는 상기 글로벌 명령의 명령들을 상기 시스템 클록과 동기하여 상기 이산 메모리 장치와 호환하는 상기 로컬 명령으로 변환하는 변환 회로를 포함한다. 상기 제1 로직 회로 및 상기 제1 제어 회로는 상기 로컬 명령을 상기 메모리 클록과 동기하여 상기 이산 메모리 장치에 제공하도록 구성된다. 상기 제1 로직 회로 및 상기 제1 제어 회로는 상기 로컬 명령이 선택된 이산 메모리 장치에 대한 기록 동작에 대응할 때 상기 메모리 클록과 동기하여 상기 이산 메모리 장치에 출력하기 위해 상기 메모리부터 기록 데이터를 수신한다.
본 양태의 대체 실시예에서, 상기 제2 클록 도메인은 동작 코드 레지스터 및 레지스터를 더 포함한다. 상기 동작 코드 레지스터는 상기 시스템 클록의 분할비를 수신된 주파수 분할비 코드에 대응하는 비율로 변경하도록 상기 주파수 제어기를 제어하기 위해 주파수 분할 op-코드를 수신하여 저장한다. 상기 레지스터는 상기 주파수 분할비 코드를 수신하여 저장한다. 상기 주파수 분할비 코드는 정수 및 정수가 아닌 분할비에 대응하는 다중 비트를 포함할 수 있다.
본 양태의 또 다른 실시예에서, 상기 주파수 제어기는 클록 디바이더 및 셀렉터를 포함한다. 상기 클록 디바이더는 상기 시스템 클록을 상이한 정수 및 정수가 아닌 분할비로 분할하여 중간 클록 신호를 제공하도록 각각 구성된다. 상기 셀렉터는 상기 상이한 정수 및 정수가 아닌 분할비 중 어느 하나에 대응하는 주파수 분할비 코드에 응답하여 상기 중간 클록 신호 중 하나를 상기 메모리 클록으로서 전달한다. 상기 주파수 제어기는 상기 주파수 분할비 코드에 응답하여 상기 클록 디바이더 중 하나에 상기 시스템 클록을 선택적으로 전달하는 경로 제어 회로를 포함한다.
또 다른 실시예에서, 상기 주파수 제어기는 클록 디바이더 및 클록 결합 로직을 포함한다. 상기 클록 디바이더는 상기 시스템 클록의 제1 에지 상에 제1 중간 클록 신호 및 상기 시스템 클록의 제2 에지 상에 제2 중간 클록 신호를 제공하며, 여기에서, 상기 제1 중간 클록 신호 및 제2 중간 클록 신호의 각각은 적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나에 대응하는 비 셀렉터(ratio selector) 신호에 의해 설정된 기간을 갖는다. 상기 클록 결합 로직은 적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나로 분할된 상기 시스템 클록에 대응하는 주파수를 갖는 메모리 클록을 제공하도록 선택된 제1 중간 클록 신호와 선택된 제2 중간 클록 신호를 논리적으로 결합한다. 이 실시예에서, 상기 제1 중간 클록 신호의 각각은 이전의 제1 중간 클록 신호가 생성된 후 상기 시스템 클록의 1 사이클에서 생성되고, 상기 제2 중간 클록 신호의 각각은 이전의 제1 중간 클록 신호가 생성된 후 상기 시스템 클록의 1 사이클에서 생성된다. 상기 클록 디바이더는 초기 제1 중간 클록 신호에 응답하여 상기 제1 중간 클록 신호의 각각을 생성하고, 초기 제2 중간 클록 신호에 응답하여 상기 제2 중간 클록 신호의 각각을 생성하도록 구성될 수 있다. 상기 클록 디바이더는 초기 제1 중간 클록 신호에 응답하여 상기 제1 중간 클록 신호의 각각을 생성하고, 초기 제2 중간 클록 신호에 응답하여 상기 제2 중간 클록 신호의 각각을 생성하도록 구성될 수 있으며, 여기에서, 상기 초기 제2 중간 클록 신호는 상기 초기 제1 중간 클록 신호가 생성된 후 적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나에 대응하는 상기 시스템 클록의 소정수의 사이클에서 생성된다. 추가의 실시예에서, 상기 주파수 제어기는 적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나를 나타내는 주파수 분할비 코드에 응답하여 비 셀렉터 신호를 생성하는 주파수 분할비 디코더를 포함한다.
다른 실시예에 따르면, 상기 클록 디바이더는 제1 구성 가능 로직 루프 회로 및 제2 구성 가능 로직 루프 회로를 포함한다. 상기 제1 구성 가능 로직 루프 회로상기 시스템 클록의 제1 에지에서 상기 제1 중간 클록 신호를 생성하고, 제1 설정 신호에 응답하여 개시된다. 상기 제2 구성 가능 로직 루프 회로는 상기 시스템 클록의 제2 에지에서 상기 제2 중간 클록 신호를 생성하고, 적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나에 의해 미리 정해진 상기 시스템 클록의 다수의 사이클 이후에 수신된 제2 설정 신호에 응답하여 개시된다. 상기 제1 구성 가능 로직 루프 회로는 캐스케이드된(cascaded) 제1 에지 트리거된(triggered) 로직 소자 및 루프 조정 회로를 포함한다. 상기 캐스케이드된 제1 에지 트리거된 로직 소자는 상기 제1 중간 클록 신호 중 하나를 제공하기 위한 출력을 각각 갖고, 상기 시스템 클록의 제1 에지에 응답하여 상기 제1 중간 클록 신호 중 이전의 것을 래치하기 위한 입력을 각각 가지며, 상기 제1 설정 신호를 수신하도록 구성된 제1 초기화 로직 소자를 포함한다. 상기 루프 조정 회로는 상기 비 셀렉터 신호에 응답하여 상기 제1 중간 클록 신호 중 하나만을 제1 로직 소자에 선택적으로 결합함으로써 상기 제1 구성 가능 로직 루프 회로의 크기를 변경한다. 상기 제2 구성 가능 로직 루프 회로는 캐스케이드된 제2 에지 트리거된 로직 소자 및 루프 조정 회로를 포함한다. 상기 캐스케이드된 제2 에지 트리거된 로직 소자는 상기 제2 중간 클록 신호 중 하나를 제공하기 위한 출력을 각각 갖고, 상기 시스템 클록의 제2 에지에 응답하여 상기 제2 중간 클록 신호 중 이전의 것을 래치하기 위한 입력을 각각 가지며, 상기 제2 설정 신호를 수신하도록 구성된 제2 초기화 로직 소자를 포함한다. 상기 루프 조정 회로는 상기 비 셀렉터 신호에 응답하여 상기 제2 중간 클록 신호 중 하나만을 제2 로직 소자에 선택적으로 결합함으로써 상기 제2 구성 가능 로직 루프 회로의 크기를 변경한다.
또 다른 추가의 실시예에서, 상기 클록 결합 로직은 로직 구성 회로 및 클록 생성 회로를 포함한다. 상기 로직 구성 회로는 상기 비 셀렉터 신호에 응답하여 제어 신호를 제공한다. 상기 클록 생성 회로는 선택된 제1 중간 클록 신호와 선택된 제2 중간 클록 신호의 소정의 조합이 적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나에 의해 분할되는 상기 시스템 클록에 대응하는 주파수를 갖는 메모리 클록을 생성하는데 사용될 수 있게 하는 상기 제어 신호에 의해 구성 가능하게 된다.
또 다른 실시예에서, 상기 주파수 제어기는 리셋 조건에 응답하여 상기 제1 설정 신호 및 제2 설정 신호를 제공하는 클록 초기화 회로를 포함한다. 상기 클록 초기화 회로는, 적어도 하나의 신호 검출기, 리셋 회로 및 시동 동기화기를 포함한다. 상기 적어도 하나의 신호 검출기는 적어도 하나의 수신된 신호의 전이에 응답하여 적어도 하나의 검출 신호를 제공한다. 상기 리셋 회로는 상기 적어도 하나의 검출 신호에 응답하여 상기 제1 구성 가능 로직 루프 회로 및 제2 구성 가능 로직 루프 회로를 리셋한다. 상기 시동 동기화기는 상기 적어도 하나의 검출 신호에 응답하여 제1 설정 신호 및 제2 설정 신호를 제공하며, 상기 제2 설정 신호는 적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나에 의해 미리 정해진 상기 시스템 클록의 다수의 사이클 이후에 제공된다. 상기 적어도 하나의 신호 검출기는 칩 인에이블 신호 검출기 및 분할비 검출기를 포함할 수 있다. 상기 칩 인에이블 신호 검출기는 칩 인에이블 신호의 전이가 검출될 때 제1 검출 신호를 제공한다. 상기 분할비 검출기는 적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나에 대응하는 주파수 분할비 코드의 변화가 검출될 때 제2 검출 신호를 제공하며, 상기 적어도 하나의 검출 신호는 상기 제1 검출 신호 및 상기 제2 검출 신호를 포함한다.
상기 리셋 회로는 전원 전압이 소정의 임계 레벨에 도달할 때 제3 검출 신호를 제공하는 파워 업 리셋 회로를 포함할 수 있다. 상기 리셋 회로는 상기 제1 검출 신호, 제2 검출 신호 및 제3 검출 신호 중 적어도 하나에 응답하여 상기 제1 구성 가능 로직 루프 회로를 리셋하기 위한 제1 리셋 신호 및 상기 제1 구성 가능 로직 루프 회로를 리셋하기 위한 제2 리셋 신호를 생성한다. 특히, 상기 리셋 회로는 상기 제1 검출 신호, 제2 검출 신호 및 제3 검출 신호 중 적어도 하나를 수신한 후에 시스템 클록의 제1 에지 중 하나에서 상기 제1 리셋 신호를 생성하고, 상기 제1 에지 중 하나의 직후의 상기 시스템 클록의 제2 에지 중 하나에서 상기 제2 리셋 신호를 생성한다. 상기 시동 동기화기는 초기화 로직 소자, 캐스케이드된 로직 소자 및 위상 조정 회로를 포함한다. 상기 초기화 로직 소자는 상기 시스템 클록의 제2 에지 중 하나에서 상기 적어도 하나의 검출 신호에 응답하여 상기 제1 설정 신호를 생성한다. 상기 캐스케이드된 로직 소자는 상기 제2 에지 중 하나 이후의 상기 시스템 클록의 후속 제2 에지에서 상기 제1 설정 신호에 응답하여 설정 구성 신호를 생성한다. 상기 위상 조정 회로는 상기 시스템 클록의 제1 에지 중 하나에서 상기 비 셀렉터 신호에 응답하여 제2 설정 신호를 생성한다.
이하 첨부하는 도면을 참조하여 예에 의해 설명할 것이다.
도 1a는 일례의 비휘발성 메모리 시스템의 블록도이다.
도 1b는 도 1a의 예의 메모리 시스템에 사용되는 이산 플래시 메모리를 도시한 도면이다.
도 2a는 일례의 직렬 메모리 시스템의 블록도이다.
도 2b는 도 2a의 예의 메모리 시스템에 사용되는 이산 직렬 인터페이스 플래시 메모리 장치를 도시한 도면이다.
도 3a는 일 실시예에 따라 4개의 이산 메모리 장치 및 브릿지 장치를 갖는 복합 메모리 장치의 블록도이다.
도 3b는 본 실시예에 따르는 글로벌 명령을 설명하는 도면이다.
도 4는 일 실시예에 따르는 브릿지 장치의 블록도이다.
도 5는 일 실시예에 따르는 직렬 상호 접속된 메모리 시스템 내의 제어기에 접속된 다수의 복합 메모리 장치를 갖는 메모리 시스템의 블록도이다.
도 6a는 본 실시예에 따르는 고속 직렬 인터페이스 브릿지 장치로의 NAND의 블록도이다.
도 6b는 상이한 클록 도메인을 나타내는 도 6a의 브릿지 장치의 기능 블록도이다.
도 7은 본 실시예에 따르는 도 6에 도시된 주파수 제어기의 블록도이다.
도 8은 본 실시예에 따르는 도 6a에 도시된 주파수 제어기의 대체 실시예의 블록도이다.
도 9a는 본 실시예에 따르는 도 8의 클록 디바이더 내의 주파수 분할비 코드 디코더의 회로도이다.
도 9b는 본 실시예에 따르는 도 8의 경로 제어 블록 내의 구성 가능한 클록 신호 회로의 회로도이다.
도 10a 및 10b는 본 실시예에 따르는 도 8에 도시된 클록 결합 로직의 회로도이다.
도 11은 본 실시예에 따르는 도 9b의 구성 가능한 클록 신호 회로용 클록 초기화 회로의 블록도이다.
도 12는 본 실시예에 따르는 도 11의 외부 제어 신호 검출기의 회로도이다.
도 13은 본 실시예에 따르는 도 11의 분할비 검출기의 회로도이다.
도 14는 본 실시예에 따르는 도 11의 리셋 회로의 회로도이다.
도 15는 본 실시예에 따르는 도 11의 시동 동기화기 회로의 회로도이다.
도 16a 및 16b는 비정수 분할 동작을 도시하는 타이밍도이다.
도 17은 정수 분할 동작을 도시하는 일례의 타이밍도이다.
도 18은 본 실시예에 따르는 주파수 구성 명령을 설명하는 도면이다.
도 19는 복합 메모리 장치에 의해 클록 구성 글로벌 명령이 어떻게 수신되는지를 설명하는 타이밍도이다.
일반적으로, 적어도 몇몇 실시예들은 메모리 장치와 호환성이 없는 포맷이나 프로토콜을 갖는 글로벌 메모리 제어 신호에 응답하여 이산 메모리 장치를 제어하는 브릿지 장치와 이산 메모리 장치를 포함하는 복합 메모리 장치에 관한 것이다. 이산 메모리 장치는 국내(native)나 로컬 메모리 제어 신호에 응답하는 상업적인 규격품 메모리 장치 또는 주문 메모리 장치일 수 있다. 글로벌 및 로컬 메모리 제어 신호는 각각 상이한 포맷을 갖는 명령 및 명령 신호에 대응한다.
이산 메모리 장치에 관련하는 복합 메모리 장치의 전체 판독 및 기록 성능을 향상시키기 위해, 브릿지 장치는 이산 메모리 장치의 최대 정격 주파수보다 더 큰 주파수에서 기록 데이터를 수신하고 판독 데이터를 제공하도록 구성된다. 그러나, 동작하는 복합 메모리 장치 내의 이산 메모리 장치는 브릿지 장치가 판독 데이터를 그 더 높은 데이터 레이트로 출력할 수 있도록 실시간으로 브릿지 장치에 충분히 빨리 그 판독 데이터를 제공할 수 없다. 따라서, 이 속도의 불일치를 보상하기 위해, 브릿지 장치는 이산 메모리 장치의 페이지 버퍼로부터 판독되거나, 이산 메모리 장치의 페이지 버퍼에 기록될 데이터의 페이지의 적어도 일부를 일시적으로 저장하기 위한 메모리를 포함한다.
따라서, 본 실시예의 브릿지 장치는 적어도 2개의 상이한 클록 도메인을 갖는다. 제1 클록 도메인은 이산 메모리 장치에 명령을 제공하고 메모리로부터 이산 메모리 장치에 기록 데이터를 제공할 책임이 있는 회로, 및 메모리에 저장될 이산 메모리 장치로부터 수신된 판독 데이터를 제어하는 회로를 포함한다. 따라서, 제1 클록 도메인 내의 회로들의 동작은 이산 메모리 장치의 동작 주파수에 대응하는 제1 주파수를 갖는 메모리 클록과 동기화된다. 제2 클록 도메인은 이산 메모리 장치가 목적지인 외부 기록 데이터를 수신하여 메모리에 저장하고, 메모리에 저장된 이산 메모리 장치로부터의 판독 데이터를 제공할 책임이 있는 모든 나머지 회로를 포함한다. 통상적으로, 제2 클록 도메인의 회로는 이산 메모리 장치의 주파수와 적어도 같거나 큰 주파수에서 동작하도록 동기화된다. 제2 클록 도메인에 제공되는 클록 신호는 메모리 제어기와 같은 제어기 또는 이산 클록 발생기에 의해 제공되는 시스템 클록일 수 있다.
복합 메모리 장치, 및 특히 브릿지 장치는 시스템 클록만을 수신한다. 따라서, 제1 주파수를 갖는 메모리 클록은 브릿지 장치 내의 클록 제어 회로에 의해 내부적으로 생성된다. 위상 록트 루프(PLL) 회로나 지연 록트 루프(DLL) 회로가 제1 주파수를 갖는 메모리 클록 신호를 생성하기 위해 그러한 클록 제어 회로에 포함될 수 있지만, DLL 및 PLL은 전력 비효율 회로로 알려져 있다. 따라서, 그들 회로는 배터리와 같은 유한한 전원만이 사용 가능한 전원인 휴대용 전자기기 또는 장치에 사용하기에 적합하지 않다. 더욱이, 동일한 배치(batch)의 이산 메모리 장치들이 상이한 최대 동작 주파수를 가질 수도 있다. 그러나, 상이한 이산 메모리 장치 동작 주파수를 위한 상이한 브릿지 장치를 설계 및 제조하는 것은 비현실적이고 고가이다. 브릿지 장치 자체 내의 구성 변화에 의해 다른 차원의 복잡성이 도입된다. 특히, 제2 클록 도메인의 회로들은 특정의 최대 동작 주파수용으로 설계된다. 그러나, 주문 생산 공장으로부터의 회로의 배치들 간 또는 상이한 주문 생산 공장 간의 구성 변화로 인해, 브릿지 장치의 일부가 원하는 최대 동작 주파수에서 적절히 동작하지 않을 수도 있다. 더욱이, 예를 들면, 상승된 대기 온도와 같은 환경적인 조건이 트랜지스터의 성능에 영향을 줄 수 있다.
따라서, 2개의 각각의 클록 도메인의 제1 및 제2 클록 주파수는 종종 "최악의 경우의" 시나리오로 설계된다. 그러나, 이것은 메모리 클록의 제1 주파수보다 큰 주파수에서 동작할 수 있는 이산 메모리 장치의 이점을 취할 수 없는 제한된 성능 특성을 갖는 브릿지 장치를 결과로 야기할 수 있다. 유사하게, 특히 보존 시스템 클록 주파수나 제한된 온도 범위용으로 설계된 브릿지 장치의 회로들은 더욱 공격적인 설계가 가능한 강력한(robust) 제조 프로세스의 전체 장점을 취한다. 따라서, 더 나은 성능을 위한 잠재력이 희생된다.
본 실시예에 따르면, 구성 가능한 클록 제어기가 제공되어, 시스템 클록을 수신하여 시스템 클록의 소정의 비인 주파수를 갖는 메모리 클록을 생성한다. 시스템 클록 주파수는 최대값과 최소값 사이에서 동적으로 가변적이고, 시스템 클록 주파수에 대한 메모리 클록 주파수의 분할비는 복합 메모리 장치가 동작하는 동안의 언제라도 주파수 분할 비(FDR) 코드를 주파수 레지스터에 로딩함으로써 설정된다. FDR 코드에 응답하여, 구성 가능한 클록 제어기는 메모리 클록 주파수를 변경한다. 이 신축성의 레벨은 사용자가 복합 메모리 장치와 이산 메모리 장치 양자의 성능을 최대화시킬 수 있게 한다. 특히, 이 신축성은 최대 시스템 주파수까지의 어떤 시스템 클록 주파수가 선택될 수 있게 하여, 메모리 클록 주파수를 이산 메모리 장치와 브릿지 칩 사이의 데이터 전송을 위해 필요한 시간을 최소화하도록 가능한 최대 메모리 주파수에 가깝게 프로그래밍할 수 있게 한다.
여기에 기재된 기술에 따르는 시스템 및 장치는 직렬로 접속된 복수의 장치를 갖는 메모리 시스템에 적용 가능하다. 장치들은 예를 들면, 다이나믹 랜덤 액세스 메모리(DRAM), 스테이틱 랜덤 액세스 메모리(SRAM), 플래시 메모리, DiNOR 플래시 EEPROM 메모리, 시리얼 플래시 EEPROM 메모리, 페로(ferro) RAM 메모리, 마그네토 RAM 메모리, 상 변화 RAM 메모리, 및 임의의 적절한 형태의 메모리와 같은 메모리 장치이다.
이어지는 실시예의 상세한 설명에서, 다수의 예시된 회로들 및 회로 부품들은 전자 신호에 대해 공지된 동작을 실행하는 타입으로 되어 있다. 당업자는 대체 회로들 또는 회로 부품들이 신호들에 대해 동일한 동작을 제공하기 때문에 등가물로서 인식되는 대체 회로들 또는 회로 부품들의 지식을 갖게 될 것이다. 유사하거나 동일한 참조 번호 및 라벨 붙임이 유사한 부품 또는 신호를 나타내기 위해 상이한 도면에서 사용되고 있을 수도 있다.
이하, 이후에 기재되는 복합 메모리 장치 및 브릿지 장치 실시예의 이해를 더욱 용이하게 하기 위해 2개의 상이한 메모리 장치 및 시스템을 설명한다.
도 1a는 호스트 시스템(12)과 일체화된 비휘발성 메모리 시스템(10)의 블록도이다. 시스템(10)은 호스트 시스템(12)과 통신하는 메모리 제어기(14), 및 복수의 비휘발성 메모리 장치(16-1, 16-2, 16-3 및 16-4)를 포함한다. 예를 들어, 비휘발성 메모리 장치(16-1∼16-4)는 이산 비동기식 플래시 메모리 장치일 수 있다. 호스트 시스템(12)은 마이크로컨트롤러, 마이크로프로세서, 또는 컴퓨터 시스템과 같은 처리 장치를 포함한다. 도 1a의 시스템(10)은 메모리 장치(16-1∼16-4)가 채널(18)에 병렬로 접속되어 있는 상태로, 하나의 채널(18)을 포함하도록 구성된다. 당업자는 시스템(10)이 자체에 접속되는 4개보다 많거나 적은 메모리 장치를 가질 수 있음을 이해해야 한다. 현재 도시된 예에서는, 메모리 장치(16-1∼16-4)는 비동기식이고 서로 병렬로 접속되어 있다.
채널(18)은 대응하는 메모리 장치 모두에 접속된 데이터 및 제어 라인을 포함하는 공통 버스의 세트를 포함한다. 각각의 메모리 장치는 메모리 제어기(14)에 의해 제공되는 각각의 칩 선택(인에이블) 신호(CE1#, CE2#, CE3# 및 CE4#)로 인에이블 또는 디스에이블된다. 이러한 및 이하의 예에서, "#"은 신호가 액티브 로우 로직 레벨 신호인 것을 나타낸다. 이러한 방식에서, 칩 선택 신호 중 하나는 일반적으로 비휘발성 메모리 장치(16-1∼16-4) 중 대응하는 하나를 인에이블하도록 한번에 선택된다. 메모리 제어기(14)는 호스트 시스템(12)의 동작에 응답하여 선택된 메모리 장치에 채널(18)을 통해 명령 및 데이터를 발급하는 것을 담당한다. 메모리 장치로부터 출력된 판독 데이터는 채널(18)을 통해 다시 메모리 제어기(14)로 전송된다. 시스템(10)은 일반적으로 멀티-드롭 버스를 포함하며, 여기서 메모리 장치(16-1∼16-4)는 채널(18)에 대해 병렬로 접속된다.
도 1b는 도 1a의 메모리 시스템에 이용될 수 있는 이산 플래시 메모리 장치(16-1∼16-4) 중 하나의 도면이다. 이러한 플래시 메모리 장치는 예를 들면 전원, 제어 포트 및 데이터 포트를 포함하는 여러 개의 입력 및 출력 포트를 포함한다. "포트"라는 용어는 메모리 장치로의 일반적인 입력 또는 출력 단자를 칭하는 것으로, 예를 들면 패키지 핀, 패키지 솔더 범프(solder bump), 칩 본드 패드, 및 무선 송신기 및 수신기를 포함한다. 전원 포트는 전력을 플래시 메모리 장치의 전체 회로에 공급하기 위한 VCC 및 VSS를 포함한다. 추가의 전원 포트는 당업계에서 널리 알려진 것처럼 입력 및 출력 버퍼만을 공급하기 위하여 제공될 수 있다. 아래의 표 1은 제어 및 데이터 포트, 이에 대응하는 설명, 정의 및 예시적 로직 상태의 리스팅(listing)을 제공한다. 주목해야 할 점은, 상이한 메모리 장치들이 표 1에 도시된 것과 기능적으로 등가일 수 있는 상이한 명칭의 제어 및 데이터 포트를 가질 수도 있지만, 그 타입의 메모리 장치에 특정된 프로토콜에 따른다는 것이다. 그러한 프로토콜은 확립된 표준에 의해 통제되거나, 제조업자에 의해 특정 애플리케이션용으로 주문 제작될 수도 있다. 패키지 핀 및 볼 그리드 어레이는 포트의 물리적인 예로서, 패키징된 장치의 신호 또는 전압을 기판에 상호 접속하는 데 이용된다. 포트는 예를 들면 매립형 및 시스템-인-패키지(SIP) 시스템을 위한 단자 및 컨택트(contact)와 같은 다른 타입의 접속을 포함한다.
포트 설명
R/B# Ready/Busy: R/B#은 개방 드레인 포트이며 출력 신호는 장치의 동작 조건을 나타내기 위하여 이용됨. R/B# 신호는 프로그램, 소거 및 판독 동안 Busy 상태(R/B#=LOW)이고, 동작 완료 후 Ready 상태(R/B#=HIGH)로 복귀함.
CE# Chip Enable: 장치가 Ready 상태인 동안 CE#가 HIGH인 경우 장치는 저전력 대기 모드로 진입함. 프로그램 또는 소거 또는 판독 동작 동안 장치가 Busy 상태(R/B#=LOW)인 경우 CE# 신호는 무시되며, CE# 입력이 HIGH로 진입하더라도 대기 모드로 진입하지 않음.
CLE Command Latch Enable: CLE 입력 신호는 동작 모드 명령을 내부 명령 레지스터에 로딩하는 것을 제어하는데 이용됨. 명령은 CLE가 HIGH인 동안 WE# 신호의 상승 에지에서 I/O 포트로부터 명령 레지스터로 래칭됨.
ALE Address Latch Enable(ALE): ALE 신호는 어드레스 정보를 내부 어드레스 레지스터에 로딩하는 것을 제어하는데 이용됨. 어드레스 정보는 ALE가 HIGH인 동안 WE# 신호의 상승 에지에서 I/O 포트로부터 어드레스 레지스터로 래칭됨.
WE# Write Enable: WE# 신호는 I/O 포트로부터 데이터의 획득 제어에 이용됨.
RE# Read Enable: RE 신호는 직렬 데이터 출력을 제어함. 데이터는 RE#의 하강 에지 이후에 유용함.
WP# Write Protect: WP# 신호는 돌발적 프로그래밍 또는 소거로부터 장치를 보호하는데 이용됨. 내장 전압 조정기(고전압 발생기)는 WP#가 LOW일때 리셋됨. 이 신호는 일반적으로 입력 신호가 무효일 때 전력-온/오프 순서 동안 데이터를 보호하는데 이용됨.
I/O[i] I/O Port: 장치로 및 장치로부터 어드레스, 명령 및 입/출력 데이터를 전송하기 위한 포트로서 이용됨. 변수 i는 0이 아닌 정수값일 수 있다.
표 1에 나타낸 모든 신호들은 일반적으로 도 1b에 도시된 플래시 메모리 장치의 예의 동작에 대한 메모리 제어 신호로 칭한다. 플래시 메모리 장치에게 특정 동작을 실행하도록 지시하는 명령을 수신할 수 있으므로, 마지막 포트 I/O[i]은 메모리 제어 신호로서 간주됨에 주목하라. 포트 I/O[i]에 대해 어서트된(asserted) 명령은 I/O[i]을 구성하는 각각의 개별 신호 라인에 인가되는 로직 상태의 조합이므로, I/O[i]의 각각의 신호의 로직 상태는 예를 들면 WP#와 같은 다른 메모리 제어 신호 중 하나와 동일한 방식으로 기능한다. 주요 차이점은 기능을 수행하기 위해서 I/O[n] 로직 상태의 특정 조합이 플래시 메모리 장치를 제어한다는 점이다. 명령은 I/O 포트를 통해 수신되고, 명령 신호는 나머지 제어 포트를 포함한다. 당업자라면 동작 코드(op-코드)가 특정 메모리 동작을 실행하기 위한 명령내에 제공된다는 점을 이해할 것이다. 칩 인에이블 CE#을 제외하고, 모든 다른 포트는 채널(18)을 구성하는 각각의 글로벌 라인에 결합된다. 모든 포트는 메모리 동작을 실행하기 위하여 소정의 방법으로 제어된다. 어드레스, 명령 및 I/O 데이터는 I/O 포트에 제공되는 동안, 특정 제어 신호의 신호 타이밍 및 순서를 포함한다. 따라서, 도 1b의 비동기식 플래시 메모리 장치를 제어하기 위한 메모리 제어 신호는 특정 포맷 또는 프로토콜을 갖는다.
도 1a의 비휘발성 메모리 장치 각각은 데이터를 수신하고 제공하기 위한 하나의 특정 데이터 인터페이스를 갖는다. 도 1a의 예에서, 이는 비동기식 플래시 메모리 장치에서 공통적으로 이용되는 병렬 데이터 인터페이스이다. 다중 비트의 데이터를 병렬로 제공하는 표준 병렬 데이터 인터페이스는 정격 동작 주파수를 넘어서 동작하는 경우에, 크로스토크(cross-talk), 신호 왜곡(signal skew) 및 신호 감쇄(signal attanuation)와 같은 신호 품질을 저하시키는 통신 품질 저하 효과의 문제점을 갖는 것으로 공지되어 있다.
데이터 처리량을 증가시키기 위해서, 직렬 데이터 인터페이스를 갖는 메모리 장치가 공유된 미국 특허 공개 공보 제20070153576호 "출력 제어를 갖는 메모리", 및 공유된 미국 특허 공개 공보 제20070076502호 "데이지 체인 캐스캐이딩 장치"가 개시되어 있는데, 여기서는 예를 들면 200MHz의 주파수에서 직렬로 데이터를 수신하고 제공한다. 이는 직렬 데이터 인터페이스 포맷으로 칭한다. 이러한 공유된 특허 공개 공보에 제시된 것처럼, 설명된 메모리 장치는 서로에 대해 직렬로 접속된 메모리 장치의 시스템에 이용될 수 있다.
도 2a는 직렬 메모리 시스템의 개념적 속성을 나타내는 블록도이다. 도 2a에서, 직렬 링-토폴로지(serial ring-topology) 메모리 시스템(20)은 출력 포트 세트(Sout) 및 입력 포트의 세트(Sin)를 갖는 메모리 제어기(22) 및 직렬로 접속된 메모리 장치(24-1, 24-2, 24-3 및 24-N)를 포함한다. 메모리 장치는 예를 들면 직렬 인터페이스 플래시 메모리 장치일 수 있다. 도 2a에는 도시되지 않았지만, 각각의 메모리 장치는 입력 포트 세트(Sin) 및 출력 포트 세트(Sout)를 갖는다. 이들 입력 및 출력 포트의 세트는 메모리 장치를 자신이 일부로서 속한 시스템에 인터페이스하는 물리적 핀이나 커넥션과 같은, 하나 이상의 개별 입/출력(I/O) 포트를 포함한다. 일 예에서, 메모리 장치는 플래시 메모리 장치일 수 있다. 이와 달리, 메모리 장치는 DRAM, SRAM, DiNOR 플래시 EEPROM, 직렬 플래시 EEPROM, Ferro RAM, Magneto RAM, 상 변화 RAM 또는 명령을 실행하기 위하여 또는 명령 및 데이터를 다음 메모리 장치로 통과시키기 위하여 특정 명령 구조와 호환하는 I/O 인터페이스를 갖는 임의의 다른 적절한 타입의 메모리 장치일 수 있다. 도 2a의 예에서는 4개의 메모리 장치를 포함하나, 다른 구성으로는 단일 메모리 장치 또는 적절한 수의 메모리 장치를 포함할 수 있다. 따라서, 메모리 장치(24-1)가 Sout에 접속된 것과 같이 시스템(20)의 제1 장치이면, 메모리 장치(24-N)는 Sin에 접속된 N번째 또는 마지막 장치일 수 있으며, 여기서 N은 0 보다 큰 정수이다. 메모리 장치(24-2, 24-3) 및 24-3과 24-N 사이의 임의의 메모리 장치들이 제1과 마지막 메모리 장치 사이의 중간에 존재하는 직렬로 접속된다. 도 2a의 예에서, 메모리 장치(24-1 내지 24-N)는 동기식이며 서로에 대해 및 메모리 제어기(22)에 직렬로 접속된다.
도 2b는 도 2a의 메모리 시스템에서 이용될 수 있는 직렬 인터페이스 플래시 메모리 장치(예를 들면, 24-1 내지 24-N)의 도면이다. 이 예에서 직렬 인터페이스 플래시 메모리 장치는 전원 포트, 제어 포트 및 데이터 포트를 포함한다. 전원 포트는 전력을 플래시 메모리 장치의 전체 회로에 공급하기 위한 VCC 및 VSS를 포함한다. 당해 분야에서 공지된 것처럼 입력 및 출력 버퍼만을 공급하기 위하여 추가의 전원 포트가 제공될 수 있다. 아래의 표 2는 제어 및 데이터 포트, 이에 대응하는 설명, 정의 및 예시적 로직 상태의 리스트한 예를 제공한다. 주목해야 할 점은, 상이한 메모리 장치들이 표 1에 도시된 것과 기능적으로 등가일 수 있는 상이한 명칭의 제어 및 데이터 포트를 가질 수도 있지만, 그 타입의 메모리 장치에 특정된 프로토콜에 따른다는 것이다. 그러한 프로토콜은 확립된 표준에 의해 통제되거나, 제조업자에 의해 특정 애플리케이션용으로 주문 제작될 수도 있다.
포트 설명
CK/CK# Clock: CK는 시스템 클록 입력임. CK 및 CK#는 상이한 클록 입력임. 모든 명령, 어드레스, 입력 데이터 및 출력 데이터는 양방향의 CK 및 CK#의 교차 에지를 참조함.
CE# Chip Enable: CE#가 LOW인 경우, 장치는 인에이블됨. 일단 장치가 Program 또는 Erase 동작을 시작하면, Chip Enable 포트는 디어서트될 수 있음. 또한, CE# LOW 는 내부 클록 신호를 활성화하고, CE# HIGH는 내부 클록 신호를 비활성화함.
RST# Chip Reset: RST#는 장치에 대한 리셋을 제공함. RST#가 HIGH인 경우, 장치는 노멀 동작 모드에 있음. RST#가 LOW인 경우, 장치는 Reset 모드로 진입함.
D[j] Data Input: (j=1, 2, 3, 4, 5, 6, 7 또는 8)이 명령, 어드레스 및 입력 데이터를 수신함. 장치가 '1-비트 Link 모드(=디폴트)'로 설정되는 경우, D1은 유일한 유효 신호이고, CK/CK#의 8 크로싱에서의 패킷 중 1 바이트를 수신함. 장치가 '2-비트 Link 모드'로 설정되는 경우, D1&D2는 유일한 유효 신호이고, CK/CK#의 4 크로싱에서의 패킷 중 1 바이트를 수신함. 비사용 입력 포트는 그라운드됨.
Q[j] Data Output: (j=1, 2, 3, 4, 5, 6, 7 또는 8)이 판독 동작 동안 출력을 송신함. 장치가 '1-비트 Link 모드(=디폴트)'로 설정되는 경우, Q1은 유일한 유효 신호이고, CK/CK#의 8 크로싱에서의 패킷 중 1 바이트를 송신함. 장치가 '2-비트 Link 모드'로 설정되는 경우, Q1&Q2는 유일한 유효 신호이고, CK/CK#의 4 크로싱에서의 패킷 중 1 바이트를 수신함. 비사용 출력 포트는 DNC(=접속 금지).
CSI Command Strobe Input: CSI가 HIGH인 경우, D[j]를 통하여 명령, 어드레스 및 입력 데이터가 CK 및 CK#의 크로싱에서 래칭됨.
CSO Command Strobe Output: 에코 신호 CSO는 소스 신호 CSI의 재송신 버전임.
DSI Data Strobe Input: HIGH인 경우 Q[n] 버퍼를 인에이블함. DSI가 LOW인 경우, Q[n] 버퍼가 액세스된 이전 데이터를 유지함.
DSO Data Strobe Output: 에코 신호 DSO는 소스 신호 DSI의 재송신 버전임.
신호 CSO, DSO 및 Q[j]는 예외로 하고, 표 2에 표시된 전체 신호는 도 2b에 도시된 플래시 메모리 장치의 예의 동작에 대한 메모리 제어 신호이다. CSO 및 DSO는 CSI 및 DSI의 재송신 버전이며, Q[j]는 명령 및 데이터를 제공하기 위한 출력이다. 명령은 그것의 D[j] 시스템 데이터 포트를 통해 수신되며, 명령 신호는 제어 포트 RST#, CE#, CK, CK#, CSI 및 DSI를 포함한다. 도 2a에 도시된 구성 예에서, 전체 신호는 메모리 제어기(22)로부터 직렬인 메모리 장치 각각에 직렬로 통과되고, 병렬로 전체 메모리 장치에 제공된 CK, CK#, CE# 및 RST#는 예외로 한다. 도 2b의 직렬 인터페이스 플래시 메모리 장치는 그에 따라 메모리 동작을 실행하기 위하여 자신의 포맷 또는 프로토콜을 갖는 메모리 제어 신호를 수신한다.
도 2의 직렬 접속 메모리 시스템의 추가 상세가 2008년 2월 15일 출원된 "메모리 시스템에서의 클록 모드 결정"이란 명칭의 공유된 미국 특허 공개 공보 제20090039927호에 개시되며, 여기서는 각각의 메모리 장치가 병렬 클록 신호를 수신하는 직렬 메모리 시스템과 각각의 메모리 장치가 소스 동기식 클록 신호를 수신하는 직렬 메모리 시스템을 설명한다.
도 1b 및 도 2b에 도시된 바와 같이, 비동기식 및 직렬 인터페이스 플래시 메모리 장치의 기능적 포트 할당 또는 정의가 서로와는 실질적으로 상이하며, 따라서 서로에 대해 호환 불가능이다. 이산 메모리 장치를 제어하는데 이용되는 신호 세트의 기능적 포트 정의 및 순서 또는 타이밍을 프로토콜 또는 포맷이라 한다. 그러므로, 비동기식 및 직렬 플래시 메모리 장치는 상이한 메모리 제어 신호 포맷에 응답하여 동작한다. 이는 도 2b의 직렬 인터페이스 플래시 메모리 장치가 멀티-드롭 메모리 시스템에 이용될 수 없으며, 따라서, 도 1b의 비동기식 플래시 메모리 장치가 직렬 접속된 링 토폴로지 메모리 시스템에 이용될 수 없음을 의미한다.
도 1a 및 도 1b의 비동기식 플래시 메모리 장치보다 개선된 성능을 위해서는 도 2a 및 도 2b에 도시된 바와 같은 직렬 인터페이스 플래시 메모리 장치가 바람직하지만, 메모리 시스템 제조업자는 다른 플래시 제품을 고용량 플래시 제조 공장에 도입하기를 원하지 않을 수도 있다. 해당 산업에서의 이들의 유비쿼터스적 이용으로 인하여, 비동기식 플래시 메모리 장치는 고용량 제조의 규모의 경제로 인해 저렴하다. 현재, 메모리 시스템 제조업자는 고용량 제조의 규모의 경제를 즐기면서 직렬 상호 접속된 장치의 성능 이득을 취하는 해결책을 가지고 있지 않다.
여기서 설명된 적어도 일부의 실시예는 멀티-칩 패키지(MCP) 또는 시스템 인 패키지(SIP)에서 이산 메모리 장치와 함께 고속 인터페이스 칩 또는 브릿지 장치를 갖는 복합 메모리 장치를 제공한다. 브릿지 장치는 그 내부에 일체화되는 시스템과의 I/O 인터페이스를 제공하고, 글로벌 포맷에 따른 글로벌 메모리 제어 신호를 수신하고, 명령을 이산 메모리 장치와 호환하는 네이티브 또는 로컬 포맷을 따르는 로컬 메모리 제어 신호로 변환시킨다. 따라서 브릿지 장치의 I/O 인터페이스에 의해 제공되는 성능 이득을 제공하면서, 브릿지 장치는 NAND 플래시 장치와 같은 이산 메모리 장치의 재사용을 가능하게 한다. 브릿지 장치는 패키지 내에 이산 메모리 장치 다이와 일체화된 이산 로직 다이로서 구현될 수 있다.
본 실시예에서, 글로벌 포맷은 도 2a 및 도 2b의 직렬 플래시 메모리 장치와 호환하는 직렬 데이터 포맷이며, 로컬 포맷은 도 1a 및 2b의 비동기식 플래시 메모리 장치와 호환하는 병렬 데이터 포맷이다. 그러나, 본 발명의 실시예는 상술한 포맷 예에 국한되지 않으며, 복합 메모리 장치에 이용되는 이산 메모리 장치의 타입 및 복합 메모리 장치가 그 내부에 이용되는 메모리 시스템의 타입에 따라, 임의의 메모리 제어 포맷 쌍도 사용될 수 있다. 예를 들면, 메모리 시스템의 글로벌 포맷은 Open NAND 플래시 인터페이스(ONFi) 표준을 따르고, 로컬 포맷은 비동기식 플래시 메모리 장치 메모리 제어 신호 포맷을 따를 수 있다. 예를 들면, 구체적으로 ONFi 표준은 ONFi 2.0 사양이다. 이와 달리, 글로벌 포맷은 비동기식 플래시 메모리 장치 메모리 제어 신호 포맷을 따르고, 로컬 포맷은 ONFi 2.0 사양 포맷을 따를 수 있다. 일반적으로, ONFi 사양은 데이터 및 명령이 클록과 동기하여 그 데이터 입/출력 포트를 통해 순응하는 메모리 장치에 제공되는 멀티-드롭(multi-drop) 동기 프로토콜이다. 바꿔 말하면, ONFi 순응 메모리 장치는, 하나의 중요한 차이점이 ONFi 순응 장치가 클록 신호를 수신하는 것인 병렬 양방향 입/출력 포트를 갖는 비동기 NAND 플래시 메모리 장치와 다소 유사성을 가질 수 있다.
도 3a는 본 실시예에 따른 복합 메모리 장치의 블록도이다. 도 3a에 도시된 바와 같이, 복합 메모리 장치(100)는 4개의 이산 메모리 장치(104)에 접속된 브릿지 장치(102)를 포함한다. 이산 메모리 장치(104) 각각은 예를 들면 8Gb의 메모리 용량을 갖는 비동기식 플래시 메모리 장치일 수 있으나, 8Gb 장치 대신에 임의 용량의 이산 플래시 메모리 장치가 이용될 수 있다. 더욱이, 복합 메모리 장치(100)는 4개의 이산 메모리 장치를 갖는 것에 한정되지 않는다. 브릿지 장치(102)가 복합 메모리 장치(100)에 최대 수의 이산 메모리 장치를 수용하도록 설계되는 경우에는 임의의 적절한 수의 이산 메모리 장치가 포함될 수 있다.
복합 메모리 장치(100)는 글로벌 명령을 수신하기 위한 입력 포트 GLB_IN 및 수신된 글로벌 명령 및 판독 데이터를 통과시키기 위한 출력 포트 GLB_OUT를 갖는다. 도 3b는 본 실시예에 따른 글로벌 명령의 계층 구조를 도시하는 개략도이다. 글로벌 명령(110)은 특정 포맷을 갖는 글로벌 메모리 제어 신호(GMCS)(112) 및 어드레스 헤더(AH)(114)를 포함한다. 이러한 글로벌 메모리 제어 신호(112)는 도 2b의 직렬 인터페이스 플래시 메모리 장치를 위한 메모리 제어 신호와 같은 메모리 명령 및 명령 신호를 제공한다. 어드레스 헤더(114)는 시스템 레벨 및 복합 메모리 장치 레벨에서 이용되는 어드레싱 정보를 포함한다. 이러한 추가의 어드레싱 정보는 메모리 명령 내의 op-코드를 실행하기 위하여 복합 메모리 장치를 선택하기 위한 글로벌 장치 어드레스(GDA)(116) 및 op-코드를 실행하기 위한 선택된 복합 메모리 장치 내에서 특정 이산 장치를 선택하기 위한 로컬 장치 어드레스(LDA)(118)를 포함한다. 요약하면, 글로벌 명령은 하나의 포맷에 대응하는 전체 메모리 제어 신호를 포함하며, 또한 복합 메모리 장치 또는 그 안의 이산 메모리 장치를 선택하거나 제어하기 위하여 필요할 수도 있는 추가의 어드레싱 정보를 포함한다.
브릿지 장치(102)는 op-코드를 실행하지 않거나 또는 행 및 어드레스 정보를 갖는 임의의 메모리 위치에 액세스하지 않음에 주목한다. 브릿지 장치(102)는 수신된 글로벌 메모리 제어 신호(112)를 변환하도록 선택되는지의 여부를 판정하기 위해 글로벌 장치 어드레스(116)를 사용한다. 선택되는 경우, 브릿지 장치(102)는 다음으로 어떤 이산 메모리 장치에 변환된 글로벌 메모리 제어 신호(112)가 전송되는지를 판정하기 위하여 로컬 장치 어드레스(118)를 이용한다. 전체 4개의 이산 메모리 장치(104)와 통신하기 위하여, 브릿지 장치(102)는 4개 세트의 로컬 I/O 포트(도시 생략)를 포함하며, 각각은 후술하는 바와 같이, 대응하는 이산 메모리 장치에 접속된다. 각각의 I/O 포트 세트는 적절한 동작을 위해 이산 메모리 장치가 필요로 하는 모든 신호를 포함하며, 이에 따라 로컬 장치 인터페이스로서 기능한다.
판독 데이터는 복합 메모리 장치(100)로부터 또는 이전의 복합 메모리 장치로부터 임의의 하나의 플래시 메모리 장치(104)에 의해 제공된다. 특히, 브릿지 장치(102)는 메모리 시스템의 메모리 제어기에 접속되거나 또는 직렬 상호 접속된 장치의 시스템 내에서 다른 복합 메모리 장치의 다른 브릿지 장치에 접속될 수 있다. 입력 포트 GLB_IN 및 출력 포트 GLB_OUT는 패키지 핀, 다른 물리적 도전체, 또는 복합 메모리 장치(100)로 및 로부터 글로벌 명령 신호 및 판독 데이터를 송/수신하기 위한 다른 임의의 회로일 수 있다. 브릿지 장치(102)는 그에 따라, 도 2a의 메모리 제어기(22)와 같은 외부 제어기와 또는 시스템 내의 다른 복합 메모리 장치로부터의 브릿지 장치와 통신이 가능하도록 하기 위하여 입력 포트 GLB_IN 및 출력 포트 GLB_OUT에 대응하는 접속을 가진다. 도 5의 실시예에 도시되는 바와 같이, 많은 복합 메모리 장치가 서로 직렬로 접속될 수 있다.
도 4는 실시예에 따른 브릿지 장치(200)의 블록도로서, 도 3a에 도시된 브릿지 장치(102)에 대응한다. 브릿지 장치(200)는 브릿지 장치 입/출력 인터페이스(202), 메모리 장치 인터페이스(204), 및 포맷 변환기(206)를 갖는다. 포맷 변환기(206)는 제1 포맷인 글로벌 명령 및 글로벌 명령 신호를 포함하는 글로벌 메모리 제어 신호를 제2 포맷으로 변환하는 명령 포맷 변환기(208) 및 제1 포맷과 제2 포맷 사이에서 데이터를 변환하기 위한 데이터 포맷 변환기(210)를 포함한다. 명령 포맷 변환기(208)는 제1 포맷의 글로벌 메모리 제어 신호에 응답하여 도 3a의 이산 메모리 장치와 같은 이산 메모리 장치를 제2 포맷에 따라 제어하기 위한 상태 머신(도시 생략)을 더 포함한다.
브릿지 장치 입/출력 인터페이스(202)는 예를 들면 메모리 제어기 또는 다른 복합 메모리 장치와 같은 외부 장치와 통신한다. 브릿지 장치 입/출력 인터페이스(202)는 예를 들면 직렬 명령 포맷과 같은 글로벌 포맷의 다른 복합 메모리 장치 또는 메모리 제어기로부터 글로벌 명령을 수신한다. 도 3b를 참조하면, 입/출력 인터페이스(202) 내의 로직은 글로벌 명령(110)가 대응하는 복합 메모리 장치에 어드레스되는지의 여부를 판정하기 위하여 글로벌 명령(110)의 글로벌 장치 어드레스(116)를 처리하고, 대응하는 복합 메모리 장치의 어떤 이산 메모리 장치가 op 코드 및 선택적인 행 및 열 어드레스 및 선택적인 기록 데이터를 포함하는 변환된 명령을 수신하는지의 여부를 판정하기 위하여 글로벌 명령(110)의 로컬 장치 어드레스(118)를 처리한다. 글로벌 명령이 브릿지 장치(200)에 접속된 이산 메모리 장치에 어드레스되는 경우, 포맷 변환기(206) 내의 명령 포맷 변환기(208)는 op 코드 및 명령 신호 및 임의의 행 및 어드레스 정보를 제공하는 글로벌 메모리 제어 신호(112)를 글로벌 포맷에서 로컬 포맷으로 변환하고, 이를 메모리 장치 인터페이스(204)에 전달한다. 본 실시예에서는, 브릿지 장치가 병렬 데이터 포맷을 갖고 내부적으로 동작한다. 기록 데이터가 예를 들면 직렬 데이터 포맷의 브릿지 장치 입/출력 인터페이스(202)에 제공되는 경우, 브릿지 장치 입/출력 인터페이스(202)는 병렬 포맷의 데이터 비트를 제공하기 위하여 직렬-병렬 변환 회로를 포함한다. 판독 동작을 위해, 브릿지 장치 입/출력 인터페이스(202)는 GLB_OUT 출력 포트를 통한 출력을 위하여 직렬 포맷의 데이터 비트를 제공하기 위한 병렬-직렬 변환 회로를 포함한다.
명령 포맷 변환기(208)의 로직이 이산 메모리 장치(104)와 호환되도록 신호의 로직 변환을 실행하기 위하여 특별히 설계되므로, 글로벌 포맷 및 로컬 포맷은 공지된 것으로 간주된다. 명령 포맷 변환기(208)는, 네이티브 포맷을 갖는 메모리 제어기 신호로 이산 메모리 장치를 제어하는데 이용되는 메모리 시스템의 메모리 제어기의 것과 적어도 실질적으로 유사한 제어 로직을 포함할 수 있음에 주목한다. 예를 들면, 명령 포맷 변환기(208)는, 이산 메모리 장치가 메모리 장치(16-1 내지 16-4)와 같은 비동기식 메모리 장치라면, 도 1a의 메모리 제어기(14)의 동일한 제어 로직을 포함할 수 있다. 이는 명령 포맷 변환기(208)의 제어 로직이 이산 메모리 장치에 네이티브한 로컬 포맷의 메모리 제어 신호의 타이밍 및 순서를 제공한다는 것을 의미한다.
글로벌 명령이 데이터 기록 동작에 대응하는 경우, 포맷 변환기(206)의 데이터 포맷 변환기(210)는 글로벌 포맷에서 로컬 포맷으로 데이터를 변환시키고, 이를 메모리 장치 인터페이스(204)에 전달한다. 판독 또는 기록 데이터의 비트는 로직 변환을 필요로 하지 않으며, 따라서 데이터 포맷 변환기(210)는 제1 데이터 포맷과 제2 데이터 포맷 사이의 데이터의 비트 위치에 대한 적절한 매핑을 보증한다. 포맷 변환기(206)는 이산 메모리 장치로부터의 판독된 데이터 또는 브릿지 장치 입/출력 인터페이스(202)로부터 수신된 기록 데이터를 저장하기 위한 데이터 버퍼로서 기능한다. 그에 따라, 글로벌 포맷과 로컬 포맷 사이의 데이터 폭 불일치는 수용될 수 있다. 또한, 이산 메모리 장치와 브릿지 장치(200) 사이 및 브릿지 장치(200)와 다른 복합 메모리 장치 사이의 상이한 데이터 전송 속도는 데이터 포맷 변환기(210)의 버퍼링 기능으로 인하여 맞추어진다.
메모리 장치 인터페이스(204)는 그 후 로컬 명령 포맷의 변환된 명령을 도 3b의 글로벌 명령(110)의 로컬 장치 어드레스(118)에 의해 선택되는 이산 메모리 장치로 전달 또는 통신한다. 본 실시예에서, 변환된 명령은 명령 경로(212)를 통해 제공된다. 일 실시예에서, 명령 경로(212)는 복합 메모리 장치의 각각의 이산 메모리 장치와 메모리 장치 인터페이스(204) 사이에 접속된 i 세트의 전용 로컬 I/O 포트(LC-i) 또는 채널을 포함한다. 변수 i는 복합 메모리 장치의 이산 메모리 장치의 수에 대응하는 정수이다. 예를 들면, 각각의 LC-i 채널은 도 1b 및 표 1에 도시된 모든 포트를 포함한다.
이하는 도 3a의 복합 메모리 장치(100)를 더 참조로 하여 브릿지 장치(200)의 동작 예를 설명한다. 판독 동작을 위하여, 입력 포트 GLB_IN를 통하여 브릿지 장치 입/출력 인터페이스(202)에 도달하는 글로벌 판독 명령와 같은 글로벌 명령이 수신된다. 이러한 글로벌 판독 명령은 브릿지 장치(200)에 접속된 이산 메모리 장치(104)로부터 판독될 데이터에 대한 글로벌 포맷의 op 코드와 행 및 열 정보를 제공하는 글로벌 메모리 제어 신호를 포함한다. 본 실시예에서는, 글로벌 명령은 이전에 표 2에 도시된 클록 CK와 같은 시스템 클록과 동기하여 수신된다. 브릿지 장치 입/출력 인터페이스(202)가 글로벌 장치 어드레스(116)를 복합 메모리 장치(100)의 소정의 어드레스와 비교함으로써 글로벌 판독 명령에 대해 선택된 것으로 판정하는 경우, 명령 포맷 변환기(208)는 글로벌 판독 명령을 판독 데이터 명령이 실행되는 이산 메모리 장치(104)와 호환하는 로컬 포맷으로 변환한다. 후술하는 바와 같이, 복합 메모리 장치는 할당된 어드레스를 가질 수 있다. 글로벌 판독 명령의 로컬 장치 어드레스(118)는 메모리 장치 인터페이스(204)에 전달되고, 변환된 판독 데이터 명령은 명령 경로(212)의 로컬 I/O 포트의 대응하는 세트를 통해 로컬 장치 어드레스에 의해 어드레스되는 이산 메모리 장치에 제공된다. 본 실시예에서, 로컬 명령은 시스템 클록보다 낮은 주파수를 가질 수 있는 메모리 클록과 동기하여 제공된다. 주목할 것은, NAND 플래시 메모리 장치와 같은 몇몇 이산 메모리 장치는 비동기화되어 클록 신호를 수신하지 않는다. 그러나, 그러한 비동기 메모리 장치에 제공되는 메모리 제어 신호는 본 실시예에서는 메모리 클록인 클록에 동기하여 생성되는 상승 및 하강 에지를 갖는다.
판독 데이터라고 칭하는 데이터는 선택된 이산 메모리 장치(104)로부터 판독되고, 로컬 포맷으로 및 메모리 클록 주파수에서 메모리 장치 인터페이스(204)의 동일한 로컬 I/O 포트를 통해 데이터 포맷 변환기(210)에 제공된다. 데이터 포맷 변환기(210)는 그 후 로컬 포맷으로부터 글로벌 포맷으로 판독 데이터를 변환하고, 판독 데이터를 선택된 이산 메모리 장치(104)로부터 메모리 클록 주파수에서 브릿지 장치 인터페이스(202)의 출력 포트 GLB_OUT를 통해 메모리 제어기로 제공한다. 브릿지 장치 인터페이스(202)는 데이터 포맷 변환기(210) 또는 입력 포트 GLB_IN으로부터의 판독 데이터를 출력 포트 GLB_OUT로 결합시키기 위한 내부 스위칭 회로를 포함한다.
도 5는 본 실시예에 따르는 메모리 제어기와 링 토폴로지(ring topology)로 직렬 접속되는 복수의 복합 메모리 장치를 갖는 메모리 시스템이다. 본 예에서, 각각의 도시된 복합 메모리 장치들은 도 4의 브릿지 장치(200)를 가질 수 있는 도 3a에 도시된 구성을 갖는다. 도 5의 메모리 시스템(300)은 도 2a의 직렬 메모리 시스템(20)과 유사하다. 메모리 시스템(300)은 메모리 제어기(302) 및 복합 메모리 장치(304-1∼304-j)를 포함하며, 여기에서 j는 정수이다. 개별 복합 메모리 장치(304-1∼304-j)는 메모리 제어기(302)와 직렬 상호 접속된다. 도 2a의 시스템(20)과 유사하게, 복합 메모리 장치(304-1)는 메모리 제어기(302)의 출력 포트 Sout에 접속되어 있으므로 메모리 시스템(300)의 제1 복합 메모리 장치이고, 메모리 장치(304-j)는 메모리 제어기(302)의 입력 포트 Sin에 접속되어 있으므로 최종 장치이다. 복합 메모리 장치(304-2 내지 304-7)는 제1 및 최종 복합 메모리 장치 사이에 접속되는 사이에 끼어있는 직렬 접속된 메모리 장치들이다. Sout 포트는 글로벌 포맷으로 글로벌 명령을 제공한다. Sin 포트는 글로벌 포맷으로 판독 데이터를 수신하고, 글로벌 명령은 모든 복합 메모리 장치를 통해 전파한다.
도 5에 도시된 각각의 복합 메모리장치는 도 3a에 도시된 복합 메모리 장치와 유사하다. 각각의 복합 메모리 장치는 브릿지 장치(102) 및 4개의 이산 메모리 장치(104)를 갖는다. 앞서 설명한 바와 같이, 각각의 복합 메모리 장치 내의 각 브릿지 장치(102)는 각각의 이산 메모리 장치(104)에 접속되고, 직렬 링 토폴로지나 직렬 상호 접속 구성 내의 메모리 제어기(302) 및/또는 이전 또는 이후의 복합 메모리 장치의 어느 하나에 접속된다. 각 복합 메모리 장치(304-1∼304-j)의 기능은 도 3a 및 도 4의 실시예에 대해 앞서 설명한 것과 동일하다.
메모리 시스템(300)에서, 각 복합 메모리 장치는 고유의 글로벌 장치 어드레스가 할당된다. 이 고유의 글로벌 장치 어드레스는 브릿지 장치(102)의 장치 어드레스 레지스터에, 더욱 구체적으로는 도 4에 도시된 브릿지 장치 블록도의 입/출력 인터페이스(202)의 레지스터에 저장될 수 있다. 이 어드레스는 "직렬 상호 접속으로 혼합된 장치 타입에 무관한 식별자를 생성하는 장치 및 방법"이란 명칭의 공유된 미국 특허 공개 공보 제20080192649호에 개시된 바와 같이, 장치 어드레스 할당 스킴(scheme)을 사용하여 메모리 시스템(300)의 파워 업 상태 동안 자동으로 할당될 수 있다. 또한, 각 복합 메모리 장치(304)는 각 복합 메모리 장치(304) 내의 이산 메모리 장치의 수에 관한 정보를 저장하기 위한 이산 장치 레지스터를 포함할 수 있다. 그러므로 동일한 파워 업 동작 상태 동안, 메모리 제어기는 각 이산 장치에 문의하여 각 복합 메모리 장치 내의 다수의 이산 메모리 장치를 등록할 수 있다. 그래서, 메모리 제어기는 메모리 시스템(300)의 각 복합 메모리 장치(304) 내의 개별 이산 메모리 장치(104)를 선택적으로 어드레스할 수 있다.
이하에 복합 메모리 장치(304-3)가 메모리 동작을 실행하기 위해 선택되는 일례를 사용하여, 메모리 시스템(300)의 동작을 설명한다. 본 예에서, 메모리 시스템(300)은 도 2에 도시된 시스템과 유사한 직렬 접속된 메모리 시스템이고, 각각의 이산 메모리 장치(104)는 비동기 NAND 플래시 메모리 장치인 것으로 가정한다. 따라서, 각각의 복합 메모리 장치(304-1 내지 304-j) 내의 브릿지 장치는 메모리 제어기(302)에 의해 발행된 글로벌 포맷의 글로벌 명령을 수신하여 그 명령을 NAND 플래시 메모리 장치와 호환하는 로컬 포맷으로 변환하도록 설계된다. 메모리 시스템은 파워 업하고 있고 각 복합 메모리 장치에 대한 어드레스가 할당되어 있다고 또한 가정한다.
메모리 제어기(302)는 복합 메모리 장치(304-3)에 대응하는 글로벌 장치 어드레스를 포함하는 Sout 포트로부터 글로벌 명령을 발행한다. 제1 복합 메모리 장치(304-1)는 글로벌 명령을 수신하고, 그것의 브릿지 장치(102)는 자신에게 할당된 글로벌 장치 어드레스를 글로벌 명령의 것과 비교한다. 글로벌 장치 어드레스들이 일치하지 않기 때문에, 복합 메모리 장치용 브릿지 장치(102)는 글로벌 명령을 무시하고 글로벌 명령을 복합 메모리 장치(304-2)의 입력 포트에 전달한다. 동일한 동작이 복합 메모리 장치(304-2)에서 일어나는데, 그 이유는 자신에게 할당된 글로벌 장치 어드레스가 글로벌 명령 내의 것과 일치하지 않기 때문이다. 따라서, 글로벌 명령은 복합 메모리 장치(304-3)에 전달된다.
복합 메모리 장치(304-3)의 브릿지 장치(102)는 자신에게 할당된 글로벌 장치 어드레스와 글로벌 명령 내의 것 사이의 일치를 판정한다. 따라서, 복합 메모리 장치(304-3)의 브릿지 장치(102)는 NAND 플래시 메모리 장치와 호환하는 로컬 포맷으로 로컬 메모리 제어 신호를 변환하도록 처리한다. 브릿지 장치는 그 후 변환된 명령을 글로벌 명령에 포함되는 로컬 장치 어드레스(118)에 의해 선택되는 NAND 플래시 메모리 장치에 전송한다. 선택된 NAND 플래시 장치는 그 후 자신이 수신한 로컬 메모리 제어 신호에 대응하는 동작을 실행한다.
복합 메모리 장치(304-3)의 브릿지 장치(102)가 글로벌 명령을 변환하고 있는 동안, 그 브릿지 장치는 다음 복합 메모리 장치에 글로벌 명령을 전달한다. 나머지 복합 메모리 장치는 메모리 제어기(302)의 Sin 포트에서 결국 수신되는 글로벌 명령을 무시한다. 글로벌 명령이 판독 동작에 대응하는 경우, 복합 메모리 장치(304-3)의 선택된 NAND 플래시 메모리 장치는 판독 데이터를 로컬 포맷으로 자신의 대응하는 브릿지 장치(102)에 제공한다. 브릿지 장치(102)는 그 후 판독 데이터를 글로벌 포맷으로 변환하여, 그것을 자신의 출력 포트를 통해 다음 복합 메모리 장치에 전달한다. 모든 나머지 복합 메모리 장치의 브릿지 장치(102)는 메모리 제어기(302)의 Sin 포트에 판독 데이터를 전달한다. 당업자는 다른 글로벌 명령들이 그 모두가 선택된 복합 메모리 장치의 브릿지 장치(102)에 의해 변환되는 판독 동작을 실행하기 위해 발행될 수도 있음을 이해할 것이다.
도 5의 실시예에서, 시스템 클록은 이산 클록 발생기에 의해 병렬로 각각의 복합 메모리 장치 및 메모리 제어기(302)에 제공될 수 있다. 이와 달리, 메모리 제어기는 모든 복합 메모리 장치에 병렬로 시스템 클록을 제공할 수 있다. 추가의 대체 실시예에서, 모든 복합 메모리 장치는 소스 동기 포맷으로 직렬로 시스템 클록을 수신 및 제공한다. 이들 실시예 중 어느 하나에서, 각 브릿지 장치(102)는 로컬 메모리 클록을 생성하기 위해 시스템 클록을 수신한다. 각 복합 메모리 장치용의 메모리 클록은, 메모리 시스템(300) 내의 상이한 복합 메모리 장치가 상이한 메모리 클록 주파수를 갖고 동작하도록 구성될 수 있으므로 "로컬" 메모리 클록이라고 칭해질 수 있다.
본 실시예에서, 글로벌 명령은 메모리 시스템(300) 내의 모든 복합 메모리 장치에 전파된다. 대체 실시예에 따르면, 브릿지 장치(102)는 메모리 시스템(300) 내의 추가의 복합 메모리 장치로의 글로벌 명려의 전파를 금지하기 위한 부가 로직을 포함한다. 더욱 구체적으로는, 선택된 복합 메모리 장치가 글로벌 장치가 자신에게 어드레스되었다고 판정하면, 그 대응하는 브릿지 장치(102)가 자신의 출력 포트를 예컨대, VSS 또는 VDD의 고정 전압 레벨과 같은 널(null) 값으로 구동시킨다. 따라서, 나머지 미선택 복합 메모리 장치는 글로벌 명령을 실행하지 않기 때문에 스위칭 전력을 보존한다. 직렬 접속된 메모리 시스템에 대한 그러한 전력 절감 스킴의 상세는 "직렬 상호접속으로 혼합된 장치 타입에 무관하게 식별자를 생성하는 장치 및 방법"이라는 명칭의 공유된 미국 특허출원 20080201588호에 기재되어 있으며, 그 내용은 전부 참고로 본 명세서에 통합되어 있다.
도 5의 앞서 설명한 실시예는 각 복합 메모리 장치(304-1∼304-n)가 자체 내에 예컨대, 비동기 NAND 플래시 메모리 장치와 같은 동일한 타입의 이산 메모리 장치를 갖는 메모리 시스템을 예시한다. 이것은 모든 복합 메모리 장치가 동일하므로 동종 메모리 시스템이라고 한다. 대체 실시예에서, 이종 메모리 시스템이 가능하며, 여기에서 상이한 복합 메모리 장치는 상이한 타입의 이산 메모리 장치를 갖는다. 예를 들면, 몇몇 복합 메모리 장치는 비동기 NAND 플래시 메모리 장치를 포함하는 한편 나머지는 NOR 플래시 메모리 장치를 포함할 수 있다. 그러한 대체 실시예에서, 모든 복합 메모리 장치는 동일한 글로벌 포맷에 따르지만, 내부적으로는, 각 복합 메모리 장치는 글로벌 포맷 메모리 제어 신호를 NOR 플래시 메모리 장치 또는 NAND 플래시 메모리 장치에 대응하는 로컬 포맷 메모리 제어 신호로 변환시키도록 설계된 자체의 브릿지 장치(200)를 갖는다.
또 다른 실시예에서, 단일의 복합 메모리 장치는 상이한 타입의 이산 메모리 장치를 가질 수 있다. 예를 들면, 단일의 복합 메모리 장치는 2개의 비동기 NAND 플래시 메모리 장치 및 2개의 NOR 플래시 메모리 장치를 포함할 수 있다. 이 "혼합된" 또는 "이종" 복합 메모리 장치는 앞서 설명한 동일한 글로벌 포맷에 따를 수 있지만, 내부적으로 그 브릿지 장치는 글로벌 포맷 메모리 제어 신호를 NAND 플래시 메모리 장치 및 NOR 플래시 메모리 장치에 대응하는 로컬 포맷 메모리 제어 신호로 변환하도록 설계될 수 있다.
그러한 브릿지 장치는 글로벌 명령 내에 제공되는 앞서 설명한 어드레스 정보에 의해 선택될 수 있는 NAND 플래시 메모리 장치 및 NOR 플래시 메모리 장치의 각각에 대해 하나의 전용 포맷 변환기를 포함할 수 있다. 도 3b에 대해 설명한 바와 같이, 어드레스 헤더(114)는 시스템 레벨 및 복합 메모리 장치 레벨에서 사용되는 어드레싱 정보를 포함한다. 이 부가 어드레싱 정보는 메모리 명령 내의 op-코드를 실행시키기 위해 복합 메모리 장치를 선택하는 글로벌 장치 어드레스(GDA)(116) 및 op-코드를 실행시키기 위해 선택된 복합 메모리 장치 내의 특정 이산 장치를 선택하는 로컬 장치 어드레스(LDA)(118)를 포함한다. 브릿지 장치는 글로벌 명령이 라우트되어야 하는 2개의 포맷 변환기 중 어느 것을 판정하도록 LDA(118)를 사용하는 셀렉터를 가질 수 있다.
복합 메모리 장치의 앞서 설명한 실시예들은 하나의 포맷의 메모리 제어 신호에 응답하는 이산 메모리 장치가 제2 및 상이한 포맷을 갖는 글로벌 메모리 제어 신호를 사용하여 어떻게 제어될 수 있는지를 나타낸다. 대체 실시예에 따르면, 브릿지 장치(200)는 동일한 포맷을 갖는 로컬 메모리 제어 신호를 이산 메모리 장치에 제공하기 위해, 하나의 포맷을 갖는 글로벌 메모리 제어 신호를 수신하도록 설계된다. 바꿔 말하면, 그러한 복합 메모리 장치는 이산 메모리 장치를 제어하는데 사용되는 메모리 제어 신호를 수신하도록 구성된다. 그러한 구성은 다수의 이산 메모리 장치가 복합 메모리 장치 내의 다른 이산 메모리 장치에 무관하게 동작하는 메모리 뱅크로서 각각 기능할 수 있게 한다. 따라서, 각 이산 메모리 장치는 브릿지 장치(200)로부터 그 명령을 수신하여, 서로 병렬로 동작을 실행하도록 속개할 수 있다. 이것은 또한 동시 동작이라고도 한다. 브릿지 장치(200)의 설계는 따라서, 명령 변환 회로가 불필요하게 되므로, 간략화된다.
앞서 설명한 실시예들은 복합 메모리 장치 내의 이산 메모리 장치가 외국 명령 포맷에 어떻게 응답할 수 있는지를 설명한다. 이것은 수신된 글로벌 명령을 이산 메모리 장치와 호환하는 국내 명령 포맷으로 변환하는 브릿지 장치를 통해 달성된다. 예로서, 직렬 명령 포맷은 비동기 NAND 플래시 포맷으로 변환될 수 있다. 실시예들은 이들 2개의 포맷에 한정되는 것은 아니며, 어떤 쌍의 명령 포맷이 하나에서 다른 하나로 변환될 수도 있다.
사용되는 포맷에 무관하게, 적어도 몇몇 예의 실시예에 따르는 복합 메모리 장치의 장점은, 자체 내의 이산 메모리 장치의 데이터 처리량보다 상당히 높은 데이터 처리량을 제공하기 위한 주파수에서 각각 동작될 수 있다는 것이다. 예를 들어, 도 3a의 복합 메모리 장치를 사용하면, 각 이산 메모리 장치(104)가 종래의 비동기 NAND 플래시 메모리 장치라면, 그것의 핀당 최대 데이터 레이트는 약 40Mbps이다. 그러나, 클록과 동기하여 적어도 하나의 데이터 스트림을 수신하는 브릿지 장치는 166MHz의 주파수에서 동작하도록 구성될 수 있어, 결과적으로는 핀당 최소 333Mbps 데이터 레이트이다. 브릿지 장치(102)를 제조하는데 사용되는 프로세스 기술에 따라, 동작 주파수는 핀당 더 높은 데이터 레이트를 실현하기 위해 200MHz 이상일 수 있다. 따라서, 데이터를 저장하기 위해 도 5의 메모리 시스템(300)을 사용하는 더 대형의 시스템에서는, 고속 동작이 얻어질 수 있다. 일례의 애플리케이션은 메모리 시스템(300)을 고성능 및 큰 저장 용량을 요구하는 다른 애플리케이션이나 컴퓨팅 시스템 내의 대량 저장 매체로서 사용하는 것이다.
이산 메모리 장치와 브릿지 장치 사이의 데이터 레이트 불일치가 상당할 수 있기 때문에, 현재 도시된 브릿지 장치(102)의 실시예는 어떤 레벨의 불일치를 보상한다. 본 실시예에 따르면, 브릿지 장치(102)는 대응하는 복합 메모리 장치(100)로부터의 판독 동작 동안 선택된 이산 메모리 장치(104)로부터의 소정의 크기의 판독 데이터를 프리페치(pre-fetch)하여 저장한다. 판독 데이터는 이산 메모리 장치(104)에 대해 최대로 허용된 데이터 레이트로 브릿지 장치(102)에 전송된다. 소정 크기의 판독 데이터가 브릿지 장치(102)에 저장되면, 그 데이터는 제한 없이 그 최대 데이터 레이트로 출력될 수 있다. 복합 메모리 장치(100)로의 프로그램 또는 기록 동작을 위해, 브릿지 장치(102)는 그 최대 데이터 레이트로 프로그램 데이터를 수신하여 그것을 저장한다. 브릿지 장치(102)는 그 후, 선택된 이산 메모리 장치(104) 내에 저장된 데이터를 이산 메모리 장치(104)에 대한 최대로 허용된 데이터 레이트로 프로그램한다. 이산 메모리 장치로부터/로 데이터를 판독 및 데이터를 프로그래밍하기 위한 최대로 허용된 데이터 레이트는 문서화된 기술 사양에서 표준화되거나 개요가 설명될 수도 있다.
도 4는 브릿지 장치(200)의 기능적인 블록을 대체적으로 나타내지만, 도 6a는 본 실시예에 따르는 브릿지 장치(200)의 더욱 상세한 블록도를 도시한다. 브릿지 장치(400)는 도 4의 브릿지 장치(200)에 대해 도시된 것에 대응하는 4개의 주요 기능 블록을 포함한다. 이들은 브릿지 장치 시스템 입/출력 인터페이스(402), 메모리 장치 인터페이스(404), 명령 포맷 변환기(406) 및 데이터 포맷 변환기(408)이다. 이들 블록은 각각 도 4의 블록(202, 204, 208 및 2210)에 대응하는 기능을 갖는다. 도 6a의 실시예는 복합 메모리 장치가 종래의 NAND 플래시 메모리 장치를 포함하고, 복합 메모리 장치 자체는 도 2b의 직렬 인터페이스 플래시 메모리 장치에 대응하는 직렬 인터페이스를 갖도록 구성되어 있는 일례에 적용된다. 이하는 블록(402, 404, 406 및 408)의 상세한 설명이다.
브릿지 장치 시스템 입/출력 인터페이스(402)는 하나의 포맷을 갖는 글로벌 메모리 제어 신호를 수신하여, 수신된 글로벌 메모리 제어 신호 및 이산 메모리 장치로부터의 판독 데이터를 후속 복합 메모리 장치에 전달한다. 본 예에서는, 이들 글로벌 메모리 제어 신호가 표 2에서 설명한 도 2b의 식별된 메모리 제어 신호와 동일하다. 본 예를 이용하는 도 4와 관련하여, 글로벌 명령 GLB_IN은 글로벌 메모리 제어 신호 CSI, DSI 및 D[j]를 포함하고, 전달된 글로벌 명령 GLB_OUT은 각각 CSO, DSO 및 Q[j]라고 하는 글로벌 메모리 제어 신호 CSI, DSI 및 D[j]의 에코 버전을 포함한다. 전술한 글로벌 메모리 제어 신호 CSI, DSI 및 D[j]는 브릿지 장치(400)가 동작을 실행할 수 있게 하는데 필요하므로 글로벌 명령으로 생각된다.
브릿지 장치 시스템 입/출력 인터페이스(402)는 표 2에서 앞서 개요가 설명된 신호들을 수신하기 위한 입력 및 출력 포트를 갖는다. 이 블록은 잘 알려진 입력 버퍼 회로, 출력 버퍼 회로, 드라이버, 입력 및 출력 버퍼 회로를 제어하고, 명령 포맷 변환기(406)에 필요한 제어 신호의 라우팅 및 데이터 포맷 변환기로부터/로의 상이한 타입의 데이터의 라우팅에 사용되는 제어 로직을 포함한다. 그러한 타입의 데이터는, 이들에 제한되는 것은 아니지만, 예를 들면, 어드레스 데이터, 판독 데이터, 프로그램 또는 기록 데이터 및 구성 데이터를 포함한다. 입력 포트 D[j]에서 수신되어 출력 포트 Q[j]에 제공되는 데이터는 싱글 데이터 레이트(SDR) 또는 더블 데이터 레이트(DDR) 포맷 중 하나일 수 있다. 당업자는 SDR 데이터가 클록 신호의 각 상승 에지에 래치되는 한편, DDR 데이터는 클록 신호의 상승 및 하강 에지의 양자에 래치되는 것을 이해할 것이다. 그래서, 입력 및 출력 버퍼가 적절한 SDR 또는 DDR 래칭 회로를 포함한다. 주목해야 할 것은, 브릿지 장치 시스템 입/출력 인터페이스(402)가 제어 신호 CSI 및 DSI를 수신하는 입력 포트를 에코 신호 CSO 및 DSO를 제공하는 대응하는 출력 포트에 결합시키는 제어 신호 유통 경로를 포함한다는 것이다. 유사하게, 데이터 신호 유통 경로는 입력 데이터 스트림(들) D[j]를 수신하는 입력 포트를 출력 데이터 스트림(들) Q[j]를 제공하는 대응하는 출력 포트에 결합시킨다. 출력 데이터 스트림(들)은 D[j]에서 수신된 입력 데이터 스트림(들) 또는 브릿지 장치(400)에 접속된 이산 메모리 장치로부터 제공되는 판독 데이터 중 어느 하나일 수 있다.
본 예에서, 브릿지 장치(400)는 메모리 시스템 내의 다른 브릿지 장치와 병렬로 차동 클록 CK 및 CK#을 수신한다. 선택적으로, 차동 클록 CK 및 CK#은 도 5의 메모리 제어기(302)와 같은 메모리 제어기로부터 제공되어, 하나의 복합 메모리 장치로부터 다른 복합 메모리 장치로 그들 각각의 브릿지 장치를 통해 직렬로 전달되는 소스 동기 클록 신호이다. 그러한 구성에서, 브릿지 장치(400)는 입력 포트에서 수신된 차동 클록 CK 및 CK#을 대응하는 출력 포트(도시 생략)에 결합시키도록 클록 유통 경로를 포함한다. 참고로 본 명세서에 통합되어 있는 "메모리 시스템에서의 클록 모드 판정"이라는 명칭의 공유된 미국 특허 출원 공개 20090039927호는 직렬로 접속된 메모리 장치를 병렬로 동작할 수 있게 하는 회로 또는 소스 동기 클록을 개시한다. 따라서, 미국 특허 출원 공개 20090039927호에 개시된 기술은 브릿지 장치(400)에 동등하게 적용될 수 있다.
메모리 장치 인터페이스(404)는 이산 메모리 장치와 호환하는 국내 또는 로컬 포맷에 따르는 로컬 메모리 제어 신호를 제공한다. 이 포맷은 글로벌 메모리 제어 신호의 포맷과 상이할 수도 있다. 본 예에서, 메모리 장치 인터페이스(404)는 대응하는 수의 종래의 NAND 플래시 메모리 장치를 제어하기 위한 로컬 메모리 제어 신호의 세트를 가지며, 여기에서 로컬 메모리 제어 신호의 각 세트는 표 1에서 앞서 개요를 설명한 신호들을 포함한다. 이 예에서 및 도 4를 참조하면, 각 세트의 로컬 메모리 제어 신호는 LC 포트를 통해 복합 메모리 장치 내의 대응하는 NAND 플래시 메모리 장치에 로컬 명령을 제공한다. 따라서, 복합 메모리 장치 내에 k개의 NAND 플래시 메모리 장치가 존재하면, k 세트의 로컬 명령이 존재한다. 도 6a에서는, 2개의 풀 세트의 로컬 메모리 제어 신호가 LC-1 및 LC-2로 라벨이 붙은 포트로부터 제공되고, 마지막 풀 세트의 로컬 메모리 제어 신호는 출력 포트 LC-k로부터 제공된다. 이들 로컬 명령은 NAND 플래시 메모리 장치와 호환하는 적절한 시퀀스, 로직 상태 및 타이밍이 제공되어, 그들 장치가 로컬 명령에 부호화된 동작을 실행할 것이다.
메모리 장치 인터페이스(404)는 표 1에서 앞서 개요를 설명한 로컬 메모리 제어 신호를 제공하기 위한 출력 포트, 및 기록 데이터를 제공하고 판독 데이터를 수신하기 위한 양방향 데이터 포트 I/O[i]를 갖는다. 이 블록은 잘 알려진 입력 버퍼 회로, 출력 버퍼 회로, 드라이버, 및 데이터 포맷 컨버터(408)로/로부터의 데이터의 라우팅과 입력 및 출력 버퍼 회로를 제어하는데 사용되는 제어 로직을 포함한다. 그러한 타입의 데이터는 그것에 제한되지는 않지만, 예를 들면, 어드레스 데이터, 판독 데이터 및 프로그램 또는 기록 데이터를 포함한다.
명령 포맷 변환기(406)는 적어도 op-코드 레지스터(410), 글로벌 장치 어드레스(GDA) 레지스터(412) 및 로직 및 op-코드 변환기 블록(414)을 포함한다. 데이터 포맷 변환기(408)는 메모리(416), 메모리(416)용 타이밍 제어 회로(418), 어드레스 레지스터(420), 주파수 제어기(422), 데이터 입력 경로 회로(424) 및 데이터 출력 경로 회로(426)를 포함한다.
주파수 제어기(422)는 시스템 클록 clk_int를 수신하고, 메모리 클록이라고 하는 가변 클록 clk_div를 생성한다. 로직 및 op-코드 변환기 블록(414)은 메모리 클록 clk_div를 수신하는 한편, 나머지 회로들은 시스템 클록 clk_int를 수신한다. 예를 들면, 도 6a에 도시된 바와 같이, 제어 신호 및 데이터를 수신하거나 제어 신호 및 데이터를 제공하는 브릿지 장치 시스템 입/출력 인터페이스(402)에 접속되는 회로들은 clk_int의 시스템 클록 주파수에서 동작한다. op-코드 레지스터(410), GDA 레지스터(412), 어드레스 레지스터(420), 데이터 입력 경로 회로(424) 및 데이터 출력 경로 회로(426)와 같은, 이들 회로 중의 몇몇은 시스템 클록 하에서 배타적으로 동작한다. 로직 및 op-코드 변환기 블록(414)과 같은 시스템 클록 clk_int와 메모리 클록 clk_div의 양자를 수신하는 다른 회로들도 존재한다. 이후 논의되는 바와 같이, 로직 및 op-코드 변환기 블록(414)은 메모리(416)와 메모리 장치 인터페이스(404) 사이에서 데이터가 전송되는 데이터 액세스 동작을 위해 메모리(416)를 제어한다. 이들 데이터 액세스 및 전송 동작은 메모리 클록 clk_div 하에서 실행된다. 메모리(416)와 브리ㅈ시 장치 시스템 입/출력 인터페이스(402) 사이의 메모리 동작은 시스템 클록 clk_int 하에서 동작한다. 로직 및 op-코드 변환기 블록(414)은 메모리 타이밍 및 제어 회로(418)과 clk_int를 수신하는 다른 전술한 회로들을 적절히 제어하기 위해 clk_int의 시스템 클록 주파수 하에서 동작하는 로직을 갖는다.
명령 포맷 변환기(406)는 글로벌 명령에 대응하는 글로벌 메모리 제어 신호를 수신하고, 2개의 주요 기능을 실행한다. 첫 번째는 글로벌 명령에 의해 특정된 동일한 동작을 나타내는 로컬 명령 내의 로컬 메모리 제어 신호를 제공하도록 글로벌 명령의 op-코드를 디코드하기 위한 op-코드 변환 기능이다. 이 op-코드 변환 기능은 내부 변환 로직(도시 생략)에 의해 실행된다. 예를 들면, 글로벌 명령이 특정 어드레스 위치로부터 데이터를 판독하도록 요청되면, 결과적인 변환된 로컬 메모리 제어 신호가 선택된 NAND 플래시 메모리 장치로부터의 판독 동작에 대응한다. 두 번째 주요 기능은 글로벌 명령에 응답하여, 브릿지 장치(400)의 다른 회로들을 제어하는 내부 제어 신호를 생성하기 위한 브릿지 장치 제어 기능이다. 이 브릿지 장치 제어 기능은 모든 유효한 글로벌 명령에 응답하도록 미리 프로그래밍된 내부 상태 머신(도시 생략)에 의해 제공된다.
GDA 레지스터(412)는 글로벌 장치 어드레스라고 하는 소정의 및 할당된 복합 메모리 장치 어드레스를 저장한다. 이 글로벌 장치 어드레스는, 메모리 제어기가 자신이 발행한 글로벌 명령에 따라 행동하도록 메모리 시스템 내의 복수의 복합 메모리 장치 중 하나의 복합 메모리 장치를 선택할 수 있게 한다. 바꿔 말하면, 2개의 전술한 주요 기능이 복합 메모리 장치가 선택될 때만 실행된다. 도 3b에 대해 앞서 논의된 바와 같이, 글로벌 명령(110)은 글로벌 메모리 제어 신호(GMCS)(112)에 응답하기 위해 복합 메모리 장치를 선택하기 위한 글로벌 장치 어드레스 필드(116)를 포함한다. 본 예에서는, 글로벌 명령은 데이터 입력 포트 D[j]를통해 하나 이상의 직렬 비트스트림으로서 수신되며, 여기에서 글로벌 장치 어드레스는 브릿지 장치(400)에 의해 수신되는 글로벌 명령(110)의 제1 부분이다. 로직 및 op-코드 변환기 블록(414) 내의 비교 회로(도시 생략)는 글로벌 명령(110)의 글로벌 장치 어드레스 필드(116) 내의 글로벌 장치 어드레스를 GDA 레지스터(412)에 저장되어 있는 할당된 글로벌 장치 어드레스와 비교한다.
GDA 레지스터(412)에 저장된 글로벌 장치 어드레스와 글로벌 명령(110)의 글로벌 장치 어드레스 필드(116) 사이에 불일치가 있으면, 로직 및 op-코드 변환기 블록(414)은 브릿지 장치 시스템 입/출력 인터페이스(402)에 의해 수신되는 후속 글로벌 메모리 제어 신호를 무시한다. 상기 불일치가 없으면, 로직 및 op-코드 변환기 블록(414)은 op-코드 레지스터(410) 내의 글로벌 명령(110)의 op 코드를 래치시킨다. 래치되면, 이 op-코드는 브릿지 장치 제어 기능이 실행되도록 디코드된다. 예를 들면, 래치된 op-코드는 로직 및 op-코드 변환기 블록(414) 내의 회로를 디코딩함으로써 디코드되어, 그 후 브릿지 장치(400) 내의 다른 레지스터에 글로벌 명령(110)의 후속 비트를 보내도록 브릿지 장치 시스템 입/출력 인터페이스(402) 내의 라우팅 회로를 제어한다. 이것은 글로벌 명령(110)이 실행될 동작에 의존하는 상이한 타입의 데이터를 포함할 수도 있으므로 필요하다. 바꿔 말하면, 로직 및 op-코드 변환기 블록(414)은 디코드된 op-코드를 기초로 하여, 브릿지 장치 시스템 입/출력 인터페이스(402)에 비트가 도달하기 전에 글로벌 명령의 구성을 알게 된다. 예를 들면, 판독 동작은 각각의 레지스터에서 래치되는 블록, 행 및 열 어드레스를 포함한다. 반면에, 소거 동작은 행 및 열 어드레스를 필요로 하지 않고, 블록 어드레스만 필요로 한다. 따라서, 대응하는 op-코드는 로직 및 op-코드 변환기 블록(414)에 특정 타입의 어드레스 데이터가 브릿지 장치 시스템 입/출력 인터페이스(402)에 도달할 때 그들 데이터가 각각의 레지스터에 라우트될 수 있도록 명령한다.
글로벌 명령(110)의 모든 데이터가 래치되었다면, 변환 회로는 NAND 플래시 메모리 장치에서 동일한 동작을 실행하는데 사용될 필요한 로직 상태, 시퀀스 및 타이밍을 갖는 로컬 메모리 제어 신호를 생성한다. NAND 플래시 메모리 장치 내의 특정 어드레스 위치에 액세스할 필요가 있는 임의의 동작을 위해, 로직 및 op-코드 변환기 블록(414)은 I/O[i] 포트를 통해 로컬 명령의 부분으로서 발행하기 위해 어드레스 레지스터(420)에 저장된 어드레스 데이터를 변환한다. 후술되는 바와 같이, 어드레스는 NAND 플래시 메모리 장치 내의 가상 어드레스 공간에 액세스할 수도 있다. 이 가상 어드레스 공간은 메모리(416) 내의 가상 어드레스 공간에 관련된다. 따라서, 로직 및 op-코드 변환기 블록(414)은 어드레스를 NAND 플래시 메모리 장치와 호환하는 어드레스로 변환하기 위한 구성 가능 로직 회로를 포함한다. 가상 어드레스 공간이 어떻게 액세스되는지의 상세는 본 실시예와 관련이 없으므로 더 논의하지 않는다.
본 실시예에서, 메모리(416)는 이중 포트 메모리이며, 여기에서 각 포트는 데이터 입력 포트 및 데이터 출력 포트를 갖는다. 포트 A는 데이터 입력 포트 DIN_A 및 데이터 출력 포트 DOUT_A를 갖는 한편, 포트 B는 데이터 입력 포트 DIN_B 및 데이터 출력 포트 DOUT_B를 갖는다. 포트 A는 메모리(416)와 메모리가 결합되는 이산 메모리 장치 사이에서 데이터를 전송하는데 사용된다. 반면에, 포트 B는 메모리(416)와 브릿지 장치 시스템 입/출력 인터페이스(402)의 D[j] 및 Q[j] 사이에서 데이터를 전송하는데 사용된다. 간략히 설명되는 바와 같이, 포트 A는 메모리 클록 주파수에서 동작되는 한편, 포트 B는 시스템 클록 주파수에서 동작된다. NAND 플래시 메모리 장치에 프로그래밍될 데이터는 메모리(416)의 DOUT_A를 통해 판독되어 로직 및 op-코드 변환기 블록(414)에 제공된 후, 이산 메모리 장치와 호환하는 로컬 메모리 제어 신호를 생성한다. 이산 메모리 장치로부터 수신되는 판독 데이터는 로직 및 op-코드 변환기 블록(414)의 제어 하에 DIN_A를 통해 메모리(416)에 직접 기록된다. DOUT_A로부터 제공되는 기록 데이터는 로직 및 op-코드 변환기 블록(414)의 제어 하에 제공된다. 포트 B가 어떻게 사용되는지의 상세는 후술한다. 로직 및 op-코드 변환기 블록(414) 내의 회로는 메모리 클록 주파수와 동기하여, 각각 포트 DOUT_A 및 DIN_A를 통한 데이터 출력 및 입력, 데이터 감지, 어드레스의 디코딩 및 애플리케이션의 타이밍을 제어하기 위한 제어 로직을 포함한다.
어느 하나의 시나리오에서, 글로벌 명령은 로직 및 op-코드 변환기 블록(414)이 로컬 메모리 제어 신호(LC-1 내지 LC-k)의 세트를 통해 판독 또는 기록 동작이 실행될 이산 메모리 장치를 선택하도록 명령한다. 글로벌 명령(110)의 로컬 장치 어드레스(LDA)(118) 필드는 어느 NAND 플래시 메모리 장치가 생성된 로컬 메모리 제어 신호를 수신할지를 판정하도록 로직 및 op-코드 변환기 블록(414)에 의해 사용된다. 따라서, LC-1 내지 LC-i의 어느 하나의 세트가 글로벌 명령(110)에 응답하여 생성된 메모리 제어 신호로 구동된다. 글로벌 명령은 또한, 로직 및 op-코드 변환기 블록(414)이 동작을 보완하는 브릿지 장치(400) 내의 임의의 필요한 회로를 제어하기 위한 브릿지 장치 제어 기능을 실행하도록 명령한다. 예를 들면, 데이터 입력 경로 회로(424)는 로컬 메모리 제어 신호가 생성되기 전에, D[j]에서 수신된 데이터를 메모리(416)에 로드 또는 기록하도록 기록 동작 동안 제어된다.
래치된 op-코드는 로컬 명령 내의 로컬 메모리 제어 신호를 생성하기 위한 op-코드 변환 기능을 이후에 인에이블할 수 있다. 어떠한 NAND 플래시 메모리 동작을 필요로 하지 않으므로, 브릿지 장치(400)의 제어 동작에 제한되는 유효 op-코드가 존재할 수 있다. NAND 플래시 메모리에 대한 판독 또는 기록 동작이 요청될 때, 로직 및 op-코드 변환기 블록(414)은 메모리 타이밍 및 제어 회로(418)를 제어하고, 결국 어드레스 레지스터(420)에 저장된 어드레스를 기초로 하여 메모리(416) 내의 위치로부터 데이터를 기록 또는 판독하기 위한 타이밍을 제어한다. 이제 이하에 이들 회로의 더욱 상세한 설명을 한다.
데이터 포맷 변환기(408)는 프로그래밍될 브릿지 장치 시스템 입/출력 인터페이스(402)로부터 수신된 기록 데이터를 NAND 플래시 메모리 장치로 임시로 저장하고, 브릿지 장치 시스템 입/출력 인터페이스(402)로부터 출력될 NAND 플래시 메모리 장치로부터 수신된 판독 데이터를 임시로 저장한다. 메모리(416)는 단일의 블록으로서 기능적으로 도시되어 있지만, 뱅크(bank), 플레인(plane) 또는 어레이와 같은 세부로 논리적으로 또는 물리적으로 분할될 수 있으며, 여기에서 각 뱅크, 플레인 또는 어레이는 NAND 플래시 메모리 장치에 매칭된다. 더욱 구체적으로는, 각 뱅크, 플레인 또는 어레이는 페이지 버퍼로부터 판독 데이터를 수신하거나 하나의 NAND 플래시 메모리 장치의 페이지 버퍼에 기록 데이터를 제공하는 전용이다. 메모리(416)는 예를 들면, SRAM과 같은 임의의 휘발성 메모리일 수 있다. 상이한 타입의 메모리가 상이한 타이밍 및 다른 프로토콜 요건을 가질 수 있으므로, 메모리(416)의 설계 사양을 기초로 하여 메모리(416)의 적절한 동작을 보증하도록 타이밍 제어 회로(418)가 제공된다. 예를 들면, 어드레스의 디코딩 및 애플리케이션, 데이터 감지 및 데이터 출력 및 입력의 타이밍이 타이밍 제어 회로(418)에 의해 제어된다. 행 및 열 어드레스를 포함할 수 있는 어드레스들이 어드레스 레지스터(420)로부터 제공될 수 있는 한편, 기록 데이터는 데이터 입력 경로 회로(424)를 통해 제공되고 판독 데이터는 데이터 출력 경로 회로(426)를 통해 제공된다.
데이터 입력 경로 회로(424)는 입력 포트 D[j]로부터 입력 데이터를 수신하며, 데이터가 하나 이상의 직렬 비트스트림으로 수신되기 때문에, 스위칭 로직이 op-코드 레지스터(410) 및 어드레스 레지스터(420)와 같은 여러 가지 레지스터에 비트를 라우팅하거나 분배하기 위해 포함된다. 데이터 레지스터나 다른 타입의 레지스터와 같은 다른 레지스터들(도시 생략)은 op-코드가 선택된 복합 메모리 장치용으로 디코드되었다면 입력 데이터의 비트를 수신할 수도 있다. 그들 각각의 레지스터에 분배되면, 데이터 포맷 변환 회로(도시 생략)는 직렬 포맷으로 수신되었던 데이터를 병렬 포맷으로 변환한다. 데이터 레지스터에 래치되는 기록 데이터는 타이밍 제어 회로(418)의 제어 하에 임시 저장을 위해 포트 DIN_B를 통해 메모리(416)에 기록되고, 이후 로직 및 op-코드 변환기 블록(414)에 의해 판정되는 바와 같은 적절한 명령 포맷을 사용하여 프로그램하기 위한 NAND 플래시 메모리 장치에 출력된다.
메모리(416)가 로컬 메모리 제어 신호들 중 한 세트의 I/O[i] 포트로부터 NAND 플래시 메모리 장치로부터의 판독 데이터를 수신한 후에, 이 판독 데이터는 메모리(416)로부터 DOUT_B를 통해 판독되어 데이터 출력 경로 회로(426)를 통해 출력 포트 Q[j]에 제공된다. 데이터 출력 경로 회로(426)는 데이터의 비트를 출력 포트 Q[j]로부터 출력될 하나 이상의 직렬 출력 비트스트림에 분배하기 위한 병렬-직렬 변환 회로(도시 생략)를 포함한다. 데이터 입력 경로 회로(424)는 출력 포트 Q[j] 상으로의 출력을 위해, 데이터 출력 경로 회로(426)로 직접 D[j] 입력 포트로부터 수신된 입력 데이터를 제공하기 위한 데이터 유통 경로(428)를 포함한다. 따라서, D[j] 입력 포트에서 수신되는 모든 글로벌 명령은 매설된 글로벌 장치 어드레스 필드가 GDA 레지스터(412)에 저장된 글로벌 장치 어드레스와 일치하는지에 무관하게 Q[j] 출력 포트에 유통된다. 도 5의 직렬 접속된 메모리 시스템 실시예에서, 데이터 유통 경로(428)는 모든 복합 메모리 장치(304)가 메모리 제어기(302)에 의해 발행된 글로벌 명령을 수신하는 것을 보증한다. 또한, 하나의 복합 메모리 장치(304)에 의해 제공되는 임의의 판독 데이터는 임의의 사이에 끼어있는 복합 메모리 장치를 통해 메모리 제어기(302)에 전달될 수 있다.
메모리(416)와 포트 Q[j] 및 D[j] 사이에서 데이터를 전달하기 위해 사용되는 상술한 모든 회로는 시스템 클록 clk_int와 동기하여 동작한다. 특히, 타이밍 제어 회로(418)는 시스템 클록 주파수와 동기하여, 각각 포트 DOUT_B 및 DIN_B를 통한 데이터 입력 및 출력, 데이터 감지, 어드레스의 디코딩 및 애플리케이션의 타이밍을 제어하기 위한 제어 로직을 포함한다. 타이밍 제어 회로(418)의 제어 로직은 메모리 클록 주파수에서 메모리(416)의 동작을 제어하는 로직 및 op-코드 변환기 블록(414) 내의 제어 로직과 유사할 수 있다. 그래서, 로직 및 op-코드 변환기 블록(414)가 직접 메모리(416)를 제어할 수 있다.
그것은 브릿지 장치(400)가 2개의 상이한 클록 도메인을 갖는 도 6a의 실시예의 앞선 설명으로부터 이해될 것이며, 여기에서 하나의 클록 도메인은 clk_int의 시스템 클록 주파수에서 동작하는 회로를 포함하고, 다른 클록 도메인은 clk_div의 메모리 클록 주파수에서 동작하는 회로를 포함한다. 도 6b는 장치 내의 상이한 클록 도메인을 도시하는 도 6a의 고속 직렬 인터페이스 브릿지 장치의 기능 블록도이다. 도 6b에는, 제1 클록 도메인(450) 및 제2 클록 도메인(452)이 존재한다. 제1 클록 도메인(450)은 clk_div의 주파수에서 또는 그 근처에서 동작하거나 clk_div에 대응하는 데이터 레이트에서 동작하는 이산 메모리 장치에 인터페이스하기 위해 clk_div의 메모리 클록으로 동작하는 회로를 포함한다. 바꿔 말하면, 제1 클록 도메인(450)의 회로는 메모리 클록 clk_div와 동기하여 동작한다. 제2 클록 도메인(452)은 시스템 클록 clk_int와 동일한 클록과 동기하여 동작하는 메모리 제어기나 다른 제어 장치에 인터페이스하기 위해 시스템 클록 clk_int로 동작하는 회로를 포함한다. 제2 클록 도메인(452)의 회로는 시스템 클록 clk_int와 동기하여 동작한다.
도 6b에서, 도 6a에 도시된 회로 블록의 일부가 단일의 기능 블록으로 함께 병합되어 있고, 일부 화살표가 데이터나 정보의 통상적인 방향의 흐름을 나타내기 위해 도시된다. 예를 들면, 데이터 I/O 경로 블록(454)은 도 6a의 회로(424 및 426)를 포함하는 한편, 레지스터 블록(456)은 레지스터(410, 412 및 420)를 포함한다. 도 6a에 도시된 회로 블록의 일부는 내부 블록으로 도시되어 있다. 예를 들면, 로직 및 OP 코드 변환기(414)는 제1 로직 블록(458) 및 제2 로직 블록(460)을 포함하도록 도시된다. 제1 로직 블록(458)은 내부 제어 신호를 제어 메모리(416)에 발행하기 위한 로직 회로 및 하나의 포맷으로부터 이산 메모리 장치와 호환하는 포맷으로 전술한 명령의 변환을 실행하기 위한 로직 회로를 포함할 수 있다. 반면에 제2 로직 블록(460)은 인터페이스(402)에서 수신된 명령에 응답하여 브릿지 장치(400)의 다른 회로를 제어하기 위한 로직 회로를 포함할 수 있다. 로직 및 OP 코드 변환기(414)의 기능은 도 6a에 도시된 다른 회로에 대해 앞서 설명한 바 있다. 유사하게, 메모리(416)는 제1 메모리 I/O 경로 블록(462) 및 제2 메모리 I/O 경로 블록(464)을 포함하도록 도시된다. 앞서 논의된 바와 같이, 메모리(416)는 이중 포트 메모리일 수 있다. 따라서, 제1 로직 블록(458)의 제어 하에 동작하는 제1 메모리 I/O 경로 블록(462)은 clk_div의 메모리 클록 주파수에서 그 메모리 어레이로/로부터 데이터를 전송한다. 한편, 제2 메모리 I/O 경로 블록(464)은 타이밍 제어 회로(418)의 제어 하에서 동작한다. 그래서, 데이터가 clk_int의 시스템 클록 주파수에서 그 메모리 어레이로/로부터 전송된다.
제1 클록 도메인(450)은 인터페이스(404), 제1 로직 블록(458) 및 제1 메모리 I/O 경로 블록(462)을 포함한다. 이들 블록의 회로들은 clk_div의 메모리 클록과 동기하여 동작한다. 제2 클록 도메인(452)은 인터페이스(402), 레지스터 블록(456), 주파수 제어기(422), 메모리 I/O 경로 블록(454), 제2 메모리 I/O 경로 블록(464), 타이밍 제어 회로(418) 및 제2 로직 블록(460)을 포함한다. 도 6b는 제1 또는 제2 클록 도메인의 부분인 브릿지 장치(400)에 사용되는 특정 회로 블록을 도시하는 일례의 실시예이다. 메모리 클록 하에 동작하는 어떤 회로는 제1 클록 도메인(450)의 부분으로 고려되지만, 시스템 클록 하에 동작하는 어떤 회로는 제2 클록 도메인(452)의 부분으로 고려된다.
타이밍 제어 회로(418)는 프리셋 최대 시스템 클록 주파수에서 동작하도록 설계되어 있지만, 시스템 제약으로 인해 프리셋 최대 주파수보다 낮은 주파수에서 동작할 수도 있다. 이 경우 예를 들면, 고정 주파수 분할비가 이산 메모리 장치용 메모리 클록을 생성하는데 사용되면, 이산 메모리 장치는 그 각각의 최대 클록 주파수보다 낮은 주파수에서 또한 동작될 것이다. 예를 들면, 최상의 경우의 시나리오에서, 브릿지 칩이 133MHz 클록을 사용하여 266Mb/s의 데이터 레이트로 동작 가능하고 이산 메모리 장치가 40MHz에서 동작 가능하면, 본 예에서는 이산 메모리 장치에 대해 최대의 허용 가능한 속도에 매우 가까운 이산 메모리 장치에 대해 38MHz를 생성하도록 3.5의 고정된 분할비가 채용될 수 있다. 데이터 판독 명령의 완료를 위해 필요한 시간은 이산 메모리 장치에서의 내부 판독 동작에 필요한 시간과 이산 메모리 장치로부터 브릿지 칩으로 데이터를 전송하는데 필요한 시간의 합이다. 대표적인 셀당 단일 비트 NAND 플래시 장치는 내부 판독을 위해 25㎲ 및 40MHz에서 8비트 인터페이스 상으로 4kB 페이지를 전송하는데 100㎲를 필요로 한다. 따라서, 총 판독 시간은 125㎲이다. 이제, 시스템 클록이 예를 들어, 66MHz로 감소되면, 3.5의 고정된 분할비는 이산 메모리 장치에 대해 19MHz 클록을 생성할 것이다. 불리하게도, 4kB 페이지에 대한 전송 시간은 200㎲ 보다 크도록 증가할 것이고, 총 판독 시간은 이산 메모리 장치의 전체 용량을 훨씬 밑도는 225㎲ 보다 크게 될 것이다. 따라서, 구성 가능한 주파수 분할비는 이산 메모리 장치가 최대 허용 가능한 40MHz 주파수에 더 가깝게 동작하도록 보증하는데 사용될 수 있으며, 그에 의해 총 판독 시간을 감소시킬 수 있다.
최상의 경우의 시나리오에서, 브릿지 장치의 회로들은 그들이 동작하도록 설계되었던 최대의 시스템 클록 주파수에서 동작될 수 있다. 대응하여, 이산 메모리 장치는 그들이 동작하도록 설계되었던 최대의 메모리 클록 주파수에서 동작될 수 있다. 따라서, 도 6a의 주파수 제어기(422)는 시스템 클록 주파수의 비인 주파수를 갖는 메모리 클록을 생성한다. 본 실시예에서, 메모리 클록 주파수와 시스템 클록 주파수 사이의 비는 프리셋된 수의 고정된 비 중 어느 하나가 되도록 구성 가능하다. 각 프리셋 비에 의해, 상이한 세트의 메모리 클록 주파수가 각 시스템 클록 주파수에 대해 생성될 수 있다. 아래의 표 3은 6개의 가능한 클록 분할비를 예시하는 일례를 제공하며, 특정 시스템 클록 주파수 clk_int를 기초로 하여 각 클록 분할비에 대한 메모리 클록 주파수 clk_div를 결과로 생성한다. 표 3에 도시된 것과 다른 상이한 시스템 클록 주파수 및 상이한 클록 분할비가 사용될 수 있다. 표 3에 도시된 시스템 클록 주파수는 현재 반도체 산업에서 사용 중인 표준화된 주파수의 예이지만, 여기에 설명된 실시예들은 임의의 세트의 주파수에 적용될 수 있다. 3.5의 분할비가 133MHz의 최대 예시 시스템 클록 주파수를 기초로 하여 이 예에서 선택되어 있으며, 여기에서 NAND 플래시 메모리 장치의 공지된 최대 동작 주파수는 40MHz이다. 1.0, 1.5, 2.0, 2.5 및 3.0의 다른 클록 분할비가 리스트된 하위 시스템 클록 주파수에 대한 메모리 클록 주파수를 최대화하기 위해 선택된다. 프로그램 가능한 주파수는 이산 메모리 장치와 브릿지 칩 사이의 데이터 전송 시간이 시스템 클록 주파수에 무관하게 최소화될 수 있게 한다.
clk_int
주파수(MHz)
clk_div 주파수(MHz)
/1.0 /1.5 /2.0 /2.5 /3.0 /3.5
40 40.0 26.7 20.0 16.0 13.3 11.4
50 NA 33.3 25.0 20.0 16.6 14.3
66 NA NA 33.0 26.4 22.0 18.9
83 NA NA NA 33.2 27.7 23.7
100 NA NA NA 40.0 33.3 28.6
125 NA NA NA NA NA 35.7
133 NA NA NA NA NA 38.0
표 3에 도시된 바와 같이, 40MHz보다 더 큰 시스템 클록 주파수는 일정 클록 분할비가 적용될 때 400MHz를 초과하는 대응하는 메모리 클록 주파수를 가질 수 있다. 이들 메모리 클록 주파수는 예시의 NAND 플래시 메모리 장치에 사용되지 않으므로, "적용 불가"로 "NA"로 표기된다. 반대로, 125MHz 미만의 시스템 클록 주파수는 선택되는 클록 분할비에 의존하여 메모리 클록 주파수에 대해 여러 개의 상이한 옵션을 가질 수 있다. 예를 들면, 일정 지속기간 동안 NAND 플래시 메모리 장치에 대해 저전력 소비가 요구되면, 그러한 옵션이 선택된 시스템 클록 주파수에서 사용 가능하다고 가정하면 최저의 가능한 메모리 클록 주파수가 선택된다. 대체 애플리케이션에서, 표 3의 최대 메모리 클록 주파수는 브릿지 장치와 함께 사용될 수 있는 이산 메모리 장치의 가능한 타입의 그룹 중에서 최고의 최대 동작 주파수를 기초로 하여 설정될 수 있다. 이로 인해, 메모리 클록의 구성이 상이한 최대 메모리 클록 주파수에서 동작할 수도 있는 상이한 이산 메모리 장치를 수용할 수 있게 된다. 표 3의 값들은 호스트 시스템이나 메모리 제어기 내의 룩업 테이블로서 실현될 수 있다. 따라서, 시스템 클록 주파수가 알려지고 원하는 메모리 클록 주파수가 알려질 때 특정 클록 분할비가 선택될 수 있다.
표 3에 도시된 클록 분할비는 0.5의 증분이 되도록 설정되어 있기 때문에, 결과적으로 생성된 메모리 클록 주파수는 원하는 메모리 클록 주파수에 일치하는 정확한 주파수가 아닐 수도 있다. 따라서, 원하는 메모리 클록 주파수에 가장 가까운 하위 메모리 클록 주파수가 표 3으로부터 선택된다. 후술하는 바와 같이, 0.5 증분 클록 분할비를 생성하기 위한 도 6a의 주파수 제어기(422)는 트랜지스터의 수를 최소화하는 간단한 로직 회로이며, 그에 의해 실리콘 영역 및 브릿지 장치의 총 제조 비용을 최소화시킨다. 그러한 주파수 제어기 회로를 사용할 때의 트레이드오프가 원하는 최대값에 비해 메모리 클록 주파수에서 경미한 감소로 나타나는 동안, 결과적인 성능 임팩트는 최소이다.
도 7은 브릿지 장치 시스템 입/출력 인터페이스(402)의 차동 클록 입력 포트 CK 및 CK# 사이의 클록 경로, 및 도 6a의 주파수 제어기(422)의 일 실시예를 도시하는 블록도이다. 차동 클록 신호 CK 및 CK#은 시스템 클록 주파수를 가지며, 각각의 클록 입력 버퍼(500 및 502)에 의해 수신된다. 버퍼링된 클록 신호의 양자는 CK 및 CK#과 동일한 시스템 클록 주파수를 갖는 단일 내부 시스템 클록 clk_int를 생성하는 내부 클록 발생기(504)에 제공된다. 본 논의를 위해, clk_int는 현재 설명하는 브릿지 장치 실시예에 의해 사용되는 시스템 클록이다. 내부 클록 발생기(504)는 예를 들면, 동작의 전력 절감 모드와 같은 일정 조건 하에서 clk_int의 생성을 디스에이블하도록 다른 제어 신호를 수신할 수 있다. 시스템 클록 clk_int는 도 6a의 주파수 제어기(422)에 대응하는 주파수 제어기(506)에 제공된다. 주파수 제어기(506)는 시스템 클록 clk_int을 수신하여 시스템 클록 주파수의 선택된 비인 주파수를 갖는 메모리 클록 clk_div로 변환한다. 본 예의 실시예에서, 주파수 제어기(506)는 경로 제어 회로(508), 다수의 클록 디바이더(510) 및 셀렉터(512)를 포함한다.
시스템 클록 clk_int의 수신에 덧붙여, 경로 제어 회로(508)는 본 예에서는 비트 S1, S2 및 S3으로 나타나는 3비트 코드인 주파수 분할비(FDR) 코드를 수신한다. FDR 코드는 임의의 수의 비트일 수 있다. 이 코드는 이후에 더욱 상세히 설명되는 바와 같이, 브릿지 장치 시스템 입/출력 인터페이스(402)에 의해 수신되는 글로벌 명령에 제공된다. FDR 코드는 레지스터(514)에 저장되어, 새로운 FDR 코드가 통상 동작 동안 제공될 때까지 또는 리셋 이벤트 후에 레지스터에 유지된다. 본 실시예에서, 경로 제어 회로(508)는 FDR 코드에 응답하여 클록 디바이더(510) 중 하나에 수신된 clk_int 시스템 클록을 라우팅 또는 선택적으로 결합시키기 위한 디멀티플렉서로서 기능을 한다. 3비트 FDR 코드로, 경로 제어 회로(508)는 최대 8개의 상이한 경로를 선택할 수 있다. 경로 제어 회로(508)는 이 8개의 선택 기능 중 하나를 실행하기 위한 잘 알려진 디코딩 회로를 포함한다. 본 예에서는, 총 6개의 상이한 클록 디바이더(510)가 존재하며, 여기에서 각 클록 디바이더(510)는 각각의 중간 클록 신호를 제공하도록 상이한 비율로 시스템 클록을 분할한다. 표 3을 참조하면, 6개의 클록 디바이더(510)의 각각은 분할비 1.0, 1.5, 2.0, 2.5, 3.0 및 3.5 중 하나를 제공한다. 각 클록 디바이더(510)의 출력은 어느 클록 디바이더가 clk_div로서 전달하도록 출력하는지를 선택하는 셀렉터(512)에 제공된다. 셀렉터(512)는 경로 제어 회로(508)와 동일한 FDR 코드를 수신하고, 자체 내에 형성되는 동일한 디코딩 로직을 가질 수 있다. 주파수 제어기(506)는 크기 변경할 수 있고, 이것은 6개 이상의 클록 디바이더(510)가 원하는 클록 분할비의 수에 의존하여, 회로에 포함될 수 있는 것을 의미한다. 따라서, FDR 코드는 clk_int를 클록 디바이더(510) 중 하나에 결합하기 위해 경로 제어 회로(508)를 제어하는데 필요한 적절한 수의 비트를 포함하도록 크기 변경될 수 있다. 이와 달리, 경로 제어 회로(508)는 시스템 클록 clk_int가 모든 클록 디바이더(510)에 병렬로 제공되도록 생략될 수 있다.
경로 제어 회로(508)는 수신된 clk_int 시스템 클록을 하나의 특정 출력에 선택적으로 결합시키는 임의의 라우팅 회로로 실현될 수 있다. 유사하게, 각 클록 디바이더(510)는 시스템 클록 주파수를 고정된 비율로 감소시킨 원하는 결과를 달성하는 임의의 회로로 실현될 수 있다. 도 7의 실시예는 실현하기 간단하기 때문에, 개별 클록 디바이더(510) 및 셀렉터(512)를 가지면 원하는 것보다 많은 실리콘 영역을 활용할 수 있다. 또한, 하나의 클록 디바이더(510)만이 임의의 선택된 클록 분할비에 사용되므로, 나머지 선택되지 않은 클록 디바이더(510)는 사용되지 않고, 정전류 누설에 기여할 수도 있다. 따라서, 선택되지 않은 클록 디바이더(510)에 의해 점유된 영역은 효율적으로 사용되지 않는다.
도 8은 브릿지 장치 시스템 입/출력 인터페이스(402)의 차동 클록 입력 포트 CK 및 CK# 사이의 클록 경로 및 도 6a의 주파수 제어기(422)의 대체 실시예를 도시하는 블록도이다. 입력 버퍼(500 및 502) 및 내부 클록 발생기(504)는 도 7에서 이미 설명한 바 있다. 본 실시예에서는, 주파수 제어기(600)는 클록 디바이더(602) 및 클록 결합 로직(604)을 포함한다. 주파수 제어기(600)의 기능은 도 7의 주파수 제어기(506)의 것과 동일하며, 그 기능은 시스템 클록 clk_int의 비인 주파수를 갖는 메모리 클록 clk_div를 제공하는 것이다. 이후 상세히 논의되는 바와 같이, 클록 디바이더(602)는 제1 세트의 중간 클록 신호 및 제2 세트의 중간 클록 신호를 생성하는 구성 가능 로직 루프 회로를 포함한다. 제1 중간 세트의 클록 신호는 시스템 클록 clk_int의 상승 에지에 응답하여 생성되는 한편, 제2 중간 세트의 클록 신호는 시스템 클록 clk_int의 하강 에지에 응답하여 생성된다. 그래서 제1 중간 클록 신호는 트리거되는 상승 에지이고 제2 중간 클록 신호는 트리거되는 하강 에지이다. 제1 및 제2 세트의 중간 클록 신호의 양자는 독립 구성 가능 로직 루프 회로에 의해 생성되며, 여기에서, 각 루프 내의 로직 소자의 수는 FDR 코드에 응답하여 구성 가능하다. 각 루프 내의 로직 소자의 수를 변경함으로써, 중간 클록 신호의 주파수가 조정된다.
클록 디바이더(602)는 본 예에서는 비트 S1, S2 및 S3에 의해 나타나는 3비트 코드인 FDR 코드를 수신한다. 이 코드는 주파수 레지스터(606)에 저장된다. 표 3에 제시된 예시적인 비와 일치하여, 클록 디바이더(602) 내의 디코딩 로직은 1.0, 1.5, 2.0, 2.5, 3.0 및 3.5의 분할비에 대응하는 6개의 상이한 비 셀렉터 신호 중 하나를 생성한다. 이들 비 셀렉터 신호는 전술한 구성 가능 로직 루프 회로 각각 내의 다수의 로직 소자를 구성하는데 사용된다. 클록 결합 로직(604)은 제1 및 제2 세트의 중간 클록 신호로부터 특정 중간 클록 신호를 논리적으로 결합함으로써 메모리 클록 clk_div를 생성한다.
도 9a 및 도 9b는 본 실시예에 따라 도 8의 클록 디바이더(602)의 회로를 도시하는 개략도이다. 도 9a에서, 주파수 레지스터(606)는 FDR 코드 비트 S1, S2 및 S3을 수신하는 것으로 도시된다. 저장된 FDR 코드 비트는 6개의 비 셀렉터 신호를 생성하는 앞서 논의된 디코딩 로직에 대응하는 FDR 디코더(608)에 제공된다. 이들 비 셀렉터 신호는 1.0, 1.5, 2.0, 2.5, 3.0 및 3.5의 분할비에 각각 대응하는 div10, div15, div20, div25, div30 및 div35이다. 당업자는 알려진 로직 디코딩 회로가 3비트의 데이터로부터 비 셀렉터 신호를 생성하는데 사용될 수 있는 것을 이해할 것이다. 특히, 3비트 FDR 코드로, 최대 8개의 상이한 비 셀렉터 신호가 생성될 수 있다. OR 로직 게이트(610)는 div15 및 div30 비 셀렉터 신호를 결합하여 결합된 div1530 비 셀렉터 신호를 생성한다.
도 9b는 제1 및 제2 중간 클록 신호를 각각 생성하는 2개의 구성 가능 로직 루프 회로의 개략 회로도이다. 제1 구성 가능 로직 루프 회로는 서로 링 구조로 직렬로 접속되는 7개의 캐스케이드된 로직 소자(612, 614, 616, 618, 620, 622 및 624) 및 루프 내의 로직 소자의 수를 변경하기 위한 루프 조정 회로를 포함한다. 중간 클록 신호 Ap, Bp, Cp, Dp, Ep, Fp 및 Gp는 각각 로직 소자(612 내지 624)의 출력으로부터 탭될(tapped) 수 있다. 중간 클록 신호 CNTP는 제1 로직 소자(612)의 입력으로부터 탭될 수 있다. 집합적으로, Ap, Bp, Cp, Dp, Ep, Fp, Gp 및 CNTP는 제1 세트의 중간 클록 신호에 포함된다. 본 실시예에서는, 각 로직 소자는 집합적으로 시프트 레지스터를 형성하는 clk_int의 상승 에지와 같은 clk_int의 제1 에지에 응답하여 그 D-입력 상에 데이터를 래치시키는 플립플롭 회로이다. 바꿔 말하면, 이들 중간 클록 신호의 각각은 이전 중간 클록 신호가 생성된 후 시스템 클록의 1 사이클에 생성된다. 각 플립플롭 회로의 Q-출력은 그 D-입력 상에 래치된 데이터를 구동시킨다. 플립플롭 회로(612, 614, 616, 618, 620, 622 및 624)는 저 로직 레벨로 설정될 때 그 Q 출력이 저 로직 레벨로 설정되도록 모든 플립플롭 회로를 디스에이블시키는 활성 저 로직 레벨 신호 RESETP에 의해 리셋 가능하게 된다. 플립플롭 회로(612)는 SETP가 저 로직 레벨에 있는 동안 그 Q-출력을 clk_int의 상승 에지 상에서 고 로직 레벨로 설정하기 위한 활성 저 로직 레벨 설정 신호 SETP를 수신하도록 구성되는 초기화 로직 소자이다. 이것은 모든 플립플롭 회로가 RESETP를 통해 리셋함으로써 클리어된 후에 일반적으로 달성되는 제1 구성 가능 로직 루프 회로의 클록 생성 동작을 개시한다.
대체 실시예에서, 플립플롭 회로와 동일한 기능을 실행하는 임의의 등가 로직 소자가 현재 도시된 구성 가능 로직 루프 회로에 사용될 수 있고, 도시된 구성 가능 로직 루프 회로는 clk_int의 대향 에지에서 트리거할 수 있다. 루프 조정 회로는 상이한 플립플롭 회로의 출력을 제1 플립플롭(612)의 입력에 선택적으로 결합시키는 송신 게이트(626, 628, 630 및 632)를 포함한다. 송신 게이트(626)는 고 로직 레벨에서 div20에 응답하여 플립플롭(614)의 출력을 플립플롭(612)의 입력에 결합시킨다. 인버터(도시 생략)는 그 상보 div20_b를 제공하기 위해 div20을 인버트한다. 송신 게이트(628)는 고 로직 레벨에서 div1530에 응답하여 플립플롭(616)의 출력을 플립플롭(612)의 입력에 결합시킨다. 송신 게이트(630)는 고 로직 레벨에서 div25에 응답하여 플립플롭(620)의 출력을 플립플롭(612)의 입력에 결합시킨다. 송신 게이트(632)는 고 로직 레벨에서 div30에 응답하여 플립플롭(624)의 출력을 플립플롭(612)의 입력에 결합시킨다. 임의의 FDR 코드에 대해, 4개의 송신 게이트 중 하나만이 턴 온된다. 임의의 활성화된 송신 게이트는 자신이 접속되는 플립플롭의 출력을 플립플롭(612)의 입력에 결합시킨다. 활성화된 송신 게이트의 위치 이후에 접속되는 플립플롭은 회로로부터 효율적으로 제거되는데, 그 이유는 그 출력들이 플립플롭(612)으로 리턴하는 것이 제한 또는 금지되기 때문이다. 따라서, 중간 신호의 주파수는 플립플롭의 수를 변경하거나 루프 내의 스테이지를 시프트함으로써 조정 가능하다.
제2 구성 가능 로직 루프 회로는 서로 링 구조로 직렬로 접속되는 7개의 캐스케이드된 로직 소자(634, 636, 638, 640, 642, 644 및 646) 및 루프 내의 로직 소자의 수를 변경하기 위한 루프 조정 회로(648, 650, 652 및 654)를 포함한다. 제1 구성 가능 로직 루프 회로와 유사하게, 로직 소자는 시프트 레지스터를 집합적으로 형성하는 플립플롭일 수 있고, 루프 조정 회로는 송신 게이트일 수 있다. 제2 세트의 중간 클록 신호는 CNTN, An, Bn, Cn, Dn, En, Fn 및 Gn을 포함한다. 중간 클록 신호 CNTN, An, Bn, Cn, Dn, En, Fn 및 Gn은 각각 플립플롭(634 내지 646)의 출력에서 탭될 수 있다. 중간 클록 신호 CNTN은 제1 플립플롭(634)의 입력으로부터 탭된다. 제1 세트의 중간 클록 신호로부터의 특정 신호와 제2 세트의 중간 클록 신호와의 상이한 조합이 이후 논의되는 바와 같이, 상이한 결과적인 클록 신호를 생성하는데 사용될 수 있다. 제2 구성 가능 로직 루프 회로의 소자들의 상호 접속은 제1 구성 가능 로직 루프 회로의 것과 가상적으로 동일하다. 예를 들면, 송신 게이트(648, 650, 652 및 654)의 변위는 송신 게이트(626, 628, 630 및 632)와 동일하다. 제2 구성 가능 로직 루프 회로의 주요 차이점은 플립플롭(634, 636, 638, 640, 642, 644 및 646)이 clk_int의 하강 에지와 같은 clk_int의 제2 에지에 응답하여 자신의 D-입력 상에 데이터를 래치시킨다는 것이다. 바꿔 말하면, 이들 중간 클록 신호의 각각은 이전 중간 클록 신호가 생성된 후 시스템 클록의 1 사이클에 생성된다.
이것은 임의의 주어진 FDR 코드에 대해, 제1 중간 클록 신호 및 제2 중간 클록 신호가 동일한 주기를 갖지만, 1/2 클록 사이클만큼 나머지로부터 오프셋되어 있는 것을 의미한다. 플립플롭 회로(612, 614, 616, 618, 620, 622 및 624)는 저 로직 레벨로 설정될 때 그 Q 출력이 저 로직 레벨로 설정되도록 모든 플립플롭 회로를 디스에이블시키는 활성 저 로직 레벨 신호 RESETN에 의해 리셋 가능하게 된다. 플립플롭 회로(634)는 SETN이 저 로직 레벨에 있는 동안 그 Q-출력을 clk_int의 하강 에지 상에서 고 로직 레벨로 설정하기 위한 활성 저 로직 레벨 설정 신호 SETN을 수신하도록 구성되는 초기화 로직 소자이다. 이것은 모든 플립플롭 회로가 RESETN을 통해 리셋함으로써 클리어된 후에 일반적으로 달성되는 제2 구성 가능 로직 루프 회로의 클록 생성 동작을 개시한다. 따라서, 양 플립플롭(612 및 634)은 클록 신호 clk_int의 각각의 트리거링 에지 상의 SETP 및 SETN에 동기하여 응답하도록 구성된다. 본 실시예에 따르면, SETP 및 SETN은 브릿지 장치의 파워 업, 외부 수신된 제어 신호의 토글링(toggling), 또는 동작 동안 FDR 코드의 변화에 응답하여 생성된다. SETP 및 SETN은 상이한 시간에 각각 생성되는 저 로직 레벨 펄스일 수 있다. SETP 및 SETN의 생성의 추가의 논의는 이후에 논의한다.
도 9b의 2개의 구성 가능 로직 루프 회로는 이중 시프트 레지스터 클록 회로라고도 할 수 있고, 여기에서 제1 구성 가능 로직 루프 회로는 각 플립플롭이 클록 신호 clk_int의 상승 에지 상에 래치하는 포지티브(positive) 트리거링 시프트 레지스터이다. 제2 구성 가능 로직 루프 회로는 각 플립플롭이 클록 신호 clk_int의 하강 에지 상에 래치하는 네가티브(negative) 에지 트리거링 시프트 레지스터이다. 이중 시프트 레지스터 클록 회로의 동작 원리를 이제 설명한다. 정수 분할비의 경우에, 제1 구성 가능 로직 루프 회로는 선택된 분할비에 따라서 그 스테이지의 수를 변경하고, 그 기간이 선택된 분할비에 의해 승산되는 위치에 무관하게 포지티브 에지 트리거링 클록 신호를 생성한다. 정수가 아닌 분할비의 경우에는, 제2 구성 가능 로직 루프 회로는 선택된 분할비로 그 스테이지의 수를 변경하고, 시스템 클록 clk_int에 의해 승산된 분할비이며 비 분할 주파수의 1/2인 주파수를 갖는 네가티브 에지 트리거링 클록 신호를 생성한다. 이 네가티브 에지 트리거링 클록 신호는 이후에, 포지티브 클록 에지에서 트리거링되고 비 분할 주파수의 1/2 주파수를 또한 갖는 제1 구성 가능 로직 루프 회로로부터의 클록 신호와 다운스트림 회로에 의해 병합 또는 결합된다. 포지티브 트리거링 시프트 레지스터 및 네가티브 트리거링 시프트 레지스터로부터의 클록 신호를 병합함으로써, 메모리 클록 신호가 시스템 클록의 비 분할 주파수를 갖고 생성될 수 있다.
2개의 구성 가능 로직 루프 회로는 주파수 제어기(600)의 제1 스테이지를 형성한다. 주파수 제어기(600)의 제2 스테이지는 제1 및 제2 세트의 중간 클록 신호와 비 셀렉터 신호 div10, div15, div20, div25 및 div30에 응답하여 메모리 클록 clk_div를 생성하는 클록 결합 로직(604)이다. 클록 결합 로직(604)은 도 10a 및 도 10b에 도시된다. 도 10a는 1.0, 1.5, 2.0 또는 2.5 중 어느 하나의 분할비인 주파수를 갖는 제1 중간 메모리 클록 clk1025를 생성하는데 사용된 결합 로직을 도시하는 개략 회로도이다. 도 10b는 3.0 또는 3.5 중 어느 하나의 분할비인 주파수를 갖는 제2 중간 메모리 클록 clk3035를 생성하는데 사용된 결합 로직을 도시하는 개략 회로도이다. 도 10b의 회로 내의 부가 로직은 제1 또는 제2 중간 메모리 클록 중 하나를 최종 메모리 클록 clk_div로서 전달한다.
도 10a 및 도 10b 양자를 참조하면, 클록 결합 로직(604)의 로직 게이트는 로직 구성 회로(700-1, 700-2) 및 클록 생성 회로(702-1, 702-2)로서 기능적으로 그룹화된다. 로직 구성 회로(700-1, 700-2)는 분할비 신호에 응답하여 클록 생성 회로(702-1, 702-2)의 로직 기능을 구성하는 제어 신호를 생성한다. 클록 생성 회로(702-1, 702-2)는 제1 및 제2 중간 세트의 클록 신호를 수신하여, 이들을 로직 구성 회로(700-1, 700-2)로부터의 제어 신호에 의해 명령을 받은 구성된 로직 기능에 따라서 논리적으로 결합하며, 메모리 클록 clk_div를 생성한다. 바꿔 말하면, 로직 구성 회로(700-1, 700-2)는 제1 및 제2 구성 가능 로직 루프 회로로부터 선택된 중간 클록 신호의 소정의 조합이 메모리 클록 clk_div를 생성하기 위해 클록 생성 회로(702-1, 702-2)에 의해 사용될 수 있게 인에이블한다.
도 10a에서, 로직 구성 회로(700-1)는 NOR 게이트(704, 706 및 708), 인버터(712 및 714) 및 AND 게이트(716 및 718)를 포함한다. 도 10a에서, 클록 생성 회로(702-2)는 NAND 게이트(720, 722, 724 및 726), NOR 게이트(728, 730 및 732)를 포함한다. 도 10b에서, 로직 구성 회로(700-2)는 NAND 게이트(734 및 736), 인버터(738 및 740) 및 송신 게이트(742 및 744)를 포함한다. 도 10b에서, 클록 생성 회로(702-2)는 NOR 게이트(746, 748, 750 및 752), 인버터(754 및 756) 및 NAND 게이트(758), 및 AND 게이트(760)를 포함한다.
이하는 도 10a의 로직 구성 회로(700-1)의 기능적인 설명이다. 로직 게이트(706, 708 및 718)는 모든 비 셀렉터 신호 div10, div15, div20 및 div25가 저 로직 레벨(예를 들면, 로직 '0'에 대응하는 전압)에 있을 때, 도 10a의 클록 생성 회로(702-1)를 디스에이블시키기 위한 회로를 형성한다. 바꿔 말하면, 로직 게이트(706, 708 및 718)는 div30 또는 div35 중 하나가 고 로직 레벨(예를 들면, 로직 '1'에 대응하는 전압)에 있을 때, 도 10a의 클록 생성 회로(702-1)를 디스에이블시킨다. AND 게이트(718)의 출력은 div10, div15, div20 및 div25 중 하나가 고 로직 레벨에 있을 때 저 로직 레벨로 구동되는 ENCNTP로 라벨 붙여진 인에이블 신호이다. 그 외에는, ENCNTP는 div10, div15, div20 및 div25의 모두가 저 로직 레벨에 있을 때 고 로직 레벨로 구동된다.
로직 게이트(704 및 716)는 정수 분할비에 특히, 3.0 미만의 정수 분할비에 대응하는 분할비 신호를 검출하기 위한 회로를 형성한다. 예를 들면, 1.0 및 2.0의 분할비가 정수 분할비인 한편, 1.5 및 2.5의 분할비는 분수 분할비이다. div10과 div20 중 어느 하나가 고 로직 레벨에 있을 때, AND 게이트(716)의 출력에서의 인에이블 신호 ENCNTN은 저 로직 레벨로 구동된다. NOR 게이트(704)의 출력이 AND 게이트(716)의 제1 입력에 접속되는 동안, AND 게이트(716)의 제2 입력은 인버터(712)의 출력을 수신하고 차례로 인에이블 신호 ENCNTP를 수신한다. 따라서, 인에이블 신호 ENCNTN은 분수 분할비 1.5 및 2.5에 대응하는 분할비 신호 div15 및 div25가 고 로직 레벨에 있을 때만 고 로직 레벨로 구동된다.
이하는 도 10a의 클록 생성 회로(702-1)의 기능적인 설명이다. 도 10a의 클록 생성 회로(702-1)는 3개의 클록 생성 브랜치를 포함한다. 제1 브랜치는 로직 게이트(720 및 728)를 포함한다. 제2 브랜치는 로직 게이트(722 및 730)를 포함한다. 제3 브랜치는 로직 게이트(724)를 포함한다. 로직 게이트(726 및 732)는 브랜치들의 출력을 함께 결합시킨다. 제1 브랜치는 ENCNTN이 고 로직 레벨에 있을 때, NAND 게이트(720)의 입력에서 수신된 중간 클록 신호 CNTN을 NOR 게이트(728)의 출력에 결합시킨다. 바꿔 말하면, 중간 클록 신호 CNTN은 1.5나 2.5 중 하나의 분수 분할비에 대해서만 NOR 게이트(732)의 제1 입력에 전달된다. 제2 브랜치는 ENCNTP가 저 로직 레벨에 있을 때, NAND 게이트(722)의 입력에서 수신된 중간 클록 신호 CNTP를 NOR 게이트(730)의 출력에 결합시킨다. 바꿔 말하면, 중간 클록 신호 CNTP는 비 셀렉터 신호 div10, div15, div20 또는 div25 중 어느 하나가 고 로직 레벨에 있을 때마다 NOR 게이트(732)의 제2 입력에 전달된다. 따라서, CNTN 및 CNTP의 양자는 1.5 및 2.5의 어느 하나의 분수 분할비가 각각 분할비 신호 div15 및 div25를 통해 선택될 때의 경우에 NOR 게이트(703)에 결합된다. 1.0의 분할비를 제외한 모든 정수 분할비에 대해, CNTP만이 NOR 게이트(732)에 결합된다. 1.0의 분할비의 경우에는, 제1 및 제2 브랜치의 양자가 NOR 게이트(728 및 730)의 제2 입력이 div10 분할비 신호를 직접 수신하게 함으로써 디스에이블된다. div10이 고 로직 레벨에 있을 때, 양 NOR 게이트(728 및 730)는 그들의 출력을 저 로직 레벨로 구동시킨다. 따라서, NOR 게이트(732)의 출력은 고 로직 레벨에서 구동된다. div10이 고 로직 레벨에 있기 때문에, 제3 브랜치의 NAND 게이트(724)는 시스템 클록 clk_int를 전달하도록 인에이블된다. 따라서, div10이 고 로직 레벨에 있을 때는 제1 및 제2 브랜치가 디스에이블되고 clk1025=clk_int이며, div10이 저 로직 레벨에 있을 때는 제3 브랜치가 디스에이블되고 clk1025는 CNTP나 CNTP와 CNTN의 논리 결합 중 어느 하나이다. 최종 메모리 클록 clk_div는 1.0과 2.5 사이의 분할비가 선택될 때의 중간 메모리 클록 clk1025로 될 것이다.
이하는 도 10b의 로직 구성 회로(700-2) 및 클록 생성 회로(702-2)의 설명이다. 도 10b의 로직 구성 회로(700-2)는 인에이블 신호 ENCNTP가 고 로직 레벨에 있을 때, 또는 더욱 구체적으로는, div30 또는 div35만이 고 로직 레벨에 있을 때 인에이블된다. 하나의 비 셀렉터 신호만이 언제나 고 로직 레벨에 있기 때문에, div30 또는 div35 중 어느 하나가 고 로직 레벨에 있을 때 나머지 비 셀렉터 신호는 저 로직 레벨에 남는다. 고 로직 레벨에 있는 ENCNTP로, NAND 게이트(734 및 736)가 인에이블된다. div30이 고 로직 레벨에 있으면, 송신 게이트(742)는 인버터(754)의 출력을 통과시키도록 턴 온된다. div35가 고 로직 레벨이면, 송신 게이트(744)는 NAND 게이트(758)의 출력을 통과시키도록 턴 온된다. 따라서, 도 10b의 로직 구성 회로(700-2)는 2개의 클록 생성 브랜치 중 하나를 AND 게이트(760)에 결합시키기 위한 셀렉터로서 기능을 한다.
도 10b의 클록 생성 회로(702-2)는 상술한 2개의 클록 생성 브랜치와 중간 메모리 클록 셀렉터 회로를 포함한다. 도 10b의 2개의 클록 생성 브랜치는 도 10a의 클록 생성 회로(702-1)가 제1 내지 제3 클록 생성 브랜치를 포함하기 때문에, 제4 및 제5 클록 생성 브랜치라고 한다. 제4 클록 생성 브랜치는 로직 게이트(764 및 754)를 포함하고, 제5 클록 생성 브랜치는 로직 게이트(748, 750 및 758)를 포함한다. 제4 클록 생성 브랜치에서, NOR 게이트(746)는 도 9b로부터 중간 클록 신호 Cp 및 An을 서로 논리적으로 결합시킨다. 제5 클록 생성 브랜치에서, NOR 게이트(748)는 중간 클록 신호 Dn 및 Gp를 논리적으로 결합시키는 한편, NOR 게이트(750)는 중간 클록 신호 Dp 및 Gn을 논리적으로 결합시키며, 이들은 모두 도 9b의 회로로부터 제공된다. 중간 메모리 클록 셀렉터 회로는 로직 게이트(760, 752 및 756)을 포함하고, 여기에서 AND 로직 게이트(760)는 ENCNTP가 고 로직 레벨에 있을 때 송신 게이트(742 또는 744)의 어느 하나를 중간 메모리 클록 clk3035로서 전달하도록 인에이블된다. 중간 메모리 클록 clk3035는 3.0 또는 3.5의 분할비로 분할된 시스템 클록이다. NOR 게이트(752)는 2개의 수신된 중간 메모리 클록 clk1025 또는 clk3035 중 하나를, 마지막 메모리 클록 clk_div를 제공하는 인버터(756)에 전달한다. 제1 중간 클록 신호 및 제2 중간 클록 신호로부터의 신호들의 상이한 논리적인 결합이 브릿지 장치용으로 설계된 소정의 분할비에 따라서 가능해진다. 예를 들면, 이들 결합은 상이한 클록 신호의 로직 레벨 사이의 오버랩을 기초로 하여 선택될 수 있다.
도 10b의 본 회로 실시예에서, 중간 클록 신호 Cp 및 An, 및 Dn, Gp, Dp 및 Gn은 중간 메모리 클록 clk3035의 펄스 폭이 최소값을 충족시키거나 초과하는 것을 보증하도록 도시된 방식으로 서로 결합된다. 본 실시예에서, 펄스 폭은 신호의 제1 상승 에지와 후속 하강 에지(또는 그 역) 사이의 시간의 지속기간으로서 정의된다. 예를 들면, NAND 플래시 메모리 표준은 WE# 또는 RE#의 펄스 폭이 83MHz 보다 높은 주파수에서 적어도 12ns인 것을 필요로 한다. 따라서, 특정 중간 클록 신호는 함께 논리적으로 결합될 때, 펄스 폭이 최소 필요한 값을 초과하도록 선택된다. 현재 도시된 예는 특정 그룹의 중간 클록 신호들을 서로 결합시키지만, 당업자는 상이한 조합이 상이한 최소 펄스 폭을 얻기 위해 가능함을 이해할 것이다.
도 9b의 제1 및 제2 구성 가능 로직 루프 회로가 도 10a 및 도 10b의 클록 결합 로직에 의해 후속 결합을 위해 필요한 클록 신호를 생성하도록 정확히 동작하는 것을 보증하기 위해, 양 구성 가능 루프 회로의 개시 조건 또는 상태가 동작이 시작하기 전에 설정된다. 본 실시예에서, 그러한 개시 조건은 이들에 제한되는 것은 아니지만, 브릿지 장치의 파워 업 리셋, 외부 제어 신호의 토글링, 또는 FDR 코드의 변경을 거쳐 시스템 클록의 원하는 분할비로의 변경을 포함할 수 있는 리셋 이벤트에 응답하여 설정된다. 본 실시예에서, 주파수 제어기(422) 내에 이 기능을 실행하기 위한 클록 초기화 회로가 제공된다.
도 11은 본 실시예에 따르는 클록 초기화 회로의 블록도이다. 클록 초기화 회로(800)는 도 9b의 제1 및 제2 구성 가능 로직 루프 회로를 리셋하고 클록 생성을 위한 개시 조건을 설정할 책임이 있다. 본 실시예에서, 클록 초기화 회로(800)는 리셋 회로(802), 외부 제어 신호 검출기(804), 분할비 변화 검출기(806) 및 시동 동기화기(808)를 포함한다. 본 실시예의 예에서, 외부 제어 신호 검출기(804)는 브릿지 장치(400)의 CE# 포트에 접속되는 칩 인에이블 검출기이다. 칩 인에이블 검출기(804)는 판독, 프로그램 또는 블록 소거 동작 동안 일어날 수도 있는 고에서 저 로직 레벨로의 CE# 포트의 전이를 검출하도록 구성된다. CE#이 저 로직 레벨로 강하한 후, 칩 인에이블 검출기(804)는 ce_rst라고 하는 저 로직 레벨 펄스를 생성한다. 브릿지 장치(400)의 설계 및 애플리케이션에 따라서, 임의의 외부 제어 신호 또는 내부 제어 신호가 유사한 방식으로 검출될 수 있다. 분할비 검출기(806)는 FDR 코드 비트 S1, S2 또는 S3 중의 적어도 하나로의 변화를 검출한다. 검출된 변화에 응답하여, 분할비 검출기(806)는 dr_rst라고 하는 저 로직 레벨 펄스를 생성한다.
리셋 회로(802)는 클록 디바이더(602)의 모든 플립플롭을 클리어할 책임이 있다. 그러나, 제1 및 제2 구성 가능 루프 회로는 시스템 클록 clk_int의 상이한 에지에서 트리거하기 때문에, 별개의 리셋 신호 RESETP 및 RESETN이 생성된다. RESETP 및 RESETN의 양자는 논리적으로 동일하므로, 그들 신호는 이후 더욱 상세히 논의되는 바와 같이, 그들 각각의 플립플롭 회로를 적절히 리셋시키도록 상이한 시간에 생성된다. 리셋 회로(802)는 브릿지 장치(400)의 파워 업 리셋에 응답하여, ce_rst를 통해 CE#의 토글링에 응답하여, 또는 dr_rst를 통해 FDR 코드의 변화에 응답하여, RESETP 및 RESETN을 생성한다.
시동 동기화기(808)는 ce_rst나 dr_rst 중 하나에 응답하여 설정 신호 SETP 및 SETN을 생성한다. 설정 신호 SETP 및 SETN은 선택된 분할비에 따라서, 상이한 시간에 생성되는 저 로직 레벨 펄스이다. 더욱 구체적으로는, 3개의 분할비 신호가 SETP 및 SETN 펄스의 서로로부터의 간격을 판정한다. 신호 DIV1520은 1.5 또는 2.0 비로의 분할의 선택에 대응하고, 신호 DIV2530은 2.5 또는 3.0 비로의 분할의 선택에 대응하며, 신호 DIV3540은 3.5 또는 4.0 비로의 분할의 선택에 대응한다. 명쾌하게 도시되지는 않았지만, 신호 DIV1520이 신호 div15와 div20의 논리 OR일 수 있다. 유사하게, 신호 DIV2530은 신호 div25와 div30의 논리 OR일 수 있고, 신호 DIV3540은 신호 div35와 div40의 논리 OR일 수 있다. 그러한 논리 OR은 도 9a에 앞서 도시된 바 있으며, 여기에서 신호 div15 및 div30이 OR 게이트(610)에서 결합되어 신호 div1530을 형성한다. 그래서, 유사한 OR 회로들이 DIV1520, DIV2530 및 DIV3540을 생성하는데 사용될 수 있다. 1.0의 선택된 분할비에 대해, 3개의 신호 DIV1520, DIV2530 및 DIV3540은 모두 저 로직 레벨에 있다. 따라서, 셀렉터(870)는 개별 비 셀렉터 신호에 응답한다. SETP 및 SETN의 간격은 전술한 쌍을 이루는 분할비의 각각에 대해 동일하지만, 상이한 쌍을 이루는 비들 사이에선 상이하다.
도 12는 본 실시예에 따르는 도 11의 외부 제어 신호 검출기(804)의 개략 회로도이다. 회로는 제1 플립플롭 회로(820), 제2 플립플롭 회로(822) 및 인버터(824)와 NAND 게이트(826)를 갖는 펄스 생성 회로를 포함한다. 플립플롭 회로(820 및 822)의 양자는 그 Q-출력 상에 출력하기 위해 그 D-입력을 래치시키도록 clk_int의 하강 에지에서 트리거된다. 플립플롭 회로(820)의 Q-출력은 인버터(824)의 입력에 제공되는 한편, 플립플롭 회로(822)의 Q-출력은 NAND 게이트(826)의 제1 입력에 제공된다. NAND 게이트(826)의 제2 입력은 인버터(824)의 출력을 수신한다. NAND 게이트(826)의 출력은, CE#이저 로직 레벨에 유지하는 동안 및 CE#이 저 로직 레벨에서 고 로직 레벨로 전이할 때, 고 로직 레벨을 유지하는 ce_rst이다. CE#이 고 로직 레벨에 있는 동안, NAND 게이트(826)는 인버터(824)로부터 저 로직 레벨 출력을 그리고 플립플롭 회로(822)로부터 고 로직 레벨 출력을 수신한다. CE#이 고 로직 레벨에서 저 로직 레벨로 전이할 때, 인버터(824)는 clk_int의 하나의 하강 에지 이후에 고 논리 레벨로 자신의 출력을 변경하며, 그에 의해 플립플롭 회로(822)가 현재 고 로직 레벨 신호를 출력하므로, NAND 게이트(826)가 ce_rst를 저 로직 레벨로 구동시키게 한다. clk_int의 제2 하강 에지에서, 플립플롭 회로(822)는 그 출력을 저 로직 레벨로 구동시키도록 플립플롭 회로(820)의 저 로직 레벨 출력을 래치시킨다. 이제 NAND 게이트(826)는 ce_rst를 고 로직 레벨로 되돌려 구동시킨다. 그래서, 저 로직 ce_rst 펄스가 생성된다.
도 13은 본 실시예에 따르는 도 11의 분할비 검출기의 개략 회로도이다. 분할비 검출기(806)는 플립플롭 회로(830, 832, 834, 836, 838 및 840), XOR 게이트(842, 844 및 846), 및 NOR 게이트(848)를 포함한다. 모든 플립플롭 회로는 시스템 클록 clk_int의 하강 에지에서 트리거된다. XOR 게이트(842)에 접속되는 자신의 각각의 출력을 갖는 캐스케이드된 플립플롭 회로(830 및 8320의 쌍은 FDR 코드 비트 S1용의 단일 비트 변화 검출기를 형성한다. 유사하게, XOR 게이트(844)와 함께 캐스케이드된 플립플롭 회로(834 및 836)는 FDR 코드 비트 S2용의 단일 비트 변화 검출기이고, XOR 게이트(846)와 함께 플립플롭 회로(838 및 840)는 FDR 코드 비트 S3용의 단일 비트 변화 검출기이다. 예로서 비트 S1을 사용하면, 그 로직 상태에 변화가 없을 때, XOR 게이트(842)의 출력은 그 양 입력이 동일한 로직 레벨에 있으므로 저 로직 레벨에 있게 된다. 그러나, S1의 로직 레벨로의 어떤 변화로 인해, clk_int의 제1 하강 에지 이후에 플립플롭(830)의 Q-출력으로 변화가 일어나며, 그에 의해 그 입력의 양자가 불일치하는 로직 레벨이기 때문에 XOR 게이트(842)가 그 출력을 고 로직 레벨로 구동시킨다. 그러면 clk_int의 제2 하강 에지 이후에, 플립플롭(832)의 Q-출력이 S1과 동일한 로직 레벨로 변화하며, 그에 의해 XOR 게이트(842)의 양 입력을 다시 일치하는 상태로 위치시킨다. XOR 게이트(842)의 출력은 고 로직 레벨로 강하한다. 따라서, 각 XOR 게이트(842)는 그 각각의 FDR 비트로의 변화에 응답하여 고 로직 레벨 펄스를 생성한다. 당업자는 회로가 더 많거나 적은 FDR 비트를 검출하기 위해 쉽게 크기 변경될 수 있음을 이해할 것이다. XOR 게이트(842, 844 및 846)의 출력으로서 도시된 각 단일 비트 변화 검출기의 출력은 NOR 게이트(848)로서 실현되는 결과 결합기에 제공된다. 단일 비트 변화 검출기 중의 적어도 하나로부터 수신되는 임의의 고 로직 레벨 펄스로 인해, NOR 게이트(848)가 상보적인 저 로직 레벨 dr_rst 펄스를 생성한다. 본 실시예에서, 펄스의 지속기간은 clk_int의 주기 또는 1 클록 사이클이다. 펄스 길이는 XOR 게이트(842)의 입력과 플립플롭 회로(832) 사이에 다른 플립플롭 회로를 부가함으로써 증가될 수 있다.
도 14는 본 실시예에 따르는 도 11의 리셋 회로(802)의 개략 회로도이다. 리셋 회로(802)는 파워 업 리셋 회로(850), AND 로직 게이트(852 및 854)를 포함하는 검출 결합기 회로, 및 캐스케이드된 플립플롭 회로(856 및 858)를 포함한다. 파워 업 리셋 회로(850)는 VDD 전원의 소정의 최소 레벨을 검출하기 위한 임의의 잘 알려진 회로를 포함할 수 있다. 브릿지 장치(400)의 파워 업 동안, 파워 업 리셋 회로(850)는 그 출력 신호 pu_rst를 저 로직 레벨에 유지한다. VDD의 소정의 최소 레벨에 도달될 때, pu_rts가 고 로직 레벨로 구동된다. AND 게이트(854 및 856)는 저 로직 레벨에서 pu_rst, ce_rst 및 dr_rst 중 어느 하나를 검출하기 위한 결합기 회로이다. 따라서, pu_rst가 저 로직 레벨에 있을 때, AND 게이트(852)의 출력은 저 로직 레벨에 있을 것이다. ce_rst 또는 dr_rst가 저 로직 레벨로 펄스할 때, AND 게이트(852)의 출력은 동일한 시간의 지속기간 동안 저 로직 레벨로 펄스할 것이다. AND 게이트(852)의 출력은 플립플롭 회로(856)에 제공되고 플립플롭 회로(856)의 출력은 플립플롭 회로(858)에 접속된다. 플립플롭 회로(856)는 시스템 클록 clk_int의 하강 에지에서 트리거하는 한편, 플립플롭 회로(858)는 시스템 클록 clk_int의 하강 에지에서 트리거한다. 따라서, RESETN은 RESETP가 저 로직 레벨로 구동된 후에 1과 1/2 클록 사이클에 저 로직 레벨로 구동된다. pu_rst 신호는 파워 업 프로세스의 부분으로서 저로부터 고 로직 레벨로 간단히 전이하기 때문에, RESETP 및 RESETN도 또한 저로부터 고 로직 레벨로 간단히 전이할 것이다. 브릿지 장치는 파워 업되어 있고 pu_rst가 고 로직 레벨에 있다고 가정하면, ce_rst 또는 dr_rst의 저 로직 레벨 펄스가 AND 게이트(854)에서 수신될 수 있다. 그러한 경우에, RESETP는 ce_rst(또는 dr_rst)와 동일한 지속기간을 갖는 저 로직 레벨 펄스가 되는 한편, RESETN은 ce_rst(또는 dr_rst)와 동일한 지속기간을 갖는 저 로직 레벨 펄스가 되지만, RESETP 이후 1과 1/2 클록 사이클만큼 지연된다.
지금까지는, 도 12, 도 13 및 도 14의 회로가 도 9b의 클록 디바이더(602)의 플립플롭 회로를 클리어하기 위한 리셋 신호 RESETP 및 RESETN의 생성에 기여한다. 플립플롭 회로가 리셋 및 클리어되어 있기 때문에, 클록 디바이더(602)에 의한 클록 신호의 생성의 개시 조건은 설정 신호 SETP 및 SETN을 생성함으로써 설정될 수 있다. 더욱 구체적으로는, 선택된 분할비에 대한 개시 조건은 SETP 및 SETN의 저 로직 레벨 펄스들 사이의 상대 타이밍에 응답하여 설정된다. 시동 동기화기(808)는 선택된 분할비에 응답하여 특정 시간에 SETP 및 SETN을 생성할 책임이 있다.
도 15는 본 실시예에 따르는 도 11의 시동 동기화기의 개략 회로도이다. 시동 동기화기(808)는 플립플롭 회로(860, 862, 864 및 866), AND 게이트(868), 셀렉터(870), 및 플립플롭 회로(872)와 같은 캐스케이드된 로직 소자들을 포함하며, 로직 소자(860)는 다른 로직 소자를 통해 캐스케이드하는 초기 신호를 생성하는 초기화 로직 소자이다. 각각의 플립플롭 회로(860, 862, 864 및 866)는 시스템 클록 clk_int의 하강 에지에서 트리거하지만, 플립플롭 회로(872)는 clk_int의 상승 에지에서 트리거한다. AND 게이트(868)는 ce_rst 또는 dr_rst 중 하나의 저 로직 레벨 펄스를 검출하고, 일반적인 리셋 펄스 rst를 제1 플립플롭 회로(860)에 제공한다. 셀렉터(870)는 각각 설정 구성 신호 SET15, SET25 및 SET35라고 하는 플립플롭 회로(862, 864 및 866)의 출력을 수신하여, 하나를 플립플롭 회로(872)에 전달하는 3-투-1(3-to-1) 멀티플렉서로서 기능을 한다. 셀렉터(870)는 설정 구성 신호 SET15, SET25 및 SET35 중 아무것도 플립플롭 회로(872)에 전달되지 않는 선택되지 않은 상태를 갖도록 구성된다. 이 경우에, 플립플롭 회로(872)(SETN)의 출력은 저 로직 레벨에 대응하는 이전의 리셋 상태로 남아 있다. 플립플롭 회로(860)의 출력은 설정 신호 SETP로서 사용되는 한편, 플립플롭 회로(872)는 수신된 펄스된 신호에 대해 180도만큼 위상 시프트되는 셀렉터(870)로부터의 펄스된 신호를 제공하기 위한 위상 조정 회로로서 기능을 한다. 플립플롭 회로(872)의 출력은 설정 신호 SETN이다. 셀렉터(870)는 3개의 선택 신호 중 하나에 응답하도록 구성된다. 플립플롭 회로(872)에 전달될 입력에 대한 선택 신호의 맵핑은 아래와 같다. 신호 DIV1520은 SET15를 전달하고, 신호 DIV2530은 SET25를 전달하며, 신호 DIV3540은 SET35를 전달한다.
3개의 별개의 선택 신호를 사용하는 대신에, 셀렉터(870)는 3개의 상태 중 어느 하나에 대응하도록 코딩된 2비트 신호, 또는 동일한 기능을 달성하기 위한 선택 신호를 수신하도록 구성된다. 이 실시예에서, 2비트 신호는 총 4개의 상이한 상태를 나타내는데 사용될 수 있다. 따라서, 선택된 분할비가 1.0이면, 제4 상태가 진입될 수 있으며, 여기에서 셀렉터(870)는 설정 구성 신호 SET15, SET25 및 SET35의 아무것도 전달하지 않는다.
시동 동기화기(808)의 일례의 동작을 도 16a의 타이밍도를 참조하여 이하 논의한다. 이 예에서, DIV3540은 SET35를 플립플롭 회로(872)에 전달하기 위한 활성 선택 신호라고 가정한다. ce_rst 또는 dr_rst 중 하나의 저 로직 레벨 펄스가 AND 게이트(868)에서 수신될 때, 일반적인 리셋 신호 rst는 clk_int의 클록 사이클 0의 제1 하강 에지에서 저 로직 레벨로 펄스한다. 본 예에서는, ce_rst 또는 dr_rst 펄스는 1 클록 사이클의 지속기간이다. rst 펄스는 clk_int의 각 연속하는 하강 에지를 갖는 각각의 플립플롭 회로(860, 862, 864 및 866)를 통해 전파한다. 클록 사이클 5의 제1 상승 에지에서, 플립플롭 회로(872)가 셀렉터(870)를 통해 SET35를 래치시키며, 그에 의해 SETN을 제공한다. 도 16a에 도시된 바와 같이, SETN은 SETP로부터 총 3.5 클록 사이클만큼 분리 또는 지연된다.
클록 디바이더(602)에서, 비 셀렉터 신호 div35는 송신 게이트(632 및 654)를 턴 온시키도록 활성이고, 플립플롭 회로(612 및 634)는 회로들의 동작을 개시하도록 각각 SETP 및 SETN 저 로직 레벨 펄스를 수신한다. 제1 및 제2 구성 가능 로직 회로는 그에 따라 각각의 7 단계 시프트 레지스터로서 구성된다. 결국, 제1 구성 가능 로직 루프는 7 시스템 클록 기간을 갖는 클록 신호 CNTP를 생성하는 한편, 제2 구성 로직 루프는 7 시스템 클록 기간을 갖는 클록 신호 CNTN을 생성한다. 도 16b는 클록 사이클 6 후에 종료하는 도 16a의 타이밍도의 확장이다. 도 16b의 타이밍도는 클록 사이클 8에서 시작하고, 도 16a에 도시된 바와 같이 생성된 SETP 및 SETN에 응답하여 3.5의 분할비가 선택된 CNTP와 CNTN 사이의 관계를 나타낸다. 클록 사이클 6과 8 사이의 신호 전이가 존재하지 않는다. 클록 신호 CNTP는 클록 사이클 2의 상승 에지로부터 7 클록 사이클인 클록 사이클 8의 상승 에지에서 고 로직 레벨로 상승한다. 도 16b에 도시된 바와 같이, CNTP 및 CNTN은 정수가 아닌 클록 분할을 인에이블시키는 그 1/2 사이클의 간격을 갖고 중간 클록 신호를 상호 트리거하고 있다. 이것은 설정 신호 SETN은 SETP가 생성된 후의 3.5 클록 사이클에 생성되므로, 제2 구성 가능 로직 루프의 초기 동작을 제1 구성 가능 로직 루프에 대해 3.5 클록 사이클만큼 지연시키기 때문이다. 클록 디바이더(602)에서 생성된 클록 신호는 클록 결합 로직(604)에서 그 후 논리적으로 결합되어 결과적으로 마지막 메모리 클록 clk_div가 된다. 도 15 및 도 16a를 참조하면, 셀렉터(870)를 통해, 제2 구성 가능 로직 루프의 초기 동작이 제1 구성 가능 로직 루프의 초기 동작에 비해 1.5 또는 2.5 클록 사이클만큼 지연될 수도 있는 것이 명백해질 것이다.
요약하면, 클록 초기화 회로(800)는 클록 디바이더(602)의 제1 구성 가능 로직 루프와 제2 구성 가능 로직 루프의 중간 클록 신호들 사이에 클록 사이클 오프셋을 확립한다. 클록 결합 로직은 그 후 메모리 클록 clk_int를 생성하기 위해 선택된 분할비를 기초로 하여 상이한 중간 클록 신호를 결합한다.
상술한 회로들이 어떻게 정수 기반의 분할비를 기초로 하여 clk-int를 생성하는지의 일례는 도 17의 타이밍도를 참조하여 따른다. 3.0의 정수 분할비가 선택된다고 가정한다. 그래서, 본 예에 있어서, 3.0의 분할비가 div30을 구동함으로써 고 로직 레벨로 선택된다. 클록 디바이더(602)에서, 송신 게이트(628)는 제1 및 제2 구성 가능 로직 루프를 각각의 3 스테이지 시프트 레지스터로서 구성하도록 턴 온된다. 도 18은 시스템 클록 clk_int, 도 15의 시동 동기화기(808)에 도시된 출력 신호, 도 9b의 클록 디바이더(602)로부터의 중간 클록 신호 Ap, Bp, Cp 및 An, 및 또한 도 9b로부터의 인버터(754)의 결과 출력에 대한 신호 트레이스(trace)를 도시한다. 본 예에서는, 신호 ENCNTP는 고 로직 레벨에 있고 신호 clk1025는 선택된 분할비에 응답하여 저 로직 레벨에 있으므로, 결과적인 clk_div 신호는 인버터(754)의 출력에 등가이다. 설정 구성 신호 SET15, SET25 및 SET35의 생성의 시퀀스 및 타이밍은 도 16a에 도시된 것과 동일하다. 그러나, 선택된 3.0 분할비로 인해, 분할비 신호 DIV2530은 셀렉터(870)가 SET25를 플립플롭 회로(872)에 전달하게 하도록 어써트된다(asserted). 따라서, SETN은 도 17에 도시된 바와 같이 SETP의 생성 후에 clk_int의 2.5 클록 사이클에 생성된다.
저 로직 레벨에서 SETP에 의해, 플립플롭(612)은 그 D-입력을 무시하면서 클록 사이클 2의 제1 상승 에지에서 고 로직 레벨로 Ap를 래치시켜 구동시킨다. 바꿔 말하면, 저 로직 레벨에서의 SETP는 clk_int의 상승 에지에서 Q-출력에 래치되어 제공되는 고 로직 레벨 신호를 갖는 D-입력을 우선으로 한다. 중간 클록 신호 Bp 및 Cp(CNTP)가 그 후 clk_int의 이어지는 상승 에지에서 생성된다. 신호 SETN은 플립플롭(612)에 대한 SETP와 같이, 플립플롭(634)에 대해 동일한 효과를 갖는다. 클록 사이클 4의 제1 하강 에지에서, An이 생성된다. 도 17에 도시된 바와 같이, Ap, Bp, Cp는 하나의 전체 클록 사이클만큼 오프셋되고, An은 Cp로부터 1/2 클록 사이클만큼 오프셋된다. 이들 중간 클록 신호의 펄스 지속기간은 1 클록 사이클이다. An 및 Cp가 NOR 게이트(746)에 의해 논리적으로 결합될 때, An 및 Cp의 오버랩한 고 로직 레벨이 NOR 게이트(746)에 의해 함께 논리 OR되거나 1.5 클록 사이클인 고 로직 레벨 펄스를 길게 형성하도록 병합된다. 본 예에서 clk_div와 대체로 같은 인버터(754)의 클록 출력은 clk_int의 3개의 전체 클록 사이클과 같은 주기를 갖는다.
앞서 논의된 바와 같이, 메모리 클록 주파수는 본 실시예에서 동적으로 구성 가능하며, 이것은 메모리 클록이 복합 메모리 장치가 파워 업된 후 임의의 시간 설정 및 리셋될 수 있는 것을 의미한다. 도 6a를 참조하면, 로직 및 op-코드 변환기 블록(414)은 자신이 접속되는 메모리 제어기나 다른 호스트 장치로부터의 클록 구성 글로벌 명령을 수신하도록 구성된다. 도 18은 본 실시예에 따르는 글로벌 주파수 구성 명령의 예시이다. 글로벌 주파수 구성 명령은 도 3b에 앞서 도시된 글로벌 명령(110)과 동일한 기본 구성을 따르고, 적어도 3개의 필드를 포함한다. 제1 필드는 FDR op-코드 필드(900)가 뒤따르고 FDR 코드 필드(902)가 뒤따르는 어드레스 헤더(114) 내의 GDA 필드(116)이다. 현재 도시된 실시예에서, FDR op-코드 필드(900)는 로직 및 op-코드 변환기 블록(414) 내의 제어 로직에 명령하기 위한 op-코드를 포함한다. 이것은 FDR 코드 필드(902)에 제공되는 도 7 내지 도 9a의 예의 실시예에 도시된 바와 같은 3비트 코드와 같은 FDR 코드를 래치하는 것을 포함한다. GDA 필드(116)는 도 3b에 먼저 설명된 것과 동일한 목적을 갖는다. 따라서, 각 복합 메모리 장치는 상이한 메모리 클록을 갖도록 구성될 수 있다. 또한, GDA 필드(116)는 시스템 내의 모든 복합 메모리 장치에 의해 인식되는 방송 어드레스를 포함할 수 있으므로, 각 복합 메모리 장치가 동일한 FDR 코드를 갖는 자신의 메모리 클록을 구성하게 된다.
도 19는 복합 메모리 장치에 의해, 더욱 구체적으로는 현재 설명되는 브릿지 장치 실시예에 의해 클록 구성 글로벌 명령이 어떻게 수신되는지를 예시하는 타이밍도이다. 그 타이밍도는 스트로브 신호 SCI에 대한 신호 트레이스 및 입력 포트 D[j]를 도시한다. 타이밍도의 좌측에서 시작하여, CSI가 고 로직 상태로 구동되고 동시에 GDA가 D[j] 입력 포트에 어써트된다. 브릿지 장치가 수신된 GDA와 도 6a의 GDA 레지스터(412)와 같은 그 GDA 레지스터 내에 저장된 어드레스 간의 일치를 판정하였다면, FDR op-코드가 래치된다. 이 예에서, FDR op-코드는 16진수 스트링 FC로 표현된다. FDR 코드에 응답하여, 도 6a의 로직 및 op-코드 변환기 블록(414)과 같은 브릿지 장치의 제어 로직은 도 6a의 주파수 제어기(422)와 같은 클록 제어 회로에 대한 수신된 FDR 코드의 라우팅을 제어한다. FDR 코드가 래치되고 메모리 클록 주파수가 조정된다.
앞서 언급된 바와 같이, 메모리 클록 주파수 및 시스템 클록 주파수는 제조 동안 일어나는 온도나 프로세서 변이와 같은 동작 조건에 응답하여 자동으로 조정될 수 있다. 프로세스 변이는 브릿지 장치가 패키지화되기 전에 잘 알려진 테스팅 기술을 사용하여 판정될 수 있다. 그 후, 패키지는 권고되는 유효 동작 주파수로 라벨 붙여진다. 주변 온도를 감지하기 위해, 메모리 시스템은 시스템의 온도를 모니터하는 센서를 포함할 수 있고, 메모리 제어기는 시스템 클록 주파수 또는 메모리 클록 주파수 중 하나 또는 양자의 증가나 감소를 판정하기 위한 알고리즘을 포함할 수 있다. 반도체 장치의 온도를 모니터하기 위한 온도 센서는 당업계에 잘 알려져 있다. 전력 절감 알고리즘이 배터리 공급원의 전압 레벨의 사용자 설정 또는 자동 감지에 응답하여 시스템 클록 및 메모리 클록 주파수 중 하나 또는 양자를 감소시키도록 채용될 수 있다. 예를 들면, 배터리 전압이 소정의 임계값으로 떨어질 때, 클록 주파수는 감소될 수 있다.
이전의 설명에서, 설명을 위한 목적으로, 본 발명의 실시예의 전체적인 이해를 제공하기 위해 다수의 상세 설명이 제시된다. 그러나, 당업자에게는 이들 특정 상세 설명이 발명을 실시하기 위해 필요하지 않다는 것이 명백하다. 다른 예에서는, 발명을 이해하기 쉽게 하기 위해 잘 알려진 전기 구조체 및 회로가 블록도 형태로 도시되어 있다.
본 명세서에서 하나의 소자가 다른 소자에 "접속" 또는 "결합"되어 있다고 할 때, 그것이 다른 소자에 직접 접속 또는 결합될 수 있거나 개재하는 소자가 존재할 수 있는 것을 이해할 것이다. 대비하여, 본 명세서에서 하나의 소자가 다른 소자에 "직접 접속" 또는 "직접 결합"되어 있다고 할 때, 개재하는 소자는 없다. 소자들 사이의 관계를 설명하기 위해 사용된 다른 단어는 유사한 방식으로 해석되어야 한다(즉, "사이"와 "바로 그 사이", "인접한"과 "바로 인접한", 등).
설명한 실시예의 어떤 각색 및 변형이 이루어질 수 있다. 그에 따라, 상기 논의된 실시예들은 예시적이며 한정하지 않는다고 상정한다.

Claims (28)

  1. 글로벌 명령에 응답하여 이산 메모리 장치를 제어하는 브릿지 장치로서:
    상기 이산 메모리 장치에 로컬 명령을 발행하기 위해 메모리 클록과 동기하여 동작하는 제1 제어 회로 및 제1 로직 회로를 갖는 제1 클록 도메인;
    상기 메모리 클록을 상기 브릿지 장치에 제공되는 시스템 클록의 적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나로서 생성하는 주파수 제어기; 및
    상기 시스템 클록과 동기하여 수신된 상기 글로벌 명령을 상기 메모리 클록과 동기화된 상기 로컬 명령으로 변환하기 위해 상기 시스템 클록과 동기하여 동작하는 제2 제어 회로 및 제2 로직 회로를 갖는 제2 클록 도메인을 포함하는, 브릿지 장치.
  2. 청구항 1에 있어서, 상기 브릿지 장치는, 상기 이산 메모리 장치에 제공될 적어도 하나의 시스템 데이터 입력 포트에 의해 수신되는 기록 데이터를 저장하고, 적어도 하나의 시스템 데이터 출력 포트에 제공될 상기 이산 메모리 장치로부터 수신되는 판독 데이터를 저장하는 메모리를 더 포함하는, 브릿지 장치.
  3. 청구항 2에 있어서, 상기 메모리는, 상기 메모리 클록의 주파수에 대응하는 제1 데이터 레이트에서 상기 이산 메모리 장치에 상기 메모리의 메모리 어레이에 저장되는 상기 기록 데이터를 제공하고, 상기 메모리 어레이에 기록하기 위해 상기 제1 데이터 레이트에서 상기 판독 데이터를 수신하는, 상기 제1 클록 도메인의 제1 제어 회로에 의해 제어되는 제1 메모리 입/출력 경로를 포함하는, 브릿지 장치.
  4. 청구항 3에 있어서, 상기 메모리는, 상기 시스템 클록의 주파수에 대응하는 제2 데이터 레이트에서 상기 메모리 어레이에 상기 기록 데이터를 제공하고, 상기 제2 데이터 레이트에서 상기 메모리 어레이로부터 상기 판독 데이터를 제공하는, 상기 제2 클록 도메인의 제2 제어 회로에 의해 제어되는 제2 메모리 입/출력 경로를 포함하는, 브릿지 장치.
  5. 청구항 4에 있어서, 상기 제2 클록 도메인은 상기 제2 메모리 입/출력 경로에 상기 적어도 하나의 시스템 데이터 입력 포트에서 수신된 상기 기록 데이터를 제공하는 데이터 입력 경로 회로 및 상기 제2 메모리 입/출력 경로로부터 수신된 상기 판독 데이터를 상기 적어도 하나의 시스템 데이터 출력 포트에 제공하는 데이터 출력 경로 회로를 더 포함하고, 상기 데이터 입력 경로 회로 및 상기 데이터 출력 경로 회로는 상기 시스템 클록과 동기하여 동작하는, 브릿지 장치.
  6. 청구항 2에 있어서, 상기 제2 로직 회로 및 상기 제2 제어 회로는 상기 글로벌 명령의 명령들을 상기 시스템 클록과 동기하여 상기 이산 메모리 장치와 호환하는 상기 로컬 명령으로 변환하는 변환 회로를 포함하는, 브릿지 장치.
  7. 청구항 6에 있어서, 상기 제1 로직 회로 및 상기 제1 제어 회로는 상기 로컬 명령을 상기 메모리 클록과 동기하여 상기 이산 메모리 장치에 제공하도록 구성되는, 브릿지 장치.
  8. 청구항 7에 있어서, 상기 제1 로직 회로 및 상기 제1 제어 회로는 상기 로컬 명령이 선택된 이산 메모리 장치에 대한 기록 동작에 대응할 때 상기 메모리 클록과 동기하여 상기 이산 메모리 장치에 출력하기 위해 상기 메모리부터 기록 데이터를 수신하는, 브릿지 장치.
  9. 청구항 1에 있어서, 상기 제2 클록 도메인은,
    상기 시스템 클록의 분할비를 수신된 주파수 분할비 코드에 대응하는 비율로 변경하도록 상기 주파수 제어기를 제어하기 위해 주파수 분할 op-코드를 수신하여 저장하는 동작 코드 레지스터, 및
    상기 주파수 분할비 코드를 수신하여 저장하는 레지스터를 더 포함하는, 브릿지 장치.
  10. 청구항 9에 있어서, 상기 주파수 분할비 코드는 정수 및 정수가 아닌 분할비에 대응하는 다중 비트를 포함하는, 브릿지 장치.
  11. 청구항 1에 있어서, 상기 주파수 제어기는,
    상기 시스템 클록을 상이한 정수 및 정수가 아닌 분할비로 분할하여 중간 클록 신호를 제공하도록 각각 구성된 클록 디바이더, 및
    상기 상이한 정수 및 정수가 아닌 분할비 중 어느 하나에 대응하는 주파수 분할비 코드에 응답하여 상기 중간 클록 신호 중 하나를 상기 메모리 클록으로서 전달하는 셀렉터를 포함하는, 브릿지 장치.
  12. 청구항 11에 있어서, 상기 주파수 제어기는 상기 주파수 분할비 코드에 응답하여 상기 클록 디바이더 중 하나에 상기 시스템 클록을 선택적으로 전달하는 경로 제어 회로를 포함하는, 브릿지 장치.
  13. 청구항 1에 있어서, 상기 주파수 제어기는,
    상기 시스템 클록의 제1 에지 상에 제1 중간 클록 신호 및 상기 시스템 클록의 제2 에지 상에 제2 중간 클록 신호를 제공하는 클록 디바이더로서, 상기 제1 중간 클록 신호 및 제2 중간 클록 신호의 각각은 적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나에 대응하는 비 셀렉터(ratio selector) 신호에 의해 설정된 기간을 갖는, 클록 디바이더, 및
    적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나로 분할된 상기 시스템 클록에 대응하는 주파수를 갖는 메모리 클록을 제공하도록 선택된 제1 중간 클록 신호와 선택된 제2 중간 클록 신호를 논리적으로 결합하는 클록 결합 로직을 포함하는, 브릿지 장치.
  14. 청구항 13에 있어서, 상기 제1 중간 클록 신호의 각각은 이전의 제1 중간 클록 신호가 생성된 후 상기 시스템 클록의 1 사이클에서 생성되고, 상기 제2 중간 클록 신호의 각각은 이전의 제1 중간 클록 신호가 생성된 후 상기 시스템 클록의 1 사이클에서 생성되는, 브릿지 장치.
  15. 청구항 13에 있어서, 상기 클록 디바이더는 초기 제1 중간 클록 신호에 응답하여 상기 제1 중간 클록 신호의 각각을 생성하고, 초기 제2 중간 클록 신호에 응답하여 상기 제2 중간 클록 신호의 각각을 생성하도록 구성된, 브릿지 장치.
  16. 청구항 15에 있어서, 상기 초기 제2 중간 클록 신호는 상기 초기 제1 중간 클록 신호가 생성된 후 적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나에 대응하는 상기 시스템 클록의 소정수의 사이클에서 생성되는, 브릿지 장치.
  17. 청구항 13에 있어서, 상기 주파수 제어기는 적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나를 나타내는 주파수 분할비 코드에 응답하여 비 셀렉터 신호를 생성하는 주파수 분할비 디코더를 포함하는, 브릿지 장치.
  18. 청구항 13에 있어서, 상기 클록 디바이더는,
    상기 시스템 클록의 제1 에지에서 상기 제1 중간 클록 신호를 생성하고, 제1 설정 신호에 응답하여 개시되는 제1 구성 가능 로직 루프 회로, 및
    상기 시스템 클록의 제2 에지에서 상기 제2 중간 클록 신호를 생성하고, 적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나에 의해 미리 정해진 상기 시스템 클록의 다수의 사이클 이후에 수신된 제2 설정 신호에 응답하여 개시되는 제2 구성 가능 로직 루프 회로를 포함하는, 브릿지 장치.
  19. 청구항 18에 있어서, 상기 제1 구성 가능 로직 루프 회로는,
    상기 제1 중간 클록 신호 중 하나를 제공하기 위한 출력을 각각 갖고, 상기 시스템 클록의 제1 에지에 응답하여 상기 제1 중간 클록 신호 중 이전의 것을 래치하기 위한 입력을 각각 가지며, 상기 제1 설정 신호를 수신하도록 구성된 제1 초기화 로직 소자를 포함하는 캐스케이드된(cascaded) 제1 에지 트리거된(triggered) 로직 소자, 및
    상기 비 셀렉터 신호에 응답하여 상기 제1 중간 클록 신호 중 하나만을 제1 로직 소자에 선택적으로 결합함으로써 상기 제1 구성 가능 로직 루프 회로의 크기를 변경하는 루프 조정 회로를 포함하는, 브릿지 장치.
  20. 청구항 19에 있어서, 상기 제2 구성 가능 로직 루프 회로는,
    상기 제2 중간 클록 신호 중 하나를 제공하기 위한 출력을 각각 갖고, 상기 시스템 클록의 제2 에지에 응답하여 상기 제2 중간 클록 신호 중 이전의 것을 래치하기 위한 입력을 각각 가지며, 상기 제2 설정 신호를 수신하도록 구성된 제2 초기화 로직 소자를 포함하는 캐스케이드된 제2 에지 트리거된 로직 소자, 및
    상기 비 셀렉터 신호에 응답하여 상기 제2 중간 클록 신호 중 하나만을 제2 로직 소자에 선택적으로 결합함으로써 상기 제2 구성 가능 로직 루프 회로의 크기를 변경하는 루프 조정 회로를 포함하는, 브릿지 장치.
  21. 청구항 13에 있어서, 상기 클록 결합 로직은,
    상기 비 셀렉터 신호에 응답하여 제어 신호를 제공하는 로직 구성 회로, 및
    선택된 제1 중간 클록 신호와 선택된 제2 중간 클록 신호의 소정의 조합이 적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나에 의해 분할되는 상기 시스템 클록에 대응하는 주파수를 갖는 메모리 클록을 생성하는데 사용될 수 있게 하는 상기 제어 신호에 의해 구성 가능한 클록 생성 회로를 포함하는, 브릿지 장치.
  22. 청구항 18에 있어서, 상기 주파수 제어기는 리셋 조건에 응답하여 상기 제1 설정 신호 및 제2 설정 신호를 제공하는 클록 초기화 회로를 포함하는, 브릿지 장치.
  23. 청구항 22에 있어서, 상기 클록 초기화 회로는,
    적어도 하나의 수신된 신호의 전이에 응답하여 적어도 하나의 검출 신호를 제공하는 적어도 하나의 신호 검출기,
    상기 적어도 하나의 검출 신호에 응답하여 상기 제1 구성 가능 로직 루프 회로 및 제2 구성 가능 로직 루프 회로를 리셋하는 리셋 회로, 및
    상기 적어도 하나의 검출 신호에 응답하여 제1 설정 신호 및 제2 설정 신호를 제공하는 시동 동기화기를 포함하며, 상기 제2 설정 신호는 적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나에 의해 미리 정해진 상기 시스템 클록의 다수의 사이클 이후에 제공되는, 브릿지 장치.
  24. 청구항 23에 있어서, 상기 적어도 하나의 신호 검출기는,
    칩 인에이블 신호의 전이가 검출될 때 제1 검출 신호를 제공하는 칩 인에이블 신호 검출기, 및
    적어도 2개의 동적으로 선택 가능한 클록 분할비 중 하나에 대응하는 주파수 분할비 코드의 변화가 검출될 때 제2 검출 신호를 제공하는 분할비 검출기를 포함하며, 상기 적어도 하나의 검출 신호는 상기 제1 검출 신호 및 상기 제2 검출 신호를 포함하는, 브릿지 장치.
  25. 청구항 23에 있어서, 상기 리셋 회로는 전원 전압이 소정의 임계 레벨에 도달할 때 제3 검출 신호를 제공하는 파워 업 리셋 회로를 포함하는, 브릿지 장치.
  26. 청구항 25에 있어서, 상기 리셋 회로는 상기 제1 검출 신호, 제2 검출 신호 및 제3 검출 신호 중 적어도 하나에 응답하여 상기 제1 구성 가능 로직 루프 회로를 리셋하기 위한 제1 리셋 신호 및 상기 제1 구성 가능 로직 루프 회로를 리셋하기 위한 제2 리셋 신호를 생성하는, 브릿지 장치.
  27. 청구항 26에 있어서, 상기 리셋 회로는 상기 제1 검출 신호, 제2 검출 신호 및 제3 검출 신호 중 적어도 하나를 수신한 후에 시스템 클록의 제1 에지 중 하나에서 상기 제1 리셋 신호를 생성하고, 상기 제1 에지 중 하나의 직후의 상기 시스템 클록의 제2 에지 중 하나에서 상기 제2 리셋 신호를 생성하는, 브릿지 장치.
  28. 청구항 23에 있어서, 상기 시동 동기화기는,
    상기 시스템 클록의 제2 에지 중 하나에서 상기 적어도 하나의 검출 신호에 응답하여 상기 제1 설정 신호를 생성하는 초기화 로직 소자,
    상기 제2 에지 중 하나 이후의 상기 시스템 클록의 후속 제2 에지에서 상기 제1 설정 신호에 응답하여 설정 구성 신호를 생성하는 캐스케이드된 로직 소자, 및
    상기 시스템 클록의 제1 에지 중 하나에서 상기 비 셀렉터 신호에 응답하여 제2 설정 신호를 생성하는 위상 조정 회로를 포함하는, 브릿지 장치.
KR20117031159A 2009-06-29 2010-06-25 주파수 구성 가능 클록 도메인을 갖는 브릿징 장치 KR20120111951A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US22130909P 2009-06-29 2009-06-29
US61/221,309 2009-06-29

Publications (1)

Publication Number Publication Date
KR20120111951A true KR20120111951A (ko) 2012-10-11

Family

ID=43379997

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20117031159A KR20120111951A (ko) 2009-06-29 2010-06-25 주파수 구성 가능 클록 도메인을 갖는 브릿징 장치

Country Status (5)

Country Link
US (2) US8504789B2 (ko)
JP (1) JP5709855B2 (ko)
KR (1) KR20120111951A (ko)
DE (1) DE112010002750T5 (ko)
WO (1) WO2011000082A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160035528A (ko) * 2014-09-22 2016-03-31 주식회사 아이에이 디지털 로직을 이용한 분산 클록 생성 장치 및 방법

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120076793A (ko) * 2010-12-30 2012-07-10 에스케이하이닉스 주식회사 집적회로, 메모리 시스템 및 이의 동작방법
US8848731B2 (en) 2011-01-31 2014-09-30 Qualcomm Incorporated System and method for facilitating data transfer using a shared non-deterministic bus
US9195530B1 (en) 2011-09-06 2015-11-24 Western Digital Technologies, Inc. Systems and methods for improved data management in data storage systems
US8713357B1 (en) 2011-09-06 2014-04-29 Western Digital Technologies, Inc. Systems and methods for detailed error reporting in data storage systems
US8700834B2 (en) * 2011-09-06 2014-04-15 Western Digital Technologies, Inc. Systems and methods for an enhanced controller architecture in data storage systems
US8707104B1 (en) 2011-09-06 2014-04-22 Western Digital Technologies, Inc. Systems and methods for error injection in data storage systems
KR20130042373A (ko) * 2011-10-18 2013-04-26 삼성전자주식회사 반도체 메모리의 전압 조절 장치
CN102385556B (zh) * 2011-11-08 2014-11-26 聚辰半导体(上海)有限公司 串行非易失性存储器及解除存储器写保护的方法
US9053008B1 (en) 2012-03-26 2015-06-09 Western Digital Technologies, Inc. Systems and methods for providing inline parameter service in data storage devices
TWI467379B (zh) * 2012-04-23 2015-01-01 Phison Electronics Corp 系統運作方法、記憶體控制器與記憶體儲存裝置
US20140122775A1 (en) * 2012-10-31 2014-05-01 Freescale Semiconductor, Inc. Memory controller for memory device
US9032177B2 (en) 2012-12-04 2015-05-12 HGST Netherlands B.V. Host read command return reordering based on time estimation of flash read command completion
US8954655B2 (en) * 2013-01-14 2015-02-10 Western Digital Technologies, Inc. Systems and methods of configuring a mode of operation in a solid-state memory
US9542986B2 (en) * 2015-05-21 2017-01-10 Arm Limited Low power input gating
US20170236566A1 (en) * 2016-02-17 2017-08-17 Intel Corporation Data transfer for multi-loaded source synchrous signal groups
IT201600073087A1 (it) * 2016-07-13 2018-01-13 St Microelectronics Srl Circuito di ricezione, relativo circuito integrato e dispositivo
CN108573729B (zh) * 2017-03-08 2021-01-08 北京兆易创新科技股份有限公司 一种nand-flash存储器写操作方法及装置
US10642759B2 (en) * 2017-04-12 2020-05-05 Eta Compute, Inc. Interface from null convention logic to synchronous memory
JP7031349B2 (ja) * 2018-02-15 2022-03-08 日本電気株式会社 ノード
TWI658700B (zh) * 2018-07-16 2019-05-01 創意電子股份有限公司 積體電路、多通道傳輸裝置及其信號傳輸方法
CN109830252B (zh) * 2018-12-29 2024-03-22 灿芯半导体(上海)股份有限公司 实现时钟周期的数字电路及实现四分之一时钟周期的方法
US10892775B1 (en) * 2019-12-03 2021-01-12 Samsung Electronics Co., Ltd Transmitting system, apparatus and method for unifying parallel interfaces
CN111510483B (zh) * 2020-04-09 2022-10-18 眸芯科技(上海)有限公司 芯片测试中不同网络域之间的配置同步系统、方法及装置
EP4002081A4 (en) * 2020-06-05 2022-10-19 Changxin Memory Technologies, Inc. READ-WRITE CONVERSION CIRCUIT AND MEMORY
JP2022049453A (ja) 2020-09-16 2022-03-29 キオクシア株式会社 送受信装置、ブリッジチップ、半導体記憶装置、および方法
KR20220059981A (ko) 2020-11-02 2022-05-11 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
EP3992803A3 (en) * 2020-11-02 2022-05-11 Samsung Electronics Co., Ltd. Storage device and operating method of storage device

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6564286B2 (en) * 2001-03-07 2003-05-13 Sony Corporation Non-volatile memory system for instant-on
US7107476B2 (en) * 2001-11-21 2006-09-12 Hynix Semiconductor Inc. Memory system using non-distributed command/address clock signals
WO2004003758A1 (ja) * 2002-07-01 2004-01-08 Hitachi, Ltd. 方向性結合式バスシステム
JP4159415B2 (ja) * 2002-08-23 2008-10-01 エルピーダメモリ株式会社 メモリモジュール及びメモリシステム
US7870346B2 (en) * 2003-03-10 2011-01-11 Marvell International Ltd. Servo controller interface module for embedded disk controllers
JP2004362215A (ja) 2003-06-04 2004-12-24 Toshiba Corp プロセッサ及び半導体集積回路
WO2007036050A1 (en) 2005-09-30 2007-04-05 Mosaid Technologies Incorporated Memory with output control
US20070076502A1 (en) 2005-09-30 2007-04-05 Pyeon Hong B Daisy chain cascading devices
JP5065618B2 (ja) * 2006-05-16 2012-11-07 株式会社日立製作所 メモリモジュール
US7853727B2 (en) 2006-12-06 2010-12-14 Mosaid Technologies Incorporated Apparatus and method for producing identifiers regardless of mixed device type in a serial interconnection
CN101617371B (zh) 2007-02-16 2014-03-26 莫塞德技术公司 具有多个外部电源的非易失性半导体存储器
US20080201588A1 (en) 2007-02-16 2008-08-21 Mosaid Technologies Incorporated Semiconductor device and method for reducing power consumption in a system having interconnected devices
US20100005214A1 (en) * 2008-07-01 2010-01-07 International Business Machines Corporation Enhancing bus efficiency in a memory system
US7872936B2 (en) * 2008-09-17 2011-01-18 Qimonda Ag System and method for packaged memory
US8134852B2 (en) 2008-10-14 2012-03-13 Mosaid Technologies Incorporated Bridge device architecture for connecting discrete memory devices to a system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160035528A (ko) * 2014-09-22 2016-03-31 주식회사 아이에이 디지털 로직을 이용한 분산 클록 생성 장치 및 방법

Also Published As

Publication number Publication date
WO2011000082A1 (en) 2011-01-06
US20100327923A1 (en) 2010-12-30
DE112010002750T5 (de) 2013-01-31
JP2012531635A (ja) 2012-12-10
US20130318287A1 (en) 2013-11-28
US8504789B2 (en) 2013-08-06
JP5709855B2 (ja) 2015-04-30

Similar Documents

Publication Publication Date Title
KR20120111951A (ko) 주파수 구성 가능 클록 도메인을 갖는 브릿징 장치
US11880569B2 (en) Clock mode determination in a memory system
KR101492383B1 (ko) 1 이상의 메모리 디바이스를 가진 시스템
KR20140142373A (ko) 이산 메모리 장치를 시스템에 연결하는 브리징 장치를 갖는 복합 메모리
KR20150007292A (ko) 설정 가능한 가상 페이지 크기를 갖는 브리징 장치

Legal Events

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