JPH09167134A - データ同期システム - Google Patents

データ同期システム

Info

Publication number
JPH09167134A
JPH09167134A JP8307246A JP30724696A JPH09167134A JP H09167134 A JPH09167134 A JP H09167134A JP 8307246 A JP8307246 A JP 8307246A JP 30724696 A JP30724696 A JP 30724696A JP H09167134 A JPH09167134 A JP H09167134A
Authority
JP
Japan
Prior art keywords
bus
signal
latch
input
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.)
Granted
Application number
JP8307246A
Other languages
English (en)
Other versions
JP3616468B2 (ja
Inventor
Michael C Alexander
ミッシェル・シ−・アレキサンダー
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.)
Motorola Solutions Inc
Original Assignee
Motorola 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 Motorola Inc filed Critical Motorola Inc
Publication of JPH09167134A publication Critical patent/JPH09167134A/ja
Application granted granted Critical
Publication of JP3616468B2 publication Critical patent/JP3616468B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

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

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Logic Circuits (AREA)

Abstract

(57)【要約】 【課題】 高いクロック・レートで動作するデータ・プ
ロセッサ10と、低いクロック・レートで動作するアド
レスおよびデータ・バスとの間のデータの流れを制御す
る、バス・インタフェース・ユニット12におけるデー
タ同期システムを提供する。 【解決手段】 データ同期システムは、4つの異なるク
ロック領域、すなわち、コア・レート,バス・レート,
転送レートおよび受信レートで動作する回路経路を内蔵
する。データ・プロセッサの高いクロック・レートでの
み、あるいはアドレスおよびデータ・バスの低いクロッ
ク・レートでのみデータを処理する回路は、それぞれコ
ア・レート領域またはバス・レート領域で動作する。転
送レート領域は、コア・レートからバス・レートにデー
タを転送するために用いられる。逆に、受信レート領域
は、バス・レートからコア・レートにデータを転送する
ために用いられる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、一般に、データ処理シ
ステムに関し、さらに詳しくは、データ処理システムで
用いられるデータ同期方法に関する。
【0002】
【従来の技術】多くのデータ処理システムは、異なるク
ロック周波数で動作するサブシステムと設計される。こ
の方法は、精選したサブシステムのスピードを残りのサ
ブシステムに比べて増加することにより全体的な処理ス
ループットを向上させることができる。一般に、これら
の高速サブシステムの性能は、システムの性能全体にと
って重要であるか、あるいは向上させるのが比較的安価
のいずれかである。この設計方法の一例として、関連バ
スのクロック周波数の数倍のクロック周波数で動作する
単一のVLSI(very large scale integrated)データ
・プロセッサを有するデータ処理システムがある。この
場合、データ処理システム内の全てではないにしろほと
んどの他のサブシステムは、低いバス・クロック・スピ
ードで動作する。一般に、2つのクロック周波数の比率
は、2つの整数の比率、例えば、2:1,3:1,4:
1などで表すことができる。これらの比率の範囲は、シ
ステム間通信を同期させるため2つのクロック信号があ
る程度の周波数位相整合を有するという実際的な条件を
反映する。位相整合が頻繁になればなるほど、高速デー
タ・プロセッサと低速バスとの間でデータを転送する回
数が増える。
【0003】
【発明が解決しようとする課題】関連バスとは異なるク
ロック周波数で動作するデータ・プロセッサを有するデ
ータ処理システムは、データ・プロセッサとバスとの間
のデータ転送を同期しなければならない。例えば、2:
1プロセッサ・バス・システムでは、データ・プロセッ
サが1プロセッサ・クロック・サイクルでしか信号をア
サートしなければ、データ・プロセッサはバス信号の適
正位相中に出力信号をアサートしない場合がある。逆
に、バスは、2プロセッサ・クロック・サイクルで、デ
ータ・プロセッサの入力信号をアサートする場合があ
る。これら両方の場合では、データ転送は不安定にな
る。第1の場合では、データはデータ・プロセッサから
バスに全く転送されないことがある。第2の場合では、
バスは同じデータをデータ・プロセッサに2回転送す
る。
【0004】既知の同期方法には制限がある。一般に、
データ転送方法は、非同期あるいは同期として表すこと
ができる。これら各方法には、異なる同期問題がある。
【0005】非同期の場合、最少信号ホールド時間以外
には、2つの通信するサブシステム間にタイミング条件
はない。一つの既知の解決方法では、低速出力信号を、
一連のシーケンシャル・ラッチ素子を介して高速入力デ
バイスによってサンプリングする。高速入力デバイスの
クロッキング信号は、各ラッチ素子をクロックする。各
連続したラッチ素子は、準安定状態(metastable state)
が低速デバイスから高速デバイスに渡される可能性を低
減する。残念ながら、各追加ラッチは、サブシステムか
らサブシステムへの伝搬時間を、追加高速クロック・サ
イクル分だけ増加させる。
【0006】同期の場合、2つの通信するサブシステム
間にタイミング条件がある。特に、受信側デバイスのク
ロック信号の特定の位相中に信号をアサートしなければ
ならない。第2の既知の解決方法では、単一のラッチ素
子マルチプレクサ回路が異なるクロック周波数で動作す
る2つのサブシステムを連結する。ラッチ素子は、各高
速クロック・サイクルと同時にマルチプレクサの出力を
サンプリングする。マルチプレクサは、以前ラッチした
値または入力信号のいずれかを出力する。マルチプレク
サの出力は、受信側サブシステムのタイミング条件に従
って各入力信号を渡すように、制御信号によって選択さ
れる。一般に、受信側サブシステムのクロック信号は、
高速クロック信号のN−1クロック・パルスを「飲み込
む(swallow) 」ことによって生成され、ここでプロセッ
サ対バス・クロック周波数の比率は、N:1である。こ
の方法は、2つのクロック周波数の比率が整数の場合に
のみ堅牢である。それ以外の場合には、Nが1.5,
2.5などのとき、この方法は1つおきのバス・クロッ
クで半サイクル転送を許可する。さらに、特定の解決
は、一つのプロセッサ対バス・クロック比でのみ一般に
有効となる。
【0007】
【実施例】図1は、本発明により構成されたデータ・プ
ロセッサ10のブロック図を示す。図示のように、デー
タ・プロセッサ10は、バス・インタフェース・ユニッ
ト12(以下では簡単にBIU12という)を有する。
BIU12は、データ・プロセッサ10と、データ・プ
ロセッサ10を他のデータ処理要素(図示せず)に接続
するアドレス・バスおよび制御バスとの間のデータの流
れを制御する。データ・プロセッサ10およびBIU1
2は、関連バスのクロック・スピードよりも高いクロッ
ク・スピードで動作する。従来技術の説明のところで説
明したように、このクロッキング方式は、データ・プロ
セッサ10を内蔵するデータ処理システムの性能を改善
する。また、本開示の発明によれば、BIU12は、バ
ス・クロック・レートの数倍のプロセッサ・クロック・
レートによって生じる同期問題に対する汎用的な解決方
法を提供する。この解決方法により、単一データ・プロ
セッサ・モデルをさまざまなバス周波数で利用できるよ
うになる。さらに、本開示の発明は、非同期および同期
データ転送システムに従来つきまとった問題である、デ
ータ・プロセッサと関連バスとの間のデータの流れに不
必要な遅延を発生することや、また不安定な半サイクル
・データ経路を許可することがない。
【0008】図1において、BIU12は、命令キャッ
シュ14と、データ・キャッシュ16とに接続される。
命令キャッシュ14は、命令ストリームをシーケンサ/
ディスパッチ・ユニット18に供給する。シーケンサ/
ディスパッチ・ユニット18は、個々の命令を適切な実
行ユニット・ブロックに送出する。データ・プロセッサ
10は、固定小数点実行ユニット20,分岐実行ユニッ
ト22,浮動小数点実行ユニット24およびロード/ス
トア実行ユニット26を有する。これらの実行ユニット
・ブロックは、リネーム・バッファ(rename buffer) 2
8とアーキテクチュラル・レジスタ・ファイル(archite
ctural register file) 30とに接続される。
【0009】本開示の同期方法およびそのためのシステ
ムのないデータ・プロセッサの動作は、当技術分野で周
知である。一般に、シーケンサ/ディスパッチ・ユニッ
ト18は、個々の命令を各実行ユニット20,22、2
4,26に発行する。各実行ユニットは、特定クラスの
命令のうち1つまたはそれ以上の命令を実行する。各実
行ユニットの特定クラスの命令は、実行ユニットの名称
によって表される。例えば、分岐実行ユニット22は、
分岐命令を実行する。実行ユニット・ブロック20,2
2,24,26は、その演算結果をリネーム・バッファ
28内の指定されたエントリに返す。リネーム・バッフ
ァ28は、本発明には関係ない既知のプロトコルに従っ
てアーキテクチュラル・レジスタ・ファイル30内の値
を更新する。リネーム・バッファ28およびアーキテク
チュラル・レジスタ・ファイル30は、オペランドを実
行ユニット・ブロック20〜26に与える。
【0010】データ同期方法およびそのためのシステム
を有するデータ・プロセッサ10の動作について、図2
ないし図13を参照して以下で説明する。概して、デー
タ・プロセッサ10と、アドレスおよびデータ・バスと
は、1:1のデータ・プロセッサ・クロック周波数とバ
ス・クロック周波数の比率では、同期方法やシステムな
しにデータ通信を可能にする通信プロトコルに従う。例
えば、特定の期間でバス・クロックの特定の位相中にい
ずれかのバス上でアサートされた信号は、データ・プロ
セッサおよびバスが同一周波数で動作する場合には、次
の特定のエッジ遷移の発生時にデータ・プロセッサ10
によって正しくラッチされる。さらに、データ・プロセ
ッサ10およびアドレスおよびデータ・バスは、「ハン
ドシェイク」通信プロトコルに従う。ハンドシェイク通
信プロトコルとは、プロトコル参加側の任意のクロック
・サイクルを任意の種類のデータ・プロトコル動作のた
めに利用できるプロトコルのことである。プロトコル参
加側間の制御信号のセット上でアサートされた論理信号
のセットは、各クロック・サイクル中にどの動作が行わ
れるのかを決定する。特定のプロトコルは、本開示の発
明の一部ではない。データ・プロセッサ10をできるだ
け高いクロック周波数で動作させることが一般に有利で
ある。ただし、アドレスおよびデータ・バスを同じ高い
クロック周波数で動作させることは経済的でなく、不可
能でさえある。本開示のデータ同期システムは、このよ
うなシステムに内蔵できる。
【0011】図2は、図1に示すBIU12の一部のブ
ロック図を示す。図2は、BIU12内の単一のビット
経路を示すことに理解されたい。当業者であれば、BI
U12には図示以外の多くの他の個別のビット経路があ
ることが理解される。さらに、図2は、BIU12の各
機能ではなく、本開示の発明をさらにわかりやすく説明
するため汎用論理ブロックを示す。これらの機能は、イ
ンプリメントに依存し、本開示の発明の一部ではない。
当業者であれば、各ビット経路には、それに関連して、
固有論理機能および固有論理ブロックがあることが理解
されよう。また、全てのビット経路が図2の全ての部分
を含むわけではないが、各ビット経路の一般的な形状は
同じである。また、個別のビット経路の多くは汎用論理
ブロック内で相互接続されることが当業者に理解され
る。
【0012】一般に、BIU12は、4つの時間領域、
すなわち、コア・レート領域(「CORE」),転送レ
ート領域(「TXFR」),バス・レート領域(「BU
S」)および受信レート領域(「RCV」)に従って、
データ・プロセッサ10とアドレスおよびデータ・バス
との間でデータを処理する。CMOS(complementaryme
tal oxide semiconductor) 構成では、マスタ・スレー
ブ・ラッチは、中間結果を論理ステージ間でホールドす
るために、入力/出力バッファとして用いられる。CM
OSマスタ・スレーブ・ラッチのマスタ部分は、一般に
C1パルスと呼ばれる信号によって制御される。C1パ
ルスをアサートすることにより、マスタ部分はラッチへ
のデータ入力を捕捉する。CMOSマスタ・スレーブ・
ラッチのスレーブ部分は、一般にC2パルスと呼ばれる
信号によって制御される。C2パルスをアサートするこ
とにより、スレーブ部分は、以前のC1パルス中に捕捉
されたデータ入力をラッチの出力に送り出す。本開示の
発明に従って、各4つのクロック領域について個別のC
1およびC2制御信号が存在する。
【0013】コア・レート領域は、データ・プロセッサ
10の通常クロック領域である。コア・レート領域は、
グローバル分散クロック(「GCLK」:globally dis
tributed clock)の各サイクルに一回クロックする。G
CLKの低位相は濾波され、制御信号CORE C1を
生成する。GCLKの高位相は濾波されて、制御信号C
ORE C2を生成する。データ・プロセッサ10の大
部分は、コア・レート領域に従って動作する。BIU1
2は、コア・レート領域で動作してデータ・プロセッサ
10の残りの部分から情報を受け、この情報を処理し、
データ・プロセッサ10の残りの部分に返送する回路を
内蔵する。
【0014】転送レート領域は、コア・レートがバス・
クロック・サイクルの開始前に半サイクルしかクロック
しない場合の除いて、コア・レートの各サイクルで一回
クロックする。これらの場合には、バス・レート・クロ
ックの立ち上がりエッジは、コア・レート・クロックの
立ち下がりエッジと一致する。ここで、TXFR C1
およびTXFR C2の両方は濾波される。BIU12
は、転送レート領域で動作してデータ・プロセッサ10
の残りの部分から情報を受け、この情報を処理し、バス
・レート領域で動作するBIU12の部分に送出する回
路を内蔵する。転送レート領域は、非整数コア:バス・
クロック比で発生する「半サイクル」経路中に、データ
がバスに転送されるのを防ぐ。本開示の発明の別の実施
例では、半サイクルの場合にCORE C2の次の発生
までTXFR C2を単純に遅延させることも可能であ
る。この別の実施例では、バス・レート・クロックの立
ち上がりエッジの直後に発生するTXFR C1パルス
は削除しなければならない。
【0015】バス・レート領域は、アドレスおよびデー
タ・バスの通常クロック領域である。上記のように、バ
ス・レート領域は、性能上の理由から、コア・レート領
域の整数倍遅く、あるいは整数プラス1/2倍遅くクロ
ックする。バス・レート領域の周波数は、一般に、デー
タ・プロセッサ10の位相同期ループ(「PLL」)に
入力されるシステム・クロック(「SYSCLK」)に
よって表される。GCLKの特定の低位相は濾波され、
制御信号BUS C1を生成する。GCLKの特定の高
位相は濾波され、制御信号BUS C2を生成する。こ
のように濾波された特定の位相については、図7および
図8を参照して以下で説明する。BIU12は、バス・
レート領域で動作してアドレスおよびデータ・バスから
情報を受け、この情報を処理し、アドレスおよびデータ
・バスに返送する回路を内蔵する。
【0016】受信レート領域は、コア・レートがバス・
クロック・サイクルの開始前に半サイクルしかクロック
しない場合を除いて、バス・レート領域の各サイクルで
一回クロックする。これらの場合には、RCV C2
は、CORE C2パルスと整合できるまで遅延され
る。BIU12は、受信レート領域で動作してアドレス
およびデータ・バスからできるだけすぐにデータをサン
プリングする回路を内蔵する。ただし、BIU12は、
完全なコア・クロック・サイクルが開始するまで、デー
タをデータ・プロセッサ10のコアに送り出さない。
【0017】さらに図2において、論理ブロック32
は、論理ブロック34の出力から、命令キャッシュ14
および/またはデータ・キャッシュ16から、それにA
NDゲート36の出力から、シングル入力ビットを受け
る。論理ブロック32の出力は、マスタ・スレーブ・ラ
ッチ(以下では「ラッチ」という)38の入力と、ラッ
チ40の入力とに結合される。ラッチ38のマスタ部分
は、制御信号COREC1によってクロックされる。ラ
ッチ38のスレーブ部分は、制御信号COREC2によ
ってクロックされる。ラッチ38のスレーブ部分の出力
は、論理ブロック34に結合される。ラッチ38につい
ては、図3を参照して以下で説明する。ラッチ40のマ
スタ部分は、制御信号TXFR C1によってクロック
される。ラッチ40のスレーブ部分は、制御信号TXF
R C2によってクロックされる。ラッチ38のスレー
ブ部分の出力は、論理ブロック34に結合される。
【0018】論理ブロック42は、ラッチ40のスレー
ブ部分の出力から、アドレス・バスおよび/またはデー
タ・バスから、それに論理ブロック44の出力から、シ
ングル入力ビットを受ける。論理ブロック42の出力
は、ラッチ46の入力と、ラッチ48の入力とに結合さ
れる。ラッチ46のマスタ部分は、制御信号BUS C
1によってクロックされる。ラッチ46のスレーブ部分
は、制御信号BUS C2によってクロックされる。ラ
ッチ46のスレーブ部分の出力は、論理ブロック50に
結合される。論理ブロック50は、シングル・ビットを
アドレスおよびデータ・バスに出力する。ラッチ48の
マスタ部分は、制御信号RCV C1によってクロック
される。ラッチ48のスレーブ部分は、制御信号RCV
C2によってクロックされる。ラッチ48のスレーブ
部分の出力は、論理ブロック44に結合される。また、
論理ブロック44の出力は、ANDゲート36の第1入
力に結合される。ANDゲート36の第2入力は、制御
信号A2/B4を受ける。制御信号A2/B4は、論理
ブロック44の出力の第1部分を除く全てをマスクす
る。この第1部分は、ラッチ48がその出力を論理ブロ
ック44に送り出した後に発生する最初のCORE C
1およびCORE C2パルスと一致する。制御信号A
2/B4の生成については、図7を参照して以下で説明
する。
【0019】図3は、図2および他の図面に示すマスタ
・スレーブ・ラッチ38の回路図を示す。当業者であれ
ば、ラッチ38は、異なるクロック入力を除いて、図2
に示す他のラッチと同一であることが理解される。従っ
て、図2では、本発明を理解する上で図面の有用性を汎
用化するため、制御信号は「C1」および「C2」と略
されている。
【0020】ラッチ38のマスタ部分は、パス・ゲート
(pass gate) 52の第1端子に結合されたデータ入力を
受ける。パス・ゲート52の第2端子は、インバータ5
4の入力と、パス・ゲート56の第1端子とに接続され
る。インバータ54の出力は、インバータ58の入力に
結合される。インバータ58の出力は、パス・ゲート5
6の第2端子に接続される。パス・ゲート52のn型デ
バイスおよびp型デバイスの制御電極は、制御信号C1
と、「反転C1」と記された制御信号C1の論理補数と
をそれぞれ受ける。パス・ゲート56のp型デバイスお
よびn型デバイスの制御電極は、C1および反転C1を
それぞれ受ける。インバータ54の出力は、「INVE
RTING INTERMEDIATE OUTPU
T」と記された中間出力を生成する。この中間出力は、
入力の論理補数であり、一つのC1パルス後に出力され
る。通常コア・レートまたはバス・レート領域では、中
間出力は半クロック・サイクル後に通過する。
【0021】ラッチ38のスレーブ部分は、パス・ゲー
ト60の第1端子に結合された中間出力を受ける。パス
・ゲート60の第2端子は、インバータ62の入力と、
パス・ゲート64の第1端子とに接続される。インバー
タ62の出力は、インバータ66の入力に結合される。
インバータ66の出力は、パス・ゲート64の第2端子
に接続される。パス・ゲート60のn型デバイスおよび
p型デバイスの制御電極は、制御信号C2と、「反転C
2」と記された制御信号C2の論理補数とをそれぞれ受
ける。パス・ゲート64のp型デバイスおよびn型デバ
イスの制御電極は、C2および反転C2をそれぞれ受け
る。インバータ62の出力は、「OUTPUT」と記さ
れた最終出力を生成する。中間出力は、中間出力の補数
であり、一つのC2パルス後に出力される。通常コア・
レートまたはバス・レート領域では、入力は、完全なク
ロック・サイクル後にラッチ38のマスタ部分およびス
レーブ部分を通過する。
【0022】図4は、図2に示すBIU12に入力され
る制御信号を生成すべく動作可能な位相同期ループ
(「PLL」)70を示す。位相比較器72は、インバ
ータ74の出力と、バス・レート領域クロックSYSC
LKとを受ける。上記のように、SYSCLKは、同期
のためにデータ・プロセッサ10に入力されるアドレス
およびデータ・バス・クロック信号である。位相比較器
72は、SYSCLKの各立ち上がりエッジにおいてイ
ンバータ74によって出力されるクロック信号の位相を
比較する。SYSCLKの位相がインバータ74の出力
よりも進む場合、位相比較器72は制御信号UPをアサ
ートする。SYSCLKの位相がインバータ74の出力
より遅れる場合、位相比較器72は制御信号DOWNを
アサートする。
【0023】電圧制御発振器(「VCO」)76は、制
御信号UPおよびDOWNを受けて、クロック信号GC
LKの周波数の2倍の周期クロッキング信号を生成す
る。上記のように、GCLKは、データ・プロセッサ1
0全体で分散されるクロッキング信号である。一般に、
VCO76は、UPおよびDOWNのアサートによって
それぞれ充電および放電されるノード(図示せず)を内
蔵する。このノードの電圧は、出力クロック信号の周波
数を制御するために用いられる。一実施例では、この電
圧は、リング発振器への一つまたはそれ以上の電源の印
加を制御するために用いられる。VCO76の出力は、
2分周回路(divide-by-two circuit) 78に結合され
る。2分周回路78は、VCOによって出力されたクロ
ック信号の周波数を2分の1にする。この分周により、
GCLKの均等なデューティ・サイクルが保証される
(低位相および高位相は長さが等しい)。
【0024】上記のように、クロック信号GCLKは、
データ・プロセッサ全体で分散される。データ・プロセ
ッサ10内のクロック・スキュー(clock skew)を最小限
に抑えることを目的として、多数のクロック・リジェネ
レータ(clock regenerator)用いられ、図2に示す各ク
ラッチからのGCLKをバッファする。一実施例では、
約300個のクロック・リジェネレータが各ラッチから
のGCLKをバッファする。ただし、全てのラッチが同
一時間領域でクロックされるわけではない。本発明の4
つの異なる時間領域については、図2を参照して上で説
明した。
【0025】BIU12内には、4種類のクロック・リ
ジェネレータが存在する。各種類の数は、BIU12に
複雑性と、アドレスおよびデータ・バスの幅とに依存す
る。図示のため、各種類のリジェネレータの一つの例を
図示する。バス・リジェネレータ(「BUS REGE
N」と記される)80は、GCLKからと、QUALI
FIER SIGNALSのグループのうちの少なくと
も一つから、クロックパルスBUS C1およびBUS
C2を生成する。 QUALIFIER SIGNA
LSのグループについては、図7を参照して以下で説明
する。一つのバス・リジェネレータ80のBUS C1
出力は、インバータ74の入力に結合される。インバー
タ74の出力は、各クロック領域をSYSCLKと同期
させるために位相比較器72によって用いられる。バス
・リジェネレータ80については、図8を参照して以下
でさらに説明する。受信リジェネレータ(「RCV R
EGEN」と記される)82は、GCLKからと、QU
ALIFIER SIGNALSのグループのうち少な
くとも一つから、クロック・パルスRCV C1および
RCV C2を生成する。受信リジェネレータ82につ
いては、図9を参照して以下でさらに説明する。転送リ
ジェネレータ(「TXFR REGEN」と記される)
84は、GCLKからと、QUALIFIER SIG
NALSのグループの少なくとも一つから、クロック・
パルスTXFR C1およびTXFRC2を生成する。
転送リジェネレータ84については、図10を参照して
以下でさらに説明する。コア・リジェネレータ(「CO
RE REGEN」と記される)86は、GCLKから
クロック・パルスCORE C1およびCORE C2
を生成する。コア・リジェネレータ86については、図
11を参照して以下でさらに説明する。
【0026】データ・プロセッサ10内のほとんどのク
ロック・リジェネレータは、非BIU回路についてはク
ロック・パルスCORE C1およびCORE C2を
生成する。図4は、これらのコア・リジェネレータ
(「CORE REGEN」と記される)88,90の
うち2つを示す.プリクォリファイア論理ブロック(pre
qualifier logic block)94は、CORE C1および
CORE C2クロック信号と、入力信号CONFIG
BITSを受けて、制御信号反転PRE−Aおよび反
転PRE−Bを生成する。(エンジニアリング分野で
は、上線(反転)を用いてアクティブ・ロー信号を表す
のが慣習である。)CONFIG BITSにより、デ
ータ・プロセッサ10のユーザは、GCLKの周波数と
SYSCLKの周波数の比率を設定できる。これらは、
いくつかの専用入力/出力ピンを介してデータ・プロセ
ッサ10に直接入力してもよく、あるいは命令の実行に
よってユーザにアクセス可能なレジスタに格納してもよ
い。プリクォリファイア論理ブロック94はについて
は、図5を参照して以下で説明する。制御信号反転PR
E−Aおよび反転PRE−Bは、クォリファイア論理ブ
ロック96に結合される。クォリファイア論理ブロック
96は、バス・リジェネレータ80,受信リジェネレー
タ82および転送リジェネレータ84によって用いられ
るQUALIFIER SIGNALSのグループを生
成する。
【0027】図5は、図4に示すプリクォリファイア論
理ブロック94のブロック図を示す。第1デコーダ・ブ
ロック100は、4つのCONFIG BITSをバイ
ナリ数値に復号する。上記のように、CONFIG B
ITSは、コアとバス・クロック周波数の比率を指定す
る。CONFIG BITSが1:1,2:1,3:
1,...,N:1などの整数バス・モードを指定する
ように設定されると、デコーダ・ブロック100はバイ
ナリ形式で数値N−1を出力する。CONFIGBIT
Sが1.5:1,2.5:1,3.5:1,...,N
+0.5:1など整数プラス1/2バス・モードを指定
するように設定されると、デコーダ・ブロック100は
バイナリ形式で数値2Nを出力する。
【0028】デコーダ・ブロック100の復号された出
力は、カウントダウン・カウンタ102のデータ入力
(「DIN」)に結合される。カウントダウン・カウン
タ102は、そのロード入力(反転LD)がアサートさ
れたときに復号出力をロードする。カウントダウン・カ
ウンタ102は、コアまたはGCLKサイクル毎に1数
値のレートで、入力数値からゼロまでカウントダウンす
る。カウントダウン・カウンタ102のカレント・カウ
ント値は、DOUTを介して第2デコーダ・ブロック1
04と、第3デコーダ・ブロック106とに絶えず出力
される。また、CONFIG BITSは、デコーダ・
ブロック106に入力される。デコーダ・ブロック10
4,106は、信号反転PRE−Aおよび反転PRE−
Bをそれぞれ生成する。信号反転PRE−Aは、カウン
トダウン・カウンタ102のロード入力に結合される。
【0029】図6は、図5に示すプリクォリファイア論
理ブロック94の動作を示すタイミング図を示す。デコ
ーダ・ブロック104は、DOUTがゼロに等しいと
き、低論理状態に対応する電圧を反転PRE−Aとして
出力する。デコーダ・ブロック104は、DOUTがゼ
ロ以外の数値に等しいとき、高論理状態に対応する電圧
を反転PRE−Aとして出力する。反転PRE−Aの低
アサートにより、カウントダウン・カウンタ102はデ
コーダ・ブロック100によって出力された数値にリセ
ットされ、再びカウントダウンを開始する。そのため、
反転PRE−Aは、整数バス・モードでは、GCLKの
N倍の周期を有するようにみえ、また整数プラス1/2
バス・モードでは、GCLKの2N+1倍の周期を有す
るようにみえる。1:1バス・モードの場合、反転PR
E−Aは低論理状態のままである。CONFIG BI
TSが整数バス・モードを指定すると、デコーダ・ブロ
ック106は高論理状態に対応する定電圧を反転PRE
−Bとして出力する。CONFIG BITSが整数プ
ラス1/2バス・モードを指定すると、デコーダ・ブロ
ック106は、反転PRE−Bとして可変電圧レベルを
出力する。後者の場合、デコーダ・ブロック106は、
デコーダ・ブロック104が低論理状態を反転PRE−
Aとして出力した後、低論理状態に対応する出力を反転
PRE−BのNサイクルとして出力し、ここでコア:バ
ス比はN+0.5:1として定義される。デコーダ・ブ
ロック106は、他の全ての場合で高論理状態に対応す
る電圧を出力する。
【0030】本開示の発明の一実施例では、信号反転P
RE−Aを特定のサイクル数だけ遅延せずに、カウント
ダウン・カウンタ102によって出力された数値を復号
するほうが有利である。この方式では、より簡単な汎用
的な解決方法が得られる。この実施例では、(1)CO
NFIG BITSが1.5:1を指定し、かつカウン
トダウン・カウンタ102によって出力される数値が2
に等しいとき、あるいは(2)CONFIG BITS
が2.5:1を指定し、かつカウントダウン・カウンタ
102によって出力される数値が3に等しいとき、ある
いは(3)CONFIG BITSが3.5:1を指定
し、かつカウントダウン・カウンタ102によって出力
される数値が4に等しいとき、あるいは(4)CONF
IG BITSが4.5:1を指定し、かつカウントダ
ウン・カウンタ102によって出力される数値が5に等
しいとき、デコード・ブロック106は低論理状態に対
応する電圧を反転PRE−Bとして出力する。一般に、
デコーダ・ブロック106は、CONFIG BITS
がN+0.5:1を指定し、かつカウントダウン・カウ
ンタ102によって出力される数値がN+1に等しいと
き、低論理状態に対応する電圧を反転PRE−Bとして
出力する。
【0031】図7は、図4に示すクォリファイア論理ブ
ロック96のブロック図を示す。クォリファイア論理ブ
ロック96は、バス・リジェネレータ80,受信リジェ
ネレータ82および転送リジェネレータ84によって用
いられるQUALIFIERSIGNALSのグループ
を生成する。インバータ110の出力は、クォリファイ
ア信号A0を生成する。インバータ110の入力は、ラ
ッチ112のデータ出力に結合される。ラッチ112の
入力は、反転PRE−Aを受ける。ラッチ114の反転
中間出力は、クォリファイア信号A1を生成する。ラッ
チ114の入力は、ラッチ112の出力に結合される。
ラッチ116の反転中間出力は、クォリファイア信号A
1/B3を生成する。ラッチ116の入力は、ANDゲ
ート118の出力に結合される。ANDゲート118の
第1入力は、ラッチ112の出力に結合される。AND
ゲート118の第2入力は、ラッチ120の出力に結合
される。ラッチ120の入力は、ラッチ122の出力に
結合される。ラッチ122の入力は、反転PRE−Bを
受ける。インバータ124の出力は、クォリファイア信
号B2を生成する。インバータ124の入力は、ラッチ
120の出力に結合される。インバータ126の出力
は、クォリファイア信号反転B2を生成する。インバー
タ126の入力は、ラッチ128の反転中間出力に結合
される。ラッチ128の入力は、ラッチ122の出力に
結合される。また、ラッチ128の反転中間出力は、ク
ォリファイア信号B1を生成する。ラッチ122の出力
は、クォリファイア信号反転B0を生成する。ラッチ1
30の出力は、クォリファイア信号A2/B4を生成す
る。ラッチ130の入力は、ラッチ132の出力に結合
される。ラッチ132の入力は、NANDゲート134
の出力に結合される。NANDゲート134の第1入力
は、ラッチ136の出力に結合される。ラッチ136の
入力は、反転PRE−Bを受ける。NANDゲート13
4の第2入力は、反転PRE−Aを受ける。
【0032】図8ないし図11は、図4に示すバス・リ
ジェネレータ80,受信リジェネレータ82,転送リジ
ェネレータ84およびコア・リジェネレータ86の回路
図をそれぞれ示す。当業者であれば、図8ないし図11
に示す回路は、各入力を除いて同一であることが理解さ
れる。
【0033】図8において、ORゲート140の出力
は、信号BUS C1を生成する。ORゲート140の
第1入力は、ANDゲート142の出力に結合される。
ORゲート140の第2入力は、ANDゲート144の
出力に結合される。ANDゲート142の第1および第
2入力は、GCLKの論理補数およびA0をそれぞれ受
ける。ANDゲート144の第1および第2入力は、G
CLKおよびB1をそれぞれ受ける。ORゲート146
の出力は、信号BUS C2を生成する。ORゲート1
46の第1入力は、ANDゲート148の出力に結合さ
れる。ORゲート146の第2入力は、ANDゲート1
50の出力に結合される。ANDゲート148の第1お
よび第2入力は、GCLKおよびA1をそれぞれ受け
る。ANDゲート150の第1および第2入力は、GC
LKの論理補数およびB2をそれぞれ受ける。
【0034】図9において、ORゲート152の出力
は、信号RCV C1を生成する。ORゲート152の
第1入力は、ANDゲート154の出力に結合される。
ORゲート152の第2入力は、ANDゲート156の
出力に結合される。ANDゲート154の第1および第
2入力は、GCLKの論理補数およびA0をそれぞれ受
ける。ANDゲート156の第1および第2入力は、G
CLKおよびB1をそれぞれ受ける。ORゲート158
の出力は、信号RCV C2を生成する。ORゲート1
58の第1入力は、ANDゲート160の出力に結合さ
れる。ORゲート158の第2入力は、ANDゲート1
62の出力に結合される。ANDゲート160の第1お
よび第2入力は、GCLKおよびA1/B3をそれぞれ
受ける。ANDゲート162の第1および第2入力は、
GCLKの論理補数と、低論理状態(「GND」と記さ
れる)に対応する電圧レベルとをぞれぞれ受ける。
【0035】図10において、ORゲート164の出力
は、信号TXFR C1を生成する。ORゲート164
の第1入力は、ANDゲート166の出力に結合され
る。ORゲート164の第2入力は、ANDゲート16
8の出力に結合される。ANDゲート166の第1およ
び第2入力は、GCLKの論理補数および反転B0をそ
れぞれ受ける。ANDゲート168の第1および第2入
力は、GCLKと、低論理状態に対応する電圧レベルと
をそれぞれ受ける。ORゲート170の出力は、信号T
XFR C2を生成する。ORゲート170の第1入力
は、ANDゲート172の出力に結合される。ORゲー
ト170の第2入力は、ANDゲート174の出力に結
合される。ANDゲート172の第1および第2入力
は、GCLKおよび反転B1をそれぞれ受ける。AND
ゲート174の第1および第2入力は、GCLKの論理
補数と、低論理状態に対応する電圧レベルとをそれぞれ
受ける。
【0036】図11において、ORゲート176の出力
は、信号CORE C1を生成する。ORゲート176
の第1入力は、ANDゲート178の出力に結合され
る。ORゲート176の第2入力は、ANDゲート18
0の出力に結合される。ANDゲート178の第1およ
び第2入力は、GCLKの論理補数と、高論理状態
(「VDD」と記される)に対応する電圧レベルとをそ
れぞれ受ける。ANDゲート180の第1および第2入
力は、GCLKと、高論理状態に対応する電圧レベルと
をそれぞれ受ける。ORゲート182の出力は、信号C
ORE C2を生成する。ORゲート182の第1入力
は、ANDゲート184の出力に結合される。ORゲー
ト182の第2入力は、ANDゲート186の出力に結
合される。ANDゲート184の第1および第2入力
は、GCLKと、高論理状態に対応する電圧レベルとを
それぞれ受ける。ANDゲート186の第1および第2
入力は、GCLKの論理補数と、高論理状態に対応する
電圧レベルとをそれぞれ受ける。コア・リジェネレータ
86は、データ・プロセッサ10におけるクロッキング
・スキューを最小限に抑えるため、バス・リジェネレー
タ80,受信リジェネレータ82および転送リジェネレ
ータ84と同じ数の論理ゲートを内蔵する。
【0037】図12は、3:1モードにおける本開示の
発明の動作を示すタイミング図を示す。ここで、反転P
RE−A,A0およびA1は、3つのGCLKサイクル
の周期を有する。反転PRE−B,反転B0,B1およ
びB2は、全て静的(static)である。本開示の発明を明
確に説明するため、図12は、特定のC1およびC2パ
ルスを発生のみを示す。
【0038】上記のように、BIU12は、コア・レー
ト領域で動作するデータ・プロセッサ10の大半と、バ
ス・レート領域で動作するアドレスおよびデータ・バス
との間でインタフェースとして機能する。ラッチ38お
よび論理ブロック32,34(図3に図示)は、コア・
レート領域においてデータ・プロセッサ10から受けた
データを処理する。CORE C1およびCORE C
2は、GCLKの2位相から生成される。同様に、ラッ
チ46および論理ブロック42,50は、バス・レート
領域においてアドレスおよびデータ・バスから受けたデ
ータを処理する。BUS C1およびBUS C2は、
A0およびA1によってそれぞれゲートされたGCLK
の2位相から生成される。図示のように、BUS C1
およびBUS C2は、SYSCLK立ち上がりエッジ
にまたがるGCLK長のパルスである。
【0039】しかし、データ・プロセッサ10が有用な
仕事を実行するためには、コア・レート領域とバス・レ
ート領域との間でデータを転送できなければならない。
ラッチ40は、コア・レート領域からバス・レート領域
へのデータ経路を提供する。ラッチ40は、TXFR
C1およびTXFR C2によってクロックされる。同
様に、ラッチ48は、バス・レート領域からコア・レー
ト領域へのデータ経路を提供する。ラッチ48は、RC
V C1およびRCV C2によってクロックされる。
上記のように、データは、半サイクル経路の発生中に、
コア・レート領域とバス・レート領域との間で転送して
はならない。転送レート領域および受信レート領域は、
他の転送を許可しつつ、これらの転送を阻止する。この
整数のコア対バス比では、コア・レート領域とバス・レ
ート領域との間では半サイクル経路はない。従って、T
XFR C1およびTXFR C2は、CORE C1
およびCORE C2とそれぞれ同一であり、またRC
V C1およびRCV C2は、BUS C1およびB
US C2とそれぞれ同一である。
【0040】図13は、3.5:1モードにおける本開
示の発明の動作を示すタイミング図を示す。この整数プ
ラス1/2のコア対バス比では、コア・レート領域とバ
ス・レート領域との間で周期的な半サイクル経路が存在
する。図示のように、GCLKの立ち下がりエッジは、
一つおきのSYSCLKサイクルでSYSCLKの立ち
上がりエッジと整合する。通常、GCLKの立ち上がり
エッジは、SYSCLKの立ち上がりエッジとのみ整合
する。(例えば、図12を参照。)半サイクル経路で
は、GCLKの高位相(CORE C2)中にコア・レ
ート領域デバイスによって送り出された信号は、バス・
レート領域で動作するデバイスによって、半クロック・
サイクルだけ遅れてサンプリングされる。同様に、BU
S C2中にバス・レート領域デバイスによって送り出
された信号は、コア・レート領域で動作するデバイスに
よって、半クロック・サイクルだけ遅れてサンプリング
される。
【0041】信号伝搬のために許容された半クロック・
サイクルでのみ、ラッチからラッチにデータが送り出さ
れた場合、データ・プロセッサ10にエラーが生じるこ
とがある。一般に、データ・プロセッサ10内の全ての
回路は、特定の最少サイクル時間あるいはそれ以上で適
正動作するように設計される。介在する論理を介して伝
搬するために信号にフル・サイクルが与えられないと、
信号は不安定になる可能性がある。このような状況で信
号が不安定になるかどうかは、次のラッチに達する前に
通過する論理の複雑性に依存する。介在する論理が単純
ならば、信号は半サイクルのみで確実に伝搬できる。し
かし、介在する論理が複雑ならば、信号は伝搬するため
に半サイクル以上を必要とすることがある。この場合、
信号は、動作すべき半クロック・サイクルしか与えられ
ないと、誤った値を報告する。
【0042】コア・レート領域からバス・レート領域へ
のデータ転送の場合、転送リジェネレータ84(図4に
図示)は、半サイクル経路の前に発生する各TXFR
C2パルスを飲み込む。TXFR C2をこのように修
正することにより、バス・レート領域回路がデータをラ
ッチするのが速すぎるかもしれないと、ラッチ40はデ
ータをラッチ46,48に送り出さない。図示の実施例
では、転送リジェネレータ8は半サイクル経路前に発生
する各TXFR C1パルスも飲み込む。従って、論理
ブロック32によって出力されるデータは、SYSCL
Kの開始までラッチ40によって捕捉されない。
【0043】バス・レート領域からコア・レート領域へ
のデータ転送の場合、受信リジェネレータ82(図4に
図示)は、半サイクル経路中に発生する各RCV C2
パルスを遅延させる。RCV C2をこのように修正す
ることにより、ラッチ38,40がデータをラッチする
のが速すぎるかもしれないと、ラッチ48はデータをラ
ッチ38,40に送り出さない。RCV C1は、BU
S C1と同一であり、そのためラッチ48はバス・レ
ート領域においてバス情報を捕捉できる。
【0044】本発明について特定の実施例とともに説明
してきたが、更なる修正や改善は当業者に想起される。
例えば、本開示の発明は、データ・プロセッサの一部と
して説明した。しかし、本開示の発明は、アドレス・バ
スまたはデータ・バスあるいはスタンドアロン・デバイ
スとしても構築できる。従って、特許請求の範囲は、2
つのデバイス間で動作するデータ同期システムについて
記載する。故に、本発明は、特許請求の範囲に定義され
る発明の精神および範囲から逸脱しない一切のこのよう
な修正を網羅するものとする。
【図面の簡単な説明】
【図1】本発明により構成されたデータ・プロセッサの
ブロック図である。
【図2】図1に示すバス・インタフェース・ユニットの
一部のブロック図である。
【図3】図2および他の図面に示すマスタ・スレーブ・
ラッチの回路図である。
【図4】図2に示すバス・インタフェース・ユニットに
入力される制御信号を生成すべく動作可能な位相同期ル
ープを示す図である。
【図5】図4に示すプリクォリファイア論理ブロックの
ブロック図である。
【図6】図5に示すプリクォリファイアの動作を示すタ
イミング図である。
【図7】図4に示すクォリファイア論理ブロックのブロ
ック図である。
【図8】図4に示すバス・リジェネレータを示す回路図
である。
【図9】図4に示す受信リジェネレータを示す回路図で
ある。
【図10】図4に示す転送リジェネレータを示す回路図
である。
【図11】図4に示すコア・リジェネレータを示す回路
図である。
【図12】3:1モードにおける本発明の動作を示すタ
イミング図である。
【図13】3.5:1モードにおける本発明の動作を示
すタイミング図である。
【符号の説明】
10 データ・プロセッサ 12 バス・インタフェース・ユニット(BIU) 14 命令キャッシュ 16 データ・キャッシュ 18 シーケンサ/ディスパッチ・ユニット 20 固定小数点実行ユニット 22 分岐実行ユニット 24 浮動小数点実行ユニット 26 ロード/ストア実行ユニット 28 リネーム・バッファ 30 アーキテクチュラル・レジスタ・ファイル 32 論理ブロック 34 論理ブロック 36 ANDゲート 38 ラッチ 40 ラッチ 42 論理ブロック 44 論理ブロック 46 ラッチ 48 ラッチ 50 論理ブロック 52 パス・ゲート 54 インバータ 56 パス・ゲート 58 インバータ 60 パス・ゲート 62 インバータ 64 パス・ゲート 66 インバータ 70 位相同期ループ(PLL) 72 位相比較器 74 インバータ 76 電圧制御発振器(VCO) 78 2分周回路 80 バス・リジェネレータ(BUS REGEN) 82 受信リジェネレータ(RCV REGEN) 84 転送リジェネレータ(TXFR REGEN) 86 コア・リジェネレータ(CORE REGEN) 88,90 コア・リジェネレータ(CORE REG
EN) 94 プリクォリファイア論理ブロック 96 クォリファイア論理ブロック 100 第1デコーダ・ブロック 102 カウントダウン・カウンタ 104 第2デコーダ・ブロック 106 第3デコーダ・ブロック 110 インバータ 112,114,116 ラッチ 118 ANDゲート 120,122 ラッチ 124,126 インバータ 128,130,132,136 ラッチ 134 NANDゲート 140,146 ORゲート 142,144,148,150 ANDゲート 152,158 ORゲート 154,156.160,162 ANDゲート 164,170 ORゲート 166,168,172,174 ANDゲート 176,182 ORゲート 178,180,184,186 ANDゲート

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 第1デバイスおよび第2デバイスと用い
    られるデータ同期システム(12)であって、前記第1
    デバイスは、第1周波数で発振する第1クロック信号に
    基づいて動作し、前記第2デバイスは、第2周波数で発
    振する第2クロック信号に基づいて動作し、前記第1周
    波数は前記第2周波数よりも大きい、前記データ同期シ
    ステムであって:前記第1デバイスの出力を受ける入力
    を有する転送ラッチ(40)であって、前記転送ラッチ
    は、TXFR C1信号に応答して前記入力にてデータ
    ・ビットを捕捉し、TXFR C2信号に応答してデー
    タ・ビットを送り出す、転送ラッチ(40);前記転送
    ラッチの出力を受ける入力と、前記第2デバイスに結合
    された出力とを有するバス・ラッチ(46)であって、
    前記バス・ラッチは、BUS C1信号に応答して前記
    入力にてデータ・ビットを捕捉し、BUS C2信号に
    応答してデータ・ビットを送り出す、バス・ラッチ(4
    6);前記第2デバイスの出力に結合された入力と、前
    記第1デバイスに結合された出力とを有する受信ラッチ
    (48)であって、前記受信ラッチは、RCV C1信
    号に応答して前記入力にてデータ・ビットを捕捉し、R
    CV C2信号に応答してデータ・ビットを送り出す、
    受信ラッチ(48);およびTXFR C1,TXFR
    C2,BUS C1,BUS C2,RCV C1お
    よびRCV C2信号を生成するクロック発生回路(8
    0,82,84,86,94,96);によって構成さ
    れることを特徴とするデータ同期システム。
  2. 【請求項2】 第1周波数で発振する第1クロック信号
    に基づいて動作するデータ・プロセッサ(10)であっ
    て、前記データ・プロセッサは、第2周波数で発振する
    第2クロック信号に基づいて動作するバス(データ・バ
    ス,アドレス・バス)に結合され、前記第1周波数は前
    記第2周波数よりも大きい、前記データ・プロセッサで
    あって;前記第1周波数で動作するコア回路(14,1
    6)であって、前記バスから受けた命令を実行し、かつ
    結果を前記バスに書き込む、コア回路(14,16);
    前記コア回路および前記バスを結合するバス・インタフ
    ェース回路(12)であって、前記バス・インタフェー
    ス回路は複数のビット経路からなり、前記複数のビット
    経路のそれぞれは:前記コア回路の出力を受ける入力を
    有する転送ラッチ(40)であって、前記転送ラッチ
    は、TXFR C1信号に応答して前記入力にてデータ
    ・ビットを捕捉し、TXFR C2信号に応答してデー
    タ・ビットを送り出す、転送ラッチ(40)と;前記転
    送ラッチの出力を受ける入力と、前記バスに結合された
    出力とを有するバス・ラッチ(46)であって、前記バ
    ス・ラッチは、BUS C1信号に応答して前記入力に
    てデータ・ビットを捕捉し、BUS C2信号に応答し
    てデータ・ビットを送り出す、バス・ラッチ(46)
    と;前記バスに結合された入力と、前記コア回路に結合
    された出力とを有する受信ラッチ(48)であって、前
    記受信ラッチは、RCV C1信号に応答して前記入力
    にてデータ・ビットを捕捉し、RCV C2信号に応答
    してデータ・ビットを送り出す、受信ラッチ(48)
    と;TXFR C1,TXFR C2,BUS C1,
    BUS C2,RCVC1およびRCV C2信号を生
    成するクロック発生回路(80,82,84,86,9
    4,96)と;からなるバス・インタフェース回路(1
    2);によって構成されるデータ・プロセッサ。
  3. 【請求項3】 第1周波数で発振する第1クロック信号
    に基づいて動作するデータ・プロセッサ(10)であっ
    て、前記データ・プロセッサは、第2周波数で発振する
    第2クロック信号に基づいて動作するバス(データ・バ
    ス,アドレス・バス)に結合され、前記第1周波数は前
    記第2周波数よりも大きい、前記データ・プロセッサで
    あって;第1入力と、前記第2クロック信号に結合され
    た第2入力とからなる位相検出器(72,76,78)
    であって、前記位相検出器は、前記第2クロック信号
    と、前記第1入力にて受けた入力との間の位相差に応答
    して制御信号を生成する位相検出器;前記位相検出器に
    結合されたクロック発生回路(94,96)であって、
    前記クロック発生回路は、第3クロック信号を発生し、
    前記第3クロック信号の位相および周波数は前記制御信
    号に応答する、クロック発生回路(94,96);前記
    クロック発生回路に結合されたバス・リジェネレータ
    (80)であって、前記バスリジェネレータは、BUS
    C1信号およびBUS C2信号を発生し、前記BU
    S C1信号および前記BUS C2信号は、前記第2
    周波数で発振し、前記BUS C1信号は前記位相検出
    器の第1入力に結合される、バス・リジェネレータ(8
    0);前記クロック発生回路に結合された受信リジェネ
    レータ(82)であって、前記受信リジェネレータは、
    RCV C1信号およびRCV C2信号を発生し、前
    記RCV C1信号および前記RCV C2信号は前記
    第2周波数で発振し、前記受信リジェネレータは、前記
    第1クロック信号の第1の所定のエッジと前記第2クロ
    ック信号の第2の所定のエッジとが一致したときに、前
    記第1クロック信号の半サイクルでRCV C2のアサ
    ートを遅延させる、受信リジェネレータ(82);前記
    クロック発生回路に結合された転送リジェネレータ(8
    4)であって、前記転送リジェネレータは、TXFR
    C1信号およびTXFR C2信号を発生し、前記TX
    FR C1信号および前記TXFR C2信号は前記第
    1周波数で発振し、前記転送リジェネレータは、一致時
    にTXFR C2のアサートを削除する、転送リジェネ
    レータ(84);および前記クロック発生回路に結合さ
    れたコア・リジェネレータ(86)であって、前記コア
    ・リジェネレータは、CORE C1信号およびCOR
    E C2信号を発生し、前記CORE C1信号および
    前記CORE C2信号は、前記第1周波数で発振す
    る、コア・リジェネレータ(86);によって構成され
    ることを特徴とするデータ・プロセッサ。
JP30724696A 1995-11-03 1996-11-01 データ同期システム Expired - Fee Related JP3616468B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US552657 1990-07-16
US08/552,657 US5781765A (en) 1995-11-03 1995-11-03 System for data synchronization between two devices using four time domains

Publications (2)

Publication Number Publication Date
JPH09167134A true JPH09167134A (ja) 1997-06-24
JP3616468B2 JP3616468B2 (ja) 2005-02-02

Family

ID=24206241

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30724696A Expired - Fee Related JP3616468B2 (ja) 1995-11-03 1996-11-01 データ同期システム

Country Status (4)

Country Link
US (1) US5781765A (ja)
EP (1) EP0772133A3 (ja)
JP (1) JP3616468B2 (ja)
TW (1) TW317617B (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6493407B1 (en) * 1997-05-27 2002-12-10 Fusion Micromedia Corporation Synchronous latching bus arrangement for interfacing discrete and/or integrated modules in a digital system and associated method
US6266799B1 (en) * 1997-10-02 2001-07-24 Xaqti, Corporation Multi-phase data/clock recovery circuitry and methods for implementing same
US6000022A (en) 1997-10-10 1999-12-07 Micron Technology, Inc. Method and apparatus for coupling signals between two circuits operating in different clock domains
US6434684B1 (en) * 1998-09-03 2002-08-13 Micron Technology, Inc. Method and apparatus for coupling signals across different clock domains, and memory device and computer system using same
US6311285B1 (en) * 1999-04-27 2001-10-30 Intel Corporation Method and apparatus for source synchronous transfers at frequencies including an odd fraction of a core frequency
US7007187B1 (en) * 2000-06-30 2006-02-28 Intel Corporation Method and apparatus for an integrated circuit having flexible-ratio frequency domain cross-overs
US6949955B2 (en) * 2003-11-24 2005-09-27 Intel Corporation Synchronizing signals between clock domains
WO2013100976A1 (en) * 2011-12-28 2013-07-04 Intel Corporation Data transfer between asynchronous clock domains
US9793894B1 (en) 2016-11-18 2017-10-17 Via Alliance Semiconductor Co., Ltd. Data synchronizer for registering a data signal into a clock domain
US9768776B1 (en) * 2016-11-18 2017-09-19 Via Alliance Semiconductor Co., Ltd. Data synchronizer for latching an asynchronous data signal relative to a clock signal
US10401427B2 (en) 2016-11-18 2019-09-03 Via Alliance Semiconductor Co., Ltd. Scannable data synchronizer

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4893271A (en) * 1983-11-07 1990-01-09 Motorola, Inc. Synthesized clock microcomputer with power saving
JPH07112147B2 (ja) * 1989-11-13 1995-11-29 三菱電機株式会社 半導体集積回路
US5448715A (en) * 1992-07-29 1995-09-05 Hewlett-Packard Company Dual clock domain interface between CPU and memory bus
US5471587A (en) * 1992-09-30 1995-11-28 Intel Corporation Fractional speed bus coupling
US5422914A (en) * 1993-09-07 1995-06-06 Motorola, Inc. System and method for synchronizing data communications between two devices operating at different clock frequencies
US5600824A (en) * 1994-02-04 1997-02-04 Hewlett-Packard Company Clock generating means for generating bus clock and chip clock synchronously having frequency ratio of N-1/N responsive to synchronization signal for inhibiting data transfer

Also Published As

Publication number Publication date
EP0772133A2 (en) 1997-05-07
EP0772133A3 (en) 1997-10-22
JP3616468B2 (ja) 2005-02-02
US5781765A (en) 1998-07-14
TW317617B (ja) 1997-10-11

Similar Documents

Publication Publication Date Title
US5623223A (en) Glitchless clock switching circuit
EP1166210B1 (en) Elastic interface apparatus and method therefor
US6563349B2 (en) Multiplexor generating a glitch free output when selecting from multiple clock signals
US6345328B1 (en) Gear box for multiple clock domains
JPH07253947A (ja) データ通信装置
US6480049B2 (en) Multiphase clock generator
JPH10117185A (ja) データを転送するためのシンクロナイザ、方法及びシステム
US5422914A (en) System and method for synchronizing data communications between two devices operating at different clock frequencies
JP4130006B2 (ja) 半導体装置
JP3457459B2 (ja) 外部クロック周波数で送られるデータを内部クロック周波数と同期させる方法及び倍数クロック変換器
US6172540B1 (en) Apparatus for fast logic transfer of data across asynchronous clock domains
JP3616468B2 (ja) データ同期システム
JP3851113B2 (ja) デスキュー回路を有するクロック生成器
JP3739431B2 (ja) 集積回路およびデータ処理装置
US6550013B1 (en) Memory clock generator and method therefor
JP2660769B2 (ja) 同期デジタルクロック用スケーラ
US6928574B1 (en) System and method for transferring data from a lower frequency clock domain to a higher frequency clock domain
US20020078328A1 (en) Pulse-controlled micropipeline architecture
JP3121397B2 (ja) 同期タイミング生成回路
JPH09130235A (ja) ディジタルpll回路
JP3671362B2 (ja) 位相周波数比較回路およびpll回路
JP2000353939A (ja) クロック信号同期式フリップフロップ回路
JP3248698B2 (ja) Pwm信号生成装置
JP2546137B2 (ja) パリティエラーモニタ回路
JP3667461B2 (ja) パルス生成回路およびそれを搭載した半導体集積回路装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20031216

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040511

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040809

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20041001

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041105

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20041217

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

A072 Dismissal of procedure [no reply to invitation to correct request for examination]

Free format text: JAPANESE INTERMEDIATE CODE: A072

Effective date: 20050412

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

Free format text: PAYMENT UNTIL: 20071112

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20081112

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20081112

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091112

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20091112

Year of fee payment: 5

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D03

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

Free format text: PAYMENT UNTIL: 20101112

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20101112

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20111112

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121112

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20121112

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20131112

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees