(57)【要約】【課題】 回路規模を抑え、さらに、容易に制御を行って、非同期かつ双方向にデータ転送を行うことが可能なデータ転送装置を提供する。【解決手段】 ブロックサイズが小さいＡ側のデータＤＡを一時蓄積する２ポートメモリと、ブロックサイズが大きいＢ側のデータＤＢを一時蓄積する１ポートメモリと、Ａ側のデータＤＡの２ポートメモリへの入出力を制御する制御回路Ａと、Ｂ側のデータＤＢの１ポートメモリへの入出力および１ポートメモリと２ポートメモリとの間のデータ転送を制御する制御回路Ｂを備えたデータ転送装置１０Ａを用いて、Ａ側からＢ側にデータ転送を行う場合、Ａ側から２ポートメモリにデータ書き込みを行い、２ポートメモリと１ポートメモリの間でデータ転送を行い、Ｂ側から１ポートメモリのデータ読み出しを行う。【選択図】  図１
2006113870.tif 000002
【特許請求の範囲】
【請求項１】
一方入出力側と他方入出力側との間でデータ転送を行うデータ転送装置において、
該一方入出力側からの入力データまたは該一方入出力側への出力データを一時蓄積可能とする一または複数の２ポートメモリ手段と、
該他方入出力側からの入力データまたは該他方入出力側への出力データを一時蓄積可能とする一または複数の１ポートメモリ手段と、
該一方入出力側に対するデータの該２ポートメモリ手段への入出力を制御する一方側制御手段と、
該他方入出力側に対するデータの該１ポートメモリ手段への入出力および、該１ポートメモリ手段と該２ポートメモリ手段間のデータ転送を制御する他方側制御手段とを有するデータ転送装置。
【請求項２】
前記一方側制御手段および前記他方側制御手段は、
前記一方入出力側から前記他方入出力側にデータ転送を行う場合には、該一方入出力側から前記２ポートメモリ手段にデータ書き込みを行って、該２ポートメモリ手段と前記１ポートメモリ手段間でデータ転送を行い、該他方入出力側から該１ポートメモリ手段のデータ読み出しを行うように制御し、
該他方入出力側から該一方入出力側にデータ転送を行う場合には、該他方入出力側から該１ポートメモリ手段にデータ書き込みを行って、該１ポートメモリ手段と該２ポートメモリ手段間でデータ転送を行い、該一方入出力側から該２ポートメモリ手段のデータ読み出しを行うように制御する請求項１に記載のデータ転送装置。
【請求項３】
前記１ポートメモリ手段は、データ転送が低速でブロックサイズが大きい前記他方入出力側からの入力データまたは該他方入出力側への出力データを一時蓄積可能とし、
前記２ポートメモリ手段は、該他方入出力側に比べてデータ転送が高速でブロックサイズが小さい一方入出力側からの入力データまたは該一方入出力側への出力データのデータを一時蓄積可能とする請求項１または２に記載のデータ転送装置。
【請求項４】
前記一または複数の１ポートメモリ手段および前記一または複数の２ポートメモリ手段が共に一つである請求項１〜３のいずれかに記載のデータ転送装置。
【請求項５】
前記一方入出力側から前記２ポートメモリ手段へのデータ書き込み側および該２ポートメモリ手段から該一方入出力側へのデータ読み出し側のいずれかを選択する一方側セレクタ手段と、
該２ポートメモリ手段からのデータ読み出し側および該２ポートメモリ手段へのデータ書き込み側のいずれかを選択して、該１ポートメモリ手段と該２ポートメモリ間のデータ転送側に接続する転送セレクタ手段と、
前記他方入出力側のデータおよび該転送データのいずれかを選択して前記１ポートメモリ手段に供給する他方側セレクタ手段とを有し、
これらの各セレクタ手段は前記一方側制御手段および前記他方側制御手段のいずれかにより制御される請求項４に記載のデータ転送装置。
【請求項６】
前記一方側制御手段は少なくとも前記一方入出力側のクロック信号のタイミングで動作し、
前記他方側制御手段および前記１ポートメモリ手段は前記他方入出力側のクロック信号のタイミングで動作し、
前記２ポートメモリ手段は該一方入出力側および他方入出力側のクロック信号が切り替えられて、その切り替えられたクロック信号のタイミングで動作する請求項４または５に記載のデータ転送装置。
【請求項７】
前記一方入出力側のクロック信号および前記他方入出力側のクロック信号のいずれかを選択して前記２ポートメモリ手段の読み出し用クロック信号端子に供給する読み出し用クロックセレクタ手段と、
該一方入出力側のクロック信号および該他方入出力側のクロック信号のいずれかを選択して該２ポートメモリ手段の書き込み用クロック信号端子に供給する書き込み用クロックセレクタ手段とを有し、
これらの各セレクタ手段は前記一方側制御手段および前記他方側制御手段のいずれかにより制御される請求項６に記載のデータ転送装置。
【請求項８】
前記一方側制御手段からの書き込みアドレス信号および前記他方側制御手段からの書き込みアドレス信号のいずれかを選択して前記２ポートメモリ手段の書き込み用アドレス信号端子に供給する書き込み用アドレスセレクタ手段と、
該一方側制御手段からの読み出しアドレス信号および該他方側制御手段からの読み出しアドレス信号のいずれかを選択して該２ポートメモリ手段の読み出し用アドレス信号端子に供給する読み出し用アドレスセレクタ手段とをとを有し、
これらの各セレクタ手段は前記一方側制御手段および前記他方側制御手段のいずれかにより制御される請求項４〜７のいずれかに記載のデータ転送装置。
【請求項９】
前記一方側制御手段および前記他方側制御手段が前記一方入出力側から前記他方入出力側にデータ転送制御を行う場合には、
該一方入出力側から前記２ポートメモリ手段へのデータ書き込み側を選択するように前記一方側セレクタ手段を設定制御し、該２ポートメモリ手段からの読み出しデータを選択するように前記転送セレクタ手段を設定制御し、該２ポートメモリからの転送データを選択するように前記他方側セレクタ手段を設定制御し、該他方入出力側のクロック信号を選択するように前記読み出し用クロックセレクタ手段を設定制御し、該一方入出力側のクロック信号を選択するように前記書き込み用クロックセレクタ手段を設定制御し、該一方側制御手段からの書き込みアドレス信号を選択するように前記書き込み用アドレスセレクタ手段を設定制御し、かつ、該他方側制御手段からの読み出しアドレス信号を選択するように前記読み出し用アドレスセレクタ手段を設定制御して、該一方入出力側からのデータを該２ポートメモリ手段に書き込むと共に、該２ポートメモリ手段から該１ポートメモリ手段にデータを転送し、
該１ポートメモリ手段に転送されたデータが設定数になると、該１ポートメモリ手段と該２ポートメモリ手段間のデータ転送側から他方入出力側に該他方側セレクタ手段を設定制御して、該１ポートメモリ手段から読み出されたデータを該他方入出力側に転送し、
該１ポートメモリ手段内のデータが設定数以下になると、該他方入出力側へのデータ転送を中止して、該１ポートメモリ手段と該２ポートメモリ手段間のデータ転送側に該他方側セレクタ手段を設定制御する請求項８に記載のデータ転送装置。
【請求項１０】
前記一方側制御手段および前記他方側制御手段が前記他方入出力側から前記一方入出力側にデータ転送制御を行う場合には、
前記２ポートメモリ手段から該一方入出力側へのデータ読み出し側を選択するように前記一方側セレクタ手段を設定制御し、該２ポートメモリへのデータ書き込み側を選択するように前記転送セレクタ手段を設定制御し、該他方入出力側を選択するように前記他方側セレクタ手段を設定制御し、該一方入出力側のクロック信号側を選択するように前記読み出し用クロックセレクタ手段を設定制御し、該他方入出力側のクロック信号側を選択するように前記書き込み用クロックセレクタ手段を設定制御し、該他方側制御手段からの書き込みアドレス信号側を選択するように前記書き込み用アドレスセレクタ手段を設定制御し、かつ、該一方側制御手段からの読み出しアドレス信号側を選択するように前記読み出し用アドレスセレクタ手段を設定制御して、該他方入出力側からのデータを該１ポートメモリ手段に書き込み、
該１ポートメモリ手段に書き込まれたデータが設定数になると、該他方入出力側からのデータ入力を中止して、該１ポートメモリ手段と該２ポートメモリ手段間のデータ転送側を選択するように該他方側セレクタ手段を設定制御し、該１ポートメモリ手段から該２ポートメモリ手段にデータ転送すると共に、該２ポートメモリ手段から読み出されたデータを該一方入出力側に転送し、
該２ポートメモリ手段において該１ポートメモリ手段から転送されたデータが設定数になると、該他方入出力側を選択するように該他方側セレクタ手段を設定制御する請求項８に記載のデータ転送装置。
【請求項１１】
前記一または複数の１ポートメモリ手段が一つで、前記一または複数の２ポートメモリ手段が二つである請求項１〜３のいずれかに記載のデータ転送装置。
【請求項１２】
前記２ポートメモリ手段へのデータ書き込み側および該２ポートメモリ手段からのデータ読み出し側のいずれかを選択する一方側セレクタ手段と、
前記他方入出力側のデータ、前記１ポートメモリ手段から該２ポートメモリ手段への転送データおよび、該２ポートメモリ手段から該１ポートメモリ手段への転送データのいずれかを選択して該１ポートメモリ手段に供給する他方側セレクタ手段とを有し、
これらの各セレクタ手段は前記一方側制御手段および前記他方側制御手段のいずれかにより制御される請求項１１に記載のデータ転送装置。
【請求項１３】
前記一方側制御手段および前記他方側制御手段が前記一方入出力側から前記他方入出力側にデータ転送制御を行う場合には、
該一方入出力側から前記２ポートメモリ手段の一方へのデータ書き込み側を選択するように前記一方側セレクタ手段を設定制御し、かつ、該２ポートメモリ手段の一方から前記１ポートメモリ手段へのデータ転送側を選択するように前記他方側セレクタ手段を設定制御して、該一方入出力側からのデータを該２ポートメモリ手段の一方に書き込むと共に、該２ポートメモリ手段の一方から該１ポートメモリ手段にデータ転送し、
該１ポートメモリ手段に転送されたデータが設定数になると、該他方入出力側に選択するように該他方側セレクタ手段を設定制御して、該１ポートメモリ手段から読み出されたデータを該他方入出力側に転送し、
該１ポートメモリ手段内のデータが設定数以下になると、該他方入出力側へのデータ転送を中止して、該２ポートメモリ手段の一方から該１ポートメモリ手段へのデータ転送側を選択するように該他方側セレクタ手段を設定制御する請求項１１または１２に記載のデータ転送装置。
【請求項１４】
前記一方側制御手段および前記他方側制御手段が前記他方入出力側から前記一方入出力側にデータ転送制御を行う場合には、
前記２ポートメモリ手段の他方から該一方入出力側へのデータ読み出し側を選択するように前記一方側セレクタ手段を設定制御し、かつ、該他方入出力側を選択するように前記他方側セレクタ手段を設定制御して、該他方入出力側からのデータを該１ポートメモリ手段に書き込み、
該１ポートメモリ手段に書き込まれたデータが設定数になると、該他方入出力側から該１ポートメモリ手段へのデータ入力を中止して、該１ポートメモリ手段から該２ポートメモリ手段の他方へのデータ転送側を選択するように該他方側セレクタ手段を設定制御し、該１ポートメモリ手段から該２ポートメモリ手段の他方にデータ転送すると共に、該２ポートメモリ手段の他方から読み出されたデータを該一方入出力側に転送し、
該２ポートメモリ手段の他方において、該１ポートメモリ手段から転送されたデータが設定数になると、該他方入出力側を選択して該１ポートメモリ手段に該他方入出力側のデータを入力するように該他方側セレクタ手段を設定制御する請求項１１または１２に記載のデータ転送装置。
【請求項１５】
前記一または複数の１ポートメモリ手段が二つで、前記一または複数の２ポートメモリ手段が二つである請求項１〜３のいずれかに記載のデータ転送装置。
【請求項１６】
前記一方入出力側から前記２ポートメモリ手段の一方へのデータ書き込み側および該２ポートメモリ手段の他方から該一方入出力側へのデータ読み出し側のいずれかを選択する一方側セレクタ手段と、
前記他方入出力側データの前記１ポートメモリ手段の一方および該他方入出力側データの該１ポートメモリ手段の他方のいずれかを選択する他方側セレクタ手段と、
該１ポートメモリ手段の一方から該２ポートメモリ手段の他方へのデータ転送、該２ポートメモリの一方から該１ポートメモリの一方へのデータ転送、該１ポートメモリ手段の他方から該２ポートメモリ手段の他方へのデータ転送および該２ポートメモリ手段の一方から該１ポートメモリ手段の他方へのデータ転送のいずれかのデータ転送を選択する転送セレクタ手段とを有し、
これらの各セレクタ手段は前記一方側制御手段および前記他方側制御手段のいずれかにより制御される請求項１５に記載のデータ転送装置。
【請求項１７】
前記一方側制御手段および前記他方側制御手段が前記一方入出力側から前記他方入出力側にデータ転送制御を行う場合には、
該一方入出力側から前記２ポートメモリ手段の一方へのデータ書き込み側を選択するように前記一方側セレクタ手段を設定制御し、前記１ポートメモリ手段の他方または一方への該他方入出力側データの入出力を選択するように前記他方側セレクタ手段を設定制御し、該２ポートメモリの一方から該１ポートメモリ手段の一方または他方へのデータ転送を選択するように前記転送セレクタ手段を設定制御して、該一方入出力側からのデータを該２ポートメモリ手段の一方に書き込むと共に、該２ポートメモリ手段の一方から該１ポートメモリ手段の一方または他方に転送し、
該１ポートメモリ手段の一方または他方に転送されたデータが設定数になり、かつ、該１ポートメモリ手段の他方または一方が空である場合には、該１ポートメモリ手段の一方または他方への該他方入出力側のデータの入出力を選択するように該他方側セレクタ手段を設定制御し、かつ、該２ポートメモリ手段の一方から該１ポートメモリ手段の他方または一方へのデータ転送を選択するように該転送セレクタ手段を設定制御して、該１ポートメモリ手段の一方または他方から読み出されたデータを該他方入出力側に転送すると共に、該２ポートメモリ手段の一方から該１ポートメモリ手段の他方または一方にデータ転送をする請求項１５または１６に記載のデータ転送装置。
【請求項１８】
前記一方側制御手段および前記他方側制御手段が前記他方入出力側から前記一方入出力側にデータ転送制御を行う場合には、
前記２ポートメモリ手段の他方から該一方入出力側へのデータ読み出し側を選択するように前記一方側セレクタ手段を設定制御し、前記１ポートメモリ手段の一方または他方への該他方入出力側からのデータの入出力を選択するように前記他方側セレクタ手段を設定制御し、かつ、該１ポートメモリ手段の他方または一方から該２ポートメモリ手段の他方へのデータ転送側を選択するように前記転送セレクタ手段を設定制御して、該他方入出力側からのデータを該１ポートメモリ手段の一方または他方に書き込み、
該１ポートメモリ手段の一方または他方に書き込まれたデータが設定数になり、かつ、該１ポートメモリ手段の他方または一方が空である場合には、該１ポートメモリ手段の他方または一方への該他方入出力側のデータの入出力を選択するように該他方側セレクタ手段を設定制御し、かつ、該１ポートメモリ手段の一方または他方から該２ポートメモリ手段の他方へのデータ転送側を選択するように該転送セレクタ手段を設定制御して、該他方入出力側からのデータを該１ポートメモリ手段の他方または一方に書き込むと共に、該１ポートメモリ手段の一方または他方から該２ポートメモリ手段の他方にデータを転送して、該２ポートメモリ手段の他方から読み出されたデータを該一方入出力側に転送する請求項１５または１６に記載のデータ転送装置。
【請求項１９】
前記一方側制御手段は少なくとも前記一方側のクロック信号のタイミングで動作し、
前記他方側制御手段および前記二つの１ポートメモリ手段は前記他方側のクロック信号のタイミングで動作し、
前記二つの２ポートメモリ手段は該一方側および他方側のクロック信号のタイミングで動作する請求項１３、１４，１７および１８のいずれかに記載のデータ転送装置。
【請求項２０】
請求項１〜１９の何れかに記載のデータ転送装置と、前記一方入出力側である情報処理システムと、前記他方入出力側である外部装置とを有し、該情報処理システムと該外部装置間で該データ転送装置により双方向で非同期にデータ送信可能とする電子情報装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２ポートメモリを用いて非同期かつ双方向にデータ転送を行うデータ転送装置および、これを用いた電子情報装置に関する。
【背景技術】
【０００２】
従来、電子情報装置において情報処理システムと外部装置間でデータ転送を行う場合、両者の動作クロック、データ転送速度および取り扱いデータ単位(ブロック)が異なっていることが多い。このような場合、両者間でデータ転送を行うためには、データを一時的に蓄積して転送するデータ転送装置が必要になる。
【０００３】
このようなデータ転送装置は、一般に、非同期で読み出しおよび書き込みを同時に行うことが可能な２ポートメモリを用いて構成されている。
【０００４】
図４は、２ポートメモリを用いた従来のデータ転送装置の構成例を示す回路図である。
【０００５】
図４において、データ転送装置２０は、２ポートメモリとしての２ポートＲＡＭ２１と、２ポートＲＡＭ２１へのデータ入出力を制御する制御回路２２と、セレクタ２３〜２６とを有している。
【０００６】
２ポートＲＡＭ２１は、書き込み用ポートＷＤと読み出し用ポートＲＤとを有しており、それぞれ制御回路２２からの書き込み用アドレスＷＡＤおよび読み出し用アドレスＲＡＤにしたがって、書き込み用クロック信号ＷＣＬＫおよび読み出し用クロック信号ＲＣＬＫのタイミングで書き込み動作および読み出し動作が行われる。
【０００７】
制御回路２２からは、制御信号ＡおよびＢにしたがって、一方Ａ側のデータＤＡを他方Ｂ側に転送するか、または他方Ｂ側のデータＤＢを一方Ａ側に転送するように、セレクタ２３〜２６に制御信号が供給されると共に、２ポートＲＡＭ２１に書き込み用アドレスＷＡＤおよび読み出し用アドレスＲＡＤが供給される。
【０００８】
セレクタ２３では、一方側のクロック信号ＣＬＫＡおよび他方側のクロック信号ＣＬＫＢのいずれか一方が選択されて２ポートＲＡＭ２１の書き込み用クロック信号ＷＣＬＫに供給される。
【０００９】
セレクタ２４では、一方側のクロック信号ＣＬＫＡおよび他方側のクロック信号ＣＬＫＢのいずれか一方が選択されて２ポートＲＡＭ２１の読み出し用クロック信号ＲＣＬＫに供給される。
【００１０】
セレクタ２５では、一方Ａ側のデータＤＡを２ポートＲＡＭ２１の書き込み用ポートＷＤから書き込むか、または２ポートＲＡＭ２１の読み出し用ポートＲＤから読み出されたデータを一方Ａ側に転送するかが選択される。
【００１１】
セレクタ２６では、他方Ｂ側のデータＤＢを２ポートＲＡＭ２１の書き込み用ポートＷＤから書き込むか、または２ポートＲＡＭ２１の読み出し用ポートＲＤから読み出されたデータを他方Ｂ側に転送するかが選択される。
【００１２】
このデータ転送装置２０を用いて、一方Ａ側から他方Ｂ側へデータを転送する場合、セレクタ２３は、一方側のクロック信号ＣＬＫＡを選択するように設定される。また、セレクタ２４は、他方側のクロック信号ＣＬＫＢを選択するように設定される。さらに、セレクタ２５は、一方Ａ側のデータＤＡの２ポートＲＡＭ２１の書き込み用ポートＷＤへの書き込みを選択するように設定される。さらに、セレクタ２６は、２ポートＲＡＭ２１の読み出し用ポートＲＤから読み出されたデータの他方Ｂ側への転送を選択するように設定される。
【００１３】
この状態で、制御信号Ｂのデータ読み出し要求信号が活性の間、制御回路２２によって制御信号Ａのデータ書き込み要求信号が活性化され、一方Ａ側のデータＤＡがセレクタ２５を通って２ポートＲＡＭ２１の書き込み用ポートＷＤに供給される。一方側のクロック信号ＣＬＫＡのタイミングで、制御回路２２から供給される書き込み用アドレスＷＡＤにしたがって、２ポートＲＡＭ２１の書き込み用ポートＷＤから一方Ａ側のデータＤＡが書き込まれる。これによって、一方Ａ側の装置またはシステムの動作クロック、データ転送速度および取り扱いデータ単位(ブロック)に応じて、一方Ａ側のデータＤＡが２ポートＲＡＭ２１に書き込まれる。
【００１４】
また、他方側のクロック信号ＣＬＫＢのタイミングで、制御回路２２から供給される読み出し用アドレスＲＡＤにしたがって、２ポートＲＡＭ２１の読み出し用ポートＲＤからデータが読み出される。２ポートＲＡＭ２１の読み出し用ポートＲＤから読み出されたデータは、セレクタ２６を通って他方Ｂ側へ転送される。これによって、他方Ｂ側の装置またはシステムの動作クロック、データ転送速度および取り扱いデータ単位(ブロック)に応じて、２ポートＲＡＭ２１から読み出されたデータが他方Ｂ側にデータＤＢとして転送される。
【００１５】
次に、このデータ転送装置２０を用いて、他方Ｂ側から一方Ａ側へデータを転送する場合、セレクタ２３は、他方側のクロック信号ＣＬＫＢを選択するように設定される。また、セレクタ２４は、一方側のクロック信号ＣＬＫＡを選択するように設定される。さらに、セレクタ２５は、２ポートＲＡＭ２１の読み出し用ポートＲＤから読み出されたデータの一方Ａ側への転送を選択するように設定される。さらに、セレクタ２６は、他方Ｂ側のデータＤＢの２ポートＲＡＭ２１の書き込み用ポートＷＤへの書き込みを選択するように設定される。
【００１６】
この状態で、制御信号Ｂのデータ書き込み要求信号が活性の間、一方Ｂ側のデータＤＢがセレクタ２６を通って２ポートＲＡＭ２１の書き込み用ポートＷＤに供給される。他方側のクロック信号ＣＬＫＢのタイミングで、制御回路２２から供給される書き込み用アドレスＷＡＤにしたがって、２ポートＲＡＭ２１の書き込み用ポートＷＤから他方Ｂ側のデータＤＢが書き込まれる。これによって、他方Ｂ側の装置またはシステムの動作クロック、データ転送速度および取り扱いデータ単位(ブロック)に応じて、他方Ｂ側のデータＤＢが２ポートＲＡＭ２１に書き込まれる。
【００１７】
また、制御回路２２によって制御信号Ａのデータ読み出し要求信号が活性化され、一方側のクロック信号ＣＬＫＡのタイミングで、制御回路２２から供給される読み出し用アドレスＲＡＤにしたがって、２ポートＲＡＭ２１の読み出し用ポートＲＤからデータが読み出される。２ポートＲＡＭ２１の読み出し用ポートＲＤから読み出されたデータは、セレクタ２５を通って一方Ａ側へ転送される。これによって、他方Ａ側の装置またはシステムの動作クロック、データ転送速度および取り扱いデータ単位(ブロック)に応じて、２ポートＲＡＭ２１から読み出されたデータが他方Ａ側にデータＤＡとして転送される。
【００１８】
ところで、情報処理システムと外部装置との間でデータ転送装置２０がデータ転送を行う場合、情報処理システム側はデータ転送が高速でブロックサイズが小さく、外部装置側はデータ転送が低速でブロックサイズが大きいことが多い。このような場合に、データ転送が途切れないようにするためには、少なくとも大きい方のブロックサイズ程度のメモリ容量を有する２ポートメモリ（図４では２ポートＲＡＭ２１）が必要である。
【００１９】
このような従来のデータ転送装置２０として例えば特許文献１に開示されているようなものが挙げられる。
【特許文献１】特開平６−１８７１２３号公報
【発明の開示】
【発明が解決しようとする課題】
【００２０】
上述したように、従来のデータ転送装置２０では、少なくとも大きい方のブロックサイズ程度のメモリ容量を有する２ポートメモリ（図４では２ポートＲＡＭ２１）が必要である。しかしながら、一般的に、２ポートＲＡＭ２１などの２ポートメモリはシングルポートメモリ（１ポートメモリ）に比べて回路規模が大きく、高価であるため、データ転送装置２０の回路規模も大きくなって、製造コストが高くなるという問題がある。
【００２１】
また、データ転送効率を向上するためには、２ポートメモリへの書き込みと読み出しを同時に行う必要があり、制御回路が複雑になるという問題もある。
【００２２】
さらに、２ポートメモリは、一般的に、一つの書き込みポートと一つの読み出しポートとを備えている。これによって、データ転送を双方向で行うためには、書き込みポートを情報処理システム側と外部装置側とで切り替える必要があり、制御が複雑になるという問題がある。
【００２３】
本発明は、上記従来の問題を解決するもので、回路規模を抑え、さらに、容易に制御を行って、非同期かつ双方向にデータ転送を行うことができるデータ転送装置、これを用いた電子情報装置を提供することを目的とする。
【課題を解決するための手段】
【００２４】
本発明のデータ転送装置は、一方入出力側と他方入出力側との間でデータ転送を行うデータ転送装置において、該一方入出力側からの入力データまたは該一方入出力側への出力データを一時蓄積可能とする一または複数の２ポートメモリ手段と、該他方入出力側からの入力データまたは該他方入出力側への出力データを一時蓄積可能とする一または複数の１ポートメモリ手段と、該一方入出力側に対するデータの該２ポートメモリ手段への入出力を制御する一方側制御手段と、該他方入出力側に対するデータの該１ポートメモリ手段への入出力および、該１ポートメモリ手段と該２ポートメモリ手段間のデータ転送を制御する他方側制御手段とを有し、そのことにより上記目的が達成される。
【００２５】
また、好ましくは、本発明のデータ転送装置における一方側制御手段および前記他方側制御手段は、前記一方入出力側から前記他方入出力側にデータ転送を行う場合には、該一方入出力側から前記２ポートメモリ手段にデータ書き込みを行って、該２ポートメモリ手段と前記１ポートメモリ手段間でデータ転送を行い、該他方入出力側から該１ポートメモリ手段のデータ読み出しを行うように制御し、
該他方入出力側から該一方入出力側にデータ転送を行う場合には、該他方入出力側から該１ポートメモリ手段にデータ書き込みを行って、該１ポートメモリ手段と該２ポートメモリ手段間でデータ転送を行い、該一方入出力側から該２ポートメモリ手段のデータ読み出しを行うように制御する。
【００２６】
さらに、好ましくは、本発明のデータ転送装置における１ポートメモリ手段は、データ転送が低速でブロックサイズが大きい前記他方入出力側からの入力データまたは該他方入出力側への出力データを一時蓄積可能とし、前記２ポートメモリ手段は、該他方入出力側に比べてデータ転送が高速でブロックサイズが小さい一方入出力側からの入力データまたは該一方入出力側への出力データのデータを一時蓄積可能とする。
【００２７】
さらに、好ましくは、本発明のデータ転送装置における一または複数の１ポートメモリ手段および前記一または複数の２ポートメモリ手段が共に一つである。
【００２８】
さらに、好ましくは、本発明のデータ転送装置において、前記一方入出力側から前記２ポートメモリ手段へのデータ書き込み側および該２ポートメモリ手段から該一方入出力側へのデータ読み出し側のいずれかを選択する一方側セレクタ手段と、該２ポートメモリ手段からのデータ読み出し側および該２ポートメモリ手段へのデータ書き込み側のいずれかを選択して、該１ポートメモリ手段と該２ポートメモリ間のデータ転送側に接続する転送セレクタ手段と、前記他方入出力側のデータおよび該転送データのいずれかを選択して前記１ポートメモリ手段に供給する他方側セレクタ手段とを有し、これらの各セレクタ手段は前記一方側制御手段および前記他方側制御手段のいずれかにより制御される。
【００２９】
さらに、好ましくは、本発明のデータ転送装置における一方側制御手段は少なくとも前記一方入出力側のクロック信号のタイミングで動作し、前記他方側制御手段および前記１ポートメモリ手段は前記他方入出力側のクロック信号のタイミングで動作し、前記２ポートメモリ手段は該一方入出力側および他方入出力側のクロック信号が切り替えられて、その切り替えられたクロック信号のタイミングで動作する。
【００３０】
さらに、好ましくは、本発明のデータ転送装置において、前記一方入出力側のクロック信号および前記他方入出力側のクロック信号のいずれかを選択して前記２ポートメモリ手段の読み出し用クロック信号端子に供給する読み出し用クロックセレクタ手段と、該一方入出力側のクロック信号および該他方入出力側のクロック信号のいずれかを選択して該２ポートメモリ手段の書き込み用クロック信号端子に供給する書き込み用クロックセレクタ手段とを有し、これらの各セレクタ手段は前記一方側制御手段および前記他方側制御手段のいずれかにより制御される。
【００３１】
さらに、好ましくは、本発明のデータ転送装置において、前記一方側制御手段からの書き込みアドレス信号および前記他方側制御手段からの書き込みアドレス信号のいずれかを選択して前記２ポートメモリ手段の書き込み用アドレス信号端子に供給する書き込み用アドレスセレクタ手段と、
該一方側制御手段からの読み出しアドレス信号および該他方側制御手段からの読み出しアドレス信号のいずれかを選択して該２ポートメモリ手段の読み出し用アドレス信号端子に供給する読み出し用アドレスセレクタ手段とをとを有し、
これらの各セレクタ手段は前記一方側制御手段および前記他方側制御手段のいずれかにより制御される。
【００３２】
さらに、好ましくは、本発明のデータ転送装置において、前記一方側制御手段および前記他方側制御手段が前記一方入出力側から前記他方入出力側にデータ転送制御を行う場合には、該一方入出力側から前記２ポートメモリ手段へのデータ書き込み側を選択するように前記一方側セレクタ手段を設定制御し、該２ポートメモリ手段からの読み出しデータを選択するように前記転送セレクタ手段を設定制御し、該２ポートメモリからの転送データを選択するように前記他方側セレクタ手段を設定制御し、該他方入出力側のクロック信号を選択するように前記読み出し用クロックセレクタ手段を設定制御し、該一方入出力側のクロック信号を選択するように前記書き込み用クロックセレクタ手段を設定制御し、該一方側制御手段からの書き込みアドレス信号を選択するように前記書き込み用アドレスセレクタ手段を設定制御し、かつ、該他方側制御手段からの読み出しアドレス信号を選択するように前記読み出し用アドレスセレクタ手段を設定制御して、該一方入出力側からのデータを該２ポートメモリ手段に書き込むと共に、該２ポートメモリ手段から該１ポートメモリ手段にデータを転送し、
該１ポートメモリ手段に転送されたデータが設定数になると、該１ポートメモリ手段と該２ポートメモリ手段間のデータ転送側から他方入出力側に該他方側セレクタ手段を設定制御して、該１ポートメモリ手段から読み出されたデータを該他方入出力側に転送し、
該１ポートメモリ手段内のデータが設定数以下になると、該他方入出力側へのデータ転送を中止して、該１ポートメモリ手段と該２ポートメモリ手段間のデータ転送側に該他方側セレクタ手段を設定制御する。
【００３３】
さらに、好ましくは、本発明のデータ転送装置において、前記一方側制御手段および前記他方側制御手段が前記他方入出力側から前記一方入出力側にデータ転送制御を行う場合には、前記２ポートメモリ手段から該一方入出力側へのデータ読み出し側を選択するように前記一方側セレクタ手段を設定制御し、該２ポートメモリへのデータ書き込み側を選択するように前記転送セレクタ手段を設定制御し、該他方入出力側を選択するように前記他方側セレクタ手段を設定制御し、該一方入出力側のクロック信号側を選択するように前記読み出し用クロックセレクタ手段を設定制御し、該他方入出力側のクロック信号側を選択するように前記書き込み用クロックセレクタ手段を設定制御し、該他方側制御手段からの書き込みアドレス信号側を選択するように前記書き込み用アドレスセレクタ手段を設定制御し、かつ、該一方側制御手段からの読み出しアドレス信号側を選択するように前記読み出し用アドレスセレクタ手段を設定制御して、該他方入出力側からのデータを該１ポートメモリ手段に書き込み、
該１ポートメモリ手段に書き込まれたデータが設定数になると、該他方入出力側からのデータ入力を中止して、該１ポートメモリ手段と該２ポートメモリ手段間のデータ転送側を選択するように該他方側セレクタ手段を設定制御し、該１ポートメモリ手段から該２ポートメモリ手段にデータ転送すると共に、該２ポートメモリ手段から読み出されたデータを該一方入出力側に転送し、
該２ポートメモリ手段において該１ポートメモリ手段から転送されたデータが設定数になると、該他方入出力側を選択するように該他方側セレクタ手段を設定制御する。
【００３４】
さらに、好ましくは、本発明のデータ転送装置における一または複数の１ポートメモリ手段が一つで、前記一または複数の２ポートメモリ手段が二つである。
【００３５】
さらに、好ましくは、本発明のデータ転送装置において、前記２ポートメモリ手段へのデータ書き込み側および該２ポートメモリ手段からのデータ読み出し側のいずれかを選択する一方側セレクタ手段と、前記他方入出力側のデータ、前記１ポートメモリ手段から該２ポートメモリ手段への転送データおよび、該２ポートメモリ手段から該１ポートメモリ手段への転送データのいずれかを選択して該１ポートメモリ手段に供給する他方側セレクタ手段とを有し、これらの各セレクタ手段は前記一方側制御手段および前記他方側制御手段のいずれかにより制御される。
【００３６】
さらに、好ましくは、本発明のデータ転送装置において、前記一方側制御手段および前記他方側制御手段が前記一方入出力側から前記他方入出力側にデータ転送制御を行う場合には、該一方入出力側から前記２ポートメモリ手段の一方へのデータ書き込み側を選択するように前記一方側セレクタ手段を設定制御し、かつ、該２ポートメモリ手段の一方から前記１ポートメモリ手段へのデータ転送側を選択するように前記他方側セレクタ手段を設定制御して、該一方入出力側からのデータを該２ポートメモリ手段の一方に書き込むと共に、該２ポートメモリ手段の一方から該１ポートメモリ手段にデータ転送し、
該１ポートメモリ手段に転送されたデータが設定数になると、該他方入出力側に選択するように該他方側セレクタ手段を設定制御して、該１ポートメモリ手段から読み出されたデータを該他方入出力側に転送し、
該１ポートメモリ手段内のデータが設定数以下になると、該他方入出力側へのデータ転送を中止して、該２ポートメモリ手段の一方から該１ポートメモリ手段へのデータ転送側を選択するように該他方側セレクタ手段を設定制御する。
【００３７】
さらに、好ましくは、本発明のデータ転送装置において、前記一方側制御手段および前記他方側制御手段が前記他方入出力側から前記一方入出力側にデータ転送制御を行う場合には、前記２ポートメモリ手段の他方から該一方入出力側へのデータ読み出し側を選択するように前記一方側セレクタ手段を設定制御し、かつ、該他方入出力側を選択するように前記他方側セレクタ手段を設定制御して、該他方入出力側からのデータを該１ポートメモリ手段に書き込み、
該１ポートメモリ手段に書き込まれたデータが設定数になると、該他方入出力側から該１ポートメモリ手段へのデータ入力を中止して、該１ポートメモリ手段から該２ポートメモリ手段の他方へのデータ転送側を選択するように該他方側セレクタ手段を設定制御し、該１ポートメモリ手段から該２ポートメモリ手段の他方にデータ転送すると共に、該２ポートメモリ手段の他方から読み出されたデータを該一方入出力側に転送し、
該２ポートメモリ手段の他方において、該１ポートメモリ手段から転送されたデータが設定数になると、該他方入出力側を選択して該１ポートメモリ手段に該他方入出力側のデータを入力するように該他方側セレクタ手段を設定制御する。
【００３８】
さらに、好ましくは、本発明のデータ転送装置における一または複数の１ポートメモリ手段が二つで、前記一または複数の２ポートメモリ手段が二つである。
【００３９】
さらに、好ましくは、本発明のデータ転送装置において、前記一方入出力側から前記２ポートメモリ手段の一方へのデータ書き込み側および該２ポートメモリ手段の他方から該一方入出力側へのデータ読み出し側のいずれかを選択する一方側セレクタ手段と、前記他方入出力側データの前記１ポートメモリ手段の一方および該他方入出力側データの該１ポートメモリ手段の他方のいずれかを選択する他方側セレクタ手段と、該１ポートメモリ手段の一方から該２ポートメモリ手段の他方へのデータ転送、該２ポートメモリの一方から該１ポートメモリの一方へのデータ転送、該１ポートメモリ手段の他方から該２ポートメモリ手段の他方へのデータ転送および該２ポートメモリ手段の一方から該１ポートメモリ手段の他方へのデータ転送のいずれかのデータ転送を選択する転送セレクタ手段とを有し、  これらの各セレクタ手段は前記一方側制御手段および前記他方側制御手段のいずれかにより制御される。
【００４０】
さらに、好ましくは、本発明のデータ転送装置において、前記一方側制御手段および前記他方側制御手段が前記一方入出力側から前記他方入出力側にデータ転送制御を行う場合には、該一方入出力側から前記２ポートメモリ手段の一方へのデータ書き込み側を選択するように前記一方側セレクタ手段を設定制御し、前記１ポートメモリ手段の他方または一方への該他方入出力側データの入出力を選択するように前記他方側セレクタ手段を設定制御し、該２ポートメモリの一方から該１ポートメモリ手段の一方または他方へのデータ転送を選択するように前記転送セレクタ手段を設定制御して、該一方入出力側からのデータを該２ポートメモリ手段の一方に書き込むと共に、該２ポートメモリ手段の一方から該１ポートメモリ手段の一方または他方に転送し、
該１ポートメモリ手段の一方または他方に転送されたデータが設定数になり、かつ、該１ポートメモリ手段の他方または一方が空である場合には、該１ポートメモリ手段の一方または他方への該他方入出力側のデータの入出力を選択するように該他方側セレクタ手段を設定制御し、かつ、該２ポートメモリ手段の一方から該１ポートメモリ手段の他方または一方へのデータ転送を選択するように該転送セレクタ手段を設定制御して、該１ポートメモリ手段の一方または他方から読み出されたデータを該他方入出力側に転送すると共に、該２ポートメモリ手段の一方から該１ポートメモリ手段の他方または一方にデータ転送をする。
【００４１】
さらに、好ましくは、本発明のデータ転送装置において、前記一方側制御手段および前記他方側制御手段が前記他方入出力側から前記一方入出力側にデータ転送制御を行う場合には、 前記２ポートメモリ手段の他方から該一方入出力側へのデータ読み出し側を選択するように前記一方側セレクタ手段を設定制御し、前記１ポートメモリ手段の一方または他方への該他方入出力側からのデータの入出力を選択するように前記他方側セレクタ手段を設定制御し、かつ、該１ポートメモリ手段の他方または一方から該２ポートメモリ手段の他方へのデータ転送側を選択するように前記転送セレクタ手段を設定制御して、該他方入出力側からのデータを該１ポートメモリ手段の一方または他方に書き込み、
該１ポートメモリ手段の一方または他方に書き込まれたデータが設定数になり、かつ、該１ポートメモリ手段の他方または一方が空である場合には、該１ポートメモリ手段の他方または一方への該他方入出力側のデータの入出力を選択するように該他方側セレクタ手段を設定制御し、かつ、該１ポートメモリ手段の一方または他方から該２ポートメモリ手段の他方へのデータ転送側を選択するように該転送セレクタ手段を設定制御して、該他方入出力側からのデータを該１ポートメモリ手段の他方または一方に書き込むと共に、該１ポートメモリ手段の一方または他方から該２ポートメモリ手段の他方にデータを転送して、該２ポートメモリ手段の他方から読み出されたデータを該一方入出力側に転送する。
【００４２】
さらに、好ましくは、本発明のデータ転送装置における一方側制御手段は少なくとも前記一方側のクロック信号のタイミングで動作し、前記他方側制御手段および前記二つの１ポートメモリ手段は前記他方側のクロック信号のタイミングで動作し、前記二つの２ポートメモリ手段は該一方側および他方側のクロック信号のタイミングで動作する。
【００４３】
本発明の電子情報装置は、請求項１〜１９の何れかに記載のデータ転送装置と、前記一方入出力側である情報処理システムと、前記他方入出力側である外部装置とを有し、該情報処理システムと該外部装置間で該データ転送装置により双方向で非同期にデータ送信可能とするものであり、そのことにより上記目的が達成される。
【００４４】
上記構成により、以下に、本発明の作用を説明する。
【００４５】
本発明にあっては、非同期かつ双方向にデータ転送を行うデータ転送装置において、２ポートメモリ手段と、１ポートメモリ手段（シングルポートメモリ）を組合わせることによって、回路規模が大きい２ポートメモリ手段を用いた従来技術に比べて、回路規模を抑えて製造コストを低廉価化させることが可能となる。
【００４６】
例えば、メモリブロックサイズが小さい側（一方入出力側；Ａ側とする）のデータを一時蓄積する２ポートメモリ手段と、ブロックサイズが大きい側（他方入出力側；Ｂ側とする）のデータを一時蓄積する１ポートメモリ手段と、一方Ａ側のデータＤＡの２ポートメモリ手段への入出力を制御する一方側制御回路Ａ（一方側制御手段）と、他方Ｂ側のデータＤＢの１ポートメモリ手段への入出力および１ポートメモリ手段と２ポートメモリ手段との間のデータ転送を制御する他方側制御回路Ｂ（他方側制御手段）とを用いて、一方Ａ側から他方Ｂ側にデータ転送を行う場合には、一方Ａ側から２ポートメモリ手段にデータ書き込みを行って、２ポートメモリ手段と１ポートメモリ手段との間でデータ転送を行い、他方Ｂ側から１ポートメモリ手段のデータ読み出しを行う。また、他方Ｂ側から一方Ａ側にデータ転送を行う場合には、他方Ｂ側から１ポートメモリ手段にデータ書き込みを行って、１ポートメモリ手段と２ポートメモリ手段との間でデータ転送を行い、一方Ａ側から２ポートメモリ手段のデータ読み出しを行う。
【００４７】
例えば、一つの１ポートメモリ手段と一つの２ポートメモリ手段とを用いることにより、回路規模を抑えることができる。
【００４８】
また、一つの１ポートメモリと２つの２ポートメモリとを用いることにより、回路規模を抑えると共に、２ポートメモリに対するクロック信号、データおよび制御信号の切り替えが不要になり、制御が容易になる。
【００４９】
さらに、二つの１ポートメモリ手段と二つの２ポートメモリ手段とを用いることにより、回路規模を抑えると共に、２ポートメモリ手段に対するクロック信号、データおよび制御信号の切り替えが不要になり、制御が容易になる。さらに、一方の１ポートメモリ手段と２ポートメモリ手段との間でデータ転送を行っている間に他方の１ポートメモリ手段と他方Ｂ側との間でデータ転送を行うことが可能となり、データ転送効率を向上することが可能となる。
【発明の効果】
【００５０】
以上により、本発明によれば、両者の動作クロック、データ転送速度および取り扱うデータ単位（ブロック）などが異なるシステムと装置などの間でデータ転送を行う場合に、回路規模が大きい２ポートメモリ手段だけでなく、１ポートメモリ手段を組み合わせることによって、回路規模を抑え、さらに、容易に制御を行って、非同期かつ双方向にデータ転送を行うことができる。
【発明を実施するための最良の形態】
【００５１】
以下に、本発明のデータ転送装置の実施形態１〜３およびこれを用いた電子情報装置の実施形態４について、図面を参照しながら詳細に説明する。
（実施形態１）
本実施形態１では、一つの１ポートメモリと一つの２ポートメモリとを有する場合について説明する。
【００５２】
図１は、本発明の実施形態１に係るデータ転送装置の構成例を示す回路図である。
【００５３】
図１において、本実施形態１のデータ転送装置１０Ａは、一方側（Ａ側とする）のデータＤＡを一時蓄積する２ポートメモリ手段としての２ポートＲＡＭと、他方側（Ｂ側とする）のデータＤＢを一時蓄積する１ポートメモリ手段としての１ポートＲＡＭと、Ａ側のデータＤＡの２ポートＲＡＭへの入出力を制御する一方側制御手段としての一方側制御回路Ａと、Ｂ側のデータＤＢの１ポートＲＡＭへの入出力および１ポートＲＡＭと２ポートＲＡＭとの間のデータ転送を制御する他方側制御手段としての他方側制御回路Ｂとを有している。
【００５４】
例えば１ポートＲＡＭは、データ転送が低速でブロックサイズが大きい側のデータを一時蓄積し、２ポートＲＡＭは、データ転送が高速でブロックサイズが小さい側のデータを一時蓄積する。
【００５５】
また、データ転送装置１０Ａは、Ａ側から２ポートＲＡＭへのデータ書き込みＷＤおよび２ポートＲＡＭからＡ側へのデータ読み出しＲＤのいずれか一方を選択する一方側セレクタＤＡと、２ポートＲＡＭからの読み出しデータＲＤの転送および転送データの２ポートＲＡＭへのデータ書き込みＷＤのいずれか一方を選択する転送セレクタＤＤと、Ｂ側のデータの１ポートＲＡＭへの入出力ＤＢおよび１ポートＲＡＭと２ポートＲＡＭとの間のデータ転送ＤＤのいずれか一方を選択する他方側セレクタＤＢとを有している。
【００５６】
さらに、データ転送装置１０Ａは、Ａ側のクロック信号ＣＬＫＡおよびＢ側のクロック信号ＣＬＫＢのいずれか一方を選択して２ポートＲＡＭの読み出し用クロック信号端子ＲＣＬＫに供給する読み出し用クロックセレクタＲＣと、Ａ側のクロック信号ＣＬＫＡおよびＢ側のクロック信号ＣＬＫＢのいずれか一方を選択して２ポートＲＡＭの書き込み用クロック信号端子ＷＣＬＫに供給する書き込み用クロックセレクタＷＣとを有している。
【００５７】
さらに、データ転送装置１０Ａは、制御回路Ａからの書き込みアドレス信号ＷＡＤＡおよび制御回路Ｂからの書き込みアドレス信号ＷＡＤＢのいずれか一方を選択して２ポートＲＡＭの書き込み用アドレス信号端子ＷＡに供給する書き込み用アドレスセレクタＷＡと、制御回路Ａからの読み出しアドレス信号ＲＡＤＡおよび制御回路Ｂからの読み出しアドレス信号ＲＡＤＢのいずれか一方を選択して２ポートＲＡＭの読み出し用アドレス信号端子ＲＡに供給する書き込み用アドレスセレクタＲＡとを有している。
【００５８】
上記構成により、以下に、本実施形態１のデータ転送装置１０Ａの動作について説明する。
【００５９】
このデータ転送装置１０Ａにおいて、Ａ側からＢ側にデータ転送を行う場合には、Ａ側から２ポートＲＡＭにデータ書き込みを行って、２ポートＲＡＭと１ポートＲＡＭとの間でデータ転送を行い、Ｂ側から１ポートＲＡＭのデータ読み出しを行う。
【００６０】
また、Ｂ側からＡ側にデータ転送を行う場合には、Ｂ側から１ポートＲＡＭにデータ書き込みを行って、１ポートＲＡＭと２ポートＲＡＭとの間でデータ転送を行い、Ａ側から２ポートＲＡＭのデータ読み出しを行う。
【００６１】
このとき、制御回路ＡはＡ側のクロック信号ＣＬＫＡのタイミングで動作し、制御回路Ｂおよび１ポートＲＡＭはＢ側のクロック信号ＣＬＫＢのタイミングで動作し、２ポートＲＡＭはセレクタＲＣおよびＷＣによって両方のクロック信号が切り替えられて、そのクロック信号のタイミングで動作する。
【００６２】
以下に、データ転送装置１０Ａの更に具体的な動作について説明する。
【００６３】
まず、Ａ側からデータを書き込んでＢ側からデータを読み出す場合について説明する。
【００６４】
（１）各セレクタによって選択される信号を以下のように設定する。
【００６５】
セレクタＤＡ：ＷＤ（Ａ側から２ポートＲＡＭへのデータ書き込み）
セレクタＤＤ：ＲＤ（２ポートＲＡＭからの読み出しデータの転送）
セレクタＷＣ：ＣＬＫＡ（Ａ側のクロック信号ＣＬＫＡ）
セレクタＲＣ：ＣＬＫＢ（Ｂ側のクロック信号ＣＬＫＢ）
セレクタＤＢ：ＤＤ（１ポートＲＡＭと２ポートＲＡＭとの間のデータ転送）
セレクタＷＡ：ＷＡＤＡ（制御回路Ａからの書き込みアドレス信号）
セレクタＲＡ：ＲＡＤＢ（制御回路Ｂからの読み出しアドレス信号）
（２）制御信号Ｂのデータ読み出し要求信号が活性状態である間、以下の（３）〜（６）の動作を繰り返して実行する。
【００６６】
（３）制御回路Ｂは、制御回路Ａに対して、データ読み出し要求信号を活性状態にする。制御回路Ｂからのデータ読み出し要求信号が活性状態である間、以下の（４）〜（５）の動作を繰り返して実行する。
【００６７】
（４）制御回路Ａは、制御信号Ａのデータ書き込み要求信号を活性状態にして、Ａ側からセレクタＤＡを通して供給されるデータＤＡを書き込み用ポートＷＤから２ポートＲＡＭに書き込む。このとき、制御回路Ａは、２ポートＲＡＭがＦＩＦＯとして動作するように適切な書き込み用アドレス信号ＷＡＤＡを生成する。アドレス信号ＷＡＤＡは、セレクタＷＡを通して２ポートＲＡＭの書き込み用アドレス信号端子ＷＡに供給される。同時に、制御回路Ａは、制御回路Ｂに対して、データ転送要求信号を活性状態にする。
【００６８】
（５）制御回路Ａからの転送要求信号が活性状態である間、制御回路Ｂは、２ポートＲＡＭの読み出し用ポートＲＤから読み出されたデータをセレクタＤＤおよびセレクタＤＢを通して１ポートＲＡＭへ転送して書き込む。このとき、制御回路Ｂは、１ポートＲＡＭおよび２ポートＲＡＭがＦＩＦＯとして動作するように適切な書き込み用アドレス信号ＡＤＢおよび読み出し用アドレス信号ＲＡＤＢを生成する。アドレス信号ＡＤＢは、１ポートＲＡＭのアドレス信号端子に供給され、アドレス信号ＲＡＤＢは、セレクタＲＡを通して２ポートＲＡＭの読み出し用アドレス信号端子ＲＡに供給される。
【００６９】
（６）１ポートＲＡＭに転送されたデータ数が設定された数になったら、制御回路Ｂは、データ読み出し要求信号を不活性状態にする。制御回路Ｂは、セレクタＤＢをＤＢ（Ｂ側のデータの１ポートＲＡＭへの入出力）を選択するように設定して、１ポートＲＡＭ内のデータをセレクタＤＢを通してＢ側に転送する。このとき、制御回路Ｂは、１ポートＲＡＭがＦＩＦＯとして動作するように適切な読み出し用アドレス信号ＡＤＢを生成する。アドレス信号ＡＤＢは１ポートＲＡＭのアドレス信号端子に供給される。
【００７０】
１ポートＲＡＭ内のデータが設定されたデータ数以下になると、Ｂ側へのデータ転送を中止して、セレクタＤＢをＤＤ（１ポートＲＡＭと２ポートＲＡＭとの間のデータ転送）を選択するように設定する。
【００７１】
次に、Ｂ側からデータを書き込んでＡ側からデータを読み出す場合について説明する。
（１）各セレクタによって選択される信号を以下のように設定する。
【００７２】
セレクタＤＡ：ＲＤ（２ポートＲＡＭからＡ側へのデータ読み出し）
セレクタＤＤ：ＷＤ（転送データの２ポートＲＡＭへのデータ書き込み）
セレクタＷＣ：ＣＬＫＢ（Ｂ側のクロック信号ＣＬＫＢ）
セレクタＲＣ：ＣＬＫＡ（Ａ側のクロック信号）
セレクタＤＢ：ＤＢ（Ｂ側のデータの１ポートＲＡＭへの入出力）
セレクタＷＡ：ＷＡＤＢ（制御回路Ｂからの書き込みアドレス信号）
セレクタＲＡ：ＲＡＤＡ（制御回路Ａからの読み出しアドレス信号）
（２）制御信号Ｂのデータ読み出し要求信号が活性状態である間、以下の（３）〜（６）の動作を繰り返して実行する。
【００７３】
（３）制御回路Ｂは、Ｂ側からセレクタＤＢを通して供給されるデータＤＢを１ポートＲＡＭに書き込む。このとき、制御回路Ｂは、１ポートＲＡＭがＦＩＦＯとして動作するように適切な書き込み用アドレス信号ＡＤＢを生成する。アドレス信号ＡＦＢは、１ポートＲＡＭのアドレス信号端子に供給される。
【００７４】
（４）Ｂ側から１ポートＲＡＭに書き込まれたデータが設定数になると、制御回路Ｂは、Ｂ側からのデータ入力を停止する。制御回路Ｂは、セレクタＤＢをＤＤ（１ポートＲＡＭと２ポートＲＡＭとの間のデータ転送）を選択するように設定して、１ポートＲＡＭから読み出されたデータをセレクタＤＤを通して２ポートＲＡＭに転送し、書き込み用ポートＷＤから２ポートＲＡＭに書き込む。このとき、制御回路Ｂは、１ポートＲＡＭおよび２ポートＲＡＭがＦＩＦＯとして動作するように適切な読み出し用アドレス信号ＡＤＢおよび書き込み用アドレス信号ＷＡＤＢを生成する。アドレス信号ＡＤＢは、１ポートＲＡＭのアドレス信号端子に供給され、アドレス信号ＷＡＤＢは、セレクタＷＡを通して２ポートＲＡＭの書き込み用アドレス信号端子ＷＡに供給される。同時に、制御回路Ｂは、制御回路Ａに対して、データ書き込み要求信号を活性状態にする。制御回路Ｂからのデータ書き込み要求信号が活性状態である間、以下の（５）の動作を繰り返して行う。
【００７５】
（５）制御回路Ａは、制御信号Ａのデータ読み出し要求信号を活性状態にして、２ポートＲＡＭの読み出しポートＲＤから読み出されたデータをセレクタＤＡを通してＡ側に転送する。このとき、制御回路Ａは、２ポートＲＡＭがＦＩＦＯとして動作するように適切な読み出し用アドレス信号ＲＡＤＡを生成する。アドレス信号ＲＡＤＡは、セレクタＲＡを通して２ポートＲＡＭの読み出し用アドレス信号端子ＲＡに供給される。
【００７６】
（６）１ポートＲＡＭから転送されたデータ数が設定された数になると、制御回路Ｂは、データ書き込み要求信号を不活性状態にして、セレクタＤＢをＤＢ（Ｂ側のデータの１ポートＲＡＭへの入出力）を選択するように設定する。
【００７７】
以上のように、本実施形態１によれば、Ｂ側のデータを一時蓄積する一つの１ポートＲＡＭとＡ側のデータを一時蓄積する一つの２ポートＲＡＭとを組合わせることによって、回路規模が大きい２ポートメモリを用いた従来技術に比べて、回路規模を抑えて製造コストを低廉価化させることができる。
【００７８】
また、制御回路Ｂおよび１ポートＲＡＭはＢ側のクロック信号ＣＬＫＢで動作し、制御回路ＡはＡ側のクロック信号ＣＬＫＡで動作し、２ポートＲＡＭは両方のクロック信号を切り替えて動作させることができるため、Ａ側から１ポートＲＡＭへのデータ入出力はＡ側の動作クロック信号およびデータ転送速度に応じて行い、Ｂ側から２ポートＲＡＭへのデータ入出力はＢ側の動作クロック信号およびデータ転送速度に応じて行うことができる。
【００７９】
なお、本実施形態１では、２ポートＲＡＭに対してクロック信号、データおよび制御信号を切り替える必要があるため、以下の実施形態２および実施形態３の方がタイミング設計が容易である。
【００８０】
（実施形態２）
本実施形態２では、一つの１ポートメモリと二つの２ポートメモリとを有する場合について説明する。
【００８１】
図２は、本発明の実施形態２に係るデータ転送装置の構成例を示す回路図である。
【００８２】
図２において、本実施形態２のデータ転送装置１０Ｂは、一方側（Ａ側とする）のデータＤＡを一時蓄積する２ポートメモリとしての二つの２ポートＲＡＭ−１および２ポートＲＡＭ−２と、他方側（Ｂ側とする）のデータＤＢを一時蓄積する１ポートメモリとしての１ポートＲＡＭと、Ａ側のデータＤＡの２ポートＲＡＭへの入出力を制御する一方側制御回路Ａと、Ｂ側のデータＤＢの１ポートＲＡＭへの入出力および１ポートＲＡＭと２ポートＲＡＭとの間のデータ転送を制御する他方側制御回路Ｂとを有している。
【００８３】
例えば１ポートＲＡＭは、データ転送が低速でブロックサイズが大きい側のデータを一時蓄積し、２ポートＲＡＭ−１および２ポートＲＡＭ−２は、データ転送が高速でブロックサイズが小さい側のデータを一時蓄積する。
【００８４】
また、データ転送装置１０Ｂは、Ａ側から２ポートＲＡＭ−１へのデータ書き込みＷＤ１および２ポートＲＡＭ−２からＡ側へのデータ読み出しＲＤ２のいずれか一方を選択する一方側セレクタＤＡと、Ｂ側のデータの１ポートメモリへの入出力、１ポートＲＡＭから２ポートＲＡＭ−２へのデータ転送および２ポートＲＡＭ−１から１ポートＲＡＭへのデータ転送のいずれか一つを選択する他方側セレクタＤＢとを有している。
【００８５】
上記構成により、以下に、本実施形態２のデータ転送装置１０Ｂの動作について説明する。
【００８６】
このデータ転送装置１０Ｂにおいて、Ａ側からＢ側にデータ転送を行う場合には、Ａ側から２ポートＲＡＭ−１にデータ書き込みを行って、２ポートＲＡＭ−１と１ポートＲＡＭとの間でデータ転送を行い、Ｂ側から１ポートＲＡＭのデータ読み出しを行う。
【００８７】
また、Ｂ側からＡ側にデータ転送を行う場合には、Ｂ側から１ポートＲＡＭにデータ書き込みを行って、１ポートＲＡＭと２ポートＲＡＭ−２との間でデータ転送を行い、Ａ側から２ポートＲＡＭ−２のデータ読み出しを行う。
【００８８】
このとき、制御回路ＡはＡ側のクロック信号ＣＬＫＡのタイミングで動作し、制御回路Ｂおよび１ポートＲＡＭはＢ側のクロック信号ＣＬＫＢのタイミングで動作する。また、２ポートＲＡＭ−１の書き込み動作および２ポートＲＡＭ−２の読み出し動作はＡ側のクロック信号ＣＬＫＡのタイミングで行われ、２ポートＲＡＭ−１の読み出し動作および２ポートＲＡＭ−２の書き込み動作はＢ側のクロック信号ＣＬＫＢのタイミングで行われる。
【００８９】
以下に、データ転送装置１０Ｂの更に具体的な動作について説明する。
【００９０】
まず、Ａ側からデータを書き込んでＢ側からデータを読み出す場合について説明する。
【００９１】
（１）各セレクタによって選択される信号を以下のように設定する。
【００９２】
セレクタＤＡ：ＷＤ１（Ａ側から２ポートＲＡＭ−１へのデータ書き込み）
セレクタＤＢ：ＲＤ１（２ポートＲＡＭ−１から１ポートＲＡＭへのデータ転送）
（２）制御信号Ｂのデータ読み出し要求信号が活性状態である間、以下の（３）〜（６）の動作を繰り返して実行する。
【００９３】
（３）制御回路Ｂは、制御回路Ａに対して、データ読み出し要求信号を活性状態にする。制御回路Ｂからのデータ読み出し要求信号が活性状態である間、以下の（４）〜（５）の動作を繰り返して実行する。
【００９４】
（４）制御回路Ａは、制御信号Ａのデータ書き込み要求信号を活性状態にして、Ａ側からセレクタＤＡを通して供給されるデータＤＡを書き込み用ポートＷＤ１から２ポートＲＡＭ−１に書き込む。このとき、制御回路Ａは、２ポートＲＡＭ−１がＦＩＦＯとして動作するように適切な書き込み用アドレス信号ＡＤＡを生成する。アドレス信号ＡＤＡは、２ポートＲＡＭ−１の書き込み用アドレス信号端子ＷＡ１に供給される。これと同時に、制御回路Ａは、制御回路Ｂに対して、データ転送要求信号を活性状態にする。
【００９５】
（５）制御回路Ａからの転送要求信号が活性状態である間、制御回路Ｂは、２ポートＲＡＭ−１の読み出し用ポートＲＤ１から読み出されたデータをセレクタＤＢを通して１ポートＲＡＭへ転送して書き込む。このとき、制御回路Ｂは、１ポートＲＡＭおよび２ポートＲＡＭ−１がＦＩＦＯとして動作するように適切な書き込み用アドレス信号ＡＤＢ１および読み出し用アドレス信号ＡＤＢ２を生成する。アドレス信号ＡＤＢ１は、１ポートＲＡＭのアドレス信号端子に供給され、アドレス信号ＡＤＢ２は、２ポートＲＡＭ−１の読み出し用アドレス信号端子ＲＡ１に供給される。
【００９６】
（６）１ポートＲＡＭに転送されたデータ数が設定された数になったら、制御回路Ｂは、データ読み出し要求信号を不活性状態にする。制御回路Ｂは、セレクタＤＢをＤＢ（Ｂ側のデータの１ポートＲＡＭへの入出力）を選択するように設定して、１ポートＲＡＭ内のデータをセレクタＤＢを通してＢ側に転送する。このとき、制御回路Ｂは、１ポートＲＡＭがＦＩＦＯとして動作するように適切な読み出し用アドレス信号ＡＤＢ１を生成する。アドレス信号ＡＤＢ１は、１ポートＲＡＭのアドレス信号端子に供給される。
【００９７】
１ポートＲＡＭ内のデータが設定されたデータ数以下になると、Ｂ側へのデータ転送を中止して、セレクタＤＢをＲＤ１（２ポートＲＡＭ−１から１ポートＲＡＭへのデータ転送）を選択するように設定する。
【００９８】
次に、Ｂ側からデータを書き込んでＡ側からデータを読み出す場合について説明する。
（１）各セレクタによって選択される信号を以下のように設定する。
【００９９】
セレクタＤＡ：ＲＤ２（２ポートＲＡＭ−２からＡ側へのデータ読み出し）
セレクタＤＢ：ＤＢ（Ｂ側のデータの１ポートＲＡＭへの入出力）
（２）制御信号Ｂのデータ読み出し要求信号が活性状態である間、以下の（３）〜（６）の動作を繰り返して実行する。
【０１００】
（３）制御回路Ｂは、Ｂ側からセレクタＤＢを通して供給されるデータＤＢを１ポートＲＡＭに書き込む。このとき、制御回路Ｂは、１ポートＲＡＭがＦＩＦＯとして動作するように適切な書き込み用アドレス信号ＡＤＢ１を生成する。アドレス信号ＡＤＢ１は、１ポートＲＡＭのアドレス信号端子に供給される。
【０１０１】
（４）Ｂ側から１ポートＲＡＭに書き込まれたデータが設定数以上になると、制御回路Ｂは、Ｂ側からのデータ入力を停止する。制御回路Ｂは、セレクタＤＢをＷＤ２（１ポートＲＡＭから２ポートＲＡＭ−２へのデータ転送）を選択するように設定して、１ポートＲＡＭから読み出されたデータをセレクタＤＢを通して２ポートＲＡＭ−２に転送し、書き込み用ポートＷＤ２から２ポートＲＡＭ−２に書き込む。このとき、制御回路Ｂは、１ポートＲＡＭおよび２ポートＲＡＭ−２がＦＩＦＯとして動作するように適切な読み出し用アドレス信号ＡＤＢ１および書き込み用アドレス信号ＡＤＢ２を生成する。アドレス信号ＡＤＢ１は、１ポートＲＡＭのアドレス信号端子に供給され、アドレス信号ＡＤＢ２は、２ポートＲＡＭ−２の書き込み用アドレス信号端子ＷＡ２に供給される。同時に、制御回路Ｂは、制御回路Ａに対して、データ書き込み要求信号を活性状態にする。制御回路Ｂからのデータ書き込み要求信号が活性状態である間、以下の（５）の動作を繰り返して行う。
【０１０２】
（５）制御回路Ａは、制御信号Ａのデータ読み出し要求信号を活性状態にして、２ポートＲＡＭ−２の読み出しポートＲＤ２から読み出されたデータをセレクタＤＡを通してＡ側に転送する。このとき、制御回路Ａは、２ポートＲＡＭ−２がＦＩＦＯとして動作するように適切な読み出し用アドレス信号ＡＤＡを生成する。アドレス信号ＡＤＡは、２ポートＲＡＭ−２の読み出し用アドレス信号端子ＲＡ２に供給される。
【０１０３】
（６）１ポートＲＡＭから転送されたデータ数が設定された数になると、制御回路Ｂは、データ書き込み要求信号を不活性状態にして、セレクタＤＢをＤＢ（Ｂ側のデータの１ポートＲＡＭへの入出力）を選択するように設定する。
【０１０４】
以上のように、本実施形態によれば、Ｂ側のデータを一時蓄積する一つの１ポートＲＡＭとＡ側のデータを一時蓄積する二つの２ポートＲＡＭ−１および２ポートＲＡＭ−２とを組合わせることによって、回路規模が大きい２ポートメモリを用いた従来技術に比べて、回路規模を抑えて製造コストを低廉価化させることができる。
【０１０５】
また、制御回路Ｂおよび１ポートＲＡＭはＢ側のクロック信号ＣＬＫＢで動作し、制御回路ＡはＡ側のクロック信号ＣＬＫＡで動作し、２ポートＲＡＭ−１の書き込み動作および２ポートＲＡＭ−２の読み出し動作はＡ側のクロック信号ＣＬＫＡのタイミングで行われ、２ポートＲＡＭ−１の読み出し動作および２ポートＲＡＭ−２の書き込み動作はＢ側のクロック信号ＣＬＫＢのタイミングで行われるため、Ａ側から１ポートＲＡＭへのデータ入出力はＡ側の動作クロック信号およびデータ転送速度に応じて行い、Ｂ側から２ポートＲＡＭへのデータ入出力はＢ側の動作クロック信号およびデータ転送速度に応じて行うことができる。
【０１０６】
さらに、本実施形態２では、２ポートＲＡＭ−１および２ポートＲＡＭ−２に対してクロック信号、データおよび制御信号を切り替える必要がないため、上記実施形態１に比べて制御が複雑化せず、タイミング設計が容易ある。
【０１０７】
（実施形態３）
本実施形態３では、二つの１ポートメモリと二つの２ポートメモリとを有する場合について説明する。
【０１０８】
図３は、本発明の実施形態３に係るデータ転送装置の構成例を示す回路図である。
【０１０９】
図３において、本実施形態３のデータ転送装置１０Ｃは、一方側（Ａ側とする）のデータＤＡを一時蓄積する２ポートメモリとしての二つの２ポートＲＡＭ−１および２ポートＲＡＭ−２と、他方側（Ｂ側とする）のデータＤＢを一時蓄積する１ポートメモリとしての二つの１ポートＲＡＭ−１および１ポートＲＡＭ−２と、Ａ側のデータＤＡの２ポートＲＡＭへの入出力を制御する一方側制御回路Ａと、Ｂ側のデータＤＢの１ポートＲＡＭへの入出力および１ポートＲＡＭと２ポートＲＡＭとの間のデータ転送を制御する他方側制御回路Ｂとを有している。
【０１１０】
例えば、１ポートＲＡＭ−１および１ポートＲＡＭ−２は、データ転送が低速でブロックサイズが大きい側のデータを一時蓄積し、２ポートＲＡＭ−１および２ポートＲＡＭ−２は、データ転送が高速でブロックサイズが小さい側のデータを一時蓄積する。
【０１１１】
また、データ転送装置１０Ｃは、Ａ側から２ポートＲＡＭ−１へのデータ書き込みＷＤ１および２ポートＲＡＭ−２からＡ側へのデータ読み出しＲＤ２のいずれか一方を選択する一方側セレクタＤＡと、Ｂ側のデータの１ポートＲＡＭ−１への入出力およびＢ側のデータの１ポートＲＡＭ−２への入出力のいずれか一方を選択する他方側セレクタＤＢと、１ポートＲＡＭ−１から２ポートＲＡＭ−２へのデータ転送、１ポートＲＡＭ−２から２ポートＲＡＭ−２へのデータ転送、２ポートＲＡＭ−１から１ポートＲＡＭ−１へのデータ転送、および２ポートＲＡＭ−１から１ポートＲＡＭ−２へのデータ転送のいずれか一つを選択する他方側セレクタＤＤとを有している。
【０１１２】
上記構成により、以下に、本実施形態３のデータ転送装置１０Ｃの動作について説明する。
【０１１３】
このデータ転送装置１０Ｃにおいて、Ａ側からＢ側にデータ転送を行う場合には、Ａ側から２ポートＲＡＭ−１にデータ書き込みを行って、２ポートＲＡＭ−１と１ポートＲＡＭ−１または１ポートＲＡＭ−２との間でデータ転送を行い、Ｂ側から１ポートＲＡＭ−１または１ポートＲＡＭ−２のデータ読み出しを行う。
【０１１４】
また、Ｂ側からＡ側にデータ転送を行う場合には、Ｂ側から１ポートＲＡＭ−１または１ポートＲＡＭ−２にデータ書き込みを行って、１ポートＲＡＭ−１または１ポートＲＡＭ−２と２ポートＲＡＭ−２との間でデータ転送を行い、Ａ側から２ポートＲＡＭ−２のデータ読み出しを行う。
【０１１５】
このとき、制御回路ＡはＡ側のクロック信号ＣＬＫＡのタイミングで動作し、制御回路Ｂおよび１ポートＲＡＭ−１および１ポートＲＡＭ−２はＢ側のクロック信号ＣＬＫＢのタイミングで動作する。また、２ポートＲＡＭ−１の書き込み動作および２ポートＲＡＭ−２の読み出し動作はＡ側のクロック信号ＣＬＫＡのタイミングで行われ、２ポートＲＡＭ−１の読み出し動作および２ポートＲＡＭ−２の書き込み動作はＢ側のクロック信号ＣＬＫＢのタイミングで行われる。
【０１１６】
以下に、データ転送装置１０Ｃの更に具体的な動作について説明する。
【０１１７】
まず、Ａ側からデータを書き込んでＢ側からデータを読み出す場合について説明する。
【０１１８】
（１）各セレクタによって選択される信号を以下のように設定する。
【０１１９】
セレクタＤＡ：ＷＤ１（Ａ側から２ポートＲＡＭ−１へのデータ書き込み）
セレクタＤＢ：ＤＢ２（ＤＢ１）（Ｂ側のデータの1ポートＲＡＭ−２（または１ポートＲＡＭ−１）への入出力）
セレクタＤＢ：ＲＤ１、ＤＢ１（ＤＢ２）（２ポートＲＡＭ−１から１ポートＲＡＭ−１（または１ポートＲＡＭ−２）へのデータ転送）
（２）制御信号Ｂのデータ読み出し要求信号が活性状態である間、以下の（３）〜（６）の動作を繰り返して実行する。
【０１２０】
（３）制御回路Ｂは、制御回路Ａに対して、データ読み出し要求信号を活性状態にする。制御回路Ｂからのデータ読み出し要求信号が活性状態である間、以下の（４）〜（５）の動作を繰り返して実行する。
【０１２１】
（４）制御回路Ａは、制御信号Ａのデータ書き込み要求信号を活性状態にして、Ａ側からセレクタＤＡを通して供給されるデータＤＡを書き込み用ポートＷＤ１から２ポートＲＡＭ−１に書き込む。このとき、制御回路Ａは、２ポートＲＡＭ−１がＦＩＦＯとして動作するように適切な書き込み用アドレス信号ＡＤＡを生成する。アドレス信号ＡＤＡは、２ポートＲＡＭ−１の書き込み用アドレス信号端子ＷＡ１に供給される。同時に、制御回路Ａは、制御回路Ｂに対して、データ転送要求信号を活性状態にする。
【０１２２】
（５）制御回路Ａからの転送要求信号が活性状態である間、制御回路Ｂは、２ポートＲＡＭ−１の読み出し用ポートＲＤ１から読み出されたデータをセレクタＤＢを通して１ポートＲＡＭ−１（または１ポートＲＡＭ−２）へ転送してポートＤＢ１（またはポートＤＢ２）へ書き込む。
【０１２３】
（６）１ポートＲＡＭ−１（または１ポートＲＡＭ−２）に転送されたデータ数が設定された数になり、かつ、１ポートＲＡＭ−２（または１ポートＲＡＭ−１）が空である場合には、制御回路Ｂは、セレクタＤＢをＤＢ１（Ｂ側のデータの１ポートメモリ−１への入出力）（またはＤＢ２（Ｂ側のデータの1ポートメモリ−２への入出力））を選択するように設定し、セレクタＤＤをＲＤ１、ＤＢ２（２ポートメモリ−１から１ポートメモリ−２へのデータ転送）（またはＤＢ１（２ポートメモリ−１から１ポートメモリ−１へのデータ転送））を選択するように設定して、１ポートＲＡＭ−１のポートＤＢ１（または１ポートＲＡＭ−２のポートＤＢ２）から読み出されたデータをセレクタＤＢを通してＢ側に転送すると共に、２ポートＲＡＭ−１の読み出し用ポートＲＤ１から読み出されたデータをセレクタＤＢを通して１ポートＲＡＭ−２（または１ポートＲＡＭ−１）へ転送してポートＤＢ２（またはポートＤＢ１）へ書き込む。このとき、制御回路Ｂは、１ポートＲＡＭ−２（または１ポートＲＡＭ−１）および２ポートＲＡＭ−１がＦＩＦＯとして動作するように適切な書き込み用アドレス信号ＡＤＢ１および読み出し用アドレス信号ＡＤＢ２を生成する。アドレス信号ＡＤＢ１は、１ポートＲＡＭ−２（または１ポートＲＡＭ−1）のアドレス信号端子に供給され、アドレス信号ＡＤＢ２は、２ポートＲＡＭ−１の読み出し用アドレス信号端子ＲＡ１に供給される。
【０１２４】
１ポートＲＡＭ−１（または１ポートＲＡＭ−２）内のデータがなくなると、制御回路Ｂは、データ転送を停止する。
【０１２５】
上記（５）および（６）において、１ポートＲＡＭ−１と１ポートＲＡＭ−２、およびセレクタＤＢの選択信号ＤＢ１とＤＢ２の切り替えは、交互に行われる。
【０１２６】
次に、Ｂ側からデータを書き込んでＡ側からデータを読み出す場合について説明する。
（１）各セレクタによって選択される信号を以下のように設定する。
【０１２７】
セレクタＤＡ：ＲＤ２（２ポートＲＡＭ−２からＡ側へのデータ読み出し）
セレクタＤＢ：ＤＢ１（ＤＢ２）（Ｂ側のデータの１ポートＲＡＭ−１（または１ポートＲＡＭ−２）への入出力））
セレクタＤＤ：ＷＤ２、ＤＢ２（ＤＢ１）（１ポートＲＡＭ−２（または１ポートＲＡＭ−１）から２ポートＲＡＭ−２へのデータ転送）
（２）制御信号Ｂのデータ読み出し要求信号が活性状態である間、以下の（３）〜（６）の動作を繰り返して実行する。
【０１２８】
（３）制御回路Ｂは、Ｂ側からセレクタＤＢを通して供給されるデータＤＢを１ポートＲＡＭ−１のポートＤＢ１（または１ポートＲＡＭ−２のポートＤＢ２）に書き込む。このとき、制御回路Ｂは、１ポートＲＡＭ−１（または１ポートＲＡＭ−２）がＦＩＦＯとして動作するように適切な書き込み用アドレス信号ＡＤＢ１を生成する。アドレス信号ＡＤＢ１は、１ポートＲＡＭ−１（または１ポートＲＡＭ−２）のアドレス信号端子に供給される。
【０１２９】
（４）Ｂ側から１ポートＲＡＭ−１（または１ポートＲＡＭ−２）に書き込まれたデータが設定数以上になり、かつ、１ポートＲＡＭ−２（１ポートＲＡＭ−１）が空になった場合には、制御回路Ｂは、ＤＢ２（ＤＢ１）（Ｂ側のデータの1ポートＲＡＭ−２（または１ポートＲＡＭ−１）への入出力）を選択するように設定し、セレクタＤＤをＷＤ２、ＤＢ１（ＤＢ２）（１ポートＲＡＭ−１（または１ポートＲＡＭ−２）から２ポートＲＡＭ−２へのデータ転送）を選択するように設定して、Ａ側からセレクタＤＢを通して供給されるデータＤＢをポートＤＢ２（またはＤＢ１）から１ポートＲＡＭ−２（または１ポートＲＡＭ−１）に書き込むと共に、１ポートＲＡＭ−１のポートＤＢ１（または１ポートＲＡＭ−２のポートＤＢ２）から読み出されたデータをセレクタＤＤを通して２ポートＲＡＭ−２に転送し、書き込み用ポートＷＤ２から２ポートＲＡＭ−２に書き込む。このとき、制御回路Ｂは、１ポートＲＡＭ−１（または１ポートＲＡＭ−２）および２ポートＲＡＭ−２がＦＩＦＯとして動作するように適切な読み出し用アドレス信号ＡＤＢ１および書き込み用アドレス信号ＡＤＢ２を生成する。アドレス信号ＡＤＢ１は、１ポートＲＡＭ−１（またはアドレスポートＲＡＭ−２）のアドレス信号端子に供給され、アドレス信号ＡＤＢ２は、２ポートＲＡＭ−２の書き込み用アドレス信号端子ＷＡ２に供給される。同時に、制御回路Ｂは、制御回路Ａに対して、データ書き込み要求信号を活性状態にする。制御回路Ｂからのデータ書き込み要求信号が活性状態である間、以下の（５）の動作を繰り返して行う。
【０１３０】
（５）制御回路Ａは、制御信号Ａのデータ読み出し要求信号を活性状態にして、２ポートＲＡＭ−２の読み出しポートＲＤ２から読み出されたデータをセレクタＤＡを通してＡ側に転送する。このとき、制御回路Ａは、２ポートＲＡＭ−２がＦＩＦＯとして動作するように適切な読み出し用アドレス信号ＡＤＡを生成する。アドレス信号ＡＤＡは、２ポートＲＡＭ−２の読み出し用アドレス信号端子ＲＡ２に供給される。
【０１３１】
（６）１ポートＲＡＭ−１（または１ポートＲＡＭ−２）内のデータが全て転送されると、制御回路Ｂは、データ書き込み要求信号を不活性状態にして、データ転送を停止する。
【０１３２】
以上のように、本実施形態によれば、Ｂ側のデータを一時蓄積する２つの１ポートＲＡＭ−１および１ポートＲＡＭ−２とＡ側のデータを一時蓄積する２つの２ポートＲＡＭ−１および２ポートＲＡＭ−２とを組合わせることによって、回路規模が大きい２ポートメモリを用いた従来技術に比べて、回路規模を抑えて製造コストを低廉価化させることができる。
【０１３３】
また、制御回路Ｂおよび１ポートＲＡＭ−１および１ポートＲＡＭ−２はＢ側のクロック信号ＣＬＫＢで動作し、制御回路ＡはＡ側のクロック信号ＣＬＫＡで動作し、２ポートＲＡＭ−１の書き込み動作および２ポートＲＡＭ−２の読み出し動作はＡ側のクロック信号ＣＬＫＡのタイミングで行われ、２ポートＲＡＭ−１の読み出し動作および２ポートＲＡＭ−２の書き込み動作はＢ側のクロック信号ＣＬＫＢのタイミングで行われるため、Ａ側から１ポートＲＡＭ−１および１ポートＲＡＭ−２へのデータ入出力はＡ側の動作クロック信号およびデータ転送速度に応じて行い、Ｂ側から２ポートＲＡＭへのデータ入出力はＢ側の動作クロック信号およびデータ転送速度に応じて行うことができる。
【０１３４】
さらに、本実施形態３では、２ポートＲＡＭ−１および２ポートＲＡＭ−２に対してクロック信号、データおよび制御信号を切り替える必要が無いため、上記実施形態１に比べて制御が複雑化せず、タイミング設計が容易ある。
【０１３５】
さらに、本実施形態３では、一方の１ポートＲＡＭと２ポートＲＡＭとの間でデータ転送を行っている間に、他方の１ポートＲＡＭと他方Ｂ側との間でデータ転送を行うことが可能となり、データ転送効率を向上することができる。
（実施形態４）
本実施形態４では、図１〜図３のいずれかのデータ転送装置が用いられた電子情報装置の場合について説明する。
【０１３６】
図５は、図１〜図３のいずれかのデータ転送装置が用いられた電子情報装置の構成例を示すブロック図である。
【０１３７】
図５において、本実施形態４の電子情報装置３０は、情報処理システム１１と、外部装置１２と、これらの情報処理システム１１と外部装置１２間にもうけられた上記実施形態１〜３の何れかのデータ転送装置１０Ａ，１０Ｂまたは１０Ｃとを有し、データ転送装置１０Ａ，１０Ｂまたは１０Ｃを介して、情報処理システム１１と外部装置１２間で双方向で非同期にデータ送信することができる。上記実施形態１〜３において、一方入出力側が情報処理システム１１に対応し、他方入出力側が外部装置１２に対応している。
【０１３８】
情報処理システム１１は、表示画面上にデータを表示（モニタ表示）するためのデータ処理や、データ内容をプリントアウトするためのデータ処理など各種情報処理を行う。
【０１３９】
外部装置１２は、電子情報装置３０がデジタルカメラの場合にはメモリーカードなどの各種記憶装置、電子情報装置３０がパーソナルコンピュータの場合には光ディスク（ＣＤ）や磁気ディスク（ＦＤ）などの各種記憶装置が考えられる。
【０１４０】
なお、本発明のデータ転送装置１０Ａ，１０Ｂまたは１０Ｃは、ブロック単位で読み書きができる電子情報装置であればデジタルカメラに限らずどのような機器にも適用できる。
【０１４１】
以上により、上記実施形態１〜４によれば、ブロックサイズが小さいＡ側のデータＤＡを一時蓄積する２ポートＲＡＭと、ブロックサイズが大きいＢ側のデータＤＢを一時蓄積する１ポートＲＡＭと、Ａ側のデータＤＡの２ポートＲＡＭへの入出力を制御する制御回路Ａと、Ｂ側のデータＤＢの１ポートＲＡＭへの入出力および１ポートＲＡＭと２ポートＲＡＭ間のデータ転送を制御する制御回路Ｂを備えたデータ転送装置１０Ａ，１０Ｂまたは１０Ｃを用いて、Ａ側からＢ側にデータ転送を行う場合、Ａ側から２ポートＲＡＭにデータ書き込みを行い、２ポートＲＡＭと１ポートＲＡＭ間でデータ転送を行い、Ｂ側から１ポートＲＡＭのデータ読み出しを行う。Ｂ側からＡ側にデータ転送を行う場合、Ｂ側から１ポートＲＡＭにデータ書き込みを行い、１ポートＲＡＭと２ポートＲＡＭ間でデータ転送を行い、Ａ側から２ポートＲＡＭのデータ読み出しを行う。これによって、従来の２ポートＲＡＭだけの場合に比べて回路規模を抑えることができ、さらに、容易に制御を行って、非同期かつ双方向にデータ転送を行うことができる。
【０１４２】
なお、以上のように、本発明の好ましい実施形態１〜４を用いて本発明を例示してきたが、本発明は、この実施形態１〜４に限定して解釈されるべきものではない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。当業者は、本発明の具体的な好ましい実施形態１〜４の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。本明細書において引用した特許、特許出願および文献は、その内容自体が具体的に本明細書に記載されているのと同様にその内容が本明細書に対する参考として援用されるべきであることが理解される。
【産業上の利用可能性】
【０１４３】
本発明は、２ポートメモリを用いて非同期かつ双方向にデータ転送を行うデータ転送装置および、これを用いたデジタルカメラなどの電子情報装置の分野において、情報処理システムと、動作クロック、データ転送速度および取り扱いデータ単位(ブロック)が異なる外部装置との間でデータ転送を行う場合などに、回路規模が大きい２ポートメモリだけでなく、１ポートメモリを組み合わせることによって、回路規模を抑え、さらに、容易に制御を行って、非同期かつ双方向にデータ転送を行うことができる。
【図面の簡単な説明】
【０１４４】
【図１】本発明の実施形態１に係るデータ転送装置の構成例を示す回路図である。
【図２】本発明の実施形態２に係るデータ転送装置の構成例を示す回路図である。
【図３】本発明の実施形態３に係るデータ転送装置の構成例を示す回路図である。
【図４】従来のデータ転送装置の構成例を示す回路図である。
【図５】図１〜図３のいずれかのデータ転送装置を用いた電子情報装置の構成例を示すブロック図である。
【符号の説明】
【０１４５】
１０Ａ、１０Ｂ、１０Ｃ  データ転送装置
１１情報処理システム
１２  外部装置
３０  電子情報装置
【図１】
2006113870.tif 000003
【図２】
2006113870.tif 000004
【図３】
2006113870.tif 000005
【図４】
2006113870.tif 000006
【図５】
2006113870.tif 000007