(57)【要約】【課題】専有ＳＤＲＡＭへの直接接続を想定して設計されている既存のプロセッサチップをＳｉＰ化するに際してＳＤＲＡＭの共用化を併せて行おうとする場合に、既存のプロセッサチップが有するＳＤＲＡＭコントローラの設計変更量を小さくする。【解決手段】情報処理装置１の主プロセッサチップ１０と副プロセッサチップ１１の間に設けられた変換モジュール１０４Ａは、副プロセッサチップ１１のＳＤＲＡＭコントローラ１１３を専用ＳＤＲＡＭ（不図示）に接続する場合と同一の信号線群の全部又は一部によってＳＤＲＡＭコントローラ１１３と接続され、ＳＤＲＡＭコントローラ１１３と共有ＳＤＲＡＭコントローラ１０２との間でインタフェース変換を行い、副ＣＰＵコア１１０による共有ＳＤＲＡＭ３へのアクセスを可能とする。【選択図】図１
2008276343.tif 000002
【特許請求の範囲】
【請求項１】
マルチチップモジュール構成の情報処理装置であって、
第１のＣＰＵコア及び前記第１のＣＰＵコアを含む複数のＣＰＵコアによる共有メモリへのアクセスを制御する第１のメモリコントローラを有する第１のプロセッサチップと、
第２のＣＰＵコア、及び専有メモリに接続可能であって前記第２のＣＰＵコアによる前記専有メモリへのアクセスを制御可能な第２のメモリコントローラを有する第２のプロセッサチップと、
前記第２のメモリコントローラを前記専有メモリに接続する場合に使用される信号線群の全部又は一部によって前記第２のメモリコントローラと接続され、前記第２のメモリコントローラと前記第１のメモリコントローラとの間のインタフェース変換を行うことで前記第２のＣＰＵコアによる前記共有メモリへのアクセスを可能とする変換モジュールと、
を備える情報処理装置。
【請求項２】
前記第２のメモリコントローラと前記変換モジュールの間は、少なくとも、前記専有メモリとの接続時にはロウアドレス及びカラムアドレスを順次出力するために使用されるアドレス線と、前記専有メモリとの接続時には前記専有メモリに対する書き込みデータ及び前記専有メモリからの読み出しデータを転送するために使用されるデータ線とによって接続されており、
前記第２のメモリコントローラは、前記アドレス線による前記ロウアドレス及び前記カラムアドレスのいずれか一方の出力に並行して、前記データ線を用いて前記ロウアドレス及び前記カラムアドレスの他の一方を出力する、請求項１に記載の情報処理装置。
【請求項３】
前記第２のメモリコントローラと前記変換モジュールの間は、前記専有メモリとの接続時には前記専有メモリが有する出力バッファを停止させる第１のデータマスク信号を転送するためのデータマスク信号線によって接続されており、
前記変換モジュールは、前記データマスク信号線を用いて、前記第２のメモリコントローラによるアクセス要求の受付可否を示すステータス信号を出力する、請求項１又は２に記載の情報処理装置。
【請求項４】
前記第２のメモリコントローラと前記変換モジュールの間は、前記専有メモリとの接続時には前記専有メモリが有する第１の出力バッファを停止させる第１のデータマスク信号を転送するための第１のデータマスク信号線と、前記専有メモリとの接続時には前記専有メモリが有する第２の出力バッファを停止させる第２のデータマスク信号を転送するための第２のデータマスク信号線とによって接続されており、
前記変換モジュールは、前記第１のデータマスク信号線を用いて、前記第２のメモリコントローラによるアクセス要求の受付可否を示す信号を出力し、
前記変換モジュールは、前記第２のデータマスク信号線を用いて、前記データ線によるデータ出力タイミングを示す信号を出力する、請求項１又は２に記載の情報処理装置。
【請求項５】
前記第２のメモリコントローラは、前記専有メモリに直接接続されて前記専有メモリとの間で信号入出力を行う専有動作モードと、前記変換モジュールと接続されて前記変換モジュールとの間で信号入出力を行う共有動作モードとを変更可能であり、動作モードの変更に応じて前記信号線群の用途を変更する、請求項１乃至４のいずれかに記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＳｉＣ（System in Package）技術により複数のマイクロプロセッサチップが１つのパッケージに封止されたマルチチップモジュール構成の情報処理装置に関する。より具体的に述べると、本発明は、ＳｉＰ技術によって複数のマイクロプロセッサチップを１つのパッケージに混載する際にメモリの共有化を行う技術に関する。
【背景技術】
【０００２】
従来、複数のマイクロプロセッサに共通の情報処理に関する処理を分担させることで、共通の情報処理を効率よく実行することが可能なマルチプロセッサ構成が知られている。このようなマルチプロセッサ構成において、複数のプロセッサの各々に対応する複数の動作プログラムの格納場所を１つの不揮発性メモリに共通化し、複数の動作プログラムを複数のプロセッサがアクセス可能な共有ＲＡＭ（Random Access Memory）にロードすることで、所定の情報処理を実現する構成が知られている（例えば特許文献１及び２を参照）。
【０００３】
また、特に組み込みシステムの分野においては、複数のベアチップをＳｉＰ技術によって１つのパッケージ内に高密度実装した、いわゆるマルチチップモジュールが利用されている。マルチチップモジュールは、開発済みのプロセッサチップの流用が容易であるため、開発期間の短縮、開発費の低減が図れる利点がある。ＳｉＰ技術によれば、上述したマルチプロセッサ構成にかかる複数のプロセッサチップを１パッケージに集約することも可能である。
【０００４】
例えば、ＤＶＤレコーダ用のマルチチップモジュールの場合、システム制御用のマイコン、ＭＰＥＧコーデックを行うＤＳＰ（Digital Signal Processor）チップ及びアナログフロントエンドを集約したプロセッサチップ等が１つのパッケージに混載される。
【特許文献１】特開平３−２０８１５８号公報
【特許文献２】特開平２−２８７２０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述したＤＶＤレコーダ用のマルチチップモジュールのような情報処理装置においては、動作プログラムのロード領域や複数のプロセッサのワーク領域として使用されるＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）等のメモリを複数のプロセッサ間で共有化できることが望ましい。
【０００６】
しかしながら、専有メモリと接続されていた既存のプロセッサチップをＳｉＰ化する際に他のプロセッサとの間でメモリの共用化を行おうとする場合、既存のプロセッサチップが有するメモリコントローラの設計変更、修正が必要となる。つまり、既存のチップの流用が妨げられ、既存のプロセッサチップの流用によりもたらされるマルチチップモジュールの利点が十分に得られないという問題がある。
【課題を解決するための手段】
【０００７】
本発明の第１の態様にかかる情報処理装置は、第１及び第２のプロセッサチップを有するマルチチップモジュール構成の情報処理装置である。前記第１のプロセッサチップは、第１のＣＰＵコア及び前記第１のＣＰＵコアを含む複数のＣＰＵコアによる共有メモリへのアクセスを制御する第１のメモリコントローラを有する。また、前記第２のプロセッサチップは、第２のＣＰＵコアと、専有メモリに接続可能であって前記第２のＣＰＵコアによる前記専有メモリへのアクセスを制御可能な第２のメモリコントローラを有する。さらに、第１のプロセッサチップと第２のプロセッサチップの間には、インタフェース変換を行う変換モジュールが配置されている。前記変換モジュールは、前記第２のメモリコントローラを前記専有メモリに接続する場合に使用される信号線群の全部又は一部によって前記第２のメモリコントローラと接続されている。前記変換モジュールは、前記第２のメモリコントローラと前記第１のメモリコントローラとの間のインタフェース変換を行うことで前記第２のＣＰＵコアによる前記共有メモリへのアクセスを可能とする。
【０００８】
このような構成により、専有メモリへの直接接続を想定して設計されている第２のプロセッサチップをＳｉＰ化する際に、他のプロセッサチップとの間でメモリの共有化を図りたいという要望に対して、第２のプロセッサチップの設計変更、修正量を小さくすることができる。
【発明の効果】
【０００９】
本発明により、専有メモリへの直接接続を想定して設計されている既存のプロセッサチップをＳｉＰ化するに際してメモリの共用化を併せて行おうとする場合に、既存のプロセッサチップが有するメモリコントローラの設計変更量を小さくできるため、既存のプロセッサチップの流用が容易となる。
【発明を実施するための最良の形態】
【００１０】
以下では、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。各図面において、同一要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略される。
【００１１】
実施の形態１．
本実施の形態にかかる情報処理装置１は、３つのマイクロプロセッサチップが１つのパッケージに混載されたマルチチップモジュールである。情報処理装置１のブロック図を図１に示す。情報処理装置１は、外部のフラッシュメモリ２及びＳＤＲＡＭ３と接続されている。フラッシュメモリ２には、３つのプロセッサチップ１０乃至１２のそれぞれに対応した動作プログラムが格納される。また、ＳＤＲＡＭ３は、３つのプロセッサチップ１０乃至１２によって共用されるメモリである。ＳＤＲＡＭ３は、３つの動作プログラムのロード先とされるほか、プロセッサチップ１０乃至１２のワーク領域として使用される。つまり、情報処理装置１が有する３つのプロセッサチップ１０乃至１２は、フラッシュメモリ２からＳＤＲＡＭ３へロードされた各々の動作プログラムを読み出して実行することによって、ハードウェア制御やＭＰＥＧコーデック等の予め定められた情報処理を実行する。以下では、３つのプロセッサチップ１０乃至１２の構成要素について順に説明する。
【００１２】
主プロセッサチップ１０が有する主ＣＰＵコア１００は、ＳＤＲＡＭ３にロードされた主ＣＰＵコア１００用の動作プログラムを読み出し、動作プログラムに記述された命令に応じた処理を実行する。
【００１３】
フラッシュメモリコントローラ１０１は、主ＣＰＵコア１００によるフラッシュメモリ２へのアクセス要求（リードアクセス要求及びライトアクセス要求）を入力し、アクセス要求によって指定されたアドレスに対応するフラッシュメモリ２の記憶領域にアクセスする。フラッシュメモリコントローラ１０１は、リードアクセス要求であれば、フラッシュメモリ２から読み出したデータを主ＣＰＵコア１００に転送する。また、フラッシュメモリコントローラ１０１は、ライトアクセス要求であれば、主ＣＰＵコア１００から受信したライトデータのフラッシュメモリ２に対する書き込みを行う。
【００１４】
共有ＳＤＲＡＭコントローラ１０２は、３つのプロセッサチップ１０乃至１２によるＳＤＲＡＭ３へのアクセス要求を調停するコントローラである。共有ＳＤＲＡＭコントローラ１０２は、主ＣＰＵコア１００によるメモリアクセス要求を入力するとともに、後述する変換モジュール１０４Ａ又はＢを介して後述する副ＣＰＵコア１２０及び１３０によるメモリアクセス要求を入力し、アクセス要求によって指定されたアドレスに対応するＳＤＲＡＭ３の記憶領域にアクセスする。
【００１５】
汎用バスマスタコントローラ１０３Ａは、汎用バス１３Ａに接続されており、対向する汎用バススレーブコントローラ１１２との間でデータ転送を行う。同様に、汎用バスマスタコントローラ１０３Ｂは、汎用バス１３Ｂに接続されており、対向する汎用バススレーブコントローラ１２２との間でデータ転送を行う。
【００１６】
変換モジュール１０４Ａは、副プロセッサチップ１１が有するＳＤＲＡＭコントローラ１１３と接続されている。変換モジュール１０４Ａは、ＳＤＲＡＭコントローラ１１３と共有ＳＤＲＡＭコントローラ１０２との間でインタフェース変換を行い、副プロセッサチップ１１が有する副ＣＰＵコア１１０による共有メモリ、つまりＳＤＲＡＭ３へのアクセスを可能とする。
【００１７】
なお、変換モジュール１０４ＡとＳＤＲＡＭコントローラ１１３との間を接続する信号線群１４Ａは、ＳＤＲＡＭコントローラ１１３を専有ＳＤＲＡＭ（不図示）に直接接続する際に使用される信号線群の一部と共通である。なお、ＳＤＲＡＭコントローラ１１３を専有ＳＤＲＡＭに直接接続する際に使用される信号線群とは、チップセレクト線、アドレス線、データ線、ロウアドレスストローブ（ＲＡＳ）線、カラムアドレスストローブ（ＣＡＳ）線、ライトイネーブル線、上位データマスク（ＵＤＱＭ）線及び下位データマスク（ＬＤＱＭ）線等を含む。変換モジュール１０４Ｂは上述した変換モジュール１０４Ａと同一の構成要素であり、副プロセッサチップ１２が有するＳＤＲＡＭコントローラ１２３と信号線群１４Ｂにより接続されている。
【００１８】
次に、副プロセッサチップ１１が有する構成要素について説明する。副ＣＰＵコア１１０は、ＳＤＲＡＭ３にロードされた副ＣＰＵコア１１０用の動作プログラムを読み出し、動作プログラムに記述された命令に応じた処理を実行する。
【００１９】
内蔵ＲＯＭ１１１は、副プロセッサチップ１１のブート処理を記述したブートプログラムが格納されている。つまり、電源投入直後の副ＣＰＵコア１１０は、内蔵ＲＯＭ１１１に格納されたブートプログラムを実行することで起動する。初期化処理を完了した副ＣＰＵコア１１０は、主プロセッサチップ１０によりＳＤＲＡＭ３にロードされた副ＣＰＵコア１１０用の動作プログラムを実行可能となる。
【００２０】
ＳＤＲＡＭコントローラ１１３は、上述した信号線群１４Ａにより変換モジュール１０４Ａと接続されている。なお、本実施の形態の情報処理装置１とは異なり、副プロセッサチップ１１がマルチチップモジュールに搭載されない場合などには、ＳＤＲＡＭコントローラ１１３を専有ＳＤＲＡＭ（不図示）に直接接続することが可能である。つまり、ＳＤＲＡＭコントローラ１１３は、専有ＳＤＲＡＭに直接接続されて専有ＳＤＲＡＭとの間で信号入出力を行う専有動作モードと、変換モジュール１０４Ａと接続されて変換モジュール１０４Ａとの間で信号入出力を行う共有動作モードとの間で動作モードを切り替え可能である。なお、動作モードの切り替えは接続相手先の変更を伴うが、上述したように、接続相手先が専有ＳＤＲＡＭ（不図示）から変換モジュール１０４Ａとされる場合でも、ＳＤＲＡＭコントローラ１１３と変換モジュール１０４Ａとの接続には、専有ＳＤＲＡＭとの接続に使用される信号線群の用途を変更して用いている。
【００２１】
副プロセッサチップ１２の構成は、上述した副プロセッサチップ１１と同様であるから、重複説明を省略する。
【００２２】
続いて、ＳＤＲＡＭ３が共有されている情報処理装置１の起動時の動作を図２のフローチャートに従って説明する。始めに、主プロセッサチップ１０及び副プロセッサチップ１１及び１２の電源が投入される（ステップＳ１１及びＳ２１）。その後、主ＣＰＵコア１００は、フラッシュメモリ２から共有のＳＤＲＡＭ３に主ＣＰＵコア１００用の動作プログラムをロードし、主ＣＰＵコア１００が起動する（ステップＳ１２及びＳ１３）。次に、主ＣＰＵコア１００が主プロセッサチップ１０の各回路を初期化する。
【００２３】
一方、副ＣＰＵコア１１０は、内蔵ＲＯＭ１１１に格納されたブートプログラムにより起動し、汎用バススレーブコントローラ１１２を経由して初期化処理が完了したことを主ＣＰＵコア１００に通知する（ステップＳ２２乃至Ｓ２４）。なお、副ＣＰＵコア１２０の起動処理も副ＣＰＵコア１１０と同様である。
【００２４】
主ＣＰＵコア１００は、汎用バスマスタコントローラを経由して、副ＣＰＵコア１１０及び１２０が動作プログラムを実行可能であることを通知されると、副ＣＰＵコア１１０及び１２０の動作プログラムをフラッシュメモリ２からＳＤＲＡＭ３へロードする（ステップＳ１５）。主ＣＰＵコア１００は、副ＣＰＵコア１１０用及び１２０用の動作プログラムのロードが完了すると、ロードが完了したことを副ＣＰＵコア１１０及び１２０に通知する（ステップＳ１６）。
【００２５】
次に、主ＣＰＵコア１００から通知を受けた副ＣＰＵコア１１０及び１２０が、各々のＳＤＲＡＭコントローラ１１３及び１２３並びに変換モジュール１０４Ａ及びＢを経由して、ＳＤＲＡＭ３から動作プログラムを読み出して実行する（ステップＳ２５）。このような起動シーケンスによって、マルチチップモジュールである情報処理装置１を起動して、動作プログラムに基づく所定の動作を実行可能な状態とすることができる。
【００２６】
上述したように、マルチチップモジュール構成とされた情報処理装置１は、変換モジュール１０４Ａ及びＢによってＳＤＲＡＭ３の共有化を行っている。これにより、フラッシュメモリ２に集約して配置されている副プロセッサチップ１１及び１２の動作プログラムをＳＤＲＡＭ３にロードすることで、副プロセッサチップ１１及び１２へ動作プログラムを供給することができる。つまり、フラッシュメモリ等の動作プログラム格納用ＲＯＭをプロセッサチップ毎に設ける必要がないため、これらの動作プログラム格納用ＲＯＭの数量を削減できる。
【００２７】
続いて以下では、ＳＤＲＡＭコントローラ１１３及び１２３、並びに変換モジュール１０４Ａ及びＢの構成例と、これらの間のインタフェースについて説明する。図３は、ＳＤＲＡＭコントローラ１１３の一構成例を示すブロック図である。なお、ＳＤＲＡＭコントローラ１２３の構成もＳＤＲＡＭコントローラ１１３と同様である。
【００２８】
図３において、アドレス生成部１１３１は、副ＣＰＵコア１１０からアドレスと制御信号を入力する。ここで、副ＣＰＵコア１１０から入力されるアドレスは、副ＣＰＵコア１１０がアクセスを要求するメモリアドレスである。また、副ＣＰＵコア１１０から入力される制御信号は、メモリリード又はメモリライト等のコマンドのほか、副ＣＰＵコア１１０とＳＤＲＡＭコントローラ１１３との間を接続するバスによるデータ転送を制御するための信号を含む。アドレス生成部１１３１は、入力されたアドレスに対応するロウアドレス及びカラムアドレスを生成し、生成したロウアドレス及びカラムアドレスアドレスをアドレス制御回路１１３３に出力する。
【００２９】
リード／ライト／リフレッシュ制御回路１１３２は、アドレス生成部１１３１から制御信号及びパラメータを入力する。ここで、アドレス生成部１１３１から入力される制御信号及びパラメータには、リード／ライト種別、バースト長の指定等が含まれる。また、リード／ライト／リフレッシュ制御回路１１３２は、入力されるモード選択信号に応じて、専有動作モードと共有動作モードとの間で動作モードの切り替えを行う。なお、モード選択信号は、例えば、情報処理装置１に設けられた図示しない端子を介してＳＤＲＡＭコントローラ１１３に入力すればよい。
【００３０】
専有動作モードである場合、リード／ライト／リフレッシュ制御回路１１３２は、専有ＳＤＲＡＭ（不図示）に対するリードアクセス、ライトアクセスのほか、専有ＳＤＲＡＭのリフレッシュを制御するため、リードコマンド、ライトコマンド、プリチャージコマンド等のコマンド生成の指示を含むアドレス制御回路１１３３に対する制御を実行する。
【００３１】
一方、共有動作モードである場合、ＳＤＲＡＭコントローラ１１３の接続相手は、専有ＳＤＲＡＭではなく変換モジュール１０４Ａとなる。共有動作モードでは、アドレス生成部１１３１により出力される制御信号及びパラメータは、後述するカラムアドレス／パラメータ重畳部１１３４によってデータ線に多重されて出力される。また、ＳＤＲＡＭコントローラ１１３の接続相手は、専有ＳＤＲＡＭではないからリフレッシュ制御等も必要ではない。ただし、ＳＤＲＡＭコントローラ１１３の接続相手が変換モジュール１０４Ａである場合、ＳＤＲＡＭコントローラ１１３は、専有ＳＤＲＡＭに直接接続される場合と同等の遅延時間によってリードデータを得ることは困難であり、また、その遅延時間が不定となる可能性がある。ライトアクセスである場合も、変換モジュール１０４Ａのデータバッファ状況によっては、変換モジュール１０４Ａが連続したアクセス要求を受信することが不可能である場合がある。このため、本実施の形態では、アクセス要求を受けた変換モジュール１０４Ａが、次のアクセスを受け付け可能となるまでの間、ＳＤＲＡＭコントローラ１１３に対してビジー信号を出力することとしている。このため、リード／ライト／リフレッシュ制御回路１１３２は、アドレス制御回路１１３３がビジー信号を受信した場合に、これをアドレス生成部１１３１に出力することによって、新たなリードアクセス及びライトアクセスの生成を停止させる。
【００３２】
アドレス制御回路１１３３は、アドレス生成部１１３１からロウアドレス及びカラムアドレスを入力する。専有動作モードである場合、アドレス制御回路１１３３は、入力されたロウアドレス及びカラムアドレスを、順次、対向する専有ＳＤＲＡＭ（不図示）に出力する。また、アドレス制御回路１１３３は、ＲＡＳ（Row Address Strobe）ＣＡＳ（Column Address Strobe）、ＷＥ（Write Enable）等の複数の制御信号線の論理レベルの組合せによって、制御コマンドを専有ＳＤＲＡＭ（不図示）に出力する。
【００３３】
一方、本実施の形態の情報処理装置１のように、変換モジュール１０４Ａを介して共有ＳＤＲＡＭ３へのアクセスが行われる共有動作モードの場合、カラムアドレス及びアクセス種別等の制御コマンド及びバースト長の指定を含むパラメータは、データ線を用いて出力される。このため、アドレス制御回路１１３３は、ロウアドレスの出力のみを実行する。
【００３４】
カラムアドレス／パラメータ重畳部１１３４は、共有動作モードである場合に、カラムアドレス及びパラメータをデータ線に重畳する。
【００３５】
データ入出力制御回路１１３５は、ライトデータの出力、リードデータの入力を行う。なお、上述したように、共有動作モードであるときのデータ入出力制御回路１１３５の出力データには、カラムアドレス及びパラメータが含まれる。なお、本実施の形態では、データ入出力制御回路１１３５は、アドレス制御回路１１３３によるロウアドレスの出力と並行してカラムアドレスを出力する。これにより、いわゆるＲＡＳ−ｔｏ−ＣＡＳ遅延の発生を抑制できる。
【００３６】
続いて、図４のブロック図を用いて、変換モジュール１０４Ａの構成例を説明する。なお、変換モジュール１０４Ｂの構成も変換モジュール１０４Ａと同様である。
【００３７】
図４において、ＳＤＲＡＭインタフェース１０４１は、ＳＤＲＡＭコントローラ１１３との接続インタフェースである。状態制御部１０４２は、ＳＤＲＡＭインタフェース１０４１によって受信されるパラメータを解釈し、変換モジュール１０４Ａに含まれる各構成要素の制御状態を遷移させる。ＳＤＲＡＭインタフェース１０４１によって受信されるパラメータは、カラムアドレス及びアクセス種別等の制御コマンド及びバースト長の指定を含む。
【００３８】
ライトバッファ１０４３は、ＳＤＲＡＭインタフェース１０４１によって受信されるパラメータ、ロウアドレス及びカラムアドレス並びにライトデータを一時的に格納するバッファメモリである。
【００３９】
なお、図４には示していないが、ＳＤＲＡＭインタフェース１０４１とライトバッファ１０４３の間でアドレス変換を行うことにより、ＳＤＲＡＭコントローラ１１３から入力されたロウアドレス及びカラムアドレスを、ＳＤＲＡＭ３に応じたビット幅、アドレス体系に変換してもよい。
【００４０】
ＳＤＲＡＭコントローラ・インタフェース１０４４は、共有ＳＤＲＡＭコントローラ１０２との接続インタフェースである。ＳＤＲＡＭコントローラ・インタフェース１０４４は、ライトバッファ１０４３に格納されたパラメータ、ロウアドレス及びカラムアドレス、ライトデータを読み出して、共有ＳＤＲＡＭコントローラ１０２にライトアクセス要求又はリードアクセス要求を行う。
【００４１】
リードデータバッファ１０４５は、ＳＤＲＡＭコントローラ・インタフェース１０４４によって受信されるＳＤＲＡＭ３から読み出されたデータを一時的に格納するデータバッファである。リードデータバッファ１０４５に保存されたデータは、前述のＳＤＲＡＭインタフェース１０４１によって、対向するＳＤＲＡＭコントローラ１１３に転送される。
【００４２】
バッファ管理部１０４６は、ライトバッファ１０４３に格納されるデータ量を管理しており、ＳＤＲＡＭコントローラ１０４４によるライトデータの転送完了に応じて、当該ライトデータが保持されていたライトバッファ１０４３の領域を解放する。また、バッファ管理部１０４６は、ライトバッファ１０４３が一杯になった場合は、これを状態制御部１０４２に通知する。状態制御部１０４２は、バッファ管理部１０４６からの通知に応じて、新たなアクセス要求の受付が不可能であることを示すビジー信号をＳＤＲＡＭインタフェース１０４１に出力させる。
【００４３】
上述したＳＤＲＡＭコントローラ１１３と変換モジュール１０４Ａの間で送受信される信号につき、図５及び６を用いて説明する。図５は、ライトアクセス時の信号波形図であり、より詳しく述べると、図５は、１６ワード単位のバーストライトが行われる際に対応する図である。図５に示すように、ＳＤＲＡＭコントローラ１１３と変換モジュール１０４Ａの間は、１１ビット幅のアドレス線（図５の波形（ｃ））及び１６ビット幅のデータ線（図５の波形（ｅ））のほか、ＲＡＳ信号線（図５の波形（ａ））、複数バンク構成とされたＳＤＲＡＭ３の１のメモリバンクを選択するためのバンクセレクト信号線（図５の波形（ｄ））、上位データマスク信号線（図５の波形（ｆ））及び下位データマスク信号線（図５の波形（ｇ））によって接続されている。
【００４４】
図５の時刻Ｔ１では、ＳＤＲＡＭコントローラ１１３から、ＲＡＳとともに、アドレス線を用いてロウアドレスが出力され、同時にバンクセレクト信号も出力される。さらに、本実施の形態では、カラムアドレス及びパラメータが、アドレス線によるロウアドレスの出力と並行して、ＳＤＲＡＭコントローラ１１３によってデータ線に出力される。ここでデータ線に出力されるパラメータには、ライトコマンド、バースト長を示すデータが含まれる。図５の時刻Ｔ４からＴ１９では、１６バイトのライトデータがＳＤＲＡＭコントローラ１１３によってデータ線に出力される。上位データマスク信号（ＵＤＱＭ）は、変換モジュール１０４Ａによるビジー信号の出力に使用される。変換モジュール１０４Ａは、次のアクセス要求を受信可能となるまでビジー信号を出する。ビジー信号がなくなると、ＳＤＲＡＭコントローラ１１３による新たなライトアクセスが行われる（図５の時刻Ｔ２３）。
【００４５】
一方、図６は、リードアクセス時の信号波形図であり、より詳しく述べると、８ワード単位のバーストリードが行われる際に対応する図である。なお、図６は、変換モジュールを介して共有のＳＤＲＡＭ３にアクセスすることによる遅延時間の増大を考慮して、リードアクセス時のバースト長を８バイトに制限した例としているが、このような例は一例にすぎないことはもちろんである。つまり、リードアクセス時のバースト長は、許容される遅延時間に応じて設計者が適宜決定すればよい。
【００４６】
図６の時刻Ｔ１では、ＳＤＲＡＭコントローラ１１３から、ＲＡＳとともに、アドレス線を用いてロウアドレスが出力され、同時にバンクセレクト信号も出力される。さらに、本実施の形態では、カラムアドレス及びパラメータが、アドレス線によるロウアドレスの出力と並行して、ＳＤＲＡＭコントローラ１１３によってデータ線に出力される。ここでデータ線に出力されるパラメータには、リードコマンド、バースト長を示すデータが含まれる。図６の時刻Ｔ１１からＴ１９では、８バイトのリードデータが変換モジュール１０４Ａによってデータ線に出力される。上位データマスク信号（ＵＤＱＭ）は、変換モジュール１０４Ａによるビジー信号の出力に使用される。また、下位データマスク信号（ＬＤＱＭ）は、変換モジュール１０４Ａによるリードデータ出力タイミングを示すバリッド信号として使用される。つまり、変換モジュール１０４Ａは、リードデータの出力に併せて、時刻Ｔ１１からＴ１９の間、バリッド信号を出力している。ＳＤＲＡＭコントローラ１１３は、ビジー信号及びバリッド信号の出力が停止されると新たなアクセスを実行する（図６の時刻Ｔ２１）。
【００４７】
上述したように、本実施の形態にかかる情報処理装置１は、副プロセッサチップ１１のＳＤＲＡＭコントローラ１１３を専有ＳＤＲＡＭ（不図示）に接続する場合と同一の信号線群の一部を用いて、ＳＤＲＡＭコントローラ１１３と主プロセッサチップ１０の変換モジュール１０４Ａとの間を接続することとした。また、変換モジュール１０４ＡにてＳＤＲＡＭコントローラ１１３と共有ＳＤＲＡＭコントローラ１１０２との間のインタフェース変換を行うこととした。副プロセッサチップ１２のＳＤＲＡＭコントローラ１１３と主プロセッサチップ１０の変換モジュール１０４Ｂの間も同様である。このため、メモリ共有を行うに際して、副プロセッサチップ１１及び１２に新たな入出力端子を設ける必要がなく、既存の入出力端子をそのまま使用できる。また、変換モジュール１０４Ａ及びＢが、ＳＤＲＡＭコントローラ１１３及び１２３と専用ＳＤＲＡＭとの接続インタフェースを共有ＳＤＲＡＭコントローラ１１３向けのインタフェースに変換するため、データ転送プロトコルの変更量も削減できる。したがって、副プロセッサチップ１１をＳｉＰ化する際に、主プロセッサチップ１０との間でＳＤＲＡＭ３の共有化を図りたいという要望に対して、副プロセッサチップ１１の設計変更を小さくして効率よく対応することができる。
【００４８】
また、本実施の形態の特徴の１つは、ＳＤＲＡＭコントローラ１１３及び１２３と変換モジュール１０４Ａ及び１０４Ｂの間の信号転送にある。具体的に述べると、ＳＤＲＡＭコントローラ１１３及び１２３は、ロウアドレスとカラムアドレスが順番に出力される通常のＳＤＲＡＭインタフェースでの出力手順に代えて、アドレス線とデータ線をともに用いることで、ロウアドレスとカラムアドレスとを並行して出力する。これにより、いわゆるＲＡＳ−ｔｏ−ＣＡＳ遅延の発生を抑制できるため、共有メモリであるＳＤＲＡＭ３にアクセスする際のレイテンシを縮小できる。
【００４９】
また、本実施の形態にかかる副プロセッサチップ１１及び１２は、ＳＤＲＡＭコントローラ１１３及び１２３の動作モードを、専有ＳＤＲＡＭ（不図示）に接続するための専有動作モードと変換モジュール１０４Ａ又はＢに接続するための共有動作モードとの間で切り替えることができる。このため、副プロセッサチップ１１及び１２は、専有ＳＤＲＡＭを使用する構成と、情報処理装置１のように共有ＳＤＲＡＭを使用する構成の双方に柔軟に対応することができる。
【００５０】
その他の実施の形態．
上述した実施の形態１では、変換モジュール１０４Ａ及びＢを、主プロセッサチップ１０内に設けたが、変換モジュール１０４Ａ及びＢは、独立したチップとして構成されてもよい。
【００５１】
上述した実施の形態１は、１つの主プロセッサチップ１０と２つの副プロセッサチップ１１及び１２とを有する構成であるが、このような３つのプロセッサチップによる構成は一例に過ぎない。つまり、情報処理装置１は、２つのプロセッサチップを有するマルチチップモジュールであってもよいし、４つ以上のプロセッサチップを有するマルチチップモジュールであってもよい。
【００５２】
また、上述した実施の形態１では、ＳＤＲＡＭコントローラ１１３及び１２３が、アドレス線を用いてロウアドレスを出力し、データ線を用いてカラムアドレスを出力することとしたが、アドレス線を用いてカラムアドレスを出力し、データ線を用いてロウアドレスを出力してもよい。
【００５３】
また、上述した実施の形態１において、フラッシュメモリ２及びＳＤＲＡＭ３の少なくとも一方は、情報処理装置１と同一パッケージ内に集約されていても良い。
【００５４】
さらに、本発明は上述した実施の形態のみに限定されるものではなく、既に述べた本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
【図面の簡単な説明】
【００５５】
【図１】発明の実施の形態１にかかる情報処理装置のブロック図である。
【図２】発明の実施の形態１にかかる情報処理装置の電源投入時の動作を示すフローチャートである。
【図３】発明の実施の形態１にかかる情報処理装置が有するＳＤＲＡＭコントローラのブロック図である。
【図４】発明の実施の形態１にかかる情報処理装置が有する変換モジュールのブロック図である。
【図５】発明の実施の形態１にかかる情報処理装置が有するＳＤＲＡＭコントローラと変換モジュールの間で転送される信号を示す波形図である。
【図６】発明の実施の形態１にかかる情報処理装置が有するＳＤＲＡＭコントローラと変換モジュールの間で転送される信号を示す波形図である。
【符号の説明】
【００５６】
１  情報処理装置
２  フラッシュメモリ
３  ＳＤＲＡＭ
１０  主プロセッサチップ
１１、１２  副プロセッサチップ
３１  メモリバス
１００  主ＣＰＵコア
１０１  フラッシュメモリコントローラ
１０２  共有ＳＤＲＡＭコントローラ
１０３Ａ、１０３Ｂ  汎用バスマスタコントローラ
１０４Ａ、１０４Ｂ  変換モジュール
１１０、１２０  副ＣＰＵコア
１１１、１２１  内蔵ＲＯＭ
１１２、１２２  汎用バススレーブコントローラ
１１３、１２３  ＳＤＲＡＭコントローラ
１０４１  ＳＤＲＡＭインタフェース
１０４２  状態制御部
１０４３  ライトバッファ
１０４４  ＳＤＲＡＭコントローラ・インタフェース
１０４５  リードデータバッファ
１１３１  アドレス生成部
１１３２  リード／ライト／リフレッシュ制御回路
１１３３  アドレス制御回路
１１３４  カラムアドレス／パラメータ重畳部
１１３５  データ入出力制御回路
【図１】
2008276343.tif 000003
【図２】
2008276343.tif 000004
【図３】
2008276343.tif 000005
【図４】
2008276343.tif 000006
【図５】
2008276343.tif 000007
【図６】
2008276343.tif 000008