[go: up one dir, main page]

JP4042856B2 - クロックドメイン交差fifo - Google Patents

クロックドメイン交差fifo Download PDF

Info

Publication number
JP4042856B2
JP4042856B2 JP2003541195A JP2003541195A JP4042856B2 JP 4042856 B2 JP4042856 B2 JP 4042856B2 JP 2003541195 A JP2003541195 A JP 2003541195A JP 2003541195 A JP2003541195 A JP 2003541195A JP 4042856 B2 JP4042856 B2 JP 4042856B2
Authority
JP
Japan
Prior art keywords
data
clock
source
clock domain
storage element
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
JP2003541195A
Other languages
English (en)
Other versions
JP2005507608A (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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips NV
Koninklijke Philips Electronics NV
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 Koninklijke Philips NV, Koninklijke Philips Electronics NV filed Critical Koninklijke Philips NV
Publication of JP2005507608A publication Critical patent/JP2005507608A/ja
Application granted granted Critical
Publication of JP4042856B2 publication Critical patent/JP4042856B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/005Correction by an elastic buffer
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2205/00Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F2205/10Indexing scheme relating to groups G06F5/10 - G06F5/14
    • G06F2205/102Avoiding metastability, i.e. preventing hazards, e.g. by using Gray code counters
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0008Synchronisation information channels, e.g. clock distribution lines

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Static Random-Access Memory (AREA)
  • Communication Control (AREA)
  • Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
  • Information Transfer Systems (AREA)

Description

本デバイスは、概してデータ通信、更に特にはクロックドメイン境界部間でデータを転送するための装置及び方法に関する。
より複雑な回路に対して増大される需要は、シリコンウエハの小さな領域上における大規模集積回路の製作を通じて実現されている重要な成果をもたらしてきた。当該複雑な回路は、データのシーケンスで動作すると共にそのデータを更なる処理のために伝送する、機能定義されたブロック(functionally−defined block)としてしばしば設計される。当該機能定義されたブロックからのこの通信は、個々の集積回路(又は“チップ”)間、同一チップ内、及びより離れて位置されている通信回路装置とシステムとの間で少量又は多量のデータで伝送され得る。構成にかかわらず、前記通信は通常、データの完全性(data integrity)が維持されることと、チップセット設計が、実現スペース及び可能な動作電力に関する実際的な制限に敏感であることとを保証するために、密に制御されたインタフェイス(closely−controlled interface)を必要とする。
増大される回路の複雑さに伴い、データが回路ブロック間で伝送される速度を増加させることに対する相応の需要がもたらされている。当該高速通信用途の多くは、複数のデータビットがパラレル通信パスを介して同時に送信されるパラレルデータ相互接続送信(parallel data interconnect transmission)を使用して実現され得る。当該“パラレルバス(parallel bussing)”は、高いデータレートのデータ伝送を実現するためによく受け入れられる手法である。
通常のシステムは、例えばケーブル及び他の相互接続部の形態で、及び/又はチップ上の内部バスを介して、パラレルデータバスにインタフェイスすると共にパラレルデータバスを介して通信する複数のモジュール(すなわち一つ又はそれより多くの共同で機能するチップ(cooperatively−functioning chip))を含み得る。送信モジュールは、送信モジュール上のクロックに同期してバスを介してデータを送信する。この態様において、パラレル信号線における遷移(transition)により、送信モジュールは互いに、及び/又は送信モジュールにおけるクロックに同期した関係となる。パラレルデータ相互接続部の他端部において、受信モジュールはパラレルデータバス上のデータを受信する。当該システムにおいて、受信信号(及び適用可能な場合、受信クロック)は、適切なデータ再生をもたらすために、特定の位相関係を有するべきである。
今日の多くの集積回路(IC)は、一つより多くのクロックドメインを含んでおり、それ故にデータ送信モジュールは第一のクロック周波数で、ある一つのクロックドメインにおいて動作し得る一方、データ受信モジュールは、異なる(及びおそらくは非同期の)第二のクロック周波数で他のクロックドメインにおいて動作している。クロックドメイン間のインタフェイスは、クロックドメイン境界部(clock domain boundary)又は情報が前記境界部を交差するクロックドメイン交差部(clock domain crossing)である。クロック信号パスの距離は通常、許容限度内にクロック信号“スキュー(skew)”効果を限定するように制限される。それ故にクロックドメインは概してICの密集した起伏のある領域(compact geographical region)と互いに関係している。
送信及び受信モジュールが異なるクロックドメインにもたらされている場合、データがある一つのクロックドメインに送信される瞬間のレートは、データが他のドメインにおいて使用(すなわち消費)される瞬間のレートと一致していない。データレートの差に対処するために、従来からクロックドメイン間で別個のバッファリングデバイス(buffering device)が使用されている。データはソースドメイン(すなわち書き込み)クロック(source domain clock)によってバッファリングデバイスにクロック入力され、受信ドメイン(すなわち読み出し)クロックによってバッファデバイスからクロック出力される。
従来のバッファデバイスは、データ、アドレス、及び書き込みイネーブル(write−enable)入力が、書き込みクロックに対して、ある一定のセットアップ及びホールドタイミングの要求仕様に合っていることを必要とし、記憶要素は、必要とされるタイミング関係を保持するために、書き込みクロックドメインの近くに位置されることが必要とされる。同時に、従来のバッファデバイスからの出力(読み出し)データは通常、読み出しアドレスが変更された後、あるゼロでない遅延と共に有効(valid)となる。読み出しクロック周波数が極端に低くない場合、読み出しアドレスカウンタが、バッファデバイスの内部の多重化機能部(multiplexing function)の近くに位置されるべきである。それ故にバッファデバイスは同時に、データの完全性を保証するために読み出しクロックドメインの近くに位置されなければならない。通常、バッファデバイスはクロックドメイン境界部の非常に近いところに物理的に位置されるので、何れのクロックドメインも拡張(extend)され過ぎることはない。バッファデバイスをクロックドメインのうちの一つに位置させることは、バッファデバイスに達するようにクロック信号を他のクロックドメインから“外部(foreign)”クロックドメインに拡張することを必要としている。この実施により、拡張され過ぎたクロック信号に対するスキューの問題が増大させされる。
スキューは、何れかの二つの信号の間の遅延期間又はオフセット期間(time delay or offset)である。出力先(destination)における、アドレス/データ信号とクロック信号との間、及び送信データ信号自身の間の、予想される量のスキュー期間がしばしばもたらされる。スキューは、例えばパラレル相互接続部の信号線の容量性及び誘導性の負荷によってもたらされる伝送遅延と、入力/出力ドライバソース(driver source)における変動と、符号間干渉(intersymbol interference)と、伝送線のインピダンス及び長さにおける変動とを含む複数の現象によってもたらされ得る。どの現象がスキューをもたらすかにかかわらず、その現象により、通信されるデータ及び、多くの用途において、全通信システムに対して深刻な完全性の問題がもたらされる。
複数のクロックドメインを使用して集積回路を実現することは様々な理由により好ましい。従って、クロックドメイン間のパラレルバスを介するデータ通信を改善することにより、より実用的且つ高速なパラレルバス用途が可能となる。これにより今度は、スキューをもたらす現象(skew−causing phenomena)が存在する状態でデータの完全性が保持される一方で、高速回路に対する需要が直接満たされ得る。本発明の様々な態様は、上記の欠点に対処すると共に、更に他の用途に対しても有用な通信装置及び方法をもたらす。
本発明は、ソースクロックドメインから、ソースクロックドメインと異なる周波数で動作する受信クロックドメインにデータを伝送するための回路及び方法に向けられる。本発明は、複数の実現例及び用途において例示され、そのうちのいくつかが以下にまとめられている。
本発明の実施例によれば、ソースクロックドメインから非同期の受信クロックドメインにデータを伝送するための方法がもたらされる。ソースクロックドメインにおいて、書き込みアドレス情報が前記データに結びつけられる。クロック生成器(clock generator)は、ソースクロックドメインクロックに同期して送信クロック信号を生成させる。データ及び結びつけられた書き込みアドレス情報は、送信クロック信号と共に、受信クロックドメインに送信される。受信クロックドメインにおいて、データは、結びつけられた書き込みアドレス情報に対応する記憶要素を示すアドレスに書き込まれる。前記データは、伴う送信クロック信号に同期して記憶要素にクロック入力される。しかしながら、前記データは、受信クロックドメインに同期して記憶要素から読み出される。
本発明の一つの態様によれば、受信クロックドメインクロックは、ソースクロックドメインクロックよりも遅い周波数で動作する。本発明の他の態様によれば、データ制御信号は、ソースクロックドメインからデータ記憶要素に通信され、前記データは、データ制御信号に応答して記憶要素に受信される。
本発明の他の実施例によれば、ソースクロックドメインから非同期受信クロックドメインにデータを伝送するための回路装置がもたらされる。クロック生成器は、ソースクロックに同期してソースクロックドメインにおいて送信クロック信号を生成させる。ソースクロックドメインにおいて位置されている第一の処理回路は、書き込みアドレス情報を前記データに結びつける。第一の処理回路は更に、送信クロック信号及び結びつけられた書き込みアドレス情報を備えるデータを受信クロックドメインに送信する。受信クロックドメインにおいて位置されている第二の処理回路は、ここでも結びつけられた書き込みアドレス情報に対応する受信クロックドメインにおいて位置される記憶要素を示すアドレスにおいてデータを書き込む。第二の処理回路は更に、前記データを、伴う送信クロック信号に同期して記憶要素にクロック入力すると共に、前記データを、受信クロックドメインに同期して記憶要素から読み出す。
本発明の他の態様によれば、第一の処理回路は更に、データ制御信号を、ソースクロックドメインから受信クロックドメインにおける記憶要素に送信し、前記記憶要素は、データ制御信号に応答して前記データを受信する。
上記の概略は、本発明の全ての実現例又は各々示されている実施例を記載することを意図するものではない。以下の図面及び詳細な説明は、更に特定してこれらの実施例を例示する。
本発明は、添付図面に関連して以下の本発明の様々な実施例の詳細な記載を考慮して更に完全に理解され得る。
本発明は、様々な変形例及び代わりの形態に修正可能であるが、そのうちの特定の例が図面における例によって示されており、詳細に記載されるであろう。しかしながら本発明が、記載の特定の実施例に限定されるものではないことは理解されるべきである。逆に本発明は、従属請求項によって規定される本発明の範囲内の全ての変形例、等価な例、及び代わりの例をカバーするものである。
本発明は、様々な異なる形式の電子回路に適用可能と考えられ、複数のクロックドメイン及びそれらの間のパラレルデータ通信で実現される集積回路に関連する使用に特に適していることが分かっている。本発明は必ずしも当該デバイスに限定されないが、本発明の様々な態様の評価は、本願を使用する、様々な例の議論を通じて最もよくもたらされる。
本発明の一般的な実施例によれば、ソースクロックドメイン内の回路からもたらされるデータは、データバッファ装置を通じて受信クロックドメイン内の回路に送信される。前記データは、ソースクロックドメインのソースクロック(書き込みクロック)に同期してバッファ装置に書き込まれ、受信クロックドメインの受信クロック(読み出しクロック)に同期してバッファ機能部から読み出される。バッファ装置は、クロックドメイン境界部に物理的に位置される必要がない。効率的なことに、本発明のデータバッファ装置は二つの部分に分割され、書き込みクロック(“書き込み側(the write side)”)に同期されなければならない全ての回路は書き込み(すなわちソース)クロックドメインに位置され、読み出しクロック(“読み出し側(the read side)”)に同期されなければならない全ての回路は読み出し(すなわち受信)クロックドメインに位置される。バッファ装置のメモリ素子は、実質的に受信クロックドメイン内に含まれている。書き込みクロックは、メモリ素子に直接接続されず、従って受信クロックドメインに拡張されすぎる必要がない。
バッファ装置の書き込み側は、例えばパイプラインレジスタ(pipeline register)において、書き込まれるべきデータを受信し、書き込みアドレスカウンタを保持する。書き込みアドレス情報は、前記データに結びつけられると共に、ソース同期手法(source−synchronous approach)を使用して、メモリ素子に送信される。前記手法によって、クロックする信号は前記データ(及び結びつけられた書き込みアドレス情報)と共に送信される。長いデータ送信距離に渡ってソースクロックを拡張するのではなく、ソース同期送信クロック信号(source−synchronous transmit clock signal)を使用することにより、バッファ機能部の記憶部にデータを書き込むために使用されるクロックする信号と、ソースクロックドメインの平衡(balance)を介したクロックする信号との間のスキュー問題が解消される。殊更ソースクロックドメインからの書き込み動作と、受信クロックドメインへの読み出し動作とは非同期であるため、メモリ素子書き込みクロックとメモリ素子読み出しクロックとの間のスキューは本発明において問題とならない。送信クロック信号とそれに伴うデータ/アドレス情報との間のクロック信号スキューしか残されず、当該スキューは、データ/アドレス情報がソースクロックドメインから受信クロックドメインにおけるメモリ素子への物理距離をトラバースする(渡る)(traverse)ために必要とされる期間は、ソース同期クロックが同じ物理距離を渡るために必要とされる期間にほぼ等しいことを保証することによって制御され得る。
本発明の他の実施例において、複数のクロックドメイン及びそれらの間のパラレルデータ通信部を有する集積回路が実現されている。前記集積回路は、各々のクロックドメインの間のデータ通信部にインタフェイスするバッファ装置を含んでいる。2クロックディセクト(分離)バッファ装置(two−clock dissected buffering arrangemant)は、ソースクロックドメインに位置される第一の処理回路と、受信クロックドメインに位置される第二の処理回路とを含んでいる。ソース及び受信クロックドメインはそれぞれ、ドメイン間で同期していないソース及び受信クロックを使用する。本発明の一つの態様によれば、受信クロックはソースクロックよりも遅い周波数で動作するので、データはバッファ装置内に周期的に蓄積される傾向にある。クロック生成回路は、ソースクロックに同期している送信クロック信号を生成させる。
第一の処理回路は、ソースクロックドメインの回路からもたらされるデータを、ここでもソースクロックドメインにおいて位置される書き込みポインタデバイス(write pointer device)からの書き込みアドレス情報に結びつけ、それから結びつけられた書き込みアドレス情報を備えるデータを第二の処理回路に送信する。送信クロック信号も、前記データ及び結びつけられた書き込みアドレス情報と共に、ソースクロックドメインから受信クロックドメインに送信される。
本発明の一つの態様によれば、データ制御信号(例えば書き込みイネーブル信号)が、ソースクロックドメインから受信クロックドメインに更に送信される。第二の処理回路は、データ制御信号に応答して記憶要素を示すアドレスにおいて前記データを書き込み、前記示されたアドレスは、結びつけられた書き込みアドレス情報に対応している。前記データは、伴う送信クロック信号に同期して第二の処理回路によって記憶要素にクロック入力され、続いて受信クロックドメインに同期して記憶要素から読み出される。
本発明の一つの態様によれば、ソース同期書き込みコマンドが、クロックドメイン境界部の間で、ともすれば比較的長い物理距離(例えば少なくともクロックドメインのうちの一つの内部にもたらされている信号によってトラバースされる距離よりも長いオーダの長さ)に渡って送信される。クロックドメイン境界部を交差する電気信号パスの数は、データビットの数(すなわちFIFOの幅)と、アドレスビットの数の2倍の数と、クロック及びデータ制御信号の二つと、それぞれのカウンタの各々に対する、満杯(full)と空(empty)との間で差分演算(differentiate)する一つのビットとを足し合わせた数にほぼ等しくなる。必要とされる電気信号パスの数量は、バッファ機能部の記憶要素の深さに依存している。記憶要素の深さが2のべき乗である場合、“循環(繰り返し)”グレイコードアドレス方式(“circular” Gray code address scheme)が効率よく使用され得る。グレイコード化された書き込みカウンタ(Gray coded write counter)及び読み出しカウンタ(Gray coded read counter)は、記憶要素内における各々の機能部に対して現アドレスを追跡(track)するために使用される。前記境界部を交差するために必要とされる電気信号パスの最大数量は、
Figure 0004042856
個の電気信号パスと表され得る。ここで、Nはデータビットの数(すなわち記憶要素の幅)であり、Mは記憶要素内の位置(location)の数(すなわち記憶要素の深さ)であり、Mは2のべき乗であると共にグレイコードアドレッシング方式が使用され、四つの更なるビットはそれぞれ、クロック信号、データ制御信号、満杯/空書き込みカウンタ差分演算器(ディファレンシエータ)(full/empty write−counter differentiator)、及び満杯/空読み出しカウンタ差分演算器(full/empty read−counter differentiator)に対するものである。例えば、バッファが32ビット幅及び32の位置深さである場合、クロックドメイン境界部を交差する電気信号パスの数量は、
Figure 0004042856
となる。ここで
Figure 0004042856
は、全てのビットをアドレッシングすることを可能にするために切り上げ値(round−up value)を示す。
記憶要素の深さが2のべき乗でない場合(すなわち、グレイコードアドレス数列がアドレス“gaps”を有する場合)、読み出し及び書き込みポインタに対するグレイコード値は記憶要素アドレスとして使用されるのにあまり適さず、グレイコードポインタは、書き込みアドレス情報に加えて、及び書き込みアドレス情報から別個に送信されなければならない。グレイコードポインタ情報は、アドレスビットの更なるセットに対処するのに必要な量によって電気信号パスの数を増加させる。記憶要素の深さが2のべき乗でない場合、前記境界部を交差するために必要とされる電気信号パスの最大量は、
Figure 0004042856
電気信号パスと表され得る。ここでNはデータビットの数であり、Mは記憶要素の深さであり、Mは2のべき乗でないと共に他の四つのビットは上記信号化のためのものである。図1は、複数のクロックドメイン、すなわちクロックドメインA 110、クロックドメインB 120、及びクロックドメインC 130をそれぞれ有する本発明の集積回路チップ100を示している。クロックドメイン境界部AB 115は、クロックドメインAとBとの間に位置され、クロックドメイン境界部BC 125は、クロックドメインBとCとの間に位置され、クロックドメイン境界部AC 135は、クロックドメインAとCとの間に位置される。データフロー矢印の各グループによって示されているように、双方向(two−way)パラレルデータ通信は、クロックドメイン境界部の各々をトラバースする。例えば、矢印140はパラレルデータ及びアドレス情報を示し、矢印142はクロック信号を示し、矢印144はデータ制御信号を示す。
各クロックドメインは、クロックドメインに渡って単一のクロック周波数を利用し得るか、又は代わりに、複数の同期クロック信号を含み得る。例えば、クロックドメインAは、二つのクロック周波数、すなわちクロックA1 150及びクロックA2 160を含む。各クロックドメインは、他のクロックドメインから独立にクロックされ、各クロックドメインに対するクロック信号は、他のクロックドメインのクロック信号に同期されなくてもよい。更に、各クロックドメインは、他のクロックドメインにもたらされていない固有の周波数(unique frequency)を有するクロック信号を含み得る。クロックドメイン境界部ABの間のデータ通信は、クロックドメインA内で、クロックA1により動作させられている回路に向けられる。クロックドメイン境界部ACの間のデータ通信は、クロックドメインA内で、クロックA2により動作させられている回路に向けられる。
クロックドメイン境界部の間で自身からデータが流れ出すクロックドメインはソースクロックドメインと称され、クロックドメイン境界部の間で自身にデータが流れ込むクロックドメインは受信クロックドメインと称される。例えば図1において、データは、矢印122によって示されているようにクロックドメインB(すなわちソースクロックドメイン)からもたらされ、ソースクロックドメインにおいて第一の処理回路124によって受信される。データは、矢印140によって示されているようにクロックドメイン境界部AB 115の間で第二の処理回路112に流れ、その後第二の処理回路112から、矢印114によって示されているようにクロックドメインAに位置される回路に流れる。実現態様に依存して、データは、図1に更に示されているようにクロックドメイン境界部ABの間、及び随意的に他のクロックドメイン境界部の間で一方向又は双方向で流れる。
図2は、本発明の一つの実施例のブロック図200であり、ソースクロックドメイン220に位置される第一の処理回路224を示している。第二の処理回路212は受信クロックドメイン210に位置される。クロックドメイン境界部215は、ソースクロックドメインと受信クロックドメインとの間に位置される。ソースクロックドメインは、ソースクロック信号(又は書き込みクロック“clkw”)をソースクロック端子270にもたらし、第一の処理回路はソースクロックに同期して動作する。受信クロックドメインは、受信クロック信号(又は読み出しクロック“clkr”)を受信クロック端子280にもたらし、第二の処理回路は受信クロックに同期して動作する。
第一の処理回路は、ソース同期送信論理部(source−synchronous transmit logic portion)226と、書き込みカウンタ及び書き込み同期フラグ論理部(write−synchronous flag logic portion)228とを含んでいる。送信論理226は、データ入力信号パス222を介して受信クロックドメインに通信されるべきデータを受信し、書き込みアドレス(“waddr”)信号パス221を介して書き込みアドレス情報を受信すると共に、書き込みイネーブル(“wenable”)信号パス223を介してデータ制御(例えば書き込みイネーブル)信号を受信する。第一の処理回路は、前記データを関連する書き込みアドレス情報に結びつけると共にパラレル通信チャネルを通じて、結びつけられた書き込みアドレス情報を備えるデータを第二の処理回路に送信する。記憶要素の深さが2のべき乗でない場合、前記データはデータ信号パス(“ss_data”)240Dを介して送信され、前記結びつけられた書き込みアドレス情報はアドレス信号パス(“ss_addr”)240Aを介して送信される。図2に示されているように、第一の処理ユニットは、ソースクロックドメイン内の回路からソースクロック及び他の情報信号を受信し、ソースクロックドメインにおける回路に対してフラグ及び他の制御信号を生成する。
第一の処理回路は、ソースクロックに同期してソース同期送信クロック信号を生成する。ソース同期送信クロック信号は、クロック信号パス(“ss_clk”)242を介して第二の処理回路に通信される。送信論理部226は更に、データ制御信号パス(“ss_wenable”)244を介して第二の処理回路にデータ制御信号を送信する。
第二の処理回路は、記憶要素290と、読み出しカウンタ及び読み出し同期フラグ論理部分292とを有している。本発明の一つの態様によれば、記憶要素はFIFOメモリ装置であり、前記FIFOは準拠メモリ(complied memory)を介して実現される。FIFO290は、代わりに、ラッチから構成されるレジスタファイル(register file)を介して実現されるか、フリップフロップの構成体を通じて実現されるか、又は他のデータ記憶構造体(data storage structure)として実現される。必要ならば第一の処理回路と第二の処理回路との間で、グレイコード書き込みポインタ信号はグレイコード書き込みポインタ信号パス(“Gray_Wr_Ptr”)を介して通信され、グレイコード読み出しポインタ信号はグレイコード読み出しポインタ信号パス(“Gray_Rd_Ptr”)を介して通信される。
第二の処理回路は、上記の信号パスを通じて、送信クロック信号、データ制御信号、及び結びつけられた書き込みアドレス情報を備えるデータを受信する。第二の処理ユニットは、図2に示されている受信クロックドメイン内の回路から受信クロック及び他の信号を受信する。前記データは、前記結びつけられた書き込みアドレス情報に対応するアドレスにおいて記憶要素290に書き込まれ、前記データは、伴う送信クロック信号に同期して記憶要素にクロック入力(クロックイン)(clock−in)される。従来から知られているように、書き込み動作は、伴うデータ制御(例えば書き込みイネーブル)信号に応答する。
読み出しカウンタ及び読み出し同期フラグ論理部292は、読み出し信号(“rd”)と、オプションの制御及びフラグ情報とを受信し、適切なフラグ信号を生成し、記憶要素を指定する読み出しアドレス(“raddr”)信号を保持する。当該記憶要素によりデータが記憶部290から読み出される。オプションのレジスタ216を通って、受信クロックに同期して記憶要素290からデータ出力(“do”)信号パス214にデータがクロックされる。
図3Aは、本発明の一つの実施例300の回路図である。第一の処理回路のドライバ論理回路部324はソースクロックドメインに位置され、データ、アドレス、及び制御情報をそれぞれのパイプラインレジスタで”取り込む(capture)”。ドライバ論理回路324は、ソースクロック信号パス370を介してソースクロック信号(ソースクロック又は“clk”)を受信する。示されているように、ドライバ回路324のフリップフロップの各々はソースクロックによってクロックされる。データはデータ信号パス322を介してドライバ回路によって受信され、データフリップフロップ327を通じてソース同期データ信号パス(“ss_data”)340Dにクロックされる。書き込みアドレス情報は書き込みアドレス信号パス321を介してドライバ回路によって受信され、アドレスフリップフロップ325を通じてソース同期アドレス信号パス(“ss_addr”)340Aにクロックされる。データ制御(例えば書き込みイネーブル)信号(“we_n”)はデータ制御信号パス323を介してドライバ回路によって受信され、データ制御フリップフロップ329を通じてソース同期データ制御信号パス(“ss_we_n”)344にクロックされる。送信クロック生成回路331は、ソースクロックに同期して送信クロック信号を、ソース同期送信クロック信号パス(“ss_clk”)342上に生成する。送信クロックは基本的に反転ソースクロック(inverted source clock)であるが、通常インバータによって生成されない。しかしながら代わりに、送信クロック生成回路331に対して開示されている技術と同様の技術が使用される。これにより、ソースクロック信号に対して送信クロックにおけるある一定の重要な位相遅延(phase delay)ももたらされる。
データ、アドレス、及びデータ制御信号は、書き込みクロックを使用してサンプリングされ、ソース同期インタフェイスを介して送信される。図3Bは、上記のように、図3Aのドライバ論理回路324によって生成される代表的な信号の一つの実施例を示すタイミング図である。信号370’は、ソースクロック信号パス370上のソースクロック信号を代表する。信号342’は、ソース同期送信クロック信号パス(“ss_clk”)342上の送信ソースクロック信号を代表する。信号340’は、データ制御信号パス(“ss_we_n”)344に対応すると共に、ソース同期データ及びアドレス信号パス,(“ss_data”)340D及び(“ss_addr”)340A上のデータ及びアドレス信号にもそれぞれ対応する信号を代表する。
図3Aを再び参照して、第二の処理ユニットの受信論理回路部312は、送信データ、アドレス、データ制御、及び送信クロック信号を、それらがクロックドメイン 境界部315を通過した後にそれぞれ受信する。受信器回路312のフリップフロップの各々は、示されているように、ソース同期送信クロックによってクロックされる。送信クロックは第二の処理回路のFIFO記憶要素(図示略)もクロックする。データはソース同期データ信号パス(“ss_data”)340Dを介して受信回路によって受信され、受信データフリップフロップ395を通じてFIFO記憶要素にクロックされる。書き込みアドレス情報はソース同期アドレス信号パス(“ss_addr”)340Aを介して受信回路によって受信され、受信アドレスフリップフロップ397を通じてFIFOにクロックされる。データ制御(例えば書き込みイネーブル)信号はソース同期データ制御信号パス(“ss_we_n”)344を介して受信回路によって受信され、受信データ制御フリップフロップ399を通じてFIFOにクロックされる。FIFO記憶要素の平衡化及びその制御は、当該データ記憶デバイスに対してよく知られている設計の実施から理解され得る。
本発明の他の実施例は、データがクロックドメイン境界部の間で書き込まれない期間の間の電力の多大な低減に向けられる。データがクロックドメイン境界部の間で書き込まれないとき、図3Aの送信クロック信号342は生成される必要がなく、不活性FIFOデータ記憶回路は送信クロック信号によってトリガ/ドライブされる必要がない。このクロックディスエーブル(クロック不活性化)(clock−disable)特性は、例えば、送信クロック生成回路331の上部フリップフロップのデータ入力部(D−input)におけるインバータを、データ制御信号パス323に接続される第二の入力部を有する排他的否定論理和(Exclusive NOR(XNOR))ゲートで置換することによって実現され得る。この態様において、FIFOへの書き込みがなされるまで送信クロック信号342は自動的に停止される。更なる利点は、クロックドメインを相互接続する本来的に長いバス線に関する電力の低減にある。当該バス線は比較的高い容量を示すため、送信クロック信号をディスエーブルすることは通常もたらされるドライブ電流を低減する。
本発明は、いくつかの特定の実施例を参照して記載される一方、当業者はそれに対して多くの変形例が可能であることを認識するであろう。例えば、本発明の方法は、書き込みクロッキング信号(write clocking signal)をバッファに拡張する際にスキューが問題となる場合、バッファ入力レートと異なるバッファ出力レートを有するリモート情報バッファリング装置(remote information buffering arrangement)に適用可能である。これら及び他の変形例及び/又は更なる例が、従属請求項において示される、本発明の範囲を逸脱することなく、もたらされ得る。
本発明の実施例は、
ソースクロックドメインから受信クロックドメインにデータを伝送するための回路装置であって、前記ソース及び受信クロックドメインが非同期ソース及び受信クロックを各々使用し、前記手段が、
前記ソースクロックドメインにおいて、前記ソースクロックに同期する送信クロック信号を生成する第一のクロック生成器と、
書き込みアドレス情報を前記ソースクロックドメインにおけるデータに結びつけると共に、送信クロック信号及び結びつけられた書き込みアドレス情報を備えるデータを受信クロックドメインに送信する第一の処理回路と、
記憶要素を示すアドレスにおいてデータを書き込み、前記示されたアドレスは前記結びつけられた書き込みアドレス情報に対応し、前記記憶要素は受信クロックドメインにおいて位置され、前記データは前記送信クロック信号に同期して前記記憶要素にクロック入力される、受信クロックドメインにおける第二の処理回路と、
前記データを、受信クロックに同期して記憶要素から更に読み出す第二の処理回路とを有する装置である。
前記回路装置において、第一の処理回路は更に、データ制御信号を、ソースクロックドメインから受信クロックドメインにおける記憶要素に送信し、前記記憶要素は、データ制御信号に応答して前記データを受信する。
前記回路装置は更に、結びつけられた書き込みアドレス情報を備えるデータを通信するために第一の処理回路と第二の処理回路との間に結びつけられる、最大で
Figure 0004042856
の電気信号パスを有する。ここで前記データはNビット幅であり、前記記憶要素はMの位置深さであり、Mは2のべき乗である。
前記回路装置は更に、結びつけられた書き込みアドレス情報を備えるデータを通信するために第一の処理回路と第二の処理回路との間に結びつけられる、最大で
Figure 0004042856
の電気信号パスを有する。ここで前記データはNビット幅であり、前記記憶要素はMの位置深さであり、Mは2のべき乗ではない。
前記回路装置は更に、第一の処理回路が前記結びつけられた書き込みアドレス情報を備えるデータを送信していない期間の間、送信クロック信号をディスエーブルする回路を有する。
本発明の実施例による、複数のクロックドメインを有する集積回路を示すブロック図である。 本発明の実施例による、2クロック分離FIFO(two−clock dissected FIFO)に対するブロック図である。 本発明の実施例による、ソース同期ドライバ及び受信器論理回路に対する概略的なブロック図である。 本発明の実施例による、ドライバ論理回路に対するタイミング図である。

Claims (10)

  1. ソースクロックドメインから受信クロックドメインにデータを伝送し、前記ソース及び受信クロックドメインが非同期ソース及び受信クロックを各々使用する方法であって、
    書き込みアドレス情報を前記ソースクロックドメインにおけるデータに結びつけるステップと、
    前記ソースクロックドメインにおいて、前記ソースクロックに同期する送信クロック信号を生成するステップと、
    前記送信クロック信号及び前記結びつけられた書き込みアドレス情報を備える前記データを前記受信クロックドメインに送信するステップと、
    記憶要素を示すアドレスにおいて前記データを書き込み、前記示されたアドレスは前記結びつけられた書き込みアドレス情報に対応し、前記記憶要素は前記受信クロックドメインにおいて位置され、前記データは前記送信クロック信号に同期して前記記憶要素にクロック入力されるステップと、
    前記受信クロックに同期して前記記憶要素から前記データを読み出すステップと
    を有する方法。
  2. 前記受信クロックが前記ソースクロックよりも低い周波数で動作する請求項1に記載の方法。
  3. 前記送信クロック信号に同期するデータ制御信号を前記ソースクロックドメインから前記データ記憶要素に通信するステップと、
    前記データ制御信号に応答して前記データ記憶要素における前記データを受信するステップと
    を更に含む請求項1に記載の方法。
  4. 前記データ制御信号が書き込みイネーブル信号である請求項3に記載の方法。
  5. 前記送信クロック信号が、反転ソースクロック信号である請求項1に記載の方法。
  6. 前記ソースクロックドメインにおいてパイプラインレジスタで前記データを取り込むステップを更に含む請求項1に記載の方法。
  7. 前記受信クロックが、前記ソースクロックよりも高い周波数で動作する請求項6に記載の方法。
  8. 前記データはNビット幅であり、前記記憶要素はMの位置深さであり、前記結びつけられた書き込みアドレス情報を備える前記データは、最大で
    Figure 0004042856
    の電気信号パスを使用して通信され、Mは2のべき乗である請求項1に記載の方法。
  9. 前記データはNビット幅であり、前記記憶要素はMの位置深さであり、前記結びつけられた書き込みアドレス情報を備える前記データは、最大で
    Figure 0004042856
    の電気信号パスを使用して通信され、Mは2のべき乗でない請求項1に記載の方法。
  10. ソースクロックドメインから受信クロックドメインにデータを伝送し、前記ソース及び受信クロックドメインが非同期ソース及び受信クロックを各々使用する回路装置であって、
    書き込みアドレス情報を前記ソースクロックドメインにおけるデータに結びつけるための手段と、
    前記ソースクロックドメインにおいて、前記ソースクロックに同期する送信クロック信号を生成するための手段と、
    前記送信クロック信号及び前記結びつけられた書き込みアドレス情報を備える前記データを前記受信クロックドメインに送信するための手段と、
    記憶要素を示すアドレスにおいて前記データを書き込み、前記示されたアドレスは前記結びつけられた書き込みアドレス情報に対応し、前記記憶要素は前記受信クロックドメインにおいて位置され、前記データは前記送信クロック信号に同期して前記記憶要素にクロック入力されるための手段と、
    前記受信クロックに同期して前記記憶要素から前記データを読み出すための手段と
    を有する回路装置。
JP2003541195A 2001-10-31 2002-10-02 クロックドメイン交差fifo Expired - Fee Related JP4042856B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/999,007 US7187741B2 (en) 2001-10-31 2001-10-31 Clock domain crossing FIFO
PCT/IB2002/004076 WO2003039061A2 (en) 2001-10-31 2002-10-02 Clock domain crossing fifo

Publications (2)

Publication Number Publication Date
JP2005507608A JP2005507608A (ja) 2005-03-17
JP4042856B2 true JP4042856B2 (ja) 2008-02-06

Family

ID=25545764

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003541195A Expired - Fee Related JP4042856B2 (ja) 2001-10-31 2002-10-02 クロックドメイン交差fifo

Country Status (6)

Country Link
US (1) US7187741B2 (ja)
EP (1) EP1442550B1 (ja)
JP (1) JP4042856B2 (ja)
AT (1) ATE348455T1 (ja)
DE (1) DE60216803T2 (ja)
WO (1) WO2003039061A2 (ja)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7269754B2 (en) * 2002-12-30 2007-09-11 Intel Corporation Method and apparatus for flexible and programmable clock crossing control with dynamic compensation
US7272672B1 (en) 2003-04-01 2007-09-18 Extreme Networks, Inc. High speed bus with flow control and extended burst enhancements between sender and receiver wherein counter is maintained at sender for free buffer space available
US7366935B1 (en) * 2003-04-01 2008-04-29 Extreme Networks, Inc. High speed bus with alignment, re-timing and buffer underflow/overflow detection enhancements
KR100522433B1 (ko) 2003-04-29 2005-10-20 주식회사 하이닉스반도체 도메인 크로싱 회로
US7698588B2 (en) * 2003-05-15 2010-04-13 International Business Machines Corporation Circuit and related method for synchronizing data signals to a core clock
CN100588149C (zh) * 2003-06-25 2010-02-03 Nxp股份有限公司 将目标时钟域中发生的目标事件传递到监控时钟域的电路
US7248661B1 (en) 2003-08-26 2007-07-24 Analog Devices, Inc. Data transfer between phase independent clock domains
TWI267871B (en) 2004-01-10 2006-12-01 Hynix Semiconductor Inc Domain crossing device
US7376855B1 (en) * 2004-05-20 2008-05-20 Sun Microsystems, Inc. Fully stable clock domain synchronization technique for input/output data transmission
JP4291225B2 (ja) * 2004-06-30 2009-07-08 富士通株式会社 パラレルデータを受信する装置および方法
US7084680B2 (en) * 2004-08-31 2006-08-01 Micron Technology, Inc. Method and apparatus for timing domain crossing
US7380229B2 (en) * 2005-06-13 2008-05-27 Lsi Corporation Automatic generation of correct minimal clocking constraints for a semiconductor product
KR100670654B1 (ko) * 2005-06-30 2007-01-17 주식회사 하이닉스반도체 도메인 크로싱 마진을 증가시키기 위한 반도체메모리소자
EP1958404B1 (en) 2005-11-04 2011-01-19 Nxp B.V. Alignment and deskew for multiple lanes of serial interconnect
US8015382B1 (en) * 2007-02-28 2011-09-06 Altera Corporation Method and apparatus for strobe-based source-synchronous capture using a first-in-first-out unit
US8775701B1 (en) 2007-02-28 2014-07-08 Altera Corporation Method and apparatus for source-synchronous capture using a first-in-first-out unit
US7594047B2 (en) * 2007-07-09 2009-09-22 Hewlett-Packard Development Company, L.P. Buffer circuit
US8584067B2 (en) * 2010-11-02 2013-11-12 Advanced Micro Devices, Inc. Clock domain crossing buffer
US8949448B1 (en) 2011-01-27 2015-02-03 Integrated Device Technology, Inc. System and method for improving the timestamp precision in a precision time protocol (PTP) device
TWI462493B (zh) * 2011-02-17 2014-11-21 Realtek Semiconductor Corp 跨時脈域之干擾消除裝置及方法
TWI437411B (zh) * 2011-03-14 2014-05-11 Realtek Semiconductor Corp 用於時脈樹轉換處的先入先出(fifo)裝置與方法
US8918666B2 (en) * 2011-05-23 2014-12-23 Intel Mobile Communications GmbH Apparatus for synchronizing a data handover between a first and second clock domain through FIFO buffering
US8826062B2 (en) 2011-05-23 2014-09-02 Intel Mobile Communications GmbH Apparatus for synchronizing a data handover between a first clock domain and a second clock domain through phase synchronization
US8898502B2 (en) * 2011-07-05 2014-11-25 Psion Inc. Clock domain crossing interface
CN102880441B (zh) * 2011-07-12 2015-06-10 瑞昱半导体股份有限公司 先入先出装置及其实现方法
US8904221B2 (en) * 2011-12-22 2014-12-02 Lsi Corporation Arbitration circuitry for asynchronous memory accesses
US9330740B1 (en) 2013-12-18 2016-05-03 Altera Corporation First-in first-out circuits and methods
US11128742B2 (en) 2019-03-08 2021-09-21 Microsemi Storage Solutions, Inc. Method for adapting a constant bit rate client signal into the path layer of a telecom signal
US10972084B1 (en) 2019-12-12 2021-04-06 Microchip Technology Inc. Circuit and methods for transferring a phase value between circuits clocked by non-synchronous clock signals
US11323123B2 (en) 2019-12-20 2022-05-03 Microchip Technology Inc. Circuit to correct phase interpolator rollover integral non-linearity errors
US10917097B1 (en) 2019-12-24 2021-02-09 Microsemi Semiconductor Ulc Circuits and methods for transferring two differentially encoded client clock domains over a third carrier clock domain between integrated circuits
US11239933B2 (en) 2020-01-28 2022-02-01 Microsemi Semiconductor Ulc Systems and methods for transporting constant bit rate client signals over a packet transport network
US11424902B2 (en) 2020-07-22 2022-08-23 Microchip Technology Inc. System and method for synchronizing nodes in a network device
CN112965689B (zh) * 2021-02-26 2023-05-09 西安微电子技术研究所 一种基于源同步的分布式异步fifo数据交互方法及fifo结构
US11838111B2 (en) 2021-06-30 2023-12-05 Microchip Technology Inc. System and method for performing rate adaptation of constant bit rate (CBR) client data with a variable number of idle blocks for transmission over a metro transport network (MTN)
US12323334B2 (en) 2021-06-30 2025-06-03 Microchip Technology Inc. System and method for performing rate adaptation and multiplexing of constant bit rate (CBR) client data for transmission over a metro transport network (MTN)
US11916662B2 (en) 2021-06-30 2024-02-27 Microchip Technology Inc. System and method for performing rate adaptation of constant bit rate (CBR) client data with a fixed number of idle blocks for transmission over a metro transport network (MTN)
US11736065B2 (en) 2021-10-07 2023-08-22 Microchip Technology Inc. Method and apparatus for conveying clock-related information from a timing device
US12192079B2 (en) 2021-11-23 2025-01-07 Microchip Technology Inc. Method and apparatus for carrying constant bit rate (CBR) client signals using CBR carrier streams comprising frames
US11799626B2 (en) 2021-11-23 2023-10-24 Microchip Technology Inc. Method and apparatus for carrying constant bit rate (CBR) client signals
US20250036159A1 (en) * 2023-07-28 2025-01-30 Stmicroelectronics International N.V. Clock domain crossing synchronization circuits and methods to guarantee proper data signal order

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4873703A (en) * 1985-09-27 1989-10-10 Hewlett-Packard Company Synchronizing system
US5452434A (en) * 1992-07-14 1995-09-19 Advanced Micro Devices, Inc. Clock control for power savings in high performance central processing units
US6209053B1 (en) * 1998-08-28 2001-03-27 Intel Corporation Method and apparatus for operating an adaptive multiplexed address and data bus within a computer system
US6370600B1 (en) * 1999-05-25 2002-04-09 Advanced Micro Devices, Inc. Staging buffer for translating clock domains when source clock frequency exceeds target clock frequency

Also Published As

Publication number Publication date
ATE348455T1 (de) 2007-01-15
EP1442550B1 (en) 2006-12-13
EP1442550A2 (en) 2004-08-04
DE60216803D1 (de) 2007-01-25
US20030081713A1 (en) 2003-05-01
WO2003039061A2 (en) 2003-05-08
US7187741B2 (en) 2007-03-06
WO2003039061A3 (en) 2003-10-23
DE60216803T2 (de) 2007-11-15
JP2005507608A (ja) 2005-03-17

Similar Documents

Publication Publication Date Title
JP4042856B2 (ja) クロックドメイン交差fifo
US8520464B2 (en) Interface circuit and semiconductor device incorporating same
US8352774B2 (en) Inter-clock domain data transfer FIFO circuit
JP4279672B2 (ja) データ有効インジケータ及びスキュー不耐性データグループを有するパラレルデータ通信
KR100799689B1 (ko) 멀티 포트 반도체 장치 및 그 제어방법
US8001409B2 (en) Synchronization device and methods thereof
US8205111B2 (en) Communicating via an in-die interconnect
JP2002523857A (ja) 非同期型論理を用いたfifo
US6249875B1 (en) Interface circuit using plurality of synchronizers for synchronizing respective control signals over a multi-clock environment
JP3645584B2 (ja) データ転送同期装置
CN100419673C (zh) 流水线同步设备以及相应的方法
JP2002150796A (ja) モノリシックな集積回路装置の常に可能化されたテストのための方法および集積回路装置
CN114089946B (zh) 一种fifo装置和数据处理系统
JP3475857B2 (ja) ソースシンクロナス転送方式
US6418176B1 (en) Forwarded clock recovery with variable latency
JP3562416B2 (ja) Lsi間データ転送システム及びそれに用いるソースシンクロナスデータ転送方式
CN101228733B (zh) 在两个异步系统之间传递数据的方法及异步数据缓冲器
JP2004326222A (ja) データ処理システム
US12073111B2 (en) Domain-selective control component
US6654844B1 (en) Method and arrangement for connecting processor to ASIC
US7269681B1 (en) Arrangement for receiving and transmitting PCI-X data according to selected data modes
JP2596336B2 (ja) 非同期ディジタル通信装置
CN116318340A (zh) 基于请求链路的星载多通道多速率高速数据接口系统
JP4929742B2 (ja) 同時双方向回路、該回路を備えた大規模集積回路並びに信号同時伝送方法
CN116501128A (zh) eMMC卡的时钟相位动态切换方法、结构及eMMC卡

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050930

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071003

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

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20071022

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071107

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20101122

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20101122

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20111122

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111122

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121122

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121122

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20131122

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees