KR20070111388A - 메모리 모듈 - Google Patents

메모리 모듈 Download PDF

Info

Publication number
KR20070111388A
KR20070111388A KR1020070047814A KR20070047814A KR20070111388A KR 20070111388 A KR20070111388 A KR 20070111388A KR 1020070047814 A KR1020070047814 A KR 1020070047814A KR 20070047814 A KR20070047814 A KR 20070047814A KR 20070111388 A KR20070111388 A KR 20070111388A
Authority
KR
South Korea
Prior art keywords
memory
request
response
memory chip
chip
Prior art date
Application number
KR1020070047814A
Other languages
English (en)
Other versions
KR100972243B1 (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 KR20070111388A publication Critical patent/KR20070111388A/ko
Application granted granted Critical
Publication of KR100972243B1 publication Critical patent/KR100972243B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0615Address space extension
    • G06F12/0623Address space extension for memory modules
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Dram (AREA)
  • Memory System (AREA)
  • Semiconductor Memories (AREA)
  • Read Only Memory (AREA)
  • Storage Device Security (AREA)

Abstract

고속 또한 저코스트로, 메모리 용량의 확장성을 확보할 수 있는 사용하기에 편리한 정보 시스템 장치를 제공한다. 정보 처리 장치, 휘발성 메모리 및 불휘발성 메모리를 포함하는 정보 처리 시스템을 구성한다. 정보 처리 장치, 휘발성 메모리 및 불휘발성 메모리는 직렬 접속시켜, 접속 신호수를 적게 함으로써, 메모리 용량의 확장성을 유지하면서, 고속화를 도모한다. 불휘발성 메모리의 데이터를 휘발성 메모리에 전송시킬 때에는, 에러 정정을 행하여, 신뢰성의 향상을 도모한다. 이들 복수의 칩으로 이루어지는 정보 처리 시스템을, 각 칩이 상호 적층되어 배치되어, 볼 그리드 어레이(BGA)나 칩 사이의 본딩에 의해 배선된 정보 처리 시스템 모듈로서 구성한다.
정보 처리, 메모리 제어, 리퀘스트 큐, 레스펀스 큐, 부트 디바이스, 최단 디바이스, 메모리 모듈, 리퀘스트 인터페이스, 레스펀스 인터페이스

Description

메모리 모듈{MEMORY MODULE}
도 1은 본 발명을 적용한 정보 처리 시스템의 구성의 일례를 도시하는 구성도. 조정
도 2는 본 발명을 적용한 정보 처리 시스템의 어드레스 맵의 일례를 도시하는 설명도.
도 3은 본 발명을 적용한 정보 처리 시스템의 전원 투입시의 동작의 일례를 도시하는 도면.
도 4는 본 발명을 적용한 정보 처리 시스템을 구성하는 메모리의 구성의 일례를 도시하는 도면.
도 5는 본 발명을 적용한 정보 처리 시스템 내에서 발생한 리퀘스트에 대한 동작의 일례를 도시하는 플로우차트.
도 6은 본 발명을 적용한 정보 처리 시스템에서의 레스펀스에 대한 동작의 일례를 도시하는 플로우차트.
도 7은 본 발명을 적용한 정보 처리 시스템에서의 레스펀스에 대한 동작의 일례를 도시하는 플로우차트.
도 8은 레스펀스 스케줄 회로 SCH의 동작을 도시하는 플로우차트.
도 9는 레스펀스 스케줄 회로 SCH의 레스펀스 우선 순위의 변경 동작의 일례 를 도시하는 도면.
도 10은 본 발명을 적용한 정보 처리 시스템의 클럭 제어 동작의 일례를 도시하는 플로우차트.
도 11은 본 발명을 적용한 정보 처리 시스템을 구성하는 메모리의 메모리 회로의 구성의 일례를 도시하는 도면.
도 12는 본 발명을 적용한 정보 처리 시스템을 구성하는 메모리의 구성의 일례를 도시하는 도면.
도 13은 레스펀스 스케줄 회로 SCH의 레스펀스 우선 순위의 변경 동작의 일례를 도시하는 도면.
도 14는 본 발명을 적용한 정보 처리 시스템을 구성하는 메모리의 구성의 일례를 도시하는 도면.
도 15는 레스펀스 스케줄 회로 SCH의 레스펀스 우선 순위의 변경 동작의 일례를 도시하는 도면.
도 16은 본 발명을 적용한 정보 처리 시스템에서의 에러 레스펀스에 대한 동작의 일례를 도시하는 플로우차트.
도 17은 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 도시하는 도면.
도 18은 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 도시하는 도면.
도 19는 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 도시 하는 도면.
도 20은 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 도시하는 도면.
도 21은 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 도시하는 도면.
도 22는 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 도시하는 도면.
도 23은 본 발명을 적용한 정보 처리 시스템에서의 동작 파형의 일례를 도시하는 도면.
도 24는 본 발명을 적용한 정보 처리 시스템의 구성도.
도 25는 본 발명을 적용한 정보 처리 시스템의 구성도.
도 26은 본 발명을 적용한 정보 처리 시스템의 구성도.
도 27은 본 발명을 적용한 정보 처리 시스템의 구성도.
도 28은 본 발명을 적용한 정보 처리 시스템의 구성도.
도 29는 본 발명에 따른 메모리 정보 처리 시스템의 실장 형태의 일례를 도시하는 도면.
도 30은 본 발명에 따른 메모리 정보 처리 시스템의 실장 형태의 일례를 도시하는 도면.
도 31은 본 발명에 따른 메모리 정보 처리 시스템의 실장 형태의 일례를 도시하는 도면.
도 32는 본 발명에 따른 메모리 정보 처리 시스템의 실장 형태의 일례를 도시하는 도면.
도 33은 본 발명에 따른 메모리 정보 처리 시스템의 실장 형태의 일례를 도시하는 도면.
도 34는 본 발명에 따른 메모리 정보 처리 시스템을 이용한 휴대 전화의 구성예를 도시하는 블록도.
도 35는 본 발명에 따른 메모리 정보 처리 시스템을 이용한 휴대 전화의 구성예를 도시하는 블록도.
도 36은 휴대 전화에 이용되고 있는 종래의 메모리 구성예를 도시하는 블록도.
<도면의 주요 부분에 대한 부호의 설명>
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 : 리퀘스트 큐 제어 회로
dstID : 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 : 리퀘스트 큐 회로
dstID : ID 레지스터 회로
CPQ : ID 비교 회로
RsQo, RsQp : 레스펀스 큐 회로
STReg : 스테이터스 레지스터 회로
SCH : 레스펀스 스케줄 회로
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, CHIPM3, CHIPM4 : 반도체 칩
PCB : 프린트 회로 기판
COVER : 모듈의 밀봉 커버
PATH1∼PATH5 : 본딩 배선
ANT : 안테나
RF : 무선 블록
SP : 음성 코덱 블록
SK : 스피커
MK : 마이크로폰
CPU : 프로세서
DRAM : 다이내믹 랜덤 액세스 메모리
LCD : 액정 표시부
KEY : 키보드
MSM : 메모리 모듈
CPU_MAIN : 정보 처리 장치
SLP : 정보 처리 장치 CPU_MAIN과 메모리 모듈 MSM을, 1개의 밀봉체에 집적한 모듈
PRC : 정보 처리 장치
MCM1, MCM2 : 메모리 모듈
CPU : 중앙 연산 장치
SRC, DRAC, NDC : 메모리 컨트롤러
NOR FLASH : NOR형 플래시 메모리
SRAM : 스태틱 랜덤 액세스 메모리
NAND FLASH : NAND형 플래시 메모리
DRAM : 다이내믹 랜덤 액세스 메모리
[비특허 문헌 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:http://www.samsung.com/Products/Semiconductor/common/product_list.aspx?family_cd=MCP0>
[특허 문헌 1] 일본 특개평 05-299616호 공보
[특허 문헌 2] 유럽 특허 출원 공개 제0566306호 명세서
[특허 문헌 3] 일본 특개평 07-146820호 공보
[특허 문헌 4] 일본 특개 2001-5723호 공보
[특허 문헌 5] 일본 특개 2002-366429호 공보
[특허 문헌 6] 일본 특개 2002-7308호 공보
[특허 문헌 7] 일본 특개 2004-192616호 공보
본 발명은, 불휘발성 메모리와 정보 처리 장치를 포함하는 정보 처리 시스템 및 메모리 모듈의 제어 방법에 관한 것이다.
종래, 플래시 메모리(32Mbit 용량)와 스태틱 랜덤 액세스 메모리(SRAM(4Mbit 용량))가 스택 칩에서 FBGA(Fine pitch Ball Grid Array)형 패키지에 일체 밀봉된 복합형 반도체 메모리가 있다. 플래시 메모리와 SRAM은, FBGA형 패키지의 입출력 전극에 대하여 어드레스 입력 단자와 데이터 입출력 단자가 공통화되어 있다. 단 각각의 제어 단자는 각각 독립되어 있다(예를 들면, 비특허 문헌 1 참조).
또한, 플래시 메모리(1GMbit 용량)와 다이내믹 랜덤 액세스 메모리(DRAM(512Mbit 용량))가 스택 칩에서 FBGA(Fine pitch Ball Grid Array)형 패키지에 일체 밀봉된 복합형 반도체 메모리가 있다. 플래시 메모리와 다이내믹 랜덤 액세스 메모리는, FBGA형 패키지의 입출력 전극에 대하여 어드레스 입력 단자와 데이터 입출력 단자, 및 각각의 제어 단자는 각각 독립되어 있다(예를 들면, 비특허 문헌 2 참조).
또한, 플래시 메모리 칩과 DRAM 칩이 리드 프레임형 패키지에 일체 밀봉된 복합형 반도체 메모리도 있다. 이 복합형 반도체 메모리는 플래시 메모리와 DRAM은 패키지의 입출력 전극에 대하여 어드레스 입력 단자, 데이터 입출력 단자, 및 제어 단자가 공통화되어서 입출력된다(예를 들면, 특허 문헌 1의 도 1 및 도 15, 특허 문헌 2 참조).
또한, 주기억 장치로서 취급되는 플래시 메모리와 캐쉬 메모리와 컨트롤러와 CPU로 구성되는 시스템도 있다(예를 들면, 특허 문헌 3의 도 1 참조).
또한, 플래시 메모리와 DRAM과 전송 제어 회로로 이루어지는 반도체 메모리도 있다(예를 들면, 특허 문헌 4의 도 2, 특허 문헌 5 참조).
또한, 동일 종류의 메모리를 복수개 접속한 메모리 모듈이 있다(특허 문헌 6, 특허 문헌 7 참조).
본원 발명자 등은, 본원에 앞서 휴대 전화 및 그것에 사용되는 프로세서와, 플래시 메모리와, 랜덤 액세스 메모리로 구성된 정보 처리 시스템에 대해서 검토를 행하였다.
도 36에 도시한 바와 같이 휴대 전화에는 정보 처리 장치 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에 읽어내어, 음악이나 동화상의 재생을 행한다. 최근, 휴대 전화기로 대표되는 모바일 기기의 다기능화는 점점 더 진전되고 있어, 다양한 인터페이스를 취급할 필요가 발생하고 있다.
도 36에 도시한 바와 같이, 현재, CPU는, 서로 다른 메모리 디바이스마다 컨트롤러를 갖고, 병렬적으로 메모리와 접속되어 있다. 또한, 휴대 전화가 취급하는 어플리케이션, 데이터, 워크 에리어는 휴대 전화에 부가되는 기능(음악이나 게임 등 배신 등)이 증가함에 따라 커져, 보다 큰 기억 용량의 메모리가 필요해지고 있다.
이 때문에, CPU와 메모리를 접속하는 신호 배선수가 증대하여, 기판 코스트의 증가, 노이즈의 증가, 신호 스큐의 증가를 초래하여, 휴대 전화기의 저코스트화, 고속화, 소형화에는 대응할 수 없는 것이 판명되었다.
따라서 본 발명의 목적의 하나는, 정보 처리 장치와 메모리 사이 및, 메모리와 메모리 사이의 신호 배선수를 저하시켜, 고속 또한 저코스트로, 메모리 용량의 확장성을 확보할 수 있는 사용하기에 편리한 정보 시스템 장치를 제공하는 것이다.
본 발명의 대표적인 수단을 나타내면 이하와 같다. 정보 처리 장치와, 다이내믹 랜덤 액세스 메모리와, 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를 포함한다. CPU0, CPU1, CPU2, CPU3에서는, 메모리 제어 회로 CON을 통하여, 메모리 모듈 MEM0으로부터, OS나 어플리케이션 프로그램 및 어플리케이션 프로그램에서 처리를 행하는 데이터를 판독하여 실행한다.
리퀘스트 큐 RqQ는, 메모리 모듈 MEM0에 출력하기 위한 CPU0, CPU1, CPU2 및 CPU3에서 실행하고 있는 어플리케이션 프로그램의 결과 등을 저장한다. 레스펀스 큐 RsQ는, CPU0, CPU1, CPU2 및 CPU3에 출력하기 위한 메모리 모듈 MEM0으로부터 판독한 어플리케이션 프로그램 등을 저장한다.
메모리 모듈 MEM0은, 메모리 칩 M0, M1, M2로 구성된다. 또한, 정보 처리 장치 CPU_CHIP과 메모리 칩 M0, M1, M2는 직렬로 접속되어 있다. 메모리 칩 M0은 휘발성 메모리이며, 메모리 칩 M1 및 M2는 불휘발성 메모리이다. 대표적인 휘발성 메모리에는, 메모리 어레이에 다이내믹 랜덤 액세스 메모리 셀을 이용한 DRAM 및 의사 스태틱 랜덤 액세스 메모리 PSRAM, 스태틱 랜덤 액세스 메모리 셀을 이용한 SRAM 등이 있고, 본 발명에는 모든 휘발성 메모리 셀을 이용할 수 있다. 본 실시예에서는 메모리 어레이에 다이내믹 랜덤 액세스 메모리 셀을 이용한 예를 설명한다.
불휘발성 메모리에는 ROM(Read-Only Memory), EEPROM(Electrically Erasable and Programmable ROM), 플래시 메모리, 상 변화 메모리, 마그네틱 랜덤 액세스 메모리 MRAM, 저항 스위칭형 랜덤 액세스 메모리 ReRAM 등을 이용할 수 있다. 본 실시 형태예에서는 플래시 메모리를 예로 들어 설명한다.
또한, 대표적인 플래시 메모리에는, NOR형 플래시 메모리와, AND형 플래시 메모리와, NAND형 플래시 메모리와, ORNAND형 플래시 메모리가 있고, 본 발명에는 모든 플래시 메모리를 이용할 수 있다. 본 실시예에서는, NOR형 플래시 메모리와 NAND형 플래시 메모리를 예로 설명한다.
특별히 한정하지 않지만, 메모리 칩 M0로서 이용되는 전형적인 휘발성 메모리는, 다이내믹 메모리 셀을 이용한 다이내믹 랜덤 액세스 메모리로서, 판독 시간이 15ns 정도이고, 약 1Gbit의 기억 용량을 갖고 있다. 특별히 한정하지 않지만 메모리 칩 M0은 정보 처리 장치 CPU_CHIP에서 어플리케이션 프로그램을 실행하기 위한 일시적인 워크 메모리로서 이용된다.
특별히 한정하지 않지만, 메모리 칩 M1로서 이용되는 전형적인 플래시 메모리는, NOR형 플래시 메모리 셀을 이용하고, 판독 시간이 80ns 정도이며, 약 1Gbit의 큰 기억 용량을 갖고 있다. 특별히 한정하지 않지만, 메모리 칩 M1에는 정보 처리 장치 CPU_CHIP에서 실행하는 OS, 부트 코드, 부트 디바이스 ID값, 최단 디바이스 ID값 및 어플리케이션 프로그램 등이 저장된다.
특별히 한정하지 않지만, 메모리 칩 M2로서 이용되는 전형적인 플래시 메모리는 NAND형 플래시 메모리 셀을 이용하고, 판독 시간이 25㎲ 정도이며, 약 4Gbit 기억 용량을 갖고 있다. 특별히 한정하지 않지만, 메모리 칩 M1에는 주로 정보 처리 장치 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로 구성된다.
메모리 회로 MemNV1은, 특별히 한정하지 않지만, 불휘발성 메모리로서, NOR형 플래시 메모리 셀을 이용한 NOR형 플래시 메모리이다. 메모리 회로 MemNV1에는, 부트 디바이스 ID값 및 최단 디바이스 ID값이 저장된다.
리퀘스트 클럭 제어 회로 RqCkC는, 클럭 드라이버 회로 Drv1 및 클럭 분주 회로 Div1로 구성된다.
메모리 칩 M2는, 초기 설정 회로 INIT, 리퀘스트 인터페이스 회로 ReqIF와, 레스펀스 인터페이스 회로 ResIF와, 메모리 회로 MemNV2로 구성되어 있다. 메모리 칩 M2는, 직렬적으로 접속하고 있는 메모리 칩 중에서, 가장 종단의 메모리 칩인 것을 나타내기 때문에, 특별히 한정하지 않지만 RqEn3, RsMux3, RqCk3을 접지(gnd)하고 있다.
리퀘스트 인터페이스 회로 ReqIF는, 리퀘스트 클럭 제어 회로 RqCkC 및, 리퀘스트 큐 제어 회로 RqCT로 구성된다. 레스펀스 인터페이스 회로 ResIF는, 레스펀스 클럭 제어 회로 RsCkC 및 레스펀스 큐 제어 회로 RqCT로 구성된다. 메모리 회로 MemNV2는, 특별히 한정하지 않지만, 불휘발성 메모리로서, NAND형 플래시 메모리 셀을 이용한 NAND형 플래시 메모리이다. 리퀘스트 클럭 제어 회로 RqCkC는, 클럭 드라이버 회로 Drv1 및 클럭 분주 회로 Div1로 구성된다.
메모리 칩 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에 동기하여 송신된다.
이하에 본 메모리 시스템의 동작을 설명한다. 우선, 전원 투입 직후의 동작에 대해서 설명한다.
<전원 투입 직후의 동작 설명>
우선, 전원 투입 직후의 본 메모리 시스템의 동작에 대해서 설명한다.
정보 처리 장치 CPU_CHIP에 전원이 투입되면, 부트 디바이스 ID 레지스터 BotID를 1로, 최단 디바이스 ID 레지스터 EndID를 0으로 설정한다.
메모리 칩 M0에 전원이 투입되면, 자신의 초기 설정 회로 INIT가, 자신의 리퀘스트 큐 제어 회로 RqCT, 레스펀스 큐 제어 회로 RsCT, 리퀘스트 제어 회로 RqCkc, 레스펀스 클럭 제어 회로 RsCkC, 클럭 분주 회로 Div1, Div2 및 메모리 회로 MemVL을 초기 설정한다. 리퀘스트 큐 제어 회로 RqCT가 갖고 있는 ID 레지스터를 0으로, ID 유효 비트를 Low로 설정한다. 레스펀스 큐 제어 회로 RsCT가 갖는 레스펀스 조정 회로의 레스펀스 우선 순위에 관해서, 메모리 칩 M0의 레스펀스 우 선 순위는 1로, 메모리 칩 M1의 레스펀스 우선 순위는 2로, 메모리 칩 M2의 레스펀스 우선 순위는 3으로 초기 설정된다. 클럭 분주 회로 Div1 및 Div2의 분주비는 1로 설정된다.
메모리 칩 M1에 전원이 투입되면, 자신의 초기 설정 회로 INIT가, 자신의 리퀘스트 큐 제어 회로 RqCT, 레스펀스 큐 제어 회로 RsCT, 리퀘스트 제어 회로 RqCkc, 레스펀스 클럭 제어 회로 RsCkC, 클럭 분주 회로 Div1, Div2 및 메모리 회로 MemNV1을 초기 설정한다. 리퀘스트 큐 제어 회로 RqCT가 갖고 있는 ID 레지스터를 0으로, ID 유효 비트를 Low로 설정한다. 메모리 칩 M1의 레스펀스 큐 제어 회로 RsCT가 갖는 레스펀스 조정 회로의 레스펀스 우선 순위에 관해서, 메모리 칩 M1의 레스펀스 우선 순위는 1로, 메모리 칩 M2의 레스펀스 우선 순위는 2로 초기 설정된다. 클럭 분주 회로 Div1 및 Div2의 분주비는 1로 설정된다.
메모리 칩 M2에 전원이 투입되면, 자신의 초기 설정 회로 INIT가, 자신의 리퀘스트 큐 제어 회로 RqCT, 레스펀스 큐 제어 회로 RsCT, 리퀘스트 제어 회로 RqCkc, 레스펀스 클럭 제어 회로 RsCkC, 클럭 분주 회로 Div1, Div2 및 메모리 회로 MemNV2를 초기 설정한다. 메모리 칩 M2의 리퀘스트 큐 제어 회로 RqCT가 갖고 있는 ID 레지스터를 0으로, ID 유효 비트를 Low로 설정한다. 메모리 칩 M2의 레스펀스 큐 제어 회로 RsCT가 갖는 레스펀스 조정 회로의 레스펀스 우선 순위에 관해서 메모리 칩 M2의 레스펀스 우선 순위는 1로 초기 설정된다. 클럭 분주 회로 Div1 및 Div2의 분주비는 1로 설정된다. 다음으로, 메모리 칩 M2는, 부트 디바이스 인식 신호 Bsig가 전원에 접속되어 있으므로, 자기 자신은 부트 디바이스가 아 닌 것을 인식한다.
또한, 정보 처리 장치 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가 직렬 접속되어 있는 것을 정확하게 확인할 수 있다.
다음으로, 각 메모리 칩의 신호 접속의 확인 후에 행해지는 부트 데이터의 판독 방법에 대해서 설명한다.
정보 처리 장치 CPU_CHIP은, 부트 디바이스 ID 레지스터 BotID의 값 1을 판독하고, 리퀘스트 신호 RqMux0을 통하여, 메모리 칩 M1의 ID값 1, 판독 명령, 전송 데이터 사이즈 및 어드레스를 다중화한 리퀘스트 ReqBRD1을 클럭 신호 RqCK0에 동기시켜, 메모리 칩 M0에 전송한다. 메모리 칩 M0의 ID 유효 비트가 Low이기 때문에, 메모리 칩 M0은, 정보 처리 장치 CPU_CHIP으로부터의 리퀘스트 ReqBRD1은 메모리 칩 M0에의 리퀘스트가 아니라고 판단하고, 리퀘스트 신호 RqMux1을 통하여, 리퀘스트 ReqBRD1을 클럭 신호 RqCK1에 동기시켜 메모리 칩 M1에 전송한다.
메모리 칩 M1은, 메모리 칩 M0으로부터의 리퀘스트 ReqBRD1을, 자신의 리퀘스트 큐 제어 회로 RqCT에 저장한다. 그 후, 리퀘스트 큐 제어 회로 RqCT는 리퀘스트에 포함되는 ID값 1과 자신의 ID 레지스터의 값 1을 비교한다. 쌍방은 일치하고 있고, ID 유효 비트가 High이기 때문에, 메모리 칩 M1은, 메모리 칩 M0으로부터의 리퀘스트를 자신에의 리퀘스트라고 판단한다.
그 후, 리퀘스트 ReqBRD1에 포함되는 판독 명령, 전송 데이터 사이즈 및 어드레스에 의해, 메모리 회로 MemNV1로부터 부트 데이터가, 최종단 디바이스 ID 레지스터로부터 번호 3이 판독되어, 레스펀스 큐 제어 회로 RsCT에 전송된다. 또한 동시에, 리퀘스트 큐 제어 회로 RqCT가 저장하고 있는 ID 레지스터값 1도 레스펀스 큐 제어 회로 RsCT에 전송된다.
메모리 칩 M1의 레스펀스 큐 제어 회로 RsCT는 레스펀스 신호 RqMux1을 통하여, 메모리 칩 M1의 ID값 1, 부트 프로그램 및 최종단 디바이스 ID를 다중화한 레스펀스 ResBRD1을 클럭 신호 RqCK1에 동기시켜, 메모리 칩 M0에 전송한다.
마지막으로, 메모리 칩 M0의 레스펀스 큐 제어 회로 RsCT는 레스펀스 신호 RqMux0을 통하여, 레스펀스 ResBRD1을 클럭 신호 RqCK0에 동기시켜, 정보 처리 장치 CPU_CHIP에 전송한다.
정보 처리 장치 CPU_CHIP은, 레스펀스 ResBRD1을 레스펀스 큐 RsQ에 저장한다. 레스펀스 ResBRD1에 포함되는 ID값 1에 의해, 부트 데이터 및 최종단 디바이스 ID값 3이, 메모리 칩 M1로부터 송신된 것을 알 수 있다. 최종단 디바이스 ID값 3은 메모리 제어 회로 CON 내의 최종단 디바이스 ID 레지스터에 보존된다.
정보 처리 장치 CPU_CHIP은, 부트 프로그램에 의해 스스로를 기동하고, 다음으로 각 메모리 칩 M0, M1, M2에 ID 번호의 할당을 행한다.
다음으로, 각 메모리 칩에의 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 레지스터에 설정되어 있는 최종단 디바이스 ID값 3을 비교하고, 쌍방이 일치함으로써, 최종단의 메모리 칩까지 ID 번호 부여가 행해진 것을 확인한 다. 이 후, 메모리 모듈 MEM0은 정보 처리 장치 CPU_CHIP으로부터의 리퀘스트를 기다리는 아이들 상태로 된다.
이와 같이, 전원 투입 직후에, 직렬 접속의 확인 동작을 행함으로써, 확실하게 메모리끼리가 접속되어 있는 것을 확인할 수 있다. 또한, 부트 디바이스 및, 최단의 메모리 칩을 명시하고, 자동적으로 각 메모리에의 ID 부여가 행해짐으로써, 용이하게, 필요한 분만큼 메모리 칩을 접속하여, 메모리 용량을 확장할 수 있다.
<통상 동작의 설명>
전원 투입 시의 파워 온 시퀀스가 종료된 후의 메모리 모듈 MEM0과 정보 처리 장치 CPU_CHIP 사이의 데이터 전송에 대해서 설명한다.
특별히 한정하지 않지만, 메모리 칩 M0, M1, M2의 각각의 ID 레지스터값이 2, 1 및 3으로 설정된 경우의, 메모리 모듈 MEM0과 정보 처리 장치 CPU_CHIP 사이의 데이터 전송에 대해서 설명한다. 특별히 한정하지 않지만, 메모리 칩 M0, M1, M2의 리퀘스트 큐 제어 회로 RqCT에는 리퀘스트 큐는 2개 존재하고, 리퀘스트가 엔트리되어 있지 않은 상태이며, 레스펀스 큐 제어 회로 RsCT에는 레스펀스 큐가 4개 존재하고, 레스펀스가 엔트리되어 있지 않은 빈 상태인 경우의 데이터 전송에 대해서 설명한다. 특별히 한정하지 않지만, 1개의 리퀘스트 큐는 1바이트의 ID값, 1바이트의 명령, 2바이트의 어드레스, 32바이트의 판독 데이터를 저장할 수 있고, 1개의 레스펀스 큐는 1바이트의 ID값, 32바이트의 판독 데이터를 저장할 수 있다.
또한, 특별히 한정하지 않지만, 메모리 칩 M0, M1, M2의 각각의 메모리 회로 MemVL, MemNV1, MemNV2는 4개의 메모리 뱅크로 구성되어 있고, 1개의 메모리 뱅크 에는 1개의 센스 앰프 회로가 장치되어 있다.
메모리 칩 M0은, 자신의 리퀘스트 큐에 정보 처리 장치 CPU_CHIP으로부터의 리퀘스트가 엔트리되어 있지 않기 때문에, 리퀘스트 인에이블 신호 RqEn0을 High로 하고, 리퀘스트를 접수할 수 있는 것을 정보 처리 장치 CPU_CHIP에 알린다.
정보 처리 장치 CPU_CHIP은, 리퀘스트 신호 RqMux0을 통하여, ID값 2, 뱅크 액티브 명령 BA, 뱅크 어드레스 BK0, 로우 어드레스 Row0을 다중화한 리퀘스트 ReqBAm01을 클럭 신호 RqCK0에 동기시켜, 메모리 칩 M0에 전송한다.
계속해서, 리퀘스트 신호 RqMux0을 통하여, ID값 2, 4바이트 판독 명령 RD, 뱅크 어드레스 BK0, 컬럼 어드레스 Col3을 다중화한 리퀘스트 ReqRDm04를 클럭 신호 RqCK0에 동기시켜, 메모리 칩 M0에 전송한다.
메모리 칩 M0은, 정보 처리 장치 CPU_CHIP으로부터의 리퀘스트 ReqBAm01과 리퀘스트 ReqRDm04를 순서대로, 자신의 리퀘스트 큐 제어 회로 RqCT에 저장한다.
이것으로, 리퀘스트 큐 제어 회로 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에 접속되어 있는 8192비트분의 메모리 셀이 활성화되어 센스 앰프에 전송된다.
리퀘스트 ReqBAm01이 처리됨으로써, 리퀘스트 큐 제어 회로 RqCT 내의 리퀘스트 큐가 하나분 비었기 때문에, 메모리 칩 M0은 리퀘스트 인에이블 신호 RqEn0을 High로 하고, 새로운 리퀘스트를 접수 가능한 것을 정보 처리 장치 CPU_CHIP에 알린다.
다음으로, 리퀘스트 큐 제어 회로 RqCT는 리퀘스트 ReqRDm04에 포함되는 ID값 2와 자신의 ID 레지스터의 값 2를 비교한다. 리퀘스트 ReqRDm04에 포함되는 ID값 2와 메모리 칩 M0의 ID 레지스터값 2는 또한 일치하고 있기 때문에, 리퀘스트 큐 제어 회로 RqCT는 리퀘스트 ReqRDm04를 메모리 회로 MemVL에 송신한다. 메모리 회로 MemVL은, 리퀘스트 ReqRDm04에 포함되는 4바이트 판독 명령 RD4, 뱅크 어드레스 BK0, 컬럼 어드레스 Col3에 의해, 메모리 회로 MemVL의 뱅크 0의 센스 앰프에 보유되어 있는 데이터 중에서, 컬럼 어드레스 3을 개시 어드레스로 한 4바이트분의 데이터를 판독하고, ID 레지스터값 2를 포함시켜, 레스펀스 큐 제어 회로 RsCT에 레스펀스 ResRDm04로서 전송한다. 리퀘스트 ReqRDm04가 메모리 회로 MemNV1에 송신되고 나서, 원하는 데이터가 판독되어 레스펀스 큐 제어 회로 RsCT에 레스펀스 ResRDm04로서 입력될 때까지의 시간은, 특별히 한정하지 않지만, 15ns 정도이다.
레스펀스 큐 제어 회로 RsCT는, 레스펀스 신호 RsMux0을 통하여, 레스펀스 RsRDm04를 정보 처리 장치 CPU_CHIP에 출력한다. 정보 처리 장치 CPU_CHIP의 메모리 제어 회로 CON은 레스펀스 RsRDm04를, 레스펀스 큐 RsQ에 수취한다. 정보 처리 장치 CPU_CHIP은, 레스펀스 큐 RsQ 송신된 레스펀스 RsRDm04에 포함되는 ID값 2에 의해, 리퀘스트 RqRDm04에 대응하는 데이터가 올바르게 메모리 칩 M0으로부터 송신된 것을 확인할 수 있다.
특별히 한정하지 않지만, 레스펀스 큐 RsQ에 입력된 데이터는 정보 처리 회로 CPU0, CPU1, CPU2 및 CPU3 중 어느 하나에서 데이터 처리가 행해진다. 상기에서는, 메모리 칩 M0에서의 데이터의 판독에 대해서 설명했지만, 데이터의 기입에 대해서도 마찬가지의 동작을 실행할 수 있는 것은 물론이다.
이상 설명한 바와 같이, 정보 처리 장치 CPU_CHIP으로부터 메모리 모듈 MEM0에의 리퀘스트 및 메모리 모듈 MEM0으로부터 정보 처리 장치 CPU_CHIP에의 레스펀스에 ID 정보를 포함함으로써, 올바르게 데이터 전송을 행할 수 있었던 것을 확인할 수 있어, 정보 처리 장치 CPU_CHIP 및 메모리 칩 M0, M1, M2의 직렬 접속에 의해, 접속 신호수를 감소시키면서도, 정보 처리 장치 CPU_CHIP은 원하는 처리를 실행할 수 있다.
다음으로, 정보 처리 장치 CPU_CHIP과 메모리 칩 M1과의 데이터 전송에 대해서 설명한다. 정보 처리 장치 CPU_CHIP은, 리퀘스트 신호 RqMux0을 통하여, ID값 1, 4바이트 데이터 판독 명령 NRD4, 어드레스 Add31을 다중화한 리퀘스트 ReqNRD4m1을 메모리 칩 M0에 전송한다. 메모리 칩 M0은, 정보 처리 장치 CPU_CHIP으로부터의 리퀘스트 ReqNRD4m1을 자신의 리퀘스트 큐 제어 회로 RqCT에 저장하고, 리퀘스트 ReqNRD4m1에 포함되는 ID값 1과 자신의 ID 레지스터의 값 2를 비교한다. 비교 결과는 불일치하기 때문에, 메모리 칩 M0은 리퀘스트 ReqNRD4m1을 자신에의 리퀘스트가 아니라고 판단하고, 리퀘스트 신호 RqMux1을 통하여, 메모리 칩 M1에 전송한다.
메모리 칩 M1은, 메모리 칩 M0으로부터의 리퀘스트 ReqNRD4m1을 자신의 리퀘스트 큐 제어 회로 RqCT에 저장하고, 리퀘스트 ReqNRD4m1에 포함되는 ID값 1과 자신의 ID 레지스터의 값 1을 비교한다. 리퀘스트 큐 제어 회로 RqCT는 리퀘스트 ReqNRD4m1에 포함되는 ID값 1과 자신의 ID 레지스터의 값 1을 비교하고, 일치하고 있기 때문에, 리퀘스트 ReqNRD4m1을 메모리 회로 MemNV1에 송신한다. 리퀘스트 ReqNRD4m1에 포함되는 4바이트 판독 명령 NRD4, 어드레스 Add31에 의해, 어드레스 31을 개시 어드레스로 한 4바이트분의 데이터가 메모리 회로 MemNV1로부터 판독되고, ID 레지스터값 1을 포함하여, 레스펀스 큐 제어 회로 RsCT에 레스펀스 ResNRD4m1로서 전송된다. 리퀘스트 ReqNRD4m1이 메모리 회로 MemNV1에 송신되고 나서, 원하는 데이터가 판독될 때까지의 시간은, 특별히 한정하지 않지만, 80ns 정도이다.
레스펀스 큐 제어 회로 RsCT는, 레스펀스 신호 RsMux1을 통하여, 레스펀스 ResNRD4m1을 메모리 칩 M0에 출력한다. 메모리 칩 M0의 레스펀스 큐 제어 회로 RsCT는 수취한 레스펀스 ResNRD4m1을 레스펀스 신호 RsMux0로부터 정보 처리 장치 CPU_CHIP에 출력한다. 상기에서는, 메모리 칩 M1에서의 데이터의 판독에 대해서 설명했지만, 데이터의 기입에 대해서도 마찬가지의 동작을 실행할 수 있는 것은 물 론이다.
이상 설명한 바와 같이, 정보 처리 장치 CPU_CHIP 및 메모리 칩 M0, M1, M2가 직렬로 접속되어 있고, 정보 처리 장치 CPU_CHIP과 메모리 칩 M0이 접속되고, 메모리 칩 M0의 후단에 메모리 칩 M1이 메모리 칩 M0과 접속되고, 메모리 칩 M1의 후단에 메모리 칩 M2가 메모리 칩 M1과 접속되는 직렬 접속에서, 정보 처리 장치 CPU_CHIP으로부터, 메모리 칩 M0, M1 및 M2에의 리퀘스트에 ID를 부가함으로써, 정보 처리 장치 CPU_CHIP으로부터 메모리 칩 M0을 통하여, 메모리 칩 M1에 리퀘스트가 확실하게 전송된다. 또한, 레스펀스에 ID를 부가함으로써, 메모리 칩 M1로부터 판독되어 메모리 칩 M0을 통해서 정보 처리 장치 CPU_CHIP이 수취한 데이터는, 메모리 칩 M1에의 리퀘스트에 대응한 메모리 칩 M1로부터 판독된 데이터인 것을 확인할 수 있어, 정보 처리 장치 CPU_CHIP 및 메모리 칩 M0, M1, M2의 직렬 접속에 의해, 접속 신호수를 감소시키면서도, 정보 처리 장치 CPU_CHIP은 원하는 처리를 실행할 수 있다.
다음으로, 정보 처리 장치 CPU_CHIP과 메모리 칩 M2와의 데이터 전송에 대해서 설명한다. 특별히 한정하지 않지만 메모리 칩 M2는 NAND형의 플래시 메모리 셀을 이용한 NAND형 플래시 메모리이다. NAND형 플래시 메모리는 재기입을 반복함으로써, 신뢰성이 저하되고, 기입 시에 쓴 데이터가, 판독 시에는 다른 데이터로 되거나, 재기입 시에 데이터가 기입되지 않거나 하는 경우가 드물게 있기 때문에, 512Byte분의 데이터와, 이 512Byte분의 데이터에 에러가 발생했을 때에, 그 에러를 정정하기 위한 16Byte분의 ECC 코드가 1페이지분의 데이터로서 관리되고 있다.
정보 처리 장치 CPU_CHIP은, 리퀘스트 신호 RqMux0을 통하여, ID값 3, 1페이지(512Byte+16Byte) 데이터 판독 명령 NDRDp1, 페이지 어드레스 Padd1을 다중화한 리퀘스트 ReqNDRDp1m2를 메모리 칩 M0에 전송한다. 메모리 칩 M0은, 정보 처리 장치 CPU_CHIP으로부터의 리퀘스트 ReqNDRDp1m2를 자신의 리퀘스트 큐 제어 회로 RqCT에 저장하고, 리퀘스트 ReqNRDp1m2에 포함되는 ID값 3과 자신의 ID 레지스터의 값 2를 비교한다. 비교 결과는 불일치하기 때문에, 메모리 칩 M0은 리퀘스트 신호 RqMux1로부터 리퀘스트 ReqNDRDp1m2를 메모리 칩 M1에 전송한다.
메모리 칩 M1은, 메모리 칩 M0으로부터의 리퀘스트 ReqNDRDp1m2를 자신의 리퀘스트 큐 제어 회로 RqCT에 저장하고, 리퀘스트 ReqNDRDp1m2에 포함되는 ID값 3과 자신의 ID 레지스터의 값 1을 비교한다. 비교 결과는 불일치하기 때문에, 메모리 칩 M1은 리퀘스트 신호 RqMux2로부터 리퀘스트 ReqNDRDp1m2를 메모리 칩 M2에 전송한다. 메모리 칩 M2는, 메모리 칩 M1로부터의 리퀘스트 ReqNDRDp1m2를 자신의 리퀘스트 큐 제어 회로 RqCT에 저장하고, 리퀘스트 ReqNDRDp1m2에 포함되는 ID값 3과 자신의 ID 레지스터의 값 3을 비교한다. 비교 결과는 일치하고 있기 때문에, 리퀘스트 ReqNDRDp1m2를 메모리 회로 MemNV2에 송신한다.
리퀘스트 ReqNDRDp1m2에 포함되는 1페이지 판독 명령 NDRDp1, 페이지 어드레스 Padd1에 의해, 페이지 어드레스 1을 개시 어드레스로 한 1페이지(512Byte)분의 데이터 및 ECC 코드(16Byte)가 메모리 회로 MemNV2로부터 판독되어, 메모리 회로 MemNV2 내의 데이터 레지스터에 전송된다. 다음으로, 레스펀스 큐 제어 회로 RsCT는, 데이터 레지스터내의 데이터를 32Byte 단위로, ID 레지스터값 3을 포함하여, 레스펀스 ResNDRDp1m2-0∼레스펀스 ResNDRDp1m2-7로서 순서대로 판독하여, 메모리 칩 M1에 전송한다. 마지막으로, 페이지 어드레스 1 내의 16Byte분의 ECC 코드를 판독하고, ID 레지스터값 3을 포함하여 레스펀스 ResNDRDp1m2ECC로서, 레스펀스 신호 RsMux2를 통해서 M1에 전송한다. 리퀘스트 ReqNDRDp1m2가 메모리 회로 MemNV2에 송신되고 나서, 원하는 데이터가 메모리 회로 MemNV2 내의 데이터 레지스터에 판독될 때까지의 시간은 특별히 한정하지 않지만, 25usec 정도이다.
레스펀스 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값 3에 의해, 이들 레스펀스가 메모리 칩 M2로부터 송신된 것을 확인할 수 있다.
정보 처리 장치 CPU_CHIP은, 메모리 칩 M2로부터 송신된 데이터에 대하여, 정보 처리 회로 CPU0, CPU1, CPU2, CPU3 중 어느 하나에서, ECC 코드를 이용하여 에러 검출을 행한다. 에러가 없으면, 그 데이터에 대하여 정보 처리 회로 CPU0, CPU1, CPU2, CPU3 중 어느 하나가 데이터 처리를 행한다. 에러가 있으면 정보 처리 회로 CPU0, CPU1, CPU2, CPU3 중 어느 하나에서 에러 정정을 행한 후, 에러 정정이 행해진 데이터에 대하여 정보 처리 회로 CPU0, CPU1, CPU2, CPU3 중 어느 하나가 데이터 처리를 행한다. 상기에서는, 메모리 칩 M2에서의 데이터의 판독에 대해서 설명했지만, 데이터의 기입에 대해서도 마찬가지의 동작을 실행할 수 있는 것은 물론이다.
이상 설명한 바와 같이, 정보 처리 장치 CPU_CHIP 및 메모리 칩 M0, M1, M2가 직렬로 접속되어 있고, 정보 처리 장치 CPU_CHIP과 메모리 칩 M0이 접속되고, 메모리 칩 M0의 후단에 메모리 칩 M1이 메모리 칩 M0과 접속되고, 메모리 칩 M1의 후단에 메모리 칩 M2가 메모리 칩 M1과 접속되는 직렬 접속에서, 정보 처리 장치 CPU_CHIP으로부터, 메모리 칩 M0, M1 및 M2에의 리퀘스트에 ID를 부가함으로써, 정보 처리 장치 CPU_CHIP으로부터 메모리 칩 M0 및 M1을 통하여, 메모리 칩 M2에 리퀘스트가 확실하게 전송된다. 또한, 레스펀스에 ID를 부가함으로써, 메모리 칩 M2로부터 판독되어, 메모리 칩 M0 및 M1을 통해서 정보 처리 장치 CPU_CHIP이 수취한 데이터는, 메모리 칩 M2에의 리퀘스트에 대응한 메모리 칩 M2로부터 판독된 데이터인 것을 확인할 수 있어, 정보 처리 장치 CPU_CHIP 및 메모리 칩 M0, M1, M2의 직렬 접속에 의해, 접속 신호수를 감소시키면서도, 정보 처리 장치 CPU_CHIP은 원하는 처리를 실행할 수 있다.
다음으로, 정보 처리 장치 CPU_CHIP이 데이터 판독 리퀘스트에 계속해서 데이터 기입 리퀘스트를 메모리 모듈 MEM0에 송신한 경우의 데이터 전송에 대해서 설 명한다.
정보 처리 장치 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의 기입 동작을 실행할 수 있다.
이상 설명한 바와 같이, 리퀘스트 인터페이스 회로 ReqIF와 레스펀스 인터페이스 회로는 독립적으로 동작 가능하기 때문에, 데이터의 판독 동작과 기입 동작을 동시에 실행할 수 있어, 데이터 전송 성능을 향상시킬 수 있다. 상기에서는, 메모리 칩 M0에서의 데이터의 판독 및 기입에 대해서 설명했지만, 다른 메모리 칩 M1 및 M2에서도 마찬가지의 동작을 실행할 수 있는 것은 물론이다. 또한, 각각의 메모리 칩에서 리퀘스트 인터페이스 회로 ReqIF와 레스펀스 인터페이스 회로는 독립적으로 동작 가능하기 때문에, 서로 다른 메모리 칩에의 데이터 판독 및 기입 리퀘스트가 발생한 경우라도, 각각의 리퀘스트를 독립적으로 병렬로 처리할 수 있어, 데이터 전송 성능을 향상시킬 수 있는 것은 물론이다.
다음으로, 정보 처리 장치 CPU_CHIP으로부터 메모리 칩 M1에 판독 리퀘스트가 발생하고, 그 후, 연속해서 메모리 칩 M0에 판독 리퀘스트가 발생한 경우의 데이터 전송에 대해서 설명한다. 정보 처리 장치 CPU_CHIP은, 최초로 리퀘스트 신호 RqMux0을 통하여, ID값 1, 4바이트 데이터 판독 명령 NRD4, 어드레스 Add63을 다중화한 리퀘스트 ReqNRD4m1을 메모리 칩 M0에 전송한다.
다음으로, 리퀘스트 신호 RqMux0을 통하여, ID값 2, 4바이트 판독 명령 RD4, 뱅크 어드레스 BK3, 컬럼 어드레스 Col15를 다중화한 리퀘스트 ReqRD4b3m0을 메모리 칩 M0에 전송한다. 메모리 칩 M0은, 정보 처리 장치 CPU_CHIP으로부터의 리퀘스트 ReqNRD4m1과 리퀘스트 ReqRD4b3m0을 순서대로, 자신의 리퀘스트 큐 제어 회로 RqCT에 저장한다.
메모리 칩 M0의 리퀘스트 큐 제어 회로 RqCT는, 리퀘스트 ReqNRD4m1에 포함되는 ID값 1과 자신의 ID 레지스터의 값 2를 비교하고, 일치하지 않기 때문에, 리퀘스트 ReqNRD4m1을 리퀘스트 신호 RqMux1로부터 메모리 칩 M1에 전송한다.
다음으로, 메모리 칩 M0의 리퀘스트 큐 제어 회로 RqCT는, 리퀘스트 ReqRD4b3m0에 포함되는 ID값 2와 자신의 ID 레지스터의 값 2를 비교하고, 일치하기 때문에, 리퀘스트 ReqRD4b3m0은 메모리 회로 MemVL에 전송된다. 리퀘스트 ReqRD4b3m0에 의해, 약 15ns 후에 메모리 회로 MemVL로부터 4바이트의 데이터가 판독되어, 레스펀스 큐 제어 회로 RsCT에 레스펀스 ResRD4b3m0으로서 입력된다. 레스펀스 큐 제어 회로 RsCT는, 레스펀스 신호 RsMux0을 통하여, 레스펀스 ResRD4b3m0을 정보 처리 장치 CPU_CHIP에 송신한다.
메모리 칩 M0이, 리퀘스트 ReqRD4b3m0에 대한 판독 동작을 행하고 있는 것과 평행하게, 메모리 칩 M1의 리퀘스트 큐 제어 회로 RqCT는, 리퀘스트 ReqNRD4m1에 포함되는 ID값 1과 자신의 ID 레지스터의 값 1을 비교하고, 일치하기 때문에, 리퀘스트 ReqNRD4m1은 메모리 회로 MemNV1에 전송된다. 리퀘스트 ReqNRD4m1에 의해 약 80ns 후에 메모리 회로 MemNV1로부터 4바이트의 데이터가 판독되어, 레스펀스 큐 제어 회로 RsCT에 레스펀스 ResNRD4m1로서 입력된다. 메모리 칩 M1의 레스펀스 큐 제어 회로 RsCT는, 레스펀스 ResNRD4m1을 레스펀스 신호 RsMux1로부터 메모리 칩 M0에 송신하고, 또한, 레스펀스 신호 RsMux0으로부터 정보 처리 장치 CPU_CHIP에 송신한다.
정보 처리 장치 CPU_CHIP이, 메모리 칩 M1에 대한 리퀘스트 ReqNRD4m1을 메모리 모듈 MEM0에 발행하고 나서 메모리 칩 M1의 리퀘스트 큐 제어 회로 RqCT에 리퀘스트 ReqNRD4m1이 완전히 저장될 때까지의 시간은 10ns 정도, 리퀘스트 큐 제어 회로 RqCT가 메모리 회로 MemNV1에 리퀘스트 ReqNRD4m1을 송신하는 시간은 1ns 정도, 메모리 회로 MemNV1로부터 4바이트의 데이터가 판독되어, 레스펀스 큐 제어 회로 RsCT에 레스펀스 ResNRD4m1로서 입력될 때까지의 시간이 80ns 정도, 레스펀스 ResNRD4m1이 정보 처리 장치 CPU_CHIP에 도달할 때까지의 시간이 10ns 정도이다. 따라서, 정보 처리 장치 CPU_CHIP이, 메모리 칩 M1에 대한 리퀘스트 ReqNRD4m1을 발행하고 나서 레스펀스 ResNRD4m1을 수취할 때까지의 시간은, 101ns 정도로 된다.
정보 처리 장치 CPU_CHIP이, 메모리 칩 M0에 대한 리퀘스트 ReqRD4b3m0을 메모리 모듈 MEM0에 발행하고 나서 메모리 칩 M0의 리퀘스트 큐 제어 회로 RqCT에 리 퀘스트 ReqRD4b3m0이 완전히 저장될 때까지의 시간은 5ns 정도, 리퀘스트 큐 제어 회로 RqCT가 메모리 회로 MemVL에 리퀘스트 ReqRD4b3m0을 송신하는 시간은 1ns 정도, 메모리 회로 MemVL로부터 4바이트의 데이터가 판독되어, 레스펀스 큐 제어 회로 RsCT에 레스펀스 ResRD4b3m0으로서 입력될 때까지의 시간이 15ns 정도, 레스펀스 ResRD4b3m이 정보 처리 장치 CPU_CHIP에 도달할 때까지의 시간이 5ns 정도이다. 따라서, 정보 처리 장치 CPU_CHIP이, 메모리 칩 M0에 대한 리퀘스트 ReqRD4b3m0을 발행하고 나서 레스펀스 ResRD4b3m0을 수취할 때까지의 시간은, 26ns 정도로 된다.
이와 같이, 리퀘스트의 입력 순서에 상관없이, 빨리 판독할 수 있는 데이터는, 판독이 느린 데이터를 기다리지 않고, 바로 판독할 수 있기 때문에, 고속화가 가능하게 된다. 또한, 리퀘스트에 ID를 부가함으로써, 확실하게 요구처에 리퀘스트가 전송되고, 또한, 레스펀스에 ID를 부가함으로써, 리퀘스트의 입력 순서와, 판독 데이터의 순번이 서로 다른 경우라도, 정보 처리 장치 CPU_CHIP은 전송원의 메모리 칩을 알 수 있기 때문에, 정보 처리 장치 CPU_CHIP 및 메모리 칩의 직렬 접속에 의해, 접속 신호수를 적게 하면서도, 정보 처리 장치 CPU_CHIP은 원하는 처리를 실행할 수 있다.
본 실시예에서는 데이터 판독을 중심으로 설명했지만, 데이터의 기입 동작에서도 마찬가지의 동작을 행할 수 있는 것은 물론이다. 또한, 본 실시예에서는, 메모리 칩 M0과 M1의 데이터 전송 동작을 설명했지만, 그 밖의 메모리 칩의 경우에 대해서도 마찬가지의 데이터 전송 동작을 행하는 것은 물론이다.
<클럭 제어>
다음으로, 메모리 모듈 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도 재차, 동작한다. 클럭을 재동작시킬 때는, 노이즈에 의한 오동작을 방지하기 위해서, 서서히 주파수를 높이고, 마지막으로 원하는 주파수에서 동작시키는 것이 좋다.
<실시예 1의 효과>
이하, 전술한 실시 형태에 대해서, 구성과 그 효과에 대해서 정리한다.
(1) 전원 투입 직후에, 직렬 접속의 확인 동작을 행함으로써, 확실하게 메모리끼리가 접속되어 있는 것을 확인할 수 있다. 또한, 부트 디바이스 및, 최단의 메모리 칩을 명시하고, 자동적으로 각 메모리에의 ID 부여가 행해짐으로써, 용이하게, 필요한 분만큼 메모리 칩을 접속하여, 메모리 용량을 확장할 수 있다.
(2) 리퀘스트에 ID를 부가함으로써, 정보 처리 장치 CPU_CHIP으로부터 각 메모리 칩 M0, M1 및 M2에 리퀘스트가 확실하게 전송된다. 또한, 정보 처리 장치 CPU_CHIP에의 레스펀스에 ID를 부가함으로써, 각 메모리로부터 정확하게 데이터 전송을 행할 수 있던 것을 확인할 수 있어, 정보 처리 장치 CPU_CHIP 및 메모리 칩 M0, M1, M2의 직렬 접속에 의해, 접속 신호수를 감소시키면서도, 정보 처리 장치 CPU_CHIP은 원하는 처리를 실행할 수 있다.
(3) 리퀘스트 인터페이스 회로 ReqIF와 레스펀스 인터페이스 회로는 독립적으로 동작 가능하기 때문에, 데이터의 판독 동작과 기입 동작을 동시에 실행할 수 있어, 데이터 전송 성능을 향상시킬 수 있다.
(4) 리퀘스트의 입력 순서에 상관없이, 빨리 판독할 수 있는 데이터는, 판독이 느린 데이터를 기다리지 않고, 바로 판독할 수 있기 때문에, 고속화가 가능하게 된다. 또한, 리퀘스트에 ID를 부가함으로써, 확실하게 요구처에 리퀘스트가 전송되고, 또한, 레스펀스에 ID를 부가함으로써, 리퀘스트의 입력 순서와, 판독 데이터의 순번이 서로 다른 경우라도, 정보 처리 장치 CPU_CHIP은 전송원의 메모리 칩을 알 수 있다.
(5) 각 메모리 칩 M0, M1 및 M2의 클럭을 필요에 따라서, 저속 동작시키거나, 정지시키거나, 복귀시키거나 할 수 있기 때문에, 저전력화를 도모할 수 있다.
(6) 메모리 칩 M2로부터의 판독 시는, 에러 검출과 정정을 행하고, 기입 시에는, 기입이 정확하게 행해지지 않은 불량 어드레스에 대하여 대체 처리를 행하기 때문에, 신뢰성을 유지할 수 있다.
또한, 본 실시예에서는, 메모리 모듈 MEM0에는 1개의 휘발성 메모리, 1개의 NOR형 플래시 메모리, 1개의 NAND형 플래시 메모리가 포함되어 있는 예에 대해서 설명하고 있지만, 메모리 모듈 MEM0에 복수개의 휘발성 메모리 및 복수개의 NOR형 플래시 메모리 및 NAND형 플래시 메모리가 포함되는 경우에도 본 발명을 실현할 수 있는 것은 물론이다.
<메모리 맵의 설명>
도 2는, 정보 처리 장치 CPU_CHIP이 관리하는 메모리 모듈 MEM0에 대한 메모리 맵의 일례를 도시한 것이다. 본 실시 형태예에서는, 특별히 한정되지 않지만, 메모리 칩 M0의 기억 영역은 1Gbit, 메모리 칩 M1의 기록 영역은 1Git, 메모리 칩 M2의 기억 영역은 4Gbit+128Mbit(128Mbit는 대체 영역)인 메모리 모듈을 예로 대표적인 메모리 맵을 설명한다.
특별히 한정하지 않지만, 메모리 칩 M0은 휘발성 메모리로 다이내믹 랜덤 액세스 메모리 셀을 이용한 다이내믹 랜덤 액세스 메모리로서, 판독 시간이 15ns 정도이다. 특별히 한정하지 않지만, 메모리 칩 M1은 불휘발성 메모리로 NOR형 플래시 메모리 셀을 이용한 NOR형 플래시 메모리이며, 판독 시간이 80ns 정도이다. 특 별히 한정하지 않지만, 메모리 칩 M2는 불휘발성 메모리로 NAND형 플래시 메모리 셀을 이용한 NAND형 플래시 메모리이며, 판독 시간이 25usec 정도이다. 특별히 한정하지 않지만, 메모리 칩 M1은, 부트 디바이스 ID 저장 영역 BotID-AREA, 최종단 디바이스 ID 저장 영역 EndID-AREA, 초기 프로그램 영역 InitPR-AREA, 프로그램 저장 영역 OSAP-AREA로 나누어져 있다.
부트 디바이스 ID 저장 영역 BotID-AREA에는, 부트 디바이스의 ID 정보가 저장된다. 최종단 디바이스 ID 저장 영역 EndID-AREA에는, 직렬 접속되어 있는 메모리 모듈 MEM0에 관한 최종단 메모리 디바이스 ID 정보가 저장된다. 초기 프로그램 영역 InitPR-AREA에는, 특별히 한정하지 않지만, 부트 프로그램이 저장된다. 프로그램 저장 영역 OSAP-AREA에는, 특별히 한정하지 않지만, 오퍼레이팅 시스템, 음성 통신이나 데이터 통신을 위한 통신용 프로그램이나, 음악 재생, 정지 화상 재생이나 동화상 재생을 위한 어플리케이션 프로그램 등이 저장된다. 특별히 한정하지 않지만, 메모리 칩 M0은 카피 영역 COPY-AREA, 워크 영역 WORK-AREA로 나누어져 있다. 워크 영역 WORK-AREA는 프로그램 실행 시의 워크 메모리로서 이용되고, 카피 영역 COPY-AREA는 메모리 칩 M1 및 M2로부터의 프로그램이나 데이터를 복사하기 위한 메모리로서 이용된다.
특별히 한정하지 않지만, 메모리 칩 M1에는, 오퍼레이팅 시스템, 음성 통신이나 데이터 통신을 위한 통신용 프로그램이나, 음악 재생, 정지 화상 재생이나 동화상 재생을 위한 어플리케이션 프로그램 등이 저장된다.
특별히 한정하지 않지만, 메모리 칩 M2는, 데이터 영역 DATA-AREA, 대체 영 역 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과 판독 명령을 메모리 모듈 MEM0에 송신한다. 메모리 모듈 MEM0은, ID 번호 1과 판독 명령에 따라서, 메모리 칩 M1의 초기 프로그램 영역 InitPR-AREA로부터 부트 프로그램을 판독하고, 최종단 디바이스 ID 저장 영역 EndID-AREA로부터 최종단 메모리 디바이스 ID 정보를 판독하여, 정보 처리 장치 CPU_CHIP에 송신한다. 이와 같이, 전원 투입 직후에, 부트 디바이스의 ID를 초기 설정함으로써, 메모리 칩의 직렬 접속에 의해 실현되는 메모리 모듈 MEM0 내의 부트 디바이스를 특정할 수 있어, 정보 처리 장치 CPU_CHIP과 메모리 모듈 MEM0 사이의 접속 신호수를 대폭 적게 한 후에, 정보 처리 장치 CPU_CHIP은, 재빠르고 확실하게 부트 디바이스로부터 부트 프로그램 및 최종단 메모리 디바이스 ID를 판독하여, 정보 처리 장치 CPU_CHIP 및 메모리 모듈 MEM0을 동작시킬 수 있다.
<데이터 카피 동작의 설명>
메모리 칩 M0의 데이터 판독 시간은, 메모리 칩 M2의 판독 시간과 비교하여, 대폭 짧다. 따라서, 미리 필요한 화상 데이터를 메모리 칩 M2로부터 메모리 칩 M0에 전송하면, 정보 처리 장치 CPU_CHIP에서 고속으로 화상 처리를 행할 수 있다. 특별히 한정하지 않지만, 메모리 칩 M0, M1, M2의 각각의 ID 레지스터값이 2, 1 및 3으로 설정된 경우의, 메모리 칩 M2로부터의 메모리 칩 M0에의 데이터 전송에 대해서 설명한다.
정보 처리 장치 CPU_CHIP은 메모리 칩 M2의 데이터 영역 DATA-AREA로부터 데이터를 판독하기 위해서, 메모리 칩 M2의 ID 번호 3과 1페이지(512Byte의 데이터+16Byte의 ECC 코드) 데이터 판독 명령을 메모리 모듈 MEM0에 송신한다. 메모리 모듈 MEM0은, 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페이지 데이터 판독 명령을 메모리 모듈 MEM0에 송신한다. 에러가 있으면 수정을 행한 후, 1페이지분의 데이터를 메모리 칩 M0의 카피 영역 COPY-AREA에 데이터를 전송하기 위해서, 정보 처리 장치 CPU_CHIP은 메모리 칩 M0의 ID 번호 2와 1페이지 데이터 판독 명령을 메모리 모듈 MEM0에 송신한다. 메모리 모듈 MEM0은, ID 번호 2와 1페이지 데이터 판독 명령에 따라서, 메모리 칩 M0의 카피 영역 COPY-AREA 데이터 영역에 1페이지분의 데이터를 기입한다.
다음으로, 정보 처리 장치 CPU_CHIP으로부터 메모리 칩 M0에 고속으로 화상 데이터가 기입되고, 필요에 따라서 메모리 칩 M2에 이 화상 데이터를 보존할 때의, 메모리 칩 M0으로부터의 메모리 칩 M2에의 데이터 전송에 대해서 설명한다. 정보 처리 장치 CPU_CHIP은 메모리 칩 M0의 카피 영역 COPY-AREA로부터 데이터를 판독하기 위해서, 메모리 칩 M0의 ID 번호 2와 1페이지(512Byte) 데이터 판독 명령을 메모리 모듈 MEM0에 송신한다. 메모리 모듈 MEM0은, ID 번호 2와 1페이지 데이터 판독 명령에 따라서, 메모리 칩 M0의 카피 영역 COPY-AREA로부터 1페이지분의 데이터를 판독하고, ID 번호 2를 부가하여, 정보 처리 장치 CPU_CHIP에 송신한다. 정보 처리 장치 CPU_CHIP은, 메모리 칩 M0으로부터 송신된 1페이지분의 데이터를 메모리 칩 M2의 데이터 영역 DATA-AREA에 데이터를 전송하기 위해서, 메모리 칩 M2의 ID 번호 2와 1페이지 데이터 기입 명령을 메모리 모듈 MEM0에 송신한다.
메모리 모듈 MEM0이, 메모리 칩 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페이지 데이터 기입 명령을 메모리 모듈 MEM0에 송신한다. 메모리 모듈 MEM0이 메모리 칩 M0 및 M1을 통해서 ID 번호 2와 1페이지 데이터 기입 명령을 메모리 칩 M2에 송신하면, 메모리 칩 M2는 자신의 대체 영역 REP-AREA에 1페이지분의 데이터를 기입한다. 또한, 정보 처리 장치 CPU_CHIP은, 대체 처리를 행했을 때에는, 불량 어드레스와, 불량 어드레스에 대하여, 어느 어드레스에 대체 처리를 행했는지라고 하는 어드레스 정보를 보유하고 관리한다.
이상 설명한 바와 같이, 메모리 칩 M2의 일부의 데이터를 카피할 수 있는 영역을 메모리 칩 내에 확보하고, 미리 메모리 칩 M2로부터 메모리 칩 M0에 데이터를 전송해 둠으로써, 메모리 칩 M0과 동등한 속도로 메모리 칩 M2의 데이터를 판독할 수 있어, 정보 처리 장치 CPU_CHIP에서의 고속 처리가 가능하게 된다. 또한, 메모 리 칩 M2에 데이터를 쓸 때는, 일단 데이터를 메모리 칩 M0에 기입하고, 필요에 따라서 메모리 칩 M2에 재기입할 수 있기 때문에, 데이터의 기입도 고속화할 수 있다. 또한, 메모리 칩 M2로부터의 판독 시는, 에러 검출과 정정을 행하고, 기입 시에는, 기입이 올바르게 행해지지 않은 불량 어드레스에 대하여 대체 처리를 행하기 때문에, 고신뢰성을 유지할 수 있다.
또한, 메모리 칩 M2의 일부의 데이터를 메모리 칩 M0에 전송하는 동작에 대해서 설명했지만, 메모리 칩 M0은 메모리 칩 M1의 일부의 데이터를 카피할 수 있는 영역을 장비할 수 있기 때문에 메모리 칩 M1의 일부의 데이터를 메모리 칩 M0에 전송할 수 있는 것은 물론이다.
또한, 메모리 칩 M0, M1 및 M2가, 각각의 판독 시간이 짧은 순으로 직렬로 접속된 메모리 모듈이며, 메모리 칩 M0에 메모리 칩 M1 및 M2의 일부의 데이터를 카피할 수 있는 영역을 설정하고, 미리 메모리 칩 M1 및 M2로부터 메모리 칩 M0에 데이터를 전송해 둠으로써, 메모리 칩 M0과 동등한 속도로 메모리 칩 M1 및 M2의 데이터를 판독하여, 정보 처리 장치 CPU_CHIP에서의 고속 처리를 실현할 수 있는 것은 물론이다.
<전원 투입 시의 초기 시퀀스>
도 3은, 정보 처리 장치 CPU_CHIP과 메모리 모듈 MEM0으로 구성되는 정보 시스템 장치의 전원 투입 시의 초기 시퀀스를 도시한다. T1의 기간(PwON)에서 정보 처리 장치 CPU_CHIP과, 메모리 모듈 MEM0 내의 메모리 칩 M0, M1 및 M2에 전원 투입을 행하고, T2의 기간(RESET)에서 리세트를 행한다. 리세트의 방법은 특별히 한 정하지 않지만, 각각의 내장 회로에서 자동적으로 리세트를 행하는 방법이어도, 혹은, 외부에 리세트 단자를 갖고, 이 리세트 신호에 의해 리세트 동작을 행하는 것으로 하여도 된다. T2의 리세트 기간에는, 정보 처리 장치 CPU_CHIP은 부트 디바이스 ID 레지스터 BotID를 1로, 최단 디바이스 ID 레지스터 EndID를 0으로 설정한다. 메모리 칩 M0, M1, M2는 각각이 갖고 있는 ID 레지스터의 값을 0으로, ID 유효 비트를 Low로 초기 설정한다. 또한, 메모리 칩 M0, M1, M2는, 각각이 갖고 있는 레스펀스 큐의 우선 순위, 우선 순위를 바꾸는 레스펀스 실행 횟수값의 초기 설정을 행한다. 또한, 메모리 칩 M0, M1, M2는, 각각의 동작 클럭 주파수의 분주비의 초기 설정을 행한다.
리세트가 해제된 T3의 기간(BootIDSet)에서 부트 디바이스가 부트 디바이스 ID를 ID 레지스터에 세트한다. 메모리 칩 M0, M1 및 M2는, 부트 디바이스 인식 신호 Bsig가 전원에 접속되어 있으므로, 자기 자신이 부트 디바이스가 아닌 것을 인식하고, 각각의 ID 레지스터의 값을 0 상태 그대로로 한다. 메모리 칩 M1의 부트 디바이스 인식 신호 Bsig가 접지(gnd)되어 있으므로, 자기 자신이 부트 디바이스인 것을 인식하고, 자기의 메모리 회로 MemNV1이 보유하고 있는 부트 디바이스 ID값 1을 판독하여, ID 레지스터에 설정하고, ID 유효 비트를 High로 한다. T3의 기간이 종료된 후의 T4의 기간(LinkEn)에서는, 각 메모리 칩 M0, M1 및 M2의 신호의 접속 확인이 행해진다. 메모리 칩 M2는, 직렬 접속하고 있는 메모리 칩의 가장 종단의 메모리 칩인 것을 인식하고, 리퀘스트 인에이블 신호 RqEn2를 High로 한다.
다음으로, 메모리 칩 M1은 리퀘스트 인에이블 신호 RqEn2가 High로 된 것을 확인하고, 레스펀스 인에이블 신호 RsEn2 및 리퀘스트 인에이블 신호 RqEn1을 High로 한다. 다음으로, 메모리 칩 M0은 리퀘스트 인에이블 신호 RqEn1이 High로 된 것을 확인하고, 레스펀스 인에이블 신호 RsEn1 및 리퀘스트 인에이블 신호 RqEn0을 High로 한다. 마지막으로, 정보 처리 장치 CPU_CHIP은, 리퀘스트 인에이블 신호 RqEn0이 High로 된 것을 확인하고, 각 메모리 칩의 신호 접속이 확인된 것을 알고, 레스펀스 인에이블 신호 RsEn0을 High로 한다. T4의 기간이 종료된 후의 T5의 기간(BootRD)에서는, 정보 처리 장치 CPU_CHIP이 메모리 칩 M1로부터 부트 데이터를 판독한다.
정보 처리 장치 CPU_CHIP은, 리퀘스트 신호 RqMux0을 통하여, 메모리 칩 M1의 ID값 1, 판독 명령, 어드레스를 다중화한 리퀘스트 NRDm1을 클럭 신호 RqCK0에 동기시켜, 메모리 칩 M0에 전송한다. 메모리 칩 M0의 ID 유효 비트가 Low이기 때문에, 메모리 칩 M0은 리퀘스트 신호 RqMux1로부터 리퀘스트 ReqNRDm1을 클럭 신호 RqCK1에 동기시켜, 메모리 칩 M1에 전송한다. 메모리 칩 M1은, 메모리 칩 M0으로부터의 리퀘스트 ReqNRDm1을, 자신의 리퀘스트 큐 제어 회로 RqCT에 저장한다. 메모리 칩 M1의 ID 유효 비트가 High이기 때문에, 리퀘스트 ReqNRDm1에 포함되는 ID값 1과 자신의 ID 레지스터의 값 1을 비교한다. 비교 결과는 일치하고 있기 때문에, 리퀘스트 ReqNRDm1을 메모리 회로 MemNV1에 전송한다. 리퀘스트 ReqNRDm1에 의해 메모리 회로 MemNV1로부터 부트 데이터와 최종단 디바이스 ID 번호 3이 판독되고, ID 레지스터값 1과 함께, 레스펀스 ResNRDm1로서 레스펀스 큐 제어 회로 RsCT에 전송된다. 메모리 칩 M1의 레스펀스 큐 제어 회로 RsCT는 레스펀스 신호 RqMux1로부터, 레스펀스 ResNRDm1을 메모리 칩 M0에 전송한다. 마지막으로, 메모리 칩 M0의 레스펀스 큐 제어 회로 RsCT는 레스펀스 신호 RqMux0으로부터 레스펀스 ResNRDm1을 정보 처리 장치 CPU_CHIP에 전송한다. 정보 처리 장치 CPU_CHIP은, 레스펀스 ResNRDm1을 수취하여, 최종단 디바이스 ID값 3을 메모리 제어 회로 CON 내의 최종단 디바이스 ID 레지스터 ENDID에 보존한다. 다음으로, 수취한 부트 프로그램에 의해 스스로를 기동한다. T5의 기간이 종료한 후의 T6의 기간(InitID)에서는, 부트 코드에 따라서, 정보 처리 장치 CPU_CHIP이 각 메모리 칩에 ID 번호를 설정한다.
정보 처리 장치 CPU_CHIP은, 우선, 리퀘스트 신호 RqMux0을 통하여, ID값 2와 ID 설정 명령을 메모리 칩 M0에 전송한다. 메모리 칩 M0에서는, ID 유효 비트가 Low에 의해, 아직 ID 번호 부여가 행해져 있지 않기 때문에, ID 번호 2와 ID 설정 명령에 의해 ID 레지스터에 ID 번호 2를 설정하고, ID 유효 비트를 High로 한다. ID 유효 비트가 High로 됨으로써, ID 번호 부여가 완료된 것을 나타낸다. 메모리 칩 M0은, ID 번호 부여가 완료되었기 때문에, ID값 2와 ID 번호 부여 완료 정보를 레스펀스 신호 RsMux0을 통해서 정보 처리 장치 CPU_CHIP에 알린다.
정보 처리 장치 CPU_CHIP은 메모리 칩 M0의 ID 번호 부여가 완료된 것을 알면, 다음으로 리퀘스트 신호 RqMux0으로부터 ID 번호 3과 ID 설정 명령을 메모리 칩 M0에 전송한다. 메모리 칩 M0은 자신의 ID 번호 2와 ID 번호 3을 비교하고, 불일치하기 때문에, ID 번호 3과 ID 설정 명령을 메모리 칩 M1에 전송한다. 메모리 칩 M1에서는 이미 ID 번호 부여가 이루어져 있기 때문에, 자신의 ID 번호 1과 ID 번호 3을 비교하고, 불일치하기 때문에, ID 번호 3과 ID 설정 명령을 리퀘스트 신호 RqMux2로부터, 메모리 칩 M2에 전송한다.
메모리 칩 M2에서는, 아직 ID 번호 부여가 행해져 있지 않기 때문에, 메모리 칩 M2는, ID 번호 3과 ID 설정 명령에 의해 ID 레지스터에 ID 번호 3을 설정하고, ID 유효 비트를 High로 한다. ID 유효 비트가 High로 됨으로써, ID 번호 부여가 완료된 것을 나타낸다. 메모리 칩 M2는, ID 번호 부여가 완료되었기 때문에, ID값 3과 ID 번호 부여 완료 정보를, 메모리 칩 M1 및 메모리 칩 M0을 통하여, 정보 처리 장치 CPU_CHIP에 송신한다. 정보 처리 장치 CPU_CHIP은, 송신된 ID값 3과 메모리 제어 회로 CON 내의 최종단 디바이스 ID 레지스터 EndID에 설정되어 있는 최종단 디바이스 ID값 3을 비교한다. 쌍방의 값이 일치함으로써, 최종단의 메모리 칩까지 ID 번호 부여가 행해진 것을 확인한다.
T6의 기간이 종료된 후의 T7의 기간(Idle) 이후는, 메모리 모듈 MEM0은 아이들 상태로 되어, 정보 처리 장치 CPU_CHIP으로부터의 리퀘스트를 기다리는 상태로 된다.
<메모리 칩 M0의 설명>
도 4는, 메모리 칩 M0의 구성도의 일례이다. 도 5는 메모리 칩 M0에의 리퀘스트가 발생했을 때의, 동작의 일례를 도시하는 플로우차트이다. 도 6은 메모리 칩 M0의 메모리 회로 MemVL로부터의 레스펀스가 발생했을 때의, 동작의 일례를 도시하는 플로우차트이다. 도 7은 메모리 칩 M1로부터 메모리 칩 M0에 레스펀스가 발생했을 때의, 동작의 일례를 도시하는 플로우차트이다. 이하에서 각 회로 블록 의 동작을 설명한다.
메모리 칩 M0은, 리퀘스트 인터페이스 회로 ReqIF와, 레스펀스 인터페이스 회로 ResIF와, 초기화 회로 INIT, 메모리 회로 MemVL로 구성되어 있다. 리퀘스트 인터페이스 회로 ReqIF는 리퀘스트 클럭 제어 회로 RqCkC 및, 리퀘스트 큐 제어 회로 RqCT로 구성된다. 리퀘스트 클럭 제어 회로 RqCkC는 클럭 드라이버 Drv1 및 클럭 분주 회로 Div1로 구성된다. 리퀘스트 큐 제어 회로 RqCT는 리퀘스트 큐 회로 RqQI, 리퀘스트 큐 회로 RqQXI, 리퀘스트 큐 회로 RqQXO, ID 레지스터 회로 dstID, ID 비교 회로 CPQ로 구성된다. 특별히 한정하지 않지만, 리퀘스트 큐 회로 RqQI는 2개의 리퀘스트 큐로 구성되고, 리퀘스트 큐 회로 RqQXI는 1개의 리퀘스트 큐로 구성되고, 리퀘스트 큐 회로 RqQXO는 2개의 리퀘스트 큐로 구성된다. 레스펀스 인터페이스 회로 ResIF는 레스펀스 클럭 제어 회로 RsCkC 및, 레스펀스 큐 제어 회로 RsCT로 구성된다. 레스펀스 클럭 제어 회로 RsCkC는 클럭 드라이버 Drv2 및 클럭 분주 회로 Div2로 구성된다. 레스펀스 큐 제어 회로 RsCT는, 레스펀스 큐 회로 RsQo, 레스펀스 큐 회로 RsQp, 스테이터스 레지스터 회로 STReg, 레스펀스 스케줄 회로 SCH로 구성된다. 특별히 한정하지 않지만, 레스펀스 큐 회로 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의 클럭 주파수를 저하시키거나, 또한, 클럭을 정지시키거나, 또한, 클럭을 재동작시킬 수 있다.
리퀘스트 큐 회로 RqQI는, 리퀘스트 신호 RqMux0을 통하여, ID값, 명령, 어드레스 및 기입 데이터가 다중화되어 메모리 칩 M0에 입력된 리퀘스트를 저장한다. ID 레지스터 회로 dstID는, 메모리 칩 M0의 ID값 및 ID 유효 신호를 저장한다. ID 비교 회로 CPQ는, 리퀘스트 큐 회로 RqQI에 저장되어 있는 ID값과, ID 레지스터 회 로 dstID에 저장되어 있는 ID값을 비교한다.
리퀘스트 큐 회로 RqQXI 및 리퀘스트 큐 회로 RqQXO는, 리퀘스트 큐 회로 RqQI로부터 전송된 리퀘스트를 저장한다. 레스펀스 큐 회로 RsQo는, 메모리 칩 M0의 메모리 회로 MemVL로부터 판독된 데이터 및 ID 레지스터 회로 dstID로부터 판독된 ID값을 저장한다. 레스펀스 큐 회로 RsQp는, 레스펀스 신호 RsMux1을 통하여, 입력되는 ID값, 판독 데이터 및 에러 정보 및 스테이터스 정보를 저장한다.
스테이터스 레지스터 회로 STRReg는, 특별히 한정하지 않지만 레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp에 레스펀스가 저장되어 있는 것을 나타내는 미처리 레스펀스 정보 등이 저장된다. 레스펀스 스케줄 회로 SCH는, 레스펀스 큐 회로 RsQo에 저장되어 있는 레스펀스와, 레스펀스 큐 회로 RsQp에 저장되어 있는 레스펀스와의 레스펀스 우선 순위를 결정하고, 우선 순위가 높은 레스펀스를, 레스펀스 신호 RsMux0으로부터 출력하기 위한 조정을 행한다. 레스펀스 우선 순위는, 레스펀스 큐 회로 RsQo로부터 출력된 레스펀스의 횟수와, 레스펀스 큐 회로 RsQp로부터 출력된 레스펀스의 횟수에 의해 레스펀스 스케줄 회로 SCH가 동적으로 변화시킨다.
다음으로, 본 메모리 칩 M0의 동작을 설명한다. 우선, 전원 투입 시의 동작에 대해서 설명한다. 메모리 칩 M0에 전원이 투입되면 초기화 회로 INIT는 메모리 칩 M0의 초기화를 행한다. 우선, ID 레지스터 회로 dstID가 갖는 ID 레지스터의 값을 0으로, ID 유효 비트를 Low로 초기 설정한다. 다음으로 레스펀스 스케줄 회로 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 번호 부여가 완료된 것을 통달한다.
다음으로, 전원 투입 직후의 동작이 종료된 후에, 정보 처리 장치 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, 뱅크 액티브 명령 BA, 뱅크 어드레스 BK1, 로우 어드레스 Row를 다중화한 리퀘스트 ReqBAb0m0을 클럭 신호 RqCk0에 동기시켜, 메모리 칩 M0에 전송한다(도 5: Step1).
다음으로, 리퀘스트 신호 RqMux0을 통하여, ID값 2, 32바이트 데이터 판독 명령 RD4, 뱅크 어드레스 BK0, 컬럼 어드레스 Col255를 다중화한 리퀘스트 ReqRD32b0m0을 클럭 신호 RqCK0에 동기시켜, 메모리 칩 M0에 전송한다(도 5: Step1). 리퀘스트 인에이블 신호 RqEn0이 Low이면(도 5: Step2), 정보 처리 장치 CPU_CHIP으로부터의 리퀘스트는 메모리 칩 M0의 리퀘스트 큐 회로 RqQI에 저장되지 않는다. 리퀘스트 인에이블 신호 RqEn0이 High이면(도 5: Step2), 메모리 칩 M0에, 정보 처리 장치 CPU_CHIP으로부터의 리퀘스트 ReqBAb0m0과 리퀘스트 ReqRD32b0m0은 순서대로, 메모리 칩 M0의, 리퀘스트 큐 회로 RqQI의 리퀘스트 큐 RqQI-0 및 RqQI-1에 저장된다(도 5: Step3). 이것으로, 리퀘스트 큐 회로 RqQI의 전체 리퀘스트 큐는 엔트리되어, 정보 처리 장치 CPU_CHIP으로부터의 새로운 리퀘 스트를 접수 불가능하기 때문에, 리퀘스트 인에이블 신호 RqEn0을 Low로 한다. 리퀘스트 인에이블 신호 RqEn0이 Low로 됨으로써, 정보 처리 장치 CPU_CHIP은, 메모리 칩 M0이 리퀘스트를 접수할 수 없게 된 것을 알 수 있다.
그 후, ID 비교 회로 CPQ는, 리퀘스트 큐 RqQI-0에 엔트리된 리퀘스트 ReqBAb0m0에 포함되는 ID값 2와, ID 레지스터 회로 dstID에 유지되어 있는 ID값 2를 비교한다(도 5: Step4). 비교 결과가 일치했기 때문에, 리퀘스트 ReqBAb0m0은, 리퀘스트 큐 회로 RqQXI에 전송된다(도 5: Step5). 비교 결과가 불일치인 경우에는, 리퀘스트 ReqBAb0m0은, 리퀘스트 큐 회로 RqQXO에 전송되어, 메모리 칩 M1에 전송된다(도 5: Step12).
다음으로, 리퀘스트 큐 회로 RqQXI는 저장하고 있는 레스펀스가 판독 명령을 포함하는지의 여부를 체크한다(도 5: Step6). 판독 명령을 포함하고 있는 경우에는, 리퀘스트 큐 회로 RqQXI는, 레스펀스 큐 회로 RsQo의 레스펀스 큐 RqQp-0 및 RqQp-1에 빈 부분이 있는지를 체크한다(도 5: Step7). 리퀘스트 ReqBAb0m0은 판독 명령을 포함하고 있지 않기 때문에, 리퀘스트 큐 회로 RqQXI는 저장하고 있는 리퀘스트 ReqBAb0m0을 메모리 회로 MemVL에 전송한다(도 5: Step10). 메모리 회로 MemVL은 리퀘스트 ReqBAb0m0에 따라 동작한다(도 5: Step11). 구체적으로는, 메모리 회로 MemVL은 리퀘스트 ReqBAb0m0에 포함되는 뱅크 액티브 명령 BA, 뱅크 어드레스 BK0, 로우 어드레스 Row63에 의해, 뱅크 0 내의 로우63에 접속되어 있는 1kByte분의 메모리 셀을 활성화하여, 뱅크 0 내의 센스 앰프에 전송한다(도 5: Step11).
리퀘스트 ReqBAb0m0이 처리됨으로써, 리퀘스트 큐 RqQI-0이 하나분 비었기 때문에, 메모리 칩 M0은, 리퀘스트 인에이블 신호 RqEn0을 High로 하고, 새로운 리퀘스트를 접수 가능한 것을 정보 처리 장치 CPU_CHIP에 알린다. 정보 처리 장치 CPU_CHIP은, 메모리 칩 M0의 리퀘스트 인에이블 신호 RqEn0이 High로 된 것을 확인하고, 새로운 리퀘스트로서 리퀘스트 신호 RqMux0을 통하여, ID값 2, 32바이트 기입 명령 WT, 뱅크 어드레스 BK0, 컬럼 어드레스 Col127, 32바이트분의 기입 데이터를 다중화한 리퀘스트 ReqWT23b0m0을 클럭 신호 RqCK0에 동기시켜, 메모리 칩 M0에 전송한다(도 5: Step1).
리퀘스트 인에이블 신호 RqEn0을 체크하여(도 5: Step2), 리퀘스트 인에이블 신호 RqEn0이 High이기 때문에, 메모리 칩 M0은, 정보 처리 장치 CPU_CHIP으로부터의 리퀘스트 ReqWT23b0m0을 자신의 리퀘스트 큐 제어 회로 RqCT 내의 리퀘스트 큐 RqQI-0에 저장한다(도 5: Step3).
메모리 칩 M0은, 새로운 리퀘스트 ReqWT23b0m0을, 자신의 리퀘스트 큐 회로 RqQI 내의 리퀘스트 큐 RqQI-0에 저장하는 것(도 5: Step3)과는 독립하여 병행하여, 이미 리퀘스트 큐 RqQI-1에 저장되어 있는 리퀘스트 ReqRD32b0m0에 대한 처리를 행할 수 있다(도 5: Step4 이후).
다음으로, 이미 리퀘스트 큐 RqQI-1에 저장되어 있는 리퀘스트 ReqRD32b0m0에 대한 동작을 설명하는 ID 비교 회로 CPQ는, 리퀘스트 큐 RqQI-1에 엔트리된 리퀘스트 ReqRD32b0m0에 포함되는 ID값 2와, ID 레지스터 회로 dstID에 보유되어 있는 ID값 2를 비교한다(도 5: Step4). 비교 결과가 일치했기 때문에, 리퀘스트 ReqRD32b0m0은, 리퀘스트 큐 회로 RqQXI에 전송된다(도 5: Step5). 비교 결과가 불일치인 경우에는, 리퀘스트 ReqRD32b0m0은, 리퀘스트 큐 회로 RqQXO에 전송되어, 메모리 칩 M1에 전송된다(도 5: Step12). 다음으로, 리퀘스트 큐 회로 RqQXI는 저장하고 있는 레스펀스가 판독 명령을 포함하는지의 여부를 체크한다(도 5: Step6). 리퀘스트 ReqRD32b0m0이 판독 명령을 포함하고 있기 때문에, 리퀘스트 큐 회로 RqQXI는, 레스펀스 큐 회로 RsQo의 레스펀스 큐 RqQp-0 및 RqQp-1에 빈 부분이 있는지를 체크한다(도 5: Step7). 레스펀스 큐 회로 RsQo의 레스펀스 큐 RqQp-0 및 RqQp-1에 빈 부분이 없으면, 빈 부분이 생길 때까지, 리퀘스트 큐 회로 RqQXI는, 리퀘스트 ReqRD32b0m0의 전송을 중단한다. 레스펀스 큐 회로 RsQo의 레스펀스 큐 RqQp-0 및 RqQp-1에 빈 부분이 있으면, 리퀘스트 큐 회로 RqQXI는 저장하고 있는 리퀘스트 ReqRD32b0m0을 메모리 회로 MemVL에 전송한다(도 5: Step8). 메모리 회로 MemVL은 리퀘스트 ReqRD32b0m0에 따라 동작한다(도 5: Step9). 구체적으로는, 메모리 회로 MemVL은 리퀘스트 ReqRD32b0m0에 포함되는, ID값 2, 32바이트 데이터 판독 명령 RD, 뱅크 어드레스 BK0, 컬럼 어드레스 Col255에 의해, 뱅크 0의 센스 앰프에 보유되어 있는 데이터 중에서, 컬럼 어드레스 255를 개시 어드레스로 한 32바이트분의 데이터가 판독되고(도 5: Step9), ID 레지스터값 2를 포함시켜, 레스펀스 큐 제어 회로 RsCT 내의 레스펀스 큐 RsQo의 레스펀스 큐 RsQo-0에 레스펀스 ResRD32b0m0으로서 엔트리된다(도 6: Step13).
레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp에 레스펀스가 엔트리되면, 레스펀스 스케줄 회로 SCH는, 레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp에 엔트리되어 있는 레스펀스 수를, 스테이터스 레지스터 STReg에 보존한다(도 6: Step14). 또한, 레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp에 엔트리되어 있는 레스펀스에 대한 레스펀스 우선 순위를 결정한다(도 6: Step15). 다음으로, 레스펀스 인에이블 신호 RsEn0을 체크하여(도 6: Step16), 레스펀스 인에이블 신호 RsEn0이 High일 때에, 레스펀스 우선 순위가 가장 높은 레스펀스를 레스펀스 신호 RsMux0을 통하여, 정보 처리 장치 CPU_CHIP에 송신한다(도 6: Step17). 레스펀스 인에이블 신호 RsEn0이 Low이면, 정보 처리 장치 CPU_CHIP에 송신은 행하지 않는다.
레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp의 1개의 레스펀스가 정보 처리 장치 CPU_CHIP에 완전히 송신되면, 레스펀스 스케줄 회로 SCH는, 레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp에 엔트리되어 있는 레스펀스 수를 체크하여, 최신의 레스펀스 수를 스테이터스 레지스터 STReg에 보존한다(도 6: Step18). 여기서는, 레스펀스 인에이블 신호 RsEn0이 High이며, 레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp에 엔트리되어 있는 레스펀스가, 레스펀스 ResRD32b0m0뿐이기 때문에, 레스펀스 스케줄 회로 SCH는, 스테이터스 레지스터 STReg에 레스펀스 수 1을 보존하고, 또한 레스펀스 eRsRD32b0m0의 레스펀스 우선 순위를 최고위로 설정하고, 레스펀스 eRsRD32b0m0을 정보 처리 장치 CPU_CHIP에 송신한다. 레스펀스 ResRD32b0m0이 정보 처리 장치 CPU_CHIP에 송신되면, 레스펀스 스케줄 회로 SCH는, 레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp에 엔트리되어 있는 레스펀스가 존재하지 않기 때문에, 스테이터스 레지스터 STReg에 레스펀스 수 0을 보존한다.
리퀘스트 ReqRD32b0m0에 대응하는 레스펀스 ResRD32b0m0이 레스펀스 큐 회로 RsQo에 엔트리되면, 레스펀스 ResRD32b0m0이 정보 처리 장치 CPU_CHIP에 한창 출력되고 있는 중이라도, 리퀘스트 ReqWT23b0m0에 대한 처리를 행할 수 있다(도 5: Step4 이후).
다음으로, 이미 리퀘스트 큐 RqQI-0에 저장되어 있는 리퀘스트 ReqWT23b0m0에 대한 동작을 설명한다. ID 비교 회로 CPQ는, 리퀘스트 큐 RqQI-0에 엔트리된 리퀘스트 ReqWT23b0m0에 포함되는 ID값 2와, ID 레지스터 회로 dstID에 보유되어 있는 ID값 2를 비교한다(도 5: Step4). 비교 결과가 일치했기 때문에, 리퀘스트 ReqWT23b0m0은, 리퀘스트 큐 회로 RqQXI에 전송된다(도 5: Step5). 비교 결과가 불일치인 경우에는, 리퀘스트 ReqWT23b0m0은, 리퀘스트 큐 회로 RqQXO에 전송되어, 메모리 칩 M1에 전송된다(도 5: Step12).
다음으로, 리퀘스트 큐 회로 RqQXI는 저장하고 있는 레스펀스가 판독 명령을 포함하는지의 여부를 체크한다(도 5: Step6). 판독 명령을 포함하고 있는 경우에는, 리퀘스트 큐 회로 RqQXI는, 레스펀스 큐 회로 RsQo의 레스펀스 큐 RqQp-0 및 RqQp-1에 빈 부분이 있는지를 체크한다(도 5: Step7). 리퀘스트 ReqWT23b0m0은 판독 명령을 포함하고 있지 않기 때문에, 리퀘스트 큐 회로 RqQXI는 저장하고 있는 리퀘스트 ReqWT23b0m0을 메모리 회로 MemVL에 전송한다(도 5: Step10). 메모리 회로 MemVL은 리퀘스트 ReqWT23b0m0에 따라 동작한다(도 5: Step11). 구체적으로는, 메모리 회로 MemVL은 리퀘스트 ReqWT23b0m0에 포함되는 ID값 2, 32바이트 기입 명령 WT, 뱅크 어드레스 BK0, 컬럼 어드레스 Col127 및 32바이트분의 기입 데이터에 의해, 메모리 뱅크 0의 센스 앰프에, 컬럼 어드레스 127을 개시 어드레스로 한 32바이트분의 데이터를 기입한다.
도 7은 메모리 칩 M1로부터 메모리 칩 M0에 레스펀스가 발생했을 때의, 동작의 일례를 도시하는 플로우차트이다. 레스펀스 신호 RsMux1로부터, 레스펀스 클럭 신호 RqCK1에 동기하여, 메모리 칩 M0에 레스펀스가 송신되면(도 7: Step1), 레스펀스 인에이블 신호 ResEn1이 Low이면(도 7: Step2), 메모리 칩 M0의 레스펀스 큐 회로 RsQp에 저장되지 않는다. 레스펀스 인에이블 신호 ResEn1이 High이면(도 7: Step2), 메모리 칩 M0의 레스펀스 큐 회로 RsQp에 저장된다(도 7: Step3). 레스펀스 큐 회로 RsQp에 레스펀스가 엔트리되면, 레스펀스 스케줄 회로 SCH는, 레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp에 엔트리되어 있는 레스펀스 수를, 스테이터스 레지스터 STReg에 보존한다(도 6: Step4). 또한, 레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp에 엔트리되어 있는 레스펀스에 대한 레스펀스 우선 순위를 결정한다(도 6: Step5). 다음으로, 레스펀스 인에이블 신호 RsEn0을 체크하여(도 6: Step6), 레스펀스 인에이블 신호 RsEn0이 High일 때에, 레스펀스 우선 순위가 가장 높은 레스펀스를 레스펀스 신호 RsMux0으로부터, 정보 처리 장치 CPU_CHIP에 송신한다(도 6: Step7). 레스펀스 인에이블 신호 RsEn0이 Low이면, 정보 처리 장치 CPU_CHIP에 송신은 행하지 않는다.
레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp의 1개의 레스펀스가 정보 처리 장치 CPU_CHIP에 완전히 송신되면, 레스펀스 스케줄 회로 SCH는, 레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp에 엔트리되어 있는 레스펀스 수를 체크하여, 최신의 레스펀스 수를 스테이터스 레지스터 STReg에 보존한다(도 6: Step8).
레스펀스 스케줄 회로 SCH의 동작에 대해서 설명한다. 도 8은 레스펀스 스케줄 회로 SCH의 동작을 도시하는 플로우차트이다. 레스펀스 스케줄 회로 SCH에서는, 우선, 레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp에 레스펀스가 엔트리되어 있는지를 체크한다(Step1). 레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp 중 어디에도 레스펀스가 엔트리되어 있지 않으면, 다시, 레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp에의 엔트리를 체크한다. 레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp 중 어느 하나에 레스펀스가 엔트리되어 있으면, 레스펀스의 우선 순위를 체크하여, 최고위의 레스펀스 우선 순위를 갖는 레스펀스의 송신 준비를 행한다(Step2).
다음으로, 레스펀스 스케줄 회로 SCH는 레스펀스 인에이블 신호 RsEn0을 체크하여(Step3), Low일 때에는 레스펀스를 출력하지 않고, 레스펀스 인에이블 신호 RsEn0이 High로 되는 것을 기다린다. 레스펀스 인에이블 신호 RsEn0이 High일 때에는, 최고위의 레스펀스 우선 순위를 갖는 레스펀스를 출력한다(Step4). 그 레스펀스가 출력된 후에는, 레스펀스에 관한 출력 우선 순위를 변화시킨다(Step5).
메모리 칩 M0의 레스펀스 스케줄 회로 SCH에서 행하는 레스펀스 우선 순위의 변경 동작의 일례에 대해서 설명한다. 도 9에서는, 메모리 칩 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으로부터 설정 가능하여, 본 발명이 이용되는 휴대 기기 등의 시스템 구성에 맞춰, 고성능화가 도모되도록, 각각을 설정할 수 있다.
<클럭 제어>
도 10의 (a)는, 메모리 칩 M0으로부터 출력되는 레스펀스 클럭 신호 RsCk0을 정지하는 동작의 일례이다. 정보 처리 장치 CPU_CHIP은, 레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp에 엔트리되어 있는 레스펀스 수 ResN을 확인하기 위해서, 리퀘스트 신호 RqMux0으로부터 메모리 칩 M0의 ID값 2와 레스펀스 수 확인 명령을 다중화한 리퀘스트 ReqRNo를 입력한다(Step2). 메모리 칩 M0의 리퀘스트 큐 회로 RqQI는 리퀘스트 ReqRNo를 저장한다. 다음으로, ID 비교 회로 CPQ는, 리퀘스트 큐 회로 RqQI에 저장되어 있는 리퀘스트 ReqRNo에 포함되는 ID값 2와 ID 레지스터 회로 dstID에 보유되어 있는 ID값 2를 비교하고, 일치했기 때문에, 리퀘스트 ReqBAb0m0은, 리퀘스트 큐 회로 RqQXI에 전송된다.
리퀘스트 큐 회로 RqQXI는, 리퀘스트 ReqBAb0m0을, 스테이터스 레지스터 회로 STReg에 전송한다. 스테이터스 레지스터 회로 STReg는, ID값 2를 포함시켜, 레스펀스 수 ResN을 레스펀스 큐 회로 RsQo에 송신하고, 레스펀스 큐 회로 RsQo는, 레스펀스 신호 RsMux0을 통하여, ID값 2 및 레스펀스 수 ResN을 정보 처리 장치 CPU_CHIP에 송신한다(Step3). 다음으로, ID값 2 및 레스펀스 수 ResN을 수취한 정보 처리 장치 CPU_CHIP은, 레스펀스 수 ResN이 0인지의 여부의 체크를 행한다(Step4). 레스펀스 수 ResN이 0이 아닌 경우, 아직, 레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp에 엔트리되어 있는 레스펀스가 존재하므로, 다시, 레스펀스 수 확인 명령을 메모리 칩 M0에 송신한다(Step2).
레스펀스 수 ResN이 0인 경우에는, 레스펀스 큐 회로 RsQo 및 레스펀스 큐 회로 RsQp에 엔트리되어 있는 레스펀스가 존재하지 않기 때문에, 리퀘스트 신호 RqMux0으로부터, 레스펀스 클럭 신호 RsCk0의 정지 명령을, 메모리 칩 M0에 송신한다(Step5). 리퀘스트 신호 RqMux0으로부터 리퀘스트로서 ID값 2, 레스펀스 클럭 정지 커맨드가 다중화된 리퀘스트 ReqStop2가 메모리 칩 M0에 입력된다. 메모리 칩 M0은 리퀘스트 ReqStop2를 자신의 리퀘스트 큐 제어 회로 RqCT 내의 리퀘스트 큐에 저장한다. 그 후, 리퀘스트 큐 제어 회로 RqCT 내의 ID 비교 회로는 리퀘스트 ReqStop2에 포함되는 ID값 2와 자신의 ID 레지스터의 값 2를 비교한다. 비교 결과는 일치하고 있어, 리퀘스트 큐 제어 회로 RqCT는 레스펀스 클럭 제어 회로 RsCkC 내의 클럭 분주 회로 Div2에 리퀘스트 ReqStop2를 송신한다(Step5).
클럭 분주 회로 Div2는, 리퀘스트 ReqStop2에 따라, 레스펀스 클럭 신호 RsCK0의 클럭 주파수를 서서히 저하시켜, 레스펀스 클럭 신호 RsCK0의 정지 준비가 갖추어진 시점에서, 레스펀스 스케줄 회로 SCH를 통하여, 레스펀스 신호 RsMux0으로부터, ID값 2 및 레스펀스 클럭 정지 통달 정보를 정보 처리 장치 CPU_CHIP에 송신한다(Step6). 그 후, 클럭 분주 회로 Div2는, 클럭 신호 ck3 및 레스펀스 클럭 신호 RsCK0을 정지한다(Step7).
도 10의 (b)는, 메모리 칩 M0으로부터 출력되는 레스펀스 클럭 신호 RsCk0의 클럭 주파수를 저하시키기 위한 동작의 일례이다. 도 10의 (b)의 Step1로부터 Step4까지의 동작은, 도 10의 (a)와 동등하기 때문에, Step5부터 설명한다. 리퀘스트 신호 RqMux0으로부터 리퀘스트로서 ID값 2, 레스펀스 클럭 분주 커맨드, 및 분주비 8이 다중화된 리퀘스트 ReqDIV8이 메모리 칩 M0에 송신된다(Step5). 메모리 칩 M0은, 자신의 리퀘스트 큐 제어 회로 RqCT 내의 ID 비교 회로에서, 리퀘스트 ReqDIV8에 포함되는 ID값 2와 자신의 ID 레지스터의 값 2를 비교한다. 비교 결과는, 일치하기 때문에, 리퀘스트 ReqDIV8은, 리퀘스트 클럭 제어 회로 RqCkC 내의 클럭 분주 회로 Div2에 송신된다(Step5).
클럭 분주 회로 Div2는, 리퀘스트 ReqDIV8에 따라, 레스펀스 클럭 신호 RsCK0의 클럭 주파수를 서서히 저하시키고, 최종적으로, 리퀘스트 클럭 신호 RqC2를 8분의 1분주한 클럭을, 클럭 CK3 및 레스펀스 클럭 신호 RsCk2로부터 출력한다(Step6). 레스펀스 클럭 신호 RsCK0의 클럭 주파수가, 원하는 주파수로 변경된 후, 클럭 분주 회로 Div2는 레스펀스 스케줄 회로 SCH를 통하여, 레스펀스 신호 RsMux0으로부터, ID값 2 및 레스펀스 클럭 분주 완료 정보를 정보 처리 장치 CPU_CHIP에 송신한다(Step 7).
도 10의 (c)는, 분주나 정지된 레스펀스 클럭 신호 RsCk0을 다시 리퀘스트 클럭 신호 RqCk0과 동등한 주파수에서 동작시킨 경우의 동작의 일례이다. 메모리 칩 M0으로부터 출력되는 레스펀스 클럭 신호 RsCk0의 클럭 주파수를 저하시키기 위한 동작의 일례이다. 리퀘스트 신호 RqMux0으로부터 리퀘스트로서 ID값 2, 레스펀스 클럭 재개 커맨드가 다중화된 리퀘스트 ReqStart2가 메모리 칩 M0에 입력된다.
메모리 칩 M0은 리퀘스트 ReqStart2를 자신의 리퀘스트 큐 제어 회로 RqCT 내의 리퀘스트 큐에 저장한다(Step2). 그 후, 리퀘스트 큐 제어 회로 RqCT 내의 ID 비교 회로는 리퀘스트 ReqStart2에 포함되는 ID값 2와 자신의 ID 레지스터의 값 2를 비교한다. 비교 결과는 일치하기 때문에, 리퀘스트 ReqDIV4를 자신에의 리퀘스트라고 판단한다. 리퀘스트 큐 제어 회로 RqCT는 레스펀스 클럭 제어 회로 RsCkC 내의 클럭 분주 회로 Div2에 리퀘스트 ReqStart2를 송신한다(Step2). 클럭 분주 회로 Div3은, 리퀘스트 ReqStart2에 따라, 서서히 클럭 주파수를 높이고, 최종적으로, 리퀘스트 클럭 신호 RqCk0과 동등한 주파수를 갖는 클럭을, 클럭 ck3 및 레스펀스 클럭 신호 RsCK0으로부터 출력한다(Step3).
레스펀스 클럭 신호 RsCK0의 클럭 주파수가, 원하는 주파수로 변경된 후, 클럭 분주 회로 Div2는 레스펀스 스케줄 회로 SCH를 통하여, 레스펀스 신호 RsMux0으로부터, ID값 2 및 레스펀스 클럭 재개 완료 정보를 정보 처리 장치 CPU_CHIP에 송신한다(Step4). 상기는 레스펀스 클럭 신호 RsCk0에 대한 클럭 제어 방법에 대해서 설명했지만, 리퀘스트 클럭 신호 RqCk1에 대한 클럭 제어도 마찬가지로 행할 수 있는 것은 물론이다.
도 11은, 메모리 칩 M0이 장비하는 메모리 회로 MemVL의 회로 블록도의 일례이다. 메모리 회로 MemVL은, 커맨드 디코더 CmdDec, 제어 회로 Cont Logic, 로우 어드레스 버퍼 RAdd Lat, 컬럼 어드레스 버퍼 CAdd Lat, 리프레시 카운터 RefC, 온도계 Thmo, 라이트 데이터 버퍼 Wdata Lat, 리드 데이터 버퍼 RDataLat, 로우 디코더 RowDec, 컬럼 디코더 ColDec, 센스 앰프 SenseAmp, 데이터 제어 회로 DataCont, 메모리 뱅크 Bank0∼Bank7로 구성되어 있다. 메모리 회로 MemVL의 판독 동작을 설명한다.
리퀘스트 큐 RqQXI에 뱅크 어드레스 7, 로우 어드레스 5가 저장되어 있고, 뱅크 액티브 명령 BA가 커맨드 신호 command로부터, 뱅크 어드레스 7 및 로우 어드레스 5가, 어드레스 신호 Address로부터 메모리 회로 MemVL에 송신된다. 커맨드 디코더 CmdDeC는 뱅크 액티브 명령 BA를 해독하고, 제어 회로 Cont Logic이 로우 어드레스 버퍼 RaddLat에 뱅크 어드레스 7 및 로우 어드레스 5를 저장하도록 지시한다. 뱅크 어드레스 7 및 로우 어드레스 5는, 제어 회로 Cont Logic의 지시에 의해 로우 어드레스 버퍼 Radd에 저장된다. 로우 어드레스 버퍼 Radd에 저장된 뱅크 어드레스 7에 의해 메모리 뱅크 Bank7이 선택되고, 로우 어드레스 5는 메모리 뱅크 Bank7의 로우 디코더 RowDec에 입력된다. 그 후 메모리 뱅크 Bank7 내의 로우 어드레스 5에 접속되어 있는 메모리 셀이 활성화되어, 1kByte분의 데이터가 메모리 뱅크 Bank7 내의 센스 앰프 SenseAmp에 전송된다.
다음으로, 리퀘스트 큐 RqQXI에 8바이트 데이터 리드 명령 RD8, 뱅크 어드레 스 7, 컬럼 어드레스 63이 저장되어 있고, 8바이트 데이터 리드 명령 RD8이 커맨드 신호 command로부터, 뱅크 어드레스 7 및 컬럼 어드레스 63이, 어드레스 신호 Address로부터 메모리 회로 MemVL에 송신된다. 커맨드 디코더 CmdDeC는 8바이트 데이터 리드 명령 RD8을 해독하고, 제어 회로 Cont Logic이 컬럼 어드레스 버퍼 CAddLat에 뱅크 어드레스 7 및 컬럼 어드레스 63을 저장하도록 지시한다. 뱅크 어드레스 7 및 컬럼 어드레스 63은, 제어 회로 Cont Logic의 지시에 의해 컬럼 어드레스 버퍼 CAddLat에 저장된다.
컬럼 어드레스 버퍼 CaddLat에 저장된 뱅크 어드레스 7에 의해 메모리 뱅크 Bank7이 선택되고, 컬럼 어드레스 63은 메모리 뱅크 Bank7의 컬럼 디코더 ColDec에 입력된다. 그 후 메모리 뱅크 Bank7 내의 컬럼 어드레스 63을 개시 어드레스로 하여, 8바이트분의 데이터가, 데이터 제어 회로 DataCont를 통해서 리드 데이터 버퍼 RdataLat에 전송되어 저장된다. 그 후 판독된 8바이트분의 데이터는 레스펀스 큐 회로 RsQo에 전송된다.
다음으로, 메모리 회로 MemVL의 기입 동작을 설명한다. 리퀘스트 큐 RqQXI에 8바이트 데이터 라이트 명령 WT8, 뱅크 어드레스 7, 컬럼 어드레스 127이 저장되어 있고, 8바이트 데이터 라이트 명령 RD8이 커맨드 신호 command로부터, 뱅크 어드레스 7 및 컬럼 어드레스 127이, 어드레스 신호 Address로부터, 8바이트 데이터가 라이트 데이터 신호 WData로부터 메모리 회로 MemVL에 송신된다. 커맨드 디코더 CmdDeC는 8바이트 데이터 라이트 명령 WT8을 해독하고, 제어 회로 Cont Logic이 컬럼 어드레스 버퍼 CAddLat에 뱅크 어드레스 7 및 컬럼 어드레스 127을 저장하 도록, 라이트 데이터 버퍼 Wdata Lat에 8바이트분의 라이트 데이터를 저장하도록 지시한다. 뱅크 어드레스 7 및 컬럼 어드레스 127은, 제어 회로 Cont Logic의 지시에 의해 컬럼 어드레스 버퍼 CAddLat에 저장된다. 8바이트분의 라이트 데이터는 제어 회로 Cont Logic의 지시에 의해 라이트 데이터 버퍼 Wdata Lat에 저장된다.
컬럼 어드레스 버퍼 CaddLat에 저장된 뱅크 어드레스 7에 의해 메모리 뱅크 Bank7이 선택되고, 컬럼 어드레스 127은 메모리 뱅크 Bank7의 컬럼 디코더 ColDec에 입력된다. 그 후 메모리 뱅크 Bank7 내의 컬럼 어드레스 127을 개시 어드레스로 하여, 8바이트분의 데이터가, 라이트 데이터 버퍼 Wdata Lat로부터, 데이터 제어 회로 DataCont를 통하여, 메모리 뱅크 Bank7 내의 센스 앰프 SenseAmp에 전송되어, 메모리 뱅크 Bank7 내의 로우 어드레스 5에 접속되어 활성화되어 있는 메모리 셀에 기입된다.
다음으로, 리프레시 동작에 대해서 설명한다. 메모리 회로 MemVL은 휘발성 메모리이기 때문에, 데이터 보유를 위해 정기적으로 리프레시 동작을 행할 필요가 있다. 리퀘스트 큐 RqQXI에 저장되어 있는 리프레시 명령 REF가, 커맨드 신호 command로부터 입력된다. 커맨드 디코더 CmdDeC는, 리프레시 명령 REF를 해독하고, 제어 회로 Cont Logic이 리프레시 카운터 RefC에 리프레시 동작을 행하도록 지시한다. 리프레시 카운터 RefC는 제어 회로 Cont Logic의 지시에 의해, 리프레시 동작을 행한다.
다음으로, 셀프 리프레시 동작에 대해서 설명한다. 메모리 회로 MemVL에의 리퀘스트가 장기간 발생하지 않을 때에는, 셀프 리프레시 상태로 동작 모드를 절환 하여, 메모리 회로 MemVL 스스로가 리프레시 동작을 행할 수 있다.
리퀘스트 큐 RqQXI에 저장되어 있는 셀프 리프레시·엔트리 명령 SREF가, 커맨드 신호 command로부터 입력된다. 커맨드 디코더 CmdDeC는, 셀프 리프레시·엔트리 명령 SREF를 해독하고, 제어 회로 Cont Logic은 전체 회로를 셀프 리프레시 상태로 동작 모드를 절환한다. 또한, 리프레시 카운터 RefC에, 자동적으로, 정기적으로 셀프 리프레시 동작을 행하도록 지시한다. 리프레시 카운터 RefC는 제어 회로 Cont Logic의 지시에 의해, 자동적으로, 정기적으로 셀프 리프레시 동작을 행한다.
이 때의 셀프 리프레시 동작에서는, 온도에 따라 셀프 리프레시의 빈도를 변화시킬 수 있다.
일반적으로, 휘발성 메모리에서는, 온도가 높은 경우에는 데이터 보유 시간이 짧아지고, 낮은 경우에는 길어진다고 하는 성질이 있다. 따라서, 온도계에서 온도를 검지하여, 온도가 높은 경우에는, 셀프 리프레시의 주기를 짧게 하고, 온도가 낮은 경우에는 셀프 리프레시의 주기를 길게 하여, 셀프 리프레시 동작을 행한다. 이에 의해, 불필요한 셀프 리프레시 동작을 삭감할 수 있어 저전력화를 도모할 수 있다.
셀프 리프레시 상태를 빠져나가기 위해서는, 셀프 리프레시·해제 명령 SREFX를, 커맨드 신호 command로부터 입력함으로써 실현할 수 있다. 셀프 리프레시 상태를 빠져나간 후의, 데이터 보유 동작은 리프레시 명령 REF에 의해 행해진다.
<메모리 칩 M1의 설명>
도 12는, 메모리 칩 M1의 구성도의 일례이다. 메모리 칩 M1은, 리퀘스트 인터페이스 회로 ReqIF와, 레스펀스 인터페이스 회로 ResIF와, 초기화 회로 INIT1, 메모리 회로 MemNV1로 구성되어 있다. 리퀘스트 인터페이스 회로 ReqIF는 리퀘스트 클럭 제어 회로 RqCkC 및, 리퀘스트 큐 제어 회로 RqCT로 구성된다. 리퀘스트 클럭 제어 회로 RqCkC는 클럭 드라이버 Drv1 및 클럭 분주 회로 Div1로 구성된다. 리퀘스트 큐 제어 회로 RqCT는 리퀘스트 큐 회로 RqQI, 리퀘스트 큐 회로 RqQXI, 리퀘스트 큐 회로 RqQXO, ID 레지스터 회로 dstID, ID 비교 회로 CPQ로 구성된다. 레스펀스 인터페이스 회로 ResIF는 레스펀스 클럭 제어 회로 RsCkC 및, 레스펀스 큐 제어 회로 RsCT로 구성된다.
레스펀스 클럭 제어 회로 RsCkC는 클럭 드라이버 Drv2 및 클럭 분주 회로 Div2로 구성된다. 레스펀스 큐 제어 회로 RsCT는, 레스펀스 큐 회로 RsQo, 레스펀스 큐 회로 RsQp, 스테이터스 레지스터 회로 STReg, 레스펀스 스케줄 회로 SCH로 구성된다. 메모리 회로 MemNV1은, 특별히 한정하지 않지만, 불휘발성 메모리로서, NOR형 플래시 메모리 셀을 이용한 NOR형 플래시 메모리이다. 메모리 회로 MemNV1에는, 부트 디바이스 ID값 BotID 및 종단 디바이스 ID값 EndI가 저장된다. 메모리 회로 MemNV1 및 초기화 회로 INIT1 이외의, 메모리 칩 1을 구성하는 회로 및 동작은, 도 4의 메모리 칩 M0과 동등하다.
다음으로, 본 메모리 칩 M1의 동작을 설명한다. 우선, 전원 투입 시의 동작에 대해서 설명한다. 메모리 칩 M1에 전원이 투입되면 초기화 회로 INIT1은 메모 리 칩 M1의 초기화를 행한다. 메모리 칩 M1은, 부트 디바이스 인식 신호 Bsig가 접지(gnd)되어 있으므로, 자기 자신이 부트 디바이스인 것을 인식하고, 자기의 메모리 회로 MemNV1이 보유하고 있는 부트 디바이스 ID값 1을 ID 레지스터 dstID에 설정하고, 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에서의, 레스펀스 우선 순위의 제어를 설명한다.
도 13에서는 메모리 칩 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가 행하는 동적 레스펀스 우선 순위의 제어는, 도 8에서 도시한 동작과 동등하다. 또한, 리퀘스트 클럭 신호 RqCk2 및 레스펀스 클럭 신호 RsCk1의 클럭 제어 방법은, 도 10에서 도시한 클럭 제어 방법과 마찬가지이다.
<메모리 칩 M2의 설명>
도 14는, 메모리 칩 M2의 구성도의 일례이다. 메모리 칩 M2는, 리퀘스트 인터페이스 회로 ReqIF와, 레스펀스 인터페이스 회로 ResIF와, 초기화 회로 INIT2, 메모리 회로 MemNV2로 구성되어 있다. 리퀘스트 인터페이스 회로 ReqIF는 리퀘스트 클럭 제어 회로 RqCkC 및, 리퀘스트 큐 제어 회로 RqCT로 구성된다. 리퀘스트 클럭 제어 회로 RqCkC는 클럭 드라이버 Drv1 및 클럭 분주 회로 Div1로 구성된다. 리퀘스트 큐 제어 회로 RqCT는 리퀘스트 큐 회로 RqQI, 리퀘스트 큐 회로 RqQXI, 리퀘스트 큐 회로 RqQXO, ID 레지스터 회로 dstID, ID 비교 회로 CPQ로 구성된다. 레스펀스 인터페이스 회로 ResIF는 레스펀스 클럭 제어 회로 RsCkC 및, 레스펀스 큐 제어 회로 RsCT로 구성된다. 레스펀스 클럭 제어 회로 RsCkC는 클럭 드라이버 Drv2 및 클럭 분주 회로 Div2로 구성된다.
레스펀스 큐 제어 회로 RsCT는, 레스펀스 큐 회로 RsQo, 레스펀스 큐 회로 RsQp, 스테이터스 레지스터 회로 STReg, 레스펀스 스케줄 회로 SCH로 구성된다. 메모리 회로 MemNV2는, 특별히 한정하지 않지만, 불휘발성 메모리로서, NAND형 플래시 메모리 셀을 이용한 NAND형 플래시 메모리이다. 메모리 회로 MemNV2 및 초기화 회로 INIT2 이외의, 메모리 칩 1을 구성하는 회로 및 동작은, 도 4의 메모리 칩 M0과 동등하다.
다음으로, 본 메모리 칩 M2의 동작을 설명한다. 우선, 전원 투입 시의 동작에 대해서 설명한다. 메모리 칩 M2에 전원이 투입되면 초기화 회로 INIT2는 메모리 칩 M2의 초기화를 행한다. 우선, ID 레지스터 회로 dstID가 갖는 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에서의, 레스펀스 우선 순위의 제어를 설명한다. 도 15에서는 메모리 칩 M2가 장비하는 레스펀스 스케줄 회로 SCH가 행하는 동적 레스펀스 우선 순위의 제어를 도시한다. 도 1에 도시한 바와 같이, 메모리 칩 M2가 직렬 접속의 최종 칩인 경우에는, 메모리 칩 M2에는 메모리 칩 M0 및 메모리 칩 M1 의 레스펀스는 발생하지 않는다.
그 때문에, 메모리 칩 M2의 레스펀스에 대해서만 레스펀스의 우선 순위가 부여된다. 따라서, 전원 투입 직후의 초기 설정(Initial)에서, 레스펀스 큐 회로 RsQO에 엔트리되는 메모리 칩 M2의 레스펀스의 우선 순위(PRsQO(M2))는 1로 설정된 후에는, 변화되지 않는다. 레스펀스 큐 회로 RsQo에 엔트리되는 메모리 회로 NV2의 레스펀스의 우선 순위(PRsQO(M2))를 변경하지 않기 때문에, 레스펀스 큐 회로 RsQo에 엔트리되는 메모리 칩 M2로부터의 레스펀스의 레스펀스 우선 순위를 변경하기 위한 레스펀스 출력 횟수는, 전원 투입 직후의 초기 설정(Initial)에서, 특별히 한정하지 않지만, 0회로 설정되어, 변경할 필요가 없다. 또한, 레스펀스 클럭 신호 RsCk2의 클럭 제어 방법은, 도 10에서 도시한 클럭 제어 방법과 마찬가지이다.
도 16은, 정보 처리 장치 CPU_CHIP으로부터 메모리 모듈 MEM에 송신된 리퀘스트에 포함되는 ID값이 메모리 칩 M0, M1 및 M2의 ID 레지스터값 중 어느 것에도 일치하지 않아, 에러가 발생한 경우의 동작의 일례를 도시하는 플로우차트이다. 정보 처리 장치 CPU_CHIP으로부터 리퀘스트와 ID값이 메모리 모듈 MEM에 송신된다(Step1). 리퀘스트 인에이블 신호 RqEn0이 Low이면(Step2), 정보 처리 장치 CPU_CHIP으로부터의 리퀘스트는 메모리 칩 M0의 리퀘스트 큐 회로 RqQI에 저장되지 않는다. 리퀘스트 인에이블 신호 RqEn0이 High이면(Step2), 메모리 칩 M0의, 리퀘스트 큐 회로 RqQI에 저장된다(Step3).
그 후, ID 비교 회로 CPQ는, 리퀘스트 큐 회로 RqQI에 엔트리된 리퀘스트에 포함되는 ID값과 ID 레지스터 회로 dstID에 보유되어 있는 ID값을 비교한 다(Step4). 비교 결과가 일치하면, 리퀘스트 큐 회로 RqQI에 엔트리된 리퀘스트는 리퀘스트 큐 회로 RqQXI에 전송된다(Step5). 비교 결과가 불일치인 경우에는, 메모리 칩 M0이 최종단의 메모리 칩인지의 여부를 체크한다(Step6). 메모리 칩 M0이 최종단의 디바이스가 아니므로, 리퀘스트 큐 회로 RqQI에 엔트리된 리퀘스트는 리퀘스트 큐 회로 RqQXO에 전송되고, 또한, 다음의 메모리 칩 M1에 전송된다(Step9). 메모리 칩 M1에서는, Step1부터 Step9를 반복한다. 메모리 칩 M2에서는, Step1부터 Step4를 행한다. Step4에서의 비교 결과가 일치하면, 리퀘스트 큐 회로 RqQI에 엔트리된 리퀘스트는 리퀘스트 큐 회로 RqQXI에 전송된다(Step5). 비교 결과가 불일치인 경우에는, 메모리 칩 M0이 최종단의 메모리 칩인지의 여부를 체크한다(Step6).
메모리 칩 M2는 최종단의 메모리 칩이기 때문에, 정보 처리 장치 CPU_CHIP으로부터 메모리 모듈 MEM에 송신된 리퀘스트에 포함되는 ID값이 메모리 칩 M0, M1 및 M2의 ID 레지스터값 중 어느 것에도 일치하지 않아, ID 에러로 된다(Step7). ID 에러는, 최종단의 메모리 칩 M2로부터 메모리 칩 M1 및 M2를 경유하여 정보 처리 장치 CPU_CHIP에 송신된다.
다음으로, 메모리 모듈 MEM에 입력되는 리퀘스트의 동작 파형에 대해서 설명한다. 도 17 및 도 18은, 정보 처리 장치 CPU_CHIP이, 메모리 모듈 MEM에 송신하는 리퀘스트의 동작 파형 및 메모리 모듈 MEM으로부터 정보 처리 장치 CPU_CHIP에의 레스펀스의 동작 파형의 일례이다.
도 17의 (a)는, 메모리 칩 M0에의 뱅크 액티브 명령 BA를 포함하는 뱅크 액 티브 리퀘스트이다. 특별히 한정하지 않지만, 뱅크 액티브 리퀘스트는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID2, 뱅크 액티브 명령 BA, 어드레스 AD20 및 AD21이 다중화되어 메모리 칩 M0에 입력된다. 어드레스 AD20 및 AD21에는, 뱅크 어드레스 및 로우 어드레스가 포함된다. 본 뱅크 액티브 리퀘스트에 의해, 메모리 칩 M0 내의 메모리 뱅크 중 1개가 활성화된다.
도 17의 (b)는, 메모리 칩 M0에의 4바이트 데이터 리드 명령 RD4를 포함하는 리드 리퀘스트이다. 특별히 한정하지 않지만, 리드 리퀘스트는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID2, 리드 명령 RD4, 어드레스 AD22 및 AD22가 다중화되어 메모리 칩 M0에 입력된다. 어드레스 AD22 및 AD23에는, 뱅크 어드레스 및 컬럼 어드레스가 포함된다. 본 리드 리퀘스트에 의해, 메모리 칩 M0 내의 활성화되어 있는 메모리 뱅크로부터 데이터가 판독된다.
도 17의 (c)는, 메모리 칩 M0의 ID값 및 메모리 칩 M0으로부터 판독된 데이터를 포함하는 리드 레스펀스이다. 특별히 한정하지 않지만, 리드 레스펀스는, 레스펀스 인에이블 신호 RsEN0이 High일 때에, 레스펀스 클럭 신호 RsCk0에 동기하여, 메모리 칩 M0의 ID값 ID2, 4바이트분의 데이터 D0, D1, D2 및 D3이 다중화되어, 정보 처리 장치 CPU_CHIP에 입력된다.
도 17의 (d)는, 메모리 칩 M0에의 2바이트 데이터의 기입 명령 WT2를 포함하는 라이트 리퀘스트이다. 특별히 한정하지 않지만, 라이트 리퀘스트는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID2, 라이트 명령 WT2, 어드레스 AD24 및 AD25가 다중화되어 메모리 칩 M0에 입력된다. 어드레스 AD22 및 AD23에는, 뱅크 어드레스 및 컬럼 어드레스가 포함된다. 본 라이트 리퀘스트에 의해, 메모리 칩 M0 내의 활성화되어 있는 메모리 뱅크에 데이터가 기입된다.
도 17의 (e)는, 메모리 칩 M0에의 프리차지 명령 PRE를 포함하는 프리차지 리퀘스트이다. 특별히 한정하지 않지만, 프리차지 리퀘스트는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID2, 프리차지 명령 PRE, 어드레스 AD28이 다중화되어 메모리 칩 M0에 입력된다. 어드레스 AD28에는, 뱅크 어드레스가 포함된다. 본 프리차지 리퀘스트에 의해, 메모리 칩 M0 내의 메모리 뱅크 중 1개가 비활성화된다.
도 18의 (a)는, 메모리 칩 M0에의 오토 리프레시 명령 REF를 포함하는 리프레시 리퀘스트이다. 특별히 한정하지 않지만, 리프레시 리퀘스트는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID2, 리프레시 명령 REF가 다중화되어 메모리 칩 M0에 입력된다. 본 리프레시 리퀘스트 REF에 의해, 메모리 칩 M0에 대하여 리프레시 동작이 행해진다. 도 18의 (b)는, 메모리 칩 M0에의 셀프 리프레시 명령 SREF를 포함하는 셀프 리프레시 엔트리 리퀘스트이다. 특별히 한정하지 않지만, 셀프 리프레시 엔트리 리퀘스트는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID값 ID2, 셀프 리프레시 엔트리 명령 SREF 및 전체 메모 리 뱅크 지정 ALL, 자동 온도 보상 무효 지정 ATInv가 다중화되어, 메모리 칩 M0에 입력된다. 본 셀프 리프레시 엔트리 리퀘스트에 의해, 메모리 칩 M0은, 셀프 리프레시 상태로 되어, 메모리 칩 M0 자신이 내부에서 자동적으로, 전체 메모리 뱅크에 대한 리프레시 동작을 행한다.
도 18의 (c)는, 메모리 칩 M0에의 셀프 리프레시 명령 SREF를 포함하는 셀프 리프레시 엔트리 리퀘스트이다. 특별히 한정하지 않지만, 셀프 리프레시 엔트리 리퀘스트는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID2, 셀프 리프레시 엔트리 명령 SREF 및 전체 메모리 뱅크 지정 BK7 및 자동 온도 보상 무효 지정 ATInv가 다중화되어 메모리 칩 M0에 입력된다. 본 셀프 리프레시 엔트리 리퀘스트에 의해, 메모리 칩 M0은, 셀프 리프레시 상태로 되어, 메모리 칩 M0 자신이 내부에서 자동적으로, 메모리 뱅크 7에 대해서만 리프레시 동작을 행한다.
도 18의 (d)는, 메모리 칩 M0에의 셀프 리프레시 명령 SREF를 포함하는 셀프 리프레시 엔트리 리퀘스트이다. 특별히 한정하지 않지만, 셀프 리프레시 엔트리 리퀘스트는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID2, 셀프 리프레시 엔트리 명령 SREF 및 전체 메모리 뱅크 지정 BK7 및 자동 온도 보상 유효 지정 ATVld가 다중화되어 메모리 칩 M0에 입력된다. 본 셀프 리프레시 엔트리 리퀘스트에 의해, 메모리 칩 M0은, 셀프 리프레시 상태로 되어, 메모리 칩 M0 자신이 내부에서 자동적으로, 메모리 뱅크 7에 대해서만 리프레시 동작을 행한다. 또한, 자동 온도 보상 유효 지정 ATVld가 있기 때문에, 특별히 한정하지 않지만 메모리 칩 M0의 내부에 내장된 온도 센서에서 주위 온도를 검지하고, 온도에 따라 셀프 리프레시의 빈도를 자동적으로 조절할 수 있다.
도 18의 (e)는, 메모리 칩 M0에의 셀프 리프레시 해제 명령 SREX를 포함하는 셀프 리프레시 Exit 리퀘스트이다. 특별히 한정하지 않지만, 셀프 리프레시 Exit 리퀘스트는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID값 ID2, 셀프 리프레시 해제 명령 SREX가 다중화되어, 메모리 칩 M0에 입력된다. 본 셀프 리프레시 Exit 리퀘스트에 의해, 메모리 칩 M0은, 셀프 리프레시 상태로부터 빠져나간다.
도 19의 (a)는, 메모리 칩 M0에의 파워 다운 엔트리 명령 PDE를 포함하는 파워 다운 엔트리 리퀘스트이다. 특별히 한정하지 않지만, 파워 다운 엔트리 리퀘스트 PDE는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID2, 파워 다운 엔트리 명령 PDE가 다중화되어 메모리 칩 M0에 입력된다. 본 파워 다운 엔트리 리퀘스트에 의해, 메모리 칩 M0은, 파워 다운 상태로 되어, 메모리 칩 M0의 내부 클럭을 비활성으로 한다. 본 실시예에서는, 메모리 칩 M0에의 파워 다운 엔트리 리퀘스트를 설명했지만, 파워 다운 엔트리 명령은, 메모리 칩의 ID값을 변화시킴으로써, 메모리 모듈 MEM 내의 모든 메모리 칩에 대하여 적용할 수 있는 것은 물론이다.
특별히 한정하지 않지만, 메모리 칩 M1의 ID값 ID1 및 파워 다운 엔트리 명령 PDE를 다중화한 리퀘스트는, 메모리 칩 M0을 통해서 메모리 칩 M1에 송신되어, 메모리 칩 M1의 내부 클럭을 비활성으로 한다. 또한, 특별히 한정하지 않지만, 메모리 칩 M2의 ID값 ID2 및 파워 다운 엔트리 명령 PDE를 다중화한 리퀘스트는, 메모리 칩 M0 및 M1을 통해서 메모리 칩 M2에 송신되어, 메모리 칩 M2의 내부 클럭을 비활성으로 한다.
도 19의 (b)는, 메모리 칩 M0에의 파워 다운 해제 명령 PDX를 포함하는 파워 다운 해제 리퀘스트이다. 특별히 한정하지 않지만, 파워 다운 해제 리퀘스트는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID2, 파워 다운 해제 명령 PDX가 다중화되어 메모리 칩 M0에 입력된다. 본 파워 다운 해제 리퀘스트에 의해, 메모리 칩 M0은, 파워 다운 상태로부터 해제된다. 본 실시예에서는, 메모리 칩 M0에의 파워 다운 해제 리퀘스트를 설명했지만, 파워 다운 해제 리퀘스트에 포함되는 ID값을 변화시킴으로써 메모리 모듈 MEM 내의 모든 메모리 칩에 대하여 적용할 수 있는 것은 물론이다.
도 19의 (c)는, 메모리 칩 M0에의 딥 파워 다운 엔트리 명령 DPDE를 포함하는 딥 파워 다운 엔트리 리퀘스트이다. 특별히 한정하지 않지만, 딥 파워 다운 엔트리 리퀘스트 DPDE는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID2, 딥 파워 다운 엔트리 명령 PDE가 다중화되어 메모리 칩 M0에 입력된다. 본 딥 파워 다운 엔트리 리퀘스트에 의해, 메모리 칩 M0은, 딥 파워 다운 상태로 되어, 메모리 칩 M0의 내부 클럭을 비활성으로 한 후에 또한, 리프레시용의 내부 클럭 회로도 정지한다. 본 실시예에서는, 메모리 칩 M0에의 파워 다운 엔트리 리퀘스트를 설명했지만, 파워 다운 엔트리 리퀘 스트에 포함되는 메모리 칩의 ID값을 변화시킴으로써, 메모리 모듈 MEM 내의 각각의 메모리 칩에 대하여 적용할 수 있는 것은 물론이다.
도 19의 (d)는, 메모리 칩 M0에의 딥 파워 다운 해제 명령 DPDX를 포함하는 딥 파워 다운 해제 리퀘스트이다. 특별히 한정하지 않지만, 딥 파워 다운 해제 리퀘스트는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID2, 딥 파워 다운 해제 명령 PDX가 다중화되어 메모리 칩 M0에 입력된다. 본 딥 파워 다운 해제 리퀘스트에 의해, 메모리 칩 M0은, 딥 파워 다운 상태로부터 해제된다. 본 실시예에서는, 메모리 칩 M0에의 딥 파워 다운 해제 리퀘스트를 설명했지만, 딥 파워 다운 해제 리퀘스트에 포함되는 ID값을 변화시킴으로써 메모리 모듈 MEM 내 각각의 메모리 칩에 대하여 적용할 수 있는 것은 물론이다.
도 19의 (e)는, 메모리 칩 M0에의 스테이터스 레지스터 리드 명령 STRD를 포함하는 스테이터스 레지스터 리드 리퀘스트이다. 특별히 한정하지 않지만, 스테이터스 레지스터 리드 리퀘스트는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID2, 스테이터스 레지스터 리드 명령 STRD, 레스펀스 엔트리수 지정 정보 QCH가 다중화되어 메모리 칩 M0에 입력된다. 본 스테이터스 레지스터 리드 명령 STRD 및 레스펀스 엔트리수 지정 정보 QCH에 의해, 메모리 칩 M0은, 레스펀스 큐에 엔트리되어 있는 레스펀스수를 정보 처리 장치 CPU에 송신한다.
도 20의 (a)는, 메모리 칩 M1에의 4바이트 데이터 리드 명령 RD4를 포함하는 리드 리퀘스트이다. 특별히 한정하지 않지만, 리드 리퀘스트는, 메모리 칩 M0을 통하여, 리퀘스트 인에이블 신호 RqEN1이 High일 때에, 리퀘스트 클럭 신호 RqCk1에 동기하여, 메모리 칩 M1의 ID값 ID1, 리드 명령 RD4, 어드레스 AD10, AD11, AD12 및 AD13이 다중화되어 메모리 칩 M1에 입력된다. 본 리드 리퀘스트에 의해, 메모리 칩 M1 내의 메모리 회로 NV1로부터 데이터가 판독된다.
도 20의 (b)는, 메모리 칩 M1의 ID값 및 메모리 칩 M1로부터 판독된 데이터를 포함하는 리드 레스펀스이다. 특별히 한정하지 않지만, 리드 레스펀스는, 레스펀스 인에이블 신호 RsEN1이 High일 때에, 레스펀스 클럭 신호 RsCk1에 동기하여, 메모리 칩 M1의 ID값 ID1, 4바이트분의 데이터 D0, D1, D2 및 D3이 다중화되어, 메모리 칩 M0에 송신되고, 또한 정보 처리 장치 CPU_CHIP에 송신된다.
도 20의 (c)는, 메모리 칩 M2에의 512바이트 데이터 리드 명령 RD512를 포함하는 리드 리퀘스트이다. 특별히 한정하지 않지만, 리드 리퀘스트는, 메모리 칩 M0 및 M1을 통하여, 리퀘스트 인에이블 신호 RqEN2가 High일 때에, 리퀘스트 클럭 신호 RqCk2에 동기하여, 메모리 칩 M2의 ID값 ID3, 리드 명령 RD512, 어드레스 AD30, AD31, AD32 및 AD33이 다중화되어 메모리 칩 M3에 입력된다. 본 리드 리퀘스트에 의해, 메모리 칩 M3 내의 메모리 회로 NV2로부터 512바이트분의 데이터가 판독된다.
도 20의 (d)는, 메모리 칩 M2의 ID값 ID3 및 메모리 칩 M2로부터 판독된 데이터를 포함하는 리드 레스펀스이다. 특별히 한정하지 않지만, 리드 레스펀스는, 레스펀스 인에이블 신호 RsEN2가 High일 때에, 레스펀스 클럭 신호 RsCk2에 동기하 여, 32바이트분의 데이터마다 메모리 칩 M2의 ID값 ID1이 다중화되어, 차례차례로, 메모리 칩 M1에 송신되고, 또한 M0에 송신되며, 마지막으로 정보 처리 장치 CPU_CHIP에 송신된다. 최종적으로 512바이트분의 데이터가 정보 처리 장치 CPU_CHIP에 송신된다.
도 21의 (a)는, 메모리 칩 M1에의 1바이트 데이터의 기입 명령 WT1을 포함하는 라이트 리퀘스트이다. 특별히 한정하지 않지만, 라이트 리퀘스트는, 메모리 칩 M0을 통하여, 리퀘스트 인에이블 신호 RqEN1이 High일 때에, 리퀘스트 클럭 신호 RqCk1에 동기하여, 메모리 칩 M1의 ID값 ID1, 라이트 명령 WT1, 어드레스 AD10, AD11, AD12 및 AD13, 기입 데이터 D0이 다중화되어 메모리 칩 M1에 입력되는 본 라이트 리퀘스트에 의해, 메모리 칩 M1 내의 메모리 회로 NV1에 1바이트분의 데이터가 기입된다.
도 21의 (b0) 및 (b1)은, 메모리 칩 M2에의 512바이트 데이터의 기입 명령 WT512를 포함하는 라이트 리퀘스트이다. 특별히 한정하지 않지만, 라이트 리퀘스트는, 메모리 칩 M0 및 M1을 통하여, 리퀘스트 인에이블 신호 RqEN2가 High일 때에, 리퀘스트 클럭 신호 RqCk2에 동기하여, 메모리 칩 M2의 ID값 ID3, 라이트 명령 WT512, 어드레스 AD30, AD31, AD32 및 AD33, 512바이트분의 기입 데이터 D0∼D511이 다중화되어 메모리 칩 M2에 입력된다. 본 라이트 리퀘스트에 의해, 메모리 칩 M2내의 메모리 회로 NV2에 512바이트분의 데이터가 기입된다.
도 22의 (a)는, 메모리 칩 M0의 레스펀스 클럭 RsCk0의 드라이브 능력을 변경하기 위한 레스펀스 클럭 드라이브 능력 지정 명령 DPDE를 포함하는 레스펀스 클 럭 드라이브 능력 지정 리퀘스트이다. 특별히 한정하지 않지만, 레스펀스 클럭 드라이브 능력 지정 리퀘스트는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID2, 레스펀스 클럭 드라이브 능력 지정 명령 DPDE 및 드라이브 능력값 DrvC4가 다중화되어 메모리 칩 M0에 입력된다. 본 리퀘스트에 의해, 메모리 칩 M0의 레스펀스 클럭 신호 RsCk0의 드라이브 능력이, 기준 드라이브 능력의 4분의 1로 설정된다. 본 실시예에서는, 메모리 칩 M0의 레스펀스 클럭 RsCk0의 드라이브 능력을 변경하는 경우에 대해서 설명했지만, 레스펀스 클럭 드라이브 능력 지정 리퀘스트에 포함되는 메모리 칩의 ID값을 변화시킴으로써, 메모리 모듈 MEM 내의 각각의 메모리 칩의 레스펀스 클럭에 대한 드라이브 능력을 변경할 수 있는 것은 물론이다.
도 22의 (b)는, 메모리 칩 M0으로부터 출력되는 레스펀스 클럭 신호 RsCk0 이외의 신호에서, 레스펀스 클럭 신호 RsCk0과 동일 출력 방향의 신호(RsMux0 및 RqEN1)의 드라이브 능력을 변경하기 위한 업스트림 신호 드라이브 능력 지정 명령 Updr을 포함하는 업스트림 신호 드라이브 능력 지정 리퀘스트이다. 특별히 한정하지 않지만, 업스트림 신호 드라이브 능력 지정 리퀘스트는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID2, 업스트림 신호 드라이브 능력 지정 명령 Updr 및 드라이브 능력값 DrvC2가 다중화되어 메모리 칩 M0에 입력된다. 본 리퀘스트에 의해, 메모리 칩 M0으로부터 출력되는 레스펀스 클럭 신호 RsCk0 이외의 신호에서, 레스펀스 클럭 신호 RsCk0과 동일 출력 방향의 신호(RsMux0 및 RqEN1) 레스펀스 신호의 드라이브 능력이, 기준 드라이브 능력의 2분의 1로 설정된다. 본 실시예에서는, 메모리 칩 M0의 경우에 대해 설명했지만, 업스트림 신호 드라이브 능력 지정 리퀘스트에 포함되는 메모리 칩의 ID값을 변화시킴으로써, 메모리 모듈 MEM 내의 각각의 메모리 칩의 업스트림 신호에 대한 드라이브 능력을 변경할 수 있는 것은 물론이다.
도 22의 (c)는, 메모리 칩 M0의 리퀘스트 클럭 RqCk1의 드라이브 능력을 변경하기 위한 리퀘스트 클럭 드라이브 능력 지정 명령 Rsckdr을 포함하는 리퀘스트 클럭 드라이브 능력 지정 리퀘스트이다. 특별히 한정하지 않지만, 리퀘스트 클럭 드라이브 능력 지정 리퀘스트는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID2, 리퀘스트 클럭 드라이브 능력 지정 명령 Rsckdr 및 드라이브 능력값 DrvC8이 다중화되어, 메모리 칩 M0에 입력된다. 본 리퀘스트에 의해, 메모리 칩 M0의 리퀘스트 클럭 신호 RsCk1의 드라이브 능력이, 기준 드라이브 능력의 8분의 1로 설정된다. 본 실시예에서는, 메모리 칩 M0의 리퀘스트 클럭 RsCk1의 드라이브 능력을 변경하는 경우에 대해서 설명했지만, 리퀘스트 클럭 드라이브 능력 지정 리퀘스트에 포함되는 메모리 칩의 ID값을 변화시킴으로써, 메모리 모듈 MEM 내의 각각의 메모리 칩의 리퀘스트 클럭에 대한 드라이브 능력을 변경할 수 있는 것은 물론이다.
도 22의 (d)는, 메모리 칩 M0으로부터 출력되는 리퀘스트 클럭 신호 RsCk0 이외의 신호에서, 리퀘스트 클럭 신호 RqCkq와 동일 출력 방향의 신호(RqMux1 및 RsEN0)의 드라이브 능력을 변경하기 위한 다운스트림 신호 드라이브 능력 지정 명령 Dwndr을 포함하는 다운스트림 신호 드라이브 능력 지정 리퀘스트이다. 특별히 한정하지 않지만, 다운스트림 신호 드라이브 능력 지정 리퀘스트는, 리퀘스트 인에이블 신호 RqEN0이 High일 때에, 리퀘스트 클럭 신호 RqCk0에 동기하여, 메모리 칩 M0의 ID2, 다운스트림 신호 드라이브 능력 지정 명령 Updr 및 드라이브 능력값 DrvC2가 다중화되어 메모리 칩 M0에 입력된다. 본 리퀘스트에 의해, 메모리 칩 M0으로부터 출력되는 리퀘스트 클럭 신호 RqCk1 이외의 신호에서, 리퀘스트 클럭 신호 RqCk1과 동일 출력 방향의 신호(RqMux1 및 RsEN0) 리퀘스트 신호의 드라이브 능력이, 기준 드라이브 능력과 동등하게 설정된다. 본 실시예에서는, 메모리 칩 M0의 경우에 대해 설명했지만, 다운스트림 신호 드라이브 능력 지정 리퀘스트에 포함되는 메모리 칩의 ID값을 변화시킴으로써, 메모리 모듈 MEM 내의 각각의 메모리 칩의 다운스트림 신호에 대한 드라이브 능력을 변경할 수 있는 것은 물론이다.
도 23은 정보 처리 장치 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으로부터 출력되는 시간은, 약 15ns이다. 한편, 리퀘스트 ReqNRD2가 메모리 칩 M1의 리퀘스트 큐 RqQI에 입력되고, 이 리퀘스트에 대한 레스펀스 ResRD2가 레스펀스 신호 ResMux0으로부터 출력되는 시간은, 약 70ns이다. 그 때문에, 리퀘스트 ReqRD2가 리퀘스트 ReqNRD2 후에 입력되었음에도 불구하고, 먼저 출력할 수 있다. 본 실시예에서는 데이터 판독을 중심으로 설명했지만, 데이터의 기입 동작에서도 마찬가지의 동작을 행할 수 있는 것은 물론이다. 또한, 본 실시예에서는, 메모리 칩 M0과 M1의 데이터 전송 동작을 설명했지 만, M1과 그 밖의 메모리 칩에 대해서도 마찬가지의 데이터 전송 동작을 행하는 것은 물론이다.
이상 설명한 바와 같이, 리퀘스트의 입력 순서에 상관없이, 메모리 칩의 판독 시간이 서로 다른 경우라도, 빨리 판독할 수 있는 데이터는, 느리게 판독되는 데이터를 기다리지 않고, 바로 판독할 수 있기 때문에, 고속화가 가능하게 된다. 또한, 리퀘스트에 ID를 부가함으로써, 확실하게 요구처에 리퀘스트가 전송되고, 또한, 레스펀스에 ID를 부가함으로써, 리퀘스트의 입력 순서와, 판독 데이터의 순번이 서로 다른 경우라도, 정보 처리 장치 CPU_CHIP은 전송원의 메모리 칩을 알 수 있기 때문에, 정보 처리 장치 CPU_CHIP 및 메모리 칩의 직렬 접속에 의해, 접속 신호수를 적게 하면서도, 정보 처리 장치 CPU_CHIP은 원하는 처리를 실행할 수 있다.
[실시예 2]
도 24는, 본 발명의 제2 실시 형태이다. 정보 처리 장치 CPU_CHIP과 메모리 모듈 MEM24로 구성되는 정보 처리 시스템을 도시한 실시예이다.
메모리 모듈 MEM24는 다이내믹 랜덤 액세스 메모리 DRAM0 및 DRAM1, NOR형 플래시 메모리 NOR 및 NAND형 플래시 메모리로 구성된다.
정보 처리 장치 CPU_CHIP은, 도 1에서 도시한 것과 동등하다. 다이내믹 랜덤 액세스 메모리 DRAM0 및 DRAM1은, 도 4에서 도시한 메모리와 동등하다. NOR형 플래시 메모리 NOR은, 도 12에서 도시한 메모리와 동등하다. NAND형 플래시 메모리 NAND는 도 14에서 도시한 메모리와 동등하다.
본 발명에서는, 용이하게, 다이내믹 랜덤 액세스 메모리를 복수 접속할 수가 있어, 정보 처리 장치 CPU_CHIP이 필요로 하는 워크 영역이나 카피 영역을 용의하게 확장할 수 있어, 고속 처리가 가능하게 된다.
본 실시예에서는, 다이내믹 랜덤 액세스 메모리의 복수 접속에 대해서 설명했지만, NOR형 플래시 메모리 NOR이나, NAND형 플래시 메모리 NAND는, 필요에 따라 복수개 접속할 수 있어, 용이하게 프로그램 영역이나 데이터 영역을 확장할 수 있어, 휴대 기기의 시스템 구성에 맞춰서 유연하게 대응할 수 있다.
[실시예 3]
도 25는, 본 발명의 제3 실시 형태이다. 정보 처리 장치 CPU_CHIP과 메모리 모듈 MEM25로 구성되는 정보 처리 시스템을 도시한 실시예이다. 정보 처리 장치 CPU_CHIP은, 도 1에서 도시한 것과 동등하다. NOR형 플래시 메모리 NOR은, 도 12에서 도시한 메모리와 동등하다. 다이내믹 랜덤 액세스 메모리 DRAM은, 도 4에서 도시한 메모리와 동등하다. NAND형 플래시 메모리 NAND는 도 14에서 도시한 메모리와 동등하다.
메모리 모듈 MEM25는, 그것을 구성하는 메모리의 접속의 순번이, 정보 처리 장치 CPU_CHIP으로부터 가까운 순으로, NOR형 플래시 메모리 셀을 이용한 NOR형 플래시 메모리 NOR, 다이내믹 액세스 메모리 셀을 이용한 다이내믹 랜덤 액세스 메모리 DRAM, NAND형 플래시 메모리 셀을 이용한 NAND형 플래시 메모리 NAND이다.
특별히 한정하지 않지만, NOR형 플래시 메모리 NOR에는, 오퍼레이팅 시스템이나 음성 통신이나 데이터 통신을 위한 통신용 프로그램 등이 저장되고, NAND형 플래시 메모리 NAND에는 음악 재생, 정지 화상 재생이나 동화상 재생 등의 어플리 케이션 프로그램이나 음악 데이터, 동화상 데이터, 정지 화상 데이터 등의 데이터가 저장된다.
다이내믹 랜덤 액세스 메모리 DRAM에는, NAND형 플래시 메모리 NAND가 보유하는 어플리케이션 프로그램이나 음악 데이터, 음성 데이터, 동화상 데이터, 정지 화상 데이터 등의 데이터의 일부를 저장하는 카피 영역 COPY-AREA가 설정되어 있다.
휴대 전화기에서는, 전화나 메일의 대기 시에는, OS나 통신용 프로그램 등이 저장되는 NOR형 플래시 메모리 NOR에의 간헐적인 액세스가 지배적으로 된다. 따라서, 불휘발성 메모리인 NOR형 플래시 메모리 NOR을, 정보 처리 장치 CPU_CHIP으로부터 가장 근처에 접속하는 본 실시 형태, 즉, 복수의 메모리 칩을 직렬 접속한 메모리 모듈로서, 오퍼레이팅 시스템이나 음성 통신이나 데이터 통신을 위한 통신용 프로그램을 저장하는 메모리 칩이 직렬 접속의 선두에 위치하고, 정보 처리 장치와의 통신을 직접 행하는 메모리 칩인 것을 특징으로 하는 메모리 모듈에서는, 전화나 메일의 대기 시에는, 다이내믹 랜덤 액세스 메모리 DRAM을 셀프 리프레시 상태로 하고, 또한 다이내믹 랜덤 액세스 메모리 DRAM이나 NAND형 플래시 메모리 NAND에의 리퀘스트 클럭(RqCk1 및 RqCk0)이나, 레스펀스 클럭(RsCk1이나 RsCk2)을 정지하고, NOR형 플래시 메모리 NOR만을 동작시킬 수 있어, 전화나 메일의 대기 시의 소비 전력을 저감할 수 있다.
[실시예 4]
도 26은, 정보 처리 장치 CPU_CHIP과 메모리 모듈 MEM26으로 구성되는 정보 처리 시스템을 도시한 것이다. 메모리 모듈 MEM26은, 다이내믹 랜덤 액세스 메모리 DRAM, NOR형 플래시 메모리 NOR, NAND형 플래시 메모리 NAND0 및 NAND1로 구성된다. 정보 처리 장치 CPU_CHIP은, 도 1에서 도시한 것과 동등하다. 다이내믹 랜덤 액세스 메모리 DRAM0 및 DRAM1은, 도 4에서 도시한 메모리와 동등하다. NAND형 플래시 메모리 NAND0 및 NAND1은 도 14에서 도시한 메모리와 동등하다. NAND형 플래시 메모리 NAND0 및 NAND1은 NOR형 플래시 메모리보다 대용량 또한 저코스트를 실현할 수 있는 메모리이다. NOR형 플래시 메모리 대신에 NAND형 플래시 메모리 NAND0을 이용함으로써 NAND형 플래시 메모리 NAND0에, 오퍼레이팅 시스템, 음성 통신이나 데이터 통신을 위한 통신용 프로그램, 음악 재생, 정지 화상 재생이나 동화상 재생을 위한 어플리케이션 프로그램, 음악 데이터, 정지 화상 데이터나 동화상 데이터 등의 데이터를 저장할 수 있어, 대용량 또한 저코스트의 정보 처리 시스템을 실현할 수 있다. 또한, NAND형 플래시 메모리 NAND0에 저장되어 있는 오퍼레이팅 시스템, 음성 통신이나 데이터 통신을 위한 통신용 프로그램, 음악 재생, 정지 화상 재생이나 동화상 재생을 위한 어플리케이션 프로그램, 음악 데이터, 정지 화상 데이터나 동화상 데이터 등의 데이터를 미리 다이내믹 랜덤 액세스 메모리 DRAM에 전송함으로써, 정보 처리 시스템의 고성능화가 도모된다.
[실시예 5]
도 27은, 정보 처리 장치 CPU_CHIP과 메모리 모듈 MEM27로 구성되는 정보 처리 시스템을 도시한 것이다. 메모리 모듈 MEM27은, 다이내믹 랜덤 액세스 메모리 DRAM, NOR형 플래시 메모리 NOR, NAND형 플래시 메모리 및 하드디스크 HDD로 구성 된다. 정보 처리 장치 CPU_CHIP은, 도 1에서 도시한 것과 동등하다. 다이내믹 랜덤 액세스 메모리 DRAM0 및 DRAM1은, 도 4에서 도시한 메모리와 동등하다. NOR형 플래시 메모리 NOR은, 도 12에서 도시한 메모리와 동등하다. NAND형 플래시 메모리 NAND는 도 14에서 도시한 메모리와 동등하다. 하드디스크 HDD는, NAND형 플래시 메모리 NAND보다 대용량 또한 저코스트를 실현할 수 있는 메모리이다.
데이터의 판독 단위나, 어드레스 관리 방법이나, 에러 검출 정정 방법에 관해서 말하면, 원래 하드디스크 HDD에서 실현하고 있던 데이터의 판독 단위나, 어드레스 관리 방법이나, 에러 검출 정정 방법 등을 플래시 메모리가 이어받고 있기 때문에, 하드디스크 HDD를 용이하게 추가 접속하여, 대용량 또한 저코스트의 메모리 모듈을 실현할 수 있다.
[실시예 6]
도 28은, 정보 처리 장치 CPU_CHIP과 메모리 모듈 MEM28로 구성되는 정보 처리 시스템을 도시한 것이다. 메모리 모듈 MEM28은, 제1 불휘발성 메모리 MRAM, 제2 불휘발성 메모리 NOR, 제3 불휘발성 메모리 NAND로 구성된다. 정보 처리 장치 CPU_CHIP은, 도 1에서 도시한 것과 동등하다. 제1 불휘발성 메모리 MRAM은, 도 4에서 도시한 메모리 회로 MemVL이, 불휘발성의 마그네틱 메모리 셀로 구성되어 있는 마그네틱 랜덤 액세스 메모리 MRAM이다. 제2 불휘발성 메모리 NOR은, 도 12에서 도시한 NOR형 플래시 메모리와 동등하다. 제3 불휘발성 메모리 NAND는, 도 14에서 도시한 NAND형 플래시 메모리 NAND와 동등하다.
휘발성의 다이내믹 랜덤 액세스 메모리 DRAM 대신에 불휘발성의 마그네틱 랜 덤 액세스 메모리 MRAM을 이용함으로써, 메모리 회로 내의 데이터 보유 동작을 정기적으로 행할 필요가 없기 때문에, 저전력화가 가능하게 된다. 또한, 제2 불휘발성 메모리 M280은, 도 12에서 도시한 메모리 회로 NV1이 불휘발성의 상 변화 메모리 셀로 구성되는 상 변화 메모리이어도 된다.
[실시예 7]
도 29는 본 발명에서의 제7 실시 형태예를 도시한 것이다. 도 29의 (a)는 상면도이며, 도 29의 (b)는 상면도에 도시한 A-A'선을 따라 취한 부분의 단면도이다.
본 실시 형태의 멀티 칩 모듈은, 볼 그리드 어레이(BGA)에 의해 장치에 실장되는 기반(예를 들면 글래스 에폭시 기판으로 된 프린트 회로 보드) PCB 상에, CHIPM1, CHIPM2, CHIPM3이 탑재되어 있다. 특별히 한정하지 않지만, CHIPM1은 제1 불휘발성 메모리이고, CHIPM2는 제2 불휘발성 메모리이고, CHIPM3은 제1 휘발성 메모리이다.
본 멀티 칩 모듈에 의해, 도 1에서 도시하는 메모리 모듈 MEM 및, 도 25에서 도시하는 메모리 모듈 MEM25, 도 26에서 도시하는 메모리 모듈 MEM26, 도 28에서 도시하는 메모리 모듈 MEM28을 1개의 밀봉체에 집적할 수 있다.
CHIPM1과 기반 PCB 상의 본딩 패드는 본딩 와이어(PATH2)로 접속되고, CHIPM2와 기반 PCB 상의 본딩 패드는 본딩 와이어(PATH1)로 접속되어 있다. CHIPM3과 기반 PCB 상의 본딩 패드는 본딩 와이어(PATH4)로 접속되어 있다. CHIPM1과 CHIPM2는 본딩 와이어(PATH3)로 접속되고, CHIPM2와 CHIPM3은 본딩 와이 어(PATH5)로 접속되어 있다.
칩이 탑재된 기반 PCB의 상면은 수지 몰드가 행해져 각 칩과 접속 배선을 보호한다. 또한, 그 위로부터 금속, 세라믹, 혹은 수지의 커버(COVER)를 추가로 사용해도 된다.
본 실시 형태예에서는 프린트 회로 보드 PCB 상에 베어 칩을 직접 탑재하기 때문에, 실장 면적이 작은 메모리 모듈을 구성할 수 있다. 또한, 각 칩을 적층할 수 있기 때문에, 칩과 기반 PCB 사이의 배선 길이를 짧게 할 수가 있어, 실장 면적을 작게 할 수 있다. 칩 사이의 배선 및 각 칩과 기반 사이의 배선을 본딩 와이어 방식으로 통일함으로써 적은 공정수로 메모리 모듈을 제조할 수 있다.
또한 칩 사이를 본딩 와이어로 직접 배선함으로써 기반 상의 본딩 패드수와 본딩 와이어의 개수를 삭감하여 적은 공정수로 메모리 모듈을 제조할 수 있다. 수지의 커버를 사용한 경우에는, 보다 강인한 메모리 모듈을 구성할 수 있다. 세라믹이나 금속의 커버를 사용한 경우에는, 강도 이외에, 방열성이나 실드 효과가 우수한 메모리 모듈을 구성할 수 있다.
[실시예 8]
도 30은 본 발명에서의 제8 실시 형태예를 도시한 것이다. 도 30의 (a)는 상면도이며, 도 30의 (b)는 상면도에 도시한 A-A'선을 따라 취한 부분의 단면도이다.
본 실시 형태의 멀티 칩 모듈은, 볼 그리드 어레이(BGA)에 의해 장치에 실장되는 기반(예를 들면 글래스 에폭시 기판으로 된 프린트 회로 보드) PCB 상에, CHIPM1, CHIPM2, CHIPM3이 탑재되어 있다. CHIPM1은 제1 불휘발성 메모리, CHIPM2는 제2 불휘발성 메모리이다. CHIPM3은 랜덤 액세스 메모리이다. 본 멀티 칩 모듈에 의해, 도 1에서 도시하는 메모리 모듈 MEM 및, 도 25에서 도시하는 메모리 모듈 MEM25, 도 26에서 도시하는 메모리 모듈 MEM26, 도 28에서 도시하는 메모리 모듈 MEM28을 1개의 밀봉체에 집적할 수 있다.
CHIPM1과 기반 PCB 상의 본딩 패드는 본딩 와이어(PATH2)로 접속되고, CHIPM2와 기반 PCB 상의 본딩 패드는 본딩 와이어(PATH1)로 접속되어 있다. CHIPM1과 CHIPM2는 본딩 와이어(PATH3)로 접속된다. 또한, CHIP3M의 실장 및 배선에 볼 그리드 어레이가 이용되고 있다.
본 실장 방법에서는 3칩을 적층할 수 있으므로 실장 면적을 작게 유지할 수 있다. 또한, CHIPM3과 기반 사이의 본딩은 불필요하게 되어 본딩 배선의 개수를 삭감할 수 있기 때문에 조립 공수를 삭감할 수 있고, 또한 보다 신뢰성이 높은 멀티 칩 모듈을 실현할 수 있다.
[실시예 9]
도 31은 본 발명에 따른 멀티 칩 모듈의 제9 실시 형태예를 도시한 것이다. 도 31의 (a)는 상면도이며, 도 31의 (b)는 상면도에 도시한 A-A'선을 따라 취한 부분의 단면도이다.
본 실시 형태의 메모리 모듈은, 볼 그리드 어레이(BGA)에 의해 장치에 실장되는 기반(예를 들면 글래스 에폭시 기판으로 된 프린트 회로 보드) PCB 상에, CHIPM1, CHIPM2, CHIPM3, CHIPM4가 탑재되어 있다. CHIPM1 및 CHIPM2는 불휘발성 메모리, CHIPM3은 랜덤 액세스 메모리이다.
CHIPM4는 정보 처리 장치 CPU_CHIP이다. 본 실장 방법에서는, 도 1에서 도시하는 정보 처리 시스템 및, 도 25에서 도시하는 정보 처리 시스템, 도 26에서 도시하는 정보 처리 시스템 및 도 28에서 도시하는 정보 처리 시스템을 1개의 밀봉체에 집적할 수 있다.
CHIPM1과 기반 PCB 상의 본딩 패드는 본딩 와이어(PATH2)로 접속되고, CHIPM2와 기반 PCB 상의 본딩 패드는 본딩 와이어(PATH4)로 접속되고, CHIPM3과 기반 PCB 상의 본딩 패드는 본딩 와이어(PATH1)로 접속되어 있다.
CHIPM1과 CHIPM3은 본딩 와이어(PATH3)로 접속되고, CHIPM2와 CHIPM3은 본딩 와이어(PATH5)로 접속된다. CHIPM4의 실장 및 배선에 볼 그리드 어레이(BGA)가 이용되고 있다. 본 실장 방법에서는 프린트 회로 보드 PCB 상에 베어 칩을 직접 탑재하기 때문에, 실장 면적이 작은 메모리 모듈을 구성할 수 있다. 또한, 각 칩을 근접하여 배치할 수 있기 때문에, 칩 사이 배선 길이를 짧게 할 수 있다.
칩 사이를 본딩 와이어로 직접 배선함으로써 기반 상의 본딩 패드수와 본딩 와이어의 개수를 삭감하여 적은 공정수로 메모리 모듈을 제조할 수 있다. 또한, CHIPM4와 기반 사이의 본딩은 불필요하게 되어 본딩 배선의 개수를 삭감할 수 있기 때문에 조립 공수를 삭감할 수 있고, 또한 보다 신뢰성이 높은 멀티 칩 모듈을 실현할 수 있다.
[실시예 10]
도 32는 본 발명에 따른 메모리 시스템의 제10 실시 형태예를 도시한 것이 다. 도 32의 (a)는 상면도이며, 도 32의 (b)는 상면도에 도시한 A-A'선을 따라 취한 부분의 단면도이다.
본 실시 형태의 메모리 모듈은, 볼 그리드 어레이(BGA)에 의해 장치에 실장되는 기반(예를 들면 글래스 에폭시 기판으로 된 프린트 회로 보드) PCB 상에, CHIPM1, CHIPM2, CHIPM3이 탑재되어 있다. CHIPM1 및 CHIPM2는 불휘발성 메모리, CHIPM3은 랜덤 액세스 메모리이다.
칩 사이의 배선 및 각 칩과 기반 사이의 배선을 본딩 와이어 방식으로 통일함으로써 적은 공정수로 메모리 모듈을 제조할 수 있다. 본 실장 방법에서는, 도 1에서 도시하는 메모리 모듈 MEM 및, 도 25에서 도시하는 메모리 모듈 MEM25, 도 26에서 도시하는 메모리 모듈 MEM26, 도 28에서 도시하는 메모리 모듈 MEM28을 1개의 밀봉체에 집적할 수 있다.
CHIPM1과 기반 PCB 상의 본딩 패드는 본딩 와이어(PATH2)로 접속되고, CHIPM2와 기반 PCB 상의 본딩 패드는 본딩 와이어(PATH1)로 접속되고, CHIPM3과 기반 PCB 상의 본딩 패드는 본딩 와이어(PATH3)로 접속되어 있다. 본 실시 형태예에서는 프린트 회로 보드 PCB 상에 베어 칩을 직접 탑재하기 때문에, 실장 면적이 작은 메모리 모듈을 구성할 수 있다. 또한, 각 칩을 근접해서 배치할 수 있기 때문에, 칩 사이 배선 길이를 짧게 할 수 있다.
각 칩과 기반 사이의 배선을 본딩 와이어 방식으로 통일함으로써 적은 공정수로 메모리 모듈을 제조할 수 있다.
[실시예 11]
도 33은 본 발명에 따른 메모리 시스템의 제11 실시 형태예를 도시한 것이다. 도 32의 (a)는 상면도이며, 도 32의 (b)는 상면도에 도시한 A-A'선을 따라 취한 부분의 단면도이다.
본 실시 형태의 메모리 모듈은, 볼 그리드 어레이(BGA)에 의해 장치에 실장하는 기판(예를 들면 글래스 에폭시 기판으로 된 프린트 회로 보드) PCB 상에, CHIPM1, CHIPM2, CHIPM3, CHIPM4가 탑재되어 있다. CHIPM1 및 CHIPM2는 불휘발성 메모리, 및 CHIPM3은 랜덤 액세스 메모리이다. CHIPM4는 정보 처리 장치 CPU_CHIP이다. 본 실장 방법에서는, 도 1에서 도시하는 정보 처리 시스템 및, 도 25에서 도시하는 정보 처리 시스템, 도 26에서 도시하는 정보 처리 시스템 및 도 28에서 도시하는 정보 처리 시스템을 1개의 밀봉체에 집적할 수 있다.
CHIPM1과 기반 PCB 상의 본딩 패드는 본딩 와이어(PATH2)로 접속되고, CHIPM2와 기반 PCB 상의 본딩 패드는 본딩 와이어(PATH1)로 접속되고, CHIPM3과 기반 PCB 상의 본딩 패드는 본딩 와이어(PATH3)로 접속되어 있다. CHIPM4의 실장 및 배선에 볼 그리드 어레이(BGA)가 이용되고 있다.
본 실시 형태예에서는 프린트 회로 보드 PCB 상에 베어 칩을 직접 탑재하기 때문에, 실장 면적이 작은 메모리 모듈을 구성할 수 있다. 또한, 각 칩을 근접해서 배치할 수 있기 때문에, 칩 사이 배선 길이를 짧게 할 수 있다. CHIPM4와 기반 사이의 본딩은 불필요하게 되어 본딩 배선의 개수를 삭감할 수 있기 때문에 조립 공수를 삭감할 수 있고, 또한 보다 신뢰성이 높은 멀티 칩 모듈을 실현할 수 있다.
[실시예 12]
도 34에, 본 발명에 따른 메모리 모듈을 이용한 휴대 전화기의 제12 실시 형태예를 도시한다. 휴대 전화는, 안테나 ANT, 무선 블록 RF, 음성 코덱 블록 SP, 스피커 SK, 마이크로폰 MK, 정보 처리 장치 CPU, 액정 표시부 LCD, 키보드 KEY 및 본 발명의 메모리 모듈 MSM으로 구성된다. 정보 처리 장치 CPU_MAIN은 복수의 정보 처리 회로를 갖고, 그 중 1개의 정보 처리 회로 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]
도 35에, 본 발명에 따른 메모리 시스템을 이용한 휴대 전화기의 제13 실시 형태예를 도시한다. 휴대 전화는, 안테나 ANT, 무선 블록 RF, 음성 코덱 블록 SP, 스피커 SK, 마이크로폰 MK, 액정 표시부 LCD, 키보드 KEY 및, 메모리 모듈 MSM과 정보 처리 장치 CPU_MAIN을 1개의 밀봉체에 집적한 본 발명의 정보 처리 시스템 SLP로 구성된다.
본 발명의 정보 처리 시스템 SLP를 이용함으로써, 부품 점수를 삭감할 수 있기 때문에, 저코스트화를 할 수 있고, 휴대 전화의 신뢰성이 향상되는, 휴대 전화기를 구성하는 부품의 실장 면적을 작게 할 수 있어, 휴대 전화 소형화를 할 수 있다.
<실시예에 나타내어지는 발명의 효과의 정리>
이상 설명한 바와 같이 본 명세서에 개시되는 발명에 의해 얻어지는 주된 효과는 이하와 같다.
제1로, 전원 투입 직후에, 직렬 접속의 확인 동작을 행함으로써, 확실하게 메모리끼리가 접속되어 있는 것을 확인할 수 있다. 또한, 부트 디바이스 및, 최단 의 메모리 칩을 명시하고, 자동적으로 각 메모리에의 ID 부여가 행해짐으로써, 용이하게, 필요한 분만 메모리 칩을 접속하여, 메모리 용량을 확장할 수 있다.
제2로, 리퀘스트에 ID를 부가함으로써, 정보 처리 장치 CPU_CHIP으로부터 각 메모리 칩 M0, M1 및 M2에 리퀘스트가 확실하게 전송된다. 또한, 정보 처리 장치 CPU_CHIP에의 레스펀스에 ID를 부가함으로써, 각 메모리로부터 올바르게 데이터 전송을 행할 수 있었던 것을 확인할 수 있어, 정보 처리 장치 CPU_CHIP 및 메모리 칩 M0, M1, M2의 직렬 접속에 의해, 접속 신호수를 감소시키면서도, 정보 처리 장치 CPU_CHIP은 원하는 처리를 실행할 수 있다.
제3으로, 리퀘스트 인터페이스 회로 ReqIF와 레스펀스 인터페이스 회로는 독립적으로 동작 가능하기 때문에, 데이터의 판독 동작과 기입 동작을 동시에 실행할 수 있어, 데이터 전송 성능을 향상시킬 수 있다.
제4로, 리퀘스트의 입력 순서에 상관없이, 빨리 판독할 수 있는 데이터는, 판독이 느린 데이터를 기다리지 않고, 바로 판독할 수 있기 때문에, 고속화가 가능하게 된다. 또한, 리퀘스트에 ID를 부가함으로써, 확실하게 요구처에 리퀘스트가 전송되고, 또한, 레스펀스에 ID를 부가함으로써, 리퀘스트의 입력 순서와, 판독 데이터의 순번이 서로 다른 경우라도, 정보 처리 장치 CPU_CHIP은 전송원의 메모리 칩을 알 수 있다.
제5로, 정보 처리 장치에의 각 메모리로부터의 레스펀스 순서는, 판독한 횟수에 따라 동적으로 변화되기 때문에, 데이터 전송 성능을 향상시킬 수 있다. 또한, 판독 횟수는, 프로그램할 수 있어, 이용하는 시스템에 유연하게 대응할 수 있 다.
제6으로, 메모리 칩으로부터 정보 처리 장치에 에러를 송신할 수 있으므로, 정보 처리 장치는 에러를 검출하여, 바로 에러에 대처할 수 있어, 신뢰성이 높은 정보 처리 시스템을 구축할 수 있다.
제7로, 각 메모리 칩 M0, M1 및 M2의 클럭의 동작 주파수를 필요에 따라, 변경할 수 있어 저전력화를 도모할 수 있다.
제8로, 메모리 칩 M2로부터의 판독 시에는, 에러 검출과 정정을 행하고, 기입 시에는, 기입이 올바르게 행해지지 않은 불량 어드레스에 대하여 대체 처리를 행하기 때문에, 신뢰성을 유지할 수 있다.
제9로, 복수의 반도체 칩을 하나의 밀봉체에 실장함으로써 실장 면적이 작은 시스템 메모리 모듈을 제공할 수 있다.
고속이면서 저코스트로, 메모리 용량의 확장성을 확보할 수 있는 사용하기에 편리한 정보 처리 시스템 장치를 실현할 수 있다.

Claims (23)

  1. 제1 및 제2 메모리 디바이스를 포함하는 복수의 메모리 디바이스를 직렬 접속한 메모리 모듈로서,
    상기 복수의 메모리 모듈을 구성하는 각각의 메모리 디바이스는, 상기 복수의 메모리 디바이스 중 어느 메모리 디바이스에의 요구인지를 나타내는 식별 정보가 포함되는 요구를 수취하고, 상기 요구에 대한 응답 시에 상기 메모리 디바이스의 식별 정보를 포함시켜 출력하는 것을 특징으로 하는 메모리 모듈.
  2. 제1항에 있어서,
    상기 제2 메모리 디바이스는, 상기 제1 메모리 디바이스보다 후단에 접속되고,
    상기 제1 메모리 디바이스는, 상기 요구에 포함되는 상기 식별 정보를 상기 제2 메모리 디바이스에 송신함과 함께, 상기 제2 메모리 디바이스가 출력한 응답에 포함되는 상기 식별 정보를 수취하는 것을 특징으로 하는 메모리 모듈.
  3. 제1항에 있어서,
    상기 복수의 메모리 디바이스의 각각은, 상기 요구에 관한 신호의 입출력 회로와, 상기 요구에 대한 응답에 관한 신호의 입출력 회로를 각각 개별로 갖는 것을 특징으로 하는 메모리 모듈.
  4. 제1항에 있어서,
    상기 복수의 메모리 디바이스의 각각은, 상기 요구에 관한 신호를 위한 클럭과, 상기 요구에 대한 응답을 송신하는 신호를 위한 클럭을 각각 개별로 갖는 것을 특징으로 하는 메모리 모듈.
  5. 제1항에 있어서,
    상기 응답은 응답의 우선 순위에 따라 행해지는 것을 특징으로 하는 메모리 모듈.
  6. 제5항에 있어서,
    상기 응답의 우선 순위를 동적으로 변화시키는 것을 특징으로 하는 메모리 모듈.
  7. 제6항에 있어서,
    상기 응답의 우선 순위는 응답 횟수에 따라 변화시키는 것을 특징으로 하는 메모리 모듈.
  8. 제7항에 있어서,
    상기 응답의 응답 횟수는 프로그램할 수 있는 것을 특징으로 하는 메모리 모 듈.
  9. 제8항에 있어서,
    상기 응답의 응답 횟수는, 개개의 메모리 디바이스에 대응한 응답 횟수를 프로그램할 수 있는 것을 특징으로 하는 메모리 모듈.
  10. 제1항에 있어서,
    상기 요구에 관한 신호에는, 어드레스 정보, 명령 정보 및 메모리 디바이스 식별 정보가 포함되고, 요구에 대한 응답의 송신에는 신호 데이터 정보 및 상기 식별 정보가 포함되고, 각각 다중화되어 송수신되는 것을 특징으로 하는 메모리 모듈.
  11. 제2항에 있어서,
    상기 요구에는, 메모리 디바이스의 클럭 주파수의 변경, 클럭의 정지, 클럭의 재기동을 행하는 명령 중 어느 하나가 포함되는 것을 특징으로 하는 메모리 모듈.
  12. 제1항에 있어서,
    상기 메모리 모듈을 구성하는 상기 메모리 디바이스는 에러 정보를 출력하는 것을 특징으로 하는 메모리 모듈.
  13. 제12항에 있어서,
    상기 에러 정보는, 상기 식별 정보에 관한 에러, 판독에 관한 에러, 또는, 기입에 관한 에러인 것을 특징으로 하는 메모리 모듈.
  14. 복수의 메모리 디바이스를 직렬 접속한 메모리 모듈로서,
    상기 메모리 모듈을 구성하는 상기 메모리 디바이스는 스테이터스 레지스터를 갖고,
    상기 스테이터스 레지스터는, 요구에 대한 응답에서 미처리의 응답수, 판독 에러, 기입 에러, ID 에러 중 어느 하나를 보유하는 것을 특징으로 하는 메모리 모듈.
  15. 제14항에 있어서,
    상기 스테이터스 레지스터의 내용을 판독하는 것을 특징으로 하는 메모리 모듈.
  16. 복수의 메모리 디바이스를 직렬 접속 가능하게 하는 메모리 모듈로서,
    전원이 투입된 초기에, 상기 복수의 메모리 디바이스의 각각에 대하여, 식별 정보가 부가되는 것을 특징으로 하는 메모리 모듈.
  17. 제16항에 있어서,
    상기 메모리 디바이스에의 식별 정보의 부가가 완료된 것을 통달하는 것을 특징으로 하는 메모리 모듈.
  18. 제16항에 있어서,
    전원이 투입된 초기에, 메모리 디바이스간의 접속 확인을 행하는 것을 특징으로 하는 메모리 모듈.
  19. 제16항에 있어서,
    전원이 투입된 초기에, 상기 복수의 메모리 디바이스 중, 지정된 메모리 디바이스로부터 부트 프로그램이 판독되는 것을 특징으로 하는 메모리 모듈.
  20. 제19항에 있어서,
    상기 부트 프로그램이 판독되는 메모리 디바이스의 지정은, 프로그램 가능한 것을 특징으로 하는 메모리 모듈.
  21. 복수의 메모리 디바이스를 직렬 접속한 메모리 모듈로서,
    상기 직렬 접속에서, 판독 시간이 가장 짧은 메모리 디바이스가 선두에 위치하고, 판독 시간이 짧은 순으로 접속되어 있는 것을 특징으로 하는 메모리 모듈.
  22. 복수의 메모리 디바이스를 직렬 접속한 메모리 모듈로서,
    오퍼레이팅 시스템을 저장하는 메모리 디바이스가 직렬 접속의 선두에 위치하고, 정보 처리 장치와의 통신을 직접 행하는 메모리 디바이스인 것을 특징으로 하는 메모리 모듈.
  23. 복수의 메모리 디바이스를 직렬 접속한 메모리 모듈로서,
    음성 통신이나 데이터 통신을 위한 프로그램을 저장하는 메모리 디바이스가 직렬 접속의 선두에 위치하고, 정보 처리 장치와의 통신을 직접 행하는 메모리 디바이스인 것을 특징으로 하는 메모리 모듈.
KR1020070047814A 2006-05-16 2007-05-16 메모리 모듈 KR100972243B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2006-00135970 2006-05-16
JP2006135970A JP5065618B2 (ja) 2006-05-16 2006-05-16 メモリモジュール

Related Child Applications (2)

Application Number Title Priority Date Filing Date
KR1020090057307A Division KR101023343B1 (ko) 2006-05-16 2009-06-25 메모리 모듈
KR1020090131605A Division KR101023295B1 (ko) 2006-05-16 2009-12-28 메모리 모듈

Publications (2)

Publication Number Publication Date
KR20070111388A true KR20070111388A (ko) 2007-11-21
KR100972243B1 KR100972243B1 (ko) 2010-07-26

Family

ID=38663939

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020070047814A KR100972243B1 (ko) 2006-05-16 2007-05-16 메모리 모듈
KR1020090057307A KR101023343B1 (ko) 2006-05-16 2009-06-25 메모리 모듈
KR1020090131605A KR101023295B1 (ko) 2006-05-16 2009-12-28 메모리 모듈

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020090057307A KR101023343B1 (ko) 2006-05-16 2009-06-25 메모리 모듈
KR1020090131605A KR101023295B1 (ko) 2006-05-16 2009-12-28 메모리 모듈

Country Status (5)

Country Link
US (1) US20070271409A1 (ko)
JP (1) JP5065618B2 (ko)
KR (3) KR100972243B1 (ko)
CN (3) CN101075217B (ko)
DE (1) DE102007022945A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200064154A (ko) * 2017-10-30 2020-06-05 마이크론 테크놀로지, 인크. 외부 레지스턴스를 공유하는 반도체 장치의 메모리 디바이스들을 식별하기 위한 방치 및 방법
US11482989B2 (en) 2016-12-09 2022-10-25 Micron Technology, Inc. Apparatuses and methods for calibrating adjustable impedances of a semiconductor device
CN117294347A (zh) * 2023-11-24 2023-12-26 成都本原星通科技有限公司 一种卫星信号接收处理方法

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5669338B2 (ja) * 2007-04-26 2015-02-12 株式会社日立製作所 半導体装置
KR101416315B1 (ko) * 2007-11-09 2014-07-08 삼성전자주식회사 내부 전압 제어 방법 및 그 방법을 이용하는 멀티 칩패키지 메모리
US8399973B2 (en) 2007-12-20 2013-03-19 Mosaid Technologies Incorporated Data storage and stackable configurations
JP4910117B2 (ja) * 2008-04-04 2012-04-04 スパンション エルエルシー 積層型メモリ装置
WO2010029830A1 (ja) * 2008-09-12 2010-03-18 株式会社日立製作所 半導体装置および情報処理システム
US8325541B2 (en) * 2008-10-15 2012-12-04 SK Hynix Inc. Non-volatile semiconductor memory apparatus
WO2010134201A1 (ja) 2009-05-22 2010-11-25 株式会社日立製作所 半導体装置
KR20120111951A (ko) * 2009-06-29 2012-10-11 모사이드 테크놀로지스 인코퍼레이티드 주파수 구성 가능 클록 도메인을 갖는 브릿징 장치
KR101699283B1 (ko) * 2010-03-31 2017-01-25 삼성전자주식회사 적층 메모리와 이를 포함하는 장치들
KR101796116B1 (ko) 2010-10-20 2017-11-10 삼성전자 주식회사 반도체 장치, 이를 포함하는 메모리 모듈, 메모리 시스템 및 그 동작방법
JP5623259B2 (ja) 2010-12-08 2014-11-12 ピーエスフォー ルクスコ エスエイアールエルPS4 Luxco S.a.r.l. 半導体装置
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
KR101102208B1 (ko) * 2011-04-27 2012-01-05 박광배 태양전지를 이용한 능동형 구간별 작동 전기목책기
US8463948B1 (en) * 2011-07-01 2013-06-11 Intel Corporation Method, apparatus and system for determining an identifier of a volume of memory
WO2013095385A1 (en) * 2011-12-20 2013-06-27 Intel Corporation Apparatus and method for phase change memory drift management
CN104115227B (zh) 2011-12-23 2017-02-15 英特尔公司 使用系统热传感器数据的存储器操作
JP6101047B2 (ja) * 2012-11-07 2017-03-22 キヤノン株式会社 情報処理装置及びその制御方法、並びにプログラム
CN103226526A (zh) * 2013-04-19 2013-07-31 无锡云动科技发展有限公司 一种存储器访问控制装置
CN104679507B (zh) * 2015-02-05 2017-10-03 四川长虹电器股份有限公司 NAND Flash编程器烧录映像文件的生成方法及装置
US9563505B2 (en) 2015-05-26 2017-02-07 Winbond Electronics Corp. Methods and systems for nonvolatile memory data management
US20160350002A1 (en) * 2015-05-29 2016-12-01 Intel Corporation Memory device specific self refresh entry and exit
JP6632876B2 (ja) * 2015-12-04 2020-01-22 シナプティクス・ジャパン合同会社 バッファメモリ装置及び表示駆動デバイス
JP6765940B2 (ja) * 2016-11-16 2020-10-07 キヤノン株式会社 画像処理装置およびその制御方法
US10996975B2 (en) 2019-08-22 2021-05-04 Micron Technology, Inc. Hierarchical memory systems
CN110413331B (zh) * 2019-09-25 2020-01-17 珠海亿智电子科技有限公司 基于rom的spi nor flash识别方法、装置、系统及存储介质

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5191652A (en) * 1989-11-10 1993-03-02 International Business Machines Corporation Method and apparatus for exploiting communications bandwidth as for providing shared memory
IL96808A (en) * 1990-04-18 1996-03-31 Rambus Inc Introductory / Origin Circuit Agreed Using High-Performance Brokerage
KR970008188B1 (ko) * 1993-04-08 1997-05-21 가부시끼가이샤 히다찌세이사꾸쇼 플래시메모리의 제어방법 및 그것을 사용한 정보처리장치
JPH07334416A (ja) * 1994-06-06 1995-12-22 Internatl Business Mach Corp <Ibm> コンピュータ・システムにおけるページ・モード・メモリの初期設定の方法および手段
JP3520611B2 (ja) * 1995-07-06 2004-04-19 株式会社日立製作所 プロセッサの制御方法
US5815206A (en) * 1996-05-03 1998-09-29 Lsi Logic Corporation Method for partitioning hardware and firmware tasks in digital audio/video decoding
US6269136B1 (en) * 1998-02-02 2001-07-31 Microunity Systems Engineering, Inc. Digital differential analyzer data synchronizer
US6460125B2 (en) * 1998-08-07 2002-10-01 Ati Technologies, Inc. Dynamic memory clock control system and method
US6856627B2 (en) * 1999-01-15 2005-02-15 Cisco Technology, Inc. Method for routing information over a network
JP2001230781A (ja) * 2000-02-16 2001-08-24 Fujitsu Ltd 通信制御装置
US6871341B1 (en) * 2000-03-24 2005-03-22 Intel Corporation Adaptive scheduling of function cells in dynamic reconfigurable logic
JP2002007308A (ja) * 2000-06-20 2002-01-11 Nec Corp メモリバスシステムおよび信号線の接続方法
US7012927B2 (en) * 2001-02-06 2006-03-14 Honeywell International Inc. High level message priority assignment by a plurality of message-sending nodes sharing a signal bus
WO2002086747A1 (en) * 2001-04-24 2002-10-31 Broadcom Corporation Integrated gigabit ethernet pci-x controller
US6976136B2 (en) * 2001-05-07 2005-12-13 National Semiconductor Corporation Flash memory protection scheme for secured shared BIOS implementation in personal computers with an embedded controller
US7107399B2 (en) * 2001-05-11 2006-09-12 International Business Machines Corporation Scalable memory
JP4049297B2 (ja) * 2001-06-11 2008-02-20 株式会社ルネサステクノロジ 半導体記憶装置
JP3827540B2 (ja) * 2001-06-28 2006-09-27 シャープ株式会社 不揮発性半導体記憶装置および情報機器
US6587926B2 (en) * 2001-07-12 2003-07-01 International Business Machines Corporation Incremental tag build for hierarchical memory architecture
KR100630726B1 (ko) * 2004-05-08 2006-10-02 삼성전자주식회사 동작 모드가 별도로 설정되는 메모리 장치들을 구비하는메모리 시스템 및 동작 모드 설정 방법
JP4159415B2 (ja) * 2002-08-23 2008-10-01 エルピーダメモリ株式会社 メモリモジュール及びメモリシステム
JP4499982B2 (ja) * 2002-09-11 2010-07-14 株式会社日立製作所 メモリシステム
US7461213B2 (en) * 2002-10-08 2008-12-02 Rmi Corporation Advanced processor system using request, data, snoop, and response rings
US7093076B2 (en) * 2002-12-12 2006-08-15 Samsung Electronics, Co., Ltd. Memory system having two-way ring topology and memory device and memory module for ring-topology memory system
US7308524B2 (en) * 2003-01-13 2007-12-11 Silicon Pipe, Inc Memory chain
US7286976B2 (en) * 2003-06-10 2007-10-23 Mentor Graphics (Holding) Ltd. Emulation of circuits with in-circuit memory
DE10335978B4 (de) * 2003-08-06 2006-02-16 Infineon Technologies Ag Hub-Baustein zum Anschließen von einem oder mehreren Speicherbausteinen
JP4272968B2 (ja) 2003-10-16 2009-06-03 エルピーダメモリ株式会社 半導体装置および半導体チップ制御方法
JP3889391B2 (ja) * 2003-11-06 2007-03-07 ローム株式会社 メモリ装置および表示装置
US20050138267A1 (en) * 2003-12-23 2005-06-23 Bains Kuljit S. Integral memory buffer and serial presence detect capability for fully-buffered memory modules
WO2005067263A1 (en) * 2004-01-09 2005-07-21 Matsushita Electric Industrial Co., Ltd. Ip device, management server, and network system
CN100485644C (zh) * 2004-02-10 2009-05-06 上海新时达电气股份有限公司 自动分配串行总线设备地址分配器及其控制方法
US20050182458A1 (en) * 2004-02-17 2005-08-18 Medtronic, Inc. Implantable medical devices with dual-memory support
US7222224B2 (en) * 2004-05-21 2007-05-22 Rambus Inc. System and method for improving performance in computer memory systems supporting multiple memory access latencies
US7363419B2 (en) * 2004-05-28 2008-04-22 Micron Technology, Inc. Method and system for terminating write commands in a hub-based memory system
US7669027B2 (en) * 2004-08-19 2010-02-23 Micron Technology, Inc. Memory command delay balancing in a daisy-chained memory topology
JP2006323739A (ja) * 2005-05-20 2006-11-30 Renesas Technology Corp メモリモジュール、メモリシステム、及び情報機器
US7685392B2 (en) * 2005-11-28 2010-03-23 International Business Machines Corporation Providing indeterminate read data latency in a memory system
US8700818B2 (en) * 2006-09-29 2014-04-15 Mosaid Technologies Incorporated Packet based ID generation for serially interconnected devices

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11482989B2 (en) 2016-12-09 2022-10-25 Micron Technology, Inc. Apparatuses and methods for calibrating adjustable impedances of a semiconductor device
US11916527B2 (en) 2016-12-09 2024-02-27 Lodestar Licensing Group Llc Apparatuses and methods for calibrating adjustable impedances of a semiconductor device
KR20200064154A (ko) * 2017-10-30 2020-06-05 마이크론 테크놀로지, 인크. 외부 레지스턴스를 공유하는 반도체 장치의 메모리 디바이스들을 식별하기 위한 방치 및 방법
US11728812B2 (en) 2017-10-30 2023-08-15 Micron Technology, Inc. Apparatuses and methods for identifying memory devices of a semiconductor device sharing an external resistance
CN117294347A (zh) * 2023-11-24 2023-12-26 成都本原星通科技有限公司 一种卫星信号接收处理方法
CN117294347B (zh) * 2023-11-24 2024-01-30 成都本原星通科技有限公司 一种卫星信号接收处理方法

Also Published As

Publication number Publication date
CN104615547A (zh) 2015-05-13
CN101075217A (zh) 2007-11-21
DE102007022945A1 (de) 2007-12-13
US20070271409A1 (en) 2007-11-22
JP2007310430A (ja) 2007-11-29
KR20100007844A (ko) 2010-01-22
KR101023295B1 (ko) 2011-03-18
CN101840376B (zh) 2016-03-30
KR20090075786A (ko) 2009-07-09
CN101075217B (zh) 2015-03-18
KR100972243B1 (ko) 2010-07-26
JP5065618B2 (ja) 2012-11-07
CN101840376A (zh) 2010-09-22
KR101023343B1 (ko) 2011-03-18

Similar Documents

Publication Publication Date Title
KR100972243B1 (ko) 메모리 모듈
KR101101729B1 (ko) 반도체 장치
JP4499982B2 (ja) メモリシステム
JP5420648B2 (ja) 半導体装置
KR100786603B1 (ko) 메모리 모듈, 메모리시스템 및 정보기기
KR101087363B1 (ko) 반도체 장치
JP5214736B2 (ja) 半導体装置および情報処理システム
JP5678257B2 (ja) メモリモジュール
JP5955936B2 (ja) 半導体装置

Legal Events

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

Payment date: 20130621

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140630

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150619

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160617

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170616

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee