JP2010244580A - 外部デバイスアクセス装置 - Google Patents

外部デバイスアクセス装置 Download PDF

Info

Publication number
JP2010244580A
JP2010244580A JP2010163414A JP2010163414A JP2010244580A JP 2010244580 A JP2010244580 A JP 2010244580A JP 2010163414 A JP2010163414 A JP 2010163414A JP 2010163414 A JP2010163414 A JP 2010163414A JP 2010244580 A JP2010244580 A JP 2010244580A
Authority
JP
Japan
Prior art keywords
address
read
external device
write
master
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2010163414A
Other languages
English (en)
Inventor
Takahisa Kawakami
隆央 川上
Masaichi Nakajima
雅逸 中島
Tokuzo Kiyohara
督三 清原
Hiroyuki Morishita
広之 森下
Nobuo Higaki
信生 檜垣
Yosuke Kudo
洋介 工藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Original Assignee
Panasonic Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp filed Critical Panasonic Corp
Priority to JP2010163414A priority Critical patent/JP2010244580A/ja
Publication of JP2010244580A publication Critical patent/JP2010244580A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/06Address interface arrangements, e.g. address buffers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Bus Control (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Microcomputers (AREA)
  • Communication Control (AREA)

Abstract

【課題】マスタ自身の最適化しなくてもアクセス性能を劣化させず、システムLSI開発資産を有効活用させる外部デバイスアクセス装置およびシステムLSIを提供する。
【解決手段】アドレス制御部114は、マスタ101から外部デバイス102への書き込み要求に応じて、マスタ101からの書き込みアドレス150と書き込みデータ151とをそれぞれ書き込みアドレス格納部110と書き込みデータ格納部111とに格納するとともに、マスタに受理信号155を出力し、さらに、書き込みアドレスによって指定される外部デバイス102に対して、当該書き込みデータを書き込み、マスタ11101によって読み出しアドレス格納部112に読み出しアドレスが格納されたとき、当該読み出しアドレスによって指定される外部デバイス102からデータを読み出し、読み出しデータ格納113に格納する。
【選択図】図2

Description

本発明は、システムLSIにおいて、マスタが外部デバイスへアクセスすることに関し、特に、マスタが外部デバイスを容易に拡張し、かつ拡張の際にマスタが外部デバイスの種類に依存しないための外部デバイスアクセス装置に関する。
メディア処理には外部デバイスでマスタをアシストすることが有効な場合があり、そのためのマスタには、外部デバイスを拡張するための拡張バスを持たせることがある。
ここで、メディア処理とは、音声処理、画像処理などのデータ処理一般のこと、マスタとはCPUやマイコン等、主制御を担当する装置のこと、外部デバイスとはそのCPUやマイコン等をアシストする、コプロセッサやアクセラレータ、メモリ等の周辺装置のことである。
マスタは拡張バスを持ち、アクセス空間に外部デバイスの資源を割り当てることで、その外部デバイスの資源をマスタの拡張された資源として扱うことができるようになり、マスタと外部デバイスとの通信を高速に行うことが可能となる。このことにより、マスタの処理性能を上げ、ソフト・ハードの両面の機能実現をさらに容易にすることができる。
ここで、アクセス空間とはマスタがアクセスできる、プログラムアクセス、データアクセスや入出力アクセス等のためのアドレスの割り当てられた空間のことである。
このアクセスを実現する方法としては、従来、マスタが拡張バスのインターフェースをもち、そのインターフェースを介して、オンチップの外部デバイスにアクセスする方法や、さらに、チップ外の外部デバイスに対しては、別のインターフェースを介して、拡張バスのプロトコルに変換して、マスタの拡張バスのインターフェースを介してアクセスするなどの方法が取られてきた。(例えば、特許文献1参照。)
特開平7−6151号公報(第15頁、図5)
従来の方法では、システムLSIのカスタマイズにおいて、例えばメディア処理の高度化に伴ってマスタを高速化する場合、個々に動作速度の異なる外部デバイスへのアクセスに対応するために、外部デバイス毎にマスタ自身を最適化することが必要であり、システムLSIのカスタマイズを複雑かつ煩雑にしているという問題がある。
また、外部デバイス個別の最適化をマスタ自身において実施しない場合は、ボトルネックとなる外部デバイスへのアクセスレイテンシやスループットなどによるペナルティがマスタの性能に多大な影響を与えてしまうという課題がある。
また、外部デバイス個別の最適化をマスタ自身において実施するためには、新たなメディア処理に対応した外部デバイスが新規に必要となる度に、また不具合等の理由で外部デバイスが改変される度に、マスタ自身の改変をする必要が発生し、開発資産の有効活用という点において、多大なロスを生み出すという課題がある。
本発明は、マスタ自身の最適化しなくてもマスタから外部デバイスへのアクセス性能を劣化させず、システムLSI開発資産を有効活用させる外部デバイスアクセス装置およびシステムLSIを提供することを目的とする。
上記課題を解決するため本発明の外部デバイスアクセス装置は、マスタから外部デバイスへのアクセスを制御する外部デバイスアクセス装置であって、前記マスタからの外部デバイスへの書き込み要求に応じて、書き込みアドレスを格納するための書き込みアドレス格納手段と、前記書き込み要求に応じて、書き込みデータを格納するための書き込みデータ格納手段と、前記マスタからアクセス可能であり、読み出しアドレスを格納するための読み出しアドレス格納手段と、前記マスタからアクセス可能であり、外部デバイスから読み出されたデータを格納するための読み出しデータ格納手段と、前記マスタからの書き込み要求または読み出し要求とアドレス指定に応じて、外部デバイスへのアクセスを制御する制御手段とを備え、前記制御手段は、前記マスタから外部デバイスへの書き込み要求に応じて、マスタからの書き込みアドレスと書き込みデータとをそれぞれ書き込みアドレス格納手段と書き込みデータ格納手段とに格納するとともに、マスタに受理信号を出力し、さらに、当該書き込みアドレスによって指定される外部デバイスに対して、当該書き込みデータを書き込み、マスタによって前記読み出しアドレス格納手段に読み出しアドレスが格納されたとき、当該読み出しアドレスによって指定される外部デバイスからデータを読み出し、前記読み出しデータ格納手段に格納する。
この構成によれば、メディア処理の高度化に伴ってマスタが高速化する場合、個々に動作速度の異なる外部デバイスへのアクセスにおいて、マスタの書き込み要求または読み出し要求時にマスタの状態に依存しないアクセスを実現し、外部デバイスへのアクセスペナルティを隠蔽してマスタの性能への影響を少なくできる効果がある。
さらに外部デバイスに応じて、外部デバイスアクセス装置の資源を調整することにより、外部デバイスへのアクセスの最適化が容易に実施できる効果がある。
またシステムLSIにおいては、マスタが外部デバイスへアクセスするために外部デバイスアクセス装置を備えることにより、システムLSIを開発する度にマスタの改変をする必要がなくなり外部デバイスアクセス装置の改変のみで済むため、システムLSIにおけるマスタの開発コストを大幅に低減する効果がある。
ここで、前記外部デバイスアクセス装置は、さらに、前記外部デバイスから出力される状態信号を格納する状態信号格納手段を備え、前記制御部は、さらに、前記書き込みデータ格納手段に格納されたデータを外部デバイスに書き込むと同時に、前記外部デバイスから出力される前記状態信号を前記状態信号格納手段に格納し、前記読み出しアドレス格納手段に格納されたアドレスによって指定される外部デバイスからデータを読み出して前記読み出しデータ格納手段に格納すると同時に、前記外部デバイスから出力される状態信号を前記状態信号格納手段に格納し、前記状態信号格納手段は、格納している状態信号を前記マスタに出力するようにしてもよい。
この構成によれば、さらに外部デバイスの状態をマスタへ伝達する機能を実現し、マスタの性能に寄与する効果がある。
ここで、前記外部デバイスアクセス装置は、前記読み出しアドレス格納手段および前記読み出しデータ格納手段の代わりに、それらを兼用するアドレス/データ格納手段を備えるようにしてもよい。
この構成によれば、さらに読み出しアドレス格納手段と前記読み出しデータ格納手段とを独立に備える必要がなくなるので、外部デバイスアクセス装置をより小さくし、コストを削減する効果がある。
ここで、前記外部デバイスアクセス装置は、さらに、前記書き込みアドレスまたは前記読み出しアドレスが、未実装の外部デバイスのアドレスであるか否かを示す未実装情報を格納するための未実装情報格納手段を備え、前記制御部は、さらに、前記書き込みアドレス格納手段または読み出しアドレス格納手段に格納された書き込みアドレスまたは読み出しアドレスによって指定される外部デバイスが未実装であるかどうかを判定し、未実装である場合には、前記未実装情報格納手段に未実装情報を格納し、当該未実装情報を前記マスタに通知するようにしてもよい。
この構成によれば、さらに読み出しアドレスまたは書き込みアドレスが、実装されていない外部デバイスを指すことを検出する機能を実現し、マスタの性能に寄与する効果がある。
ここで、前記外部デバイスアクセス装置は、さらに、未実装の外部デバイスのアドレスをエラーアドレスとして格納するためのエラーアドレス格納手段を備え、前記制御部は、さらに、前記書き込みアドレス格納手段または読み出しアドレス格納手段に格納された書き込みアドレスまたは読み出しアドレスによって指定される外部デバイスが未実装であるかどうかを判定し、未実装である場合には、当該アドレスをエラーアドレスとして前記エラーアドレス格納手段に格納し、当該エラーアドレスを前記マスタに通知するようにしてもよい。
この構成によれば、さらに指定されたアドレスが、任意の外部デバイスに対して実装されていないことを検出し、そのアドレスをマスタが認識できる機能を実現し、マスタの性能に寄与する効果がある。
ここで、前記制御部は、さらに、前記書き込みアドレス格納手段または読み出しアドレス格納手段に格納された書き込みアドレスまたは読み出しアドレスによって指定される外部デバイスが未実装であるかどうかを判定し、未実装である場合には、当該アドレスをエラーアドレスとして前記読み出しデータ格納手段に格納し、当該エラーアドレスを前記マスタに通知するようにしてもよい。
この構成によれば、エラーアドレス格納手段を独立に備える必要がなく、外部デバイスアクセス装置をより小さくし、コストを削減する効果がある。
ここで、前記外部デバイスアクセス装置は、さらに、前記マスタからの書き込み要求に応じて、外部デバイスから読み出しデータ格納手段への読み出しを完了したか否かを示す格納動作状態信号を格納する格納動作状態保持手段を備え、前記制御部は、さらに、格納動作状態信号に基づいて、前記マスタから読み出しアドレス格納手段への書き込みを規制するようにしてもよい。
この構成によれば、さらに、マスタが外部デバイスの格納動作状態を認識し、マスタのアクセス要求順序を保持することで、マスタの性能に寄与する効果がある。
また、本発明のシステムLSIは、上記と同様の手段を備える。
本発明によれば、メディア処理の高度化に伴ってマスタが高速化する場合、個々に動作速度の異なる外部デバイスへのアクセスにおいて、マスタの書き込み要求または読み出し要求時にマスタの状態に依存しないアクセスを実現し、外部デバイスへのアクセスペナルティを隠蔽してマスタの性能への影響を少なくできる効果がある。
さらに外部デバイスに応じて、外部デバイスアクセス装置の資源を調整することにより、外部デバイスへのアクセスの最適化が容易に実施できる効果がある。
またシステムLSIにおいては、マスタが外部デバイスへアクセスするために外部デバイスアクセス装置を備えることにより、システムLSIを開発する度にマスタの改変をする必要がなくなり外部デバイスアクセス装置の改変のみで済むため、システムLSIにおけるマスタの開発コストを大幅に低減する効果がある。
さらに外部デバイスの状態をマスタへ伝達する機能を実現し、マスタの性能に寄与する効果がある。
また外部デバイスアクセス装置をより小さくしてコストを削減し、マスタの性能に寄与する効果がある。
図1は、第1の実施形態のシステムLSIの構成を示すブロック図である。 図2は、第1の実施形態の外部デバイスアクセス装置の構成を示すブロック図である。 図3は、第1の実施形態の他のシステムLSIの構成を示すブロック図である。 図4は、第2の実施形態の外部デバイスアクセス装置の構成を示すブロック図である。 図5は、第3の実施形態の外部デバイスアクセス装置の構成を示すブロック図である。 図6は、第4の実施形態の外部デバイスアクセス装置の構成を示すブロック図である。 図7は、第5の実施形態の外部デバイスアクセス装置の構成を示すブロック図である。 図8は、第6の実施形態の外部デバイスアクセス装置の構成を示すブロック図である。 図9は、第7の実施形態の外部デバイスアクセス装置の構成を示すブロック図である。
以下、マスタとはCPUやマイコン等、書き込みまたは読み出しの制御を担当する装置のことを指し、外部デバイスとはそのCPUやマイコン等をアシストする、コプロセッサやアクセラレータ等の装置を指し、かつその装置はマスタがアドレス指定によりアクセス可能な資源を有しているとし、実施例を示していく。
<第1の実施形態>
本発明の第1の実施形態の外部デバイスアクセス装置について、図面を参照しながら説明する。
図1は、本発明の第1の実施形態におけるシステムLSIを示すブロック図である。このシステムLSIは、マスタ101と、外部デバイス102、102a、102b、・・・と、外部デバイスアクセス装置103、103a、103b、・・・を備える。この例では、外部デバイスアクセス装置は外部デバイスに対応して備えられる。外部デバイスアクセス装置103は、マスタ101の外部デバイス102への書き込み要求または読み出し要求を受けて、マスタ101の状態に依存しないアクセスを実現し、マスタ101に対して外部デバイスへのアクセスペナルティを隠蔽するように構成されている。外部デバイスアクセス装置103a、103b、・・・も同様である。
図2は本発明の第1の実施形態の外部デバイスアクセス装置103の構成を示すブロック図である。
はじめに外部デバイスアクセス装置103の構成について説明する。
外部デバイスアクセス装置103は、マスタ101との間でアドレスバス150、書き込みデータ入力バス151、読み出しデータ出力バス152、書き込み読み出し制御信号(以下、R/W信号と呼ぶ)バス153、受理信号155を介して接続され、また、外部デバイス102との間で、書き込みアドレス出力バス170、書き込みデータ出力バス171、読み出しアドレス出力バス172、読み出しデータ入力バス173を介して接続される。
また、外部デバイスアクセス装置103は、書き込みアドレス格納部110、書き込みデータ格納部111、読み出しアドレス格納部112、読み出しデータ格納部113、アドレス制御部114から構成される。
書き込みアドレス格納部110は、アドレス制御部114から書き込みアドレス160と書き込み許可信号161を入力し、格納したアドレスを外部デバイス102へ出力する。
書き込みデータ格納部111は、マスタから、書き込みデータ入力バス151を介した書き込みデータと、アドレス制御部114から書き込み許可信号161とを入力し、格納したデータを外部デバイス102へ出力する。
読み出しアドレス格納部112は、アドレス制御部114から読み出しアドレス162と読み出しアドレス許可信号163とを入力し、格納したアドレスを外部デバイス102へ出力する。
読み出しデータ格納部113は、外部デバイスから読み出しデータ入力バス173を介した読み出しデータと、アドレス制御部からの読み出しデータ許可信号164を入力し、格納したデータをマスタ101へ出力する。
また、読み出しデータ格納部113は、マスタ101が持つアクセス空間に割り当てられたアドレスを持つ。
アドレス制御部114は、マスタから、アドレスバス150を介したアドレスと、R/W信号バス153を介したR/W信号と、書き込みデータ入力バス151を介した書き込みデータとを入力し、書き込みアドレス160と、書き込み許可信号161とを書き込みアドレス格納部110へ出力し、書き込み許可信号161を書き込みデータ格納部111へ出力し、読み出しアドレス162と読み出しアドレス許可信号163とを読み出しアドレス格納部112へ出力し、読み出しデータ許可信号164を読み出しデータ格納部113へ出力する。
次に外部デバイスアクセス装置103の動作について説明する。
外部デバイスアクセス装置103の動作は、通常の書き込み動作、あらかじめ外部デバイス102のデータを読み出しデータ格納部113へ読み出しておく動作、あらかじめ読み出しデータ格納部113へ読み出しておいたデータをマスタ101へ出力する動作であり、順に、通常書き込み動作、プリフェッチ動作、プリフェッチデータ読み出し動作とする。
通常書き込み動作は、マスタ101からの書き込み要求に応じて、外部デバイスアクセス装置103にアドレスバス150からのアドレスと、R/W信号バス153からのR/W信号がアドレス制御部114に入力される。
アドレス制御部114では、R/W信号と、アドレスバス150からのアドレスが読み出しデータ格納部113に割り当てられたアドレスではないことをもとに、通常書き込み動作であることを認識し、書き込みアドレス160と書き込み許可信号161とを書き込みアドレス格納部110に出力してアドレスを格納させ、書き込み許可信号161を書き込みデータ格納部111に出力して書き込みデータバス151からのデータを格納させる。
格納したアドレスとデータは、外部デバイスが受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。
プリフェッチ動作は、マスタ101からの書き込み要求に応じて、外部デバイスアクセス装置103にアドレスバス150からのアドレスと、R/W信号バス153からのR/W信号と、書き込みデータバス151からのデータがアドレス制御部114に入力される。
アドレス制御部114では、R/W信号と、アドレスバス150からのアドレスが読み出しデータ格納部113に割り当てられたアドレスであることをもとに、プリフェッチ動作であることを認識し、書き込みデータバス151からのデータを読み出しアドレスとして、読み出しアドレス162と読み出しアドレス許可信号163とを読み出しアドレス格納部112に出力してアドレスを格納させる。
格納したアドレスは、外部デバイス102が受け付けて、外部デバイス102からの読み出しデータを読み出しデータ格納部113に格納するまで保持し、格納を完了後にプリフェッチ動作を完了する。
プリフェッチデータ読み出し動作は、マスタ101からの読み出し要求に応じて、外部デバイスアクセス装置103にアドレスバス150からのアドレスと、R/W信号バス153からのR/W信号とがアドレス制御部114に入力される。
アドレス制御部114では、R/W信号と、アドレスバス150からのアドレスが読み出しデータ格納部113に割り当てられたアドレスであることをもとに、プリフェッチデータ読み出し動作であることを認識し、読み出しデータ許可信号164を読み出しデータ格納部113に出力して、読み出しデータバス152を介してマスタ101に出力する。
マスタ101が読み出しデータを受け付けるまで読み出しデータを保持し、受付を完了後にプリフェッチリード動作を完了する。
これら動作を持つことによる利点としては、通常書き込み動作では、マスタ101からの書き込み要求を外部デバイスアクセス装置103が保持するため、外部デバイスの受付を待つことなくマスタ101は書き込みを完了させて動作することが可能となり、マスタ101に依存することなく、外部デバイス102への書き込みを行うことが可能となる。
プリフェッチ動作では、マスタ101からの書き込み要求を使用して、あらかじめ外部デバイス102のデータを読み出しデータ格納部113へ読み出しておく動作を実現するとともに、通常書き込み動作と同様に、マスタ101からの書き込み要求を外部デバイスアクセス装置103が読み出し要求として保持するため、外部デバイスの受付を待つことなくマスタ101は書き込みを完了させて動作することが可能となり、マスタ101に依存することなく、外部デバイス102からの読み出しを行うことが可能となる。
プリフェッチデータ読み出し動作では、マスタ101からの読み出し要求により、あらかじめ読み出しデータ格納部113へ読み出しておいたデータをマスタ101へ出力するため、外部デバイス102に依存することなく、データの読み出しを行うことが可能となる。
なお、図1のシステムLSIでは外部デバイスアクセス装置と外部デバイスとが1対1で対応しているが、1対多で対応するようにしてもよい。その場合のシステムLSIの構成例を図3に示す。図3の外部デバイスアクセス装置1030は、複数の外部デバイスのそれぞれのアクセスレイテンシに対応し、マスタ101に対して各外部デバイスへのアクセスペナルティを隠蔽するように構成されている。
<第2の実施形態>
本発明の第2の実施形態の外部デバイスアクセス装置について、図面を参照しながら説明する。
図4は本発明の第2の実施形態の外部デバイスアクセス装置構成図である。
はじめに外部デバイスアクセス装置203の構成について説明する。
外部デバイスアクセス装置203は、マスタ201との間でアドレスバス250、書き込みデータ入力バス251、読み出しデータ出力バス252、R/W信号入力バス253、状態信号出力バス254、受理信号255を介して接続され、また、外部デバイス202との間で書き込みアドレス出力バス270、書き込みデータ出力バス271、読み出しアドレス出力バス272、読み出しデータ入力バス273、状態信号入力バス274を介して接続される。
また、外部デバイスアクセス装置203は、書き込みアドレス格納部210、書き込みデータ格納部211、読み出しアドレス格納部212、読み出しデータ格納部213、アドレス制御部214、状態信号格納部215、セレクタ216から構成される。
書き込みアドレス格納部210は、アドレス制御部214から書き込みアドレス260と書き込み許可信号261を入力し、格納したアドレスを外部デバイス202へ出力する。
書き込みデータ格納部211は、マスタから、書き込みデータ入力バス251を介した書き込みデータと、アドレス制御部214から書き込み許可信号261とを入力し、格納したデータを外部デバイス202へ出力する。
読み出しアドレス格納部212は、アドレス制御部214から読み出しアドレス262と読み出しアドレス許可信号263とを入力し、格納したアドレスを外部デバイス202へ出力する。
読み出しデータ格納部213は、外部デバイスから読み出しデータ入力バス273を介した読み出しデータと、アドレス制御部214からの読み出しデータ許可信号264を入力し、格納したデータをマスタ201へ出力する。
また、読み出しデータ格納部213は、マスタ201が持つアクセス空間に割り当てられたアドレスを持つ。
アドレス制御部214は、マスタから、アドレスバス250を介したアドレスと、R/W信号バス253を介したR/W信号と、書き込みデータ入力バス251を介した書き込みデータとを入力し、書き込みアドレス260と、書き込み許可信号261とを書き込みアドレス格納部210へ出力し、書き込み許可信号261を書き込みデータ格納部211へ出力し、読み出しアドレス262と読み出しアドレス許可信号263とを読み出しアドレス格納部212へ出力し、読み出しデータ許可信号264を読み出しデータ格納部213へ出力する。
状態信号格納部215は、外部デバイスから状態信号入力バス274を介した状態信号を入力し、格納した信号をセレクタ216へ出力する。
セレクタ216は、状態信号入力バス274を介して入力される状態信号と、状態信号
格納部215に格納されている状態信号を、読み出しデータ許可信号264で選択して、状態信号出力バス254を介してマスタ201へ出力する。
次に外部デバイスアクセス装置203の動作について説明する。第1の発明を実施する形態での説明と同様に、通常書き込み動作、プリフェッチ動作、プリフェッチデータ読み出し動作である。
通常書き込み動作は、マスタ201からの書き込み要求に応じて、外部デバイスアクセス装置203にアドレスバス250からのアドレスと、R/W信号バス253からのR/W信号がアドレス制御部214に入力される。
アドレス制御部214では、R/W信号と、アドレスバス250からのアドレスが読み出しデータ格納部213に割り当てられたアドレスではないことをもとに、通常書き込み動作であることを認識し、書き込みアドレス260と書き込み許可信号261とを書き込みアドレス格納部210に出力してアドレスを格納させ、書き込み許可信号261を書き込みデータ格納部211に出力して書き込みデータバス251からのデータを格納させる。
格納したアドレスとデータは、外部デバイス202が受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。
また本動作時は、外部デバイス202の状態を状態信号として、セレクタ216で選択し、直接マスタ201へ出力する。
プリフェッチ動作は、マスタ201からの書き込み要求に応じて、外部デバイスアクセス装置203にアドレスバス250からのアドレスと、R/W信号バス253からのR/W信号と、書き込みデータバス251からのデータがアドレス制御部214に入力される。
アドレス制御部214では、R/W信号と、アドレスバス250からのアドレスが読み出しデータ格納部213に割り当てられたアドレスであることをもとに、プリフェッチ動作であることを認識し、書き込みデータバス251からのデータを読み出しアドレスとして、読み出しアドレス262と読み出しアドレス許可信号263とを読み出しアドレス格納部212に出力してアドレスを格納させる。
格納したアドレスは、外部デバイスが受け付けて、外部デバイス202からの読み出しデータを読み出しデータ格納部213に格納するまで保持し、格納を完了後にプリフェッチ動作を完了する。
また本動作時は、外部デバイス202の状態を状態信号として、状態信号格納部215に格納する。
プリフェッチデータ読み出し動作は、マスタ201からの読み出し要求に応じて、外部デバイスアクセス装置203にアドレスバス250からのアドレスと、R/W信号バス253からのR/W信号とがアドレス制御部214に入力される。
アドレス制御部214では、R/W信号と、アドレスバス250からのアドレスが読み出しデータ格納部213に割り当てられたアドレスであることをもとに、プリフェッチデータ読み出し動作であることを認識し、読み出しデータ許可信号264を読み出しデータ格納部213に出力して、読み出しデータバス252を介してマスタ201に出力する。
また本動作時は、状態信号格納部215に格納された状態信号をセレクタ216で選択し、マスタ201に出力する。
これら動作を持つことによる利点としては、通常書き込み動作では、第1の発明を実施するための形態に記載の利点に加えて、外部デバイス202の状態をマスタ201に送ることが可能となる。
プリフェッチ動作では、第1の発明を実施するための形態に記載の利点に加えて、プリフェッチした時点の外部デバイス202の状態を、状態信号格納部215に格納し保持しておくことが可能となる。
プリフェッチデータ読み出し動作では、第1の発明を実施するための形態に記載の利点に加えて、状態信号格納部215に保持しているプリフェッチ動作を完了した時点の外部デバイス202の状態を、マスタ201に送ることが可能となる。
<第3の実施形態>
本発明の第3の実施形態の外部デバイスアクセス装置について、図面を参照しながら説明する。
図5は本発明の第3の実施形態の外部デバイスアクセス装置構成図である。
はじめに外部デバイスアクセス装置303の構成について説明する。
外部デバイスアクセス装置303は、マスタ301との間でアドレスバス350、書き込みデータ入力バス351、読み出しデータ出力バス352、R/W信号入力バス353、受理信号355を介して接続され、また、外部デバイス302との間で書き込みアドレス出力バス370、書き込みデータ出力バス371、読み出しアドレス出力バス372、読み出しデータ入力バス373を介して接続される。
また、外部デバイスアクセス装置303は、書き込みアドレス格納部310、書き込みデータ格納部311、読み出しデータ格納部313、アドレス制御部314から構成される。
書き込みアドレス格納部310は、アドレス制御部314から書き込みアドレス360と書き込み許可信号361を入力し、格納したアドレスを外部デバイス302へ出力する。
書き込みデータ格納部311は、マスタから、書き込みデータ入力バス351を介した書き込みデータと、アドレス制御部314から書き込み許可信号361とを入力し、格納したデータを外部デバイス302へ出力する。
読み出しデータ格納部313は、読み出しアドレス362と読み出しアドレス許可信号363とを入力し、格納したアドレスを外部デバイス302へ出力する。その読み出しアドレスより外部デバイスから読み出しデータ入力バス373を介した読み出しデータと、アドレス制御部からの読み出しデータ格納部制御364を入力し、格納したデータをマスタ301へ出力する。
また、読み出しデータ格納部313は、マスタ301が持つアクセス空間に割り当てられたアドレスを持つ。
アドレス制御部314は、マスタから、アドレスバス350を介したアドレスと、R/W信号バス353を介したR/W信号と、書き込みデータ入力バス351を介した書き込みデータとを入力し、書き込みアドレス360と、書き込み許可信号361とを書き込みアドレス格納部310へ出力し、書き込み許可信号361を書き込みデータ格納部311へ出力し、読み出しアドレス365と、読み出しデータ格納部制御364を読み出しデータ格納部313へ出力する。
次に外部デバイスアクセス装置303の動作について説明する。第1の発明を実施する形態での説明と同様に、通常書き込み動作、プリフェッチ動作、プリフェッチデータ読み出し動作である。
通常書き込み動作は、マスタ301からの書き込み要求に応じて、外部デバイスアクセス装置303にアドレスバス350からのアドレスと、R/W信号バス353からのR/W信号がアドレス制御部314に入力される。
アドレス制御部314では、R/W信号と、アドレスバス350からのアドレスが読み出しデータ格納部313に割り当てられたアドレスではないことをもとに、通常書き込み動作であることを認識し、書き込みアドレス360と書き込み許可信号361とを書き込みアドレス格納部310に出力してアドレスを格納させ、書き込み許可信号361を書き込みデータ格納部311に出力して書き込みデータバス351からのデータを格納させる。
格納したアドレスとデータは、外部デバイス302が受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。
プリフェッチ動作は、マスタ301からの書き込み要求に応じて、外部デバイスアクセス装置303にアドレスバス350からのアドレスと、R/W信号バス353からのR/W信号と、書き込みデータバス351からのデータがアドレス制御部314に入力される。
アドレス制御部314では、R/W信号と、アドレスバス350からのアドレスが読み出しデータ格納部313に割り当てられたアドレスであることをもとに、プリフェッチ動作であることを認識し、書き込みデータバス351からのデータを読み出しアドレスとして、読み出しアドレス365と読み出しデータ格納部制御364とを読み出しデータ格納部313に出力してアドレスを格納させる。格納したアドレスは、外部デバイスが受け付けて、外部デバイス302からの読み出しデータを読み出しデータ格納部313に格納するまで保持し、格納を完了後にプリフェッチ動作を完了する。
プリフェッチデータ読み出し動作は、マスタ301からの読み出し要求に応じて、外部デバイスアクセス装置303にアドレスバス350からのアドレスと、R/W信号バス353からのR/W信号とがアドレス制御部314に入力される。
アドレス制御部314では、R/W信号と、アドレスバス350からのアドレスが読み出しデータ格納部313に割り当てられたアドレスであることをもとに、プリフェッチデータ読み出し動作であることを認識し、読み出しデータ格納部制御364を読み出しデータ格納部313に出力して、読み出しデータバス352を介してマスタ301に出力する。
マスタ301が読み出しデータを受け付けるまで読み出しデータを保持し、受付を完了後にプリフェッチリード動作を完了する。
これら動作を持つことによる利点としては、プリフェッチ動作では、第1の発明を実施するための形態及び第2の発明を実施するための形態に記載の利点に加えて、読み出しデータ格納部制御364を設けることにより、読み出しデータ格納部313のみでプリフェッチ動作を実現できるため、外部デバイスアクセス装置の面積増加を抑制することが可能となる。
<第4の実施形態>
本発明の第4の実施形態の外部デバイスアクセス装置について、図面を参照しながら説明する。
図6は本発明の第4の実施形態の外部デバイスアクセス装置構成図である。
はじめに外部デバイスアクセス装置403の構成について説明する。
外部デバイスアクセス装置403は、マスタ401との間でアドレスバス450、書き込みデータ入力バス451、読み出しデータ出力バス452、R/W信号入力バス453、未実装情報バス454、受理信号455を介して接続され、また、外部デバイス402と、書き込みアドレス出力バス470、書き込みデータ出力バス471、読み出しアドレス出力バス472、読み出しデータ入力バス473を介して接続される。
また、外部デバイスアクセス装置403は、書き込みアドレス格納部410、書き込みデータ格納部411、読み出しアドレス格納部412、読み出しデータ格納部413、アドレス制御部414、未実装情報格納部415から構成される。
書き込みアドレス格納部410は、アドレス制御部414から書き込みアドレス460と書き込み許可信号461を入力し、格納したアドレスを外部デバイス402へ出力する。
書き込みデータ格納部411は、マスタから、書き込みデータ入力バス451を介した書き込みデータと、アドレス制御部414から書き込み許可信号461とを入力し、格納したデータを外部デバイス402へ出力する。
読み出しアドレス格納部412は、アドレス制御部414から読み出しアドレス462と読み出しアドレス許可信号463とを入力し、格納したアドレスを外部デバイス402へ出力する。
読み出しデータ格納部413は、外部デバイスから読み出しデータ入力バス473を介した読み出しデータと、アドレス制御部からの読み出しデータ許可信号464を入力し、格納したデータをマスタ401へ出力する。
また、読み出しデータ格納部413は、マスタ401が持つアクセス空間に割り当てられたアドレスを持つ。
アドレス制御部414は、マスタから、アドレスバス450を介したアドレスと、R/W信号バス453を介したR/W信号と、書き込みデータ入力バス451を介した書き込みデータとを入力し、書き込みアドレス460と、書き込み許可信号461とを書き込みアドレス格納部410へ出力し、書き込み許可信号461を書き込みデータ格納部411へ出力し、読み出しアドレス162と読み出しアドレス許可信号463とを読み出しアドレス格納部412へ出力し、読み出しデータ許可信号464を読み出しデータ格納部413へ出力し、未実装情報465を未実装情報格納部415へ出力する。
未実装情報格納部415は、アドレス制御部414から未実装情報465を入力し、マスタ401へ未実装情報バス454を介して、格納した未実装情報を出力する。
次に外部デバイスアクセス装置403の動作について説明する。第1の発明を実施する形態での説明と同様に、通常書き込み動作、プリフェッチ動作、プリフェッチデータ読み出し動作である。
通常書き込み動作は、マスタ401からの書き込み要求に応じて、外部デバイスアクセス装置403にアドレスバス450からのアドレスと、R/W信号バス453からのR/W信号がアドレス制御部414に入力される。
アドレス制御部414では、R/W信号と、アドレスバス450からのアドレスが読み出しデータ格納部413に割り当てられたアドレスではない場合には、通常書き込み動作であることを認識し、書き込みアドレス460と書き込み許可信号461とを書き込みアドレス格納部410に出力してアドレスを格納させ、書き込み許可信号461を書き込みデータ格納部411に出力して書き込みデータバス451からのデータを格納させる。アドレスバス450からのアドレスが実装されていないアドレスの場合には、未実装であることを認識し、未実装情報465を未実装情報格納部415に格納する。
アドレスとデータを格納した場合は、外部デバイス402が受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。未実装情報を格納した場合は、マスタ401が受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。
プリフェッチ動作は、マスタ401からの書き込み要求に応じて、外部デバイスアクセス装置403にアドレスバス450からのアドレスと、R/W信号バス453からのR/W信号と、書き込みデータバス451からのデータがアドレス制御部414に入力される。
アドレス制御部414では、R/W信号と、アドレスバス450からのアドレスが読み出しデータ格納部413に割り当てられたアドレスである場合は、プリフェッチ動作であることを認識し、書き込みデータバス451からのデータを読み出しアドレスとして、読み出しアドレス462と読み出しアドレス許可信号463とを読み出しアドレス格納部412に出力してアドレスを格納させる。アドレスバス450からのアドレスが実装されていないアドレスの場合、または書き込みデータバス451からのデータをアドレスとしたときのアドレスが実装されていないアドレスの場合は、未実装であることを認識し、未実装情報465を未実装情報格納部415に格納する。
アドレスを格納した場合は、外部デバイスが受け付けて、外部デバイス402からの読み出しデータを読み出しデータ格納部413に格納するまで保持し、格納を完了後にプリフェッチ動作を完了する。未実装情報を格納した場合は、マスタ401が受け付けるまで保持し、受付を完了後にプリフェッチ動作を完了する。
プリフェッチデータ読み出し動作は、マスタ401からの読み出し要求に応じて、外部デバイスアクセス装置403にアドレスバス450からのアドレスと、R/W信号バス453からのR/W信号とがアドレス制御部414に入力される。
アドレス制御部414では、R/W信号と、アドレスバス450からのアドレスが読み出しデータ格納部413に割り当てられたアドレスである場合は、プリフェッチデータ読み出し動作であることを認識し、読み出しデータ許可信号464を読み出しデータ格納部413に出力して、読み出しデータバス452を介してマスタ401に出力する。アドレスバス450からのアドレスが実装されていないアドレスの場合は、未実装であることを認識し、未実装情報465を未実装情報格納部415に格納する。
アドレスを格納した場合は、マスタ401が読み出しデータを受け付けるまで読み出しデータを保持し、受付を完了後にプリフェッチリード動作を完了する。未実装情報を格納した場合は、マスタ401が受け付けるまで保持し、受付を完了後にプリフェッチ動作を完了する。
これら動作を持つことによる利点としては、通常書き込み動作では、第1の発明を実施するための形態に記載の利点に加えて、マスタ401からのアドレス指定に対して、実装されているかどうかを判定し未実装情報として送ることで、マスタ401に依存することなく、外部デバイス402に対する実装、未実装を容易に設定することが可能となる。
プリフェッチ動作では、第1の発明を実施するための形態に記載の利点に加えて、マスタ401からのアドレス指定、データに対して、実装されているかどうかを判定し未実装情報として送ることで、マスタ401に依存することなく、外部デバイス402、読み出しデータ格納部413に割り当てるアドレスに対する実装、未実装を容易に設定することが可能となる。
プリフェッチデータ読み出し動作では、第1の発明を実施するための形態に記載の利点に加えて、マスタ401からのアドレス指定に対して、実装されているかどうかを判定し未実装情報として送ることで、マスタ401に依存することなく、読み出しデータ格納部413に割り当てるアドレスに対する実装、未実装を容易に設定することが可能となる。
<第5の実施形態>
本発明の第5の実施形態の外部デバイスアクセス装置について、図面を参照しながら説明する。
図7は本発明の第5の実施形態の外部デバイスアクセス装置構成図である。
はじめに外部デバイスアクセス装置503の構成について説明する。
外部デバイスアクセス装置503は、マスタ501との間でアドレスバス550、書き込みデータ入力バス551、読み出しデータ出力バス552、R/W信号入力バス553、エラーアドレスバス554、受理信号555を介して接続され、また、外部デバイス502との間で、書き込みアドレス出力バス570、書き込みデータ出力バス571、読み出しアドレス出力バス572、読み出しデータ入力バス573を介して接続される。
また、外部デバイスアクセス装置503は、書き込みアドレス格納部510、書き込みデータ格納部511、読み出しアドレス格納部512、読み出しデータ格納部513、アドレス制御部514、エラーアドレス格納部515から構成される。
書き込みアドレス格納部510は、アドレス制御部514から書き込みアドレス560と書き込み許可信号561を入力し、格納したアドレスを外部デバイス502へ出力する。
書き込みデータ格納部511は、マスタから、書き込みデータ入力バス551を介した書き込みデータと、アドレス制御部514から書き込み許可信号561とを入力し、格納したデータを外部デバイス502へ出力する。
読み出しアドレス格納部512は、アドレス制御部514から読み出しアドレス562と読み出しアドレス許可信号563とを入力し、格納したアドレスを外部デバイス502へ出力する。
読み出しデータ格納部513は、外部デバイスから読み出しデータ入力バス573を介した読み出しデータと、アドレス制御部からの読み出しデータ許可信号564を入力し、格納したデータをマスタ501へ出力する。
また、読み出しデータ格納部513は、マスタ501が持つアクセス空間に割り当てられたアドレスを持つ。
アドレス制御部514は、マスタから、アドレスバス550を介したアドレスと、R/W信号バス553を介したR/W信号と、書き込みデータ入力バス551を介した書き込みデータとを入力し、書き込みアドレス560と、書き込み許可信号561とを書き込みアドレス格納部510へ出力し、書き込み許可信号561を書き込みデータ格納部511へ出力し、読み出しアドレス562と読み出しアドレス許可信号563とを読み出しアドレス格納部512へ出力し、読み出しデータ許可信号564を読み出しデータ格納部513へ出力し、エラーアドレス565をエラーアドレス格納部515へ出力する。
エラーアドレス格納部515は、アドレス制御部514からエラーアドレス565を入力し、マスタ501へエラーアドレスバス554を介して、格納したエラーアドレスを出力する。
次に外部デバイスアクセス装置503の動作について説明する。第1の発明を実施する形態での説明と同様に、通常書き込み動作、プリフェッチ動作、プリフェッチデータ読み出し動作である。
通常書き込み動作は、マスタ501からの書き込み要求に応じて、外部デバイスアクセス装置503にアドレスバス550からのアドレスと、R/W信号バス553からのR/W信号がアドレス制御部514に入力される。
アドレス制御部514では、R/W信号と、アドレスバス550からのアドレスが読み出しデータ格納部513に割り当てられたアドレスではない場合には、通常書き込み動作であることを認識し、書き込みアドレス560と書き込み許可信号561とを書き込みアドレス格納部510に出力してアドレスを格納させ、書き込み許可信号561を書き込みデータ格納部511に出力して書き込みデータバス551からのデータを格納させる。アドレスバス550からのアドレスが実装されていないアドレスの場合には、未実装であることを認識し、そのアドレスをエラーアドレス565としてエラーアドレス格納部515に格納する。
アドレスとデータを格納した場合は、外部デバイス502が受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。エラーアドレスを格納した場合は、マスタ501が受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。
プリフェッチ動作は、マスタ501からの書き込み要求に応じて、外部デバイスアクセス装置503にアドレスバス550からのアドレスと、R/W信号バス553からのR/W信号と、書き込みデータバス551からのデータがアドレス制御部514に入力される
アドレス制御部514では、R/W信号と、アドレスバス550からのアドレスが読み出しデータ格納部513に割り当てられたアドレスである場合は、プリフェッチ動作であることを認識し、書き込みデータバス551からのデータを読み出しアドレスとして、読み出しアドレス562と読み出しアドレス許可信号563とを読み出しアドレス格納部512に出力してアドレスを格納させる。アドレスバス550からのアドレスが実装されていないアドレスの場合、または書き込みデータバス551からのデータをアドレスとしたときのアドレスが実装されていないアドレスの場合は、未実装であることを認識し、そのアドレスをエラーアドレス565としてエラーアドレス格納部515に格納する。
アドレスを格納した場合は、外部デバイスが受け付けて、外部デバイス502からの読み出しデータを読み出しデータ格納部513に格納するまで保持し、格納を完了後にプリフェッチ動作を完了する。エラーアドレスを格納した場合は、マスタ501が受け付けるまで保持し、受付を完了後にプリフェッチ動作を完了する。
プリフェッチデータ読み出し動作は、マスタ501からの読み出し要求に応じて、外部デバイスアクセス装置503にアドレスバス550からのアドレスと、R/W信号バス553からのR/W信号とがアドレス制御部514に入力される。
アドレス制御部514では、R/W信号と、アドレスバス550からのアドレスが読み出しデータ格納部513に割り当てられたアドレスである場合は、プリフェッチデータ読み出し動作であることを認識し、読み出しデータ許可信号564を読み出しデータ格納部513に出力して、読み出しデータバス552を介してマスタ501に出力する。アドレスバス550からのアドレスが実装されていないアドレスの場合は、未実装であることを認識し、そのアドレスをエラーアドレス565としてエラーアドレス格納部515に格納する。
アドレスを格納した場合は、マスタ501が読み出しデータを受け付けるまで読み出しデータを保持し、受付を完了後にプリフェッチリード動作を完了する。エラーアドレスを格納した場合は、マスタ501が受け付けるまで保持し、受付を完了後にプリフェッチ動作を完了する。
これら動作を持つことによる利点としては、通常書き込み動作では、第1の発明を実施するための形態に記載の利点に加えて、マスタ501からのアドレス指定に対して、実装されているかどうかを判定しエラーアドレスとして送ることで、マスタ501は容易にエラーアドレスを知ることが可能となり、例えばデバッグ時などに有効となる。
プリフェッチ動作では、第1の発明を実施するための形態に記載の利点に加えて、マスタ501からのアドレス指定、データに対して、実装されているかどうかを判定しエラーアドレスとして送ることで、マスタ501は容易にエラーアドレスを知ることが可能となり、例えばデバッグ時などに有効となる。
プリフェッチデータ読み出し動作では、第1の発明を実施するための形態に記載の利点に加えて、マスタ501からのアドレス指定に対して、実装されているかどうかを判定しエラーアドレスとして送ることで、マスタ501は容易にエラーアドレスを知ることが可能となり、例えばデバッグ時などに有効となる。
<第6の実施形態>
本発明の第6の実施形態の外部デバイスアクセス装置について、図面を参照しながら説明する。
図8は本発明の第6の実施形態の外部デバイスアクセス装置構成図である。
はじめに外部デバイスアクセス装置603の構成について説明する。
外部デバイスアクセス装置603は、マスタ601と、アドレスバス650、書き込みデータ入力バス651、読み出しデータ出力バス652、R/W信号入力バス653、エラーアドレスバス654を介して接続し、外部デバイス602と、書き込みアドレス出力バス670、書き込みデータ出力バス671、読み出しアドレス出力バス672、読み出しデータ入力バス673を介して接続される。
また、外部デバイスアクセス装置603は、書き込みアドレス格納部610、書き込みデータ格納部611、読み出しアドレス格納部612、読み出しデータ格納部613、アドレス制御部614から構成される。
書き込みアドレス格納部610は、アドレス制御部614から書き込みアドレス660と書き込み許可信号661を入力し、格納したアドレスを外部デバイス602へ出力する。
書き込みデータ格納部611は、マスタから、書き込みデータ入力バス651を介した書き込みデータと、アドレス制御部614から書き込み許可信号661とを入力し、格納したデータを外部デバイス602へ出力する。
読み出しアドレス格納部612は、アドレス制御部614から読み出しアドレス662と読み出しアドレス許可信号663とを入力し、格納したアドレスを外部デバイス602へ出力する。
読み出しデータ格納部613は、外部デバイスから読み出しデータ入力バス673を介した読み出しデータと、アドレス制御部からの読み出しデータ格納部制御664と、エラーアドレス665とを入力し、格納したデータまたはエラーアドレスをマスタ601へ出力する。
また、読み出しデータ格納部613は、マスタ601が持つアクセス空間に割り当てられたアドレスを持つ。
アドレス制御部614は、マスタから、アドレスバス650を介したアドレスと、R/W信号バス653を介したR/W信号と、書き込みデータ入力バス651を介した書き込みデータとを入力し、書き込みアドレス660と、書き込み許可信号661とを書き込みアドレス格納部610へ出力し、書き込み許可信号661を書き込みデータ格納部611へ出力し、読み出しアドレス662と読み出しアドレス許可信号663とを読み出しアドレス格納部612へ出力し、読み出しデータ格納部制御664を読み出しデータ格納部613へ出力し、エラーアドレス665を読み出しデータ格納部613へ出力する。
次に外部デバイスアクセス装置603の動作について説明する。第1の発明を実施する形態での説明と同様に、通常書き込み動作、プリフェッチ動作、プリフェッチデータ読み出し動作である。
通常書き込み動作は、マスタ601からの書き込み要求に応じて、外部デバイスアクセス装置603にアドレスバス650からのアドレスと、R/W信号バス653からのR/W信号がアドレス制御部614に入力される。
アドレス制御部614では、R/W信号と、アドレスバス650からのアドレスが読み出しデータ格納部613に割り当てられたアドレスではない場合には、通常書き込み動作であることを認識し、書き込みアドレス660と書き込み許可信号661とを書き込みアドレス格納部610に出力してアドレスを格納させ、書き込み許可信号661を書き込みデータ格納部611に出力して書き込みデータバス651からのデータを格納させる。アドレスバス650からのアドレスが実装されていないアドレスの場合には、未実装であることを認識し、そのアドレスを読み出しデータ格納部613に格納する。
アドレスとデータを格納した場合は、外部デバイス602が受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。エラーアドレスを格納した場合は、マスタ601が受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。
プリフェッチ動作は、マスタ601からの書き込み要求に応じて、外部デバイスアクセス装置603にアドレスバス650からのアドレスと、R/W信号バス653からのR/W信号と、書き込みデータバス651からのデータがアドレス制御部614に入力される。
アドレス制御部614では、R/W信号と、アドレスバス650からのアドレスが読み出しデータ格納部613に割り当てられたアドレスである場合は、プリフェッチ動作であることを認識し、書き込みデータバス651からのデータを読み出しアドレスとして、読み出しアドレス662と読み出しアドレス許可信号663とを読み出しアドレス格納部612に出力してアドレスを格納させる。アドレスバス650からのアドレスが実装されていないアドレスの場合、または書き込みデータバス651からのデータをアドレスとしたときのアドレスが実装されていないアドレスの場合は、未実装であることを認識し、そのアドレスをエラーアドレスとしてエラーアドレス格納部615に格納する。
アドレスを格納した場合は、外部デバイスが受け付けて、外部デバイス602からの読み出しデータを読み出しデータ格納部613に格納するまで保持し、格納を完了後にプリフェッチ動作を完了する。エラーアドレスを格納した場合は、マスタ601が受け付けるまで保持し、受付を完了後にプリフェッチ動作を完了する。
プリフェッチデータ読み出し動作は、マスタ601からの読み出し要求に応じて、外部デバイスアクセス装置603にアドレスバス650からのアドレスと、R/W信号バス653からのR/W信号とがアドレス制御部614に入力される。
アドレス制御部614では、R/W信号と、アドレスバス650からのアドレスが読み出しデータ格納部613に割り当てられたアドレスである場合は、プリフェッチデータ読み出し動作であることを認識し、読み出しデータ許可信号664を読み出しデータ格納部613に出力して、読み出しデータバス652を介してマスタ601に出力する。アドレスバス650からのアドレスが実装されていないアドレスの場合は、未実装であることを認識し、未実装情報として未実装情報格納部615に格納する。
アドレスを格納した場合は、マスタ601が読み出しデータを受け付けるまで読み出しデータを保持し、受付を完了後にプリフェッチリード動作を完了する。エラーアドレスを格納した場合は、マスタ601が受け付けるまで保持し、受付を完了後にプリフェッチ動作を完了する。
これら動作を持つことによる利点としては、通常書き込み動作では、第1の発明を実施するための形態及び第5の発明を実施するための形態に記載の利点に加えて、読み出しデータ格納部613のみでマスタ601にエラーアドレスを送ることを実現できるため、外部デバイスアクセス装置の面積増加を抑制することが可能となる。
プリフェッチ動作では、第1の発明を実施するための形態及び第5の発明を実施するための形態に記載の利点に加えて、読み出しデータ格納部613のみでマスタ601にエラーアドレスを送ることを実現できるため、外部デバイスアクセス装置の面積増加を抑制することが可能となる。
プリフェッチデータ読み出し動作では、第1の発明を実施するための形態及び第5の発明を実施するための形態に記載の利点に加えて、読み出しデータ格納部613のみでマスタ601にエラーアドレスを送ることを実現できるため、外部デバイスアクセス装置の面積増加を抑制することが可能となる。
<第7の実施形態>
本発明の第7の実施形態の外部デバイスアクセス装置について、図面を参照しながら説明する。
図9は本発明の第7の実施形態の外部デバイスアクセス装置構成図である。
はじめに外部デバイスアクセス装置703の構成について説明する。
外部デバイスアクセス装置703は、マスタ701と、アドレスバス750、書き込みデータ入力バス751、読み出しデータ出力バス752、R/W信号入力バス753を介して接続し、外部デバイス702と、書き込みアドレス出力バス770、書き込みデータ出力バス771、読み出しアドレス出力バス772、読み出しデータ入力バス773を介して接続される。
また、外部デバイスアクセス装置703は、書き込みアドレス格納部710、書き込みデータ格納部711、読み出しアドレス格納部712、読み出しデータ格納部713、アドレス制御部714、格納動作状態保持部715から構成される。
書き込みアドレス格納部710は、アドレス制御部714から書き込みアドレス760と書き込み許可信号761を入力し、格納したアドレスを外部デバイス702へ出力する。
書き込みデータ格納部711は、マスタから、書き込みデータ入力バス751を介した書き込みデータと、アドレス制御部714から書き込み許可信号761とを入力し、格納したデータを外部デバイス702へ出力する。
読み出しアドレス格納部712は、アドレス制御部714から読み出しアドレス762と読み出しアドレス許可信号763とを入力し、格納したアドレスを外部デバイス702へ出力する。
読み出しデータ格納部713は、外部デバイスから読み出しデータ入力バス773を介した読み出しデータと、アドレス制御部からの読み出しデータ許可信号764を入力し、格納したデータをマスタ701へ出力する。
また、読み出しデータ格納部713は、マスタ701が持つアクセス空間に割り当てられたアドレスを持つ。
アドレス制御部714は、マスタから、アドレスバス750を介したアドレスと、R/W信号バス753を介したR/W信号と、書き込みデータ入力バス751を介した書き込みデータとを入力し、書き込みアドレス760と、書き込み許可信号761とを書き込みアドレス格納部710へ出力し、書き込み許可信号761を書き込みデータ格納部711へ出力し、読み出しアドレス762と読み出しアドレス許可信号763とを読み出しアドレス格納部712へ出力し、読み出しデータ許可信号764を読み出しデータ格納部713と格納動作状態保持部715へ出力する。
格納動作保持部保持部715は、外部デバイスから読み出しデータ入力バス773を介した読み出しデータと、読み出しアドレス格納部712からのアドレスと、アドレス制御部714から読み出しデータ許可信号764を入力し、アドレス制御部714へ格納動作状態765を出力する。
次に外部デバイスアクセス装置703の動作について説明する。第1の発明を実施する形態での説明と同様に、通常書き込み動作、プリフェッチ動作、プリフェッチデータ読み出し動作である。
通常書き込み動作は、マスタ701からの書き込み要求に応じて、外部デバイスアクセス装置703にアドレスバス750からのアドレスと、R/W信号バス753からのR/W信号がアドレス制御部714に入力される。
アドレス制御部714では、R/W信号と、アドレスバス750からのアドレスが読み出しデータ格納部713に割り当てられたアドレスではないことをもとに、通常書き込み動作であることを認識し、書き込みアドレス760と書き込み許可信号761とを書き込みアドレス格納部710に出力してアドレスを格納させ、書き込み許可信号761を書き込みデータ格納部711に出力して書き込みデータバス751からのデータを格納させる。
格納したアドレスとデータは、外部デバイスが受け付けるまで保持し、受付を完了後に通常書き込み動作を完了する。
プリフェッチ動作は、マスタ701からの書き込み要求に応じて、外部デバイスアクセス装置703にアドレスバス750からのアドレスと、R/W信号バス753からのR/W信号と、書き込みデータバス751からのデータがアドレス制御部714に入力される。
アドレス制御部714では、R/W信号と、アドレスバス750からのアドレスが読み出しデータ格納部713に割り当てられたアドレスであることをもとに、プリフェッチ動作であることを認識し、書き込みデータバス751からのデータを読み出しアドレスとして、読み出しアドレス762と読み出しアドレス許可信号763とを読み出しアドレス格納部712に出力してアドレスを格納させる。
格納したアドレスは、外部デバイス702に出力するとともに、格納動作中であることを示すために格納動作状態保持部715へも出力し、格納動作中であることを保持させる。出力したアドレスは外部デバイス702が受け付けて、外部デバイス702からの読み出しデータを読み出しデータ格納部713に格納するまで保持し、格納を完了後に、格納動作状態保持部715保持させていた格納動作中であることを取り消し、プリフェッチ動作を完了する。
プリフェッチデータ読み出し動作は、マスタ701からの読み出し要求に応じて、外部デバイスアクセス装置703にアドレスバス750からのアドレスと、R/W信号バス753からのR/W信号とがアドレス制御部714に入力される。
アドレス制御部714では、R/W信号と、アドレスバス750からのアドレスが読み出しデータ格納部713に割り当てられたアドレスであることと、格納動作状態保持部715からの格納動作状態765をもとに、プリフェッチデータ読み出し動作であること、かつ以前にマスタ701が要求したプリフェッチ動作中でないことを認識した場合は、読み出しデータ許可信号764を読み出しデータ格納部713に出力して、読み出しデータバス752を介してマスタ701に出力する。
マスタ701が読み出しデータを受け付けるまで読み出しデータを保持し、受付を完了後にプリフェッチリード動作を完了する。
プリフェッチデータ読み出し動作であること、かつ以前にマスタ701が要求したプリフェッチ動作中である場合には、外部デバイスアクセス装置703はマスタ701からのプリフェッチデータ読み出し動作を受けつけず、マスタ701を待機させる。
これら動作を持つことによる利点としては、プリフェッチデータ読み出し動作では、第1の発明を実施するための形態に記載の利点に加えて、以前にマスタ701が要求したプリフェッチ動作中である場合には、プリフェッチデータ読み出し動作を受けつけないため、あらかじめ外部デバイス702のデータを読み出しデータ格納部713へ読み出しておく前のデータを読み出すことを防ぎ、マスタ701の要求する命令順序のとおりに動作することを保障することが可能となる。
なお、本発明の構成は上記に詳述された構成に限定されない。例えば、第2の実施形態から第7の実施形態において、図1のように1つのマスタに対し複数の外部デバイスアクセス装置と複数の外部デバイスとを備える構成であっても、図3のように1つのマスタに対し1つの外部デバイスアクセス装置と複数の外部デバイスとを備える構成であってもよい。また、外部デバイスアクセス装置は、書き込みアドレス格納部、書き込みデータ格納部、読み出しアドレス格納部、読み出しデータ格納部、アドレス制御部、状態信号格納部、未実装情報格納部、エラーアドレス格納部、格納動作状態保持部を複数備えていてもよい。
本発明にかかる外部デバイスアクセス装置は、マスタと外部デバイス間のアクセスに関して、マスタの状態に依存しないアクセスを実現して、アクセスペナルティを低減し、マスタの性能への影響を低減できる効果があり、マスタと外部デバイスを備えるシステムLSIに有用である。またマスタに対して、外部デバイスの構成に依存せず外部デバイスを容易に拡張できるため、システムLSIにおいてマスタを汎用的に用いる場合には、マスタを改変する必要が生じないため、開発コストを大幅に削減できることが有用である。
101 マスタ
102 外部デバイス
103 外部デバイスアクセス装置
110 書き込みアドレス格納部
111 書き込みデータ格納部
112 読み出しアドレス格納部
113 読み出しデータ格納部
114 アドレス制御部
150 アドレスバス
151 書き込みデータ入力バス
152 読み出しデータ出力バス
153 R/W信号バス
160 書き込みアドレス
161 書き込み許可信号
162 読み出しアドレス
163 読み出しアドレス許可信号
164 読み出しデータ許可信号
170 書き込みアドレス出力バス
171 書き込みデータ入力出力バス
172 読み出しアドレス出力バス
173 読み出しデータ入力バス
215 状態信号格納部
254 状態信号出力バス
274 状態信号入力バス
364 読み出しデータ格納部制御
365 読み出しアドレス
372 読み出しアドレスバス
415 未実装情報格納部
454 未実装情報バス
465 未実装情報
515 エラーアドレス格納部
554 エラーアドレスバス
565 エラーアドレス
664 読み出しデータ格納部制御
665 エラーアドレス
715 格納動作状態保持部
765 格納動作状態

Claims (2)

  1. マスタから外部デバイスへのアクセスを制御する外部デバイスアクセス装置であって、
    前記マスタからの外部デバイスへの書き込み要求に応じて、書き込みアドレスを格納するための書き込みアドレス格納手段と、
    前記書き込み要求に応じて、書き込みデータを格納するための書き込みデータ格納手段と、
    前記マスタからアクセス可能であり、読み出しアドレスを格納するための読み出しアドレス格納手段と、
    前記マスタからアクセス可能であり、外部デバイスから読み出されたデータを格納するための読み出しデータ格納手段と、
    前記マスタからの書き込み要求または読み出し要求とアドレス指定に応じて、外部デバイスへのアクセスを制御する制御手段と、
    前記マスタからの書き込み要求に応じて、外部デバイスから読み出しデータ格納手段への読み出しを完了したか否かを示す格納動作状態信号を格納する格納動作状態保持手段と
    を備え、
    前記制御手段は、
    前記マスタから外部デバイスへの書き込み要求に応じて、マスタからの書き込みアドレスと書き込みデータとをそれぞれ書き込みアドレス格納手段と書き込みデータ格納手段とに格納するとともに、マスタに受理信号を出力し、さらに、当該書き込みアドレスによって指定される外部デバイスに対して、当該書き込みデータを書き込み、
    前記マスタから外部デバイスへの読み出し要求に応じて、前記読み出しアドレス格納手段に読み出しアドレスが格納され、当該読み出しアドレスによって指定される外部デバイスからデータを読み出し、前記読み出しデータ格納手段に格納し、
    前記マスタから前記読み出しデータ格納手段への書き込み要求に応じて、前記読み出しアドレス格納手段に読み出しアドレスが格納するとともに、マスタに受理信号を出力し、同時に前記格納動作状態保持手段に格納動作状態であることを示す信号を格納し、さらに、当該読み出しアドレスによって指定される外部デバイスからデータを読み出して前記読み出しデータ格納手段に格納し、同時に前記格納動作状態保持手段に格納動作状態でないことを示す信号を格納し、
    前記マスタから読み出しデータ格納手段へのデータ読み出し要求に応じて、前記格納動作状態保持手段に格納動作状態であることを示す信号が格納されている場合には読み出しデータ格納手段への読み出し動作を規制し、格納動作状態でないことを示す信号が格納されている場合には、前記読み出しデータ格納手段から読み出しデータを出力する
    ことを特徴とする外部デバイスアクセス装置。
  2. マスタと、
    請求項1に記載の外部デバイスアクセス装置と、
    前記マスタから外部デバイスアクセス装置を介してアクセスされる外部デバイスと
    を備えるシステムLSI。
JP2010163414A 2005-06-15 2010-07-20 外部デバイスアクセス装置 Pending JP2010244580A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010163414A JP2010244580A (ja) 2005-06-15 2010-07-20 外部デバイスアクセス装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005175677 2005-06-15
JP2010163414A JP2010244580A (ja) 2005-06-15 2010-07-20 外部デバイスアクセス装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2006547231A Division JP4688822B2 (ja) 2005-06-15 2006-06-06 外部デバイスアクセス装置およびシステムlsi

Publications (1)

Publication Number Publication Date
JP2010244580A true JP2010244580A (ja) 2010-10-28

Family

ID=37532167

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2006547231A Expired - Fee Related JP4688822B2 (ja) 2005-06-15 2006-06-06 外部デバイスアクセス装置およびシステムlsi
JP2010163414A Pending JP2010244580A (ja) 2005-06-15 2010-07-20 外部デバイスアクセス装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2006547231A Expired - Fee Related JP4688822B2 (ja) 2005-06-15 2006-06-06 外部デバイスアクセス装置およびシステムlsi

Country Status (7)

Country Link
US (1) US7685351B2 (ja)
EP (1) EP1895425A4 (ja)
JP (2) JP4688822B2 (ja)
KR (1) KR20070122228A (ja)
CN (1) CN100587678C (ja)
TW (1) TW200708967A (ja)
WO (1) WO2006134804A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100106760A1 (en) * 2008-01-28 2010-04-29 Panasonic Corporation Orthogonal transform apparatus and integrated circuit
WO2009098737A1 (ja) * 2008-02-08 2009-08-13 Panasonic Corporation 外部デバイスアクセス装置、その制御方法及びシステムlsi
KR20120115854A (ko) * 2011-04-11 2012-10-19 에스케이하이닉스 주식회사 리페어 방법과 이를 이용한 집적회로
CN103970687B (zh) * 2013-02-05 2017-11-10 中兴通讯股份有限公司 一种访问地址处理系统及方法
US9934117B2 (en) * 2015-03-24 2018-04-03 Honeywell International Inc. Apparatus and method for fault detection to ensure device independence on a bus
CN108153703A (zh) * 2016-12-05 2018-06-12 深圳市中兴微电子技术有限公司 一种外设访问方法和装置
EP4092556A1 (en) * 2021-05-20 2022-11-23 Nordic Semiconductor ASA Bus decoder

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06110823A (ja) * 1992-09-28 1994-04-22 Fuji Xerox Co Ltd バス変換システムおよびバッファ装置
JPH09231164A (ja) * 1996-02-28 1997-09-05 Nec Corp バスブリッジおよびそれを備えた計算機システム
JPH11149441A (ja) * 1997-11-17 1999-06-02 Nec Corp バスブリッジ回路
JP2004139361A (ja) * 2002-10-18 2004-05-13 Sony Corp ダイレクトメモリアクセス装置およびその制御方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2618624B1 (fr) * 1987-07-24 1992-04-30 Michel Servel Systeme de commutation de multiplex temporels hybrides a memoire tampon optimisee
US5003465A (en) * 1988-06-27 1991-03-26 International Business Machines Corp. Method and apparatus for increasing system throughput via an input/output bus and enhancing address capability of a computer system during DMA read/write operations between a common memory and an input/output device
JPH0512190A (ja) 1991-07-09 1993-01-22 Fujitsu Ltd 転送情報制御方式
US5768548A (en) * 1992-04-15 1998-06-16 Intel Corporation Bus bridge for responding to received first write command by storing data and for responding to received second write command by transferring the stored data
EP0574598A1 (de) * 1992-06-13 1993-12-22 International Business Machines Corporation Datenpufferspeicher
EP0601715A1 (en) 1992-12-11 1994-06-15 National Semiconductor Corporation Bus of CPU core optimized for accessing on-chip memory devices
JPH08288965A (ja) * 1995-04-18 1996-11-01 Hitachi Ltd スイッチングシステム
JP3711432B2 (ja) 1998-04-15 2005-11-02 セイコーエプソン株式会社 周辺処理装置およびその制御方法
US6366973B1 (en) * 1999-05-03 2002-04-02 3Com Corporation Slave interface circuit for providing communication between a peripheral component interconnect (PCI) domain and an advanced system bus (ASB)
US6546451B1 (en) * 1999-09-30 2003-04-08 Silicon Graphics, Inc. Method and apparatus for decoupling processor speed from memory subsystem speed in a node controller
JP4097883B2 (ja) * 2000-07-04 2008-06-11 松下電器産業株式会社 データ転送装置および方法
JP4464029B2 (ja) * 2001-04-19 2010-05-19 キヤノン株式会社 情報処理方法および制御プログラムおよび情報処理装置および周辺装置および応答方法および代理応答装置およびネットワークシステム
US20030093604A1 (en) * 2001-11-14 2003-05-15 Lee Terry Ping-Chung Method of error isolation for shared PCI slots
JP4089459B2 (ja) 2003-02-18 2008-05-28 日本電気株式会社 不在装置通知手段を備えた接続状態検出システム
KR100505689B1 (ko) * 2003-06-11 2005-08-03 삼성전자주식회사 송수신 흐름에 따라 공유 버퍼 메모리의 할당량을제어하는 송수신 네트워크 제어기 및 그 방법
US7213092B2 (en) * 2004-06-08 2007-05-01 Arm Limited Write response signalling within a communication bus

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06110823A (ja) * 1992-09-28 1994-04-22 Fuji Xerox Co Ltd バス変換システムおよびバッファ装置
JPH09231164A (ja) * 1996-02-28 1997-09-05 Nec Corp バスブリッジおよびそれを備えた計算機システム
JPH11149441A (ja) * 1997-11-17 1999-06-02 Nec Corp バスブリッジ回路
JP2004139361A (ja) * 2002-10-18 2004-05-13 Sony Corp ダイレクトメモリアクセス装置およびその制御方法

Also Published As

Publication number Publication date
CN100587678C (zh) 2010-02-03
KR20070122228A (ko) 2007-12-28
EP1895425A1 (en) 2008-03-05
TW200708967A (en) 2007-03-01
JPWO2006134804A1 (ja) 2009-01-08
US7685351B2 (en) 2010-03-23
JP4688822B2 (ja) 2011-05-25
WO2006134804A1 (ja) 2006-12-21
US20090037779A1 (en) 2009-02-05
EP1895425A4 (en) 2009-03-18
CN101198940A (zh) 2008-06-11

Similar Documents

Publication Publication Date Title
JP2010244580A (ja) 外部デバイスアクセス装置
US20070255872A1 (en) Bus system and semiconductor integrated circuit
WO2000025250A1 (en) Distributed extensible processing architecture for digital signal processing applications
JP6005392B2 (ja) ルーティングのための方法及び装置
JP2002117002A (ja) 共用型ペリフェラルアーキテクチャ
JP5360061B2 (ja) マルチプロセッサシステム及びその制御方法
WO2009098737A1 (ja) 外部デバイスアクセス装置、その制御方法及びシステムlsi
JP2013092852A (ja) バス接続回路、半導体装置及びバス接続回路の動作方法
JP2005293596A (ja) データ要求のアービトレーション
JP5578698B2 (ja) 半導体データ処理装置及びデータ処理システム
JP4594889B2 (ja) 複数の処理装置を備えたシステム上で実行されるプログラムのトレース方法、および、複数の処理装置を備えたシステム
US8099530B2 (en) Data processing apparatus
JP5058116B2 (ja) ストリーミングidメソッドによるdmac発行メカニズム
JP4924970B2 (ja) データ処理システム
JP2000227895A (ja) 画像データ転送装置および画像データ転送方法
WO2011030498A1 (ja) データ処理装置及びデータ処理方法
JP2005267392A (ja) 共有データ処理回路、情報処理装置、情報処理システム、共有データ処理方法、共有データ処理プログラム
JP5321782B2 (ja) 二重化システム及びメモリコピー方法
JP2008198119A (ja) データ転送装置、データ転送システムおよびデータ転送方法
JPH10247162A (ja) 電子計算機システム
JP2001331370A (ja) マイクロコンピュータ
JP3006487B2 (ja) エミュレーション装置
JP3056169B2 (ja) データ送受信方式とその方法
JP2005259051A (ja) プロセッシングユニットおよびその制御方法
JP2000330866A (ja) メモリ制御方法およびメモリ制御システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120228

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120703