(57)【要約】【課題】バスマスタからのＤＭＡ転送の終了を確実にホストプロセッサに伝える手段をための手段を回路を増大させることなく安価に実現可能にする。【解決手段】ＣＰＵとＰＣＩコントローラと、ＰＣＩのＤＭＡコントローラとＰＣＩのＤＭＡ転送終了割り込みを受け付けるための割り込みコントローラと、ＣＰＵからメモリにアクセスしたりＤＭＡコントローラからの要求によってメモリにアクセスするためのメモリコントローラと、ＣＰＵが割り込みコントローラからの通知を受けた後、メモリに転送されたはずのデータが本当にメモリに格納されているかをポーリングして確認するためのデータ確認手段を備え、ＰＣＩのバスマスタ機器からのＤＭＡ転送終了をホストプロセッサに確実に伝える手段を回路を増大させることなく実現する。【選択図】図１
2008102658.tif 000002
【特許請求の範囲】
【請求項１】
バスマスタ機器からの割り込み要求を受信するＰＣＩコントローラと、
バスマスタ機器からのＤＭＡ要求を処理するＤＭＡコントローラと、
割り込みを制御する割り込みコントローラと、
前記割り込みコントローラからの割り込み信号を受信するＣＰＵと、
前記ＣＰＵまたは前記ＤＭＡコントローラからの要求に基づいてメモリにアクセスするためのメモリコントローラと、
割り込みコントローラからの割り込み信号を契機にメモリコントローラを通じてメモリの内容を定期的に読み出すデータ確認手段とを備えたデータ転送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）の転送終了が確実にホストプロセッサに伝わるデータ転送装置に関するものである。
【背景技術】
【０００２】
従来のＰＣなど、非リアルタイム処理を行う機器におけるＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バスのＤＭＡ転送においては、バスマスタ機器からＰＣのメモリへＤＭＡ転送を行った場合転送途中に遅延などが発生するため転送完了割り込みなどでプロセッサに転送完了を伝えたとしても、転送完了を確実にホストプロセッサに知らせるためには規模のおおきな回路やＤＭＡ転送と転送完了割り込みの同期を図るなどの仕組みが必要であった。
【０００３】
ＰＣなどのシステムの場合高価である場合が多く、そもそも回路規模が大きいため、従来技術を用いた手段で実用上十分であった。
【０００４】
しかしながらＴＶセットなどの規模の小さい比較的安価なシステムにおいてはこの点が欠点になる。
【０００５】
図２はＤＭＡ転送と転送完了割り込みの同期を図る手段を用いる場合のブロック図である。
【０００６】
図２で２０１はホストプロセッサをコントロールするＣＰＵ、２０２は割り込みを制御する割り込みコントローラ、２０３はＲＡＭなどのメモリにアクセスするためのメモリコントローラ、２０４はＰＣＩ機器からのＤＭＡ要求を処理するＤＭＡコントローラ、２０５はＰＣＩ機器からの各種制御信号を処理するためのＰＣＩコントローラ、２０６は２０４〜２０５を含むＰＣＩホストコントローラ、２０７はＤＭＡコントローラがＤＭＡを行った信号と、メモリコントローラがメモリにデータを転送し終わった通知を受けて転送終了割り込みを割り込みコントローラに通知するためのタイミングを作成しＰＣＩコントローラに伝えるための同期回路、２００は２０１〜２０６により構成されるホストプロセッサ、２１０はデータを保存、蓄積するためのメモリ、２２０はバスマスタになりうる外部のＰＣＩバスにつながるＰＣＩ機器である。
【０００７】
このように２０７の同期回路を中心としメモリコントローラ、ＤＭＡコントローラ、ＰＣＩコントローラの信号経路が煩雑になり回路規模が増大する。
【特許文献１】特開２００５−３４６１６４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
解決しようとする問題点は、バスマスタからのＤＭＡ転送の終了を確実にホストプロセッサに伝える手段を実現するために回路規模が大きくなる点である。
【課題を解決するための手段】
【０００９】
本発明は、ＤＭＡによるデータ転送系と転送完了割り込み通知の系を分割し、その上でプロセッサは転送完了割り込みを受けてから転送先のメモリの内容をポーリングする。ポーリングする時間は論理的に計算できる最大の転送遅延時間である。
【発明の効果】
【００１０】
本発明のデータ転送装置によれば、ＴＶなどの小規模でリアルタイム処理が必要なシステムにおいて大規模な回路や仕組みを用意することなくバスマスタ機器からのＤＭＡ転送の終了をホストプロセッサに確実に伝えることが可能になる。
【発明を実施するための最良の形態】
【００１１】
以下本発明を実施するための最良の形態について、図面を参照しながら説明する。
【００１２】
（実施の形態１）
図１は、本発明のデータ転送装置の実施の形態の一例のブロック図であって、１００〜１２０は、図２の２００〜２２０と同様であるため説明は省略する。
【００１３】
１０８はＣＰＵが割り込みコントローラからの通知を受けた後、メモリに転送されたはずのデータが本当にメモリに格納されているかをポーリングして確認するためのデータ確認手段である。
【００１４】
図２と図１の違いは本発明を説明する図１の図では同期回路が省略され信号経路が簡略化されていることであり、代わりにＤＭＡで転送されたデータを確認するデータ確認手段が追加されていることである。
【００１５】
図１の実施例において示されているデータ確認手段は、具体的にはＣＰＵのプログラムであって、割り込みコントローラからの割り込み信号を契機にメモリコントローラを通じてメモリの内容を定期的に読み出す処理であるため、回路を増大させる要因にはならない。そのため、本発明の目的である、効率的な転送を行いつつ回路規模を縮小させることに大いに役立つ。
【００１６】
図３にデータ確認手段の動作フローを示す。
【００１７】
ＣＰＵは割り込みコントローラからの割り込みを受信すると、メモリからデータの読出しを試みる。データが入っていればそのデータを処理し、通常の処理に戻り、次の割り込みが入るまで待つ。
【００１８】
データがまだ入っていなければ割り込みが入ってからデータの最大遅延時間が経過しているかを確認する。この最大遅延時間はＰＣＩコントローラが割り込みコントローラに割り込み信号を通知する状態になってから実際にメモリにデータが格納完了するまでの論理的に計算しうる最大の遅延時間である。この時間より遅れてデータが届くことはないという時間である。
【００１９】
最大遅延時間経過していた場合、データ転送はなかったとして処理し、通常の処理に戻る。
【００２０】
最大遅延時間経過していなかった場合、メモリからのデータの読出し処理に戻り、繰り返す。
【産業上の利用可能性】
【００２１】
本発明にかかるデータ転送装置によれば、ＴＶなどの小規模でリアルタイム処理が必要なシステムにおいて大規模な回路や仕組みを用意することなくバスマスタ機器からのＤＭＡ転送の終了をホストプロセッサに確実に伝えることが可能になり、データ転送装置等において有用である。
【図面の簡単な説明】
【００２２】
【図１】本発明の実施方法を示したブロック図
【図２】従来技術による実施方法を示したブロック図
【図３】データ確認手段の動作を示すフローチャート
【符号の説明】
【００２３】
１００    ホストプロセッサ
１０１    ＣＰＵ
１０２    割り込みコントローラ
１０３    メモリコントローラ
１０４    ＤＭＡコントローラ
１０５    ＰＣＩコントローラ
１０６    ＰＣＩホストコントローラ
１０８    データ確認手段
１１０    メモリ
１２０    ＰＣＩ機器
２００    ホストプロセッサ
２０１    ＣＰＵ
２０２    割り込みコントローラ
２０３    メモリコントローラ
２０４    ＤＭＡコントローラ
２０５    ＰＣＩコントローラ
２０６    ＰＣＩホストコントローラ
２０７    同期回路
２１０    メモリ
２２０    ＰＣＩ機器
【図１】
2008102658.tif 000003
【図２】
2008102658.tif 000004
【図３】
2008102658.tif 000005