KR20090127956A - 반도체 장치 - Google Patents

반도체 장치 Download PDF

Info

Publication number
KR20090127956A
KR20090127956A KR1020097023975A KR20097023975A KR20090127956A KR 20090127956 A KR20090127956 A KR 20090127956A KR 1020097023975 A KR1020097023975 A KR 1020097023975A KR 20097023975 A KR20097023975 A KR 20097023975A KR 20090127956 A KR20090127956 A KR 20090127956A
Authority
KR
South Korea
Prior art keywords
request
response
memory
memory chip
chip
Prior art date
Application number
KR1020097023975A
Other languages
English (en)
Other versions
KR101101729B1 (ko
Inventor
세이지 미우라
요시노리 하라구치
가즈히코 아베
쇼지 가네코
Original Assignee
엘피다 메모리 가부시키가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘피다 메모리 가부시키가이샤 filed Critical 엘피다 메모리 가부시키가이샤
Publication of KR20090127956A publication Critical patent/KR20090127956A/ko
Application granted granted Critical
Publication of KR101101729B1 publication Critical patent/KR101101729B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • 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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C14/00Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/30Power supply circuits

Abstract

본 발명은, 고속이며 저비용으로, 메모리 용량의 확장성을 확보할 수 있는 사용하기 편리한 정보 처리 시스템을 제공하는 것을 목적으로 한다. 정보 처리 장치, 휘발성 메모리 및 불휘발성 메모리를 포함하는 정보 처리 시스템을 구성한다. 정보 처리 장치, 휘발성 메모리 및 불휘발성 메모리는 직렬 접속시키고, 접속 신호수를 적게 함으로써, 메모리 용량의 확장성을 유지하면서 고속화를 도모한다. 불휘발성 메모리의 데이터를 휘발성 메모리에 전송시킬 때에는, 에러를 정정하여 신뢰성의 향상을 도모한다. 이들 복수의 칩으로 이루어지는 정보 처리 시스템을, 각 칩이 서로 적층되어 배치되고, 볼 그리드 어레이 (BGA) 나 칩 사이의 본딩에 의해 배선된 정보 처리 시스템·모듈로서 구성한다.
반도체 장치, 불휘발성 메모리, 정보 처리 시스템, 플레시 메모리

Description

반도체 장치{SEMICONDUCTOR DEVICE}
기술분야
본 발명은, 반도체 장치의 기술에 관한 것으로, 특히 불휘발성 메모리와 정보 처리 장치를 포함하는 정보 처리 시스템 및 메모리 모듈의 제어 방법에 적용하는 데에 유효한 기술에 관한 것이다.
배경기술
종래, 플래시 메모리 (32M bit 용량) 와 스태틱 랜덤 액세스 메모리 (SRAM (4 Mbit 용량)) 가 스택 칩으로 FBGA (Fine pitch Ball Grid Array) 형 패키지에 일체 밀봉된 복합형 반도체 메모리가 있다. 플래시 메모리와 SRAM 은, FBGA 형 패키지의 입출력 전극에 대해 어드레스 입력 단자와 데이터 입출력 단자가 공통화되어 있다. 단 각각의 제어 단자는 각각 독립적으로 되어 있다 (예를 들어, 비특허 문헌 1 참조).
또, 플래시 메모리 (1 Gbit 용량) 와 다이내믹 랜덤 액세스 메모리 (DRAM (512 Mbit 용량)) 가 스택 칩으로 FBGA (Fine pitch Ball Grid Array) 형 패키지에 일체 밀봉된 복합형 반도체 메모리가 있다. 플래시 메모리와 다이내믹 랜덤 액세스 메모리는, FBGA 형 패키지의 입출력 전극에 대해 어드레스 입력 단자와 데이터 입출력 단자, 및 각각의 제어 단자는 각각 독립적으로 되어 있다 (예를 들어, 비특허 문헌 2 참조).
또, 플래시 메모리 칩과 DRAM 칩이 리드 프레임형 패키지에 일체 밀봉된 복합형 반도체 메모리도 있다. 이 복합형 반도체 메모리에는 플래시 메모리와 DRAM 은 패키지의 입출력 전극에 대해 어드레스 입력 단자, 데이터 입출력 단자, 및 제어 단자가 공통화되어 입출력된다 (예를 들어, 특허 문헌 1 의 도 1 및 도 15, 특허 문헌 2 참조).
또한, 주기억 장치로서 취급되는 플래시 메모리와 캐시 메모리와 컨트롤러와 CPU 로 구성되는 시스템도 있다 (예를 들어, 특허 문헌 3 의 도 1 참조).
또, 플래시 메모리와 DRAM 과 전송 제어 회로로 이루어지는 반도체 메모리도 있다 (예를 들어, 특허 문헌 4 의 도 2, 특허 문헌 5 참조).
또한, 동일 종류의 메모리를 복수 개 접속한 메모리 모듈이 있다 (특허 문헌 6, 특허 문헌 7 참조).
비특허 문헌 1 : "복합 메모리 (스택드 CSP) 플래시 메모리 + RAM 데이터 시트", 형명 LRS1380, [online], 2001 년 12 월 10 일, 샤프 주식회사, [2002 년 8 월 21 일 검색], 인터넷 <URL:http://www.sharp.co.jp/products/device/flash/ cmlist.html>
비특허 문헌 2 : "MCP 데이터 시트", 형명 KBE00F005A-D411, [online], 2005 년 6 월, 삼성 전자 주식회사, [2006 년 4 월 10 일 검색], <URL:1177550776718_0.aspx?family_cd=MCP0>
특허 문헌 1 : 일본 공개특허공보 평05-299616호
특허 문헌 2 : 유럽 특허 출원 공개 제0566306호 명세서
특허 문헌 3 : 일본 공개특허공보 평07-146820호
특허 문헌 4 : 일본 공개특허공보 2001-5723호
특허 문헌 5 : 일본 공개특허공보 2002-366429호
특허 문헌 6 : 일본 공개특허공보 2002-7308호
특허 문헌 7 : 일본 공개특허공보 2004-192616호
발명의 개시
발명이 해결하고자 하는 과제
본원 발명자들은, 본원에 앞서 휴대 전화 및 그것에 사용되는 프로세서와, 플래시 메모리와, 랜덤 액세스 메모리로 구성된 정보 처리 시스템에 대해 검토하였다.
도 50 에 나타낸 바와 같이 휴대 전화에는 정보 처리 장치 (PRC) 와 메모리 모듈 (MCM1 및 MCM2) 이 사용되고 있다. 정보 처리 장치 (PRC) 는 중앙 연산 장치 (CPU) 와 SRAM 컨트롤러 (SRC), DRAM 컨트롤러 (DRC) 및 NAND 형 플래시 메모리 컨트롤러 (NDC) 로 구성된다. 메모리 모듈 (MCM1) 은 NOR 형 플래시 메모리 (NOR FLASH) 와 SRAM 으로 구성된다. 메모리 모듈 (MCM2) 은 NAND 형 플래시 메모리 (NAND FLASH) 와 DRAM 으로 구성된다. 정보 처리 장치 (PRC) 는 메모리 모듈 (MCM1 및 MCM2) 에 액세스를 실시하여 데이터의 판독 및 기입을 실시한다.
전원 투입 후, 정보 처리 장치 (PRC) 는, NOR 형 플래시 메모리 (NOR FLASH) 에 저장되어 있는 부트 데이터를 판독하여 스스로를 가동시킨다. 그 후, 정보 처리 장치 (PRC) 는 NOR 형 플래시 메모리 (NOR FLASH) 로부터 필요에 따라 어플리 케이션 프로그램을 판독하여, 중앙 연산 장치 (CPU) 에서 실행한다. SRAM 및 DRAM 은 워크 메모리로서 기능하고, 중앙 연산 장치 (CPU) 에서의 연산 결과 등이 보존된다.
NAND 형 플래시 메모리 (NAND FLASH) 에는 주로 음악 데이터나 동영상 데이터가 저장되어 있고, 정보 처리 장치 (PRC) 는 필요에 따라 NAND 형 플래시 메모리 (NAND FLASH) 로부터 음악 데이터나 동영상 데이터를 DRAM 에 판독하여, 음악이나 동영상의 재생을 실시한다. 최근, 휴대 전화기로 대표되는 모바일 기기의 다기능화가 점점 진전되고 있어, 다양한 인터페이스를 취급할 필요가 생겼다.
도 50 에 나타낸 바와 같이, 현재 CPU 는, 상이한 메모리 디바이스마다 컨트롤러를 가지며, 병렬적으로 메모리와 접속되어 있다. 또한, 휴대 전화가 취급하는 어플리케이션, 데이터, 워크 에어리어는 휴대 전화에 부가되는 기능 (음악이나 게임 등 배신 등) 이 증가됨에 따라 커켜, 보다 큰 기억 용량의 메모리가 필요하게 되었다.
이 때문에, CPU 와 메모리를 접속하는 신호 배선수가 증대되고, 기판 비용의 증가, 노이즈의 증가, 신호 스큐의 증가를 초래하여, 휴대 전화기의 저비용화, 고속화, 소형화에는 대응할 수 없는 것으로 판명되었다.
그래서 본 발명의 목적 중 하나는, 정보 처리 장치와 메모리 사이 및 메모리와 메모리 사이의 신호 배선수를 저하시키고, 고속이며 저비용으로, 메모리 용량의 확장성을 확보할 수 있는 사용하기 편리한 정보 처리 시스템을 제공하는 것이다.
과제를 해결하기 위한 수단
본 발명의 대표적인 수단을 나타내면 이하와 같다. 정보 처리 장치와, 다이내믹 랜덤 액세스 메모리와, NOR 형 플래시 메모리와, NAND 형 플래시 메모리를 직렬로 접속하고, 하나의 밀봉체에 실장하고, 밀봉체에 반도체 칩과의 배선을 실시하기 위한 전극과, 밀봉체와 밀봉체 외부의 접속을 실시하기 위한 전극을 형성한다.
정보 처리 장치로부터 각 메모리의 다이내믹 랜덤 액세스 메모리, NOR 형 플래시 메모리, NAND 형 플래시 메모리에 대한 판독 요구에 요구처의 인식 정보를 포함하고, 또한 데이터의 판독에는 전송처의 인식 정보를 포함하면 된다.
정보 처리 장치로부터 각 메모리의 다이내믹 랜덤 액세스 메모리, NOR 형 플래시 메모리, NAND 형 플래시 메모리에 대한 판독 요구에 요구 번호의 정보를 포함하고, 또한 데이터의 판독에는 응답 번호의 정보를 포함하면 된다.
정보 처리 장치로부터 각 메모리의 다이내믹 랜덤 액세스 메모리, NOR 형 플래시 메모리, NAND 형 플래시 메모리에 대한 판독 요구에 대응하는 요구 번호의 정보를 각 메모리가 생성하면 된다.
각 메모리의 다이내믹 랜덤 액세스 메모리, NOR 형 플래시 메모리, NAND 형 플래시 메모리로부터의 데이터 판독에는, 미리 판독 데이터의 레이턴시 정보를 출력하면 된다.
정보 처리 장치로부터, 각 메모리의 다이내믹 랜덤 액세스 메모리, NOR 형 플래시 메모리, NAND 형 플래시 메모리가 갖는 리퀘스트 큐 및 리스폰스 큐의 예약 요구를 실시하면 된다.
정보 처리 장치에 대한 각 메모리 사이의 데이터 판독 순서는, 판독 횟수에 따라 동적으로 결정되는 것이 좋다. 또한, 판독 횟수는 프로그램할 수 있는 것이 좋다.
전원 투입 후에는, 정보 처리 장치가, 직렬로 접속되어 있는 각각의 메모리에 식별 정보를 결정하는 제어를 실시하면 된다.
메모리에 입력된 판독 요구의 시간 순서에는 관계 없이, 느린 판독 데이터를 기다리지 않고, 빠른 판독 데이터를 송신할 수 있는 제어로 하면 된다.
각 메모리의 판독 요구를 접수하는 회로와, 판독한 데이터를 송신하는 회로의 동작은 독립적으로 실시할 수 있는 제어로 하면 된다.
기입 동작과 판독 동작을 독립적으로 실시할 수 있는 제어로 하면 된다.
각 메모리의 클록 주파수는 필요에 따라 변경할 수 있는 제어로 하면 된다.
상기 정보 처리 장치는 NAND 형 플래시 메모리로부터 데이터를 판독할 때에는 에러 검출과 정정을 실시하고, 기입할 때에는 기입이 정확하게 실시되지 않은 불량 어드레스에 대해 대체 처리를 실시하면 된다.
발명의 효과
본 발명에 의하면, 고속이며 저비용으로, 메모리 용량의 확장성을 확보할 수 있는 사용하기 편리한 정보 처리 시스템을 실현할 수 있다.
발명을 실시하기 위한 최선의 형태
이하, 본 발명의 실시형태에 대해 첨부 도면을 참조하면서 상세하게 설명한다. 실시형태에 있어서 각 블록을 구성하는 회로 소자는 특별히 제한되지 않지 만, 공지된 CMOS (상보형 MOS 트랜지스터) 등의 집적 회로 기술에 의해, 단결정 실리콘과 같은 1 개의 반도체 기판 상에 형성된다.
(제 1 실시형태)
도 1 은 본 발명을 적용한 제 1 실시형태인 정보 처리 장치 (CPU_CHIP) 와 메모리 모듈 (MEM) 로 구성되는 정보 처리 시스템을 나타낸 것이다. 이하에 각각에 대해 설명한다.
정보 처리 장치 (CPU_CHIP) 는, 정보 처리 회로 (CPU0, CPU1, CPU2, CPU3) 와 메모리 제어 회로 (CON) 로 구성되어 있다. 메모리 제어 회로 (CON) 는, 리퀘스트 큐 (RqQ), 리스폰스 큐 (RsQ), 부트 디바이스 ID 레지스터 (BotID), 최단 (最端) 디바이스 ID 레지스터 (EndID), 리퀘스트 번호 생성 회로 (RqN), 리퀘스트 번호 생성 레지스터 (RqNR) 를 포함한다. CPU0, CPU1, CPU2, CPU3 에서는, 메모리 제어 회로 (CON) 를 통해서, 메모리 모듈 (MEM) 로부터 OS 나 어플리케이션 프로그램 및 어플리케이션 프로그램으로 처리를 실시하는 데이터를 판독하여 실행한다.
리퀘스트 큐 (RqQ) 는, 메모리 모듈 (MEM) 에 출력하기 위한 CPU0, CPU1, CPU2 및 CPU3 에서 실행하고 있는 어플리케이션 프로그램의 결과 등을 저장한다. 리스폰스 큐 (RsQ) 는, CPU0, CPU1, CPU2 및 CPU3 에 출력하기 위한 메모리 모듈 (MEM) 로부터 판독한 어플리케이션 프로그램 등을 저장한다.
메모리 모듈 (MEM) 은, 메모리 칩 (M0, M1, M2) 으로 구성된다. 또, 정보 처리 장치 (CPU_CHIP) 와 메모리 칩 (M0, M1, M2) 은 직렬로 접속되어 있다. 메모리 칩 (M0) 은 휘발성 메모리이고, 메모리 칩 (M1 및 M2) 은 불휘발성 메모리이다. 대표적인 휘발성 메모리에는, 메모리 어레이에 다이내믹 랜덤 액세스 메모리 셀을 사용한 DRAM 및 의사 스태틱 랜덤 액세스 메모리 (PSRAM), 스태틱 랜덤 액세스 메모리 셀을 사용한 SRAM 등이 있고, 본 발명에는 모든 휘발성 메모리 셀을 이용할 수 있다. 본 실시형태에서는 메모리 어레이에 다이내믹 랜덤 액세스 메모리 셀을 사용한 예를 설명한다.
불휘발성 메모리에는 ROM (리드 온리 메모리), EEPROM (일렉트리컬리 이레이저블 앤드 프로그래머블 ROM), 플래시 메모리, 상변화 메모리, 마그네틱·랜덤 액세스 메모리 (MRAM), 저항 스위칭형 랜덤 액세스 메모리 (ReRAM) 등을 사용할 수 있다. 본 실시형태에서는 플래시 메모리를 예로 설명한다.
또, 대표적인 플래시 메모리에는, NOR 형 플래시 메모리와, AND 형 플래시 메모리와, NAND 형 플래시 메모리와, ORNAND 형 플래시 메모리가 있고, 본 발명에는 모든 플래시 메모리를 이용할 수 있다. 본 발명에는 모든 플래시 메모리를 이용할 수 있다. 본 실시형태에서는, NOR 형 플래시 메모리와 NAND 형 플래시 메모리를 예로 설명한다.
특별히 한정되지 않지만, 메모리 칩 (M0) 으로서 사용되는 전형적인 휘발성 메모리는, 다이내믹 메모리 셀을 이용한 다이내믹 랜덤 액세스 메모리이며, 판독 시간이 15 ㎱ 정도이고, 약 1 Gbit 의 기억 용량을 갖고 있다. 특별히 한정되지 않지만 메모리 칩 (M0) 은 정보 처리 장치 (CPU_CHIP) 에서 어플리케이션 프로그램을 실행하기 위한 일시적인 워크 메모리로서 이용된다.
특별히 한정되지 않지만, 메모리 칩 (M1) 으로서 사용되는 전형적인 플래시 메모리는, NOR 형 플래시 메모리 셀을 이용하며, 판독 시간이 80 ㎱ 정도이고, 약 1 Gbit 의 큰 기억 용량을 갖고 있다. 특별히 한정되지 않지만, 메모리 칩 (M1) 에는 정보 처리 장치 (CPU_CHIP) 에서 실행되는 OS, 부트 코드, 부트 디바이스 ID 값, 최단 디바이스 ID 값 및 어플리케이션 프로그램 등이 저장된다.
특별히 한정되지 않지만, 메모리 칩 (M2) 으로서 사용되는 전형적인 플래시 메모리는 NAND 형 플래시 메모리 셀을 이용하며, 판독 시간이 25 ㎲ 정도이고, 약 4 Gbit 의 기억 용량을 갖고 있다. 특별히 한정되지 않지만, 메모리 칩 (M2) 에는 주로 정보 처리 장치 (CPU_CHIP) 에서 재생, 녹음 및 녹화 처리를 실시하기 위해 필요한 음성 데이터, 정지 화상 데이터나 동영상 데이터 등이 저장된다.
메모리 칩 (M0) 은, 초기 설정 회로 (INIT), 리퀘스트 인터페이스 회로 (ReqIF) 와, 리스폰스 인터페이스 회로 (ResIF) 와, 메모리 회로 (MemVL) 로 구성되어 있다. 리퀘스트 인터페이스 회로 (ReqIF) 는, 리퀘스트 클록 제어 회로 (RqCkC) 및 리퀘스트 큐 제어 회로 (RqCT) 로 구성된다. 리스폰스 인터페이스 회로 (ResIF) 는, 리스폰스 클록 제어 회로 (RsCkC) 및 리스폰스 큐 제어 회로 (RqCT) 로 구성된다. 메모리 회로 (MemVL) 는, 특별히 한정되지 않지만, 휘발성 메모리이며, 다이내믹 랜덤 액세스 메모리 셀을 이용한 다이내믹 랜덤 액세스 메모리이다. 리퀘스트 클록 제어 회로 (RqCkC) 는, 클록 드라이버 회로 (Drv1) 및 클록 분주 회로 (Div1) 로 구성된다. 메모리 칩 (M1) 은, 초기 설정 회로 (INIT), 리퀘스트 인터페이스 회로 (ReqIF) 와, 리스폰스 인터페이스 회로 (ResIF) 와, 메모리 회로 (MemNV1) 로 구성되어 있다.
리퀘스트 인터페이스 회로 (ReqIF) 는, 리퀘스트 클록 제어 회로 (RqCkC) 및 리퀘스트 큐 제어 회로 (RqCT) 로 구성된다.
리스폰스 인터페이스 회로 (ResIF) 는, 리스폰스 클록 제어 회로 (RsCkC) 및 리스폰스 큐 제어 회로 (RqCT) 로 구성된다.
특별히 한정되지 않지만, 각 메모리 칩의 리퀘스트 큐 제어 회로 (RqCT) 에는, 주로 복수의 리퀘스트를 저장할 수 있는 리퀘스트 큐 (ReqQ), ID 레지스터 (IDR), 레이턴시값 출력 설정 레지스터 (LRG), 리스폰스 순서 설정 레지스터 (RRG), 리퀘스트 번호 설정 회로 (RNB) 등이 장비되고, 리스폰스 큐 제어 회로 (RqCT) 에는, 주로 복수의 리스폰스를 저장할 수 있는 리스폰스 큐 (ResQ), 레이턴시 계산 회로 (LA) 및 리스폰스 번호 테이블 (TB) 등이 장비되어 있다.
메모리 칩 (M1) 은, 초기 설정 회로 (INIT1), 리퀘스트 인터페이스 회로 (ReqIF) 와, 리스폰스 인터페이스 회로 (ResIF) 와, 메모리 회로 (MemNV1) 로 구성되어 있다.
리퀘스트 인터페이스 회로 (ReqIF) 는, 리퀘스트 클록 제어 회로 (RqCkC) 및 리퀘스트 큐 제어 회로 (RqCT) 로 구성된다. 리스폰스 인터페이스 회로 (ResIF) 는, 리스폰스 클록 제어 회로 (RsCkC) 및 리스폰스 큐 제어 회로 (RqCT) 로 구성된다. 메모리 회로 (MemNV1) 는, 특별히 한정되지 않지만, 불휘발성 메모리이며, NOR 형 플래시 메모리 셀을 이용한 NOR 형 플래시 메모리이다. 리퀘스트 클록 제어 회로 (RqCkC) 는, 클록 드라이버 회로 (Drv1) 및 클록 분주 회로 (Div1) 로 구성된다.
리퀘스트 인터페이스 회로 (ReqIF) 및 리스폰스 인터페이스 회로 (ResIF) 의 구성은 메모리 칩 (M0) 과 동일하다.
메모리 칩 (M2) 은, 초기 설정 회로 (INIT), 리퀘스트 인터페이스 회로 (ReqIF) 와, 리스폰스 인터페이스 회로 (ResIF) 와, 메모리 회로 (MemNV2) 로 구성되어 있다. 메모리 칩 (M2) 은, 직렬적으로 접속되어 있는 메모리 칩 중에서, 가장 종단의 메모리 칩인 것을 나타내므로, 특별히 한정되지 않지만 RqEn3, RsMux3, RqCk3 을 접지 (gnd) 하고 있다.
리퀘스트 인터페이스 회로 (ReqIF) 는, 리퀘스트 클록 제어 회로 (RqCkC) 및 리퀘스트 큐 제어 회로 (RqCT) 로 구성된다. 리스폰스 인터페이스 회로 (ResIF) 는, 리스폰스 클록 제어 회로 (RsCkC) 및 리스폰스 큐 제어 회로 (RqCT) 로 구성된다. 메모리 회로 (MemNV2) 는, 특별히 한정되지 않지만, 불휘발성 메모리이며, NAND 형 플래시 메모리 셀을 이용한 NAND 형 플래시 메모리이다. 리퀘스트 클록 제어 회로 (RqCkC) 는, 클록 드라이버 회로 (Drv1) 및 클록 분주 회로 (Div1) 로 구성된다.
리퀘스트 인터페이스 회로 (ReqIF) 및 리스폰스 인터페이스 회로 (ResIF) 의 구성은, 메모리 칩 (M0) 과 동일하다.
메모리 칩 (M0, M1 및 M2) 의 초기 설정 회로 (INIT) 는 전원 투입 직후에, 각각의 메모리 칩에 대해 초기 설정을 실시한다. 메모리 칩 (M0, M1 및 M2) 의 리퀘스트 큐 제어 회로 (RqCT) 에는, 각각의 메모리 칩의 ID 번호를 저장하는 ID 레지스터가 형성되어 있다. 전원 투입 직후에 먼저, 초기 설정 회로 (INIT) 에 의해 초기 설정되고, 다음으로, 정보 처리 장치 (CPU_CHIP) 에 의해 메모리 칩 (M0, M1, M2) 의 ID 번호가 결정되고, 각각의 메모리 칩 내의 ID 레지스터에 ID 번호가 저장된다.
메모리 칩 (M0, M1 및 M2) 은, 특별히 한정되지 않지만, 각각 부트 디바이스 인식 신호 (Bsig) 를 갖고 있고, 이 부트 디바이스 인식 신호 (Bsig) 가 접지 (gnd) 되어 있는 경우에는, 그 메모리 칩이 전원 투입 직후의 동작을 실시하기 위한 부트 프로그램을 저장하고 있는 부트 디바이스인 것을 나타낸다. 부트 디바이스 인식 신호 (Bsig) 가 전원 (vdd) 에 접속되어 있는 경우에는, 그 메모리 칩이 부트 디바이스가 아닌 것을 나타낸다. 특별히 한정되지 않지만, 메모리 칩 (M1) 이 부트 디바이스이고, 메모리 칩 (M0 및 M2) 은 부트 디바이스로서 설정되어 있지 않다. 또, 부트 디바이스 인식 신호 (Bsig) 에 의해, 어느 칩을 부트 디바이스로 할지를 프로그램할 수 있다.
RqCk0, RqCk1 및 RqCk2 는 리퀘스트 클록이고, RsCk0, RsCk1 및 RsCk2 는 리스폰스 클록이다. RqEn0, RqEn1 및 RqEn2 는 리퀘스트 이네이블 신호이고, RsEn0, RsEn1 및 RsEn2 는 리스폰스 이네이블 신호이다. RqMux0, RqMux1 및 RqMux2 는 리퀘스트 신호이고, RsMux0, RsMux1 및 RsMux2 는 리스폰스 신호이다.
메모리 칩 (M0) 은, 특별히 한정되지 않지만, 정보 처리 장치 (CPU_CHIP) 로부터의 리퀘스트를 접수하는 것이 가능하면 RqEn0 을 High 로 하고, 접수하는 것이 불가능하면 RqEn0 을 Low 로 한다. 메모리 칩 (M1) 은, 특별히 한정되지 않지 만, 메모리 칩 (M0) 으로부터의 리퀘스트를 접수하는 것이 가능하면 RqEn1 을 High 로 하고, 접수하는 것이 불가능하면 RqEn1 을 Low 로 한다. 메모리 칩 (M2) 은, 특별히 한정되지 않지만, 메모리 칩 (M1) 으로부터의 리퀘스트를 접수하는 것이 가능하면 RqEn2 를 High 로 하고, 접수하는 것이 불가능하면 RqEn2 를 Low 로 한다.
RqMux0, RqMux1 및 RqMux2 는 리퀘스트 신호이고, 이들 리퀘스트 신호를 통해서 송신되는 리퀘스트는, 특별히 한정되지 않지만 ID 값, 커맨드, 어드레스, 리퀘스트 번호 및 기입 데이터 등이 다중화되고, 각각의 리퀘스트 클록 (RqCk0, RqCk1 및 RqCk2) 에 동기하여 송신된다. RsMux0, RsMux1 및 RsMux2 는 리스폰스 신호이고, 이들 리스폰스 신호를 통해서 송신되는 리스폰스는, 특별히 한정되지 않지만 ID 값, 리스폰스 번호, 판독 데이터의 레이턴시값 혹은 레이턴시 레벨값 및 판독한 데이터 등이 다중화되고, 각각의 리스폰스 클록 (RsCk0, RsCk1, RsCk2) 에 동기하여 송신된다.
이하에 본 정보 처리 시스템의 동작을 설명한다. 먼저, 전원 투입시 및 전원 투입 직후의 동작에 대해 설명한다.
<전원 투입 직후의 동작 설명> <전원 투입시의 초기 시퀀스>
먼저, 도 1 및 도 2 를 이용하여 전원 투입시의 본 정보 처리 시스템의 동작의 일례에 대해 설명한다.
도 2 는, 본 정보 처리 시스템 장치의 전원 투입시의 초기 시퀀스를 나타내는 일례이다.
T1 의 기간 (PwON) 에 정보 처리 장치 (CPU_CHIP) 와, 메모리 모듈 (MEM) 내의 메모리 칩 (M0, M1 및 M2) 에 전원을 투입하고, T2 의 기간 (Reset) 에 리셋을 실시한다. 리셋 방법은 특별히 한정되지 않지만, 각각의 내장 회로에서 자동적으로 리셋을 실시하는 방법이어도, 혹은 외부에 리셋 단자를 가지며, 이 리셋 신호에 의해 리셋 동작을 실시하는 것으로 해도 된다.
T2 의 리셋 기간 (Reset) 의 기간에는, 정보 처리 장치 (CPU_CHIP), 메모리 칩 (M0, M1 및 M2) 의 내부 상태를 초기 설정한다. 이하에 일례를 나타낸다.
정보 처리 장치 (CPU_CHIP) 는 부트 디바이스 ID 레지스터 (BotID) 를 1 로, 최단 디바이스 ID 레지스터 (EndID) 를 0 으로 초기 설정한다.
메모리 칩 (M0) 은, 자신의 초기 설정 회로 (INIT) 가, 자신의 리퀘스트 큐 제어 회로 (RqCT), 리스폰스 큐 제어 회로 (RqCT), 리퀘스트 제어 회로 (RqCkc), 리스폰스 클록 제어 회로 (RsCkC), 클록 분주 회로 (Div1, Div2) 및 메모리 회로 (MemVL) 를 초기 설정한다. ID 레지스터 (IDR) 가 갖는 ID 값은 0 으로, ID 유효 비트는 Low 로 초기 설정된다.
레이턴시 출력 레지스터 (LRG) 가 갖는 레이턴시값 출력 플래그 정보 (LRGFlag) 값 및 ID 정보값은 0 으로 초기 설정된다.
리스폰스 순서 설정 레지스터 (RRG) 가 갖는 리퀘스트 번호 선택 플래그 (RSELFlag) 값과, 리스폰스 순서 플래그 (RRGFlag) 값과, ID 정보값은 0 으로 초기 설정된다.
리스폰스 큐 제어 회로 (RqCT) 가 갖는 리스폰스 조정 회로의 리스폰스 우선 순위에 관해서, 메모리 칩 (M0) 의 리스폰스 우선 순위는 1 로, 메모리 칩 (M1) 의 리스폰스 우선 순위는 2 로, 메모리 칩 (M2) 의 리스폰스 우선 순위는 3 으로 초기 설정된다. 클록 분주 회로 (Div1 및 Div2) 의 분주비는 1 로 초기 설정된다.
메모리 칩 (M1) 은, 자신의 초기 설정 회로 (INIT) 가, 자신의 리퀘스트 큐 제어 회로 (RqCT), 리스폰스 큐 제어 회로 (RqCT), 리퀘스트 제어 회로 (RqCkc), 리스폰스 클록 제어 회로 (RsCkC), 클록 분주 회로 (Div1, Div2) 및 메모리 회로 (MemNV1) 를 초기 설정한다. ID 레지스터 (IDR) 가 갖는 ID 값은 0 으로, ID 유효 비트는 Low 로 초기 설정된다. 레이턴시 출력 레지스터 (LRG) 가 갖는 레이턴시값 출력 플래그 정보 (LRGFlag) 값 및 ID 정보값은 0 으로 초기 설정된다.
리스폰스 순서 설정 레지스터 (RRG) 가 갖는 리퀘스트 번호 선택 플래그 (RSELFlag) 값과, 리스폰스 순서 플래그 (RRGFlag) 값과, ID 정보값은 0 으로 초기 설정된다. 메모리 칩 (M1) 의 리스폰스 큐 제어 회로 (RqCT) 가 갖는 리스폰스 조정 회로의 리스폰스 우선 순위에 관해서, 메모리 칩 (M1) 의 리스폰스 우선 순위는 1 로, 메모리 칩 (M2) 의 리스폰스 우선 순위는 2 로 초기 설정된다. 클록 분주 회로 (Div1 및 Div2) 의 분주비는 1 로 설정된다.
메모리 칩 (M2) 은, 자신의 초기 설정 회로 (INIT) 가, 자신의 리퀘스트 큐 제어 회로 (RqCT), 리스폰스 큐 제어 회로 (RqCT), 리퀘스트 제어 회로 (RqCkc), 리스폰스 클록 제어 회로 (RsCkC), 클록 분주 회로 (Div1, Div2) 및 메모리 회로 (MemNV2) 를 초기 설정한다. ID 레지스터 (IDR) 가 갖는 ID 값은 0 으로, ID 유효 비트는 Low 로 초기 설정된다. 레이턴시 출력 레지스터 (LRG) 가 갖는 레 이턴시값 출력 플래그 정보 (LRGFlag) 값 및 ID 정보값은 0 으로 초기 설정된다.
리스폰스 순서 설정 레지스터 (RRG) 가 갖는 리퀘스트 번호 선택 플래그 (RSELFlag) 값과, 리스폰스 순서 플래그 (RRGFlag) 값과, ID 정보값은 0 으로 초기 설정된다. 메모리 칩 (M2) 의 리스폰스 큐 제어 회로 (RqCT) 가 갖는 리스폰스 조정 회로의 리스폰스 우선 순위에 관해서 메모리 칩 (M2) 의 리스폰스 우선 순위는 1 로 초기 설정된다. 클록 분주 회로 (Div1 및 Div2) 의 분주비는 1 로 설정된다.
T2 의 리셋 기간 (Reset) 이 종료된 후의 T3 의 기간 (LinkEn) 에는, 정보 처리 장치 (CPU_CHIP), 메모리 칩 (M0, M1 및 M2) 의 신호의 접속 확인을 실시한다. 이하에 일례를 나타낸다.
정보 처리 장치 (CPU_CHIP) 로부터 리퀘스트 클록 (RqCk0) 이 메모리 칩 (M0) 에 입력되고, 메모리 칩 (M0) 의 클록 드라이버 (Drv1) 를 통해서 클록 분주 회로 (Div1) 및 클록 신호 (ck1) 로서 클록 분주 회로 (Div2) 에 출력된다. 클록 분주 회로 (Div1) 에 입력된 클록은, 리퀘스트 클록 (RqCk1) 을 통해서 메모리 칩 (M1) 에 출력된다. 클록 분주 회로 (Div1) 에 입력된 클록은, 클록 신호 (ck2) 로부터 출력되고, 또 리퀘스트 클록 (RqCk1) 을 통해서 메모리 칩 (M2) 에 출력된다. 클록 분주 회로 (Div2) 에 입력된 클록은 클록 신호 (ck3) 로부터 출력되고, 또 리스폰스 클록 (RsCk0) 을 통해서 정보 처리 장치 (CPU_CHIP) 에 출력된다. 메모리 칩 (M1) 의 클록 드라이버 (Drv1) 에 입력된 클록은, 클록 분주 회로 (Div1) 및 클록 신호 (ck1) 로서 클록 분주 회로 (Div2) 에 출력된다. 클록 분주 회로 (Div1) 에 입력된 클록은, 클록 신호 (ck2) 로부터 출력되고, 또 리퀘스트 클록 (RqCk1) 을 통해서 메모리 칩 (M2) 에 출력된다. 클록 분주 회로 (Div2) 에 입력된 클록은, 클록 신호 (ck3) 로부터 출력되고, 또 리스폰스 클록 (RsCk1) 을 통해서 메모리 칩 (M0) 에 출력된다. 리스폰스 클록 (RsCk1) 을 통해서 메모리 칩 (M0) 의 클록 드라이버 (Drv2) 에 입력된 클록은 클록 신호 (ck4) 에 출력된다. 메모리 칩 (M2) 의 클록 드라이버 (Drv1) 에 입력된 클록은 클록 분주 회로 (Div1) 및 클록 신호 (ck1) 로서 클록 분주 회로 (Div2) 에 출력된다. 클록 분주 회로 (Div2) 에 입력된 클록은 클록 신호 (ck3) 로부터 출력되고, 또 리퀘스트 클록 (RqCk1) 을 통해서 메모리 칩 (M2) 에 출력된다. 리스폰스 클록 (RsCk2) 을 통해서 메모리 칩 (M1) 의 클록 드라이버 (Drv2) 에 입력된 클록은 클록 신호 (ck4) 에 출력된다.
다음으로, 메모리 칩 (M0) 은, 부트 디바이스 인식 신호 (Bsig) 가 전원 (vdd) 에 접속되어 있기 때문에, 자기 자신은 부트 디바이스가 아닌 것을 인식한다. 메모리 칩 (M1) 은, 부트 디바이스 인식 신호 (Bsig) 가 접지 (gnd) 되어 있기 때문에, 자기 자신이 부트 디바이스인 것을 인식하고, 스스로의 메모리 회로 (MemNV1) 가 유지하고 있는 부트 디바이스 ID 값 1 을 ID 레지스터에 설정하고, ID 유효 비트를 High 로 한다. 메모리 칩 (M2) 은, 부트 디바이스 인식 신호 (Bsig) 가 전원에 접속되어 있기 때문에, 자기 자신은 부트 디바이스가 아닌 것을 인식한다. 또한, 메모리 칩 (M2) 은, RqEn3, RsMux3, RqCk3 을 접지 (gnd) 하고 있음으로써, 직렬 접속되어 있는 메모리 칩의 가장 종단의 메모리 칩인 것을 인 식하고, 리퀘스트 이네이블 신호 (RqEn2) 를 High 로 한다.
다음으로, 메모리 칩 (M1) 은 리퀘스트 이네이블 신호 (RqEn2) 가 High 가 된 것을 확인하고, 리스폰스 이네이블 신호 (RsEn2) 및 리퀘스트 이네이블 신호 (RqEn1) 를 High 로 한다. 다음으로, 메모리 칩 (M0) 은 리퀘스트 이네이블 신호 (RqEn1) 가 High 가 된 것을 확인하고, 리스폰스 이네이블 신호 (RsEn1) 및 리퀘스트 이네이블 신호 (RqEn0) 를 High 로 한다. 마지막으로, 정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 이네이블 신호 (RqEn0) 가 High 가 된 것을 확인하고, 각 메모리 칩의 신호 접속이 확인된 것을 알고, 리스폰스 이네이블 신호 (RsEn0) 를 High 로 한다. 이로써, 정보 처리 장치 (CPU_CHIP) 및 메모리 칩 (M0, M1, M2) 이 직렬 접속되어 있는 것을 확인할 수 있다.
T3 의 기간이 종료된 후의 T4 의 기간 (BootRd) 에는 정보 처리 장치 (CPU_CHIP) 가 메모리 칩 (M1) 으로부터 부트 데이터를 판독한다. 이하에 동작의 일례를 나타낸다.
정보 처리 장치 (CPU_CHIP) 는, 부트 디바이스 ID 레지스터 (BotID) 의 값 1 을 판독하고, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 1, 뱅크 액티브 명령 (BA), 뱅크 어드레스 (BK0), 페이지 어드레스 (Page0) 를 다중화한 리퀘스트 (ReqBAm1) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다.
계속해서, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 1, 판독 명령 (RD), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Col) 를 다중화한 리퀘스트 (ReqRDm1) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다.
메모리 칩 (M0) 은, 정보 처리 장치 (CPU_CHIP) 로부터의 리퀘스트 (ReqBAm1 과 ReqRDm1) 를 순서대로 자신의 리퀘스트 큐 제어 회로 (RqCT) 에 저장한다.
메모리 칩 (M0) 은, 리퀘스트 (ReqBAm1 및 ReqRDm1) 에 포함되는 ID 값 1 과 자신의 ID 레지스터의 값 2 를 순서대로 비교한다. 비교 결과가 불일치하기 때문에, 메모리 칩 (M0) 은 리퀘스트 (ReqBAm1 및 ReqRD16m1) 를 자신에 대한 리퀘스트가 아닌 것으로 판단하고, 리퀘스트 신호 (RqMux1) 를 통해서 순서대로 메모리 칩 (M1) 에 전송한다.
메모리 칩 (M1) 은, 메모리 칩 (M0) 으로부터의 리퀘스트 (ReqBAm1 및 ReqRDm1) 를 자신의 리퀘스트 큐 제어 회로 (RqCT) 에 저장한다.
메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqBAm1) 에 포함되는 ID 값 1 과 자신의 ID 레지스터의 값 1 을 비교한다. 쌍방은 일치하므로, 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqBA1) 를 메모리 회로 (MemVL) 에 송신한다. 메모리 회로 (MemVL) 는, 리퀘스트 (ReqBAm1) 에 뱅크 액티브 명령 (BA), 뱅크 어드레스 (BK0), 페이지 어드레스 (Page0) 에 의해, 지정된 1 페이지분 (특별히 한정되지 않지만 1k 바이트분) 의 부트 데이터가 버퍼 (BUF0) 에 전송된다. 부트 데이터에는, 부트 프로그램과 최종단 디바이스 ID 번호 3 이 포함된다.
메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRDm1) 에 포함되는 ID 값 1 과 자신의 ID 레지스터의 값 1 을 비교한다. 쌍방은 일치하므로, 리퀘스트 큐 제어 회로 (RqCT) 는, 리퀘스트 (ReqRDm1) 를 메모리 회로 (MemVL) 에 송신한다.
메모리 칩 (M1) 의 메모리 회로 (MemNV1) 로부터 리퀘스트 (ReqRDm1) 에 포함되는 판독 명령 (RD16), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Col) 에 의해, 버퍼 (BUF0) 내의 최종단 디바이스 ID 번호 3 을 포함한 부트 데이터가 판독되고, ID 레지스터값 1 을 포함하여, 리스폰스 큐 제어 회로 (RsCT) 에 리스폰스 (RsRDm1) 로서 전송된다.
메모리 칩 (M1) 의 리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 신호 (RsMux0) 를 통해서, 리스폰스 (RsRDm1) 를 메모리 칩 (M0) 에 출력한다. 메모리 칩 (M0) 은, 리스폰스 (RsRDm1) 를 받아 정보 처리 장치 (CPU_CHIP) 에 출력한다.
정보 처리 장치 (CPU_CHIP) 는, 리스폰스 (ResRDm1) 를 리스폰스 큐 (RsQ) 에 저장한다. 리스폰스 (ResBRD1) 에 포함되는 ID 값 1 에 의해, 부트 데이터가 메모리 칩 (M1) 으로부터 송신된 것을 알 수 있다. 최종단 디바이스 ID 값 3 은 메모리 제어 회로 (CON) 내의 최종단 디바이스 ID 레지스터 (EndID) 에 보존된다.
T4 의 기간이 종료된 후의 T5 의 기간 (InitID) 에는, 정보 처리 장치 (CPU_CHIP) 는, 부트 프로그램에 의해 스스로를 가동시키고, 다음으로 각 메모리 칩 (M0, M1, M2) 에 ID 번호를 할당한다. 이하에 동작의 일례를 나타낸다.
정보 처리 장치 (CPU_CHIP) 는 부트 코드에 따라, 먼저, 각 메모리 칩에 대한 ID 번호를 부가한다. 정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 신호 (RqMux0) 를 통해서, ID 번호 2 와 ID 설정 명령을 메모리 칩 (M0) 에 전송한다. 메모리 칩 (M0) 에서는, ID 유효 비트가 Low 이기 때문에, 아직 ID 번호가 부가되어 있지 않다. 그래서, 메모리 칩 (M0) 은, ID 번호 2 와 ID 설정 명령에 의해 ID 레지스터에 ID 번호 2 를 설정하고, ID 유효 비트를 High 로 한다. ID 유효 비트가 High 가 됨으로써, ID 번호 부가가 완료된 것을 나타낸다. 메모리 칩 (M0) 의 ID 번호 부가가 완료되면, 메모리 칩 (M0) 은 리스폰스 신호 (RsMux0) 를 통해서, 메모리 칩 (M0) 의 ID 값 2 및 ID 번호 부가 완료 정보를 출력한다. 정보 처리 장치 (CPU_CHIP) 는, 메모리 칩 (M0) 의 ID 값 2 및 ID 번호 부가 완료 정보를 받고, 메모리 칩 (M0) 의 ID 번호 부가가 완료된 것을 안다.
다음으로, 정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 신호 (RqMux0) 를 통해서 ID 번호 3 과 ID 설정 명령을 다중화한 리퀘스트 (ReqID3) 를 메모리 칩 (M0) 에 전송한다. 메모리 칩 (M0) 은 자신의 ID 번호 2 와 리퀘스트 (ReqID3) 에 포함되는 ID 번호 3 을 비교하고, 불일치하기 때문에, 리퀘스트 (ReqID3) 를 메모리 칩 (M1) 에 전송한다.
메모리 칩 (M1) 은 자신의 ID 번호 1 과 리퀘스트 (ReqID3) 에 포함되는 ID 번호 3 을 비교하고, 불일치하기 때문에, 리퀘스트 (ReqID3) 를 메모리 칩 (M2) 에 전송한다. 메모리 칩 (M2) 에서는, ID 유효 비트가 Low 이기 때문에, 아직 ID 번호가 부가되어 있지 않다. 그래서, 메모리 칩 (M2) 은, 리퀘스트 (ReqID3) 에 포함되는 ID 번호 3 과 ID 설정 명령에 의해 메모리 칩 (M2) 의 ID 레지스터에 ID 번호 3 을 설정하고, ID 유효 비트를 High 로 한다. 최종단의 메모리 칩 (M2) 의 ID 번호 부가가 완료되면, 메모리 칩 (M2) 은 리스폰스 신호 (RqMux2) 를 통해서, 메모리 칩 (M2) 의 ID 값 3 및 ID 번호 부가 완료 정보를 다중화한 리스폰스 (ResID3) 를 메모리 칩 (M1) 에 출력한다. 메모리 칩 (M1) 은 리스폰스 신호 (RqMux1) 를 통해서 리스폰스 (ResID3) 를 메모리 칩 (M0) 에 출력한다. 메모리 칩 (M0) 은 리스폰스 신호 (RqMux0) 를 통해서 리스폰스 (ResID3) 를 정보 처리 장치 (CPU_CHIP) 에 전송한다. 정보 처리 장치 (CPU_CHIP) 는, 리스폰스 (ResID3) 를 받고, 이 리스폰스 (ResID3) 에 포함되는 메모리 칩 (M2) 의 ID 값 3 및 ID 번호 부가 완료 정보를 받고, 메모리 칩 (M2) 의 ID 번호 부가가 완료된 것을 안다. 또한, 정보 처리 장치 (CPU_CHIP) 는, 전송된 메모리 칩 (M2) 의 ID 값 3 과, 메모리 제어 회로 (CON) 내의 최종단 디바이스 ID 레지스터 (EndID) 에 설정되어 있는 최종단 디바이스 ID 값 3 을 비교하고, 쌍방이 일치된 것으로, 최종단의 메모리 칩까지 ID 번호가 부가된 것을 확인한다.
T5 의 기간이 종료된 후의 T6 의 기간 (Idle) 이후에는, 메모리 모듈 (MEM) 은 아이들 상태가 되고, 정보 처리 장치 (CPU_CHP) 로부터의 리퀘스트를 기다리는 상태가 된다.
이와 같이, 전원 투입 직후에, 직렬 접속의 확인 동작을 실시함으로써, 확실하게 메모리끼리가 접속되어 있는 것을 확인할 수 있다. 또한, 부트 디바이스 및 최단의 메모리 칩을 명시하고, 자동적으로 각 메모리에 대한 ID 부가가 실시됨으로써, 용이하게 필요한 분만큼 메모리 칩을 접속하여 메모리 용량을 확장할 수 있다.
<레지스터 설정 : 레이턴시값 출력 설정 레지스터 (LRG)>
전원 투입시의 초기 시퀀스가 종료된 후, 메모리 칩 (M0, M1 및 M2) 의 레이턴시값 출력 레지스터 (LREG) 에 대한 데이터 설정 동작에 대해 도 3 을 이용하여 설명한다.
특별히 한정되지 않지만 레이턴시값 출력 설정 레지스터 (LRG) 에서는, 메모리 칩 (M0, M1 및 M2) 중 어느 메모리 칩으로부터의 리스폰스에 관한 레이턴시값을 출력하면 좋은지를 설정할 수 있다.
특별히 한정되지 않지만, 메모리 칩 (M0, M1, M2) 각각의 ID 레지스터값이 2, 1 및 3 으로 설정되어 있다.
도 3 은 메모리 칩 (M0, M1 및 M2) 의 레이턴시값 출력 레지스터 (LREG) 에 데이터를 설정하는 동작의 일례를 나타내는 플로우 차트이다.
특별히 한정되지 않지만, 메모리 칩 (M0, M1, M2) 각각의 ID 레지스터값이 2, 1 및 3 으로 설정되어 있다.
먼저, 메모리 칩 (M0) 의 레이턴시값 출력 레지스터 (LREG) 에 대한 데이터 설정 동작에 대해 설명한다.
정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 2, 레이턴시값 출력 레지스터 설정 명령 (LRGSet), 레이턴시값 출력 레지스터 (LRG) 에 대한 설정값 (LRGData0) 을 다중화한 리퀘스트 (ReqLRGSet0) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다 (도 3 : Step 1). 레이턴시 출력 레지스터 (LRG) 에 대한 설정값 (LRGData0) 에는, 레이턴시값 출력 플 래그 정보 (LRGFlag) 값 1 과, ID 값 2 와, ID 값 1 과, ID 값 3 이 포함된다.
메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqLRGSet0) 를 저장한다 (도 3 : Step 2).
다음으로, 메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqLRGSet0) 에 포함되는 ID 값 2 와 자신의 ID 레지스터의 값 2 를 비교한다 (도 3 : Step 3).
쌍방은 일치하므로, 메모리 칩 (M0) 의 레이턴시값 출력 레지스터 (LRG) 에 설정값 (LRGData0) 이 설정된다 (도 3 : Step 4).
다음으로, 메모리 칩 (M1) 의 레이턴시값 출력 레지스터 (LREG) 에 대한 데이터 설정 동작에 대해 설명한다.
정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 1, 레이턴시값 출력 레지스터 설정 명령 (LRGSet), 레이턴시값 출력 레지스터 (LRG) 에 대한 설정값 (LRGData1) 을 다중화한 리퀘스트 (ReqLRGSet1) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다 (도 3 : Step 1). 설정값 (LRGData1) 에는, 레이턴시값 출력 플래그 정보 (LRGFlag) 값 1 과, ID 값 2 와, ID 값 1 과, ID 값 3 이 포함된다.
메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqLRGSet1) 를 저장한다 (도 3 : Step 2).
다음으로, 메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqLRGSet1) 에 포함되는 ID 값 1 과 자신의 ID 레지스터의 값 2 를 비교한다 (도 3 : Step 3).
쌍방은 불일치하기 때문에, 메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqLRGSet1) 를 리퀘스트 큐 회로 (RqQXO) 에 전송하고, 메모리 칩 (M1) 에 송신한다 (도 3 : Step 5).
메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqLRGSet1) 를 저장한다 (도 3 : Step 2).
다음으로, 메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqLRGSet1) 에 포함되는 ID 값 1 과 자신의 ID 레지스터의 값 1 을 비교한다 (도 3 : Step 3).
쌍방은 일치하므로, 메모리 칩 (M1) 의 레이턴시값 출력 레지스터 (LRG) 에 설정값 (LRGData1) 이 설정된다 (도 3 : Step 4).
메모리 칩 (M2) 의 레이턴시값 출력 레지스터 (LREG) 에 대한 데이터 설정 동작은 메모리 칩 (M1) 과 동일한 동작으로 실시된다.
도 4 는, 메모리 칩 (M0, M1 및 M2) 의 레이턴시값 출력 레지스터 (LREG) 의 설정값의 일례를 나타낸다.
메모리 칩 (M0) 의 레이턴시값 출력 레지스터 (M0_LREG) 의 설정값에 의해 메모리 칩 (M0) 은, 자신으로의 리퀘스트에 대한 리스폰스와, 메모리 칩 (M1) 에 대한 리퀘스트와, 메모리 칩 (M2) 에 대한 리퀘스트에 관한 레이턴시값을 출력한다.
메모리 칩 (M1) 의 레이턴시값 출력 레지스터 (M1_LREG) 의 설정값에 의해 메모리 칩 (M1) 은, 자신으로의 리퀘스트에 대한 리스폰스와, 메모리 칩 (M2) 에 대한 리퀘스트에 관한 레이턴시값을 출력한다.
메모리 칩 (M2) 의 레이턴시값 출력 레지스터 (M2_LREG) 의 설정값에 의해 메모리 칩 (M2) 은, 자신으로의 리퀘스트에 대한 리스폰스에 관한 레이턴시값을 출력한다.
이와 같이, 데이터를 출력하기 전에, 그 데이터가 언제 출력되는지를 나타내는 레이턴시값을 출력함으로써, 정보 처리 장치 (CPU_CHIP) 는, 미리 데이터의 도착 시간을 알 수 있다. 그 때문에, 정보 처리 장치 (CPU_CHIP) 는 데이터의 도착 전에 필요한 다른 처리를 실시할 수 있어 성능 향상을 도모할 수 있다.
<레지스터 설정 : 리스폰스 순서 설정 레지스터 (RRG)>
도 5 는 메모리 칩 (M0, M1 및 M2) 의 리스폰스 순서 설정 레지스터 (RRG) 에 데이터를 설정하는 동작의 일례를 나타내는 플로우 차트이다.
먼저, 메모리 칩 (M0) 의 리스폰스 순서 설정 레지스터 (RRG) 에 대한 데이터 설정 동작에 대해 설명한다.
정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 2, 리스폰스 순서 설정 레지스터 설정 명령 (RRGSet), 리스폰스 순서 설정 레지스터 (RRG) 에 대한 설정값 (RRGData0) 을 다중화한 리퀘스트 (ReqRRGSet0) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다 (도 5 : Step 1). 설정값 (RRGData0) 에는, 리퀘스트 번호 선택 플래그 정보 (RSELFlag) 값과, 리스폰스 순서 플래그 (RRGFlag) 정보와, ID 값이 포함된다.
메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRRGSet0) 를 저장한다 (도 5 : Step 2).
다음으로, 메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRRGSet0) 에 포함되는 ID 값 2 와 자신의 ID 레지스터의 값 2 를 비교한다 (도 5 : Step 3).
쌍방은 일치하므로, 메모리 칩 (M0) 의 리스폰스 순서 설정 레지스터 (RRG) 에 설정값 (RRGData0) 이 설정된다 (도 5 : Step 4).
다음으로, 메모리 칩 (M1) 에 대한 데이터 설정 동작에 대해 설명한다.
정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 1, 리스폰스 순서 설정 레지스터 설정 명령 (RRGSet), 리스폰스 순서 설정 레지스터 (RRG) 에 대한 설정값 (RRGData1) 을 다중화한 리퀘스트 (ReqRRGSet1) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다 (도 5 : Step 1).
설정값 (RRGData1) 에는, 리퀘스트 번호 선택 플래그 정보 (RSELFlag) 값 1 과, 리스폰스 순서 플래그 정보 (RRGFlag) 값 1 과, ID 값 2 가 포함된다.
메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRRGSet1) 를 저장한다 (도 5 : Step 2).
다음으로, 메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRRGSet1) 에 포함되는 ID 값 1 과 자신의 ID 레지스터의 값 2 를 비교한다 (도 5 : Step 3).
쌍방은 불일치하기 때문에, 메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRRGSet1) 를 리퀘스트 큐 회로 (RqQXO) 에 전송하고, 메모리 칩 (M1) 에 송신한다 (도 5 : Step 5).
메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRRGSet1) 를 저장한다 (도 5 : Step 2).
다음으로, 메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRRGSet1) 에 포함되는 ID 값 1 과 자신의 ID 레지스터의 값 1 을 비교한다 (도 5 : Step 3).
쌍방은 일치하므로, 메모리 칩 (M1) 의 리스폰스 순서 설정 레지스터 (RRG) 에 설정값 (RRGData1) 이 설정된다 (도 5 : Step 4).
메모리 칩 (M2) 의 리스폰스 순서 설정 레지스터 (RRG) 설정 동작은 메모리 칩 (M1) 과 동일한 동작으로 실시된다.
도 6(a) 및 도 6(b) 는, 메모리 칩 (M0, M1 및 M2) 의 리스폰스 순서 설정 레지스터 (RRG) 의 설정값의 일례를 나타낸다. M0_RRG 는 메모리 칩 (M0) 의 리스폰스 순서 설정 레지스터 (RRG) 이다. M1_RRG 는 메모리 칩 (M1) 의 리스폰스 순서 설정 레지스터 (RRG) 이다. M2_RRG 는 메모리 칩 (M2) 의 리스폰스 순서 설정 레지스터 (RRG) 이다.
특별히 한정되지 않지만 리퀘스트 번호 선택 플래그 정보 (RSELFlag) 값이 0 인 경우에는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 모듈 (MEM) 에 송신되는 리퀘스트에 포함되는 리퀘스트 번호를 이용하여 리스폰스 순서를 결정하고, 또 리퀘스트 번호 선택 플래그 정보 (RSELFlag) 값이 1 인 경우에는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 모듈 (MEM) 에 송신되는 리퀘스트에 대응하는 리퀘스트 번호를 메모리 칩이 생성하고, 그 생성된 리퀘스트 번호를 이용하여 리스폰스 순서를 결정한다.
또, 특별히 한정되지 않지만 리스폰스 순서 플래그 정보 (RRGFlag) 값이 0 인 경우에는, 메모리 모듈 (MEM) 에 입력된 리퀘스트 순서에는 제한을 받지 않고, 빨리 송신할 수 있는 리스폰스부터 송신하고, 또 리스폰스 순서 플래그 정보 (RRGFlag) 값이 1 인 경우에는, 메모리 모듈 (MEM) 에 입력된 리퀘스트순으로 리스폰스를 송신한다.
도 6(a) 가 나타내는 리스폰스 순서 설정 레지스터 (RRG) 의 설정값에 의해, 메모리 칩 (M0) 은, 자신에 대한 리퀘스트에 관해서는 메모리 칩 (M0) 자신이 생성한 리퀘스트 번호를 이용하여, 입력한 리퀘스트순으로 리스폰스를 송신한다. 또, 메모리 칩 (M0) 은, 자신의 리스폰스와, 메모리 칩 (M1 혹은 M2) 으로부터 메모리 칩 (M0) 에 입력한 리스폰스 사이에서는, 리퀘스트의 입력 순서에 관계 없이, 빨리 송신할 수 있는 리스폰스는, 느린 리스폰스를 기다리지 않고, 정보 처리 장치 (CPU_CHIP) 에 송신될 수 있다.
메모리 칩 (M1) 은, 자신에 대한 리퀘스트에 관해서는 메모리 칩 (M1) 자신이 생성한 리퀘스트 번호를 이용하여, 입력된 리퀘스트순으로 리스폰스를 송신한다. 또, 메모리 칩 (M1) 은, 자신의 리스폰스와, 메모리 칩 (M2) 으로부터 메모리 칩 (M1) 에 입력한 리스폰스 사이에서는, 리퀘스트의 입력 순서에 관계 없이, 빨리 송신할 수 있는 리스폰스는, 느린 리스폰스를 기다리지 않고, 메모리 칩 (M0) 에 송신될 수 있다.
메모리 칩 (M2) 은, 자신에 대한 리퀘스트에 관해서는 메모리 칩 (M2) 자신이 생성한 리퀘스트 번호를 이용하여, 입력된 리퀘스트순으로 리스폰스를 메모리 칩 (M1) 에 송신한다.
도 6(b) 가 나타내는 리스폰스 순서 설정 레지스터 (RRG) 의 설정값에 의해, 메모리 칩 (M0) 은, 자신에 대한 리퀘스트에 관해서는, 정보 처리 장치 (CPU_CHIP) 로부터 송신되는 리퀘스트 번호를 이용하여, 리퀘스트의 입력 순서에 관계 없이, 빨리 송신할 수 있는 리스폰스는, 느린 리스폰스를 기다리지 않고 정보 처리 장치 (CPU_CHIP) 에 송신된다. 또, 메모리 칩 (M0) 은, 자신의 리스폰스와, 메모리 칩 (M1 혹은 M2) 으로부터 메모리 칩 (M0) 에 입력한 리스폰스 사이에서는, 리퀘스트의 입력 순서에 관계 없이, 빨리 송신할 수 있는 리스폰스는, 느린 리스폰스를 기다리지 않고, 정보 처리 장치 (CPU_CHIP) 에 송신될 수 있다.
메모리 칩 (M1) 은, 자신에 대한 리퀘스트에 관해서는, 정보 처리 장치 (CPU_CHIP) 로부터 송신되는 리퀘스트 번호를 이용하여, 리퀘스트의 입력 순서에 관계 없이, 빨리 송신할 수 있는 리스폰스는, 느린 리스폰스를 기다리지 않고 메모리 칩 (M0) 에 송신된다. 또, 메모리 칩 (M1) 은, 자신의 리스폰스와, 메모리 칩 (M2) 으로부터 메모리 칩 (M1) 에 입력한 리스폰스 사이에서는, 리퀘스트의 입력 순서에 관계 없이, 빨리 송신할 수 있는 리스폰스는, 느린 리스폰스를 기다리지 않고 메모리 칩 (M0) 에 송신될 수 있다.
메모리 칩 (M2) 은, 자신에 대한 리퀘스트에 관해서는, 정보 처리 장치 (CPU_CHIP) 로부터 송신되는 리퀘스트 번호를 이용하여, 리퀘스트의 입력 순서에 관계 없이, 빨리 송신할 수 있는 리스폰스는, 느린 리스폰스를 기다리지 않고 메모리 칩 (M1) 에 송신된다.
또, 리스폰스 순서 설정 레지스터 (RRG) 의 리스폰스 순서 플래그 정보 (RRGFlag) 에 대응한 ID 값을 복수 설정함으로써 복수의 메모리 칩 사이에서의 리스폰스 순서를 설정할 수 있는 것은 말할 필요도 없다.
이상 설명한 바와 같이, 리스폰스 순서 설정 레지스터 (RRG) 에 의해, 메모리 칩마다 또는 칩 사이에서, 입력된 리퀘스트순으로 리스폰스를 송신할 것인지, 혹은 입력된 리퀘스트 순서에는 제한을 받지 않고, 빨리 송신할 수 있는 리스폰스부터 송신할 것인지를 설정할 수 있기 때문에, 취급하는 시스템에 따라 정보 처리 장치 (CPU_CHIP) 가 다양하게 요구하는 OS, 부트 프로그램 및 어플리케이션 프로그램 등의 메모리 칩에 대한 배치 방법에 유연하게 대응하면서 성능 향상을 도모할 수 있다.
<통상 동작의 설명 : 레이턴시값의 출력>
메모리 모듈 (MEM) 과 정보 처리 장치 (CPU_CHIP) 사이의, 레이턴시값의 출력을 포함하는 데이터 전송에 대해 도 1 과 도 7 을 이용하여 설명한다.
특별히 한정되지 않지만, 메모리 칩 (M0, M1, M2) 각각의 ID 레지스터값이 2, 1 및 3 으로 설정되어 있다.
특별히 한정되지 않지만, 메모리 칩 (M0, M1 및 M2) 의 레이턴시값 출력 레지스터 (LRG) 는, 도 4 에 나타낸 값으로 설정되어 있고, 리스폰스 순서 설정 레지 스터 (RRG) 는, 도 6(a) 에 나타낸 값으로 설정되어 있다.
특별히 한정되지 않지만, 메모리 칩 (M0, M1, M2) 의 리퀘스트 큐 제어 회로 (RqCT) 에는 리퀘스트 큐는 2 개 존재하고, 리퀘스트가 엔트리되어 있지 않은 상태이며, 메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 에는 리스폰스 큐가 2 개 존재하고, 이 리스폰스 큐에는 리스폰스가 이미 1 개 엔트리되어 있는 경우의 데이터 전송에 대해 설명한다.
특별히 한정되지 않지만, 1 개의 리퀘스트 큐는 1 바이트의 ID 값, 1 바이트의 리퀘스트 번호, 1 바이트의 명령, 2 바이트의 어드레스, 32 바이트의 기입 데이터를 저장할 수 있고, 1 개의 리스폰스 큐는 1 바이트의 ID 값, 1 바이트의 리퀘스트 번호, 32 바이트의 판독 데이터를 저장할 수 있다.
또, 특별히 한정되지 않지만, 메모리 칩 (M0, M1, M2) 각각의 메모리 회로 (MemVL, MemNV1, MemNV2) 는 8 개의 메모리 뱅크로 구성되어 있고, 1 개의 메모리 뱅크에는 1 개의 센스 증폭기 회로가 장치되어 있다.
메모리 칩 (M0) 은, 자신의 리퀘스트 큐에 정보 처리 장치 (CPU_CHIP) 로부터의 리퀘스트가 엔트리되어 있지 않기 때문에, 리퀘스트 이네이블 신호 (RqEn0) 를 High 로 하고, 리퀘스트를 접수할 수 있는 것을 정보 처리 장치 (CPU_CHIP) 에 알린다.
정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 2, 뱅크 액티브 명령 (BA), 뱅크 어드레스 (BK0), 로우 어드레스 (Row0) 를 다중화한 리퀘스트 (ReqBAm01) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다.
계속해서, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 2, 16 바이트 판독 명령 (RD), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Col31) 를 다중화한 리퀘스트 (ReqRDm16) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다 (도 7 : Step 1).
메모리 칩 (M0) 은, 정보 처리 장치 (CPU_CHIP) 로부터의 리퀘스트 (ReqBAm01 과 ReqRDm16) 를 순서대로 자신의 리퀘스트 큐 제어 회로 (RqCT) 에 저장한다 (도 7 : Step 2).
이것으로, 리퀘스트 큐 제어 회로 (RqCT) 내의 모든 리퀘스트 큐는 엔트리되고, 정보 처리 장치 (CPU_CHIP) 로부터의 새로운 리퀘스트를 접수할 수 없기 때문에, 리퀘스트 이네이블 신호 (RqEn0) 를 Low 로 한다.
리퀘스트 이네이블 신호 (RqEn0) 가 Low 가 된 것으로, 정보 처리 장치 (CPU_CHIP) 는, 메모리 칩 (M0) 이 리퀘스트를 접수할 수 없게 되었음을 알 수 있다.
그 후, 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqBAm01) 에 포함되는 ID 값 2 와 자신의 ID 레지스터의 값 2 를 비교한다. 리퀘스트 (ReqBA1) 에 포함되는 ID 값 2 와 메모리 칩 (M0) 의 ID 레지스터값 2 는 일치하므로, 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqBA1) 를 메모리 회로 (MemVL) 에 송신한다. 메모리 회로 (MemVL) 는, 리퀘스트 (ReqBAm01) 에 뱅크 액티브 명령 (BA), 뱅크 어드레스 (BK0), 로우 어드레스 (Row0) 에 의해, 뱅크 0 내의 로우 0 에 접속되어 있는 1 페이지분 (특별히 한정되지 않지만 8192 비트분) 의 메모리 셀이 활성화되어 센스 증폭기에 전송된다.
리퀘스트 (ReqBAm01) 가 처리된 것에 의해, 리퀘스트 큐 제어 회로 (RqCT) 내의 리퀘스트 큐가 하나분 비었기 때문에, 메모리 칩 (M0) 은 리퀘스트 이네이블 신호 (RqEn0) 를 High 로 하고, 새로운 리퀘스트를 접수할 수 있는 것을 정보 처리 장치 (CPU_CHIP) 에 알린다.
다음으로, 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRDm16) 에 포함되는 ID 값 2 와 자신의 ID 레지스터의 값 2 를 순서대로 비교한다 (도 7 : Step 3). 리퀘스트 (ReqRDm16) 에 포함되는 ID 값 2 와 메모리 칩 (M0) 의 ID 레지스터값 2 는 또 일치하므로, 리퀘스트 큐 제어 회로 (RqCT) 는, 리퀘스트 (ReqRDm16) 를 메모리 회로 (MemVL) 에 송신한다.
또, 리퀘스트 큐 제어 회로 (RqCT) 는, 판독 리퀘스트 (ReqRDm16) 를 메모리 회로 (MemVL) 에 송신할 때에는, 레이턴시값 출력 레지스터 (LRG) 의 설정에 따라, 리퀘스트 (ReqRDm04) 에 포함되는 ID 값 2 와 레이턴시값 출력 레지스터 (LRG) 내의 레이턴시값 출력 플래그 정보 (LRGFlag) 값 1 을 리스폰스 큐 제어 회로 (RsCT) 내의 레이턴시 계산 회로 (LA) 에 송신한다.
레이턴시 계산 회로 (LA) 는 받은 레이턴시값 출력 플래그 정보 (LRGFlag) 값이 1 인 것을 확인하고 (도 7 : Step 4), 리퀘스트 (ReqRDm16) 에 대한 데이터가 리스폰스 신호 (RsMux0) 를 통해서, 정보 처리 장치 (CPU_CHIP) 에 출력될 때까지의 레이턴시값 (LaRd) 을 계산한다 (도 7 : Step 5). 다음으로 리스폰스 큐 제 어 회로 (RsCT) 는, ID 값 2 와 계산한 레이턴시값 (LaRd) 을 포함한 리스폰스 (RsLa) 를 리스폰스 신호 (RsMux0) 를 통해서, 정보 처리 장치 (CPU_CHIP) 에 송신한다 (도 7 : Step 6).
만약, 레이턴시 계산 회로 (LA) 는, 받은 레이턴시값 출력 플래그 정보 (LRGFlag) 값이 0 인 경우에는, 레이턴시의 계산을 실행하지 않고 종료한다 (도 7 : Step 8).
정보 처리 장치 (CPU_CHIP) 의 메모리 제어 회로 (CON) 는, 리스폰스 (RsLa) 를 리스폰스 큐 (RsQ) 에 받는다. 정보 처리 장치 (CPU_CHIP) 는, 리스폰스 큐 (RsQ) 에 송신된 리스폰스 (RsLa) 에 포함되는 ID 값 2 및 레이턴시값 (LaRd) 에 의해, 리퀘스트 (RqRDm04) 에 대응하는 데이터가 언제까지, 메모리 칩 (M0) 으로부터 송신되는지를 미리 확인할 수 있다.
다음으로 메모리 회로 (MemVL) 로부터 리퀘스트 (ReqRDm16) 에 포함되는 16 바이트 판독 명령 (RD16), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Col31) 에 의해, 메모리 회로 (MemVL) 의 뱅크 0 의 센스 증폭기에 유지되어 있는 데이터 중에서, 칼럼 어드레스 (Col31) 를 개시 어드레스로 한 16 바이트분의 데이터가 판독되고, ID 레지스터값 2 를 포함하여, 리스폰스 큐 제어 회로 (RsCT) 에 리스폰스 (ResRDm16) 로서 전송된다.
리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 신호 (RsMux0) 를 통해서, 리스폰스 (RsRDm16) 를 정보 처리 장치 (CPU_CHIP) 에 출력한다. 정보 처리 장치 (CPU_CHIP) 의 메모리 제어 회로 (CON) 는 리스폰스 (RsRDm16) 를 리스폰스 큐 (RsQ) 에 받는다. 정보 처리 장치 (CPU_CHIP) 는, 리스폰스 큐 (RsQ) 에 송신된 리스폰스 (RsRDm04) 에 포함되는 ID 값 2 에 의해, 리퀘스트 (RqRDm16) 에 대응하는 데이터가 정확하게 메모리 칩 (M0) 으로부터 송신된 것을 확인할 수 있다.
리스폰스 큐 제어 회로 (RsCT) 에서의 레이턴시의 계산 방법은, 특별히 한정되지 않지만, Tinitial + Sum(Tcycle) 로 해도 된다.
리퀘스트 (ReqRDm16) 가 메모리 회로 (MemVL) 에 송신되고 나서, 원하는 데이터가 판독되고 리스폰스 큐 제어 회로 (RsCT) 에 리스폰스 (ResRDm16) 로서 입력될 때까지의 시간이며, 특별히 한정되지 않지만, 3 클록 사이클 정도이다.
Sum(Tcycle) 는 리스폰스 큐 제어 회로 (RsCT) 가 장비하고 있는 리스폰스 큐 내에서, 이미 리스폰스 데이터를 유지하고 있는 리스폰스 큐에 관해서, 그 리스폰스 데이터 모두를 출력하기 위해 필요한 데이터 전송 클록 사이클 수 (Tcycle) 의 총합이다.
리스폰스 큐 제어 회로 (RsCT) 가 장비하고 있는 리스폰스 큐 내에서, 이미 1 개의 리스폰스 큐에 리스폰스 데이터가 유지되어 있고, 그 리스폰스 데이터의 데이터 전송 클록 사이클 수를 16 으로 하면, 리퀘스트 (ReqRDm16) 에 대한 출력 데이터의 레이턴시값 (LaRd) 은 3 + 16 = 19 사이클이 된다.
여기서는, 메모리 칩 (M0) 이 출력하는 레이턴시값은, 구체적인 클록 사이클 수를 예로 설명했지만, 레이턴시값은 클록 사이클 수에 대응한 레벨값이어도 된다.
상기에서는, 메모리 칩 (M0) 에서의 데이터의 판독에 대해 설명했지만, 메모리 칩 (M1 및 M2) 에 대해서도 동일한 동작을 실행할 수 있는 것은 말할 필요도 없 다.
특별히 한정되지 않지만, 리스폰스 큐 (RsQ) 에 입력된 데이터는 정보 처리 회로 (CPU0, CPU1, CPU2 및 CPU3) 중 어느 것으로 데이터가 처리된다.
다음으로, 정보 처리 장치 (CPU_CHIP) 와 메모리 칩 (M1) 의 데이터 전송에 대해 설명한다.
특별히 한정되지 않지만, 메모리 칩 (M0, M1, M2) 의 리퀘스트 큐 제어 회로 (RqCT) 에는 리퀘스트 큐는 2 개 존재하고, 리퀘스트가 엔트리되어 있지 않은 상태이다. 또, 메모리 칩 (M0, M1, M2) 의 리스폰스 큐 제어 회로 (RsCT) 에는 리스폰스 큐가 2 개 존재하고, 메모리 칩 (M0 및 M1) 의 리스폰스 큐에는 리스폰스가 이미 1 개 엔트리되어 있는 경우의 데이터 전송에 대해 설명한다.
정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 1, 뱅크 액티브 명령 (BA), 뱅크 어드레스 (BK0), 페이지 어드레스 (Page0) 를 다중화한 리퀘스트 (ReqBAm1) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다.
계속해서, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 1, 16 바이트 판독 명령 (RD16), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Col31) 를 다중화한 리퀘스트 (ReqRD16m1) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다 (도 7 : Step 1).
메모리 칩 (M0) 은, 정보 처리 장치 (CPU_CHIP) 로부터의 리퀘스트 (ReqBAm1 와 ReqRD16m1) 를 순서대로 자신의 리퀘스트 큐 제어 회로 (RqCT) 에 저장한다 (도 7 : Step 2).
메모리 칩 (M0) 은, 리퀘스트 (ReqBAm1 및 ReqRD16m1) 에 포함되는 ID 값 1 과 자신의 ID 레지스터의 값 2 를 순서대로 비교한다 (도 7 : Step 3). 비교 결과가 불일치하기 때문에, 메모리 칩 (M0) 은 리퀘스트 (ReqBAm1 및 ReqRD16m1) 를 자신에 대한 리퀘스트는 아닌 것으로 판단하고, 리퀘스트 신호 (RqMux1) 를 통해서 순서대로 메모리 칩 (M1) 에 전송한다 (도 7 : Step 7).
메모리 칩 (M1) 은, 메모리 칩 (M0) 으로부터의 리퀘스트 (ReqBAm1 및 ReqRD16m1) 를 자신의 리퀘스트 큐 제어 회로 (RqCT) 에 저장한다 (도 7 : Step 2).
메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqBAm1) 에 포함되는 ID 값 1 과 자신의 ID 레지스터의 값 1 을 비교한다 (도 7 : Step 3). 쌍방은 일치하므로, 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqBA1) 를 메모리 회로 (MemVL) 에 송신한다. 메모리 회로 (MemVL) 는, 리퀘스트 (ReqBAm1) 에 뱅크 액티브 명령 (BA), 뱅크 어드레스 (BK0), 페이지 어드레스 (Row0) 에 의해, 지정된 1 페이지분 (특별히 한정되지 않지만 1k 바이트분) 의 메모리 셀이 활성화되어 센스 증폭기에 전송된다.
다음으로, 메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRD16m1) 에 포함되는 ID 값 1 과 자신의 ID 레지스터의 값 1 을 비교한다. 쌍방은 일치하므로, 리퀘스트 큐 제어 회로 (RqCT) 는, 리퀘스트 (ReqRDm16) 를 메모리 회로 (MemVL) 에 송신한다.
또, 메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는, 판독 리퀘스트 (ReqRD16m1) 를 메모리 회로 (MemVL) 에 송신할 때에는, 레이턴시값 출력 레지스터 (LRG) 의 설정에 따라, 리퀘스트 (ReqRD16m1) 에 포함되는 ID 값 1 과 레이턴시값 출력 레지스터 (LRG) 내의 레이턴시값 출력 플래그 정보 (LRGFlag) 값 1 을 리스폰스 큐 제어 회로 (RsCT) 내의 레이턴시 계산 회로 (LA) 에 송신한다.
레이턴시 계산 회로 (LA) 는 받은 레이턴시값 출력 플래그 정보 (LRGFlag) 값이 1 인 것을 확인하고 (도 7 : Step 4), 리퀘스트 (ReqRD16m1) 에 대한 데이터가 리스폰스 신호 (RsMux0) 를 통해서, 정보 처리 장치 (CPU_CHIP) 에 출력될 때까지의 레이턴시값 (LaRd1) 을 계산한다 (도 7 : Step 5). 다음으로 리스폰스 큐 제어 회로 (RsCT) 는, ID 값 1 과 계산한 레이턴시값 (LaRd1) 을 포함한 리스폰스 (RsLa1) 를 리스폰스 신호 (RsMux0) 를 통해서, 메모리 칩 (M0) 에 송신한다 (도 7 : Step 6).
리스폰스 (RsLa1) 를 받은 메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 는 리스폰스 (RsLa1) 에 포함되는 레이턴시값 (LaRd1) 을 기초로, 정보 처리 장치 (CPU_CHIP) 에 출력될 때까지의 레이턴시값 (LaRd2) 을 계산하고, 리스폰스 (RsLa1) 에 포함되는 ID 값 1 과 계산한 레이턴시값 (LaRd2) 을 포함한 리스폰스 (RsLa2) 를 리스폰스 신호 (RsMux0) 를 통해서, 정보 처리 장치 (CPU_CHIP) 에 송신한다.
정보 처리 장치 (CPU_CHIP) 의 메모리 제어 회로 (CON) 는, 리스폰스 (RsLa2) 를 리스폰스 큐 (RsQ) 에 받는다. 정보 처리 장치 (CPU_CHIP) 는, 리 스폰스 큐 (RsQ) 에 송신된 리스폰스 (RsLa2) 에 포함되는 ID 값 1 및 레이턴시값 (LaRd2) 에 의해, 메모리 칩 (M1) 으로부터 언제까지 데이터가 송신되는지를 미리 확인할 수 있다.
다음으로 메모리 칩 (M1) 의 메모리 회로 (MemNV1) 로부터 리퀘스트 (ReqRD16m1) 에 포함되는 16 바이트 판독 명령 (RD16), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Col31) 에 의해, 메모리 회로 (MemNV1) 의 뱅크 0 의 센스 증폭기에 유지되어 있는 데이터 중에서, 칼럼 어드레스 (Col31) 를 개시 어드레스로 한 16 바이트분의 데이터가 판독되고, ID 레지스터값 1 을 포함하여, 리스폰스 큐 제어 회로 (RsCT) 에 리스폰스 (RsRD16m1) 로서 전송된다.
메모리 칩 (M1) 의 리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 신호 (RsMux0) 를 통해서, 리스폰스 (RsRD16m1) 를 메모리 칩 (M0) 에 출력한다. 메모리 칩 (M0) 은, 리스폰스 (RsRD16m1) 를 받아 정보 처리 장치 (CPU_CHIP) 에 출력한다.
정보 처리 장치 (CPU_CHIP) 의 메모리 제어 회로 (CON) 는 리스폰스 (RsRD16m1) 를 리스폰스 큐 (RsQ) 에 받는다. 정보 처리 장치 (CPU_CHIP) 는, 리스폰스 큐 (RsQ) 에 송신된 리스폰스 (RsRD16m1) 에 포함되는 ID 값 1 에 의해, 리퀘스트 (RqRD16m1) 에 대응하는 데이터가 정확하게 메모리 칩 (M0) 으로부터 송신된 것을 확인할 수 있다.
메모리 칩 (M1) 에서의 리스폰스 큐 제어 회로 (RsCT) 에서의, 레이턴시값 (LaRd1) 의 계산 방법에 대해 설명한다. 특별히 한정되지 않지만, 레이턴시값 (LaRd1) 은 Tinitial + Sum(Tcycle) 로 해도 된다.
리퀘스트 (ReqNRD4m1) 가 메모리 회로 (MemNV1) 에 송신되고 나서, 원하는 데이터가 판독되고 리스폰스 큐 제어 회로 (RsCT) 에 리스폰스 (RsRD16m1) 로서 입력될 때까지의 시간이며, 특별히 한정되지 않지만, 80 ㎱ 정도이기 때문에 40 클록 사이클 정도이다.
Sum(Tcycle) 는 리스폰스 큐 제어 회로 (RsCT) 가 장비하고 있는 리스폰스 큐 내에서, 이미 리스폰스 데이터를 유지하고 있는 리스폰스 큐에 관해서, 그 리스폰스 데이터 모두를 출력하기 위해 필요한 데이터 전송 클록 사이클 수 (Tcycle) 의 총합이다.
메모리 칩 (M1) 의 리스폰스 큐 제어 회로 (RsCT) 가 장비하고 있는 리스폰스 큐 내에서, 이미 1 개의 리스폰스 큐에 리스폰스 데이터가 유지되어 있고, 그 리스폰스 데이터의 데이터 전송 클록 사이클 수를 16 으로 하면, 리스폰스 (RsRD16m1) 에 대한 출력 데이터의 레이턴시값 (LaRd1) 은 40 + 16 = 56 사이클이 된다.
다음으로, 메모리 칩 (M1) 으로부터 레이턴시값 (LaRd1) 을 받았을 때의, 메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 에서의 레이턴시값 (LaRd2) 의 계산 방법에 대해 설명한다. 특별히 한정되지 않지만, 레이턴시값 (LaRd2) 은 레이턴시값 (LaRd1) + Sum(Tcycle) 로 해도 된다.
메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 가 장비하고 있는 리스폰스 큐 내에서, 이미 1 개의 리스폰스 큐에 리스폰스 데이터가 유지되어 있고, 그 리스폰스 데이터의 데이터 전송 클록 사이클 수를 8 로 하면, 레이턴시값 (LaRd2) 은 56 + 8 = 64 사이클이 된다.
여기서는, 메모리 칩 (M0 및 M1) 이 출력하는 레이턴시값은, 구체적인 클록 사이클 수를 예로 설명했지만, 레이턴시값은 레이턴시의 사이클 수에 대응한 레벨값이어도 된다.
특별히 한정되지 않지만, 리스폰스 큐 (RsQ) 에 입력한 데이터는 정보 처리 회로 (CPU0, CPU1, CPU2 및 CPU3) 중 어느 것으로 데이터가 처리된다.
다음으로, 정보 처리 장치 (CPU_CHIP) 와 메모리 칩 (M2) 의 데이터 전송에 대해 설명한다. 특별히 한정되지 않지만 메모리 칩 (M2) 은 NAND 형 플래시 메모리 셀을 이용한 NAND 형 플래시 메모리이다. NAND 형 플래시 메모리는 재기입을 반복함으로써, 신뢰성이 저하되고, 기입할 때 기입한 데이터가, 판독할 때에는 상이한 데이터가 되거나, 재기입시에 데이터가 기입되지 않거나 하는 경우가 드물게 있기 때문에, 512 Byte 분의 데이터와, 이 512 Byte 분의 데이터에 에러가 발생했을 때, 그 에러를 정정하기 위한 16 Byte 분의 ECC 코드가 1 페이지분 (512 Byte + 16 Byte) 의 데이터로서 관리되고 있다.
특별히 한정되지 않지만, 메모리 칩 (M0, M1, M2) 의 리퀘스트 큐 제어 회로 (RqCT) 에는 리퀘스트 큐는 2 개 존재하고, 리퀘스트가 엔트리되어 있지 않은 상태이다. 또, 메모리 칩 (M0, M1, M2) 의 리스폰스 큐 제어 회로 (RsCT) 에는 리스폰스 큐가 2 개 존재하고, 메모리 칩 (M0, M1 및 M2) 의 리스폰스 큐에는 리스폰스가 이미 1 개 엔트리되어 있는 경우의 데이터 전송에 대해 설명한다.
정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 3, 뱅크 액티브 명령 (BA), 뱅크 어드레스 (BK0), 섹터 어드레스 (Sadd0) 를 다중화한 리퀘스트 (ReqBAm2) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다.
계속해서, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 3, 페이지 데이터 판독 명령 (RDp1), 뱅크 어드레스 (BK0), 페이지 어드레스 (Padd0) 를 다중화한 리퀘스트 (ReqRDp1m2) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다 (도 7 : Step 1).
메모리 칩 (M0) 은, 정보 처리 장치 (CPU_CHIP) 로부터의 리퀘스트 (ReqBAm2 와 ReqRDp1m2) 를 순서대로 자신의 리퀘스트 큐 제어 회로 (RqCT) 에 저장한다 (도 7 : Step 2).
메모리 칩 (M0) 은, 리퀘스트 (ReqBAm2 및 ReqRDp1m2) 에 포함되는 ID 값 3 과 자신의 ID 레지스터의 값 2 를 순서대로 비교한다 (도 7 : Step 3). 비교 결과가 불일치하기 때문에, 메모리 칩 (M1) 은 리퀘스트 (ReqBAm2 및 ReqRDp1m2) 를 자신에 대한 리퀘스트는 아닌 것으로 판단하고, 리퀘스트 신호 (RqMux1) 를 통해서 순서대로 메모리 칩 (M1) 에 전송한다 (도 7 : Step 7).
메모리 칩 (M1) 은, 메모리 칩 (M0) 으로부터의 리퀘스트 (ReqBAm2 및 ReqRDp1m2) 를 자신의 리퀘스트 큐 제어 회로 (RqCT) 에 저장한다 (도 7 : Step 2).
메모리 칩 (M1) 은, 리퀘스트 (ReqBAm2 및 ReqRDp1m2) 에 포함되는 ID 값 3 과 자신의 ID 레지스터의 값 3 을 순서대로 비교한다 (도 7 : Step 3). 비교 결과는 불일치이기 때문에, 메모리 칩 (M1) 은 리퀘스트 (ReqBAm2 및 ReqRDp1m2) 를 자신에 대한 리퀘스트는 아닌 것으로 판단하고, 리퀘스트 신호 (RqMux1) 를 통해서 순서대로 메모리 칩 (M2) 에 전송한다 (도 7 : Step 7).
메모리 칩 (M2) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqBAm2) 에 포함되는 ID 값 3 과 자신의 ID 레지스터의 값 3 을 비교한다 (도 7 : Step 3). 쌍방은 일치하므로, 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqBmA2) 를 메모리 회로 (MemNV2) 에 송신한다.
메모리 회로 (MemNV2) 는, 리퀘스트 (ReqBAm2) 에 뱅크 액티브 명령 (BA), 뱅크 어드레스 (BK0), 섹터 어드레스 (Sadd0) 에 의해, 지정된 1 섹터분의 데이터를 버퍼 (BUF0) 에 전송한다. 특별히 한정되지 않지만 1 섹터분의 데이터는 4 페이지분 (특별히 한정되지 않지만 2k 바이트분) 의 데이터로 이루어진다. 특별히 한정되지 않지만, 1 섹터분의 데이터를 버퍼 (BUF0) 에 전송하기 위해 필요한 시간은 25 μsec 정도이다.
다음으로, 메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRDp1m2) 에 포함되는 ID 값 3 과 자신의 ID 레지스터의 값 3 을 비교한다. 쌍방은 일치하므로, 메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는, 리퀘스트 (ReqRDp1m2) 가 자신에 대한 리퀘스트인 것으로 판단한다.
메모리 회로 (MemNV2) 로부터 1 섹터분의 데이터가 버퍼 (BUF0) 에 전송된 후, 메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는, 리퀘스트 (ReqRDp1m2) 를 메모리 회로 (MemNV2) 에 송신한다.
또, 메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는, 판독 리퀘스트 (ReqRDp1m2) 를 메모리 회로 (MemVL) 에 송신할 때에는, 레이턴시값 출력 레지스터 (LRG) 의 설정에 따라, 리퀘스트 (ReqRDp1m2) 에 포함되는 ID 값 3 과 레이턴시값 출력 레지스터 (LRG) 내의 레이턴시값 출력 플래그 정보 (LRGFlag) 값 1 을 리스폰스 큐 제어 회로 (RsCT) 내의 레이턴시 계산 회로 (LA) 에 송신한다.
레이턴시 계산 회로 (LA) 는, 받은 레이턴시값 출력 플래그 정보 (LRGFlag) 값이 1 인 것을 확인하고 (도 7 : Step 4), 리퀘스트 (ReqRDp1m2) 에 대한 데이터가 리스폰스 신호 (RsMux2) 를 통해서 메모리 칩 (M1) 에 출력될 때까지의 레이턴시값 (LaRdm2) 을 계산한다 (도 7 : Step 5). 다음으로 리스폰스 큐 제어 회로 (RsCT) 는, ID 값 3 과 계산한 레이턴시값 (LaRdm2) 을 포함한 리스폰스 (RsLam2) 를 리스폰스 신호 (RsMux2) 를 통해서 메모리 칩 (M1) 에 송신한다 (도 7 : Step 6).
리스폰스 (RsLam2) 를 받은 메모리 칩 (M1) 의 리스폰스 큐 제어 회로 (RsCT) 는 리스폰스 (RsLam2) 에 포함되는 레이턴시값 (LaRdm2) 을 기초로, 메모리 칩 (M0) 에 출력될 때까지의 레이턴시값 (LaRdm21) 을 계산하고, 리스폰스 (RsLam2) 에 포함되는 ID 값 3 과 계산한 레이턴시값 (LaRdm21) 을 포함한 리스폰스 (RsLam21) 를 리스폰스 신호 (RsMux0) 를 통해서 메모리 칩 (M0) 에 송신한다.
리스폰스 (RsLam21) 를 받은 메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 는 리스폰스 (RsLam21) 에 포함되는 레이턴시값 (LaRdm21) 을 기초로, 정보 처리 장치 (CPU_CHIP) 에 출력될 때까지의 레이턴시값 (LaRdm210) 을 계산하고, 리스폰스 (RsLam21) 에 포함되는 ID 값 3 과 계산한 레이턴시값 (LaRdm210) 을 포함한 리스폰스 (RsLam210) 를 리스폰스 신호 (RsMux0) 를 통해서, 정보 처리 장치 (CPU_CHIP) 에 송신한다.
정보 처리 장치 (CPU_CHIP) 의 메모리 제어 회로 (CON) 는, 리스폰스 (RsLam210) 를 리스폰스 큐 (RsQ) 에 받는다. 정보 처리 장치 (CPU_CHIP) 는, 리스폰스 큐 (RsQ) 에 송신된 리스폰스 (RsLa2) 에 포함되는 ID 값 1 및 레이턴시값 (LaRdm210) 에 의해, 메모리 칩 (M2) 으로부터 언제까지 데이터가 송신되는지를 미리 확인할 수 있다.
리스폰스 큐 제어 회로 (RsCT) 는, 데이터 레지스터 (DREG0) 에 전송된 데이터 중에서 리퀘스트 (ReqRDp1m2) 에 포함되는 1 페이지 판독 명령 (RDp1), 뱅크 어드레스 (BK0) 및 페이지 어드레스 (Padd0) 에 의해 지정된 1 페이지 (512 Byte + 16 Byte) 분의 데이터를, 32 Byte 단위로, ID 레지스터값 3 을 포함하여, 리스폰스 (ResNDRDp1m2-0)∼리스폰스 (ResNDRDp1m2-7) 로서 순서대로 판독하고, 메모리 칩 (M1) 에 전송한다. 마지막으로, 페이지 어드레스 1 내의 16 Byte 분의 ECC 코드를 판독하고, ID 레지스터값 3 을 포함하여 리스폰스 (ResNDRDp1m2ECC) 로서, 리스폰스 신호 (RsMux2) 를 통해서 M1 에 전송한다. 데이터 레지스터 (DREG0) 내의 데이터로부터 리스폰스 큐에 판독될 때까지의 시간은 특별히 한정되지 않지만, 50 ㎱ 정도이다.
리스폰스 (ResNDRDp1m2-0, ResNDRDp1m2-1, ResNDRDp1m2-2, ResNDRDp1m2-3, ResNDRDp1m2-4, ResNDRDp1m2-5, ResNDRDp1m2-6), 리스폰스 (ResNDRDp1m2-7) 및 리스폰스 (ResNDRDp1m2ECC) 는, 순서대로 메모리 칩 (M1) 에 전송된 후, 리스폰스 신호 (RsMux1) 를 통해서 메모리 칩 (M0) 에 전송되고, 또한 리스폰스 신호 (RsMux0) 를 통해서 정보 처리 장치 (CPU_CHIP) 에 전송된다.
정보 처리 장치 (CPU_CHIP) 의 메모리 제어 회로 (CON) 는 순서대로, 리스폰스 (ResNDRDp1m2-0, ResNDRDp1m2-1, ResNDRDp1m2-2, ResNDRDp1m2-3, ResNDRDp1m2-4, ResNDRDp1m2-5, ResNDRDp1m2-6), 리스폰스 (ResNDRDp1m2-7) 및 리스폰스 (ResNDRDp1m2ECC) 를 리스폰스 큐 (RsQ) 에 받는다. 정보 처리 장치 (CPU_CHIP) 는, 리스폰스 큐 (RsQ) 가 송신된 이들 리스폰스에 포함되는 ID 값 2 에 의해, 이들 리스폰스가 메모리 칩 (M2) 으로부터 송신된 것을 확인할 수 있다.
정보 처리 장치 (CPU_CHIP) 는, 메모리 칩 (M2) 으로부터 송신된 데이터에 대해, 정보 처리 회로 (CPU0, CPU1, CPU2, CPU3) 중 어느 것으로, ECC 코드를 이용하여 에러를 검출한다. 에러가 없으면, 그 데이터에 대해 정보 처리 회로 (CPU0, CPU1, CPU2, CPU3) 중 어느 것이 데이터를 처리한다. 에러가 있으면 정보 처리 회로 (CPU0, CPU1, CPU2, CPU3) 중 어느 것으로 에러를 정정한 후, 에러가 정정된 데이터에 대해 정보 처리 회로 (CPU0, CPU1, CPU2, CPU3) 중 어느 것이 데이터를 처리한다.
메모리 칩 (M2) 에서의 리스폰스 큐 제어 회로 (RsCT) 에서의, 레이턴시값 (LaRdm2) 의 계산 방법에 대해 설명한다. 특별히 한정되지 않지만, 레이턴시값 (LaRdm2) 은 Tinitial + Sum(Tcycle) 로 해도 된다.
리퀘스트 (ReqRDp1m2) 가 메모리 회로 (MemNV1) 에 송신되고 나서, 원하는 데이터가 데이터 레지스터 (DREG0) 로부터 판독되고, 리스폰스 큐 제어 회로 (RsCT) 에 리스폰스 (ResNDRDp1m2-0) 로서 입력될 때까지의 시간이며, 특별히 한정되지 않지만, 50 ㎱ 정도이기 때문에 25 클록 사이클 정도이다.
Sum(Tcycle) 는 리스폰스 큐 제어 회로 (RsCT) 가 장비하고 있는 리스폰스 큐 내에서, 이미 리스폰스 데이터를 유지하고 있는 리스폰스 큐에 관해서, 그 리스폰스 데이터 모두를 출력하기 위해 필요한 데이터 전송 클록 사이클 수 (Tcycle) 의 총합이다.
메모리 칩 (M2) 의 리스폰스 큐 제어 회로 (RsCT) 가 장비하고 있는 리스폰스 큐 내에서, 이미 1 개의 리스폰스 큐에 리스폰스 데이터가 유지되어 있고, 그 리스폰스 데이터의 데이터 전송 클록 사이클 수를 16 으로 하면, 리스폰스 (ResNDRDp1m2-0) 에 대한 출력 데이터의 레이턴시값 (LaRdm2) 은 25 + 16 = 41 사이클이 된다.
메모리 칩 (M1) 에서의 리스폰스 큐 제어 회로 (RsCT) 에서의, 레이턴시값 (LaRdm21) 의 계산 방법에 대해 설명한다. 특별히 한정되지 않지만, 레이턴시값 (LaRdm21) 은 LaRdm2 + Sum(Tcycle) 로 해도 된다.
Sum(Tcycle) 는 리스폰스 큐 제어 회로 (RsCT) 가 장비하고 있는 리스폰스 큐 내에서, 이미 리스폰스 데이터를 유지하고 있는 리스폰스 큐에 관해서, 그 리스폰스 데이터 모두를 출력하기 위해 필요한 데이터 전송 클록 사이클 수 (Tcycle) 의 총합이다.
메모리 칩 (M1) 의 리스폰스 큐 제어 회로 (RsCT) 가 장비하고 있는 리스폰스 큐 내에서, 이미 3 개의 리스폰스 큐에 리스폰스 데이터가 유지되어 있고, 그 리스폰스 데이터의 데이터 전송 클록 사이클 수를 16 × 3 으로 하면, 레이턴시값 (LaRdm21) 은 41 + 48 = 89 사이클이 된다.
다음으로, 메모리 칩 (M1) 으로부터 레이턴시값 (LaRdm21) 을 받았을 때의, 메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 에서의 레이턴시값 (LaRdm210) 의 계산 방법에 대해 설명한다. 특별히 한정되지 않지만, 레이턴시값 (LaRdm210) 은 레이턴시값 (LaRdm21) + Sum(Tcycle) 로 해도 된다.
Sum(Tcycle) 는 리스폰스 큐 제어 회로 (RsCT) 가 장비하고 있는 리스폰스 큐 내에서, 이미 리스폰스 데이터를 유지하고 있는 리스폰스 큐에 관해서, 그 리스폰스 데이터 모두를 출력하기 위해 필요한 데이터 전송 클록 사이클 수 (Tcycle) 의 총합이다.
메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 가 장비하고 있는 리스폰스 큐 내에서, 이미 3 개의 리스폰스 큐에 리스폰스 데이터가 유지되어 있고, 그 리스폰스 데이터의 데이터 전송 클록 사이클 수를 16 × 3 으로 하면, 레이턴시값 (LaRdm210) 은 89 + 48 = 137 사이클이 된다.
여기서는, 메모리 칩 (M0, M1 및 M2) 이 출력하는 레이턴시값은, 구체적인 클록 사이클 수를 예로 설명했지만, 레이턴시값은 레이턴시의 사이클 수에 대응한 레벨값이어도 된다.
상기에서는, 메모리 칩 (M2) 에서의 데이터의 판독에 대해 설명했지만, 메모 리 칩 (M0 및 M1) 에 대해서도 동일한 동작을 실행할 수 있는 것은 말할 필요도 없다.
특별히 한정되지 않지만, 리스폰스 큐 (RsQ) 에 입력된 데이터는 정보 처리 회로 (CPU0, CPU1, CPU2 및 CPU3) 중 어느 것으로 데이터가 처리된다.
이상 설명한 바와 같이, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 모듈 (MEM) 로의 판독 리퀘스트에 대한 리스폰스의 레이턴시를, 이 리스폰스가 메모리 모듈 (MEM) 로부터 정보 처리 장치 (CPU_CHIP) 에 출력되기 전에, 미리 메모리 모듈 (MEM) 로부터 정보 처리 장치 (CPU_CHIP) 에 송신함으로써, 정보 처리 장치 (CPU_CHIP) 는 미리 데이터의 도착 시각을 알 수 있고, 데이터 도착 전에 어느 처리를 어디까지 실시할지에 대해 유연하게 대응할 수 있어, 처리 성능의 향상을 도모할 수 있다.
<통상 동작의 설명 : 큐의 예약>
정보 처리 장치 (CPU_CHIP) 가 실행하는 어플리케이션 프로그램에 따라서는, 그 어플리케이션 프로그램의 실행 중에 판독 데이터의 최대 레이턴시의 보증이 필요한 경우가 있다. 이 판독 데이터의 최대 레이턴시를 보증하기 위한 리퀘스트 큐 및 리스폰스 큐의 예약 방법에 대해 도 1 과 도 8 을 이용하여 설명한다.
메모리 모듈 (MEM) 내의 메모리 (M0, M1 및 M2) 가 장비하고 있는 리퀘스트 큐 및 리스폰스 큐 중에서 빈 상태에 있는 큐에 대한 예약 방법의 일례에 대해 설명한다.
특별히 한정되지 않지만, 메모리 칩 (M1) 에 대한 리퀘스트 및 리스폰스가 우선적으로 또한 원활하게 처리되기 위해 실시하는 리퀘스트 큐 및 리스폰스 큐의 예약 방법에 대해 설명한다.
특별히 한정되지 않지만, 메모리 칩 (M0, M1, M2) 각각의 ID 레지스터값이 2, 1 및 3 으로 설정되어 있다.
먼저, 정보 처리 장치 (CPU_CHIP) 는, 자신의 리스폰스 큐 (RsQ) 에 있는 리스폰스 큐 내에서 메모리 칩 (M1) 으로부터 개시되는 리스폰스를 전용으로 저장하기 위한 빈 상태에 있는 리스폰스 큐를, 특별히 한정되지 않지만, 1 개만 예약한다. 만약 빈 상태의 리스폰스 큐가 없으면, 빈 상태의 리스폰스 큐가 생길 때까지 기다린다.
그 후, 정보 처리 장치 (CPU_CHIP) 는, 큐를 예약하기 위해 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 1, 큐 예약 명령 (QRv), 예약하는 큐의 수 (QRvN) 값 1 을 다중화한 리퀘스트 (ReqNQRv) 를 메모리 칩 (M0) 에 전송한다 (도 8 : Step 1).
메모리 칩 (M0) 은, 리퀘스트 (ReqNQRv) 를 자신의 리퀘스트 큐 제어 회로 (RqCT) 에 저장한다 (도 8 : Step 2).
그 후, 메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqNQRv) 에 포함되는 ID 값 1 과 자신의 ID 레지스터의 값 2 를 비교한다 (도 8 : Step 3). 쌍방은 불일치하기 때문에, 메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는, 리퀘스트 (ReqNQRv) 에 포함되는 ID 값 1, 큐 예약 명령 (QRv), 및 QRvN 값 1 에 의해, 메모리 칩 (M1) 에 대한 리퀘스트를 전용으로 저장하기 위한 빈 상태에 있는 리퀘스트 큐를 1 개만 예약한다. 만약 빈 상태의 리퀘스트 큐가 없으면, 빈 상태의 리퀘스트 큐가 생길 때까지 기다려 예약한다 (도 8 : Step 7).
또한, 리퀘스트 큐 제어 회로 (RqCT) 는, 리퀘스트 (ReqNQRv) 를 리스폰스 큐 제어 회로 (RsC) 에 전송한다.
메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 는, 리퀘스트 (ReqNQRv) 에 포함되는 ID 값 1, 큐 예약 명령 (QRv), 및 QRvN 값 1 에 의해, 메모리 칩 (M0) 에 입력되는 메모리 칩 (M1) 으로부터의 판독 데이터를 포함한 리스폰스를 전용으로 저장하기 위한 빈 상태에 있는 리스폰스 큐를 1 개만 예약한다. 만약 빈 상태의 리스폰스 큐가 없으면, 빈 상태의 리스폰스 큐가 생길 때까지 기다려 예약한다 (도 8 : Step 8).
메모리 칩 (M0) 은, 빈 상태의 리퀘스트 큐 및 리스폰스 큐의 예약을 완료한 후, 리퀘스트 (ReqNQRv) 에 포함되는 ID 값 1 에 의해, 리퀘스트 (ReqNQRv) 를 리퀘스트 신호 (RqMux1) 를 통해서 메모리 칩 (M1) 에 전송한다 (도 8 : Step 9).
메모리 칩 (M1) 은, 리퀘스트 (ReqNQRv) 를 자신의 리퀘스트 큐 제어 회로 (RqCT) 에 저장한다 (도 8 : Step 2). 그 후, 메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqNQRv) 에 포함되는 ID 값 1 과 자신의 ID 레지스터의 값 1 을 비교한다 (도 8 : Step 3). 쌍방은 일치하므로, 메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는, 리퀘스트 (ReqNQRv) 에 포함되는 ID 값 1, 큐 예약 명령 (QRv), 및 QRvN 값 1 에 의해, 메모리 칩 (M1) 에 대한 리퀘스트를 전문으로 저장하기 위한 빈 상태에 있는 리퀘스트 큐를 1 개만 예약한다. 만약 빈 상태의 리퀘스트 큐가 없으면, 빈 상태의 리퀘스트 큐가 생길 때까지 기다려 예약한다 (도 8 : Step 4).
또한, 리퀘스트 큐 제어 회로 (RqCT) 는, 리퀘스트 (ReqNQRv) 를 리스폰스 큐 제어 회로 (RsC) 에 전송한다.
메모리 칩 (M1) 의 리스폰스 큐 제어 회로 (RsCT) 는, 리퀘스트 (ReqNQRv) 에 포함되는 ID 값 1, 큐 예약 명령 (QRv), 및 QRvN 값 1 에 의해, 메모리 칩 (M1) 으로부터의 리스폰스를 전문으로 저장하기 위한 빈 상태에 있는 리스폰스 큐를 1 개만 예약한다. 만약 빈 상태의 리스폰스 큐가 없으면, 빈 상태의 리스폰스 큐가 생길 때까지 기다려 예약한다 (도 8 : Step 5).
메모리 칩 (M1) 은, 빈 상태의 리퀘스트 큐 및 리스폰스 큐의 예약을 완료한 후, 예약 완료 신호 (RvFlg) 를, 리스폰스 신호 (RsMux1) 를 통해서 메모리 칩 (M0) 에 전송한다 (도 8 : Step 6).
메모리 칩 (M0) 은, 받은 예약 완료 신호 (RvFlg) 를 리스폰스 신호 (RsMux0) 를 통해서 정보 처리 장치 (CPU_CHIP) 에 전송한다.
정보 처리 장치 (CPU_CHIP) 는, 예약 완료 신호 (RvFlg) 를 받고, 리퀘스트 (ReqNQRv) 에 의한 큐의 예약이 완료된 것을 알 수 있다.
큐의 예약이 완료된 후, 정보 처리 장치 (CPU_CHIP) 가, 메모리 칩 (M1) 에 대한 데이터 판독 리퀘스트를 실시한 경우의 동작에 대해 설명한다.
정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 1, 16 바이트 데이터 판독 명령 (NRD16), 어드레스 (Add63) 를 다중화한 리퀘스트 (ReqNRD16m1) 를 메모리 칩 (M0) 에 전송한다.
메모리 칩 (M0) 에서는, 메모리 칩 (M1) 에 대한 리퀘스트를 받기 위한 빈 상태의 리퀘스트 큐가 이미 예약되어 있기 때문에, 리퀘스트 (ReqNRD16m1) 를 이 예약된 리퀘스트 큐에 저장한다. 다음으로 메모리 칩 (M0) 은 리퀘스트 (ReqNRD16m1) 에 포함되는 ID 값 1 과 자신의 ID 레지스터의 값 2 를 비교한다. 결과는 불일치하기 때문에, 리퀘스트 (ReqNRD16m1) 는, 리퀘스트 신호 (RqMux1) 를 통해서 메모리 칩 (M1) 에 전송된다.
메모리 칩 (M1) 에서는, 메모리 칩 (M1) 에 대한 리퀘스트를 받기 위한 빈 상태에 있는 리퀘스트 큐가 이미 예약되어 있기 때문에, 리퀘스트 (ReqNRD16m1) 를 이 예약된 리퀘스트 큐에 저장한다. 다음으로 메모리 칩 (M1) 은 리퀘스트 (ReqNRD16m1) 에 포함되는 ID 값 1 과 자신의 ID 레지스터의 값 1 을 비교하고, 결과가 일치된 것을 확인한다. 또한, 리퀘스트 (ReqNRD16m1) 에 대응하는 데이터를 받기 위한 빈 상태에 있는 리스폰스 큐가 이미 예약되어 있기 때문에, 리퀘스트 (ReqNRD16m1) 는 바로 메모리 회로 (MemNV1) 에 송신되고, 이 리퀘스트 (ReqNRD16m1) 에 대응하는 데이터가 메모리 회로 (MemNV1) 로부터 판독되고, ID 값 1 과 함께, 리스폰스 (ResNRD16m1) 로서 예약된 리스폰스 큐에 저장된다.
메모리 칩 (M1) 은 리스폰스 신호 (RsMux1) 로부터 리스폰스 (ResNRD16m1) 를 메모리 칩 (M0) 에 출력한다.
메모리 칩 (M0) 에서는, 메모리 칩 (M1) 으로부터의 리스폰스를 받기 위한 빈 상태의 리스폰스 큐가 이미 예약되어 있기 때문에 리스폰스 (ResNRD16m1) 를 바 로 이 예약된 리퀘스트 큐에 저장한다. 그 후 바로, 메모리 칩 (M0) 은 리스폰스 신호 (RsMux0) 로부터, 리스폰스 (ResNRD16m1) 를 정보 처리 장치 (CPU_CHIP) 에 출력한다.
정보 처리 장치 (CPU_CHIP) 에서는, 메모리 칩 (M0) 으로부터의 리스폰스를 받기 위한 빈 상태의 리스폰스 큐가 이미 예약되어 있기 때문에 리스폰스 (ResNRD16m1) 를 바로 이 예약된 리퀘스트 큐에 저장한다.
메모리 칩 (M1) 에 대한 리퀘스트 및 리스폰스에 관한 큐의 예약 방법 및 예약 후의 데이터 전송 동작에 대해 설명했지만, 메모리 칩 (M0 및 M2) 에 대해서도 동일한 방법으로 큐의 예약을 실시할 수 있고, 동일한 동작으로 데이터 전송을 실시할 수 있다.
이상 설명한 바와 같이, 빈 상태에 있는 리퀘스트 큐 및 리스폰스 큐를 예약함으로써, 대상이 되는 리퀘스트 및 리스폰스를 우선적으로 또한 원활하게 처리할 수 있고, 어플리케이션 실행 중에 필요한 장면에서, 판독 데이터의 최대 레이턴시를 보증할 수 있다.
또한, 빈 상태에 있는 리퀘스트 큐 및 리스폰스 큐의 예약은 임의의 메모리 칩에 대해 실시할 수 있고, 또 그 예약하는 리퀘스트 큐 및 리스폰스 큐의 수도 임의로 변경할 수 있어, 다양한 시스템에 유연하게 대응할 수 있다.
<통상 동작의 설명 : 인·오더 동작 : 칩 내, 아웃 오브·오더 동작 : 칩 사이>
정보 처리 장치 (CPU_CHIP) 가 프로그램 실행에 필요한 프로그램 코드나 데 이터를 메모리 칩 (M0, M1, M2) 에 할당하는 경우, 프로그램의 실행 속도를 향상시키기 위해, 그 할당 방법에 적합한 메모리 칩 (M0, M1 및 M2) 의 리스폰스 순서 설정 레지스터 (RRG) 의 값을 설정하여 동작시킬 수 있다.
메모리 (M0) 에는 프로그램 A 와 데이터 A 가 저장되고, 메모리 (M1) 에는 프로그램 B 와 데이터 B 가 저장되고, 메모리 (M2) 에는 프로그램 C 와 데이터 C 가 저장되어 있다. 프로그램 A 와 프로그램 B 와 프로그램 C 는 완전히 독립적으로 동작하는 프로그램이고, 데이터 A 는 프로그램 A 에 관련된 데이터이고, 데이터 B 는 프로그램 B 에 관련된 데이터이고, 데이터 C 는 프로그램 C 에 관련된 데이터이다.
이와 같이 프로그램 코드나 데이터를 메모리 칩 (M0, M1, M2) 에 할당한 경우의, 메모리 칩 (M0, M1 및 M2) 의 리스폰스 순서 설정 레지스터 (RRG) 에 대한 설정값을 도 6(a) 에 나타낸다.
이하에서는, 정보 처리 장치 (CPU_CHIP) 가, 메모리 모듈 (MEM) 내의 메모리 칩 (M1) 의 뱅크 1 에 데이터 판독 리퀘스트와, 메모리 칩 (M0) 의 뱅크 0 에 데이터 기입 리퀘스트와, 계속해서 메모리 칩 (M0) 의 뱅크 0 에 데이터 판독 리퀘스트를 송신하고, 또한 연속하여 메모리 칩 (M0) 의 뱅크 1 에 데이터 판독 리퀘스트를 송신한 경우의 데이터 전송에 대해 설명한다.
특별히 한정되지 않지만, 메모리 칩 (M0, M1, M2) 각각의 ID 레지스터값이 2, 1 및 3 으로 설정되어 있다.
정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 1, 16 바이트 데이터 판독 명령 (RD16), 뱅크 어드레스 (BK1), 칼럼 어드레스 (Col31) 를 다중화한 리퀘스트 (ReqRD16b1m1) 를 메모리 칩 (M0) 에 전송한다.
다음으로, ID 값 2, 32 바이트 데이터 기입 명령 (WT32), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Col63), 및 32 바이트분의 기입 데이터를 다중화한 리퀘스트 (ReqWT32b0m0) 를 메모리 칩 (M0) 에 전송한다.
계속해서, ID 값 2, 32 바이트 데이터 판독 명령 (RD32), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Col32) 를 다중화한 리퀘스트 (ReqRD32b0m0) 를 메모리 칩 (M0) 에 전송한다.
또한, 계속해서, ID 값 2, 16 바이트 데이터 판독 명령 (RD16), 뱅크 어드레스 (BK1), 칼럼 어드레스 (Col32) 를 다중화한 리퀘스트 (ReqRD16b1m0) 를 메모리 칩 (M0) 에 전송한다.
메모리 칩 (M0) 은, 정보 처리 장치 (CPU_CHIP) 로부터의 리퀘스트 (ReqRD16b1m1) 와, 리퀘스트 (ReqWT32b0m0) 와, 리퀘스트 (ReqRD32b0m0) 와, 리퀘스트 (ReqRD16b1m0) 를 순서대로, 자신의 리퀘스트 큐 제어 회로 (RqCT) 에 저장한다. 또, 리퀘스트 큐 제어 회로 (RqCT) 의 리퀘스트 번호 설정 회로 (RNB) 는, 이들 리퀘스트를 저장할 때, 리퀘스트의 입력순으로 리퀘스트에 대응한 리퀘스트 번호 (ReqN) 를 부가한다.
특별히 한정되지 않지만, 리퀘스트의 입력순으로, 리퀘스트 (ReqRD16b1m1) 에는 리퀘스트 번호 (ReqN) 값 1 이, 리퀘스트 (ReqWT32b0m0) 에는 리퀘스트 번호 (ReqN) 값 2 가, 리퀘스트 (ReqRD32b0m0) 에는 리퀘스트 번호 (ReqN) 값 3 이, 리 퀘스트 (ReqRD16b1m0) 에는 리퀘스트 번호 (ReqN) 값 4 가 부가된다.
메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRD16b1m1) 에 포함되는 ID 값 1 과 자신의 ID 레지스터의 값 2 를 비교한다. 결과는 불일치하기 때문에, 리퀘스트 (ReqRD16b1m1) 및, 이 리퀘스트에 대응한 리퀘스트 번호 (ReqN) 값 1 이, 리퀘스트 신호 (RqMux1) 를 통해서 메모리 칩 (M1) 에 전송된다.
다음으로 메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqWT32b0m0) 에 포함되는 ID 값 2 와 자신의 ID 레지스터의 값 2 를 비교하고, 일치하므로, 리퀘스트 (ReqWT32b0m0) 를 자신의 메모리 회로 (MemVL) 에 송신한다.
메모리 칩 (M0) 의 메모리 회로 (MemVL) 에서는, 리퀘스트 (ReqWT32b0m0) 에 포함되는 32 바이트 기입 명령 (WT32), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Co63) 에 의해, 메모리 회로 (MemVL) 의 메모리 뱅크 0 의 센스 증폭기를 통해서 메모리 뱅크 0 에, 칼럼 어드레스 63 를 개시 어드레스로 한 32 바이트분의 데이터의 기입 동작을 개시한다.
다음으로, 메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRD32b0m0) 및 리퀘스트 (ReqRD16b1m0) 에 포함되는, 각각의 ID 값 2 와 자신의 ID 레지스터의 값 2 를 비교하고, 일치하므로, 리퀘스트 (ReqRD32b0m0) 의 리퀘스트 번호 (ReqN) 값 3 및 리퀘스트 (ReqRD16b1m0) 의 리퀘스트 번호 (ReqN) 값 4 는 리스폰스 큐 제어 회로 (RsCT) 에 전송된다.
메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 는, 리퀘스트 번호 (ReqN) 값 3 을 리스폰스 번호 (ResTN) 값 3 으로서, 또 리퀘스트 번호 (ReqN) 값 4 를 리스폰스 번호 (ResTN) 값 4 로서 순서대로 리스폰스 번호 테이블 (TB) 에 엔트리한다.
이로써, 리스폰스 번호 (ResTN) 값 3 에 대응한 리퀘스트 번호 (ReqN) 값 3 에 관한 리스폰스가 최초의 리스폰스가 되고, 리스폰스 번호 (ResTN) 값 4 에 대응하는 리퀘스트 번호 (ReqN) 값 4 에 관한 리스폰스가 2 번째의 리스폰스가 된다.
리퀘스트 (ReqWT32b0m0) 에 계속되는 리퀘스트 (ReqRD32b0m0) 는, 메모리 칩 (M0) 의 메모리 회로 (MemVL) 의 메모리 뱅크 0 에 대한 판독 명령 (RD32) 을 포함하고 있고, 리퀘스트 (ReqWT32b0m0) 에 의한 기입 동작이 실시되고 있는 메모리 뱅크 0 와 동일 메모리 뱅크에 대한 데이터 판독이기 때문에, 메모리 뱅크 0 에 대한 데이터 기입 동작의 완료를 기다릴 필요가 있다.
리퀘스트 (ReqRD32b1m0) 는, 메모리 칩 (M0) 의 메모리 회로 (MemVL) 의 메모리 뱅크 1 에 대한 판독 명령 (RD32) 을 포함하고 있고, 리퀘스트 (ReqWT32b0m0) 에 의한 기입 동작이 실시되고 있는 메모리 뱅크 0 와는 상이한 메모리 뱅크에 대한 데이터 판독이기 때문에, 메모리 뱅크 0 에 대한 데이터 기입 동작의 완료를 기다릴 필요가 없다. 그래서, 메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는, 리퀘스트 (ReqRD32b1m0) 를 메모리 회로 (MemVL) 에 송신한다.
메모리 칩 (M0) 의 메모리 회로 (MemVL) 로부터, 리퀘스트 (ReqRD32b1m0) 에 포함되는 32 바이트 판독 명령 (RD32), 뱅크 어드레스 (BK1), 칼럼 어드레스 (Col32) 에 의해, 메모리 회로 (MemVL) 의 뱅크 1 의 센스 증폭기에 유지되어 있는 데이터 중에서, 칼럼 어드레스 (32) 를 개시 어드레스로 한 32 바이트분의 데이터가 판독된다.
판독된 32 바이트분의 데이터와, 리퀘스트 번호 (ReqN) 값 4 에 대응한 리스폰스 번호 (ResN) 값 4 와, ID 레지스터값 2 를 포함한 리스폰스 (RsRD32b1m0) 는 리스폰스 큐 제어 회로 (RsCT) 에 전송된다.
메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 번호 테이블 (TB) 에 최초로 엔트리된 리스폰스 번호 (ResTN) 값 3 과 리스폰스 번호 (ResN) 값 4 를 비교한다. 양자는 불일치하기 때문에, 리스폰스 번호 (ResTN) 값 3 에 대응하는 리스폰스를 기다린다.
메모리 칩 (M0) 의 메모리 회로 (MemVL) 의 메모리 뱅크 0 에 대한 데이터 기입 완료 후, 리퀘스트 (ReqRD32b0m0) 는 메모리 회로 (MemVL) 에 송신된다.
메모리 칩 (M0) 의 메모리 회로 (MemVL) 로부터, 리퀘스트 (ReqRD32b0m0) 에 포함되는 32 바이트 판독 명령 (RD32), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Col32) 에 의해, 메모리 회로 (MemVL) 의 뱅크 0 의 센스 증폭기에 유지되어 있는 데이터 중에서, 칼럼 어드레스 (32) 를 개시 어드레스로 한 32 바이트분의 데이터가 판독된다.
이 판독된 32 바이트분의 데이터와, 리퀘스트 번호 (ReqN) 값 3 에 대응한 리스폰스 번호 (ResN) 값 3 과, ID 레지스터값 2 를 포함한 리스폰스 (RsRD32b0m0) 는 리스폰스 큐 제어 회로 (RsCT) 에 전송된다.
메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 번호 테이블 (TB) 에 가장 먼저 엔트리된 리스폰스 번호 (ResTN) 값 3 과 리스폰스 번호 (ResN) 값 3 을 비교한다.
양자는 일치하므로, 메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 신호 (RsMux0) 를 통해서, ID 레지스터값 2, 32 바이트 데이터를 포함하는 리스폰스 (RsRD32b0m0) 를 정보 처리 장치 (CPU_CHIP) 에 송신한다. 이 때, 메모리 칩 (M0) 의 리스폰스 번호 테이블 (TB) 에 엔트리되어 있는 리스폰스 번호 (ResTN) 값 3 은 무효가 되고, 리스폰스 번호 (ResTN) 값 4 가 가장 오래된 리스폰스 번호가 된다.
리퀘스트 (ReqRD32b0m0) 보다 이전에 메모리 칩 (M0) 에 입력된 리퀘스트 (ReqRD16b1m1) 는 메모리 칩 (M1) 에 송신되어 있고, 이 리퀘스트 (ReqRD16b1m1) 에 대응하는 리스폰스는 메모리 칩 (M0) 에 입력되어 있지 않기 때문에, 리퀘스트 (ReqRD32b0m0) 에 대응하는 리스폰스 (RsRD32b0m0) 는, 리퀘스트 (ReqRD16b1m1) 에 대응하는 리스폰스를 기다리지 않고, 정보 처리 장치 (CPU_CHIP) 에 송신된다.
계속해서, 메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 (RsRD32b1m0) 의 리스폰스 번호 (ResN) 값 4 와, 현재, 리스폰스 번호 테이블 (TB) 에 가장 먼저 엔트리된 리스폰스 번호 (ResTN) 값 4 를 비교한다.
양자는 일치하므로, 메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 신호 (RsMux0) 를 통해서, ID 레지스터값 2, 32 바이트 데이터를 포함하는 리스폰스 (RsRD32b1m0) 를 정보 처리 장치 (CPU_CHIP) 에 송신한다.
이 때, 메모리 칩 (M0) 의 리스폰스 번호 테이블 (TB) 에 엔트리되어 있는 리스폰스 번호 (ResTN) 값 4 는 무효가 된다.
리퀘스트 (ReqRD32b1m0) 보다 이전에 메모리 칩 (M0) 에 입력된 리퀘스트 (ReqRD16b1m1) 는 메모리 칩 (M1) 에 송신되어 있고, 이 리퀘스트 (ReqRD16b1m1) 에 대응하는 리스폰스는 메모리 칩 (M0) 에 입력되어 있지 않기 때문에, 리퀘스트 (ReqRD32b1m0) 에 대응하는 리스폰스 (RsRD32b1m0) 는, 리퀘스트 (ReqRD16b1m1) 에 대응하는 리스폰스를 기다리지 않고, 정보 처리 장치 (CPU_CHIP) 에 송신된다.
이와 같이, 메모리 칩 (M0) 의 리스폰스 순서 설정 레지스터 (RRG) 의 설정에 의해, 메모리 칩 (M0) 은, 자신에 대한 리퀘스트에 대응하는 리퀘스트 번호를 생성하고, 그 생성된 리퀘스트 번호를 이용하여, 입력한 리퀘스트순으로 리스폰스를 송신하는 동작을 실시한다.
또한, 메모리 칩 (M0) 의 리스폰스 순서 설정 레지스터 (RRG) 의 설정에 의해 메모리 칩 (M0) 은, 자신의 리스폰스와, 메모리 칩 (M1 혹은 M2) 으로부터 메모리 칩 (M0) 에 입력한 리스폰스 사이에서는, 리퀘스트의 입력 순서에 관계 없이, 빨리 송신할 수 있는 리스폰스는, 느린 리스폰스를 기다리지 않고, 정보 처리 장치 (CPU_CHIP) 에 송신할 수 있다.
다음으로 메모리 칩 (M1) 의 동작에 대해 설명한다.
메모리 칩 (M1) 에서는, 이미 메모리 칩 (M0) 으로부터 송신된 리퀘스트 (ReqRD16b1m1) 및, 이 리퀘스트에 대응한 리퀘스트 번호 (ReqN) 값 1 을 리퀘스트 큐 제어 회로 (RqCT) 에 저장하고, 메모리 칩 (M0) 에서 실시되는 데이터 기입 및 판독과 병행하여, 데이터의 판독 동작이 실시된다.
메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는, 리퀘스트 (ReqRD16b1m1) 에 포함되는 ID 값 1 과 자신의 ID 레지스터값 1 을 비교한다.
양자는 일치하므로 리퀘스트 큐 제어 회로 (RqCT) 는, 판독 리퀘스트 (ReqRD16b1m1) 에 대응한 리퀘스트 번호 (ReqN) 값 1 을 리스폰스 큐 제어 회로 (RsCT) 에 전송한다.
리스폰스 큐 제어 회로 (RsCT) 는, 이 리퀘스트 번호 (ReqN) 값 1 을 리스폰스 번호 (ResTN) 값 1 로서, 리스폰스 번호 테이블에 보존한다. 이로써, 리스폰스 번호 (ResTN) 값 1 에 대응하는 리퀘스트 (ReqRD16b1m1) 의 리스폰스가, 메모리 칩 (M1) 으로부터 최초로 송신되는 리스폰스가 된다. 계속해서 리퀘스트 (ReqRD16b1m1) 를 메모리 회로 (MemNV1) 에 송신한다.
메모리 칩 (M1) 의 메모리 회로 (MemNV1) 는 리퀘스트 (ReqRD16b1m1) 에 포함되는 16 바이트 판독 명령 (RD16), 뱅크 어드레스 (BK1), 칼럼 어드레스 (Col32) 에 의해, 메모리 회로 (MemNV1) 의 뱅크 1 의 센스 증폭기에 유지되어 있는 데이터 중에서, 칼럼 어드레스 (32) 를 개시 어드레스로 한 16 바이트분의 데이터를 판독한다.
이 판독된 16 바이트분의 데이터와, 리퀘스트 번호 (ReqN) 값 1 에 대응한 리스폰스 번호 (ResN) 값 1 과, ID 레지스터값 1 을 포함한 리스폰스 (RsRD16b1m0) 는 리스폰스 큐 제어 회로 (RsCT) 에 전송된다.
메모리 칩 (M1) 의 리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 번호 테이블에 최초로 엔트리된 리스폰스 번호 (ResTN) 값 1 과 리스폰스 번호 (ResN) 값 1 을 비교한다. 양자는 일치하므로, 메모리 칩 (M1) 의 리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 신호 (RsMux1) 를 통해서, ID 레지스터값 1, 리스폰스 번호 (ResN) 값 1 및 16 바이트 데이터를 포함하는 리스폰스 (RsRD16b1m1) 를 메모리 칩 (M0) 에 송신한다. 이 때, 리스폰스 번호 테이블에 엔트리되어 있는 리스폰스 번호 (ResTN) 값 1 은 무효가 된다.
메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 (RsRD16b1m1) 를 받아 저장한다. 다음으로, 리스폰스 번호 테이블 (TB) 내의 유효하게 되어 있는 리스폰스 번호 (ResTN) 와 리스폰스 번호 (ResN) 값 1 을 비교한다.
리스폰스 번호 테이블 (TB) 내의 유효하게 되어 있는 리스폰스 번호 (ResTN) 는 존재하지 않기 때문에, 메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 신호 (RsMux0) 를 통해서, ID 레지스터값 1 과 16 바이트 데이터를 포함하는 리스폰스 (RsRD16b1m1) 를 정보 처리 장치 (CPU_CHIP) 에 송신한다.
이상 설명한 바와 같이, 메모리 칩 (M0) 의 리스폰스 순서 설정 레지스터 (RRG) 의 설정에 의해, 메모리 칩 (M0) 은, 입력된 리퀘스트순으로 그 리퀘스트에 대응한 리퀘스트 번호를 생성하고, 이 리퀘스트 번호를 이용하여, 입력된 리퀘스트 순서대로 리스폰스를 정보 처리 장치 (CPU_CHIP) 에 송신할 수 있다. 이로써, 정보 처리 장치 (CPU_CHIP) 는, 동일 칩으로의 리퀘스트에 대한 리스폰스가 송신되었는지를 알 수 있어, 원하는 처리를 실행할 수 있다.
또, 메모리 칩 (M0) 의 리스폰스 순서 설정 레지스터 (RRG) 의 설정에 의해, 메모리 칩 (M0) 은, 자신의 리스폰스와, 메모리 칩 (M1 혹은 M2) 으로부터 메모리 칩 (M0) 에 입력된 리스폰스 사이에서는, 리퀘스트의 입력 순서에 관계 없이, 빨리 송신할 수 있는 리스폰스는, 느린 리스폰스를 기다리지 않고, 정보 처리 장치 (CPU_CHIP) 에 송신될 수 있어 고속화가 가능해진다.
또, 취급하는 시스템에 따라 정보 처리 장치 (CPU_CHIP) 가 다양하게 요구하는 OS, 부트 프로그램 및 어플리케이션 프로그램 등의 메모리 칩에 대한 배치 방법에 유연하게 대응하여 성능 향상을 도모할 수 있다.
또한, 리퀘스트에 ID 를 부가함으로써, 확실하게 요구처에 리퀘스트가 전송되고, 또 리스폰스에 ID 를 부가함으로써, 리퀘스트의 입력 순서와, 판독 데이터의 순서가 상이한 경우에도, 정보 처리 장치 (CPU_CHIP) 는 전송처의 메모리 칩을 알 수 있기 때문에, 정보 처리 장치 (CPU_CHIP) 및 메모리 칩의 직렬 접속에 의해, 접속 신호수를 적게 하면서도, 정보 처리 장치 (CPU_CHIP) 는 원하는 처리를 실행할 수 있다.
또, 상기에서는 메모리 칩 (M0 및 M1) 에 관한 데이터 전송 동작을 설명했지만, 메모리 칩 (M0, M1 및 M2) 에 관한 데이터 전송에 대해서도 동일하게 실시할 수 있는 것은 말할 필요도 없다.
<통상 동작의 설명 : 리드/라이트 동시 실행>
다음으로, 정보 처리 장치 (CPU_CHIP) 가 데이터 판독 리퀘스트에 계속하여 데이터 기입 리퀘스트를 메모리 모듈 (MEM) 에 송신한 경우의 데이터 전송에 대해 설명한다.
정보 처리 장치 (CPU_CHIP) 가 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 2, 8 바이트 데이터 판독 명령 (RD8), 뱅크 어드레스 (BK1), 칼럼 어드레스 (Col15) 를 다중화한 리퀘스트 (ReqRD8b1m0) 를 메모리 칩 (M0) 에 전송한다. 계속해서, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 2, 8 바이트 데이터 기입 명령 (WT8), 뱅크 어드레스 (BK1), 칼럼 어드레스 (Col31), 및 8 바이트분의 기입 데이터를 다중화한 리퀘스트 (ReqWT8b1m0) 를 메모리 칩 (M0) 에 전송한다.
메모리 칩 (M0) 은, 정보 처리 장치 (CPU_CHIP) 로부터의 리퀘스트 (ReqRD8b1m0) 와 리퀘스트 (ReqWT8b1m0) 를 순서대로 자신의 리퀘스트 큐 제어 회로 (RqCT) 에 저장한다. 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRD8b1m0) 에 포함되는 ID 값 2 와 자신의 ID 레지스터의 값 2 를 비교하고, 일치하므로, 리퀘스트 (ReqRD8b1m0) 를 메모리 회로 (MemVL) 에 송신한다.
메모리 회로 (MemVL) 는 리퀘스트 (ReqRD8b1m0) 에 포함되는 8 바이트 판독 명령 (RD8), 뱅크 어드레스 (BK1), 칼럼 어드레스 (Col31) 에 의해, 메모리 회로 (MemVL) 의 뱅크 1 의 센스 증폭기에 유지되어 있는 데이터 중에서, 칼럼 어드레스 15 를 개시 어드레스로 한 8 바이트분의 데이터를 판독하고, ID 레지스터값 2 를 포함하여, 리스폰스 큐 제어 회로 (RsCT) 에 리스폰스 (RsRD8b1m0) 로서 전송한다.
리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 신호 (RsMux0) 를 통해서, ID 레지스터값 2 및 8 바이트 데이터를 포함하는 리스폰스 (RsRD8b1m0) 를 정보 처리 장치 (CPU_CHIP) 에 출력한다.
리퀘스트 (ReqRD8b1m0) 가 처리된 것에 의해, 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqWT8b1m0) 에 포함되는 ID 값 2 와 자신의 ID 레지스터의 값 2 를 비교하고, 일치하므로, 리퀘스트 (ReqWT8b1m0) 를 메모리 회로 (MemVL) 에 송신한다.
메모리 회로 (MemVL) 는 리퀘스트 (ReqWT8b1m0) 에 포함되는 8 바이트 기입 명령 (WT8), 뱅크 어드레스 (BK1), 칼럼 어드레스 (Col31) 에 의해, 메모리 회로 (MemVL) 의 뱅크 1 의 센스 증폭기에 칼럼 어드레스 (31) 를 개시 어드레스로 한 8 바이트분의 데이터가 기입되고, 추가로 메모리 뱅크 1 에 기입된다.
리퀘스트 큐 제어 회로 (RqCT) 와 리스폰스 큐 제어 회로 (RsCT) 는 각각 독립적으로 동작하기 때문에, 리퀘스트 (ReqRD8b1m0) 에 대응하는 리스폰스 (RsRD8b1m0) 가 정보 처리 장치 (CPU_CHIP) 에 출력되고 있는 한창 중이라도 리퀘스트 (ReqWT8b1m0) 의 기입 동작을 실행할 수 있다.
이상 설명한 바와 같이, 리퀘스트 인터페이스 회로 (ReIF) 와 리스폰스 인터페이스 회로는 독립적으로 동작할 수 있기 때문에, 데이터의 판독 동작과 기입 동작을 동시에 실행할 수 있어 데이터 전송 성능을 향상시킬 수 있다. 상기에서는, 메모리 칩 (M0) 에서의 데이터의 판독 및 기입에 대해 설명했지만, 다른 메모리 칩 (M1 및 M2) 에 있어서도 동일한 동작을 실행할 수 있는 것은 말할 필요도 없다. 또한, 각각의 메모리 칩에 있어서 리퀘스트 인터페이스 회로 (ReIF) 와 리스폰스 인터페이스 회로는 독립적으로 동작할 수 있기 때문에, 상이한 메모리 칩에 대한 데이터 판독 및 기입 리퀘스트가 발생한 경우에도, 각각의 리퀘스트를 독립적으로 병렬로 처리할 수 있어 데이터 전송 성능을 향상시킬 수 있는 것은 말할 필요 도 없다.
<통상 동작의 설명 : 리퀘스트 번호>
정보 처리 장치 (CPU_CHIP) 가, 메모리 모듈 (MEM) 에 대한 리퀘스트에 고유의 리퀘스트 번호를 부가하고, 이 리퀘스트 번호를 포함한 리퀘스트를 메모리 모듈 (MEM) 에 송신한 경우, 메모리 모듈 (MEM) 은, 정보 처리 장치 (CPU_CHIP) 가 송신하는 리퀘스트 번호를 이용하여, 리퀘스트의 입력 순서에 관계 없이, 빨리 송신할 수 있는 리스폰스부터 송신하여 고속화를 도모할 수 있다. 이하에 동작을 설명한다. 또, 메모리 칩 (M0, M1, M2) 의 리스폰스 순서 설정 레지스터 (RRG) 의 설정값을 도 6(b) 에 나타낸다.
정보 처리 장치 (CPU_CHIP) 가, 메모리 모듈 (MEM) 내의 메모리 칩 (M1) 의 뱅크 1 에 데이터 판독 리퀘스트와, 메모리 칩 (M0) 의 뱅크 0 에 데이터 기입 리퀘스트와, 계속해서 메모리 칩 (M0) 의 뱅크 0 에 데이터 판독 리퀘스트를 송신하고, 또한 연속하여 메모리 칩 (M0) 의 뱅크 1 에 데이터 판독 리퀘스트를 송신한 경우의 데이터 전송에 대해 설명한다.
특별히 한정되지 않지만, 메모리 칩 (M0, M1, M2) 각각의 ID 레지스터값이 2, 1 및 3 으로 설정되어 있다.
정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 번호 생성 레지스터 (RqNR) 의 값을 1 로 설정하면 리퀘스트 번호 생성 회로 (RqN) 는, 리퀘스트 신호 (RqMux0) 를 통해서 출력하는 리퀘스트에 대응한 리퀘스트 번호 (ReqN) 를 생성한다. 다음으로 정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 1, 리퀘스트 번호 (ReqN) 값 1, 16 바이트 데이터 판독 명령 (RD16), 뱅크 어드레스 (BK1), 칼럼 어드레스 (Col31) 를 다중화한 리퀘스트 (ReqRD16b1m1) 를 메모리 칩 (M0) 에 전송한다.
다음으로, ID 값 2, 리퀘스트 번호 (ReqN) 값 2, 32 바이트 데이터 기입 명령 (WT32), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Col63), 및 32 바이트분의 기입 데이터를 다중화한 리퀘스트 (ReqWT32b0m0) 를 메모리 칩 (M0) 에 전송한다.
계속해서, ID 값 2, 리퀘스트 번호 (ReqN) 값 3, 32 바이트 데이터 판독 명령 (RD32), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Col32) 를 다중화한 리퀘스트 (ReqRD32b0m0) 를 메모리 칩 (M0) 에 전송한다.
또한 계속해서, ID 값 2, 리퀘스트 번호 (ReqN) 값 4, 16 바이트 데이터 판독 명령 (RD16), 뱅크 어드레스 (BK1), 칼럼 어드레스 (Col32) 를 다중화한 리퀘스트 (ReqRD16b1m0) 를 메모리 칩 (M0) 에 전송한다.
메모리 칩 (M0) 은, 정보 처리 장치 (CPU_CHIP) 로부터의 리퀘스트 (ReqRD16b1m1) 와, 리퀘스트 (ReqWT32b0m0) 와, 리퀘스트 (ReqRD32b0m0) 와, 리퀘스트 (ReqRD16b1m0) 를 순서대로, 자신의 리퀘스트 큐 제어 회로 (RqCT) 에 저장한다.
메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRD16b1m1) 에 포함되는 ID 값 1 과 자신의 ID 레지스터의 값 2 를 비교한다. 결과는 불일치하기 때문에, 리퀘스트 (ReqRD16b1m1) 는 리퀘스트 신호 (RqMux1) 를 통해서 메모리 칩 (M1) 에 전송된다.
다음으로 메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqWT32b0m0) 에 포함되는 ID 값 2 와 자신의 ID 레지스터의 값 2 를 비교하고, 일치하므로, 리퀘스트 (ReqWT32b0m0) 를 자신의 메모리 회로 (MemVL) 에 송신한다.
메모리 칩 (M0) 의 메모리 회로 (MemVL) 에서는, 리퀘스트 (ReqWT32b0m0) 에 포함되는 32 바이트 기입 명령 (WT32), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Co63) 에 의해, 메모리 회로 (MemVL) 의 메모리 뱅크 0 의 센스 증폭기를 통해서 메모리 뱅크 0 에, 칼럼 어드레스 63 를 개시 어드레스로 한 32 바이트분의 데이터의 기입 동작을 개시한다.
리퀘스트 (ReqWT32b0m0) 에 계속되는 리퀘스트 (ReqRD32b0m0) 는, 메모리 칩 (M0) 의 메모리 회로 (MemVL) 의 메모리 뱅크 0 에 대한 판독 명령 (RD32) 을 포함하고 있고, 리퀘스트 (ReqWT32b0m0) 에 의한 기입 동작이 실시되고 있는 메모리 뱅크 0 와 동일 메모리 뱅크에 대한 데이터 판독이기 때문에, 메모리 뱅크 0 에 대한 데이터 기입 동작의 완료를 기다릴 필요가 있다.
리퀘스트 (ReqRD32b1m0) 는, 메모리 칩 (M0) 의 메모리 회로 (MemVL) 의 메모리 뱅크 1 에 대한 판독 명령 (RD32) 을 포함하고 있고, 리퀘스트 (ReqWT32b0m0) 에 의한 기입 동작이 실시되고 있는 메모리 뱅크 0 와는 상이한 메모리 뱅크에 대한 데이터 판독이기 때문에, 메모리 뱅크 0 에 대한 데이터 기입 동작의 완료를 기다릴 필요가 없다. 그래서, 메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는, 리퀘스트 (ReqRD32b1m0) 를 메모리 회로 (MemVL) 에 송신한다.
메모리 칩 (M0) 의 메모리 회로 (MemVL) 로부터, 리퀘스트 (ReqRD32b1m0) 에 포함되는 32 바이트 판독 명령 (RD32), 뱅크 어드레스 (BK1), 칼럼 어드레스 (Col32) 에 의해, 메모리 회로 (MemVL) 의 뱅크 1 의 센스 증폭기에 유지되어 있은 데이터 중에서, 칼럼 어드레스 (32) 를 개시 어드레스로 한 32 바이트분의 데이터가 판독된다.
판독된 32 바이트분의 데이터와, 리퀘스트 번호 (ReqN) 값 4 와 동등한 리스폰스 번호 (ResN) 값 4 와, ID 레지스터값 2 를 포함한 리스폰스 (RsRD32b1m0) 는 리스폰스 큐 제어 회로 (RsCT) 에 전송되고, 정보 처리 장치 (CPU_CHIP) 에 송신된다.
다음으로, 메모리 칩 (M0) 의 메모리 회로 (MemVL) 의 메모리 뱅크 0 에 대한 데이터 기입 완료 후, 리퀘스트 (ReqRD32b0m0) 는 메모리 회로 (MemVL) 에 송신된다.
메모리 칩 (M0) 의 메모리 회로 (MemVL) 로부터, 리퀘스트 (ReqRD32b0m0) 에 포함되는 32 바이트 판독 명령 (RD32), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Col32) 에 의해, 메모리 회로 (MemVL) 의 뱅크 0 의 센스 증폭기에 유지되어 있은 데이터 중에서, 칼럼 어드레스 (32) 를 개시 어드레스로 한 32 바이트분의 데이터가 판독된다.
이 판독된 32 바이트분의 데이터와, 리퀘스트 번호 (ReqN) 값 3 과 동등한 리스폰스 번호 (ResN) 값 3 과, ID 레지스터값 2 를 포함한 리스폰스 (RsRD32b0m0) 는 리스폰스 큐 제어 회로 (RsCT) 에 전송되고, 정보 처리 장치 (CPU_CHIP) 에 송신된다.
이와 같이, 리퀘스트 (ReqRD32b0m0) 의 뒤에 메모리 칩 (M0) 에 입력된 리퀘스트 (ReqRD32b1m0) 는, 리퀘스트 (ReqRD32b0m0) 보다 빨리 처리할 수 있기 때문에, 리퀘스트 (ReqRD32b0m0) 리스폰스는, 리퀘스트 (ReqRD32b0m0) 의 느린 리스폰스를 기다리지 않고, 메모리 칩 (M0) 에 송신할 수 있다.
또, 메모리 칩 (M0) 에 입력된 리퀘스트 (ReqRD16b1m1) 는 메모리 칩 (M1) 에 송신되어 있고, 이 리퀘스트 (ReqRD16b1m1) 에 대응하는 리스폰스는 메모리 칩 (M0) 에 입력되어 있지 않기 때문에, 리퀘스트 (ReqRD32b1m0) 의 리스폰스 (RsRD32b1m0) 및 리퀘스트 (ReqRD32b0m0) 의 리스폰스 (RsRD32b0m0) 는, 리퀘스트 (ReqRD16b1m1) 에 대응하는 리스폰스를 기다리지 않고, 정보 처리 장치 (CPU_CHIP) 에 송신된다.
다음으로 메모리 칩 (M1) 의 동작에 대해 설명한다.
메모리 칩 (M1) 에서는, 이미 메모리 칩 (M0) 으로부터 송신된 리퀘스트 번호 (ReqN) 값 1 을 포함하는 리퀘스트 (ReqRD16b1m1) 를 리퀘스트 큐 제어 회로 (RqCT) 에 저장하고, 메모리 칩 (M0) 에서 실시되는 데이터 기입 및 판독과 병행하여, 데이터의 판독 동작이 실시된다.
메모리 칩 (M1) 의 리퀘스트 큐 제어 회로 (RqCT) 는, 리퀘스트 (ReqRD16b1m1) 에 포함되는 ID 값 1 과 자신의 ID 레지스터값 1 을 비교한다.
양자는 일치하므로, 리퀘스트 (ReqRD16b1m1) 를 메모리 회로 (MemNV1) 에 송신한다.
메모리 칩 (M1) 의 메모리 회로 (MemNV1) 는 리퀘스트 (ReqRD16b1m1) 에 포 함되는 16 바이트 판독 명령 (RD16), 뱅크 어드레스 (BK1), 칼럼 어드레스 (Col32) 에 의해, 메모리 회로 (MemNV1) 의 뱅크 1 의 센스 증폭기에 유지되어 있는 데이터 중에서, 칼럼 어드레스 (32) 를 개시 어드레스로 한 16 바이트분의 데이터를 판독한다.
이 판독된 16 바이트분의 데이터와, 리퀘스트 번호 (ReqN) 값 1 과 동등한 리스폰스 번호 (ResN) 값 1 과, ID 레지스터값 1 을 포함한 리스폰스 (RsRD16b1m0) 는 리스폰스 큐 제어 회로 (RsCT) 에 전송되고, 메모리 칩 (M0) 에 전송된다.
메모리 칩 (M0) 의 리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 번호 (ResN) 값 1 을 포함하는 리스폰스 (RsRD16b1m1) 를 받고, 리스폰스 신호 (RsMux0) 를 통해서 정보 처리 장치 (CPU_CHIP) 에 송신한다.
이상 설명한 바와 같이, 메모리 모듈 (MEM) 은 정보 처리 장치 (CPU_CHIP) 로부터 송신되는 리퀘스트에 포함되는 리퀘스트 번호를 이용하여, 리스폰스 번호를 생성하고, 이 리스폰스 번호를 포함한 리스폰스를 정보 처리 장치 (CPU_CHIP) 에 송신할 수 있음으로써, 메모리 칩마다 또는 메모리 칩 사이에서, 리퀘스트의 입력 순서에 관계 없이, 빨리 송신할 수 있는 리스폰스는, 느린 리스폰스를 기다리지 않고, 바로 송신할 수 있기 때문에 고속화를 도모할 수 있다. 또한, 리퀘스트의 입력순과는 상이한 순서로 리스폰스가 송신된 경우에도, 정보 처리 장치 (CPU_CHIP) 는, 어느 리퀘스트에 대한 리스폰스가 송신되었는지를 알 수 있어, 정보 처리 장치 (CPU_CHIP) 는 원하는 처리를 고속으로 실행할 수 있다.
또, 상기에서는 메모리 칩 (M0 및 M1) 에 관한 데이터 전송 동작을 설명했지 만, 메모리 칩 (M0, M1 및 M2) 에 관한 데이터 전송에 대해서도 동일하게 실시할 수 있는 것은 말할 필요도 없다.
<클록 제어>
다음으로, 메모리 모듈 (MEM) 에 관한 클록 제어에 대해 설명한다. 메모리 모듈 (MEM) 이 특별히 한정되지 않지만 휴대 기기에 이용된 경우, 항상 메모리 모듈 (MEM) 내의 메모리 칩 (M0, M1 및 M2) 의 모두가 동시에 동작하는 것은 아니다. 그래서, 휴대 기기의 저전력화를 도모하기 위해, 본 메모리 모듈 (MEM) 은 데이터 전송에 필요한 경우, 필요한 주파수로 클록을 발생시키거나, 데이터 전송이 발생하지 않는 경우에는 클록을 정지시키거나 할 수 있다.
메모리 칩 (M0) 으로부터 출력되는 리스폰스 클록 신호 (RsCk0) 의 주파수 제어에 대해 설명한다. 먼저, 메모리 칩 (M0) 으로부터 출력되는 리스폰스 클록 신호 (RsCk0) 의 클록 주파수를, 특별히 한정되지 않지만 2 분의 1 로 하는 경우에 대해 설명한다. 정보 처리 장치 (CPU_CHIP) 가, 리퀘스트 신호 (RqMux0) 로부터 메모리 칩 (M0) 의 ID 값 2 와 리스폰스 클록 분주 커맨드 2 를 입력한다.
메모리 칩 (M0) 은 리퀘스트 큐 제어 회로 (RqCT) 를 통해 리스폰스 클록 분주 커맨드 2 를 메모리 칩 (M0) 의 클록 분주 회로 (Div2) 에 송신하면, 리스폰스 클록 신호 (RsCk0) 의 주파수는 2 분의 1 이 된다. 클록의 동작 주파수를 낮게 할 때에는, 노이즈에 의한 오동작을 방지하기 위해 서서히 주파수를 떨어뜨리고, 마지막에 원하는 주파수로 동작시키는 것이 좋다.
다음으로, 메모리 칩 (M0) 으로부터 출력되는 리스폰스 클록 신호 (RsCk0) 를 정지시키는 경우에 대해 설명한다. 정보 처리 장치 (CPU_CHIP) 가, 리퀘스트 신호 (RqMux0) 로부터 메모리 칩 (M0) 의 ID 값 2 와 리스폰스 클록 정지 커맨드를 입력한다. 메모리 칩 (M0) 은 리퀘스트 큐 제어 회로 (RqCT) 를 통해 리스폰스 클록 정지 커맨드를 메모리 칩 (M0) 내의 클록 분주 회로 (Div2) 에 송신하면, 리스폰스 클록 신호 (RsCk0) 는 정지된다. 클록을 정지시킬 때에는, 노이즈에 의한 오동작을 방지하기 위해 서서히 주파수를 떨어뜨리고, 마지막에 정지시키는 것이 좋다.
다음으로, 정지되어 있는 리스폰스 클록 신호 (RsCk0) 를 다시 동작시키는 경우에 대해 설명한다. 정보 처리 장치 (CPU_CHIP) 가, 리퀘스트 신호 (RqMux0) 로부터 메모리 칩 (M0) 의 ID 값 2 와 리스폰스 클록 재개 커맨드를 입력한다. 메모리 칩 (M0) 은 리퀘스트 큐 제어 회로 (RqCT) 를 통해 리스폰스 클록 재개 커맨드를 메모리 칩 (M0) 내의 클록 분주 회로 (Div2) 에 송신하면, 정지되어 있는 리스폰스 클록 신호 (RsCk0) 는 다시 동작을 개시한다. 클록을 재동작시킬 때에는, 노이즈에 의한 오동작을 방지하기 위해 서서히 주파수를 높이고, 마지막에 원하는 주파수로 동작시키는 것이 좋다.
메모리 칩 (M1) 으로부터 출력되는 리스폰스 클록 신호 (RsCk1) 의 주파수 제어에 대해 설명한다. 먼저, 메모리 칩 (M1) 으로부터 출력되는 리스폰스 클록 신호 (RsCk1) 의 클록 주파수를, 특별히 한정되지 않지만 4 분의 1 로 하는 경우에 대해 설명한다. 정보 처리 장치 (CPU_CHIP) 가, 리퀘스트 신호 (RqMux0) 로부터 메모리 칩 (M1) 의 ID 값 1 과 리스폰스 클록 분주 커맨드 4 를 입력하면, 메모리 칩 (M0) 을 통해서, 메모리 칩 (M1) 에 ID 값 1 과 리스폰스 클록 분주 커맨드 4 가 송신된다. 메모리 칩 (M1) 이 리퀘스트 큐 제어 회로 (RqCT) 를 통해 리스폰스 클록 분주 커맨드 4 를 메모리 칩 (M1) 내의 클록 분주 회로 (Div2) 에 송신하면, 리스폰스 클록 신호 (RsCk1) 의 주파수는 4 분의 1 이 된다. 클록의 동작 주파수를 낮게 할 때에는, 노이즈에 의한 오동작을 방지하기 위해 서서히 주파수를 떨어뜨리고, 마지막에 원하는 주파수로 동작시키는 것이 좋다.
다음으로, 메모리 칩 (M1) 으로부터 출력되는 리스폰스 클록 신호 (RsCk1) 를 정지시키는 경우에 대해 설명한다. 정보 처리 장치 (CPU_CHIP) 가, 리퀘스트 신호 (RqMux0) 로부터 메모리 칩 (M1) 의 ID 값 1 과 리스폰스 클록 정지 커맨드를 입력하면, 메모리 칩 (M0) 을 통해서, 메모리 칩 (M1) 에 ID 값 1 과 리스폰스 클록 분주 커맨드 4 가 송신된다. 메모리 칩 (M1) 이 리퀘스트 큐 제어 회로 (RqCT) 를 통해 리스폰스 클록 정지 커맨드를 메모리 칩 (M1) 내의 클록 분주 회로 (Div2) 에 송신하면, 리스폰스 클록 신호 (RsCk1) 는 정지된다. 클록을 정지시킬 때에는, 노이즈에 의한 오동작을 방지하기 위해 서서히 주파수를 떨어뜨리고, 마지막에 정지시키는 것이 좋다.
다음으로, 정지되어 있는 리스폰스 클록 신호 (RsCk1) 를 다시 동작시키는 경우에 대해 설명한다. 정보 처리 장치 (CPU_CHIP) 가, 리퀘스트 신호 (RqMux0) 로부터 메모리 칩 (M1) 의 ID 값 1 과 리스폰스 클록 재개 커맨드를 입력하면, 메모리 칩 (M0) 을 통해서 메모리 칩 (M1) 에 ID 값 1 과 리스폰스 클록 재개 커맨드가 송신된다. 메모리 칩 (M1) 이, 리퀘스트 큐 제어 회로 (RqCT) 를 통해 리스폰스 클록 재개 커맨드를 메모리 칩 (M1) 내의 클록 분주 회로 (Div2) 에 송신하면, 정지되어 있는 리스폰스 클록 신호 (RsCk1) 는 다시 동작을 개시한다. 클록을 재동작시킬 때에는, 노이즈에 의한 오동작을 방지하기 위해 서서히 주파수를 높이고, 마지막에 원하는 주파수로 동작시키는 것이 좋다.
메모리 칩 (M2) 으로부터 출력되는 리스폰스 클록 신호 (RsCk2) 의 주파수 제어에 대해 설명한다. 먼저, 메모리 칩 (M2) 으로부터 출력되는 리스폰스 클록 신호 (RsCk2) 의 클록 주파수를, 특별히 한정되지 않지만 8 분의 1 로 하는 경우에 대해 설명한다. 정보 처리 장치 (CPU_CHIP) 가, 리퀘스트 신호 (RqMux0) 로부터 메모리 칩 (M2) 의 ID 값 3 과 리스폰스 클록 분주 커맨드 8 을 입력하면, 메모리 칩 (M0 및 M1) 을 통해서 메모리 칩 (M2) 에 ID 값 3 과 리스폰스 클록 분주 커맨드 8 이 송신된다. 메모리 칩 (M2) 이 자신의 리퀘스트 큐 제어 회로 (RqCT) 를 통해 리스폰스 클록 분주 커맨드 8 을 메모리 칩 (M2) 내의 클록 분주 회로 (Div2) 에 송신하면, 리스폰스 클록 신호 (RsCk2) 의 주파수는 8 분의 1 이 된다. 클록의 동작 주파수를 낮게 할 때에는, 노이즈에 의한 오동작을 방지하기 위해 서서히 주파수를 떨어뜨리고, 마지막에 원하는 주파수로 동작시키는 것이 좋다.
다음으로, 메모리 칩 (M2) 으로부터 출력되는 리스폰스 클록 신호 (RsCk2) 를 정지시키는 경우에 대해 설명한다. 정보 처리 장치 (CPU_CHIP) 가, 리퀘스트 신호 (RqMux0) 로부터 메모리 칩 (M2) 의 ID 값 3 과 리스폰스 클록 정지 커맨드를 입력하면, 메모리 칩 (M0 및 M1) 을 통해서 메모리 칩 (M2) 에 ID 값 3 과 리 스폰스 클록 정지 커맨드가 송신된다. 메모리 칩 (M2) 이 자신의 리퀘스트 큐 제어 회로 (RqCT) 를 통해 리스폰스 클록 정지 커맨드를 메모리 칩 (M2) 내의 클록 분주 회로 (Div2) 에 송신하면, 리스폰스 클록 신호 (RsCk2) 는 정지된다. 클록을 정지시킬 때에는, 노이즈에 의한 오동작을 방지하기 위해 서서히 주파수를 떨어뜨리고, 마지막에 정지시키는 것이 좋다.
다음으로, 정지되어 있는 리스폰스 클록 신호 (RsCk2) 를 다시 동작시키는 경우에 대해 설명한다. 정보 처리 장치 (CPU_CHIP) 가, 리퀘스트 신호 (RqMux0) 로부터 메모리 칩 (M2) 의 ID 값 3 과 리스폰스 클록 재개 커맨드를 입력하면, 메모리 칩 (M0 및 M1) 을 통해서 메모리 칩 (M2) 에 ID 값 3 과 리스폰스 클록 재개 커맨드가 송신된다. 메모리 칩 (M2) 이, 리퀘스트 큐 제어 회로 (RqCT) 를 통해 리스폰스 클록 재개 커맨드를 메모리 칩 (M2) 의 클록 분주 회로 (Div2) 에 송신하면, 정지되어 있는 리스폰스 클록 신호 (RsCk2) 는 다시 동작을 개시한다. 클록을 재동작시킬 때에는, 노이즈에 의한 오동작을 방지하기 위해 서서히 주파수를 높이고, 마지막에 원하는 주파수로 동작시키는 것이 좋다.
메모리 칩 (M0) 으로부터 출력되는 리퀘스트 클록 신호 (RsCk1) 의 주파수 제어에 대해 설명한다. 먼저, 메모리 칩 (M0) 으로부터 출력되는 리퀘스트 클록 신호 (RqCk1) 의 클록 주파수를, 특별히 한정되지 않지만 2 분의 1 로 하는 경우에 대해 설명한다. 정보 처리 장치 (CPU_CHIP) 가, 리퀘스트 신호 (RqMux0) 로부터 메모리 칩 (M0) 의 ID 값 2 와 리퀘스트 클록 분주 커맨드 2 를 입력한다. 메모리 칩 (M0) 이, 리퀘스트 큐 제어 회로 (RqCT) 를 통해 리퀘스트 클록 분주 커맨드 2 를 메모리 칩 (M0) 의 클록 분주 회로 (Div1) 에 송신하면, 이 클록 분주 회로 (Div1) 는 리퀘스트 클록 신호 (RqCk0) 의 클록 주파수의 2 분의 1 의 주파수를 갖는 클록을 발생시키고, 리퀘스트 클록 신호 (RqCk1) 로부터 출력된다. 리퀘스트 클록 신호 (RqCk1) 는, 메모리 칩 (M1) 에 입력되고, 메모리 칩 (M1) 의 클록 드라이버 (Drv2) 및 클록 분주 회로 (Div2) 를 통해 리스폰스 클록 신호 (RsCk1) 로서 출력된다. 클록의 동작 주파수를 낮게 할 때에는, 노이즈에 의한 오동작을 방지하기 위해 서서히 주파수를 떨어뜨리고, 마지막에 원하는 주파수로 동작시키는 것이 좋다.
다음으로, 메모리 칩 (M0) 으로부터 출력되는 리퀘스트 클록 신호 (RqCk1) 를 정지시키는 경우에 대해 설명한다. 정보 처리 장치 (CPU_CHIP) 가, 리퀘스트 신호 (RqMux0) 로부터 메모리 칩 (M0) 의 ID 값 2 와 리퀘스트 클록 정지 커맨드를 입력한다. 메모리 칩 (M0) 이, 리퀘스트 큐 제어 회로 (RqCT) 를 통해 리퀘스트 클록 정지 커맨드를 메모리 칩 (M0) 의 클록 분주 회로 (Div1) 에 송신하면, 이 클록 분주 회로 (Div1) 는 리퀘스트 클록 신호 (RqCk1) 를 정지시킨다. 리퀘스트 클록 신호 (RqCk1) 는, 메모리 칩 (M1) 에 입력되고, 메모리 칩 (M1) 의 클록 드라이버 (Drv2) 및 클록 분주 회로 (Div2) 를 통해 리스폰스 클록 신호 (RsCk1) 로서 출력되므로 리스폰스 클록 신호 (RsCk1) 도 정지된다. 클록을 정지시킬 때에는, 노이즈에 의한 오동작을 방지하기 위해 서서히 주파수를 떨어뜨리고, 마지막에 정지시키는 것이 좋다.
다음으로, 정지되어 있는 리퀘스트 클록 신호 (RsCk1) 를 다시 동작시키는 경우에 대해 설명한다. 정보 처리 장치 (CPU_CHIP) 가, 리퀘스트 신호 (RqMux0) 로부터 메모리 칩 (M0) 의 ID 값 2 와 리퀘스트 클록 재개 커맨드를 입력한다. 메모리 칩 (M0) 이, 리퀘스트 큐 제어 회로 (RqCT) 를 통해 리퀘스트 클록 재개 커맨드를 메모리 칩 (M0) 의 클록 분주 회로 (Div1) 에 송신하면, 이 클록 분주 회로 (Div1) 는 정지되어 있는 리퀘스트 클록 신호 (RqCk1) 를 다시 동작시킨다. 리퀘스트 클록 신호 (RqCk1) 는, 메모리 칩 (M1) 에 입력되고, 메모리 칩 (M1) 의 클록 드라이버 (Drv2) 및 클록 분주 회로 (Div2) 를 통해 리스폰스 클록 신호 (RsCk1) 로서 출력되므로, 리스폰스 클록 신호 (RsCk1) 도 다시 동작한다. 클록을 재동작시킬 때에는, 노이즈에 의한 오동작을 방지하기 위해 서서히 주파수를 높이고, 마지막에 원하는 주파수로 동작시키는 것이 좋다.
메모리 칩 (M1) 으로부터 출력되는 리퀘스트 클록 신호 (RsCk2) 의 주파수 제어에 대해 설명한다. 먼저, 메모리 칩 (M1) 으로부터 출력되는 리퀘스트 클록 신호 (RqCk2) 의 클록 주파수를, 특별히 한정되지 않지만 4 분의 1 로 하는 경우에 대해 설명한다. 정보 처리 장치 (CPU_CHIP) 가, 리퀘스트 신호 (RqMux0) 로부터 메모리 칩 (M1) 의 ID 값 1 과 리퀘스트 클록 분주 커맨드 4 를 입력하면, 메모리 칩 (M0) 을 통해서 ID 값 1 과 리퀘스트 클록 분주 커맨드 4 가 메모리 칩 (M1) 에 송신된다. 메모리 칩 (M1) 이, 리퀘스트 큐 제어 회로 (RqCT) 를 통해 리퀘스트 클록 분주 커맨드 4 를 자신의 클록 분주 회로 (Div1) 에 송신하면, 이 클록 분주 회로 (Div1) 는 리퀘스트 클록 신호 (RqCk0) 의 클록 주파수의 4 분의 1 의 주파수를 갖는 클록을 발생시키고, 리퀘스트 클록 신호 (RqCk2) 로부터 출력된 다. 리퀘스트 클록 신호 (RqCk2) 는, 메모리 칩 (M2) 에 입력되고, 메모리 칩 (M2) 의 클록 드라이버 (Drv2) 및 클록 분주 회로 (Div2) 를 통해 리스폰스 클록 신호 (RsCk2) 로서 출력된다. 클록의 동작 주파수를 낮게 할 때에는, 노이즈에 의한 오동작을 방지하기 위해 서서히 주파수를 떨어뜨리고, 마지막에 원하는 주파수로 동작시키는 것이 좋다.
다음으로, 메모리 칩 (M1) 으로부터 출력되는 리퀘스트 클록 신호 (RqCk2) 를 정지시키는 경우에 대해 설명한다. 정보 처리 장치 (CPU_CHIP) 가, 리퀘스트 신호 (RqMux0) 로부터 메모리 칩 (M1) 의 ID 값 1 과 리퀘스트 클록 정지 커맨드를 입력하면 메모리 칩 (M0) 을 통해서 ID 값 1 과 리퀘스트 클록 정지 커맨드가 메모리 칩 (M1) 에 송신된다. 메모리 칩 (M1) 은, 자신의 리퀘스트 큐 제어 회로 (RqCT) 를 통해 리퀘스트 클록 정지 커맨드를 자신의 클록 분주 회로 (Div1) 에 송신하면, 이 클록 분주 회로 (Div1) 는 리퀘스트 클록 신호 (RqCk2) 를 정지시킨다. 리퀘스트 클록 신호 (RqCk2) 는, 메모리 칩 (M2) 에 입력되고, 메모리 칩 (M2) 의 클록 드라이버 (Drv2) 및 클록 분주 회로 (Div2) 를 통해 리스폰스 클록 신호 (RsCk2) 로서 출력되므로 리스폰스 클록 신호 (RsCk2) 도 정지된다.
클록을 정지시킬 때에는, 노이즈에 의한 오동작을 방지하기 위해 서서히 주파수를 떨어뜨리고, 마지막에 정지시키는 것이 좋다.
다음으로, 정지되어 있는 리퀘스트 클록 신호 (RsCk2) 를 다시 동작시키는 경우에 대해 설명한다. 정보 처리 장치 (CPU_CHIP) 가, 리퀘스트 신호 (RqMux0) 로부터 메모리 칩 (M1) 의 ID 값 1 과 리퀘스트 클록 재개 커맨드를 입력 하면, 메모리 칩 (M0) 을 통해서 ID 값 1 과 리퀘스트 클록 재개 커맨드가 메모리 칩 (M1) 에 송신된다. 메모리 칩 (M1) 이, 자신의 리퀘스트 큐 제어 회로 (RqCT) 를 통해 리퀘스트 클록 재개 커맨드를 자신의 클록 분주 회로 (Div1) 에 송신하면, 이 클록 분주 회로 (Div1) 는 정지되어 있는 리퀘스트 클록 신호 (RqCk2) 를 다시 동작시킨다. 리퀘스트 클록 신호 (RqCk2) 는, 메모리 칩 (M2) 에 입력되고, 메모리 칩 (M2) 의 클록 드라이버 (Drv2) 및 클록 분주 회로 (Div2) 를 통해 리스폰스 클록 신호 (RsCk1) 로서 출력되므로, 리스폰스 클록 신호 (RsCk2) 도 다시 동작한다. 클록을 재동작시킬 때에는, 노이즈에 의한 오동작을 방지하기 위해 서서히 주파수를 높이고, 마지막에 원하는 주파수로 동작시키는 것이 좋다.
<메모리 맵의 설명>
도 9 는, 정보 처리 장치 (CPU_CHIP) 가 관리하는 메모리 모듈 (MEM) 에 대한 메모리 맵의 일례를 나타낸 것이다. 본 실시형태에서는, 특별히 한정되지 않지만, 메모리 칩 (M0) 의 기억 영역은 1 Gbit, 메모리 칩 (M1) 의 기록 영역은 1 Gbit, 메모리 칩 (M2) 의 기억 영역은 4 Gbit + 128 Mbit (128 Mbit 는 대체 영역) 인 메모리 모듈을 예로 대표적인 메모리 맵을 설명한다.
특별히 한정되지 않지만, 메모리 칩 (M0) 은 휘발성 메모리로 다이내믹 랜덤 액세스 메모리 셀을 이용한 다이내믹 랜덤 액세스 메모리이며, 판독 시간이 15 ㎱ 정도이다. 특별히 한정되지 않지만, 메모리 칩 (M1) 은 불휘발성 메모리로 NOR 형 플래시 메모리 셀을 이용한 NOR 형 플래시 메모리이며, 판독 시간이 80 ㎱ 정도이다. 특별히 한정되지 않지만, 메모리 칩 (M2) 은 불휘발성 메모리로 NAND 형 플래시 메모리 셀을 이용한 NAND 형 플래시 메모리이며, 판독 시간이 25 μsec 정도이다. 특별히 한정되지 않지만, 메모리 칩 (M1) 은, 부트 디바이스 ID 저장 영역 (BotID-AREA), 최종단 디바이스 ID 저장 영역 (EndID-AREA), 초기 프로그램 영역 (InitPR-AREA), 프로그램 저장 영역 (OSAP-AREA) 으로 나누어져 있다.
부트 디바이스 ID 저장 영역 (BotID-AREA) 에는, 부트 디바이스의 ID 정보가 저장된다. 최종단 디바이스 ID 저장 영역 (EndID-AREA) 에는, 직렬 접속되어 있는 메모리 모듈 (MEM) 에 관한 최종단 메모리 디바이스 ID 정보가 저장된다. 초기 프로그램 영역 (InitPR-AREA) 에는, 특별히 한정되지 않지만, 부트 프로그램이 저장된다. 프로그램 저장 영역 (OSAP-AREA) 에는, 특별히 한정되지 않지만, 오퍼레이팅 시스템이나 어플리케이션 프로그램 등이 저장된다. 특별히 한정되지 않지만, 메모리 칩 (M0) 은 카피 영역 (COPY-AREA), 워크 영역 (WORKAREA) 으로 나누어져 있다. 워크 영역 (WORK-AREA) 은 프로그램 실행시의 워크 메모리로서, 카피 영역 (COPY-AREA) 은 메모리 칩 (M1 및 M2) 으로부터의 프로그램이나 데이터를 카피하기 위한 메모리로서 이용된다. 특별히 한정되지 않지만, 메모리 칩 (M2) 은, 데이터 영역 (DATAAREA), 대체 영역 (REP-AREA) 으로 나누어져 있다. 데이터 영역 (DATA-AREA) 에는, 특별히 한정되지 않지만, 음악 데이터, 음성 데이터, 동영상 데이터, 정지 화상 데이터 등의 데이터가 저장된다.
또, FLASH 는 재기입을 반복함으로써, 신뢰성이 저하되고, 기입할 때 기입한 데이터가 판독할 때에는 상이한 데이터가 되거나, 재기입시에 데이터가 기입되지 않거나 하는 경우가 드물게 있다. 대체 영역 (REP-AREA) 은, 이와 같이 불량이 된 데이터를 새로운 영역으로 치환하기 위해 형성되어 있다. 대체 영역 (REP-AREA) 의 크기는, 특별히 한정되지 않지만 메모리 칩 (M2) 이 보증하는 신뢰성을 확보할 수 있도록 결정하면 된다.
<전원 투입 직후의 동작>
전원 투입 직후의 메모리 칩 (M1) 으로부터 정보 처리 장치 (CPU_CHIP) 로의 데이터 전송에 대해 설명한다. 전원 투입 후, 정보 처리 장치 (CPU_CHIP) 는 자신이 갖는 부트 디바이스 ID 레지스터 (BotID) 를 1 로 설정한다. 메모리 칩 (M1) 은 부트 디바이스 ID 저장 영역 (BotID-AREA) 으로부터 부트 디바이스의 ID 정보 1 을 판독하고, 자신의 ID 레지스터에 1 을 설정한다. 이로써, 부트 디바이스가 메모리 칩 (M1) 으로 확정된다.
다음으로, 정보 처리 장치 (CPU_CHIP) 는 부트 디바이스인 메모리 칩 (M1) 에 저장되어 있는 부트 프로그램 및 최종단 메모리 디바이스 ID 정보를 판독하기 위해, 메모리 칩 (M1) 의 ID 번호 1 과 판독 명령을 메모리 모듈 (MEM) 에 송신한다. 메모리 모듈 (MEM) 은, ID 번호 1 과 판독 명령에 따라, 메모리 칩 (M1) 의 초기 프로그램 영역 (InitPR-AREA) 으로부터 부트 프로그램을 판독하고, 최종단 디바이스 ID 저장 영역 (EndID-AREA) 으로부터 최종단 메모리 디바이스 ID 정보를 판독하고, 정보 처리 장치 (CPU_CHIP) 에 송신한다. 이와 같이, 전원 투입 직후에, 부트 디바이스의 ID 를 초기 설정함으로써, 메모리 칩의 직렬 접속에 의해 실현되는 메모리 모듈 (MEM) 내의 부트 디바이스를 특정할 수 있고, 정보 처리 장치 (CPU_CHIP) 와 메모리 모듈 (MEM) 사이의 접속 신호수를 큰폭으로 적게 한 후, 정보 처리 장치 (CPU_CHIP) 는, 빠르고 확실하게 부트 디바이스로부터 부트 프로그램 및 최종단 메모리 디바이스 ID 를 판독하여, 정보 처리 장치 (CPU_CHIP) 및 메모리 모듈 (MEM) 을 가동할 수 있다.
<데이터 카피 동작의 설명>
메모리 칩 (M0) 의 데이터 판독 시간은, 메모리 칩 (M2) 의 판독 시간과 비교하여 큰폭으로 짧다. 그래서, 미리 필요한 화상 데이터를 메모리 칩 (M2) 으로부터 메모리 칩 (M0) 에 전송하면, 정보 처리 장치 (CPU_CHIP) 에서 고속으로 화상 처리를 실시할 수 있다. 특별히 한정되지 않지만, 메모리 칩 (M0, M1, M2) 각각의 ID 레지스터값이 2, 1 및 3 으로 설정된 경우의, 메모리 칩 (M2) 으로부터의 메모리 칩 (M0) 으로의 데이터 전송에 대해 설명한다.
정보 처리 장치 (CPU_CHIP) 는 메모리 칩 (M2) 의 데이터 영역 (DATA-AREA) 으로부터 데이터를 판독하기 위해, 메모리 칩 (M2) 의 ID 번호 3 과 1 페이지 (512 Byte 의 데이터 + 16 Byte 의 ECC 코드) 데이터 판독 명령을 메모리 모듈 (MEM) 에 송신한다. 메모리 모듈 (MEM) 은, ID 번호 3 과 1 페이지 데이터 판독 명령에 따라, 메모리 칩 (M2) 의 데이터 영역 (DATA-AREA) 으로부터 1 페이지분의 데이터를 판독하고, ID 번호 3 을 부가하고, 정보 처리 장치 (CPU_CHIP) 에 송신한다.
정보 처리 장치 (CPU_CHIP) 에서는, 메모리 칩 (M2) 으로부터 송신된 1 페이지분의 데이터에 대해 에러를 검출한다. 에러가 없으면, 1 페이지분의 데이터를 메모리 칩 (M0) 의 카피 영역 (COPY-AREA) 에 데이터를 전송하기 위해, 정보 처리 장치 (CPU_CHIP) 는 메모리 칩 (M0) 의 ID 번호 2 와 1 페이지 데이터 판독 명 령을 메모리 모듈 (MEM) 에 송신한다. 에러가 있으면 수정한 후, 1 페이지분의 데이터를 메모리 칩 (M0) 의 카피 영역 (COPY-AREA) 에 데이터를 전송하기 위해, 정보 처리 장치 (CPU_CHIP) 는 메모리 칩 (M0) 의 ID 번호 2 와 1 페이지 데이터 판독 명령을 메모리 모듈 (MEM) 에 송신한다. 메모리 모듈 (MEM) 은, ID 번호 2 와 1 페이지 데이터 판독 명령에 따라, 메모리 칩 (M0) 의 카피 영역 (COPY-AREA) 데이터 영역에 1 페이지분의 데이터를 기입한다.
다음으로, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 에 고속으로 화상 데이터가 기입되고, 필요에 따라 메모리 칩 (M2) 에 이 화상 데이터를 보존할 때의, 메모리 칩 (M0) 으로부터의 메모리 칩 (M2) 으로의 데이터 전송에 대해 설명한다. 정보 처리 장치 (CPU_CHIP) 는 메모리 칩 (M0) 의 카피 영역 (COPY-AREA) 으로부터 데이터를 판독하기 위해, 메모리 칩 (M0) 의 ID 번호 2 와 1 페이지 (512 Byte) 데이터 판독 명령을 메모리 모듈 (MEM) 에 송신한다. 메모리 모듈 (MEM) 은, ID 번호 0 과 1 페이지 데이터 판독 명령에 따라, 메모리 칩 (M0) 의 카피 영역 (COPY-AREA) 으로부터 1 페이지분의 데이터를 판독하고, ID 번호 2 를 부가하고, 정보 처리 장치 (CPU_CHIP) 에 송신한다. 정보 처리 장치 (CPU_CHIP) 는, 메모리 칩 (M0) 으로부터 송신된 1 페이지분의 데이터를 메모리 칩 (M2) 의 데이터 영역 (DATA-AREA) 에 데이터를 전송하기 위해, 메모리 칩 (M2) 의 ID 번호 2 와 1 페이지 데이터 기입 명령을 메모리 모듈 (MEM) 에 송신한다.
메모리 모듈 (MEM) 이, 메모리 칩 (M0 및 M1) 을 통해서 메모리 칩 (M2) 에 ID 번호 2 와 1 페이지 데이터 기입 명령을 송신하면, 메모리 칩 (M2) 은 자신의 데이터 영역 (DATA-AREA) 에 1 페이지분의 데이터를 기입한다. 메모리 칩 (M2) 은 데이터의 기입이 성공했는지를 체크하고, 성공하면 기입 처리를 종료한다. 기입이 실패했을 때에는, 메모리 칩 (M2) 은, ID 번호 2 와 기입 에러 정보를 송신하고, 메모리 칩 (M1) 및 메모리 칩 (M0) 을 통해 정보 처리 장치 (CPU_CHIP) 에 기입 에러를 통지한다. 정보 처리 장치 (CPU_CHIP) 는, ID 번호 2 와 기입 에러 정보를 받으면, 메모리 칩 (M2) 에 미리 준비되어 있는 대체 영역 (REP-AREA) 의 새로운 어드레스에 대해 기입을 실시하기 위해, 메모리 칩 (M2) 의 ID 번호 2 와 1 페이지 데이터 기입 명령을 메모리 모듈 (MEM) 에 송신한다. 메모리 모듈 (MEM) 이 메모리 칩 (M0 및 M1) 을 통해서 ID 번호 2 와 1 페이지 데이터 기입 명령을 메모리 칩 (M2) 에 송신하면, 메모리 칩 (M2) 은 자신의 대체 영역 (REP-AREA) 에 1 페이지분의 데이터를 기입한다. 또, 정보 처리 장치 (CPU_CHIP) 는, 대체 처리를 실시했을 때에는, 불량 어드레스와, 불량 어드레스에 대해, 어느 어드레스로 대체 처리를 실시했는지 어드레스 정보를 유지하고 관리한다.
이상 설명한 바와 같이, 메모리 칩 (M2) 의 일부 데이터를 카피할 수 있는 영역을 메모리 칩 내에 확보하고, 미리 메모리 칩 (M2) 으로부터 메모리 칩 (M0) 에 데이터를 전송해 둠으로써, 메모리 칩 (M0) 과 동등한 속도로 메모리 칩 (M2) 의 데이터를 판독할 수 있어, 정보 처리 장치 (CPU_CHIP) 에서의 고속 처리가 가능해진다. 또, 메모리 칩 (M2) 에 데이터를 기입할 때에는, 일단 데이터를 메모리 칩 (M0) 에 기입하고, 필요에 따라 메모리 칩 (M2) 에 회답으로 기입 (write back) 할 수 있기 때문에, 데이터의 기입도 고속화할 수 있다. 또한, 메모리 칩 (M2) 으로부터 판독할 때에는 에러 검출과 정정을 실시하고, 기입할 때에는 기입이 정확하게 실시되지 않은 불량 어드레스에 대해 대체 처리를 실시하므로, 고신뢰성을 유지할 수 있다.
<메모리 칩 (M0) 의 설명>
도 10 은, 메모리 칩 (M0) 의 구성도의 일례이다.
메모리 칩 (M0) 은, 리퀘스트 인터페이스 회로 (ReqIF) 와, 리스폰스 인터페이스 회로 (ResIF) 와, 초기화 회로 (INIT), 메모리 회로 (MemVL) 로 구성되어 있다. 리퀘스트 인터페이스 회로 (ReqIF) 는 리퀘스트 클록 제어 회로 (RqCkC) 및 리퀘스트 큐 제어 회로 (RqCT) 로 구성된다. 리퀘스트 클록 제어 회로 (RqCkC) 는 클록 드라이버 (Drv1) 및 클록 분주 회로 (Div1) 로 구성된다.
리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 큐 회로 (RqQI), 리퀘스트 큐 회로 (RqQXI), 리퀘스트 큐 회로 (RqQXO), ID 레지스터 회로 (IDR), ID 비교 회로 (CPQ), 레이턴시값 출력 설정 레지스터 회로 (LRG), 리스폰스 순서 설정 레지스터 회로 (RRG), 리퀘스트 번호 설정 회로 (RNB) 로 구성된다.
특별히 한정되지 않지만, 리퀘스트 큐 회로 (RqQI) 는 4 개의 리퀘스트 큐로 구성되고, 리퀘스트 큐 회로 (RqQXI) 는 4 개의 리퀘스트 큐로 구성되고, 리퀘스트 큐 회로 (RqQXO) 는 4 개의 리퀘스트 큐로 구성된다. 리스폰스 인터페이스 회로 (ResIF) 는 리스폰스 클록 제어 회로 (RsCkC) 및 리스폰스 큐 제어 회로 (RsCT) 로 구성된다. 리스폰스 클록 제어 회로 (RsCkC) 는 클록 드라이버 (Drv2) 및 클록 분주 회로 (Div2) 로 구성된다.
리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 큐 회로 (RsQo), 리스폰스 큐 회로 (RsQp), 스테이터스 레지스터 회로 (STReg), 리스폰스 스케줄 회로 (SCH), 레이턴시 계산 회로 (LA), 리스폰스 번호 테이블 (TB) 로 구성된다.
특별히 한정되지 않지만, 리스폰스 큐 회로 (RsQo) 는 4 개의 리스폰스 큐로 구성되고, 리스폰스 큐 회로 (RsQp) 는 4 개의 리스폰스 큐로 구성된다.
메모리 회로 (MemVL) 는, 특별히 한정되지 않지만, 휘발성 메모리이며, 다이내믹 랜덤 액세스 메모리 셀을 이용한 다이내믹 랜덤 액세스 메모리이다. 초기화 회로 (INIT) 는, 메모리 칩 (M0) 에 대한 전원 공급 개시시에 메모리 칩 (M0) 의 초기화를 실시한다. 리퀘스트 클록 제어 회로 (RqCkC) 는, 클록 신호 (RqCk0) 로부터 입력된 클록을, 내부 클록 (ck1) 을 통해서, 리퀘스트 큐 제어 회로 (RqCT) 및 리스폰스 클록 제어 회로 (RsCkC) 에 전한다. 또, 리퀘스트 클록 제어 회로 (RqCkC) 는, 리퀘스트 클록 신호 (RqCk0) 로부터 입력된 클록을 클록 드라이버 (Drv1) 및 클록 분주 회로 (Div1) 를 통해 클록 신호 (RqCk1) 를 통해서 출력한다. 또, 리퀘스트 클록 제어 회로 (RqCkC) 는 리퀘스트 신호 (RqMux0) 를 통해서 입력된 명령에 따라, 클록 신호 (ck2) 및 리퀘스트 클록 (RqCk1) 의 클록 주파수를 저하시키거나, 클록을 정지시키거나, 클록을 재동작시킬 수 있다.
리스폰스 클록 제어 회로 (RsCkC) 는, 내부 클록 신호 (ck1) 로부터 입력된 클록을, 내부 클록 신호 (ck3) 를 통해서 리스폰스 큐 제어 회로 (RsCT) 에 출력한다. 또, 리스폰스 클록 제어 회로 (RsCkC) 는 내부 클록 신호 (ck1) 로부터 입력된 클록을, 클록 분주 회로 (Div2) 를 통해 클록 신호 (RsCk0) 로부터 출력한다. 또, 리스폰스 클록 제어 회로 (RsCkC) 는, 클록 신호 (RsCk1) 로부터 입력된 클록을, 클록 드라이버 (Div2) 를 통해 클록 신호 (ck4) 로부터 리스폰스 큐 제어 회로 (RsCT) 에 출력한다. 또한, 리스폰스 클록 제어 회로 (RsCkC) 는 리퀘스트 신호 (RqMux0) 를 통해서 입력된 명령에 따라, 리스폰스 클록 (RsCk0) 의 클록 주파수를 저하시키거나, 또 클록을 정지시키거나, 또한 클록을 재동작시킬 수 있다.
리스폰스 순서 설정 레지스터 회로 (RRG) 는, 상기 명령이 리스폰스 순서 설정 레지스터 설정 명령인 경우, 기입 데이터에 포함되는 리퀘스트 번호 선택 플래그 정보 (RSELFlag) 값과, 리스폰스 순서 플래그 (RRGFlag) 정보와, ID 값을 저장한다.
레이턴시값 출력 설정 레지스터 회로 (LRG) 는, 상기 명령이 레이턴시값 출력 설정 레지스터 설정 명령인 경우, 기입 데이터에 포함되는 레이턴시값 출력 플래그 정보 (LRGFlag) 값과 ID 값을 저장한다.
리퀘스트 번호 설정 회로 (RNB) 는, 리퀘스트 번호 선택 플래그 정보 (RSELFlag) 값이 1 인 경우에 리퀘스트 큐 회로 (RqQI) 에 입력된 리퀘스트에 대응한 리퀘스트 번호 (ReqN) 를 생성하고, 리퀘스트 번호 선택 플래그 정보 (RSELFlag) 값이 1 인 경우에는, 리퀘스트 신호 (RqMux0) 를 통해서 입력되는 리퀘스트 번호 (ReqN) 를 리퀘스트 번호 (ReqN) 로 한다.
리퀘스트 큐 회로 (RqQI) 는, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값, 리퀘스트 번호 (ReqN), 명령, 어드레스 및 기입 데이터 등이 다중화되고 메모리 칩 (M0) 에 입력된 리퀘스트를 저장하고, 리퀘스트 번호 (ReqN) 와 동일한 번호의 리 스폰스 번호 (ResN) 를 생성하고, 리스폰스 큐 제어 회로 (RsCT) 에 송신한다.
ID 레지스터 회로 (IDR) 는, 메모리 칩 (M0) 의 ID 값을 저장한다.
ID 비교 회로 (CPQ) 는, 리퀘스트 큐 회로 (RqQI) 에 저장되어 있는 ID 값과, ID 레지스터 회로 (IDR) 에 저장되어 있는 ID 값을 비교한다.
리퀘스트 큐 회로 (RqQXI) 및 리퀘스트 큐 회로 (RqQXO) 는, 리퀘스트 큐 회로 (RqQI) 로부터 전송된 리퀘스트를 저장한다.
리스폰스 큐 회로 (RsQo) 는, 메모리 칩 (M0) 의 메모리 회로 (MemVL) 로부터 판독된 데이터 및 ID 레지스터 회로 (IDR) 로부터 판독된 ID 값, 리스폰스 번호 (ResN) 를 저장한다.
리스폰스 큐 회로 (RsQp) 는, 리스폰스 신호 (RsMux1) 를 통해서, 입력되는 ID 값, 리스폰스 번호 (ResN), 판독 데이터 및 에러 정보 및 스테이터스 정보를 저장한다.
레이턴시 계산 회로 (LA) 는, 레이턴시값 출력 설정 레지스터 (LRG) 의 레이턴시값 출력 플래그 정보 (LRGFlag) 값이 1 인 경우에는 판독 데이터의 레이턴시값을 계산하고, 레이턴시값 출력 플래그 정보 (LRGFlag) 값이 0 인 경우에는, 판독 데이터의 레이턴시값을 계산하지 않는다.
리스폰스 번호 테이블 (TB) 은, 리스폰스 순서 설정 레지스터의 설정에 따라 판독 데이터의 송신 순서를 결정한다.
스테이터스 레지스터 회로 (STRReg) 는, 특별히 한정되지 않지만 리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 에 리스폰스가 저장되어 있는 것을 나 타내는 미처리 리스폰스 정보 등이 저장된다.
리스폰스 스케줄 회로 (SCH) 는, 리스폰스 큐 회로 (RsQo) 에 저장되어 있는 리스폰스와, 리스폰스 큐 회로 (RsQp) 에 저장되어 있는 리스폰스의 리스폰스 우선 순위를 결정하고, 우선 순위가 높은 리스폰스를, 리스폰스 신호 (RsMux0) 로부터 출력하기 위한 조정을 실시한다. 리스폰스 우선 순위는, 리스폰스 큐 회로 (RsQo) 로부터 출력된 리스폰스의 횟수와, 리스폰스 큐 회로 (RsQp) 로부터 출력된 리스폰스의 횟수에 따라 리스폰스 스케줄 회로 (SCH) 가 동적으로 변화시킨다.
다음으로, 본 메모리 칩 (M0) 의 동작을 설명한다.
먼저, 전원 투입시의 동작에 대해 설명한다.
메모리 칩 (M0) 에 전원이 투입되면 초기화 회로 (INIT) 는 메모리 칩 (M0) 의 초기화를 실시한다. 먼저, ID 레지스터 회로 (IDR) 가 갖는 ID 레지스터의 값을 0 으로, ID 유효 비트를 Low 로 초기 설정한다.
레이턴시 출력 레지스터 (LRG) 가 갖는 레이턴시값 출력 플래그 정보 (LRGFlag) 값 및 ID 정보값은 0 으로 초기 설정된다.
리스폰스 순서 설정 레지스터 (RRG) 가 갖는 리퀘스트 번호 선택 플래그 (RSELFlag) 값과, 리스폰스 순서 플래그 (RRGFlag) 값과, ID 정보값은 0 으로 초기 설정된다.
다음으로 리스폰스 스케줄 회로 (SCH) 가 갖는 리스폰스 큐 회로 (RsQo) 에 입력되는 리스폰스의 우선 순위를 1 로, 리스폰스 큐 회로 (RsQp) 에 입력되는 메모리 칩 (M1) 으로부터의 리스폰스의 우선 순위를 2 로, 메모리 칩 (M2) 으로부터 의 리스폰스의 우선 순위를 3 으로 설정한다. 초기화 회로 (INIT) 에 의한 초기 설정이 종료되면, 메모리 칩 (M0) 은, 정보 처리 장치 (CPU_CHIP) 와 메모리 칩 (M1) 사이에 통신할 수 있는 것을 확인하는 통신 확인 동작을 실시한다. 메모리 칩 (M0) 은 리퀘스트 이네이블 신호 (RqEn1) 가 High 가 된 것을 확인하고, 리스폰스 이네이블 신호 (RsEn1) 및 리퀘스트 이네이블 신호 (RqEn0) 를 High 로 한다.
다음으로, 정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 이네이블 신호 (RqEn0) 가 High 가 된 것을 확인하고, 각 메모리 칩의 신호 접속이 확인된 것을 알고, 리스폰스 이네이블 신호 (RsEn0) 를 High 로 한다. 통신 확인 동작이 종료되면, 정보 처리 장치 (CPU_CHIP) 로부터 리퀘스트 신호 (RqMux0) 를 통해서 ID 번호 2 와 ID 설정 명령이 메모리 칩 (M0) 에 전송된다. 메모리 칩 (M0) 에서는, ID 유효 비트가 Low 이기 때문에, 아직 ID 번호가 부가되어 있지 않은 것으로 판단하고, ID 레지스터에 ID 번호 2 를, ID 유효 비트를 High 로 설정하고, ID 번호 부가를 완료한다. 다음으로, 메모리 칩 (M0) 은 리스폰스 신호 (RsMux0) 를 통해서, 메모리 칩 (M0) 의 ID 값 2 및 ID 번호 부가 완료 정보를 출력하고, 정보 처리 장치 (CPU_CHIP) 에 메모리 칩 (M0) 의 ID 번호 부가가 완료된 것을 통지한다.
다음으로, 전원 투입 직후의 동작이 종료된 후의 동작에 대해 설명한다.
먼저, 메모리 칩 (M0) 의 레이턴시값 출력 레지스터 (LREG) 에 대한 데이터 설정 동작에 대해 설명한다.
정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 2, 레이턴시값 출력 레지스터 설정 명령 (LRGSet), 레이턴시값 출력 레지스터 (LRG) 에 대한 설정값 (LRGData0) 을 다중화한 리퀘스트 (ReqLRGSet0) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다.
특별히 한정되지 않지만 레이턴시 출력 레지스터 (LRG) 에 대한 설정값 (LRGData0) 에는, 레이턴시값 출력 플래그 정보 (LRGFlag) 값과 ID 값이 포함된다.
메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqLRGSet0) 를 저장한다.
다음으로, 메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqLRGSet0) 에 포함되는 ID 값 2 와 자신의 ID 레지스터의 값 2 를 비교한다. 쌍방은 일치하므로, 메모리 칩 (M0) 의 레이턴시값 출력 레지스터 (LRG) 에 설정값 (LRGData0) 이 설정된다. 도 4 에 메모리 칩 (M0) 의 레이턴시값 출력 레지스터 (LRG) 에 설정된 값의 일례를 나타낸다.
메모리 칩 (M0) 의 리스폰스 순서 설정 레지스터 (RRG) 에 대한 데이터 설정 동작에 대해 설명한다.
정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 2, 리스폰스 순서 설정 레지스터 설정 명령 (RRGSet), 리스폰스 순서 설정 레지스터 (RRG) 에 대한 설정값 (RRGData0) 을 다중화한 리퀘스트 (ReqRRGSet0) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다. 설정값 (RRGData0) 에는, 리퀘스트 번호 선택 플래그 정보 (RSELFlag) 값과, 리스폰스 순서 플래그 (RRGFlag) 정보와, ID 값이 포함된다.
메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRRGSet0) 를 저장한다.
다음으로, 메모리 칩 (M0) 의 리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 (ReqRRGSet0) 에 포함되는 ID 값 2 와 자신의 ID 레지스터의 값 2 를 비교한다. 쌍방은 일치하므로, 메모리 칩 (M0) 의 리스폰스 순서 설정 레지스터 (RRG) 에 설정값 (RRGData0) 이 설정된다. 도 6 에 메모리 칩 (M0) 의 리스폰스 순서 설정 레지스터 (RRG) 에 설정된 값의 일례를 나타낸다.
메모리 칩 (M0) 의 레이턴시값 출력 레지스터 (LRG) 가 도 4 에 나타낸 값으로 설정되고, 리스폰스 순서 설정 레지스터 (RRG) 가 도 6 에 나타낸 값으로 설정되어 있는 경우, 정보 처리 장치 (CPU_CHIP) 로부터 리퀘스트가 메모리 칩 (M0) 에 발생했을 때의 동작을 설명한다.
메모리 칩 (M0) 의 리퀘스트 큐 회로 (RqQI) 는, 특별히 한정되지 않지만 2 개의 리퀘스트 큐 (RqQI-0 및 RqQI-1) 로 구성되어 있다. 또, 메모리 칩 (M0) 은, 리퀘스트 큐 (RqQI-0 및 RqQI-1) 에 리퀘스트가 엔트리되어 있지 않기 때문에, 리퀘스트 이네이블 신호 (RqEn0) 를 High 로 하고, 리퀘스트를 접수할 수 있는 것을 정보 처리 장치 (CPU_CHIP) 에 알린다. 메모리 칩 (M0) 의 리스폰스 큐 회로 (RqQo) 는, 특별히 한정되지 않지만 2 개의 리스폰스 큐 (RqQo-0 및 RqQo-1) 로 구성되어 있다.
메모리 칩 (M0) 의 리스폰스 큐 회로 (RqQp) 는, 특별히 한정되지 않지만 2 개의 리스폰스 큐 (RqQp-0 및 RqQp-1) 로 구성되어 있다.
정보 처리 장치 (CPU_CHIP) 는, 리스폰스 이네이블 신호 (RsEn0) 를 High 로 하고, 리스폰스를 접수할 수 있는 것을 메모리 칩 (M0) 에 알린다. 정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 2, 리퀘스트 번호 (ReqN) 값 1, 뱅크 액티브 명령 (BA), 뱅크 어드레스 (BK1), 로우 어드레스 (Row) 를 다중화한 리퀘스트 (ReqBAb0m0) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다 (도 11 : Step 1).
다음으로, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 2, 리퀘스트 번호 (ReqN) 값 2, 32 바이트 데이터 판독 명령 (RD32), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Col255) 를 다중화한 리퀘스트 (ReqRD32b0m0) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다 (도 11 : Step 1).
리퀘스트 이네이블 신호 (RqEn0) 가 Low 이면 (도 11 : Step 2), 정보 처리 장치 (CPU_CHIP) 로부터의 리퀘스트는 메모리 칩 (M0) 의 리퀘스트 큐 회로 (RqQI) 에 저장되지 않는다. 리퀘스트 이네이블 신호 (RqEn0) 가 High 이면 (도 11 : Step 2), 메모리 칩 (M0) 에 대한 리퀘스트 (ReqBAb0m0) 와 리퀘스트 (ReqRD32b0m0) 는 순서대로, 메모리 칩 (M0) 의, 리퀘스트 큐 회로 (RqQI) 의 리퀘스트 큐 (RqQI-0 및 RqQI-1) 에 저장된다 (도 11 : Step 3).
이것으로, 리퀘스트 큐 회로 (RqQI) 의 전체 리퀘스트 큐는 엔트리되고, 정보 처리 장치 (CPU_CHIP) 로부터의 새로운 리퀘스트를 접수할 수 없기 때문에, 리퀘스트 이네이블 신호 (RqEn0) 를 Low 로 한다. 리퀘스트 이네이블 신호 (RqEn0) 가 Low 가 된 것에 의해, 정보 처리 장치 (CPU_CHIP) 는, 메모리 칩 (M0) 이 리퀘스트를 접수할 수 없게 된 것을 알 수 있다.
그 후, ID 비교 회로 (CPQ) 는, 리퀘스트 큐 (RqQI-0) 에 엔트리된 리퀘스트 (ReqBAb0m0) 에 포함되는 ID 값 2 와, ID 레지스터 회로 (IDR) 에 유지되어 있는 ID 값 2 를 비교한다 (도 11 : Step 4). 비교 결과가 일치하므로, 리퀘스트 (ReqBAb0m0) 는, 리퀘스트 큐 회로 (RqQXI) 에 전송된다 (도 11 : Step 5). 비교 결과가 불일치하는 경우에는, ID 값과 리퀘스트 번호 (ReqN) 값을 포함한 리퀘스트는, 리퀘스트 큐 회로 (RqQXO) 에 전송되고, 메모리 칩 (M1) 에 전송된다 (도 11 : Step 12).
다음으로, 리퀘스트 큐 회로 (RqQXI) 는 저장되어 있는 리퀘스트가 판독 명령을 포함하는지를 체크한다 (도 11 : Step 6). 판독 명령을 포함하고 있는 경우에는, 리퀘스트 큐 회로 (RqQXI) 는, 리스폰스 큐 회로 (RsQo) 의 리스폰스 큐 (RqQp-0 및 RqQp-1) 에 빈 곳이 있는지를 체크한다 (도 11 : Step 7). 리퀘스트 (ReqBAb0m0) 는 판독 명령을 포함하고 있지 않기 때문에, 리퀘스트 큐 회로 (RqQXI) 는 저장되어 있는 리퀘스트 (ReqBAb0m0) 를 메모리 회로 (MemVL) 에 전송한다 (도 11 : Step 10). 메모리 회로 (MemVL) 는 리퀘스트 (ReqBAb0m0) 에 따라 동작한다 (도 11 : Step 11). 구체적으로는, 메모리 회로 (MemVL) 는 리퀘스트 (ReqBAb0m0) 에 포함되는 뱅크 액티브 명령 (BA), 뱅크 어드레스 (BK0), 로우 어드레스 (Row63) 에 의해, 뱅크 0 내의 로우 (63) 에 접속되어 있는 1 kByte 분의 메모리 셀을 활성화하고, 뱅크 0 내의 센스 증폭기에 전송한다 (도 11 : Step 11).
리퀘스트 (ReqBAb0m0) 가 처리된 것에 의해, 리퀘스트 큐 (RqQI-0) 가 하나 분 비었기 때문에, 메모리 칩 (M0) 은, 리퀘스트 이네이블 신호 (RqEn0) 를 High 로 하고, 새로운 리퀘스트를 접수할 수 있는 것을 정보 처리 장치 (CPU_CHIP) 에 알린다. 정보 처리 장치 (CPU_CHIP) 는, 메모리 칩 (M0) 의 리퀘스트 이네이블 신호 (RqEn0) 가 High 가 된 것을 확인하고, 새로운 리퀘스트로서 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 2, 리퀘스트 번호 (ReqN) 값 3, 32 바이트 기입 명령 (WT), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Col127), 32 바이트분의 기입 데이터를 다중화한 리퀘스트 (ReqWT23b0m0) 를 클록 신호 (RqCk0) 에 동기시키고, 메모리 칩 (M0) 에 전송한다 (도 11 : Step 1).
리퀘스트 이네이블 신호 (RqEn0) 를 체크하고 (도 11 : Step 2), 리퀘스트 이네이블 신호 (RqEn0) 가 High 이기 때문에, 메모리 칩 (M0) 은, 정보 처리 장치 (CPU_CHIP) 로부터의 리퀘스트 (ReqWT23b0m0) 를 자신의 리퀘스트 큐 제어 회로 (RqCT) 내의 리퀘스트 큐 (RqQI-0) 에 저장한다 (도 11 : Step 3).
메모리 칩 (M0) 은, 새로운 리퀘스트 (ReqWT23b0m0) 를, 자신의 리퀘스트 큐 회로 (RqQI) 내의 리퀘스트 큐 (RqQI-0) 에 저장하는 것 (도 11 : Step 3) 과는 독립적으로 병행하여, 이미 리퀘스트 큐 (RqQI-1) 에 저장되어 있는 리퀘스트 (ReqRD32b0m0) 에 대한 처리를 실시할 수 있다 (도 11 : Step 4 이후).
다음으로, 이미 리퀘스트 큐 (RqQI-1) 에 저장되어 있는 리퀘스트 (ReqRD32b0m0) 에 대한 동작을 설명한다.
ID 비교 회로 (CPQ) 는, 리퀘스트 큐 (RqQI-1) 에 엔트리된 리퀘스트 (ReqRD32b0m0) 에 포함되는 ID 값 2 와, ID 레지스터 회로 (IDR) 에 유지되어 있는 ID 값 2 를 비교한다 (도 11 : Step 4). 비교 결과가 일치하므로, 리퀘스트 (ReqRD32b0m0) 는, 리퀘스트 큐 회로 (RqQXI) 에 전송된다 (도 11 : Step 5). 비교 결과가 불일치하는 경우에는, 리퀘스트 (ReqRD32b0m0) 는, 리퀘스트 큐 회로 (RqQXO) 에 전송되고, 메모리 칩 (M1) 에 전송된다 (도 11 : Step 12). 다음으로, 리퀘스트 큐 회로 (RqQXI) 는 저장되어 있는 리스폰스가 판독 명령을 포함하는지를 체크한다 (도 11 : Step 6).
리퀘스트 (ReqRD32b0m0) 가 판독 명령을 포함하고 있기 때문에, 리퀘스트 큐 회로 (RqQXI) 는, 리스폰스 큐 회로 (RsQo) 의 리스폰스 큐 (RqQp-0 및 RqQp-1) 에 빈 곳이 있는지를 체크한다 (도 11 : Step 7). 리스폰스 큐 회로 (RsQo) 의 리스폰스 큐 (RqQp-0 및 RqQp-1) 에 빈 곳이 없으면, 빈 곳이 생길 때까지, 리퀘스트 큐 회로 (RqQXI) 는, 리퀘스트 (ReqRD32b0m0) 의 전송을 중단시킨다. 리스폰스 큐 회로 (RsQo) 의 리스폰스 큐 (RqQp-0 및 RqQp-1) 에 빈 곳이 있으면, 리퀘스트 큐 회로 (RqQXI) 는 저장되어 있는 리퀘스트 (ReqRD32b0m0) 를 메모리 회로 (MemVL) 에 전송한다 (도 11 : Step 8). 메모리 회로 (MemVL) 는 리퀘스트 (ReqRD32b0m0) 에 따라 동작한다 (도 11 : Step 9). 구체적으로는, 메모리 회로 (MemVL) 는 리퀘스트 (ReqRD32b0m0) 에 포함되는, ID 값 2, 리퀘스트 번호 (ReqN) 값 2, 32 바이트 데이터 판독 명령 (RD), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Col255) 에 의해, 뱅크 0 의 센스 증폭기에 유지되어 있는 데이터 중에서, 칼럼 어드레스 (255) 를 개시 어드레스로 한 32 바이트분의 데이터가 판독되고 (도 11 : Step 9), ID 레지스터값 2 와, 리퀘스트 번호 (ReqN) 값 2 와 동등한 리스폰 스 번호 (ResN) 값 2 를 포함하여, 리스폰스 큐 제어 회로 (RsCT) 내의 리스폰스 큐 (RsQo) 의 리스폰스 큐 (RsQo-0) 에 리스폰스 (ResRD32b0m0) 로서 엔트리된다 (도 12 : Step 13).
리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 에 리스폰스가 엔트리되면, 그 리스폰스에 대한 레이턴시를 계산한다 (도 12 : Step 14). 다음으로, 리스폰스 이네이블 신호 (RsEn0) 를 체크하고 (도 12 : Step 15), 리스폰스 이네이블 신호 (RsEn0) 가 High 일 때, 리스폰스 번호 (ResN) 와 레이턴시값을 정보 처리 장치 (CPU_CHIP) 에 송신한다 (도 12 : Step 16).
리스폰스 스케줄 회로 (SCH) 는, 리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 에 엔트리되어 있는 리스폰스 수를, 스테이터스 레지스터 (STReg) 에 보존한다 (도 12 : Step 17). 또한, 리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 에 엔트리되어 있는 리스폰스에 대한 리스폰스 우선 순위를 결정한다 (도 12 : Step 18). 다음으로, 리스폰스 이네이블 신호 (RsEn0) 를 체크하고 (도 12 : Step 19), 리스폰스 이네이블 신호 (RsEn0) 가 High 일 때, 리스폰스 우선 순위가 가장 높은 리스폰스를 리스폰스 신호 (RsMux0) 를 통해서 정보 처리 장치 (CPU_CHIP) 에 송신한다 (도 12 : Step 20). 리스폰스 이네이블 신호 (RsEn0) 가 Low 이면, 정보 처리 장치 (CPU_CHIP) 에 송신은 하지 않는다.
리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 중 하나의 리스폰스가 정보 처리 장치 (CPU_CHIP) 에 완전하게 송신되면, 리스폰스 스케줄 회로 (SCH) 는, 리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 에 엔트리되어 있는 리 스폰스 수를 체크하고, 최신의 리스폰스 수를 스테이터스 레지스터 (STReg) 에 보존한다 (도 12 : Step 21).
여기서는, 리스폰스 이네이블 신호 (RsEn0) 가 High 이고, 리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 에 엔트리되어 있는 리스폰스가 리스폰스 (ResRD32b0m0) 뿐이기 때문에, 리스폰스 (ResRD32b0m0) 에 대한 레이턴시값 (Lat32b0m0) 을 계산하고, 리스폰스 (ResRD32b0m0) 에 포함되는 리스폰스 번호 (ResN) 값 2 와 레이턴시값 (Lat32b0m0) 을 정보 처리 장치 (CPU_CHIP) 에 송신한다.
정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 (ReqRD32b0m0) 의 리퀘스트 번호 (ReqN) 값 2 에 대응하는 리스폰스 번호 값 2 와 레이턴시값 (Lat32b0m0) 을 받음으로써, 리스폰스 (ResRD32b0m0) 가 정보 처리 장치 (CPU_CHIP) 에 입력될 때까지의 레이턴시값을 확인할 수 있다.
다음으로, 리스폰스 스케줄 회로 (SCH) 는, 스테이터스 레지스터 (STReg) 에 리스폰스 수 1 을 보존하고, 또한 리스폰스 (eRsRD32b0m0) 의 리스폰스 우선 순위를 최고위로 설정하고, 리스폰스 (RsRD32b0m0) 를 정보 처리 장치 (CPU_CHIP) 에 송신한다.
리스폰스 (RsRD32b0m0) 에는 ID 레지스터값 2, 리퀘스트 번호 (ReqN) 값 2 와 동등한 리스폰스 번호값 2, 32 바이트분의 데이터가 포함된다.
정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 (ReqRD32b0m0) 의 리퀘스트 번호 (ReqN) 값 2 에 대응하는 리스폰스 번호 값 2 를 받음으로써, 리스폰스 (ResRD32b0m0) 가 리퀘스트 (ReqRD32b0m0) 의 리스폰스인 것을 확인할 수 있다.
리스폰스 (ResRD32b0m0) 가 정보 처리 장치 (CPU_CHIP) 에 송신되면, 리스폰스 스케줄 회로 (SCH) 는, 리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 에 엔트리되어 있는 리스폰스가 존재하지 않기 때문에, 스테이터스 레지스터 (STReg) 에 리스폰스 수 0 을 보존한다.
리퀘스트 (ReqRD32b0m0) 에 대응하는 리스폰스 (ResRD32b0m0) 가 리스폰스 큐 회로 (RsQo) 에 엔트리되면, 리스폰스 (ResRD32b0m0) 가 정보 처리 장치 (CPU_CHIP) 에 출력되고 있는 한창 중에도, 리퀘스트 (ReqWT23b0m0) 에 대한 처리를 실시할 수 있다 (도 11 : Step 4 이후).
다음으로, 이미 리퀘스트 큐 (RqQI-0) 에 저장되어 있는 리퀘스트 (ReqWT23b0m0) 에 대한 동작을 설명한다. ID 비교 회로 (CPQ) 는, 리퀘스트 큐 (RqQI-0) 에 엔트리된 리퀘스트 (ReqWT23b0m0) 에 포함되는 ID 값 2 와, ID 레지스터 회로 (IDR) 에 유지되어 있는 ID 값 2 를 비교한다 (도 11 : Step 4). 비교 결과가 일치하므로, 리퀘스트 (ReqWT23b0m0) 는, 리퀘스트 큐 회로 (RqQXI) 에 전송된다 (도 11 : Step 5). 비교 결과가 불일치하는 경우에는, 리퀘스트 (ReqWT23b0m0) 는, 리퀘스트 큐 회로 (RqQXO) 에 전송되고, 메모리 칩 (M1) 에 전송된다 (도 11 : Step 12).
다음으로, 리퀘스트 큐 회로 (RqQXI) 는 저장되어 있는 리스폰스가 판독 명령을 포함하는지를 체크한다 (도 11 : Step 6). 판독 명령을 포함하고 있는 경우에는, 리퀘스트 큐 회로 (RqQXI) 는, 리스폰스 큐 회로 (RsQo) 의 리스폰스 큐 (RqQp-0 및 RqQp-1) 에 빈 곳이 있는지를 체크한다 (도 11 : Step 7). 리퀘스트 (ReqWT23b0m0) 는 판독 명령을 포함하고 있지 않기 때문에, 리퀘스트 큐 회로 (RqQXI) 는 저장되어 있는 리퀘스트 (ReqWT23b0m0) 를 메모리 회로 (MemVL) 에 전송한다 (도 11 : Step 10). 메모리 회로 (MemVL) 는 리퀘스트 (ReqWT23b0m0) 에 따라 동작한다 (도 11 : Step 11). 구체적으로는, 메모리 회로 (MemVL) 는 리퀘스트 (ReqWT23b0m0) 에 포함되는 ID 값 2, 32 바이트 기입 명령 (WT), 뱅크 어드레스 (BK0), 칼럼 어드레스 (Col127) 및 32 바이트분의 기입 데이터에 의해, 메모리 뱅크 0 의 센스 증폭기에, 칼럼 어드레스 (127) 를 개시 어드레스로 한 32 바이트분의 데이터를 기입한다.
도 13 은 메모리 칩 (M1) 으로부터 메모리 칩 (M0) 에 리스폰스가 발생했을 때의, 동작의 일례를 나타내는 플로우 차트이다.
리스폰스 신호 (RsMux1) 로부터, 리스폰스 클록 신호 (RqCk1) 에 동기하고, 리스폰스 번호 (ResN) 값 15 와 레이턴시값 (Latm1) 을 포함한 리스폰스 (ResLatm1) 가 메모리 칩 (M0) 에 송신되면 (도 13 : Step 1), 리스폰스 이네이블 신호 (ResEn1) 가 Low 이면 (도 13 : Step 2), 메모리 칩 (M0) 의 리스폰스 큐 회로 (RsQp) 에 저장되지 않는다. 리스폰스 이네이블 신호 (ResEn1) 가 High 이면 (도 13 : Step 2), 메모리 칩 (M0) 의 리스폰스 큐 회로 (RsQp) 에 저장된다 (도 13 : Step 3).
리스폰스 큐 회로 (RsQp) 에 리스폰스 (ResLatm1) 가 엔트리되면, 그 리스폰스에 대한 레이턴시를 레이턴시값 (Latm1) 으로부터 계산하여 레이턴시값 (Latm1m0) 을 구한다 (도 13 : Step 4). 다음으로, 리스폰스 이네이블 신호 (RsEn0) 를 체크하고 (도 13 : Step 5), 리스폰스 이네이블 신호 (RsEn0) 가 High 일 때, 리스폰스 번호 (ResN) 값 15 와 레이턴시값 (Latm1m0) 을 포함한 리스폰스 (ResLatm1m0) 가 정보 처리 장치 (CPU_CHIP) 에 송신된다 (도 13 : Step 6).
정보 처리 장치 (CPU_CHIP) 는, 리스폰스 번호 (ResN) 값 15 와 레이턴시값 (Latm1m0) 을 받음으로써, 리퀘스트 번호 (ReqN) 값 15 를 갖는 리퀘스트에 대한 리스폰스 번호 (ResN) 값 15 를 갖는 리스폰스가 정보 처리 장치 (CPU_CHIP) 에 입력될 때까지의 레이턴시값을 확인할 수 있다.
메모리 칩 (M0) 에 리스폰스 번호 (ResN) 값 20 과 판독 데이터 (RDdata) 를 포함한 리스폰스 (ResRDm1m0) 가 송신되면 (도 13 : Step 7), 리스폰스 이네이블 신호 (ResEn1) 가 Low 이면 (도 13 : Step 8), 메모리 칩 (M0) 의 리스폰스 큐 회로 (RsQp) 에 저장되지 않는다. 리스폰스 이네이블 신호 (ResEn1) 가 High 이면 (도 13 : Step 8), 메모리 칩 (M0) 의 리스폰스 큐 회로 (RsQp) 에 저장된다 (도 13 : Step 9).
리스폰스 큐 회로 (RsQp) 에 리스폰스 (ResRDm1m0) 가 엔트리되면, 리스폰스 스케줄 회로 (SCH) 는, 리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 에 엔트리되어 있는 리스폰스 수를, 스테이터스 레지스터 (STReg) 에 보존한다 (도 13 : Step 10). 또한, 리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 에 엔트리되어 있는 리스폰스에 대한 리스폰스 우선 순위를 결정한다 (도 13 : Step 11). 다음으로, 리스폰스 이네이블 신호 (RsEn0) 를 체크하고 (도 13 : Step 12), 리스폰스 이네이블 신호 (RsEn0) 가 High 일 때, 리스폰스 우선 순위가 가장 높은 리스폰스를 리스폰스 신호 (RsMux0) 로부터, 정보 처리 장치 (CPU_CHIP) 에 송신한다 (도 13 : Step 13). 리스폰스 이네이블 신호 (RsEn0) 가 Low 이면, 정보 처리 장치 (CPU_CHIP) 에 송신은 하지 않는다.
정보 처리 장치 (CPU_CHIP) 는, 리스폰스 번호 (ResN) 값 15 를 갖는 리스폰스 (ResRDm1m0) 를 받음으로써, 이 리스폰스가 리퀘스트 번호 (ReqN) 값 15 를 갖는 리퀘스트에 대한 리스폰스인 것을 확인할 수 있다.
리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 의 하나의 리스폰스가 정보 처리 장치 (CPU_CHIP) 에 완전하게 송신되면, 리스폰스 스케줄 회로 (SCH) 는, 리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 에 엔트리되어 있는 리스폰스 수를 체크하고, 최신의 리스폰스 수를 스테이터스 레지스터 (STReg) 에 보존한다 (도 13 : Step 14).
리스폰스 스케줄 회로 (SCH) 의 동작에 대해 설명한다.
도 14 는 리스폰스 스케줄 회로 (SCH) 의 동작을 나타내는 플로우 차트이다. 리스폰스 스케줄 회로 (SCH) 에서는, 먼저, 리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 에 리스폰스가 엔트리되어 있는지를 체크한다 (Step 1). 리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 중 어느 것에도 리스폰스가 엔트리되어 있지 않으면, 다시 리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 에 대한 엔트리를 체크한다. 리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 중 어느 것에 리스폰스가 엔트리되어 있으면, 리스폰스의 우선 순위를 체크 하고, 최고위의 리스폰스 우선 순위를 갖는 리스폰스의 송신 준비를 실시한다 (Step 2).
다음으로, 리스폰스 이네이블 신호 (RsEn0) 를 체크하고 (Step 3), Low 일 때에는 리스폰스를 출력하지 않고, 리스폰스 이네이블 신호 (RsEn0) 가 High 를 기다리는 리스폰스 이네이블 신호 (RsEn0) 가 High 를 기다린다. 리스폰스 이네이블 신호 (RsEn0) 가 High 일 때에는, 최고위의 리스폰스 우선 순위를 갖는 리스폰스를 출력한다 (Step 4). 그 리스폰스가 출력된 후에는, 리스폰스에 관한 출력 우선 순위를 변화시킨다 (Step 5).
메모리 칩 (M0) 의 리스폰스 스케줄 회로 (SCH) 에서 실시하는 리스폰스 우선 순위의 변경 동작의 일례에 대해 설명한다. 도 15 에서는, 메모리 칩 (M0) 이 장비하는 리스폰스 스케줄 회로 (SCH) 가 실시하는 동적 리스폰스 우선 순위의 제어를 나타낸다.
먼저, 메모리 칩 (M0) 에서의, 리스폰스 우선 순위의 제어를 설명한다. 전원 투입 직후의 초기 설정 (Initial) 에서, 리스폰스 큐 회로 (RsQo) 에 엔트리되는 메모리 칩 (M0) 의 리스폰스의 우선 순위 (PRsQo(M0)) 는 1, 리스폰스 큐 회로 (RsQp) 에 엔트리되는 메모리 칩 (M1) 의 리스폰스의 우선 순위 (PRsQp(M1)) 는 2 로, 리스폰스 큐 회로 (RsQp) 에 엔트리되는 메모리 칩 (M2) 의 리스폰스의 우선 순위 (PRsQp(M2)) 는 3 으로 설정된다. 특별히 한정되지 않지만, 리스폰스의 순위가 작은 것이 리스폰스의 순위가 높은 것으로 한다. 리스폰스 큐 회로 (RsQo) 에 엔트리된 메모리 칩 (M0) 의 리스폰스 (RsQo(M0)) 가 Ntime 회분 출력되 면, 리스폰스 큐 회로 (RsQo) 에 엔트리되는 메모리 칩 (M0) 의 리스폰스의 우선 순위 (PRsQo(M0)) 는 가장 낮은 3 이 되고, 메모리 칩 (M1) 의 리스폰스의 우선 순위 (PRsQp(M1)) 는 가장 높은 1 이 되고, 리스폰스 큐 회로 (RsQp) 에 엔트리되는 메모리 칩 (M2) 의 리스폰스의 우선 순위 (PRsQp(M2)) 는 2 가 된다.
리스폰스 큐 회로 (RsQp) 에 엔트리되는 메모리 칩 (M1) 의 리스폰스 (PRsQp(M1)) 가, Mtime 회분 출력되면 리스폰스 큐 회로 (RsQp) 에 엔트리되는 메모리 칩 (M1) 의 리스폰스의 우선 순위 (PRsQp(M1)) 는 가장 낮은 3 이 되고, 리스폰스 큐 회로 (RsQp) 에 엔트리되는 메모리 칩 (M2) 의 리스폰스의 우선 순위 (PRsQp(M1)) 는 가장 높은 1 이 되고, 리스폰스 큐 회로 (RsQpo) 에 엔트리되는 메모리 칩 (M0) 의 리스폰스의 우선 순위 (PrsQo(M0)) 는 2 가 된다.
다음으로, 리스폰스 큐 회로 (RsQp) 에 엔트리되는 메모리 칩 (M2) 의 리스폰스 (PRsQp(M2)) 가, Ltime 회분 출력되면 리스폰스 큐 회로 (RsQp) 에 엔트리되는 메모리 칩 (M2) 의 리스폰스의 우선 순위 (PRsQp(M2)) 는 가장 낮은 3 이 되고, 리스폰스 큐 회로 (RsQpo) 에 엔트리되는 메모리 칩 (M0) 의 리스폰스의 우선 순위 (PrsQo(M0)) 는 가장 높은 1 이 된다. 리스폰스 큐 회로 (RsQp) 에 엔트리되는 메모리 칩 (M2) 의 리스폰스의 우선 순위 (PRsQp(M1)) 는 2 가 된다. 리스폰스 큐 회로 (RsQo) 에 엔트리되는 메모리 칩 (M0) 으로부터의 리스폰스의 리스폰스 우선 순위를 변경하기 위한 리스폰스 출력 횟수 (Ntime), 리스폰스 큐 회로 (RsQp) 에 엔트리되는 메모리 칩 (M1) 으로부터의 리스폰스의 리스폰스 우선 순위를 변경하기 위한 리스폰스 출력 횟수 (Mtime) 및 리스폰스 큐 회로 (RsQp) 에 엔트리되는 메모리 칩 (M2) 으로부터의 리스폰스의 리스폰스 우선 순위를 변경하기 위한 리스폰스 출력 횟수 (Ltime) 는, 전원 투입 직후의 초기 설정 (Initial) 에서, 특별히 한정되지 않지만, 각각 10 회, 2 회, 1 회로 설정된다.
또한, 리스폰스 출력 횟수 (Ntime, Mtime, Ltime) 는, 정보 처리 장치 (CPU_CHIP) 로부터 설정할 수 있고, 본 발명이 이용되는 휴대 기기 등의 시스템 구성에 맞춰, 고성능화를 도모할 수 있도록 각각을 설정할 수 있다.
<클록 제어>
도 16(a) 는, 메모리 칩 (M0) 으로부터 출력되는 리스폰스 클록 신호 (RsCk0) 를 정지시키는 동작의 일례이다. 정보 처리 장치 (CPU_CHIP) 는, 리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 에 엔트리되어 있는 리스폰스 수 (ResN) 를 확인하기 위해, 리퀘스트 신호 (RqMux0) 로부터 메모리 칩 (M0) 의 ID 값 2 와 리스폰스 수 확인 명령을 다중화한 리퀘스트 (ReqRNo) 를 입력한다 (Step 2). 메모리 칩 (M0) 의 리퀘스트 큐 회로 (RqQI) 는 리퀘스트 (ReqRNo) 를 저장한다. 다음으로, ID 비교 회로 (CPQ) 는, 리퀘스트 큐 회로 (RqQI) 에 저장되어 있는 리퀘스트 (ReqRNo) 에 포함되는 ID 값 2 와 ID 레지스터 회로 (IDR) 에 유지되어 있는 ID 값 2 를 비교하고, 일치하므로, 리퀘스트 (ReqBAb0m0) 는, 리퀘스트 큐 회로 (RqQXI) 에 전송된다.
리퀘스트 큐 회로 (RqQXI) 는, 리퀘스트 (ReqBAb0m0) 를 스테이터스 레지스터 회로 (STReg) 에 한다. 스테이터스 레지스터 회로 (STReg) 는, ID 값 2 를 포함하여, 리스폰스 수 (ResN) 를 리스폰스 큐 회로 (RsQo) 에 송신하고, 리스폰스 큐 회로 (RsQo) 는, 리스폰스 신호 (RsMux0) 를 통해서, ID 값 2 및 리스폰스 수 (ResN) 를 정보 처리 장치 (CPU_CHIP) 에 송신한다 (Step 3). 다음으로, ID 값 2 및 리스폰스 수 (ResN) 를 받은 정보 처리 장치 (CPU_CHIP) 는, 리스폰스 수 (ResN) 가 0 인지를 체크한다 (Step 4). 리스폰스 수 (ResN) 가 0 이 아닌 경우, 아직 리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 에 엔트리되어 있는 리스폰스가 존재하므로, 다시 리스폰스 수 확인 명령을 메모리 칩 (M0) 에 송신한다 (Step 2).
리스폰스 수 (ResN) 가 0 인 경우에는, 리스폰스 큐 회로 (RsQo) 및 리스폰스 큐 회로 (RsQp) 에 엔트리되어 있는 리스폰스가 존재하지 않기 때문에, 리퀘스트 신호 (RqMux0) 로부터, 리스폰스 클록 신호 (RsCk0) 의 정지 명령을 메모리 칩 (M0) 에 송신한다 (Step 5). 리퀘스트 신호 (RqMux0) 로부터 리퀘스트로서 ID 값 2, 리스폰스 클록 정지 커맨드가 다중화된 리퀘스트 (ReqStop2) 가 메모리 칩 (M0) 에 입력된다. 메모리 칩 (M0) 은 리퀘스트 (ReqStop2) 를 자신의 리퀘스트 큐 제어 회로 (RqCT) 내의 리퀘스트 큐에 저장한다. 그 후, 리퀘스트 큐 제어 회로 (RqCT) 내의 ID 비교 회로는 리퀘스트 (ReqStop2) 에 포함되는 ID 값 2 와 자신의 ID 레지스터의 값 2 를 비교한다. 비교 결과는 일치하고, 리퀘스트 큐 제어 회로 (RqCT) 는 리스폰스 클록 제어 회로 (RsCkC) 내의 클록 분주 회로 (Div2) 에 리퀘스트 (ReqStop2) 를 송신한다 (Step 5).
클록 분주 회로 (Div2) 는, 리퀘스트 (ReqStop2) 에 따라, 리스폰스 클록 신호 (RsCk0) 의 클록 주파수를 서서히 저하시키고, 리스폰스 클록 신호 (RsCk0) 의 정지 준비가 갖추어진 시점에서, 리스폰스 스케줄 회로 (SCH) 를 통해서, 리스폰스 신호 (RsMux0) 로부터, ID 값 2 및 리스폰스 클록 정지 통지 정보를 정보 처리 장치 (CPU_CHIP) 에 송신한다 (Step 6). 그 후, 클록 분주 회로 (Div2) 는, 클록 신호 (ck3) 및 리스폰스 클록 신호 (RsCk0) 를 정지시킨다 (Step 7).
도 16(b) 는, 메모리 칩 (M0) 으로부터 출력되는 리스폰스 클록 신호 (RsCk0) 의 클록 주파수를 저하시키기 위한 동작의 일례이다. 도 16(b) 의 Step 1 에서 Step 4 까지의 동작은 도 16(a) 와 동등하기 때문에, Step 5 부터 설명한다. 리퀘스트 신호 (RqMux0) 로부터 리퀘스트로서 ID 값 2, 리스폰스 클록 분주 커맨드, 및 분주비 8 이 다중화된 리퀘스트 (ReqDIV8) 가 메모리 칩 (M0) 에 송신된다 (Step 5). 메모리 칩 (M0) 은, 자신의 리퀘스트 큐 제어 회로 (RqCT) 내의 ID 비교 회로에서, 리퀘스트 (ReqDIV8) 에 포함되는 ID 값 2 와 자신의 ID 레지스터의 값 2 를 비교한다. 비교 결과는 일치하므로, 리퀘스트 (ReqDIV8) 는, 리퀘스트 클록 제어 회로 (RqCkC) 내의 클록 분주 회로 (Div2) 에 송신된다 (Step 5).
클록 분주 회로 (Div2) 는, 리퀘스트 (ReqDIV8) 에 따라, 리스폰스 클록 신호 (RsCk0) 의 클록 주파수를 서서히 저하시키고, 최종적으로 리퀘스트 클록 신호 (RqC2) 를 8 분의 1 분주한 클록을, 클록 (ck3) 및 리스폰스 클록 신호 (RsCk2) 로부터 출력한다 (Step 6). 리스폰스 클록 신호 (RsCk0) 의 클록 주파수가, 원하는 주파수로 변경된 후, 클록 분주 회로 (Div2) 는 리스폰스 스케줄 회로 (SCH) 를 통해서, 리스폰스 신호 (RsMux0) 로부터, ID 값 2 및 리스폰스 클록 분주 완료 정 보를 정보 처리 장치 (CPU_CHIP) 에 송신한다 (Step 7).
도 16(c) 는, 분주되거나 정지된 리스폰스 클록 신호 (RsCk0) 를 다시 리퀘스트 클록 신호 (RqCk0) 와 동등한 주파수로 동작시키는 경우의 동작의 일례이다. 메모리 칩 (M0) 으로부터 출력되는 리스폰스 클록 신호 (RsCk0) 의 클록 주파수를 저하시키기 위한 동작의 일례이다. 리퀘스트 신호 (RqMux0) 로부터 리퀘스트로서 ID 값 2, 리스폰스 클록 재개 커맨드가 다중화된 리퀘스트 (ReqStart2) 가 메모리 칩 (M0) 에 입력된다.
메모리 칩 (M0) 은 리퀘스트 (ReqStart2) 를 자신의 리퀘스트 큐 제어 회로 (RqCT) 내의 리퀘스트 큐에 저장한다 (Step 2). 그 후, 리퀘스트 큐 제어 회로 (RqCT) 내의 ID 비교 회로는 리퀘스트 (ReqStart2) 에 포함되는 ID 값 2 와 자신의 ID 레지스터의 값 2 를 비교한다. 비교 결과는 일치하므로, 리퀘스트 (ReqDIV4) 를 자신에 대한 리퀘스트인 것으로 판단한다. 리퀘스트 큐 제어 회로 (RqCT) 는 리스폰스 클록 제어 회로 (RsCkC) 내의 클록 분주 회로 (Div2) 에 리퀘스트 (ReqStart2) 를 송신한다 (Step 2). 클록 분주 회로 (Div3) 는, 리퀘스트 (ReqStart2) 에 따라, 서서히 클록 주파수를 높이고, 최종적으로 리퀘스트 클록 신호 (RqCk0) 와 동등한 주파수를 갖는 클록을, 클록 (ck3) 및 리스폰스 클록 신호 (RsCk0) 로부터 출력한다 (Step 3).
리스폰스 클록 신호 (RsCk0) 의 클록 주파수가, 원하는 주파수로 변경된 후, 클록 분주 회로 (Div2) 는 리스폰스 스케줄 회로 (SCH) 를 통해서 리스폰스 신호 (RsMux0) 로부터, ID 값 2 및 리스폰스 클록 재개 완료 정보를 정보 처리 장치 (CPU_CHIP) 에 송신한다 (Step 4). 상기는 리스폰스 클록 신호 (RsCk0) 에 대한 클록 제어 방법에 대해 설명했지만, 리퀘스트 클록 신호 (RqCk1) 에 대한 클록 제어도 동일하게 실시할 수 있는 것은 말할 필요도 없다.
<메모리 회로 (MemVL)>
도 17 은, 메모리 칩 (M0) 이 장비하는 메모리 회로 (MemVL) 의 회로 블록도의 일례이다.
메모리 회로 (MemVL) 는, 커맨드 디코더 (CmdDec), 제어 회로 (ContLogic), 리프레시 카운터 (RefC), 온도계 (Thmo), 라이트 데이터 버퍼 (WDataLat), 리드 데이터 버퍼 (RDataLat), 데이터 제어 회로 (DataCont), 및 메모리 뱅크 (BANK0∼BANK7) 로 구성되어 있다.
또, 각 메모리 뱅크 (BANK0∼BANK7) 는 로우 어드레스 버퍼 (RadLat), 칼럼 어드레스 버퍼 (CadLat), 로우 디코더 (RowDec), 칼럼 디코더 (ColDec), 센스 증폭기 (SenseAmp), 메모리 회로 (MBank0∼MBank7) 로 구성되어 있다.
메모리 회로 (MemVL) 의 판독 동작을 설명한다.
리퀘스트 큐 (RqQXI) 에 뱅크 어드레스 7, 로우 어드레스 5 가 저장되어 있고, 뱅크 액티브 명령 (BA) 이 커맨드 신호 (Command) 로부터, 뱅크 어드레스 7 및 로우 어드레스 5 가, 어드레스 신호 (Address) 로부터 메모리 회로 (MemVL) 에 송신된다. 커맨드 디코더 (CmdDec) 는 뱅크 액티브 명령 (BA) 을 해독하고, 제어 회로 (ContLogic) 에 의해 메모리 뱅크 (BANK7) 가 선택되고, 메모리 뱅크 (BANK7) 의 로우 어드레스 버퍼 (RadLat) 에 로우 어드레스 5 가 저장되고, 로우 디코더 (RowDec) 에 입력된다. 그 후 메모리 회로 (MBank7) 내의 로우 어드레스 5 에 접속되어 있는 메모리 셀이 활성화되고, 1 kByte 분의 데이터가 센스 증폭기 (SenseAmp) 에 전송된다.
다음으로, 리퀘스트 큐 (RqQXI) 에 8 바이트 데이터 리드 명령 (RD8), 뱅크 어드레스 7, 칼럼 어드레스 (64) 가 저장되어 있고, 8 바이트 데이터 리드 명령 (RD8) 이 커맨드 신호 (Command) 로부터, 뱅크 어드레스 7 및 칼럼 어드레스 63 이, 어드레스 신호 (Address) 로부터 메모리 회로 (MemVL) 에 송신된다.
커맨드 디코더 (CmdDec) 는 8 바이트 데이터 리드 명령 (RD8) 을 해독하고, 제어 회로 (ContLogic) 에 의해 메모리 뱅크 (BANK7) 가 선택되고, 메모리 뱅크 (BANK7) 의 칼럼 어드레스 버퍼 (CAddLat) 에 칼럼 어드레스 63 이 저장되고, 칼럼 디코더 (ColDec) 에 입력된다.
그 후, 칼럼 어드레스 (64) 를 개시 어드레스로 하여, 8 바이트분의 데이터가, 센스 증폭기 (SenseAmp) 로부터 판독되고, 데이터 제어 회로 (DataCont) 를 통해 리드 데이터 버퍼 (RDataLat) 에 전송되고 저장된다. 그 후 판독된 8 바이트분의 데이터는 리스폰스 큐 회로 (RsQo) 에 전송된다.
다음으로, 메모리 회로 (MemVL) 의 기입 동작을 설명한다. 리퀘스트 큐 (RqQXI) 에 8 바이트 데이터 라이트 명령 (WT8), 뱅크 어드레스 7, 칼럼 어드레스 (128) 가 저장되어 있고, 8 바이트 데이터 라이트 명령 (RD8) 이 커맨드 신호 (Command) 로부터, 뱅크 어드레스 7 및 칼럼 어드레스 (127) 가, 어드레스 신호 (Address) 로부터, 8 바이트 데이터가 라이트 데이터 신호 (WData) 로부터 메모리 회로 (MemVL) 에 송신된다.
커맨드 디코더 (CmdDec) 는 8 바이트 데이터 라이트 명령 (WT8) 을 해독하고, 제어 회로 (ContLogic) 에 의해 메모리 뱅크 (BANK7) 의 칼럼 어드레스 버퍼 (CAddLat) 에 칼럼 어드레스 (128) 가 저장되고, 칼럼 디코더 (ColDec) 에 입력되고, 8 바이트분의 라이트 데이터는 라이트 데이터 버퍼 (WDataLat) 에 저장된다.
그 후 칼럼 어드레스 (128) 를 개시 어드레스로 하여, 8 바이트분의 데이터가, 라이트 데이터 버퍼 (WDataLat) 로부터, 데이터 제어 회로 (DataCont) 를 통해 메모리 뱅크 (BANK7) 내의 센스 증폭기 (SenseAmp) 에 전송되고, 메모리 회로 (Mbank7) 에 기입된다.
각 메모리 뱅크 (BANK0∼BANK7) 는 독립적으로 동작하기 때문에, 상이한 뱅크 사이에서는, 판독 동작과 기입 동작을 동시에 실행할 수 있어 고속화를 도모할 수 있다.
다음으로, 리프레시 동작에 대해 설명한다. 메모리 회로 (MemVL) 는 휘발성 메모리이기 때문에, 데이터 유지를 위해 정기적으로 리프레시 동작을 실시할 필요가 있다. 리퀘스트 큐 (RqQXI) 에 저장되어 있는 리프레시 명령 (REF) 이, 커맨드 신호 (Command) 로부터 입력된다. 커맨드 디코더 (CmdDec) 는, 리프레시 명령 (REF) 을 해독하고, 제어 회로 (ContLogic) 가 리프레시 카운터 (RefC) 에 리프레시 동작을 실시하도록 지시한다. 리프레시 카운터 (RefC) 는 제어 회로 (ContLogic) 의 지시에 의해 리프레시 동작을 실시한다.
다음으로, 셀프 리프레시 동작에 대해 설명한다. 메모리 회로 (MemVL) 에 대한 리퀘스트가 장기간 발생하지 않을 때에는, 셀프 리프레시 상태로 동작 모드를 전환하고, 메모리 회로 (MemVL) 스스로가 리프레시 동작을 실시할 수 있다.
리퀘스트 큐 (RqQXI) 에 저장되어 있는 셀프 리프레시·엔트리 명령 (SREF) 이 커맨드 신호 (Command) 로부터 입력된다. 커맨드 디코더 (CmdDec) 는, 셀프 리프레시·엔트리 명령 (SREF) 을 해독하고, 제어 회로 (ContLogic) 는 전체 회로를 셀프 리프레시 상태로 동작 모드를 전환한다. 또한, 리프레시 카운터 (RefC) 에 자동적으로, 정기적으로 셀프 리프레시 동작을 실시하도록 지시한다. 리프레시 카운터 (RefC) 는 제어 회로 (ContLogic) 의 지시에 의해, 자동적으로, 정기적으로 셀프 리프레시 동작을 실시한다.
이 때의 셀프 리프레시 동작에서는, 온도에 따라 셀프 리프레시의 빈도를 변화시킬 수 있다.
일반적으로 휘발성 메모리에서는, 온도가 높은 경우에는 데이터 유지 시간이 짧아지고, 낮은 경우에는 길어진다는 성질이 있다. 그래서, 온도계로 온도를 검지하고, 온도가 높은 경우가 셀프 리프레시의 주기를 짧게 하고, 온도가 낮은 경우에는 셀프 리프레시의 주기를 길게 하고, 셀프 리프레시 동작을 실시한다. 이로써, 쓸데없는 셀프 리프레시 동작을 삭감할 수 있어 저전력화를 도모할 수 있다.
셀프 리프레시 상태를 빠져 나가기 위해서는, 셀프 리프레시·해제 명령 (SREFX) 을 커맨드 신호 (Command) 로부터 입력함으로써 실현할 수 있다. 셀프 리프레시 상태를 빠져 나간 후의 데이터 유지 동작은 리프레시 명령 (REF) 에 의해 실시된다.
<메모리 칩 (M1) 의 설명>
도 18 은, 메모리 칩 (M1) 의 구성도의 일례이다.
메모리 칩 (M1) 은, 리퀘스트 인터페이스 회로 (ReqIF) 와, 리스폰스 인터페이스 회로 (ResIF) 와, 초기화 회로 (INIT), 메모리 회로 (MemNV1) 로 구성되어 있다. 리퀘스트 인터페이스 회로 (ReqIF) 는 리퀘스트 클록 제어 회로 (RqCkC) 및 리퀘스트 큐 제어 회로 (RqCT) 로 구성된다. 리퀘스트 클록 제어 회로 (RqCkC) 는 클록 드라이버 (Drv1) 및 클록 분주 회로 (Div1) 로 구성된다.
리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 큐 회로 (RqQI), 리퀘스트 큐 회로 (RqQXI), 리퀘스트 큐 회로 (RqQXO), ID 레지스터 회로 (IDR), ID 비교 회로 (CPQ), 레이턴시값 출력 설정 레지스터 회로 (LRG), 리스폰스 순서 설정 레지스터 회로 (RRG), 리퀘스트 번호 설정 회로 (RNB) 로 구성된다.
특별히 한정되지 않지만, 리퀘스트 큐 회로 (RqQI) 는 4 개의 리퀘스트 큐로 구성되고, 리퀘스트 큐 회로 (RqQXI) 는 4 개의 리퀘스트 큐로 구성되고, 리퀘스트 큐 회로 (RqQXO) 는 4 개의 리퀘스트 큐로 구성된다. 리스폰스 인터페이스 회로 (ResIF) 는 리스폰스 클록 제어 회로 (RsCkC) 및 리스폰스 큐 제어 회로 (RsCT) 로 구성된다. 리스폰스 클록 제어 회로 (RsCkC) 는 클록 드라이버 (Drv2) 및 클록 분주 회로 (Div2) 로 구성된다.
리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 큐 회로 (RsQo), 리스폰스 큐 회로 (RsQp), 스테이터스 레지스터 회로 (STReg), 리스폰스 스케줄 회로 (SCH), 레 이턴시 계산 회로 (LA), 리스폰스 번호 테이블 (TB) 로 구성된다.
특별히 한정되지 않지만, 리스폰스 큐 회로 (RsQo) 는 4 개의 리스폰스 큐로 구성되고, 리스폰스 큐 회로 (RsQp) 는 4 개의 리스폰스 큐로 구성된다.
리스폰스 클록 제어 회로 (RsCkC) 는 클록 드라이버 (Drv2) 및 클록 분주 회로 (Div2) 로 구성된다. 리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 큐 회로 (RsQo), 리스폰스 큐 회로 (RsQp), 스테이터스 레지스터 회로 (STReg), 리스폰스 스케줄 회로 (SCH) 로 구성된다.
메모리 회로 (MemNV1) 는, 특별히 한정되지 않지만, 불휘발성 메모리이며, NOR 형 플래시 메모리 셀을 이용한 NOR 형 플래시 메모리이다. 메모리 회로 (MemNV1) 에는, 부트 디바이스 ID 값 (BotID) 및 종단 디바이스 ID 값 (EndI) 이 저장된다. 메모리 회로 (MemNV1) 및 초기화 회로 (INIT1) 이외의, 메모리 칩 (M1) 을 구성하는 회로 및 데이터 판독이나 데이터 기입 등의 동작은, 도 10 의 메모리 칩 (M0) 과 동등하다.
본 메모리 칩 (M1) 의 전원 투입시의 동작에 대해 설명한다. 메모리 칩 (M1) 에 전원이 투입되면 초기화 회로 (INIT1) 는 메모리 칩 (M1) 의 초기화를 실시한다. 메모리 칩 (M1) 은, 부트 디바이스 인식 신호 (Bsig) 가 접지 (gnd) 되어 있으므로, 자기 자신이 부트 디바이스인 것을 인식하고, 스스로의 메모리 회로 (MemNV1) 가 유지하고 있는 부트 디바이스 ID 값 1 을 ID 레지스터 (IDR) 에 설정하고, ID 유효 비트를 High 로 한다.
다음으로 리스폰스 스케줄 회로 (SCH) 가 갖는 리스폰스 큐 회로 (RsQo) 에 입력되는 리스폰스의 우선 순위를 1 로, 리스폰스 큐 회로 (RsQp) 에 입력되는 메모리 칩 (M2) 으로부터의 리스폰스의 우선 순위를 2 로 설정한다. 클록 분주 회로 (Div1 및 Div2) 의 분주비는 1 로 설정된다. 초기화 회로 (INIT1) 에 의한 초기 설정이 종료되면, 메모리 칩 (M1) 은 메모리 칩 (M1) 과 메모리 칩 (M2) 사이에서 통신할 수 있는 것을 확인하는 통신 확인 동작을 실시한다. 메모리 칩 (M1) 은 리퀘스트 이네이블 신호 (RqEn2) 가 High 가 된 것을 확인하고, 리스폰스 이네이블 신호 (RsEn2) 및 리퀘스트 이네이블 신호 (RqEn1) 를 High 로 한다.
다음으로, 메모리 칩 (M0) 은, 리퀘스트 이네이블 신호 (RqEn1) 가 High 가 된 것을 확인하고, 리스폰스 이네이블 신호 (RsEn1) 를 High 로 한다. 통신 확인 동작이 종료되면, 메모리 회로 (MemNV1) 로부터 부트 데이터가 판독되고, 메모리 칩 (M0) 을 통해 정보 처리 장치 (CPU_CHIP) 에 송신된다. 다음으로, 메모리 칩 (M1) 에서의 리스폰스 우선 순위의 제어를 설명한다.
도 19 에서는 메모리 칩 (M1) 이 장비하는 리스폰스 스케줄 회로 (SCH) 가 실시하는 동적 리스폰스 우선 순위의 제어를 나타낸다.
도 1 에 나타낸 바와 같이, 메모리 칩 (M1) 에는, 메모리 칩 (M0) 의 리스폰스는 발생하지 않는 접속 구성으로 되어 있는 경우에는, 메모리 칩 (M1) 의 리스폰스 및 메모리 칩 (M2) 의 리스폰스에 대해서만 리스폰스의 우선 순위가 부가된다. 전원 투입 직후의 초기 설정 (Initial) 에서, 리스폰스 큐 회로 (RsQo) 에 엔트리되는 메모리 회로 (MemNV1) 로부터의 리스폰스의 우선 순위 (PRsQo(M1)) 는 1, 리스폰스 큐 회로 (RsQp) 에 엔트리되는 메모리 칩 (M2) 으로부터의 리스폰스의 우 선 순위 (PRsQp(M2)) 는 2 로 설정된다. 특별히 한정되지 않지만, 리스폰스의 순위가 작은 것이 리스폰스의 순위가 높은 것으로 한다.
다음으로, 리스폰스 큐 회로 (RsQo) 에 엔트리된 메모리 회로 (MemNV1) 의 리스폰스 (RsQo(M1)) 가 M1time 회분 출력되면, 리스폰스 큐 회로 (RsQo) 에 엔트리되는 리스폰스의 우선 순위 (PRsQo(M1)) 는 가장 낮은 2 가 되고, 메모리 칩 (M2) 의 리스폰스의 우선 순위 (PRsQp(M2)) 는 가장 높은 1 이 된다.
다음으로, 리스폰스 큐 회로 (RsQp) 에 엔트리되는 메모리 칩 (M2) 으로부터의 리스폰스 (PRsQp(M2)) 가, L1time 회분 출력되면 리스폰스 큐 회로 (RsQp) 에 엔트리되는 메모리 칩 (M2) 으로부터의 리스폰스의 우선 순위 (PRsQp(M2)) 는 가장 낮은 2 가 되고, 리스폰스 큐 회로 (RsQo) 에 엔트리되는 리스폰스의 우선 순위 (PRsQp(M1)) 는 가장 높은 1 이 된다. 리스폰스 큐 회로 (RsQo) 에 엔트리되는 메모리 회로 (MemNV1) 로부터의 리스폰스의 리스폰스 우선 순위를 변경하기 위한 리스폰스 출력 횟수 (M1time), 리스폰스 큐 회로 (RsQp) 에 엔트리되는 메모리 칩 (M2) 으로부터의 리스폰스의 리스폰스 우선 순위를 변경하기 위한 리스폰스 출력 횟수 (L1time) 는, 전원 투입 직후의 초기 설정 (Initial) 에서, 특별히 한정되지 않지만, 각각 10 회, 1 회로 설정된다. 또한, 리스폰스 출력 횟수 (M1time, L1time) 는, 정보 처리 장치 (CPU_CHIP) 로부터 설정할 수 있고, 본 발명이 이용되는 휴대 기기 등의 시스템 구성에 맞춰 고성능화를 도모할 수 있도록 각각을 설정할 수 있다.
또, 메모리 칩 (M1) 이 장비하는 리스폰스 스케줄 회로 (SCH) 가 실시하는 동적 리스폰스 우선 순위의 제어는, 도 14 에 나타낸 동작과 동등하다. 또, 리퀘스트 클록 신호 (RqCk2) 및 리스폰스 클록 신호 (RsCk1) 의 클록 제어 방법은, 도 16 에 나타낸 클록 제어 방법과 동일하다.
<메모리 회로 (MemNV1)>
도 20 은, 메모리 칩 (M0) 이 장비하는 메모리 회로 (MemNV1) 의 회로 블록도의 일례이다.
메모리 회로 (MemNV1) 는, 커맨드 디코더 (CmdDec), 제어 회로 (ContLogic), 라이트 데이터 버퍼 (WDataLat), 리드 데이터 버퍼 (RDataLat), 데이터 제어 회로 (DataCont), 및 메모리 뱅크 (NV1BANK0∼NV1BANK7) 로 구성되어 있다.
또, 각 메모리 뱅크 (NV1BANK0∼NV1BANK7) 는 페이지 어드레스 버퍼 (PadLat), 칼럼 어드레스 버퍼 (CadLat), 페이지 디코더 (PageDec), 칼럼 디코더 (ColDec), 데이터 버퍼 (DataLat), 메모리 셀 회로 (NV1BK0∼NV1BK7) 로 구성되어 있다.
메모리 회로 (MemNV1) 의 판독 동작을 설명한다.
리퀘스트 큐 (RqQXI) 에 뱅크 어드레스 7, 로우 어드레스 5 가 저장되어 있고, 뱅크 액티브 명령 (BA) 이 커맨드 신호 (Command) 로부터, 뱅크 어드레스 7 및 페이지 어드레스 5 가, 어드레스 신호 (Address) 로부터 메모리 회로 (MemNV1) 에 송신된다. 커맨드 디코더 (CmdDec) 는 뱅크 액티브 명령 (BA) 을 해독하고, 제어 회로 (ContLogic) 에 의해 메모리 뱅크 (NV1BANK7) 가 선택되고, 메모리 뱅크 (NV1BANK7) 의 페이지 어드레스 버퍼 (PadLat) 에 페이지 어드레스 5 가 저장되고, 페이지 디코더 (PageDec) 에 입력된다. 그 후 메모리 셀 회로 (NV1Bank7) 내의 페이지 어드레스 5 에 접속되어 있는 메모리 셀이 활성화되고, 특별히 한정되지 않지만 1 kByte 분의 데이터가 데이터 버퍼 (DataLat) 에 전송된다.
다음으로, 리퀘스트 큐 (RqQXI) 에 8 바이트 데이터 리드 명령 (RD8), 뱅크 어드레스 7, 칼럼 어드레스 (64) 가 저장되어 있고, 8 바이트 데이터 리드 명령 (RD8) 이 커맨드 신호 (Command) 로부터, 뱅크 어드레스 7 및 칼럼 어드레스 63 이, 어드레스 신호 (Address) 로부터 메모리 회로 (MemNV1) 에 송신된다.
커맨드 디코더 (CmdDec) 는 8 바이트 데이터 리드 명령 (RD8) 을 해독하고, 제어 회로 (ContLogic) 에 의해 메모리 뱅크 (NV1BANK7) 가 선택되고, 메모리 뱅크 (NV1BANK7) 의 칼럼 어드레스 버퍼 (CAddLat) 에 칼럼 어드레스 63 이 저장되고, 칼럼 디코더 (ColDec) 에 입력된다.
그 후, 칼럼 어드레스 (64) 를 개시 어드레스로 하여, 8 바이트분의 데이터가, 데이터 버퍼 (DataLat) 로부터 판독되고, 데이터 제어 회로 (DataCont) 를 통해 리드 데이터 버퍼 (RDataLat) 에 전송되고 저장된다. 그 후 판독된 8 바이트분의 데이터는 리스폰스 큐 회로 (RsQo) 에 전송된다.
다음으로, 메모리 회로 (MemNV1) 의 기입 동작을 설명한다. 리퀘스트 큐 (RqQXI) 에 8 바이트 데이터 라이트 명령 (WT8), 뱅크 어드레스 7, 칼럼 어드레스 (128) 가 저장되어 있고, 8 바이트 데이터 라이트 명령 (RD8) 이 커맨드 신호 (Command) 로부터, 뱅크 어드레스 7 및 칼럼 어드레스 (127) 가, 어드레스 신호 (Address) 로부터, 8 바이트 데이터가 라이트 데이터 신호 (WData) 로부터 메모리 회로 (MemNV1) 에 송신된다.
커맨드 디코더 (CmdDec) 는 8 바이트 데이터 라이트 명령 (WT8) 을 해독하고, 제어 회로 (ContLogic) 에 의해 메모리 뱅크 (NV1BANK7) 가 선택되고, 메모리 뱅크 (NV1BANK7) 의 칼럼 어드레스 버퍼 (CAddLat) 에 칼럼 어드레스 (128) 가 저장되고, 칼럼 디코더 (ColDec) 에 입력된다.
또, 제어 회로 (ContLogic) 에 의해 8 바이트분의 라이트 데이터는 라이트 데이터 버퍼 (WDataLat) 에 저장된다.
그 후 칼럼 어드레스 (128) 를 개시 어드레스로 하여, 8 바이트분의 데이터가, 라이트 데이터 버퍼 (WDataLat) 로부터, 데이터 제어 회로 (DataCont) 를 통해 메모리 뱅크 (NV1BANK7) 내의 데이터 버퍼 (DataLat) 에 전송되고, 메모리 셀 회로 (NV1BK7) 에 기입된다.
각 메모리 뱅크 (NV1BANK0∼NV1BANK7) 는 독립적으로 동작하기 때문에, 상이한 뱅크 사이에서는, 판독 동작과 기입 동작을 동시에 실행할 수 있어 고속화를 도모할 수 있다.
<메모리 칩 (M2) 의 설명>
도 21 은, 메모리 칩 (M2) 의 구성도의 일례이다.
메모리 칩 (M2) 은, 리퀘스트 인터페이스 회로 (ReqIF) 와, 리스폰스 인터페이스 회로 (ResIF) 와, 초기화 회로 (INIT), 메모리 회로 (MemNV1) 로 구성되어 있다. 리퀘스트 인터페이스 회로 (ReqIF) 는 리퀘스트 클록 제어 회로 (RqCkC) 및 리퀘스트 큐 제어 회로 (RqCT) 로 구성된다. 리퀘스트 클록 제어 회로 (RqCkC) 는 클록 드라이버 (Drv1) 및 클록 분주 회로 (Div1) 로 구성된다.
리퀘스트 큐 제어 회로 (RqCT) 는 리퀘스트 큐 회로 (RqQI), 리퀘스트 큐 회로 (RqQXI), 리퀘스트 큐 회로 (RqQXO), ID 레지스터 회로 (IDR), ID 비교 회로 (CPQ), 레이턴시값 출력 설정 레지스터 회로 (LRG), 리스폰스 순서 설정 레지스터 회로 (RRG), 리퀘스트 번호 설정 회로 (RNB) 로 구성된다.
특별히 한정되지 않지만, 리퀘스트 큐 회로 (RqQI) 는 4 개의 리퀘스트 큐로 구성되고, 리퀘스트 큐 회로 (RqQXI) 는 4 개의 리퀘스트 큐로 구성되고, 리퀘스트 큐 회로 (RqQXO) 는 4 개의 리퀘스트 큐로 구성된다. 리스폰스 인터페이스 회로 (ResIF) 는 리스폰스 클록 제어 회로 (RsCkC) 및 리스폰스 큐 제어 회로 (RsCT) 로 구성된다. 리스폰스 클록 제어 회로 (RsCkC) 는 클록 드라이버 (Drv2) 및 클록 분주 회로 (Div2) 로 구성된다.
리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 큐 회로 (RsQo), 리스폰스 큐 회로 (RsQp), 스테이터스 레지스터 회로 (STReg), 리스폰스 스케줄 회로 (SCH), 레이턴시 계산 회로 (LA), 리스폰스 번호 테이블 (TB) 로 구성된다.
특별히 한정되지 않지만, 리스폰스 큐 회로 (RsQo) 는 4 개의 리스폰스 큐로 구성되고, 리스폰스 큐 회로 (RsQp) 는 4 개의 리스폰스 큐로 구성된다.
리스폰스 클록 제어 회로 (RsCkC) 는 클록 드라이버 (Drv2) 및 클록 분주 회로 (Div2) 로 구성된다. 리스폰스 큐 제어 회로 (RsCT) 는, 리스폰스 큐 회로 (RsQo), 리스폰스 큐 회로 (RsQp), 스테이터스 레지스터 회로 (STReg), 리스폰스 스케줄 회로 (SCH) 로 구성된다.
메모리 회로 (MemNV2) 는, 특별히 한정되지 않지만, 불휘발성 메모리이며, NAND 형 플래시 메모리 셀을 이용한 NAND 형 플래시 메모리이다. 메모리 회로 (MemNV2) 및 초기화 회로 (INIT2) 이외의, 메모리 칩 (M2) 을 구성하는 회로 및 데이터 판독이나 데이터 기입 등의 동작은 도 10 의 메모리 칩 (M0) 과 동등하다.
본 메모리 칩 (M2) 의 전원 투입시의 동작에 대해 설명한다. 메모리 칩 (M2) 에 전원이 투입되면 초기화 회로 (INIT2) 는 메모리 칩 (M2) 의 초기화를 실시한다. 먼저, ID 레지스터 회로 (IDR) 가 갖는 ID 레지스터의 값을 0 으로, ID 유효 비트를 Low 로 초기 설정한다. 다음으로 리스폰스 스케줄 회로 (SCH) 가 갖는 리스폰스 큐 회로 (RsQo) 에 입력되는 리스폰스의 우선 순위를 1 로 설정한다. 클록 분주 회로 (Div1 및 Div2) 의 분주비는 1 로 설정된다. 초기화 회로 (INIT2) 에 의한 초기 설정이 종료되면, 메모리 칩 (M2) 은 메모리 칩 (M1) 과의 사이에서 통신할 수 있는 것을 확인하는 통신 확인 동작을 실시한다. 메모리 칩 (M2) 은, RqEn3, RsMux3, RqCk3 을 접지 (gnd) 하고 있음으로써, 직렬 접속되어 있는 메모리 칩의 가장 종단의 메모리 칩인 것을 인식하고, 리퀘스트 이네이블 신호 (RqEn2) 를 High 로 한다.
다음으로, 메모리 칩 (M1) 은 리퀘스트 이네이블 신호 (RqEn2) 가 High 가 된 것을 확인하고, 리스폰스 이네이블 신호 (RsEn2) 및 리퀘스트 이네이블 신호 (RqEn1) 를 High 로 한다. 다음으로, 메모리 칩 (M2) 에서의 리스폰스 우선 순위의 제어를 설명한다.
도 22 에서는 메모리 칩 (M2) 이 장비하는 리스폰스 스케줄 회로 (SCH) 가 실시하는 동적 리스폰스 우선 순위의 제어를 나타낸다. 도 1 에 나타낸 바와 같이, 메모리 칩 (M2) 이 직렬 접속의 최종 칩인 경우에는, 메모리 칩 (M2) 에는 메모리 칩 (M0) 및 메모리 칩 (M1) 의 리스폰스는 발생하지 않는다.
그 때문에, 메모리 칩 (M2) 의 리스폰스에 대해서만 리스폰스의 우선 순위가 부가된다. 따라서, 전원 투입 직후의 초기 설정 (Initial) 에서, 리스폰스 큐 회로 (RsQo) 에 엔트리되는 메모리 칩 (M2) 의 리스폰스의 우선 순위 (PRsQo(M2)) 는 1 로 설정된 후에는, 변화되지 않는다. 리스폰스 큐 회로 (RsQo) 에 엔트리되는 메모리 회로 (NV2) 의 리스폰스의 우선 순위 (PRsQo(M2)) 를 변경하는 경우가 없기 때문에, 리스폰스 큐 회로 (RsQo) 에 엔트리되는 메모리 칩 (M2) 으로부터의 리스폰스의 리스폰스 우선 순위를 변경하기 위한 리스폰스 출력 횟수는, 전원 투입 직후의 초기 설정 (Initial) 에서, 특별히 한정되지 않지만, 0 회로 설정되고, 변경할 필요가 없다. 또, 리스폰스 클록 신호 (RsCk2) 의 클록 제어 방법은, 도 16 에 나타낸 클록 제어 방법과 동일하다.
<메모리 회로 (MemNV2)>
도 23 은, 메모리 칩 (M0) 이 장비하는 메모리 회로 (MemNV2) 의 회로 블록도의 일례이다.
메모리 회로 (MemNV1) 는, 커맨드 디코더 (CmdDec), 제어 회로 (ContLogic), 라이트 데이터 버퍼 (WDataLat), 리드 데이터 버퍼 (RDataLat), 데이터 제어 회로 (DataCont), 및 메모리 뱅크 (NV1BANK0∼NV1BANK7) 로 구성되어 있다.
또, 각 메모리 뱅크 (NV1BANK0∼NV1BANK7) 는 페이지 어드레스 버퍼 (PadLat), 칼럼 어드레스 버퍼 (CadLat), 페이지 디코더 (PageDec), 칼럼 디코더 (ColDec), 데이터 버퍼 (DataLat), 메모리 셀 회로 (NV1BK0∼NV1BK7) 로 구성되어 있다.
메모리 회로 (MemNV1) 의 판독 동작을 설명한다.
리퀘스트 큐 (RqQXI) 에 뱅크 어드레스 7, 페이지 어드레스 5 가 저장되어 있고, 뱅크 액티브 명령 (BA) 이 커맨드 신호 (Command) 로부터, 뱅크 어드레스 7 및 페이지 어드레스 5 가 어드레스 신호 (Address) 로부터 메모리 회로 (MemNV2) 에 송신된다. 커맨드 디코더 (CmdDec) 는 뱅크 액티브 명령 (BA) 을 해독하고, 제어 회로 (ContLogic) 에 의해 메모리 뱅크 (NV2BK7) 가 선택되고, 메모리 뱅크 (NV1BANK7) 의 페이지 어드레스 버퍼 (PadLat) 에 페이지 어드레스 5 가 저장되고, 페이지 디코더 (PageDec) 에 입력된다. 그 후 메모리 셀 회로 (NV2BK7) 내의 페이지 어드레스 5 에 접속되어 있는 메모리 셀이 활성화되고, 특별히 한정되지 않지만 2 kByte 분의 데이터가 데이터 버퍼 (DataLat) 에 전송된다.
다음으로, 리퀘스트 큐 (RqQXI) 에 32 바이트 데이터 리드 명령 (RD32), 뱅크 어드레스 7, 칼럼 어드레스 (64) 가 저장되어 있고, 32 바이트 데이터 리드 명령 (RD32) 이 커맨드 신호 (Command) 로부터, 뱅크 어드레스 7 및 칼럼 어드레스 (64) 가 어드레스 신호 (Address) 로부터 메모리 회로 (MemNV2) 에 송신된다.
커맨드 디코더 (CmdDec) 는 32 바이트 데이터 리드 명령 (RD32) 을 해독하고, 제어 회로 (ContLogic) 에 의해 메모리 뱅크 (NV1BANK7) 가 선택되고, 메모리 뱅크 (NV1BANK7) 의 칼럼 어드레스 버퍼 (CAddLat) 에 칼럼 어드레스 (64) 가 저장 되고, 칼럼 디코더 (ColDec) 에 입력된다.
그 후, 칼럼 어드레스 (64) 를 개시 어드레스로 하여, 32 바이트분의 데이터가 데이터 버퍼 (DataLat) 로부터 판독되고, 데이터 제어 회로 (DataCont) 를 통해 리드 데이터 버퍼 (RDataLat) 에 전송되고 저장된다. 그 후 판독된 32 바이트분의 데이터는 리스폰스 큐 회로 (RsQo) 에 전송된다.
다음으로, 메모리 회로 (MemNV2) 의 기입 동작을 설명한다. 리퀘스트 큐 (RqQXI) 에 8 바이트 데이터 라이트 명령 (WT32), 뱅크 어드레스 7, 칼럼 어드레스 (128) 가 저장되어 있고, 32 바이트 데이터 라이트 명령 (RD32) 이 커맨드 신호 (Command) 로부터, 뱅크 어드레스 7 및 칼럼 어드레스 (127) 가 어드레스 신호 (Address) 로부터, 32 바이트 데이터가 라이트 데이터 신호 (WData) 로부터 메모리 회로 (MemNV2) 에 송신된다.
커맨드 디코더 (CmdDec) 는 32 바이트 데이터 라이트 명령 (WT32) 을 해독하고, 제어 회로 (ContLogic) 에 의해 메모리 뱅크 (NV2BANK7) 가 선택되고, 메모리 뱅크 (NV2BANK7) 의 칼럼 어드레스 버퍼 (CAddLat) 에 칼럼 어드레스 (128) 가 저장되고, 칼럼 디코더 (ColDec) 에 입력된다.
또, 제어 회로 (ContLogic) 에 의해 32 바이트분의 라이트 데이터는 라이트 데이터 버퍼 (WDataLat) 에 저장된다.
그 후 칼럼 어드레스 (128) 를 개시 어드레스로 하여, 32 바이트분의 데이터가 라이트 데이터 버퍼 (WDataLat) 로부터, 데이터 제어 회로 (DataCont) 를 통해 메모리 뱅크 (NV2BANK7) 내의 데이터 버퍼 (DataLat) 에 전송되고, 메모리 셀 회로 (NV2BK7) 에 기입된다.
각 메모리 뱅크 (NV2BANK0∼NV2BANK7) 는 독립적으로 동작하기 때문에, 상이한 뱅크 사이에서는, 판독 동작과 기입 동작을 동시에 실행할 수 있어 고속화를 도모할 수 있다.
도 24 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 모듈 (MEM) 에 송신된 리퀘스트에 포함되는 ID 값이 메모리 칩 (M0, M1 및 M2) 의 ID 레지스터값 중 어느 것에도 일치하지 않고, 에러가 발생한 경우의 동작의 일례를 나타내는 플로우 차트이다. 정보 처리 장치 (CPU_CHIP) 로부터 리퀘스트와 ID 값이 메모리 모듈 (MEM) 에 송신된다 (Step 1). 리퀘스트 이네이블 신호 (RqEn0) 가 Low 이면 (Step 2), 정보 처리 장치 (CPU_CHIP) 로부터의 리퀘스트는 메모리 칩 (M0) 의 리퀘스트 큐 회로 (RqQI) 에 저장되지 않는다. 리퀘스트 이네이블 신호 (RqEn0) 가 High 이면 (Step 2), 메모리 칩 (M0) 의 리퀘스트 큐 회로 (RqQI) 에 저장된다 (Step 3).
그 후, ID 비교 회로 (CPQ) 는, 리퀘스트 큐 회로 (RqQI) 에 엔트리된 리퀘스트에 포함되는 ID 값과 ID 레지스터 회로 (IDR) 에 유지되어 있는 ID 값을 비교한다 (Step 4). 비교 결과가 일치하면, 리퀘스트 큐 회로 (RqQI) 에 엔트리된 리퀘스트는 리퀘스트 큐 회로 (RqQXI) 에 전송된다 (Step 5). 비교 결과가 불일치하는 경우에는, 메모리 칩 (M0) 이 최종단의 메모리 칩인지를 체크한다 (Step 6). 메모리 칩 (M0) 이 최종단의 디바이스는 아니기 때문에, 리퀘스트 큐 회로 (RqQI) 에 엔트리된 리퀘스트는 리퀘스트 큐 회로 (RqQXO) 에 전송되고, 또한 다음 의 메모리 칩 (M1) 에 전송된다 (Step 9). 메모리 칩 (M1) 에서는, Step 1 내지 Step 9 를 반복한다. 메모리 칩 (M2) 에서는, Step 1 내지 Step 4 를 실시한다. Step 4 에서의 비교 결과가 일치하면, 리퀘스트 큐 회로 (RqQI) 에 엔트리된 리퀘스트는 리퀘스트 큐 회로 (RqQXI) 에 전송된다 (Step 5). 비교 결과가 불일치하는 경우에는, 메모리 칩 (M0) 이 최종단의 메모리 칩인지를 체크한다 (Step 6).
메모리 칩 (M2) 은 최종단의 메모리 칩이기 때문에, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 모듈 (MEM) 에 송신된 리퀘스트에 포함되는 ID 값이 메모리 칩 (M0, M1 및 M2) 의 ID 레지스터값 중 어느 것에도 일치하지 않고, ID 에러가 된다 (Step 7). ID 에러는, 최종단의 메모리 칩 (M2) 으로부터 메모리 칩 (M1 및 M2) 을 경유하여 정보 처리 장치 (CPU_CHIP) 에 송신된다.
다음으로, 메모리 모듈 (MEM) 에 입력되는 리퀘스트의 동작 파형에 대해 설명한다. 도 25 및 도 26 은, 정보 처리 장치 (CPU_CHIP) 가, 메모리 모듈 (MEM) 에 송신하는 리퀘스트의 동작 파형 및 메모리 모듈 (MEM) 로부터 정보 처리 장치 (CPU_CHIP) 에 대한 리스폰스의 동작 파형의 일례이다.
도 25(a) 는, 메모리 칩 (M0) 에 대한 뱅크 액티브 명령 (BA) 을 포함하는 뱅크 액티브 리퀘스트의 일례이다. 특별히 한정되지 않지만, 뱅크 액티브 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn0) 가 High 일 때, 리퀘스트 클록 신호 (RqCk0) 에 동기하여, 메모리 칩 (M0) 의 ID2, 뱅크 액티브 명령 (BA), 어드레스 (AD20 및 AD21) 가 다중화되고 메모리 칩 (M0) 에 입력된다. 어드레스 (AD20 및 AD21) 에는, 뱅크 어드레스 및 로우 어드레스가 포함된다. 본 뱅크 액티브 리퀘스트에 의해, 메모리 칩 (M0) 내의 메모리 뱅크 중 하나가 활성화된다.
도 25(b) 는, 메모리 칩 (M0) 에 대한 4 바이트 데이터 리드 명령 (RD4) 을 포함하는 리드 리퀘스트의 일례이다. 특별히 한정되지 않지만, 리드 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn0) 가 High 일 때, 리퀘스트 클록 신호 (RqCk0) 에 동기하여, 메모리 칩 (M0) 의 ID2, 리드 명령 (RD4), 어드레스 (AD22 및 AD22) 가 다중화되고 메모리 칩 (M0) 에 입력된다. 어드레스 (AD22 및 AD23) 에는, 뱅크 어드레스 및 칼럼 어드레스가 포함된다. 본 리드 리퀘스트에 의해, 메모리 칩 (M0) 내의 활성화되어 있는 메모리 뱅크로부터 데이터가 판독된다.
도 25(c) 는, 메모리 칩 (M0) 으로부터의 리스폰스의 레이턴시값을 송신하는 레이턴시 리스폰스의 일례이다. 특별히 한정되지 않지만 레이턴시 리스폰스에는, 메모리 칩 (M0) 의 ID 값 (ID2), 레이턴시 송신 플래그 (LF), 레이턴시값 (Lat) 이 포함된다.
레이턴시 리스폰스는 리스폰스 이네이블 신호 (RsEn0) 가 High 일 때, 리스폰스 클록 신호 (RsCk0) 의 상승 및 하강에 동기하여, 정보 처리 장치 (CPU_CHIP) 에 입력된다.
도 25(d) 는, 메모리 칩 (M0) 의 ID 값 및 메모리 칩 (M0) 으로부터 판독된 데이터를 포함하는 리드 리스폰스이다. 특별히 한정되지 않지만, 리드 리스폰스는, 리스폰스 이네이블 신호 (RsEn0) 가 High 일 때, 리스폰스 클록 신호 (RsCk0) 의 상승 및 하강에 동기하여, 메모리 칩 (M0) 의 ID 값 (ID2), 4 바이트분 의 데이터 (D0, D1, D2 및 D3) 가 다중화되고, 정보 처리 장치 (CPU_CHIP) 에 입력된다.
도 26(a) 는, 메모리 칩 (M0) 에 대한 뱅크 액티브 명령 (BA) 을 포함하는 뱅크 액티브 리퀘스트의 다른 일례이다. 특별히 한정되지 않지만, 뱅크 액티브 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn0) 가 High 일 때, 리퀘스트 클록 신호 (RqCk0) 에 동기하여, 메모리 칩 (M0) 의 ID 값 (ID2), 리퀘스트 번호 (RqN1), 뱅크 액티브 명령 (BA), 어드레스 (AD20 및 AD21) 가 다중화되고 메모리 칩 (M0) 에 입력된다. 어드레스 (AD20 및 AD21) 에는, 뱅크 어드레스 및 로우 어드레스가 포함된다. 본 뱅크 액티브 리퀘스트에 의해, 메모리 칩 (M0) 내의 메모리 뱅크 중 하나가 활성화된다.
도 26(b) 는, 메모리 칩 (M0) 에 대한 4 바이트 데이터 리드 명령 (RD4) 을 포함하는 리드 리퀘스트의 다른 일례이다. 특별히 한정되지 않지만, 리드 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn0) 가 High 일 때, 리퀘스트 클록 신호 (RqCk0) 에 동기하여, 메모리 칩 (M0) 의 ID2, 리퀘스트 번호 (RqN2), 리드 명령 (RD4), 어드레스 (AD22 및 AD22) 가 다중화되고 메모리 칩 (M0) 에 입력된다. 어드레스 (AD22 및 AD23) 에는, 뱅크 어드레스 및 칼럼 어드레스가 포함된다. 본 리드 리퀘스트에 의해, 메모리 칩 (M0) 내의 활성화되어 있는 메모리 뱅크로부터 데이터가 판독된다.
도 26(c) 는, 메모리 칩 (M0) 으로부터의 리스폰스의 레이턴시값을 송신하는 레이턴시 리스폰스의 다른 일례이다. 특별히 한정되지 않지만 레이턴시 리스폰 스에는, 리퀘스트 번호 (RqN2), 레이턴시 송신 플래그 (LF), 레이턴시값 (Lat) 이 포함된다.
레이턴시 리스폰스는 리스폰스 이네이블 신호 (RsEn0) 가 High 일 때, 리스폰스 클록 신호 (RsCk0) 의 상승 및 하강에 동기하여, 정보 처리 장치 (CPU_CHIP) 에 입력된다.
도 26(d) 는, 메모리 칩 (M0) 으로부터 판독된 데이터를 포함하는 리드 리스폰스의 다른 일례이다. 특별히 한정되지 않지만, 리드 리스폰스는, 리스폰스 이네이블 신호 (RsEn0) 가 High 일 때, 리스폰스 클록 신호 (RsCk0) 의 상승 및 하강에 동기하여, 리퀘스트 번호 (RqN2), 4 바이트분의 데이터 (D0, D1, D2 및 D3) 가 다중화되고, 정보 처리 장치 (CPU_CHIP) 에 입력된다.
도 27(a) 는, 메모리 칩 (M0) 에 대한 1 바이트 데이터의 기입 명령 (WT2) 을 포함하는 라이트 리퀘스트의 일례이다. 특별히 한정되지 않지만, 라이트 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn0) 가 High 일 때, 리퀘스트 클록 신호 (RqCk0) 에 동기하여, 메모리 칩 (M0) 의 ID2, 라이트 명령 (WT1), 어드레스 (AD24 및 AD25) 가 다중화되고 메모리 칩 (M0) 에 입력된다. 어드레스 (AD22 및 AD23) 에는, 뱅크 어드레스 및 칼럼 어드레스가 포함된다. 본 라이트 리퀘스트에 의해, 메모리 칩 (M0) 에 데이터가 기입된다.
도 27(b) 는, 메모리 칩 (M0) 에 대한 1 바이트 데이터의 기입 명령 (WT2) 을 포함하는 라이트 리퀘스트의 다른 일례이다. 특별히 한정되지 않지만, 라이트 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn0) 가 High 일 때, 리퀘스트 클록 신 호 (RqCk0) 에 동기하여, 메모리 칩 (M0) 의 ID 값 (ID2), 리퀘스트 번호 (RqN3), 라이트 명령 (WT1), 어드레스 (AD24 및 AD25) 가 다중화되고 메모리 칩 (M0) 에 입력된다. 어드레스 (AD22 및 AD23) 에는, 뱅크 어드레스 및 칼럼 어드레스가 포함된다. 본 라이트 리퀘스트에 의해, 메모리 칩 (M0) 에 데이터가 기입된다.
도 28(a) 는, 메모리 칩 (M0) 에 대한 리퀘스트 큐 및 리스폰스 큐를 예약하기 위한 큐 예약 리퀘스트 (ReqNQRv) 의 일례이다.
특별히 한정되지 않지만, 큐 예약 리퀘스트 (ReqNQRv) 는, 리퀘스트 이네이블 신호 (RqEn0) 가 High 일 때, 리퀘스트 클록 신호 (RqCk0) 에 동기하여, ID 값 (ID2), 큐 예약 명령 (QRv), 예약하는 큐의 수 (QRvN) 값을 다중화한 리퀘스트 (ReqNQRv) 가 메모리 칩 (M0) 에 전송된다. 이 리퀘스트에 의해, 메모리 칩 (M0) 의 리퀘스트 큐 및 리스폰스 큐가 각각 QRvN 값으로 지정된 수의 분량만큼 예약된다.
도 28(b) 는, 메모리 칩 (M0) 에 대한 큐의 예약이 완료된 것을 알리는 예약 완료 리스폰스이다.
특별히 한정되지 않지만, 예약 완료 리스폰스는, 리스폰스 이네이블 신호 (RsEn0) 가 High 일 때, 리스폰스 클록 신호 (RsCk0) 의 상승 및 하강에 동기하여, ID 값 (ID2), 예약 완료 신호 (RvFlg) 를 다중화한 예약 완료 리스폰스가 정보 처리 장치 (CPU_CHIP) 에 입력된다. 정보 처리 장치 (CPU_CHIP) 는 예약 완료 리스폰스를 받음으로써, 큐의 예약이 완료된 것을 확인할 수 있다.
도 28(c) 는, 메모리 칩 (M0) 에 대한 리퀘스트 큐 및 리스폰스 큐를 예약하 기 위한 큐 예약 리퀘스트 (ReqNQRv) 의 다른 일례이다.
특별히 한정되지 않지만, 큐 예약 리퀘스트 (ReqNQRv) 는, 리퀘스트 이네이블 신호 (RqEn0) 가 High 일 때, 리퀘스트 클록 신호 (RqCk0) 에 동기하여, ID 값 (ID2), 리퀘스트 번호 (RqN5), 큐 예약 명령 (QRv), 예약하는 큐의 수 (QRvN) 값을 다중화한 리퀘스트 (ReqNQRv) 가 메모리 칩 (M0) 에 전송된다. 이 리퀘스트에 의해, 메모리 칩 (M0) 의 리퀘스트 큐 및 리스폰스 큐가 각각 QRvN 값으로 지정된 수의 분량만큼 예약된다.
도 28(d) 는, 메모리 칩 (M0) 에 대한 큐의 예약이 완료된 것을 알리는 예약 완료 리스폰스이다.
특별히 한정되지 않지만, 예약 완료 리스폰스는, 리스폰스 이네이블 신호 (RsEn0) 가 High 일 때, 리스폰스 클록 신호 (RsCk0) 의 상승 및 하강에 동기하여, 리스폰스 번호 (RsN5), 예약 완료 신호 (RvFlg) 를 다중화한 예약 완료 리스폰스가 정보 처리 장치 (CPU_CHIP) 에 입력된다. 정보 처리 장치 (CPU_CHIP) 는 예약 완료 리스폰스를 받음으로써, 큐의 예약이 완료된 것을 확인할 수 있다.
도 29(a) 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 을 통해 메모리 칩 (M1) 에 입력하는 뱅크 액티브 명령 (BA) 을 포함하는 뱅크 액티브 리퀘스트의 일례이다. 특별히 한정되지 않지만, 뱅크 액티브 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn1) 가 High 일 때, 리퀘스트 클록 신호 (RqCk0) 에 동기하여, 메모리 칩 (M0) 의 ID 값 (ID1), 뱅크 액티브 명령 (BA), 어드레스 (AD20 및 AD21) 가 다중화되고 메모리 칩 (M1) 에 입력된다. 어드레스 (AD20 및 AD21) 에는, 뱅크 어드레스 및 페이지 어드레스가 포함된다. 본 뱅크 액티브 리퀘스트에 의해, 메모리 칩 (M1) 내의 메모리 뱅크 중 하나가 활성화된다.
도 29(b) 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 을 통해 메모리 칩 (M1) 에 입력되는 4 바이트 데이터 리드 명령 (RD4) 을 포함하는 리드 리퀘스트의 일례이다. 특별히 한정되지 않지만, 리드 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn1) 가 High 일 때, 리퀘스트 클록 신호 (RqCk1) 에 동기하여, 메모리 칩 (M0) 의 ID 값 (ID1), 리드 명령 (RD4), 어드레스 (AD22 및 AD22) 가 다중화되고 메모리 칩 (M1) 에 입력된다. 어드레스 (AD22 및 AD23) 에는, 뱅크 어드레스 및 칼럼 어드레스가 포함된다. 본 리드 리퀘스트에 의해, 메모리 칩 (M1) 내의 활성화되어 있는 메모리 뱅크로부터 데이터가 판독된다.
도 29(c) 는, 메모리 칩 (M1) 으로부터의 리스폰스의 레이턴시값을 송신하는 레이턴시 리스폰스의 일례이다. 특별히 한정되지 않지만 레이턴시 리스폰스에는, 메모리 칩 (M1) 의 ID 값 (ID1), 레이턴시 송신 플래그 (LF), 레이턴시값 (Lat) 이 포함된다.
레이턴시 리스폰스는 리스폰스 이네이블 신호 (RsEn1) 가 High 일 때, 리스폰스 클록 신호 (RsCk1) 의 상승 및 하강에 동기하여, 메모리 칩 (M0) 에 송신되고, 또한 정보 처리 장치 (CPU_CHIP) 에 송신된다.
도 29(d) 는, 메모리 칩 (M1) 의 ID 값 및 메모리 칩 (M1) 으로부터 판독된 데이터를 포함하는 리드 리스폰스이다. 특별히 한정되지 않지만, 리드 리스폰스는, 리스폰스 이네이블 신호 (RsEn1) 가 High 일 때, 리스폰스 클록 신호 (RsCk1) 의 상승 및 하강에 동기하여, 메모리 칩 (M1) 의 ID 값 (ID1), 4 바이트분의 데이터 (D0, D1, D2 및 D3) 가 다중화되고, 메모리 칩 (M0) 에 송신되고, 또한 정보 처리 장치 (CPU_CHIP) 에 송신된다.
도 30(a) 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 을 통해 메모리 칩 (M1) 에 입력하는 뱅크 액티브 명령 (BA) 을 포함하는 뱅크 액티브 리퀘스트의 다른 일례이다. 특별히 한정되지 않지만, 뱅크 액티브 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn1) 가 High 일 때, 리퀘스트 클록 신호 (RqCk1) 에 동기하여, 메모리 칩 (M1) 의 ID 값 (ID1), 리퀘스트 번호 (RqN1), 뱅크 액티브 명령 (BA), 어드레스 (AD20 및 AD21) 가 다중화되고 메모리 칩 (M1) 에 입력된다. 어드레스 (AD20 및 AD21) 에는, 뱅크 어드레스 및 로우 어드레스가 포함된다. 본 뱅크 액티브 리퀘스트에 의해, 메모리 칩 (M1) 내의 메모리 뱅크 중 하나가 활성화된다.
도 30(b) 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 을 통해 메모리 칩 (M1) 에 입력되는 4 바이트 데이터 리드 명령 (RD4) 을 포함하는 리드 리퀘스트의 다른 일례이다. 특별히 한정되지 않지만, 리드 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn1) 가 High 일 때, 리퀘스트 클록 신호 (RqCk1) 에 동기하여, 메모리 칩 (M1) 의 ID 값 (ID1), 리퀘스트 번호 (RqN2), 리드 명령 (RD4), 어드레스 (AD22 및 AD22) 가 다중화되고 메모리 칩 (M1) 에 입력된다. 어드레스 (AD22 및 AD23) 에는, 뱅크 어드레스 및 칼럼 어드레스가 포함된다. 본 리드 리퀘스트에 의해, 메모리 칩 (M1) 내의 활성화되어 있는 메모리 뱅크로부터 데이터 가 판독된다.
도 30(c) 는, 메모리 칩 (M1) 으로부터의 리스폰스의 레이턴시값을 송신하는 레이턴시 리스폰스의 다른 일례이다. 특별히 한정되지 않지만 레이턴시 리스폰스에는, 리퀘스트 번호 (RqN2), 레이턴시 송신 플래그 (LF), 레이턴시값 (Lat) 이 포함된다.
레이턴시 리스폰스는 리스폰스 이네이블 신호 (RsEn1) 가 High 일 때, 리스폰스 클록 신호 (RsCk1) 의 상승 및 하강에 동기하여, 메모리 칩 (M0) 에 송신되고, 또한 정보 처리 장치 (CPU_CHIP) 에 송신된다.
도 30(d) 는, 메모리 칩 (M1) 으로부터 판독된 데이터를 포함하는 리드 리스폰스의 다른 일례이다. 특별히 한정되지 않지만, 리드 리스폰스는, 리스폰스 이네이블 신호 (RsEn1) 가 High 일 때, 리스폰스 클록 신호 (RsCk1) 의 상승 및 하강에 동기하여, 리퀘스트 번호 (RqN2), 4 바이트분의 데이터 (D0, D1, D2 및 D3) 가 다중화되고, 메모리 칩 (M0) 에 송신되고, 또한 정보 처리 장치 (CPU_CHIP) 에 송신된다.
도 31(a) 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 을 통해 메모리 칩 (M1) 에 입력되는 1 바이트 데이터의 기입 명령 (WT2) 을 포함하는 라이트 리퀘스트의 일례이다. 특별히 한정되지 않지만, 라이트 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn1) 가 High 일 때, 리퀘스트 클록 신호 (RqCk1) 에 동기하여, 메모리 칩 (M1) 의 ID 값 (ID1), 라이트 명령 (WT1), 어드레스 (AD24 및 AD25) 가 다중화되고 메모리 칩 (M1) 에 입력된다. 어드레스 (AD22 및 AD23) 에는, 뱅크 어드레스 및 칼럼 어드레스가 포함된다. 본 라이트 리퀘스트에 의해, 메모리 칩 (M1) 에 데이터가 기입된다.
도 31(b) 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 을 통해 메모리 칩 (M1) 에 입력되는 1 바이트 데이터의 기입 명령 (WT2) 을 포함하는 라이트 리퀘스트의 다른 일례이다. 특별히 한정되지 않지만, 라이트 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn1) 가 High 일 때, 리퀘스트 클록 신호 (RqCk1) 에 동기하여, 메모리 칩 (M1) 의 ID 값 (ID1), 리퀘스트 번호 (RqN3), 라이트 명령 (WT1), 어드레스 (AD24 및 AD25) 가 다중화되고 메모리 칩 (M1) 에 입력된다. 어드레스 (AD22 및 AD23) 에는, 뱅크 어드레스 및 칼럼 어드레스가 포함된다. 본 라이트 리퀘스트에 의해, 메모리 칩 (M1) 에 데이터가 기입된다.
도 32(a) 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 을 통해 메모리 칩 (M1) 에 입력하는 리퀘스트 큐 및 리스폰스 큐를 예약하기 위한 큐 예약 리퀘스트 (ReqNQRv) 의 일례이다.
특별히 한정되지 않지만, 큐 예약 리퀘스트 (ReqNQRv) 는, 리퀘스트 이네이블 신호 (RqEn1) 가 High 일 때, 리퀘스트 클록 신호 (RqCk1) 에 동기하여, ID 값 (ID1), 큐 예약 명령 (QRv), 예약하는 큐의 수 (QRvN) 값을 다중화한 리퀘스트 (ReqNQRv) 가 메모리 칩 (M0) 에 전송된다. 이 리퀘스트에 의해, 메모리 칩 (M1) 의 리퀘스트 큐 및 리스폰스 큐가 각각 QRvN 값으로 지정된 수의 분량만큼 예약된다.
도 32(b) 는, 메모리 칩 (M1) 의 큐의 예약이 완료된 것을 알리는 예약 완료 리스폰스이다. 특별히 한정되지 않지만, 예약 완료 리스폰스는, 리스폰스 이네이블 신호 (RsEn1) 가 High 일 때, 리스폰스 클록 신호 (RsCk1) 의 상승 및 하강에 동기하여, ID 값 (ID1), 예약 완료 신호 (RvFlg) 를 다중화한 예약 완료 리스폰스가 메모리 칩 (M0) 에 송신되고, 또한 정보 처리 장치 (CPU_CHIP) 에 송신된다. 정보 처리 장치 (CPU_CHIP) 는 예약 완료 리스폰스를 받음으로써, 큐의 예약이 완료된 것을 확인할 수 있다.
도 32(c) 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 을 통해 메모리 칩 (M1) 에 입력되는 리퀘스트 큐 및 리스폰스 큐를 예약하기 위한 큐 예약 리퀘스트 (ReqNQRv) 의 다른 일례이다.
특별히 한정되지 않지만, 큐 예약 리퀘스트 (ReqNQRv) 는, 리퀘스트 이네이블 신호 (RqEn0) 가 High 일 때, 리퀘스트 클록 신호 (RqCk1) 에 동기하여, ID 값 (ID1), 리퀘스트 번호 (RqN5), 큐 예약 명령 (QRv), 예약하는 큐의 수 (QRvN) 값을 다중화한 리퀘스트 (ReqNQRv) 가 메모리 칩 (M1) 에 전송된다. 이 리퀘스트에 의해, 메모리 칩 (M1) 의 리퀘스트 큐 및 리스폰스 큐가 각각 QRvN 값으로 지정된 수의 분량만큼 예약된다.
도 32(d) 는, 메모리 칩 (M1) 에 대한 큐의 예약이 완료된 것을 알리는 예약 완료 리스폰스이다.
특별히 한정되지 않지만, 예약 완료 리스폰스는, 리스폰스 이네이블 신호 (RsEn1) 가 High 일 때, 리스폰스 클록 신호 (RsCk1) 의 상승 및 하강에 동기하여, 리스폰스 번호 (RsN5), 예약 완료 신호 (RvFlg) 를 다중화한 예약 완료 리스폰스가 메모리 칩 (M0) 에 송신되고, 또한 정보 처리 장치 (CPU_CHIP) 에 송신된다. 정보 처리 장치 (CPU_CHIP) 는 예약 완료 리스폰스를 받음으로써, 큐의 예약이 완료된 것을 확인할 수 있다.
도 33(a) 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 및 메모리 칩 (M1) 을 통해 메모리 칩 (M2) 에 입력되는 뱅크 액티브 명령 (BA) 을 포함하는 뱅크 액티브 리퀘스트의 일례이다. 특별히 한정되지 않지만, 뱅크 액티브 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn2) 가 High 일 때, 리퀘스트 클록 신호 (RqCk2) 에 동기하여, 메모리 칩 (M2) 의 ID 값 (ID3), 뱅크 액티브 명령 (BA), 어드레스 (AD20 및 AD21) 가 다중화되고 메모리 칩 (M1) 에 입력된다. 어드레스 (AD20 및 AD21) 에는, 뱅크 어드레스 및 페이지 어드레스가 포함된다. 본 뱅크 액티브 리퀘스트에 의해, 메모리 칩 (M3) 내의 메모리 뱅크 중 하나가 활성화된다.
도 33(b) 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 및 메모리 칩 (M1) 을 통해 메모리 칩 (M2) 에 입력되는 4 바이트 데이터 리드 명령 (RD4) 을 포함하는 리드 리퀘스트의 일례이다. 특별히 한정되지 않지만, 리드 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn2) 가 High 일 때, 리퀘스트 클록 신호 (RqCk2) 에 동기하여, 메모리 칩 (M2) 의 ID 값 (ID3), 리드 명령 (RD4), 어드레스 (AD22 및 AD22) 가 다중화되고 메모리 칩 (M2) 에 입력된다. 어드레스 (AD22 및 AD23) 에는, 뱅크 어드레스 및 칼럼 어드레스가 포함된다. 본 리드 리퀘스트에 의해, 메모리 칩 (M3) 내의 활성화되어 있는 메모리 뱅크로부터 데이터가 판독된다.
도 33(c) 는, 메모리 칩 (M2) 으로부터의 리스폰스의 레이턴시값을 송신하는 레이턴시 리스폰스의 일례이다. 특별히 한정되지 않지만 레이턴시 리스폰스에는, 메모리 칩 (M2) 의 ID 값 (ID3), 레이턴시 송신 플래그 (LF), 레이턴시값 (Lat) 이 포함된다.
레이턴시 리스폰스는 리스폰스 이네이블 신호 (RsEn2) 가 High 일 때, 리스폰스 클록 신호 (RsCk2) 의 상승 및 하강에 동기하여, 메모리 칩 (M1) 에 송신되고, 또한 메모리 칩 (M0) 을 통해 정보 처리 장치 (CPU_CHIP) 에 송신된다.
도 33(d) 는, 메모리 칩 (M2) 의 ID 값 및 메모리 칩 (M2) 으로부터 판독된 데이터를 포함하는 리드 리스폰스이다. 특별히 한정되지 않지만, 리드 리스폰스는, 리스폰스 이네이블 신호 (RsEn2) 가 High 일 때, 리스폰스 클록 신호 (RsCk2) 의 상승 및 하강에 동기하여, 메모리 칩 (M2) 의 ID 값 (ID3), 4 바이트분의 데이터 (D0, D1, D2 및 D3) 가 다중화되고, 메모리 칩 (M1) 에 송신되고, 또한 메모리 칩 (M0) 을 통해 정보 처리 장치 (CPU_CHIP) 에 송신된다.
도 34(a) 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 및 메모리 칩 (M1) 을 통해 메모리 칩 (M2) 에 입력되는 뱅크 액티브 명령 (BA) 을 포함하는 뱅크 액티브 리퀘스트의 다른 일례이다. 특별히 한정되지 않지만, 뱅크 액티브 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn2) 가 High 일 때, 리퀘스트 클록 신호 (RqCk2) 에 동기하여, 메모리 칩 (M2) 의 ID 값 (ID1), 리퀘스트 번호 (RqN1), 뱅크 액티브 명령 (BA), 어드레스 (AD20 및 AD21) 가 다중화되고 메모리 칩 (M2) 에 입력된다. 어드레스 (AD20 및 AD21) 에는, 뱅크 어드레스 및 로우 어드레스가 포함된다. 본 뱅크 액티브 리퀘스트에 의해, 메모리 칩 (M2) 내의 메모리 뱅크 중 하나가 활성화된다.
도 34(b) 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 및 메모리 칩 (M1) 을 통해 메모리 칩 (M2) 에 입력되는 4 바이트 데이터 리드 명령 (RD4) 을 포함하는 리드 리퀘스트의 다른 일례이다. 특별히 한정되지 않지만, 리드 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn2) 가 High 일 때, 리퀘스트 클록 신호 (RqCk2) 에 동기하여, 메모리 칩 (M2) 의 ID 값 (ID3), 리퀘스트 번호 (RqN2), 리드 명령 (RD4), 어드레스 (AD22 및 AD22) 가 다중화되고 메모리 칩 (M2) 에 입력된다. 어드레스 (AD22 및 AD23) 에는, 뱅크 어드레스 및 칼럼 어드레스가 포함된다. 본 리드 리퀘스트에 의해, 메모리 칩 (M2) 내의 활성화되어 있는 메모리 뱅크로부터 데이터가 판독된다.
도 34(c) 는, 메모리 칩 (M2) 으로부터의 리스폰스의 레이턴시값을 송신하는 레이턴시 리스폰스의 다른 일례이다. 특별히 한정되지 않지만 레이턴시 리스폰스에는, 리퀘스트 번호 (RqN2), 레이턴시 송신 플래그 (LF), 레이턴시값 (Lat) 이 포함된다.
레이턴시 리스폰스는 리스폰스 이네이블 신호 (RsEn1) 가 High 일 때, 리스폰스 클록 신호 (RsCk2) 의 상승 및 하강에 동기하여, 메모리 칩 (M1) 에 송신되고, 또한 메모리 칩 (M0) 을 통해 정보 처리 장치 (CPU_CHIP) 에 송신된다.
도 34(d) 는, 메모리 칩 (M2) 으로부터 판독된 데이터를 포함하는 리드 리스폰스의 다른 일례이다. 특별히 한정되지 않지만, 리드 리스폰스는, 리스폰스 이네이블 신호 (RsEn2) 가 High 일 때, 리스폰스 클록 신호 (RsCk2) 의 상승 및 하강에 동기하여, 리퀘스트 번호 (RqN2), 4 바이트분의 데이터 (D0, D1, D2 및 D3) 가 다중화되고, 메모리 칩 (M1) 에 송신되고, 또한 메모리 칩 (M0) 을 통해 정보 처리 장치 (CPU_CHIP) 에 송신된다.
도 35(a) 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 및 메모리 칩 (M1) 을 통해 메모리 칩 (M2) 에 입력되는 1 바이트 데이터의 기입 명령 (WT2) 을 포함하는 라이트 리퀘스트의 일례이다. 특별히 한정되지 않지만, 라이트 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn2) 가 High 일 때, 리퀘스트 클록 신호 (RqCk2) 에 동기하여, 메모리 칩 (M1) 의 ID 값 (ID3), 라이트 명령 (WT1), 어드레스 (AD24 및 AD25) 가 다중화되고 메모리 칩 (M1) 에 입력된다. 어드레스 (AD22 및 AD23) 에는, 뱅크 어드레스 및 칼럼 어드레스가 포함된다. 본 라이트 리퀘스트에 의해, 메모리 칩 (M2) 에 데이터가 기입된다.
도 35(b) 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 및 메모리 칩 (M1) 을 통해 메모리 칩 (M2) 에 입력되는 1 바이트 데이터의 기입 명령 (WT2) 을 포함하는 라이트 리퀘스트의 다른 일례이다. 특별히 한정되지 않지만, 라이트 리퀘스트는, 리퀘스트 이네이블 신호 (RqEn2) 가 High 일 때, 리퀘스트 클록 신호 (RqCk2) 에 동기하여, 메모리 칩 (M2) 의 ID 값 (ID3), 리퀘스트 번호 (RqN3), 라이트 명령 (WT1), 어드레스 (AD24 및 AD25) 가 다중화되고 메모리 칩 (M1) 에 입력된다. 어드레스 (AD22 및 AD23) 에는, 뱅크 어드레스 및 칼럼 어드레스가 포함된다. 본 라이트 리퀘스트에 의해, 메모리 칩 (M2) 에 데이터가 기입된다.
도 36(a) 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 및 메모리 칩 (M1) 을 통해 메모리 칩 (M2) 에 입력되는 리퀘스트 큐 및 리스폰스 큐를 예약하기 위한 큐 예약 리퀘스트 (ReqNQRv) 의 일례이다.
특별히 한정되지 않지만, 큐 예약 리퀘스트 (ReqNQRv) 는, 리퀘스트 이네이블 신호 (RqEn2) 가 High 일 때, 리퀘스트 클록 신호 (RqCk2) 에 동기하여, ID 값 (ID3), 큐 예약 명령 (QRv), 예약하는 큐의 수 (QRvN) 값을 다중화한 리퀘스트 (ReqNQRv) 가 메모리 칩 (M0) 에 전송된다. 이 리퀘스트에 의해, 메모리 칩 (M2) 의 리퀘스트 큐 및 리스폰스 큐가 각각 QRvN 값으로 지정된 수의 분량만큼 예약된다.
도 36(b) 는, 메모리 칩 (M2) 의 큐의 예약이 완료된 것을 알리는 예약 완료 리스폰스이다. 특별히 한정되지 않지만, 예약 완료 리스폰스는, 리스폰스 이네이블 신호 (RsEn2) 가 High 일 때, 리스폰스 클록 신호 (RsCk1) 의 상승 및 하강에 동기하여, ID 값 (ID3), 예약 완료 신호 (RvFlg) 를 다중화한 예약 완료 리스폰스가 메모리 칩 (M1) 에 송신되고, 또한 메모리 칩 (M0) 을 통해 정보 처리 장치 (CPU_CHIP) 에 송신된다. 정보 처리 장치 (CPU_CHIP) 는 예약 완료 리스폰스를 받음으로써, 큐의 예약이 완료된 것을 확인할 수 있다.
도 36(c) 는, 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M0) 및 메모리 칩 (M1) 을 통해 메모리 칩 (M2) 에 입력되는 리퀘스트 큐 및 리스폰스 큐를 예약하기 위한 큐 예약 리퀘스트 (ReqNQRv) 의 다른 일례이다.
특별히 한정되지 않지만, 큐 예약 리퀘스트 (ReqNQRv) 는, 리퀘스트 이네이 블 신호 (RqEn2) 가 High 일 때, 리퀘스트 클록 신호 (RqCk1) 에 동기하여, ID 값 (ID3), 리퀘스트 번호 (RqN5), 큐 예약 명령 (QRv), 예약하는 큐의 수 (QRvN) 값을 다중화한 리퀘스트 (ReqNQRv) 가 메모리 칩 (M2) 에 전송된다. 이 리퀘스트에 의해, 메모리 칩 (M2) 의 리퀘스트 큐 및 리스폰스 큐가 각각 QRvN 값으로 지정된 수의 분량만큼 예약된다.
도 36(d) 는, 메모리 칩 (M2) 에 대한 큐의 예약이 완료된 것을 알리는 예약 완료 리스폰스이다.
특별히 한정되지 않지만, 예약 완료 리스폰스는, 리스폰스 이네이블 신호 (RsEn2) 가 High 일 때, 리스폰스 클록 신호 (RsCk2) 의 상승 및 하강에 동기하여, 리스폰스 번호 (RsN5), 예약 완료 신호 (RvFlg) 를 다중화한 예약 완료 리스폰스가 메모리 칩 (M2) 에 송신되고, 또한 메모리 칩 (M0) 을 통해 정보 처리 장치 (CPU_CHIP) 에 송신된다. 정보 처리 장치 (CPU_CHIP) 는 예약 완료 리스폰스를 받음으로써, 큐의 예약이 완료된 것을 확인할 수 있다.
상기는, 뱅크 액티브 명령, 리드 명령, 라이트 명령, 큐 예약 명령 등의 정보를 포함하는 리퀘스트 및, 판독 데이터, 레이턴시값 등의 정보를 포함하는 리스폰스의 동작에 대해 설명했지만, 이들 이외의 정보를 포함하는 리퀘스트나 리스폰스에 대해서도 동일한 동작을 실시하는 것은 말할 필요도 없다.
도 37 은 정보 처리 장치 (CPU_CHIP) 로부터 메모리 칩 (M1) 에 판독 리퀘스트가 발생하고, 연속하여 메모리 칩 (M0) 에 판독 리퀘스트가 발생한 경우의 데이터 전송 파형을 나타낸다.
정보 처리 장치 (CPU_CHIP) 는, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 1, 2 바이트 데이터 판독 명령 (NRD2) 및 어드레스 (AD0, AD1) 를 다중화한 리퀘스트 (ReqNRD2) 를 메모리 칩 (M0) 에 전송한다.
계속해서, 리퀘스트 신호 (RqMux0) 를 통해서, ID 값 2, 2 바이트 데이터 판독 명령 (RD2), 어드레스 (AD0, AD1) 를 다중화한 리퀘스트 (ReqRD2) 를 메모리 칩 (M0) 에 전송한다.
메모리 칩 (M0) 의 리퀘스트 큐 (RqQI) 에 리퀘스트 (ReqNRD2) 및 리퀘스트 (ReqRD2) 가 입력된다.
리퀘스트 (ReqNRD2) 는 메모리 칩 (M1) 에 대한 리퀘스트이기 때문에, 메모리 칩 (M0) 의 리퀘스트 큐 (RqQXO) 에 전송된다. 또, 리퀘스트 (ReqNRD2) 는 리퀘스트 신호 (RqMux1) 를 통해서 메모리 칩 (M1) 에 전송된다.
리퀘스트 (ReqNRD2) 는 메모리 칩 (M1) 의 리퀘스트 큐 (RqQI) 에 입력되고, 다음으로 리퀘스트 큐 (RqQXI) 에 전송된다. 리퀘스트 (ReqNRD2) 에 대응하는 데이터가 메모리 칩 (M1) 의 메모리 회로 (MemNV1) 로부터 판독되고, ID 레지스터값 1 도 포함하여, 리스폰스 (RsNRD2) 로서 리스폰스 큐 (RsQo) 에 입력된다.
리스폰스 큐 (RsQo) 에 입력된 리스폰스 (RsNRD2) 는, 리스폰스 신호 (RqMux1) 를 통해서 전송되고, 메모리 칩 (M0) 의 리스폰스 큐 (RsQp) 에 저장된다. 리스폰스 큐 (RsQp) 에 저장된 리스폰스 (RsNRD2) 는, 리스폰스 신호 (ResMux0) 를 통해서, ID 값 1 과 판독 데이터로서 출력된다.
리퀘스트 (ReqRD2) 는 메모리 칩 (M0) 에 대한 리퀘스트이기 때문에, 메모리 칩 (M0) 의 리퀘스트 큐 (RqQXI) 에 전송된다.
리퀘스트 (ReqRD2) 에 대응하는 데이터가 메모리 칩 (M0) 의 메모리 회로 (MemVL) 로부터 판독되고, ID 레지스터값 2 도 포함하여, 리스폰스 (RsRD2) 로서 리스폰스 큐 (RsQo) 에 입력된다.
리스폰스 큐 (RsQo) 에 입력된 리스폰스 (RsRD2) 는, 리스폰스 신호 (RqMux0) 를 통해서, ID 값 2 와, 판독 데이터로서 출력된다.
리퀘스트 (ReqRD2) 가 메모리 칩 (M0) 의 리퀘스트 큐 (RqQI) 에 입력되고, 이 리퀘스트에 대한 리스폰스 (ResRD2) 가 리스폰스 신호 (ResMux0) 로부터 출력되는 시간은 약 15 ㎱ 이다.
한편, 리퀘스트 (ReqNRD2) 가 메모리 칩 (M1) 의 리퀘스트 큐 (RqQI) 에 입력되고, 이 리퀘스트에 대한 리스폰스 (ResRD2) 가 리스폰스 신호 (ResMux0) 로부터 출력되는 시간은 약 70 ㎱ 이다.
그 때문에, 리퀘스트 (ReqRD2) 가 리퀘스트 (ReqNRD2) 의 뒤에 입력되었음에도 불구하고, 먼저 출력할 수 있다.
본 실시형태에서는 데이터 판독을 중심으로 설명했지만, 데이터의 기입 동작에 있어서도 동일한 동작을 실시할 수 있는 것은 말할 필요도 없다.
또, 본 실시형태에서는, 메모리 칩 (M0 과 M1) 의 데이터 전송 동작을 설명했지만, M1 과 그 밖의 메모리 칩에 대해서도 동일한 데이터 전송 동작을 실시하는 것은 말할 필요도 없다.
<제 1 실시형태의 효과>
이하, 상기 서술한 실시형태에 대해, 구성과 그 효과에 대해 정리한다.
(1) 전원 투입 직후에, 직렬 접속의 확인 동작을 실시함으로써, 확실하게 메모리끼리가 접속되어 있는 것을 확인할 수 있다. 또한, 부트 디바이스 및 최단의 메모리 칩을 명시하고, 자동적으로 각 메모리에 대한 ID 부가가 실시됨으로써, 용이하게 필요한 분만큼 메모리 칩을 접속하여 메모리 용량을 확장할 수 있다.
(2) 리퀘스트에 ID 를 부가함으로써, 정보 처리 장치 (CPU_CHIP) 로부터 각 메모리 칩 (M0, M1 및 M2) 에 리퀘스트가 확실하게 전송된다. 또, 정보 처리 장치 (CPU_CHIP) 에 대한 리스폰스에 ID 를 부가함으로써, 각 메모리로부터 정확하게 데이터 전송을 실시한 것을 확인할 수 있고, 정보 처리 장치 (CPU_CHIP) 및 메모리 칩 (M0, M1, M2) 의 직렬 접속에 의해, 접속 신호수를 감소시키면서도, 정보 처리 장치 (CPU_CHIP) 는 원하는 처리를 실행할 수 있다.
(3) 데이터를 송신하기 전에, 그 데이터의 레이턴시값을 송신함으로써, 정보 처리 장치 (CPU_CHIP) 는 데이터의 도착 시간을 알고, 데이터의 도착 전에 미리 필요한 처리를 실시할 수 있어 성능 향상을 도모할 수 있다.
(4) 리퀘스트에 리퀘스트 번호를 부가하고, 또 리스폰스에 리스폰스 번호를 부가함으로써, 데이터 전송 성능의 향상을 도모하므로 리퀘스트의 입력순과는 상이한 순서로 리스폰스가 송신된 경우에도, 정보 처리 장치 (CPU_CHIP) 는, 어느 리퀘스트에 대한 리스폰스가 메모리 칩으로부터 송신되었는지를 알 수 있어 원하는 처리를 고속으로 실행할 수 있다.
(5) 리퀘스트 인터페이스 회로 (ReIF) 와 리스폰스 인터페이스 회로는 독립 적으로 동작할 수 있기 때문에, 데이터의 판독 동작과 기입 동작을 동시에 실행할 수 있어 데이터 전송 성능을 향상시킬 수 있다.
(6) 리퀘스트의 입력 순서에 관계 없이, 빨리 판독할 수 있는 데이터는, 판독이 느린 데이터를 기다리지 않고, 바로 판독할 수 있기 때문에, 고속화가 가능해진다.
(7) 각 메모리 칩 (M0, M1 및 M2) 의 클록을 필요에 따라 저속 동작시키거나, 정지시키거나, 복귀시키거나 할 수 있기 때문에, 저전력화를 도모할 수 있다.
(8) 메모리 칩 (M2) 으로부터 판독할 때에는 에러 검출과 정정을 실시하고, 기입할 때에는 기입이 정확하게 실시되지 않은 불량 어드레스에 대해 대체 처리를 실시하기 때문에, 신뢰성을 유지할 수 있다.
또, 본 실시형태에서는, 메모리 모듈 (MEM) 에는 1 개의 휘발성 메모리, 1 개의 NOR 형 플래시 메모리, 1 개의 NAND 형 플래시 메모리가 포함되어 있는 예에 대해 설명하고 있지만, 메모리 모듈 (MEM) 에 복수 개의 휘발성 메모리 및 복수 개의 NOR 형 플래시 메모리 및 NAND 형 플래시 메모리가 포함되는 경우에도 본 발명을 실현할 수 있는 것은 말할 필요도 없다.
(제 2 실시형태)
도 38 은, 본 발명의 제 2 실시형태이다. 정보 처리 장치 (CPU_CHIP) 와 메모리 모듈 (MEM24) 로 구성되는 정보 처리 시스템을 나타낸 실시형태이다.
메모리 모듈 (MEM24) 은 다이내믹 랜덤 액세스 메모리 (DRAM0 및 DRAM1), NOR 형 플래시 메모리 (NOR) 및 NAND 형 플래시 메모리 (NAND) 로 구성된다.
정보 처리 장치 (CPU_CHIP) 는, 도 1 에 나타낸 것과 동등하다. 다이내믹 랜덤 액세스 메모리 (DRAM0 및 DRAM1) 는, 도 10 에 나타낸 메모리와 동등하다. NOR 형 플래시 메모리 (NOR) 는, 도 18 에 나타낸 메모리와 동등하다. NAND 형 플래시 메모리 (NAND) 는 도 21 에 나타낸 메모리와 동등하다.
본 발명에서는, 용이하게 다이내믹 랜덤 액세스 메모리를 복수 접속할 수 있고, 정보 처리 장치 (CPU_CHIP) 가 필요로 하는 워크 영역이나 카피 영역을 용이하게 확장할 수 있어 고속 처리가 가능해진다.
본 실시형태에서는, 다이내믹 랜덤 액세스 메모리의 복수 접속에 대해 설명했지만, NOR 형 플래시 메모리 (NOR) 나, NAND 형 플래시 메모리 (NAND) 는, 필요에 따라 복수 개 접속할 수 있고, 용이하게 프로그램 영역이나 데이터 영역을 확장할 수 있어, 휴대 기기의 시스템 구성에 맞춰 유연하게 대응할 수 있다.
(제 3 실시형태)
도 39 는, 본 발명의 제 3 실시형태이다. 정보 처리 장치 (CPU_CHIP) 와 메모리 모듈 (MEM25) 로 구성되는 정보 처리 시스템을 나타낸 실시형태이다. 정보 처리 장치 (CPU_CHIP) 는, 도 1 에 나타낸 것과 동등하다. NOR 형 플래시 메모리 (NOR) 는, 도 18 에 나타낸 메모리와 동등하다. 다이내믹 랜덤 액세스 메모리 (DRAM) 는, 도 10 에 나타낸 메모리와 동등하다. NAND 형 플래시 메모리 (NAND) 는 도 21 에 나타낸 메모리와 동등하다.
메모리 모듈 (MEM25) 은, 그것을 구성하는 메모리의 접속 순서가, 정보 처리 장치 (CPU_CHIP) 에서부터 가까운 순서로, NOR 형 플래시 메모리 셀을 이용한 NOR 형 플래시 메모리 (NOR), 다이내믹 메모리 셀을 이용한 다이내믹 랜덤 액세스 메모리 (DRAM), NAND 형 플래시 메모리 셀을 이용한 NAND 형 플래시 메모리 (NAND) 이다.
휴대 전화기에서는, 전화나 메일의 대기시에는, OS 나 통신용 프로그램 등이 저장되는 NOR 형 플래시 메모리 (NOR) 에 대한 간헐적인 액세스가 지배적으로 된다. 따라서, 불휘발성 메모리인 NOR 형 플래시 메모리 (NOR) 를, 정보 처리 장치 (CPU_CHIP) 에서부터 가장 근처에 접속하는 본 실시형태에서는, 다이내믹 랜덤 액세스 메모리 (DRAM) 를 셀프 리프레시 상태로 하고, 또한 다이내믹 랜덤 액세스 메모리 (DRAM) 나 NAND 형 플래시 메모리 (NAND) 에 대한 리퀘스트 클록 (RqCk1 및 RqCk0) 이나, 리스폰스 클록 (RsCk1 이나 RsCk2) 을 정지시키고, NOR 형 플래시 메모리 (NOR) 만을 동작시킬 수 있어, 전화나 메일을 기다릴 때의 소비 전력을 저감시킬 수 있다.
(제 4 실시형태)
도 40 은, 정보 처리 장치 (CPU_CHIP) 와 메모리 모듈 (MEM26) 로 구성되는 정보 처리 시스템을 나타낸 것이다. 메모리 모듈 (MEM26) 은, 다이내믹 랜덤 액세스 메모리 (DRAM), NAND 형 플래시 메모리 (NAND0 및 NAND1) 로 구성된다. 정보 처리 장치 (CPU_CHIP) 는, 도 1 에 나타낸 것과 동등하다. 다이내믹 랜덤 액세스 메모리 (DRAM) 는, 도 10 에 나타낸 메모리와 동등하다. NAND 형 플래시 메모리 (NAND0 및 NAND1) 는 도 21 에 나타낸 메모리와 동등하다. NAND 형 플래시 메모리 (NAND0 및 NAND1) 는 NOR 형 플래시 메모리보다 대용량이고 또한 저 비용을 실현할 수 있는 메모리이다. NOR 형 플래시 메모리 대신에 NAND 형 플래시 메모리 (NAND0) 를 이용함으로써 NAND 형 플래시 메모리 (NAND0) 에, OS 나 어플리케이션 프로그램을 저장할 수 있어, 대용량이고 또한 저비용의 정보 처리 시스템을 실현할 수 있다. 또한, NAND 형 플래시 메모리 (NAND0) 에 저장되어 있는 OS 나 어플리케이션 프로그램을 미리 다이내믹 랜덤 액세스 메모리 (DRAM) 에 전송함으로써, 정보 처리 시스템의 고성능화를 도모할 수 있다.
(제 5 실시형태)
도 41 은, 정보 처리 장치 (CPU_CHIP) 와 메모리 모듈 (MEM27) 로 구성되는 정보 처리 시스템을 나타낸 것이다. 메모리 모듈 (MEM27) 은, 다이내믹 랜덤 액세스 메모리 (DRAM), NOR 형 플래시 메모리 (NOR), NAND 형 플래시 메모리 (NAND) 및 하드 디스크 (HDD) 로 구성된다. 정보 처리 장치 (CPU_CHIP) 는, 도 1 에 나타낸 것과 동등하다. 다이내믹 랜덤 액세스 메모리 (DRAM) 는, 도 10 에 나타낸 메모리와 동등하다. NOR 형 플래시 메모리 (NOR) 는, 도 18 에 나타낸 메모리와 동등하다. NAND 형 플래시 메모리 (NAND) 는 도 21 에 나타낸 메모리와 동등하다. 하드 디스크 (HDD) 는, NAND 형 플래시 메모리 (NAND) 보다 대용량이고 또한 저비용을 실현할 수 있는 메모리이다.
데이터의 판독 단위나, 어드레스 관리 방법이나, 에러 검출 정정 방법에 관해서 말하면, 원래 하드 디스크 (HDD) 에서 실현된 데이터의 판독 단위나, 어드레스 관리 방법이나, 에러 검출 정정 방법 등을 플래시 메모리가 계승하고 있기 때문에, 하드 디스크 (HDD) 를 용이하게 추가 접속하여, 대용량이고 또한 저비용의 메 모리 모듈을 실현할 수 있다.
(제 6 실시형태)
도 42 는, 정보 처리 장치 (CPU_CHIP) 와 메모리 모듈 (MEM28) 로 구성되는 정보 처리 시스템을 나타낸 것이다. 메모리 모듈 (MEM28) 은, 제 1 불휘발성 메모리 (MRAM), 제 2 불휘발성 메모리 (NOR), 제 3 불휘발성 메모리 (NAND) 로 구성된다. 정보 처리 장치 (CPU_CHIP) 는, 도 1 에 나타낸 것과 동등하다. 제 1 불휘발성 메모리 (MRAM) 는, 도 10 에 나타낸 메모리 회로 (MemVL) 가, 불휘발성 마그네틱 메모리 셀로 구성되어 있는 마그네틱 랜덤 액세스 메모리 (MRAM) 이다. 제 2 불휘발성 메모리 (NOR) 는, 도 18 에 나타낸 NOR 형 플래시 메모리와 동등하다. 제 3 불휘발성 메모리 (NAND) 는, 도 21 에 나타낸 NAND 형 플래시 메모리 (NAND) 와 동등하다.
휘발성 다이내믹 랜덤 액세스 메모리 (DRAM) 대신에 불휘발성 마그네틱 랜덤 액세스 메모리 (MRAM) 를 사용함으로써, 메모리 회로 내의 데이터 유지 동작을 정기적으로 실시할 필요가 없기 때문에, 저전력화가 가능해진다. 또, 제 2 불휘발성 메모리 (M280) 는, 도 12 에 나타낸 메모리 회로 (NV1) 가 불휘발성 상변화 메모리 셀로 구성되는 상변화 메모리여도 된다.
(제 7 실시형태)
도 43 은 본 발명에 있어서의 제 7 실시형태를 나타낸 것이다. 도 43(A) 는 상면도이고, 도 43(B) 는 상면도에 나타낸 A-A' 선을 따른 부분의 단면도이다.
본 실시형태의 멀티 칩·모듈은, 볼 그리드 어레이 (BGA) 에 의해 장치에 실 장하는 기반 (예를 들어 유리 에폭시 기판으로 된 프린트 회로 보드) (PCB) 상에, CHIPM1, CHIPM2, CHIPM3 이 탑재되어 있다. 특별히 한정되지 않지만, CHIPM1 은 제 1 불휘발성 메모리이고, CHIPM2 는 제 2 불휘발성 메모리이고, CHIPM3 은 제 1 휘발성 메모리이다.
본 멀티 칩·모듈에 의해, 도 1 에 나타내는 메모리 모듈 (MEM) 및 도 39 에 나타내는 메모리 모듈 (MEM25), 도 40 에 나타내는 메모리 모듈 (MEM26), 도 42 에 나타내는 메모리 모듈 (MEM28) 을 1 개의 밀봉체에 집적할 수 있다.
CHIPM1 과 기반 (PCB) 상의 본딩 패드는 본딩 와이어 (PATH2) 로 접속되고, CHIPM2 와 기반 (PCB) 상의 본딩 패드는 본딩 와이어 (PATH1) 로 접속되어 있다. CHIPM3 과 기반 (PCB) 상의 본딩 패드는 본딩 와이어 (PATH4) 로 접속되어 있다. CHIPM1 과 CHIPM2 는 본딩 와이어 (PATH3) 로 접속되고, CHIPM2 와 CHIPM3 은 본딩 와이어 (PATH5) 로 접속되어 있다.
칩이 탑재된 기반 (PCB) 의 상면은 수지 몰드가 실시되어 각 칩과 접속 배선을 보호한다. 또한, 추가로 그 위에서부터 금속, 세라믹, 혹은 수지의 커버 (COVER) 를 사용해도 된다.
본 실시형태에서는 프린트 회로 보드 (PCB) 상에 베어 칩을 직접 탑재하기 때문에, 실장 면적이 작은 메모리 모듈을 구성할 수 있다. 또, 각 칩을 적층할 수 있기 때문에, 칩과 기반 (PCB) 사이의 배선 길이를 짧게 할 수 있어, 실장 면적을 작게 할 수 있다. 칩 사이의 배선 및 각 칩과 기반 사이의 배선을 본딩 와이어 방식으로 통일함으로써 적은 공정수로 메모리 모듈을 제조할 수 있다.
또한 칩 사이를 본딩 와이어로 직접 배선함으로써 기반 상의 본딩 패드 수와 본딩 와이어의 개수를 삭감하여 적은 공정수로 메모리 모듈을 제조할 수 있다. 수지의 커버를 사용한 경우에는, 보다 강인한 메모리 모듈을 구성할 수 있다. 세라믹이나 금속 커버를 사용한 경우에는, 강도 외에, 방열성이나 실드 효과가 우수한 메모리 모듈을 구성할 수 있다.
(제 8 실시형태)
도 44 는 본 발명에 있어서의 제 8 실시형태를 나타낸 것이다. 도 44(A) 는 상면도이고, 도 44(B) 는 상면도에 나타낸 A-A' 선을 따른 부분의 단면도이다.
본 실시형태의 멀티 칩·모듈은, 볼 그리드 어레이 (BGA) 에 의해 장치에 실장하는 기반 (예를 들어 유리 에폭시 기판으로 된 프린트 회로 보드) (PCB) 상에, CHIPM1, CHIPM2, CHIPM3 이 탑재되어 있다. CHIPM1 은 제 1 불휘발성 메모리, CHIP2M 은 제 2 불휘발성 메모리이다. CHIP3M 은 랜덤 액세스 메모리이다. 본 멀티 칩·모듈에 의해, 도 1 에 나타내는 메모리 모듈 (MEM) 및 도 39 에 나타내는 메모리 모듈 (MEM25), 도 40 에 나타내는 메모리 모듈 (MEM26), 도 42 에 나타내는 메모리 모듈 (MEM28) 을 1 개의 밀봉체에 집적할 수 있다.
CHIPM1 과 기반 (PCB) 상의 본딩 패드는 본딩 와이어 (PATH2) 로 접속되고, CHIPM2 와 기반 (PCB) 상의 본딩 패드는 본딩 와이어 (PATH1) 로 접속되어 있다. CHIPM1 과 CHIPM2 는 본딩 와이어 (PATH3) 로 접속된다. 또, CHIP3M 의 실장 및 배선에 볼 그리드 어레이가 사용되고 있다.
본 실장 방법에서는 3 칩을 적층할 수 있기 때문에 실장 면적을 작게 유지할 수 있다. 또한, CHIPM3 과 기반 사이의 본딩은 불필요해져 본딩 배선의 개수를 삭감시킬 수 있으므로 조립 공수를 삭감시킬 수 있고, 또한 보다 신뢰성이 높은 멀티 칩 모듈을 실현할 수 있다.
(제 9 실시형태)
도 45 는 본 발명에 관련된 멀티 칩·모듈의 제 9 실시형태를 나타낸 것이다. 도 45(A) 는 상면도이고, 도 45(B) 는 상면도에 나타낸 A-A' 선을 따른 부분의 단면도이다.
본 실시형태의 메모리 모듈은, 볼 그리드 어레이 (BGA) 에 의해 장치에 실장하는 기반 (예를 들어 유리 에폭시 기판으로 된 프린트 회로 보드) (PCB) 상에, CHIPM1, CHIPM2, CHIPM3, CHIPM4 가 탑재되어 있다. CHIPM1 및 CHIPM2 는 불휘발성 메모리, CHIPM3 은 랜덤 액세스 메모리이다.
CHIPM4 는 정보 처리 장치 (CPU_CHIP) 이다. 본 실장 방법에서는, 도 1 에 나타내는 정보 처리 시스템 및 도 39 에 나타내는 정보 처리 시스템, 도 40 에 나타내는 정보 처리 시스템 및 도 42 에 나타내는 정보 처리 시스템을 1 개의 밀봉체에 집적할 수 있다.
CHIPM1 과 기반 (PCB) 상의 본딩 패드는 본딩 와이어 (PATH2) 로 접속되고, CHIPM2 와 기반 (PCB) 상의 본딩 패드는 본딩 와이어 (PATH4) 로 접속되고, CHIPM3 과 기반 (PCB) 상의 본딩 패드는 본딩 와이어 (PATH1) 로 접속되어 있다.
CHIPM1 과 CHIPM3 은 본딩 와이어 (PATH3) 로 접속되고, CHIPM2 와 CHIPM3 은 본딩 와이어 (PATH5) 로 접속된다. CHIPM4 의 실장 및 배선에 볼 그리드 어 레이 (BGA) 가 사용되고 있다. 본 실장 방법에서는 프린트 회로 보드 (PCB) 상에 베어 칩을 직접 탑재하기 때문에, 실장 면적이 작은 메모리 모듈을 구성할 수 있다. 또, 각 칩을 근접시켜 배치할 수 있기 때문에, 칩간 배선 길이를 짧게 할 수 있다.
칩 사이를 본딩 와이어로 직접 배선함으로써 기반 상의 본딩 패드 수와 본딩 와이어의 개수를 삭감시켜 적은 공정수로 메모리 모듈을 제조할 수 있다. 또한, CHIPM4 와 기반 사이의 본딩은 불필요해져 본딩 배선의 개수를 삭감시킬 수 있으므로 조립 공수를 삭감시킬 수 있고, 또한 보다 신뢰성이 높은 멀티 칩 모듈을 실현할 수 있다.
(제 10 실시형태)
도 46 은 본 발명에 관련된 메모리 시스템의 제 10 실시형태를 나타낸 것이다. 도 46(A) 는 상면도이고, 도 46(B) 는 상면도에 나타낸 A-A' 선을 따른 부분의 단면도이다.
본 실시형태의 메모리 모듈은, 볼 그리드 어레이 (BGA) 에 의해 장치에 실장하는 기반 (예를 들어 유리 에폭시 기판으로 된 프린트 회로 보드) (PCB) 상에, CHIPM1, CHIPM2, CHIPM3 이 탑재되어 있다. CHIPM1 및 CHIPM2 는 불휘발성 메모리, CHIPM3 은 랜덤 액세스 메모리이다.
칩 사이의 배선 및 각 칩과 기반 사이의 배선을 본딩 와이어 방식으로 통일함으로써 적은 공정수로 메모리 모듈을 제조할 수 있다. 본 실장 방법에서는, 도 1 에 나타내는 메모리 모듈 (MEM) 및 도 39 에 나타내는 메모리 모듈 (MEM25), 도 40 에 나타내는 메모리 모듈 (MEM26), 도 42 에 나타내는 메모리 모듈 (MEM28) 을 1 개의 밀봉체에 집적할 수 있다.
CHIPM1 과 기반 (PCB) 상의 본딩 패드는 본딩 와이어 (PATH2) 로 접속되고, CHIPM2 와 기반 (PCB) 상의 본딩 패드는 본딩 와이어 (PATH1) 로 접속되고, CHIPM3 과 기반 (PCB) 상의 본딩 패드는 본딩 와이어 (PATH3) 로 접속되어 있다. 본 실시형태에서는 프린트 회로 보드 (PCB) 상에 베어 칩을 직접 탑재하기 때문에, 실장 면적이 작은 메모리 모듈을 구성할 수 있다. 또, 각 칩을 근접시켜 배치할 수 있기 때문에, 칩간 배선 길이를 짧게 할 수 있다.
각 칩과 기반 사이의 배선을 본딩 와이어 방식으로 통일함으로써 적은 공정수로 메모리 모듈을 제조할 수 있다.
(제 11 실시형태)
도 47 은 본 발명에 관련된 메모리 시스템의 제 11 실시형태를 나타낸 것이다. 도 47(A) 는 상면도이고, 도 47(B) 는 상면도에 나타낸 A-A' 선을 따른 부분의 단면도이다.
본 실시형태의 메모리 모듈은, 볼 그리드 어레이 (BGA) 에 의해 장치에 실장하는 기반 (예를 들어 유리 에폭시 기판으로 된 프린트 회로 보드) (PCB) 상에, CHIPM1, CHIPM2, CHIPM3, CHlPM4 가 탑재되어 있다. CHIPM1 및 CHIPM2 는 불휘발성 메모리 및 CHIPM3 은 랜덤 액세스 메모리이다. CHIPM4 는 정보 처리 장치 (CPU_CHIP) 이다.
본 실장 방법에서는, 도 1 에 나타내는 정보 처리 시스템 및 도 39 에 나타 내는 정보 처리 시스템, 도 40 에 나타내는 정보 처리 시스템 및 도 42 에 나타내는 정보 처리 시스템을 1 개의 밀봉체에 집적할 수 있다.
CHIPM1 과 기반 (PCB) 상의 본딩 패드는 본딩 와이어 (PATH2) 로 접속되고, CHIPM2 와 기반 (PCB) 상의 본딩 패드는 본딩 와이어 (PATH1) 로 접속되고, CHIPM3 과 기반 (PCB) 상의 본딩 패드는 본딩 와이어 (PATH3) 로 접속되어 있다. CHIPM4 의 실장 및 배선에 볼 그리드 어레이 (BGA) 가 사용되고 있다.
본 실시형태에서는 프린트 회로 보드 (PCB) 상에 베어 칩을 직접 탑재하기 때문에, 실장 면적이 작은 메모리 모듈을 구성할 수 있다. 또, 각 칩을 근접시켜 배치할 수 있기 때문에, 칩간 배선 길이를 짧게 할 수 있다. CHIPM4 와 기반 사이의 본딩은 불필요해져 본딩 배선의 개수를 삭감시킬 수 있기 때문에 조립 공수를 삭감시킬 수 있고, 또한 보다 신뢰성이 높은 멀티 칩 모듈을 실현할 수 있다.
(제 12 실시형태)
도 48 에, 본 발명에 관련된 메모리 모듈을 이용한 휴대 전화의 제 12 실시형태를 나타낸다. 휴대 전화는, 안테나 (ANT), 무선 블록 (RF), 음성 코덱 블록 (SP), 스피커 (SK), 마이크로폰 (MK), 정보 처리 장치 (CPU), 액정 표시부 (LCD), 키보드 (KEY) 및 본 발명의 메모리 모듈 (MSM) 로 구성된다. 정보 처리 장치 (CPU_MAIN) 는 복수의 정보 처리 회로를 가지며, 그 중의 하나의 정보 처리 회로 (CPU0) 는 베이스 밴드 처리 회로 (BB) 로서, 다른 것 중의 적어도 1 개의 정보 처리 회로 (CPU1) 는 어플리케이션 프로세서 (AP) 로서 동작한다.
통화시의 동작을 설명한다. 안테나 (ANT) 를 통해 수신된 음성은 무선 블록 (RF) 에 의해 증폭되고, 정보 처리 장치 (CPU0) 에 입력된다. 정보 처리 장치 (CPU0) 에서는, 음성의 아날로그 신호를 디지털 신호로 변환하고, 에러 정정과 복호 처리를 실시하고, 음성 코덱 블록 (SP) 에 출력한다. 음성 코덱 블록이 디지털 신호를 아날로그 신호로 변환하고 스피커 (SK) 에 출력하면, 스피커로부터 상대의 소리가 들린다.
휴대 전화로부터 인터넷의 홈 페이지에 액세스하고, 음악 데이터를 다운로드하고, 재생하여 듣고, 마지막에 다운로드한 음악 데이터를 보존한다는 일련의 작업을 실시할 때의 동작을 설명한다.
메모리 모듈 (MEM) 에는, OS, 어플리케이션 프로그램 (메일, Web 브라우저, 음악 재생 프로그램, 동작 재생 프로그램, 게임 프로그램 등), 음악 데이터, 정지 화상 데이터, 동영상 데이터 등이 저장되어 있다.
키보드로부터 Web 브라우저의 기동을 지시하면, 메모리 모듈 (MSM) 내의 NOR 형 플래시 메모리에 저장되어 있는 Web 브라우저의 프로그램은 정보 처리 회로 (CPU1) 에 의해 판독되고, 실행되고, 액정 표시 (LCD) 에 Web 브라우저가 표시된다. 원하는 홈 페이지에 액세스하고, 마음에 든 음악 데이터의 다운로드를 키보드 (KEY) 로부터 지시하면, 음악 데이터는 안테나 (ANT) 를 통해 수신되고, 무선 블록 (RF) 에 의해 증폭되고, 정보 처리 장치 (CPU0) 에 입력된다. 정보 처리 장치 (CPU0) 에서는, 아날로그 신호인 음악 데이터를 디지털 신호로 변환하고, 에러 정정과 복호 처리를 실시한다. 디지털 신호화된 음악 데이터는 메모리 모듈 (MSM) 내의 다이내믹 랜덤 액세스 메모리 (DRAM) 에 일단 유지되고, 최종적으로 메모리 모듈 (MEM) 의 NAND 형 플래시 메모리에 전송되고 저장된다.
다음으로, 키보드 (KEY) 로부터 음악 재생 프로그램의 기동을 지시하면 메모리 모듈 (MSM) 내의 NOR 형 플래시 메모리에 저장되어 있는 음악 재생 프로그램이, 정보 처리 회로 (CPU1) 에 의해 판독되고, 실행되고, 액정 표시 (LCD) 에 음악 재생 프로그램이 표시된다.
키보드 (KEY) 로부터 메모리 모듈 내 NAND 형 플래시 메모리에 다운로드한 음악 데이터를 듣기 위한 지시를 하면, 정보 처리 회로 (CPU1) 는 음악 재생 프로그램을 실행하고, NAND 형 플래시 메모리에 유지되어 있는 음악 데이터를 처리하고, 최종적으로 스피커 (SK) 로부터 음악이 들려 온다. 본 발명의 메모리 모듈 (MSM) 내의 NOR 형 플래시 메모리에는, Web 브라우저와 음악 재생 프로그램이나, 전자 메일 프로그램 등의 복수의 프로그램이 저장되고, 정보 처리 장치 (CPU_MAIN) 는 복수의 정보 처리 회로 (CPU0 내지 CPU3) 를 가지기 때문에, 동시에 복수의 프로그램을 실행할 수 있다.
전화나 전자 메일을 기다릴 때에는, 정보 처리 장치 (CPU_MAIN) 는, 메모리 모듈 (MSM) 에 대한 클록을 필요 최소한의 주파수로 동작시킬 수 있어 소비 전력을 극단적으로 작게 할 수 있다.
이와 같이, 본 발명에 관련된 메모리 모듈을 사용함으로써, 대량의 메일, 음악 재생, 어플리케이션 프로그램이나 음악 데이터, 정지 화상 데이터, 동영상 데이터 등을 저장할 수 있고, 또한 복수의 프로그램을 동시에 실행할 수 있다.
(제 13 실시형태)
도 49 에, 본 발명에 관련된 메모리 시스템을 이용한 휴대 전화의 제 13 실시형태를 나타낸다. 휴대 전화는, 안테나 (ANT), 무선 블록 (RF), 음성 코덱 블록 (SP), 스피커 (SK), 마이크로폰 (MK), 액정 표시부 (LCD), 키보드 (KEY) 및 메모리 모듈 (MSM) 과 정보 처리 장치 (CPU_MAIN) 를 1 개의 밀봉체에 집적한 본 발명의 정보 처리 시스템 (SLP) 으로 구성된다.
본 발명의 정보 처리 시스템 (SLP) 을 사용함으로써, 부품 점수를 삭감시킬 수 있기 때문에, 저비용화가 가능하고, 휴대 전화의 신뢰성이 향상되고, 휴대 전화를 구성하는 부품의 실장 면적을 작게 할 수 있어, 휴대 전화의 소형화가 가능하다.
(제 14 실시형태)
도 51 은, 본 발명의 제 14 실시형태이다. 정보 처리 장치 (CPU_CHIP0, CPU_CHIP1, CPU_CHIP2, CPU_CHIP3) 와 메모리 모듈 (MEM30, MEM31, MEM32, MEM33) 로 구성되는 정보 처리 시스템을 나타낸 실시형태이다.
정보 처리 장치 (CPU_CHIP0, CPU_CHIP1, CPU_CHIP2, CPU_CHIP3) 는, 도 1 에 나타낸 정보 처리 장치 (CPU_CHIP) 와 동등하다. 메모리 모듈 (MEM30, MEM31, MEM32, MEM33) 은, 도 1 에 나타낸 메모리 모듈 (MEM) 과 동등하다.
RqC0 내지 RqC7 은 리퀘스트 클록이고, RsC0 내지 RsC7 은 리스폰스 클록이다. RqE0 내지 RqE7 은 리퀘스트 이네이블 신호이고, RsE0 내지 RsEN7 은 리스폰스 이네이블 신호이다. RqM0 내지 RqM7 은 리퀘스트 신호이고, RsM0 내지 RsM1 은 리스폰스 신호이다.
본 발명에서는, 용이하게 정보 처리 장치를 복수 접속할 수 있어 고속 처리가 가능해진다. 또한, 휴대 기기의 시스템 구성이나, 필요로 하는 성능에 맞춰 유연하게 정보 처리 장치나 메모리 모듈을 접속할 수 있다.
본 실시형태에서는, 도 1 에 나타낸 메모리 모듈 (MEM) 의 접속예를 나타내고 있는데, 도 38 내지 도 42 에 나타내는 메모리 모듈을 접속해도 된다.
<각 실시형태에 나타낸 발명의 효과의 정리>
이상 설명한 바와 같이 본 명세서에 개시되는 발명에 의해 얻어지는 주된 효과는 이하와 같다.
첫번째로, 전원 투입 직후에, 직렬 접속의 확인 동작을 실시함으로써, 확실하게 메모리끼리가 접속되어 있는 것을 확인할 수 있다. 또한, 부트 디바이스 및 최단의 메모리 칩을 명시하고, 자동적으로 각 메모리에 대한 ID 가 부가됨으로써, 용이하게 필요한 분(分)만큼 메모리 칩을 접속하여, 메모리 용량을 확장할 수 있다.
두번째로, 리퀘스트에 ID 를 부가함으로써, 정보 처리 장치 (CPU_CHIP) 로부터 각 메모리 칩 (M0, M1 및 M2) 에 리퀘스트가 확실하게 전송된다. 또, 정보 처리 장치 (CPU_CHIP) 에 대한 리스폰스에 ID 를 부가함으로써, 각 메모리로부터 정확하게 데이터 전송을 실시할 수 있었던 것을 확인할 수 있고, 정보 처리 장치 (CPU_CHIP) 및 메모리 칩 (M0, M1, M2) 의 직렬 접속에 의해, 접속 신호수를 감소시키면서도, 정보 처리 장치 (CPU_CHIP) 는 원하는 처리를 실행할 수 있다.
세번째로, 데이터를 송신하기 전에, 그 데이터의 레이턴시값을 송신함으로써, 정보 처리 장치 (CPU_CHIP) 는 데이터의 도착 시간을 알고, 데이터의 도착 전에 미리 필요한 처리를 실시할 수 있어 성능 향상을 도모할 수 있다.
네번째로, 리퀘스트에 리퀘스트 번호를 부가하고, 또 리스폰스에 리스폰스 번호를 부가함으로써, 데이터 전송 성능의 향상을 도모하므로 리퀘스트의 입력순과는 상이한 순서로 리스폰스가 송신된 경우에도, 정보 처리 장치 (CPU_CHIP) 는, 어느 리퀘스트에 대한 리스폰스가 메모리 칩으로부터 송신되었는지를 알 수 있어, 원하는 처리를 고속으로 실행할 수 있다.
다섯번째로, 리퀘스트 인터페이스 회로 (ReIF) 와 리스폰스 인터페이스 회로는 독립적으로 동작할 수 있기 때문에, 데이터의 판독 동작과 기입 동작을 동시에 실행할 수 있어, 데이터 전송 성능을 향상시킬 수 있다.
여섯번째로, 리퀘스트의 입력 순서에 관계 없이, 빨리 판독할 수 있는 데이터는, 판독이 느린 데이터를 기다리지 않고, 바로 판독할 수 있기 때문에, 고속화가 가능해진다.
일곱번째로, 각 메모리 칩 (M0, M1 및 M2) 의 클록을 필요에 따라 저속 동작시키거나, 정지시키거나, 복귀시키거나 할 수 있기 때문에, 저전력화를 도모할 수 있다.
여덟번째로, 메모리 칩 (M2) 으로부터 판독할 때에는 에러 검출과 정정을 실시하고, 기입할 때에는 기입이 정확하게 실시되지 않은 불량 어드레스에 대해 대체 처리를 실시하므로, 신뢰성을 유지할 수 있다.
아홉번째로, 정보 처리 장치에 대한 각 메모리로부터의 리스폰스 순서는, 판독한 횟수에 따라 동적으로 변화되므로, 데이터 전송 성능을 향상시킬 수 있다. 또한, 판독 횟수는 프로그램할 수 있고, 이용하는 시스템에 유연하게 대응할 수 있다.
열번째로, 메모리 칩으로부터 정보 처리 장치에 에러를 송신할 수 있기 때문에, 정보 처리 장치는 에러를 검출하여 바로 에러에 대처할 수 있어, 신뢰성이 높은 정보 처리 시스템을 구축할 수 있다.
열한번째로, 각 메모리 칩 (M0, M1 및 M2) 의 클록의 동작 주파수를 필요에 따라 변경할 수 있어 저전력화를 도모할 수 있다.
열두번째로, 복수의 반도체 칩을 하나의 밀봉체에 실장함으로써 실장 면적이 작은 시스템 메모리·모듈을 제공할 수 있다.
도면의 간단한 설명
도 1 은 본 발명을 적용한 정보 처리 시스템의 구성의 일례를 나타내는 구성도이다.
도 2 는 본 발명을 적용한 정보 처리 시스템의 전원 투입시의 동작의 일례를 나타내는 도면이다.
도 3 은 레지스터에 대한 데이터 설정 동작의 일례를 나타내는 플로우 차트이다.
도 4 는 레지스터에 설정된 데이터의 일례이다.
도 5 는 레지스터에 대한 데이터 설정 동작의 일례를 나타내는 플로우 차트 이다.
도 6 은 레지스터에 설정된 데이터의 일례이다.
도 7 은 레이턴시 출력 동작의 일례를 나타내는 플로우 차트이다.
도 8 은 큐의 예약 동작의 일례를 나타내는 플로우 차트이다.
도 9 는 본 발명을 적용한 정보 처리 시스템의 어드레스 맵의 일례를 나타내는 설명도이다.
도 10 은 본 발명을 적용한 정보 처리 시스템을 구성하는 메모리의 구성의 일례를 나타내는 도면이다.
도 11 은 본 발명을 적용한 정보 처리 시스템 내에서 발생한 리퀘스트에 대한 동작의 일례를 나타내는 플로우 차트이다.
도 12 는 본 발명을 적용한 정보 처리 시스템에서의 리스폰스에 대한 동작의 일례를 나타내는 플로우 차트이다.
도 13 은 본 발명을 적용한 정보 처리 시스템에서의 리스폰스에 대한 동작의 일례를 나타내는 플로우 차트이다.
도 14 는 리스폰스 스케줄 회로의 동작을 나타내는 플로우 차트이다.
도 15 는 리스폰스 스케줄 회로의 리스폰스 우선 순위의 변경 동작의 일례를 나타내는 도면이다.
도 16 은 본 발명을 적용한 정보 처리 시스템의 클록 제어 동작의 일례를 나타내는 플로우 차트이다.
도 17 은 본 발명을 적용한 정보 처리 시스템을 구성하는 메모리의 메모리 회로의 구성의 일례를 나타내는 도면이다.
도 18 은 본 발명을 적용한 정보 처리 시스템을 구성하는 메모리의 구성의 일례를 나타내는 도면이다.
도 19 는 리스폰스 스케줄 회로의 리스폰스 우선 순위의 변경 동작의 일례를 나타내는 도면이다.
도 20 은 본 발명을 적용한 정보 처리 시스템을 구성하는 메모리의 메모리 회로의 구성의 일례를 나타내는 도면이다.
도 21 은 본 발명을 적용한 정보 처리 시스템을 구성하는 메모리의 구성의 일례를 나타내는 도면이다.
도 22 는 리스폰스 스케줄 회로의 리스폰스 우선 순위의 변경 동작의 일례를 나타내는 도면이다.
도 23 은 본 발명을 적용한 정보 처리 시스템을 구성하는 메모리의 메모리 회로의 구성의 일례를 나타내는 도면이다.
도 24 는 본 발명을 적용한 정보 처리 시스템에서의 에러 리스폰스에 대한 동작의 일례를 나타내는 플로우 차트이다.
도 25 는 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 나타내는 도면이다.
도 26 은 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 나타내는 도면이다.
도 27 은 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 나 타내는 도면이다.
도 28 은 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 나타내는 도면이다.
도 29 는 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 나타내는 도면이다.
도 30 은 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 나타내는 도면이다.
도 31 은 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 나타내는 도면이다.
도 32 는 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 나타내는 도면이다.
도 33 은 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 나타내는 도면이다.
도 34 는 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 나타내는 도면이다.
도 35 는 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 나타내는 도면이다.
도 36 은 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 나타내는 도면이다.
도 37 은 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 나 타내는 도면이다.
도 38 은 본 발명을 적용한 정보 처리 시스템의 구성도이다.
도 39 는 본 발명을 적용한 정보 처리 시스템의 구성도이다.
도 40 은 본 발명을 적용한 정보 처리 시스템의 구성도이다.
도 41 은 본 발명을 적용한 정보 처리 시스템의 구성도이다.
도 42 는 본 발명을 적용한 정보 처리 시스템의 구성도이다.
도 43 은 본 발명에 의한 메모리 정보 처리 시스템의 실장 형태의 일례를 나타내는 도면이다.
도 44 는 본 발명에 의한 메모리 정보 처리 시스템의 실장 형태의 일례를 나타내는 도면이다.
도 45 는 본 발명에 의한 메모리 정보 처리 시스템의 실장 형태의 일례를 나타내는 도면이다.
도 46 은 본 발명에 의한 메모리 정보 처리 시스템의 실장 형태의 일례를 나타내는 도면이다.
도 47 은 본 발명에 의한 메모리 정보 처리 시스템의 실장 형태의 일례를 나타내는 도면이다.
도 48 은 본 발명에 의한 메모리 정보 처리 시스템을 이용한 휴대 전화의 구성예를 나타내는 블록도이다.
도 49 는 본 발명에 의한 메모리 정보 처리 시스템을 이용한 휴대 전화의 구성예를 나타내는 블록도이다.
도 50 은 휴대 전화에 이용된 종래의 메모리 구성예를 나타내는 블록도이다.
도 51 은 본 발명을 적용한 정보 처리 시스템의 구성도이다.
*부호의 설명*
CPU_CHIP : 정보 처리 장치,
CPU0, CPU1, CPU2, CPU3 : 정보 처리 회로,
CON : 메모리 제어 회로,
RqQ : 리퀘스트 큐,
RsQ : 리스폰스 큐,
BotID : 부트 디바이스 ID 레지스터,
EndID : 최단 디바이스 ID 레지스터,
MEM : 메모리 모듈,
M0, M1, M2 : 메모리 칩,
INIT : 초기 설정 회로,
ReqIF : 리퀘스트 인터페이스 회로,
ResIF : 리스폰스 인터페이스 회로,
MemVL, MemNV1, MemNV2 : 메모리 회로,
ReqIF : 리퀘스트 인터페이스 회로,
RqCkC : 리퀘스트 클록 제어 회로,
RqCT : 리퀘스트 큐 제어 회로,
IDR : ID 레지스터,
Bsig : 부트 디바이스 인식 신호,
RqCk0, RqCk1, RqCk2 : 리퀘스트 클록,
RsCk0, RsCk1, RsCk2 : 리스폰스 클록,
RqEn0, RqEn1, RqEn2 : 리퀘스트 이네이블 신호,
RsEn0, RsEn1, RsEn2 : 리스폰스 이네이블 신호,
RqMux0, RqMux1, RqMux2 : 리퀘스트 신호,
RsMux0, RsMux1, RsMux2 : 리스폰스 신호,
ck1, ck2, ck3, ck4 : 클록 신호,
BotID-AREA : 부트 디바이스 ID 저장 영역,
EndID-AREA : 최종단 디바이스 ID 저장 영역,
InitPR-AREA : 초기 프로그램 영역,
OSAP-AREA : 프로그램 저장 영역,
COPY-AREA : 카피 영역,
WORK-AREA : 워크 영역,
DATA-AREA : 데이터 영역,
REP-AREA : 대체 영역,
PwOn : 전원 투입 기간,
RESET : 리셋 기간,
BootIDSet : 부트 디바이스 ID 설정 기간,
LinkEn : 접속 확인 기간,
BootRD : 부트 데이터 판독 기간,
InitID : ID 번호 설정 기간,
Idle : 아이들 기간,
RqQI, RqQXI, RqQXO : 리퀘스트 큐 회로,
IDR : ID 레지스터 회로,
CPQ : ID 비교 회로,
RsQo, RsQp : 리스폰스 큐 회로,
STReg : 스테이터스 레지스터 회로,
SCH : 리스폰스 스케줄 회로,
LRG : 레이턴시값 출력 설정 레지스터,
RRG : 리스폰스 순서 설정 레지스터,
RNB : 리퀘스트 번호 설정 회로,
CmdDec : 커맨드 디코더,
ContLogic : 제어 회로,
RaddLat : 로우 어드레스 버퍼,
CaddLat : 칼럼 어드레스 버퍼,
RefC : 리프레시 카운터,
Thmo : 온도계,
WDataLat : 라이트 데이터 버퍼,
RDataLat : 리드 데이터 버퍼,
RowDec : 로우 디코더,
ColDec : 칼럼 디코더,
SenseAmp : 센스 증폭기,
DataCont : 데이터 제어 회로,
BANK0, BANK1, BANK2, BANK3, BANK4, BANK5, BANK6, BANK7 : 메모리 뱅크,
BotID : 부트 디바이스 ID 값,
EndID : 종단 디바이스 ID 값,
DRAM, DRAM0, DRAM1 : 다이내믹 랜덤 액세스 메모리,
NOR : NOR 형 플래시 메모리,
NAND, NAND0, NAND1 : NAND 형 플래시 메모리,
HDD : 하드 디스크,
MRAM : 마그네틱 랜덤 액세스 메모리,
CHIPM1, CHIPM2, CHIP3M, CHIP4M : 반도체 칩,
PCB : 프린트 회로 기판,
COVER : 모듈의 밀봉 커버,
PATH1∼PATH5 : 본딩 배선,
ANT : 안테나,
RF : 무선 블록,
SP : 음성 코덱 블록,
SK : 스피커,
MK : 마이크로폰,
CPU : 프로세서,
DRAM : 다이내믹 랜덤 액세스 메모리,
LCD : 액정 표시부,
KEY : 키보드,
MSM : 메모리 모듈,
CPU_MAIN : 정보 처리 장치,
SLP : 정보 처리 시스템,
PRC : 정보 처리 장치,
MCM1, MCM2 : 메모리 모듈,
CPU : 중앙 연산 장치,
SRC, DRAC, NDC : 메모리 컨트롤러,
NOR FLASH : NOR 형 플래시 메모리,
SRAM : 스태틱 랜덤 액세스 메모리,
NAND FLASH : NAND 형 플래시 메모리,
DRAM : 다이내믹 랜덤 액세스 메모리.

Claims (33)

  1. 리퀘스트 인터페이스 회로와, 리스폰스 인터페이스 회로를 갖는 반도체 장치로서,
    상기 리퀘스트 인터페이스 회로는 리퀘스트 번호를 포함하는 리퀘스트를 수신하고,
    상기 리스폰스 인터페이스 회로는 리스폰스 번호를 포함하는 리스폰스를 송신하는 것을 특징으로 하는 반도체 장치.
  2. 제 1 항에 있어서,
    상기 리퀘스트 인터페이스 회로는 상기 리퀘스트 번호를 포함하는 리퀘스트를 수신한 후, 상기 리퀘스트 번호를 포함하는 리퀘스트를 송신하고,
    상기 리스폰스 인터페이스 회로는 상기 리스폰스 번호를 포함하는 리스폰스를 수신한 후, 상기 리스폰스 번호를 포함하는 리스폰스를 송신하는 것을 특징으로 하는 반도체 장치.
  3. 제 1 항에 있어서,
    상기 리퀘스트를 수신한 리퀘스트 인터페이스 회로는, 상기 리퀘스트에 대응한 리퀘스트 번호를 생성하는 것을 특징으로 하는 반도체 장치.
  4. 제 3 항에 있어서,
    상기 리퀘스트 인터페이스 회로는, 상기 리퀘스트 번호를 포함하는 리퀘스트를 송신하는 것을 특징으로 하는 반도체 장치.
  5. 제 1 항에 있어서,
    상기 반도체 장치는 메모리 제어 회로를 갖는 것을 특징으로 하는 반도체 장치.
  6. 제 1 항에 있어서,
    상기 반도체 장치는 정보 처리 회로를 갖는 것을 특징으로 하는 반도체 장치.
  7. 제 1 항에 있어서,
    상기 반도체 장치는 메모리 디바이스를 갖는 것을 특징으로 하는 반도체 장치.
  8. 제 1 항에 있어서,
    상기 반도체 장치는 직렬 접속한 복수의 메모리 디바이스를 가지며,
    상기 복수의 메모리 디바이스 각각은, 상기 리퀘스트 인터페이스 회로와, 상기 리스폰스 인터페이스 회로를 가지며, 리퀘스트 번호를 포함하는 리퀘스트를 수 신하고, 상기 리퀘스트에 대한 리스폰스를 송신할 때에 리스폰스 번호를 포함하는 리스폰스를 송신하는 것을 특징으로 하는 반도체 장치.
  9. 제 8 항에 있어서,
    상기 복수의 메모리 디바이스는, 제 1 메모리 디바이스와, 상기 제 1 메모리 디바이스의 후단에 접속되는 제 2 메모리 디바이스를 가지며,
    상기 제 1 메모리 디바이스는, 상기 리퀘스트에 포함되는 리퀘스트 번호를 상기 제 2 메모리 디바이스에 송신함과 함께, 상기 제 2 메모리 디바이스가 출력한 리스폰스에 포함되는 리스폰스 번호를 받는 것을 특징으로 하는 반도체 장치.
  10. 제 8 항에 있어서,
    상기 복수의 메모리 디바이스 각각은, 상기 리퀘스트에 관한 신호의 입출력 회로와, 상기 리퀘스트에 대한 리스폰스에 관한 신호의 입출력 회로를 각각 개별적으로 갖는 것을 특징으로 하는 반도체 장치.
  11. 제 8 항에 있어서,
    상기 복수의 메모리 디바이스 각각은, 상기 리퀘스트에 관한 신호를 위한 클록과, 상기 리퀘스트에 대한 리스폰스를 송신하는 신호를 위한 클록을 각각 개별적으로 갖는 것을 특징으로 하는 반도체 장치.
  12. 제 8 항에 있어서,
    상기 복수의 메모리 디바이스 각각은, 상기 리퀘스트를 수신한 후, 상기 리퀘스트에 대한 리퀘스트 번호를 생성하는 것을 특징으로 하는 반도체 장치.
  13. 제 12 항에 있어서,
    상기 복수의 메모리 디바이스는, 제 1 메모리 디바이스와, 상기 제 1 메모리 디바이스의 후단에 접속되는 제 2 메모리 디바이스를 가지며,
    상기 제 1 메모리 디바이스는, 상기 제 1 메모리 디바이스가 생성한 상기 리퀘스트 번호를 상기 제 2 메모리 디바이스에 송신하는 것을 특징으로 하는 반도체 장치.
  14. 리퀘스트 인터페이스 회로와, 리스폰스 인터페이스 회로를 갖는 반도체 장치로서,
    상기 리퀘스트 인터페이스 회로에는 복수의 리퀘스트 큐를 갖고 있고,
    상기 리스폰스 인터페이스 회로에는 복수의 리스폰스 큐를 갖고 있고,
    상기 리퀘스트 인터페이스 회로는 큐를 예약하기 위한 큐 예약 명령을 포함하는 리퀘스트를 수신하는 것을 특징으로 하는 반도체 장치.
  15. 제 14 항에 있어서,
    상기 큐 예약 명령에 따라, 리퀘스트 큐 및 리스폰스 큐의 예약이 완료된 후, 상기 리스폰스 인터페이스 회로는 큐의 예약이 완료된 것을 의미하는 예약 완료 정보를 송신하는 것을 특징으로 하는 반도체 장치.
  16. 제 14 항에 있어서,
    상기 반도체 장치는 메모리 제어 회로를 갖는 것을 특징으로 하는 반도체 장치.
  17. 제 14 항에 있어서,
    상기 반도체 장치는 정보 처리 회로를 갖는 것을 특징으로 하는 반도체 장치.
  18. 제 14 항에 있어서,
    상기 반도체 장치는 메모리 디바이스를 갖는 것을 특징으로 하는 반도체 장치.
  19. 제 14 항에 있어서,
    상기 반도체 장치는 직렬 접속한 복수의 메모리 디바이스를 가지며,
    상기 복수의 메모리 디바이스 각각은, 상기 리퀘스트 인터페이스 회로와, 상기 리스폰스 인터페이스 회로를 가지며, 리퀘스트를 송수신하는 복수의 리퀘스트 큐와, 리스폰스를 송수신하는 복수의 리스폰스 큐를 갖고 있고, 큐를 예약하기 위 한 큐 예약 명령을 포함하는 리퀘스트를 수신하는 것을 특징으로 하는 반도체 장치.
  20. 제 19 항에 있어서,
    상기 복수의 메모리 디바이스 각각은, 상기 큐 예약 명령에 따라, 리퀘스트 큐 및 리스폰스 큐의 예약이 완료된 후, 큐의 예약이 완료된 것을 의미하는 예약 완료 정보를 송신하는 것을 특징으로 하는 반도체 장치.
  21. 제 19 항에 있어서,
    상기 복수의 메모리 디바이스는, 제 1 메모리 디바이스와, 상기 제 1 메모리 디바이스의 후단에 접속되는 제 2 메모리 디바이스를 가지며,
    상기 제 1 메모리 디바이스는, 상기 제 1 메모리 디바이스가 수신한 큐 예약 명령을 상기 제 2 메모리 디바이스에 송신하는 것을 특징으로 하는 반도체 장치.
  22. 제 20 항에 있어서,
    상기 복수의 메모리 디바이스는, 제 1 메모리 디바이스와, 상기 제 1 메모리 디바이스의 후단에 접속되는 제 2 메모리 디바이스를 가지며,
    상기 제 2 메모리 디바이스는, 상기 제 1 메모리 디바이스에 예약 완료 정보를 송신하는 것을 특징으로 하는 반도체 장치.
  23. 리퀘스트 인터페이스 회로와, 리스폰스 인터페이스 회로와, 메모리 회로를 갖는 반도체 장치로서,
    상기 리퀘스트 인터페이스 회로는 판독 리퀘스트를 수신한 후, 상기 메모리 회로로부터 판독하는 데이터의 판독 레이턴시값을 계산하는 것을 특징으로 하는 반도체 장치.
  24. 제 23 항에 있어서,
    상기 리스폰스 인터페이스 회로는 상기 레이턴시값을 포함하는 리스폰스를 송신하는 것을 특징으로 하는 반도체 장치.
  25. 제 24 항에 있어서,
    상기 리스폰스 인터페이스 회로는 상기 레이턴시값을 포함하는 리스폰스를 수신한 후, 새로운 레이턴시값을 계산하는 것을 특징으로 하는 반도체 장치.
  26. 제 25 항에 있어서,
    상기 리스폰스 인터페이스 회로는 상기 새로운 레이턴시값을 포함하는 리스폰스를 송신하는 것을 특징으로 하는 반도체 장치.
  27. 제 23 항에 있어서,
    상기 반도체 장치는 메모리 제어 회로를 갖는 것을 특징으로 하는 반도체 장 치.
  28. 제 23 항에 있어서,
    상기 반도체 장치는 정보 처리 회로를 갖는 것을 특징으로 하는 반도체 장치.
  29. 제 23 항에 있어서,
    상기 반도체 장치는 메모리 디바이스를 갖는 것을 특징으로 하는 반도체 장치.
  30. 제 23 항에 있어서,
    상기 반도체 장치는 직렬 접속한 복수의 메모리 디바이스를 가지며,
    상기 복수의 메모리 디바이스 각각은, 상기 리퀘스트 인터페이스 회로와, 상기 리스폰스 인터페이스 회로와, 상기 메모리 회로를 가지며, 리퀘스트를 수신한 후, 상기 메모리 디바이스로부터 판독하는 데이터의 판독 레이턴시값을 계산하는 것을 특징으로 하는 반도체 장치.
  31. 제 30 항에 있어서,
    상기 복수의 메모리 디바이스 각각은, 상기 레이턴시값을 포함하는 리스폰스를 송신하는 것을 특징으로 하는 반도체 장치.
  32. 제 31 항에 있어서,
    상기 복수의 메모리 디바이스 각각은, 상기 레이턴시값을 포함하는 리스폰스를 수신한 후, 새로운 레이턴시값을 계산하는 것을 특징으로 하는 반도체 장치.
  33. 제 32 항에 있어서,
    상기 복수의 메모리 디바이스 각각은, 상기 새로운 레이턴시값을 포함하는 리스폰스를 송신하는 것을 특징으로 하는 반도체 장치.
KR1020097023975A 2007-04-26 2008-04-25 반도체 장치 KR101101729B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2007116516A JP5669338B2 (ja) 2007-04-26 2007-04-26 半導体装置
JPJP-P-2007-116516 2007-04-26
PCT/JP2008/058088 WO2008136417A1 (ja) 2007-04-26 2008-04-25 半導体装置

Publications (2)

Publication Number Publication Date
KR20090127956A true KR20090127956A (ko) 2009-12-14
KR101101729B1 KR101101729B1 (ko) 2012-01-05

Family

ID=39943524

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097023975A KR101101729B1 (ko) 2007-04-26 2008-04-25 반도체 장치

Country Status (7)

Country Link
US (2) US8886893B2 (ko)
EP (1) EP2149842A4 (ko)
JP (1) JP5669338B2 (ko)
KR (1) KR101101729B1 (ko)
CN (1) CN101669097B (ko)
TW (1) TW200907678A (ko)
WO (1) WO2008136417A1 (ko)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9176907B2 (en) 2008-09-12 2015-11-03 Hitachi, Ltd. Semiconductor device and data processing system
US8689017B2 (en) * 2009-03-12 2014-04-01 Cisco Technology, Inc. Server power manager and method for dynamically managing server power consumption
US20100262979A1 (en) * 2009-04-08 2010-10-14 Google Inc. Circular command queues for communication between a host and a data storage device
US8447918B2 (en) 2009-04-08 2013-05-21 Google Inc. Garbage collection for failure prediction and repartitioning
JP5420648B2 (ja) * 2009-05-22 2014-02-19 株式会社日立製作所 半導体装置
US8626997B2 (en) * 2009-07-16 2014-01-07 Micron Technology, Inc. Phase change memory in a dual inline memory module
TWI455146B (zh) * 2010-06-11 2014-10-01 Apacer Technology Inc 可擴充記憶體單元之儲存裝置
JP5614213B2 (ja) * 2010-10-01 2014-10-29 日本電気株式会社 記憶領域提供装置、記憶領域提供方法、及び、記憶領域提供プログラム
KR101796116B1 (ko) 2010-10-20 2017-11-10 삼성전자 주식회사 반도체 장치, 이를 포함하는 메모리 모듈, 메모리 시스템 및 그 동작방법
US9658678B2 (en) 2011-03-31 2017-05-23 Intel Corporation Induced thermal gradients
US9490003B2 (en) * 2011-03-31 2016-11-08 Intel Corporation Induced thermal gradients
GB2509624A (en) * 2011-10-25 2014-07-09 Hewlett Packard Development Co Drive carrier light source control
WO2013095674A1 (en) 2011-12-23 2013-06-27 Intel Corporation Memory operations using system thermal sensor data
US8929146B1 (en) * 2013-07-26 2015-01-06 Avalanche Technology, Inc. Controller management of memory array of storage device using magnetic random access memory (MRAM)
US9940050B2 (en) * 2015-10-05 2018-04-10 Mediatek Inc. Apparatus and method to speed up memory frequency switch flow
US10585791B2 (en) * 2018-03-20 2020-03-10 Intel Corporation Ordering of memory device mapping to reduce contention
CN113287173B (zh) * 2018-12-28 2022-08-19 美光科技公司 基于存储器使用模式降低系统有功功率
US20210081318A1 (en) * 2019-09-17 2021-03-18 Micron Technology, Inc. Flexible provisioning of multi-tier memory
WO2022000150A1 (zh) * 2020-06-28 2022-01-06 华为技术有限公司 堆叠存储器及存储系统
US11494317B1 (en) 2020-12-29 2022-11-08 Waymo Llc Memory validation

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7000A (en) * 1850-01-08 Smut-machine
JPH05299616A (ja) 1992-04-16 1993-11-12 Hitachi Ltd 半導体記憶装置
JPH07146820A (ja) 1993-04-08 1995-06-06 Hitachi Ltd フラッシュメモリの制御方法及び、それを用いた情報処理装置
JP3850067B2 (ja) * 1996-04-24 2006-11-29 株式会社ルネサステクノロジ メモリシステムおよびそれに用いられる半導体記憶装置
KR100297721B1 (ko) 1998-10-29 2001-08-07 윤종용 반도체 장치간 신호 송수신을 위한 송신회로 및 수신회로
US6195724B1 (en) * 1998-11-16 2001-02-27 Infineon Technologies Ag Methods and apparatus for prioritization of access to external devices
US6446143B1 (en) * 1998-11-25 2002-09-03 Compaq Information Technologies Group, L.P. Methods and apparatus for minimizing the impact of excessive instruction retrieval
JP2001005723A (ja) 1999-06-21 2001-01-12 Mitsubishi Electric Corp 半導体記憶装置およびそれを用いたメモリシステム
JP2002007308A (ja) 2000-06-20 2002-01-11 Nec Corp メモリバスシステムおよび信号線の接続方法
TWI244617B (en) * 2000-09-16 2005-12-01 Ibm A client/server-based data processing system for performing transactions between clients and a server and a method of performing the transactions
KR100395770B1 (ko) * 2001-05-23 2003-08-21 삼성전자주식회사 시스템의 부트-업 메모리로서 사용 가능한 불휘발성플래시 메모리 장치 및 그의 동작 방법
JP4049297B2 (ja) 2001-06-11 2008-02-20 株式会社ルネサステクノロジ 半導体記憶装置
JP3696812B2 (ja) 2001-07-19 2005-09-21 富士通株式会社 入出力インタフェースおよび半導体集積回路
US7139849B2 (en) * 2002-08-07 2006-11-21 Matsushita Electric Industrial Co., Ltd. Semiconductor integrated circuit device
US6820181B2 (en) * 2002-08-29 2004-11-16 Micron Technology, Inc. Method and system for controlling memory accesses to memory modules having a memory hub architecture
JP4684547B2 (ja) 2002-12-12 2011-05-18 三星電子株式会社 メモリシステム及びメモリデバイス並びにメモリモジュール
US20050166006A1 (en) * 2003-05-13 2005-07-28 Advanced Micro Devices, Inc. System including a host connected serially in a chain to one or more memory modules that include a cache
US6944064B2 (en) * 2003-12-22 2005-09-13 Silicon Storage Technology, Inc. Memory unit having programmable device ID
US7412574B2 (en) * 2004-02-05 2008-08-12 Micron Technology, Inc. System and method for arbitration of memory responses in a hub-based memory system
US7257683B2 (en) * 2004-03-24 2007-08-14 Micron Technology, Inc. Memory arbitration system and method having an arbitration packet protocol
JP2006065697A (ja) * 2004-08-27 2006-03-09 Hitachi Ltd 記憶デバイス制御装置
JP4748641B2 (ja) * 2004-12-06 2011-08-17 ルネサスエレクトロニクス株式会社 情報処理システム
WO2006074176A2 (en) * 2005-01-05 2006-07-13 The Regents Of The University Of California Memory architectures including non-volatile memory devices
JP2006293969A (ja) * 2005-03-17 2006-10-26 Fujitsu Ltd データ転送装置
US7184360B2 (en) * 2005-06-15 2007-02-27 Infineon Technologies, Ag High-speed interface circuit for semiconductor memory chips and memory system including semiconductor memory chips
US20070016698A1 (en) * 2005-06-22 2007-01-18 Vogt Pete D Memory channel response scheduling
US7865684B2 (en) * 2005-06-27 2011-01-04 Ab Initio Technology Llc Managing message queues
US20070005922A1 (en) * 2005-06-30 2007-01-04 Swaminathan Muthukumar P Fully buffered DIMM variable read latency
US20070045606A1 (en) * 2005-08-30 2007-03-01 Michele Magistretti Shaping a phase change layer in a phase change memory cell
JP5065618B2 (ja) * 2006-05-16 2012-11-07 株式会社日立製作所 メモリモジュール
US7546410B2 (en) * 2006-07-26 2009-06-09 International Business Machines Corporation Self timed memory chip having an apportionable data bus

Also Published As

Publication number Publication date
US20100131724A1 (en) 2010-05-27
KR101101729B1 (ko) 2012-01-05
JP5669338B2 (ja) 2015-02-12
EP2149842A1 (en) 2010-02-03
TW200907678A (en) 2009-02-16
CN101669097B (zh) 2013-05-22
CN101669097A (zh) 2010-03-10
US8886893B2 (en) 2014-11-11
WO2008136417A1 (ja) 2008-11-13
JP2008276351A (ja) 2008-11-13
US20150092490A1 (en) 2015-04-02
EP2149842A4 (en) 2011-04-06

Similar Documents

Publication Publication Date Title
KR101101729B1 (ko) 반도체 장치
JP5065618B2 (ja) メモリモジュール
JP5420648B2 (ja) 半導体装置
JP4499982B2 (ja) メモリシステム
KR100786603B1 (ko) 메모리 모듈, 메모리시스템 및 정보기기
JP2013101704A (ja) 半導体装置
JP5678257B2 (ja) メモリモジュール
JP5955936B2 (ja) 半導体装置

Legal Events

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

Payment date: 20141205

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee