(57)【要約】【課題】マスタ自身の最適化しなくてもアクセス性能を劣化させず、システムＬＳＩ開発資産を有効活用させる外部デバイスアクセス装置およびシステムＬＳＩを提供する。【解決手段】アドレス制御部１１４は、マスタ１０１から外部デバイス１０２への書き込み要求に応じて、マスタ１０１からの書き込みアドレス１５０と書き込みデータ１５１とをそれぞれ書き込みアドレス格納部１１０と書き込みデータ格納部１１１とに格納するとともに、マスタに受理信号１５５を出力し、さらに、書き込みアドレスによって指定される外部デバイス１０２に対して、当該書き込みデータを書き込み、マスタ１１１０１によって読み出しアドレス格納部１１２に読み出しアドレスが格納されたとき、当該読み出しアドレスによって指定される外部デバイス１０２からデータを読み出し、読み出しデータ格納１１３に格納する。【選択図】図２
2010244580.tif 000002
【特許請求の範囲】
【請求項１】
マスタから外部デバイスへのアクセスを制御する外部デバイスアクセス装置であって、
前記マスタからの外部デバイスへの書き込み要求に応じて、書き込みアドレスを格納するための書き込みアドレス格納手段と、
前記書き込み要求に応じて、書き込みデータを格納するための書き込みデータ格納手段と、
前記マスタからアクセス可能であり、読み出しアドレスを格納するための読み出しアドレス格納手段と、
前記マスタからアクセス可能であり、外部デバイスから読み出されたデータを格納するための読み出しデータ格納手段と、
前記マスタからの書き込み要求または読み出し要求とアドレス指定に応じて、外部デバイスへのアクセスを制御する制御手段と、
前記マスタからの書き込み要求に応じて、外部デバイスから読み出しデータ格納手段への読み出しを完了したか否かを示す格納動作状態信号を格納する格納動作状態保持手段と
を備え、
前記制御手段は、
前記マスタから外部デバイスへの書き込み要求に応じて、マスタからの書き込みアドレスと書き込みデータとをそれぞれ書き込みアドレス格納手段と書き込みデータ格納手段とに格納するとともに、マスタに受理信号を出力し、さらに、当該書き込みアドレスによって指定される外部デバイスに対して、当該書き込みデータを書き込み、
前記マスタから外部デバイスへの読み出し要求に応じて、前記読み出しアドレス格納手段に読み出しアドレスが格納され、当該読み出しアドレスによって指定される外部デバイスからデータを読み出し、前記読み出しデータ格納手段に格納し、
前記マスタから前記読み出しデータ格納手段への書き込み要求に応じて、前記読み出しアドレス格納手段に読み出しアドレスが格納するとともに、マスタに受理信号を出力し、同時に前記格納動作状態保持手段に格納動作状態であることを示す信号を格納し、さらに、当該読み出しアドレスによって指定される外部デバイスからデータを読み出して前記読み出しデータ格納手段に格納し、同時に前記格納動作状態保持手段に格納動作状態でないことを示す信号を格納し、
前記マスタから読み出しデータ格納手段へのデータ読み出し要求に応じて、前記格納動作状態保持手段に格納動作状態であることを示す信号が格納されている場合には読み出しデータ格納手段への読み出し動作を規制し、格納動作状態でないことを示す信号が格納されている場合には、前記読み出しデータ格納手段から読み出しデータを出力する
ことを特徴とする外部デバイスアクセス装置。
【請求項２】
マスタと、
請求項１に記載の外部デバイスアクセス装置と、
前記マスタから外部デバイスアクセス装置を介してアクセスされる外部デバイスと
を備えるシステムＬＳＩ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システムＬＳＩにおいて、マスタが外部デバイスへアクセスすることに関し、特に、マスタが外部デバイスを容易に拡張し、かつ拡張の際にマスタが外部デバイスの種類に依存しないための外部デバイスアクセス装置に関する。
【背景技術】
【０００２】
メディア処理には外部デバイスでマスタをアシストすることが有効な場合があり、そのためのマスタには、外部デバイスを拡張するための拡張バスを持たせることがある。
【０００３】
ここで、メディア処理とは、音声処理、画像処理などのデータ処理一般のこと、マスタとはＣＰＵやマイコン等、主制御を担当する装置のこと、外部デバイスとはそのＣＰＵやマイコン等をアシストする、コプロセッサやアクセラレータ、メモリ等の周辺装置のことである。
【０００４】
マスタは拡張バスを持ち、アクセス空間に外部デバイスの資源を割り当てることで、その外部デバイスの資源をマスタの拡張された資源として扱うことができるようになり、マスタと外部デバイスとの通信を高速に行うことが可能となる。このことにより、マスタの処理性能を上げ、ソフト・ハードの両面の機能実現をさらに容易にすることができる。
【０００５】
ここで、アクセス空間とはマスタがアクセスできる、プログラムアクセス、データアクセスや入出力アクセス等のためのアドレスの割り当てられた空間のことである。
【０００６】
このアクセスを実現する方法としては、従来、マスタが拡張バスのインターフェースをもち、そのインターフェースを介して、オンチップの外部デバイスにアクセスする方法や、さらに、チップ外の外部デバイスに対しては、別のインターフェースを介して、拡張バスのプロトコルに変換して、マスタの拡張バスのインターフェースを介してアクセスするなどの方法が取られてきた。（例えば、特許文献１参照。）
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平７−６１５１号公報（第１５頁、図５）
【発明の概要】
【発明が解決しようとする課題】
【０００８】
従来の方法では、システムＬＳＩのカスタマイズにおいて、例えばメディア処理の高度化に伴ってマスタを高速化する場合、個々に動作速度の異なる外部デバイスへのアクセスに対応するために、外部デバイス毎にマスタ自身を最適化することが必要であり、システムＬＳＩのカスタマイズを複雑かつ煩雑にしているという問題がある。
【０００９】
また、外部デバイス個別の最適化をマスタ自身において実施しない場合は、ボトルネックとなる外部デバイスへのアクセスレイテンシやスループットなどによるペナルティがマスタの性能に多大な影響を与えてしまうという課題がある。
【００１０】
また、外部デバイス個別の最適化をマスタ自身において実施するためには、新たなメディア処理に対応した外部デバイスが新規に必要となる度に、また不具合等の理由で外部デバイスが改変される度に、マスタ自身の改変をする必要が発生し、開発資産の有効活用という点において、多大なロスを生み出すという課題がある。
【００１１】
本発明は、マスタ自身の最適化しなくてもマスタから外部デバイスへのアクセス性能を劣化させず、システムＬＳＩ開発資産を有効活用させる外部デバイスアクセス装置およびシステムＬＳＩを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記課題を解決するため本発明の外部デバイスアクセス装置は、マスタから外部デバイスへのアクセスを制御する外部デバイスアクセス装置であって、前記マスタからの外部デバイスへの書き込み要求に応じて、書き込みアドレスを格納するための書き込みアドレス格納手段と、前記書き込み要求に応じて、書き込みデータを格納するための書き込みデータ格納手段と、前記マスタからアクセス可能であり、読み出しアドレスを格納するための読み出しアドレス格納手段と、前記マスタからアクセス可能であり、外部デバイスから読み出されたデータを格納するための読み出しデータ格納手段と、前記マスタからの書き込み要求または読み出し要求とアドレス指定に応じて、外部デバイスへのアクセスを制御する制御手段とを備え、前記制御手段は、前記マスタから外部デバイスへの書き込み要求に応じて、マスタからの書き込みアドレスと書き込みデータとをそれぞれ書き込みアドレス格納手段と書き込みデータ格納手段とに格納するとともに、マスタに受理信号を出力し、さらに、当該書き込みアドレスによって指定される外部デバイスに対して、当該書き込みデータを書き込み、マスタによって前記読み出しアドレス格納手段に読み出しアドレスが格納されたとき、当該読み出しアドレスによって指定される外部デバイスからデータを読み出し、前記読み出しデータ格納手段に格納する。
【００１３】
この構成によれば、メディア処理の高度化に伴ってマスタが高速化する場合、個々に動作速度の異なる外部デバイスへのアクセスにおいて、マスタの書き込み要求または読み出し要求時にマスタの状態に依存しないアクセスを実現し、外部デバイスへのアクセスペナルティを隠蔽してマスタの性能への影響を少なくできる効果がある。
【００１４】
さらに外部デバイスに応じて、外部デバイスアクセス装置の資源を調整することにより、外部デバイスへのアクセスの最適化が容易に実施できる効果がある。
【００１５】
またシステムＬＳＩにおいては、マスタが外部デバイスへアクセスするために外部デバイスアクセス装置を備えることにより、システムＬＳＩを開発する度にマスタの改変をする必要がなくなり外部デバイスアクセス装置の改変のみで済むため、システムＬＳＩにおけるマスタの開発コストを大幅に低減する効果がある。
【００１６】
ここで、前記外部デバイスアクセス装置は、さらに、前記外部デバイスから出力される状態信号を格納する状態信号格納手段を備え、前記制御部は、さらに、前記書き込みデータ格納手段に格納されたデータを外部デバイスに書き込むと同時に、前記外部デバイスから出力される前記状態信号を前記状態信号格納手段に格納し、前記読み出しアドレス格納手段に格納されたアドレスによって指定される外部デバイスからデータを読み出して前記読み出しデータ格納手段に格納すると同時に、前記外部デバイスから出力される状態信号を前記状態信号格納手段に格納し、前記状態信号格納手段は、格納している状態信号を前記マスタに出力するようにしてもよい。
【００１７】
この構成によれば、さらに外部デバイスの状態をマスタへ伝達する機能を実現し、マスタの性能に寄与する効果がある。
【００１８】
ここで、前記外部デバイスアクセス装置は、前記読み出しアドレス格納手段および前記読み出しデータ格納手段の代わりに、それらを兼用するアドレス／データ格納手段を備えるようにしてもよい。
【００１９】
この構成によれば、さらに読み出しアドレス格納手段と前記読み出しデータ格納手段とを独立に備える必要がなくなるので、外部デバイスアクセス装置をより小さくし、コストを削減する効果がある。
【００２０】
ここで、前記外部デバイスアクセス装置は、さらに、前記書き込みアドレスまたは前記読み出しアドレスが、未実装の外部デバイスのアドレスであるか否かを示す未実装情報を格納するための未実装情報格納手段を備え、前記制御部は、さらに、前記書き込みアドレス格納手段または読み出しアドレス格納手段に格納された書き込みアドレスまたは読み出しアドレスによって指定される外部デバイスが未実装であるかどうかを判定し、未実装である場合には、前記未実装情報格納手段に未実装情報を格納し、当該未実装情報を前記マスタに通知するようにしてもよい。
【００２１】
この構成によれば、さらに読み出しアドレスまたは書き込みアドレスが、実装されていない外部デバイスを指すことを検出する機能を実現し、マスタの性能に寄与する効果がある。
【００２２】
ここで、前記外部デバイスアクセス装置は、さらに、未実装の外部デバイスのアドレスをエラーアドレスとして格納するためのエラーアドレス格納手段を備え、前記制御部は、さらに、前記書き込みアドレス格納手段または読み出しアドレス格納手段に格納された書き込みアドレスまたは読み出しアドレスによって指定される外部デバイスが未実装であるかどうかを判定し、未実装である場合には、当該アドレスをエラーアドレスとして前記エラーアドレス格納手段に格納し、当該エラーアドレスを前記マスタに通知するようにしてもよい。
【００２３】
この構成によれば、さらに指定されたアドレスが、任意の外部デバイスに対して実装されていないことを検出し、そのアドレスをマスタが認識できる機能を実現し、マスタの性能に寄与する効果がある。
【００２４】
ここで、前記制御部は、さらに、前記書き込みアドレス格納手段または読み出しアドレス格納手段に格納された書き込みアドレスまたは読み出しアドレスによって指定される外部デバイスが未実装であるかどうかを判定し、未実装である場合には、当該アドレスをエラーアドレスとして前記読み出しデータ格納手段に格納し、当該エラーアドレスを前記マスタに通知するようにしてもよい。
【００２５】
この構成によれば、エラーアドレス格納手段を独立に備える必要がなく、外部デバイスアクセス装置をより小さくし、コストを削減する効果がある。
【００２６】
ここで、前記外部デバイスアクセス装置は、さらに、前記マスタからの書き込み要求に応じて、外部デバイスから読み出しデータ格納手段への読み出しを完了したか否かを示す格納動作状態信号を格納する格納動作状態保持手段を備え、前記制御部は、さらに、格納動作状態信号に基づいて、前記マスタから読み出しアドレス格納手段への書き込みを規制するようにしてもよい。
【００２７】
この構成によれば、さらに、マスタが外部デバイスの格納動作状態を認識し、マスタのアクセス要求順序を保持することで、マスタの性能に寄与する効果がある。
【００２８】
また、本発明のシステムＬＳＩは、上記と同様の手段を備える。
【発明の効果】
【００２９】
本発明によれば、メディア処理の高度化に伴ってマスタが高速化する場合、個々に動作速度の異なる外部デバイスへのアクセスにおいて、マスタの書き込み要求または読み出し要求時にマスタの状態に依存しないアクセスを実現し、外部デバイスへのアクセスペナルティを隠蔽してマスタの性能への影響を少なくできる効果がある。
【００３０】
さらに外部デバイスに応じて、外部デバイスアクセス装置の資源を調整することにより、外部デバイスへのアクセスの最適化が容易に実施できる効果がある。
【００３１】
またシステムＬＳＩにおいては、マスタが外部デバイスへアクセスするために外部デバイスアクセス装置を備えることにより、システムＬＳＩを開発する度にマスタの改変をする必要がなくなり外部デバイスアクセス装置の改変のみで済むため、システムＬＳＩにおけるマスタの開発コストを大幅に低減する効果がある。
【００３２】
さらに外部デバイスの状態をマスタへ伝達する機能を実現し、マスタの性能に寄与する効果がある。
【００３３】
また外部デバイスアクセス装置をより小さくしてコストを削減し、マスタの性能に寄与する効果がある。
【図面の簡単な説明】
【００３４】
【図１】図１は、第１の実施形態のシステムLSIの構成を示すブロック図である。
【図２】図２は、第１の実施形態の外部デバイスアクセス装置の構成を示すブロック図である。
【図３】図３は、第１の実施形態の他のシステムLSIの構成を示すブロック図である。
【図４】図４は、第２の実施形態の外部デバイスアクセス装置の構成を示すブロック図である。
【図５】図５は、第３の実施形態の外部デバイスアクセス装置の構成を示すブロック図である。
【図６】図６は、第４の実施形態の外部デバイスアクセス装置の構成を示すブロック図である。
【図７】図７は、第５の実施形態の外部デバイスアクセス装置の構成を示すブロック図である。
【図８】図８は、第６の実施形態の外部デバイスアクセス装置の構成を示すブロック図である。
【図９】図９は、第７の実施形態の外部デバイスアクセス装置の構成を示すブロック図である。
【発明を実施するための形態】
【００３５】
以下、マスタとはＣＰＵやマイコン等、書き込みまたは読み出しの制御を担当する装置のことを指し、外部デバイスとはそのＣＰＵやマイコン等をアシストする、コプロセッサやアクセラレータ等の装置を指し、かつその装置はマスタがアドレス指定によりアクセス可能な資源を有しているとし、実施例を示していく。
【００３６】
＜第１の実施形態＞
本発明の第１の実施形態の外部デバイスアクセス装置について、図面を参照しながら説明する。
【００３７】
図１は、本発明の第１の実施形態におけるシステムＬＳＩを示すブロック図である。このシステムＬＳＩは、マスタ１０１と、外部デバイス１０２、１０２ａ、１０２ｂ、・・・と、外部デバイスアクセス装置１０３、１０３ａ、１０３ｂ、・・・を備える。この例では、外部デバイスアクセス装置は外部デバイスに対応して備えられる。外部デバイスアクセス装置１０３は、マスタ１０１の外部デバイス１０２への書き込み要求または読み出し要求を受けて、マスタ１０１の状態に依存しないアクセスを実現し、マスタ１０１に対して外部デバイスへのアクセスペナルティを隠蔽するように構成されている。外部デバイスアクセス装置１０３ａ、１０３ｂ、・・・も同様である。
【００３８】
図２は本発明の第１の実施形態の外部デバイスアクセス装置１０３の構成を示すブロック図である。
【００３９】
はじめに外部デバイスアクセス装置１０３の構成について説明する。
【００４０】
外部デバイスアクセス装置１０３は、マスタ１０１との間でアドレスバス１５０、書き込みデータ入力バス１５１、読み出しデータ出力バス１５２、書き込み読み出し制御信号（以下、Ｒ／Ｗ信号と呼ぶ）バス１５３、受理信号１５５を介して接続され、また、外部デバイス１０２との間で、書き込みアドレス出力バス１７０、書き込みデータ出力バス１７１、読み出しアドレス出力バス１７２、読み出しデータ入力バス１７３を介して接続される。
【００４１】
また、外部デバイスアクセス装置１０３は、書き込みアドレス格納部１１０、書き込みデータ格納部１１１、読み出しアドレス格納部１１２、読み出しデータ格納部１１３、アドレス制御部１１４から構成される。
【００４２】
書き込みアドレス格納部１１０は、アドレス制御部１１４から書き込みアドレス１６０と書き込み許可信号１６１を入力し、格納したアドレスを外部デバイス１０２へ出力する。
【００４３】
書き込みデータ格納部１１１は、マスタから、書き込みデータ入力バス１５１を介した書き込みデータと、アドレス制御部１１４から書き込み許可信号１６１とを入力し、格納したデータを外部デバイス１０２へ出力する。
【００４４】
読み出しアドレス格納部１１２は、アドレス制御部１１４から読み出しアドレス１６２と読み出しアドレス許可信号１６３とを入力し、格納したアドレスを外部デバイス１０２へ出力する。
【００４５】
読み出しデータ格納部１１３は、外部デバイスから読み出しデータ入力バス１７３を介した読み出しデータと、アドレス制御部からの読み出しデータ許可信号１６４を入力し、格納したデータをマスタ１０１へ出力する。
【００４６】
また、読み出しデータ格納部１１３は、マスタ１０１が持つアクセス空間に割り当てられたアドレスを持つ。
【００４７】
アドレス制御部１１４は、マスタから、アドレスバス１５０を介したアドレスと、Ｒ／Ｗ信号バス１５３を介したＲ／Ｗ信号と、書き込みデータ入力バス１５１を介した書き込みデータとを入力し、書き込みアドレス１６０と、書き込み許可信号１６１とを書き込みアドレス格納部１１０へ出力し、書き込み許可信号１６１を書き込みデータ格納部１１１へ出力し、読み出しアドレス１６２と読み出しアドレス許可信号１６３とを読み出しアドレス格納部１１２へ出力し、読み出しデータ許可信号１６４を読み出しデータ格納部１１３へ出力する。
【００４８】
次に外部デバイスアクセス装置１０３の動作について説明する。
【００４９】
外部デバイスアクセス装置１０３の動作は、通常の書き込み動作、あらかじめ外部デバイス１０２のデータを読み出しデータ格納部１１３へ読み出しておく動作、あらかじめ読み出しデータ格納部１１３へ読み出しておいたデータをマスタ１０１へ出力する動作であり、順に、通常書き込み動作、プリフェッチ動作、プリフェッチデータ読み出し動作とする。
【００５０】
通常書き込み動作は、マスタ１０１からの書き込み要求に応じて、外部デバイスアクセス装置１０３にアドレスバス１５０からのアドレスと、Ｒ／Ｗ信号バス１５３からのＲ／Ｗ信号がアドレス制御部１１４に入力される。
【００５１】
アドレス制御部１１４では、Ｒ／Ｗ信号と、アドレスバス１５０からのアドレスが読み出しデータ格納部１１３に割り当てられたアドレスではないことをもとに、通常書き込み動作であることを認識し、書き込みアドレス１６０と書き込み許可信号１６１とを書き込みアドレス格納部１１０に出力してアドレスを格納させ、書き込み許可信号１６１を書き込みデータ格納部１１１に出力して書き込みデータバス１５１からのデータを格納させる。
【００５２】
格納したアドレスとデータは、外部デバイスが受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。
【００５３】
プリフェッチ動作は、マスタ１０１からの書き込み要求に応じて、外部デバイスアクセス装置１０３にアドレスバス１５０からのアドレスと、Ｒ／Ｗ信号バス１５３からのＲ／Ｗ信号と、書き込みデータバス１５１からのデータがアドレス制御部１１４に入力される。
【００５４】
アドレス制御部１１４では、Ｒ／Ｗ信号と、アドレスバス１５０からのアドレスが読み出しデータ格納部１１３に割り当てられたアドレスであることをもとに、プリフェッチ動作であることを認識し、書き込みデータバス１５１からのデータを読み出しアドレスとして、読み出しアドレス１６２と読み出しアドレス許可信号１６３とを読み出しアドレス格納部１１２に出力してアドレスを格納させる。
【００５５】
格納したアドレスは、外部デバイス１０２が受け付けて、外部デバイス１０２からの読み出しデータを読み出しデータ格納部１１３に格納するまで保持し、格納を完了後にプリフェッチ動作を完了する。
【００５６】
プリフェッチデータ読み出し動作は、マスタ１０１からの読み出し要求に応じて、外部デバイスアクセス装置１０３にアドレスバス１５０からのアドレスと、Ｒ／Ｗ信号バス１５３からのＲ／Ｗ信号とがアドレス制御部１１４に入力される。
【００５７】
アドレス制御部１１４では、Ｒ／Ｗ信号と、アドレスバス１５０からのアドレスが読み出しデータ格納部１１３に割り当てられたアドレスであることをもとに、プリフェッチデータ読み出し動作であることを認識し、読み出しデータ許可信号１６４を読み出しデータ格納部１１３に出力して、読み出しデータバス１５２を介してマスタ１０１に出力する。
【００５８】
マスタ１０１が読み出しデータを受け付けるまで読み出しデータを保持し、受付を完了後にプリフェッチリード動作を完了する。
【００５９】
これら動作を持つことによる利点としては、通常書き込み動作では、マスタ１０１からの書き込み要求を外部デバイスアクセス装置１０３が保持するため、外部デバイスの受付を待つことなくマスタ１０１は書き込みを完了させて動作することが可能となり、マスタ１０１に依存することなく、外部デバイス１０２への書き込みを行うことが可能となる。
【００６０】
プリフェッチ動作では、マスタ１０１からの書き込み要求を使用して、あらかじめ外部デバイス１０２のデータを読み出しデータ格納部１１３へ読み出しておく動作を実現するとともに、通常書き込み動作と同様に、マスタ１０１からの書き込み要求を外部デバイスアクセス装置１０３が読み出し要求として保持するため、外部デバイスの受付を待つことなくマスタ１０１は書き込みを完了させて動作することが可能となり、マスタ１０１に依存することなく、外部デバイス１０２からの読み出しを行うことが可能となる。
【００６１】
プリフェッチデータ読み出し動作では、マスタ１０１からの読み出し要求により、あらかじめ読み出しデータ格納部１１３へ読み出しておいたデータをマスタ１０１へ出力するため、外部デバイス１０２に依存することなく、データの読み出しを行うことが可能となる。
【００６２】
なお、図１のシステムＬＳＩでは外部デバイスアクセス装置と外部デバイスとが１対１で対応しているが、１対多で対応するようにしてもよい。その場合のシステムＬＳＩの構成例を図３に示す。図３の外部デバイスアクセス装置１０３０は、複数の外部デバイスのそれぞれのアクセスレイテンシに対応し、マスタ１０１に対して各外部デバイスへのアクセスペナルティを隠蔽するように構成されている。
【００６３】
＜第２の実施形態＞
本発明の第２の実施形態の外部デバイスアクセス装置について、図面を参照しながら説明する。
【００６４】
図４は本発明の第２の実施形態の外部デバイスアクセス装置構成図である。
【００６５】
はじめに外部デバイスアクセス装置２０３の構成について説明する。
【００６６】
外部デバイスアクセス装置２０３は、マスタ２０１との間でアドレスバス２５０、書き込みデータ入力バス２５１、読み出しデータ出力バス２５２、Ｒ／Ｗ信号入力バス２５３、状態信号出力バス２５４、受理信号２５５を介して接続され、また、外部デバイス２０２との間で書き込みアドレス出力バス２７０、書き込みデータ出力バス２７１、読み出しアドレス出力バス２７２、読み出しデータ入力バス２７３、状態信号入力バス２７４を介して接続される。
【００６７】
また、外部デバイスアクセス装置２０３は、書き込みアドレス格納部２１０、書き込みデータ格納部２１１、読み出しアドレス格納部２１２、読み出しデータ格納部２１３、アドレス制御部２１４、状態信号格納部２１５、セレクタ２１６から構成される。
【００６８】
書き込みアドレス格納部２１０は、アドレス制御部２１４から書き込みアドレス２６０と書き込み許可信号２６１を入力し、格納したアドレスを外部デバイス２０２へ出力する。
【００６９】
書き込みデータ格納部２１１は、マスタから、書き込みデータ入力バス２５１を介した書き込みデータと、アドレス制御部２１４から書き込み許可信号２６１とを入力し、格納したデータを外部デバイス２０２へ出力する。
【００７０】
読み出しアドレス格納部２１２は、アドレス制御部２１４から読み出しアドレス２６２と読み出しアドレス許可信号２６３とを入力し、格納したアドレスを外部デバイス２０２へ出力する。
【００７１】
読み出しデータ格納部２１３は、外部デバイスから読み出しデータ入力バス２７３を介した読み出しデータと、アドレス制御部２１４からの読み出しデータ許可信号２６４を入力し、格納したデータをマスタ２０１へ出力する。
【００７２】
また、読み出しデータ格納部２１３は、マスタ２０１が持つアクセス空間に割り当てられたアドレスを持つ。
【００７３】
アドレス制御部２１４は、マスタから、アドレスバス２５０を介したアドレスと、Ｒ／Ｗ信号バス２５３を介したＲ／Ｗ信号と、書き込みデータ入力バス２５１を介した書き込みデータとを入力し、書き込みアドレス２６０と、書き込み許可信号２６１とを書き込みアドレス格納部２１０へ出力し、書き込み許可信号２６１を書き込みデータ格納部２１１へ出力し、読み出しアドレス２６２と読み出しアドレス許可信号２６３とを読み出しアドレス格納部２１２へ出力し、読み出しデータ許可信号２６４を読み出しデータ格納部２１３へ出力する。
【００７４】
状態信号格納部２１５は、外部デバイスから状態信号入力バス２７４を介した状態信号を入力し、格納した信号をセレクタ２１６へ出力する。
【００７５】
セレクタ２１６は、状態信号入力バス２７４を介して入力される状態信号と、状態信号
格納部２１５に格納されている状態信号を、読み出しデータ許可信号２６４で選択して、状態信号出力バス２５４を介してマスタ２０１へ出力する。
【００７６】
次に外部デバイスアクセス装置２０３の動作について説明する。第１の発明を実施する形態での説明と同様に、通常書き込み動作、プリフェッチ動作、プリフェッチデータ読み出し動作である。
【００７７】
通常書き込み動作は、マスタ２０１からの書き込み要求に応じて、外部デバイスアクセス装置２０３にアドレスバス２５０からのアドレスと、Ｒ／Ｗ信号バス２５３からのＲ／Ｗ信号がアドレス制御部２１４に入力される。
【００７８】
アドレス制御部２１４では、Ｒ／Ｗ信号と、アドレスバス２５０からのアドレスが読み出しデータ格納部２１３に割り当てられたアドレスではないことをもとに、通常書き込み動作であることを認識し、書き込みアドレス２６０と書き込み許可信号２６１とを書き込みアドレス格納部２１０に出力してアドレスを格納させ、書き込み許可信号２６１を書き込みデータ格納部２１１に出力して書き込みデータバス２５１からのデータを格納させる。
【００７９】
格納したアドレスとデータは、外部デバイス２０２が受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。
【００８０】
また本動作時は、外部デバイス２０２の状態を状態信号として、セレクタ２１６で選択し、直接マスタ２０１へ出力する。
【００８１】
プリフェッチ動作は、マスタ２０１からの書き込み要求に応じて、外部デバイスアクセス装置２０３にアドレスバス２５０からのアドレスと、Ｒ／Ｗ信号バス２５３からのＲ／Ｗ信号と、書き込みデータバス２５１からのデータがアドレス制御部２１４に入力される。
【００８２】
アドレス制御部２１４では、Ｒ／Ｗ信号と、アドレスバス２５０からのアドレスが読み出しデータ格納部２１３に割り当てられたアドレスであることをもとに、プリフェッチ動作であることを認識し、書き込みデータバス２５１からのデータを読み出しアドレスとして、読み出しアドレス２６２と読み出しアドレス許可信号２６３とを読み出しアドレス格納部２１２に出力してアドレスを格納させる。
【００８３】
格納したアドレスは、外部デバイスが受け付けて、外部デバイス２０２からの読み出しデータを読み出しデータ格納部２１３に格納するまで保持し、格納を完了後にプリフェッチ動作を完了する。
【００８４】
また本動作時は、外部デバイス２０２の状態を状態信号として、状態信号格納部２１５に格納する。
【００８５】
プリフェッチデータ読み出し動作は、マスタ２０１からの読み出し要求に応じて、外部デバイスアクセス装置２０３にアドレスバス２５０からのアドレスと、Ｒ／Ｗ信号バス２５３からのＲ／Ｗ信号とがアドレス制御部２１４に入力される。
【００８６】
アドレス制御部２１４では、Ｒ／Ｗ信号と、アドレスバス２５０からのアドレスが読み出しデータ格納部２１３に割り当てられたアドレスであることをもとに、プリフェッチデータ読み出し動作であることを認識し、読み出しデータ許可信号２６４を読み出しデータ格納部２１３に出力して、読み出しデータバス２５２を介してマスタ２０１に出力する。
【００８７】
また本動作時は、状態信号格納部２１５に格納された状態信号をセレクタ２１６で選択し、マスタ２０１に出力する。
【００８８】
これら動作を持つことによる利点としては、通常書き込み動作では、第１の発明を実施するための形態に記載の利点に加えて、外部デバイス２０２の状態をマスタ２０１に送ることが可能となる。
【００８９】
プリフェッチ動作では、第１の発明を実施するための形態に記載の利点に加えて、プリフェッチした時点の外部デバイス２０２の状態を、状態信号格納部２１５に格納し保持しておくことが可能となる。
【００９０】
プリフェッチデータ読み出し動作では、第１の発明を実施するための形態に記載の利点に加えて、状態信号格納部２１５に保持しているプリフェッチ動作を完了した時点の外部デバイス２０２の状態を、マスタ２０１に送ることが可能となる。
【００９１】
＜第３の実施形態＞
本発明の第３の実施形態の外部デバイスアクセス装置について、図面を参照しながら説明する。
【００９２】
図５は本発明の第３の実施形態の外部デバイスアクセス装置構成図である。
【００９３】
はじめに外部デバイスアクセス装置３０３の構成について説明する。
【００９４】
外部デバイスアクセス装置３０３は、マスタ３０１との間でアドレスバス３５０、書き込みデータ入力バス３５１、読み出しデータ出力バス３５２、Ｒ／Ｗ信号入力バス３５３、受理信号３５５を介して接続され、また、外部デバイス３０２との間で書き込みアドレス出力バス３７０、書き込みデータ出力バス３７１、読み出しアドレス出力バス３７２、読み出しデータ入力バス３７３を介して接続される。
【００９５】
また、外部デバイスアクセス装置３０３は、書き込みアドレス格納部３１０、書き込みデータ格納部３１１、読み出しデータ格納部３１３、アドレス制御部３１４から構成される。
【００９６】
書き込みアドレス格納部３１０は、アドレス制御部３１４から書き込みアドレス３６０と書き込み許可信号３６１を入力し、格納したアドレスを外部デバイス３０２へ出力する。
【００９７】
書き込みデータ格納部３１１は、マスタから、書き込みデータ入力バス３５１を介した書き込みデータと、アドレス制御部３１４から書き込み許可信号３６１とを入力し、格納したデータを外部デバイス３０２へ出力する。
【００９８】
読み出しデータ格納部３１３は、読み出しアドレス３６２と読み出しアドレス許可信号３６３とを入力し、格納したアドレスを外部デバイス３０２へ出力する。その読み出しアドレスより外部デバイスから読み出しデータ入力バス３７３を介した読み出しデータと、アドレス制御部からの読み出しデータ格納部制御３６４を入力し、格納したデータをマスタ３０１へ出力する。
【００９９】
また、読み出しデータ格納部３１３は、マスタ３０１が持つアクセス空間に割り当てられたアドレスを持つ。
【０１００】
アドレス制御部３１４は、マスタから、アドレスバス３５０を介したアドレスと、Ｒ／Ｗ信号バス３５３を介したＲ／Ｗ信号と、書き込みデータ入力バス３５１を介した書き込みデータとを入力し、書き込みアドレス３６０と、書き込み許可信号３６１とを書き込みアドレス格納部３１０へ出力し、書き込み許可信号３６１を書き込みデータ格納部３１１へ出力し、読み出しアドレス３６５と、読み出しデータ格納部制御３６４を読み出しデータ格納部３１３へ出力する。
【０１０１】
次に外部デバイスアクセス装置３０３の動作について説明する。第１の発明を実施する形態での説明と同様に、通常書き込み動作、プリフェッチ動作、プリフェッチデータ読み出し動作である。
【０１０２】
通常書き込み動作は、マスタ３０１からの書き込み要求に応じて、外部デバイスアクセス装置３０３にアドレスバス３５０からのアドレスと、Ｒ／Ｗ信号バス３５３からのＲ／Ｗ信号がアドレス制御部３１４に入力される。
【０１０３】
アドレス制御部３１４では、Ｒ／Ｗ信号と、アドレスバス３５０からのアドレスが読み出しデータ格納部３１３に割り当てられたアドレスではないことをもとに、通常書き込み動作であることを認識し、書き込みアドレス３６０と書き込み許可信号３６１とを書き込みアドレス格納部３１０に出力してアドレスを格納させ、書き込み許可信号３６１を書き込みデータ格納部３１１に出力して書き込みデータバス３５１からのデータを格納させる。
【０１０４】
格納したアドレスとデータは、外部デバイス３０２が受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。
【０１０５】
プリフェッチ動作は、マスタ３０１からの書き込み要求に応じて、外部デバイスアクセス装置３０３にアドレスバス３５０からのアドレスと、Ｒ／Ｗ信号バス３５３からのＲ／Ｗ信号と、書き込みデータバス３５１からのデータがアドレス制御部３１４に入力される。
【０１０６】
アドレス制御部３１４では、Ｒ／Ｗ信号と、アドレスバス３５０からのアドレスが読み出しデータ格納部３１３に割り当てられたアドレスであることをもとに、プリフェッチ動作であることを認識し、書き込みデータバス３５１からのデータを読み出しアドレスとして、読み出しアドレス３６５と読み出しデータ格納部制御３６４とを読み出しデータ格納部３１３に出力してアドレスを格納させる。格納したアドレスは、外部デバイスが受け付けて、外部デバイス３０２からの読み出しデータを読み出しデータ格納部３１３に格納するまで保持し、格納を完了後にプリフェッチ動作を完了する。
【０１０７】
プリフェッチデータ読み出し動作は、マスタ３０１からの読み出し要求に応じて、外部デバイスアクセス装置３０３にアドレスバス３５０からのアドレスと、Ｒ／Ｗ信号バス３５３からのＲ／Ｗ信号とがアドレス制御部３１４に入力される。
【０１０８】
アドレス制御部３１４では、Ｒ／Ｗ信号と、アドレスバス３５０からのアドレスが読み出しデータ格納部３１３に割り当てられたアドレスであることをもとに、プリフェッチデータ読み出し動作であることを認識し、読み出しデータ格納部制御３６４を読み出しデータ格納部３１３に出力して、読み出しデータバス３５２を介してマスタ３０１に出力する。
【０１０９】
マスタ３０１が読み出しデータを受け付けるまで読み出しデータを保持し、受付を完了後にプリフェッチリード動作を完了する。
【０１１０】
これら動作を持つことによる利点としては、プリフェッチ動作では、第１の発明を実施するための形態及び第２の発明を実施するための形態に記載の利点に加えて、読み出しデータ格納部制御３６４を設けることにより、読み出しデータ格納部３１３のみでプリフェッチ動作を実現できるため、外部デバイスアクセス装置の面積増加を抑制することが可能となる。
【０１１１】
＜第４の実施形態＞
本発明の第４の実施形態の外部デバイスアクセス装置について、図面を参照しながら説明する。
【０１１２】
図６は本発明の第４の実施形態の外部デバイスアクセス装置構成図である。
【０１１３】
はじめに外部デバイスアクセス装置４０３の構成について説明する。
【０１１４】
外部デバイスアクセス装置４０３は、マスタ４０１との間でアドレスバス４５０、書き込みデータ入力バス４５１、読み出しデータ出力バス４５２、Ｒ／Ｗ信号入力バス４５３、未実装情報バス４５４、受理信号４５５を介して接続され、また、外部デバイス４０２と、書き込みアドレス出力バス４７０、書き込みデータ出力バス４７１、読み出しアドレス出力バス４７２、読み出しデータ入力バス４７３を介して接続される。
【０１１５】
また、外部デバイスアクセス装置４０３は、書き込みアドレス格納部４１０、書き込みデータ格納部４１１、読み出しアドレス格納部４１２、読み出しデータ格納部４１３、アドレス制御部４１４、未実装情報格納部４１５から構成される。
【０１１６】
書き込みアドレス格納部４１０は、アドレス制御部４１４から書き込みアドレス４６０と書き込み許可信号４６１を入力し、格納したアドレスを外部デバイス４０２へ出力する。
【０１１７】
書き込みデータ格納部４１１は、マスタから、書き込みデータ入力バス４５１を介した書き込みデータと、アドレス制御部４１４から書き込み許可信号４６１とを入力し、格納したデータを外部デバイス４０２へ出力する。
【０１１８】
読み出しアドレス格納部４１２は、アドレス制御部４１４から読み出しアドレス４６２と読み出しアドレス許可信号４６３とを入力し、格納したアドレスを外部デバイス４０２へ出力する。
【０１１９】
読み出しデータ格納部４１３は、外部デバイスから読み出しデータ入力バス４７３を介した読み出しデータと、アドレス制御部からの読み出しデータ許可信号４６４を入力し、格納したデータをマスタ４０１へ出力する。
【０１２０】
また、読み出しデータ格納部４１３は、マスタ４０１が持つアクセス空間に割り当てられたアドレスを持つ。
【０１２１】
アドレス制御部４１４は、マスタから、アドレスバス４５０を介したアドレスと、Ｒ／Ｗ信号バス４５３を介したＲ／Ｗ信号と、書き込みデータ入力バス４５１を介した書き込みデータとを入力し、書き込みアドレス４６０と、書き込み許可信号４６１とを書き込みアドレス格納部４１０へ出力し、書き込み許可信号４６１を書き込みデータ格納部４１１へ出力し、読み出しアドレス１６２と読み出しアドレス許可信号４６３とを読み出しアドレス格納部４１２へ出力し、読み出しデータ許可信号４６４を読み出しデータ格納部４１３へ出力し、未実装情報４６５を未実装情報格納部４１５へ出力する。
【０１２２】
未実装情報格納部４１５は、アドレス制御部４１４から未実装情報４６５を入力し、マスタ４０１へ未実装情報バス４５４を介して、格納した未実装情報を出力する。
【０１２３】
次に外部デバイスアクセス装置４０３の動作について説明する。第１の発明を実施する形態での説明と同様に、通常書き込み動作、プリフェッチ動作、プリフェッチデータ読み出し動作である。
【０１２４】
通常書き込み動作は、マスタ４０１からの書き込み要求に応じて、外部デバイスアクセス装置４０３にアドレスバス４５０からのアドレスと、Ｒ／Ｗ信号バス４５３からのＲ／Ｗ信号がアドレス制御部４１４に入力される。
【０１２５】
アドレス制御部４１４では、Ｒ／Ｗ信号と、アドレスバス４５０からのアドレスが読み出しデータ格納部４１３に割り当てられたアドレスではない場合には、通常書き込み動作であることを認識し、書き込みアドレス４６０と書き込み許可信号４６１とを書き込みアドレス格納部４１０に出力してアドレスを格納させ、書き込み許可信号４６１を書き込みデータ格納部４１１に出力して書き込みデータバス４５１からのデータを格納させる。アドレスバス４５０からのアドレスが実装されていないアドレスの場合には、未実装であることを認識し、未実装情報４６５を未実装情報格納部４１５に格納する。
【０１２６】
アドレスとデータを格納した場合は、外部デバイス４０２が受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。未実装情報を格納した場合は、マスタ４０１が受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。
【０１２７】
プリフェッチ動作は、マスタ４０１からの書き込み要求に応じて、外部デバイスアクセス装置４０３にアドレスバス４５０からのアドレスと、Ｒ／Ｗ信号バス４５３からのＲ／Ｗ信号と、書き込みデータバス４５１からのデータがアドレス制御部４１４に入力される。
【０１２８】
アドレス制御部４１４では、Ｒ／Ｗ信号と、アドレスバス４５０からのアドレスが読み出しデータ格納部４１３に割り当てられたアドレスである場合は、プリフェッチ動作であることを認識し、書き込みデータバス４５１からのデータを読み出しアドレスとして、読み出しアドレス４６２と読み出しアドレス許可信号４６３とを読み出しアドレス格納部４１２に出力してアドレスを格納させる。アドレスバス４５０からのアドレスが実装されていないアドレスの場合、または書き込みデータバス４５１からのデータをアドレスとしたときのアドレスが実装されていないアドレスの場合は、未実装であることを認識し、未実装情報４６５を未実装情報格納部４１５に格納する。
【０１２９】
アドレスを格納した場合は、外部デバイスが受け付けて、外部デバイス４０２からの読み出しデータを読み出しデータ格納部４１３に格納するまで保持し、格納を完了後にプリフェッチ動作を完了する。未実装情報を格納した場合は、マスタ４０１が受け付けるまで保持し、受付を完了後にプリフェッチ動作を完了する。
【０１３０】
プリフェッチデータ読み出し動作は、マスタ４０１からの読み出し要求に応じて、外部デバイスアクセス装置４０３にアドレスバス４５０からのアドレスと、Ｒ／Ｗ信号バス４５３からのＲ／Ｗ信号とがアドレス制御部４１４に入力される。
【０１３１】
アドレス制御部４１４では、Ｒ／Ｗ信号と、アドレスバス４５０からのアドレスが読み出しデータ格納部４１３に割り当てられたアドレスである場合は、プリフェッチデータ読み出し動作であることを認識し、読み出しデータ許可信号４６４を読み出しデータ格納部４１３に出力して、読み出しデータバス４５２を介してマスタ４０１に出力する。アドレスバス４５０からのアドレスが実装されていないアドレスの場合は、未実装であることを認識し、未実装情報４６５を未実装情報格納部４１５に格納する。
【０１３２】
アドレスを格納した場合は、マスタ４０１が読み出しデータを受け付けるまで読み出しデータを保持し、受付を完了後にプリフェッチリード動作を完了する。未実装情報を格納した場合は、マスタ４０１が受け付けるまで保持し、受付を完了後にプリフェッチ動作を完了する。
【０１３３】
これら動作を持つことによる利点としては、通常書き込み動作では、第１の発明を実施するための形態に記載の利点に加えて、マスタ４０１からのアドレス指定に対して、実装されているかどうかを判定し未実装情報として送ることで、マスタ４０１に依存することなく、外部デバイス４０２に対する実装、未実装を容易に設定することが可能となる。
【０１３４】
プリフェッチ動作では、第１の発明を実施するための形態に記載の利点に加えて、マスタ４０１からのアドレス指定、データに対して、実装されているかどうかを判定し未実装情報として送ることで、マスタ４０１に依存することなく、外部デバイス４０２、読み出しデータ格納部４１３に割り当てるアドレスに対する実装、未実装を容易に設定することが可能となる。
【０１３５】
プリフェッチデータ読み出し動作では、第１の発明を実施するための形態に記載の利点に加えて、マスタ４０１からのアドレス指定に対して、実装されているかどうかを判定し未実装情報として送ることで、マスタ４０１に依存することなく、読み出しデータ格納部４１３に割り当てるアドレスに対する実装、未実装を容易に設定することが可能となる。
【０１３６】
＜第５の実施形態＞
本発明の第５の実施形態の外部デバイスアクセス装置について、図面を参照しながら説明する。
【０１３７】
図７は本発明の第５の実施形態の外部デバイスアクセス装置構成図である。
【０１３８】
はじめに外部デバイスアクセス装置５０３の構成について説明する。
【０１３９】
外部デバイスアクセス装置５０３は、マスタ５０１との間でアドレスバス５５０、書き込みデータ入力バス５５１、読み出しデータ出力バス５５２、Ｒ／Ｗ信号入力バス５５３、エラーアドレスバス５５４、受理信号５５５を介して接続され、また、外部デバイス５０２との間で、書き込みアドレス出力バス５７０、書き込みデータ出力バス５７１、読み出しアドレス出力バス５７２、読み出しデータ入力バス５７３を介して接続される。
【０１４０】
また、外部デバイスアクセス装置５０３は、書き込みアドレス格納部５１０、書き込みデータ格納部５１１、読み出しアドレス格納部５１２、読み出しデータ格納部５１３、アドレス制御部５１４、エラーアドレス格納部５１５から構成される。
【０１４１】
書き込みアドレス格納部５１０は、アドレス制御部５１４から書き込みアドレス５６０と書き込み許可信号５６１を入力し、格納したアドレスを外部デバイス５０２へ出力する。
【０１４２】
書き込みデータ格納部５１１は、マスタから、書き込みデータ入力バス５５１を介した書き込みデータと、アドレス制御部５１４から書き込み許可信号５６１とを入力し、格納したデータを外部デバイス５０２へ出力する。
【０１４３】
読み出しアドレス格納部５１２は、アドレス制御部５１４から読み出しアドレス５６２と読み出しアドレス許可信号５６３とを入力し、格納したアドレスを外部デバイス５０２へ出力する。
【０１４４】
読み出しデータ格納部５１３は、外部デバイスから読み出しデータ入力バス５７３を介した読み出しデータと、アドレス制御部からの読み出しデータ許可信号５６４を入力し、格納したデータをマスタ５０１へ出力する。
【０１４５】
また、読み出しデータ格納部５１３は、マスタ５０１が持つアクセス空間に割り当てられたアドレスを持つ。
【０１４６】
アドレス制御部５１４は、マスタから、アドレスバス５５０を介したアドレスと、Ｒ／Ｗ信号バス５５３を介したＲ／Ｗ信号と、書き込みデータ入力バス５５１を介した書き込みデータとを入力し、書き込みアドレス５６０と、書き込み許可信号５６１とを書き込みアドレス格納部５１０へ出力し、書き込み許可信号５６１を書き込みデータ格納部５１１へ出力し、読み出しアドレス５６２と読み出しアドレス許可信号５６３とを読み出しアドレス格納部５１２へ出力し、読み出しデータ許可信号５６４を読み出しデータ格納部５１３へ出力し、エラーアドレス５６５をエラーアドレス格納部５１５へ出力する。
【０１４７】
エラーアドレス格納部５１５は、アドレス制御部５１４からエラーアドレス５６５を入力し、マスタ５０１へエラーアドレスバス５５４を介して、格納したエラーアドレスを出力する。
【０１４８】
次に外部デバイスアクセス装置５０３の動作について説明する。第１の発明を実施する形態での説明と同様に、通常書き込み動作、プリフェッチ動作、プリフェッチデータ読み出し動作である。
【０１４９】
通常書き込み動作は、マスタ５０１からの書き込み要求に応じて、外部デバイスアクセス装置５０３にアドレスバス５５０からのアドレスと、Ｒ／Ｗ信号バス５５３からのＲ／Ｗ信号がアドレス制御部５１４に入力される。
【０１５０】
アドレス制御部５１４では、Ｒ／Ｗ信号と、アドレスバス５５０からのアドレスが読み出しデータ格納部５１３に割り当てられたアドレスではない場合には、通常書き込み動作であることを認識し、書き込みアドレス５６０と書き込み許可信号５６１とを書き込みアドレス格納部５１０に出力してアドレスを格納させ、書き込み許可信号５６１を書き込みデータ格納部５１１に出力して書き込みデータバス５５１からのデータを格納させる。アドレスバス５５０からのアドレスが実装されていないアドレスの場合には、未実装であることを認識し、そのアドレスをエラーアドレス５６５としてエラーアドレス格納部５１５に格納する。
【０１５１】
アドレスとデータを格納した場合は、外部デバイス５０２が受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。エラーアドレスを格納した場合は、マスタ５０１が受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。
【０１５２】
プリフェッチ動作は、マスタ５０１からの書き込み要求に応じて、外部デバイスアクセス装置５０３にアドレスバス５５０からのアドレスと、Ｒ／Ｗ信号バス５５３からのＲ／Ｗ信号と、書き込みデータバス５５１からのデータがアドレス制御部５１４に入力される
。
【０１５３】
アドレス制御部５１４では、Ｒ／Ｗ信号と、アドレスバス５５０からのアドレスが読み出しデータ格納部５１３に割り当てられたアドレスである場合は、プリフェッチ動作であることを認識し、書き込みデータバス５５１からのデータを読み出しアドレスとして、読み出しアドレス５６２と読み出しアドレス許可信号５６３とを読み出しアドレス格納部５１２に出力してアドレスを格納させる。アドレスバス５５０からのアドレスが実装されていないアドレスの場合、または書き込みデータバス５５１からのデータをアドレスとしたときのアドレスが実装されていないアドレスの場合は、未実装であることを認識し、そのアドレスをエラーアドレス５６５としてエラーアドレス格納部５１５に格納する。
【０１５４】
アドレスを格納した場合は、外部デバイスが受け付けて、外部デバイス５０２からの読み出しデータを読み出しデータ格納部５１３に格納するまで保持し、格納を完了後にプリフェッチ動作を完了する。エラーアドレスを格納した場合は、マスタ５０１が受け付けるまで保持し、受付を完了後にプリフェッチ動作を完了する。
【０１５５】
プリフェッチデータ読み出し動作は、マスタ５０１からの読み出し要求に応じて、外部デバイスアクセス装置５０３にアドレスバス５５０からのアドレスと、Ｒ／Ｗ信号バス５５３からのＲ／Ｗ信号とがアドレス制御部５１４に入力される。
【０１５６】
アドレス制御部５１４では、Ｒ／Ｗ信号と、アドレスバス５５０からのアドレスが読み出しデータ格納部５１３に割り当てられたアドレスである場合は、プリフェッチデータ読み出し動作であることを認識し、読み出しデータ許可信号５６４を読み出しデータ格納部５１３に出力して、読み出しデータバス５５２を介してマスタ５０１に出力する。アドレスバス５５０からのアドレスが実装されていないアドレスの場合は、未実装であることを認識し、そのアドレスをエラーアドレス５６５としてエラーアドレス格納部５１５に格納する。
【０１５７】
アドレスを格納した場合は、マスタ５０１が読み出しデータを受け付けるまで読み出しデータを保持し、受付を完了後にプリフェッチリード動作を完了する。エラーアドレスを格納した場合は、マスタ５０１が受け付けるまで保持し、受付を完了後にプリフェッチ動作を完了する。
【０１５８】
これら動作を持つことによる利点としては、通常書き込み動作では、第１の発明を実施するための形態に記載の利点に加えて、マスタ５０１からのアドレス指定に対して、実装されているかどうかを判定しエラーアドレスとして送ることで、マスタ５０１は容易にエラーアドレスを知ることが可能となり、例えばデバッグ時などに有効となる。
【０１５９】
プリフェッチ動作では、第１の発明を実施するための形態に記載の利点に加えて、マスタ５０１からのアドレス指定、データに対して、実装されているかどうかを判定しエラーアドレスとして送ることで、マスタ５０１は容易にエラーアドレスを知ることが可能となり、例えばデバッグ時などに有効となる。
【０１６０】
プリフェッチデータ読み出し動作では、第１の発明を実施するための形態に記載の利点に加えて、マスタ５０１からのアドレス指定に対して、実装されているかどうかを判定しエラーアドレスとして送ることで、マスタ５０１は容易にエラーアドレスを知ることが可能となり、例えばデバッグ時などに有効となる。
【０１６１】
＜第６の実施形態＞
本発明の第６の実施形態の外部デバイスアクセス装置について、図面を参照しながら説明する。
【０１６２】
図８は本発明の第６の実施形態の外部デバイスアクセス装置構成図である。
【０１６３】
はじめに外部デバイスアクセス装置６０３の構成について説明する。
【０１６４】
外部デバイスアクセス装置６０３は、マスタ６０１と、アドレスバス６５０、書き込みデータ入力バス６５１、読み出しデータ出力バス６５２、Ｒ／Ｗ信号入力バス６５３、エラーアドレスバス６５４を介して接続し、外部デバイス６０２と、書き込みアドレス出力バス６７０、書き込みデータ出力バス６７１、読み出しアドレス出力バス６７２、読み出しデータ入力バス６７３を介して接続される。
【０１６５】
また、外部デバイスアクセス装置６０３は、書き込みアドレス格納部６１０、書き込みデータ格納部６１１、読み出しアドレス格納部６１２、読み出しデータ格納部６１３、アドレス制御部６１４から構成される。
【０１６６】
書き込みアドレス格納部６１０は、アドレス制御部６１４から書き込みアドレス６６０と書き込み許可信号６６１を入力し、格納したアドレスを外部デバイス６０２へ出力する。
【０１６７】
書き込みデータ格納部６１１は、マスタから、書き込みデータ入力バス６５１を介した書き込みデータと、アドレス制御部６１４から書き込み許可信号６６１とを入力し、格納したデータを外部デバイス６０２へ出力する。
【０１６８】
読み出しアドレス格納部６１２は、アドレス制御部６１４から読み出しアドレス６６２と読み出しアドレス許可信号６６３とを入力し、格納したアドレスを外部デバイス６０２へ出力する。
【０１６９】
読み出しデータ格納部６１３は、外部デバイスから読み出しデータ入力バス６７３を介した読み出しデータと、アドレス制御部からの読み出しデータ格納部制御６６４と、エラーアドレス６６５とを入力し、格納したデータまたはエラーアドレスをマスタ６０１へ出力する。
【０１７０】
また、読み出しデータ格納部６１３は、マスタ６０１が持つアクセス空間に割り当てられたアドレスを持つ。
【０１７１】
アドレス制御部６１４は、マスタから、アドレスバス６５０を介したアドレスと、Ｒ／Ｗ信号バス６５３を介したＲ／Ｗ信号と、書き込みデータ入力バス６５１を介した書き込みデータとを入力し、書き込みアドレス６６０と、書き込み許可信号６６１とを書き込みアドレス格納部６１０へ出力し、書き込み許可信号６６１を書き込みデータ格納部６１１へ出力し、読み出しアドレス６６２と読み出しアドレス許可信号６６３とを読み出しアドレス格納部６１２へ出力し、読み出しデータ格納部制御６６４を読み出しデータ格納部６１３へ出力し、エラーアドレス６６５を読み出しデータ格納部６１３へ出力する。
【０１７２】
次に外部デバイスアクセス装置６０３の動作について説明する。第１の発明を実施する形態での説明と同様に、通常書き込み動作、プリフェッチ動作、プリフェッチデータ読み出し動作である。
【０１７３】
通常書き込み動作は、マスタ６０１からの書き込み要求に応じて、外部デバイスアクセス装置６０３にアドレスバス６５０からのアドレスと、Ｒ／Ｗ信号バス６５３からのＲ／Ｗ信号がアドレス制御部６１４に入力される。
【０１７４】
アドレス制御部６１４では、Ｒ／Ｗ信号と、アドレスバス６５０からのアドレスが読み出しデータ格納部６１３に割り当てられたアドレスではない場合には、通常書き込み動作であることを認識し、書き込みアドレス６６０と書き込み許可信号６６１とを書き込みアドレス格納部６１０に出力してアドレスを格納させ、書き込み許可信号６６１を書き込みデータ格納部６１１に出力して書き込みデータバス６５１からのデータを格納させる。アドレスバス６５０からのアドレスが実装されていないアドレスの場合には、未実装であることを認識し、そのアドレスを読み出しデータ格納部６１３に格納する。
【０１７５】
アドレスとデータを格納した場合は、外部デバイス６０２が受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。エラーアドレスを格納した場合は、マスタ６０１が受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。
【０１７６】
プリフェッチ動作は、マスタ６０１からの書き込み要求に応じて、外部デバイスアクセス装置６０３にアドレスバス６５０からのアドレスと、Ｒ／Ｗ信号バス６５３からのＲ／Ｗ信号と、書き込みデータバス６５１からのデータがアドレス制御部６１４に入力される。
【０１７７】
アドレス制御部６１４では、Ｒ／Ｗ信号と、アドレスバス６５０からのアドレスが読み出しデータ格納部６１３に割り当てられたアドレスである場合は、プリフェッチ動作であることを認識し、書き込みデータバス６５１からのデータを読み出しアドレスとして、読み出しアドレス６６２と読み出しアドレス許可信号６６３とを読み出しアドレス格納部６１２に出力してアドレスを格納させる。アドレスバス６５０からのアドレスが実装されていないアドレスの場合、または書き込みデータバス６５１からのデータをアドレスとしたときのアドレスが実装されていないアドレスの場合は、未実装であることを認識し、そのアドレスをエラーアドレスとしてエラーアドレス格納部６１５に格納する。
【０１７８】
アドレスを格納した場合は、外部デバイスが受け付けて、外部デバイス６０２からの読み出しデータを読み出しデータ格納部６１３に格納するまで保持し、格納を完了後にプリフェッチ動作を完了する。エラーアドレスを格納した場合は、マスタ６０１が受け付けるまで保持し、受付を完了後にプリフェッチ動作を完了する。
【０１７９】
プリフェッチデータ読み出し動作は、マスタ６０１からの読み出し要求に応じて、外部デバイスアクセス装置６０３にアドレスバス６５０からのアドレスと、Ｒ／Ｗ信号バス６５３からのＲ／Ｗ信号とがアドレス制御部６１４に入力される。
【０１８０】
アドレス制御部６１４では、Ｒ／Ｗ信号と、アドレスバス６５０からのアドレスが読み出しデータ格納部６１３に割り当てられたアドレスである場合は、プリフェッチデータ読み出し動作であることを認識し、読み出しデータ許可信号６６４を読み出しデータ格納部６１３に出力して、読み出しデータバス６５２を介してマスタ６０１に出力する。アドレスバス６５０からのアドレスが実装されていないアドレスの場合は、未実装であることを認識し、未実装情報として未実装情報格納部６１５に格納する。
【０１８１】
アドレスを格納した場合は、マスタ６０１が読み出しデータを受け付けるまで読み出しデータを保持し、受付を完了後にプリフェッチリード動作を完了する。エラーアドレスを格納した場合は、マスタ６０１が受け付けるまで保持し、受付を完了後にプリフェッチ動作を完了する。
【０１８２】
これら動作を持つことによる利点としては、通常書き込み動作では、第１の発明を実施するための形態及び第５の発明を実施するための形態に記載の利点に加えて、読み出しデータ格納部６１３のみでマスタ６０１にエラーアドレスを送ることを実現できるため、外部デバイスアクセス装置の面積増加を抑制することが可能となる。
【０１８３】
プリフェッチ動作では、第１の発明を実施するための形態及び第５の発明を実施するための形態に記載の利点に加えて、読み出しデータ格納部６１３のみでマスタ６０１にエラーアドレスを送ることを実現できるため、外部デバイスアクセス装置の面積増加を抑制することが可能となる。
【０１８４】
プリフェッチデータ読み出し動作では、第１の発明を実施するための形態及び第５の発明を実施するための形態に記載の利点に加えて、読み出しデータ格納部６１３のみでマスタ６０１にエラーアドレスを送ることを実現できるため、外部デバイスアクセス装置の面積増加を抑制することが可能となる。
【０１８５】
＜第７の実施形態＞
本発明の第７の実施形態の外部デバイスアクセス装置について、図面を参照しながら説明する。
【０１８６】
図９は本発明の第７の実施形態の外部デバイスアクセス装置構成図である。
【０１８７】
はじめに外部デバイスアクセス装置７０３の構成について説明する。
【０１８８】
外部デバイスアクセス装置７０３は、マスタ７０１と、アドレスバス７５０、書き込みデータ入力バス７５１、読み出しデータ出力バス７５２、Ｒ／Ｗ信号入力バス７５３を介して接続し、外部デバイス７０２と、書き込みアドレス出力バス７７０、書き込みデータ出力バス７７１、読み出しアドレス出力バス７７２、読み出しデータ入力バス７７３を介して接続される。
【０１８９】
また、外部デバイスアクセス装置７０３は、書き込みアドレス格納部７１０、書き込みデータ格納部７１１、読み出しアドレス格納部７１２、読み出しデータ格納部７１３、アドレス制御部７１４、格納動作状態保持部７１５から構成される。
【０１９０】
書き込みアドレス格納部７１０は、アドレス制御部７１４から書き込みアドレス７６０と書き込み許可信号７６１を入力し、格納したアドレスを外部デバイス７０２へ出力する。
【０１９１】
書き込みデータ格納部７１１は、マスタから、書き込みデータ入力バス７５１を介した書き込みデータと、アドレス制御部７１４から書き込み許可信号７６１とを入力し、格納したデータを外部デバイス７０２へ出力する。
【０１９２】
読み出しアドレス格納部７１２は、アドレス制御部７１４から読み出しアドレス７６２と読み出しアドレス許可信号７６３とを入力し、格納したアドレスを外部デバイス７０２へ出力する。
【０１９３】
読み出しデータ格納部７１３は、外部デバイスから読み出しデータ入力バス７７３を介した読み出しデータと、アドレス制御部からの読み出しデータ許可信号７６４を入力し、格納したデータをマスタ７０１へ出力する。
【０１９４】
また、読み出しデータ格納部７１３は、マスタ７０１が持つアクセス空間に割り当てられたアドレスを持つ。
【０１９５】
アドレス制御部７１４は、マスタから、アドレスバス７５０を介したアドレスと、Ｒ／Ｗ信号バス７５３を介したＲ／Ｗ信号と、書き込みデータ入力バス７５１を介した書き込みデータとを入力し、書き込みアドレス７６０と、書き込み許可信号７６１とを書き込みアドレス格納部７１０へ出力し、書き込み許可信号７６１を書き込みデータ格納部７１１へ出力し、読み出しアドレス７６２と読み出しアドレス許可信号７６３とを読み出しアドレス格納部７１２へ出力し、読み出しデータ許可信号７６４を読み出しデータ格納部７１３と格納動作状態保持部７１５へ出力する。
【０１９６】
格納動作保持部保持部７１５は、外部デバイスから読み出しデータ入力バス７７３を介した読み出しデータと、読み出しアドレス格納部７１２からのアドレスと、アドレス制御部７１４から読み出しデータ許可信号７６４を入力し、アドレス制御部７１４へ格納動作状態７６５を出力する。
【０１９７】
次に外部デバイスアクセス装置７０３の動作について説明する。第１の発明を実施する形態での説明と同様に、通常書き込み動作、プリフェッチ動作、プリフェッチデータ読み出し動作である。
【０１９８】
通常書き込み動作は、マスタ７０１からの書き込み要求に応じて、外部デバイスアクセス装置７０３にアドレスバス７５０からのアドレスと、Ｒ／Ｗ信号バス７５３からのＲ／Ｗ信号がアドレス制御部７１４に入力される。
【０１９９】
アドレス制御部７１４では、Ｒ／Ｗ信号と、アドレスバス７５０からのアドレスが読み出しデータ格納部７１３に割り当てられたアドレスではないことをもとに、通常書き込み動作であることを認識し、書き込みアドレス７６０と書き込み許可信号７６１とを書き込みアドレス格納部７１０に出力してアドレスを格納させ、書き込み許可信号７６１を書き込みデータ格納部７１１に出力して書き込みデータバス７５１からのデータを格納させる。
【０２００】
格納したアドレスとデータは、外部デバイスが受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。
【０２０１】
プリフェッチ動作は、マスタ７０１からの書き込み要求に応じて、外部デバイスアクセス装置７０３にアドレスバス７５０からのアドレスと、Ｒ／Ｗ信号バス７５３からのＲ／Ｗ信号と、書き込みデータバス７５１からのデータがアドレス制御部７１４に入力される。
【０２０２】
アドレス制御部７１４では、Ｒ／Ｗ信号と、アドレスバス７５０からのアドレスが読み出しデータ格納部７１３に割り当てられたアドレスであることをもとに、プリフェッチ動作であることを認識し、書き込みデータバス７５１からのデータを読み出しアドレスとして、読み出しアドレス７６２と読み出しアドレス許可信号７６３とを読み出しアドレス格納部７１２に出力してアドレスを格納させる。
【０２０３】
格納したアドレスは、外部デバイス７０２に出力するとともに、格納動作中であることを示すために格納動作状態保持部７１５へも出力し、格納動作中であることを保持させる。出力したアドレスは外部デバイス７０２が受け付けて、外部デバイス７０２からの読み出しデータを読み出しデータ格納部７１３に格納するまで保持し、格納を完了後に、格納動作状態保持部７１５保持させていた格納動作中であることを取り消し、プリフェッチ動作を完了する。
【０２０４】
プリフェッチデータ読み出し動作は、マスタ７０１からの読み出し要求に応じて、外部デバイスアクセス装置７０３にアドレスバス７５０からのアドレスと、Ｒ／Ｗ信号バス７５３からのＲ／Ｗ信号とがアドレス制御部７１４に入力される。
【０２０５】
アドレス制御部７１４では、Ｒ／Ｗ信号と、アドレスバス７５０からのアドレスが読み出しデータ格納部７１３に割り当てられたアドレスであることと、格納動作状態保持部７１５からの格納動作状態７６５をもとに、プリフェッチデータ読み出し動作であること、かつ以前にマスタ７０１が要求したプリフェッチ動作中でないことを認識した場合は、読み出しデータ許可信号７６４を読み出しデータ格納部７１３に出力して、読み出しデータバス７５２を介してマスタ７０１に出力する。
【０２０６】
マスタ７０１が読み出しデータを受け付けるまで読み出しデータを保持し、受付を完了後にプリフェッチリード動作を完了する。
【０２０７】
プリフェッチデータ読み出し動作であること、かつ以前にマスタ７０１が要求したプリフェッチ動作中である場合には、外部デバイスアクセス装置７０３はマスタ７０１からのプリフェッチデータ読み出し動作を受けつけず、マスタ７０１を待機させる。
【０２０８】
これら動作を持つことによる利点としては、プリフェッチデータ読み出し動作では、第１の発明を実施するための形態に記載の利点に加えて、以前にマスタ７０１が要求したプリフェッチ動作中である場合には、プリフェッチデータ読み出し動作を受けつけないため、あらかじめ外部デバイス７０２のデータを読み出しデータ格納部７１３へ読み出しておく前のデータを読み出すことを防ぎ、マスタ７０１の要求する命令順序のとおりに動作することを保障することが可能となる。
【０２０９】
なお、本発明の構成は上記に詳述された構成に限定されない。例えば、第２の実施形態から第７の実施形態において、図１のように１つのマスタに対し複数の外部デバイスアクセス装置と複数の外部デバイスとを備える構成であっても、図３のように１つのマスタに対し１つの外部デバイスアクセス装置と複数の外部デバイスとを備える構成であってもよい。また、外部デバイスアクセス装置は、書き込みアドレス格納部、書き込みデータ格納部、読み出しアドレス格納部、読み出しデータ格納部、アドレス制御部、状態信号格納部、未実装情報格納部、エラーアドレス格納部、格納動作状態保持部を複数備えていてもよい。
【産業上の利用可能性】
【０２１０】
本発明にかかる外部デバイスアクセス装置は、マスタと外部デバイス間のアクセスに関して、マスタの状態に依存しないアクセスを実現して、アクセスペナルティを低減し、マスタの性能への影響を低減できる効果があり、マスタと外部デバイスを備えるシステムＬＳＩに有用である。またマスタに対して、外部デバイスの構成に依存せず外部デバイスを容易に拡張できるため、システムＬＳＩにおいてマスタを汎用的に用いる場合には、マスタを改変する必要が生じないため、開発コストを大幅に削減できることが有用である。
【符号の説明】
【０２１１】
１０１  マスタ
１０２  外部デバイス
１０３  外部デバイスアクセス装置
１１０  書き込みアドレス格納部
１１１  書き込みデータ格納部
１１２  読み出しアドレス格納部
１１３  読み出しデータ格納部
１１４  アドレス制御部
１５０  アドレスバス
１５１  書き込みデータ入力バス
１５２  読み出しデータ出力バス
１５３  Ｒ／Ｗ信号バス
１６０  書き込みアドレス
１６１  書き込み許可信号
１６２  読み出しアドレス
１６３  読み出しアドレス許可信号
１６４  読み出しデータ許可信号
１７０  書き込みアドレス出力バス
１７１  書き込みデータ入力出力バス
１７２  読み出しアドレス出力バス
１７３  読み出しデータ入力バス
２１５  状態信号格納部
２５４  状態信号出力バス
２７４  状態信号入力バス
３６４  読み出しデータ格納部制御
３６５  読み出しアドレス
３７２  読み出しアドレスバス
４１５  未実装情報格納部
４５４  未実装情報バス
４６５  未実装情報
５１５  エラーアドレス格納部
５５４  エラーアドレスバス
５６５  エラーアドレス
６６４  読み出しデータ格納部制御
６６５  エラーアドレス
７１５  格納動作状態保持部
７６５  格納動作状態
【図１】
2010244580.tif 000003
【図２】
2010244580.tif 000004
【図３】
2010244580.tif 000005
【図４】
2010244580.tif 000006
【図５】
2010244580.tif 000007
【図６】
2010244580.tif 000008
【図７】
2010244580.tif 000009
【図８】
2010244580.tif 000010
【図９】
2010244580.tif 000011