JP4533890B2 - 異なるクロックドメイン間でのデータ信号転送のための方法 - Google Patents

異なるクロックドメイン間でのデータ信号転送のための方法 Download PDF

Info

Publication number
JP4533890B2
JP4533890B2 JP2006507537A JP2006507537A JP4533890B2 JP 4533890 B2 JP4533890 B2 JP 4533890B2 JP 2006507537 A JP2006507537 A JP 2006507537A JP 2006507537 A JP2006507537 A JP 2006507537A JP 4533890 B2 JP4533890 B2 JP 4533890B2
Authority
JP
Japan
Prior art keywords
signal
clock
clock domain
synchronization
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
JP2006507537A
Other languages
English (en)
Other versions
JP2006526206A (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 JP2006526206A publication Critical patent/JP2006526206A/ja
Application granted granted Critical
Publication of JP4533890B2 publication Critical patent/JP4533890B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Information Transfer Systems (AREA)

Description

本発明は、異なるクロックドメイン(clock−domain)間でのデータ信号転送のための方法であって、データ信号の、当該データ信号が処理されるカレントクロックドメインとの同期化(synchronization)を含む方法に関する。
将来の大型のデジタルシステムでは、チップ全体を単一クロックと同期化して且つスキュー(skew)およびジッタ(jitter)を無視し得るものとすることは、たとえ不可能ではないとしても、きわめて困難なこととなる。そのため、単一クロックチップは比較的高価になる。広域クロック法(global clock approach)の問題は、遅延の不整合が、最長パスのセットアップ時間(setup time)のマージン(余裕)および最短パスのホールド時間(hold time)のマージン(余裕)をそれぞれ減少させるため、チップ全体へのクロック分配には、遅延の大きな変動に対する耐性がないという点にある。負の余裕は、IC(集積回路)の誤動作につながる。クロック分配ネットワークにおける遅延の不整合は、もし設計によってもたらされるならばスキューと呼ばれ、もしチップ上のノイズによってもたらされるならばジッタと呼ばれる。将来のプロセス技術では、ゲートおよびフリップフロップの遅延がより小さくなるため、遅延の不整合は縮小しなければならない。
ワイヤの遅延は、トランジスタのようには変化しない。そのため、大きなIC上の長いワイヤ上の遅延は、もはや1つのクロックサイクルには適合しないことになり、このことが、設計におけるタイミングクロージャ(timing−closure)の達成を更に複雑にする。
これらの理由から、すでに今日、大きなICは、各クロックドメインがチップ面積の一部だけに及ぶような複数のクロックドメインに分割される。一クロックドメイン内では、すべての信号は同一のクロック信号と同期化される。クロックドメイン内の信号は、当該クロック信号上のイベントに応答してのみ変化することができ、クロックドメイン内のすべての信号は、各クロックイベントと関連するアパーチャ時間(aperture time)の間は安定である。複数の信号を複数のクロックドメインにグルーピングすることは、これらの信号を、さらなる同期化なしで論理回路を使用して結合(combine)してクロック記憶素子(clock storage element)内にサンプリングする(sample)ことを可能にするので、好都合である。当該クロックドメインにおけるメンバーシップは、単純な構成規則の下に閉じられている。2つの信号が同じクロックドメインに属するならば、最大または最小遅延規制(maximum or minimum delay constrains)を超過しないそれらの信号の論理結合もそのクロックドメインに属する。また、上記のクロック信号によって駆動されるクロック記憶素子を利用してそのクロックドメイン内の信号をサンプリングする事は常に安全(即ち、同期化失敗の確率は0)であり、このサンプリングの結果もそのクロックドメインに属する。
しかし、2つのクロックの周波数および位相関係は一般的に非決定論的なので、2つのクロックドメイン間の通信は自明なことではない。したがって、クロックドメイン間通信(inter clock−domain communication)は、明示的な同期化を必要とし、一のクロックドメインからの信号は、異なるクロックドメインで使用できるようになる前に、ローカルクロックに同期化されなければならない。
US5450458A号は、マルチプルサブシステムクロック環境アーキテクチャを利用する情報ハンドリングシステムのサブシステム間、または様々なクロック周波数で動作するマルチプル情報ハンドリングシステム間のデータ転送が、同期化ウィンドウデコーダを備えるタイミング整合複数周波数合成器(timing aligned multiple frequency synthesizer)を使用して同期化されるような方法および装置を開示している。データ同期化回路と回路通信を行う周波数生成回路は、1つのサブシステムクロック環境の中央処理装置動作(operation)を、異なるサブシステムクロック環境で動作するメモリコントローラなどの(1又は2以上の)周辺サブシステムと共に機能(function)できるようにする、または様々なクロック周波数で動作する情報ハンドリングシステム同士を共に機能できるようにするために、(1又は2以上の)同期化タイミング信号(synchronized timing signal)を生成するよう機能する。当該同期化回路から準安定効果(metastability effects)を除去することによって、データ転送同期化遅延は短縮され、信号同期化精度(signal synchronization accuracy)の平均故障時間(meantime−of−failure)は増大する。
US5535377A号においては、様々なクロック速度を有する信号の少待ち時間同期化(low latency synchronization)のための方法および装置が説明されている。この方法および装置は好ましくは、高速クロック速度と呼ばれる第1のクロック速度で動作する第1の論理部が、第2のより低速なクロック速度で動作する第2の論理部とインタフェースをとるシステムで使用される。新しい低速クロックは、位相同期ループ(PLL)クロック発生器を使用して、当該高速クロックから擬似同期的(pseudo−synchronously)に生成される。PLLは、高速クロック周波数を2つの周波数の最小公倍数(LCM)まで逓倍して、ベースクロック信号を生成する。その後、当該ベースクロックは分周されて、上記低速クロック信号が形成される。PLLは、3つのクロックすべてが一定の位相関係を持つような方法で、その動作を実行する。上記ベースクロックと高速クロックと低速クロックの立ち上がりエッジは、周期的ポイント(periodic point)で整列し(line up)、その他の周期的ポイントでは歪曲される(skewed)。論理部の間を伝わる信号を同期化するような高速−低速同期化論理(fast to slow synchronization logic)および低速−高速同期化論理(slow to fast synchronization logic)が備えられている。第1の論理部が高速クロック周波数mを持ち、第2の論理部が低速クロック周波数nを持つ場合には一般的に、上記ベースクロック周波数はLCM(m,n)となる。低速信号即ち当該第2の論理部からの信号をより高速なクロック周波数に同期化するのに使用される低速−高速同期化論理内のマルチプレクサは、ベースクロック/m個の入力を持つことになる。高速信号をより低速なクロック速度に同期化するのに使用されるマルチプレクサは、ベースクロック/n個の入力を持つことになる。
US6163545A号は、一のクロックドメイン内のデータを第2のクロックドメイン用に変換するためのシステムとして、選択制御装置(select cotrol)を持つマルチプレクサを備え、当該選択制御装置が、第1の周波数に同期しており、且つ、2つの双安定レジスタ(bistable register)に結合されており、その第1の双安定レジスタが第1の周波数に従ってクロック制御(clock control)され、その第2の双安定レジスタが第2の周波数に従ってクロック制御されるようなシステムについて説明している。上記第1のレジスタのデータ出力は、上記マルチプレクサの第2のデータ入力にループバックされる。上記選択制御装置は、データ入力を上記第1のレジスタに結合するように動作し、その結果、上記マルチプレクサは、上記第1のレジスタのデータ出力を当該マルチプレクサのデータ入力に戻り結合するように機能する。この構成は、第1のクロック周波数でのデータの、第2のクロック周波数の遷移(transition)を越えての利用可能性を保証する。したがって、データ好ましくはマルチビットアドレスデータは、従来のシステムより短い遅延で、一のクロックドメインから他のクロックドメインに転送され得る。
従来のシステムでは、入力データは、処理を開始できるようになる前に同期化される。しかし、このタイプの同期化は、データ通信に著しく長い遅延を加え、ひいては待ち時間を増大させる。
本発明の目的は、遅延を短縮し、ひいては待ち時間を低減することである。
本発明によって上記の及び更なる目的を達成するため、異なるクロックドメイン間でのデータ信号転送のための方法であって、データ信号の、カレントクロックドメインとの同期化を含み、且つ、前記カレントクロックドメインにおいて当該データ信号を処理する方法において、前記データ信号の前記処理が、前記カレントクロックドメインにおいて前記データ信号の前記同期化が完了する前に開始されることを特徴とする方法が提供される。
本発明の方法は、遅延の短縮をもたらし、ひいては待ち時間を低減するが、この事は、複数のクロックドメインに分割される大きな集積回路にとって非常に好都合である。本発明は、典型的な複雑さを有するようなすべてのデジタル集積回路、特に0.18μm以下技術(0.18μm technology and beyond)において使用され得る。
本発明の好ましい実施形態においては、前記データ信号の前記処理が、前記同期化の前にまたは同期化と本質的に(essentially)並行して(concurrently)開始される。
とくに、前記同期化は、前記カレントクロックドメインにおいて前記同期化を実行するための(for carrying out)少なくとも2つの中間同期化ステップを含み、前記処理は、少なくとも最後の中間同期化ステップが実行される(has been carried out)前に開始される。前記処理は、少なくとも2つの中間処理ステップによって実行されることができ、中間同期化ステップの中間結果は、所定の(predetermined)中間処理ステップのために使用される。さらに、中間同期化ステップと中間処理は並行してそれぞれ実行されることができる。
本発明の上記の目的およびその他の態様は、以下の説明および添付の図面によってより良く理解されよう。
本発明の好ましい実施形態は、図面を参照しながら説明される。
データ同期化は典型的に、クロックドメイン間同期化のために使用される。その場合、2つの近隣クロックドメインのクロック(clocks of two neighbouring clock−domains)は、2つの独立した水晶発振器からか共通の水晶発振器からかのいずれかから、(設計労力最小化のために)2つのクロック間の位相に何らの保証もなく取り出される。
図1は、位相に関連性のない2つの近隣クロックドメインAおよびBを示しているが、クロックドメインAは、先行または送信側クロックドメイン(source clock−domain)と呼ばれ、クロックドメインBは、カレントまたは受信側クロックドメイン(destination clock−domain)と呼ばれ得る。クロックドメインA内では、一例として、クロックドメインB内で必要とされる信号sigAが生成される。クロックドメインAとBは位相に関連性がないので、クロックドメインAとBを横断(cross)する信号は、受信側クロックドメインB内において処理できるようになる(can be processed)前に同期化されなければならない。
図1の例では、クロックドメイン横断データ信号の同期化は、例えば直列に並んだn個のサンプリング素子(sample element)によって達成される。これらのサンプリング素子は典型的には、通常のフリップフロップである。図1には、クロックドメインAとクロックドメインBとの間に、点線で境界(borderline)Zが概略的に示されている。さらに、図1には、直列に結合されており同期化用に使用されるn個の複数のDフリップフロップの中から、一例として3個のDフリップフロップ1、2、およびnが示されている。各クロックドメインのフリップフロップはすべて、共通クロック信号clkによって制御される、すなわち、図1のクロックドメインB内ではローカルクロック信号clkBによって制御される。図1では、信号sigAは、送信側クロックドメインAから受信側クロックドメインBへと境界Zを横断し、第1のDフリップフロップ1のD入力に入る。図1のクロックドメインBのDフリップフロップ1からnのすべてのDフリップフロップを通過して次々に伝播した後、当該信号は信号sigBとしてクロックドメインBから出て行く。
サンプリング素子は、受信側クロックドメイン(receiving clock−domain)の立ち上がりクロックエッジのたび毎に入力信号の状態を捕捉(capture)する。しかしながら、サンプリングの瞬間に当該信号が状態を変化させた場合に問題が生じる。その場合、サンプリング回路(sampler)は、長期間または短期間の準安定に陥ることになる。この準安定期間の間に、当該サンプリング回路は、信号線上に古い値を検出したのか新しい値を検出したのかを決定する。決定の結果として、当該サンプリング回路の出力は、その最終値に変化する。準安定の持続期間は、ランダムに変化する入力信号のため確定されない。入力における与えられたランダムな遷移が、tよりも長い同期化遅延をもたらすことになる確率は、
P(t)=fclkB・t・exp(−t/τ) (1)
によって与えられる、ただし、fclkBはサンプルクロック周波数、tはシンクロナイザのアパーチャ(aperture)、τはシンクロナイザの再生時定数(regeneration time constant)である。この数式は、同期化されるイベント(ここではsigAにおける遷移)当たりの同期化失敗の確率を与える。ある程度の時間は準安定が発生する可能性があるため、上記サンプリング回路の出力は、確実には上記クロックと同期しない。その場合、列をなす次のサンプリング回路が、同期化を実現することを要求される。このサンプリング回路が準安定に陥る確率はずっと小さくなるものの、やはり0ではない。したがって、nの値を増やすことで同期化失敗の率は減少するが、待ち時間がその代償になる。同期化遅延を改善するためにクロック速度を上げることは、それが同期化失敗の確率を決定する同期化時間t(ナノ秒)の長さとなるので、選択肢にならない。
しかし、図1に示されているように信号sigAをクロックドメインB内で供給されるローカルクロック信号clkBを利用してサンプリングすることは、信号sigAがクロックドメインB内でフリップフロップ1によってサンプリングされている間に変化する状況が、値およびセトリング時間(settling time)に関して不確実なので、安全ではない。
クロックドメインの個数が将来のプロセス技術において指数的に増加するにつれ、クロックドメイン横断の回数も著しく(少なくともクロックドメインの個数に比例して)増加する。
信号バス全体(a whole bus of signals)がクロック境界を横断している場合、当該バスのすべてのビットが同期化される必要はない。その代わり、当該バスに隣接する1つの制御信号だけは、データ生成を指し示す(indicate)ために同期化される必要がある。これは、バンドルドシグナリング通信(bundled−signalling communication)と呼ばれ、図2で概略的に示されている。この構想(concept)によれば、クロックドメインA内で生成される有効信号(valid signal)validAの各トグル(toggle)は、ベクトル信号であるデータ信号dataにおける新しいシンボルの存在を指し示す。信号validAは一般にクロックドメインB内で生成されるローカルクロック信号clkBと同期していないので、数個のフリップフロップが同期化目的で必要とされる。図2には一例として、3個のフリップフロップ1、2、および3が示されている。その結果得られる信号validBは、ローカルクロック信号clkBと同期していると考えられる。更に、図2の構想は、クロックドメインB内に設けられたレジスタ4を含む。レジスタ4はまた、ローカルクロック信号clkBによってトリガされ、クロックドメインAからのデータ信号dataAをその入力において受信し、同様にベクトル信号であって且つ更にクロックドメインBで処理されるような対応データ信号dataBを出力する。同期化プロセスが原因で2サイクル分遅延しているが、それでも、信号validBの遷移は、データ信号dataBにおける新しいシンボルを指し示す。
しかし、図2の構想は、通信の実効的な同期化遅延に本質的に影響しない、またはこれを本質的に改善しない。バンドルシグナリング構想がコスト削減に加えて提供するのは、上記バスのビット間の整合性(consistency)である。整合性は、基本的特性であり、同期化遅延よりもさらに重要である。
上で説明したように、別のクロックドメインからの入力データは、処理を開始できるようになる(the processing can start)前に最初に同期化される。そのため、同期化時間は、処理時間の上に加算されるものとなる。将来のシステムにおいては、このオーバーヘッドは、クロックドメインの個数が増加するにつれてパフォーマンスに重大な影響を及ぼすことにもなり得る。
図3は、本発明の好ましい実施形態による、図2の構想に対する改善点を示す。図3に概略的に示されている回路は、(クロックドメインAから到来する)データ信号dataAに対する処理を、その関連する有効信号validAのクロックドメインB内での同期化と並行して提供する。
図3の回路内においては、データ信号dataAに関する計算は、バンドルドシグナリング(bundled−signaling)を利用する通常の方法とは対照的に、それが実際に同期化される前に既に開始できるようになっている。図2の回路に加えて、複数のレジスタ(図3では、一例として、3個のレジスタ4、5、および6が示されている)が、クロックドメインAからクロックドメインBにデータ信号dataAを送信する入力バスのデータパス中に配置されている。これらのレジスタも、クロックドメインB内で生成されるローカルクロック信号clkBによって計時(clock)される。これらのレジスタを通過して伝播する間に、パイプライン化された計算が、データパス中のレジスタ間にそれぞれ追加的に実装されており、且つ、データ信号dataAから得られた入力信号に対する処理を提供するような論理素子により、同期化プロセスと並行して開始(take place)され得る。図3には一例として、2つの論理素子8および9が示されているが、論理素子8はレジスタ4と5との間に提供されており、論理素子9はレジスタ5と6との間に提供されている。さらに図3の例では、付加的な信号(参照用の数字によっては指示されていないが、矢印のみで描かれている)がカレントクロックドメインB内で生成され、論理素子8および9内に両素子内で実行される処理機能用に入力される。
データ信号dataAに対する処理を、その付随する有効信号validAのクロックドメインB内での同期化と並行して実行する事は、次の理由のために可能である。即ち、有効信号validAが、いつデータ信号dataAが安定であるかを、新しいシンボルを与える事によって指し示す(これはバンドルドデータシグナリングと呼ばれる)ので、有効信号validAとデータ信号dataAのすべてのビットとの間に関連があるのである。よって、有効信号validAある時間をかけて同期化されなければならないのみである。n個の同期化フリップフロップにとって、これはn−1サイクルとnサイクルとの間、即ち、図3の例では第2サイクルと第3サイクルとの間である。有効信号validAにおけるイベントをカレントクロックドメインB内のローカルクロック信号clkBに同期化する全インターバル間において、データ信号dataAは既に上記の新しいシンボルを含んでいる。結果として得られた有効信号validBの遷移は、新しいシンボルが、結果として得られたデータ信号dataBに今現在存在する事を指し示すだけでなく、このシンボルが、(カレントクロックドメインB内で生成されるローカルクロック信号clkBの観点で)データ信号dataAに既に2サイクル前に存在していた事を指し示す。そのようなシンボルが存在する場合、それを処理することも可能である。さらに、クロックドメイン境界(crock−domain boundary)Zを横断するときの同期化遅延が隠蔽される。
上記の計算は前処理だけに限定されるが、このことは、それが、受信プロセスの状態に依存し得るが、その状態を変更し得ないという事を意味する。データがまだうまく同期化されていないので、これは合理的である。
この回路はまた、送信側クロックドメイン(sending clock−domain)からイベントを、前のイベントが完全に同期化される前に受け入れることに更に留意されたい。そのため、データトークンの生成速度は、受信側プロセッサのクロック速度と同程度まで高くなり得る。
図4は、異なるクロックドメインAからの割り込みのためのカレントクロックドメインB内の同期化ユニットの一実装例を示す。
このプロセッサ割り込みユニットは、異なるクロックドメインAからの演算コードワード(operational code word)OPCを、サービスルーチンのアドレスに変換するルックアップテーブル手段(look−up table means)10を備えており、当該サービスルーチンは、カレントクロックドメインB内で実行される。演算コードワードOPCは、図3の信号dataAに対応する。ルックアップテーブル手段10は、ローカルクロック信号CLKによってエッジトリガ(edged−trigger)される。
上記のプロセッサ割り込みユニットは、同様に異なるクロックドメインAから到来する遷移感知割り込み要求信号(transition sensitive interrupt request signal)IRQを受信する第1のフリップフロップ11を更に備える。この割り込み要求信号IRQは、図3の信号validAに対応し、当該割り込み要求信号IRQの遷移は、上記の演算コードワードOPCの値がその割り込みに関連する付加情報をその場所で与えるような割り込みの発生を指し示す。第1のフリップフロップ11は、同様にクロック信号CLKによってエッジトリガされ、準同期化割り込み要求信号(semi−synchronized interrupt request signal)IRQ’を出力するための同期化手段として提供される。準同期化割り込み要求信号IRQ’は、完全同期化割り込み許可信号(fully synchronized interrupt grant signal)IGNTもそこに入力されるような第1のマルチプレクサ12内に入力される。第1のマルチプレクサ12は、割り込みマスク信号(interrupt mask signal)IMSKによってトリガされる。第1のマルチプレクサ12の出力信号は、クロック信号CLKによって同様にエッジトリガされるような第2のフリップフロップ21内に入力される。第2のフリップフロップ21は、割り込み要求信号IRQの完全同期化を完遂し、完全同期化割り込み許可信号IGNTを出力する。割り込み許可信号IGNTは、第1のマルチプレクサ12内に入力されるだけでなく、排他的ORゲート23および第3のフリップフロップ30内にも入力される。第3のフリップフロップ30の出力信号も更に、排他的ORゲート23内に入力される。第3のフリップフロップ30は、同様にクロック信号CLKによってエッジトリガされ、クロックサイクル遅延素子(clock cycle delay element)として提供される。排他的ORゲート23の出力信号は、割り込み要求許可後の1サイクルの間ハイになるストローブ信号(strobe signal)ISTRBである。
図4のプロセッサ割り込みユニットは、ルックアップテーブル手段10からの出力信号およびレジスタ20からの出力信号を受信する第2のマルチプレクサ22を更に備える。第2のマルチプレクサ22は、割り込み要求信号IRQに関連する上記演算コードワードOPCに対応する割り込みサービスルーチンのアドレスを定めるアドレス信号AISRを出力する。このアドレス信号AISRも、同様にクロック信号CLKによってエッジトリガされるようなレジスタ20内に入力される。
図5は、2つの連続する割り込み要求が発生している間の上述の信号の波形を示しているが、図5では、単に説明の目的でのみ、第2の割り込み要求が1クロックサイクルの間マスクされていることに注意されたい。
図4のプロセッサ割り込みユニットは、割り込み信号IRQおよび異なるクロックドメインからの関連する演算コードワードOPCを、プロセッサコア(ここでは図示せず)のローカルクロック信号CLKに同期化するために提供される。そのような割り込み信号IRQの同期化は、位相に相関性のない異なるクロックドメイン内で割り込みが生成されたときに必要とされる。割り込み許可信号IGNTとアドレス信号AISRはそれぞれ、割り込み要求信号IRQの同期化バージョンと演算コードワードOPCの同期化バージョンである。
異なるクロックドメインAからの割り込み要求信号IRQと、完全同期化割り込み許可信号IGNTは、2フェーズハンドシェイクプロトコル(two−phase handshake protocol)に従う。これは、割り込み要求信号IRQの各遷移は新しい要求を指し示し、要求の許可は割り込み許可信号IGNTの遷移により指し示され、新しい要求は前の要求が許可されたときにだけ発行され得ることを意味する。
割り込みマスク信号IMSKのハイレベルは、いかなる割り込み要求が上記プロセッサコアの制御フローに影響することも防止する。
排他的ORゲート23は、割り込み許可信号IGNTの遷移を検出し、この遷移の結果として、許可された要求の後、ストローブ信号ISTRBに1クロックサイクルのパルスが発生する。ストローブ信号ISTRBの制御下で、アドレス信号AISRは、その値をレジスタ20からよりもむしろルックアップテーブル手段10から取得する。このようにしてアドレス信号AISRは、直近の割り込みに対応するサービスルーチンのアドレスを保持する。
クロックドメイン横断信号のデータ同期化のためのシステムの概略基本ブロック図を示す。 バンドルドシグナリングによる信号バスのデータ同期化のためのシステムの概略基本ブロック図を示す。 本発明の好ましい実施形態による、バンドルドシグナリングによる信号バスのデータ同期化のためのシステムの概略ブロック図を示す。 本発明の好ましい実施形態による、異なるクロックドメインからの割り込みのための同期化ユニットのブロック図を示す。 図4の同期化ユニット内に入力されるまたは図4の同期化ユニットから出力される複数の信号の波形を示す。

Claims (4)

  1. 異なるクロックドメイン間でデータ信号を転送する方法であって、カレントクロックドメインとの前記データ信号の同期化を含み、当該方法は:
    先行クロックドメインから前記カレントクロックドメインに前記データ信号を転送する段階;
    前記カレントクロックドメインの第1レジスタによって、有効信号を受信し、準同期化割り込み要求信号を出力する段階;
    前記準同期化割り込み要求信号及び完全同期化割り込み許可信号を前記カレントクロックドメインのマルチプレクサに提供し、第3の信号を出力する段階;及び
    前記カレントクロックドメインの第2レジスタによって、前記第3の信号を受信し、前記完全同期化割り込み許可信号を出力する段階;
    を有する、方法。
  2. 前記完全同期化割り込み許可信号を第3レジスタに提供し、出力信号を出力する段階;及び
    前記完全同期化割り込み許可信号及び前記出力信号を排他的ORゲートに提供し、更なるマルチプレクサにストローブ信号を出力し、前記カレントクロックドメインと同期化されたデータ信号を出力する段階;
    を更に有する請求項1に記載の方法。
  3. 先行クロックドメインからカレントクロックドメインにデータ信号を転送するためのルックアップテーブル;
    有効信号を受信し、準同期化割り込み要求信号を出力する、前記カレントクロックドメインの第1レジスタ;
    前記準同期化割り込み要求信号及び完全同期化割り込み許可信号を受信し、第3の信号を出力するように構成されたマルチプレクサ;及び
    前記第3の信号を受信し、前記完全同期化割り込み許可信号を出力する、前記カレントクロックドメインの第2レジスタ;
    を有する集積回路。
  4. 前記完全同期化割り込み許可信号を受信し、出力信号を提供する第3レジスタ;及び
    前記完全同期化割り込み許可信号及び前記出力信号を受信するように構成され、且つ前記カレントクロックドメインと同期化されたデータ信号を出力する更なるマルチプレクサにストローブ信号を出力するように構成された排他的ORゲート;
    を更に有する請求項3に記載の集積回路。
JP2006507537A 2003-05-09 2004-05-04 異なるクロックドメイン間でのデータ信号転送のための方法 Expired - Fee Related JP4533890B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP03101284 2003-05-09
PCT/IB2004/050581 WO2004100000A1 (en) 2003-05-09 2004-05-04 Method for data signal transfer across different clock-domains

Publications (2)

Publication Number Publication Date
JP2006526206A JP2006526206A (ja) 2006-11-16
JP4533890B2 true JP4533890B2 (ja) 2010-09-01

Family

ID=33427199

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006507537A Expired - Fee Related JP4533890B2 (ja) 2003-05-09 2004-05-04 異なるクロックドメイン間でのデータ信号転送のための方法

Country Status (7)

Country Link
US (1) US7562244B2 (ja)
EP (1) EP1625503A1 (ja)
JP (1) JP4533890B2 (ja)
KR (1) KR101089153B1 (ja)
CN (1) CN100559356C (ja)
TW (1) TW200508840A (ja)
WO (1) WO2004100000A1 (ja)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004100000A1 (en) 2003-05-09 2004-11-18 Koninklijke Philips Electronics N.V. Method for data signal transfer across different clock-domains
CN1812319B (zh) * 2005-01-26 2010-04-14 华为技术有限公司 实现异步数据跨时钟域的装置
JP2008092190A (ja) * 2006-09-29 2008-04-17 Fujitsu Ltd 遅延回路及びプロセッサ
CN101622814A (zh) 2007-03-02 2010-01-06 Nxp股份有限公司 数据通信系统的快速上电
CN101641901B (zh) * 2007-03-20 2014-05-07 Nxp股份有限公司 数据通信系统的快速加电
US7996704B2 (en) * 2007-08-21 2011-08-09 Richwave Technology Corp. Asynchronous first in first out interface and operation method thereof
CN101394244B (zh) * 2007-09-17 2011-10-26 中兴通讯股份有限公司 一种时分基站系统中非同源时钟域帧同步信号的产生方法
US7500132B1 (en) 2008-04-11 2009-03-03 International Business Machines Corporation Method of asynchronously transmitting data between clock domains
US8132036B2 (en) * 2008-04-25 2012-03-06 International Business Machines Corporation Reducing latency in data transfer between asynchronous clock domains
US8212594B2 (en) 2010-08-11 2012-07-03 Integrated Device Technology, Inc. Methods and apparatuses for clock domain crossing
KR101861769B1 (ko) 2011-11-24 2018-05-29 삼성전자주식회사 비동기식 브릿지 및 이의 동작 방법, 및 이를 포함하는 SoC
CN102624417A (zh) * 2012-03-01 2012-08-01 苏州超锐微电子有限公司 对25MHz晶振倍频和分频实现480MHz供给USB2.0收发器工作的方法
GB2503474B (en) * 2012-06-27 2016-06-29 Nordic Semiconductor Asa Data transfer between clock domains
GB2503472A (en) * 2012-06-27 2014-01-01 Nordic Semiconductor Asa Data transfer between clock domains following clock transition in destination domain
CN103678208B (zh) * 2012-09-06 2016-09-07 上海航天控制工程研究所 航天器同步数据传输方法
US20140281652A1 (en) * 2013-03-14 2014-09-18 Nvidia Corporation Data synchronization across asynchronous boundaries using selectable synchronizers to minimize latency
US9251916B2 (en) 2013-03-25 2016-02-02 Avago Technologies General Ip (Singapore) Pte. Ltd. Integrated clock architecture for improved testing
US9755818B2 (en) * 2013-10-03 2017-09-05 Qualcomm Incorporated Method to enhance MIPI D-PHY link rate with minimal PHY changes and no protocol changes
US9268889B2 (en) 2013-12-05 2016-02-23 International Business Machines Corporation Verification of asynchronous clock domain crossings
US10318695B2 (en) 2013-12-05 2019-06-11 International Business Machines Corporation Phase algebra for virtual clock and mode extraction in hierarchical designs
US9916407B2 (en) 2013-12-05 2018-03-13 International Business Machines Corporation Phase algebra for analysis of hierarchical designs
US10503856B2 (en) 2013-12-05 2019-12-10 International Business Machines Corporation Phase algebra for specifying clocks and modes in hierarchical designs
US9372503B1 (en) * 2015-05-22 2016-06-21 Freescale Semiconductor, Inc. Clock signal alignment for system-in-package (SIP) devices
CN107678488B (zh) * 2017-11-23 2024-06-07 南京火零信息科技有限公司 一种跨时钟域事件传递的电路
TWI740564B (zh) * 2020-07-03 2021-09-21 鴻海精密工業股份有限公司 跨時鐘域信號傳輸方法、電路以及電子裝置
CN112036103B (zh) * 2020-09-01 2024-03-08 深圳市傲立电子有限公司 一种从快时钟域跨慢时钟域处理多比特数据的装置及方法
CN112540642B (zh) * 2020-11-27 2023-09-05 山东云海国创云计算装备产业创新中心有限公司 一种多时钟域处理方法、装置、设备和介质
US11200184B1 (en) 2020-12-22 2021-12-14 Industrial Technology Research Institute Interrupt control device and interrupt control method between clock domains

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0550286A3 (en) * 1992-01-03 1993-11-03 Amdahl Corp 2-level multi-processor synchronization protocol
EP0590212A1 (en) 1992-09-30 1994-04-06 International Business Machines Corporation Synchronization apparatus for a synchronous data communication system
US5535377A (en) 1994-01-31 1996-07-09 Dell Usa, L.P. Method and apparatus for low latency synchronization of signals having different clock speeds
US5450458A (en) 1994-08-05 1995-09-12 International Business Machines Corporation Method and apparatus for phase-aligned multiple frequency synthesizer with synchronization window decoder
US5602878A (en) * 1994-09-23 1997-02-11 Intel Corporation Method of delivering stable data across an asynchronous interface
US5884100A (en) * 1996-06-06 1999-03-16 Sun Microsystems, Inc. Low-latency, high-throughput, integrated cache coherent I/O system for a single-chip processor
DE19626184C2 (de) * 1996-06-29 1998-07-30 Alexander Ernst Erdwin Lahmann Vorrichtung zum Betreiben eines Systems mit zwei funktionsmäßig in einem Rechner parallel geschalteten Prozessoren
GB2321351B (en) 1997-01-17 1999-03-10 Paul Flood System and method for data transfer across multiple clock domains
US6516420B1 (en) * 1999-10-25 2003-02-04 Motorola, Inc. Data synchronizer using a parallel handshaking pipeline wherein validity indicators generate and send acknowledgement signals to a different clock domain
ATE376211T1 (de) 2000-02-09 2007-11-15 Texas Instruments Inc Gerät zur signalsynchronisierung zwischen zwei taktbereichen
US7058799B2 (en) * 2001-06-19 2006-06-06 Micron Technology, Inc. Apparatus and method for clock domain crossing with integrated decode
EP1276028A1 (en) * 2001-07-09 2003-01-15 Telefonaktiebolaget L M Ericsson (Publ) Status indication detection device and method
WO2004100000A1 (en) 2003-05-09 2004-11-18 Koninklijke Philips Electronics N.V. Method for data signal transfer across different clock-domains

Also Published As

Publication number Publication date
US7562244B2 (en) 2009-07-14
JP2006526206A (ja) 2006-11-16
WO2004100000A1 (en) 2004-11-18
US20060274870A1 (en) 2006-12-07
KR101089153B1 (ko) 2011-12-05
TW200508840A (en) 2005-03-01
CN1784665A (zh) 2006-06-07
KR20060018845A (ko) 2006-03-02
EP1625503A1 (en) 2006-02-15
CN100559356C (zh) 2009-11-11

Similar Documents

Publication Publication Date Title
JP4533890B2 (ja) 異なるクロックドメイン間でのデータ信号転送のための方法
JP3565600B2 (ja) データ通信装置およびデータ通信方法
US5535377A (en) Method and apparatus for low latency synchronization of signals having different clock speeds
JP3611625B2 (ja) ライトリクエストインタロックを有するデータ処理装置および方法
US5654988A (en) Apparatus for generating a pulse clock signal for a multiple-stage synchronizer
US20190007190A1 (en) Methods and systems for synchronization between multiple clock domains
US6693918B1 (en) Elastic buffers for serdes word alignment and rate matching between time domains
JP4091941B2 (ja) クロック同期回路
US5422914A (en) System and method for synchronizing data communications between two devices operating at different clock frequencies
US6424688B1 (en) Method to transfer data in a system with multiple clock domains using clock skipping techniques
US7242737B2 (en) System and method for data phase realignment
US5291529A (en) Handshake synchronization system
US20100315134A1 (en) Systems and methods for multi-lane communication busses
US6900665B2 (en) Transfer of digital data across asynchronous clock domains
US6640277B1 (en) Input staging logic for latching source synchronous data
US6930522B2 (en) Method and apparatus to delay signal latching
US7735032B2 (en) Early HSS Rx data sampling
US6928574B1 (en) System and method for transferring data from a lower frequency clock domain to a higher frequency clock domain
EP1436685B1 (en) Data synchronization on a peripheral bus
US6552590B2 (en) Clocking scheme for ASIC
CN113168205B (zh) 用于低功率设计的用于基于事务的传输时钟门控的装置
US12073111B2 (en) Domain-selective control component
JP2596336B2 (ja) 非同期ディジタル通信装置
US6470459B1 (en) Half-word synchronization method for internal clock
JPH0895903A (ja) セグメントバスシステム及び同システムにおけるデータ転送方法並びにバス調停方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070502

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20070522

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100305

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100614

R150 Certificate of patent or registration of utility model

Ref document number: 4533890

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

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

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

LAPS Cancellation because of no payment of annual fees
R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350