JP5185289B2 - 内容終了型dma - Google Patents

内容終了型dma Download PDF

Info

Publication number
JP5185289B2
JP5185289B2 JP2009547431A JP2009547431A JP5185289B2 JP 5185289 B2 JP5185289 B2 JP 5185289B2 JP 2009547431 A JP2009547431 A JP 2009547431A JP 2009547431 A JP2009547431 A JP 2009547431A JP 5185289 B2 JP5185289 B2 JP 5185289B2
Authority
JP
Japan
Prior art keywords
transfer
data
dma
circuit
pattern data
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
JP2009547431A
Other languages
English (en)
Other versions
JP2010517182A (ja
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2010517182A publication Critical patent/JP2010517182A/ja
Application granted granted Critical
Publication of JP5185289B2 publication Critical patent/JP5185289B2/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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • 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/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/32Handling requests for interconnection or transfer for access to input/output bus using combination of interrupt and burst mode transfer
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Description

背景
本発明は、一般に計算機システムにおけるダイレクトメモリアクセス(Direct Memory Access:DMA)回路に関し、特に、転送されているデータの値に応答してデータ転送を終了するDMAに関する。
現代の計算機システム(携帯用電子機器におけるそれらを含む)は、写真、グラフィックイメージ、ビデオ、オーディオなどを表現するデジタルデータのような重い量のデータを処理する。このデータは、入力/出力(I/O)の周辺機器からメモリの中へ、メモリからグラフィック・フレームバッファの中へ、メモリのあるエリアから別のエリアへ、のごとく(一般にデータソースからデータ送付先に対して)計算機システム内で転送されなければならない。プロセッサに負担をかけずに、システム内のデータ転送を遂行する既知の技法は、DMAコントローラとして知られているダイレクトメモリアクセス(DMA)回路を含むことである。
プロセッサは、DMAコントローラにおける制御レジスタに情報を書き込むことにより、あるいは、メモリの制御ブロックに書き込み、そして、DMAコントローラレジスタの内にそれらのポインタを置くことなどにより、ソースおよび宛先の情報(そのどちらかはメモリアドレスあるいは周辺のポートを含むことができる)、および転送カウントでDMAコントローラを初期化する。プロセッサからGOの指示またはコマンドを受信すると、DMAコントローラは、自律的にソースからデータを読み、宛先にそれを書き込み、データ単位の指定数が転送されるまでそのプロセスを繰り返す。最先端のDMAコントローラは、複数のチャンネルを含んでいて、異なるワードサイズを持つユニット間でデータを転送するためにオペレーションを分散/集約するような、多くのローレベルデータの転送タスクを処理することができる。さらに、DMA転送をチェーン(chain)することも知られている。チェーン動作において、DMAコントローラは、進行中のDMA転送の終了で始まる後続のDMA転送のための情報(例えば新しいソース、宛先、カウントなど)を供給されるか指図される。
プロセッサは、必ずしも計算機システム内の転送を必要とするデータの集合の長さを演繹的(a priori)に知ることができるとは限らない。例えば、文字ストリング(character string)(「Hello world」のような)をコピーするために、文字はそれぞれソース位置から検索され、レジスタに置かれ、ゼロ(C言語のストリング終了文字)と比較される。その比較が失敗する場合、文字は宛先ロケーションに書かれる。そして、次の文字は読まれ、比較される。プロセッサが文字ストリングにおけるゼロに遭遇する時、データ転送は完了する。これは、プロセッサ集約的なタスクであり、さらに、極めて大きい数のメモリーアクセスを含んでいるものである。ソースおよび/または宛先アドレスが、キャッシュされない場合、CPUは、特にメモリーアクセスがプロセッサ実行よりはるかに遅いシステムにおいて、メモリ操作が完了するのを待って相当な時間を費やすかもしれない。これはプロセッサの性能を著しく低下させる。
文字ストリングの長さが未知であるので、データ転送タスクは、一般に、従来のDMAコントローラに対する負荷軽減にならない。従来のDMAコントローラは、それらが転送するデータを検査する能力を持っていない、そして「盲目的に」ソースから宛先へデータの所定量を転送する。文字ストリングの長さは、各文字を既知のデータパターンと比較することにより決められる。この比較は、プロセッサにより従来どおりに行なわれる。プロセッサが、従来のDMAコントローラに対してデータ転送タスクの負荷を軽くするためには、それは、文字ストリング長を決めて、次に、DMA動作を公式化するように、連続的に文字を読み、転送カウントと比較しなければならないだろう。しかしながら、そうすることがデータ転送タスクの半分(読み取り)を行なうので、従来のDMAコントローラを備えたシステムにおけるプロセッサは、単に宛先に直接各文字を書き、ストリングの端を画定する既知のデータパターンが検出されるとき、そのプロセスを停止させる。
他のプロトコルは、複数の文字を持ったデータストリングで終了する。例えば、ハイパーテキスト・マークアップ言語(Hyper−Text Markup Language:HTML)において、確実なフォーマットあるいは処理を受信するためのストリングは、シーケンス</keyword>により終了する。それは、検出するべき複数個の逐次的な文字比較を必要とする。
概要
ここに開示され請求された1つ以上の実施形態において、内容終了型ダイレクトメモリアクセス(Content−Terminated Direct Memory Access:CT−DMA)回路は、未知の長さのデータのDMA転送を行ない、データの内容に基づいて転送を終了する。フィルタ判定基準(filter criteria)は、データ転送に先立ってCT−DMAに対して提供される。フィルタ判定基準は、転送データと比較されるパターンデータ、および、比較結果の解釈のための転送終了規則を含んでいる。CT−DMAは、フィルタ判定基準が満たされるまで、ソースからデータを読み、それを宛先に書く。
1つの実施形態は、CT−DMA回路に関する。その回路は、ソースからデータを読み、および/または宛先へデータ書込むように働くデータ転送インタフェースと、フィルタ判定基準を記憶するように働くメモリを含んでいる。CT−DMA回路は、さらに、転送データを1つ以上のフィルタ判定基準と比較するように働く比較器、および比較器の出力に応じてDMA転送を終了するように働くコントローラを含んでいる。
別の実施形態は、ソースから宛先へ未知の量のデータを転送する方法に関する。データは、ソースから連続的に読まれ、所定パターンデータと比較される。判定は、その比較に応じて転送を終了するべき時についてなされる。転送が終了するまで、データは宛先に連続的に書かれる。これらの方法ステップは、プロセッサの中で自律的に実行される。
さらに別の実施形態は、計算機システムに関する。そのシステムは、データを供給するように働くデータソース、およびデータ受信するように働くデータ宛先を含んでいる。システムは、またソースから宛先へDMAデータ転送を行なうように働き、さらに、転送データの1つ以上の値に応じてDMA転送を終了するように働く、CT−DMA回路を含んでいる。システムは、さらにCT−DMA回路を初期化するように働くプロセッサを含んでいる。
図1は、CT−DMA回路を含む計算機システムの機能ブロック図である。 図2は、CT−DMA回路におけるデータ比較回路の機能ブロック図である。 図3は、ソースから宛先へ未知のデータ量を転送する方法のフローダイアグラムである。
詳細な説明
1つ以上の実施形態に従って、内容終了型ダイレクトメモリアクセス(CT−DMA)回路は、ソースから宛先に対して未知の長さのデータを転送する、そして「フライトにおいて(in flight)」データにフィルタ判定基準を適用することにより、その転送を終了する。フィルタ判定基準は、転送されているデータと比較するべきパターンデータおよびその比較に応じて転送を終了するための規則を含んでいる。
図1は、数字10により一般的に示される、代表的な計算機システムを表す。計算機システム10は、プロセッサ12を含んでいる。それはレベル1(L1)キャッシュ14を含むことができる。技術において知られているように、プロセッサ12は、ストアードプログラム・マイクロプロセッサ、デジタル・シグナルプロセッサ(DSP)などを含み得る。L1キャッシュ14は、L2キャッシュ16により記憶階層において支援され得る。1つの実施形態において、L2キャッシュ16を含むメモリの一部は、密結合のメモリ(Tightly Coupled Memory:TCM)18としてプロセッサ12により利用される。TCM18は、記憶階層におけるメインメモリアドレス空間の一部であるが、プロセッサ12に対して物理的かつ論理的により密結合である。例えば、プロセッサはTCM18にアクセスするためにシステム・バス20に対して仲裁する必要はない。L2キャッシュ16およびCT−DMA26は、システム・バス20を介してメインメモリ22を読み書きする。TCM18および、例えば、NICカード、無線通信トランシーバー、ブルートゥース・インタフェースなどのような入力/出力(I/O)周辺機器24は、システム・バス20上のスレーブ・デバイスである。I/O周辺機器24は、計算機システム10の外から、および/または、その中へデータを転送することができる。
CT−DMA回路26は、システム・バス20上のマスタ・デバイスであり、それにより、それはメインメモリ22、TCM18およびI/O周辺機器24を読み書きすることができる。CT−DMA回路26は、I/O周辺機器24のデータポートに付加的にあるいは代わりに直接接続されてもよい。さらに、図1に示された実施形態において、CT−DMA回路26は、プロセッサ12にきっちりと統合され、(プロセッサ12とCT−DMA26の間のTCM18に対してアドレス・ビットを多重化するなどにより)TCM18に直接アクセスすることができる。
プロセッサ12による初期化に続いて、CT−DMA回路26は、計算機システム10内のソースから宛先に対しデータを転送し、データの1つ以上の値に応じて転送を終了する。1つの例示となる実施例として、プロセッサ12は、CT−DMA回路26に、メインメモリ22からTCM18の中へ未知の長さの文字ストリングを転送することを指示することができる。そこでプロセッサ12は文字ストリングに対してより効率的に動作することができる。
1つ以上の実施形態において、CT−DMA回路26は、転送されているデータに応じて、転送は完了していることを判定するとき、転送を終了し、直接あるいは割込みコントローラ28を介してプロセッサ12に割り込むことができる。他の実施形態において、CT−DMA回路26は、制御レジスタにおいてフラグをセットし、データ転送が完了していることを判定するためにフラグのステータスをポーリングすることをプロセッサ12に頼ることができる。他の実施形態において、CT−DMA回路26は、完了したデータ転送動作を、任意の特定のインプリメンテーションの要求または選択を満たすように当業者より容易に工夫することができるような様々な方法で、プロセッサ12に対して伝えることができる。
ここに使用されるように、データソースは、任意のメモリロケーション22、18、周辺機器24のデータポート、あるいは、CT−DMA回路26によりシステム・バス20を介して、または直接接続によりアクセス可能な他のデータソース、を表す。ここに使用されるように、データ宛先は、同様に任意のメモリ22、18あるいは周辺機器24を表す。さらに、データ宛先は、ヌル宛先(NULL destination)かもしれない。その場合には転送データは廃棄される。データは、文字ストリングの長さを決める(例えばC言語操作のstrlen)ような、様々な理由でヌル宛先に都合よく「転送」されてもよい。
図2は、代表的なCT−DMA回路26の1つの実施形態のデータ比較機能の態様を詳しく説明するために示された機能ブロック図である。図2は、任意の所定のCT−DMA回路26の実ハードウェアを表すようには意図されないことが注意される。さらに、図2は、CT−DMA回路26機能のサブセットを表しており、議論に対して密接な関係がない機能および多数のDMA回路は明瞭さのために図2から省略されている。
1つの実施形態において、CT−DMA回路26は、例として描かれた、8つの記憶位置(storage location)を含むファーストイン、ファーストアウト(FIFO)データ・バッファ30を含んでいる。技術において知られているように、記憶位置は、レジスタまたはメモリを含み、様々な使用可能なバッファ30のうちのいずれかとして構成されてもよい。記憶位置は、希望のまたは所要の任意の幅(例えばバイト、ハーフワード、ワード、など)であってもよい。そして、各々に記憶されたデータは、ここではデータの「単位(unit)」と呼ばれる。もちろん、バッファ30は、希望または要求に従い、8つより多くの、あるいはより少ない記憶位置を含んでもよい。CT−DMAデータ転送の間、ソースから読み込んだデータは、FIFO30へ入力され、比較操作の結果に依存して、宛先に書かれ得る。これらのデータは、ここでは転送データと呼ばれる。
CT−DMA回路26は、パターンデータストレージ32を含んでいる。プロセッサ12は、CT−DMAデータ転送を開始する前にパターンデータストレージロケーション32に前もって定義したデータパターンを書いておくことができる。図2に描かれた実施形態において、パターンデータストレージ32は、記憶位置(storage location)の数およびそれらのデータ幅の点からFIFO30を反映する。他の実施形態において、記憶位置の数は一致しなくてもよい。1つの実施形態において、FIFO30は、特に1つ以上の記憶位置を含むことができる。そして、パターンデータストレージ32は、FIFO30における数より大きな複数個の記憶位置を含むことができる。この場合、状態機械のようなコントロール回路は、FIFO30における転送データの各単位を、1より多くのデータパターン単位と連続的に比較することができる。1つの実施形態において、データ記憶位置の数がマッチしているか否かで、FIFO30とパターンデータストレージ32の間のデータ単位幅は異なることがあるかもしれない。例えば、パターンデータの1バイトは、例えばすべての転送データワードの同じバイト、あるいはすべてのデータ転送ワードの各バイト、などと比較され得る。これらのデータ比較手順は、プログラム可能であってよいし、フィルタ判定基準に含まれていてもよい。1つの実施形態において、アプリケーションのための特定パターンデータが知られている場合のように、パターンデータストレージ32は、1つ以上のハードワイヤードビットパターンを含むことができる。
転送データがFIFO30を通って流れると、それらは、n−ビット・比較器34(ただし、nはデータ単位幅(つまりFIFO30およびパターンデータ32エントリの幅)と一致する)において対応するパターンデータと比較される。比較器34の出力は、1つ以上の転送単位データとパターンデータの間の一致するものを検出するために相互に論理的ANDをとられる。1つの実施形態において、AND機能36は、図2に描かれるように、転送終了決定ロジック38に対して供給される個々の中間の出力と共に、順送りに伝えられる。転送終了決定ロジック38は、示された実施形態において、1から8までのデータ単位を含む、転送を終了する比較を検出することができる。例えば、転送終了規則は、転送を終了するために、特定の順番で、前もって定義した文字と一致させるために、文字ストリングにおいて8文字以内を必要とするかもしれない。
転送終了決定ロジック38が従う規則は、CT−DMA制御ロジック40に対してプロセッサ12により提供される。それは順に転送終了決定ロジック38を構成する。これらの転送終了規則は、パターンデータと共にここではフィルタ判定基準と呼ばれる。一般に、この独創的なCT−DMA回路26は、フィルタ判定基準の豊富なセットをサポートすることができ、広範囲の転送を終結する機能を提供する。下記のリストは、フィルタ判定基準およびデータ宛先の修正によってCT−DMA回路26の実施形態により提供される機能の少数の代表的な限定ではない例を提供する。いくつかの機能は、関連する機能により直接実装することができるC言語コマンドを含んでいる。
・前もって定義したキーにより終了されたデータ転送(strcpy);
・ヌル宛先:コピーは行なわれないか、あるいは廃棄される(strcmp);
・1つの転送の長さを決める(strlen) − 転送に対する出来事あるいはヌル宛先への転送によるカウントだけを行なうことのいずれか;
・最大長は転送に関係し得る(strnlen、strncpy、strncmp);
・複合単位キーにより終了されるデータ転送(HTMLタグ);
・異なるキー上の比較結果の論理的な結合(AND,OR);
・転送データとパターンデータは、所定の回数一致する;
・逆一致のケース(つまり、転送データがパターンデータと一致しないとき、転送を終了する)。
制御ロジック40は、さらに、内容終了型DMAの豊富なセットに加えて、従来のDMA転送機能も実装するために、様々なステータスレジスタ、カウンタおよびロジック(示されない)を含んでいる。例えば、アドレス発生回路42の制御により、制御ロジック40は、次のような、広範囲のCT−DMA転送機能をサポートすることができる:
・ソースおよび/または宛先アドレスのインクリメントまたは非インクリメント(例えば、ストリーミングデータ);
・異なるワード幅を持っているソースと宛先の間のデータを転送する操作の分散/集約を行う;
・転送を上昇させるか下降させること(つまり、連続するアドレスのインクリメントかディクリメント);
・ストライド設定(行/列の変換)、パターンを選択的に転送する、またはしないために、ヌル宛先を使用することを含んでいること
・内容に制御されるチェーンDMA転送。
チェーンDMA転送は、様々な方法で転送データの内容により制御され得る。例えば、現在のDMA動作において転送データの1つ以上の値が、後続のDMA動作のためにどのDMAチャネルを利用するか決めることができる。別の実施例として、ソースおよび/または宛先、ストライド、および/または後続のDMA動作に対するカウントが、転送データの値により決められ得る。1つの実施形態において、パターンデータに対する転送データの一致は、DMA制御パラメータ(ソース、宛先、など)を含んでいる異なるメモリロケーションにCT−DMAを向けることにより、後続のDMA動作を制御することができる。
図3は、プロセッサ12(左)およびCT−DMA回路26(右)の両方の観点から、ソースから宛先へ未知の量のデータを転送する方法のフローダイアグラムを描く。プロセッサ12が、ソースと宛先のアドレスまたは識別子、およびフィルタ判定基準(パターンデータおよび転送終了規則の両方を含む)、のような初期化情報をCT−DMA回路26に提供することにより転送を設定する時、その方法は始まる(ブロック100)。
これは、その情報をCT−DMA回路26上のレジスタおよび/またはパターンデータ記憶装置32に書くこと、または、代わりに、情報をメモリに書き、そしてCT−DMA回路26のレジスタにメモリロケーションへのポインタを書くことを含むことができる。
CT−DMA回路26は、対応して、直接あるいはメモリから読むことにより初期化情報を受け取る(ブロック102)。次に、プロセッサ12は、転送を始めるためにCT−DMA回路26にGO指示を送信する(ブロック103)。GO指示は、プロセッサ12とCT−DMA回路26間に信号を要求して、あるいは技術において既知の他の手段により、CT−DMA制御ロジック40の制御レジスタにフラグを書き込むことを含むことができる。
CT−DMA回路26は、ソース(メモリロケーションあるいは周辺のポートを含むことができる)からFIFO30のようなバッファに、データ単位を読み込むことにより、転送を始める(ブロック104)。読まれたデータ単位は、ソースデータ・インタフェースの幅に依存して、ソースに向けられた1つ以上のリード動作を必要とするかもしれない。CT−DMA回路26は、FIFO30における転送データを、プロセッサ12により供給されるパターンデータ32と比較する(ブロック106)。CT−DMA回路26における転送終了決定ロジック38は、比較の結果に対してプロセッサ12により供給される転送終了規則を適用する(ブロック108)。転送終了決定ロジック38が、転送をまだ終了するべきでないことを示す場合(ブロック110)、CT−DMA回路26は、宛先メモリアドレスまたは周辺のポートに1単位のデータを書く(ブロック112)。それは、宛先に向けられた1つ以上の書込み操作を必要とするかもしれない。次に、CT−DMA回路26は、転送カウントを(カウンタをインクリメントかディクリメントするなどにより)更新し(ブロック114)、ソースから別の転送単位データを読む(ブロック104)。
CT−DMA回路26は、(転送データとパターンデータ比較結果に転送終了規則を適用することに基づいて)転送が終了するべきことを判定したとき、それはプロセッサ12に通知する。上に説明されたように、この通知は、割り込みを要求すること、フラグあるいは他の前もって定義したデータを(制御ロジック40におけるステータスレジスタあるいはメモリ22における前もって定義した位置のような)前もって定義した位置に対して書くこと、あるいは他の告知手段を含むことができる。
1つ以上の実施形態において、プロセッサ12が、データ転送の一部としての終了キーを保守することを望むとき、転送終了決定(ブロック110)は、CT−DMA回路26にソースからデータを読むこと(ブロック104)を止めさせることができるが、終了キーが転送されるまで、宛先に転送データを書くこと(ブロック112)、および、転送カウントを更新する(ブロック114)ことを続けてもよい。いくつかの実施形態において、終了の挙動はプログラム可能である。すなわち、転送の一部として終了キーを書くべきであるかという決定は、初期化情報の一部としてプロセッサ12により指定される。
図3における破線は、プロセッサ12とCT−DMA回路26の間の同期を描く。プロセッサ12は、GO指示を発行する(ブロック103)時からCT−DMA回路26が、転送が完了していることをプロセッサ12に通知する(ブロック116)まで、プロセッサ12は、自由に他のタスク(ブロック118)を実行するか、あるいは他のタスクがペンディングでない場合、休眠モードに入る。転送は完了しているというCT−DMA回路26からの通知を受け取る(ブロック116)と、プロセッサは、宛先で転送データを処理する(ブロック120)か、あるいは他の場合には、データ転送後の動作を始めることができる。
CT−DMA回路26の実施形態は、未知の長さのデータ転送ルーチン(および文字ストリング長を決めるような関連操作)を実行し、他のタスクを行なうためにプロセッサ12を解放することにより、プロセッサの性能を著しく改善することができる。さらに、CT−DMA回路26は、ソースから読まれる各データ単位および宛先へ書く各データ単位に関連する、L1キャッシュ14およびL2キャッシュ16における繰り返されるルックアップの回避などにより、パワーを節約することができる。
本発明は、当然、その発明の本質的特質から外れずに、ここで特に明らかにされたもの以外の方法で実行することができる。この実施形態は、すべての態様において、例示であり、そして限定しないものとして、考慮されるべきものである。そして、添付された請求項の意味および等価な範囲内に生じるすべて変更は、そこに包含されるように意図される。
以下に本件出願当初の特許請求の範囲に記載された発明を付記する。
[C1]少なくとも1つのデータ転送インタフェースと、フィルタ判定基準を記憶するように働くメモリと、転送データを1つ以上のフィルタ判定基準と比較するように働く比較器と、前記比較器の出力に応じてDMA転送を終了するように働くコントローラ、を含む、内容終了型ダイレクトメモリアクセス(CT−DMA)回路。
[C2]前記データ転送インタフェースは、システム・バス・インタフェースを含む、C1のCT−DMA回路。
[C3]前記データ転送インタフェースは、別の回路に対して専用のデータインタフェースを含む、C1のCT−DMA回路。
[C4]前記メモリは、1つ以上のレジスタを含む、C1のCT−DMA回路。
[C5]前記レジスタは、プロセッサにより実行されるコプロセサ・レジスタ・アクセス命令を介してアクセスされる、C4のCT−DMA回路。
[C6]前記レジスタは、メモリマッピングされている、C4のCT−DMA回路。
[C7]メモリは、ハードワイヤードのデータパターンを含む、C1のCT−DMA回路。
[C8]前記フィルタ判定基準は、1単位以上のパターンデータを含む、そして、前記比較器は1単位以上の転送データを前記パターンデータと比較するように働く、C1のCT−DMA回路。
[C9]前記比較器は、1単位の転送データを2単位以上のパターンデータと比較するように働く、C8のCT−DMA回路。
[C10]前記コントローラは、1単位以上の転送データが前記パターンデータと一致するとき、DMA転送を終了するように働く、C8のCT−DMA回路。
[C11]前記コントローラは、1単位以上の転送データが前記パターンデータと一致しないとき、DMA転送を終了するように働く、C8のCT−DMA回路。
[C12]前記コントローラは、1単位以上の転送データが前記パターンデータと所定回数一致するとき、DMA転送を終了するように働く、C8のCT−DMA回路。
[C13]前記コントローラは、割り込みを要求することによりDMA転送を終了するように働く、C1のCT−DMA回路。
[C14]前記コントローラは、所定の位置に所定の値を書くことによりDMA転送を終了するように働く、C1のCT−DMA回路。
[C15]前記コントローラは、さらに、前記比較器の出力に応じて別のDMA転送を始めるように働く、C1のCT−DMA回路。
[C16]前記比較器の出力に応じて別のDMA転送を始めることは、前記比較器の出力に応じて決定されたメモリ位置からDMA制御パラメーターを読むことを含む、C15のCT−DMA回路。
[C17]ソースから連続的に転送データを読むことと、転送データを所定パターンデータと比較することと、前記比較に応じていつ転送を終了するか決めることと、前記転送を終了するまで、連続的に、宛先に転送データを書くこと、そこにおいて、これらの方法ステップは、プロセッサのなかで自律的に行なわれる、を含む、ソースから宛先へ未知の量のデータを転送する方法。
[C18]前記比較に応じていつ転送を終了するかを決めることは、1単位以上の転送データが前記パターンデータと一致するとき、転送を終了することを決めることを含む、C17の方法。
[C19]前記比較に応じていつ転送を終了するか決めることは、1単位以上の転送データが前記パターンデータと一致しないとき、転送を終了することを決めることを含む、C17の方法。
[C20]前記比較に応じていつ転送を終了するか決めることは、1単位以上の転送データが前記パターンデータと所定の回数一致するとき、転送を終了することを決めることを含む、C17の方法。
[C21]さらに受信フィルタ判定基準を含む、C17の方法。
[C22]前記フィルタ判定基準は前記パターンデータを含む、C21の方法。
[C23]前記フィルタ判定基準は、さらに、転送データとパターンデータの比較を結合するための規則を含む、C22の方法。
[C24]データを供給するように働くデータソースと、データを受信するように働くデータ宛先と、ソースから宛先へデータ転送を行なうように働き、そして、さらに転送データの1つ以上の値に応じてデータ転送を終了するように働く、内容終了型ダイレクトメモリアクセス(CT−DMA)回路と、前記CT−DMA回路を初期化するように働くプロセッサ、を含む計算機システム。
[C25]前記プロセッサは、前記CT−DMA回路の1つ以上のメモリロケーションにフィルタ判定基準を書くことにより前記CT−DMA回路を初期化する、C24のシステム。
[C26]前記CT−DMA回路は、転送データをフィルタ判定基準と比較し、そして前記比較に応じてデータ転送を終了する、C24のシステム。
[C27]前記プロセッサは、メモリにフィルタ判定基準を書き込み、そして前記メモリへのポインタを前記CT−DMAに供給することにより、CT−DMA回路を初期化する、C24のシステム。

Claims (33)

  1. 転送データを受信し書き込み、そして、フィルタ判定基準を受信する少なくとも1つのデータ転送インタフェースであって、前記フィルタ判定基準は、パターンデータと転送終了規則を含み、前記転送終了規則は、前記パターンデータと一致する前記転送データの単位の数を示している、データ転送インタフェースと;
    前記フィルタ判定基準を記憶するように働くメモリと;
    データバスに対してアクセスを有する比較回路であって、前記比較回路は、複数の比較器と複数のロジックゲートを含んでおり、前記比較器は、前記転送データの単位を前記パターンデータと比較するように働き、前記複数のロジックゲートは、前記転送データの前記単位のうちいくつが前記パターンデータに一致するかを示すマルチビット比較結果を提供するように構成されている、比較回路と;
    前記比較結果に応じてDMA転送を終了するように働く、転送終了決定ロジック回路および制御ロジック回路;
    を含む、内容終了型ダイレクトメモリアクセス(CT−DMA)回路。
  2. 前記比較回路は、各転送データの単位を2単位以上のパターンデータと比較するように働く、請求項1のCT−DMA回路。
  3. 前記転送終了規則は、いずれの転送データの単位も前記2単位以上のパターンデータと一致しないときに、満たされる、請求項2のCT−DMA回路。
  4. 前記転送終了規則は、少なくとも1の転送データの単位が前記2単位以上のパターンデータと複数回数一致するときに、満たされる、請求項2のCT−DMA回路。
  5. 前記制御ロジック回路は、割り込みを要求することにより前記DMA転送を終了するように働く、請求項1のCT−DMA回路。
  6. 前記制御ロジック回路は、前記メモリの所定の位置にプログラム可能な値を書くことにより前記DMA転送を終了するように働く、請求項1のCT−DMA回路。
  7. 前記制御ロジック回路は、さらに、別のDMA転送を始めるように働く、請求項1のCT−DMA回路。
  8. 別のDMA転送を始めることは、メモリ位置からDMA制御パラメーターを読むことを含む、請求項7のCT−DMA回路。
  9. プロセッサが、複数の比較器と前記複数の比較器の出力に基づいて比較結果を生成するため複数のロジックゲートとを含む内容終了型ダイレクトメモリアクセス(CT−DMA)回路に対してフィルタ判定基準を送信することであって、前記フィルタ判定基準は、パターンデータと転送終了規則を含み、前記転送終了規則は、複合単位キーが比較に使用されるべきかどうかを示している、フィルタ判定基準を送信することと;
    前記プロセッサが、前記CT−DMA回路に対して転送データを連続的に送信することと;
    記CT−DMA回路の制御ロジック回路および転送終了決定回路が、前記転送データのうちいくつの単位が前記パターンデータの単位と一致するかを示している前記比較結果を受信することと、前記比較結果が、前記転送データ前記複合単位キーと一致するということを示している、と決定することによって、転送終了イベントを識別することに応じて、前記プロセッサが、前記CT−DMA回路から終了信号を受信することと;
    を含む、ソースから宛先へデータを転送する方法。
  10. 前記転送終了規則は、前記複合単位キーが前記転送データに一致するときに、満たされる、請求項9の方法。
  11. 前記フィルタ判定基準は、単一のプログラム可能なキーの使用を示しており、そして、前記単一のプログラム可能なキーは前記転送データとプログラム可能な回数一致するということを示す、請求項9の方法。
  12. フィルタ判定基準を受信するように働き、そこにおいて、前記フィルタ判定基準は、パターンデータと転送終了規則を含み、前記転送終了規則は、前記パターンデータに一致する転送データの単位の数を示している;
    さらに、1組のロジックゲートに対して出力を提供する複数の比較器を含む比較回路を使用して前記パターンデータと転送データを比較するように働く内容終了型ダイレクトメモリアクセス(CT−DMA)回路;
    を含み、そこにおいて、前記1組のロジックゲートは、前記複数の比較器のうちいくつが一致状態を示すかを示している比較結果を生成し、前記比較結果は、転送終了決定回路と制御ロジック回路において受信され、前記転送データが前記転送終了規則を満たすかどうかを決定する数と比較され、前記CT−DMA回路は、前記転送データが前記転送終了規則を満たすということを示している前記比較結果に応じてデータ転送を終了するようにさらに働いており、前記フィルタ判定基準は、前記CT−DMA回路が前記転送データを受信する前に前記CT−DMA回路で受信される、
    計算機システム。
  13. プロセッサは、前記CT−DMA回路の1つ以上のメモリロケーションに前記フィルタ判定基準を書く、請求項12のシステム。
  14. 前記プロセッサは、メモリに前記フィルタ判定基準を書き込み、そして前記メモリへのポインタを前記CT−DMAに供給することにより、前記CT−DMA回路を初期化する、請求項12のシステム。
  15. アドレスデータは、デコーダに対して提供され、前記転送データは、ファーストイン、ファーストアウト(FIFO)バッファに対して提供される、請求項1のCT−DMA回路。
  16. 前記比較回路は、n−ビット・比較器を含み、nは、前記FIFOバッファの幅と一致する、請求項15のCT−DMA回路。
  17. nは、前記FIFOバッファにおける記憶位置の数と一致する、請求項16のCT−DMA回路。
  18. 前記n−ビット・比較器の出力は、1の転送データの単位と2単位以上のパターンデータとの間で一致を検出するために、合わせて論理的ANDをとられる、請求項16のCT−DMA回路。
  19. AND機能は、前記転送終了決定ロジック回路に対して供給される個々の中間の出力と共に、順送りに伝えられる、請求項18のCT−DMA回路。
  20. パターンデータストレージは、前記FIFOバッファにおける記憶位置の数より大きな複数個の記憶位置を含む、請求項16のCT−DMA回路。
  21. 少なくとも2つの異なる転送終了規則から前記転送終了規則を選択するように働くプロセッサ、をさらに含む請求項1のCT−DMA回路。
  22. 前記転送終了規則は、論理機能である、請求項21のCT−DMA回路。
  23. 前記転送データは、文字ストリングを含む、請求項1のCT−DMA回路。
  24. 前記CT−DMA回路に対して1以上の第2のフィルタ判定基準を送信すること、をさらに含み、そこにおいて、前記第2のフィルタ判定基準は、前記パターンデータとは異なる第2のパターンデータと、前記転送終了規則とは異なる第2の転送終了規則と、を含む、請求項9の方法。
  25. 前記転送終了規則は、異なるキーで実行されるべき論理機能を識別する、請求項9の方法。
  26. 前記転送終了規則は、異なるキーで実行されるべき論理機能を識別し、前記論理機能は、OR機能である、請求項12のシステム。
  27. 前記転送終了規則は、異なるキーで実行されるべき論理機能を識別し、前記論理機能は、AND機能である、請求項12のシステム。
  28. 第1の転送終了規則は、前記AND機能が満たされるときに満たされる、請求項27のシステム。
  29. 第2の転送終了規則は、前記AND機能が満たされないときに満たされる、請求項28のシステム。
  30. 内容終了型ダイレクトメモリアクセス(CT−DMA)回路において転送データとフィルタ判定基準を受信することと、そこにおいて、前記フィルタ判定基準は、パターンデータと転送終了規則とを含み、前記転送終了規則は、前記パターンデータの単位に一致する前記転送データの単位の数を示している;
    メモリにおいて前記フィルタ判定基準を保存することと;
    比較結果を生成するために前記パターンデータとデータバスからの前記転送データを比較することと、そこにおいて、1セットの比較器は、前記パターンデータの単位と前記転送データの単位を比較し、1セットのロジックゲートは、前記比較器の出力に基づいて前記比較結果を生成する;
    前記転送データの単位と前記パターンデータの単位の一致の数が前記数を満たすかを決定するために、転送終了決定ロジック回路と制御ロジック回路において前記比較結果に対して前記転送終了規則を適用することと、そこにおいて、前記転送データを受信すること、前記転送データを比較すること、そして、前記転送終了規則を適用することは、前記転送終了規則が満たされるまで反復的に実行される;
    前記転送終了規則が満たされるということが検出されると、前記転送終了決定ロジック回路に応答して前記制御ロジック回路を介してDMA転送を終了することと;
    を含む方法。
  31. 各転送データの単位を2単位以上のパターンデータと比較すること、をさらに含む請求項30の方法。
  32. 前記転送終了規則は、いずれの転送データの単位も前記2単位以上のパターンデータと一致しないときに、満たされる、請求項31の方法。
  33. 前記転送終了規則は、少なくとも1の転送データの単位が前記2単位以上のパターンデータと所定回数一致するときに、満たされる、請求項31の方法。
JP2009547431A 2007-01-24 2008-01-24 内容終了型dma Expired - Fee Related JP5185289B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/626,414 US7934025B2 (en) 2007-01-24 2007-01-24 Content terminated DMA
US11/626,414 2007-01-24
PCT/US2008/051965 WO2008092044A2 (en) 2007-01-24 2008-01-24 Content-terminated dma

Publications (2)

Publication Number Publication Date
JP2010517182A JP2010517182A (ja) 2010-05-20
JP5185289B2 true JP5185289B2 (ja) 2013-04-17

Family

ID=39366882

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009547431A Expired - Fee Related JP5185289B2 (ja) 2007-01-24 2008-01-24 内容終了型dma

Country Status (8)

Country Link
US (1) US7934025B2 (ja)
EP (1) EP2126710B1 (ja)
JP (1) JP5185289B2 (ja)
KR (1) KR101064101B1 (ja)
CN (1) CN101589377B (ja)
AT (1) ATE540362T1 (ja)
TW (1) TW200842593A (ja)
WO (1) WO2008092044A2 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7831746B2 (en) * 2007-03-13 2010-11-09 Sgi International, Inc. Direct memory access engine for data transfers
JP4985599B2 (ja) * 2008-09-18 2012-07-25 Necエンジニアリング株式会社 Dma転送制御システム
US8055816B2 (en) * 2009-04-09 2011-11-08 Micron Technology, Inc. Memory controllers, memory systems, solid state drives and methods for processing a number of commands
US20110093099A1 (en) * 2009-10-16 2011-04-21 Newport Controls Controller system adapted for spa
US8589603B2 (en) * 2010-08-30 2013-11-19 International Business Machines Corporation Delaying acknowledgment of an operation until operation completion confirmed by local adapter read operation
JP5635621B2 (ja) * 2010-09-10 2014-12-03 株式会社日立製作所 ストレージシステム及びストレージシステムのデータ転送方法
EP2876559B1 (en) * 2010-09-21 2016-04-27 Mitsubishi Electric Corporation DMA controller and data readout device
US11797474B2 (en) * 2011-02-17 2023-10-24 Hyperion Core, Inc. High performance processor
US9454367B2 (en) * 2012-03-15 2016-09-27 International Business Machines Corporation Finding the length of a set of character data having a termination character
US8943239B2 (en) 2012-07-30 2015-01-27 Qualcomm Incorporated Data snooping direct memory access for pattern detection
US10049061B2 (en) * 2012-11-12 2018-08-14 International Business Machines Corporation Active memory device gather, scatter, and filter
CN104813306B (zh) * 2012-11-21 2017-07-04 相干逻辑公司 具有散布处理器dma‑fifo的处理系统
DE102013109978A1 (de) * 2013-09-11 2015-03-12 Technische Universität Dresden Verfahren und Vorrichtung zum Vor-Auswählen, Filtern und Verteilen von Daten in Datenbank-Management-Systemen
JP6205386B2 (ja) * 2015-05-18 2017-09-27 長瀬産業株式会社 半導体装置及び情報書込/読出方法
US10599208B2 (en) 2015-09-08 2020-03-24 Toshiba Memory Corporation Memory system and controller

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6072057A (ja) * 1983-09-28 1985-04-24 Nec Corp Dmaコントロ−ラ
JPS6426964A (en) * 1987-07-23 1989-01-30 Fujitsu Ltd Memory writing device for code data
JPH03156659A (ja) * 1989-11-15 1991-07-04 Hitachi Ltd ダイレクトメモリアクセスコントローラ
JPH0535656A (ja) * 1991-07-30 1993-02-12 Oki Electric Ind Co Ltd データ検索方式
JPH08287003A (ja) * 1995-04-11 1996-11-01 Mitsubishi Electric Corp Dmaコントローラ
US5784390A (en) * 1995-06-19 1998-07-21 Seagate Technology, Inc. Fast AtA-compatible drive interface with error detection and/or error correction
US6081852A (en) * 1996-04-26 2000-06-27 Texas Instruments Incorporated Packet data transferring system for autonomously operating a DMA by autonomous boot mode select signal wherein the DMA is enabled to at least one program control list
US6185634B1 (en) * 1996-09-27 2001-02-06 Emc Corporation Address triggered DMA controller with an indicative signal including circuitry for calculating a new trigger address value based on the sum of the current trigger address and the descriptor register data with a trigger address register
US6157971A (en) * 1998-06-02 2000-12-05 Adaptec, Inc. Source-destination re-timed cooperative communication bus
JP3765931B2 (ja) * 1998-10-15 2006-04-12 富士通株式会社 バッファ制御方法及びバッファ制御装置
US6611879B1 (en) * 2000-04-28 2003-08-26 Emc Corporation Data storage system having separate data transfer section and message network with trace buffer
US6681273B1 (en) * 2000-08-31 2004-01-20 Analog Devices, Inc. High performance, variable data width FIFO buffer
US6901468B1 (en) * 2000-09-27 2005-05-31 Emc Corporation Data storage system having separate data transfer section and message network having bus arbitration
US6775719B1 (en) * 2000-09-28 2004-08-10 Intel Corporation Host-fabric adapter and method of connecting a host system to a channel-based switched fabric in a data network
US6831916B1 (en) * 2000-09-28 2004-12-14 Balaji Parthasarathy Host-fabric adapter and method of connecting a host system to a channel-based switched fabric in a data network
GB2377139A (en) 2001-06-29 2002-12-31 Zarlink Semiconductor Ltd Network gateway utilising DMA controller to transfer data between buffers
US6981073B2 (en) * 2001-07-31 2005-12-27 Wis Technologies, Inc. Multiple channel data bus control for video processing
US6754733B2 (en) * 2001-08-23 2004-06-22 Texas Instruments Incorporated Shared memory architecture for increased bandwidth in a printer controller
US6904473B1 (en) 2002-05-24 2005-06-07 Xyratex Technology Limited Direct memory access controller and method of filtering data during data transfer from a source memory to a destination memory
US20040153911A1 (en) * 2002-12-24 2004-08-05 Alon Regev Testing of a CAM
US7200688B2 (en) 2003-05-29 2007-04-03 International Business Machines Corporation System and method asynchronous DMA command completion notification by accessing register via attached processing unit to determine progress of DMA command
JP4373255B2 (ja) 2004-03-23 2009-11-25 富士通株式会社 ダイレクトメモリアクセス制御装置および方法
JP2005149519A (ja) * 2004-12-14 2005-06-09 Ricoh Co Ltd 情報処理装置
JP4972932B2 (ja) * 2005-12-26 2012-07-11 富士通株式会社 メモリアクセス装置
US7721018B2 (en) * 2006-08-24 2010-05-18 Microchip Technology Incorporated Direct memory access controller with flow control
US20080140963A1 (en) * 2006-12-11 2008-06-12 Thomason Ronald G Methods and systems for storage system generation and use of differential block lists using copy-on-write snapshots
US8117475B2 (en) * 2006-12-15 2012-02-14 Microchip Technology Incorporated Direct memory access controller

Also Published As

Publication number Publication date
CN101589377B (zh) 2012-05-23
EP2126710A2 (en) 2009-12-02
TW200842593A (en) 2008-11-01
EP2126710B1 (en) 2012-01-04
ATE540362T1 (de) 2012-01-15
KR20090102870A (ko) 2009-09-30
WO2008092044A2 (en) 2008-07-31
WO2008092044A3 (en) 2008-12-18
JP2010517182A (ja) 2010-05-20
KR101064101B1 (ko) 2011-09-08
CN101589377A (zh) 2009-11-25
US7934025B2 (en) 2011-04-26
US20080177909A1 (en) 2008-07-24

Similar Documents

Publication Publication Date Title
JP5185289B2 (ja) 内容終了型dma
TWI229259B (en) A method and related apparatus and computer program product for distributed memory control and bandwidth optimization
US9696942B2 (en) Accessing remote storage devices using a local bus protocol
JP4225851B2 (ja) データ処理装置用トレース要素生成システム
JP5532268B2 (ja) 装置のエンディアンモードを管理するためのシステムおよび方法
CN100555257C (zh) 处理页面复制期间的dma操作的存储控制器和方法
US7433977B2 (en) DMAC to handle transfers of unknown lengths
JPH08506674A (ja) ホスト割込み信号およびホスト指示信号の管理を行うネットワーク・アダプタ
US20070162637A1 (en) Method, apparatus and program storage device for enabling multiple asynchronous direct memory access task executions
US20040186931A1 (en) Transferring data using direct memory access
WO2004109432A2 (en) Method and apparatus for local and distributed data memory access ('dma') control
JP2002244881A (ja) 順序外データのトレーシング
JPH02227765A (ja) デジタル・コンピユータのデータ転送装置
JP2006338538A (ja) ストリームプロセッサ
WO2023160192A1 (zh) 一种用于总线的互联装置
CN111752607A (zh) 用于处理器中的批量寄存器访问的系统、装置和方法
TWI813001B (zh) 加速比較函式執行的方法及加速比較函式執行的系統
WO2004088461A2 (en) Local emulation of data ram utilizing write-through cache hardware within a cpu module
US6718405B2 (en) Hardware chain pull
US6269360B1 (en) Optimization of ordered stores on a pipelined bus via self-initiated retry
TWI792500B (zh) 處理程式語言函數的裝置及方法
EP3803610A1 (en) Direct memory access controller
US7111301B1 (en) Request and completion queue load balancing
JPH1011387A (ja) 情報処理装置
US20020060936A1 (en) Process for interfacing a microprocessor with a packet based device and respective system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110223

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110301

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110531

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110607

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110701

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110708

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110801

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120327

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120626

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120703

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120827

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120903

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120927

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130117

R150 Certificate of patent or registration of utility model

Ref document number: 5185289

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20160125

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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