JP5209461B2 - 集積回路内のデバイス間のデータ転送 - Google Patents

集積回路内のデバイス間のデータ転送 Download PDF

Info

Publication number
JP5209461B2
JP5209461B2 JP2008334421A JP2008334421A JP5209461B2 JP 5209461 B2 JP5209461 B2 JP 5209461B2 JP 2008334421 A JP2008334421 A JP 2008334421A JP 2008334421 A JP2008334421 A JP 2008334421A JP 5209461 B2 JP5209461 B2 JP 5209461B2
Authority
JP
Japan
Prior art keywords
data
data transfer
pattern
circuit
data values
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
JP2008334421A
Other languages
English (en)
Other versions
JP2009217813A (ja
Inventor
ニコラ・ショサード
Original Assignee
アーム・リミテッド
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 アーム・リミテッド filed Critical アーム・リミテッド
Publication of JP2009217813A publication Critical patent/JP2009217813A/ja
Application granted granted Critical
Publication of JP5209461B2 publication Critical patent/JP5209461B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/46Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)
  • Memory System (AREA)

Description

本発明は、集積回路の分野に関する。特に、本発明は、集積回路内の異なるデバイス間のデータ値の転送に関する。
多数のデバイス(その間でデータが転送されなければならない)を含む集積回路を形成することが知られている。例えば、集積回路はプロセッサ及びメモリ(その間でデータ値が転送されなければならない)を備えている。オンチップ通信回路(ブロードキャストバス及びポイントツーポイント相互接続など)は、このデバイス間通信を可能にすることが知られている。
異なる通信プロトコルは、オンチップを使用することができる。一部の通信プロトコルは、高帯域幅を提供することを目的としている。他の通信プロトコルは、低消費エネルギを提供することを目的としている。そのようなオンチップバスプロトコルの1例は、英国ケンブリッジのARM株式会社によって設計されたAXI相互接続アーキテクチャ内に使用されたプロトコルである。
また、集積回路の分野には、単一の集積回路上に多数のデバイスを設ける増勢がある。これらの集積回路は、多くの場合、システムオンチップ(SoC)集積回路と呼ばれ、かつ、多数のプロセッサ、多数のメモリ、多数の周辺デバイスなどを具備することができる。そのようなシステムオンチップ集積回路を用いて設けられた通信回路は、集積回路内の必要なデータ転送を、効果的に実行可能にすることに重要な役割を果たす。
ランレングス符号化などのデータ圧縮技術を使用することがデータ処理分野において知られている。ランレングス符号化は、画像データ(データの大部分が共通の値を共有する)などのデータを圧縮することに特に有用である。例えば、画像が共通のピクセル値を有する大きな領域を含み、それによって、その共通ピクセル値を有する一連のピクセル値として隣接するピクセル値を示すことが可能になる。
1態様から見て、本発明は、
1)第1デバイスと、
2)第2デバイスと、
3)前記第1デバイスと、前記第2デバイスとに接続された通信回路と、
4)データ値の繰り返しパターンの表示を含むデータ転送を構成するように、前記第1デバイスと、前記通信回路とに接続された転送構成回路(transfer forming circuitry)と、
5)前記第2デバイスによって受信されるデータ値の前記繰り返しパターンを構成するように、前記第2デバイスに接続され、かつ、前記通信回路を使用して、前記第1デバイスから受信した前記データ転送内の前記表示に応答するパターン構成回路(pattern forming circuitry)と
を具備し、
前記通信回路は、前記第1デバイスと前記第2デバイスとの間のデータ通信を可能にする集積回路を提供する。
本方法は、デバイス間のオンチップ通信が、多くの場合、繰り返しパターン(定数値など)を有するデータ値の長いシーケンスの転送を含んでいることを認識する。例えば、多くの実際のアプリケーションプログラムは、それらの動作の一部として、比較的広い領域のメモリが既知の値(ゼロなど)に初期化される必要がある。記憶場所内にゼロ値を書き込むことは、この初期化タスクの速度を制限し、かつ、速度(データ値がメモリに転送される)の増加は、通信及び書き込みが効果的にパイプライン処理されるので、初期化プロセスを完了するのにかかる時間を有効に削減しない。しかし、本方法は、多数の集積回路が、デバイス間でデータ値を転送することに通信回路を使用するため、動作の全体速度が集積回路上の多数のデバイス間の競合によって制限されるようになることを認識する。例えば、集積回路は、多数のプロセッサコアを含み、かつ、プロセッサコアのうちの1つがビジーである(そのメモリにゼロ値の長いシーケンスを書き込むことによって、広い領域のメモリを初期化する)場合、次いで、通信回路を使用して、データ転送(その処理活動を進行するために必要である)を実行することができないので、他のプロセッサコアは失速し、かつ、有用な処理動作の実行が妨げられる。
本方法は、上記した状態を認識し、かつ、デバイス間のデータ転送内のデータ値の繰り返しパターンに代えて、データ値の繰り返しパターンの表示を使用し、次いで、表示に応答して受信デバイスで繰り返しパターンを構成することによって、受信デバイス内にデータ値を書き込むのにかかる時間でさえ、通信回路上の帯域幅が他の使用に解放されることを可能にし、そうでなければ、全体の初期化プロセス自体が有効にスピードアップされないことを真に理解する。
当業者は、第1デバイス及び第2デバイスに設けられた転送構成回路及びパターン構成回路の提供が、集積回路内に追加的なオーバヘッドゲート(計算量及び電力消費の形態で、それ自体のコストを有する)を示すことが分かる。集積回路内の一般的な設計目的は、可能なときにゲート数及び電力消費を削減することである。集積回路内のデバイス間の通信回路にわたるデータ値の繰り返しパターンの転送が十分に共通であり(例えば、初期化プロセス)、転送構成回路、及び、パターン構成回路に関連したオーバヘッドが他の使用に対するパターン構成回路に関して得られた利点によって、この上なく補われることを本方法は認識する。例えば、繰り返し定数値の長い転送は、電力を消費するデータ線上の信号値のトグリングを必要としないが、それは、他の多数のレジスタ及び制御信号のトグリングを全く含まなくて、繰り返しパターンの各データ値の転送を制御する。したがって、計算量、及び、転送構成回路及びパターン構成回路によって消費された電力は、データ値の繰り返しパターン(実際のシステム内に意外に共通である)の転送において消費された電力の削減によって、この上なく補われる。
転送構成回路は、データ値の繰り返しパターンの表示を生成するようにさまざまな異なる方法で形成することができる。一部の態様では、転送構成回路はパターン識別回路(第1デバイスに接続され、かつ、複数のデータ値を含むデータ転送に応答して、データ転送内のデータ値の繰り返しパターンを識別しつつ、繰り返しパターンの代わりに繰り返しパターンの表示に置き換える)の形態をとっている。したがって、第1デバイスは繰り返しパターンを生成し、かつ、これが通信回路を経由して転送される以前に、パターン識別回路は、この繰り返しパターンを識別しつつ、繰り返しパターンの代わりの表示に置き換え、これによって、データ転送を短縮する。
他の態様では、第1デバイスはデータ値の繰り返しパターンを実際には生成せず、かつ、代わりに、転送構成回路は、第1デバイスによって直接実行されたパターン生成命令に応答して、データ値の繰り返しパターンを第1デバイスで実際に構成させることなく、繰り返しパターンの表示を生成する。これは、特別な命令の提供を必要とするが、第1デバイスにおいてデータ値の繰り返しパターンを不必要に生成することを回避する。
集積回路内のデバイスは、多くの場合、特定のデータ転送に関して、バスマスタ又はバススレーブとして分類されることが当業者には理解される。バスマスタはデータ転送を初期化し、かつ、バススレーブはその転送に応答する。初期化された転送は、バスマスタからバススレーブへの書き込み、又は、バスマスタによるバススレーブの読み取りである場合がある。本方法は、これらの環境の両方に使用することができる。例えば、データ値の繰り返しパターンの表示は、データ転送の一部(バスマスタからバススレーブへの書き込みである)として使用してもよく、かつ、また、データ転送の一部(バススレーブからデータ値を読み出している)として使用してもよい。したがって、転送構成回路及びパターン構成回路は、バスマスタとバススレーブとの間の通信パスの一方又は両方の端部に設けられている。
データ値の繰り返しパターンは、幅広く異なる形態をとり得ることが分かる。追加的な計算量に対して重みを付けて表示することができる繰り返しパターンのタイプの数の増加と、オーバヘッド(繰り返しパターンの拡張タイプに対するサポートを提供することに関連した)との間にはバランスが存在する。一部の態様では、表示される繰り返しパターンは、転送される定数値のパターンである。サポートされる繰り返し値のより具体的な形態は、繰り返しゼロ値転送である。回路オーバヘッド及び計算量オーバヘッド(ゼロ値の繰り返しパターンの代わりの表示の使用をサポートすることに関連した)は、ゼロ値のそのような繰り返しパターン(集積回路内のデバイス間で転送された)が実際の動作において驚くほど共通であるので、高いレベルの利益をもたらす。実際のオペレーティングシステムでは、驚くほど多くの場合、1つのアプリケーションからのコンテキストを、他のアプリケーションのコンテキストにコピーするステップは、膨大な量の繰り返しパターンデータ(大きなゼロの領域など)をコピーするステップを含んでいる。
第1デバイス及び第2デバイスは、幅広く異なる形態をとり得ることが分かる。例えば、デバイスは、プロセッサ、メモリ又はキャッシュメモリであってもよい。デバイスの他の形態も可能である。
集積回路内のデバイスは、データ値の繰り返しパターンの代わりの表示の使用をサポートするために、変更を必要とすることが分かる。そのようなサポートは、集積回路内の全てのデバイスには提供されない場合がある。例えば、集積回路内の種々のデバイスは、異なるエンティティによって設計してもよく、かつ、一部のデバイスは、レガシーデバイス(頻繁に使用されず、かつ、本方法をサポートするために、デバイスを改良するコストが正当化されない)であってもよい。また、集積回路内の一部のデバイスは、バースト(タイマ、割り込み制御装置、ウオッチドック、UARTなど)でアクセスされることを意図していない。本方法をサポートするゲート数オーバヘッドは、そのようなデバイスに対して正当化されていない。そのような集積回路(一部のデバイスは本方法をサポートし、かつ、一部のデバイスは本方法をサポートしていない)との関連の中で、能力信号(capability signal)(デバイス間で送信されて、表示の使用が可能であるか否かを示す)を使用することができる。
この能力信号を有する集積回路では、書き込みデータ転送のシーケンスにおける第1データ転送は、ターゲットデバイスから能力信号(応答において)を受信するために、たとえ可能であっても表示を使用することなく送信することができ、これにより、後のデータ転送に対する表示の使用が可能であるか否かを決定する。
集積回路内のデバイスは、送信元と送信先との間のデータ転送を目的として、メモリマップスキームを使用して、都合よく通信することが当業者には分かる。このスキームを用いて、異なるデバイスは、メモリアドレス空間の異なる領域に割り当てられ、かつ、それらの割り当てられたメモリアドレス空間内のメモリアドレスを含むデータ転送を供給する。この関連で本方法に基づきサポートされた繰り返しパターンを提供する都合のよい方法は、デバイスに設けられている最小メモリブロックサイズ間の境界を越えることに続く、少なくとも第1データ転送に対して、データ値の繰り返しパターンの表示が使用されないように調整することである。最小サイズのデバイスメモリブロック間の境界が移動されるので、ターゲットデバイスが変化する可能性があり、これにより、書き込みデータ転送の表示に応答するための能力も変化する場合がある。したがって、第1書き込みデータ転送(そのような境界を越えるステップに続く)を送信するステップは、新規の最小サイズのデバイスメモリブロック(入力されている)内の受信デバイスが、データ値の繰り返しパターンの代わりの表示を使用することがまだ可能である否かを見るための適切なチェックが可能であることを、表示を使用することなく確実にする。
通信回路はさまざまな異なる形態をとり得ることが分かる。例えば、上記したAXI相互接続メカニズムに基づく、デバイス間のポイントツーポイント通信を可能にする相互接続回路であってもよい。他の代替的な1態様として、通信回路は、デバイス間のブロードキャストデータ通信を可能にするバス回路の形態で提供し得る。
本方法に対するサポートは、サイドバンド信号(データ転送を伴い、かつ、パターン構成回路が応答して、繰り返しパターンを構成する)の使用によってもたらされる。
一部の態様のデータ転送は、単一のデータ値(データ値が繰り返される)を送信する。これは、そのようなデバイスがそのような転送を単一のデータ値だけの転送として見て、かつ、サイドバンド信号(当該レガシーデバイスではない受信デバイスを命令して、その単一のデータ値からデータ値の繰り返しパターンを構成する)にそれら自体が関係する必要がないので、集積回路がサイドバンド信号に応答しないレガシーデバイス(例えば、監視デバイス)を含む態様において有用である。
他の態様では、サイドバンド信号自体は、パターン構成回路によって使用されるデータ値を指定して、繰り返しパターンを構成する。この方法は、統計的に適当な繰り返しデータ値(全て「0」のバイナリ値又は全て「1」のバイナリ値など)を表示することに適している。
受信デバイスに設けられたパターン構成回路は、さまざまな異なる形態をとることができる。一部の態様では、バッファ(データ値の繰り返しパターンが第2デバイスによって受信することができる)内に、データ値の繰り返しパターンを構成するために、パターン構成回路は、データ値を、第2デバイスに接続されたバッファ内の複数の位置にコピーするように動作することができる。他の態様では、第2デバイスによって受信されたようなデータ値の繰り返しパターンを構成するために、パターン構成回路は、第2デバイスによって複数回読み出されるデータ値を保持する働きをすることができる。
パターン識別回路を含む態様との関連で、これは、第2デバイスに送信され、かつ、これらのデータ値が送信される前に、第1デバイスに接続されたバッファ内に格納される複数のデータ値を比較するための比較回路の形態で、比較的低いオーバヘッドで、設けることができる。バッファ内に送信されるデータ値の収集は、それらが通信回路上に転送される以前に、データバースト(データ値の条件が繰り返しパターンのタイプではなく、隣接する記憶場所への書き込みが単一のデータ転送の一部として実行される)の構成を促進するなどの他の理由のため、集積回路内の比較的共通な場所である。そのようなバッファが他の理由のため既に設けられている場合、本方法は、状態(データ値の繰り返しパターンの表示を、データ値自体の代わりに使用することができる)を識別するために、それらのパターン識別回路を備えたこれらのバッファを使用する。
他の態様から見て、本発明は、
1)第1デバイス手段と、
2)第2デバイス手段と、
3)前記第1デバイス手段と、前記第2デバイス手段とに接続された通信手段と、
4)データ値の繰り返しパターンの表示を含むデータ転送を構成するため、前記第1デバイス手段と、前記通信手段とに接続された転送構成手段と、
5)前記第2デバイス手段によって、受信されるデータ値の前記繰り返しパターンを構成するため、前記第2デバイス手段に接続され、かつ、前記通信手段を使用して、前記第1デバイス手段から受信した前記データ転送内の前記表示に応答するパターン構成手段と
を具備し、
前記通信手段は、前記第1デバイス手段と前記第2デバイス手段との間のデータ通信を可能にする集積回路を提供する。
さらなる態様から見て、本発明は、第1デバイスと、第2デバイスと、前記第1デバイスと前記第2デバイスとに接続された通信回路とを備えた集積回路を動作させる方法を提供し、
前記通信回路は、前記第1デバイスと前記第2デバイスとの間の通信を可能にし、
前記方法は、
1)前記第1デバイスと、前記通信回路とに接続された転送構成回路を用いて、データ値の繰り返しパターンの表示を含むデータ転送を構成するステップと、
2)前記第2デバイスに接続され、かつ、前記通信回路を使用して前記第1デバイスから受信した前記データ転送内の前記表示に応答する、パターン構成回路を用いて、前記第2デバイスによって受信されるデータ値の前記繰り返しパターンを構成するステップと
を具備している。
本発明の上記及び他の目的、特徴及び利点は、添付図面に関連して理解される代表的な実施例に関する以下の詳細な説明から明らかになる。
通信回路を介して通信する複数のデバイスを含む集積回路の概略図である。 データ転送の中で、これらのデータ値の代わりに、データ値の繰り返しパターンの表示を使用するためのメカニズムを備えた第1デバイスの概略図である。 データ転送の中で、これらのデータ値の代わりに、データ値の繰り返しパターンの表示を受信するためのメカニズムを有するデバイスの概略図である。 メモリアドレス空間のブロック(1つのメモリマップデバイスだけが提供される)への分割の概略図である。 データ転送を送信し、かつ、これらのデータ値の代わりに、データ値の繰り返しパターンの表示の使用をサポートするデバイスで実行された処理を概略的に示すフローチャートである。 データ転送の中で、繰り返しデータ値の代わりに、繰り返しデータ値の表示を含むデータ転送を受信する受信デバイスで実行された処理を概略的に示すフローチャートである。
図1は、ホイントツーポイント通信をサポートする相互接続16の形態で、通信回路を介して通信する多数のデバイス4,6,8,10,12及び14を含む集積回路2を概略的に示している。他の実施例では、相互接続16は、バス(デバイス4,6,8,10,12及び14間のブロードキャスト通信を可能にする)に置き換えることができることが理解される。
多様なデバイス4,6,8,10,12及び14は、多数のマスタデバイス4,12と、多数のスレーブデバイス6,8,10及び14とを含んでいる。デバイスは、例えば、プロセッサ、メモリ、キャッシュメモリの形態をとり得る。他の多数の異なる形態のデバイスを利用可能であることも当業者には理解される。個別のデバイスは、環境及びその構成によって、マスタデバイスとしても、及び/又は、スレーブデバイスとしても機能してもよい。
図1には相互接続モニタ8も示されている。このデバイスの機能によって、データ転送(相互接続16を介して行われる)をモニタして、それらが予期されたデータ転送プロトコルに一致することを確実にする。欠陥のあるデータ転送が検出された場合、次いで、相互接続モニタ8は、このデータ転送を修復するか、又は、システムリセットをトリガするなどのエラーに応答する他の動作を行う働きをしてもよい。相互接続モニタ8は、レガシーデバイスであり、それにより、サイドバンド信号(データ値の繰り返しパターンの表示の使用を示す)に応答しない。この関連で、相互接続モニタ8は、単一のデータ値のレガシーデータ転送として、このデータ転送を解釈することができ、かつ、存在しないエラーを示さないので、そのようなサイドバンド信号を使用したデータ転送は、サイドバンド信号に加えて、単一のデータ値を含んでいる場合に有用である。
図2は、データ転送を送信することに使用される第1デバイスを示している。この第1デバイス18は、プロセッサ20(関連するキャッシュメモリ22と、キャッシュコントローラ24とを備えた)の形態をとってもよい。書き込みバッファ26が設けられて、データ値(集積回路2上の他の場所でメモリシステムに戻って書き込まれる)が、相互接続16を介して転送される前に、ターゲットデバイス(図1に示されたメモリ6,14のうちの1つなど)にバッファされる。書き込みバッファ26は、相互接続16をより効果的に使用するために、相互接続16を介したデータ転送として送信される前に、収集されるデータ値の潜在的なバーストを可能にする。マスタインターフェース28は、書き込みバッファ26と相互接続16との間に設けられている。このマスタインターフェース28は、書き込みアドレス(WA)及び制御信号、書き込みデータ信号(WD)、読み出しアドレス(RA)及び制御信号、読み出しデータ信号(RD)、及び、ターゲット応答信号と通信する。また、図2には、書き込みアドレス及び制御信号に関連付けられたサイドバンド信号(データ転送を用いて送信されて、データ転送がデータ値の繰り返しパターンの表示を含むことを示す)が示されている。1態様では、データ転送は、最大で8ワード長までを有してもよく、かつ、サイドバンド信号(繰り返しデータ値を示す)を使用して、定数データ値がこれらの各8ワードに対して使用されることを示してもよい。一部の実施例では、定数値は、1つのデータ値の転送長を有するそのデータ転送の一部として送信された単一のデータ値として、転送してもよい。他の実施例では、サイドバンド信号自体が、どのデータ値が繰り返されるかを示してもよい。特に、ゼロのデータ値が送信されて、それにより、サイドバンド信号が提供される(8個のゼロ値のデータ転送が行われ、かつ、ゼロデータ値自体が転送される必要がないことをそれ自体が示す)共通例がある。受信デバイスは、サイドバンド信号に応答して、受信デバイスで、8個のゼロ値(受信デバイス内に書き込まれる)を構成する。
また、図2には、パターン識別回路30が示されている。このパターン識別回路30は、比較器(書き込みバッファ26内にデータ値をスヌープして、データ値の繰り返しパターンを識別する働きをする)を含んでいる。単純な例では、パターン識別回路30を使用して、受信デバイスに書き込まれる8個の隣接するゼロ値のシーケンスを識別してもよい。データ値の繰り返しパターンが識別されたとき、パターン識別回路30は、インターフェース28にこれを信号で送る(次いで、データ値のその繰り返しパターンを受信デバイスに書き込むデータ転送を用いて、送信されるサイドバンド信号を生成する)。次いで、データ転送を単一のデータワード長だけに短縮することができ、かつ、繰り返しデータワードを示す単一のデータワードを転送することができるか、又は、サイドバンド信号自体が単一のデータ値を示す場合には、データワードが存在しない。
パターン識別回路30の使用の代替(又は追加)として、プロセッサ20による特定の格納−繰り返し命令の使用が破線の形態で示されている。プロセッサ20は、そのアーキテクチャ内に、プロセッサ20が状態(記憶場所に繰り返しデータ値を書き込むことを望む)を識別することができる命令を設けることができる。そのような命令の使用は、命令デコーダ回路32によって検出することができ、かつ、使用されたこの命令デコーダ回路32は、インターフェース28に、サイドバンド信号が繰り返しデータ値を示すように生成されなければならない(かつ、ひとつが使用されている場合、必要な単一のデータ値を挿入する)ことを信号で送る。
図3は、繰り返しデータ値の表示の使用をサポートする受信デバイスの1実施例である。図3に示された実施例のこの受信デバイスは、関係するバッファ36(メモリ34に書き込まれる前に、メモリ線が収集される)を備えたメモリ34である。スレーブインターフェース38は、相互接続16に接続し、かつ、同じ信号(図2のマスタインターフェース28に設けられた)をそれに関連付ける。受信デバイスには、パターン構成回路40(サイドバンド信号に応答して、バッファ36内に繰り返しパターンデータ値を構成する)が設けられている。データ値の繰り返しパターンは、サイドバンド信号自体(バッファ36内に、多数回、関係するデータ転送において受信した単一のデータ値をコピーすることによって構成される)によって示してもよい。
バッファ36の設けられていない実施例では、代わりに、繰り返して使用されるデータ値は、メモリ34への読み出し入力と、読み出すように制御されたメモリとで保持してもよく(各記憶場所内に多数回値を保持しない)、それによって、転送されるデータ値の繰り返しパターンを構成する。
図3(及び図2も)は、応答信号(受信デバイスによって送信デバイスに送信された)に関連付けられた能力信号である。この能力信号は、正の値(受信デバイスがデータ値の繰り返しパターンの表示の使用をサポート可能であることを示す)も、負の値(受信デバイスにこの能力がないことを示す)も有することができる。受信デバイスへの第1書き込みデータ転送によって、送信デバイスは、その受信デバイスから能力信号(そのような表示がサポートされているか否かを示す)をまだ受信しないので、これが可能である場合でさえも、繰り返しデータ値の表示を使用しないように構成することができる。受信デバイスとの第1通信及び能力信号のリターンに続いて、送信デバイスは、受信デバイスがこの機能をサポートするか否かによって、適切なときに、表示を使用することができ、又は、使用しないこともできる。
読み出しデータ転送リクエストの場合には、スレーブデバイスは、読み出しデータに伴う能力信号に応答することができる(表示を使用していることを示すために返っている)。スレーブデバイスは、サイドバンド信号(例えば、図示しないが、読み出しアドレス及び制御信号に関連付けられた)から、読み出しリクエストを送信するマスタデバイスが繰り返し値の表示の使用をサポート可能であることを決定することができる。
図4は、メモリアドレス空間(デバイスをマッピングされたメモリが、これらのデバイスをアドレス指定するためにマッピングすることができる)を図示している。最小サイズのデバイスメモリブロックがメモリアドレス空間に設けられることが当業者には知られている。最小サイズのデバイスメモリブロック内のデータ転送が同じデバイスに行われることを送信デバイスが仮定することができるように、設計者は、そのような最小サイズのデバイスメモリブロック内に、1つのデバイスをマッピングするように制限される。その最小サイズのデバイスメモリブロック間の境界が越えられるとき、この条件はもはや有効ではなく、再チェックされなければならない。したがって、現在の最小サイズのデバイスメモリブロック内の受信デバイスが表示に応答可能であることを示す正の能力信号の以前の受信によって、その動作中にゲート制御されることと同様に、図2のパターン識別回路30は、表示を使用しないデータ転送がさらに行われつつ、他の能力信号が新規の最小サイズのデバイスメモリブロック(繰り返しデータ値の表示をサポート可能であることを示す)内のデバイスから受信されるまで、その境界を移動して、この能力をリセットする。
図5は、書き込みマスタデバイスによって実行された処理を概略的に図示するフローチャートである。ステップ42では、転送されるデータ値のバーストが全て同じ値を有するデータワードを含むか否かに関して、決定が行われる。そうでない場合には、次いで、バーストは、ステップ44で異なるデータワードを使用して送信され、かつ、処理はステップ42に戻る。異なるデータ値を含むバーストはノルムであり、これにより、データ転送の大部分はステップ44を使用して処理される。しかし、メモリの大きな領域の初期化の場合、又は、他の状態(定数データ値の大規模なブロックが書き込まれる)では、次いで、ステップ42の決定は、バースト内の全てのデータワードが共通データ値を有することを識別する。次いで、処理はステップ46に進む。ステップ46は、ターゲットデバイスがその能力(それらの繰り返しデータ値の代わりに、繰り返しデータ値の表示をサポートする)を既に確認しているか否かを決定する。ターゲットデバイスがこの能力をまだ確認していない場合、次いで、処理はステップ48(定数値であってさえ、全てのデータワードが別々に送信される)に進む。次いで、ステップ50は、ターゲットデバイスからの応答を観察して、それが能力信号(ターゲットデバイスが繰り返されたデータワードの表示をサポート可能であることを示す)を含むか否かを見る。ターゲットデバイスがそのように可能である場合、次いで、この情報は、可能であれば、そのターゲットデバイスへの後の転送が繰り返しデータ値の代わりの表示を使用することができるように、現在のターゲットデバイスの能力としてラッチされる。
ステップ46での決定が、ターゲットデバイスが繰り返しワード能力を確認することである場合、次いで、ステップ52は、バーストが境界を越えてメモリ空間に入るか否か(最小サイズのデバイスメモリブロック境界を越えるなどのターゲットデバイス内の変化に一致し得る)を決定する。そのような境界が越えられる場合、次いで、処理はステップ54(ターゲットデバイスが繰り返しワード能力を有することを示すフラッグがクリアされ、かつ、ステップ48でこの能力条件なしに、処理が継続する)に進む。ステップ52での決定がそのような境界を越えていないことである場合、次いで、処理はステップ56(表示がデータ値の繰り返しパターンを送信する代わりに使用される)に進む。この実施例のデータ転送は、開始アドレスと、1つのワード(繰り返されたデータ値である)と、サイドバンド信号(1つのワードが使用されて、受信デバイスで完全なワードのバーストを構成する(例えば、8個のワードバーストシステムの場合には8ワード)ことを示す)とを含んでいる。
図6は、受信デバイスで実行される処理を図示するフローチャートである。ステップ58では、システムは、受信される書き込みを待機する。ステップ60では、サイドバンド信号(表示が繰り返しデータ値に使用されることを示す)がアサートされるか否かに関して、決定が行われる。このサイドバンド信号がアサートされていない場合、次いで、処理はステップ62(データワードが受信され、かつ、記憶場所内に書き込まれる)に進む。ステップ64はバーストが終了しているか否かを決定し、かつ、ステップ66は、別々に受信されたデータワードの書き込み間に記憶場所を進める。
ステップ60での決定が、サイドバンド信号がアサートされる(繰り返しパターンの表示が使用されていることを示す)ことである場合、次いで、処理はステップ68(繰り返しパターンのために、テンプレートとして使用されている単一のデータワードが受信される)に進む。次いで、この単一のデータワードは多数の記憶場所にコピーされる。
ステップ68以降、又は、ステップ64での決定がバースト内にもはやワードが存在しないことであるとき、処理はステップ70(応答を受信した書き込みが送信デバイスに受信デバイスによって出力される)に進む。この応答は、能力信号(受信デバイスが繰り返しデータワードの表示を使用することの能力を含んでいることを示す)を含む。これが送信デバイスにまだ通知されていない場合、この能力信号を使用して、送信デバイスによるそのような表示の使用をトリガすることができる。
図6の処理は、表示を使用することが可能な受信デバイスによって実行された処理を図示していることが理解される。受信デバイス(そのように可能ではない)は、ステップ58,62,64及び66を使用する。ステップ60及び68は除外される。ステップ70は、応答を出力するが、繰り返しワード能力(メモリデバイスがデータワードの繰り返しパターンの表示の使用をサポート可能であることを示す)を含んでいない(即ち、負の能力信号を送信する)。
上記は書き込み転送との関連で方法を説明しているが、読み出し転送(両方のデバイスがその使用をサポートする場合、スレーブデバイスが表示を使用して、データ値を繰り返すために、読み出しデータに戻る)にも使用してもよい。
本発明の代表的な実施例が添付図面を参照して本明細書に詳細に説明されているが、本発明はこれらの正確な実施例に限定されることなく、かつ、添付の特許請求の範囲に定義された本発明の範囲及び真の主旨から逸脱することなく、当業者によって多様な変更及び変形がそこになされ得ることが理解されなければならない。
2 集積回路
4,12 マスタデバイス
6,8,10,14 スレーブデバイス
16 相互接続
18 第1デバイス
20 プロセッサ
24 キャッシュコントローラ
26 書き込みバッファ
28 マスタインターフェース
30 パターン識別回路
32 命令デコーダ回路
34 メモリ
36 バッファ
38 スレーブインターフェース
40 パターン構成回路

Claims (43)

  1. 集積回路であって、
    1)第1デバイスと、
    2)第2デバイスと、
    3)前記第1デバイスと、前記第2デバイスとに接続された通信回路と、
    4)データ値の繰り返しパターンの表示を含むデータ転送を構成するように、前記第1デバイスと、前記通信回路とに接続された転送構成回路と、
    5)前記第2デバイスによって受信されるデータ値の前記繰り返しパターンを構成するように、前記第2デバイスに接続され、かつ、前記通信回路を使用して、前記第1デバイスから受信した前記データ転送内の前記表示に応答するパターン構成回路と
    を具備し、
    前記通信回路は、前記第1デバイスと前記第2デバイスとの間のデータ通信を可能にし、
    前記表示は、前記データ転送に伴うサイドバンド信号であり、
    前記データ転送は単一のデータ値を含み、かつ、
    前記パターン構成回路は、前記サイドバンド信号に応答して、前記単一のデータ値から、前記繰り返しパターンを構成し、
    前記通信回路に接続され、かつ、前記サイドバンド信号に応答しない更なるデバイスは、前記単一のデータ値だけのデータ転送として、前記データ転送を検出することを特徴とする集積回路。
  2. 前記転送構成回路は、前記第1デバイスに接続され、かつ、前記通信回路を使用して、前記第1デバイスから前記第2デバイスに送信される複数のデータ値を含む前記データ転送に応答するパターン識別回路を備えて、前記データ転送内のデータ値の前記繰り返しパターンを識別しつつ、前記繰り返しパターンの前記表示を前記データ転送内の前記繰り返しパターンの代わりに置き換えることを特徴とする請求項1に記載の集積回路。
  3. 前記転送構成回路は、前記第1デバイスによって実行されたパターン生成命令に応答して、前記データ転送の少なくとも一部として、データ値の繰り返しパターンの前記表示を生成することを特徴とする請求項1に記載の集積回路。
  4. 前記第1デバイスはバスマスタであり、
    前記第2デバイスはバススレーブであり、かつ、
    前記データ転送は、前記バススレーブへの書き込み動作であることを特徴とする請求項1に記載の集積回路。
  5. 前記第1デバイスはバススレーブであり、
    前記第2デバイスはバスマスタであり、かつ、
    前記データ転送は、前記バススレーブからの読み出し動作であることを特徴とする請求項1に記載の集積回路。
  6. データ値の前記繰り返しパターンは、繰り返し定数データ値であることを特徴とする請求項1に記載の集積回路。
  7. データ値の前記繰り返しパターンは、繰り返しゼロデータ値であることを特徴とする請求項6に記載の集積回路。
  8. 前記第1デバイス及び前記第2デバイスのうちの少なくとも1つは、
    プロセッサ、
    メモリ、及び、
    キャッシュメモリ
    であることを特徴とする請求項1に記載に集積回路。
  9. 前記第2デバイスは、前記第1デバイスから受信した書き込みデータ転送に応答して、
    前記第2デバイスが、前記表示に応答して、データ値の前記繰り返しパターンを構成可能であることを示す、正の能力信号を返し、
    前記第1デバイスは、前記正の能力信号に応答して、データ値の繰り返しパターンを含むデータ転送を、前記表示を使用して、前記第2デバイスに送信することを特徴とする請求項1に記載の集積回路。
  10. 前記第1デバイスは、前記第2デバイスから受信した読み出しデータ転送リクエストに応答して、
    前記第1デバイスが前記表示をデータ値の前記繰り返しパターンの代わりに提供可能であることを示す、正の能力信号を返し、
    前記第2デバイスは、前記正の能力信号に応答して、データ値の繰り返しパターンを含むデータ転送を、前記表示を使用して、前記第1デバイスから受信することを特徴とする請求項1に記載の集積回路。
  11. 前記通信回路に接続された第3デバイスを備えることを特徴とする請求項1に記載の集積回路。
  12. 前記第3デバイスは、前記第1デバイスから受信した書き込みデータ転送に応答して、データ値の前記繰り返しパターンを構成するように、前記第3デバイスが前記表示に応答することができないことを示す、負の能力信号を返し、
    前記第1デバイスは、前記負の能力信号に応答して、データ値の繰り返しパターンを含むデータ転送を、前記表示を使用することなく、前記第3デバイスに送信することを特徴とする請求項11に記載の集積回路。
  13. 前記第3デバイスは、前記第2デバイスから受信した読み出しデータ転送リクエストに応答して、
    前記第3デバイスが前記表示をデータ値の前記繰り返しパターンの代わりに提供することができないことを示す、負の能力信号を返し、
    前記第2デバイスは、前記負の能力信号に応答して、データ値の繰り返しパターンを含むデータ転送を、前記表示を使用することなく、前記第2デバイスから受信することを特徴とする請求項11に記載の集積回路。
  14. 他のデバイスに送信した書き込みデータ転送のシーケンス内の第1データ転送は、前記表示を使用することなく、送信されることを特徴とする請求項9に記載の集積回路。
  15. 前記集積回路のメモリアドレス空間は、1つしかないデバイスがメモリマップである最小のメモリブロックサイズを有する複数の最小サイズのデバイスメモリブロックを備え、かつ、
    最小サイズのデバイスメモリブロック間の境界を越えることに続く、第1書き込みデータ転送は、前記表示を使用することなく、送信されることを特徴とする請求項9に記載の集積回路。
  16. 前記通信回路は、デバイス間のポイントツーポイントデータ通信を可能にする相互接続回路であることを特徴とする請求項1に記載の集積回路。
  17. 前記通信回路は、デバイス間のブロードキャストデータ通信を可能にするバス回路であることを特徴とする請求項1に記載の集積回路。
  18. 前記表示は、前記データ転送に伴うサイドバンド信号であり、
    前記サイドバンド信号は、前記パターン構成回路によって、使用されるデータ値を指定して、前記繰り返しパターンを構成することを特徴とする請求項1に記載の集積回路。
  19. 前記パターン構成回路は、データ値を、前記第2デバイスに接続されたバッファ内の複数の位置にコピーして、
    前記第2デバイスによって、受信されるデータ値の前記繰り返しパターンを構成することを特徴とする請求項1に記載の集積回路。
  20. 前記パターン構成回路は、前記第2デバイスによって、複数回読み出されるデータ値を保持して、
    前記第2デバイスによって、受信されるデータ値の前記繰り返しパターンを構成することを特徴とする請求項1に記載の集積回路。
  21. 前記パターン識別回路は、前記第2デバイスに送信され、かつ、前記第1デバイスに接続されたバッファ内に格納される複数のデータ値を比較するための比較回路を備えることを特徴とする請求項2に記載の集積回路。
  22. 集積回路であって、
    1)第1デバイス手段と、
    2)第2デバイス手段と、
    3)前記第1デバイス手段と、前記第2デバイス手段とに接続された通信手段と、
    4)データ値の繰り返しパターンの表示を含むデータ転送を構成するため、前記第1デバイス手段と、前記通信手段とに接続された転送構成手段と、
    5)前記第2デバイス手段によって、受信されるデータ値の前記繰り返しパターンを構成するため、前記第2デバイス手段に接続され、かつ、前記通信手段を使用して、前記第1デバイス手段から受信した前記データ転送内の前記表示に応答するパターン構成手段と
    を具備し、
    前記通信手段は、前記第1デバイス手段と前記第2デバイス手段との間のデータ通信を可能にし、
    前記表示は、前記データ転送に伴うサイドバンド信号であり、
    前記データ転送は単一のデータ値を含み、かつ、
    前記パターン構成手段は、前記サイドバンド信号に応答して、前記単一のデータ値から、前記繰り返しパターンを構成し、
    前記通信手段に接続され、かつ、前記サイドバンド信号に応答しない更なるデバイスは、前記単一のデータ値だけのデータ転送として、前記データ転送を検出することを特徴とする集積回路。
  23. 第1デバイスと、第2デバイスと、前記第1デバイスと前記第2デバイスとに接続された通信回路とを備えた集積回路を動作させる方法であって、
    前記通信回路は、前記第1デバイスと前記第2デバイスとの間の通信を可能にし、
    前記方法は、
    1)前記第1デバイスと、前記通信回路とに接続された転送構成回路を用いて、データ値の繰り返しパターンの表示を含むデータ転送を構成するステップと、
    2)前記第2デバイスに接続され、かつ、前記通信回路を使用して前記第1デバイスから受信した前記データ転送内の前記表示に応答する、パターン構成回路を用いて、前記第2デバイスによって受信されるデータ値の前記繰り返しパターンを構成するステップと
    を具備し、
    前記表示は、前記データ転送に伴うサイドバンド信号であり、
    前記データ転送は単一のデータ値を含み、かつ、
    前記パターン構成回路は、前記サイドバンド信号に応答して、前記単一のデータ値から、前記繰り返しパターンを構成し、
    前記通信回路に接続され、かつ、前記サイドバンド信号に応答しない更なるデバイスは、前記単一のデータ値だけのデータ転送として、前記データ転送を検出することを特徴とする方法。
  24. データ転送を構成する前記ステップは、前記通信回路を使用して、前記第1デバイスから前記第2デバイスに送信される複数のデータ値を含む前記データ転送に応答して、
    前記データ転送内のデータ値の前記繰り返しパターンを識別しつつ、前記繰り返しパターンの前記表示を、前記データ転送内の前記繰り返しパターンの代わりに置き換えることを特徴とする請求項23に記載の方法。
  25. 構成する前記ステップは、前記第1デバイスによって実行されたパターン生成命令に応答して、前記データ転送の少なくとも一部として、データ値の繰り返しパターンの前記表示を生成することを特徴とする請求項23に記載の方法。
  26. 前記第1デバイスはバスマスタであり、
    前記第2デバイスはバススレーブであり、かつ、
    前記データ転送は、前記バススレーブへの書き込み動作であることを特徴とする請求項23に記載の方法。
  27. 前記第1デバイスはバススレーブであり、
    前記第2デバイスはバスマスタであり、かつ、
    前記データ転送は、前記バススレーブからの読み出し動作であることを特徴とする請求項23に記載の方法。
  28. データ値の前記繰り返しパターンは、繰り返し定数データ値であることを特徴とする請求項23に記載の方法。
  29. データ値の前記繰り返しパターンは、繰り返しゼロデータ値であることを特徴とする請求項28に記載の方法。
  30. 前記第1デバイス及び前記第2デバイスのうちの少なくとも1つは、
    プロセッサ、
    メモリ、及び、
    キャッシュメモリ
    であることを特徴とする請求項23に記載の方法。
  31. 前記第2デバイスは、前記第1デバイスから受信したデータ転送に応答して、
    データ値の前記繰り返しパターンを構成するように、前記第2デバイスが前記表示に応答可能であることを示す、正の能力信号を返し、
    前記第1デバイスは、前記正の能力信号に応答して、データ値の繰り返しパターンを含むデータ転送を、前記表示を使用して、前記第2デバイスに送信することを特徴とする請求項23に記載の方法。
  32. 前記第1デバイスは、前記第2デバイスから受信した読み出しデータ転送リクエストに応答して、
    前記第1デバイスがデータ値の前記繰り返しパターンの代わりに前記表示を提供可能であることを示す、正の能力信号を返し、
    前記第2デバイスは、前記正の能力信号に応答して、データ値の繰り返しパターンを含むデータ転送を、前記表示を使用して、前記第1デバイスから受信することを特徴とする請求項23に記載の方法。
  33. 第3デバイスは、前記通信回路に接続されていることを特徴とする請求項23に記載の方法。
  34. 前記第3デバイスは、前記第1デバイスから受信したデータ転送に応答して、データ値の前記繰り返しパターンを構成するように、前記第3デバイスが前記表示に応答することができないことを示す、負の能力信号を返し、
    前記第1デバイスは、前記負の能力信号に応答して、データ値の繰り返しパターンを含むデータ転送を、前記表示を使用することなく、前記第3デバイスに送信することを特徴とする請求項33に記載の方法。
  35. 前記第3デバイスは、前記第2デバイスから受信した読み出しデータ転送リクエストに応答して、
    前記第3デバイスがデータ値の前記繰り返しパターンの代わりに前記表示を提供することができないことを示す、負の能力信号を返し、
    前記第2デバイスは、前記負の能力信号に応答して、データ値の繰り返しパターンを含むデータ転送を、前記表示を使用することなく、前記第2デバイスから受信することを特徴とする請求項33に記載の方法。
  36. 他のデバイスに送信したデータ転送のシーケンス内の第1データ転送は、前記表示を使用することなく、送信されることを特徴とする請求項31に記載の方法。
  37. 前記集積回路のメモリアドレス空間は、1つしかないデバイスがメモリマップである最小のメモリブロックサイズを有する複数の最小サイズのデバイスメモリブロックを備え、かつ、
    最小サイズのデバイスメモリブロック間の境界を越えることに続く、第1データ転送は、前記表示を使用することなく、送信されることを特徴とする請求項31に記載の方法。
  38. 前記通信回路は、デバイス間のポイントツーポイントデータ通信を可能にする相互接続回路であることを特徴とする請求項23に記載の方法。
  39. 前記通信回路は、デバイス間のブロードキャストデータ通信を可能にするバス回路であることを特徴とする請求項23に記載の方法。
  40. 前記表示は、前記データ転送に伴うサイドバンド信号であり、
    前記サイドバンド信号は、前記パターン構成回路によって、使用されるデータ値を指定して、前記繰り返しパターンを構成することを特徴とする請求項23に記載の方法。
  41. 繰り返しパターンを構成する前記ステップは、データ値を、前記第2デバイスに接続されたバッファ内の複数の位置にコピーして、
    前記第2デバイスによって、受信されるデータ値の前記繰り返しパターンを構成することを特徴とする請求項23に記載の方法。
  42. 前記繰り返しパターンを構成する前記ステップは、前記第2デバイスによって、複数回読み出されるデータ値を保持して、
    前記第2デバイスによって、受信されるデータ値の前記繰り返しパターンを構成することを特徴とする請求項23に記載の方法。
  43. データ転送を構成する前記ステップは、前記第2デバイスに送信され、かつ、前記第1デバイスに接続されたバッファ内に格納される複数のデータ値を比較することを特徴とする請求項24に記載の方法。
JP2008334421A 2008-02-19 2008-12-26 集積回路内のデバイス間のデータ転送 Expired - Fee Related JP5209461B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB0803013.2 2008-02-19
GB0803013.2A GB2457667B (en) 2008-02-19 2008-02-19 Data transfer between devices within an integrated circuit

Publications (2)

Publication Number Publication Date
JP2009217813A JP2009217813A (ja) 2009-09-24
JP5209461B2 true JP5209461B2 (ja) 2013-06-12

Family

ID=39271928

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008334421A Expired - Fee Related JP5209461B2 (ja) 2008-02-19 2008-12-26 集積回路内のデバイス間のデータ転送

Country Status (4)

Country Link
US (1) US7934029B2 (ja)
JP (1) JP5209461B2 (ja)
CN (1) CN101515261B (ja)
GB (1) GB2457667B (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9223787B2 (en) * 2008-09-26 2015-12-29 Apple Inc. Systems and methods for sideband communication between device and host to minimize file corruption
US8850250B2 (en) 2010-06-01 2014-09-30 Intel Corporation Integration of processor and input/output hub
US8782456B2 (en) 2010-06-01 2014-07-15 Intel Corporation Dynamic and idle power reduction sequence using recombinant clock and power gating
US9146610B2 (en) 2010-09-25 2015-09-29 Intel Corporation Throttling integrated link
EP2958028B1 (en) * 2014-06-20 2020-05-13 Nagravision S.A. Physical interface module
US10222853B2 (en) 2016-03-03 2019-03-05 Qualcomm Incorporated Power saving techniques for memory systems by consolidating data in data lanes of a memory bus
US10394724B2 (en) * 2016-08-22 2019-08-27 Qualcomm Incorporated Low power data transfer for memory subsystem using data pattern checker to determine when to suppress transfers based on specific patterns
CN108228647B (zh) 2016-12-21 2022-05-24 伊姆西Ip控股有限责任公司 用于数据拷贝的方法和设备
US10318178B1 (en) * 2017-04-28 2019-06-11 EMC IP Holding Company LLC Accelerating copy of zero-filled data extents
US11188377B2 (en) * 2019-10-04 2021-11-30 Arm Limited Writing zero data
CN112148659B (zh) * 2020-09-21 2022-02-01 牛芯半导体(深圳)有限公司 数据传输电路

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59171241A (ja) * 1983-03-17 1984-09-27 Fujitsu Ltd デ−タ伝送方式
US5434568A (en) * 1985-01-10 1995-07-18 Moll; Edward W. Data compression by removing repetition and unnecessary information
US6144658A (en) * 1996-12-20 2000-11-07 Cisco Technology, Inc. Repetitive pattern removal in a voice channel of a communication network
JP2002368623A (ja) * 2001-06-05 2002-12-20 Nec Corp 低速回線を使用したデータ転送システム及びその転送方法
US6744388B1 (en) * 2002-06-19 2004-06-01 Xilinx, Inc. Hardware-friendly general purpose data compression/decompression algorithm
US7908399B2 (en) * 2003-05-30 2011-03-15 Cisco Technology, Inc. Compression of repeated patterns in full bandwidth channels over a packet network
US7224297B2 (en) * 2005-11-02 2007-05-29 Lycos, Inc. Compressing log files
US7590778B2 (en) * 2006-06-15 2009-09-15 International Business Machines Corporation Using operation codes to control a decoder's use of a buffer to generate data from an input data stream into an output data stream

Also Published As

Publication number Publication date
GB0803013D0 (en) 2008-03-26
JP2009217813A (ja) 2009-09-24
GB2457667A (en) 2009-08-26
GB2457667B (en) 2012-01-11
CN101515261A (zh) 2009-08-26
US7934029B2 (en) 2011-04-26
CN101515261B (zh) 2013-01-02
US20090210595A1 (en) 2009-08-20

Similar Documents

Publication Publication Date Title
JP5209461B2 (ja) 集積回路内のデバイス間のデータ転送
US5682512A (en) Use of deferred bus access for address translation in a shared memory clustered computer system
US7093079B2 (en) Snoop filter bypass
US10002085B2 (en) Peripheral component interconnect (PCI) device and system including the PCI
US8874959B2 (en) Information processing apparatus, image forming apparatus, and information processing program
US9003091B2 (en) Flow control for a Serial Peripheral Interface bus
US20090144508A1 (en) PCI Express Address Translation Services Invalidation Synchronization with TCE Invalidation
TWI506444B (zh) 改良mmio請求處置之處理器及方法
CN105095254B (zh) 一种实现数据一致性的方法及装置
US7783817B2 (en) Method and apparatus for conditional broadcast of barrier operations
KR101575070B1 (ko) 디바이스 기능에 대한 액세스를 제공하기 위한 장치, 시스템 및 방법
CN108132910A (zh) ***互连以及具有***互连的片上***
KR20120038282A (ko) 아이디 컨버터를 포함하는 버스 시스템 및 그것의 변환 방법
TWI447670B (zh) 具有高速傳輸功能之基板管理控制器及其傳輸方法
KR101498452B1 (ko) 복합 멀티-코어 및 멀티-소켓 시스템의 디버깅
EP3479402B1 (en) Method and apparatus for remote field programmable gate array processing
JP2003296267A (ja) バスシステム及びバスシステムを含む情報処理システム
US20090327564A1 (en) Method and apparatus of implementing control and status registers using coherent system memory
CN116483259A (zh) 一种数据处理方法以及相关装置
CN106940684B (zh) 一种按比特写数据的方法及装置
CN210380890U (zh) 一种Modbus设备的通讯***及SIS***
KR20200143922A (ko) 메모리 카드 및 이를 이용한 데이터 처리 방법
JP7363344B2 (ja) メモリ制御装置、および制御方法
JP2006155488A (ja) データ処理装置およびデータ処理方法
WO2011030498A1 (ja) データ処理装置及びデータ処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120925

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121225

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130221

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

Free format text: PAYMENT UNTIL: 20160301

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees