Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4067422B2 - Data transfer device - Google Patents
[go: Go Back, main page]

JP4067422B2 - Data transfer device - Google Patents

Data transfer device Download PDF

Info

Publication number
JP4067422B2
JP4067422B2 JP2003039143A JP2003039143A JP4067422B2 JP 4067422 B2 JP4067422 B2 JP 4067422B2 JP 2003039143 A JP2003039143 A JP 2003039143A JP 2003039143 A JP2003039143 A JP 2003039143A JP 4067422 B2 JP4067422 B2 JP 4067422B2
Authority
JP
Japan
Prior art keywords
transfer
data
transfer amount
circuit
buffer
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.)
Expired - Fee Related
Application number
JP2003039143A
Other languages
Japanese (ja)
Other versions
JP2004252523A (en
Inventor
希一郎 伊賀
裕志 成冨
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2003039143A priority Critical patent/JP4067422B2/en
Publication of JP2004252523A publication Critical patent/JP2004252523A/en
Application granted granted Critical
Publication of JP4067422B2 publication Critical patent/JP4067422B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Systems (AREA)
  • Memory System (AREA)
  • Storing Facsimile Image Data (AREA)

Description

【0001】
【発明の属する技術分野】
本発明はデータ転送装置に関し、特に複数のリソースへのデータ転送を調停するデータ転送装置に関する。
【0002】
【従来の技術】
電子機器には、複数のリソースが、データを1つの記憶装置で共有し、パイプライン処理するものがある。例えば、デジタルカメラでは、画像データを撮り込むリソース、撮り込んだ画像データの補間処理を行うリソース等が、1つの記憶装置でデータを共有し、パイプライン処理を行っている。
【0003】
このような、複数のリソースが1つの記憶装置を共有する場合、各リソースの記憶装置に対するアクセス要求を調停し、各リソースと記憶装置間のデータ転送を制御するデータ転送装置が必要である。図11は、従来のデータ転送装置の回路図である。図に示すように、データ転送装置は、記憶装置101、転送調停回路102、バッファ103a,103b、レジスタ104a,104b、制御回路105a,105b、及びリソース106a,106bを有している。図に示す転送CH0は、リソース106aにデータDat0を転送するための回路の集まりを示し、バッファ103a、レジスタ104a、及び制御回路105aを有している。転送CH1は、リソース106bにデータDat1を転送するための回路の集まりを示し、バッファ103b、レジスタ104b、及び制御回路105bを有している。
【0004】
転送調停回路102は、転送CH0,CH1の制御回路105a,105bからリクエスト信号Req0,Req1を受け付けると、データ転送をすべきリソース106a,106bの優先度を判定し、判定した優先度の高いリソース106a,106bに対応した制御回路105a,105bに、応答信号Ack0,Ack1を出力する。そして、転送調停回路102は、記憶装置101に記憶されているデータDat0,Dat1を、レジスタ104a,104bに設定された転送量Trs0,Trs1に従って、バッファ103a,103bに出力する。なお、優先度の高いリソースにデータアクセスを集中させない分散方法として、ラウンドロビンがある。
【0005】
転送CH0,CH1のバッファ103a,103bは、転送調停回路102から転送されるデータDat0,Dat1を一時格納し、リソース106a,106bに出力する。制御回路105a,105bは、バッファ103a,103bの空き領域が所定の大きさになった場合、リクエスト信号Req0,Req1を出力する。レジスタ104a,104bには、転送調停回路102が1回にデータ転送を行うときの転送量Trs0,Trs1が格納される。
【0006】
以下、動作について説明する。図12は、図11のデータ転送装置の動作を説明するタイミングチャートである。図12に示すように、転送調停回路102は、リクエスト信号Req0を受け付けると、リクエスト信号Req0に対応するリソース106aの優先度を判定する。リソース106aが他のリソース106bより優先度が高ければ、転送調停回路102は、応答信号Ack0を制御回路105aに返す。そして、転送調停回路102は、レジスタ104aに設定されている転送量Trs0(記憶装置101の16アドレス分転送(固定))に従って、データDat0をバッファ103aに転送する。これによって、バッファ103aの空サイズSiz0は、図12に示すように‘1Ch’から‘0Dh’(h:16進数であることを示す)と16アドレス分減少する。
【0007】
ところで、バッファ103a,103bに格納されるデータDat0,Dat1が空になると、リソース106a,106bは処理を実行することができなくなり、エラーが発生する。そのため、バッファ103a,103bには、常にデータDat0,Dat1が格納されているよう転送量Trs0,Trs1を設定する必要がある。
【0008】
なお、データ転送を調停する装置として、バスを使用する回路が、転送するデータの転送量を調停回路に通知して、バスの使用率の片寄りをなくすようにしたものがある(例えば、特許文献1参照)。
【0009】
【特許文献1】
特開平10−49485号公報(第3頁、第1図)
【0010】
【発明が解決しようとする課題】
しかしながら、常にバッファにデータが格納されているようにするためには、データの転送量を大きめに設定する必要があり、さらに、転送量は固定されているため、リソースが少量のデータしか必要としないときでも多くのデータがバッファに転送され、多くのデータを必要とするときには少量のデータしかバッファに転送されないなどデータの転送効率が悪いという問題点があった。
【0011】
本発明はこのような点に鑑みてなされたものであり、リソースが必要とするデータ量に応じてデータを転送し、記憶装置から複数のリソースへのデータの転送効率を高めたデータ転送装置を提供することを目的とする。
【0012】
【課題を解決するための手段】
本発明では上記課題を解決するために、データ転送を調停するデータ転送装置において、複数のリソースが共有するデータが記憶される記憶装置と、前記データを転送優先度の高い前記リソースに指示される転送量に従って転送する転送調停回路と、前記リソース毎に設けられ、前記転送調停回路から転送される前記データを一時格納して出力するバッファと、前記バッファ毎の領域に関する閾値が設定される閾値レジスタと、転送量増加禁止閾値が設定される増加禁止レジスタと、転送量低減要求閾値が設定される低減要求レジスタと、前記バッファ毎の空き領域が前記閾値に達したか否かによって、前記転送量を増減し、前記バッファ毎の空き領域が前記転送量増加禁止閾値に達した場合には、他の転送優先度の低い前記リソースにおける前記転送量の増加を禁止し、前記転送量低減要求閾値に達した場合には、他の転送優先度の低い前記リソースにおける前記転送量を低減する転送量調整回路と、を有することを特徴とするデータ転送装置が提供される。
【0013】
このようなデータ転送装置によれば、複数のリソース毎に設けたバッファの空き領域が、閾値レジスタに設定された閾値に達したか否かによって、記憶装置からリソースに転送するデータの転送量を増減する。また、バッファ毎の空き領域が転送量増加禁止閾値に達した場合には、他の転送優先度の低いリソースにおける転送量の増加を禁止し、転送量低減要求閾値に達した場合には、他の転送優先度の低いリソースにおける転送量を低減する。よって、優先度の低いリソースのデータ転送効率を急激に下げることなく、記憶装置から複数のリソースへのデータの転送効率を高める。
【0016】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。本発明のデータ転送装置は、例えばデジタルカメラなどに適用される。デジタルカメラの画像データを撮り込むリソース、撮り込んだ画像データの補間処理を行うリソース等は、1つの記憶装置でデータを共有し、パイプライン処理を行う。データ転送装置は、記憶装置に記憶されたデータを優先度の高いリソースに効率よく転送する。
【0017】
図1は、第1の実施の形態に係るデータ転送装置の回路図である。図に示すように、データ転送装置は、記憶装置1、転送調停回路2、バッファ3a,3b、閾値レジスタ4a,4b、転送量調整回路5、及びリソース7a,7bを有している。図に示す転送CH0は、リソース7aにデータDat0を転送するための回路の集まりを示し、バッファ3a、閾値レジスタ4a、及び制御回路6aを有している。転送CH1は、リソース7bにデータDat1を転送するための回路の集まりを示し、バッファ3b、閾値レジスタ4b、及び制御回路6bを有している。
【0018】
記憶装置1は、リソース7a,7bが共有するデータDat0,Dat1が記憶される。記憶装置1は、例えば、SRAM(Static Random Access Memory)、SDRAM(Synchronous Dynamic Random Access Memory)などである。
【0019】
転送調停回路2は、制御回路6a,6bから出力されるリクエスト信号Req0,Req1を受け付けると、データ転送すべき優先度の高いリソース7a,7bを判定する。転送調停回路2は、優先度の高いリソース7a,7bを判定すると、そのリソース7a,7bに対応する転送CH0,CH1の制御回路6a,6bに、応答信号Ack0,Ack1を出力する。転送調停回路2は、転送量調整回路5から出力されている転送量Trs0,Trs1に従って、応答信号Ack0,Ack1を出力した転送CH0,CH1のバッファ3a,3bに、記憶装置1に記憶されていたデータDat0,Dat1を出力する。
【0020】
転送量Trs0,Trs1は、転送調停回路2が、1回のリクエスト信号Req0,Req1に応じて転送するデータDat0,Dat1の転送量であり、記憶装置1のアドレスの大きさで示される。例えば、転送量Trs0の値が‘8’であれば、転送調停回路2は、1回の転送で、記憶装置1の8アドレス分のデータDat0をバッファ3aに出力する。
【0021】
なお、優先度の高いリソースにデータアクセスを集中させない分散方法として、ラウンドロビンがある。
バッファ3a,3bは、リソース7a,7bの各々に設けられている。バッファ3aは、転送調停回路2から転送されるデータDat0を一時格納して、リソース7aに出力する。バッファ3bは、転送調停回路2から転送されるデータDat1を一時格納して、リソース7bに出力する。バッファ3a,3bは、FIFO方式によって、データDat0,Dat1を格納し、出力する。また、バッファ3a,3bは、空き領域の大きさを示す空サイズSiz0,Siz1を転送量調整回路5、制御回路6a,6bに出力する。
【0022】
閾値レジスタ4a,4bには、転送量調整回路5がバッファ3a,3bの空サイズSiz0,Siz1と大小比較するための閾値Th0,Th1(バッファ3a,3bの領域に関する値)が設定される。
【0023】
転送量調整回路5は、バッファ3a,3b毎において、空サイズSiz0,Siz1が閾値レジスタ4a,4bに設定されている閾値Th0,Th1以上か否かを判定し、転送調停回路2に出力している転送量Trs0,Trs1を増減する。具体的には、バッファ3aの空サイズSiz0が閾値Th0以上である場合、転送量調整回路5は転送量Trs0を増加する。バッファ3aの空サイズSiz0が、閾値Th0以上の状態から、閾値Th0より小さい値となった場合、転送量調整回路5は、転送量Trs0を増加した前の値に低減する。すなわち、転送量調整回路5は、バッファ3a、3bの空サイズSiz0,Siz1が、閾値Th0,Th1以上になると、転送調停回路2のデータDat0,Dat1の転送量Trs1,Trs1を増加させ、バッファ3a,3bの空サイズSiz0,Siz1が小さくなるようにする。
【0024】
図2は、図1の転送量調整回路の具体的な回路図である。図に示すように、転送量調整回路5は、減算回路11a,11b、負検出回路12a,12b、及び選択回路13a,13bを有している。
【0025】
減算回路11aには、閾値Th0、空サイズSiz0が入力される。減算回路11aは、閾値Th0から空サイズSiz0を減算し、その結果を負検出回路12aに出力する。減算回路11bには、閾値Th1、空サイズSiz1が入力される。減算回路11bも減算回路11aと同様にして、閾値Th1から空サイズSiz1を減算し、その結果を負検出回路12bに出力する。
【0026】
負検出回路12a,12bは、減算回路11a,11bから出力された減算結果の正負を検出し選択回路13a,13bに出力する。
選択回路13aには、転送量Trs0となる値‘8’、‘16’が入力されている。選択回路13aは、負検出回路12aの検出結果に応じて、入力されている‘8’、‘16’を選択し、転送量Trs0として出力する。具体的には、負検出回路12aから負の検出結果が出力された場合、すなわち、バッファ3aの空サイズSiz0が閾値Th0以上の場合、選択回路13aは、‘16’を転送量Trs0として出力する。負検出回路12aから正の検出結果が出力された場合、すなわち、バッファ3aの空サイズSiz0が閾値Th0より小さかった場合、選択回路13aは、‘8’を転送量Trs0として出力する。
【0027】
図1の説明に戻る。制御回路6a,6bは、転送調停回路2にデータDat0,Dat1の転送要求を行うためのリクエスト信号Req0,Req1を出力する。制御回路6a,6bは、応答信号Ack0,Ack1を受信することにより、データDat0,Dat1がバッファ3a,3bに転送されることを認識する。
【0028】
制御回路6a,6bは、バッファ3a,3bの空サイズSiz0,Siz1の大きさによって、リクエスト信号Req0,Req1を出力する。例えば、空サイズSiz0,Siz1が所定の値より大きくなったとき、リクエスト信号Req0,Req1を出力する。または、制御回路6a,6bは、一定時間毎にリクエスト信号Req0,Req1を出力するようにしてもよい。
【0029】
リソース7a,7bは、共有するデータDat0,Dat1をパイプライン処理する。記憶装置1に記憶されているデータDat0,Dat1は、バッファ3a,3bに一時格納され、リソース7a,7bは、バッファ3a,3bに一時格納されたデータDat0,Dat1を受け取って処理を行う。
【0030】
以下、図1の動作についてタイミングチャートを用いて説明する。図1において、リソース7aの転送優先度はリソース7bより大きいとする。図3は、図1のデータ転送装置の動作を説明するタイミングチャートである。図3に示すTh0の‘1Ah’(h:16進数であることを示す)は、閾値レジスタ4aに設定されている値を示している。Req0、Ack0は、リクエスト信号Req0、応答信号Ack0のタイミング波形を示している。Siz0の‘18h’,‘19h’,…‘0Eh’は、バッファ3aの空サイズSiz0の変化を示している。Trs0は、データDat0の転送量Trs0の変化を示している。
【0031】
バッファ3aは、図3に示すように、一時格納したデータDat0をリソース7aに1つずつ出力する。よって、バッファ3aの空サイズSiz0は、‘18h’,‘19h’,…と1ずつ増加していく。
【0032】
バッファ3aの空サイズSiz0は、転送量調整回路5に出力されている。転送量調整回路5は、バッファ3aの空サイズSiz0が、閾値レジスタ4aに設定されている閾値Th0以上か否かを判定する。
【0033】
閾値レジスタ4aに設定されている閾値Th0は、図3に示すように‘1Ah’である。従って、空サイズSiz0が‘1Ah’以上になると、転送量調整回路5は、転送量Trs0を‘8’(8アドレス分転送)から‘16’(16アドレス分転送)に増加する。
【0034】
制御回路6a,6bが、転送調停回路2にリクエスト信号Req0,Req1を出力したとする。転送調停回路2は、リクエスト信号Req0,Req1を受け、リソース7a,7bの優先度の高低を判定し、応答信号Ack0,Ack1を出力する。ここでは、リソース7aの優先度が高いと仮定しているので、転送調停回路2は、リソース7aに対応する転送CH0の制御回路6aに、図3に示すよう応答信号Ack0を出力する。そして、転送調停回路2は、転送量Trs0に従って、データDat0をバッファ3aに出力する。
【0035】
このときの転送量Trs0は、図3に示すように、‘16’である。従って、転送調停回路2は、記憶装置1の16アドレス分のデータDat0をバッファ3aに出力する。
【0036】
バッファ3aは、16アドレス分のデータDat0が、記憶装置1から転送されたことにより、その空サイズSiz0は、‘1Ch’から‘0Dh’となる。転送量調整回路5は、空サイズSiz0が、閾値Th0の‘1Ah’より小さい‘0Ch’になったことから、‘8’の転送量Trs0を出力する。
【0037】
同様に、転送CH1においても、バッファ3bの空サイズSiz1が閾値Th1に達したか否かによって、転送量調整回路5は、転送量Trs1を増減する。そして、制御回路6bがリクエスト信号Req1を出力して、応答信号Ack1が帰ってきたら、転送量Trs1のデータDat1がバッファ3bに転送される。
【0038】
このように、リソース7a,7bに設けたバッファ3a,3bの空サイズSiz0,Siz1が、閾値レジスタ4a,4bに設定された閾値Th0,Th1以上か否かによって、記憶装置1からリソース7a,7bに転送するデータDat0,Dat1の転送量Trs0,Trs1を増減するようにした。これにより、記憶装置1からリソース7a,7bへのデータ転送の効率を高めることができる。
【0039】
なお、上記では、バッファ3a,3bの空サイズSiz0,Siz1が、閾値Th0,Th1以上か否かによって、転送量Trs0,Trs1を増減するようにしたが、バッファ3a,3bに一時格納されるデータDat0,Dat1が、閾値レジスタ4a,4bに設定される値以上か否かによって、転送量Trs0,Trs1を増減するようにしてもよい。
【0040】
また、優先度の高いリソース7aの転送量Trs0が増加した場合、優先度の低いリソース7bの転送量Trs1を増加させないようにして、データ転送の効率を高めることもできる。図4は、転送量調整回路の回路図の他の例である。図3では、図2に示した負検出回路12a,12bの検出結果を、AND回路14でAND演算して選択回路13bに出力する。例えば、図3において、負検出回路12a,12bから共に、負の検出結果を示すH状態が出力された場合、AND回路14は、L状態を出力する。選択回路13aは、負検出回路12aのH状態より、‘16’を転送量Trs0として出力し、選択回路13bは、AND回路14のL状態より、‘8’を転送量Trs1として出力する。このようにして、優先度の低いリソース7bの転送量Trs1を増加させないようにする。
【0041】
なお、リソースの数は2以上であってもよく、この場合、各リソースに対して図1の転送CH0,CH1,…を具備するようにすればよい。
次に本発明の第2の実施の形態について説明する。図5は、第2の実施の形態に係るデータ転送装置の回路図である。図に示すように、データ転送装置は、記憶装置21、転送調停回路22、バッファ23a,23b、閾値レジスタ24aa,24ba、転送UPマスクレジスタ24ab,24bb、転送DN要求レジスタ24ac,24bc、転送量調整回路25、制御回路26a,26b、及びリソース27a,27bを有している。図に示す転送CH0は、リソース27aにデータDat0を転送するための回路の集まりを示し、バッファ23a、閾値レジスタ24aa、転送UPマスクレジスタ24ab、転送DN要求レジスタ24ac、及び制御回路26aを有している。転送CH1は、リソース27bにデータDat1を転送するための回路の集まりを示し、バッファ23b、閾値レジスタ24ba、転送UPマスクレジスタ24bb、転送DN要求レジスタ24bc、及び制御回路26bを有している。なお、図5に示す記憶装置21、転送調停回路22、バッファ23a,23b、制御回路26a,26b、及びリソース27a,27bは、図1で示した記憶装置1、転送調停回路2、バッファ3a,3b、制御回路6a,6b、及びリソース7a,7bと同様であり、その説明を省略する。
【0042】
閾値レジスタ24aa,24baには、転送量調整回路25がバッファ23a,23bの空サイズSiz0,Siz1と大小比較するための、バッファ23a,23bの領域に関する閾値Th0,Th1が設定される。転送UPマスクレジスタ24ab,24bbには、転送量調整回路25がバッファ23a,23bの空サイズSiz0,Siz1と大小比較するための、バッファ23a,23bの領域に関するUPマスク値Mask0,Mask1が設定される。転送DN要求レジスタ24ac,24bcには、転送量調整回路25がバッファ23a,23bの空サイズSiz0,Siz1と大小比較するための、バッファ23a,23bの領域に関するDN要求値Reqdn0,Reqdn1が設定される。閾値Th0<UPマスク値Mask0<DN要求値Reqdn0、閾値Th1<UPマスク値Mask1<DN要求値Reqdn1の関係がある。
【0043】
転送量調整回路25は、バッファ23a,23b毎において、空サイズSiz0,Siz1が、閾値Th0,Th1以上か否かを判定し、転送量Trs0,Trs1を増減する。具体的には、バッファ23aの空サイズSiz0が、閾値Th0以上の場合、転送量調整回路25は、転送量Trs0を増加する。バッファ23aの空サイズSiz0が、閾値Th0以上の状態から、閾値Th0より小さい値となった場合、転送量調整回路25は、転送量Trs0を増加した前の値に低減する。すなわち、転送量調整回路25は、バッファ23a、23bの空サイズSiz0,Siz1が、閾値Th0,Th1以上になると、転送調停回路22のデータDat0,Dat1の転送量Trs1,Trs0を増加させ、バッファ23a,23bの空サイズSiz0,Siz1が小さくなるようにする。
【0044】
また、転送量調整回路25は、バッファ23a,23b毎において、空サイズSiz0,Siz1が、UPマスク値Mask0,Mask1以上か否かを判定し、優先度の低いリソース27a,27bにおけるデータDat0,Dat1の転送量Trs0,Trs1を増加しないようにする(変更(増減)しないようにする)。具体的には、リソース27aのデータ転送の優先度がリソース27bより高い場合において、バッファ23aの空サイズSiz0が、UPマスク値Mask0以上のとき、バッファ23aの空サイズSiz1が、閾値Th1以上になっても、転送量Trs1を増加しない。すなわち、優先度の高いリソース27a,27bにおけるバッファ23a,23bの空サイズSiz0,Siz1が、UPマスク値Mask0,Mask1以上となった場合、他方の優先度の低いリソース27a,27bのデータDat0,Dat1の転送量Trs0,Trs1を増加しないようにする。
【0045】
さらに、転送量調整回路25は、バッファ23a,23b毎において、空サイズSiz0,Siz1が、DN要求値Reqdn0,Reqdn1以上か否かを判定し、優先度の低いリソース27a,27bにおけるデータDat0,Dat1の転送量Trs0,Trs1を低減する。具体的には、リソース27aのデータ転送の優先度がリソース27bより高い場合において、バッファ23aの空サイズSiz0が、DN要求値Reqdn0以上のとき、優先度の低いリソース27bにおける転送量Trs1を低減する。すなわち、優先度の高いリソース27a,27bにおけるバッファ23a,23bの空サイズSiz0,Siz1が、DN要求値Reqdn0,Reqdn1以上となった場合、他方の優先度の低いリソース27a,27bのデータDat0,Dat1の転送量Trs0,Trs1を低減する。
【0046】
ところで、上述したように、閾値Th0<UPマスク値Mask0、閾値Th1<UPマスク値Mask1の関係がある。よって、優先度の高いリソースのバッファの空サイズが閾値より大きく、さらにUPマスク値より大きい場合に、優先度の低いリソースにおけるバッファへの転送量の増加が禁止される。すなわち、優先度の低いリソースのデータ転送時間が抑制され、この転送時間が抑制された分、優先度の高いリソースへのデータ転送に割り振られ、記憶装置からリソースへのデータ転送効率をより高める。
【0047】
また、UPマスク値Mask0<DN要求値Reqdn0、UPマスク値Mask1<DN要求値Reqdn0の関係がある。よって、優先度の高いリソースのバッファの空サイズがUPマスク値より大きく、さらにDN要求値より大きい場合に、優先度の低いリソースにおけるバッファへの転送量が低減される。すなわち、優先度の低いリソースの転送時間が低減され、この転送時間が低減された分、優先度の高いリソースへのデータ転送に割り振られ、記憶装置からリソースへのデータ転送効率をより高める。
【0048】
以下、図5の動作についてタイミングチャートを用いて説明する。図5において、リソース27aの転送優先度はリソース27bより大きいとする。また、閾値レジスタ24aaには、閾値Th0として‘1Ah’が設定されているとする。転送UPマスクレジスタ24abには、UPマスク値Mask0として‘1Eh’が設定されているとする。転送DN要求レジスタ24acには、DN要求値Reqdn0として‘20h’が設定されている。閾値レジスタ24baには、閾値Th1として‘4Ah’が設定されているとする。転送UPマスクレジスタ24bbには、UPマスク値Mask1として‘4Eh’が設定されているとする。
【0049】
図6は、図5のデータ転送装置の動作を説明するタイミングチャートである。図に示すように、Siz0の‘18h’,‘19h’,…は、バッファ23aの空サイズSiz0の変化を示している。転送UP0は、空サイズSiz0が、閾値Th0以上になったときのタイミングを示している。Trs0は、転送量調整回路25が転送調停回路22に指示するデータDat0の転送量Trs0を示している。また、Siz1の‘43h’,‘44h’,…は、バッファ23bの空サイズSiz1の変化を示している。転送UP1は、空サイズSiz1が、UPマスク値Mask1以上になったときのタイミングを示している。転送DN1は、空サイズSiz0が、DN要求値Reqdn1より大きくなったときのタイミングを示している。Trs1は、転送量調整回路25が転送調停回路22に指示するデータDat1の転送量Trs0を示している。
【0050】
図6に示すように、バッファ3aの空サイズSiz0が、閾値Th0である‘1Ah’以上になると、転送量調整回路25は、転送量Trs0を‘8’(8アドレス分転送)から‘16’(16アドレス分転送)に増加させる。よって、転送調停回路22は、データDat0を転送するとき、記憶装置21の16アドレス分転送することとなる。
【0051】
バッファ3aの空サイズSiz0が、UPマスク値Mask0である‘1Eh’以上になると、転送量調整回路25は、バッファ3bの空サイズSiz1が、閾値Th1である‘4Ah’以上になっても、転送量Trs1を増加しない。
【0052】
バッファ3aの空サイズSiz0が、DN要求値Reqdn0である‘20h’以上になると、転送量調整回路25は、転送量Trs1を‘8’(8アドレス分転送)から‘4’(4アドレス分転送)に低減する。よって、転送調停回路22は、データDat1を転送するとき、記憶装置21の8アドレス分転送することとなる。
【0053】
このように、リソース27a,27bに設けたバッファ23a,23bの空サイズSiz0,Siz1が、閾値レジスタ24aa,24baに設定された閾値Th0,Th1以上か否かによって、記憶装置21からリソース27a,27bに転送するデータDat0,Dat1の転送量Trs0,Trs1を増減するようにした。これにより、記憶装置21からリソース27a,27bへのデータの転送効率を高めることができる。
【0054】
また、バッファ23a,23bの空サイズSiz0,Siz1がさらに大きくなり、転送UPマスクレジスタ24ab,24bbに設定されたUPマスク値Mask0,Mask1以上になると、優先度の低いリソース27a,27bにおけるデータDat0,Dat1の転送量Trs0,Trs1を増加(変更)させないようにした。これにより、優先度の低いリソースの転送時間が抑制される分、優先度の高いリソースへのデータ転送に割り振られ、記憶装置21からリソース27a,27bへのデータの転送効率を高めることができる。
【0055】
さらに、バッファ23a,23bの空サイズSiz0,Siz1が大きくなり、転送DN要求レジスタ24ac,24bcに設定されたDN要求値Reqdn0,Reqdn1以上になると、優先度の低いリソース27a,27bにおけるデータDat0,Dat1の転送量Trs0,Trs1を低減するようにした。これにより、優先度の低いリソースの転送時間が低減される分、優先度の高いリソースへのデータの転送に割り振られ、記憶装置21からリソース27a,27bへのデータの転送効率を高めることができる。
【0056】
なお、閾値Th0をUPマスク値Mask0、閾値Th1をUPマスク値Mask1としてもよい。すなわち、閾値レジスタ24aa,24bbに設定される閾値Th0,Th1によって、転送量Trs0,Trs1を増加(変更)するか否かを判定するようにする。これにより、転送UPマスクレジスタ24ab,24bbは不要となり、コストを低減することができる。
【0057】
また、閾値Th0をDN要求値Reqdn0、閾値Th1をDN要求値Reqdn1としてもよい。すなわち、閾値レジスタ24aa,24bbに設定される閾値Th0,Th1によって、転送量Trs0,Trs1を低減するか否かを判定するようにする。これにより、転送DN要求レジスタ24ab,24bbは不要となり、コストを低減することができる。
【0058】
また、複数の閾値レジスタ24aa,24baを複数設け、複数の閾値と空サイズSiz0,Siz1とを比較するようにし、空サイズSiz0,Siz1が、複数の閾値以上になる毎に、段階的に転送量Trs0,Trs1を増減するようにしてもよい。これにより、記憶装置21からリソース27a,27bへのデータの転送効率をより高めることができる。
【0059】
また、閾値レジスタ24aa,24ba、転送UPマスクレジスタ24ab,24bb、及び転送DN要求レジスタ24ac,24bcのそれぞれを1つにして、1つの閾値、UPマスク値、及びDN要求値で、各バッファ23a,23bの空サイズSiz0,Siz1と比較するようにしてもよい。すなわち、各バッファにおいて、閾値、UPマスク値、及びDN要求値を共通にすることにより、閾値レジスタ、転送UPマスクレジスタ、及び転送DN要求レジスタが1つで済み、コストを低減することができる。
【0060】
さらに、転送量調整回路25の動作を、例えばCPUなどの制御装置によって、データを高い転送効率で転送する場合には活性化し、高い転送効率で転送する必要がない場合には非活性化することにより、消費電力を低減することができる。
【0061】
なお、リソースの数は2以上であってもよく、この場合、各リソースに対して図1の転送CH0,CH1,…を具備するようにすればよい。
次に本発明の第3の実施の形態について説明する。図7は、第3の実施の形態に係るデータ転送装置の回路図である。図に示すように、データ転送装置は、記憶装置31、転送調停回路32、バッファ33a,33b、転送量調整回路34a,34b、制御回路35a,35b、及びリソース36a,36bを有している。図に示す転送CH0は、リソース36aにデータDat0を転送するための回路の集まりを示し、バッファ33a、制御回路35aを有している。転送CH1は、リソース36bにデータDat1を転送するための回路の集まりを示し、バッファ33b、制御回路35bを有している。なお、図7に示す記憶装置31、転送調停回路32、バッファ33a,33b、制御回路35a,35b、及びリソース36a,36bは、図1で示した記憶装置1、転送調停回路2、バッファ3a,3b、制御回路6a,6b、リソース7a,7bと同様であり、その説明を省略する。
【0062】
第3の実施の形態では、転送量調整回路34a,34bは、バッファ33a,33bの過去の空サイズSiz0,Siz1を記憶し、その記憶した空サイズSiz0,Siz1の統計に基づいて、次にデータDat0,Dat1の転送が行われるときのバッファ33a,33bの空サイズSiz0,Siz1を予測する。そして、転送量調整回路34a,34bは、予測した空サイズSiz0,Siz1に基づいて転送量Trs0,Trs1を増減する。
【0063】
転送量調整回路34aは、前回データDat0の転送が行われたときのバッファ33aの空サイズSiz0と、現在行われたデータDat0の転送が行われたときのバッファ33aの空サイズSiz0との差分をとり、内蔵する記憶装置に記憶していく。転送量調整回路34aは、記憶していた過去の差分の傾きから、次にデータが転送されたときのバッファの空き領域を予測して転送量Trs0を増減する。転送量調整回路34bも転送量調整回路34aと同様にして、バッファ33bの空サイズSiz1を予測して転送量Trs1を増減する。図8は、転送量調整回路の回路図である。図に示すように、転送量調整回路34aは、ラッチ回路41、差分回路42、記憶装置43、傾き予測回路44、及び制御回路45を有している。
【0064】
ラッチ回路41には、空サイズSiz0、応答信号Ack0が入力されている。ラッチ回路41は、応答信号Ack0が入力されると、保持していた前回の転送時における空サイズSiz0を差分回路42に出力し、現在入力されている空サイズSiz0を保持する。
【0065】
差分回路42には、現在の空サイズSiz0と、ラッチ回路41に保持された前回の空サイズSiz0が入力されている。差分回路42は、入力されている現在の空サイズSiz0と前回の空サイズSiz0との差分をとり、記憶装置43に記憶する。
【0066】
記憶装置43は、差分回路42から出力された空サイズSiz0の差分値を複数回分に渡って記憶する。記憶装置43は、応答信号Ack0に同期して差分回路42から出力される空サイズSiz0の差分値を記憶する。また、記憶装置43は、制御回路45の指示に応じて、記憶していた空サイズSiz0の差分値を傾き予測回路44に出力する。
【0067】
傾き予測回路44は、記憶装置43に記憶されていた空サイズSiz0の差分値の傾きに応じて、次回データDat0転送が行われたときのバッファ33aの空サイズSiz0を予測する。図9は、記憶装置に記憶された空サイズの差分値のグラフである。図に示すグラフの横軸は時間を示し、縦軸は空サイズSiz0の差分値を示している。また、図に示す‘○’は、記憶装置43に記憶された空サイズSiz0の差分値である。図中において、‘○’が右に行くほど空サイズSiz0の差分値は過去ものとなる。
【0068】
図9において、空サイズSiz0の差分値は、増加の傾向にある。傾き予測回路44は、記憶装置43に記憶されている空サイズの差分値の増加する傾きに応じて、次回データDat0の転送が行われたときのバッファ33aの空サイズSiz0が増加することを予測する。
【0069】
制御回路45は、傾き予測回路44によるバッファ33aの空サイズSiz0の予測に基づいて、データDat0の転送量Trs0を増減する。制御回路45には、応答信号Ack0が入力され、応答信号Ack0に同期して、転送量Trs0を増減する。
【0070】
図9において、傾き予測回路44は、バッファ33aの空サイズSiz0が増加することを予測するので、制御回路45は、データDat0の転送量を増加する。
【0071】
なお、転送量調整回路34bは、図8で示す転送量調整回路34aと同じ構成を有し、その説明を省略する。
以下、図7の動作について説明する。図7において、リソース36aの転送優先度はリソース36bより大きいとする。制御回路35a,35bが、転送調停回路32にリクエスト信号Req0,Req1を出力したとする。転送調停回路32は、リクエスト信号Req0,Req1を受けて、リソース36a,36bの優先度を判定する。ここでは、リソース36aの優先度が高いので、転送調停回路32は、制御回路35aに応答信号Ack0を出力する。そして、転送調停回路32は、転送量調整回路34aから出力されている転送量Trs0に従って、データDat0をバッファ33aに出力する。
【0072】
転送量調整回路34aは、応答信号Ack0を受けて、バッファ33aから出力されている現在の空サイズSiz0と、前回の転送におけるバッファ33aの空サイズSiz0との差分をとり、図8で示したように、空サイズSiz0の差分値を記憶装置43に記憶する。
【0073】
転送量調整回路34aの傾き予測回路44は、記憶装置43に記憶されている空サイズSiz0の差分値の傾きから、次回データDat0が転送されたときのバッファ33aの空サイズSiz0を予測する。転送量調整回路34aの制御回路45は、傾き予測回路44が、空サイズSiz0が増加すると予測したならば転送量Trs0を増加し、低減すると予測したならば転送量Trs0を低減する。
【0074】
このように、バッファ33a,33bにおいて、過去の空サイズSiz0,Siz1を記憶し、記憶した空サイズSiz0,Siz1の統計に基づいて、次にデータDat0,Dat1が転送されたときのバッファ33a,33bの空き領域を予測し、転送量を増減するようにした。これにより、記憶装置31からリソース36a,36bへのデータの転送効率を高めることができる。
【0075】
なお、転送量調整回路34a,34bの動作を、例えばCPUなどの制御装置によって、データを高い転送効率で転送する場合には活性化し、高い転送効率で転送する必要がない場合には非活性化することにより、消費電力を低減することができる。
【0076】
また、リソースの数は2以上であってもよく、この場合、各リソースに対して図7の転送CH0,CH1,…を具備するようにすればよい。
次に本発明の第4の実施の形態について説明する。図10は、第4の実施の形態に係るデータ転送装置の回路図である。図に示すように、データ転送装置は、記憶装置51、転送調停回路52、バッファ53a,53b、転送量調整回路54a,54b、CH間調停回路55、制御回路56a,56b、及びリソース57a,57bを有している。図に示す転送CH0は、リソース57aにデータDat0を転送するための回路の集まりを示し、バッファ53a、制御回路56aを有している。転送CH1は、リソース57bにデータDat1を転送するための回路の集まりを示し、バッファ53b、制御回路56bを有している。なお、図10に示す記憶装置51、バッファ53a,53b、制御回路56a,56b、及びリソース57a、57bは、図7で示した記憶装置31、バッファ33a,33b、制御回路35a,35b、及びリソース36a,36bと同様であり、その説明を省略する。
【0077】
第4の実施の形態では、CH間調停回路55が、リソース57a,57bの優先度を変更する。CH間調停回路55は、リソース57a,57bの予め設定されている固定された優先度に、転送量調整回路54a,54bが算出する優先度を加算及び減算してリソース57a,57bの優先度を変更する。
【0078】
転送量調整回路54a,54bは、図7の転送量調整回路34a,34bと同様の機能を有し、さらに、バッファ53a,53bの空サイズSiz0,Siz1の差分値の傾きから、加減する優先度を算出する機能を有する。例えば、転送量調整回路54aは、空サイズSiz0の差分値の傾きが増加するようであれば、バッファ53aの空サイズSiz0が増加すると予測し、リソース57aの固定された優先度に、所定の優先度を加算する。
【0079】
転送調停回路52は、CH間調停回路55の優先度に基づいて、転送すべきリソース57a,57bを判定する。
また、CH間調停回路55は、リソース57a,57bの優先度が、設定された所定の値以上になったとき、そのリソース57a,57bにおけるデータDat0,Dat1の転送量Trs0,Trs1を増加させる。また、設定された所定の値は複数設けられ、CH間調停回路55は、リソース57a,57bの優先度が、複数設けられた所定の値以上になる度に、段階的に転送量Trs0,Trs1を増加させる。
【0080】
以下、図10の動作について説明する。なお、転送量Trs0は、リソース57aの優先度が‘3’以上にならなければ増加されないとする。また、転送量Trs0は、リソース57aの優先度が‘4’以上で、記憶装置51の8アドレス分まで増加可能とする。さらに、転送量Trs0は、リソース57aの優先度が‘5’以上で、記憶装置51の10アドレス分まで増加可能とする。
【0081】
CH間調停回路55は、リソース57a,57bの予め設定されている固定された優先度に、転送量調整回路54a,54bが算出する優先度を加算及び減算する。
【0082】
CH間調停回路55は、加算及び減算したリソース57aの優先度が‘1’〜‘3’であれば、転送量調整回路54aが出力する転送量Trs0を増加させないようにする。
【0083】
CH間調停回路55は、リソース57aの優先度が‘4’以上に変更されれば、転送量調整回路54aが出力する転送量Trs0を記憶装置51の8アドレス分まで増加可能とする。
【0084】
CH間調停回路55は、リソース57aの優先度が‘5’以上に変更されれば、転送量調整回路54aが出力する転送量Trs0を記憶装置51の10アドレス分まで増加可能とする。
【0085】
このように、CH間調停回路55によって、リソース57a,57bの優先度を変更し、優先度が所定の値に段階的に達することによって、転送量Trs0,Trs1の増減幅を変更するようにした。これにより、記憶装置51からリソース57a,57bへのデータの転送効率を高めることができる。
【0086】
なお、転送量調整回路54a,54bの動作を、例えばCPUなどの制御装置によって、データを高い転送効率で転送する場合には活性化し、高い転送効率で転送する必要がない場合には非活性化することにより、消費電力を低減することができる。
【0087】
また、リソースの数は2以上であってもよく、この場合、各リソースに対して図7の転送CH0,CH1,…を具備するようにすればよい。
(付記1) データ転送を調停するデータ転送装置において、
複数のリソースが共有するデータが記憶される記憶装置と、
前記データを転送優先度の高い前記リソースに指示される転送量に従って転送する転送調停回路と、
前記リソース毎に設けられ、前記転送調停回路から転送される前記データを一時格納して出力するバッファと、
前記バッファ毎の領域に関する閾値が設定される閾値レジスタと、
前記バッファ毎の空き領域が前記閾値に達したか否かによって、前記転送量を増減する転送量調整回路と、
を有することを特徴とするデータ転送装置。
【0088】
(付記2) 前記転送量調整回路は、前記バッファ毎に一時格納された前記データが前記閾値に達したか否かによって、前記転送量を増減することを特徴とする付記1記載のデータ転送装置。
【0089】
(付記3) 転送量増減禁止閾値が設定される増減禁止レジスタをさらに有し、
前記転送量調整回路は、前記バッファ毎の空き領域が前記転送量増減禁止閾値に達した場合、他の転送優先度の低い前記リソースにおける前記転送量を増減しないことを特徴とする付記1記載のデータ転送装置。
【0090】
(付記4) 転送量低減要求閾値が設定される低減要求レジスタをさらに有し、
前記転送量調整回路は、前記バッファ毎の空き領域が前記転送量低減要求閾値に達した場合、他の転送優先度の低い前記リソースにおける前記転送量を低減することを特徴とする付記1記載のデータ転送装置。
【0091】
(付記5) 前記転送量調整回路は、前記バッファ毎の空き領域が前記閾値に達した場合、他の転送優先度の低い前記リソースにおける前記転送量を増減しないことを特徴とする付記1記載のデータ転送装置。
【0092】
(付記6) 前記転送量調整回路は、前記バッファ毎の空き領域が前記閾値に達した場合、他の転送優先度の低い前記リソースにおける前記転送量を低減することを特徴とする付記1記載のデータ転送装置。
【0093】
(付記7) 前記閾値は、前記閾値レジスタに複数設定され、
前記転送量調整回路は、前記空き領域が前記複数の閾値に達する毎に、段階的に前記転送量を増減することを特徴とする付記1記載のデータ転送装置。
【0094】
(付記8) 転送量調整回路は、選択信号によって活性化及び非活性化されることを特徴とする付記1記載のデータ転送装置。
(付記9) 前記閾値は、前記バッファのすべての空き領域で共通であることを特徴とする付記1記載のデータ転送装置。
【0095】
(付記10) 前記転送量増減禁止閾値は、前記バッファのすべての空き領域で共通であることを特徴とする付記3記載のデータ転送装置。
(付記11) 前記転送量低減要求閾値は、前記バッファのすべての空き領域で共通であることを特徴とする付記4記載のデータ転送装置。
【0096】
(付記12) データ転送を調停するデータ転送装置において、
複数のリソースが共有するデータが記憶される記憶装置と、
前記データを転送優先度の高い前記リソースに指示される転送量に従って転送する転送調停回路と、
前記リソース毎に設けられ、前記転送調停回路から転送される前記データを一時格納して出力するバッファと、
前記バッファ毎の過去の空き領域を記憶し、前記過去の空き領域の統計に基づいて、次に前記データが転送されたときの前記バッファ毎の空き領域を予測し、前記転送量を増減する転送量調整回路と、
を有することを特徴とするデータ転送装置。
【0097】
(付記13) 前記転送量調整回路は、現在の空き領域と前回前記データの転送が行われたときの空き領域との差分を記憶していき、前記記憶された差分の傾きから次に前記データが転送されたときの前記バッファ毎の空き領域を予測することを特徴とする付記12記載のデータ転送装置。
【0098】
(付記14) 前記複数のリソースの転送優先度を前記バッファ毎の空き領域に基づいて変更する転送間調停回路を有することを特徴とする付記12記載のデータ転送装置。
【0099】
(付記15) 前記転送量調整回路は、変更された前記転送優先度に基づいて、前記転送量の増減を行うことを特徴とする付記14記載のデータ転送装置。
(付記16) 前記転送量調整回路は、選択信号によって活性化及び非活性化されることを特徴とする付記12記載のデータ転送装置。
【0100】
【発明の効果】
以上説明したように本発明では、複数のリソース毎に設けたバッファの空き領域が、閾値レジスタに設定された閾値に達したか否かによって、記憶装置からリソースに転送するデータの転送量を増減するようにし、バッファ毎の空き領域が転送量増加禁止閾値に達した場合には、他の転送優先度の低いリソースにおける転送量の増加を禁止し、転送量低減要求閾値に達した場合には、他の転送優先度の低いリソースにおける転送量を低減するようにした。これにより、優先度の低いリソースのデータ転送効率を急激に下げることなく、記憶装置から複数のリソースへのデータの転送効率を高めることができる。
【図面の簡単な説明】
【図1】第1の実施の形態に係るデータ転送装置の回路図である。
【図2】図1の転送量調整回路の具体的な回路図である。
【図3】図1のデータ転送装置の動作を説明するタイミングチャートである。
【図4】転送量調整回路の回路図の他の例である。
【図5】第2の実施の形態に係るデータ転送装置の回路図である。
【図6】図5のデータ転送装置の動作を説明するタイミングチャートである。
【図7】第3の実施の形態に係るデータ転送装置の回路図である。
【図8】転送量調整回路の回路図である。
【図9】記憶装置に記憶された空サイズの差分値のグラフである。
【図10】第4の実施の形態に係るデータ転送装置の回路図である。
【図11】従来のデータ転送装置の回路図である。
【図12】図11のデータ転送装置の動作を説明するタイミングチャートである。
【符号の説明】
1,21,31,43,51 記憶装置
2,22,32,52 転送調停回路
3a,3b,23a,23b,33a,33b,53a,53b バッファ
4a,4b,24aa,24ba 閾値レジスタ
5,25,34a,34b,54a,54b 転送量調整回路
6a,6b,26a,26b,35a,35b,45,56a,56b 制御回路
7a,7b,27a,27b,36a,36b,57a,57b リソース
24ab,24bb 転送UPマスクレジスタ
24ac,24bc 転送DN要求レジスタ
41 ラッチ回路
42 差分回路
44 傾き予測回路
55 CH間調停回路
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data transfer device, and more particularly to a data transfer device that arbitrates data transfer to a plurality of resources.
[0002]
[Prior art]
In some electronic devices, a plurality of resources share data in one storage device and perform pipeline processing. For example, in a digital camera, resources for capturing image data, resources for performing interpolation processing of captured image data, and the like share data in one storage device and perform pipeline processing.
[0003]
When such a plurality of resources share one storage device, a data transfer device that arbitrates access requests to the storage device of each resource and controls data transfer between each resource and the storage device is required. FIG. 11 is a circuit diagram of a conventional data transfer apparatus. As shown in the figure, the data transfer device includes a storage device 101, a transfer arbitration circuit 102, buffers 103a and 103b, registers 104a and 104b, control circuits 105a and 105b, and resources 106a and 106b. The transfer CH0 shown in the figure represents a collection of circuits for transferring the data Dat0 to the resource 106a, and includes a buffer 103a, a register 104a, and a control circuit 105a. The transfer CH1 indicates a collection of circuits for transferring the data Dat1 to the resource 106b, and includes a buffer 103b, a register 104b, and a control circuit 105b.
[0004]
When the transfer arbitration circuit 102 receives the request signals Req0 and Req1 from the control circuits 105a and 105b of the transfer CH0 and CH1, the transfer arbitration circuit 102 determines the priority of the resources 106a and 106b to which the data transfer is to be performed, and the determined resource 106a having the higher priority. , 106b, response signals Ack0, Ack1 are output to the control circuits 105a, 105b. Then, the transfer arbitration circuit 102 outputs the data Dat0 and Dat1 stored in the storage device 101 to the buffers 103a and 103b according to the transfer amounts Trs0 and Trs1 set in the registers 104a and 104b. In addition, there is a round robin as a distribution method that does not concentrate data access on resources with high priority.
[0005]
The buffers 103a and 103b of the transfer CH0 and CH1 temporarily store the data Dat0 and Dat1 transferred from the transfer arbitration circuit 102 and output them to the resources 106a and 106b. The control circuits 105a and 105b output request signals Req0 and Req1 when the free areas of the buffers 103a and 103b become a predetermined size. The registers 104a and 104b store transfer amounts Trs0 and Trs1 when the transfer arbitration circuit 102 performs data transfer at a time.
[0006]
The operation will be described below. FIG. 12 is a timing chart for explaining the operation of the data transfer apparatus of FIG. As illustrated in FIG. 12, when receiving the request signal Req0, the transfer arbitration circuit 102 determines the priority of the resource 106a corresponding to the request signal Req0. If the resource 106a has a higher priority than the other resources 106b, the transfer arbitration circuit 102 returns a response signal Ack0 to the control circuit 105a. Then, the transfer arbitration circuit 102 transfers the data Dat0 to the buffer 103a according to the transfer amount Trs0 (transfer of 16 addresses of the storage device 101 (fixed)) set in the register 104a. As a result, the empty size Siz0 of the buffer 103a is reduced by 16 addresses from '1Ch' to '0Dh' (h: indicating a hexadecimal number) as shown in FIG.
[0007]
By the way, when the data Dat0 and Dat1 stored in the buffers 103a and 103b are emptied, the resources 106a and 106b cannot execute processing, and an error occurs. Therefore, it is necessary to set the transfer amounts Trs0 and Trs1 so that the data Dat0 and Dat1 are always stored in the buffers 103a and 103b.
[0008]
As a device for arbitrating data transfer, there is a device in which a circuit using a bus notifies the arbitration circuit of a transfer amount of data to be transferred (for example, patents). Reference 1).
[0009]
[Patent Document 1]
Japanese Patent Laid-Open No. 10-49485 (page 3, FIG. 1)
[0010]
[Problems to be solved by the invention]
However, in order to ensure that data is always stored in the buffer, it is necessary to set a large amount of data transfer, and since the transfer amount is fixed, only a small amount of data is required for the resource. Even when it is not, a large amount of data is transferred to the buffer, and when a large amount of data is required, only a small amount of data is transferred to the buffer.
[0011]
The present invention has been made in view of the above points, and provides a data transfer device that transfers data according to the amount of data required by a resource and improves the transfer efficiency of data from a storage device to a plurality of resources. The purpose is to provide.
[0012]
[Means for Solving the Problems]
In the present invention, in order to solve the above problems, In a data transfer device that arbitrates data transfer, a storage device that stores data shared by a plurality of resources, a transfer arbitration circuit that transfers the data according to a transfer amount indicated by the resource having a high transfer priority, A buffer that is provided for each resource and temporarily stores and outputs the data transferred from the transfer arbitration circuit, a threshold register that sets a threshold value for an area for each buffer, and a transfer amount increase prohibition threshold value are set. An increase prohibition register, a reduction request register in which a transfer amount reduction request threshold is set, and whether or not the free space for each buffer has reached the threshold, the transfer amount is increased or decreased, and the free space for each buffer is When the transfer amount increase prohibition threshold is reached, the transfer amount is prohibited from increasing in the resource having a lower transfer priority, and the transfer is prohibited. When it reaches the reduction request threshold, the transfer amount adjusting circuit for reducing the transfer amount at low the resource of another transfer priority, A data transfer device is provided.
[0013]
According to such a data transfer device, a plurality of resource Every Buff provided in Of Free space is threshold threshold To Set threshold In value Depending on whether or not Place Lalitho To Data to transfer Of transfer Amount Increase or decrease. Also, if the free space for each buffer reaches the transfer amount increase prohibition threshold, increase of the transfer amount in other low transfer priority resources is prohibited, and if the transfer amount reduction request threshold is reached, other The amount of transfer in a resource having a low transfer priority is reduced. Therefore, Without drastically reducing the data transfer efficiency of low priority resources, Memory Place Multiple resource To Day of Of Increase transfer efficiency.
[0016]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings. The data transfer apparatus of the present invention is applied to, for example, a digital camera. A resource for capturing image data of a digital camera, a resource for performing interpolation processing of captured image data, and the like share data in one storage device and perform pipeline processing. The data transfer device efficiently transfers data stored in the storage device to a resource having a high priority.
[0017]
FIG. 1 is a circuit diagram of the data transfer apparatus according to the first embodiment. As shown in the figure, the data transfer device includes a storage device 1, a transfer arbitration circuit 2, buffers 3a and 3b, threshold registers 4a and 4b, a transfer amount adjustment circuit 5, and resources 7a and 7b. The transfer CH0 shown in the figure represents a collection of circuits for transferring the data Dat0 to the resource 7a, and includes a buffer 3a, a threshold register 4a, and a control circuit 6a. The transfer CH1 indicates a collection of circuits for transferring the data Dat1 to the resource 7b, and includes a buffer 3b, a threshold register 4b, and a control circuit 6b.
[0018]
The storage device 1 stores data Dat0 and Dat1 shared by the resources 7a and 7b. The storage device 1 is, for example, an SRAM (Static Random Access Memory) or an SDRAM (Synchronous Dynamic Random Access Memory).
[0019]
When the transfer arbitration circuit 2 receives the request signals Req0 and Req1 output from the control circuits 6a and 6b, the transfer arbitration circuit 2 determines the resources 7a and 7b having high priority for data transfer. When the transfer arbitration circuit 2 determines the resources 7a and 7b having high priority, the transfer arbitration circuit 2 outputs response signals Ack0 and Ack1 to the control circuits 6a and 6b of the transfer CH0 and CH1 corresponding to the resources 7a and 7b. The transfer arbitration circuit 2 was stored in the storage device 1 in the buffers 3a and 3b of the transfer CH0 and CH1 that output the response signals Ack0 and Ack1 according to the transfer amounts Trs0 and Trs1 output from the transfer amount adjustment circuit 5. Data Dat0 and Dat1 are output.
[0020]
The transfer amounts Trs0 and Trs1 are transfer amounts of the data Dat0 and Dat1 transferred by the transfer arbitration circuit 2 in response to one request signal Req0 and Req1, and are indicated by the size of the address of the storage device 1. For example, if the value of the transfer amount Trs0 is “8”, the transfer arbitration circuit 2 outputs data Dat0 for eight addresses of the storage device 1 to the buffer 3a in one transfer.
[0021]
In addition, there is a round robin as a distribution method that does not concentrate data access on resources with high priority.
The buffers 3a and 3b are provided in each of the resources 7a and 7b. The buffer 3a temporarily stores the data Dat0 transferred from the transfer arbitration circuit 2 and outputs it to the resource 7a. The buffer 3b temporarily stores the data Dat1 transferred from the transfer arbitration circuit 2, and outputs it to the resource 7b. The buffers 3a and 3b store and output data Dat0 and Dat1 by the FIFO method. The buffers 3a and 3b output empty sizes Siz0 and Siz1 indicating the size of the empty area to the transfer amount adjusting circuit 5 and the control circuits 6a and 6b.
[0022]
In the threshold registers 4a and 4b, thresholds Th0 and Th1 (values relating to the areas of the buffers 3a and 3b) for the transfer amount adjustment circuit 5 to compare with the empty sizes Siz0 and Siz1 of the buffers 3a and 3b are set.
[0023]
The transfer amount adjustment circuit 5 determines whether or not the empty sizes Siz0 and Siz1 are equal to or greater than the threshold values Th0 and Th1 set in the threshold registers 4a and 4b for each of the buffers 3a and 3b, and outputs the determination result to the transfer arbitration circuit 2. The transfer amount Trs0, Trs1 is increased or decreased. Specifically, when the empty size Siz0 of the buffer 3a is equal to or greater than the threshold Th0, the transfer amount adjustment circuit 5 increases the transfer amount Trs0. When the empty size Siz0 of the buffer 3a becomes a value smaller than the threshold value Th0 from a state where the threshold value Th0 is equal to or larger than the threshold value Th0, the transfer amount adjustment circuit 5 reduces the transfer amount Trs0 to a value before the increase. That is, when the empty sizes Siz0 and Siz1 of the buffers 3a and 3b are equal to or greater than the threshold values Th0 and Th1, the transfer amount adjustment circuit 5 increases the transfer amounts Trs1 and Trs1 of the data Dat0 and Dat1 of the transfer arbitration circuit 2, and the buffer 3a. , 3b so that the empty sizes Siz0 and Siz1 become smaller.
[0024]
FIG. 2 is a specific circuit diagram of the transfer amount adjustment circuit of FIG. As shown in the figure, the transfer amount adjustment circuit 5 includes subtraction circuits 11a and 11b, negative detection circuits 12a and 12b, and selection circuits 13a and 13b.
[0025]
A threshold value Th0 and an empty size Siz0 are input to the subtraction circuit 11a. The subtraction circuit 11a subtracts the empty size Siz0 from the threshold Th0 and outputs the result to the negative detection circuit 12a. The threshold value Th1 and the empty size Siz1 are input to the subtraction circuit 11b. Similarly to the subtraction circuit 11a, the subtraction circuit 11b subtracts the empty size Siz1 from the threshold Th1, and outputs the result to the negative detection circuit 12b.
[0026]
The negative detection circuits 12a and 12b detect whether the subtraction results output from the subtraction circuits 11a and 11b are positive or negative and output them to the selection circuits 13a and 13b.
Values “8” and “16” that become the transfer amount Trs0 are input to the selection circuit 13a. The selection circuit 13a selects the input “8” and “16” according to the detection result of the negative detection circuit 12a, and outputs it as the transfer amount Trs0. Specifically, when a negative detection result is output from the negative detection circuit 12a, that is, when the empty size Siz0 of the buffer 3a is greater than or equal to the threshold Th0, the selection circuit 13a outputs '16' as the transfer amount Trs0. . When a positive detection result is output from the negative detection circuit 12a, that is, when the empty size Siz0 of the buffer 3a is smaller than the threshold value Th0, the selection circuit 13a outputs “8” as the transfer amount Trs0.
[0027]
Returning to the description of FIG. The control circuits 6a and 6b output request signals Req0 and Req1 for requesting transfer of the data Dat0 and Dat1 to the transfer arbitration circuit 2. The control circuits 6a and 6b recognize that the data Dat0 and Dat1 are transferred to the buffers 3a and 3b by receiving the response signals Ack0 and Ack1.
[0028]
The control circuits 6a and 6b output request signals Req0 and Req1 according to the sizes of the empty sizes Siz0 and Siz1 of the buffers 3a and 3b. For example, when the empty sizes Siz0 and Siz1 become larger than a predetermined value, request signals Req0 and Req1 are output. Alternatively, the control circuits 6a and 6b may output the request signals Req0 and Req1 at regular intervals.
[0029]
The resources 7a and 7b perform pipeline processing on the shared data Dat0 and Dat1. Data Dat0 and Dat1 stored in the storage device 1 are temporarily stored in the buffers 3a and 3b, and the resources 7a and 7b receive the data Dat0 and Dat1 temporarily stored in the buffers 3a and 3b and perform processing.
[0030]
Hereinafter, the operation of FIG. 1 will be described with reference to a timing chart. In FIG. 1, it is assumed that the transfer priority of the resource 7a is higher than that of the resource 7b. FIG. 3 is a timing chart for explaining the operation of the data transfer apparatus of FIG. “1Ah” (h: indicating a hexadecimal number) of Th0 shown in FIG. 3 indicates a value set in the threshold register 4a. Req0 and Ack0 indicate timing waveforms of the request signal Req0 and the response signal Ack0. “18h”, “19h”,..., “0Eh” of Siz0 indicate changes in the empty size Siz0 of the buffer 3a. Trs0 indicates a change in the transfer amount Trs0 of the data Dat0.
[0031]
As shown in FIG. 3, the buffer 3a outputs the temporarily stored data Dat0 to the resource 7a one by one. Therefore, the empty size Siz0 of the buffer 3a is incremented by 1 as “18h”, “19h”,.
[0032]
The empty size Siz0 of the buffer 3a is output to the transfer amount adjustment circuit 5. The transfer amount adjustment circuit 5 determines whether or not the empty size Siz0 of the buffer 3a is equal to or greater than the threshold value Th0 set in the threshold value register 4a.
[0033]
The threshold value Th0 set in the threshold value register 4a is “1Ah” as shown in FIG. Accordingly, when the empty size Siz0 becomes “1Ah” or more, the transfer amount adjustment circuit 5 increases the transfer amount Trs0 from “8” (transfer for 8 addresses) to “16” (transfer for 16 addresses).
[0034]
Assume that the control circuits 6a and 6b output request signals Req0 and Req1 to the transfer arbitration circuit 2. The transfer arbitration circuit 2 receives the request signals Req0 and Req1, determines the priority of the resources 7a and 7b, and outputs response signals Ack0 and Ack1. Here, since it is assumed that the priority of the resource 7a is high, the transfer arbitration circuit 2 outputs a response signal Ack0 as shown in FIG. 3 to the control circuit 6a of the transfer CH0 corresponding to the resource 7a. Then, the transfer arbitration circuit 2 outputs the data Dat0 to the buffer 3a according to the transfer amount Trs0.
[0035]
The transfer amount Trs0 at this time is “16” as shown in FIG. Therefore, the transfer arbitration circuit 2 outputs data Dat0 for 16 addresses of the storage device 1 to the buffer 3a.
[0036]
In the buffer 3a, when the data Dat0 for 16 addresses is transferred from the storage device 1, the empty size Siz0 is changed from '1Ch' to '0Dh'. The transfer amount adjustment circuit 5 outputs the transfer amount Trs0 of “8” because the empty size Siz0 has become “0Ch” which is smaller than the threshold value Th0 of “1Ah”.
[0037]
Similarly, also in the transfer CH1, the transfer amount adjustment circuit 5 increases or decreases the transfer amount Trs1 depending on whether or not the empty size Siz1 of the buffer 3b has reached the threshold Th1. When the control circuit 6b outputs the request signal Req1 and the response signal Ack1 returns, the data Dat1 of the transfer amount Trs1 is transferred to the buffer 3b.
[0038]
Thus, the resources 7a and 7b from the storage device 1 depend on whether or not the empty sizes Siz0 and Siz1 of the buffers 3a and 3b provided in the resources 7a and 7b are equal to or greater than the thresholds Th0 and Th1 set in the threshold registers 4a and 4b. The transfer amounts Trs0 and Trs1 of the data Dat0 and Dat1 to be transferred to are increased or decreased. Thereby, the efficiency of data transfer from the storage device 1 to the resources 7a and 7b can be increased.
[0039]
In the above description, the transfer amounts Trs0 and Trs1 are increased or decreased depending on whether or not the empty sizes Siz0 and Siz1 of the buffers 3a and 3b are equal to or larger than the threshold values Th0 and Th1, but the data temporarily stored in the buffers 3a and 3b. The transfer amounts Trs0 and Trs1 may be increased or decreased depending on whether or not Dat0 and Dat1 are equal to or greater than the values set in the threshold registers 4a and 4b.
[0040]
In addition, when the transfer amount Trs0 of the resource 7a with a high priority increases, the transfer amount Trs1 of the resource 7b with a low priority can be prevented from increasing, thereby improving the data transfer efficiency. FIG. 4 is another example of a circuit diagram of the transfer amount adjustment circuit. 3, the detection results of the negative detection circuits 12a and 12b shown in FIG. 2 are ANDed by the AND circuit 14 and output to the selection circuit 13b. For example, in FIG. 3, when both the negative detection circuits 12a and 12b output an H state indicating a negative detection result, the AND circuit 14 outputs an L state. The selection circuit 13a outputs “16” as the transfer amount Trs0 from the H state of the negative detection circuit 12a, and the selection circuit 13b outputs “8” as the transfer amount Trs1 from the L state of the AND circuit 14. In this way, the transfer amount Trs1 of the resource 7b with low priority is not increased.
[0041]
Note that the number of resources may be two or more. In this case, it is only necessary to provide the transfer CH0, CH1,... Of FIG.
Next, a second embodiment of the present invention will be described. FIG. 5 is a circuit diagram of a data transfer apparatus according to the second embodiment. As shown in the figure, the data transfer device includes a storage device 21, a transfer arbitration circuit 22, buffers 23a and 23b, threshold registers 24aa and 24ba, transfer UP mask registers 24ab and 24bb, transfer DN request registers 24ac and 24bc, transfer amount adjustment. A circuit 25, control circuits 26a and 26b, and resources 27a and 27b are included. The transfer CH0 shown in the drawing represents a collection of circuits for transferring data Dat0 to the resource 27a, and includes a buffer 23a, a threshold register 24aa, a transfer UP mask register 24ab, a transfer DN request register 24ac, and a control circuit 26a. Yes. The transfer CH1 indicates a collection of circuits for transferring the data Dat1 to the resource 27b, and includes a buffer 23b, a threshold register 24ba, a transfer UP mask register 24bb, a transfer DN request register 24bc, and a control circuit 26b. 5, the storage device 21, the transfer arbitration circuit 22, the buffers 23a and 23b, the control circuits 26a and 26b, and the resources 27a and 27b are the same as the storage device 1, the transfer arbitration circuit 2, the buffer 3a, 3b, the control circuits 6a and 6b, and the resources 7a and 7b are the same as those in FIG.
[0042]
In the threshold registers 24aa and 24ba, thresholds Th0 and Th1 relating to the areas of the buffers 23a and 23b are set for the transfer amount adjustment circuit 25 to compare with the empty sizes Siz0 and Siz1 of the buffers 23a and 23b. In the transfer UP mask registers 24ab and 24bb, UP mask values Mask0 and Mask1 relating to the areas of the buffers 23a and 23b are set for the transfer amount adjustment circuit 25 to compare with the empty sizes Siz0 and Siz1 of the buffers 23a and 23b. . In the transfer DN request registers 24ac and 24bc, the DN request values Reqdn0 and Reqdn1 relating to the areas of the buffers 23a and 23b are set for the transfer amount adjustment circuit 25 to compare with the empty sizes Siz0 and Siz1 of the buffers 23a and 23b. . There is a relationship of threshold Th0 <UP mask value Mask0 <DN required value Reqdn0 and threshold Th1 <UP mask value Mask1 <DN required value Reqdn1.
[0043]
The transfer amount adjustment circuit 25 determines whether or not the empty sizes Siz0 and Siz1 are equal to or larger than the threshold values Th0 and Th1 for each of the buffers 23a and 23b, and increases or decreases the transfer amounts Trs0 and Trs1. Specifically, when the empty size Siz0 of the buffer 23a is equal to or greater than the threshold value Th0, the transfer amount adjustment circuit 25 increases the transfer amount Trs0. When the empty size Siz0 of the buffer 23a becomes a value smaller than the threshold value Th0 from a state where the threshold value Th0 is equal to or larger than the threshold value Th0, the transfer amount adjustment circuit 25 reduces the transfer amount Trs0 to a value before the increase. That is, when the empty sizes Siz0 and Siz1 of the buffers 23a and 23b are equal to or greater than the threshold values Th0 and Th1, the transfer amount adjustment circuit 25 increases the transfer amounts Trs1 and Trs0 of the data Dat0 and Dat1 of the transfer arbitration circuit 22, and the buffer 23a , 23b so that the empty sizes Siz0 and Siz1 become smaller.
[0044]
Further, the transfer amount adjustment circuit 25 determines whether or not the empty sizes Siz0 and Siz1 are equal to or larger than the UP mask values Mask0 and Mask1 for each of the buffers 23a and 23b, and the data Dat0 and Dat1 in the resources 27a and 27b with low priority. Transfer amount Trs0, Trs1 is not increased (not changed (increased / decreased)). Specifically, when the priority of data transfer of the resource 27a is higher than that of the resource 27b, when the empty size Siz0 of the buffer 23a is equal to or greater than the UP mask value Mask0, the empty size Siz1 of the buffer 23a is equal to or greater than the threshold Th1. However, the transfer amount Trs1 is not increased. That is, when the empty sizes Siz0 and Siz1 of the buffers 23a and 23b in the resources 27a and 27b with high priority become equal to or larger than the UP mask values Mask0 and Mask1, the data Dat0 and Dat1 of the other resources 27a and 27b with low priority The transfer amounts Trs0 and Trs1 are not increased.
[0045]
Further, the transfer amount adjustment circuit 25 determines whether or not the empty sizes Siz0 and Siz1 are greater than or equal to the DN request values Reqdn0 and Reqdn1 for each of the buffers 23a and 23b, and the data Dat0 and Dat1 in the resources 27a and 27b with low priority. Transfer amount Trs0, Trs1 is reduced. Specifically, when the priority of data transfer of the resource 27a is higher than that of the resource 27b, when the empty size Siz0 of the buffer 23a is equal to or greater than the DN request value Reqdn0, the transfer amount Trs1 in the resource 27b of low priority is reduced. . That is, when the empty sizes Siz0 and Siz1 of the buffers 23a and 23b in the resources 27a and 27b with high priority become equal to or greater than the DN request values Reqdn0 and Reqdn1, the data Dat0 and Dat1 of the other resources 27a and 27b with low priority Transfer amount Trs0, Trs1 is reduced.
[0046]
As described above, there is a relationship of threshold Th0 <UP mask value Mask0 and threshold Th1 <UP mask value Mask1. Therefore, when the empty size of the high priority resource buffer is larger than the threshold and larger than the UP mask value, an increase in the transfer amount to the buffer in the low priority resource is prohibited. In other words, the data transfer time of a resource with a low priority is suppressed, and the amount of data transferred to a resource with a high priority is allocated as much as the transfer time is suppressed, and the data transfer efficiency from the storage device to the resource is further increased.
[0047]
Further, there is a relationship of UP mask value Mask0 <DN request value Reqdn0 and UP mask value Mask1 <DN request value Reqdn0. Therefore, when the empty size of the high priority resource buffer is larger than the UP mask value and further larger than the DN request value, the transfer amount to the buffer in the low priority resource is reduced. That is, the transfer time of a resource with a low priority is reduced, and the transfer time is reduced, so that data transfer to a resource with a high priority is allocated, and the data transfer efficiency from the storage device to the resource is further increased.
[0048]
Hereinafter, the operation of FIG. 5 will be described using a timing chart. In FIG. 5, it is assumed that the transfer priority of the resource 27a is higher than that of the resource 27b. Further, it is assumed that “1Ah” is set as the threshold Th0 in the threshold register 24aa. It is assumed that “1Eh” is set as the UP mask value Mask0 in the transfer UP mask register 24ab. In the transfer DN request register 24ac, “20h” is set as the DN request value Reqdn0. It is assumed that “4Ah” is set as the threshold Th1 in the threshold register 24ba. It is assumed that “4Eh” is set in the transfer UP mask register 24bb as the UP mask value Mask1.
[0049]
FIG. 6 is a timing chart for explaining the operation of the data transfer apparatus of FIG. As shown in the figure, “18h”, “19h”,... Of Siz0 indicate changes in the empty size Siz0 of the buffer 23a. The transfer UP0 indicates the timing when the empty size Siz0 is equal to or greater than the threshold Th0. Trs0 indicates the transfer amount Trs0 of the data Dat0 that the transfer amount adjustment circuit 25 instructs the transfer arbitration circuit 22. Also, “43h”, “44h”,... Of Siz1 indicate changes in the empty size Siz1 of the buffer 23b. The transfer UP1 indicates the timing when the empty size Siz1 becomes equal to or greater than the UP mask value Mask1. The transfer DN1 shows the timing when the empty size Siz0 becomes larger than the DN request value Reqdn1. Trs1 indicates the transfer amount Trs0 of the data Dat1 that the transfer amount adjustment circuit 25 instructs the transfer arbitration circuit 22.
[0050]
As shown in FIG. 6, when the empty size Siz0 of the buffer 3a is equal to or greater than “1Ah” which is the threshold Th0, the transfer amount adjustment circuit 25 changes the transfer amount Trs0 from “8” (transfer for 8 addresses) to “16”. (Transfer for 16 addresses). Therefore, the transfer arbitration circuit 22 transfers 16 addresses of the storage device 21 when transferring the data Dat0.
[0051]
When the empty size Siz0 of the buffer 3a becomes equal to or larger than “1Eh” that is the UP mask value Mask0, the transfer amount adjustment circuit 25 transfers even if the empty size Siz1 of the buffer 3b becomes equal to or larger than “4Ah” that is the threshold Th1. Do not increase the amount Trs1.
[0052]
When the empty size Siz0 of the buffer 3a becomes equal to or greater than “20h” which is the DN request value Reqdn0, the transfer amount adjustment circuit 25 transfers the transfer amount Trs1 from “8” (transfer of 8 addresses) to “4” (transfer of 4 addresses). ). Therefore, the transfer arbitration circuit 22 transfers eight addresses of the storage device 21 when transferring the data Dat1.
[0053]
As described above, the resources 27a and 27b from the storage device 21 depend on whether or not the empty sizes Siz0 and Siz1 of the buffers 23a and 23b provided in the resources 27a and 27b are equal to or greater than the threshold values Th0 and Th1 set in the threshold registers 24aa and 24ba. The transfer amounts Trs0 and Trs1 of the data Dat0 and Dat1 to be transferred to are increased or decreased. Thereby, the transfer efficiency of the data from the storage device 21 to the resources 27a and 27b can be increased.
[0054]
Further, when the empty sizes Siz0 and Siz1 of the buffers 23a and 23b are further increased and become equal to or higher than the UP mask values Mask0 and Mask1 set in the transfer UP mask registers 24ab and 24bb, the data Dat0, The transfer amounts Trs0 and Trs1 of Dat1 are not increased (changed). Thereby, since the transfer time of the resource with low priority is suppressed, it is allocated to data transfer to the resource with high priority, and the transfer efficiency of data from the storage device 21 to the resources 27a and 27b can be improved.
[0055]
Further, when the empty sizes Siz0 and Siz1 of the buffers 23a and 23b become larger and become equal to or larger than the DN request values Reqdn0 and Reqdn1 set in the transfer DN request registers 24ac and 24bc, the data Dat0 and Dat1 in the resources 27a and 27b with low priority The transfer amount Trs0, Trs1 is reduced. Thereby, since the transfer time of the low priority resource is reduced, it is allocated to the data transfer to the high priority resource, and the data transfer efficiency from the storage device 21 to the resources 27a and 27b can be increased. .
[0056]
The threshold value Th0 may be the UP mask value Mask0, and the threshold value Th1 may be the UP mask value Mask1. That is, whether or not to increase (change) the transfer amounts Trs0 and Trs1 is determined based on the thresholds Th0 and Th1 set in the threshold registers 24aa and 24bb. As a result, the transfer UP mask registers 24ab and 24bb become unnecessary, and the cost can be reduced.
[0057]
Further, the threshold value Th0 may be the DN request value Reqdn0, and the threshold value Th1 may be the DN request value Reqdn1. That is, it is determined whether or not to reduce the transfer amounts Trs0 and Trs1 based on the thresholds Th0 and Th1 set in the threshold registers 24aa and 24bb. As a result, the transfer DN request registers 24ab and 24bb become unnecessary, and the cost can be reduced.
[0058]
In addition, a plurality of threshold registers 24aa and 24ba are provided, and the plurality of thresholds are compared with the empty sizes Siz0 and Siz1, and each time the empty sizes Siz0 and Siz1 exceed the plurality of thresholds, the transfer amount is gradually increased. Trs0 and Trs1 may be increased or decreased. Thereby, the transfer efficiency of the data from the storage device 21 to the resources 27a and 27b can be further increased.
[0059]
Further, each of the threshold registers 24aa and 24ba, the transfer UP mask registers 24ab and 24bb, and the transfer DN request registers 24ac and 24bc is made one, and each buffer 23a, You may make it compare with empty size Siz0 and Siz1 of 23b. That is, by sharing the threshold value, the UP mask value, and the DN request value in each buffer, only one threshold value register, transfer UP mask register, and transfer DN request register are required, and the cost can be reduced.
[0060]
Further, the operation of the transfer amount adjustment circuit 25 is activated when data is transferred with high transfer efficiency by a control device such as a CPU, for example, and is deactivated when it is not necessary to transfer data with high transfer efficiency. Thus, power consumption can be reduced.
[0061]
Note that the number of resources may be two or more. In this case, it is only necessary to provide the transfer CH0, CH1,... Of FIG.
Next, a third embodiment of the present invention will be described. FIG. 7 is a circuit diagram of a data transfer apparatus according to the third embodiment. As shown in the figure, the data transfer device includes a storage device 31, a transfer arbitration circuit 32, buffers 33a and 33b, transfer amount adjustment circuits 34a and 34b, control circuits 35a and 35b, and resources 36a and 36b. The transfer CH0 shown in the figure represents a collection of circuits for transferring the data Dat0 to the resource 36a, and includes a buffer 33a and a control circuit 35a. The transfer CH1 indicates a collection of circuits for transferring the data Dat1 to the resource 36b, and includes a buffer 33b and a control circuit 35b. Note that the storage device 31, the transfer arbitration circuit 32, the buffers 33a and 33b, the control circuits 35a and 35b, and the resources 36a and 36b illustrated in FIG. 7 are the same as the storage device 1, the transfer arbitration circuit 2, the buffer 3a, and the like illustrated in FIG. 3b, the control circuits 6a and 6b, and the resources 7a and 7b are the same as those in FIG.
[0062]
In the third embodiment, the transfer amount adjustment circuits 34a and 34b store the past empty sizes Siz0 and Siz1 of the buffers 33a and 33b, and the next data is based on the statistics of the stored empty sizes Siz0 and Siz1. The empty sizes Siz0 and Siz1 of the buffers 33a and 33b when Dat0 and Dat1 are transferred are predicted. Then, the transfer amount adjustment circuits 34a and 34b increase or decrease the transfer amounts Trs0 and Trs1 based on the predicted empty sizes Siz0 and Siz1.
[0063]
The transfer amount adjustment circuit 34a calculates the difference between the empty size Siz0 of the buffer 33a when the previous data Dat0 was transferred and the empty size Siz0 of the buffer 33a when the current data Dat0 was transferred. The data is stored in a built-in storage device. The transfer amount adjustment circuit 34a increases or decreases the transfer amount Trs0 by predicting an empty area of the buffer when data is transferred next time from the stored gradient of the past difference. Similarly to the transfer amount adjustment circuit 34a, the transfer amount adjustment circuit 34b predicts the empty size Siz1 of the buffer 33b and increases or decreases the transfer amount Trs1. FIG. 8 is a circuit diagram of the transfer amount adjustment circuit. As shown in the figure, the transfer amount adjustment circuit 34 a includes a latch circuit 41, a difference circuit 42, a storage device 43, an inclination prediction circuit 44, and a control circuit 45.
[0064]
The latch circuit 41 receives an empty size Siz0 and a response signal Ack0. When the response signal Ack0 is input, the latch circuit 41 outputs the stored empty size Siz0 at the previous transfer to the difference circuit 42, and stores the currently input empty size Siz0.
[0065]
The difference circuit 42 receives the current empty size Siz0 and the previous empty size Siz0 held in the latch circuit 41. The difference circuit 42 takes the difference between the input current empty size Siz0 and the previous empty size Siz0 and stores it in the storage device 43.
[0066]
The storage device 43 stores the difference value of the empty size Siz0 output from the difference circuit 42 for a plurality of times. The storage device 43 stores the difference value of the empty size Siz0 output from the difference circuit 42 in synchronization with the response signal Ack0. Further, the storage device 43 outputs the stored difference value of the empty size Siz0 to the inclination prediction circuit 44 in accordance with an instruction from the control circuit 45.
[0067]
The inclination prediction circuit 44 predicts the empty size Siz0 of the buffer 33a when the next data Dat0 transfer is performed according to the inclination of the difference value of the empty size Siz0 stored in the storage device 43. FIG. 9 is a graph of the difference value of the empty size stored in the storage device. The horizontal axis of the graph shown in the figure represents time, and the vertical axis represents the difference value of the empty size Siz0. Also, “◯” shown in the figure is the difference value of the empty size Siz0 stored in the storage device 43. In the figure, the difference value of the empty size Siz0 becomes the past as '◯' goes to the right.
[0068]
In FIG. 9, the difference value of the empty size Siz0 tends to increase. The inclination prediction circuit 44 predicts that the empty size Siz0 of the buffer 33a when the data Dat0 is transferred next time increases according to the inclination of the increase in the difference value of the empty size stored in the storage device 43. To do.
[0069]
The control circuit 45 increases or decreases the transfer amount Trs0 of the data Dat0 based on the prediction of the empty size Siz0 of the buffer 33a by the inclination prediction circuit 44. A response signal Ack0 is input to the control circuit 45, and the transfer amount Trs0 is increased or decreased in synchronization with the response signal Ack0.
[0070]
In FIG. 9, since the slope prediction circuit 44 predicts that the empty size Siz0 of the buffer 33a increases, the control circuit 45 increases the transfer amount of the data Dat0.
[0071]
The transfer amount adjustment circuit 34b has the same configuration as the transfer amount adjustment circuit 34a shown in FIG. 8, and a description thereof will be omitted.
Hereinafter, the operation of FIG. 7 will be described. In FIG. 7, it is assumed that the transfer priority of the resource 36a is greater than that of the resource 36b. It is assumed that the control circuits 35a and 35b output request signals Req0 and Req1 to the transfer arbitration circuit 32. The transfer arbitration circuit 32 receives the request signals Req0 and Req1, and determines the priority of the resources 36a and 36b. Here, since the priority of the resource 36a is high, the transfer arbitration circuit 32 outputs the response signal Ack0 to the control circuit 35a. Then, the transfer arbitration circuit 32 outputs data Dat0 to the buffer 33a in accordance with the transfer amount Trs0 output from the transfer amount adjustment circuit 34a.
[0072]
Upon receiving the response signal Ack0, the transfer amount adjustment circuit 34a takes the difference between the current empty size Siz0 output from the buffer 33a and the empty size Siz0 of the buffer 33a in the previous transfer, as shown in FIG. In addition, the difference value of the empty size Siz0 is stored in the storage device 43.
[0073]
The inclination prediction circuit 44 of the transfer amount adjustment circuit 34a predicts the empty size Siz0 of the buffer 33a when the next data Dat0 is transferred from the inclination of the difference value of the empty size Siz0 stored in the storage device 43. The control circuit 45 of the transfer amount adjustment circuit 34a increases the transfer amount Trs0 if the slope prediction circuit 44 predicts that the empty size Siz0 is increased, and decreases the transfer amount Trs0 if it is predicted to decrease.
[0074]
As described above, the past empty sizes Siz0 and Siz1 are stored in the buffers 33a and 33b, and the buffers 33a and 33b when the data Dat0 and Dat1 are next transferred are based on the statistics of the stored empty sizes Siz0 and Siz1. The amount of transfer was increased / decreased by predicting the free space. Thereby, the transfer efficiency of the data from the storage device 31 to the resources 36a and 36b can be increased.
[0075]
The operation of the transfer amount adjustment circuits 34a and 34b is activated when data is transferred with high transfer efficiency by a control device such as a CPU, for example, and is deactivated when transfer with high transfer efficiency is not required. By doing so, power consumption can be reduced.
[0076]
Further, the number of resources may be two or more, and in this case, it is only necessary to provide the transfer CH0, CH1,... Of FIG.
Next, a fourth embodiment of the present invention will be described. FIG. 10 is a circuit diagram of a data transfer apparatus according to the fourth embodiment. As shown in the figure, the data transfer device includes a storage device 51, a transfer arbitration circuit 52, buffers 53a and 53b, transfer amount adjustment circuits 54a and 54b, an inter-CH arbitration circuit 55, control circuits 56a and 56b, and resources 57a and 57b. have. The transfer CH0 shown in the figure represents a collection of circuits for transferring the data Dat0 to the resource 57a, and includes a buffer 53a and a control circuit 56a. The transfer CH1 indicates a collection of circuits for transferring the data Dat1 to the resource 57b, and includes a buffer 53b and a control circuit 56b. Note that the storage device 51, the buffers 53a and 53b, the control circuits 56a and 56b, and the resources 57a and 57b shown in FIG. 10 are the storage device 31, the buffers 33a and 33b, the control circuits 35a and 35b, and the resources shown in FIG. This is the same as 36a and 36b, and a description thereof is omitted.
[0077]
In the fourth embodiment, the inter-CH arbitration circuit 55 changes the priority of the resources 57a and 57b. The inter-CH arbitration circuit 55 adds and subtracts the priority calculated by the transfer amount adjustment circuits 54a and 54b from the preset fixed priority of the resources 57a and 57b to thereby give the priority of the resources 57a and 57b. change.
[0078]
The transfer amount adjustment circuits 54a and 54b have the same functions as the transfer amount adjustment circuits 34a and 34b in FIG. 7, and the priority level is adjusted according to the difference between the empty sizes Siz0 and Siz1 of the buffers 53a and 53b. It has the function to calculate. For example, the transfer amount adjustment circuit 54a predicts that the empty size Siz0 of the buffer 53a will increase if the slope of the difference value of the empty size Siz0 increases, and gives a predetermined priority to the fixed priority of the resource 57a. Add degrees.
[0079]
The transfer arbitration circuit 52 determines the resources 57 a and 57 b to be transferred based on the priority of the inter-CH arbitration circuit 55.
Further, the inter-CH arbitration circuit 55 increases the transfer amounts Trs0 and Trs1 of the data Dat0 and Dat1 in the resources 57a and 57b when the priority of the resources 57a and 57b is equal to or higher than the set predetermined value. Also, a plurality of set predetermined values are provided, and the inter-CH arbitration circuit 55 gradually transfers the transfer amounts Trs0, Trs1 each time the priority of the resources 57a, 57b becomes equal to or higher than the predetermined values provided. Increase.
[0080]
Hereinafter, the operation of FIG. 10 will be described. It is assumed that the transfer amount Trs0 is not increased unless the priority of the resource 57a becomes “3” or higher. The transfer amount Trs0 can be increased up to eight addresses of the storage device 51 when the priority of the resource 57a is “4” or more. Furthermore, the transfer amount Trs0 can be increased to 10 addresses of the storage device 51 when the priority of the resource 57a is '5' or more.
[0081]
The inter-CH arbitration circuit 55 adds and subtracts the priority calculated by the transfer amount adjustment circuits 54a and 54b to the preset fixed priority of the resources 57a and 57b.
[0082]
The inter-CH arbitration circuit 55 prevents the transfer amount Trs0 output from the transfer amount adjustment circuit 54a from increasing if the priority of the added and subtracted resource 57a is “1” to “3”.
[0083]
The inter-CH arbitration circuit 55 can increase the transfer amount Trs0 output from the transfer amount adjustment circuit 54a up to eight addresses of the storage device 51 if the priority of the resource 57a is changed to “4” or more.
[0084]
The inter-CH arbitration circuit 55 can increase the transfer amount Trs0 output from the transfer amount adjustment circuit 54a to 10 addresses of the storage device 51 when the priority of the resource 57a is changed to “5” or more.
[0085]
As described above, the priority of the resources 57a and 57b is changed by the inter-CH arbitration circuit 55, and the increase / decrease width of the transfer amounts Trs0 and Trs1 is changed by stepping the priority to a predetermined value. . Thereby, the transfer efficiency of the data from the storage device 51 to the resources 57a and 57b can be increased.
[0086]
The operation of the transfer amount adjustment circuits 54a and 54b is activated when data is transferred with high transfer efficiency by a control device such as a CPU, for example, and is deactivated when transfer with high transfer efficiency is not required. By doing so, power consumption can be reduced.
[0087]
Further, the number of resources may be two or more, and in this case, it is only necessary to provide the transfer CH0, CH1,... Of FIG.
(Supplementary Note 1) In a data transfer apparatus that arbitrates data transfer,
A storage device for storing data shared by a plurality of resources;
A transfer arbitration circuit that transfers the data according to a transfer amount indicated by the resource having a high transfer priority;
A buffer provided for each resource and temporarily storing and outputting the data transferred from the transfer arbitration circuit;
A threshold value register in which a threshold value related to the area for each buffer is set;
A transfer amount adjustment circuit that increases or decreases the transfer amount depending on whether or not the free space for each buffer reaches the threshold;
A data transfer device comprising:
[0088]
(Supplementary note 2) The data transfer device according to supplementary note 1, wherein the transfer amount adjustment circuit increases or decreases the transfer amount depending on whether or not the data temporarily stored for each buffer reaches the threshold value. .
[0089]
(Additional remark 3) It has further the increase / decrease prohibition register in which the transfer amount increase / decrease prohibition threshold is set,
The transfer amount adjustment circuit does not increase or decrease the transfer amount in the resource having a lower transfer priority when an empty area for each buffer reaches the transfer amount increase / decrease prohibition threshold. Data transfer device.
[0090]
(Additional remark 4) It further has a reduction request register in which a transfer amount reduction request threshold is set,
The transfer amount adjusting circuit according to claim 1, wherein the transfer amount adjustment circuit reduces the transfer amount in the resource having a lower transfer priority when an empty area for each buffer reaches the transfer amount reduction request threshold. Data transfer device.
[0091]
(Additional remark 5) The said transfer amount adjustment circuit does not increase / decrease the said transfer amount in the said other resource with low transfer priority, when the vacant area for every said buffer reaches the said threshold value Data transfer device.
[0092]
(Supplementary note 6) The transfer amount adjustment circuit reduces the transfer amount in another resource having a low transfer priority when an empty area for each buffer reaches the threshold value. Data transfer device.
[0093]
(Supplementary note 7) A plurality of the thresholds are set in the threshold register,
2. The data transfer apparatus according to claim 1, wherein the transfer amount adjustment circuit increases or decreases the transfer amount step by step each time the free area reaches the plurality of threshold values.
[0094]
(Supplementary note 8) The data transfer device according to supplementary note 1, wherein the transfer amount adjustment circuit is activated and deactivated by a selection signal.
(Supplementary note 9) The data transfer device according to supplementary note 1, wherein the threshold value is common to all free areas of the buffer.
[0095]
(Supplementary note 10) The data transfer device according to supplementary note 3, wherein the transfer amount increase / decrease prohibition threshold is common to all free areas of the buffer.
(Supplementary note 11) The data transfer device according to supplementary note 4, wherein the transfer amount reduction request threshold value is common to all free areas of the buffer.
[0096]
(Supplementary Note 12) In a data transfer apparatus that arbitrates data transfer,
A storage device for storing data shared by a plurality of resources;
A transfer arbitration circuit that transfers the data according to a transfer amount indicated by the resource having a high transfer priority;
A buffer provided for each resource and temporarily storing and outputting the data transferred from the transfer arbitration circuit;
A transfer that stores a past free area for each buffer, predicts a free area for each buffer when the data is next transferred based on statistics of the past free area, and increases or decreases the transfer amount A quantity adjustment circuit;
A data transfer device comprising:
[0097]
(Additional remark 13) The said transfer amount adjustment circuit memorize | stores the difference of the present empty area | region and the empty area | region when the said data transfer was performed last time, and the said data is next from the inclination of the said stored difference. 13. The data transfer device according to appendix 12, wherein an empty area for each of the buffers when the data is transferred is predicted.
[0098]
(Supplementary note 14) The data transfer device according to supplementary note 12, further comprising an inter-transfer arbitration circuit that changes transfer priorities of the plurality of resources based on an empty area for each of the buffers.
[0099]
(Supplementary note 15) The data transfer device according to supplementary note 14, wherein the transfer amount adjustment circuit increases or decreases the transfer amount based on the changed transfer priority.
(Supplementary note 16) The data transfer device according to supplementary note 12, wherein the transfer amount adjustment circuit is activated and deactivated by a selection signal.
[0100]
【The invention's effect】
As described above, according to the present invention, the transfer amount of data transferred from the storage device to the resource is increased or decreased depending on whether or not the free area of the buffer provided for each of the resources has reached the threshold set in the threshold register. Like When the free space for each buffer reaches the transfer amount increase prohibition threshold, increase of the transfer amount in other low transfer priority resources is prohibited, and when the transfer amount decrease request threshold is reached, Reduce the amount of transfer for resources with low transfer priority. It was. This Without drastically reducing the data transfer efficiency of low priority resources, Data transfer efficiency from the storage device to a plurality of resources can be increased.
[Brief description of the drawings]
FIG. 1 is a circuit diagram of a data transfer apparatus according to a first embodiment.
FIG. 2 is a specific circuit diagram of the transfer amount adjustment circuit of FIG. 1;
FIG. 3 is a timing chart for explaining the operation of the data transfer apparatus in FIG. 1;
FIG. 4 is another example of a circuit diagram of the transfer amount adjustment circuit.
FIG. 5 is a circuit diagram of a data transfer apparatus according to a second embodiment.
6 is a timing chart for explaining the operation of the data transfer apparatus in FIG. 5;
FIG. 7 is a circuit diagram of a data transfer apparatus according to a third embodiment.
FIG. 8 is a circuit diagram of a transfer amount adjustment circuit.
FIG. 9 is a graph of the difference value of the empty size stored in the storage device.
FIG. 10 is a circuit diagram of a data transfer apparatus according to a fourth embodiment.
FIG. 11 is a circuit diagram of a conventional data transfer device.
12 is a timing chart for explaining the operation of the data transfer apparatus of FIG.
[Explanation of symbols]
1, 21, 31, 43, 51 Storage device
2,22,32,52 Transfer arbitration circuit
3a, 3b, 23a, 23b, 33a, 33b, 53a, 53b buffer
4a, 4b, 24aa, 24ba threshold register
5, 25, 34a, 34b, 54a, 54b Transfer amount adjustment circuit
6a, 6b, 26a, 26b, 35a, 35b, 45, 56a, 56b Control circuit
7a, 7b, 27a, 27b, 36a, 36b, 57a, 57b Resources
24ab, 24bb transfer UP mask register
24ac, 24bc Transfer DN request register
41 Latch circuit
42 Difference circuit
44 Inclination prediction circuit
55 arbitration circuit between channels

Claims (3)

データ転送を調停するデータ転送装置において、
複数のリソースが共有するデータが記憶される記憶装置と、
前記データを転送優先度の高い前記リソースに指示される転送量に従って転送する転送調停回路と、
前記リソース毎に設けられ、前記転送調停回路から転送される前記データを一時格納して出力するバッファと、
前記バッファ毎の領域に関する閾値が設定される閾値レジスタと、
転送量増加禁止閾値が設定される増加禁止レジスタと、
転送量低減要求閾値が設定される低減要求レジスタと、
前記バッファ毎の空き領域が前記閾値に達したか否かによって、前記転送量を増減し、前記バッファ毎の空き領域が前記転送量増加禁止閾値に達した場合には、他の転送優先度の低い前記リソースにおける前記転送量の増加を禁止し、前記転送量低減要求閾値に達した場合には、他の転送優先度の低い前記リソースにおける前記転送量を低減する転送量調整回路と、
を有することを特徴とするデータ転送装置。
In a data transfer device that arbitrates data transfer,
A storage device for storing data shared by a plurality of resources;
A transfer arbitration circuit that transfers the data according to a transfer amount indicated by the resource having a high transfer priority;
A buffer provided for each resource and temporarily storing and outputting the data transferred from the transfer arbitration circuit;
A threshold value register in which a threshold value related to the area for each buffer is set;
An increase prohibition register in which a transfer amount increase prohibition threshold is set,
A reduction request register in which a transfer amount reduction request threshold is set;
The transfer amount is increased or decreased depending on whether or not the free area for each buffer has reached the threshold value. A transfer amount adjustment circuit for prohibiting an increase in the transfer amount in the low resource and reducing the transfer amount in the resource having a low transfer priority when the transfer amount reduction request threshold is reached;
A data transfer device comprising:
前記転送量調整回路は、前記バッファ毎に一時格納された前記データが前記閾値に達したか否かによって、前記転送量を増減することを特徴とする請求項1記載のデータ転送装置。  2. The data transfer apparatus according to claim 1, wherein the transfer amount adjustment circuit increases or decreases the transfer amount depending on whether or not the data temporarily stored for each buffer reaches the threshold value. 前記閾値は、前記閾値レジスタに複数設定され、
前記転送量調整回路は、前記空き領域が前記複数の閾値に達する毎に、段階的に前記転送量を増減することを特徴とする請求項1記載のデータ転送装置。
A plurality of the thresholds are set in the threshold register,
2. The data transfer apparatus according to claim 1, wherein the transfer amount adjustment circuit increases or decreases the transfer amount step by step each time the free area reaches the plurality of threshold values.
JP2003039143A 2003-02-18 2003-02-18 Data transfer device Expired - Fee Related JP4067422B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003039143A JP4067422B2 (en) 2003-02-18 2003-02-18 Data transfer device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003039143A JP4067422B2 (en) 2003-02-18 2003-02-18 Data transfer device

Publications (2)

Publication Number Publication Date
JP2004252523A JP2004252523A (en) 2004-09-09
JP4067422B2 true JP4067422B2 (en) 2008-03-26

Family

ID=33023397

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003039143A Expired - Fee Related JP4067422B2 (en) 2003-02-18 2003-02-18 Data transfer device

Country Status (1)

Country Link
JP (1) JP4067422B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12399647B2 (en) 2022-01-07 2025-08-26 Samsung Electronics Co., Ltd. Storage system and computing system including the same

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114503089B (en) * 2019-12-05 2024-05-14 奥林巴斯株式会社 Data transmission device and data transmission method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12399647B2 (en) 2022-01-07 2025-08-26 Samsung Electronics Co., Ltd. Storage system and computing system including the same

Also Published As

Publication number Publication date
JP2004252523A (en) 2004-09-09

Similar Documents

Publication Publication Date Title
JP4480427B2 (en) Resource management device
JP4457168B2 (en) Resource request arbitration device, resource request arbitration method, and computer program
US6519666B1 (en) Arbitration scheme for optimal performance
KR100784385B1 (en) System and method for arbitrating requests for access to shared resources
US6754786B2 (en) Memory control circuit and method for arbitrating memory bus
JP5707911B2 (en) Data transfer control device
US20050080967A1 (en) Method for arbitrating access to a shared resource
JP2002073527A (en) Dma controller
US8650347B2 (en) Arbitration device, arbitration method, and electronic apparatus
JP4067422B2 (en) Data transfer device
US7533201B2 (en) Queue management mechanism in network processor wherein packets stored at memory device corresponds to addresses stored in plurity of queues within queue management
JP4625549B2 (en) Arbitration system and method of arbitrating access
JP4344163B2 (en) Resource request arbitration device, resource request arbitration method, and computer program
JP4335327B2 (en) Arbitration apparatus and method
JP3987750B2 (en) Memory control device and LSI
JPH10320349A (en) Processor and data transfer system using the processor
US7747806B2 (en) Resource use management device, resource use management system, and control method for a resource use management device
JP5623150B2 (en) Electronic device and control method thereof
JP4898527B2 (en) RESOURCE USE MANAGEMENT DEVICE, RESOURCE USE MANAGEMENT SYSTEM, AND RESOURCE USE MANAGEMENT DEVICE CONTROL METHOD
JPH11175464A5 (en)
JP2004220309A (en) Multiprocessor system
JP5494925B2 (en) Semiconductor integrated circuit, information processing apparatus, and processor performance guarantee method
JP2004062333A (en) Image processing device
CN116303158A (en) Bus arbitration method, electronic device and graphic processor
JP2000207355A (en) Data transfer control device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040625

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070123

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070322

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070417

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070618

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20070621

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080108

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080108

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110118

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110118

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110118

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120118

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120118

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130118

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140118

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees