JPH0816530A - コプロセサシステムおよび補助演算機能付外部メモリ装置 - Google Patents
コプロセサシステムおよび補助演算機能付外部メモリ装置Info
- Publication number
- JPH0816530A JPH0816530A JP6152508A JP15250894A JPH0816530A JP H0816530 A JPH0816530 A JP H0816530A JP 6152508 A JP6152508 A JP 6152508A JP 15250894 A JP15250894 A JP 15250894A JP H0816530 A JPH0816530 A JP H0816530A
- Authority
- JP
- Japan
- Prior art keywords
- cpu
- processor
- program
- signal
- access
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
- 230000015654 memory Effects 0.000 claims abstract description 67
- 238000012545 processing Methods 0.000 claims abstract description 50
- 230000004044 response Effects 0.000 claims description 19
- 230000006870 function Effects 0.000 claims description 16
- 230000010365 information processing Effects 0.000 claims description 12
- 238000000034 method Methods 0.000 claims description 9
- 238000013507 mapping Methods 0.000 abstract description 3
- 230000009977 dual effect Effects 0.000 abstract description 2
- 239000000872 buffer Substances 0.000 description 41
- 239000013256 coordination polymer Substances 0.000 description 18
- 238000010586 diagram Methods 0.000 description 15
- 101000738322 Homo sapiens Prothymosin alpha Proteins 0.000 description 7
- 102100033632 Tropomyosin alpha-1 chain Human genes 0.000 description 7
- 238000007796 conventional method Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- CWMFRHBXRUITQE-UHFFFAOYSA-N trimethylsilylacetylene Chemical compound C[Si](C)(C)C#C CWMFRHBXRUITQE-UHFFFAOYSA-N 0.000 description 7
- 101100328887 Caenorhabditis elegans col-34 gene Proteins 0.000 description 5
- 238000012546 transfer Methods 0.000 description 3
- WHXSMMKQMYFTQS-UHFFFAOYSA-N Lithium Chemical compound [Li] WHXSMMKQMYFTQS-UHFFFAOYSA-N 0.000 description 1
- 101150065817 ROM2 gene Proteins 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 229910052744 lithium Inorganic materials 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
- G06F9/3869—Implementation aspects, e.g. pipeline latches; pipeline synchronisation and clocking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3877—Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
- G06F9/3879—Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor for non-native instruction execution, e.g. executing a command; for Java instruction set
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Advance Control (AREA)
Abstract
(57)【要約】
【構成】 ゲームシステム10は、ゲーム機本体12の
S−CPU18およびカートリッジ14のC−CPU3
4を含み、両CPUは同じCPUコアで構成され、かつ
同じメモリマッピングを有する。カートリッジ14のM
−ROM22のアクセスタイムは、C−CPU34のサ
イクルタイムより短く、C−CPU34のサイクルタイ
ムはS−CPU18のサイクルタイムより短い。信号SS
YNC によってS−CPU18のM−ROM22へのアク
セスを許容する期間はM−ROM22のアクセスタイム
より長くかつS−CPU18のサイクルタイムより短く
設定する。したがって、信号SSYNC によって余裕時間に
C−CPU34のM−ROM22へのアクセスを許容す
る。 【効果】 メモリ容量を増加することなく、C−CPU
34およびS−CPU18が実質的に同時に(デュアル
フェーズ)でM−ROM22をアクセスできるので、処
理効率が向上する。
S−CPU18およびカートリッジ14のC−CPU3
4を含み、両CPUは同じCPUコアで構成され、かつ
同じメモリマッピングを有する。カートリッジ14のM
−ROM22のアクセスタイムは、C−CPU34のサ
イクルタイムより短く、C−CPU34のサイクルタイ
ムはS−CPU18のサイクルタイムより短い。信号SS
YNC によってS−CPU18のM−ROM22へのアク
セスを許容する期間はM−ROM22のアクセスタイム
より長くかつS−CPU18のサイクルタイムより短く
設定する。したがって、信号SSYNC によって余裕時間に
C−CPU34のM−ROM22へのアクセスを許容す
る。 【効果】 メモリ容量を増加することなく、C−CPU
34およびS−CPU18が実質的に同時に(デュアル
フェーズ)でM−ROM22をアクセスできるので、処
理効率が向上する。
Description
【0001】
【産業上の利用分野】この発明はコプロセサシステムお
よび補助演算機能付外部メモリ装置に関し、特にたとえ
ば、外部メモリ装置のメモリにプログラムが格納されて
いて、その外部メモリ装置がゲーム機や画像処理装置の
ような情報処理装置に着脱自在に装着され、外部メモリ
装置に設けられたプロセサが情報処理装置に設けられた
プロセサと協働する、コプロセサシステムおよび補助演
算機能付外部メモリ装置に関する。
よび補助演算機能付外部メモリ装置に関し、特にたとえ
ば、外部メモリ装置のメモリにプログラムが格納されて
いて、その外部メモリ装置がゲーム機や画像処理装置の
ような情報処理装置に着脱自在に装着され、外部メモリ
装置に設けられたプロセサが情報処理装置に設けられた
プロセサと協働する、コプロセサシステムおよび補助演
算機能付外部メモリ装置に関する。
【0002】
【従来の技術】この種のコプロセサシステムの一例が、
たとえば、平成6年(1994)3月22日付で出願公
開された特開平6−79093号に開示されている。こ
の従来技術は、簡単にいうと、図1に示すように、情報
処理装置本体のCPU1と「マリオチップ」と呼ばれる
別のCPU2とがROM3のプログラムにアクセスし、
CPU1がプログラムに従って情報処理を実行する。こ
の従来技術では、CPU1を動作させるためのプログラ
ムはROM3からRAM4に転送されて記憶(ダウンロ
ード)される。その後、CPU1は、RAM4に転送さ
れたプログラムを直接アクセスして処理することによ
り、間接的にROM3のプログラムを処理する。一方、
マリオチップ2は、RAM4に転送していない期間(す
なわちCPU1がROM2をアクセスしていない期間)
において、ROM3を直接アクセスしてプログラムを実
行する。
たとえば、平成6年(1994)3月22日付で出願公
開された特開平6−79093号に開示されている。こ
の従来技術は、簡単にいうと、図1に示すように、情報
処理装置本体のCPU1と「マリオチップ」と呼ばれる
別のCPU2とがROM3のプログラムにアクセスし、
CPU1がプログラムに従って情報処理を実行する。こ
の従来技術では、CPU1を動作させるためのプログラ
ムはROM3からRAM4に転送されて記憶(ダウンロ
ード)される。その後、CPU1は、RAM4に転送さ
れたプログラムを直接アクセスして処理することによ
り、間接的にROM3のプログラムを処理する。一方、
マリオチップ2は、RAM4に転送していない期間(す
なわちCPU1がROM2をアクセスしていない期間)
において、ROM3を直接アクセスしてプログラムを実
行する。
【0003】また、図2に示す並列処理装置もコプロセ
サシステムの一種と考えることができるが、図2のシス
テムの場合、バスコントローラ5が第1CPU6aおよ
び第2CPU6bを時分割的に切り換えてROM7に接
続し、それによって必要なプログラムがROM7から第
1RAM8aまたは第2RAM8bにダウンロードされ
る。また、CPU6aおよびCPU6bには、クロック
発生器9から共通のクロックが与えられる。そして、C
PU6aまたはCPU6bは、同じクロックに基づいて
同時的(または同期的)に対応のRAM8aまたはRA
M8bの記憶されているプログラムを個別的に実行す
る。すなわち、図2のシステムは、2つのCPU8aお
よび8bが同一マシンサイクル期間にROM7を直接ア
クセスしてROM7のプログラムを実行するのではな
く、対応するRAM8a,8bにプログラムを一旦転送
してRAM8a,8b上で直接処理(アクセス)してい
るので、2つのCPU6a,6bが同じ動作サイクル期
間においてROM7を直接アクセスするものではない。
サシステムの一種と考えることができるが、図2のシス
テムの場合、バスコントローラ5が第1CPU6aおよ
び第2CPU6bを時分割的に切り換えてROM7に接
続し、それによって必要なプログラムがROM7から第
1RAM8aまたは第2RAM8bにダウンロードされ
る。また、CPU6aおよびCPU6bには、クロック
発生器9から共通のクロックが与えられる。そして、C
PU6aまたはCPU6bは、同じクロックに基づいて
同時的(または同期的)に対応のRAM8aまたはRA
M8bの記憶されているプログラムを個別的に実行す
る。すなわち、図2のシステムは、2つのCPU8aお
よび8bが同一マシンサイクル期間にROM7を直接ア
クセスしてROM7のプログラムを実行するのではな
く、対応するRAM8a,8bにプログラムを一旦転送
してRAM8a,8b上で直接処理(アクセス)してい
るので、2つのCPU6a,6bが同じ動作サイクル期
間においてROM7を直接アクセスするものではない。
【0004】
【発明が解決しようとする課題】図1の従来技術では、
マリオチップ2を動作させるとき、ROM3はマリオチ
ップ2に占有されてしまうので、結局、CPU1とマリ
オチップ2とを同時に動作させるためには、RAM4の
ような別のメモリが必要になる。したがって、プログラ
ム作成上で以下のような多くの制約が生じる。(1) CP
U1およびマリオチップ2のためにそれぞれのアーキテ
クチュアに基づいてCPU1およびマリオチップ2毎に
個別にプログラムを準備しなければならない。(2) RO
M3内にCPU1のためのプログラムを組み込むとき、
それを上述のようにダウンロードする必要があるため、
そのプログラムを一連のROMアドレスに書き込まなけ
ればならない。(3) RAM4の容量が不足するとき、C
PU1に必要な全てのプログラムをロードできず、それ
を分割して分割プログラムブロック毎にロードしなけれ
ばならない。(3) の場合、ジャンプやサブルーチンを各
分割プログラムブロック毎に書き込んでおかなければな
らないし、同じサブルーチンでも各分割プログラムブロ
ック毎に設けておく必要があるので、ROM容量の無駄
遣いが多くなる。
マリオチップ2を動作させるとき、ROM3はマリオチ
ップ2に占有されてしまうので、結局、CPU1とマリ
オチップ2とを同時に動作させるためには、RAM4の
ような別のメモリが必要になる。したがって、プログラ
ム作成上で以下のような多くの制約が生じる。(1) CP
U1およびマリオチップ2のためにそれぞれのアーキテ
クチュアに基づいてCPU1およびマリオチップ2毎に
個別にプログラムを準備しなければならない。(2) RO
M3内にCPU1のためのプログラムを組み込むとき、
それを上述のようにダウンロードする必要があるため、
そのプログラムを一連のROMアドレスに書き込まなけ
ればならない。(3) RAM4の容量が不足するとき、C
PU1に必要な全てのプログラムをロードできず、それ
を分割して分割プログラムブロック毎にロードしなけれ
ばならない。(3) の場合、ジャンプやサブルーチンを各
分割プログラムブロック毎に書き込んでおかなければな
らないし、同じサブルーチンでも各分割プログラムブロ
ック毎に設けておく必要があるので、ROM容量の無駄
遣いが多くなる。
【0005】図2の従来技術は、上記図1の従来技術の
(3) の問題があるのに加えて、RAM8a,RAM8b
が必要となるため、部品点数が多くなり、システム全体
が高価となる。もしも、RAM8a,RAM8bを安価
にする目的で記憶容量の小さなものを使用すると、RO
M7のプログラムデータをRAMの最大記憶容量に分け
て頻繁に転送しなければならないので、CPU6a,6
bのプログラム処理が頻繁に中断され、データ転送のた
めの待ち時間が増大し、その期間に使用者を待たせるこ
とになり、プログラムの高速処理が阻害される。
(3) の問題があるのに加えて、RAM8a,RAM8b
が必要となるため、部品点数が多くなり、システム全体
が高価となる。もしも、RAM8a,RAM8bを安価
にする目的で記憶容量の小さなものを使用すると、RO
M7のプログラムデータをRAMの最大記憶容量に分け
て頻繁に転送しなければならないので、CPU6a,6
bのプログラム処理が頻繁に中断され、データ転送のた
めの待ち時間が増大し、その期間に使用者を待たせるこ
とになり、プログラムの高速処理が阻害される。
【0006】それゆえに、この発明の主たる目的は、プ
ログラムに制約のなしに全体として高速化できる、コプ
ロセサシステムを提供することである。この発明の他の
目的は、プログラムに制約のなしに全体として情報処理
装置の動作を高速化できる、補助演算機能付外部メモリ
装置を提供することである。この発明のさらに他の目的
は、アーキテクチャーの共通する2つのプロセサがプロ
グラムメモリを共通的に使用可能であり、2つのプロセ
サが非同期的かつ直接的にプログラムメモリのプログラ
ムを実行することにより、プログラムを転送するための
RAMを用いることなく安価な構成で高速に処理し得
る、コプロセサシステムおよび補助演算機能付外部メモ
リ装置を提供することである。
ログラムに制約のなしに全体として高速化できる、コプ
ロセサシステムを提供することである。この発明の他の
目的は、プログラムに制約のなしに全体として情報処理
装置の動作を高速化できる、補助演算機能付外部メモリ
装置を提供することである。この発明のさらに他の目的
は、アーキテクチャーの共通する2つのプロセサがプロ
グラムメモリを共通的に使用可能であり、2つのプロセ
サが非同期的かつ直接的にプログラムメモリのプログラ
ムを実行することにより、プログラムを転送するための
RAMを用いることなく安価な構成で高速に処理し得
る、コプロセサシステムおよび補助演算機能付外部メモ
リ装置を提供することである。
【0007】
【課題を解決するための手段】この発明に従ったコプロ
セサシステムは、プログラムに基づいて第1のサイクル
タイムで演算処理する第1のプロセサ(18)、第1のプロ
グラムのアーキテクチュアと同じであり、かつプログラ
ムに基づいて第1のサイクルタイムより短い第2のサイ
クルタイムで演算処理する第2のプロセサ(34)、第1の
サイクルタイムの基準となる第1のクロック信号を第1
のプロセサに供給する第1のクロック供給手段(23,25)
、第2のサイクルタイムの基準となる第2のクロック
信号を第2のプロセサに供給する第2のクロック供給手
段(23,216)、第2のプロセサがアクセスして高速読み出
し可能であり、かつ第1のプロセサおよび第2のプロセ
サによって直接アクセスサイクルプログラムを格納した
プログラムメモリ(22)、およびプログラムメモリのアク
セスタイムより長くかつ第1のサイクルタイムより短い
第1の期間において第1のプロセサがプログラムメモリ
へ直接アクセスするのを許容し、第1のサイクルタイム
と第1の期間との差である第2の期間において第2のプ
ロセサが前記プログラムメモリへ直接アクセスするのを
許容するアクセス制御手段(35,54,60,52)を備える。
セサシステムは、プログラムに基づいて第1のサイクル
タイムで演算処理する第1のプロセサ(18)、第1のプロ
グラムのアーキテクチュアと同じであり、かつプログラ
ムに基づいて第1のサイクルタイムより短い第2のサイ
クルタイムで演算処理する第2のプロセサ(34)、第1の
サイクルタイムの基準となる第1のクロック信号を第1
のプロセサに供給する第1のクロック供給手段(23,25)
、第2のサイクルタイムの基準となる第2のクロック
信号を第2のプロセサに供給する第2のクロック供給手
段(23,216)、第2のプロセサがアクセスして高速読み出
し可能であり、かつ第1のプロセサおよび第2のプロセ
サによって直接アクセスサイクルプログラムを格納した
プログラムメモリ(22)、およびプログラムメモリのアク
セスタイムより長くかつ第1のサイクルタイムより短い
第1の期間において第1のプロセサがプログラムメモリ
へ直接アクセスするのを許容し、第1のサイクルタイム
と第1の期間との差である第2の期間において第2のプ
ロセサが前記プログラムメモリへ直接アクセスするのを
許容するアクセス制御手段(35,54,60,52)を備える。
【0008】この発明に従った補助演算機能付外部メモ
リ装置は、プログラムに基づいて第1のサイクルタイム
で演算処理する第1のプロセサ(18)と第1のサイクルタ
イムの基準となる第1のクロック信号を前記第1のプロ
セサに供給する第1のクロック供給手段(23,25) とを含
む情報処理装置に着脱自在に装着され、第1のプログラ
ムのアーキテクチュアと同じであり、かつプログラムに
基づいて第1のサイクルタイムより短い第2のサイクル
タイムで演算処理する第2のプロセサ(34)、第2のサイ
クルタイムの基準となる第2のクロック信号を第2のプ
ロセサに供給する第2のクロック供給手段(23,216)、第
2のプロセサがアクセスして高速読み出し可能であり、
かつ第1のプロセサおよび第2のプロセサによって直接
アクセスサイクルプログラムを格納したプログラムメモ
リ(22)、およびプログラムメモリのアクセスタイムより
長くかつ第1のサイクルタイムより短い第1の期間にお
いて第1のプロセサがプログラムメモリへ直接アクセス
するのを許容し、第1のサイクルタイムと第1の期間と
の差である第2の期間において第2のプロセサが前記プ
ログラムメモリへ直接アクセスするのを許容するアクセ
ス制御手段(35,54,60,52)を備える。
リ装置は、プログラムに基づいて第1のサイクルタイム
で演算処理する第1のプロセサ(18)と第1のサイクルタ
イムの基準となる第1のクロック信号を前記第1のプロ
セサに供給する第1のクロック供給手段(23,25) とを含
む情報処理装置に着脱自在に装着され、第1のプログラ
ムのアーキテクチュアと同じであり、かつプログラムに
基づいて第1のサイクルタイムより短い第2のサイクル
タイムで演算処理する第2のプロセサ(34)、第2のサイ
クルタイムの基準となる第2のクロック信号を第2のプ
ロセサに供給する第2のクロック供給手段(23,216)、第
2のプロセサがアクセスして高速読み出し可能であり、
かつ第1のプロセサおよび第2のプロセサによって直接
アクセスサイクルプログラムを格納したプログラムメモ
リ(22)、およびプログラムメモリのアクセスタイムより
長くかつ第1のサイクルタイムより短い第1の期間にお
いて第1のプロセサがプログラムメモリへ直接アクセス
するのを許容し、第1のサイクルタイムと第1の期間と
の差である第2の期間において第2のプロセサが前記プ
ログラムメモリへ直接アクセスするのを許容するアクセ
ス制御手段(35,54,60,52)を備える。
【0009】
【作用】たとえば信号SSYNC が第1の期間および第2の
期間を規定する。すなわち、信号SSYNC がハイレベルの
とき第1の期間であり、ローレベルのとき第2の期間で
ある。第1の期間においては、第1のプロセサがプログ
ラムメモリに直接アクセスし、そのプログラムデータに
従って演算処理を実行する。第2の期間においては、第
2のプロセサがプログラムメモリに直接アクセスし、そ
のプログラムデータに従って演算処理を実行する。第1
のプロセサおよび第2のプロセサは同じアーキテクチュ
アであるため、プログラム互換性を有し、したがって、
両プロセサが直接プログラムメモリをアクセスすること
によって、演算処理が実行可能なのである。
期間を規定する。すなわち、信号SSYNC がハイレベルの
とき第1の期間であり、ローレベルのとき第2の期間で
ある。第1の期間においては、第1のプロセサがプログ
ラムメモリに直接アクセスし、そのプログラムデータに
従って演算処理を実行する。第2の期間においては、第
2のプロセサがプログラムメモリに直接アクセスし、そ
のプログラムデータに従って演算処理を実行する。第1
のプロセサおよび第2のプロセサは同じアーキテクチュ
アであるため、プログラム互換性を有し、したがって、
両プロセサが直接プログラムメモリをアクセスすること
によって、演算処理が実行可能なのである。
【0010】
【発明の効果】この発明によれば、あたかも1つのCP
U(プロセサ)が直列的処理を行うように作成したプロ
グラムを、僅かな変更を加えるだけで、2つのCPU
(プロセサ)が並列処理を行うためのプログラムに変更
可能である。また、プログラムをダウンロードしないた
め、プログラムを一連のROMアドレスに書き込む必要
がない。また、同じサブルーチンを各分割プログラムブ
ロック毎に記憶させる必要がないので、ROM容量を無
駄遣いすることがない。したがって、プログラム作成上
の制約が生じない。
U(プロセサ)が直列的処理を行うように作成したプロ
グラムを、僅かな変更を加えるだけで、2つのCPU
(プロセサ)が並列処理を行うためのプログラムに変更
可能である。また、プログラムをダウンロードしないた
め、プログラムを一連のROMアドレスに書き込む必要
がない。また、同じサブルーチンを各分割プログラムブ
ロック毎に記憶させる必要がないので、ROM容量を無
駄遣いすることがない。したがって、プログラム作成上
の制約が生じない。
【0011】この発明によれば、さらに、プログラムを
ダウンロードするためのRAMを必要としないので、シ
ステム全体の価格が安価となる。また、プログラムをダ
ウンロードするためのRAMを備えていない情報処理装
置が先行して発売されている場合、従来技術を用いて処
理能力を向上させることができなかったが、この発明の
補助演算機能付外部メモリ装置を用いれば、安価にシス
テム全体としての情報処理能力を向上させることができ
る。
ダウンロードするためのRAMを必要としないので、シ
ステム全体の価格が安価となる。また、プログラムをダ
ウンロードするためのRAMを備えていない情報処理装
置が先行して発売されている場合、従来技術を用いて処
理能力を向上させることができなかったが、この発明の
補助演算機能付外部メモリ装置を用いれば、安価にシス
テム全体としての情報処理能力を向上させることができ
る。
【0012】この発明の上述の目的およびその他の目的
と特徴は図面を参照して行う以下の実施例の詳細な説明
から一層明らかとなろう。
と特徴は図面を参照して行う以下の実施例の詳細な説明
から一層明らかとなろう。
【0013】
【実施例】以下に示す実施例では、この発明がゲームシ
ステムに適用される。しかしながら、この発明は、ゲー
ムシステムのみならず、画像処理システムや他の同様の
情報処理システムに適用できることを予め指摘してお
く。図3はこの発明の一実施例のコプロセサシステムの
ブロック図である。図3に示すコプロセサシステムの一
例であるゲームシステム10は、本体12およびその本
体12にたとえば64ピンのコネクタ16によって着脱
自在に装着される補助演算機能付外部メモリ装置の一例
であるカートリッジ14を含む。本体12は本体側プロ
セサとしてのS−CPU18,およびPPU(Picture P
rocessing Unit) 20を含む。S−CPU18はカート
リッジ14に含まれるM−ROM22に予め格納されて
いるプログラムに従って動作する。S−CPU18には
ワーキングRAM、W−RAM24が結合される。本体
12はまた、発振器23を含み、この発振器23からの
約21MHzの原クロック信号Z21Mはクロックジェネレ
ータ25に与えられる。クロックジェネレータ25は分
周器を含み、この分周器によって原クロック信号Z21Mが
8分周されて、約2.68MHzのシステムクロック信
号SYSCK としてS−CPU18に与えられる。なお、こ
の原クロック信号Z21Mは、システムクロック信号SYSCK
とともに、後述のカートリッジ14のクロックジェネレ
ータ216に与えられる。PPU20はS−CPU18
の制御の下で、V−RAM26と協働して画像処理を実
行し、ビデオ信号をモニタ28に与える。したがって、
モニタ28の画面上にはゲーム画像が表示される。な
お、本体12のS−CPU18やPPU20の一般的な
動作それ自体は既に周知であるばかりでなく、この発明
に直接は関係しないので、ここでは、詳細な説明は省略
する。
ステムに適用される。しかしながら、この発明は、ゲー
ムシステムのみならず、画像処理システムや他の同様の
情報処理システムに適用できることを予め指摘してお
く。図3はこの発明の一実施例のコプロセサシステムの
ブロック図である。図3に示すコプロセサシステムの一
例であるゲームシステム10は、本体12およびその本
体12にたとえば64ピンのコネクタ16によって着脱
自在に装着される補助演算機能付外部メモリ装置の一例
であるカートリッジ14を含む。本体12は本体側プロ
セサとしてのS−CPU18,およびPPU(Picture P
rocessing Unit) 20を含む。S−CPU18はカート
リッジ14に含まれるM−ROM22に予め格納されて
いるプログラムに従って動作する。S−CPU18には
ワーキングRAM、W−RAM24が結合される。本体
12はまた、発振器23を含み、この発振器23からの
約21MHzの原クロック信号Z21Mはクロックジェネレ
ータ25に与えられる。クロックジェネレータ25は分
周器を含み、この分周器によって原クロック信号Z21Mが
8分周されて、約2.68MHzのシステムクロック信
号SYSCK としてS−CPU18に与えられる。なお、こ
の原クロック信号Z21Mは、システムクロック信号SYSCK
とともに、後述のカートリッジ14のクロックジェネレ
ータ216に与えられる。PPU20はS−CPU18
の制御の下で、V−RAM26と協働して画像処理を実
行し、ビデオ信号をモニタ28に与える。したがって、
モニタ28の画面上にはゲーム画像が表示される。な
お、本体12のS−CPU18やPPU20の一般的な
動作それ自体は既に周知であるばかりでなく、この発明
に直接は関係しないので、ここでは、詳細な説明は省略
する。
【0014】カートリッジ14は、上述のM−ROM2
2の他にコプロセサ30およびB−RAM32を含み、
コプロセサ30は、補助演算機能を達成するためのCP
UコアとしてのC−CPU34,アクセス制御回路3
5,I−RAM36,およびクロックジェネレータ21
6を含む。B−RAM32は、たとえばリチウム電池等
でバックアップされたRAMであり、たとえば4Mビッ
トの記憶容量を有する。I−RAM36は、たとえば1
6KビットのSRAMで構成される。B−RAM32お
よびI−RAM36は、ともに、S−CPU18および
C−CPU34の外部RAMとして機能する。なお、M
−ROM22は、たとえば最大64MビットのマスクR
OMで構成され、その中には、ゲーム用プログラムが格
納されている。M−ROM22のアクセスタイムは、一
例として、16ビット幅で約120ナノ秒(8ビット幅
で約60ナノ秒)である。
2の他にコプロセサ30およびB−RAM32を含み、
コプロセサ30は、補助演算機能を達成するためのCP
UコアとしてのC−CPU34,アクセス制御回路3
5,I−RAM36,およびクロックジェネレータ21
6を含む。B−RAM32は、たとえばリチウム電池等
でバックアップされたRAMであり、たとえば4Mビッ
トの記憶容量を有する。I−RAM36は、たとえば1
6KビットのSRAMで構成される。B−RAM32お
よびI−RAM36は、ともに、S−CPU18および
C−CPU34の外部RAMとして機能する。なお、M
−ROM22は、たとえば最大64MビットのマスクR
OMで構成され、その中には、ゲーム用プログラムが格
納されている。M−ROM22のアクセスタイムは、一
例として、16ビット幅で約120ナノ秒(8ビット幅
で約60ナノ秒)である。
【0015】S−CPU18およびC−CPU34は、
たとえばウェスタンデザインコーポレーション(WD
C)製の“65C816”のような同じCPUコアを用
いる。ただし、この実施例では、C−CPU34の動作
周波数は、10.73MHzであり、S−CPU18の
動作周波数は2.68MHz(または3.58MHz)
である。換言すれば、S−CPU18およびC−CPU
34は、同じCPUコアを用いるため、同じアーキテク
チュアで動作する、すなわち、プログラム互換性を有す
るが、動作速度についていえばC−CPU34の動作速
度はS−CPU18の動作速度の最大4倍である。8ビ
ットCPUであるS−CPU18のサイクルタイムは、
2.68MHzのとき約372ナノ秒であり、8ビット
CPUであるC−CPU34のサイクルタイムは10.
37MHzのとき約93ナノ秒である。他方、M−RO
M22のアクセスタイムは上述のように16ビット幅で
約120ナノ秒であるので、M−ROM22のアクセス
タイムは8ビット換算でC−CPU34のサイクルタイ
ムより短い。そこで、以下の実施例では、このようなタ
イム差を利用して、S−CPU18にはM−ROM22
をアクセスしてそこからプログラムデータを読み出すに
十分な、たとえば186ナノ秒を割り当て、C−CPU
34にも同様に186ナノ秒を割り当てることによっ
て、S−CPU18とC−CPU34とが、実質的に同
時に、M−ROM22にアクセスできるようにしてい
る。そして、C−CPU34に割り当てられた186ナ
ノ秒はC−CPU34のサイクルタイムの2倍であり、
したがって、C−CPU34は186ナノ秒の間に2回
動作する。
たとえばウェスタンデザインコーポレーション(WD
C)製の“65C816”のような同じCPUコアを用
いる。ただし、この実施例では、C−CPU34の動作
周波数は、10.73MHzであり、S−CPU18の
動作周波数は2.68MHz(または3.58MHz)
である。換言すれば、S−CPU18およびC−CPU
34は、同じCPUコアを用いるため、同じアーキテク
チュアで動作する、すなわち、プログラム互換性を有す
るが、動作速度についていえばC−CPU34の動作速
度はS−CPU18の動作速度の最大4倍である。8ビ
ットCPUであるS−CPU18のサイクルタイムは、
2.68MHzのとき約372ナノ秒であり、8ビット
CPUであるC−CPU34のサイクルタイムは10.
37MHzのとき約93ナノ秒である。他方、M−RO
M22のアクセスタイムは上述のように16ビット幅で
約120ナノ秒であるので、M−ROM22のアクセス
タイムは8ビット換算でC−CPU34のサイクルタイ
ムより短い。そこで、以下の実施例では、このようなタ
イム差を利用して、S−CPU18にはM−ROM22
をアクセスしてそこからプログラムデータを読み出すに
十分な、たとえば186ナノ秒を割り当て、C−CPU
34にも同様に186ナノ秒を割り当てることによっ
て、S−CPU18とC−CPU34とが、実質的に同
時に、M−ROM22にアクセスできるようにしてい
る。そして、C−CPU34に割り当てられた186ナ
ノ秒はC−CPU34のサイクルタイムの2倍であり、
したがって、C−CPU34は186ナノ秒の間に2回
動作する。
【0016】なお、実施例のゲームシステム10におい
て、S−CPU18,W−RAM24,およびコプロセ
サ30すなわちC−CPU34はアドレスバス38で結
合され、S−CPU18,PPU20,W−RAM2
4,およびコプロセサ30すなわちC−CPU34はデ
ータバス40で結合される。コプロセサ30すなわちC
−CPU34とM−ROM22とはアドレスバス42お
よびデータバス44によって結合され、コプロセサ30
すなわちC−CPU34とB−RAM32とはアドレス
バス46およびデータバス48によって結合される。ア
ドレスバス38は24ビットであり、データバス40は
8ビットであり、アドレスバス42は23ビットであ
り、データバス44は16ビットであり、アドレスバス
46は19ビットであり、データバス48は8ビットで
ある。そして、S−CPU18とC−CPU34とは、
同じアクセス制御回路35を介して、M−ROM22ま
たはB−RAM32をアクセスする。である。したがっ
て、図4および図5に示すように、S−CPU18およ
びC−CPU34には、S−CPU18のみがアクセス
できるW−RAM24のアドレスペースを除き、同じた
とえば24ビットのアドレススペースが割り付けられて
いる。なお、上述のように各CPUは8ビットである
が、バンク切換の技術を用いることによって24ビット
のアドレススペースを有する。すなわち、図4にはS−
CPU18から見たメモリマップが示され、図5にはC
−CPU34から見たメモリマップが示されるが、2つ
のメモリマッピングは同じである。ただし、I−RAM
36のアドレスマッピングは、S−CPU18とC−C
PU34とでは多少異なる。この実施例では、S−CP
U18は“**3000h〜**37FFh”でI−R
AM36をアクセスできるが、C−CPU34は“**
0000h〜**07FFh”および“**3000h
〜**37FFh”でI−RAM36をアクセスできる
ようにしている。なお、“**”は“00h〜3Fh”
バンクおよび“80h〜BFh”バンクである。
て、S−CPU18,W−RAM24,およびコプロセ
サ30すなわちC−CPU34はアドレスバス38で結
合され、S−CPU18,PPU20,W−RAM2
4,およびコプロセサ30すなわちC−CPU34はデ
ータバス40で結合される。コプロセサ30すなわちC
−CPU34とM−ROM22とはアドレスバス42お
よびデータバス44によって結合され、コプロセサ30
すなわちC−CPU34とB−RAM32とはアドレス
バス46およびデータバス48によって結合される。ア
ドレスバス38は24ビットであり、データバス40は
8ビットであり、アドレスバス42は23ビットであ
り、データバス44は16ビットであり、アドレスバス
46は19ビットであり、データバス48は8ビットで
ある。そして、S−CPU18とC−CPU34とは、
同じアクセス制御回路35を介して、M−ROM22ま
たはB−RAM32をアクセスする。である。したがっ
て、図4および図5に示すように、S−CPU18およ
びC−CPU34には、S−CPU18のみがアクセス
できるW−RAM24のアドレスペースを除き、同じた
とえば24ビットのアドレススペースが割り付けられて
いる。なお、上述のように各CPUは8ビットである
が、バンク切換の技術を用いることによって24ビット
のアドレススペースを有する。すなわち、図4にはS−
CPU18から見たメモリマップが示され、図5にはC
−CPU34から見たメモリマップが示されるが、2つ
のメモリマッピングは同じである。ただし、I−RAM
36のアドレスマッピングは、S−CPU18とC−C
PU34とでは多少異なる。この実施例では、S−CP
U18は“**3000h〜**37FFh”でI−R
AM36をアクセスできるが、C−CPU34は“**
0000h〜**07FFh”および“**3000h
〜**37FFh”でI−RAM36をアクセスできる
ようにしている。なお、“**”は“00h〜3Fh”
バンクおよび“80h〜BFh”バンクである。
【0017】なお、S−CPU18の各メモリ22,3
2および36へのアクセスと、C−CPU34の各メモ
リ22,32および36へのアクセスとが、クロックジ
ェネレータ216からの信号SSYNC(SSSYNC) を受けるア
クセス制御回路35によって制御される。このアクセス
制御回路35は、後述のM−ROMシーケンサ54,B
−RAMシーケンサ98およびI−RAMシーケンサ1
00を含むが、それらの動作は後述する。
2および36へのアクセスと、C−CPU34の各メモ
リ22,32および36へのアクセスとが、クロックジ
ェネレータ216からの信号SSYNC(SSSYNC) を受けるア
クセス制御回路35によって制御される。このアクセス
制御回路35は、後述のM−ROMシーケンサ54,B
−RAMシーケンサ98およびI−RAMシーケンサ1
00を含むが、それらの動作は後述する。
【0018】図6〜図8はコプロセサ30のブロック図
であり、コプロセサ30は、C−CPU34に結合され
たアドレスデコーダ50を含む。アドレスデコーダ50
はS−CPU18およびC−CPU34の両方のアドレ
スをデコードする。したがって、アドレスデコーダ50
はS−CPU18のアドレスデータSAおよびC−CP
U34のアドレスデータCAを受ける。アドレスデコー
ダ50の出力は後述のように種々のレジスタ等のイネー
ブル信号またはクロックとして与えられる。なお、アド
レスデコーダ50はC−CPU34から、このC−CP
U34がM−ROM22からプログラムデータを読み出
すための信号CRWB(”B”は反転:バーを意味する。以
下同様。)を受ける。
であり、コプロセサ30は、C−CPU34に結合され
たアドレスデコーダ50を含む。アドレスデコーダ50
はS−CPU18およびC−CPU34の両方のアドレ
スをデコードする。したがって、アドレスデコーダ50
はS−CPU18のアドレスデータSAおよびC−CP
U34のアドレスデータCAを受ける。アドレスデコー
ダ50の出力は後述のように種々のレジスタ等のイネー
ブル信号またはクロックとして与えられる。なお、アド
レスデコーダ50はC−CPU34から、このC−CP
U34がM−ROM22からプログラムデータを読み出
すための信号CRWB(”B”は反転:バーを意味する。以
下同様。)を受ける。
【0019】M−ROMSMMC52は、M−ROM2
2(図3)のバンク切り換えを行うと共に、S−CPU
18およびC−CPU34のアクセスの切り換えを行
う。そのために、M−ROMSMMC52はS−CPU
18のアドレスデータSAおよびC−CPU34のアド
レスデータCAならびにS−CPU18のデータSDお
よびC−CPU34のデータCDを受けると共に、M−
ROMシーケンサ54からの信号TMSAを受ける。
2(図3)のバンク切り換えを行うと共に、S−CPU
18およびC−CPU34のアクセスの切り換えを行
う。そのために、M−ROMSMMC52はS−CPU
18のアドレスデータSAおよびC−CPU34のアド
レスデータCAならびにS−CPU18のデータSDお
よびC−CPU34のデータCDを受けると共に、M−
ROMシーケンサ54からの信号TMSAを受ける。
【0020】図3のアクセス制御回路35に含まれるM
−ROMシーケンサ54は図9に詳細に示すように、ア
ドレスデコーダ56および58を含む。アドレスデコー
ダ56はS−CPU18のアドレスデータSAをデコー
ドし、アドレスデータSAが図4に示したM−ROM2
2をアクセスすべきアドレスにヒットするとハイレベル
の信号SMHIT を出力する。アドレスデコーダ58はC−
CPU34のアドレスデータCAをデコードし、アドレ
スデータCAが図5に示したM−ROM22をアクセス
すべきアドレスにヒットするとハイレベルの信号CMHIT
を出力する。信号SMHIT はANDゲート60の一方入力
に与えられ、このANDゲート60の他方入力には、S
−CPU18がM−ROM22をアクセスするために決
められたタイミング信号SSYNC (後述:図18または図
19)が与えられる。このANDゲート60の出力は信
号TMSAとして、上述のM−ROMSMMC52に与えら
れる。したがって、M−ROMSMMC52において、
この信号TMSAがハイレベルのときS−CPU18のアド
レスSAが有効化され、ローレベルのときC−CPU3
4のアドレスCAが有効化される。このようにして、有
効化されたアドレスSAまたはCAは、M−ROM22
のアドレス入力MA(図7)に与えられる。
−ROMシーケンサ54は図9に詳細に示すように、ア
ドレスデコーダ56および58を含む。アドレスデコー
ダ56はS−CPU18のアドレスデータSAをデコー
ドし、アドレスデータSAが図4に示したM−ROM2
2をアクセスすべきアドレスにヒットするとハイレベル
の信号SMHIT を出力する。アドレスデコーダ58はC−
CPU34のアドレスデータCAをデコードし、アドレ
スデータCAが図5に示したM−ROM22をアクセス
すべきアドレスにヒットするとハイレベルの信号CMHIT
を出力する。信号SMHIT はANDゲート60の一方入力
に与えられ、このANDゲート60の他方入力には、S
−CPU18がM−ROM22をアクセスするために決
められたタイミング信号SSYNC (後述:図18または図
19)が与えられる。このANDゲート60の出力は信
号TMSAとして、上述のM−ROMSMMC52に与えら
れる。したがって、M−ROMSMMC52において、
この信号TMSAがハイレベルのときS−CPU18のアド
レスSAが有効化され、ローレベルのときC−CPU3
4のアドレスCAが有効化される。このようにして、有
効化されたアドレスSAまたはCAは、M−ROM22
のアドレス入力MA(図7)に与えられる。
【0021】アドレスデコーダ56の出力はまた、AN
Dゲート62の一方入力に与えられ、ANDゲート62
の他方入力にはS−CPU18がM−ROM22を読み
出すときローレベルとなる信号SCPURDB が与えられる。
ANDゲート62の出力信号SMRDOUT は、したがって、
S−CPU18がM−ROM22を読み出すべきときに
ハイレベルとなる。信号SMRDOUT は、M−ROM22か
ら読み出され、データ出力MDから出力されるプログラ
ムデータをS−CPU18のデータバスSDに入力する
ためのラッチ/バッファ64(図7)に与えられる。図
7のラッチ/バッファ64はデータ出力MDに結合され
たラッチ66を含み、このラッチ66のラッチ信号とし
ては前述の信号SSYNC が与えられる。ラッチ66の上位
8ビットおよび下位8ビットはそれぞれトライステート
バッファ68および70に与えられる。トライステート
バッファ68および70の制御入力としてはANDゲー
ト72および74の出力がそれぞれ与えられる。AND
ゲート72および74の各一方入力には上記信号SMRDOU
T が与えられ、ANDゲート72の他方入力にはS−C
PU18のアドレスSAの最下位ビットSA0 が与えら
れ、ANDゲート74の他方入力には最下位ビットSA0
の反転が与えられる。したがって、最下位ビットSA0 が
ローレベルのときM−ROM22のデータの下位8ビッ
トMD0〜MD7がトライステートバッファ70から出
力され、最下位ビットSA0 がハイレベルのときM−RO
M22のデータの上位8ビットMD8〜MD15がトラ
イステートバッファ68から出力され、それぞれ、S−
CPU18のデータバスSDに入力される。
Dゲート62の一方入力に与えられ、ANDゲート62
の他方入力にはS−CPU18がM−ROM22を読み
出すときローレベルとなる信号SCPURDB が与えられる。
ANDゲート62の出力信号SMRDOUT は、したがって、
S−CPU18がM−ROM22を読み出すべきときに
ハイレベルとなる。信号SMRDOUT は、M−ROM22か
ら読み出され、データ出力MDから出力されるプログラ
ムデータをS−CPU18のデータバスSDに入力する
ためのラッチ/バッファ64(図7)に与えられる。図
7のラッチ/バッファ64はデータ出力MDに結合され
たラッチ66を含み、このラッチ66のラッチ信号とし
ては前述の信号SSYNC が与えられる。ラッチ66の上位
8ビットおよび下位8ビットはそれぞれトライステート
バッファ68および70に与えられる。トライステート
バッファ68および70の制御入力としてはANDゲー
ト72および74の出力がそれぞれ与えられる。AND
ゲート72および74の各一方入力には上記信号SMRDOU
T が与えられ、ANDゲート72の他方入力にはS−C
PU18のアドレスSAの最下位ビットSA0 が与えら
れ、ANDゲート74の他方入力には最下位ビットSA0
の反転が与えられる。したがって、最下位ビットSA0 が
ローレベルのときM−ROM22のデータの下位8ビッ
トMD0〜MD7がトライステートバッファ70から出
力され、最下位ビットSA0 がハイレベルのときM−RO
M22のデータの上位8ビットMD8〜MD15がトラ
イステートバッファ68から出力され、それぞれ、S−
CPU18のデータバスSDに入力される。
【0022】図9において上記信号CMHIT はNANDゲ
ート76の一方入力に与えられ、このNANDゲート7
6の他方入力には上述のANDゲート60からの信号TM
SAが与えられる。NANDゲート76の出力は信号RDY
となり、この信号RDY はC−CPU34を停止するため
の信号として作用する。すなわち、信号RDY がローレベ
ルのときC−CPU34がウェイト状態にされる。した
がって、C−CPU34およびS−CPU18がともに
M−ROM22をアクセスするとき、信号RDYがローレ
ベルとなり、C−CPU34に信号CRDYとして与えられ
る。応じて、C−CPU34が待機状態になる。これに
より、S−CPU18とC−CPU34とが同時にM−
ROM22またはB−RAM32をアクセスしたとき、
C−CPU34が待機状態になってS−CPU18のア
クセスが優先される。そして、S−CPU18のアクセ
スが終了した後に、C−CPU34の待機状態が解除さ
れ、C−CPU34は、M−ROM22またはB−RA
M32にアクセスする。そのため、S−CPU18とC
−CPU34とによるM−ROM22またはB−RAM
32の非同期的2フェーズアクセスが可能となり、1つ
のメモリ、すなわちM−ROM22に記憶されたプログ
ラムをS−CPU18とC−CPU34とが同時に実行
することが可能となる。
ート76の一方入力に与えられ、このNANDゲート7
6の他方入力には上述のANDゲート60からの信号TM
SAが与えられる。NANDゲート76の出力は信号RDY
となり、この信号RDY はC−CPU34を停止するため
の信号として作用する。すなわち、信号RDY がローレベ
ルのときC−CPU34がウェイト状態にされる。した
がって、C−CPU34およびS−CPU18がともに
M−ROM22をアクセスするとき、信号RDYがローレ
ベルとなり、C−CPU34に信号CRDYとして与えられ
る。応じて、C−CPU34が待機状態になる。これに
より、S−CPU18とC−CPU34とが同時にM−
ROM22またはB−RAM32をアクセスしたとき、
C−CPU34が待機状態になってS−CPU18のア
クセスが優先される。そして、S−CPU18のアクセ
スが終了した後に、C−CPU34の待機状態が解除さ
れ、C−CPU34は、M−ROM22またはB−RA
M32にアクセスする。そのため、S−CPU18とC
−CPU34とによるM−ROM22またはB−RAM
32の非同期的2フェーズアクセスが可能となり、1つ
のメモリ、すなわちM−ROM22に記憶されたプログ
ラムをS−CPU18とC−CPU34とが同時に実行
することが可能となる。
【0023】また、ANDゲート60からの信号TMSAの
反転,アドレスデコーダ58からの信号CMHIT ,および
C−CPU34がM−ROM22を読み出すべきときハ
イレベルとなる信号CRWBがANDゲート78の3入力の
それぞれに与えられる。したがって、このANDゲート
78からは、S−CPU18がM−ROM22をアクセ
スしないとき、信号CMHIT に応答して、C−CPU34
がM−ROM22からデータを読み出すべきときハイレ
ベルとなる信号CMRDOUT が出力される。信号CMRDOUT
は、M−ROM22からのプログラムデータをC−CP
U34のデータバスCDに入力するためのラッチ/バッ
ファ80(図7)に与えられる。図7のラッチ/バッフ
ァ80はM−ROM22のデータ出力MDに結合された
ラッチ82を含み、このラッチ82のラッチ信号として
は信号CSYNC (後述)が与えられる。ラッチ82の上位
8ビットおよび下位8ビットはそれぞれトライステート
バッファ84および86に与えられる。トライステート
バッファ84および86の制御入力としてはANDゲー
ト88および90の出力がそれぞれ与えられる。AND
ゲート88および90の各一方入力には上記信号CMRDOU
T が与えられ、ANDゲート88の他方入力にはC−C
PU34のアドレスCAの最下位ビットCA0 が与えら
れ、ANDゲート90の他方入力には最下位ビットCA0
の反転が与えられる。したがって、最下位ビットCA0 が
ローレベルのときM−ROM22のデータの下位8ビッ
トMD0〜MD7がトライステートバッファ86から出
力され、最下位ビットSA0 がハイレベルのときM−RO
M22のデータの上位8ビットMD8〜MD15がトラ
イステートバッファ84から出力され、それぞれ、C−
CPU34のデータバスCDに入力される。
反転,アドレスデコーダ58からの信号CMHIT ,および
C−CPU34がM−ROM22を読み出すべきときハ
イレベルとなる信号CRWBがANDゲート78の3入力の
それぞれに与えられる。したがって、このANDゲート
78からは、S−CPU18がM−ROM22をアクセ
スしないとき、信号CMHIT に応答して、C−CPU34
がM−ROM22からデータを読み出すべきときハイレ
ベルとなる信号CMRDOUT が出力される。信号CMRDOUT
は、M−ROM22からのプログラムデータをC−CP
U34のデータバスCDに入力するためのラッチ/バッ
ファ80(図7)に与えられる。図7のラッチ/バッフ
ァ80はM−ROM22のデータ出力MDに結合された
ラッチ82を含み、このラッチ82のラッチ信号として
は信号CSYNC (後述)が与えられる。ラッチ82の上位
8ビットおよび下位8ビットはそれぞれトライステート
バッファ84および86に与えられる。トライステート
バッファ84および86の制御入力としてはANDゲー
ト88および90の出力がそれぞれ与えられる。AND
ゲート88および90の各一方入力には上記信号CMRDOU
T が与えられ、ANDゲート88の他方入力にはC−C
PU34のアドレスCAの最下位ビットCA0 が与えら
れ、ANDゲート90の他方入力には最下位ビットCA0
の反転が与えられる。したがって、最下位ビットCA0 が
ローレベルのときM−ROM22のデータの下位8ビッ
トMD0〜MD7がトライステートバッファ86から出
力され、最下位ビットSA0 がハイレベルのときM−RO
M22のデータの上位8ビットMD8〜MD15がトラ
イステートバッファ84から出力され、それぞれ、C−
CPU34のデータバスCDに入力される。
【0024】前述の信号CSYNC はC−CPU34がM−
ROM22からデータを読み出し、かつ読み出されたデ
ータをラッチ82にラッチすべきタイミングを示す信号
であり、ANDゲート92から出力される。すなわち、
信号CRWB,信号CMHIT ,アドレスCAの最下位ビットCA
0 の反転,およびクロック信号PHI2がANDゲート92
の4入力に与えられる。クロック信号PHI2は、図18ま
たは図19に示すように、C−CPU34のための周波
数を有し、たとえば10.73MHzのクロックであ
る。したがって、信号CSYNC はC−CPU34がM−R
OM22をアクセスするときにハイレベルとなって出力
され、ローレベルのときラッチ82がM−ROM22の
データバスMDから与えられる16ビットのプログラム
データをラッチする。
ROM22からデータを読み出し、かつ読み出されたデ
ータをラッチ82にラッチすべきタイミングを示す信号
であり、ANDゲート92から出力される。すなわち、
信号CRWB,信号CMHIT ,アドレスCAの最下位ビットCA
0 の反転,およびクロック信号PHI2がANDゲート92
の4入力に与えられる。クロック信号PHI2は、図18ま
たは図19に示すように、C−CPU34のための周波
数を有し、たとえば10.73MHzのクロックであ
る。したがって、信号CSYNC はC−CPU34がM−R
OM22をアクセスするときにハイレベルとなって出力
され、ローレベルのときラッチ82がM−ROM22の
データバスMDから与えられる16ビットのプログラム
データをラッチする。
【0025】S−CPU18およびC−CPU34は、
図4および図5のメモリマップからわかるようにM−R
OM22の全領域を共有しており、いつでも非同期にM
−ROM22をアクセスすることができる。そのときの
M−ROM22へのアクセスを調停するのがM−ROM
シーケンサ54である。図9のM−ROMシーケンサ5
4のANDゲート60から信号TMSAが出力されると図8
のM−ROMSMMC52においてS−CPU18から
のアドレスSAを有効化する。したがって、この場合に
は、C−CPU34がM−ROM22のアドレスをヒッ
トするとNANDゲート76から信号RDY が出力される
ので、図10(B)または(C)に示すように、信号TM
SAのハイレベル期間中、C−CPU34はM−ROM2
2へのアクセスを待つ。したがって、C−CPU34
は、信号TMSAがローレベルとなり、したがって信号RDY
がハイレベルのとき、M−ROM22をアクセスするこ
とができる。このようにして、S−CPU18およびC
−CPU34は、図10(C)に示すように、M−RO
M22を非同期の2フェーズでアクセスすることができ
るのである。
図4および図5のメモリマップからわかるようにM−R
OM22の全領域を共有しており、いつでも非同期にM
−ROM22をアクセスすることができる。そのときの
M−ROM22へのアクセスを調停するのがM−ROM
シーケンサ54である。図9のM−ROMシーケンサ5
4のANDゲート60から信号TMSAが出力されると図8
のM−ROMSMMC52においてS−CPU18から
のアドレスSAを有効化する。したがって、この場合に
は、C−CPU34がM−ROM22のアドレスをヒッ
トするとNANDゲート76から信号RDY が出力される
ので、図10(B)または(C)に示すように、信号TM
SAのハイレベル期間中、C−CPU34はM−ROM2
2へのアクセスを待つ。したがって、C−CPU34
は、信号TMSAがローレベルとなり、したがって信号RDY
がハイレベルのとき、M−ROM22をアクセスするこ
とができる。このようにして、S−CPU18およびC
−CPU34は、図10(C)に示すように、M−RO
M22を非同期の2フェーズでアクセスすることができ
るのである。
【0026】なお、図10(A)に示すように、C−C
PU34のみがM−ROM22をアクセスする場合、C
−CPU34の動作周波数は、クロック信号PHI2によっ
て、10.73MHzである。ただし、図10(B)ま
たは(C)に示すように、S−CPU18とC−CPU
34とが2フェーズでM−ROM22をアクセスする場
合には、S−CPU18がM−ROM22をアクセスし
ている期間中はC−CPU34がウェイト状態になるた
め、C−CPU34の動作周波数は5.37MHzとな
る。しかしながら、S−CPU18の動作周波数はシス
テムクロック信号SYSCK によって、常に、2.68MH
zとされる。
PU34のみがM−ROM22をアクセスする場合、C
−CPU34の動作周波数は、クロック信号PHI2によっ
て、10.73MHzである。ただし、図10(B)ま
たは(C)に示すように、S−CPU18とC−CPU
34とが2フェーズでM−ROM22をアクセスする場
合には、S−CPU18がM−ROM22をアクセスし
ている期間中はC−CPU34がウェイト状態になるた
め、C−CPU34の動作周波数は5.37MHzとな
る。しかしながら、S−CPU18の動作周波数はシス
テムクロック信号SYSCK によって、常に、2.68MH
zとされる。
【0027】図8に示すB−RAMSMMC94および
I−RAMSMMC96は、ともに、先に説明したM−
ROMSMMC52と同様の機能を果たす。すなわち、
B−RAMSMMC94は、B−RAM32(図3)の
バンク切り換えを行うと共に、S−CPU18およびC
−CPU34の切り換えを行う。そのために、B−RA
MSMMC94はS−CPU18のアドレスデータSA
およびC−CPU34のアドレスデータCA、ならびに
S−CPU18のデータSDおよびC−CPU34のデ
ータCDを受けると共に、B−RAMシーケンサ98か
らの信号TBSAを受ける。
I−RAMSMMC96は、ともに、先に説明したM−
ROMSMMC52と同様の機能を果たす。すなわち、
B−RAMSMMC94は、B−RAM32(図3)の
バンク切り換えを行うと共に、S−CPU18およびC
−CPU34の切り換えを行う。そのために、B−RA
MSMMC94はS−CPU18のアドレスデータSA
およびC−CPU34のアドレスデータCA、ならびに
S−CPU18のデータSDおよびC−CPU34のデ
ータCDを受けると共に、B−RAMシーケンサ98か
らの信号TBSAを受ける。
【0028】I−RAMSMMC96は、I−RAM3
6(図3)のバンク切り換えを行うと共に、S−CPU
18およびC−CPU34のアクセスの切り換えを行
う。そのために、I−RAMSMMC96はS−CPU
18のアドレスデータSAおよびC−CPU34のアド
レスデータCA、ならびにS−CPU18のデータSD
およびC−CPU34のデータCDを受けると共に、I
−RAMシーケンサ100からの信号TISAを受ける。
6(図3)のバンク切り換えを行うと共に、S−CPU
18およびC−CPU34のアクセスの切り換えを行
う。そのために、I−RAMSMMC96はS−CPU
18のアドレスデータSAおよびC−CPU34のアド
レスデータCA、ならびにS−CPU18のデータSD
およびC−CPU34のデータCDを受けると共に、I
−RAMシーケンサ100からの信号TISAを受ける。
【0029】図3のアクセス制御回路35に含まれるB
−RAMシーケンサ98は、I−RAMシーケンサ10
0と同じ回路構成を有し、図11に詳細に示すように、
アドレスデコーダ102および104を含む。アドレス
デコーダ102はS−CPU18のアドレスデータSA
をデコードし、アドレスデータSAがB−RAM32を
アクセスすべきアドレスにヒットするとハイレベルの信
号SBHIT を出力する。アドレスデコーダ104はC−C
PU34のアドレスデータCAをデコードし、アドレス
データCAがB−RAM32をアクセスすべきアドレス
にヒットするとハイレベルの信号CBHIT を出力する。信
号SBHIT はANDゲート106の一方入力に与えられ、
このANDゲート106の他方入力には、S−CPU1
8がB−RAM32をアクセスすることができるタイミ
ングを決めるための先に述べたタイミング信号SSYNC が
与えられる。このANDゲート106の出力は信号TBSA
として、B−RAMSMMC94に与えられる。したが
って、この信号TBSAがハイレベルのとき、S−CPU1
8がB−RAM32をアクセスするタイミングとなる。
すなわち、信号TBSAがハイレベルのときB−RAMSM
MC94はS−CPU18からのアドレスSAをB−R
AM32のアドレス入力BAに与え、ローレベルのと
き、C−CPU34からのアドレスCAがアドレス入力
BAに与えられる。
−RAMシーケンサ98は、I−RAMシーケンサ10
0と同じ回路構成を有し、図11に詳細に示すように、
アドレスデコーダ102および104を含む。アドレス
デコーダ102はS−CPU18のアドレスデータSA
をデコードし、アドレスデータSAがB−RAM32を
アクセスすべきアドレスにヒットするとハイレベルの信
号SBHIT を出力する。アドレスデコーダ104はC−C
PU34のアドレスデータCAをデコードし、アドレス
データCAがB−RAM32をアクセスすべきアドレス
にヒットするとハイレベルの信号CBHIT を出力する。信
号SBHIT はANDゲート106の一方入力に与えられ、
このANDゲート106の他方入力には、S−CPU1
8がB−RAM32をアクセスすることができるタイミ
ングを決めるための先に述べたタイミング信号SSYNC が
与えられる。このANDゲート106の出力は信号TBSA
として、B−RAMSMMC94に与えられる。したが
って、この信号TBSAがハイレベルのとき、S−CPU1
8がB−RAM32をアクセスするタイミングとなる。
すなわち、信号TBSAがハイレベルのときB−RAMSM
MC94はS−CPU18からのアドレスSAをB−R
AM32のアドレス入力BAに与え、ローレベルのと
き、C−CPU34からのアドレスCAがアドレス入力
BAに与えられる。
【0030】アドレスデコーダ102の出力は、また、
ANDゲート108の一方入力に与えられ、ANDゲー
ト108の他方入力にはS−CPU18がB−RAM3
2を読み出すときローレベルとなる信号SCPURDB が与え
られる。ANDゲート108の出力信号SBRDOUT は、し
たがって、S−CPU18がB−RAM32を読み出す
べきときにハイレベルとなり、B−RAM32へデータ
を書き込むときローレベルとなる。信号SBRDOUT は、B
−RAM32のデータ端子BDからのデータをS−CP
U18のデータバスSDに入力するためのラッチ/バッ
ファ110(図8)に与えられる。図8のラッチ/バッ
ファ110はデータ端子BDに結合されたラッチ112
を含み、このラッチ112のラッチ信号としては前述の
信号SSYNC が与えられる。ラッチ112はB−RAM3
2の8ビットの出力データを受け、それを信号SSYNC に
応答してラッチする。ラッチ112の出力はトライステ
ートバッファ114に与えられる。また、B−RAM3
2の8ビットの出力データはそのままトライステートバ
ッファ116に与えられる。トライステートバッファ1
14および116の制御入力としてはB−RAMシーケ
ンサ98からの信号SBRDOUT および信号CBRDOUT (後
述)が与えられる。したがって、信号SBRDOUTがハイレ
ベルのときB−RAM32の出力データがトライステー
トバッファ114から出力される。同様に、信号CBRDOU
T がハイレベルのときB−RAM32の出力データがト
ライステートバッファ116から出力され、それぞれ、
S−CPU18のデータバスSDおよびC−CPU34
のデータバスCDに入力される。
ANDゲート108の一方入力に与えられ、ANDゲー
ト108の他方入力にはS−CPU18がB−RAM3
2を読み出すときローレベルとなる信号SCPURDB が与え
られる。ANDゲート108の出力信号SBRDOUT は、し
たがって、S−CPU18がB−RAM32を読み出す
べきときにハイレベルとなり、B−RAM32へデータ
を書き込むときローレベルとなる。信号SBRDOUT は、B
−RAM32のデータ端子BDからのデータをS−CP
U18のデータバスSDに入力するためのラッチ/バッ
ファ110(図8)に与えられる。図8のラッチ/バッ
ファ110はデータ端子BDに結合されたラッチ112
を含み、このラッチ112のラッチ信号としては前述の
信号SSYNC が与えられる。ラッチ112はB−RAM3
2の8ビットの出力データを受け、それを信号SSYNC に
応答してラッチする。ラッチ112の出力はトライステ
ートバッファ114に与えられる。また、B−RAM3
2の8ビットの出力データはそのままトライステートバ
ッファ116に与えられる。トライステートバッファ1
14および116の制御入力としてはB−RAMシーケ
ンサ98からの信号SBRDOUT および信号CBRDOUT (後
述)が与えられる。したがって、信号SBRDOUTがハイレ
ベルのときB−RAM32の出力データがトライステー
トバッファ114から出力される。同様に、信号CBRDOU
T がハイレベルのときB−RAM32の出力データがト
ライステートバッファ116から出力され、それぞれ、
S−CPU18のデータバスSDおよびC−CPU34
のデータバスCDに入力される。
【0031】図11の上記信号CMHIT はNANDゲート
118の一方入力に与えられ、このNANDゲート11
8の他方入力には上述のANDゲート106からの信号
TBSAが与えられる。NANDゲート106の出力は信号
RDY となり、この信号RDY はC−CPU34を停止する
ための信号として作用する。すなわち、信号RDY がロー
レベルのときC−CPU34がウェイト状態にされる。
したがって、C−CPU34およびS−CPU18がと
もにB−RAM32をアクセスするとき、信号RDY がロ
ーレベルとなり、C−CPU34に信号CRDYとして与え
られる。応じて、C−CPU34が待機状態になる。
118の一方入力に与えられ、このNANDゲート11
8の他方入力には上述のANDゲート106からの信号
TBSAが与えられる。NANDゲート106の出力は信号
RDY となり、この信号RDY はC−CPU34を停止する
ための信号として作用する。すなわち、信号RDY がロー
レベルのときC−CPU34がウェイト状態にされる。
したがって、C−CPU34およびS−CPU18がと
もにB−RAM32をアクセスするとき、信号RDY がロ
ーレベルとなり、C−CPU34に信号CRDYとして与え
られる。応じて、C−CPU34が待機状態になる。
【0032】また、ANDゲート106からの信号TBSA
の反転,アドレスデコーダ104からの信号CBHIT ,お
よびC−CPU34が書き込みのとローレベルとなり読
み出しのときハイレベルとなる信号CRWBがANDゲート
120の3入力にそれぞれ与えられる。したがって、こ
のANDゲート120からは、S−CPU18がB−R
AM32をアクセスしていないとき、信号CBHIT に応答
して、ハイレベルとなる信号CBRDOUT が出力される。信
号CBRDOUT は、前述のように、トライステートバッファ
116の制御信号として与えられる。
の反転,アドレスデコーダ104からの信号CBHIT ,お
よびC−CPU34が書き込みのとローレベルとなり読
み出しのときハイレベルとなる信号CRWBがANDゲート
120の3入力にそれぞれ与えられる。したがって、こ
のANDゲート120からは、S−CPU18がB−R
AM32をアクセスしていないとき、信号CBHIT に応答
して、ハイレベルとなる信号CBRDOUT が出力される。信
号CBRDOUT は、前述のように、トライステートバッファ
116の制御信号として与えられる。
【0033】先に述べたように、I−RAMシーケンサ
100もB−RAMシーケンサ98と同じであり、した
がって、ここでは、I−RAMシーケンサ100の詳細
な説明は省略する。ただし、図11に、図11の回路が
I−RAMシーケンサ100として用いられたとき与え
られまたは出力される信号を括弧書きで図示した。図3
のアクセス制御回路35に含まれるI−RAMシーケン
サ100からの信号SIRDOUT は、I−RAM36からの
データをS−CPU18のデータバスSDに入力するた
めのラッチ/バッファ122(図8)に与えられる。図
8のラッチ/バッファ122はI−RAM36の読出デ
ータIRDを受けるラッチ124を含み、このラッチ1
24のラッチ信号としては前述の信号SSYNC が与えられ
る。ラッチ124はI−RAM36の8ビットの出力デ
ータを受け、それを信号SSYNC に応答してラッチする。
ラッチ124の出力はトライステートバッファ126に
与えられる。また、I−RAM36の8ビットの出力デ
ータはそのままトライステートバッファ128に与えら
れる。トライステートバッファ126および128の制
御入力としてはI−RAMシーケンサ100からの信号
SIRDOUT および信号CIRDOUT が与えられる。したがっ
て、信号SIRDOUT がハイレベルのときI−RAM36の
出力データがトライステートバッファ126から出力さ
れる。同様に、信号CIRDOUT がハイレベルのときI−R
AM36の出力データがトライステートバッファ128
から出力され、それぞれ、S−CPU18のデータバス
SDおよびC−CPU34のデータバスCDに入力され
る。
100もB−RAMシーケンサ98と同じであり、した
がって、ここでは、I−RAMシーケンサ100の詳細
な説明は省略する。ただし、図11に、図11の回路が
I−RAMシーケンサ100として用いられたとき与え
られまたは出力される信号を括弧書きで図示した。図3
のアクセス制御回路35に含まれるI−RAMシーケン
サ100からの信号SIRDOUT は、I−RAM36からの
データをS−CPU18のデータバスSDに入力するた
めのラッチ/バッファ122(図8)に与えられる。図
8のラッチ/バッファ122はI−RAM36の読出デ
ータIRDを受けるラッチ124を含み、このラッチ1
24のラッチ信号としては前述の信号SSYNC が与えられ
る。ラッチ124はI−RAM36の8ビットの出力デ
ータを受け、それを信号SSYNC に応答してラッチする。
ラッチ124の出力はトライステートバッファ126に
与えられる。また、I−RAM36の8ビットの出力デ
ータはそのままトライステートバッファ128に与えら
れる。トライステートバッファ126および128の制
御入力としてはI−RAMシーケンサ100からの信号
SIRDOUT および信号CIRDOUT が与えられる。したがっ
て、信号SIRDOUT がハイレベルのときI−RAM36の
出力データがトライステートバッファ126から出力さ
れる。同様に、信号CIRDOUT がハイレベルのときI−R
AM36の出力データがトライステートバッファ128
から出力され、それぞれ、S−CPU18のデータバス
SDおよびC−CPU34のデータバスCDに入力され
る。
【0034】B−RAM32およびI−RAM36への
書込データはセレクタ130および132によってそれ
ぞれ選択される。詳しく述べると、セレクタ130はS
−CPU18のデータバスSDからの8ビットのデータ
およびC−CPU34のデータバスCDからの8ビット
のデータを受ける。セレクタ130の選択信号としては
B−RAMシーケンサ98からの信号RDY が与えられ
る。すなわち、信号RDYがローレベルのときセレクタ1
30はS−CPU18からの書込データを選択してB−
RAM32に与え、信号RDY がハイレベルのときセレク
タ130はC−CPU34からの書込データを選択して
B−RAM32に与える。同じように、セレクタ132
はS−CPU18のデータバスSDからの8ビットのデ
ータおよびC−CPU34のデータバスCDからの8ビ
ットのデータを受ける。セレクタ132の選択信号とし
てはI−RAMシーケンサ100からの信号RDY が与え
られる。すなわち、信号RDY がローレベルのときセレク
タ132はS−CPU18からの書込データを選択して
I−RAM36に与え、信号RDY がハイレベルのときセ
レクタ132はC−CPU34からの書込データを選択
してI−RAM36に与える。
書込データはセレクタ130および132によってそれ
ぞれ選択される。詳しく述べると、セレクタ130はS
−CPU18のデータバスSDからの8ビットのデータ
およびC−CPU34のデータバスCDからの8ビット
のデータを受ける。セレクタ130の選択信号としては
B−RAMシーケンサ98からの信号RDY が与えられ
る。すなわち、信号RDYがローレベルのときセレクタ1
30はS−CPU18からの書込データを選択してB−
RAM32に与え、信号RDY がハイレベルのときセレク
タ130はC−CPU34からの書込データを選択して
B−RAM32に与える。同じように、セレクタ132
はS−CPU18のデータバスSDからの8ビットのデ
ータおよびC−CPU34のデータバスCDからの8ビ
ットのデータを受ける。セレクタ132の選択信号とし
てはI−RAMシーケンサ100からの信号RDY が与え
られる。すなわち、信号RDY がローレベルのときセレク
タ132はS−CPU18からの書込データを選択して
I−RAM36に与え、信号RDY がハイレベルのときセ
レクタ132はC−CPU34からの書込データを選択
してI−RAM36に与える。
【0035】S−CPU18およびC−CPU34は、
図4および図5のメモリマップからわかるようにB−R
AM32の全領域を共有しており、いつでも非同期にB
−RAM32をアクセスすることができる。そのときの
B−RAM32へのアクセスを調停するのがB−RAM
シーケンサ98である。図11のB−RAMシーケンサ
98のANDゲート106からハイレベルの信号TBSAが
出力されると図8のB−RAMSMMC94においてS
−CPU18からのアドレスSAを有効化する。したが
って、この場合には、C−CPU34がB−RAM32
のアドレスをヒットするとNANDゲート118から信
号RDY が出力されるので、図12(B)または(C)に
示すように、信号TMSAのハイレベル期間中、C−CPU
34はB−RAM32へのアクセスを待つ。したがっ
て、C−CPU34は、信号RDY がローレベルのとき、
かつ信号TMSAがローレベルのとき、B−RAM32をア
クセスすることができる。このようにして、S−CPU
18およびC−CPU34はB−RAM32へ完全に2
フェーズアクセスが可能である。
図4および図5のメモリマップからわかるようにB−R
AM32の全領域を共有しており、いつでも非同期にB
−RAM32をアクセスすることができる。そのときの
B−RAM32へのアクセスを調停するのがB−RAM
シーケンサ98である。図11のB−RAMシーケンサ
98のANDゲート106からハイレベルの信号TBSAが
出力されると図8のB−RAMSMMC94においてS
−CPU18からのアドレスSAを有効化する。したが
って、この場合には、C−CPU34がB−RAM32
のアドレスをヒットするとNANDゲート118から信
号RDY が出力されるので、図12(B)または(C)に
示すように、信号TMSAのハイレベル期間中、C−CPU
34はB−RAM32へのアクセスを待つ。したがっ
て、C−CPU34は、信号RDY がローレベルのとき、
かつ信号TMSAがローレベルのとき、B−RAM32をア
クセスすることができる。このようにして、S−CPU
18およびC−CPU34はB−RAM32へ完全に2
フェーズアクセスが可能である。
【0036】なお、図12(A)に示すように、C−C
PU34のみがB−RAM32をアクセスする場合、C
−CPU34の動作周波数は、クロック信号PHI2によっ
て、5.37MHzである。ただし、図12(B)また
は(C)に示すように、S−CPU18とC−CPU3
4とが2フェーズでB−RAM32をアクセスする場合
には、C−CPU34の動作周波数は2.68MHzと
なる。また、S−CPU18の動作周波数はシステムク
ロック信号SYSCK によって、常に、2.68MHzとさ
れる。
PU34のみがB−RAM32をアクセスする場合、C
−CPU34の動作周波数は、クロック信号PHI2によっ
て、5.37MHzである。ただし、図12(B)また
は(C)に示すように、S−CPU18とC−CPU3
4とが2フェーズでB−RAM32をアクセスする場合
には、C−CPU34の動作周波数は2.68MHzと
なる。また、S−CPU18の動作周波数はシステムク
ロック信号SYSCK によって、常に、2.68MHzとさ
れる。
【0037】同様に、S−CPU18およびC−CPU
34は、図4および図5のメモリマップからわかるよう
にI−RAM36の全領域にアクセスでき、いつでも非
同期にI−RAM36をアクセスすることができる。そ
のときのI−RAM36へのアクセスを調停するのがI
−RAMシーケンサ100である。図11のI−RAM
シーケンサ100のANDゲート106からハイレベル
の信号TISAが出力されると図8のI−RAMSMMC9
6においてS−CPU18からのアドレスSAを有効化
する。したがって、この場合には、C−CPU34がI
−RAM36のアドレスをヒットするとNANDゲート
118から信号RDY が出力されるので、図13(B)に
示すように、信号TISAのハイレベル期間中、C−CPU
34はI−RAM36へのアクセスを待つ。したがっ
て、C−CPU34は、信号RDY がローレベルのとき、
かつ信号TISAがローレベルのとき、I−RAM36をア
クセスすることができる。このようにして、S−CPU
18およびC−CPU34はI−RAM36へ完全に2
フェーズアクセスが可能である。
34は、図4および図5のメモリマップからわかるよう
にI−RAM36の全領域にアクセスでき、いつでも非
同期にI−RAM36をアクセスすることができる。そ
のときのI−RAM36へのアクセスを調停するのがI
−RAMシーケンサ100である。図11のI−RAM
シーケンサ100のANDゲート106からハイレベル
の信号TISAが出力されると図8のI−RAMSMMC9
6においてS−CPU18からのアドレスSAを有効化
する。したがって、この場合には、C−CPU34がI
−RAM36のアドレスをヒットするとNANDゲート
118から信号RDY が出力されるので、図13(B)に
示すように、信号TISAのハイレベル期間中、C−CPU
34はI−RAM36へのアクセスを待つ。したがっ
て、C−CPU34は、信号RDY がローレベルのとき、
かつ信号TISAがローレベルのとき、I−RAM36をア
クセスすることができる。このようにして、S−CPU
18およびC−CPU34はI−RAM36へ完全に2
フェーズアクセスが可能である。
【0038】なお、図13(A)に示すように、C−C
PU34のみがI−RAM36をアクセスする場合、C
−CPU34の動作周波数は、クロック信号PHI2によっ
て、10.73MHzである。ただし、図13(B)に
示すように、S−CPU18とC−CPU34とが2フ
ェーズでI−RAM36をアクセスする場合には、C−
CPU34の動作周波数は5.37MHzとなる。しか
しながら、S−CPU18の動作周波数はシステムクロ
ック信号SYSCK によって、常に、2.68MHzとされ
る。
PU34のみがI−RAM36をアクセスする場合、C
−CPU34の動作周波数は、クロック信号PHI2によっ
て、10.73MHzである。ただし、図13(B)に
示すように、S−CPU18とC−CPU34とが2フ
ェーズでI−RAM36をアクセスする場合には、C−
CPU34の動作周波数は5.37MHzとなる。しか
しながら、S−CPU18の動作周波数はシステムクロ
ック信号SYSCK によって、常に、2.68MHzとされ
る。
【0039】図7に戻って、SCPUIF134は、S
−CPU18とC−CPU34との間で割り込みIRQ
を互いに与えたり、S−CPU18からC−CPU34
へリセット信号や割り込みNMIを与えたり、あるいは
S−CPU18とC−CPU34との間でベクタを互い
に与える。そのために、このSCPUIF134は、S
−CPU18のアドレスSAおよびデータSDならびに
C−CPU34のアドレスCAおよびデータCDを受け
る。
−CPU18とC−CPU34との間で割り込みIRQ
を互いに与えたり、S−CPU18からC−CPU34
へリセット信号や割り込みNMIを与えたり、あるいは
S−CPU18とC−CPU34との間でベクタを互い
に与える。そのために、このSCPUIF134は、S
−CPU18のアドレスSAおよびデータSDならびに
C−CPU34のアドレスCAおよびデータCDを受け
る。
【0040】このSCPUIF134が図14〜図16
に詳細に示される。図15に示すように、S−CPU1
8のデータSDの下位8ビットSD0〜SD7の最上位
ビットSD7を受けるC−CPUコントロールレジスタ
136,最上位から3ビット目のビットSD5を受ける
C−CPUコントロールレジスタ138,最上位から4
ビット目のビットSD4を受けるC−CPUコントロー
ルレジスタ140,および下位4ビットSD3〜SD0
を受けるC−CPUコントロールレジスタ142を含
む。また、それぞれがデータSD0〜SD7の全てのビ
ットを受けるデコーダ144および146,ならびにベ
クタレジスタ148,150,152,154,15
6,および158を含む。これらC−CPUコントロー
ルレジスタ,デコーダおよびベクタレジスタ136〜1
58の全てのクロックとして、後述のクロックジェネレ
ータ216からのS−CPU18のためのシステムクロ
ック信号SYSCK がインバータ160によって反転されて
与えられる。
に詳細に示される。図15に示すように、S−CPU1
8のデータSDの下位8ビットSD0〜SD7の最上位
ビットSD7を受けるC−CPUコントロールレジスタ
136,最上位から3ビット目のビットSD5を受ける
C−CPUコントロールレジスタ138,最上位から4
ビット目のビットSD4を受けるC−CPUコントロー
ルレジスタ140,および下位4ビットSD3〜SD0
を受けるC−CPUコントロールレジスタ142を含
む。また、それぞれがデータSD0〜SD7の全てのビ
ットを受けるデコーダ144および146,ならびにベ
クタレジスタ148,150,152,154,15
6,および158を含む。これらC−CPUコントロー
ルレジスタ,デコーダおよびベクタレジスタ136〜1
58の全てのクロックとして、後述のクロックジェネレ
ータ216からのS−CPU18のためのシステムクロ
ック信号SYSCK がインバータ160によって反転されて
与えられる。
【0041】C−CPUコントロールレジスタ136〜
142のイネーブル信号としては、図7のアドレスデコ
ーダ50からの、S−CPU18がC−CPU34を制
御するためのコントロール信号を書き込むタイミング信
号CCNTW が与えられる。デコーダ144および146の
イネーブル信号としては、図7のアドレスデコーダ50
からの、S−CPU18が割り込みを制御するためのコ
ントロール信号を書き込むタイミング信号SIFWおよびSI
CWが与えられる。リセットベクタレジスタ148および
150のイネーブル信号としては、図7のアドレスデコ
ーダ50からの、S−CPU18がリセットベクタを書
き込むタイミング信号RVLWおよびRVHWが与えられ、NM
Iベクタレジスタ152および154のイネーブル信号
としては、図7のアドレスデコーダ50からの、S−C
PU18がNMIベクタを書き込むタイミング信号CNVL
W およびCNVHW が与えられ、そしてIRQベクタレジス
タ156および158のイネーブル信号としては、図7
のアドレスデコーダ50からの、S−CPU18がIR
Qベクタを書き込むためのタイミング信号CIVLW および
CIVHW が与えられる。
142のイネーブル信号としては、図7のアドレスデコ
ーダ50からの、S−CPU18がC−CPU34を制
御するためのコントロール信号を書き込むタイミング信
号CCNTW が与えられる。デコーダ144および146の
イネーブル信号としては、図7のアドレスデコーダ50
からの、S−CPU18が割り込みを制御するためのコ
ントロール信号を書き込むタイミング信号SIFWおよびSI
CWが与えられる。リセットベクタレジスタ148および
150のイネーブル信号としては、図7のアドレスデコ
ーダ50からの、S−CPU18がリセットベクタを書
き込むタイミング信号RVLWおよびRVHWが与えられ、NM
Iベクタレジスタ152および154のイネーブル信号
としては、図7のアドレスデコーダ50からの、S−C
PU18がNMIベクタを書き込むタイミング信号CNVL
W およびCNVHW が与えられ、そしてIRQベクタレジス
タ156および158のイネーブル信号としては、図7
のアドレスデコーダ50からの、S−CPU18がIR
Qベクタを書き込むためのタイミング信号CIVLW および
CIVHW が与えられる。
【0042】また、図16に示すように、SCPUIF
134はC−CPU34からのデータCDの下位8ビッ
トCD7〜CD0の最上位ビットCD7を受けるS−C
PUコントロールレジスタ162,および下位8ビット
CD7〜CD0の下位7ビットCD6〜CD0を受ける
S−CPUコントロールレジスタ164を含む。さら
に、データCDの下位8ビットCD7〜CD0は2つの
デコーダ166および168,ならびに4つのベクタレ
ジスタ170,172,174および176に与えられ
る。これらレジスタおよびデコーダ162〜176のク
ロックとしては、クロックジェネレータ216からのC
−CPU34のためのクロック信号PHI2がインバータ1
78によって反転されて与えられる。
134はC−CPU34からのデータCDの下位8ビッ
トCD7〜CD0の最上位ビットCD7を受けるS−C
PUコントロールレジスタ162,および下位8ビット
CD7〜CD0の下位7ビットCD6〜CD0を受ける
S−CPUコントロールレジスタ164を含む。さら
に、データCDの下位8ビットCD7〜CD0は2つの
デコーダ166および168,ならびに4つのベクタレ
ジスタ170,172,174および176に与えられ
る。これらレジスタおよびデコーダ162〜176のク
ロックとしては、クロックジェネレータ216からのC
−CPU34のためのクロック信号PHI2がインバータ1
78によって反転されて与えられる。
【0043】S−CPUコントロールレジスタ162お
よび164のイネーブル信号としては、図7のアドレス
デコーダ50からの、C−CPU34がS−CPU18
を制御するためのコントロール信号を書き込むタイミン
グ信号SCNTW が与えられる。デコーダ166のイネーブ
ル信号としては、図7のアドレスデコーダ50からの、
C−CPU34がS−CPU34からの割り込みを制御
するためのコントロール信号を書き込むタイミング信号
CIEWおよびCICWが与えられる。NMIベクタレジスタ1
70および172のイネーブル信号としては、図7のア
ドレスデコーダ50からの、C−CPU34がNMIベ
クタを書き込むためのタイミング信号SNVLW およびSNVH
W が与えられ、IRQベクタレジスタ174および17
6のイネーブル信号としては、図7のアドレスデコーダ
50からの、C−CPU34がIRQベクタを書き込む
ためのタイミング信号SIVLW およびSIVHW が与えられ
る。
よび164のイネーブル信号としては、図7のアドレス
デコーダ50からの、C−CPU34がS−CPU18
を制御するためのコントロール信号を書き込むタイミン
グ信号SCNTW が与えられる。デコーダ166のイネーブ
ル信号としては、図7のアドレスデコーダ50からの、
C−CPU34がS−CPU34からの割り込みを制御
するためのコントロール信号を書き込むタイミング信号
CIEWおよびCICWが与えられる。NMIベクタレジスタ1
70および172のイネーブル信号としては、図7のア
ドレスデコーダ50からの、C−CPU34がNMIベ
クタを書き込むためのタイミング信号SNVLW およびSNVH
W が与えられ、IRQベクタレジスタ174および17
6のイネーブル信号としては、図7のアドレスデコーダ
50からの、C−CPU34がIRQベクタを書き込む
ためのタイミング信号SIVLW およびSIVHW が与えられ
る。
【0044】C−CPUコントロールレジスタ136の
出力Qは、デコーダ166からのC−CPU34からS
−CPU18へのIRQ割り込みを許可するための信号
SIRQENとともに、ANDゲート182に与えられ、この
ANDゲート182からは、S−CPU18からC−C
PU34に対してIRQ割り込みをかけるための信号CI
RQが出力される。なお、C−CPUコントロールレジス
タ136は、デコーダ168からのS−CPU18から
のIRQ割り込みを終了するための信号SIRQCLによって
リセットされる。C−CPUコントロールレジスタ13
8の出力Qは、そのまま、S−CPU18がC−CPU
34をリセットするための信号CRESとして出力される。
D−FF140の出力Qは、デコーダ166からのC−
CPU34からS−CPU18へのNMI割り込みを許
可する信号SNMIENとともに、ANDゲート182に与え
られ、このANDゲート182からは、C−CPU34
に対してNMI割り込みをかけるための信号CNMIが出力
される。なお、D−FF140は、デコーダ168から
のNMI割り込みを終了するための信号SNMICLによって
リセットされる。C−CPUコントロールレジスタ14
2からは、S−CPU18からC−CPU34に与える
ための4ビットの信号SMEG3 〜SMEG0 が出力される。こ
の4ビットの信号は、割込処理のステータスを表すため
に用いられ、たとえば、S−CPU18がC−CPU3
4にNMI割込をかけると同時にC−CPUコントロー
ルレジスタ142のSMEG3 〜SMEG0 に0を書き込むこと
により、C−CPU34に対して0番のNMI割込をか
けたことを知らせることができる。SMEG3 〜SMEG0 の4
ビットを用いれば0〜15までの数字を表すことができ
るので、したがってS−CPU18はC−CPU34に
対して16種類のNMI割込をかけることができる。同
様にIRQ割込の際にSMEG3 〜SMEG0 を用いれば、16
種類のIRQ割込をかけることができる。
出力Qは、デコーダ166からのC−CPU34からS
−CPU18へのIRQ割り込みを許可するための信号
SIRQENとともに、ANDゲート182に与えられ、この
ANDゲート182からは、S−CPU18からC−C
PU34に対してIRQ割り込みをかけるための信号CI
RQが出力される。なお、C−CPUコントロールレジス
タ136は、デコーダ168からのS−CPU18から
のIRQ割り込みを終了するための信号SIRQCLによって
リセットされる。C−CPUコントロールレジスタ13
8の出力Qは、そのまま、S−CPU18がC−CPU
34をリセットするための信号CRESとして出力される。
D−FF140の出力Qは、デコーダ166からのC−
CPU34からS−CPU18へのNMI割り込みを許
可する信号SNMIENとともに、ANDゲート182に与え
られ、このANDゲート182からは、C−CPU34
に対してNMI割り込みをかけるための信号CNMIが出力
される。なお、D−FF140は、デコーダ168から
のNMI割り込みを終了するための信号SNMICLによって
リセットされる。C−CPUコントロールレジスタ14
2からは、S−CPU18からC−CPU34に与える
ための4ビットの信号SMEG3 〜SMEG0 が出力される。こ
の4ビットの信号は、割込処理のステータスを表すため
に用いられ、たとえば、S−CPU18がC−CPU3
4にNMI割込をかけると同時にC−CPUコントロー
ルレジスタ142のSMEG3 〜SMEG0 に0を書き込むこと
により、C−CPU34に対して0番のNMI割込をか
けたことを知らせることができる。SMEG3 〜SMEG0 の4
ビットを用いれば0〜15までの数字を表すことができ
るので、したがってS−CPU18はC−CPU34に
対して16種類のNMI割込をかけることができる。同
様にIRQ割込の際にSMEG3 〜SMEG0 を用いれば、16
種類のIRQ割込をかけることができる。
【0045】S−CPUコントロールレジスタ162の
出力は、デコーダ144からのS−CPU18からC−
CPU34へのIRQ割り込みを許可するための信号CI
RQENとともに、ANDゲート184に与えられ、このA
NDゲート184からは、C−CPU34からS−CP
U18に対してIRQ割り込みをかけるための信号SIRQ
が出力される。なお、S−CPUコントロールレジスタ
162は、デコーダ144からのC−CPU34からの
IRQ割り込みを終了するための信号CIRQCLによってリ
セットされる。S−CPUコントロールレジスタ164
からは、C−CPU34からS−CPU18に与えるた
めの4ビットの信号CMEG3 〜CMEG0 が出力される。この
4ビットの信号は、割込処理のステータスを表すために
用いられ、たとえば、C−CPU34がS−CPU18
にIRQ割込をかけると同時にS−CPUコントロール
レジスタ164のCMEG3 〜CMEG0 に0を書き込むことに
より、S−CPU18に対して0番のIRQ割込をかけ
たことを知らせることができる。CMEG3 〜CMEG0 の4ビ
ットを用いれば0〜15までの数字を表すことができる
ので、したがってC−CPU34はS−CPU18に対
して16種類のIRQ割込をかけることができる。同様
に、後述のようにC−CPU34がS−CPU18のN
MIベクタを変更する際にCMEG3 〜CMEG0 を用いれば、
16種類のNMIベクタの変更を行うことができる。
出力は、デコーダ144からのS−CPU18からC−
CPU34へのIRQ割り込みを許可するための信号CI
RQENとともに、ANDゲート184に与えられ、このA
NDゲート184からは、C−CPU34からS−CP
U18に対してIRQ割り込みをかけるための信号SIRQ
が出力される。なお、S−CPUコントロールレジスタ
162は、デコーダ144からのC−CPU34からの
IRQ割り込みを終了するための信号CIRQCLによってリ
セットされる。S−CPUコントロールレジスタ164
からは、C−CPU34からS−CPU18に与えるた
めの4ビットの信号CMEG3 〜CMEG0 が出力される。この
4ビットの信号は、割込処理のステータスを表すために
用いられ、たとえば、C−CPU34がS−CPU18
にIRQ割込をかけると同時にS−CPUコントロール
レジスタ164のCMEG3 〜CMEG0 に0を書き込むことに
より、S−CPU18に対して0番のIRQ割込をかけ
たことを知らせることができる。CMEG3 〜CMEG0 の4ビ
ットを用いれば0〜15までの数字を表すことができる
ので、したがってC−CPU34はS−CPU18に対
して16種類のIRQ割込をかけることができる。同様
に、後述のようにC−CPU34がS−CPU18のN
MIベクタを変更する際にCMEG3 〜CMEG0 を用いれば、
16種類のNMIベクタの変更を行うことができる。
【0046】なお、ANDゲート180および182の
出力はバッファ186および188を通して、また、C
−CPUコントロールレジスタ142の出力はバッファ
190を通して、S−CPU18へのデータSD7〜S
D0として出力される。さらに、リセットベクタレジス
タ148および150の出力はバッファ192および1
94を通して、リセットベクタデータRVL7〜RVL0および
RVH7〜RVH0として、データSD7〜SD0に出力され
る。NMIベクタレジスタ152および154の出力は
バッファ196および198を通して、NMIベクタデ
ータCNVL7 〜CNVL0 およびCNVH7 〜CNVH0 として、デー
タSD7〜SD0に出力される。IRQベクタレジスタ
156および158の出力はバッファ200および20
2を通して、IRQベクタデータCIVL7 〜CIVL0 および
CIVH7 〜CIVH0 として、データSD7〜SD0に出力さ
れる。
出力はバッファ186および188を通して、また、C
−CPUコントロールレジスタ142の出力はバッファ
190を通して、S−CPU18へのデータSD7〜S
D0として出力される。さらに、リセットベクタレジス
タ148および150の出力はバッファ192および1
94を通して、リセットベクタデータRVL7〜RVL0および
RVH7〜RVH0として、データSD7〜SD0に出力され
る。NMIベクタレジスタ152および154の出力は
バッファ196および198を通して、NMIベクタデ
ータCNVL7 〜CNVL0 およびCNVH7 〜CNVH0 として、デー
タSD7〜SD0に出力される。IRQベクタレジスタ
156および158の出力はバッファ200および20
2を通して、IRQベクタデータCIVL7 〜CIVL0 および
CIVH7 〜CIVH0 として、データSD7〜SD0に出力さ
れる。
【0047】また、ANDゲート184の出力はバッフ
ァ204を通して、また、S−CPUコントロールレジ
スタ164の出力はバッファ206を通して、C−CP
U34へのデータCD7〜CD0として出力される。さ
らに、NMIベクタレジスタ170および172の出力
はバッファ208および210を通して、NMIベクタ
データSNVL7 〜SNVL0 およびSNVH7 〜SNVH0 として、デ
ータCD7〜CD0に出力される。IRQベクタレジス
タ174および176の出力はバッファ212および2
14を通して、IRQベクタデータSIVL7 〜SIVL0 およ
びSIVH7 〜SIVH0 として、データCD7〜CD0に出力
される。
ァ204を通して、また、S−CPUコントロールレジ
スタ164の出力はバッファ206を通して、C−CP
U34へのデータCD7〜CD0として出力される。さ
らに、NMIベクタレジスタ170および172の出力
はバッファ208および210を通して、NMIベクタ
データSNVL7 〜SNVL0 およびSNVH7 〜SNVH0 として、デ
ータCD7〜CD0に出力される。IRQベクタレジス
タ174および176の出力はバッファ212および2
14を通して、IRQベクタデータSIVL7 〜SIVL0 およ
びSIVH7 〜SIVH0 として、データCD7〜CD0に出力
される。
【0048】図7に示すクロックジェネレータ216
は、原発振器23(図3)からの周波数約21MHzの
原クロックを受け、S−CPU18およびC−CPU3
4に必要なシステムクロック信号SYSCK およびクロック
信号PHI20 等を作成する。図17を参照すると、クロッ
クジェネレータ216は、原クロック信号Z21Mを受け、
それをバッファ218を通して、図18または図19に
示すようなクロック信号21M として出力する。クロック
信号21M がD−FF220および222のクロック入力
に与えられるとともに、インバータ226によって反転
されてD−FF224のクロック入力に与えられる。な
お、D−FF220〜224の各リセット入力には、シ
ステムリセット信号RES が与えられる。D−FF220
のデータ入力にはバッファ228を介して、クロックジ
ェネレータ25(図3)から原システムクロック信号ZS
YSCKが与えられ、D−FF222のデータ入力にはデー
タ220の出力Qが与えられる。D−FF222の出力
QはD−FF220の出力Qの反転とともにANDゲー
ト230に与えられる。ANDゲート230の出力は反
転されてANDゲート232の一方入力に与えられ、他
方入力にはD−FF224の出力Qが反転されて与えら
れる。そして、D−FF224の出力Qが、バッファ2
34を通して、図18または図19に示すようなクロッ
ク信号PHI2として出力される。すなわち、クロック信号
PHI2は、原クロック信号21M が2分周されたものであ
る。
は、原発振器23(図3)からの周波数約21MHzの
原クロックを受け、S−CPU18およびC−CPU3
4に必要なシステムクロック信号SYSCK およびクロック
信号PHI20 等を作成する。図17を参照すると、クロッ
クジェネレータ216は、原クロック信号Z21Mを受け、
それをバッファ218を通して、図18または図19に
示すようなクロック信号21M として出力する。クロック
信号21M がD−FF220および222のクロック入力
に与えられるとともに、インバータ226によって反転
されてD−FF224のクロック入力に与えられる。な
お、D−FF220〜224の各リセット入力には、シ
ステムリセット信号RES が与えられる。D−FF220
のデータ入力にはバッファ228を介して、クロックジ
ェネレータ25(図3)から原システムクロック信号ZS
YSCKが与えられ、D−FF222のデータ入力にはデー
タ220の出力Qが与えられる。D−FF222の出力
QはD−FF220の出力Qの反転とともにANDゲー
ト230に与えられる。ANDゲート230の出力は反
転されてANDゲート232の一方入力に与えられ、他
方入力にはD−FF224の出力Qが反転されて与えら
れる。そして、D−FF224の出力Qが、バッファ2
34を通して、図18または図19に示すようなクロッ
ク信号PHI2として出力される。すなわち、クロック信号
PHI2は、原クロック信号21M が2分周されたものであ
る。
【0049】原システムクロック信号ZSYSCKがバッファ
228を介して、図18または図19に示すようなシス
テムクロック信号SYSCK として出力される。ANDゲー
ト230の出力がD−FF236のデータ入力に与えら
れる。このD−FF236のリセット入力には、他のD
−FF238,240および242と同様に、システム
リセット信号RES が与えられる。また、これらD−FF
236〜242のクロック入力としては、クロック信号
PHI2が与えられる。バッファ228からのシステムクロ
ック信号SYSCK が反転されてANDゲート244および
246の一方入力に与えられ、このANDゲート244
および246の他方入力にはD−FF240の出力Qが
与えられる。ANDゲート244の出力がD−FF23
8のデータ入力に与えられ、D−FF238の出力Q
は、S−CPU18がM−ROM22からのプログラム
データを読み出すときローレベルとなる信号SCPURDB お
よびS−CPU18がB−RAM32またはI−RAM
36にデータを読み出すときローレベルとなりかつ書き
込むときハイレベルとなる信号SCPUWRD のそれぞれの反
転とともに、ORゲート248に与えられる。データ2
36の出力QがANDゲート246の出力とともに、O
Rゲート250を介してD−FF240のデータ入力に
与えられる。D−FF240の出力QはORゲート28
の出力とともに、ANDゲート252K入力に与えら
れ、ANDゲート252の出力がORゲート250の出
力とともにORゲート254に与えられる。ORゲート
254の出力がD−FF242のデータ入力に与えられ
る。
228を介して、図18または図19に示すようなシス
テムクロック信号SYSCK として出力される。ANDゲー
ト230の出力がD−FF236のデータ入力に与えら
れる。このD−FF236のリセット入力には、他のD
−FF238,240および242と同様に、システム
リセット信号RES が与えられる。また、これらD−FF
236〜242のクロック入力としては、クロック信号
PHI2が与えられる。バッファ228からのシステムクロ
ック信号SYSCK が反転されてANDゲート244および
246の一方入力に与えられ、このANDゲート244
および246の他方入力にはD−FF240の出力Qが
与えられる。ANDゲート244の出力がD−FF23
8のデータ入力に与えられ、D−FF238の出力Q
は、S−CPU18がM−ROM22からのプログラム
データを読み出すときローレベルとなる信号SCPURDB お
よびS−CPU18がB−RAM32またはI−RAM
36にデータを読み出すときローレベルとなりかつ書き
込むときハイレベルとなる信号SCPUWRD のそれぞれの反
転とともに、ORゲート248に与えられる。データ2
36の出力QがANDゲート246の出力とともに、O
Rゲート250を介してD−FF240のデータ入力に
与えられる。D−FF240の出力QはORゲート28
の出力とともに、ANDゲート252K入力に与えら
れ、ANDゲート252の出力がORゲート250の出
力とともにORゲート254に与えられる。ORゲート
254の出力がD−FF242のデータ入力に与えられ
る。
【0050】D−FF240の出力QがS−CPU18
が3.58MHzで動作するときにS−CPU18のメ
モリ22,32または36へのアクセスを許容するため
の信号SSSYNCとして出力されるとともに、D−FF24
2の出力QがS−CPU18がメモリ22,32または
36をアクセスするのを許容するためのタイミング信号
SSYNC として出力される。すなわち、信号SSYNC は図1
8または図19に示すようにように、システムクロック
信号SYSCK (図18または図19ではSYSCK-FASTまたは
SYSCK-SLOWS で示されている)の後縁よりやや進んだ後
縁を有し、信号SSSYNCは信号SSYNC の前縁と同期した前
縁を有し、原クロック信号21M の2周期分に相当する時
間持続して後縁となる。
が3.58MHzで動作するときにS−CPU18のメ
モリ22,32または36へのアクセスを許容するため
の信号SSSYNCとして出力されるとともに、D−FF24
2の出力QがS−CPU18がメモリ22,32または
36をアクセスするのを許容するためのタイミング信号
SSYNC として出力される。すなわち、信号SSYNC は図1
8または図19に示すようにように、システムクロック
信号SYSCK (図18または図19ではSYSCK-FASTまたは
SYSCK-SLOWS で示されている)の後縁よりやや進んだ後
縁を有し、信号SSSYNCは信号SSYNC の前縁と同期した前
縁を有し、原クロック信号21M の2周期分に相当する時
間持続して後縁となる。
【0051】このようにして、クロックジェネレータ2
16によって、S−CPU18の動作クロック信号SYSC
K およびC−CPU34の動作クロック信号PHI2が作成
されるとともに、S−CPU18およびC−CPU34
のメモリ22,32または36へのアクセスを許容しま
たは禁止するための信号SSYNC(SSSYNC) が作成される。
16によって、S−CPU18の動作クロック信号SYSC
K およびC−CPU34の動作クロック信号PHI2が作成
されるとともに、S−CPU18およびC−CPU34
のメモリ22,32または36へのアクセスを許容しま
たは禁止するための信号SSYNC(SSSYNC) が作成される。
【0052】システムクロック信号SYSCK とクロック信
号PHI2との位相を合わせるために、原クロック信号21M
が用いられるが、クロック信号SYSCK がこの信号21M と
同期がとれるのは、図18または図19で示す、SYSCK-
FASTのときかあるいはSYSCK-SLOWのときである。そし
て、S−CPU18は、このクロック信号SYSCK-FASTま
たはSYSCK-SLOWの後縁でメモリ22,32または36か
ら読み出されたデータを読み込む。したがって、S−C
PU18がこれらメモリへアクセスする期間は、このク
ロック信号SYSCK の後縁より前に位置しなければならな
い。そこで、図17のクロックジェネレータ216で
は、信号SSYNC またはSSSYNCの後縁はクロック信号SYSC
K の後縁より前に存在する。なお、S−CPU18が
3.58MHzで動作するときには図19に示すように
クロック信号SYSCK の位相が変わるので、S−CPU1
8のアクセスを許容するのに信号SSYNC を用いると前後
の動作サイクルと重なりを生じることがある。そこで、
図19に示すように信号SSYNC より短いハイレベル期間
を有する信号SSSYNCを用いる。
号PHI2との位相を合わせるために、原クロック信号21M
が用いられるが、クロック信号SYSCK がこの信号21M と
同期がとれるのは、図18または図19で示す、SYSCK-
FASTのときかあるいはSYSCK-SLOWのときである。そし
て、S−CPU18は、このクロック信号SYSCK-FASTま
たはSYSCK-SLOWの後縁でメモリ22,32または36か
ら読み出されたデータを読み込む。したがって、S−C
PU18がこれらメモリへアクセスする期間は、このク
ロック信号SYSCK の後縁より前に位置しなければならな
い。そこで、図17のクロックジェネレータ216で
は、信号SSYNC またはSSSYNCの後縁はクロック信号SYSC
K の後縁より前に存在する。なお、S−CPU18が
3.58MHzで動作するときには図19に示すように
クロック信号SYSCK の位相が変わるので、S−CPU1
8のアクセスを許容するのに信号SSYNC を用いると前後
の動作サイクルと重なりを生じることがある。そこで、
図19に示すように信号SSYNC より短いハイレベル期間
を有する信号SSSYNCを用いる。
【0053】そして、前述のように、この信号SSYNC(SS
SYNC) のハイレベル期間にS−CPU18のメモリへの
アクセスを許容し、ローレベル期間にC−CPU34の
メモリへのアクセスを許容することによって、S−CP
U18およびC−CPU34が実質的に同時に、デュア
ルフェーズで、各メモリ22,32または36をアクセ
スすることができるのである。
SYNC) のハイレベル期間にS−CPU18のメモリへの
アクセスを許容し、ローレベル期間にC−CPU34の
メモリへのアクセスを許容することによって、S−CP
U18およびC−CPU34が実質的に同時に、デュア
ルフェーズで、各メモリ22,32または36をアクセ
スすることができるのである。
【0054】ここで、図20〜図25を参照して、SC
PUIF134を介してS−CPU18およびC−CP
U34の相互作用について説明する。S−CPU18が
C−CPU34を起動する場合、図20のステップS1
に示すように、S−CPU18は、データSD0〜SD
7によって、リセットベクタレジスタ148および15
0に、C−CPU34に実行させたいプログラムの先頭
アドレスをセットする。そして、ステップS2におい
て、C−CPUコントロールレジスタ138にデータビ
ットSD5によって「1」をセットする。応じて、C−
CPUコントロールレジスタ138からハイレベルのC
−CPUリセット信号CRESが出力され、それが図7に示
すようにC−CPU34に与えられ、C−CPU34の
リセットが解除される。なお、C−CPU34は、応じ
て、M−ROM22にアクセスし、リセットベクタレジ
スタ148および150によって指定されたM−ROM
22の先頭アドレスからプログラムを実行する。
PUIF134を介してS−CPU18およびC−CP
U34の相互作用について説明する。S−CPU18が
C−CPU34を起動する場合、図20のステップS1
に示すように、S−CPU18は、データSD0〜SD
7によって、リセットベクタレジスタ148および15
0に、C−CPU34に実行させたいプログラムの先頭
アドレスをセットする。そして、ステップS2におい
て、C−CPUコントロールレジスタ138にデータビ
ットSD5によって「1」をセットする。応じて、C−
CPUコントロールレジスタ138からハイレベルのC
−CPUリセット信号CRESが出力され、それが図7に示
すようにC−CPU34に与えられ、C−CPU34の
リセットが解除される。なお、C−CPU34は、応じ
て、M−ROM22にアクセスし、リセットベクタレジ
スタ148および150によって指定されたM−ROM
22の先頭アドレスからプログラムを実行する。
【0055】S−CPU18がC−CPU34を停止す
る場合、図21のステップS3に示すように、S−CP
U18は、C−CPUコントロールレジスタ138にデ
ータビットSD5によって「0」をセットする。応じ
て、C−CPUコントロールレジスタ138からローレ
ベルのC−CPUリセット信号CRESが出力され、それが
図7に示すようにC−CPU34に与えられ、C−CP
U34がリセットされる。
る場合、図21のステップS3に示すように、S−CP
U18は、C−CPUコントロールレジスタ138にデ
ータビットSD5によって「0」をセットする。応じ
て、C−CPUコントロールレジスタ138からローレ
ベルのC−CPUリセット信号CRESが出力され、それが
図7に示すようにC−CPU34に与えられ、C−CP
U34がリセットされる。
【0056】S−CPU18がC−CPU34にNMI
割り込みをかける場合、図21のステップS4に示すよ
うに、S−CPU18は、データSD0〜SD7によっ
て、NMIベクタレジスタ152および154に、M−
ROM22のNMIプログラムが格納されている先頭ア
ドレスをセットする。そして、ステップS6において、
C−CPUコントロールレジスタ140にデータビット
SD4によって「1」をセットする。応じて、C−CP
Uコントロールレジスタ140からハイレベルのC−C
PU割り込み信号CNMIが出力され、それが図7に示すよ
うにC−CPU34に与えられ、C−CPU34に割り
込み起動がかけられる。なお、C−CPU34は、応じ
て、M−ROM22にアクセスし、NMIベクタレジス
タ152および154によって指定されたM−ROM2
2の先頭アドレスからNMI割り込みプログラムを実行
する。
割り込みをかける場合、図21のステップS4に示すよ
うに、S−CPU18は、データSD0〜SD7によっ
て、NMIベクタレジスタ152および154に、M−
ROM22のNMIプログラムが格納されている先頭ア
ドレスをセットする。そして、ステップS6において、
C−CPUコントロールレジスタ140にデータビット
SD4によって「1」をセットする。応じて、C−CP
Uコントロールレジスタ140からハイレベルのC−C
PU割り込み信号CNMIが出力され、それが図7に示すよ
うにC−CPU34に与えられ、C−CPU34に割り
込み起動がかけられる。なお、C−CPU34は、応じ
て、M−ROM22にアクセスし、NMIベクタレジス
タ152および154によって指定されたM−ROM2
2の先頭アドレスからNMI割り込みプログラムを実行
する。
【0057】S−CPU18がC−CPU34にIRQ
割り込みをかける場合、図23のステップS7に示すよ
うに、S−CPU18は、データSD0〜SD7によっ
て、IRQベクタレジスタ156および158に、M−
ROM22のIRQプログラムが格納されている先頭ア
ドレスをセットする。そして、ステップS8において、
C−CPUコントロールレジスタ136にデータビット
SD7によって「1」をセットする。応じて、C−CP
Uコントロールレジスタ136からハイレベルのC−C
PU割り込み信号CIRQが出力され、それが図7に示すよ
うにC−CPU34に与えられ、C−CPU34に割り
込み起動がかけられる。なお、C−CPU34は、応じ
て、M−ROM22にアクセスし、IRQベクタレジス
タ156および158によって指定されたM−ROM2
2の先頭アドレスからIRQ割り込みプログラムを実行
する。
割り込みをかける場合、図23のステップS7に示すよ
うに、S−CPU18は、データSD0〜SD7によっ
て、IRQベクタレジスタ156および158に、M−
ROM22のIRQプログラムが格納されている先頭ア
ドレスをセットする。そして、ステップS8において、
C−CPUコントロールレジスタ136にデータビット
SD7によって「1」をセットする。応じて、C−CP
Uコントロールレジスタ136からハイレベルのC−C
PU割り込み信号CIRQが出力され、それが図7に示すよ
うにC−CPU34に与えられ、C−CPU34に割り
込み起動がかけられる。なお、C−CPU34は、応じ
て、M−ROM22にアクセスし、IRQベクタレジス
タ156および158によって指定されたM−ROM2
2の先頭アドレスからIRQ割り込みプログラムを実行
する。
【0058】次に、C−CPU34がS−CPU18の
NMIベクタを変更する場合、図24のステップS10
に示すように、C−CPU34は、データCD0〜CD
7によって、NMIベクタレジスタ170および172
に、M−ROM22のNMIプログラムが格納されてい
る先頭アドレスをセットする。そして、ステップS11
において、S−CPUコントロールレジスタ162にデ
ータビットCD4によって「1」をセットする。応じ、
S−CPU18にNMI割込がかかったときに読み出さ
れるNMIベクタアドレスがM−ROM22内からNM
Iベクタレジスタ170および172に変更される。な
お、S−CPU18はNMI割込がかかったことに応じ
てM−ROM22をアクセスし、NMIベクタレジスタ
170および172によって指定されたM−ROM22
の先頭アドレスからNMI割込みプログラムを実行す
る。
NMIベクタを変更する場合、図24のステップS10
に示すように、C−CPU34は、データCD0〜CD
7によって、NMIベクタレジスタ170および172
に、M−ROM22のNMIプログラムが格納されてい
る先頭アドレスをセットする。そして、ステップS11
において、S−CPUコントロールレジスタ162にデ
ータビットCD4によって「1」をセットする。応じ、
S−CPU18にNMI割込がかかったときに読み出さ
れるNMIベクタアドレスがM−ROM22内からNM
Iベクタレジスタ170および172に変更される。な
お、S−CPU18はNMI割込がかかったことに応じ
てM−ROM22をアクセスし、NMIベクタレジスタ
170および172によって指定されたM−ROM22
の先頭アドレスからNMI割込みプログラムを実行す
る。
【0059】そして、C−CPU34がS−CPU18
にIRQ割り込みをかける場合、図25のステップS1
2に示すように、C−CPU34は、データCD0〜C
D7によって、IRQベクタレジスタ174および17
6に、M−ROM22のIRQプログラムが格納されて
いる先頭アドレスをセットする。そして、ステップS1
3において、S−CPUコントロールレジスタ162に
データビットCD7によって「1」をセットする。応じ
て、S−CPUコントロールレジスタ162からハイレ
ベルのS−CPU割り込み信号SIRQが出力され、それが
S−CPU18に与えられ、S−CPU18に割り込み
起動がかけられる。なお、S−CPU18は、応じて、
M−ROM22にアクセスし、IRQベクタレジスタ1
74および176によって指定されたM−ROM22の
先頭アドレスからIRQ割り込みプログラムを実行す
る。
にIRQ割り込みをかける場合、図25のステップS1
2に示すように、C−CPU34は、データCD0〜C
D7によって、IRQベクタレジスタ174および17
6に、M−ROM22のIRQプログラムが格納されて
いる先頭アドレスをセットする。そして、ステップS1
3において、S−CPUコントロールレジスタ162に
データビットCD7によって「1」をセットする。応じ
て、S−CPUコントロールレジスタ162からハイレ
ベルのS−CPU割り込み信号SIRQが出力され、それが
S−CPU18に与えられ、S−CPU18に割り込み
起動がかけられる。なお、S−CPU18は、応じて、
M−ROM22にアクセスし、IRQベクタレジスタ1
74および176によって指定されたM−ROM22の
先頭アドレスからIRQ割り込みプログラムを実行す
る。
【0060】実施例のゲームシステム10においては、
コプロセサ30のC−CPU34は、主として、(a) ア
クセラレータモード,(b) ミックス処理モード,および
(c)代行処理モードにおいてその威力を発揮する。 (a) アクセラレータモード このモードでは、図26に示すようにC−CPU34は
停止状態にされている。そして、ステップS101にお
いて、S−CPU18は、データSD0〜SD7によっ
て、リセットベクタレジスタ148および150に、C
−CPU34に実行させたいプログラムの先頭アドレス
をセットする。そして、ステップS102において、S
−CPU18は、C−CPUコントロールレジスタ13
8にデータビットSD5によって「1」をセットする。
応じて、C−CPUコントロールレジスタ138からハ
イレベルのC−CPUリセット信号CRESが出力され、そ
れがC−CPU34に与えられ、C−CPU34のリセ
ットが解除される。したがって、C−CPU34は、図
26のステップS201においてM−ROM22にアク
セスし、指定されたM−ROM22の先頭アドレスから
プログラムを実行する。
コプロセサ30のC−CPU34は、主として、(a) ア
クセラレータモード,(b) ミックス処理モード,および
(c)代行処理モードにおいてその威力を発揮する。 (a) アクセラレータモード このモードでは、図26に示すようにC−CPU34は
停止状態にされている。そして、ステップS101にお
いて、S−CPU18は、データSD0〜SD7によっ
て、リセットベクタレジスタ148および150に、C
−CPU34に実行させたいプログラムの先頭アドレス
をセットする。そして、ステップS102において、S
−CPU18は、C−CPUコントロールレジスタ13
8にデータビットSD5によって「1」をセットする。
応じて、C−CPUコントロールレジスタ138からハ
イレベルのC−CPUリセット信号CRESが出力され、そ
れがC−CPU34に与えられ、C−CPU34のリセ
ットが解除される。したがって、C−CPU34は、図
26のステップS201においてM−ROM22にアク
セスし、指定されたM−ROM22の先頭アドレスから
プログラムを実行する。
【0061】C−CPU34は、プログラム実行の結果
をS−CPU18に送るために、ステップS202にお
いて、S−CPUコントロールレジスタ162にデータ
ビットCD7によって「1」をセットする。応じて、S
−CPUコントロールレジスタ162およびANDゲー
ト184からハイレベルのS−CPU割り込み信号SIRQ
が出力され、それがS−CPU18に与えられ、S−C
PU18に割り込みがかけられる。
をS−CPU18に送るために、ステップS202にお
いて、S−CPUコントロールレジスタ162にデータ
ビットCD7によって「1」をセットする。応じて、S
−CPUコントロールレジスタ162およびANDゲー
ト184からハイレベルのS−CPU割り込み信号SIRQ
が出力され、それがS−CPU18に与えられ、S−C
PU18に割り込みがかけられる。
【0062】S−CPU18は、ステップS106にお
いて上記IRQを検出するまで、ステップS103,S
104,およびS105を実行する。すなわち、S−C
PU18はC−CPU34からのIRQ割り込みを可能
にするために、まず、ステップS103において、IN
Tイネーブルレジスタ144をイネーブルする。応じ
て、このレジスタ144から信号CIRQENが出力され、そ
れが図16に示すANDゲート184に与えられる。し
たがって、以後、このANDゲート184を通して、上
述のようにC−CPU34からS−CPU18にIRQ
割り込みをかけることができる。そして、S−CPU1
8は、ステップS104において本体12内のW−RA
M24に移り、C−CPU34からのIRQ割り込みを
待つ(プログラムウェイト)。
いて上記IRQを検出するまで、ステップS103,S
104,およびS105を実行する。すなわち、S−C
PU18はC−CPU34からのIRQ割り込みを可能
にするために、まず、ステップS103において、IN
Tイネーブルレジスタ144をイネーブルする。応じ
て、このレジスタ144から信号CIRQENが出力され、そ
れが図16に示すANDゲート184に与えられる。し
たがって、以後、このANDゲート184を通して、上
述のようにC−CPU34からS−CPU18にIRQ
割り込みをかけることができる。そして、S−CPU1
8は、ステップS104において本体12内のW−RA
M24に移り、C−CPU34からのIRQ割り込みを
待つ(プログラムウェイト)。
【0063】ステップS106においてC−CPU34
からのIRQを検出し、C−CPU34による処理結果
を受け取った後、S−CPU18は、ステップS107
において、C−CPUコントロールレジスタ138にデ
ータビットSD5によって「0」をセットする。応じ
て、C−CPUコントロールレジスタ138からローレ
ベルのC−CPUリセット信号CRESが出力され、それが
C−CPU34に与えられ、C−CPU34がリセット
され、停止状態となる。
からのIRQを検出し、C−CPU34による処理結果
を受け取った後、S−CPU18は、ステップS107
において、C−CPUコントロールレジスタ138にデ
ータビットSD5によって「0」をセットする。応じ
て、C−CPUコントロールレジスタ138からローレ
ベルのC−CPUリセット信号CRESが出力され、それが
C−CPU34に与えられ、C−CPU34がリセット
され、停止状態となる。
【0064】このようなアクセラレータモードにおいて
は、図27に示すように、C−CPU34によって時間
のかかるサブルーチン(たとえば、衝突判定,3D座標
演算等)を処理させることによって、S−CPU18は
極めて高速に全体処理を実行することができる。 (b) ミックス処理モード この場合、C−CPU34は、図28のステップS21
1におけるように、並列処理(別のプログラムの実行)
を行っている。そして、S−CPU18は、図28のス
テップS111に示すように、データSD0〜SD7に
よって、NMIベクタレジスタ152および154に、
M−ROM22のNMIプログラムが格納されている先
頭アドレスをセットする。そして、ステップS112に
おいて、C−CPUコントロールレジスタ140にデー
タビットSD4によって「1」をセットする。応じて、
C−CPUコントロールレジスタ140からハイレベル
のC−CPU割り込み信号CNMIが出力され、それがC−
CPU34に与えられ、C−CPU34にNMI割り込
み起動がかけられる。なお、C−CPU34はステップ
S212において割り込みフラグを読み込み、S−CP
U18からNMI割り込みがあったか否かをステップS
213で検出する。S−CPU18からのNMI割り込
みを検出すると、C−CPU34は、ステップS214
において、先に説明したアクセラレータ処理を実行す
る。
は、図27に示すように、C−CPU34によって時間
のかかるサブルーチン(たとえば、衝突判定,3D座標
演算等)を処理させることによって、S−CPU18は
極めて高速に全体処理を実行することができる。 (b) ミックス処理モード この場合、C−CPU34は、図28のステップS21
1におけるように、並列処理(別のプログラムの実行)
を行っている。そして、S−CPU18は、図28のス
テップS111に示すように、データSD0〜SD7に
よって、NMIベクタレジスタ152および154に、
M−ROM22のNMIプログラムが格納されている先
頭アドレスをセットする。そして、ステップS112に
おいて、C−CPUコントロールレジスタ140にデー
タビットSD4によって「1」をセットする。応じて、
C−CPUコントロールレジスタ140からハイレベル
のC−CPU割り込み信号CNMIが出力され、それがC−
CPU34に与えられ、C−CPU34にNMI割り込
み起動がかけられる。なお、C−CPU34はステップ
S212において割り込みフラグを読み込み、S−CP
U18からNMI割り込みがあったか否かをステップS
213で検出する。S−CPU18からのNMI割り込
みを検出すると、C−CPU34は、ステップS214
において、先に説明したアクセラレータ処理を実行す
る。
【0065】C−CPU34は、プログラム実行の結果
をS−CPU18に送るために、ステップS215にお
いて、S−CPUコントロールレジスタ162にデータ
ビットCD7によって「1」をセットする。応じて、S
−CPUコントロールレジスタ162およびANDゲー
ト184からハイレベルのS−CPU割り込み信号SIRQ
が出力され、それがS−CPU18に与えられ、S−C
PU18に割り込みがかけられる。すなわち、S−CP
U18は指定されたM−ROM22の先頭アドレスから
IRQ割り込みプログラムを実行する。
をS−CPU18に送るために、ステップS215にお
いて、S−CPUコントロールレジスタ162にデータ
ビットCD7によって「1」をセットする。応じて、S
−CPUコントロールレジスタ162およびANDゲー
ト184からハイレベルのS−CPU割り込み信号SIRQ
が出力され、それがS−CPU18に与えられ、S−C
PU18に割り込みがかけられる。すなわち、S−CP
U18は指定されたM−ROM22の先頭アドレスから
IRQ割り込みプログラムを実行する。
【0066】S−CPU18は、ステップS116にお
いて上記IRQを検出するまで、ステップS113,S
114,およびS115を実行する。すなわち、S−C
PU18はC−CPU34からのIRQ割り込みを可能
にするために、まず、ステップS113において、IN
Tイネーブルレジスタ144をイネーブルする。応じ
て、このレジスタ144から信号CIRQENが出力され、そ
れが図16に示すANDゲート184に与えられる。し
たがって、以後、このANDゲート184を通して、上
述のようにC−CPU34からS−CPU18にIRQ
割り込みをかけることができる。そして、S−CPU1
8は、ステップS114において本体12内のW−RA
M24に移り、C−CPU34からのIRQ割り込みを
待つ(プログラムウェイト)。
いて上記IRQを検出するまで、ステップS113,S
114,およびS115を実行する。すなわち、S−C
PU18はC−CPU34からのIRQ割り込みを可能
にするために、まず、ステップS113において、IN
Tイネーブルレジスタ144をイネーブルする。応じ
て、このレジスタ144から信号CIRQENが出力され、そ
れが図16に示すANDゲート184に与えられる。し
たがって、以後、このANDゲート184を通して、上
述のようにC−CPU34からS−CPU18にIRQ
割り込みをかけることができる。そして、S−CPU1
8は、ステップS114において本体12内のW−RA
M24に移り、C−CPU34からのIRQ割り込みを
待つ(プログラムウェイト)。
【0067】ステップS115でS−CPU18は割り
込みフラグを読み取り、ステップS116においてC−
CPU34からのIRQを検出する。S−CPU18
は、ステップS117においてメインルーチンに復帰す
る。またC−CPU34は、ステップS216におい
て、先のS−CPU18からの割り込みによって中断し
た並列処理(別のプログラムの実行)を再開する。
込みフラグを読み取り、ステップS116においてC−
CPU34からのIRQを検出する。S−CPU18
は、ステップS117においてメインルーチンに復帰す
る。またC−CPU34は、ステップS216におい
て、先のS−CPU18からの割り込みによって中断し
た並列処理(別のプログラムの実行)を再開する。
【0068】このようなミックス処理モードは、特に、
並列処理時、コプロセサ(C−CPU34)に余裕があ
り、2つのプロセサ、S−CPU18およびC−CPU
34の処理速度のバランスをとりたい場合や、比較的処
理頻度の高いS−CPU18側のサブルーチン(各種演
算サブルーチン,回転・拡大・縮小パラメータ算出等)
に有効である。すなわち、2つのCPUで並列処理を実
行している場合であっても、C−CPU34をS−CP
U18のアクセラレータとして起動できるため、両CP
Uの処理速度のバランスをとることができる。
並列処理時、コプロセサ(C−CPU34)に余裕があ
り、2つのプロセサ、S−CPU18およびC−CPU
34の処理速度のバランスをとりたい場合や、比較的処
理頻度の高いS−CPU18側のサブルーチン(各種演
算サブルーチン,回転・拡大・縮小パラメータ算出等)
に有効である。すなわち、2つのCPUで並列処理を実
行している場合であっても、C−CPU34をS−CP
U18のアクセラレータとして起動できるため、両CP
Uの処理速度のバランスをとることができる。
【0069】(c) 代行処理モード このモードでは、図30に示すようにC−CPU34は
ステップS221で停止状態にされている。そして、ス
テップS121において、S−CPU18は、データS
D0〜SD7によって、リセットベクタレジスタ148
および150に、C−CPU34に実行させたいプログ
ラムの先頭アドレスをセットする。そして、ステップS
122において、S−CPU18は、C−CPUコント
ロールレジスタ138にデータビットSD5によって
「1」をセットする。応じて、C−CPUコントロール
レジスタ138からハイレベルのC−CPUリセット信
号CRESが出力され、それがC−CPU34に与えられ、
C−CPU34のリセットが解除される。したがって、
C−CPU34は、図30のステップS222において
M−ROM22にアクセスし、指定されたM−ROM2
2の先頭アドレスからプログラムを実行する。
ステップS221で停止状態にされている。そして、ス
テップS121において、S−CPU18は、データS
D0〜SD7によって、リセットベクタレジスタ148
および150に、C−CPU34に実行させたいプログ
ラムの先頭アドレスをセットする。そして、ステップS
122において、S−CPU18は、C−CPUコント
ロールレジスタ138にデータビットSD5によって
「1」をセットする。応じて、C−CPUコントロール
レジスタ138からハイレベルのC−CPUリセット信
号CRESが出力され、それがC−CPU34に与えられ、
C−CPU34のリセットが解除される。したがって、
C−CPU34は、図30のステップS222において
M−ROM22にアクセスし、指定されたM−ROM2
2の先頭アドレスからプログラムを実行する。
【0070】その後、S−CPU18では、ステップS
123およびステップS124によってDMAを実行す
る。このとき、C−CPU34はS−CPU18に代わ
ってプログラムを実行する(代行処理)。C−CPU3
4は、プログラム実行の結果をS−CPU18に送るた
めに、ステップS223において、S−CPUコントロ
ールレジスタ162にデータビットCD7によって
「1」をセットする。応じて、S−CPUコントロール
レジスタ162およびANDゲート184からハイレベ
ルのS−CPU割り込み信号SIRQが出力され、それがS
−CPU18に与えられ、S−CPU18に割り込みが
かけられる。
123およびステップS124によってDMAを実行す
る。このとき、C−CPU34はS−CPU18に代わ
ってプログラムを実行する(代行処理)。C−CPU3
4は、プログラム実行の結果をS−CPU18に送るた
めに、ステップS223において、S−CPUコントロ
ールレジスタ162にデータビットCD7によって
「1」をセットする。応じて、S−CPUコントロール
レジスタ162およびANDゲート184からハイレベ
ルのS−CPU割り込み信号SIRQが出力され、それがS
−CPU18に与えられ、S−CPU18に割り込みが
かけられる。
【0071】S−CPU18は、ステップS128にお
いて上記IRQを検出するまで、ステップS125,S
126,およびS127を実行する。すなわち、S−C
PU18はC−CPU34からのIRQ割り込みを可能
にするために、まず、ステップS125において、IN
Tイネーブルレジスタ144をイネーブルする。応じ
て、このレジスタ144から信号CIRQENが出力され、そ
れが図16に示すANDゲート184に与えられる。し
たがって、以後、このANDゲート184を通して、上
述のようにC−CPU34からS−CPU18にIRQ
割り込みをかけることができる。そして、S−CPU1
8は、ステップS126において本体12内のW−RA
M24に移り、C−CPU34からのIRQ割り込みを
待つ(プログラムウェイト)。
いて上記IRQを検出するまで、ステップS125,S
126,およびS127を実行する。すなわち、S−C
PU18はC−CPU34からのIRQ割り込みを可能
にするために、まず、ステップS125において、IN
Tイネーブルレジスタ144をイネーブルする。応じ
て、このレジスタ144から信号CIRQENが出力され、そ
れが図16に示すANDゲート184に与えられる。し
たがって、以後、このANDゲート184を通して、上
述のようにC−CPU34からS−CPU18にIRQ
割り込みをかけることができる。そして、S−CPU1
8は、ステップS126において本体12内のW−RA
M24に移り、C−CPU34からのIRQ割り込みを
待つ(プログラムウェイト)。
【0072】ステップS127でS−CPU18は割り
込みフラグを読み取り、ステップS128においてC−
CPU34からのIRQを検出し、C−CPU34によ
る処理結果を受け取った後、S−CPU18は、ステッ
プS129において、C−CPUコントロールレジスタ
138にデータビットSD5によって「0」をセットす
る。応じて、C−CPUコントロールレジスタ138か
らローレベルのC−CPUリセット信号CRESが出力さ
れ、それがC−CPU34に与えられ、C−CPU34
がリセットされ、停止状態となる(ステップS22
4)。
込みフラグを読み取り、ステップS128においてC−
CPU34からのIRQを検出し、C−CPU34によ
る処理結果を受け取った後、S−CPU18は、ステッ
プS129において、C−CPUコントロールレジスタ
138にデータビットSD5によって「0」をセットす
る。応じて、C−CPUコントロールレジスタ138か
らローレベルのC−CPUリセット信号CRESが出力さ
れ、それがC−CPU34に与えられ、C−CPU34
がリセットされ、停止状態となる(ステップS22
4)。
【0073】このような代行処理モードにおいては、図
31に示すように、S−CPU18はDMA時停止しい
てるため、従来であれば直列におこなっていた処理をC
−CPU34に代行させることにより、全体の処理速度
の大幅な向上が期待できる。したがって、この代行処理
モードは、たとえば、圧縮画像の展開,アニメーション
等、DMAと平行した処理を繰り返すサブルーチンに特
に効果的である。
31に示すように、S−CPU18はDMA時停止しい
てるため、従来であれば直列におこなっていた処理をC
−CPU34に代行させることにより、全体の処理速度
の大幅な向上が期待できる。したがって、この代行処理
モードは、たとえば、圧縮画像の展開,アニメーション
等、DMAと平行した処理を繰り返すサブルーチンに特
に効果的である。
【0074】なお、上述の実施例ではM−ROM22,
B−RAM32,およびI−RAM36等のメモリのア
クセスタイムは、S−CPU18だけでなく、C−CP
U34のサイクルタイムに比べても短い。すなわち、メ
モリのアクセス速度はS−CPU18やC−CPU34
の動作速度に比べて速い。しかしながら、全てのメモリ
がこの条件を充足する必要はなく、2つのCPUないし
はプロセサによってアクセスされ得るメモリだけがこの
条件を満足していればよい。
B−RAM32,およびI−RAM36等のメモリのア
クセスタイムは、S−CPU18だけでなく、C−CP
U34のサイクルタイムに比べても短い。すなわち、メ
モリのアクセス速度はS−CPU18やC−CPU34
の動作速度に比べて速い。しかしながら、全てのメモリ
がこの条件を充足する必要はなく、2つのCPUないし
はプロセサによってアクセスされ得るメモリだけがこの
条件を満足していればよい。
【図1】従来技術の一例を簡単に示すブロック図であ
る。
る。
【図2】従来技術の他の例を簡単に示すブロック図であ
る。
る。
【図3】この発明の一実施例を示すブロック図である。
【図4】図3実施例のS−CPUからみたメモリマップ
を示す図解図である。
を示す図解図である。
【図5】図3実施例のC−CPUからみたメモリマップ
を示す図解図である。
を示す図解図である。
【図6】図3実施例におけるコプロセサを示すブロック
図である。
図である。
【図7】図3実施例におけるコプロセサの一部を詳細に
示すブロック図である。
示すブロック図である。
【図8】図3実施例におけるコプロセサの他の部分を詳
細に示すブロック図である。
細に示すブロック図である。
【図9】図7実施例におけるM−ROMシーケンサを詳
細に示すブロック図である。
細に示すブロック図である。
【図10】図9実施例によってM−ROMにアクセスす
る状態を示す図解図である。
る状態を示す図解図である。
【図11】図7実施例におけるB−RAMシーケンサ
(I−RAMシーケンサ)を詳細に示すブロック図であ
る。
(I−RAMシーケンサ)を詳細に示すブロック図であ
る。
【図12】図11実施例によってB−RAMにアクセス
する状態を示す図解図である。
する状態を示す図解図である。
【図13】図11実施例によってI−RAMにアクセス
する状態を示す図解図である。
する状態を示す図解図である。
【図14】図7実施例におけるSCPUIFを示すブロ
ック図である。
ック図である。
【図15】図7実施例におけるSCPUIFの一部を詳
細に示すブロック図である。
細に示すブロック図である。
【図16】図7実施例におけるSCPUIFの他の部分
を詳細に示すブロック図である。
を詳細に示すブロック図である。
【図17】図7実施例におけるクロックジェネレータを
詳細に示すブロック図である。
詳細に示すブロック図である。
【図18】図17実施例におけるクロックジェネレータ
によって発生される各タイミング信号あるいはクロック
信号の一例を示す図解図である。
によって発生される各タイミング信号あるいはクロック
信号の一例を示す図解図である。
【図19】図17実施例におけるクロックジェネレータ
によって発生される各タイミング信号あるいはクロック
信号の他の例を示す図解図である。
によって発生される各タイミング信号あるいはクロック
信号の他の例を示す図解図である。
【図20】実施例においてS−CPUがC−CPUを起
動する場合の動作を示すフロー図であ。
動する場合の動作を示すフロー図であ。
【図21】実施例においてS−CPUがC−CPUを停
止する場合の動作を示すフロー図であ。
止する場合の動作を示すフロー図であ。
【図22】実施例においてS−CPUがC−CPUにN
MI割り込みをかける場合の動作を示すフロー図であ
る。
MI割り込みをかける場合の動作を示すフロー図であ
る。
【図23】実施例においてS−CPUがC−CPUにI
RQ割り込みをかける場合の動作を示すフロー図であ
る。
RQ割り込みをかける場合の動作を示すフロー図であ
る。
【図24】実施例においてC−CPUがS−CPUのN
MIベクタを変更する場合の動作を示すフロー図であ
る。
MIベクタを変更する場合の動作を示すフロー図であ
る。
【図25】実施例においてC−CPUがS−CPUにI
RQ割り込みをかける場合の動作を示すフロー図であ
る。
RQ割り込みをかける場合の動作を示すフロー図であ
る。
【図26】実施例においてアクセラレータモードの動作
を示すフロー図である。
を示すフロー図である。
【図27】図26に従って動作するシステムの分散処理
の状態を示す図解図である。
の状態を示す図解図である。
【図28】実施例においてミックス処理モードの動作を
示すフロー図である。
示すフロー図である。
【図29】図28に従って動作するシステムの分散処理
の状態を示す図解図である。
の状態を示す図解図である。
【図30】実施例において代行処理モードの動作を示す
フロー図である。
フロー図である。
【図31】図30に従って動作するシステムの分散処理
の状態を示す図解図である。
の状態を示す図解図である。
10 …ゲームシステム 12 …本体 14 …カートリッジ 18 …S−CPU 22 …M−ROM 32 …B−RAM 34 …C−CPU 36 …I−RAM 54 …M−ROMシーケンサ 98 …B−RAMシーケンサ 100…I−RAMシーケンサ 134…SCPUIF
フロントページの続き (72)発明者 寺川 英明 兵庫県川西市中央町3番6号 株式会社ク リエイティブ・デザイン内
Claims (13)
- 【請求項1】プログラムに基づいて第1のサイクルタイ
ムで演算処理する第1のプロセサ(18)、 前記第1のプログラムのアーキテクチュアと同じであ
り、かつプログラムに基づいて前記第1のサイクルタイ
ムより短い第2のサイクルタイムで演算処理する第2の
プロセサ(34)、 前記第1のサイクルタイムの基準となる第1のクロック
信号を前記第1のプロセサに供給する第1のクロック供
給手段(23,25) 、 前記第2のサイクルタイムの基準となる第2のクロック
信号を前記第2のプロセサに供給する第2のクロック供
給手段(23,216)、 前記第2のプロセサがアクセスして高速読み出し可能で
あり、かつ第1のプロセサおよび前記第2のプロセサに
よって直接アクセスサイクルプログラムを格納したプロ
グラムメモリ(22)、および前記プログラムメモリのアク
セスタイムより長くかつ前記第1のサイクルタイムより
短い第1の期間において前記第1のプロセサが前記プロ
グラムメモリへ直接アクセスするのを許容し、前記第1
のサイクルタイムと前記第1の期間との差である第2の
期間において前記第2のプロセサが前記プログラムメモ
リへ直接アクセスするのを許容するアクセス制御手段(3
5,54,60,52)を備える、コプロセサシステム。 - 【請求項2】前記アクセス制御手段は、前記第1の期間
に前記第1のプロセサからアクセス要求(SMHIT) があっ
たとき第1のレベルの信号を出力しかつ前記第1の期間
に前記第1のプロセサからのアクセス要求がないとき第
2のレベルの信号を出力する信号出力手段(216,60)、お
よび前記第1のレベルの信号に応答して前記第1のプロ
セサからのアドレスを前記プログラムメモリのアドレス
入力(MA)に与えるアドレス切換手段(52)を含む、請求項
1記載のコプロセサシステム。 - 【請求項3】前記アドレス切換手段は前記第2のレベル
の信号に応答して前記第2のプロセサからのアドレスを
前記プログラムメモリの前記アドレス入力(MA)に与え
る、請求項2記載のコプロセサシステム。 - 【請求項4】前記プログラムメモリから読み出したプロ
グラムデータを前記第1のプロセサのデータバス(SD)に
与える第1のデータラッチ(66)、および前記第1のデー
タラッチに前記第1のクロックに応じて規定される第1
のラッチ信号(SSYNC) を付与ータを付与する第1のラッ
チ信号付与手段(216) を備える、請求項1ないし3のい
ずれかに記載のコプロセサシステム。 - 【請求項5】前記第1のラッチ信号の後縁は前記第1の
クロックの後縁に比べて進んだ位相にある、請求項4記
載のコプロセサシステム。 - 【請求項6】プログラムに基づいて第1のサイクルタイ
ムで演算処理する第1のプロセサ(18)と前記第1のサイ
クルタイムの基準となる第1のクロック信号を前記第1
のプロセサに供給する第1のクロック供給手段(23,25)
とを含む情報処理装置に着脱自在に装着される補助演算
機能付外部メモリ装置であって、 前記第1のプログラムのアーキテクチュアと同じであ
り、かつプログラムに基づいて前記第1のサイクルタイ
ムより短い第2のサイクルタイムで演算処理する第2の
プロセサ(34)、 前記第2のサイクルタイムの基準となる第2のクロック
信号を前記第2のプロセサに供給する第2のクロック供
給手段(23,216)、 前記第2のプロセサがアクセスして高速読み出し可能で
あり、かつ第1のプロセサおよび前記第2のプロセサに
よって直接アクセスサイクルプログラムを格納したプロ
グラムメモリ(22)、および前記プログラムメモリのアク
セスタイムより長くかつ前記第1のサイクルタイムより
短い第1の期間において前記第1のプロセサが前記プロ
グラムメモリへ直接アクセスするのを許容し、前記第1
のサイクルタイムと前記第1の期間との差である第2の
期間において前記第2のプロセサが前記プログラムメモ
リへ直接アクセスするのを許容するアクセス制御手段(3
5,54,60,52)を備える、補助演算機能付外部メモリ装
置。 - 【請求項7】前記アクセス制御手段は、前記第1の期間
に前記第1のプロセサからアクセス要求(SMHIT) があっ
たとき第1のレベルの信号を出力しかつ前記第1の期間
に前記第1のプロセサからのアクセス要求がないとき第
2のレベルの信号を出力する信号出力手段(216,60)、お
よび前記第1のレベルの信号に応答して前記第1のプロ
セサからのアドレスを前記プログラムメモリのアドレス
入力(MA)に与えるアドレス切換手段(52)を含む、請求項
1記載の補助演算機能付外部メモリ装置。 - 【請求項8】前記アドレス切換手段は前記第2のレベル
の信号に応答して前記第2のプロセサからのアドレスを
前記プログラムメモリの前記アドレス入力(MA)に与え
る、請求項2記載の補助演算機能付外部メモリ装置。 - 【請求項9】前記プログラムメモリから読み出したプロ
グラムデータを前記第1のプロセサのデータバス(SD)に
与える第1のデータラッチ(66)、および前記第1のデー
タラッチに前記第1のクロックに応じて規定される第1
のラッチ信号(SSYNC) を付与ータを付与する第1のラッ
チ信号付与手段(216) を備える、請求項6ないし8のい
ずれかに記載の補助演算機能付外部メモリ装置。 - 【請求項10】前記第1のラッチ信号の後縁は前記第1
のクロックの後縁に比べて進んだ位相にある、請求項9
記載の補助演算機能付外部メモリ装置。 - 【請求項11】前記アクセス制御手段は、前記第2のプ
ロセサが前記プログラムメモリに格納されているプログ
ラムの実行を開始する際に、その開始アドレスを指定す
るための開始アドレスレジスタを含み、 前記プログラムメモリは、前記第1のプロセサによって
実行される第1のプログラムと前記第2のプロセサによ
って実行される第2のプログラムを混在させて記憶し、
さらに前記開始アドレスレジスタによって指定されるア
ドレスから前記第2のプログラムを実行し、第2のプロ
グラムの実行中に前記第1のプロセサからアクセスがあ
ったときに第2のプログラムの実行を中断しかつ中断し
たアドレスを開始アドレスレジスタにロードすることに
より、第1のプロセサのアクセスが終了した後開始アド
レスレジスタによって指定されるアドレスから第2のプ
ロセサに実行させる、中断処理手段を備える、請求項6
記載の補助演算機能付外部メモリ装置。 - 【請求項12】前記第2のプロセサは前記第2のプログ
ラムの実行によって得られた処理結果を一時保持する内
部レジスタを含み、さらに前記内部レジスタの保持した
結果を退避するための退避メモリをさらに備え、 前記第2のプロセサの前記第2のプログラムの実行中に
おいて、新たな第2のプログラムを実行した際に前記内
部レジスタの保持結果を前記退避メモリに退避させ、前
記新たな第2のプログラムの実行終了後において前記退
避メモリに退避された結果を前記内部レジスタに復帰さ
せることにより、再度前記第2のプログラムの実行を可
能にした、請求項1記載載の補助演算機能付外部メモリ
装置。 - 【請求項13】第1のサイクルタイムを有し、プログラ
ムメモリにアクセスし、そのプログラムに従って動作す
る第1のプロセサを備える情報処理装置の動作を高速化
する方法であって、 前記第1のプロセサとプログラム互換性を有しかつ前記
第1のサイクルタイムより短い第2のサイクルタイムを
有する第2のプロセサを設け、 前記プログラムメモリとしてアクセスタイムが前記第2
のサイクルタイムと等しいかより短いプログラムメモリ
を用い、 前記第1のプロセサが前記プログラムメモリをアクセス
するために前記第1のサイクルタイムと等しいかより長
い時間を確保し、 前記第1のプロセサが前記プログラムメモリをアクセス
した残り時間で前記第2のプロセサが前記プログラムメ
モリをアクセスできるようにし、それによって前記第1
のプロセサおよび前記第2のプロセサが実質的に同時に
前記プログラムメモリにアクセスできるようにし、前記
情報処理装置を高速化する方法。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6152508A JPH0816530A (ja) | 1994-07-04 | 1994-07-04 | コプロセサシステムおよび補助演算機能付外部メモリ装置 |
CN95107288A CN1097784C (zh) | 1994-07-04 | 1995-07-04 | 协处理器系统以及带辅助运算功能的外部存储装置 |
CA002171018A CA2171018A1 (en) | 1994-07-04 | 1995-07-04 | Coprocessor system and auxiliary arithmetic function-carrying external memory |
US08/605,041 US6006319A (en) | 1994-07-04 | 1995-07-04 | Coprocessor system for accessing shared memory during unused portion of main processor's instruction cycle where main processor never waits when accessing shared memory |
DE69527932T DE69527932T2 (de) | 1994-07-04 | 1995-07-04 | Co-prozessorsystem und externer zusatzspeicher mit arithmetikfunktion |
EP95923579A EP0724220B1 (en) | 1994-07-04 | 1995-07-04 | Coprocessor system and auxiliary arithmetic function-carrying external memory |
PCT/JP1995/001332 WO1996001451A1 (fr) | 1994-07-04 | 1995-07-04 | Systeme co-processeur et memoire externe auxiliaire a fonction arithmetique |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6152508A JPH0816530A (ja) | 1994-07-04 | 1994-07-04 | コプロセサシステムおよび補助演算機能付外部メモリ装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0816530A true JPH0816530A (ja) | 1996-01-19 |
Family
ID=15541991
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6152508A Pending JPH0816530A (ja) | 1994-07-04 | 1994-07-04 | コプロセサシステムおよび補助演算機能付外部メモリ装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US6006319A (ja) |
EP (1) | EP0724220B1 (ja) |
JP (1) | JPH0816530A (ja) |
CN (1) | CN1097784C (ja) |
CA (1) | CA2171018A1 (ja) |
DE (1) | DE69527932T2 (ja) |
WO (1) | WO1996001451A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007054120A (ja) * | 2005-08-22 | 2007-03-08 | Okumura Yu-Ki Co Ltd | 遊技機 |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0947949B1 (en) * | 1995-05-10 | 2002-08-21 | Nintendo Co., Limited | Operating device with analog joystick |
JP3524247B2 (ja) | 1995-10-09 | 2004-05-10 | 任天堂株式会社 | ゲーム機およびそれを用いたゲーム機システム |
JP3544268B2 (ja) * | 1995-10-09 | 2004-07-21 | 任天堂株式会社 | 三次元画像処理装置およびそれを用いた画像処理方法 |
US6283857B1 (en) | 1996-09-24 | 2001-09-04 | Nintendo Co., Ltd. | Three-dimensional image processing apparatus with enhanced automatic and user point of view control |
MX9704155A (es) | 1995-10-09 | 1997-09-30 | Nintendo Co Ltd | Sistema procesador de imagenes tridimensionales. |
JPH09167050A (ja) * | 1995-10-09 | 1997-06-24 | Nintendo Co Ltd | 操作装置およびそれを用いる画像処理システム |
GB2313432B (en) * | 1995-11-10 | 2000-06-21 | Nintendo Co Ltd | Joystick device |
US6022274A (en) * | 1995-11-22 | 2000-02-08 | Nintendo Co., Ltd. | Video game system using memory module |
US6071191A (en) | 1995-11-22 | 2000-06-06 | Nintendo Co., Ltd. | Systems and methods for providing security in a video game system |
US6190257B1 (en) | 1995-11-22 | 2001-02-20 | Nintendo Co., Ltd. | Systems and method for providing security in a video game system |
US6331856B1 (en) | 1995-11-22 | 2001-12-18 | Nintendo Co., Ltd. | Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing |
US6241610B1 (en) | 1996-09-20 | 2001-06-05 | Nintendo Co., Ltd. | Three-dimensional image processing system having dynamically changing character polygon number |
US6244959B1 (en) | 1996-09-24 | 2001-06-12 | Nintendo Co., Ltd. | Three-dimensional image processing system with enhanced character control |
JP3655438B2 (ja) | 1997-07-17 | 2005-06-02 | 任天堂株式会社 | ビデオゲームシステム |
JPH1139448A (ja) * | 1997-07-18 | 1999-02-12 | Sony Computer Entertainment:Kk | 補助記憶装置、電子機器の時刻設定方法及び情報処理装置 |
US6314499B1 (en) * | 1997-11-14 | 2001-11-06 | Lucent Technologies Inc. | Non-preemptive memory locking mechanism in a shared resource system |
US6565443B1 (en) | 1999-09-14 | 2003-05-20 | Innovative Gaming Corporation | System and method for verifying the contents of a mass storage device before granting access to computer readable data stored on the device |
JP2002041489A (ja) * | 2000-07-25 | 2002-02-08 | Mitsubishi Electric Corp | 同期信号生成回路、それを用いたプロセッサシステムおよび同期信号生成方法 |
US6848016B2 (en) * | 2000-12-07 | 2005-01-25 | Sony Corporation | System and method for efficiently implementing an electronic device architecture |
EP1338956A1 (fr) | 2002-02-20 | 2003-08-27 | STMicroelectronics S.A. | Dispositif électronique de traitement de données, en particulier processeur audio pour un décodeur audio/vidéo |
US7188060B1 (en) * | 2002-03-29 | 2007-03-06 | Unisys Corporation | Emulation of a high-speed, high-stability clock |
GB0427973D0 (en) | 2004-12-21 | 2005-01-26 | Falanx Microsystems As | Microprocessor systems |
US8681160B2 (en) * | 2005-05-27 | 2014-03-25 | Ati Technologies, Inc. | Synchronizing multiple cards in multiple video processing unit (VPU) systems |
JP2007207136A (ja) * | 2006-02-06 | 2007-08-16 | Nec Corp | データ処理装置、データ処理方法、及びデータ処理プログラム |
US8122229B2 (en) * | 2007-09-12 | 2012-02-21 | Convey Computer | Dispatch mechanism for dispatching instructions from a host processor to a co-processor |
US8156307B2 (en) * | 2007-08-20 | 2012-04-10 | Convey Computer | Multi-processor system having at least one processor that comprises a dynamically reconfigurable instruction set |
US8561037B2 (en) | 2007-08-29 | 2013-10-15 | Convey Computer | Compiler for generating an executable comprising instructions for a plurality of different instruction sets |
US9710384B2 (en) * | 2008-01-04 | 2017-07-18 | Micron Technology, Inc. | Microprocessor architecture having alternative memory access paths |
US8095735B2 (en) * | 2008-08-05 | 2012-01-10 | Convey Computer | Memory interleave for heterogeneous computing |
US9015399B2 (en) | 2007-08-20 | 2015-04-21 | Convey Computer | Multiple data channel memory module architecture |
US8205066B2 (en) * | 2008-10-31 | 2012-06-19 | Convey Computer | Dynamically configured coprocessor for different extended instruction set personality specific to application program with shared memory storing instructions invisibly dispatched from host processor |
US20100115233A1 (en) * | 2008-10-31 | 2010-05-06 | Convey Computer | Dynamically-selectable vector register partitioning |
US8423745B1 (en) | 2009-11-16 | 2013-04-16 | Convey Computer | Systems and methods for mapping a neighborhood of data to general registers of a processing element |
GB2483167B (en) | 2010-08-27 | 2013-05-29 | Fxi Technologies As | Storage device with separate application and interface processors |
US10430190B2 (en) | 2012-06-07 | 2019-10-01 | Micron Technology, Inc. | Systems and methods for selectively controlling multithreaded execution of executable code segments |
JP6201591B2 (ja) * | 2013-09-30 | 2017-09-27 | 富士通株式会社 | 情報処理装置および情報処理装置の制御方法 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4089524A (en) * | 1977-01-18 | 1978-05-16 | Gremlin Industries, Inc. | Digitally controlled electronic game |
JPS589461B2 (ja) * | 1978-12-18 | 1983-02-21 | 富士通株式会社 | マルチプロセッサ・システム |
CA1270339A (en) * | 1985-06-24 | 1990-06-12 | Katsuya Nakagawa | System for determining a truth of software in an information processing apparatus |
US4777621A (en) * | 1985-07-19 | 1988-10-11 | Commodore-Amiga, Inc. | Video game and personal computer |
US5103499A (en) * | 1986-07-18 | 1992-04-07 | Commodore-Amiga, Inc. | Beam synchronized coprocessor |
JPS6376048A (ja) * | 1986-09-19 | 1988-04-06 | Fujitsu Ltd | 入出力制御装置 |
JPS63132368A (ja) * | 1986-11-21 | 1988-06-04 | Nec Corp | マルチプロセサの割込み方式 |
JPH0769791B2 (ja) * | 1988-12-21 | 1995-07-31 | 三菱電機株式会社 | マイクロプロセッサ |
IT1229667B (it) * | 1989-04-24 | 1991-09-06 | Bull Hn Information Syst | Sistema di elaborazione dati con arbitratore duale di accesso a bus di sistema. |
JPH03292558A (ja) * | 1990-04-11 | 1991-12-24 | Toshiba Corp | 共有メモリ制御装置 |
US5200564A (en) * | 1990-06-29 | 1993-04-06 | Casio Computer Co., Ltd. | Digital information processing apparatus with multiple CPUs |
EP0476175A1 (de) * | 1990-09-20 | 1992-03-25 | Siemens Aktiengesellschaft | Einrichtung zum Betrieb eines Mehrprozessorsystems, insbesondere einer numerischen Steuerung |
JP2848060B2 (ja) * | 1991-10-24 | 1999-01-20 | 株式会社日立製作所 | プログラマブルコントローラおよびシーケンス制御方法 |
US5388841A (en) * | 1992-01-30 | 1995-02-14 | A/N Inc. | External memory system having programmable graphics processor for use in a video game system or the like |
US5357604A (en) * | 1992-01-30 | 1994-10-18 | A/N, Inc. | Graphics processor with enhanced memory control circuitry for use in a video game system or the like |
GB9210786D0 (en) * | 1992-05-20 | 1992-07-08 | Codemasters Ltd | Memory cartridges |
EP0571138A3 (en) * | 1992-05-20 | 1995-03-29 | Codemasters Ltd | Memory cartridge and interface for video game console. |
FR2692698A1 (fr) * | 1992-06-19 | 1993-12-24 | Sgs Thomson Microelectronics | Procédé pour partager une mémoire à accès direct entre deux processeurs asynchrones et circuit électronique pour la mise en Óoeuvre de ce procédé. |
US5787488A (en) * | 1993-04-22 | 1998-07-28 | Analog Devices, Inc. | Multi-phase multi-access pipeline memory system |
US5471607A (en) * | 1993-04-22 | 1995-11-28 | Analog Devices, Inc. | Multi-phase multi-access pipeline memory system |
US5764995A (en) * | 1994-03-25 | 1998-06-09 | Packard Bell Nec | Write once read only registers |
US5685005A (en) * | 1994-10-04 | 1997-11-04 | Analog Devices, Inc. | Digital signal processor configured for multiprocessing |
US5680534A (en) * | 1994-10-31 | 1997-10-21 | Nintendo Co., Ltd. | Video game/videographics program fabricating system and method with superimpose control |
-
1994
- 1994-07-04 JP JP6152508A patent/JPH0816530A/ja active Pending
-
1995
- 1995-07-04 US US08/605,041 patent/US6006319A/en not_active Expired - Lifetime
- 1995-07-04 CN CN95107288A patent/CN1097784C/zh not_active Expired - Fee Related
- 1995-07-04 DE DE69527932T patent/DE69527932T2/de not_active Expired - Lifetime
- 1995-07-04 EP EP95923579A patent/EP0724220B1/en not_active Expired - Lifetime
- 1995-07-04 WO PCT/JP1995/001332 patent/WO1996001451A1/ja active IP Right Grant
- 1995-07-04 CA CA002171018A patent/CA2171018A1/en not_active Abandoned
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007054120A (ja) * | 2005-08-22 | 2007-03-08 | Okumura Yu-Ki Co Ltd | 遊技機 |
Also Published As
Publication number | Publication date |
---|---|
EP0724220A4 (en) | 1997-11-19 |
CN1097784C (zh) | 2003-01-01 |
CA2171018A1 (en) | 1996-01-18 |
DE69527932D1 (de) | 2002-10-02 |
US6006319A (en) | 1999-12-21 |
EP0724220B1 (en) | 2002-08-28 |
CN1124856A (zh) | 1996-06-19 |
WO1996001451A1 (fr) | 1996-01-18 |
EP0724220A1 (en) | 1996-07-31 |
DE69527932T2 (de) | 2003-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0816530A (ja) | コプロセサシステムおよび補助演算機能付外部メモリ装置 | |
US4967375A (en) | Fast architecture for graphics processor | |
KR100270198B1 (ko) | 비디오게임시스템등에 사용하기 위한 픽셀/문자변환 하드웨어를 갖는 프로그램가능 그래픽프로세서 | |
US6000027A (en) | Method and apparatus for improved graphics/image processing using a processor and a memory | |
JP2619859B2 (ja) | 自動更新する単純化キャッシュ | |
EP1262921A2 (en) | External memory system having programmable graphics processor for use in a video game system or the like | |
CA1123110A (en) | Floating point processor having concurrent exponent/mantissa operation | |
EP0584783A2 (en) | Method and apparatus for improved processing | |
JPH07134701A (ja) | シングルチップマイクロコンピュータ | |
US5471607A (en) | Multi-phase multi-access pipeline memory system | |
JP2001517343A (ja) | Riscアーキテクチャを有する8ビットマイクロコントローラ | |
USRE35480E (en) | Hardware based interface for mode switching to access memory above one megabyte | |
JP2001504959A (ja) | Riscアーキテクチャを有する8ビットマイクロコントローラ | |
JPH05257657A (ja) | 電源立上げ時シーケンス装置 | |
EP0395958B1 (en) | Graphics processing apparatus and method | |
US4701847A (en) | Adaptive instruction sequence synthesizer and process | |
JP3128799B2 (ja) | データ処理装置、データ処理システム及びアウトラインフォントデータ発生方法 | |
JPH1083349A (ja) | キャッシュ・メモリ・バンク制御装置 | |
JPH07295787A (ja) | 演算処理装置 | |
US6727903B1 (en) | Microprocessor, and graphics processing apparatus and method using the same | |
JP3839068B2 (ja) | 半導体集積回路装置 | |
JP2731618B2 (ja) | エミュレータ | |
JP2002541582A (ja) | エミュレータシステム内のユーザメモリを更新する方法およびシステム | |
JPS6261978B2 (ja) | ||
JP2704011B2 (ja) | 描画プロセッサ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20040706 |