JP2005242718A - データ転送装置、および転送制御プログラム - Google Patents

データ転送装置、および転送制御プログラム Download PDF

Info

Publication number
JP2005242718A
JP2005242718A JP2004052388A JP2004052388A JP2005242718A JP 2005242718 A JP2005242718 A JP 2005242718A JP 2004052388 A JP2004052388 A JP 2004052388A JP 2004052388 A JP2004052388 A JP 2004052388A JP 2005242718 A JP2005242718 A JP 2005242718A
Authority
JP
Japan
Prior art keywords
transfer
data
data transfer
request
transfer request
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.)
Granted
Application number
JP2004052388A
Other languages
English (en)
Other versions
JP4778199B2 (ja
Inventor
Koji Fujita
浩二 藤田
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 JP2004052388A priority Critical patent/JP4778199B2/ja
Priority to US10/928,129 priority patent/US20050193155A1/en
Publication of JP2005242718A publication Critical patent/JP2005242718A/ja
Application granted granted Critical
Publication of JP4778199B2 publication Critical patent/JP4778199B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Communication Control (AREA)

Abstract

【課題】 大量のデータ転送を行うリクエスタと、比較的少量のデータ転送を行うリクエスタが存在するシステム全体のデータ転送効率を向上させる。
【解決手段】 複数のデータ転送要求の調停結果に対応して1本のデータ転送路を用いた転送を行わせる転送装置1が、データの転送を要求する手段2と、手段2の転送要求データの転送時間より転送時間の短いデータの転送を要求する手段3と、手段3からの要求を検出したとき、手段3に対して優先的に1本のデータ転送路を用いた転送を行わせる手段4とを備える。
【選択図】図1

Description

本発明は、データの転送方式に係り、さらに詳しくは1本のデータ転送路、例えば共通バスに対する複数のデータ転送要求を処理するデータ転送装置、およびデータ転送制御プログラムに関する。
1本のデータ転送路、例えば共通バスに対して複数のデータ転送要求元、すなわちリクエスタからのデータ転送リクエストが同時に発生した場合には、いわゆるバスアービトレーションによって複数の転送要求に対して調停を行う必要がある。
一般的なバスのプロトコルにおいては、転送バースト長、例えば調停後の実際のバス専用時間において転送できるデータの長さを長くすることによって、バスアービトレーションサイクルや、実際のデータの転送には使われないアドレスサイクルなどの待ち時間の影響を少なくすることが可能となり、バスの使用効率が向上する。
しかしながらバースト転送の完了まで他のリクエスタからのデータ転送要求を受付けることができなくなり、他のリクエスタの待ち時間が増加することになる。その待ち時間によってシステムの性能が大きく左右されるような場合には、システム全体の性能が低下してしまうという問題点がある。
逆に最大転送バースト長を抑えることによって、リクエスタの待ち時間をある一定時間内に抑えることが可能となる。その場合にはデータ転送のスループットが低下するという問題点がある。
このようなデータ転送のアービトレーションについて次のような文献がある。
特開平1−206446号公報 「共通バス制御方式」 特開平5−134980号公報 「バスシステム」 特開平8−185371号公報 「バス調停装置」 特開平9−259071号公報 「通信制御装置」 特開平11−143812号公報 「DMA回路」 特開2001−75917号公報 「DMA転送装置および画像復号装置」 特開2003−256359号公報 「データ転送制御装置及び方法」
特許文献1から特許文献3は、バスにおけるデータ転送のアービトレーションに関し、いずれも優先順位をつけてバスを用いたデータ転送を行わせる技術が開示されている。例えば、特許文献3には外部装置相互間でのデータ転送と、CPUと外部装置との間のデータ転送が衝突した場合には、CPUと外部装置との間のデータ転送を優先処理する技術が開示されている。
特許文献4には、送信器、受信器、メモリ装置及び送信/受信器とメモリ装置間でのデータバスを介するDMAデータ転送において、第1のDMAコントローラチャネルよりも優先順位の高い第2のDMAコントローラチャネルのバス権要求を優先して処理する技術が開示されている。
特許文献5には、複数のチャネルを用いたデータ転送において、許可回路が任意のDMAコントローラに対して転送実行中にすでに与えてある許可を強制的に中断する転送中断技術が開示されている。
特許文献6、および特許文献7には、優先順位に基づいてデータ転送の競合の調停を行う技術が開示されており、例えば特許文献6では時間制約の厳しいデータ転送には高い優先順位のチャンネルを割り当てることによって、データ転送のリアルタイム性を容易に向上させる転送装置が開示されている。
しかしながら以上のような文献の技術によっても、大量のデータ転送を行うために長いデータ転送時間を必要とするリクエスタと、比較的少量のデータ転送を行い、データの転送時間が短いリクエスタからのデータ転送要求が衝突した場合に、それらの要求を調停し、システム全体としてのデータ転送効率を向上させることができないという問題点があった。
本発明の課題は、上述の問題点に鑑み、大量のデータ転送を行うリクエスタからの転送要求と、比較的転送時間の短いデータ転送を要求するリクエスタからの要求とが衝突した場合、転送時間の短いデータの転送要求に対して優先的にデータ転送路を使用させるとともに、そのデータ転送の終了後に大量データ転送を行うリクエスタの要求を認めることによって、システム全体のデータ転送効率を向上させることである。
図1は、本発明のデータ転送装置の原理構成ブロック図である。同図は、複数のデータ転送要求を調停して、その調停結果に対応して1本のデータ転送路、例えば共通バスを用いたデータ転送を行わせるデータ転送装置の原理構成ブロック図であり、データ転送装置1は、第1の転送要求手段2、第2の転送要求手段3、および転送調停手段4を少なくとも備える。
第1の転送要求手段2は、データの転送を要求するものであり、第2の転送要求手段3は、第1の転送要求手段2が要求するデータの転送時間よりも転送時間の短いデータの転送を要求するものである。転送調停手段4は、第2の転送要求手段3からのデータ転送要求を検出したとき、第2の転送要求手段、すなわち転送時間の短いデータの転送を要求する手段3からの要求に対して、優先的に1本のデータ転送路を用いた転送を行わせるものである。
発明の実施の形態においては、第1の転送要求手段2が転送要求が緊急のものであることを示す緊急信号を出力したときには、転送調停手段4がその緊急信号の出力期間中は、第1の転送要求手段2からのデータ転送要求に対して優先的に1本のデータ転送路を用いた転送を行わせることもでき、あるいは転送調停手段4が第1の転送要求手段2からの転送要求と、第2の転送要求手段3からの転送要求に対して公平に、例えばラウンドロビン方式を用いて、1本のデータ転送路を用いた転送を行わせることもできる。
また実施の形態においては、データ転送装置1が第1の転送要求手段2が転送を要求するデータの転送時間よりも転送時間の短いデータの転送を要求する第3の転送要求手段をさらに備え、第1、第2、および第3の転送要求手段からのデータ転送要求が衝突したとき、転送調停手段4が第2の転送要求手段、および第3の転送要求手段からの転送要求に対して公平に、例えばラウンドロビン方式によって1本のデータ転送路を用いた転送を行わせ、その第2、第3の転送要求手段によるデータ転送が終了した後に、第1の転送要求手段に対して1本のデータ転送路を用いた転送を行わせることもできる。
次に本発明のデータ転送制御プログラムは、1本のデータ転送路を用いた第1の転送要求と、該第1の転送要求に対応するデータの転送時間よりも転送時間の短いデータの第2の転送要求との衝突を調停するための計算機によって用いられるプログラムであって、第2のデータ転送要求を検出するステップと、該第2の転送要求が検出された時、第2の転送要求を第1の転送要求よりも優先させてデータ転送を行わせるステップとを計算機に実行させるものであり、実施の形態においては、このプログラムと同様のデータ転送制御方法を用いることもできる。
以上のように本発明によれば、少量のデータ転送しか行わないリクエスタからのデータ転送要求が検出されたときには、大量データ転送を行うリクエスタからのデータ転送要求に優先させて、その要求に対してバスの使用が許可されることになる。
本発明によれば、少量のデータ転送は、大量のデータ転送に比較して優先的に処理され、少量のデータ転送が行われていない期間において大量のデータ転送が行われることによって、装置全体としてのデータ転送性能が向上する。
図2は、本実施形態におけるデータ転送装置の基本的な構成ブロック図である。データ転送装置10は、バス11を介してバッファ15へのデータ転送を行うものである。データ転送を要求するリクエスタとしては、A12、B13、およびC14がある。これらの3つのリクエスタの間でのバス11の使用については、バスアービタ16によって調停が行われる。
図2においてリクエスタA、Bは、比較的少量のデータをバッファ15に転送するものであり、転送までの待ち時間が短いことを要求するリクエスタである。これに対してリクエスタCは、大量のデータをバッファ15に書き込むものであり、高いスループットを要求するものであるとする。リクエスタA、Bは、バス11の獲得を行いたいタイミングでREQ(リクエスト)信号をアサートし、バスアービタ16からのGNT(グラント)信号がアサートされるまでREQ信号をアサートしつづけ、GNT信号がアサートされたサイクルでREQ信号をディアサートし、GNT信号がアサートされている期間においてデータ転送を行うものとする。
バスアービタ16は、リクエスタA、BからのREQ信号を基にして、例えばラウンドロビン方式でアービトレーションを行う。その結果、GNT_A、またはGNT_Bのいずれかをアサートする。バスアービタ16は、リクエスタA、BへのGNT信号がともにアサートされていないサイクルにおいて常にGNT_Cをアサートする。
リクエスタCは、GNT_Cがアサートされている期間、バス11の使用が可能であると判断し、転送データが存在する場合には、データ転送を行う。データ転送の途中でGNT_Cがバスアービタ16によってディアサートされた場合は、そのサイクルでデータ転送を中断し、GNT_Cが再びアサートされた時点で、データ転送を再開するものとする。
図3は、バスアービトレーションの具体例のタイムチャートである。同図においては次のように処理が行われる。なおこの図3と次の図4では、バスアービタ側がGNT信号のアサート期間、すなわち転送バースト長を制御するものとしてタイムチャートを説明する。
(1) リクエスタAとリクエスタB間での調停が行われ、リクエスタAがバスを獲得し、データ転送を行う。
(2) リクエスタAとリクエスタB間での調停が行われ、リクエスタBがバスを獲得し、データ転送を行う。
(3) リクエスタAのみがREQ信号をアサートしているので、無条件でリクエスタAがバスを獲得し、データ転送を行う。
(4) リクエスタAもリクエスタBもバスを使用していない、すなわちGNT_AもGNT_Bもアサートされていないため、GNT_Cがアサートされる。
(5) リクエスタCがデータ転送を行いたいタイミングでGNT_Cがアサートされているためデータ転送を行う。
リクエスタAからのリクエストのためGNT_Aがアサートされ、GNT_Cはディアサートされる。リクエスタCはデータ転送を途中で打ち切る。
(6) リクエスタAのみがREQ信号をアサートしているので、無条件でリクエスタAがバスを獲得し、データ転送を行う。この場合、リクエスタAのデータ転送に対するGNT信号のアサート期間は、リクエスタBもバスを要求していた(1)よりも長くなっている。
(7) リクエスタAもリクエスタBもバスを使用していない、すなわちGNT_AもGNT_Bもアサートされていないため、GNT_Cがアサートされる。
リクエスタCは(5)で中断されたデータ転送を再開し、データ転送を完了する。
図2においてリクエスタCは、例えば緊急に転送すべきデータがある場合には、EMRG_C信号をアサートする。バスアービタ16は次の調停タイミング、例えば次のサイクルにおいてGNT_Cをアサートし、EMRG_Cがディアサートされるまでバス11の使用をリクエスタCに許可し、EMRG_Cがディアサートされると通常のアービトレーションに戻るものとする。
図4は、このEMRG信号アサート時のバスアービトレーションの具体例のタイムチャートである。同図において以下のように処理が行われる。
(1) リクエスタAとリクエスタB間での調停が行われ、リクエスタAがバスを獲得し、データ転送を行う。
(2)、(3) バス調停タイミングでEMRG_Cがアサートされているため、GNT_Cをアサートする。GNT_Cがアサートされているため、リクエスタCがデータ転送を行う。
(4) リクエスタCがEMRG_Cをディアサートしたため、通常のアービトレーションに戻り、リクエスタBがバスを獲得し、データ転送を行う。(5)、(6)については省略する。
図5は、図2におけるバスアービタの構成例である。同図は図3のタイムチャートに相当するアービトレーションを行うものである。アービタ17は入力されるREQ_A、またはREQ_Bの信号によって、例えばラウンドロビン方式によってアービトレーションを行い、GNT_A、またはGNT_B信号をアサートする。またこれらの信号をNORゲート18に入力させることによって、2つのGNT信号がいずれも出力されていないときには、GNT_C信号がアサートされる。すなわち、大量データ転送を行うリクエスタCはアービトレーションから除外され、リクエスタA、またはBがバスを使用していない時点でのみリクエスタCのデータ転送が許可されることになる。
図6は、図5のアービタ17によって行われるアービトレーション処理のフローチャートである。同図においてまずステップS1で、2つのREQ信号のいずれかがアサートされているかが判定され、アサートされていない場合にはその監視が続けられる。アサートされている場合には、ステップS2でリクエスタAとBとのデータ転送要求に対するアービトレーションが行われ、ステップS3でその結果に基づいてリクエスタA、またはリクエスタBへのGNT信号がアサートされ、ステップS4でGNT信号がアサートされたリクエスタによるデータ転送が完了したか否かが判定され、完了していない場合には転送完了の監視が続けられる。完了した場合には、再びステップS1以降の処理が続けられる。すなわち、図3、図4と異なり、GNT信号がアサートされたリクエスタによって、データ転送の最大バーストサイズによって規定されるデータ量以下のデータの転送が行われた後に、再びバスアービトレーションが行われる。
ステップS4におけるデータ転送完了の判断については、バスプロトコルなどに応じて様々な方法が考えられる。その方法としては、第1にアービタにデータ転送のバーストサイズを伝えておき、バーストサイクルをアービタがカウントして、バーストサイズまで転送が完了したらデータ転送完了と判断する方法、第2に専用のデータ転送完了信号をリクエスタがアサートし、それをアービタに伝えることでデータ転送完了と判断する方法などがある。
次に図4で説明したようにアービタに対してEMRG_C信号が入力可能とされている場合には、EMRG信号がアサートされている期間中は、REQ_A、またはREQ_B信号がアサートされてもGNT_A、およびGNT_B信号がアサートされることは無く、GNT_C信号がアサートされつづけるものとする。
図7は、この場合のアービトレーション処理のフローチャートである。同図は図6の処理のフローチャートと類似しているが、ステップS1で2つのREQ信号のいずれかがアサートされている場合に、ステップS2の処理に移行する前にステップS5でEMRG_C信号がアサートされているかが判定され、アサートされていない場合には図6と同様にステップS2以降の処理が行われるが、アサートされている場合には、何らの処理を行うことなく再びステップS1以降の処理が続けられる。すなわち、EMRG_C信号がアサートされている場合には、リクエスタAとリクエスタBに対するアービトレーションを行うことなく、GNT_A信号とGNT_B信号とはいずれもアサートされず、その結果GNT_C信号がアサートされて、リクエスタCのデータ転送が許可される。
図8はリクエスタCがEMRG_C信号をアサートした場合において、3つのリクエスタA、B、およびCからのデータ転送要求を公平にアービトレーションするアービトレーション処理のフローチャートである。同図においてステップS1、S5、S2からS4の処理は図7におけると同様であるが、ステップS5でEMRG_C信号がアサートされている場合には、ステップS7で3つのリクエスタA、B、Cからのデータ転送要求を公平にアービトレーションする処理が行われる。このアービトレーションでは、前述と同様に、例えばラウンドロビン方式が用いられる。なおここでのアービトレーションは、例えばリクエスタAとリクエスタCとの間、あるいはリクエスタBとリクエスタCとの間で行ってもよいことは当然である。
続いてステップS8で、アービトレーションの結果がリクエスタA、またはリクエスタBからの要求を認めるものである場合には、GNT_A、またはGNT_B信号がアサートされる。リクエスタCからの要求を認める場合には何らの処理も行われず、ステップS9でGNT信号がアサートされたリクエスタのデータ転送が完了したか否かが判定され、完了していない場合にはその監視が続けられ、完了した場合には再びステップS1以降の処理が繰り返される。
続いてネットワークでの送信パケットの生成回路を具体例として、本発明の実施の形態についてさらに説明する。図9はそのようなネットワークへの送信パケット生成・送出回路の構成例である。同図においてバス20、バスアービタ21、CPU22、DMAコントローラ23、およびセンドコマンドコントローラ24(send cmd cnt1)が図2のデータ転送装置10に相当する。
DMAコントローラ23は図示しないホストメモリから転送されるパケット(ペイロード)データを、バス20を介してパケットストアー(Packet Store)RAM28に転送するものであり、図2におけるリクエスタCに相当する。すなわちホストメモリ上のデータ(Host DMA Read Data)は、計算機内部の高速なデータ伝送路としてのPCI−Xバス27を介して、PCI−Xコントローラ26によってFIFO25に格納される。DMAコントローラ23は、そのパケットデータを受け取り、パケットストアーRAM28に転送する動作を行う。
CPU22とセンドコマンドコントローラ24が図2におけるリクエスタA、Bに相当する。CPU22はパケットヘッダを生成して、そのパケットヘッダをバス20を介してパケットストアーRAM28に転送する。またセンドコマンドコントローラ24は、ネットワークへのパケット送信指示をバス20を介してパケットセンドコントローラ29に転送するものである。
1つのパケットの生成、送出の流れは以下のようになる。
(1) CPU22が、送信先アドレス情報などのネットワーク制御情報を含むパケットヘッダの生成処理を行い、生成したパケットヘッダをBUS20からPacket Store RAM28に転送する。
(2) CPU22はホストメモリ上のパケットペイロードデータをPacket Store RAM28に格納するためDMAC23にDMA指示を出す。
(3) DMAC23がPCI_X Cntl26にHost DMA Memory Readリクエストを出す。
(4) PCI_X Cntl26がPCI_X Bus27からHost Memory Dataをリードし、FIFO25に書き込む。
(5) DMAC23がFIFO25からデータを読み込み、BUS20を通じてPacket Store RAM28にパケットペイロードデータを転送する。
(6) DMAC23がパケット送信指示をsend cmd cntl24に出す。
(7) send cmd cntl24がBUS20を通じてパケット送信指示をpacket send cntl29に出す。
(8) packet send cntl29がネットークにパケットを送出する。
CPU22は、(1)、(2)の処理が完了した時点で、(3)から(8)の処理中にも次のパケットのための(1)、(2)の処理を行うことが可能である。DMAC23はCPU22からのDMA指示を複数受けることが可能で、(3)の処理が完了した時点で、(5)、(6)の完了を待たずに次のパケットのための(3)の処理を行うことが可能である。
PCI_X プロトコルではスプリットトランザクションが可能で、PCI_X Cntl26はメモリリードリクエストデータの受信完了を待たずに次のリクエストをPCI_X Bus27に出すことが可能である。
図9において、バス20はアドレスとデータが分かれたバスであり、アドレスは毎サイクル指定されるものとする。またGNT信号がアサートされるのは、例えば図3ではREQ信号がアサートされたサイクルで行われるものとしたが、ここではREQ信号のアサートから1サイクル後とする。このREQ信号とGNT信号のアサートの間の関係は本実施形態では本質的なものではない。
またDMAC23以外のリクエスタは、REQ信号をアサートしてからデータの転送完了までREQ信号をアサートしつづけるものとし、DMAC23によるデータの転送最大バースト長は規定しないものとし、その他のリクエスタに対するバースト長制限についても任意とする。DMAC23からのパケットストアーRAM28へのデータの書込みと、センドコマンドコントローラ24からのパケットセンドコントローラ29へのコマンド送信はバス20のアドレスによって区別されるものとする。
図10は、CPU22からのリクエストに対応して、DMAC23からのデータ転送が中断される具体例のタイムチャートである。同図においてDMAC23がアドレスA_PxにパケットペイロードデータD_Pxを転送している途中で、CPU22がパケットヘッダD_HxをアドレスA_Hxに転送し、このヘッダの転送の完了後に再びDMAC23がパケットペイロードデータの転送を行うタイムチャートが示されている。
図11は2つのパケットの生成と送出の処理が時間的にオーバラップしながら行われるタイムチャートの具体例である。同図においてヘッダH1とペイロードデータP1とから構成されるパケットと、ヘッダH2とペイロードデータP2とから構成されるパケットの生成処理がオーバラップしながら行われる。
すなわちDMAC23がバス20を介してペイロードデータP1の転送を行っている途中で、CPU22によるヘッダ生成処理が完了し、そのヘッダH2の転送が可能となる。本実施形態においては、この時点でDMAC23がバス20を手放し、ヘッダH2の転送が行われる。ヘッダH2の生成処理完了後、その転送までの応答時間が短くなることにより、ペイロードデータP2をホスト側に要求するDMAリクエストを出すタイミングを早めることができ、結果的にペイロードデータP1とP2とのデータ転送を継ぎ目無く実行することが可能となる。
またDMAC23はペイロードデータP2をパケットストアーRAM28に転送している途中でバス20を手放し、センドコマンドコントローラ24がパケットの送信指示をパケットセンドコントローラ29に発行する。これによってパケットストアーRAM28にパケットヘッダとペイロードデータとが格納され、パケット送信が可能となった時点から、実際のパケット送信指示までの応答時間が短くなり、ネットワークに対するパケット送出を早めることができる。DMAC23は他のリクエスタ、すなわちCPU22とセンドコマンドコントローラ24がバス20を使用していないときには、バスを占有することが可能となり、高いスループットを実現することができる。
前述のようにDMAC23は、バスアービタ21からのGNT信号がアサートされたタイミングでデータ転送を開始し、その信号がディアサートされた時点でデータ転送を中断するものであるが、その動作について図12のアドレス判定器を含むパケット生成・送出回路、および図13の処理フローチャートを用いて説明する。
図9においてバス20に対してリクエスタは、バスアービタ21からのGNT信号がアサートされている時、アドレスをアドレスバスに、またデータをデータバスに出力し、同時にそのアドレス、およびデータが有効であることを示すバスバリッド信号をアサートするものとする。データを受信するRAM28とパケットセンドコントローラ29については、アドレスバスからの信号によって、例えばRAM28のアドレスが指定され、パケットデータはそのアドレスに書き込まれる。データバスはRAM28とパケットセンドコントローラ29に直接接続される。アドレス判定器30はバスバリッド信号がアサートされており、かつアドレスがRAMのアドレス範囲内であれば、RAMに対するライトイネーブル信号ram−we信号をアサートする。またアドレス判定器30は、バスバリッド信号がアサートされており、かつアドレスがパケットセンドコントローラ29宛てのアドレスであれば、コマンドが有効(ライトネーブル)であることを示すcmd−we信号をアサートする。
図13はDMAC23による処理のフローチャートである。まずステップS11でDMA指示、すなわちCPU22からの指示があるか否かが判定され、ない場合にはその指示を待つ処理が続行される。指示がある場合には、ソースアドレス、すなわちホストメモリアドレス、ディスティネーションアドレス、すなわちパケットストアーRAM28のアドレス、および転送データサイズが同時にDMAC23に伝えられており、この指示に対応してDAMC23はステップS12で図示しないディスティネーションアドレスカウンタの値を指示されたディスティネーションアドレスの値に初期化する。
その後DMAC23はソースアドレスに対応してホストメモリからのデータリードを指示し、そのデータはFIFO25に格納される。FIFO25のエントリのうちでデータが格納されているエントリの数はfifo_entry信号によってDMAC23に伝えられ、DMAC23はFIFO25から1つのエントリのデータを取り出す毎にfifo_read_done信号をアサートする。
図13のステップS13でfifo_entry信号の値が1以上であり、かつGNT信号がアサートされているか否かが判定され、この条件が満足されていない場合には、その判定が繰り返され、満足されている場合には、ステップS14でFIFO25から読み出したデータをデータバス、ディスティネーションアドレスカウンタの値をアドレスバスに出力とするとともにバスバリッド信号をアサートする。これによってホスト側から送られたパケットペイロードデータは、RAM28に転送される。
ステップS15で転送データが残っているか否かが判定され、残っていない場合にはステップS11以降の処理が繰り返され、残っている場合にはステップS16でディスティネーションアドレスカウンタの値がインクリメントされた後にステップS13以降の処理が繰り返される。このようにデータの転送が完了するまで、バスサイクル毎にステップS13でGNT信号のアサートの確認を行うことによって、データ転送の中断/再開が実現され、DMAC23はどのようなタイミングでもバスを手放すことが可能となり、さらに中断されたデータ転送を再開することができる。
次にDMAC23によるEMRG信号のアサートについてさらに説明する。図9においてPCI−Xコントローラ26は、FIFO25にすでにデータが格納されているエントリの数を考慮することなく、FIFO25にデータを書き込むものとし、またDMAC23は、FIFO25のエントリの個数以上のデータに対するホストメモリリードリクエストをPCI−Xコントローラ26に出すことができるものとする。そこでFIFO25の中でデータが格納されているエントリの数が一定値以上となった時にDMAC23はEMRG信号をアサートし、またデータの格納されているエントリの数が一定値以下になった時にEMRG信号をディアサートすることによって、FIFO25のオーバフローを防止するものとする。FIFO25の最大書込み速度、最大読出し速度の変更にも対応可能なように、EMRG信号のアサートに対するエントリ数の閾値、およびディアサートに対する閾値を外部から設定可能とすることにする。
図14はパケット生成・送出回路におけるFIFOのオーバフロー防止方式の説明図である。同図においてFIFO25は、8バイト幅の128個のエントリを備えるものとし、合計で1024バイトのデータを保持することが可能であるものとする。DMAC23が2048バイトのホストメモリリードリクエストをPCI−Xコントローラ26に出し、PCI−Xコントローラ26がFIFO25の空きエントリ数を考慮することなく、2048バイトのホストメモリリードデータを途切れなくFIFO25に書き込む場合を考える。ここでFIFO25へのデータの書込みと読出しは、同一クロックで行われるものとする。
DMAC23は、GNT信号がアサートされるとFIFO25からデータを読み込み、バス20にそのデータを出力する。DMAC23以外のリクエスタがバス20を使用している場合には、DMAC23に対するGNT信号はアサートされず、その間DMAC23はFIFO25内のデータの読み込みを行わない。DMAC23に対するGNT信号がアサートされない期間が128サイクル以上続くとFIFO25がオーバフローする可能性がある。
ここでDMAC23の内部には比較器33が備えられ、比較器33はFIFO25から与えられるfifo−entryの値がアッパーリミット34以上となった時にEMRG信号をアサートし、その後、ロワーリミット35以下になった時点でEMRG信号をディアサートする動作を実行する。DMAC23以外のリクエスタ、すなわちCPU22とセンドコマンドコントローラ24によるデータの転送可能最大バースト長は32サイクル分であるとする。アッパーリミット34の値を例えば96、ロワーリミット35の値を64とすると、fifo−entryの値が96となった時点でEMRG信号がアサートされ、64となった時点でディアサートされる。
DMAC23以外のリクエスタのデータ転送最大バースト長が32サイクル分であるため、EMRG信号がアサートされてから次のアービトレーションの時点まで最大32サイクルかかることになる。すなわちEMRG信号がアサートされてから32サイクル以内にDMAC23へのGNT信号がアサートされ、fifo−entryの値が48になるまでDMAC23はFIFO25からのデータの読出しを続けるため、FIFO25に対するデータの書込みクロックと読出しクロックが同一である場合には、FIFO25内のデータのオーバフローは防止される。
(付記1) 複数のデータ転送要求を調停し、該調停結果に対応して1本のデータ転送路によるデータ転送を行うデータ転送装置であって、
データの転送を要求する第1の転送要求手段と、
該第1の転送要求に対応するデータの転送時間よりも転送時間の短いデータの転送を要求する第2の転送要求手段と、
該第2の転送要求手段からのデータ転送要求が検出された時、該第2の転送要求手段からの転送要求を該第1の転送要求よりも優先させて、該第2の転送要求手段に前記1本のデータ転送路によるデータ転送を行わせる転送調停手段とを備えることを特徴とするデータ転送装置。
(付記2) 前記第1の転送要求手段が、データ転送要求が緊急のものであることを示す緊急信号を出力したとき、
前記転送調停手段が、該緊急信号の出力期間中は、該第1の転送要求に対して優先的に前記1本のデータ転送路によるデータ転送を行わせることを特徴とする付記1記載のデータ転送装置。
(付記3) 前記データ転送装置が、前記第1の転送要求手段が転送すべきデータを複数個格納するデータ格納手段をさらに備え、
該第1の転送要求手段が、該データ格納手段に格納されているデータの個数があらかじめ定められた範囲内にあるとき、前記緊急信号を出力することを特徴とする付記2記載のデータ転送装置。
(付記4) 前記第1の転送要求手段が、データ転送要求が緊急のものであることを示す緊急信号を出力したとき、
前記転送調停手段が、該第1の転送要求と第2の転送要求に対して公平な調停を行い、該調停結果に対応して前記1本のデータ転送路によるデータ転送を行わせることを特徴とする付記1記載のデータ転送装置。
(付記5) 前記転送調停手段が、前記公平な調停において、ラウンドロビン方式を用いることを特徴とする付記4記載のデータ転送装置。
(付記6) 前記データ転送装置が、前記第1の転送要求手段が転送すべきデータを複数個格納するデータ格納手段をさらに備え、
該第1の転送要求手段が、該データ格納手段に格納されているデータの個数があらかじめ定められた範囲内にあるとき、前記緊急信号を出力することを特徴とする付記4記載のデータ転送装置。
(付記7) 前記データ転送装置において、前記第1の転送要求に対応するデータの転送時間よりも転送時間の短いデータの転送を要求する第3の転送要求手段をさらに備え、
前記転送調停手段が、該第2の転送要求と第3の転送要求に対して公平な調停を行い、該調停結果に対応して前記1本のデータ転送路によるデータ転送を行わせ、該第2の転送要求と第3の転送要求によるデータ転送が終了した後に、前記第1の転送要求手段に1本のデータ転送路によるデータ転送を行わせることを特徴とする付記1記載のデータ転送装置。
(付記8) 前記転送調停手段が、前記公平な調停において、ラウンドロビン方式を用いることを特徴とする付記7記載のデータ転送装置。
(付記9) 複数のデータ転送要求を調停し、該調停結果に対応して1本のデータ転送路によるデータ転送を行わせる計算機によって使用されるプログラムであって、
第1の転送要求に対応するデータの転送時間よりも短い転送時間のデータの転送を要求する第2のデータ転送要求を検出する手順と、
該第2のデータ転送要求が検出された時、該第2のデータ転送要求を第1のデータ転送要求よりも優先させて、該第2のデータ転送要求に対応して前記1本のデータ転送路を用いたデータ転送を行わせる手順を計算機に実行させるためのデータ転送制御プログラム。
(付記10) 計算機が複数のデータ転送要求を調停し、該調停結果に対応して1本のデータ転送路によるデータ転送を制御する方法であって、
第1の転送要求に対応するデータの転送時間よりも短い転送時間のデータの転送を要求する第2のデータ転送要求を検出し、
該第2のデータ転送要求が検出された時、該第2のデータ転送要求を第1のデータ転送要求よりも優先させて、該第2のデータ転送要求に対応して前記1本のデータ転送路を用いたデータ転送を行わせることを特徴とするデータ転送制御方法。
本発明は、複数のデータの転送要求のいずれかに1本のデータ転送路によるデータ転送を行わせるデータ転送方式を用いる装置や、そのようなシステムを利用する全ての産業において利用可能である。
本発明のデータ転送装置の原理構成ブロック図である。 本実施形態におけるデータ転送装置の基本構成を示すブロック図である。 図2におけるバスアービトレーションの具体例のタイムチャートである。 EMRG信号アサート時のバスアービトレーションの具体例のタイムチャートである。 バスアービタの構成例を示す図である。 バスアービトレーション処理(その1)のフローチャートである。 バスアービトレーション処理(その2)のフローチャートである。 バスアービトレーション処理(その3)のフローチャートである。 ネットワーク送信パケットの生成・送出回路の構成例を示す図である。 図9におけるデータ転送例(その1)のタイムチャートである。 図9におけるデータ転送例(その2)のタイムチャートである。 図9におけるアドレス判定による転送データの格納方法の説明図である。 DMAコントローラの処理フローチャートである。 DMAコントローラからのEMRG信号出力方式の説明図である。
符号の説明
1、10 データ転送装置
2 第1の転送要求手段
3 第2の転送要求手段
4 転送調停手段
11、20 バス
12、13、14 リクエスタ
15 バッファ
16、21 バスアービタ
17 アービタ
18 NORゲート
22 CPU
23 DMAコントローラ
24 センドコマンドコントローラ
25 FIFO
26 PCI−Xコントローラ
27 PCI−Xバス
28 パケットストアーRAM
29 パケットセンドコントローラ
30 アドレス判定器
33 比較器
34 アッパーリミット
35 ロワーリミット

Claims (5)

  1. 複数のデータ転送要求を調停し、該調停結果に対応して1本のデータ転送路によるデータ転送を行うデータ転送装置であって、
    データの転送を要求する第1の転送要求手段と、
    該第1の転送要求に対応するデータの転送時間よりも転送時間の短いデータの転送を要求する第2の転送要求手段と、
    該第2の転送要求手段からのデータ転送要求が検出された時、該第2の転送要求手段からの転送要求を該第1の転送要求よりも優先させて、該第2の転送要求手段に前記1本のデータ転送路によるデータ転送を行わせる転送調停手段とを備えることを特徴とするデータ転送装置。
  2. 前記第1の転送要求手段が、データ転送要求が緊急のものであることを示す緊急信号を出力したとき、
    前記転送調停手段が、該緊急信号の出力期間中は、該第1の転送要求に対して優先的に前記1本のデータ転送路によるデータ転送を行わせることを特徴とする請求項1記載のデータ転送装置。
  3. 前記第1の転送要求手段が、データ転送要求が緊急のものであることを示す緊急信号を出力したとき、
    前記転送調停手段が、該第1の転送要求と第2の転送要求に対して公平な調停を行い、該調停結果に対応して前記1本のデータ転送路によるデータ転送を行わせることを特徴とする請求項1記載のデータ転送装置。
  4. 前記データ転送装置において、前記第1の転送要求に対応するデータの転送時間よりも転送時間の短いデータの転送を要求する第3の転送要求手段をさらに備え、
    前記転送調停手段が、該第2の転送要求と第3の転送要求に対して公平な調停を行い、該調停結果に対応して前記1本のデータ転送路によるデータ転送を行わせ、該第2の転送要求と第3の転送要求によるデータ転送が終了した後に、前記第1の転送要求手段に1本のデータ転送路によるデータ転送を行わせることを特徴とする請求項1記載のデータ転送装置。
  5. 複数のデータ転送要求を調停し、該調停結果に対応して1本のデータ転送路によるデータ転送を行わせる計算機によって使用されるプログラムであって、
    第1の転送要求に対応するデータの転送時間よりも短い転送時間のデータの転送を要求する第2のデータ転送要求を検出する手順と
    該第2のデータ転送要求が検出された時、該第2のデータ転送要求を第1のデータ転送要求よりも優先させて、該第2のデータ転送要求に対応して前記1本のデータ転送路を用いたデータ転送を行わせる手順を計算機に実行させるためのデータ転送制御プログラム。
JP2004052388A 2004-02-26 2004-02-26 データ転送装置及びデータ転送方法 Expired - Fee Related JP4778199B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004052388A JP4778199B2 (ja) 2004-02-26 2004-02-26 データ転送装置及びデータ転送方法
US10/928,129 US20050193155A1 (en) 2004-02-26 2004-08-30 Data transfer apparatus and transfer control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004052388A JP4778199B2 (ja) 2004-02-26 2004-02-26 データ転送装置及びデータ転送方法

Publications (2)

Publication Number Publication Date
JP2005242718A true JP2005242718A (ja) 2005-09-08
JP4778199B2 JP4778199B2 (ja) 2011-09-21

Family

ID=34879662

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004052388A Expired - Fee Related JP4778199B2 (ja) 2004-02-26 2004-02-26 データ転送装置及びデータ転送方法

Country Status (2)

Country Link
US (1) US20050193155A1 (ja)
JP (1) JP4778199B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8838862B2 (en) 2010-08-23 2014-09-16 Ricoh Company, Limited Data transfer device, method of transferring data, and image forming apparatus

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4820566B2 (ja) * 2005-03-25 2011-11-24 パナソニック株式会社 メモリアクセス制御回路
US7802019B2 (en) * 2005-06-14 2010-09-21 Microsoft Corporation Hard disk drive condition reporting and error correction
ES2662493T3 (es) * 2007-11-02 2018-04-06 Qualcomm Incorporated Sistema configurable de gestión de arbitraje de eventos y recursos
US8433446B2 (en) 2008-10-27 2013-04-30 Lennox Industries, Inc. Alarm and diagnostics system and method for a distributed-architecture heating, ventilation and air conditioning network
US8352080B2 (en) 2008-10-27 2013-01-08 Lennox Industries Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8548630B2 (en) 2008-10-27 2013-10-01 Lennox Industries, Inc. Alarm and diagnostics system and method for a distributed-architecture heating, ventilation and air conditioning network
US8774210B2 (en) 2008-10-27 2014-07-08 Lennox Industries, Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8564400B2 (en) 2008-10-27 2013-10-22 Lennox Industries, Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8442693B2 (en) 2008-10-27 2013-05-14 Lennox Industries, Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US9268345B2 (en) 2008-10-27 2016-02-23 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8744629B2 (en) 2008-10-27 2014-06-03 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8694164B2 (en) 2008-10-27 2014-04-08 Lennox Industries, Inc. Interactive user guidance interface for a heating, ventilation and air conditioning system
US8452906B2 (en) 2008-10-27 2013-05-28 Lennox Industries, Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8788100B2 (en) 2008-10-27 2014-07-22 Lennox Industries Inc. System and method for zoning a distributed-architecture heating, ventilation and air conditioning network
US8463443B2 (en) 2008-10-27 2013-06-11 Lennox Industries, Inc. Memory recovery scheme and data structure in a heating, ventilation and air conditioning network
US8762666B2 (en) 2008-10-27 2014-06-24 Lennox Industries, Inc. Backup and restoration of operation control data in a heating, ventilation and air conditioning network
US8994539B2 (en) 2008-10-27 2015-03-31 Lennox Industries, Inc. Alarm and diagnostics system and method for a distributed-architecture heating, ventilation and air conditioning network
US9678486B2 (en) 2008-10-27 2017-06-13 Lennox Industries Inc. Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system
US8600559B2 (en) 2008-10-27 2013-12-03 Lennox Industries Inc. Method of controlling equipment in a heating, ventilation and air conditioning network
US9325517B2 (en) 2008-10-27 2016-04-26 Lennox Industries Inc. Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system
US8352081B2 (en) 2008-10-27 2013-01-08 Lennox Industries Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8600558B2 (en) 2008-10-27 2013-12-03 Lennox Industries Inc. System recovery in a heating, ventilation and air conditioning network
US8855825B2 (en) 2008-10-27 2014-10-07 Lennox Industries Inc. Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system
US8452456B2 (en) 2008-10-27 2013-05-28 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8661165B2 (en) 2008-10-27 2014-02-25 Lennox Industries, Inc. Device abstraction system and method for a distributed architecture heating, ventilation and air conditioning system
US8725298B2 (en) 2008-10-27 2014-05-13 Lennox Industries, Inc. Alarm and diagnostics system and method for a distributed architecture heating, ventilation and conditioning network
US8543243B2 (en) 2008-10-27 2013-09-24 Lennox Industries, Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8655490B2 (en) 2008-10-27 2014-02-18 Lennox Industries, Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8615326B2 (en) 2008-10-27 2013-12-24 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8463442B2 (en) 2008-10-27 2013-06-11 Lennox Industries, Inc. Alarm and diagnostics system and method for a distributed architecture heating, ventilation and air conditioning network
US8802981B2 (en) 2008-10-27 2014-08-12 Lennox Industries Inc. Flush wall mount thermostat and in-set mounting plate for a heating, ventilation and air conditioning system
US8255086B2 (en) 2008-10-27 2012-08-28 Lennox Industries Inc. System recovery in a heating, ventilation and air conditioning network
US8560125B2 (en) 2008-10-27 2013-10-15 Lennox Industries Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8655491B2 (en) 2008-10-27 2014-02-18 Lennox Industries Inc. Alarm and diagnostics system and method for a distributed architecture heating, ventilation and air conditioning network
US8874815B2 (en) 2008-10-27 2014-10-28 Lennox Industries, Inc. Communication protocol system and method for a distributed architecture heating, ventilation and air conditioning network
US9152155B2 (en) 2008-10-27 2015-10-06 Lennox Industries Inc. Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system
US8437878B2 (en) 2008-10-27 2013-05-07 Lennox Industries Inc. Alarm and diagnostics system and method for a distributed architecture heating, ventilation and air conditioning network
US8295981B2 (en) 2008-10-27 2012-10-23 Lennox Industries Inc. Device commissioning in a heating, ventilation and air conditioning network
US9261888B2 (en) 2008-10-27 2016-02-16 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8798796B2 (en) 2008-10-27 2014-08-05 Lennox Industries Inc. General control techniques in a heating, ventilation and air conditioning network
US9651925B2 (en) 2008-10-27 2017-05-16 Lennox Industries Inc. System and method for zoning a distributed-architecture heating, ventilation and air conditioning network
US8437877B2 (en) 2008-10-27 2013-05-07 Lennox Industries Inc. System recovery in a heating, ventilation and air conditioning network
US8239066B2 (en) 2008-10-27 2012-08-07 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8892797B2 (en) 2008-10-27 2014-11-18 Lennox Industries Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US9632490B2 (en) 2008-10-27 2017-04-25 Lennox Industries Inc. System and method for zoning a distributed architecture heating, ventilation and air conditioning network
US8977794B2 (en) 2008-10-27 2015-03-10 Lennox Industries, Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US9432208B2 (en) 2008-10-27 2016-08-30 Lennox Industries Inc. Device abstraction system and method for a distributed architecture heating, ventilation and air conditioning system
US9377768B2 (en) 2008-10-27 2016-06-28 Lennox Industries Inc. Memory recovery scheme and data structure in a heating, ventilation and air conditioning network
USD648642S1 (en) 2009-10-21 2011-11-15 Lennox Industries Inc. Thin cover plate for an electronic system controller
USD648641S1 (en) 2009-10-21 2011-11-15 Lennox Industries Inc. Thin cover plate for an electronic system controller
US8260444B2 (en) 2010-02-17 2012-09-04 Lennox Industries Inc. Auxiliary controller of a HVAC system
JP5423483B2 (ja) * 2010-03-04 2014-02-19 株式会社リコー データ転送制御装置
ITCO20110065A1 (it) * 2011-12-15 2013-06-16 Nuovo Pignone Spa Metodo per controllare una pluralita' di macchine, sistema di controllo e impianto
US11886365B2 (en) 2020-09-14 2024-01-30 Apple Inc. DMA control circuit with quality of service indications

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05151151A (ja) * 1991-11-28 1993-06-18 Shikoku Nippon Denki Software Kk バス変換装置
JPH0744489A (ja) * 1993-07-27 1995-02-14 Fujitsu Ltd データ転送方法
JPH10301895A (ja) * 1997-04-30 1998-11-13 Oki Electric Ind Co Ltd バス拡張装置
JP2001117860A (ja) * 1999-10-18 2001-04-27 Fujitsu Ltd メモリアクセス優先順位切替制御装置
JP2002117004A (ja) * 2000-10-06 2002-04-19 Matsushita Electric Ind Co Ltd データ転送要求調停回路
JP2002288115A (ja) * 2001-03-27 2002-10-04 Ricoh Co Ltd Usbコントローラ

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0594409A (ja) * 1991-10-02 1993-04-16 Nec Eng Ltd バス調停システム
US6178475B1 (en) * 1994-12-19 2001-01-23 Advanced Micro Devices Inc. Multimedia system employing timers to properly allocate bus access
US6052738A (en) * 1997-06-30 2000-04-18 Sun Microsystems, Inc. Method and apparatus in a packet routing switch for controlling access at different data rates to a shared memory
GB2329550A (en) * 1997-09-22 1999-03-24 Northern Telecom Ltd Transporting multi-protocol datagrams over an asynchronous virtual channel
US6092137A (en) * 1997-11-26 2000-07-18 Industrial Technology Research Institute Fair data bus arbitration system which assigns adjustable priority values to competing sources
US6363445B1 (en) * 1998-10-15 2002-03-26 Micron Technology, Inc. Method of bus arbitration using requesting device bandwidth and priority ranking
US6425032B1 (en) * 1999-04-15 2002-07-23 Lucent Technologies Inc. Bus controller handling a dynamically changing mix of multiple nonpre-emptable periodic and aperiodic devices
US6438135B1 (en) * 1999-10-21 2002-08-20 Advanced Micro Devices, Inc. Dynamic weighted round robin queuing
US6618167B1 (en) * 1999-12-17 2003-09-09 Xerox Corporation Apparatus and method for document scheduling in order to improve the productivity of a networked printer
US6477610B1 (en) * 2000-02-04 2002-11-05 International Business Machines Corporation Reordering responses on a data bus based on size of response
US6636913B1 (en) * 2000-04-18 2003-10-21 International Business Machines Corporation Data length control of access to a data bus
JP3655170B2 (ja) * 2000-06-20 2005-06-02 シャープ株式会社 ネットワークシステム
US20020041595A1 (en) * 2000-10-05 2002-04-11 Marc Delvaux System and method for suspending and resuming transmission of information without creating significant additional overhead
US6647449B1 (en) * 2000-10-05 2003-11-11 Hewlett-Packard Development Company, L.P. System, method and circuit for performing round robin arbitration
US6820152B2 (en) * 2001-04-25 2004-11-16 Matsushita Electric Industrial Co., Ltd. Memory control device and LSI
JP2003127505A (ja) * 2001-10-25 2003-05-08 Seiko Epson Corp プリンタ
US6879590B2 (en) * 2002-04-26 2005-04-12 Valo, Inc. Methods, apparatuses and systems facilitating aggregation of physical links into logical link
EP1418506A3 (en) * 2002-11-08 2005-10-12 Matsushita Electric Industrial Co., Ltd. Data storing system and transmission control method
JP3766377B2 (ja) * 2002-12-11 2006-04-12 松下電器産業株式会社 バス制御装置及び情報処理システム
US7650413B2 (en) * 2003-02-07 2010-01-19 Fujitsu Limited Managing shared memory resources in a high-speed switching environment
US8027344B2 (en) * 2003-12-05 2011-09-27 Broadcom Corporation Transmission of data packets of different priority levels using pre-emption
US7742185B2 (en) * 2004-08-23 2010-06-22 Xerox Corporation Print sequence scheduling for reliability

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05151151A (ja) * 1991-11-28 1993-06-18 Shikoku Nippon Denki Software Kk バス変換装置
JPH0744489A (ja) * 1993-07-27 1995-02-14 Fujitsu Ltd データ転送方法
JPH10301895A (ja) * 1997-04-30 1998-11-13 Oki Electric Ind Co Ltd バス拡張装置
JP2001117860A (ja) * 1999-10-18 2001-04-27 Fujitsu Ltd メモリアクセス優先順位切替制御装置
JP2002117004A (ja) * 2000-10-06 2002-04-19 Matsushita Electric Ind Co Ltd データ転送要求調停回路
JP2002288115A (ja) * 2001-03-27 2002-10-04 Ricoh Co Ltd Usbコントローラ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8838862B2 (en) 2010-08-23 2014-09-16 Ricoh Company, Limited Data transfer device, method of transferring data, and image forming apparatus

Also Published As

Publication number Publication date
JP4778199B2 (ja) 2011-09-21
US20050193155A1 (en) 2005-09-01

Similar Documents

Publication Publication Date Title
JP4778199B2 (ja) データ転送装置及びデータ転送方法
WO2011089660A1 (ja) バス調停装置
JP4457168B2 (ja) 資源要求調停装置、資源要求調停方法、及び、コンピュータプログラム
US8145815B2 (en) Data processing system
US20020159474A1 (en) On-chip inter-subsystem communication including concurrent data traffic routing
US20100095036A1 (en) Priority Based Bus Arbiters Avoiding Deadlock And Starvation On Buses That Support Retrying Of Transactions
US8838862B2 (en) Data transfer device, method of transferring data, and image forming apparatus
JP4313607B2 (ja) バス接続回路及びバス接続システム
US9170963B2 (en) Apparatus and method for generating interrupt signal that supports multi-processor
KR100480605B1 (ko) 네트워크 제어기의 송신부 버퍼 및 수신부 버퍼를제어하는 방법 및 네트워크 제어기
KR20160112305A (ko) 공유 리소스 액세스 중재 방법 및 이를 수행하기 위한 공유 리소스 액세스 중재 장치 및 공유 리소스 액세스 중재 시스템
US9910812B2 (en) Initiating multiple data transactions on a system bus
JP5293516B2 (ja) データ転送装置、データ転送制御方法、データ転送制御プログラム及び記録媒体
JP4327081B2 (ja) メモリアクセス制御回路
JP4344163B2 (ja) 資源要求調停装置、資源要求調停方法、及び、コンピュータプログラム
JP2001101128A (ja) データ処理装置
JP2008108126A (ja) データ転送制御装置及びそのバスアクセス調停方法
JPH1125036A (ja) 調停システム、およびアクセスを調停する方法
KR100932925B1 (ko) MMoIP 데이터의 전송 효율을 위한 직접 메모리 접근제어 장치 및 그 방법
JP2010140440A (ja) バス調停装置
KR20070061240A (ko) 절대 우위의 dma 요청을 처리하는 dma 장치 및 그처리 방법
JP5332692B2 (ja) データ転送制御装置、データ転送制御方法、データ転送制御プログラム及び記録媒体
JP5417305B2 (ja) 情報処理装置
JP4862593B2 (ja) データ転送装置及び画像形成装置
JP2006012032A (ja) データ処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060623

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090828

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100402

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101214

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: 20110628

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110701

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140708

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees