JPH08147241A - 情報処理装置およびその構成方法 - Google Patents

情報処理装置およびその構成方法

Info

Publication number
JPH08147241A
JPH08147241A JP6312540A JP31254094A JPH08147241A JP H08147241 A JPH08147241 A JP H08147241A JP 6312540 A JP6312540 A JP 6312540A JP 31254094 A JP31254094 A JP 31254094A JP H08147241 A JPH08147241 A JP H08147241A
Authority
JP
Japan
Prior art keywords
bus
cpu
data bus
module
terminal group
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
Application number
JP6312540A
Other languages
English (en)
Inventor
Akiyoshi Nakamura
明善 中村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP6312540A priority Critical patent/JPH08147241A/ja
Priority to US08/561,760 priority patent/US5768608A/en
Publication of JPH08147241A publication Critical patent/JPH08147241A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4009Coupling between buses with data restructuring
    • G06F13/4018Coupling between buses with data restructuring with data-width conversion

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)

Abstract

(57)【要約】 【目的】 データバス幅が異なるCPUを選択して実装
できる情報処理装置を提供する。 【構成】 コネクタ116に64ビットのデータバスの
下位32ビットD0〜D31と上位32ビット32〜D
63の端子を対向して設ける。また、バイトイネーブル
信号の下位3ビットBE0〜BE3と上位4ビットBE
4〜7の端子を対向して設ける。32ビットCPU10
4を有する第1のCPUモジュール100を実装する場
合には、バス接続ボードをコネクタ116に差し込むこ
とによって、下位32ビットD0〜D31と上位32ビ
ット32〜D63の対応する端子同士を接続するととも
に、バイトイネーブル信号の下位3ビットBE0〜BE
3と上位4ビットBE4〜7の対応する端子同士も接続
する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、データバス幅が異な
る複数種類のCPUモジュールを交換可能な情報処理装
置およびその構成方法に関する。
【0002】
【従来の技術】近年では、情報処理装置に使用されるC
PU用のマイクロプロセッサの開発が急ピッチで進んで
おり、より高性能なマイクロプロセッサが漸次発表され
ている。そこで、当初に実装されているCPUを、より
高性能のCPUに置き換えることが可能な情報処理装置
も存在する。このような情報処理装置は、クロック周波
数が高いCPUに置き換えられるようになっており、C
PUの交換によって処理を高速化することが可能であ
る。
【0003】CPU用のマイクロプロセッサとしては、
上記のようにクロック周波数が異なるものばかりでな
く、データバス幅が大きく、より高速・高性能なマイク
ロプロセッサも順次開発されている。
【0004】
【発明が解決しようとする課題】しかし、データバス幅
が異なるCPUを選択して実装しようとすると、実装す
るCPUのバス幅と、コンピュータ内部のCPUバスの
バス幅とが異なる場合が生じるので、CPUによるデー
タ転送がうまく行なえないという問題がある。
【0005】このため、従来はデータバス幅が異なるC
PUを選択して実装できる情報処理装置は存在しなかっ
た。
【0006】この発明は、従来技術における上述の課題
を解決するためになされたものであり、データバス幅が
異なるCPUを選択して実装できる情報処理装置とその
構成方法を提供することを目的とする。
【0007】
【課題を解決するための手段および作用】上述の課題を
解決するため、この発明の請求項1に記載された情報処
理装置は第1のバス幅の第1のデータバスを有する第1
のCPUモジュールと、前記第1のバス幅の2倍のバス
幅の第2のデータバスを有する第2のCPUモジュール
とを置換可能な情報処理装置であって、前記第1のバス
幅にそれぞれ等しいバス幅を有する第1と第2のバス部
を含むプロセッサデータバスと、前記プロセッサデータ
バスの前記第1のバス部に接続されており、前記第1の
CPUモジュールが実装される場合には前記第1のデー
タバスに接続される第1の端子群と、前記プロセッサデ
ータバスの前記第2のバス部に接続された第2の端子群
であって、前記第1のCPUモジュールが実装される場
合には前記第1の端子群の対応する端子同士と互いに接
続され、前記第2のCPUモジュールが実装される場合
には前記第1の端子群とともに前記第2のデータバスに
接続される第2の端子群と、を備えることを特徴とす
る。
【0008】なお、この明細書における「CPUモジュ
ール」は、プリント基板上にCPUチップを設けたモジ
ュールに限らず、CPUチップ単体そのものも意味する
用語である。
【0009】第1のCPUモジュールが実装される場合
には、その第1のデータバスが第1の端子群に接続さ
れ、また、第1と第2の端子群の対応する端子同士と互
いに接続される。一方、第2のCPUモジュールが実装
される場合には、その第2のデータバスが第1と第2の
端子群に接続される。従って、データバス幅が異なる第
1と第2のCPUモジュールを選択して実装できる。
【0010】請求項2に記載された情報処理装置は、さ
らに、前記第1の端子群に、前記第1のデータバスが脱
着可能に接続された前記第1のCPUモジュールと、前
記第1の端子群と前記第2の端子群の互いに対応する端
子同士をそれぞれ接続する脱着可能なバス接続手段と、
を備える。
【0011】第1のCPUモジュールを実装する場合に
は、バス接続手段によって第1の端子群と第2の端子群
の互いに対応する端子同士をそれぞれ接続する。この結
果、プロセッサデータバスの第1のバス部と第2のバス
部に同じデータが出力されるので、第1のCPUモジュ
ールを実装した情報処理装置内部においても、プロセッ
サデータバス上のデータを他の回路に転送する手順が容
易になる。
【0012】請求項3に記載された情報処理装置では、
前記第1と第2の端子群の対応する端子同士は互いに対
向して設けられており、前記バス接続手段は、前記第1
と第2の端子群の対向する端子同士をそれぞれ接続する
複数の導体部を有する。
【0013】このような構成によれば、第1と第2の端
子群の対応する端子同士を容易に接続することができ
る。
【0014】請求項4に記載された情報処理装置では、
さらに、前記プロセッサデータバスの前記第1のバス部
上のいずれのバイトが有効であるかを示す第1のバイト
イネーブル信号を転送するための第1のバイトイネーブ
ル端子群と、前記プロセッサデータバスの前記第2のバ
ス部上のいずれのバイトが有効であるかを示す第2のバ
イトイネーブル信号を転送するための第2のバイトイネ
ーブル端子群とを備えており、前記バス接続手段は、前
記第1のバイトイネーブル端子群と前記第2のバイトイ
ネーブル端子群の互いに対応する端子同士をそれぞれ接
続する手段を含む。
【0015】第1のCPUモジュールを実装する場合に
は、プロセッサデータバスの第1のバス部と第2のバス
部に同じデータが出力されているが、請求項4の構成に
よれば、さらに、第1のバイトイネーブル信号と第2の
バイトイネーブル信号が同じ信号となる。この結果、第
1のCPUモジュールを実装した情報処理装置内部にお
いて、プロセッサデータバス上のデータを他の回路に転
送する手順がさらに容易になる。
【0016】請求項5に記載された記載の情報処理装置
では、さらに、前記第1の端子群と前記第2の端子群
に、前記第2のデータバスが脱着可能に接続された前記
第2のCPUモジュール、を備える。
【0017】第1の端子群と前記第2の端子群に第2の
データバスを脱着可能に接続することによって、第2の
CPUモジュールを容易に実装することができる。
【0018】請求項6に記載された情報処理装置では、
さらに、前記プロセッサデータバスの前記第1のバス部
に接続された第1の外部キャッシュ回路と、前記プロセ
ッサデータバスの前記第2のバス部に接続された第2の
外部キャッシュ回路と、前記第1と第2のCPUモジュ
ールのいずれが実装されているかを示すモジュール判別
信号を生成するモジュール判別信号生成手段と、前記モ
ジュール判別信号に応じて、実装されているCPUモジ
ュールに応じたキャッシュ動作を実行するための信号を
前記第1と第2の外部キャッシュ回路に供給する外部キ
ャッシュ制御手段と、を備える。
【0019】外部キャッシュ制御手段は、モジュール判
別信号に応じて、実装されているCPUモジュールに応
じたキャッシュ動作を実行するための信号を第1と第2
の外部キャッシュ回路に供給するので、いずれのCPU
モジュールが実装されている場合にも第1と第2の外部
キャッシュ回路を有効に利用することができる。
【0020】請求項7に記載された情報処理装置は、前
記外部キャッシュ制御手段は、前記第1のCPUモジュ
ールが実装されている場合には実装されているCPUか
ら与えられるアドレスに応じて前記第1と第2の外部キ
ャッシュ回路の一方を選択してデータの入出力を実行す
るための信号を生成し、前記第2のCPUモジュールが
実装されている場合には前記第1と第2の外部キャッシ
ュ回路の両方を同時に選択してデータの入出力を実行す
る信号を生成する手段を備える。
【0021】第1の外部キャッシュ回路はプロセッサデ
ータバスの第1のバス部に接続されており、第2の外部
キャッシュ回路はプロセッサデータバスの第2のバス部
に接続されている。従って、第1のCPUモジュールが
実装されている場合にはCPUから与えられるアドレス
に応じて第1と第2の外部キャッシュ回路の一方を選択
してデータの入出力を実行し、第2のCPUモジュール
が実装されている場合には第1と第2の外部キャッシュ
回路の両方を同時に選択してデータの入出力を実行する
ことによって、いずれのCPUモジュールを実装した場
合にも第1と第2の外部キャッシュ回路を有効に利用す
ることができる。
【0022】請求項8に記載された情報処理装置では、
前記モジュール判別信号生成手段は、前記第2の端子群
を含むコネクタの接続状態に応じて前記モジュール判別
信号のレベルを切り換えるモジュール判別端子を備え
る。
【0023】こうすれば、コネクタの接続状態に応じ
て、実装されているCPUモジュールに適した動作を実
行することができる。
【0024】請求項9に記載された方法は、第1のバス
幅の第1のデータバスを有する第1のCPUモジュール
と、前記第1のバス幅の2倍のバス幅の第2のデータバ
スを有する第2のCPUモジュールとを置換可能な情報
処理装置の構成方法であって、(a)前記第1のバス幅
にそれぞれ等しいバス幅を有する第1と第2のバス部を
含むプロセッサデータバスと、前記プロセッサデータバ
スの前記第1のバス部に接続された第1の端子群と、前
記プロセッサデータバスの前記第2のバス部に接続され
た第2の端子群とを設ける工程と、(b)前記第1のC
PUモジュールを実装する場合には前記第1の端子群に
前記第1のデータバスを脱着可能に接続し、一方、前記
第2のCPUモジュールを実装する場合には前記第1の
端子群と前記第2の端子群に前記第2のデータバスを脱
着可能に接続することによってCPUモジュールを実装
する工程と、(c)前記第1のCPUモジュールを実装
する場合には、前記第1の端子群と前記第2の端子群の
互いに対応する端子同士をそれぞれ接続する工程と、を
備えることを特徴とする。
【0025】第1のCPUモジュールが実装される場合
には、その第1のデータバスが第1の端子群に接続さ
れ、また、第1と第2の端子群の対応する端子同士と互
いに接続される。一方、第2のCPUモジュールが実装
される場合には、その第2のデータバスが第1と第2の
端子群に接続される。従って、データバス幅が異なる第
1と第2のCPUモジュールを選択して実装することが
できる。
【0026】請求項10に記載された情報処理装置の構
成方法では、前記工程(a)は、前記プロセッサデータ
バスの前記第1のバス部上のいずれのバイトが有効であ
るかを示す第1のバイトイネーブル信号を転送するため
の第1のバイトイネーブル端子群と、前記プロセッサデ
ータバスの前記第2のバス部上のいずれのバイトが有効
であるかを示す第2のバイトイネーブル信号を転送する
ための第2のバイトイネーブル端子群とを設ける工程を
含み、前記工程(c)は、前記第1のバイトイネーブル
端子群と前記第2のバイトイネーブル端子群の互いに対
応する端子同士をそれぞれ接続する工程を含む。
【0027】こうすれば、第1のバイトイネーブル信号
と第2のバイトイネーブル信号が同じ信号となるので、
第1のCPUモジュールを実装した情報処理装置内部に
おいて、プロセッサデータバス上のデータを他の回路に
転送する手順がさらに容易になる。
【0028】請求項11に記載された情報処理装置の構
成方法では、前記工程(a)は、前記プロセッサデータ
バスの前記第1のバス部に接続された第1の外部キャッ
シュ回路と、前記プロセッサデータバスの前記第2のバ
ス部に接続された第2の外部キャッシュ回路と、前記第
1と第2のCPUモジュールのいずれが実装されている
かを示すモジュール判別信号を生成するモジュール判別
信号生成手段とを設ける工程を含み、さらに、(d)前
記モジュール判別信号に応じて、実装されているCPU
モジュールに応じたキャッシュ動作を実行する工程、を
備える。
【0029】こうすれば、いずれのCPUモジュールを
実装した場合にも第1と第2の外部キャッシュ回路を有
効に利用することができる。
【0030】
【実施例】
A.CPUモジュールの実装方法:図1は、この発明の
一実施例としてのパーソナルコンピュータに実装される
第1のCPUモジュールを示す斜視図である。第1のC
PUモジュール100は、プリント基板102と、プリ
ント基板102の上面に設けられた第1のCPU104
と、プリント基板102の下面に設けられた2つのコネ
クタ106,107とを備えている。第1のCPU10
4は、32ビットのデータバス幅を有している。
【0031】パーソナルコンピュータの主要な回路が実
装されるプリント基板であるシステムボード110に
は、第1のCPUモジュール100の2つのコネクタ1
06,107にそれぞれ適合するコネクタ112,11
4と、後述する第2のCPUモジュールに適合するコネ
クタ116とが設けられている。
【0032】図2は、第2のCPUモジュールを示す斜
視図である。第2のCPUモジュール120は、プリン
ト基板122と、64ビットのデータバス幅を有する第
2のCPU124と、プリント基板122の下面に設け
られた3つコネクタ126,127,128とを有して
いる。これらのコネクタ126,127,128は、シ
ステムボード110の3つのコネクタ112,114,
116にそれぞれ適合する。
【0033】図1と図2に示すように、第1のCPUモ
ジュール100はシステムボード110上のコネクタ1
12,114に脱着可能に接続され、第2のCPUモジ
ュール120はコネクタ112,114,116に脱着
可能に接続される。従って、ユーザは、必要に応じて第
1のCPUモジュール100と第2のCPUモジュール
120とをいつでも交換することが可能である。
【0034】第2のCPU124は、第1のCPU10
4に対するソフトウェアをそのまま実行できること、す
なわち、第1のCPU104の上位互換であることが好
ましい。第1のCPU104としては例えばi486(イン
テル社の商標)を使用し、第2のCPU124としては
例えばPentium (インテル社の商標)を使用することが
できる。
【0035】図3(A)は、第2のCPUモジュール1
20を実装した状態を示す平面図である。図3(B)
は、コネクタ116の端子の配列を示す説明図である。
コネクタ116は、第2のCPU124に必要な信号の
端子として、64ビットのデータバスD0〜D63と8
ビットのバイトイネーブル信号BE0〜BE7の端子を
有している。また、実装されたCPUモジュールの種類
を判別するためのモジュール判別端子detも設けられ
ている。バイトイネーブル信号BE0〜BE7は、64
ビットのデータバス上の8バイトのデータのうちの有効
なバイトを示す信号である。例えばバイトイネーブル信
号BE0がLレベルの時は、8バイトのうちの最下位の
1バイトが有効となる。また、バイトイネーブル信号B
E7がLレベルの時は、8バイトのうちの最上位の1バ
イトが有効となる。8バイトがすべて有効な場合には、
バイトイネーブル信号BE0〜BE7がすべてLレベル
になる。
【0036】コネクタ116において、データバスの下
位32ビットD0〜D31と上位32ビットD32〜D
63は、それぞれ対応する端子同士が対向して設けられ
ている。また、バイトイネーブル信号の下位4ビットB
E0〜BE3と上位4ビットBE4〜BE7も、それぞ
れ対応する端子同士が対向して設けられている。
【0037】なお、この明細書においては、端子とその
端子に入出力される信号とを同じ符号で呼ぶこととす
る。
【0038】図4(A)は、第1のCPUモジュール1
00を実装した状態を示す平面図である。第1のCPU
モジュール100を実装する場合には、コネクタ116
にはバス接続用ボード130が差込まれる。
【0039】図4(B)はコネクタ107,114の端
子の配列を示している。コネクタ107,114は、第
1のCPU104に必要な32ビットのデータバスD0
〜D31や4ビットのバイトイネーブル信号BE0〜B
E3等を有している。
【0040】第1のCPUモジュール100を実装する
場合には、データバスの上位32ビットD32〜D63
とバイトイネーブル信号BE4〜BE7は不要である。
図3(C)に示すように、バス接続用ボード130は、
データバスの下位32ビットD0〜D31と上位32ビ
ットD32〜D63の対応する端子同士を接続し、ま
た、バイトイネーブル信号の下位4ビットBE0〜BE
3と上位BE4〜BE7の対応する端子同士も接続す
る。
【0041】図5は、システムボード110上のコネク
タ114,116の結線状態を示す説明図である。コネ
クタ114におけるデータバスの下位32ビットD0〜
D31の端子は、コネクタ116における下位32ビッ
トD0〜D31の端子とそれぞれ接続されており、シス
テムボード110上に設けられたプロセッサデータバス
の下位32ビットCD0〜CD31に接続されている。
また、コネクタ116におけるデータバスの上位32ビ
ットD32〜D63は、システムボード110上に設け
られたプロセッサデータバスの上位32ビットCD32
〜CD63に接続されている。同様に、コネクタ114
におけるバイトイネーブル信号の下位4ビットBE0〜
BE3の端子は、コネクタ116における下位4ビット
BE0〜BE3の端子とそれぞれ接続されており、コネ
クタ116に設けられた上位4ビットBE4〜BE7と
ともに、システムボード110上に設けられた8ビット
のバイトイネーブル信号用のバスに接続されている。
【0042】なお、第1のCPUモジュール100を実
装する場合に、コネクタ116の端子D0〜D31,B
E0〜BE3を使用してCPU104とシステムボード
110のバスを接続するようにすれば、コネクタ114
の端子D0〜D31,BE0〜BE3を省略することも
可能である。
【0043】図6は、コネクタ116とバス接続ボード
130の形状を示す要部断面図である。図6(A)に示
すように、バス接続ボード130のコネクタ部131
は、両面エッジ型のコネクタである。なお、図6におい
て、導体部には斜線が付されている。コネクタ部131
において、データバスの上位32ビットの端子D0〜D
31と下位32ビットの端子D32〜D63 はボード
の両側に設けられており、対応する端子の導体部同士が
スルーホール(貫通孔)132を介して導通している。
図6(B)は、端子D0,D32の部分の断面図であ
る。バイトイネーブル信号BE0〜BE3,BE4〜B
E7の端子同士も同様に導通されている。なお、これら
の信号以外の端子は、図6(C)に示すようにスルーホ
ールは無い。
【0044】第1のCPUモジュール100を実装する
場合には、このように、64ビットのデータバスの上位
32ビットと下位32ビットの対応するバスラインをそ
れぞれ接続しているので、プロセッサデータバスの上位
32ビットと下位32ビットに同じデータが出力され
る。従って、バス制御を行なう回路(後述する)は、プ
ロセッサデータバスが32ビット場合と同じように制御
を実行すればよいので、バス制御が容易である。
【0045】なお、実施例ではバイトイネーブル信号の
上位4ビットと下位4ビットの対応するラインもそれぞ
れ接続しているので、データバスの上位32ビットと下
位32ビットの有効なバイトも常に同じになり、バス制
御がさらに容易である。
【0046】図3(C)に示すように、第2のCPUモ
ジュール120が実装されている場合には、コネクタ1
16のモジュール判別端子detが接地されてモジュー
ル判別信号detは0レベルとなる。一方、図4(D)
に示すように、第1のCPUモジュール100が実装さ
れると、モジュール判別端子detは開放され、この結
果、モジュール判別信号detは1レベルとなる。従っ
て、モジュール判別信号detのレベルを調べることに
よって、第1と第2のCPUモジュールのいずれが実装
されているかを認識することができる。
【0047】CPUモジュールの端子の構成は種々のも
のが考えられる。図7は、第2のCPUモジュールの他
の構成を示す図である。このCPUモジュール121
は、64ビットCPU124に必要な信号の端子(D3
2〜D63,BE4〜BE7等)のためのコネクタ12
8a,128bが、32ビットCPU用のコネクタ12
6,127の外側に設けられている。その他の構成とし
ては、図7において、コネクタ127を設けずに3つの
コネクタ126,128a,128bのみを設け、32
ビットCPUを実装する場合にはコネクタ126,12
8bを使用してコネクタ128aにはバス接続ボード1
30を装着し、64ビットCPUを実装する場合にはバ
ス接続ボード130を外してコネクタ128a,128
bを使用するようにしてもよい。
【0048】B.2次キャッシュの増設方法:図8は、
2次キャッシュと呼ばれる外付けのキャッシュ回路の増
設方法を示す概念図である。図8(A)は、図2に示す
第2のCPUモジュール120の他に、独立したキャッ
シュモジュール150を実装する場合を示している。ま
た、図8(B)は、第2のCPUモジュール120a内
に2次キャッシュを設けた場合を示している。なお、図
8(B)の構成において、2次キャッシュをCPUモジ
ュールに固定して、CPUがCPUモジュールのソケッ
トに脱着できるようになっていてもよい。図8(A)の
ように、独立したキャッシュモジュール150を用いる
ようにすれば、ユーザの選択に応じて2次キャッシュの
増設を行なうことができる。また、CPUを再びアップ
グレードする際に、2次キャッシュを交換する必要がな
いという利点もある。第1のCPUモジュール100に
ついても、図8(A),(B)に示す方法でキャッシュ
の増設が可能である。
【0049】なお、2次キャッシュが増設されているか
否かは、キャッシュモジュール150のコネクタに設け
られているキャッシュ判別端子のレベルに応じて判別さ
れる。図8(C)は、キャッシュモジュール150用の
コネクタの接続状態に応じてキャッシュ判別信号Cde
tが生成される状態を示している。キャッシュモジュー
ル150が実装されると、キャッシュ判別端子Cdet
が接地されて、キャッシュ判別信号Cdetが0レベル
となる。一方、キャッシュモジュール150が実装され
ない状態では、キャッシュ判別端子Cdetが開放さ
れ、この結果、キャッシュ判別信号Cdetは1レベル
となる。従って、キャッシュ判別信号Cdetのレベル
を調べることによって、2次キャッシュが増設されてい
るか否かを認識することができる。後述するメモリコン
トローラは、このキャッシュ判別端子Cdetのレベル
に応じて2次キャッシュのコントロールを有効にするか
無効にするかを選択する。また、2次キャッシュの有無
により、メモリを最適にコントロールすることができ
る。
【0050】C.コンピュータの構成:図9は、実施例
におけるパーソナルコンピュータの構成を示すブロック
図である。このパーソナルコンピュータは、CPUモジ
ュール100(または120)と、バス変換部200
と、メモリコントローラ202と、2次キャッシュ20
4と、システムバス変換部206と、内蔵メモリ(RO
MおよびRAMを含む)208と、増設RAM210と
を備えている。なお、2次キャッシュ204および増設
RAM210は、ユーザが増設の有無を選択することが
できる。
【0051】CPUモジュール100(または120)
から出力されるモジュール判別信号detと、キャッシ
ュモジュールから出力されるキャッシュ判別信号Cde
tは、メモリコントローラ202に与えられている。メ
モリコントローラ202には、さらに、増設RAM21
0の端子から出力されるメモリ判別信号Mdetも与え
られている。メモリ判別信号Mdetを発生するための
端子の構造は、図3(C)に示すモジュール判別端子d
etの構造や、図8(C)に示すキャッシュ判別端子C
detの構造と同じである。後述するように、メモリコ
ントローラ202は、これらの判別信号det,Cde
t,Mdetに従って、コンピュータの構成に応じた適
切な制御を実行する。
【0052】CPUとしては、32ビットCPU104
か64ビットCPU124のいずれかを選択して実装す
ることができる。CPUに接続されるプロセッサバス3
00は、コントロールバス302と、アドレスバス30
4と、64ビットのデータバス306とで構成されてい
る。
【0053】バス変換部200の上流側は64ビットの
データバス306に接続されており、また、下流側は6
4ビットのメモリデータバス310と、32ビットの入
出力データバス406とに接続されている。メモリデー
タバス310は、内蔵メモリ208と、増設RAM21
0とに接続されている。バス変換部200は、プロセッ
サデータバス306と入出力データバス406との間、
および、プロセッサデータバス306とメモリデータバ
ス310との間のバス変換を行なう回路である。なお、
バス変換部200の内部構成と動作については後述す
る。
【0054】メモリコントローラ202の上流側は、プ
ロセッサバス300のコントロールバス302とアドレ
スバス304に接続されている。メモリコントローラ2
02は、判別信号det,Mdetと、CPUから与え
られるコントロール信号とアドレスに応じて、内蔵メモ
リ208と増設RAM210に物理アドレスとコントロ
ール信号とを供給し、これらのメモリの入出力制御を行
なう。また、2次キャッシュ204が実装されている場
合には、2次キャッシュ204の制御も行なう。メモリ
コントローラ202の下流側は、さらに、入出力コント
ロールバス402に接続されている。
【0055】入出力バス400は、32ビットのデータ
バス406と、アドレスバス404と、コントロールバ
ス402とで構成されている。入出力バス400は、比
較的高速なバスであり、システムバス変換部206の他
に、グラフィックスコントローラ220やハードディス
クコントローラ224等が接続されている。グラフィッ
クスコントローラ220には、図示しないVRAM(ビ
デオRAM)や表示デバイスが接続されている。
【0056】システムバス変換部206は、入出力バス
400とシステムバス500との間のバス変換を行なう
回路である。システムバス500は16ビットのデータ
バスを有する比較的低速なバスであり、I/Oコントロ
ーラを介してキーボードやプリンタやフロッピーディス
クドライブなどが接続されている。
【0057】このように、コンピュータのバスは、64
ビットのデータバス幅を有する最も高速なプロセッサバ
ス300と、64ビットのデータバス幅を有する高速な
メモリバス320と、32ビットのデータバス幅を有す
る比較的高速な入出力バス400と、16ビットのデー
タバス幅を有する比較的低速なシステムバス500とを
備えている。プロセッサバス300と入出力バス400
との間の変換、および、プロセッサバス300とメモリ
バス320との間の変換は、主としてバス変換部200
が行なう。また、入出力バス400とシステムバス50
0との間の変換はシステムバス変換部206が行なう。
【0058】D.メモリコントローラ202の内部構
成:図10は、メモリコントローラ202の内部構成を
示すブロック図である。メモリコントローラ202は、
タイミングコントロール部600と、CPUコントロー
ル部610と、メモリコントロール部612と、2次キ
ャッシュコントロール部614とを備えている。図10
には、実施例に関連のある主な信号のみを示しており、
他の信号は便宜上省略している。
【0059】タイミングコントロール部600は、CP
Uモジュールからモジュール判別信号detを受け取
り、また、増設RAM210の端子からメモリ判別信号
Mdetを受け取る。タイミングコントロール部600
は、これらの判別信号det,Mdetに応じてメモリ
コントロール部612とバス変換部200に各種の信号
を供給する。メモリコントロール部612は、タイミン
グコントロール部600から与えられた信号に基づい
て、内蔵メモリ208や増設RAM210にアドレスと
コントロール信号を与えてメモリの制御を実行する。C
PUコントロール部610は、キャッシュが有効である
か否かを示すキャッシュイネーブル信号KENや、バス
サイクルが完了したことを示すバーストレディ信号BR
DYをCPUに供給する機能を有する。2次キャッシュ
コントロール部614は、キャッシュモジュールからキ
ャッシュ判別信号Cdetを受け取り、2次キャッシュ
204が増設されている場合にはその制御を実行する。
2次キャッシュコントロール部614による2次キャッ
シュ204の制御については後述する。
【0060】ところで、32ビットCPU104が出力
するアドレスは、30ビットの上位アドレスA31〜A
2と、下位アドレスである4ビットのバイトイネーブル
信号BE0〜BE3とを含んでいる。すなわち、上位ア
ドレスA31〜A2によって4バイト毎のアドレスを指
定し、バイトイネーブル信号BE0〜BE3によって、
4バイトのうちの有効なバイトを示している。一方、6
4ビットCPUが出力するアドレスは、29ビットの上
位アドレスA31〜A3と、下位アドレスである8ビッ
トのバイトイネーブル信号BE0〜BE7とを含んでい
る。すなわち、上位アドレスA31〜A3によって8バ
イト毎のアドレスを指定し、バイトイネーブル信号BE
0〜BE7によって、8バイトのうちの有効なバイトを
示している。例えばバイトイネーブル信号BE0がLレ
ベルの時は、8バイトのうちの最下位の1バイトが有効
となる。また、バイトイネーブル信号BE7がLレベル
の時は、8バイトのうちの最上位の1バイトが有効とな
る。8バイトがすべて有効な場合には、バイトイネーブ
ル信号BE0〜BE7がすべてLレベルになる。
【0061】このように、実装されているCPUのデー
タバス幅が異なると、CPUから出力されるアドレスが
異なる。そこで、タイミングコントロール部600は、
実装されているCPUのデータバス幅に応じてアドレス
信号を調整する機能を有している。
【0062】図11は、タイミングコントロール部60
0に含まれるアドレス調整回路の構成を示すブロック図
であり、64ビットCPU124が実装されている例を
示している。アドレス調整回路は、アドレス変換テーブ
ル602と、第1のセレクタ604と、下位アドレス変
更回路606と、バーストアドレス生成部607と、第
2のセレクタ608と、ANDゲート609とを備えて
いる。64ビットCPU124が実装されている場合に
は、CPU124から8ビットのバイトイネーブル信号
BE0〜BE7が供給されるが、アドレスA2は供給さ
れない。アドレス変換テーブル602は、8ビットのバ
イトイネーブル信号BE0〜BE7を、アドレスA2
と、32ビットデータバス用のバイトイネーブル信号B
E0’〜BE3’に変換する。
【0063】なお、アドレスA2と4ビットのバイトイ
ネーブル信号BE0〜BE3は連続した64ビット(8
バイト)のいずれのバイトが有効であるかを示すので、
8ビットのバイトイネーブル信号BE0〜BE7と実質
的に同じ機能を有する。換言すれば、アドレスA2と4
ビットのバイトイネーブル信号BE0〜BE3の組み合
わせ、および、8ビットのバイトイネーブル信号BE0
〜BE7は、いずれも第2のCPUモジュール120の
データバス幅(64ビット)のいずれのバイトが有効で
あるかを示す信号である。
【0064】32ビットCPU104が実装されている
場合には、図12に示すように、CPU104から4ビ
ットのバイトイネーブル信号BE0〜BE3とアドレス
A2が供給されるが、上位のバイトイネーブル信号BE
4〜BE7にも下位のバイトイネーブル信号BE0〜B
E3と同じ信号が供給される。また、32ビットCPU
104から出力されたバイトイネーブル信号BE0〜B
E3とアドレスA2は、そのままセレクタ604に入力
されて、そのまま下位アドレスA2,BE0’〜BE
3’として出力される。
【0065】図13は、アドレス変換テーブル602の
入出力の関係を示す説明図である。図13において、
「H」はHレベル、「L」はLレベル、「X」は任意の
レベルを示している。アドレスA2のレベルは、図13
(A)に示す入力のAND条件で決定される。また、バ
イトイネーブル信号BE0’〜BE3’は、図13
(B)に示す入力のOR条件で決定される。
【0066】セレクタ604は、アドレス変換テーブル
602で生成された下位アドレスA2,BE0’〜BE
3’と、CPUから出力された下位アドレスA2,BE
0〜BE3の一方を、モジュール判別信号detに応じ
て選択する。64ビットCPU124が実装されている
場合には、アドレス変換テーブル602で生成された下
位アドレスA2,BE0’〜BE3’を選択する。一
方、32ビットCPU104が実装されている場合に
は、CPU104から出力された下位アドレスA2,B
E0〜BE3を選択する。セレクタ604で選択された
アドレスA2はそのまま出力されるが、バイトイネーブ
ル信号BE0’〜BE3’は下位アドレス変更回路60
6に供給される。
【0067】下位アドレス変更回路606は、キャッシ
ュイネーブル信号KENに応じてアドレスA2とバイト
イネーブル信号BE0’〜BE3’を変更する回路であ
る。キャッシュイネーブル信号KENは、CPUコント
ロール部610(図10)によって生成される信号であ
り、キャッシュが有効であるか無効であるかを示す信号
である。キャッシュはメモリのアドレス空間の一部にお
いてのみ有効とされており、キャッシュが有効なアドレ
ス範囲はメモリコントローラ202内に登録されてい
る。CPUがメモリからデータを読込む際にメモリコン
トローラ202にメモリアドレスを渡すと、CPUコン
トロール部610は、キャッシュが有効なアドレス範囲
であるか否かを判断してキャッシュイネーブル信号KE
Nを出力する。
【0068】32ビットのCPU104のキャッシュ
は、16バイトで1キャッシュラインが構成されてお
り、メモリ内のデータは1キャッシュライン毎にキャッ
シュに読み込まれる。従って、1キャッシュライン分の
データをメモリから32ビットCPU104のキャッシ
ュに読込むには、32ビット(4バイト)のすべてを有
効にして4回のデータ転送が必要である。一方、64ビ
ットのCPU124のキャッシュは32バイトで1キャ
ッシュラインが構成されている。従って、1キャッシュ
ライン分のデータをメモリからCPU124のキャッシ
ュに読込むには、64ビット(8バイト)のすべてを有
効にして4回のデータ転送が必要である。すなわち、い
ずれのCPUの場合にも、キャッシュが有効なアドレス
範囲では、データバス幅のすべてを有効にして4回連続
してデータを読込むことによって、1キャッシュライン
分のデータをキャッシュに読み込むことができる。
【0069】なお、このように複数回に渡って連続して
データの読込みまたは書込みが行われる動作は、バース
トサイクルまたはバースト転送と呼ばれている。下位ア
ドレス変更回路606は、32ビットCPU104が実
装されている場合には、キャッシュが有効なバースト読
込みサイクルの場合に4ビットのバイトイネーブル信号
BE0’〜BE3’を強制的にすべてLレベルに変更す
る。また、64ビットCPU124が実装されていれば
バイトイネーブル信号BE0’〜BE3’を強制的にす
べてLレベルに変更するとともに、アドレスA2の値を
0と1に順次切換える。
【0070】バーストアドレス生成部607(図11,
12)は、バーストサイクルに必要なアドレスA3,A
4を生成する回路である。64ビットCPUのバースト
サイクル時には、8バイトの転送を4回行なう際にアド
レスA3,A4を順次インクリメントする必要がある。
しかし、64ビットCPUではアドレスA3,A4をイ
ンクリメントしないので、バーストアドレス生成部60
7が4回の転送に同期してアドレスA3,A4を順次イ
ンクリメントする。ANDゲート609にはキャッシュ
イネーブル信号KENとモジュール判別信号detが入
力されており、ANDゲート609の出力は、第2のセ
レクタ608の選択信号端子に与えられている。64ビ
ットCPU124が実装されている場合には、キャッシ
ュが有効な場合にバーストサイクルが実行される。そこ
で、バーストアドレス生成部607で生成されたアドレ
スA3,A4がキャッシュイネーブル信号KENに応じ
て選択されて、入出力バス400に出力される。なお、
32ビットCPU104が実装されている場合には、バ
ーストサイクル時にCPU104がアドレスA2,A3
をインクリメントするので、アドレスA2,A3は、第
1と第2のセレクタ604、609からそれぞれそのま
ま出力される。
【0071】図14は、入出力バス400に接続された
メモリから64ビットCPU124にデータを読込む際
のバスサイクルを示すタイミングチャートである。キャ
ッシュが無効な読込みサイクルの場合には、図14
(a)〜(i)に示すように、まずCPUからアドレス
ステータス信号ADSが出力されて新たなバスサイクル
が開始される。タイミングコントロール部600は、入
出力バス400にバスサイクルの開始を示すアドレスス
テータス信号ADS’(図14(e))を出力する。メ
モリコントローラ20は、アドレスA31〜A3(実際
には32バイト毎のアドレスA31〜A5)からキャッ
シュが有効なアドレス範囲か否かを判断し、キャッシュ
が無効な場合には、キャッシュイネーブル信号KENを
Hレベルに保つ。この場合には、下位アドレス変更回路
606は、第1のセレクタ604から供給された下位ア
ドレスA2,BE0’〜BE3’をそのまま出力する。
なお、第2のセレクタ609は、CPU124から与え
られたアドレスA3,A4(図示せず)をそのまま出力
する。データが入出力データバス406に転送される
と、入出力データバス406がバーストレディ信号BR
DY’を発生して、データが転送されたことをタイミン
グコントロール部600に通知し、バスサイクルが終了
する。
【0072】一方、キャッシュが有効な場合には、図1
4(j)〜(r)に示すように、キャッシュイネーブル
信号KENがLレベルになるなので、下位アドレス変更
回路606は第1のセレクタ604から供給されたバイ
トイネーブル信号BE0’〜BE3’をすべてLレベル
に変更し、変更後のバイトイネーブル信号BE0’〜B
E3’として出力する。また、アドレスA2を順次0と
1に切換えることによて、64ビットのデータを32ビ
ットずつ2回に分けて転送している。なお、第2のセレ
クタ609は、64ビットの4回のバースト転送に同期
してバーストアドレス生成部607で生成されたアドレ
スA3,A4(図示せず)を選択して出力する。なお、
64ビットCPU124を実装している場合にはバース
トサイクルにおいて32ビットのデータを8回転送する
ので、タイミングコントロール部600は、入出力バス
400からバーストレディ信号BRDY’が8パルス与
えられた時にバスサイクルが終了したと判断する。
【0073】上述したように、アドレス変換テーブル6
02とセレクタ604は、モジュール判別信号detに
従い、CPUのデータバス幅に応じて下位アドレスA
2,BE0’〜BE3’を調整する。従って、実装され
ているCPUのデータバス幅に応じた適切な下位アドレ
スを生成することができる。
【0074】なお、タイミングコントロール部600で
生成された下位アドレスA2〜A4,BE0’〜BE
3’は、プロセッサアドレスバスのアドレスA31〜A
5と共に、入出力アドレスバス404を構成する。
【0075】E.バス変換部200の内部構成:図15
は、バス変換部200の内部構成を示すブロック図であ
り、64ビットCPU124が実装されている場合を示
している。また、図16は、32ビットCPU104が
実装された場合を示している。バス変換部200は、プ
ロセッサデータバス306と入出力データバス406と
の間の変換を行なう入出力データバス変換部620と、
プロセッサデータバス306とメモリデータバス310
との間の変換を行なうメモリデータバス変換部640と
を備えている。
【0076】入出力データバス変換部620は、スワッ
プ回路622と、2つのラッチ回路624,626とを
有している。メモリデータバス変換部640は、ライト
バッファ642と、セレクタ644と、2つのスワップ
回路646,648と、2つのラッチ回路650,65
2とを備えている。以下ではまず、入出力データバス変
換部620の動作を説明し、次に、メモリデータバス変
換部640の動作を説明する。
【0077】F.入出力データバス変換部620の動
作:入出力データバス変換部620のスワップ回路62
2は、メモリコントローラ202から与えられるライト
データセレクト信号WDSELに応じて、CPUから出
力された64ビットデータの上位32ビットCD32〜
CD63と下位32ビットCD0〜CD31の一方を選
択して入出力データバス406に出力する機能を有して
いる。
【0078】入出力データバス変換部620の2つのラ
ッチ回路624,626は、メモリコントローラ202
内のタイミングコントロール部600(図10)から与
えられる上位ラッチ信号HIGHLTと下位ラッチ信号
LOWLTにそれぞれ応じて、入出力データバス406
上の32ビットのデータD0〜D31をそれぞれ保持
し、プロセッサデータバス306に64ビットのデータ
として出力する機能を有している。
【0079】図17は、64ビットCPU124から入
出力データバス406へのデータ転送の動作を示すタイ
ミングチャートである。図17(a)〜(d)はCPU
から出力される信号を示しており、図17(e)〜
(g),(i)はメモリコントローラ202で生成され
る信号を、図17(h)は入出力データバス406が生
成する信号を、図17(j)は転送されるデータを、ま
た、図17(k)はメモリコントローラ202からCP
Uに出力される信号をそれぞれ示している。
【0080】CPU124は、まず、図17(a)に示
すアドレスステータス信号ADSをLレベルに立ち下げ
て、同時に、アドレスA31〜A3(図17(b))と
バイトイネーブル信号BE0〜BE7(図17(c))
とを出力し、ライト/リード信号W/R(図17
(d))をHレベル(書込み)に設定する。なお、ここ
では図17(c)に示すようにバイトイネーブル信号B
E0〜BE7がすべてLレベルであり、64ビット全部
が有効である場合について説明する。
【0081】タイミングコントロール部600(図1
0)は、これらの信号に応じてアドレスステータス信号
ADS’(図17(e))を作成して入出力データバス
406に出力する。また、タイミングコントロール部6
00は、アドレスA2(図17(f))とバイトイネー
ブル信号BE0’〜BE3’(図17(g))を作成し
て出力する。なお、アドレスA3,A4は、CPUから
のアドレスがそのままタイミングコントロール部600
から出力される。タイミングコントロール部600は、
さらに、ライトデータセレクト信号WDSEL(図17
(i))をLレベルに立ち下げて、下位32ビットCD
0〜CD31を選択することを指示する。この結果、ス
ワップ回路622からは、下位32ビットCD0〜CD
31のデータが入出力データバス406の32ビットD
0〜D31に出力される(図17(j))。
【0082】入出力データバス406上にデータが出力
されると、入出力データバス406ははバーストレディ
信号BRDY’(図17(h))をタイミングコントロ
ール部600に出力して、データが出力されたことを通
知する。タイミングコントロール部600はアドレスス
テータス信号ADS’(図17(e))を再度立ち下げ
て、上位の32ビットのデータ転送を開始する。すなわ
ち、アドレスA2(図17(f))を1に設定し、ライ
トデータセレクト信号WDSELをHレベルに立上げる
ことによって、上位32ビットCD32〜CD63を選
択する。この結果、スワップ回路622からは、上位3
2ビットCD32〜CD63のデータが入出力データバ
ス406上に出力される(図17(j))。
【0083】こうして、下位32ビットのデータCD0
〜CD31と上位32ビットのデータCD32〜CD6
3が順次入出力データバス406に転送されると、メモ
リコントローラ202はバーストレディ信号BRDY
(図17(k))をCPU124に出力して、データ転
送が終了したことを通知する。
【0084】図18は、32ビットCPU104が実装
されている場合におけるCPUから入出力データバス4
06へのデータ転送の動作を示すタイミングチャートで
ある。図18の動作は、図17の動作の前半部とほぼ同
様である。但し、図18(b)に示すように、32ビッ
トCPU104からは、アドレスステータス信号ADS
(図18(a))とともにアドレスA31〜A2とバイ
トイネーブル信号BE0〜BE3が出力される。また、
下位32ビットのデータCD0〜CD31が入出力デー
タバス406に転送されると、メモリコントローラ20
2はバーストレディ信号BRDY(図18(k))をC
PU104に出力して、データ転送が終了したことを通
知する。
【0085】なお、32ビットCPU104が実装され
ている場合には、64ビットのプロセッサデータバス3
06の下位32ビットCD0〜CD31と上位32ビッ
トCD32〜CD63とに同じデータが現われる。従っ
て、スワップ回路622は、下位32ビットと上位32
ビットのどちらを選択して入出力データバス406に転
送しても同じである。また、ラッチ624,624のど
ちらを使用しても、CPU104に転送されるデータは
同じである。
【0086】メモリコントローラ202は、CPUから
データ転送の指示を受けた際に、CPUモジュールから
与えられるモジュール判別信号detに応じて、図17
と図18の2種類のデータ転送動作の一方を選択して実
行する。従って、データバス幅が異なるCPUを実装し
ても、CPUと入出力バス400上の回路との間のデー
タの転送を問題なく実行することができる。
【0087】なお、スワップ回路622としては、下位
アドレス(8ビットのバイトイネーブル信号BE0’〜
BE7’、または、アドレスA2と4ビットのバイトイ
ネーブル信号BE0’〜BE3’)に応じて1バイト以
上の連続したバイトを選択できる回路を使用することも
可能である。
【0088】図19は、入出力データバス406から6
4ビットCPU124へのデータ転送の動作を示すタイ
ミングチャートである。図19(a)〜(d)はCPU
から出力される信号を示しており、図19(e)〜
(g),(i),(j)はメモリコントローラ202が
生成する信号を、図19(h)は入出力データバス40
6が生成する信号を、図19(k)は転送されるデータ
を、図19(l)はメモリコントローラ202からCP
Uに出力される信号をそれぞれ示している。
【0089】CPU124は、まず、図19(a)に示
すアドレスステータス信号ADSをLレベルに立ち下げ
て、同時に、アドレスA31〜A3(図19(b))と
バイトイネーブル信号BE0〜BE7(図19(c))
とを出力し、ライト/リード信号W/R(図19
(d))をLレベル(読込み)に設定する。
【0090】タイミングコントロール部600(図1
0)は、これらの信号に応じてアドレスステータス信号
ADS’(図19(e))を作成して入出力データバス
406に出力する。また、タイミングコントロール部6
00(図10)は、アドレスA2(図19(f))とバ
イトイネーブル信号BE0’〜BE3’(図19
(g))を作成して出力する。入出力データバス406
にデータが出力されると、タイミングコントロール部6
00が下位ラッチ信号LOWLT(図19(i))をL
レベルに立ち下げて、入出力データバス406上のデー
タを下位側のラッチ回路626に保持する。この時、入
出力データバス406からはタイミングコントロール部
600にバーストレディ信号BRDY’が与えられる。
【0091】下位32ビット分のデータをラッチする
と、タイミングコントロール部600はアドレスステー
タス信号ADS’(図19(e))を再度立ち下げ、ア
ドレスA2(図19(f))を1に設定して、上位の3
2ビットのデータ転送を開始する。入出力データバス4
06上に次の32ビットのデータが出力されると、タイ
ミングコントロール部600は上位ラッチ信号HIGH
LTをLレベルに立下げることによって入出力データバ
ス406のデータを上位側のラッチ回路624に保持す
る。
【0092】こうして、32ビットのデータが2つのラ
ッチ回路624,626にそれぞれ保持されて64ビッ
トのデータがプロセッサデータバス306に出力される
と、タイミングコントロール部600はバーストレディ
信号BRDY(図19(l))をCPUコントロール部
610を介してCPU124に出力し、CPU124は
64ビットのデータの読込みを行なう。
【0093】図20は、32ビットCPU104が実装
されている場合における入出力データバス406からC
PUへのデータ転送の動作を示すタイミングチャートで
ある。図20は、図19に示すタイミングチャートの前
半部とほぼ同様である。すなわち、32ビットのデータ
が下位ラッチ信号LOWLT(図20(i))に応じて
ラッチされると、メモリコントローラ202はバースト
レディ信号BRDY(図20(l))をCPU104に
出力して、データ転送の準備が完了したことを通知す
る。メモリコントローラ202は、CPUからデータ転
送の指示を受けた際に、CPUモジュールから与えられ
るモジュール判別信号detに応じて、図19と図20
の2種類のデータ転送動作の一方を選択して実行する。
【0094】上述したように、入出力データバス変換部
620は、モジュール判別信号detに応じて、64ビ
ットCPU124または32ビットCPU104に適し
たデータ転送動作を選択的に実行するので、第1と第2
のCPUモジュールのいずれを実装した場合にもプロセ
ッサデータバス306と入出力バス400との間のデー
タ転送をうまく実行することができる。
【0095】G.メモリデータバス変換部640の動
作:メモリデータバス変換部640の動作は、増設RA
M210の有無によって異なる。前述した図15,図1
6は、いずれも増設RAM210a,210bが設けら
れている場合の構成である。内蔵RAM208a,20
8bと増設RAM210a,210bは、例えばそれぞ
れが16ビット×1M構成の2Mバイトの容量を有する
RAMである。図21は64ビットCPU124が実装
されて増設RAM210が実装されていない場合を示し
ており、図22は32ビットCPU104が実装されて
増設RAM210が実装されていない場合を示してい
る。すなわち、この実施例において、CPUとRAMの
容量の組み合わせとしては、図15,16,21,22
の4つのケースがある。
【0096】これらの4つのケースにおけるCPUから
メモリへの書込み動作は、次の表1に示すようにまとめ
られる。
【0097】
【表1】
【0098】ケース1(64ビットCPU+増設RA
M、図15)の場合には、プロセッサデータバス306
とメモリデータバス310の64ビットがいずれも有効
にドライブされるので、プロセッサデータバス306上
のデータがそのままメモリデータバス310に転送され
る。この際、ライトバッファ642は、CPU124か
ら出力された64ビットのデータを一時記憶し、セレク
タ644とスワップ回路646をそのまま通過する。
【0099】ライトバッファ642とセレクタ644
は、メモリへのバースト書込みサイクルの際に必要とな
る回路である。バースト書込みサイクルでは、64ビッ
トのデータが連続して4回メモリに書き込まれる。ライ
トバッファ642は64ビットのバッファを4つ有して
おり、バースト書込みサイクルの際に、タイミングコン
トロール部600(図10)から与えられる4つのラッ
チ信号MLAT0〜MLAT3に応じて4組の64ビッ
トデータを順次記憶する。なお、バーストサイクル時の
4サイクルのアドレスは一定の規則性を持つので、バス
変換部200におけるアドレスを更新するために、バス
変換部200にクロック信号を入力して2ビットのカウ
ンタによってクロックパルスをカウントし、そのカウン
ト値に従ってバーストアドレスを更新するようにしても
よい。この場合には、バーストサイクルの開始を指示す
るためのクロックアップ信号を、メモリコントローラ2
02からバス変換部200に与えるようにすればよい。
【0100】セレクタ644は、タイミングコントロー
ル部600から与えられる2ビットのセレクト信号MS
L0、MSL1に応じて4つのバッファのいずれか1つ
を選択し、スワップ回路646に64ビットのデータを
供給する。バースト書込みサイクルでない通常の書込み
サイクルでは、ライトバッファ642内の1つのバッフ
ァが使用されるだけであり、セレクタ644はデータを
単に通過させるだけである。また、スワップ回路646
は、プロセッサデータバス306とメモリデータバス3
10の64ビットがいずれも有効な場合には何もせず、
データを通過させるだけである。
【0101】表1のケース2(32ビットCPU+増設
RAM、図16)の場合には、プロセッサデータバス3
06の下位32ビットCD0〜31と上位32ビットC
D32〜CD63が接続されているので、両者に同じデ
ータが出力される。従って、この場合にはプロセッサデ
ータバス306の64ビットをそのままメモリデータバ
ス310の64ビットに出力すればよい。内蔵RAM2
08と増設RAM210のいずれに書き込まれるかは、
メモリコントロール部612からそれぞれに与えられる
ローアドレスストローブRAS1,RAS0によって指
定される。なお、データの書込みは、ローアドレススト
ローブRAS1,RAS0の他に、図示していないカラ
ムアドレスストローブCAS,ライトイネーブル信号W
E等に応じて実行される。
【0102】このように、32ビットCPU104と増
設RAM210が実装されているケース2においても、
スワップ回路646は64ビットのデータを通過させる
だけでよい。
【0103】なお、プロセッサデータバス306上の3
2ビットのデータがすべて有効ではなく、そのうちの一
部のバイトのみが有効な場合には、スワップ回路646
は、プロセッサデータバス306の有効なバイトをメモ
リデータバス310の適切なバスラインに転送する機能
を有している。このために、スワップ回路646とし
て、下位アドレス(8ビットのバイトイネーブル信号B
E0’〜BE7’、または、アドレスA2と4ビットの
ビットイネーブル信号BE0’〜BE3’)に応じてプ
ロセッサデータバス306とメモリデータバス310の
間のデータ転送を実行する回路を採用することができ
る。
【0104】表1のケース3(64ビットCPU+内蔵
RAMのみ、図21)の場合には、スワップ回路646
の働きによって、プロセッサバス306上の64ビット
のデータが、メモリデータバス310の上位32ビット
MD32〜MD63に2回に分けて転送される。この動
作は、前述した図17(64ビットCPUから入出力デ
ータバスへのデータ転送サイクル)とほぼ同様なので、
説明を省略する。
【0105】表1のケース4(32ビットCPU+内蔵
RAMのみ、図22)の場合には、プロセッサデータバ
ス306の上位32ビットCD32〜CD63のデータ
が、そのままメモリデータバス310の上位32ビット
に転送される。この動作は、前述した図18(32ビッ
トCPUから入出力データバスへのデータ転送サイク
ル)におけるアドレスステータス信号ADS’がADS
Mに、バーストレディ信号BRDY’がBRDYMに変
更されているだけで、その動作はほぼ同様なので、説明
を省略する。
【0106】このように、32ビットCPU104を実
装した場合には、プロセッサデータバス306の上位3
2ビットと下位32ビットに同じデータが出力される。
従って、スワップ回路646は単に64ビットのデータ
を通過させるだけでよい。これは、プロセッサデータバ
ス306の上位32ビットと下位32ビットの対応する
バスラインを互いに接続していることに起因する利点で
ある。
【0107】以上のように、CPUからメモリへの通常
のデータ書込みサイクルでは、プロセッサデータバス3
06の有効なバイトがメモリデータバス310の適切な
バスラインに転送される。なお、図15に示すように、
内蔵RAM208a,208bと増設RAM210a,
210bには異なるローアドレスストローブRAS1,
RAS0がそれぞれ与えられており、これらのストロー
ブRAS1,RAS0に応じて有効なデータがそれぞれ
のRAMに書き込まれる。
【0108】上記の4つのケースにおけるメモリからC
PUへの読込み動作は、次の表2に示すようにまとめら
れる。
【0109】
【表2】
【0110】表2のケース1(64ビットCPU+増設
RAM、図15)の場合には、プロセッサデータバス3
06とメモリデータバス310の64ビットがいずれも
有効にドライブされるので、メモリデータバス310上
のデータがそのままプロセッサデータバス306に転送
される。従って、64ビットのデータはスワップ回路6
48をそのまま通過し、2つのラッチ回路650,65
2で32ビットずつ保持されてプロセッサデータバス3
06に出力される。
【0111】表2のケース2(32ビットCPU+増設
RAM、図16)の場合には、RAMから読み出された
32ビットのデータは、メモリデータバス310の上位
32ビットか、または下位32ビットに出力されてい
る。また、プロセッサデータバス306の上位32ビッ
トと下位32ビットは接続されているので、両者のデー
タは同じになる。従って、スワップ回路648は、メモ
リデータバス310の上位32ビットと下位32ビット
の一方をプロセッサデータバス306にそのまま通過さ
せる。
【0112】このように、32ビットCPU104と増
設RAM210が実装されている場合にも、スワップ回
路648は、メモリデータバス310の有効な32ビッ
トをプロセッサデータバス306にそのまま転送する。
【0113】なお、メモリデータバス310上の32ビ
ットのデータがすべて有効ではなく、そのうちの一部の
バイトのみが有効な場合には、スワップ回路648は、
メモリデータバス310の有効なバイトをプロセッサデ
ータバス306の適切なデータラインに転送する機能を
有している。このために、スワップ回路648として、
下位アドレス(アドレスA2と4ビットのバイトイネー
ブル信号BE0’〜BE3’、または、8ビットのバイ
トイネーブル信号BE0’〜BE7’)に応じて、プロ
セッサデータバス306とメモリデータバス310の間
のデータ転送を実行する回路を採用することができる。
【0114】表2のケース3(64ビットCPU+内蔵
RAMのみ、図21)の場合には、スワップ回路648
の働きによって、メモリデータバス310の上位32ビ
ットのデータが、上位側のラッチ回路650と下位側の
ラッチ回路652に割り当てられて保持され、2つのラ
ッチ回路650,652に保持された64ビットのデー
タがプロセッサデータバス306に同時に出力される。
この動作は、前述した図19(入出力データバスから6
4ビットCPUへのデータ転送サイクル)とほぼ同様な
ので、説明を省略する。
【0115】表2のケース4(32ビットCPU+内蔵
RAMのみ、図22)の場合には、メモリデータバス3
10の上位32ビットのデータが、そのままプロセッサ
データバス306の上位32ビットに転送される。この
動作は、前述した図20(入出力データバスから32ビ
ットCPUへのデータ転送サイクル)とほぼ同様なの
で、説明を省略する。
【0116】以上のように、メモリからCPUへの通常
のデータ読込みサイクルでは、スワップ回路648とラ
ッチ回路650,652の働きによって、メモリデータ
バス310の有効なバイトがプロセッサデータバス30
6の適切なデータラインに転送される。なお、32ビッ
トCPU104が実装されている場合には、スワップ回
路648は単に上位または下位の32ビットのデータを
そのまま通過させるだけでよい。これは、プロセッサデ
ータバス306の上位32ビットと下位32ビットの対
応するバスラインを互いに接続していることに起因する
利点である。
【0117】コンピュータの構成が上述した4つのケー
スのいずれに相当するかは、CPUモジュールの端子か
ら与えられるモジュール判別信号detと、増設RAM
の端子から与えられるメモリ判別信号Mdetとに応じ
てメモリコントローラ202が判断し、適切な信号をバ
ス変換部200に供給する。従って、メモリコントロー
ラ202とバス変換部200は、CPUのデータバス幅
とRAMの容量に応じた適切なデータ転送を実行するこ
とができる。
【0118】H.2次キャッシュコントロール部614
の動作:図23は、第2のCPUモジュール120と、
2次キャッシュコントロール部614と、2次キャッシ
ュ204との関係を示すブロック図である。また、図2
4は第1のCPUモジュール100を実装した場合の図
である。2次キャッシュ204は、2つのキャッシュS
RAM204a,204bを有している。2次キャッシ
ュ用のSRAMには、高速性とバーストサイクルに対応
可能であることが要求されるので、バーストカウンタ付
きシンクロナス・ファースト・SRAMなどが使用され
る。このタイプのSRAMとしては、例えば、日本電気
株式会社製のμPD431132Lなどを使用すること
が可能である。
【0119】各キャッシュSRAM204a,204b
は、4バイト/ワード×32kワードの128kBの容
量を有しており、それぞれ次のような信号の端子を有し
ている。)
【0120】CLK:メモリコントローラ202から与
えられるクロック信号。
【0121】A0〜14:CPUのアドレスA3〜A1
7に接続されるアドレス入力。
【0122】BW1〜4:バイトライト。1ワード中の
4バイトの書込みを制御する。
【0123】I/O1〜32:4バイト(=32ビッ
ト)のデータ入出力。
【0124】CE:チップイネーブル。
【0125】AP:プロセッサアドレスステータス。C
PUのアドレスステータス信号ADSが入力される。
【0126】AC:コントローラアドレスステータス。
メモリコントローラ202から与えられるアドレスステ
ータス信号が入力される。
【0127】ADV:バーストアドレスアドバンス。S
RAM内部のバーストカウンタをカウントアップする。
【0128】G:アウトプットイネーブル。
【0129】2次キャッシュコントロール部614は、
キャッシュされるデータの上位アドレスと有効ビットと
を記憶するためのTAG−RAM615を有している。
【0130】各キャッシュSRAM204a,204b
の1ワードは4バイトであるが、第2のCPUモジュー
ル120が実装されている場合(図23)には、2つの
キャッシュSRAM204a,204bが組み合わされ
て8バイト/ワードのデータを記憶する。CPU124
のアドレスA3〜17は、2つのキャッシュSRAM2
04a,204bのアドレスA0〜A14に共通に入力
されており、これによって32kワード(8バイト/ワ
ード)の各ワードアドレスが指定される。また、下位4
ビットのバイトイネーブル信号BE0〜3が第1のキャ
ッシュSRAM204aのバイトライトBW1〜4に入
力され、上位4ビットのバイトイネーブル信号BE4〜
7が第2のキャッシュSRAM204bのバイトライト
BW1〜BW4に入力されている。すなわち、第1のキ
ャッシュSRAM204aは8バイト(64ビット)の
データの下位4バイトを記憶し、第2のキャッシュSR
AM204bは上位4バイトを記憶する。従って、第1
のキャッシュSRAM204aのデータ入出力I/O1
〜31はプロセッサデータバス306の下位32ビット
CD0〜31と接続されており、第2のキャッシュSR
AM204bのデータ入出力I/O1〜31はプロセッ
サデータバス306の上位32ビットCD32〜63と
接続されている。
【0131】なお、CPU124のアドレスA3〜A1
7,A18〜24は、TAG−RAM615に与えられ
ている。TAG−RAM615の機能については後述す
る。
【0132】2次キャッシュコントロール部614に
は、CPUモジュールからコントロール信号とモジュー
ル判別信号detも与えられており、キャッシュモジュ
ールからはキャッシュ判別信号Cdetが与えられてい
る。キャッシュ判別信号Cdetによって2次キャッシ
ュ204が増設されていることが示されている場合に
は、2次キャッシュコントロール部614は、CPUモ
ジュールから与えられる各種の信号に応じて2つのキャ
ッシュSRAM204a,204bの制御に必要な各種
の信号(CE,AP等)を出力する。
【0133】第1のCPUモジュール100が実装され
ている場合(図24)には、2つのキャッシュSRAM
204a,204bに対して個別に4バイト/ワードの
単位でデータの入出力が実行される。CPU104のア
ドレスA3〜17は、2つのキャッシュSRAM204
a,204bのアドレスA0〜A14に共通に入力され
ているが、アドレスA2に応じたチップイネーブルCE
1,CE2が2次キャッシュコントロール部614から
各キャッシュSRAM204a,204bに与えられて
いる。すなわち、アドレスA2が0の場合には第1のキ
ャッシュSRAM204aが動作可能となり、アドレス
A2が1の場合には第2のキャッシュSRAM204b
が動作可能となる。従って、アドレスA2〜17によっ
て、キャッシュSRAM204a,204bにおけるワ
ードアドレスが4バイト/ワード単位で指定される。
【0134】第1のCPUモジュール100が実装され
ている場合には、バス接続ボード130によって、バイ
トイネーブル信号の上位4ビットBE4〜7と下位4ビ
ットBE0〜3の端子が互いに接続され、また、プロセ
ッサデータバスの上位32ビットCD32〜63と下位
32ビットCD0〜31の端子も互いに接続される。従
って、2つのキャッシュSRAM204a,204bの
バイトライトBW1〜4には、CPU104の4ビット
のバイトイネーブル信号BE0〜3が共通に与えられ
る。また、2つのキャッシュSRAM204a,204
bのデータ入出力I/O1〜31には、CPU104の
32ビットのデータが共通に与えられる。
【0135】メモリコントローラ202は、33MHz
の第1のクロック信号CLK1と66MHzの第2のク
ロック信号CLK2とを供給可能である。第2のCPU
モジュール120が実装されている場合(図23)に
は、66MHzの第2のクロック信号CLK2がCPU
モジュール120と2つのキャッシュSRAM204
a,204bに入力されている。また、第1のCPUモ
ジュール100が実装されている場合(図24)には、
33MHzの第1のクロック信号CLK1がCPUモジ
ュール100に入力されており、66MHzの第2のク
ロック信号CLK2が2つのキャッシュSRAM204
a,204bに入力されている。なお、第1のCPUモ
ジュール100に設けらているCPU104のクロック
周波数が66MHzの場合には、第2のクロック信号C
LK2を入力すればよい。
【0136】図25は、TAG−RAM615の機能を
示す説明図である。TAG−RAM615は、CPUの
アドレスA0〜31中のアドレスA18〜24と、1ビ
ットの有効ビットとを記憶するRAMである。有効ビッ
トは、データがキャッシュSRAM204a,204b
に有効に記憶されている時には1に設定され、記憶され
ていない時には0に設定される。TAG−RAM615
には、CPUからのアドレスA3〜17がアドレス(イ
ンデックス)として入力されており、アドレスA3〜1
7に応じて、その上位のアドレスA18〜24が出力さ
れる。2次キャッシュコントロール部614は、指定さ
れたアドレスA3〜17に対する有効ビットが1の場合
には、TAG−RAM615から読み出された上位のア
ドレスA18〜24と、CPUから与えられたアドレス
A18〜24とを比較する。そして、両者が一致した場
合にはキャッシュヒットであると判断し、アドレスA3
〜17に応じてキャッシュSRAM204a,204b
からデータを読み出す。なお、TAG−RAM615
は、アドレスA3〜17の1つの値について上位のアド
レスA18〜24の1つの値を記憶できるだけである。
また、キャッシュの対処となるアドレス範囲は、CPU
の全アドレス空間のうちで、アドレスA25以上の上位
のアドレスA25〜31がすべて0の範囲である。従っ
て、キャッシュSRAM204a,204bは、000000
00h 〜01FFFFFFh までの32MBのアドレス範囲におけ
る256kBのデータをキャッシュ可能である。
【0137】図26は、64ビットCPU124が実装
されている場合における2次キャッシュの動作を示すタ
イミングチャートである。図26(l)に示すように、
この図には、単一転送のリードサイクルと、単一転送の
ライトサイクルと、4転送のバーストリードサイクルと
が示されている。
【0138】単一転送のリードサイクルでは、まずクロ
ックT1においてCPU124からサイクルの開始を示
すアドレスステータス信号ADSがキャッシュSRAM
204a,204bのプロセッサアドレスステータスA
P(図26(b))に入力され、アドレスA3〜17
(図26(d))もキャッシュSRAM204a,20
4bに入力される。2次キャッシュコントロール部61
4は、キャッシュが有効である場合に2つのキャッシュ
SRAM204a,204bのチップイネーブルCE
1,CE2(図26(g))を立ち下げ、クロックT2
においてアウトプットイネーブルG1,G2(図26
(h))をLレベルに立ち下げてデータの読み出しを許
可する(図26(j))。8バイトのデータの読み出し
が終了すると、メモリコントローラ202からCPU1
24にバーストレディBRDYが供給されてサイクルが
終了する。
【0139】単一転送のライトサイクルでは、アウトプ
ットイネーブルG1,G2(図26(h))の代わりに
バイトライトBW1〜4がLレベルになり、データの書
込みを許可する(図26(i))。なお、図23から解
るように、第1のキャッシュSRAM204aのバイト
ライトBW1〜4には、下位4ビットのバイトイネーブ
ル信号BE0〜3が供給され、第2のキャッシュSRA
M204bのバイトライトBW1〜4には、上位4ビッ
トのバイトイネーブル信号BE4〜7が供給されてい
る。2次キャッシュにデータを書き込む際には、8バイ
トが同時に記憶されるので、バイトイネーブル信号BE
0〜7はすべて0となる。
【0140】4転送のバーストリードサイクルでは、ク
ロックT2-1において、2次キャッシュコントロール部
614がバーストアドレスアドバンスADV(図26
(e))をLレベルに立ち下げるので、これに応じて2
つのキャッシュSRAM204a,204bがそれぞれ
内部のバーストカウンタのカウントアップを始める。こ
の結果、連続する4つのクロックT2-1〜T2-4におい
て、それぞれ8バイトのデータが順次読み出される。
【0141】図27は、32ビットCPU104が実装
されている場合における2次キャッシュの動作を示すタ
イミングチャートである。第1のCPUモジュール10
0が実装されている場合には、33MHzの第1のクロ
ック信号CLK1(図27(b))に同期してCPU1
04が動作するので、図27に示す動作は図26に示す
動作の2倍の時間を要する。
【0142】図27における単一転送リードサイクルの
動作は、図26における動作とほぼ同じであるが、次に
示す信号が2つのキャッシュSRAM204a,204
bに別々に与えられている。
【0143】コントローラアドレスステータスAC1,
AC2(図27(d),(e)):CPUからアドレス
ステータス信号ADSが入力されない場合に、2次キャ
ッシュコントロール部614が動作の開始を指示する。
【0144】チップイネーブルCE1,CE2(図27
(j),(k)):2つのキャッシュSRAM204
a,204bを別々に動作可能にする。
【0145】アウトプットイネーブルG1,G2(図2
7(l),(m)):2つのキャッシュSRAM204
a,204bを別々に読取可能にする。
【0146】図27における単一転送リードサイクル
は、アドレスA2(図27(g))の値が0の場合であ
り、第1のキャッシュSRAM204aからデータが読
み出される。そこで、2次キャッシュコントロール部6
14は、第1のチップイネーブルCE1(図27
(j))と第1のアウトプットイネーブルG1(図27
(m))をそれぞれLレベルに立下げて、4バイト(3
2ビット)のデータを第1のキャッシュSRAM204
aから読み出している(図27(o))。
【0147】一方、図27における単一転送ライトサイ
クルは、アドレスA2(図27(g))の値が1の場合
であり、第2のキャッシュSRAM204bにデータが
書き込まれる。そこで、2次キャッシュコントロール部
614は、第2のチップイネーブルCE2(図27
(k))とバイトライトBW1〜4をそれぞれLレベル
に立下げて、4バイト(32ビット)のデータを第2の
キャッシュSRAM204bに書き込んでいる(図27
(o))。
【0148】図27における4転送バーストリードサイ
クルでは、クロックT2-1〜T2-4において、2つのキ
ャッシュSRAM204a,204bから4バイトのデ
ータが交互に読み出される。まず、最初に与えられるア
ドレスA2(図27(g))の値が0なので、第1のチ
ップイネーブルCE1(図27(j))と第1のアウト
プットイネーブルG1(図27(l))がLレベルとな
り、クロックT2-1において第1のキャッシュSRAM
204aから4バイトのデータQ1(図27(o))が
読み出される。この時のアドレスA3,A2の値は、図
27(h)に示すように、両方とも0である。クロック
T2-2では、2次キャッシュコントロール部614が第
2のキャッシュSRAM204aに与えるコントローラ
アドレスステータスAC2(図27(e))をLレベル
に立ち下げて、第2のキャッシュSRAM204bの動
作を開始させる。すなわち、第2のチップイネーブルC
E2(図27(k))と第2のアウトプットイネーブル
G2(図27(m))をLレベルに立ち下げ、これに応
じて第2のキャッシュSRAM204bから4バイトの
データQ2(図27(o))が読み出される。なお、第
2のキャッシュSRAM204bは、アドレスA2の値
が1であるデータを記憶しているので、クロックT2-2
では、図27(h)に示すようにアドレスA3,A2の
値が0と1である4バイトのデータが読み出されている
ことになる。
【0149】クロックT2-3では、2次キャッシュコン
トロール部614がバーストアドレスアドバンスADV
(図27(h))をLレベルに立ち下げて、2つのキャ
ッシュSRAM204a,204b内のバーストカウン
タをカウントアップさせ、これによってアドレスA3が
1に変更される。クロックT2-3では、2次キャッシュ
コントロール部614が第1のアウトプットイネーブル
G1(図27(l))をLレベルに立ち下げて、第1の
キャッシュSRAM204aから4バイトのデータQ3
(図27(o))を読み出す。この時のアドレスA3,
A2の値は、図27(h)に示すように1と0に相当す
る。そして、クロックT2-4では、2次キャッシュコン
トロール部614が第2のアウトプットイネーブルG2
(図27(m))をLレベルに立ち下げて、第2のキャ
ッシュSRAM204bから4バイトのデータQ4(図
27(o))を読み出す。この時のアドレスA3,A2
の値は、図27(h)に示すように両者とも1に相当す
る。こうして4回の転送が終了すると、メモリコントロ
ーラ202はバーストレディ信号BRDYをHレベルに
立上げて、CPU104にバースト転送サイクルが終了
したことを通知する。
【0150】このように、32ビットCPU104が実
装されている場合には、2つのキャッシュSRAM20
4a,204bから交互に4バイトずつ読み出すことに
よって、4転送のバーストリードサイクルを実行する。
【0151】なお、図23と図24とを比較すれば解る
ように、2次キャッシュコントロール部614と2つの
キャッシュSRAM204a,204bとの接続関係
は、第1と第2のCPUモジュールのどちらが実装され
ていても同じである。図23と図24の大きな違いは、
図24において、プロセッサデータバス306の上位3
2ビットD32〜63と下位32ビットD0〜31、お
よび、バイトイネーブル信号の上位4ビットBE4〜7
と下位4ビットBE0〜3がバス接続ボード130によ
ってそれぞれ接続されている点にある。この結果、2次
キャッシュコントロール部614は、2つのキャッシュ
SRAM204a,204bの一方を選択してデータの
入出力を実行することができる。64ビットCPUが実
装されているか、32ビットCPUが実装されているか
は、モジュール判別信号detによって判別できるの
で、2次キャッシュコントロール部614は、実装され
ているCPUに適した制御(図26,27)を実行する
ことができる。
【0152】上述したように、この実施例では、CPU
とコネクタのみを有するCPUモジュールを交換するこ
とによって、データバス幅の異なるCPUを容易に交換
することが可能である。このようなモジュールは、CP
Uに適した電源やバス変換回路等を備えたモジュールを
交換する場合に比べて、モジュールの構成が簡単にな
り、その容積、面積を低減できるとともにコストも低く
抑えることができるという利点がある。特に、ノートパ
ソコンと呼ばれる携帯型の情報処理装置では、CPUの
ための交換モジュールの容積、面積があまり大きくする
ことができないので、小さなモジュールでCPUを交換
できることのメリットが大きい。なお、モジュールが小
さければ、モジュールの交換作業も容易になるという利
点もある。
【0153】図9に示すバス変換部200は、実装され
ているCPUのバス幅に応じたバス変換を実行するの
で、CPUの処理能力を落とすこと無くバス幅の異なる
CPUを交換することが可能である。この場合にも、モ
ジュール内にCPUに適したバス変換部200を実装す
る必要がない。
【0154】さらに、CPUとコネクタのみのモジュー
ルとした場合には、TCP(テープキャリアパッケー
ジ)やQFP(クワッドフラットパッケージ)等の小さ
なパッケージを使用することができるので、モジュール
を小型化することが可能である。
【0155】また、図4に示すように、第1のCPUモ
ジュール100を実装する際に、64ビットCPU用の
コネクタ116にバス接続用ボード130を差込むよう
にすれば、このバス接続用ボード130を取り外さない
限り第2のCPUモジュール120を実装することがで
きない。従って、バス接続用ボード130を用いること
によって、CPUモジュールに応じた信号の切換えを、
確実に、かつ、安価に行なうことができるという利点が
る。
【0156】なお、この発明は上記実施例に限られるも
のではなく、その要旨を逸脱しない範囲において種々の
態様において実施することが可能であり、例えば次のよ
うな変形も可能である。
【0157】(1)本発明は、第1のCPU104と第
2のCPU124のデータバス幅が32ビットと64ビ
ット以外の場合にも適用できる。
【0158】(2)上記実施例では、判別信号det,
Mdet,Cdetのための端子をそれぞれのモジュー
ルのコネクタに設けていたが、コネクタ以外の箇所に各
種の判別信号を発生する回路を設けるようにしてもよ
い。但し、コネクタに判別端子を設けるようにすれば、
実装されているモジュールに応じた判別信号が間違いな
く発生するという利点がある。
【0159】
【発明の効果】以上説明したように、請求項1および9
に記載された発明によれば、データバス幅が異なる第1
と第2のCPUモジュールを選択して実装できる。
【0160】請求項2に記載された発明によれば、第1
のCPUモジュールを実装した情報処理装置内部におい
ても、プロセッサデータバス上のデータを他の回路に転
送する手順が容易になる。
【0161】請求項3に記載された発明によれば、第1
と第2の端子群の対応する端子同士を容易に接続するこ
とができる。
【0162】請求項4および10に記載された発明によ
れば、第1のCPUモジュールを実装した情報処理装置
内部において、プロセッサデータバス上のデータを他の
回路に転送する手順がさらに容易になる。
【0163】請求項5に記載された発明によれば、第2
のCPUモジュールを容易に実装することができる。
【0164】請求項6および11に記載された発明によ
れば、いずれのCPUモジュールが実装されている場合
にも第1と第2の外部キャッシュ回路を有効に利用する
ことができる。
【0165】請求項7に記載された発明によれば、いず
れのCPUモジュールを実装した場合にも第1と第2の
外部キャッシュ回路を有効に利用することができる。
【0166】請求項8に記載された発明によれば、コネ
クタの接続状態に応じて、実装されているCPUモジュ
ールに適した動作を実行することができる。
【図面の簡単な説明】
【図1】この発明の一実施例としてのパーソナルコンピ
ュータに実装される第1のCPUモジュールを示す斜視
図。
【図2】第2のCPUモジュールを示す斜視図。
【図3】第2のCPUモジュール120を実装した状態
を示す平面図。
【図4】第1のCPUモジュール100を実装した状態
を示す平面図。
【図5】システムボード110上のコネクタ114,1
16の結線状態を示す説明図。
【図6】コネクタ116とバス接続ボード130の形状
を示す要部断面図。
【図7】第2のCPUモジュールの他の構成を示す図。
【図8】2次キャッシュの増設方法を示す概念図。
【図9】実施例におけるコンピュータの構成を示すブロ
ック図。
【図10】メモリコントローラ202の内部構成を示す
ブロック図。
【図11】64ビットCPU実装時におけるタイミング
コントロール部600に含まれるアドレス調整回路の構
成を示すブロック図。
【図12】32ビットCPU実装時におけるアドレス調
整回路の構成を示すブロック図。
【図13】アドレス変換テーブル602の入出力の関係
を示す説明図。
【図14】キャッシュイネーブル信号KENに応じた下
位アドレス変更回路606の動作を示すタイミングチャ
ート。
【図15】64ビットCPU実装時におけるバス変換部
200の構成を示すブロック図。
【図16】32ビットCPU実装時におけるバス変換部
200の構成を示すブロック図。
【図17】64ビットCPU124から入出力データバ
ス406へのデータ転送の動作を示すタイミングチャー
ト。
【図18】32ビットCPU124から入出力データバ
ス406へのデータ転送の動作を示すタイミングチャー
ト。
【図19】入出力データバス406から64ビットCP
U124へのデータ転送の動作を示すタイミングチャー
ト。
【図20】入出力データバス406から32ビットCP
U124へのデータ転送の動作を示すタイミングチャー
ト。
【図21】64ビットCPU124が実装され増設RA
M210が実装されていない場合のバス変換部200の
構成を示すブロック図。
【図22】32ビットCPU104が実装され増設RA
M210が実装されていない場合のバス変換部200の
構成を示すブロック図。
【図23】第2のCPUモジュール120と、2次キャ
ッシュコントロール部614と、2次キャッシュ204
との関係を示すブロック図。
【図24】第1のCPUモジュール100と、2次キャ
ッシュコントロール部614と、2次キャッシュ204
との関係を示すブロック図。
【図25】TAG−RAM615の機能を示す説明図。
【図26】64ビットCPU124が実装されている場
合における2次キャッシュの動作を示すタイミングチャ
ート。
【図27】32ビットCPU104が実装されている場
合における2次キャッシュの動作を示すタイミングチャ
ート。
【符号の説明】
100…第1のCPUモジュール 102…プリント基板 104…32ビットCPU 106,107…コネクタ 108,109…端子 110…システムボード 112,114,116…コネクタ 120…第2のCPUモジュール 120a…第2のCPUモジュール 122…プリント基板 124…64ビットCPU 126,127,128…コネクタ 130…バス接続ボード 140…定電圧電源 142…可変電源 142a…可変電源 146…デコーダ 150…キャッシュモジュール 200…バス変換部 202…メモリコントローラ 206…システムバス変換部 208…内蔵メモリ 208a,208b…内蔵RAM 210,210a,210b…増設RAM 220…グラフィックスコントローラ 224…ハードディスクコントローラ 300…プロセッサバス 302…コントロールバス 304…アドレスバス 306…データバス(プロセッサデータバス) 306…プロセッサバス 310…メモリデータバス 320…メモリバス 400…入出力バス 402…コントロールバス 404…アドレスバス 406…データバス(入出力データバス) 500…システムバス 600…タイミングコントロール部 602…アドレス変換テーブル 604…セレクタ 606…下位アドレス変更回路 607…バーストアドレス生成部 608…セレクタ 609…ANDゲート 610…CPUコントロール部 612…メモリコントロール部 614…2次キャッシュコントロール部 615…TAG−RAM 620…入出力データバス変換部 622…スワップ回路 624,626…ラッチ回路 640…メモリデータバス変換部 642…ライトバッファ 644…セレクタ 646,648…スワップ回路 650,652…ラッチ回路 Cdet…キャッシュ判別信号 Mdet…メモリ判別信号 det…モジュール判別信号

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 第1のバス幅の第1のデータバスを有す
    る第1のCPUモジュールと、前記第1のバス幅の2倍
    のバス幅の第2のデータバスを有する第2のCPUモジ
    ュールとを置換可能な情報処理装置であって、 前記第1のバス幅にそれぞれ等しいバス幅を有する第1
    と第2のバス部を含むプロセッサデータバスと、 前記プロセッサデータバスの前記第1のバス部に接続さ
    れており、前記第1のCPUモジュールが実装される場
    合には前記第1のデータバスに接続される第1の端子群
    と、 前記プロセッサデータバスの前記第2のバス部に接続さ
    れた第2の端子群であって、前記第1のCPUモジュー
    ルが実装される場合には前記第1の端子群の対応する端
    子同士と互いに接続され、前記第2のCPUモジュール
    が実装される場合には前記第1の端子群とともに前記第
    2のデータバスに接続される第2の端子群と、を備える
    ことを特徴とする情報処理装置。
  2. 【請求項2】 請求項1記載の情報処理装置であって、
    さらに、 前記第1の端子群に、前記第1のデータバスが脱着可能
    に接続された前記第1のCPUモジュールと、 前記第1の端子群と前記第2の端子群の互いに対応する
    端子同士をそれぞれ接続する脱着可能なバス接続手段
    と、を備える情報処理装置。
  3. 【請求項3】 請求項2に記載の情報処理装置であっ
    て、 前記第1と第2の端子群の対応する端子同士は互いに対
    向して設けられており、 前記バス接続手段は、前記第1と第2の端子群の対向す
    る端子同士をそれぞれ接続する複数の導体部を有する、
    情報処理装置。
  4. 【請求項4】 請求項2または3記載の情報処理装置で
    あって、さらに、 前記プロセッサデータバスの前記第1のバス部上のいず
    れのバイトが有効であるかを示す第1のバイトイネーブ
    ル信号を転送するための第1のバイトイネーブル端子群
    と、 前記プロセッサデータバスの前記第2のバス部上のいず
    れのバイトが有効であるかを示す第2のバイトイネーブ
    ル信号を転送するための第2のバイトイネーブル端子群
    とを備えており、 前記バス接続手段は、前記第1のバイトイネーブル端子
    群と前記第2のバイトイネーブル端子群の互いに対応す
    る端子同士をそれぞれ接続する手段を含む、情報処理装
    置。
  5. 【請求項5】 請求項1記載の情報処理装置であって、
    さらに、 前記第1の端子群と前記第2の端子群に、前記第2のデ
    ータバスが脱着可能に接続された前記第2のCPUモジ
    ュール、を備える情報処理装置。
  6. 【請求項6】 請求項1記載の情報処理装置であって、
    さらに、 前記プロセッサデータバスの前記第1のバス部に接続さ
    れた第1の外部キャッシュ回路と、 前記プロセッサデータバスの前記第2のバス部に接続さ
    れた第2の外部キャッシュ回路と、 前記第1と第2のCPUモジュールのいずれが実装され
    ているかを示すモジュール判別信号を生成するモジュー
    ル判別信号生成手段と、 前記モジュール判別信号に応じて、実装されているCP
    Uモジュールに応じたキャッシュ動作を実行するための
    信号を前記第1と第2の外部キャッシュ回路に供給する
    外部キャッシュ制御手段と、を備える情報処理装置。
  7. 【請求項7】 請求項6記載の情報処理装置であって、 前記外部キャッシュ制御手段は、 前記第1のCPUモジュールが実装されている場合には
    実装されているCPUから与えられるアドレスに応じて
    前記第1と第2の外部キャッシュ回路の一方を選択して
    データの入出力を実行するための信号を生成し、前記第
    2のCPUモジュールが実装されている場合には前記第
    1と第2の外部キャッシュ回路の両方を同時に選択して
    データの入出力を実行する信号を生成する手段を備え
    る、情報処理装置。
  8. 【請求項8】 請求項6または7記載の情報処理装置で
    あって、 前記モジュール判別信号生成手段は、前記第2の端子群
    を含むコネクタの接続状態に応じて前記モジュール判別
    信号のレベルを切り換えるモジュール判別端子を備え
    る、情報処理装置。
  9. 【請求項9】 第1のバス幅の第1のデータバスを有す
    る第1のCPUモジュールと、前記第1のバス幅の2倍
    のバス幅の第2のデータバスを有する第2のCPUモジ
    ュールとを置換可能な情報処理装置の構成方法であっ
    て、(a)前記第1のバス幅にそれぞれ等しいバス幅を
    有する第1と第2のバス部を含むプロセッサデータバス
    と、前記プロセッサデータバスの前記第1のバス部に接
    続された第1の端子群と、前記プロセッサデータバスの
    前記第2のバス部に接続された第2の端子群とを設ける
    工程と、(b)前記第1のCPUモジュールを実装する
    場合には前記第1の端子群に前記第1のデータバスを脱
    着可能に接続し、一方、前記第2のCPUモジュールを
    実装する場合には前記第1の端子群と前記第2の端子群
    に前記第2のデータバスを脱着可能に接続することによ
    ってCPUモジュールを実装する工程と、(c)前記第
    1のCPUモジュールを実装する場合には、前記第1の
    端子群と前記第2の端子群の互いに対応する端子同士を
    それぞれ接続する工程と、を備えることを特徴とする情
    報処理装置の構成方法。
  10. 【請求項10】 請求項9記載の情報処理装置の構成方
    法であって、 前記工程(a)は、 前記プロセッサデータバスの前記第1のバス部上のいず
    れのバイトが有効であるかを示す第1のバイトイネーブ
    ル信号を転送するための第1のバイトイネーブル端子群
    と、前記プロセッサデータバスの前記第2のバス部上の
    いずれのバイトが有効であるかを示す第2のバイトイネ
    ーブル信号を転送するための第2のバイトイネーブル端
    子群とを設ける工程を含み、 前記工程(c)は、前記第1のバイトイネーブル端子群
    と前記第2のバイトイネーブル端子群の互いに対応する
    端子同士をそれぞれ接続する工程を含む、情報処理装置
    の構成方法。
  11. 【請求項11】 請求項9記載の情報処理装置の構成方
    法であって、 前記工程(a)は、 前記プロセッサデータバスの前記第1のバス部に接続さ
    れた第1の外部キャッシュ回路と、前記プロセッサデー
    タバスの前記第2のバス部に接続された第2の外部キャ
    ッシュ回路と、前記第1と第2のCPUモジュールのい
    ずれが実装されているかを示すモジュール判別信号を生
    成するモジュール判別信号生成手段とを設ける工程を含
    み、 さらに、(d)前記モジュール判別信号に応じて、実装
    されているCPUモジュールに応じたキャッシュ動作を
    実行する工程、を備える情報処理装置の構成方法。
JP6312540A 1994-11-22 1994-11-22 情報処理装置およびその構成方法 Pending JPH08147241A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP6312540A JPH08147241A (ja) 1994-11-22 1994-11-22 情報処理装置およびその構成方法
US08/561,760 US5768608A (en) 1994-11-22 1995-11-22 Data processing apparatus and method for making same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6312540A JPH08147241A (ja) 1994-11-22 1994-11-22 情報処理装置およびその構成方法

Publications (1)

Publication Number Publication Date
JPH08147241A true JPH08147241A (ja) 1996-06-07

Family

ID=18030461

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6312540A Pending JPH08147241A (ja) 1994-11-22 1994-11-22 情報処理装置およびその構成方法

Country Status (2)

Country Link
US (1) US5768608A (ja)
JP (1) JPH08147241A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005332145A (ja) * 2004-05-19 2005-12-02 Nec Electronics Corp データ転送制御回路及びデータ転送方法

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5867645A (en) * 1996-09-30 1999-02-02 Compaq Computer Corp. Extended-bus functionality in conjunction with non-extended-bus functionality in the same bus system
JP3803196B2 (ja) 1998-07-03 2006-08-02 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、情報処理方法および記録媒体
US7837116B2 (en) 1999-09-07 2010-11-23 American Express Travel Related Services Company, Inc. Transaction card
US6810463B2 (en) * 2000-05-24 2004-10-26 Nintendo Co., Ltd. Gaming machine that is usable with different game cartridge types
US7445551B1 (en) 2000-05-24 2008-11-04 Nintendo Co., Ltd. Memory for video game system and emulator using the memory
US7599620B2 (en) * 2001-06-01 2009-10-06 Nortel Networks Limited Communications network for a metropolitan area
JP2003085127A (ja) * 2001-09-11 2003-03-20 Seiko Epson Corp デュアルバスを有する半導体装置、デュアルバスシステム及びメモリ共有デュアルバスシステム並びにそれを用いた電子機器
TWI235919B (en) * 2002-03-05 2005-07-11 Via Tech Inc Data-transmission control method
US8267780B2 (en) * 2004-03-31 2012-09-18 Nintendo Co., Ltd. Game console and memory card
US7771280B2 (en) * 2004-03-31 2010-08-10 Nintendo Co., Ltd. Game console connector and emulator for the game console
US11278793B2 (en) 2004-03-31 2022-03-22 Nintendo Co., Ltd. Game console
US8016681B2 (en) * 2004-03-31 2011-09-13 Nintendo Co., Ltd. Memory card for a game console
US7837558B2 (en) * 2004-03-31 2010-11-23 Nintendo Co., Ltd. Game console and emulator for the game console
US11223575B2 (en) * 2019-12-23 2022-01-11 Advanced Micro Devices, Inc. Re-purposing byte enables as clock enables for power savings

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2995752B2 (ja) * 1989-07-21 1999-12-27 日本電気株式会社 バスアーキテクチャ変換回路
JPH0484253A (ja) * 1990-07-26 1992-03-17 Mitsubishi Electric Corp バス幅制御回路
JP2646854B2 (ja) * 1990-12-18 1997-08-27 三菱電機株式会社 マイクロプロセッサ
US5301281A (en) * 1991-06-26 1994-04-05 Ast Research, Inc. Method and apparatus for expanding a backplane interconnecting bus in a multiprocessor computer system without additional byte select signals

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005332145A (ja) * 2004-05-19 2005-12-02 Nec Electronics Corp データ転送制御回路及びデータ転送方法

Also Published As

Publication number Publication date
US5768608A (en) 1998-06-16

Similar Documents

Publication Publication Date Title
JPH08147241A (ja) 情報処理装置およびその構成方法
US7343444B2 (en) Reconfigurable memory module and method
JP3590413B2 (ja) メモリ制御装置
US6247070B1 (en) Pipelined packet-oriented memory system having a undirectional command and address bus and a bidirectional data bus
KR100578112B1 (ko) 메모리 클럭 신호를 제어하는 컴퓨터 시스템 및그 방법
JPH1153169A (ja) 低電力で相互接続の簡単なマイクロプロセッサ及びメモリー・インターフェース
JPH06266596A (ja) フラッシュメモリファイル記憶装置および情報処理装置
JPH08147076A (ja) 情報処理装置
US6061510A (en) Local bus interface
JPH0944448A (ja) データ・プロセッサ
US6415365B1 (en) Write buffer for use in a data processing apparatus
JPH08315100A (ja) Icメモリカード
US20030002376A1 (en) Method and system for fast memory access
KR0148474B1 (ko) Dma 검증 동작을 하는 플로피 디스크 제어기
JP3701045B2 (ja) 処理ユニット、および処理ユニット内にメモリアクセスサイクルを発生する方法
EP0801375A2 (en) A memory with optimized memory space and wide data input/output and systems and methods using the same
JPH0353363A (ja) バスアーキテクチャ変換回路
US20020188771A1 (en) Direct memory access controller for carrying out data transfer by determining whether or not burst access can be utilized in an external bus and access control method thereof
US5251307A (en) Channel apparatus with a function for converting virtual address to real address
US6493778B1 (en) Extensible time-sharing bus structure
JPH11283372A (ja) フレキシブルバス型icメモリ
KR100252508B1 (ko) 통신처리시스템의 프로세서 보드에서 롬 인터페이스장치
JP4007122B2 (ja) バス信号処理装置とその方法ならびにデータ処理装置
JP4073947B2 (ja) プロセッサシステム
JPH09231131A (ja) データ幅可変メモリ