JP2005518042A - クロックの異なるバス間におけるデータ転送 - Google Patents

クロックの異なるバス間におけるデータ転送 Download PDF

Info

Publication number
JP2005518042A
JP2005518042A JP2003570232A JP2003570232A JP2005518042A JP 2005518042 A JP2005518042 A JP 2005518042A JP 2003570232 A JP2003570232 A JP 2003570232A JP 2003570232 A JP2003570232 A JP 2003570232A JP 2005518042 A JP2005518042 A JP 2005518042A
Authority
JP
Japan
Prior art keywords
data
bus
intermediate register
clock frequency
register
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.)
Pending
Application number
JP2003570232A
Other languages
English (en)
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 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 Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of JP2005518042A publication Critical patent/JP2005518042A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/405Coupling between buses using bus bridges where the bridge performs a synchronising function
    • G06F13/4059Coupling between buses using bus bridges where the bridge performs a synchronising function where the synchronisation uses buffers, e.g. for speed matching between buses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Systems (AREA)
  • Dc Digital Transmission (AREA)
  • Bus Control (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

低速バスから高速バスへデータを非同期に転送する方法は、上記高速バスのクロック周波数のサイクルにおける第1の所定時点でデータをラッチすることと、上記高速バスのクロック周波数の同一のサイクルにおける第2の所定時点でデータをラッチすることを備え、上記第2および第1の所定時点の間の時間周期は上記データの周期よりも短く、上記第1および第2の所定時点でラッチされたデータの値が等しい場合、上記ラッチされたデータが第3の所定時点で上記高速バスの上へ転送され、または上記第1および第2の所定時点でサンプリングされた値が異なる場合、現在存在するデータの値が上記第3の所定時点で上記高速バスへ転送される。

Description

本発明は、異なるクロック速度で動作するバス間におけるデータ転送に関する。本発明は、限定はしないが、特に、各バスが異なるクロック速度で動作するバスネットワークアーキテクチャを有し、且つこれらのバス間で効果的にデータの転送を行うことができる集積回路への応用に関し、前記集積回路は携帯電話等に応用して用いられるものである。
米国特許明細書6,064,626(譲受人はARM Limited)には、集積回路用の周辺バス配列が開示されている。この明細書の序文には既知のバスアーキテクチャが開示されており、このバスアーキテクチャにおいては、高性能システムモジュールに対してはシステムバスを使用し、低電力装置に対しては周辺バスを使用している。これらのシステムおよび周辺バスは同一の速度で動作し、周辺ユニットの特定の動作速度のために必要とされるクロックの再同期化がその周辺ユニットで行われる。システムバスから処理要求信号を受信するために、および周辺バスを経由して周辺ユニットの動作を制御するのに必要なクロック信号と共に処理要求信号を適切な周辺ユニットに供給するためにブリッジが設けられている。集積回路においてこのアーキテクチャを実施する場合、電力消費量がシステムおよび周辺バスの動作速度と関係している、即ち動作速度が速くなるほど電力消費量が大きくなり、周辺バスの静電容量、即ち周辺バスに接続される周辺ユニットの数が多くなるほど電力消費量が大きくなるという欠点がある。
電力消費量を低減するため、明細書6,064,626が開示するバスアーキテクチャには、システムバスと、1つの高速周辺バスと、少なくとも1つの低速周辺バスと、前記システムバスと前記各周辺バスとの間のブリッジ回路構成とが存在する。周辺ユニットは、動作上の必要性に基づいて高速および低速バスと結合し、可能な限り低速バスを優先する。その結果、高速周辺バスに結合する周辺機器の数を最小限とすることによって、既知のバスアーキテクチャと比較して電力消費量が低減される。
フィリップスセミコンダクターズ社が設計した他のバスアーキテクチャには、78MHzの高クロック速度(HCLK)で動作するAHB(Advanced High−performance Bus)と呼ばれるシステムバスと、13MHzの低クロック速度(PCLK)で動作するVPBバスと呼ばれる周辺バスとが存在する。このようなアーキテクチャは、上記の従来技術から明らかなように、省電力を達成する一方で、少なくとも2つではなく1つの周辺バスを有している。HDLi(Hardware Descriptive Language Integrator)のAHB・VPB間ブリッジを使用すると、AHBに結合されたプロセッサ内のレジスタによってAHBから、VPBバスに結合された周辺機器へアクセスするには最大5PCLKサイクルかかる可能性がある。これは最悪の場合、転送では(PCLKサイクル当たりHCLKの6サイクル)×(5サイクルアクセス)=30HCLKサイクルとなる。これはAHBを駆動しているマイクロコンピュータにとっては長時間の遅延であり、このような遅延は望ましくない。
本発明の目的は、バスネットワークアーキテクチャにおける周辺機器にアクセスするレジスタの遅延を低減することである。
本発明の第1の側面によれば、第1のクロック周波数を有する第1の装置から前記第1のクロック周波数よりも高い第2のクロック周波数を有する第2の装置へデータを転送する方法であって、前記第2のクロック周波数のサイクルにおける第1の所定時点でデータをラッチし、前記第2のクロック周波数の前記サイクルにおける第2の所定時点でデータをラッチし、前記第2および第1の所定時点の間の時間周期は第1のクロック周波数の周期よりも短く、前記第1および第2の所定時点でラッチされたデータの値が等しい場合、ラッチされたデータを第2の装置が結合されているバス上へ第3の所定時点で転送し、または、前記第1および第2の所定時点でサンプリングされた値が異なる場合、現在存在するデータを前記第3の所定時点で前記バス上へ転送する、方法が提供される。
本発明の第2の側面によれば、
第2のクロック周波数で動作する第2の装置から前記第2のクロック周波数よりも低い第1のクロック周波数で動作する第1の装置へデータを転送する方法であって、前記第2のクロック周波数でデータを前記第2の装置から中間レジスタに格納し、前記第1のクロック周波数で前記データを前記中間レジスタから前記第1の装置へ転送する、方法が提供される。
本発明の第3の側面によれば、高速バスを低速バスに結合するデータ転送ブリッジであって、第1の所定時点で前記低速バス上の第1の低速データサンプルをラッチする第1のラッチ手段と、第2の所定時点で前記低速バス上の第2の低速データサンプルをラッチする第2のラッチ手段と、記低速データの前記第1および第2サンプルを比較する比較手段とを備え、前記第1および第2の所定時点の間の時間間隔は、前記低速データの周期よりも短く、前記比較手段は、同一の値の前記第1および第2サンプルに応答し、前記ラッチされたデータを前記高速バス上へ第3の所定時点で転送する第1の手段と、異なる前記第1および第2サンプルに応答し、現在存在する前記低速データのサンプルを第3の所定時点で前記高速バスへ転送する第2の手段と、を含む、データ転送ブリッジが提供される。
本発明の第4の側面によれば、高速データを、前記高速データのクロック速度よりも低い低クロック速度でクロックされる格納装置へ転送する装置であって、前記格納装置は、高速データがクロックされる中間レジスタと、前記中間レジスタに格納されたデータを前記低クロック速度で他のレジスタへ転送する手段とを備える、装置が提供される。
本発明の第1の側面による方法は、AHBバスと低電力高速アクセスバス(LPFAB)との間の完全な透過性を達成することによって、単一のHCLKサイクルを使用してLPFABバス上でレジスタがアクセスすることを可能にする。さらに、LPFABバス上でのクロックイベントを制限することによって消費電力を削減し、2つのクロックドメイン間におけるデータの正確な受け渡しを保証する。
本発明を添付された図面を参照して以下に一例として説明する。
図面においては、一致する特徴を示すため、同一の参照番号を使用した。
図1を参照すると、図示されたシステムは、例えば78MHzの最高システム速度HCLKで動作する高度高性能バス(AHB)20へ各双方向リンクを経由して結合された複数の装置を備えているが、前記速度は使用されるプロセッサに応じて他の速度とすることもできる。これらの装置は、プロセッサ10と、バスに結合された様々な装置によるAHB20へのアクセスを制御するアービタ12と、アドレスデコーダ14と、一括して16で示されたオンチップ内部および外部メモリ制御器とを含む。プロセッサ10がHCLKよりも高い周波数で動作する場合、バスブリッジ18がプロセッサ10とAHB20へのリンクとの間に結合される。
UART(汎用非同期送受信機)22、GPIO(多目的入出力)24およびタイマ26等の低帯域幅非バスマスタ装置は、双方向リンクによってLPFAB(低電力高速アクセスバス)インタフェース28へ結合され、それによってそれらのバスインタフェースを単純化し、AHB20の負荷を軽減している。LPFABインタフェース28は、AHB20のインタフェース速度またはそれよりも遅い速度、例えば13MHzで作動することができる。AHB・LPFABバス間ブリッジ30によってこれらの装置22、24および26をAHB20に接続している。バスブリッジ30は、LPFABインタフェースのスレーブデバイスである。
図2を参照すると、バスブリッジ30はいくつかの動作特徴を含んでおり、説明の都合上、使用される様々な略語を確認しておく。
クロック:
PCLK 例えば13MHzの周辺装置のクロック。しかし、周辺装置によってはさらに遅いPCLKを使用し、各周辺装置はHCLKよりも遅い範囲内で独自のPCLK速度を有することができる。
WRITE_CLK 書き込み用の単一パルス(HCLKのゲートパルス)。
READ_CLK リードクリアレジスタのみに使用される読み出し用の単一パルス(HCLKのゲートパルス)。
アドレスバスおよび周辺機器選択ライン
HADDR アドレスバス(このバスはREADデータの検証にのみ使用される)。
PA アドレスバス
PSEL PAを使用した周辺機器の選択。
EARLY−PSEL HADDRバスを使用した周辺機器の選択(この信号はREADデータの検証にのみ使用される)。
データバス:
PDI 周辺データインバス。
PDO (PAアドレスに基づく)周辺データアウトバス。
EARLY−PDO (HADDRアドレスに基づき、読み出し検証のみに使用される)周辺データアウト。
レディライン:
SHADOW_READY 選択アドレスのシャドウレジスタがさらなるデータを受信する準備が整っていること(シャドウレジスタがそのアドレスに使用されていない場合、デフォルトは”1”となる)。
バスブリッジ30内の様々な機能ブロックにはデータ検証ブロック32が含まれ、これにデータバスPDOおよびEARLY−PDOが接続されている。PDOバス上の有効データはブロック32によってデータ案内ブロック34に供給され、データ案内ブロック34は出力HRDATAを供給する。AHBアドレスおよび制御ライン36は、HADDR出力38と、アドレスデコードブロック40と、制御信号が1HCLKサイクル遅延されるブロック42とに結合されている。ブロック42は、PAに結合された出力44、ブロック34に結合された出力46、および読み出し(R)/書き込み(W)クロックイネーブルおよびHREADY発生器を示すブロック50の入力に遅延制御信号を供給する出力48の3つの出力を有している。
アドレスデコードブロック40は1HCLKサイクル遅延ブロック52に結合され、このブロック52は出力PSELをブロック50およびEARLY−PSEL出力54に供給する。ブロック50は、SHADOW_READY入力56および2つの出力58、60を有している。出力58はHREADYおよびHRESP信号をAHB20へ供給し、出力60はクロックイネーブルをクロック発生器ブロック(図示せず)へ供給する。
本発明の第1の側面による方法は、同期の必要がないレジスタのアクセスに関し、特にAHBバスを通過するあらゆるデータが少なくとも半HCLKサイクルの間安定し、その結果信頼されて有効データとなることを確実にすることに関する。
AHBおよびLPFABクロックに関連性がなく、その結果データがAHB20(図1)に読み出される際にLPFABレジスタ内で変化する可能性がある場合、一種の読み出し検証が必要とされる。信頼されるためにはデータは安定する必要があるが、その理由は少なくとも半HCLKサイクルの間安定していなかったデータは遷移の途中にある可能性があるからである。
図3を参照すると、読み出し検証は、AHBアドレスラインおよびLPFABアドレスラインの両方にLPFABバス28(図1)通して伝搬させることによって行われる。各LPFAB周辺機器PDEVは5つのレジスタREG1乃至REG5を備えている。各レジスタはそれぞれマルチプレクサMUX1およびMUX2の入力に結合された2つの出力を有しており、それによって現在のHADDRアドレスおよびPAアドレスからの同時の読み出しが可能となるため、読み出し検証が可能となる。より詳細には、MUX1はHADDRアドレスを用いてクロックが合わせられ、MUX2はPAアドレスを用いてクロックが合わせられ、HADDRアドレスはPAアドレスよりも少なくとも1HCLKサイクル進んでいる。この例においては、HADDRアドレスは実際の読み出しのおよそ2サイクル前にAHBバス上に乗せられる。より詳細には、図5Aおよび6Aの時間T1であるHCLKの立ち上がり後にアドレスが乗せられ、図5Aおよび6Aの時間T2である次の立ち上がり時にAHB周辺機器によってアドレスがラッチされ、図5Aおよび6Aの時間T3である次のHCLKの立ち上がり時に実際にデータ転送が行われる。
図2、5A乃至5Cおよび6A乃至6Cを参照すると、読み出し検証スキームにおいて、(1)データ検証ブロック32は、時間T1、即ちHCLKの立ち上がり時にEARLY_PDO(HADDRに基づくデータアウト)の値でラッチし、(2)データ検証ブロック32は、時間T2、即ち時間T1直後のHCLKの立ち下り時にPDO(PAに基づくデータアウト)の値でラッチし、(3)データ検証ブロック32は、時間T1およびT2に行った読み出しを比較する。これらが同一、即ち図5Bに示されているようである場合、時間T3におけるPDO値がいかなるものであっても、このデータ”A”は時間T3、即ち時間T1の次の立ち下がりでAHBバス20(図1)転送される。これは、時間T2とT3との間でデータが変化しないという保証がないためである。しかし、時間T1およびT2における読み出しが異なっている場合、即ち図6Bに示されているような場合、PLCKの立ち上がりが時間T1とT2との間に発生したということを意味しており、PLCKは必ずHCLKよりも遅いため、時間T2とT3との間では新たな立ち上がりはない、即ち図6Bに示されているようであることが保証できる。即ち、時間T3ではデータは安定するため、データ検証ブロック32はPDO値”B”(図6C)を直接AHBバス上に乗せることを許可する。
このデータ検証スキームでは、安定したデータが保証される一方で、データ転送での遅延が発生することがない。時間T1およびT2においてラッチされた読み出しの比較を行うロジックは、半HCLKサイクルで比較を行う。
読み出し検証プロセスを、図7に示されたフローチャートで纏める。ブロック62において、時間T1でPDO_EARLYの値をラッチする。ブロック64において、時間T2でPDOの値をラッチする。ブロック66において、時間T1およびT2でラッチされた値を比較する。ブロック68において、ラッチされた値が等しいかを確認し、これらが等しい場合(Y)、ブロック70において、時間T3でデータをAHBバスに転送する。これらが等しくない場合(N)、ブロック72において、時間T3でデータをAHBバスに転送する。
PAバスがLPFAB上で有効なレジスタであるアドレスを含んでいる場合は、必ずレジスタ読み出しが行われる。読み出しの時間を示すためにクロックが使用されることはない。データは常にPDOバスを介して各周辺機器から多重送信され、ワイヤードOR PDO_MUXブロックにおいて結合される。指示されたアドレスを含んでいない周辺機器はゼロを出力する。
(レジスタの内容を読み出し時に変更する必要がある)リードクリアアクセスの場合、READ_CLKを用いてレジスタが読み出されたことをブロックに伝える。
書き込みを行う場合、レジスタの性質が使用されているプロシージャに影響を与える。図4を参照すると、制御レジスタ74(周辺機器ではなくプロセッサによって書き込みのみが可能なレジスタ)が、PAアドレスPSELを設定することによってデータライン76を介してPDIから書き込みをされ、WRITE_CLKの立ち上がり時に書き込みが行われる。
プロセッサおよび周辺機器の両方によって書き込み可能なレジスタ78は、プロセッサからデータを受信した際にシャドウレジスタ80を使用する。このような場合、プロセッサはシャドウレジスタ80に対して書き込みを行い、その後データはMUX84を経由して実際のレジスタ78に転送される。シャドウレジスタ制御器82はシャドウレジスタと実際のレジスタ78との間のデータ転送を制御し、実際のレジスタ78はPCLKにクロックが合わせられる。周辺装置がPCLKでクロックされることから書き込みを行う場合、PDOからのデータは、実際のレジスタ78に書き込みを行うためのMUX84に直接印加される。
より詳細には、HCLKドメイン、即ちAHBからPCLKドメインへのデータの正確な受け渡しを保証するためには、データをPCLKに同期させる必要がある。同期させるにはおよそ1PCLKサイクルの時間を要し、これは比較的長い時間となるため、プロセッサを遅延させることは理想的ではない。その代わり、プロセッサはWRITE_CLKを制御レジスタのように用いてシャドウレジスタ80に対して書き込みを行い、その後実際のレジスタ78へ進んでデータを転送する。
この書き込み方法では、1HCLKサイクルでシャドウレジスタに書き込みを行い、先へ進むことをプロセッサに許容する。しかし、SHADOW_READYが低い限り、プロセッサはシャドウレジスタ80に対してさらなる書き込みを行うことまたは読み出しを行うことを禁止される。このシャドウレジスタ80に対する書き込み/読み出しの禁止によって、古いデータが実際のレジスタ78に転送される前に新たなデータがシャドウレジスタ80に書き込まれることを回避すると共に、プロセッサが再度シャドウレジスタ80から古いデータを読み出すことを回避する。シャドウレジスタ制御器82の作動中にプロセッサがそのアドレスへのレジスタアクセスを試みた場合、ブリッジ30はHREADYが低いことおよびHRESP=RETRYであることを主張し、プロセッサは読み出し/書き込みを再試行するように命じられ、これはSHADOW_READYラインが高状態に戻るまで継続する。
図8は、シャドウレジスタ制御器82(図4)の実施の形態を示している。制御器82はT型フリップフロップ84を備え、その出力は第1のD型フリップフロップ86のD入力に結合され、このD型フリップフロップ86の出力は第2のD型フリップフロップ88のD入力に結合されている。フリップフロップ84および88の出力は第1の排他的オアゲート90の各入力に結合されている。D型フリップフロップ86、88の出力は第2の排他的オアゲート92の各入力に結合されている。排他的オアゲート90の出力はインバータ94を経由してフリップフロップ84のT入力に結合されている。WRITE_CLOCK信号がフリップフロップ84のクロック入力に印加され、PCLK信号がフリップフロップ86、88のクロック入力に印加される。排他的オアゲート90はNotSHADOW_READY出力を供給し、排他的オアゲート92はMUX_CTRL出力を供給する。
動作時においては、書き込みが行われると、WRITE_CLKによってT型フリップフロップ84の出力がトグルし、状態が変化して直ちにSHADOW_READYラインを低下させる。これが発生すると同時に、シャドウレジスタ80に対する書き込みも行われる。SHADOW_READYラインをT型フリップフロップ84に入力することによって、さらなる書き込みがSHADOW_READYラインをトグルすることはない。PCLKの次の立ち上がり時にMUX_CTRLが”1”となり、次の立ち上がり時にデータがMUX84(図4)を介してシャドウレジスタ80(図4)から実際のレジスタ78(図4)に転送される。この転送が行われると同時に、MUX_CTRLは”0”に下がり、SHADOW_READYは”1”へ戻る。
WRITE_CLKによって書き込まれたシャドウレジスタ80の出力がPCLKによってクロックされたレジスタの値を決定する際に使用される場合、同期の問題が生じる。この問題は2つの方法のうちのいずれかによって解決することができる。第1の方法においては、PCLKをWRITE_CLKと同期させ、PCLKがWRITE_CLKより遥かに遅くても、PCLKはHCLKの立ち上がりと同時に立ち上がるだけである。第2の方法においては、フリップフロップは、PCLKを生成するクロック発生器ブロックの間に配置され、LPFABに到達するPCLK信号はPCLKの立ち上がりの到来を早期に警告する。次に、これをAHBバス20(図1)の非レディラインとして使用することができる。これによって、プロセッサがLPFABバス28(図1)に対して書き込みを行うことを防止することができる。2つ以上のフリップフロップを用いることによってより長い警告時間を得ることが可能である。
上述したバス間におけるデータ転送方法は、高速CPUバスと低速周辺バスとの間のインタフェースに対して低電力で高速の解決手段を提供する。この方法は、周辺バスの速度がCPUバスよりも速くない様々なバスアーキテクチャに適用可能である。
本明細書および請求の範囲において、要素の前に置かれた”a”または”an”(1つの)という語は上記要素が複数存在することを除外するものではない。さらに、”comprising”(備える)という語は、示された以外の要素またはステップが存在することを除外するものではない。
本開示内容を読むことにより、当業者には他の変形例が明らかとなるであろう。このような変形例には、バスアーキテクチャおよびそのための構成部分の設計、製造および使用法において既に知られ、且つここに既に説明した特徴の代わり、またはそれに加えて使用してもよい他の特徴が含まれる。
バスを使用してデータを転送する電子回路。
AHB・LPFABバス間ブリッジを有するシステムのブロック概略図である。 AHB・LPFABバス間ブリッジのブロック概略図である。 周辺機器のデータアウト回路のブロック概略図である。 周辺機器のデータイン回路のブロック概略図である。 本発明の第1の側面による方法の実施に関連する第1組のタイミング図である。 本発明の第1の側面による方法の実施に関連する第1組のタイミング図である。 本発明の第1の側面による方法の実施に関連する第1組のタイミング図である。 本発明の第1の側面による方法の実施に関連する第2組のタイミング図である。 本発明の第1の側面による方法の実施に関連する第2組のタイミング図である。 本発明の第1の側面による方法の実施に関連する第2組のタイミング図である。 本発明の第1の側面による方法に関連するフローチャートである。 図4に示されたシャドウレジスタ制御器のブロック概略図である。

Claims (11)

  1. 第1のクロック周波数を有する第1の装置から前記第1のクロック周波数よりも高い第2のクロック周波数を有する第2の装置へデータを転送する方法であって、前記第2のクロック周波数のサイクルにおける第1の所定時点でデータをラッチし、前記第2のクロック周波数の前記サイクルにおける第2の所定時点でデータをラッチし、前記第2および第1の所定時点の間の時間周期は第1のクロック周波数の周期よりも短く、前記第1および第2の所定時点でラッチされたデータの値が等しい場合、ラッチされたデータを第2の装置が結合されているバス上へ第3の所定時点で転送し、または、前記第1および第2の所定時点でサンプリングされた値が異なる場合、現在存在するデータを前記第3の所定時点で前記バス上へ転送する、方法。
  2. 前記第1および第2の所定時点の間の時間差、並びに、前記第2および第3の所定時点の間の時間差は実質的に等しいことを特徴とする、請求項1に記載の方法。
  3. 前記各時間差は、前記クロック周波数の半サイクルに実質的に一致することを特徴とする、請求項2に記載の方法。
  4. 第2のクロック周波数で動作する第2の装置から前記第2のクロック周波数よりも低い第1のクロック周波数で動作する第1の装置へデータを転送する方法であって、前記第2のクロック周波数でデータを前記第2の装置から中間レジスタに格納し、前記第1のクロック周波数で前記データを前記中間レジスタから前記第1の装置へ転送する、方法。
  5. 前記中間レジスタにデータが書き込まれた後、前記中間レジスタへのさらなるデータの格納を禁止することを特徴とする、請求項4に記載の方法。
  6. 高速バスを低速バスに結合するデータ転送ブリッジであって、第1の所定時点で前記低速バス上の第1の低速データサンプルをラッチする第1のラッチ手段と、
    第2の所定時点で前記低速バス上の第2の低速データサンプルをラッチする第2のラッチ手段と、前記低速データの前記第1および第2サンプルを比較する比較手段とを備え、
    前記第1および第2の所定時点の間の時間間隔は、前記低速データの周期よりも短く、
    前記比較手段は、
    同一の値の前記第1および第2サンプルに応答し、前記ラッチされたデータを前記高速バス上へ第3の所定時点で転送する第1の手段と、
    異なる前記第1および第2サンプルに応答し、現在存在する前記低速データのサンプルを第3の所定時点で前記高速バスへ転送する第2の手段と、を含む、
    データ転送ブリッジ。
  7. 高速データを、前記高速データのクロック速度よりも低い低クロック速度でクロックされる格納装置へ転送する装置であって、前記格納装置は、高速データがクロックされる中間レジスタと、前記中間レジスタに格納されたデータを前記低クロック速度で他のレジスタへ転送する手段とを備える、装置。
  8. 前記中間レジスタにデータが書き込まれた後、前記中間レジスタへの高速データのさらなる格納を禁止する手段により特徴づけられる、請求項7に記載の装置。
  9. 前記他のレジスタへ格納されるべきデータを転送する前記手段は前記中間レジスタの出力に結合されたデータ入力を有するマルチプレクサを備え、中間レジスタ制御器が設けられ、前記中間レジスタ制御器は、前記中間レジスタの制御入力に結合され、前記マルチプレクサによるデータの転送を制御する出力を有する、ことを特徴とする、請求項7に記載の装置。
  10. 前記中間レジスタ制御器は、前記中間レジスタにデータが書き込まれた後、前記中間レジスタへのデータのさらなる格納を禁止する手段を含むことを特徴とする、請求項9に記載の装置。
  11. 前記中間レジスタ制御器は、
    第2のD型フリップフロップに結合された出力を有する第1のD型フリップフロップに結合された出力を有するT型フリップフロップと、
    前記T型フリップフロップの出力と前記第2のD型フリップフロップの出力とにそれぞれ結合された入力、および出力を有する第1の排他的オアゲートと、
    前記第1の排他的オアゲートの出力を前記T型フリップフロップの入力に結合する信号インバータと、
    前記第1および第2のD型フリップフロップにそれぞれ結合された入力を有する第2の排他的オアゲートと、を含み、
    前記第1の排他的オアゲートの出力は、前記中間レジスタにデータが書き込まれた後、前記中間レジスタへのデータの格納を禁止するために使用されることを特徴とする、請求項9または10に記載の装置。
JP2003570232A 2002-02-22 2003-01-28 クロックの異なるバス間におけるデータ転送 Pending JP2005518042A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB0204144.0A GB0204144D0 (en) 2002-02-22 2002-02-22 Transferring data between differently clocked busses
PCT/IB2003/000246 WO2003071405A1 (en) 2002-02-22 2003-01-28 Transferring data between differently clocked busses

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2009055004A Division JP2009163758A (ja) 2002-02-22 2009-03-09 クロックの異なるバス間におけるデータ転送

Publications (1)

Publication Number Publication Date
JP2005518042A true JP2005518042A (ja) 2005-06-16

Family

ID=9931531

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2003570232A Pending JP2005518042A (ja) 2002-02-22 2003-01-28 クロックの異なるバス間におけるデータ転送
JP2009055004A Pending JP2009163758A (ja) 2002-02-22 2009-03-09 クロックの異なるバス間におけるデータ転送

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2009055004A Pending JP2009163758A (ja) 2002-02-22 2009-03-09 クロックの異なるバス間におけるデータ転送

Country Status (11)

Country Link
US (1) US7165184B2 (ja)
EP (1) EP1478994B1 (ja)
JP (2) JP2005518042A (ja)
KR (1) KR100963706B1 (ja)
CN (1) CN100343778C (ja)
AT (1) ATE415665T1 (ja)
AU (1) AU2003201487A1 (ja)
DE (1) DE60324897D1 (ja)
GB (1) GB0204144D0 (ja)
TW (1) TWI291624B (ja)
WO (1) WO2003071405A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008283568A (ja) * 2007-05-11 2008-11-20 Sony Corp 無線通信端末、半導体デバイス、データ通信方法および無線通信システム
JP2012216985A (ja) * 2011-03-31 2012-11-08 Renesas Electronics Corp データ転送システムおよびデータ転送方法

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2003289615A1 (en) * 2003-12-18 2005-07-05 Zte Corporation A bus interface converter capable of convert amba ahb bus protocol into i960-like bus protocol
KR101086401B1 (ko) * 2004-06-02 2011-11-25 삼성전자주식회사 서로 다른 속도로 동작하는 버스들을 인터페이싱하는 방법및 장치
US7600081B2 (en) * 2006-01-18 2009-10-06 Marvell World Trade Ltd. Processor architecture having multi-ported memory
US8250280B1 (en) 2008-07-15 2012-08-21 Marvell Israel (M.I.S.L.) Ltd. Bus transaction maintenance protocol
IT1399916B1 (it) 2010-04-30 2013-05-09 Balluchi Dispositivo di memoria ad accesso di registro indicizzato
US9489304B1 (en) * 2011-11-14 2016-11-08 Marvell International Ltd. Bi-domain bridge enhanced systems and communication methods
CN103092175B (zh) * 2013-01-21 2015-04-15 杭州华三通信技术有限公司 I2c主设备与从设备之间串行时钟线scl控制的方法及装置
GB2528481B (en) * 2014-07-23 2016-08-17 Ibm Updating of shadow registers in N:1 clock domain
GB201810785D0 (en) 2018-06-29 2018-08-15 Nordic Semiconductor Asa Asynchronous communication

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4716525A (en) * 1985-04-15 1987-12-29 Concurrent Computer Corporation Peripheral controller for coupling data buses having different protocol and transfer rates
US5256912A (en) * 1991-12-19 1993-10-26 Sun Microsystems, Inc. Synchronizer apparatus for system having at least two clock domains
JPH0713927A (ja) * 1993-06-24 1995-01-17 Fujitsu Ltd 非同期同期変換回路
EP0834134B1 (en) * 1995-06-07 2005-02-16 Samsung Electronics Co., Ltd. Delay reduction in transfer of buffered data between two mutually asynchronous buses
JP2993463B2 (ja) * 1997-05-08 1999-12-20 日本電気株式会社 同期回路制御装置
JPH11160100A (ja) 1997-11-25 1999-06-18 Sony Precision Technology Inc スケール装置
JP2000010850A (ja) * 1998-06-19 2000-01-14 Nec Eng Ltd メモリアクセスシステム
US6064626A (en) * 1998-07-31 2000-05-16 Arm Limited Peripheral buses for integrated circuit
JP2000076180A (ja) * 1998-08-28 2000-03-14 Nec Corp バス接続装置及び情報処理システム
JP2000242544A (ja) * 1999-02-25 2000-09-08 Fuji Xerox Co Ltd メモリ制御装置及びダイレクトメモリアクセス制御装置
US6345328B1 (en) * 1999-06-09 2002-02-05 Advanced Micro Devices, Inc. Gear box for multiple clock domains
US6549593B1 (en) * 1999-07-19 2003-04-15 Thomson Licensing S.A. Interface apparatus for interfacing data to a plurality of different clock domains
US6408409B1 (en) * 1999-11-15 2002-06-18 Sun Microsystems, Inc. Method and apparatus for ring buffer flow error detection
US6816979B1 (en) * 2001-02-01 2004-11-09 Cypress Semiconductor Corp. Configurable fast clock detection logic with programmable resolution
US6931562B1 (en) * 2001-08-23 2005-08-16 Hewlett-Packard Development Company, L.P. System and method for transferring data from a higher frequency clock domain to a lower frequency clock domain
US6928574B1 (en) * 2001-08-23 2005-08-09 Hewlett-Packard Development Company, L.P. System and method for transferring data from a lower frequency clock domain to a higher frequency clock domain
US7010713B2 (en) * 2002-12-19 2006-03-07 Mosaid Technologies, Inc. Synchronization circuit and method with transparent latches
US6949955B2 (en) * 2003-11-24 2005-09-27 Intel Corporation Synchronizing signals between clock domains
US7061286B2 (en) * 2004-06-24 2006-06-13 Teradyne, Inc. Synchronization between low frequency and high frequency digital signals

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008283568A (ja) * 2007-05-11 2008-11-20 Sony Corp 無線通信端末、半導体デバイス、データ通信方法および無線通信システム
US8077645B2 (en) 2007-05-11 2011-12-13 Sony Corporation Wireless communication terminal, semiconductor device, data communication method, and wireless communication system
JP2012216985A (ja) * 2011-03-31 2012-11-08 Renesas Electronics Corp データ転送システムおよびデータ転送方法

Also Published As

Publication number Publication date
GB0204144D0 (en) 2002-04-10
WO2003071405A1 (en) 2003-08-28
DE60324897D1 (de) 2009-01-08
US20050108482A1 (en) 2005-05-19
EP1478994B1 (en) 2008-11-26
EP1478994A1 (en) 2004-11-24
TWI291624B (en) 2007-12-21
TW200303472A (en) 2003-09-01
JP2009163758A (ja) 2009-07-23
CN100343778C (zh) 2007-10-17
AU2003201487A1 (en) 2003-09-09
ATE415665T1 (de) 2008-12-15
US7165184B2 (en) 2007-01-16
KR100963706B1 (ko) 2010-06-14
CN1639670A (zh) 2005-07-13
KR20040085209A (ko) 2004-10-07

Similar Documents

Publication Publication Date Title
JP2009163758A (ja) クロックの異なるバス間におけるデータ転送
US8065461B2 (en) Capturing read data
KR101549648B1 (ko) 메모리 액세스 지연을 트레이닝하기 위한 방법 및 장치
US8656198B2 (en) Method and apparatus for memory power management
US7519788B2 (en) System and method for an asynchronous data buffer having buffer write and read pointers
US6810460B1 (en) AMBA bus off-chip bridge
KR20020077331A (ko) 집적 회로
US11829640B2 (en) Asynchronous arbitration across clock domains for register writes in an integrated circuit chip
US8140797B2 (en) Integrated circuit and method of securing access to an on-chip memory
US7076582B2 (en) Bus precharge during a phase of a clock signal to eliminate idle clock cycle
US5590316A (en) Clock doubler and smooth transfer circuit
US7093052B2 (en) Bus sampling on one edge of a clock signal and driving on another edge
US5754825A (en) Lower address line prediction and substitution
AU670507B2 (en) Method and system for providing data hold time by synchronous random access memory during write operations
KR100579419B1 (ko) Ddr sdram 데이터 전송을 위한 amba인터페이스 장치
JP4557689B2 (ja) Dramコントローラ
CN118103908A (zh) 存储器的动态设置时间和保持时间调节
JP2008530647A (ja) エネルギ消費を低減したバス調停制御器

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060126

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20080605

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080904

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080909

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20081209

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20081216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090309

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091030