(57)【要約】【課題】低速なメモリを見かけ上高速化することのできるメモリ制御装置を提供する。【解決手段】バス３とメモリ４との間にメモリ制御装置１０を介在させる。仮想メモリ空間制御部１３は、バス３側から予め定めた仮想アドレス空間に対するアクセスがあると、これに対応するアクセスをメモリ４より高速かつ小容量のＦＩＦＯメモリ１１、１２に対して行なう。ＤＭＡコントローラ１４は、バス３側から仮想アドレス空間へのアクセスと非同期にＦＩＦＯメモリ１１、１２とメモリ４との間でデータ転送を実行する。なお、メモリ４内での転送先や転送元の先頭アドレスおよび転送するデータサイズはバス３側のＣＰＵ２等からＤＭＡコントローラ１４に予め設定される。【選択図】図１
2005267148.tif 000002
【特許請求の範囲】
【請求項１】
バスとメモリとの間に介在させるメモリ制御装置であって、
前記メモリより高速かつ小容量のバッファメモリと、
予め定めた仮想アドレス空間に対するバス側からのアクセスを前記バッファメモリに対するアクセスに変換する仮想メモリ空間制御部と、
前記バス側から前記仮想アドレス空間へのアクセスと非同期に前記バッファメモリと前記メモリとの間でデータを転送するデータ転送手段と、
を有する
ことを特徴とするメモリ制御装置。
【請求項２】
前記バッファメモリと前記データ転送手段とを書き込み用と読み出し用とにそれぞれ設け、
前記仮想メモリ空間制御部は、バス側からの書き込みアクセスに応じて前記書き込み用のバッファメモリに前記バス上のデータを書き込み、バス側からの読み出しアクセスに応じて前記読み出し用のバッファメモリからデータを読み出してこれを前記バス上に送出する
ことを特徴とするメモリ制御装置。
【請求項３】
前記バッファメモリが、先入れ先出し式メモリである
ことを特徴とする請求項１または２に記載のメモリ制御装置。
【請求項４】
前記データ転送手段は、転送動作における前記メモリ側の先頭アドレスと転送するデータサイズとの設定を前記バス側から受け付け、この設定に従って前記メモリとバッファメモリとの間でデータを転送する
ことを特徴とする請求項１、２または３に記載のメモリ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バスとメモリとの間に介在させるメモリ制御装置に関する。
【背景技術】
【０００２】
情報の伝達経路としてバスを利用するシステムでは、通常、図４に示すように、メモリ１０１などの各種デバイスがバス１０２に直接接続される。ところで、高価で特殊なものを除く一般的なメモリが発揮し得る最大のデータ読み書き速度（メモリの処理能力）は、ＣＰＵ１０３などのデバイスがバスを通じてデータをやり取りできる速度（バスのデータ転送能力）に比べて遅い。
【０００３】
たとえば、図５（ａ）に示すように、バスのデータ転送能力がＸバイト／秒で、メモリの処理能力がＹバイト／秒で、バスのデータ転送能力（Ｘバイト／秒）＞メモリの処理能力（Ｙバイト／秒）の関係にあるものとする。
【０００４】
このとき、転送すべきデータ量をＺバイトとすると、バス側で必要なデータ転送時間はＺ／Ｘ秒になり、メモリ側で必要な処理時間はＺ／Ｙ秒になる。バスのデータ転送能力（Ｘバイト／秒）＞メモリの処理能力（Ｙバイト／秒）の関係にあるので、図５（ｂ）に示すように、メモリ側で必要な処理時間（Ｚ／Ｙ秒）＞データ転送時間（Ｚ／Ｘ秒）になる。すなわち、メモリの処理能力がバス上でのデータ転送速度を規制する要因になっていた。
【０００５】
このようにメモリへのアクセスがバス上でのデータ転送速度を制限する要因になることから、バスに接続されたメモリとＩ／Ｏ装置との間のデータ転送速度を改善するための技術が提案されている。この技術は、同じ値のデータを複数のＩ／Ｏ装置に転送する場合の処理速度を向上させるものであり、バスに接続されたメモリから読み取ったデータを内部メモリに格納し、各Ｉ／Ｏ装置への転送をこの内部メモリから繰り返し行なうようになっている（たとえば、特許文献１参照。）。
【０００６】
【特許文献１】特開２０００−１０５７３６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
バスのデータ転送能力より低い処理能力のメモリにバス側からアクセスすると、その能力差を埋めるために、図６に示すようにバスにウェイトサイクル１１０が挿入される。その結果、データ転送のための処理時間がメモリ側の処理能力に依存することになり、メモリにアクセスするためのバス占有時間が長くなってバスの利用効率が低下し、システム全体のスループットが低くなるという問題があった。
【０００８】
特殊な高速メモリを採用すれば、ウェイトサイクルの挿入を避けることはできる。しかし、画像データを蓄積するような大容量のメモリに高価な高速メモリを採用すると装置価格が大幅に上昇するので好ましくない。
【０００９】
本発明は、上記の問題を解決しようとするものであり、低速なメモリを見かけ上高速化することのできるメモリ制御装置を提供することを目的としている。
【課題を解決するための手段】
【００１０】
請求項１に係わる発明は、バスとメモリとの間に介在させるメモリ制御装置であって、
前記メモリより高速かつ小容量のバッファメモリ（１１、１２）と、
予め定めた仮想アドレス空間に対するバス側からのアクセスを前記バッファメモリ（１１、１２）に対するアクセスに変換する仮想メモリ空間制御部（１３）と、
前記バス側から前記仮想アドレス空間へのアクセスと非同期に前記バッファメモリ（１１、１２）と前記メモリとの間でデータを転送するデータ転送手段（１４）と、
を有する
ことを特徴とするメモリ制御装置である。
【００１１】
上記発明によれば、バス側から仮想メモリ空間にデータの書き込みまたは読み出しのアクセスがあると、対応するアクセスがバッファメモリ（１１、１２）に対して行なわれる。これにより、バスからはバッファメモリ（１１、１２）の処理能力に応じた速度で仮想メモリ空間に対するデータの読み書きが可能になる。
【００１２】
一方、データ転送手段（１４）は、仮想アドレス空間に対するバス側からのアクセスと非同期にバッファメモリ（１１、１２）と外部のメモリとの間でデータを転送する。バッファメモリ（１１、１２）と外部のメモリとの間のデータ転送は外部のメモリの処理能力に応じた速度で行なわれる。バスとバッファメモリ（１１、１２）との間の処理速度とバッファメモリ（１１、１２）と外部メモリとの間の処理速度との差は、バッファメモリ（１１、１２）にデータを一時的に蓄積することで吸収される。
【００１３】
バッファメモリ（１１、１２）へのデータ格納位置や外部のメモリへのデータ格納位置をバス側の装置から管理可能に構成してもよいし、メモリ制御装置側でデータの格納位置を自動制御するように構成してもよい。バス側から管理するときは、格納場所の先頭アドレスとデータサイズとを設定し、このデータサイズ毎に１回の設定で済むように構成するとよい。自動制御する場合は、古く格納した順にデータを取り出すようにすれば制御や管理が容易になる。
【００１４】
メモリ制御装置は、読み出し動作と書き込み動作の双方に対応するものでも、いずれか一方の動作にだけ対応するものであってもよい。
【００１５】
バッファメモリ（１１、１２）は、外部のメモリより高速であればよく、好ましくは、バス上の他のデバイスからのアクセスに対してウェイトサイクルが発生しないような処理能力を有するとよい。バッファメモリ（１１、１２）の記憶容量は問わない。バス側からのアクセスが所定のデータ量を単位に連続的に行なわれるような場合には、連続転送の１単位分のデータ量以上の記憶容量にすることが望ましい。
【００１６】
バスの種類は限定されない。たとえば、ＰＣＩバス（Peripheral
Components Interconnect bus）などの汎用バスがある。
【００１７】
外部に接続するメモリの種類や記憶容量は問わない。データ転送手段（１４）は、接続され得る最大容量のメモリをカバー可能な広さのアドレス空間を有することが好ましい。
【００１８】
請求項２に係わる発明は、前記バッファメモリ（１１、１２）と前記データ転送手段（１４）とを書き込み用と読み出し用とにそれぞれ設け、
前記仮想メモリ空間制御部（１３）は、バス側からの書き込みアクセスに応じて前記書き込み用のバッファメモリ（１１）に前記バス上のデータを書き込み、バス側からの読み出しアクセスに応じて前記読み出し用のバッファメモリ（１２）からデータを読み出してこれを前記バス上に送出する
ことを特徴とするメモリ制御装置である。
【００１９】
上記発明によれば、書き込み用のデータ転送手段（１４）は書き込み用バッファメモリ（１１、１２）から外部のメモリへのデータ転送を専門に行ない、読み出し用のデータ転送手段（１４）は外部のメモリから読み出し用バッファメモリ（１１、１２）へのデータ転送を専門に行なう。メモリへのアクセスが調停される範囲でこれらの転送動作の並列実行が可能になる。また、読み出し用と書き込み用とに独立のバッファメモリ（１１、１２）を設けたので、読み出し動作と書き込み動作の双方に対応しつつ、各バッファメモリ（１１、１２）に先入れ先出し式メモリを利用することができ、制御が簡易になる。
【００２０】
請求項３に係わる発明は、前記バッファメモリ（１１、１２）が、先入れ先出し式メモリである
ことを特徴とする請求項１または２に記載のメモリ制御装置である。
【００２１】
上記発明によれば、バッファメモリ（１１、１２）に対するアドレス管理が不要になり、メモリ制御装置の内部構成が簡略化される。
【００２２】
請求項４に係わる発明は、前記データ転送手段（１４）は、転送動作における前記メモリ側の先頭アドレスと転送するデータサイズとの設定を前記バス側から受け付け、この設定に従って前記メモリとバッファメモリ（１１、１２）との間でデータを転送する
ことを特徴とする請求項１、２または３に記載のメモリ制御装置である。
【００２３】
上記発明によれば、データ転送におけるメモリ側の先頭アドレスとデータサイズとをバス側の装置から設定するので、外部のメモリにおけるデータの格納位置をバス側の装置で管理することができる。また、先頭アドレスとデータサイズとをセットすれば、１回の設定でデータサイズ分のデータ転送が行なわれるので、設定回数が少なくなり、設定に係わるバス側の装置の負担が軽減される。
【発明の効果】
【００２４】
本発明に係わるメモリ制御装置によれば、低速のメモリが見かけ上高速化される。これにより、メモリアクセス時にウェイトサイクルが挿入されなくなり、データの転送効率やバスの使用効率が改善され、このバスを利用するシステムの全体の高速化を図ることができる。また、低速メモリを利用してもシステムの性能が低下しないので、大容量の記憶部として安価な低速メモリを利用して装置価格を下げることができる。
【００２５】
バッファメモリとデータ転送手段とを書き込み用と読み出し用とにそれぞれ設けたものでは、たとえば、書き込み用バッファメモリから外部のメモリへのデータ転送と外部のメモリから読み出し用バッファメモリへのデータ転送の双方に係わる実行指示を予め設定しておけば、データ転送手段に対する指示をその都度変更することなく、バス側からの読み出し動作と書き込み動作とを適宜に切り替えて実行することができる。
【００２６】
バッファメモリとして先入れ先出し式メモリを使用したものでは、バッファメモリに対するアドレス管理が不要になり、メモリ制御装置の内部構成が簡略化される。
【００２７】
データ転送におけるメモリ側の先頭アドレスとデータサイズとをバス側の装置から設定するようにしたものでは、外部のメモリ内でのデータ格納位置をバス側の装置で管理することができる。また、先頭アドレスとデータサイズとを１回セットすれば、そのデータサイズ分のデータ転送が行なわれるので、設定回数が少なくなり、設定に係わるバス側の装置の負担が軽減される。
【発明を実施するための最良の形態】
【００２８】
以下、図面に基づき本発明の実施の形態を説明する。
【００２９】
図１は、本発明に係わるメモリ制御装置１０の構成と接続状態とを示している。メモリ制御装置１０は、ＣＰＵ２などが接続されたバス３と外部のメモリ４との間に接続され、見かけ上、メモリ４の処理速度を高速化する機能を果たす。ここでは、バス３はＰＣＩバスであり、メモリ４は、大容量のＳＤＲＡＭ(Synchronous Dynamic Random Access Memory)で構成されている。バス３やメモリ４の種類はこれに限定されるものではない。
【００３０】
メモリ制御装置１０は、書き込み用ＦＩＦＯメモリ１１と、読み出し用ＦＩＦＯメモリ１２と、仮想メモリ空間制御部１３と、ＤＭＡコントローラ１４とから構成される。
【００３１】
書き込み用ＦＩＦＯメモリ１１および読み出し用ＦＩＦＯメモリ１２は、メモリ４に比べて高速かつ小容量のメモリであり、バス３からのアクセスとメモリ４との処理速度の違いを吸収する役割を果たす。ここでは、バス３のバス幅と同じビット幅を持つ６４段のシフトレジスタで構成してあり、先入れ先出し式（ＦＩＦＯ…First-In First-Out）メモリとして動作する。なお、先入れ先出し式（ＦＩＦＯ）は、古く格納した順にデータを取り出す方式であり、一番新しく格納されたデータが一番後に取り出される。
【００３２】
書き込み用ＦＩＦＯメモリ１１および読み出し用ＦＩＦＯメモリ１２の記憶容量は、上記のものに限定されない。ここでは、バス３側の１つのデバイスから連続アクセスされる最大のデータ量と等しい記憶容量に設定してある。ＰＣＩバスでは、１つのデバイスが連続的にバスを占有可能な時間が規定されているので、書き込み用ＦＩＦＯメモリ１１および読み出し用ＦＩＦＯメモリ１２の記憶容量をその占有可能な時間に転送できる最大データ量に設定してある。
【００３３】
仮想メモリ空間制御部１３は、予め定めた仮想アドレス空間に対するバス３側からのアクセスを書き込み用ＦＩＦＯメモリ１１や読み出し用ＦＩＦＯメモリ１２に対するアクセスに変換する機能を果たす。仮想メモリ空間制御部１３にはバス３のアドレスバスおよびデータバスが接続されている。また仮想メモリ空間制御部１３は、書き込み用ＦＩＦＯメモリ１１と読み出し用ＦＩＦＯメモリ１２のそれぞれとデータ用信号線１５、１６で接続されている。
【００３４】
仮想メモリ空間制御部１３は、データ用信号線１５上のデータの取り込みタイミングを示す書き込みタイミング信号１７を書き込み用ＦＩＦＯメモリ１１に向けて出力する。また、データの読み出しタイミングを表わした読み出しタイミング信号１８を読み出し用ＦＩＦＯメモリ１２に向けて出力する。
【００３５】
仮想メモリ空間制御部１３は、仮想アドレス空間に対するバス３側からの書き込みアクセスを検出したとき、バス３上のデータを書き込み用ＦＩＦＯメモリ１１に書き込む機能を果たす。バス３側から仮想アドレス空間に対して読み出しアクセスがあったときは、読み出し用ＦＩＦＯメモリ１２からデータを読み出し、これをバス３のデータバス上に送出するように動作する。
【００３６】
仮想メモリ空間制御部１３は、バス３側から仮想アドレス空間に対して書き込みアクセスがあった時点で書き込み用ＦＩＦＯメモリ１１にデータを格納するための空き領域がないときは、空き領域が生じるまでバス３に対してウェイト信号を送出する。同様に、バス３側から仮想アドレス空間に対して読み出しアクセスがあった際に読み出し可能なデータが読み出し用ＦＩＦＯメモリ１２に格納されていないときは、読み出し可能なデータが準備されるまでバス３に対してウェイト信号を送出するようになっている。ウェイト信号が出力されたときは、これに応じてバスにウェイトサイクルが挿入される。
【００３７】
ＤＭＡコントローラ１４は、書き込み用ＦＩＦＯメモリ１１や読み出し用ＦＩＦＯメモリ１２とメモリ４との間でデータを転送する機能を果たす。ＤＭＡコントローラ１４は、書き込み用ＦＩＦＯメモリ１１からメモリ４にデータを転送する書き込み用チャンネル２１と、メモリ４から読み出し用ＦＩＦＯメモリ１２にデータを転送する読み出し用チャンネル２２との２つのデータ転送部を備えている。
【００３８】
書き込み用ＦＩＦＯメモリ１１は、格納されている読み出し可能なデータの残量を示すデータ残量情報２３をＤＭＡコントローラ１４の書き込み用チャンネル２１に向けて出力する。データ残量情報２３は、書き込み用ＦＩＦＯメモリ１１に読み出し可能なデータが存在するときに出力され、読み出し可能なデータがないときは出力されない。書き込み用チャンネル２１は、データの読み出しタイミングを表わしたＦＩＦＯ読み出しタイミング信号２４を書き込み用ＦＩＦＯメモリ１１に向けて出力する。
【００３９】
読み出し用ＦＩＦＯメモリ１２は、データを格納可能な空き容量を表わした空き容量情報２５をＤＭＡコントローラ１４の読み出し用チャンネル２２に向けて出力する。読み出し用ＦＩＦＯメモリ１２は、空き領域が存在する場合に空き容量情報２５を出力し、空き領域がないときは空き容量情報２５を出力しない。読み出し用チャンネル２２は、メモリ４から読み出したデータの取り込みタイミングを表わしたＦＩＦＯ書き込みタイミング信号２６を読み出し用ＦＩＦＯメモリ１２に向けて出力する。
【００４０】
ＤＭＡコントローラ１４は書き込み用チャンネル２１および読み出し用チャンネル２２のそれぞれに対して、転送するデータのメモリ４内での先頭アドレスと転送するデータサイズの設定をバス３側のデバイス（たとえばＣＰＵ２）から受ける。設定後にバス３側のデバイスから転送動作の実行指令を受けると、先の設定内容に従ってデータ転送動作を実行するようになっている。ＤＭＡコントローラ１４はデータ転送動作を実行するときメモリ４に対してアドレス情報２７と、データの書き込みタイミングを表した実メモリ書き込みタイミング信号２８と、データの読み出し要求を表した実メモリ読み出しタイミング信号２９とを出力する。
【００４１】
書き込み用チャンネル２１や読み出し用チャンネル２２によるデータ転送動作は、仮想アドレス空間へのバス３側からアクセスと非同期に実行される。また、書き込み用チャンネル２１と読み出し用チャンネル２２とが並行に動作するときは、互いの動作を調停するようになっている。
【００４２】
次に、ＣＰＵ２がメモリ制御装置１０を通じてメモリ４にデータを書き込む際の動作の流れを説明する。ＣＰＵ２は、ＤＭＡコントローラ１４の書き込み用チャンネル２１に、これから転送しようとするデータのサイズとメモリ４内での先頭アドレス（実メモリアドレス空間上の先頭アドレス）を設定し、書き込み用チャンネル２１に転送動作の実行指令を出す。
【００４３】
最初は書き込み用ＦＩＦＯメモリ１１にはデータが格納されていないので、データ残量情報２３は出力されず、書き込み用チャンネル２１はデータ残量情報２３の出力を待機した状態になっている。
【００４４】
ＣＰＵ２が仮想メモリ空間にデータを転送する（書き込む）と、仮想メモリ空間制御部１３はバス３側からの仮想メモリ空間に対する書き込みアクセスがあったことを検知し、バス３上のデータを取り込み、これを書き込み用ＦＩＦＯメモリ１１に書き込む。詳細には、仮想メモリ空間制御部１３はバス３側から取り込んだデータをデータ用信号線１５に出力し、かつこの状態で書き込みタイミング信号１７を出力する。書き込み用ＦＩＦＯメモリ１１は書き込みタイミング信号１７が入力された時点でデータ用信号線１５上のデータを内部に取り込み格納する。こうして読み出し可能なデータが格納された状態になると書き込み用ＦＩＦＯメモリ１１はデータ残量情報２３を出力する。
【００４５】
書き込み用チャンネル２１は、データ残量情報２３の入力により書き込み用ＦＩＦＯメモリ１１に読み出すべきデータが格納されていることを認識する。これにより、メモリ４に対してアドレス情報を出力するとともにＦＩＦＯ読み出しタイミング信号２４を出力して書き込み用ＦＩＦＯメモリ１１からデータを読み出す。そして、書き込み用ＦＩＦＯメモリ１１からデータが読み出されている状態で実メモリ書き込みタイミング信号２８を出力し、そのデータを先のアドレス情報が示すメモリ４内の領域に書き込む。
【００４６】
バス３側から書き込み用ＦＩＦＯメモリ１１へのデータの書き込みは、書き込み用ＦＩＦＯメモリ１１の処理能力に応じた速度で次々と行なわれる。一方、書き込み用ＦＩＦＯメモリ１１からメモリ４への転送は、メモリ４の処理能力に応じた速度で順次行なわれる。
【００４７】
ＣＰＵ２がメモリ制御装置１０を通じてメモリ４からデータを読み出す際の動作は次のように行なわれる。ＣＰＵ２は、ＤＭＡコントローラ１４の読み出し用チャンネル２２に、これから読み出そうとするデータのサイズとメモリ４内での先頭アドレス（実メモリアドレス空間上の先頭アドレス）を設定し、読み出し用チャンネル２２に転送動作の実行指令を出す。
【００４８】
読み出し用チャンネル２２は、メモリ４に対してアドレス情報と実メモリ読み出しタイミング信号２９とを出力し、メモリ４からデータが読み出されたタイミングを見計らって読み出し用ＦＩＦＯメモリ１２にＦＩＦＯ書き込みタイミング信号２６を出力し、メモリ４から読み出したデータを読み出し用ＦＩＦＯメモリ１２に順次書き込む。
【００４９】
ＣＰＵ２は、ある程度読み出し用ＦＩＦＯメモリ１２にデータが格納されたであろう時期に仮想メモリ空間制御部１３にアクセスしてデータを読み出すことで、読み出し用ＦＩＦＯメモリ１２に格納されているデータを読み出し用ＦＩＦＯメモリ１２が持つ処理能力（速度）で読み出すことができる。たとえば、読み出し用ＦＩＦＯメモリ１２がフルになった頃を見計らって読み出し用ＦＩＦＯメモリ１２にアクセスし、その記憶容量分のデータを連続的に読み出すようにするとよい。
【００５０】
ＰＣＩバスの場合、連続的にバスを占有可能な時間が規制されている。このため、ＣＰＵ２が次にメモリ制御装置１０にアクセスするまでの間にメモリ４から読み出し用ＦＩＦＯメモリ１２への読み出し動作が行なわれ、次にＣＰＵ２が仮想メモリ空間を読み出しアクセスする頃には読み出し用ＦＩＦＯメモリ１２に充分な量のデータが格納される。
【００５１】
図２は、メモリ制御装置１０を利用してメモリ４へ所定量のデータを転送した場合のバス３側の処理時間とメモリ４側の処理時間との関係を示している。この図は、バス３側のデータ転送能力および書き込み用ＦＩＦＯメモリ１１の処理能力をＸバイト／秒、メモリ４の処理能力をＹバイト／秒とし、転送すべきデータ量をＺバイトとした場合の例を示している。
【００５２】
バス３側は書き込み用ＦＩＦＯメモリ１１にデータを書き込むので、ウェイトサイクルが挿入されずバス側の転送処理４１は（Ｚ／Ｘ秒）で完了する。一方、実メモリ側の転送処理４２は（Ｚ／Ｙ秒）かかるので、バス３側にとってその差の分４３だけ見かけ上メモリ４の高速化が実現される。また、バス３は（Ｚ／Ｘ秒）でこの転送処理から解放されるので、その後の時間４３を別の処理に利用することができ、バス３の利用効率が向上し、システムスループットの低下が防止される。
【００５３】
図３は、メモリ制御装置１０を利用してデータ転送を行なうシステム構成の一例を示している。このシステムでは、メモリ制御装置１０ａを介して第１のＰＣＩバス６１に接続されたメモリ６２からメモリ制御装置１０ｂを介して第２のＰＣＩバス７１に接続されたメモリ７２にバスブリッジ６０を通じてデータがＤＭＡ転送される。
【００５４】
第１のＰＣＩバス６１側のメモリ６２から第２のＰＣＩバス７１側のメモリ７２にデータ転送するものとする。このとき、第１のＰＣＩバス６１側のＣＰＵ６３と第２のＰＣＩバス７１側のＣＰＵ７３とが必要な情報をやり取りして以下の設定を行なう。第１のＰＣＩバス６１側のＣＰＵ６３は、読み出すデータのメモリ６２内での先頭アドレス（転送元アドレス）と転送するデータサイズとをメモリ制御装置１０ａに設定し、転送動作を起動する。第２のＰＣＩバス７１側のＣＰＵ７３は、データ格納領域のメモリ７２内での先頭アドレス（転送先アドレス）と転送するデータサイズとをメモリ制御装置１０ｂに設定し、転送動作を起動する。
【００５５】
また、ＣＰＵ６３およびＣＰＵ７３は、第１のＰＣＩバス６１側のメモリ制御装置１０ａの仮想アドレス空間から第２のＰＣＩバス７１側のメモリ制御装置１０ｂの仮想アドレス空間に先のデータサイズ分のデータを転送するようにバスブリッジ６０を設定して起動する。
【００５６】
これにより、第１のＰＣＩバス６１側のメモリ制御装置１０ａとバスブリッジ６０と第２のＰＣＩバス７１側のメモリ制御装置１０ｂとが連携動作し、メモリ６２からメモリ７２へのデータ転送が実行される。ＣＰＵ６３およびＣＰＵ７３は、起動後はデータ転送動作に関与しないので、別の処理を実行することができる。
【００５７】
以上、本発明の実施の形態を図面によって説明してきたが、具体的な構成は実施の形態に示したものに限られるものではなく、本発明の要旨を逸脱しない範囲における変更や追加があっても本発明に含まれる。たとえば、メモリ制御装置１０内のバッファメモリを先入れ先出し式メモリで構成したが、アドレス情報を必要とするメモリなど他の方式のメモリで構成してもよい。
【図面の簡単な説明】
【００５８】
【図１】本発明の実施の形態に係わるメモリ制御装置の構成と接続状態を示すブロック図である。
【図２】本発明の実施の形態に係わるメモリ制御装置を利用してメモリへ所定量のデータを転送した場合のバス側の処理時間とメモリ側の処理時間との関係を示す説明図である。
【図３】本発明の実施の形態に係わるメモリ制御装置を利用してデータ転送を行なうシステム構成の一例を示すブロック図である。
【図４】バスにメモリを接続する従来の方法を示すブロック図である。
【図５】バスのデータ転送能力とメモリの処理能力との関係およびバスのデータ転送時間とメモリ側で必要な処理時間との関係を示す説明図である。
【図６】バスのデータ転送能力より低い処理能力のメモリにアクセスしたことによりバスにウェイトサイクルが挿入された状態の一例を示す説明図である。
【符号の説明】
【００５９】
２…ＣＰＵ
３…バス
４…メモリ
１０…メモリ制御装置
１１…書き込み用ＦＩＦＯメモリ
１２…読み出し用ＦＩＦＯメモリ
１３…仮想メモリ空間制御部
１４…ＤＭＡコントローラ
１５、１６…データ用信号線
１７…書き込みタイミング信号
１８…読み出しタイミング信号
２１…書き込み用チャンネル
２２…読み出し用チャンネル
２３…データ残量情報
２４…ＦＩＦＯ読み出しタイミング信号
２５…空き容量情報
２６…ＦＩＦＯ書き込みタイミング信号
２７…アドレス情報
２８…実メモリ書き込みタイミング信号
２９…実メモリ読み出しタイミング信号
４１…バス側の転送処理
４２…実メモリ側の転送処理
４３…バス側の処理時間とメモリ側の処理時間との差
６０…バスブリッジ
６１…第１のＰＣＩバス
６２…メモリ
６３…ＣＰＵ
７１…第２のＰＣＩバス
７２…メモリ
７３…ＣＰＵ
【図１】
2005267148.tif 000003
【図２】
2005267148.tif 000004
【図３】
2005267148.tif 000005
【図４】
2005267148.tif 000006
【図５】
2005267148.tif 000007
【図６】
2005267148.tif 000008