JP3156813B2 - バッファ制御回路 - Google Patents
バッファ制御回路Info
- Publication number
- JP3156813B2 JP3156813B2 JP10143593A JP10143593A JP3156813B2 JP 3156813 B2 JP3156813 B2 JP 3156813B2 JP 10143593 A JP10143593 A JP 10143593A JP 10143593 A JP10143593 A JP 10143593A JP 3156813 B2 JP3156813 B2 JP 3156813B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- circuit
- data buffer
- buffer
- read
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods 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/10—Methods 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2205/00—Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F2205/10—Indexing scheme relating to groups G06F5/10 - G06F5/14
- G06F2205/102—Avoiding metastability, i.e. preventing hazards, e.g. by using Gray code counters
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
Description
【0001】
【産業上の利用分野】本発明は、異なるサイクル時間を
有する2つのバスの間のデータ転送を制御するバッファ
制御回路に関する。
有する2つのバスの間のデータ転送を制御するバッファ
制御回路に関する。
【0002】
【従来の技術】コンピュータシステムは、多くの場合、
異なる特性を有する複数のバスを有する。例えば、それ
らのバスは異なるクロック及び伝送周波数を有し、同期
的にまたは非同期的に作動し、異なる数のライン、異な
るデータ・フロー幅、また異なる長さを有する。それら
は必要ならば、結合回路によってデータ処理装置内で互
いに接続される。また、結合回路は異なるバスの速度差
に適応するためのバッファを有する。例えば、第1のバ
スがプロセッサ及びその記憶装置に関連し、第2のバス
が種々の入出力装置と関連しているコンピュータシステ
ムにおいて、一方のバスから他方のバスへデータを転送
する場合、このデータは最初に結合回路に供給され、そ
の後、例えば、結合回路による遅延を最小に保持して関
連入出力装置に送られる。
異なる特性を有する複数のバスを有する。例えば、それ
らのバスは異なるクロック及び伝送周波数を有し、同期
的にまたは非同期的に作動し、異なる数のライン、異な
るデータ・フロー幅、また異なる長さを有する。それら
は必要ならば、結合回路によってデータ処理装置内で互
いに接続される。また、結合回路は異なるバスの速度差
に適応するためのバッファを有する。例えば、第1のバ
スがプロセッサ及びその記憶装置に関連し、第2のバス
が種々の入出力装置と関連しているコンピュータシステ
ムにおいて、一方のバスから他方のバスへデータを転送
する場合、このデータは最初に結合回路に供給され、そ
の後、例えば、結合回路による遅延を最小に保持して関
連入出力装置に送られる。
【0003】コンピュータシステム内で、1つのデータ
バスから他のデータバスにデータを転送するためのいわ
ゆるピンポンデータバッファ機構を有するデータバッフ
ァは、例えばヨーロッパ特許出願0416281A2か
ら既知である。この機構は、記憶アレイ及び2つの独立
したポートから成るデュアルポート記憶機構を有する。
各ポートは、自身の独立したデータバス、アドレスバス
及び制御バスを有し、さらにそれと関連した回路を備え
ている。この既知のデータバッファにおいて、データを
記憶アレイの第1の部分に書き込むために1つのデータ
バスからデータを受け取る独立ポートに書き込み回路が
接続されている。また読み取り回路が他の独立したポー
トに接続され、記憶アレイの第2の部分から同時にデー
タを読み取る。読み取りデータは他のデータバスに転送
される。それに関連して、記憶アレイの第1及び第2の
部分のための読み取り及び書き込みを両方向に行うこと
ができる動作制御ロジックが開示されている。さらに、
一対のデュアルポート記憶機構がデータを転送するため
に作用し、第1のバスが大きいデータ幅を有し、第2の
バスが小さいデータ幅を有する回路例が説明されてい
る。
バスから他のデータバスにデータを転送するためのいわ
ゆるピンポンデータバッファ機構を有するデータバッフ
ァは、例えばヨーロッパ特許出願0416281A2か
ら既知である。この機構は、記憶アレイ及び2つの独立
したポートから成るデュアルポート記憶機構を有する。
各ポートは、自身の独立したデータバス、アドレスバス
及び制御バスを有し、さらにそれと関連した回路を備え
ている。この既知のデータバッファにおいて、データを
記憶アレイの第1の部分に書き込むために1つのデータ
バスからデータを受け取る独立ポートに書き込み回路が
接続されている。また読み取り回路が他の独立したポー
トに接続され、記憶アレイの第2の部分から同時にデー
タを読み取る。読み取りデータは他のデータバスに転送
される。それに関連して、記憶アレイの第1及び第2の
部分のための読み取り及び書き込みを両方向に行うこと
ができる動作制御ロジックが開示されている。さらに、
一対のデュアルポート記憶機構がデータを転送するため
に作用し、第1のバスが大きいデータ幅を有し、第2の
バスが小さいデータ幅を有する回路例が説明されてい
る。
【0004】さらに、1984年6月に発行されたIB
M TDB第27巻、第1A号、第334〜337頁に
おいて、2つの異なるデータバスの間にデータバッファ
を有する回路構成が説明されている。この文献は、異な
る特性を有する2つのデータバスの間でデータをどのよ
うに転送するかという問題に対する典型的な解決法を示
しているが、デュアルポートバッファの使用は技術的な
観点からは比較的に複雑である。開示されている制御回
路は多数の回路装置を含む。
M TDB第27巻、第1A号、第334〜337頁に
おいて、2つの異なるデータバスの間にデータバッファ
を有する回路構成が説明されている。この文献は、異な
る特性を有する2つのデータバスの間でデータをどのよ
うに転送するかという問題に対する典型的な解決法を示
しているが、デュアルポートバッファの使用は技術的な
観点からは比較的に複雑である。開示されている制御回
路は多数の回路装置を含む。
【0005】
【発明が解決しようとする課題】従って、本発明の目的
は、データバッファを介して互いに接続されるデータバ
スが異なるクロック周波数及び他の異なる特性を有して
いるデータ処理装置において、そのようなデータバッフ
ァのための制御回路を提供することにある。
は、データバッファを介して互いに接続されるデータバ
スが異なるクロック周波数及び他の異なる特性を有して
いるデータ処理装置において、そのようなデータバッフ
ァのための制御回路を提供することにある。
【0006】他の目的は、2つのバスのクロックパルス
のシーケンスを考慮して、書き込みアドレスポインタの
コードの使用、その発生及びリセットを改良することで
ある。
のシーケンスを考慮して、書き込みアドレスポインタの
コードの使用、その発生及びリセットを改良することで
ある。
【0007】
【課題を解決するための手段】本発明によるバッファ制
御回路は、異なるサイクル時間を有する2つのバスの間
のデータ転送を制御するものであって、これら2つのバ
スの間に接続されたデータバッファと、第1クロックの
制御の下に一方のバスから前記データバッファへの書き
込みを行う書き込み部と、第1クロックとは異なる第2
クロックの制御の下にデータバッファから他方のバスへ
の読み取りを行う読み取り部とを備え、書き込み部は、
データバッファの書き込みアドレスを発生する書き込み
アドレス発生器、及びデータバッファへの書き込みの度
に更新されるロードカウンタを含み、読み取り部は、デ
ータバッファの読み取りアドレスを発生する読み取りア
ドレス発生器、読み取りアドレスをロードカウンタの内
容と比較可能な形に変換するコンバータ、ロードカウン
タの内容とコンバータの出力を比較して、データバッフ
ァに読み取るべきデータがあるかどうかを調べ、もしあ
ればデータバッファの読み取りを行わせるとともに読み
取りアドレスを更新する比較器を含む。
御回路は、異なるサイクル時間を有する2つのバスの間
のデータ転送を制御するものであって、これら2つのバ
スの間に接続されたデータバッファと、第1クロックの
制御の下に一方のバスから前記データバッファへの書き
込みを行う書き込み部と、第1クロックとは異なる第2
クロックの制御の下にデータバッファから他方のバスへ
の読み取りを行う読み取り部とを備え、書き込み部は、
データバッファの書き込みアドレスを発生する書き込み
アドレス発生器、及びデータバッファへの書き込みの度
に更新されるロードカウンタを含み、読み取り部は、デ
ータバッファの読み取りアドレスを発生する読み取りア
ドレス発生器、読み取りアドレスをロードカウンタの内
容と比較可能な形に変換するコンバータ、ロードカウン
タの内容とコンバータの出力を比較して、データバッフ
ァに読み取るべきデータがあるかどうかを調べ、もしあ
ればデータバッファの読み取りを行わせるとともに読み
取りアドレスを更新する比較器を含む。
【0008】非常に重要な要素は、ロードカウンタとし
て実施される書き込みアドレスポインタのタイプであ
る。すなわち、ここで重要なのは、この書き込みアドレ
スポインタでの特定コードの使用、その発生及びリセッ
ト、並びにタイミング制御である。
て実施される書き込みアドレスポインタのタイプであ
る。すなわち、ここで重要なのは、この書き込みアドレ
スポインタでの特定コードの使用、その発生及びリセッ
ト、並びにタイミング制御である。
【0009】本発明による制御回路が使用されるのは、
バッファの書き込み部の同期ロジックが読み取り部より
も短い時間(例えば書き込み部が20ナノ秒、読み取り
部が27ナノ秒)で動作するような環境である。2つの
クロックシーケンスは互いに独立しており、それらの値
は技術に応じて変化する。従って、書き込みと読み取り
の間の移行は、同期せず非同期である。読み取り部は、
書き込みアドレスポインタを例えそれがが更新中であっ
ても、いつでも走査することができる。2進コード化さ
れたポインタの場合、011から100への移行中に8
つの可能な組み合わせのすべてが生じ得る。これは、も
ちろん種々の誤った解釈及び制御プロセスを導く場合が
ある。ポインタが変化しない期間は、通常遅い読み取り
部による2回の走査を可能にする程長くはないので、単
一の走査が各場合に明確な結果(最悪の場合でも古い内
容、通常は新しく更新された値)を得るようにコードが
選択される。従って、最悪の場合でも遅延はわずかに1
サイクルだけである。この回路による「データ利用可
能」信号の発生は、1サイクルが例えば27ナノ秒の場
合、同期用のラッチ回路がその機能を危険にさらすこと
なく最大20ナノ秒の間準安定状態にあることを可能に
する。また選択されたコードは、走査中に準安定になる
ラッチ回路が高々1つであることを保証する。バッファ
は、できるだけ早く読み取りを行うとともに、全体の内
容を読み取った後でだけ再書き込みが行われるように制
御される。従って、読み取り部はアドレスポインタのリ
セットを開始し、例えばロードカウンタの形態のアドレ
スポインタの同期のためのラッチ回路がリセットされた
後でのみ、この動作モードを終了させる。
バッファの書き込み部の同期ロジックが読み取り部より
も短い時間(例えば書き込み部が20ナノ秒、読み取り
部が27ナノ秒)で動作するような環境である。2つの
クロックシーケンスは互いに独立しており、それらの値
は技術に応じて変化する。従って、書き込みと読み取り
の間の移行は、同期せず非同期である。読み取り部は、
書き込みアドレスポインタを例えそれがが更新中であっ
ても、いつでも走査することができる。2進コード化さ
れたポインタの場合、011から100への移行中に8
つの可能な組み合わせのすべてが生じ得る。これは、も
ちろん種々の誤った解釈及び制御プロセスを導く場合が
ある。ポインタが変化しない期間は、通常遅い読み取り
部による2回の走査を可能にする程長くはないので、単
一の走査が各場合に明確な結果(最悪の場合でも古い内
容、通常は新しく更新された値)を得るようにコードが
選択される。従って、最悪の場合でも遅延はわずかに1
サイクルだけである。この回路による「データ利用可
能」信号の発生は、1サイクルが例えば27ナノ秒の場
合、同期用のラッチ回路がその機能を危険にさらすこと
なく最大20ナノ秒の間準安定状態にあることを可能に
する。また選択されたコードは、走査中に準安定になる
ラッチ回路が高々1つであることを保証する。バッファ
は、できるだけ早く読み取りを行うとともに、全体の内
容を読み取った後でだけ再書き込みが行われるように制
御される。従って、読み取り部はアドレスポインタのリ
セットを開始し、例えばロードカウンタの形態のアドレ
スポインタの同期のためのラッチ回路がリセットされた
後でのみ、この動作モードを終了させる。
【0010】
【実施例】図1のようなコンピュータシステムにおいて
は、性能上の理由により、同期動作プロトコルを有する
バスが使用されることが多い。このようなバスのライン
の数、幅または延長部が制限されるから、このような装
置は、多くの場合に、異なるサイクル時間を有するいく
つかのバスを備えている。それらは結合回路によって、
必要ならばインターフェイス回路を有するバッファによ
って相互に接続される。
は、性能上の理由により、同期動作プロトコルを有する
バスが使用されることが多い。このようなバスのライン
の数、幅または延長部が制限されるから、このような装
置は、多くの場合に、異なるサイクル時間を有するいく
つかのバスを備えている。それらは結合回路によって、
必要ならばインターフェイス回路を有するバッファによ
って相互に接続される。
【0011】このような複合構造におけるデータは異な
る長さのブロックの形態で転送されるが、定義される最
大の長さがある。結合回路は、接続されるバスの速度差
に対応するためのバッファを有する。
る長さのブロックの形態で転送されるが、定義される最
大の長さがある。結合回路は、接続されるバスの速度差
に対応するためのバッファを有する。
【0012】図1は2つのバスa及びbを有するコンピ
ュータシステムを示す。プロセッサ及びその記憶装置は
バスaに接続され、種々の入出力装置I/Oはバスbに
接続されている。記憶装置から出力されるデータは、ま
ず結合回路に供給され、次にI/Oターミナルに供給さ
れる。結合回路による遅延は最小でなければならない。
ュータシステムを示す。プロセッサ及びその記憶装置は
バスaに接続され、種々の入出力装置I/Oはバスbに
接続されている。記憶装置から出力されるデータは、ま
ず結合回路に供給され、次にI/Oターミナルに供給さ
れる。結合回路による遅延は最小でなければならない。
【0013】図2は、バッファ及び関連するアクセスロ
ジック回路を有する結合回路のブロック図を示す。
ジック回路を有する結合回路のブロック図を示す。
【0014】図2の回路図のデータフロー及び動作を以
下に詳細に説明する。
下に詳細に説明する。
【0015】図1及び図2のコンピュータシステムにお
けるデータフローの主要要素は、バスaからバスbに転
送されるデータを受けるデータバッファ1である。
けるデータフローの主要要素は、バスaからバスbに転
送されるデータを受けるデータバッファ1である。
【0016】このデータバッファ1は、2つの論理ブロ
ックによって制御される。まず上部(バスa側)では、
データの受け取りに応答して書き込み記憶アドレスを歩
進する書き込みアドレス発生器5によって制御される。
ロードカウンタ8もデータの受け取りにより歩進され
る。本発明の基本的なコンポーネントであるロードカウ
ンタ8は特別のコードで動作する。このコードは、同期
回路9において、高速でグリッチなしに図2の下部(バ
スb側)でのクロックに同期される。
ックによって制御される。まず上部(バスa側)では、
データの受け取りに応答して書き込み記憶アドレスを歩
進する書き込みアドレス発生器5によって制御される。
ロードカウンタ8もデータの受け取りにより歩進され
る。本発明の基本的なコンポーネントであるロードカウ
ンタ8は特別のコードで動作する。このコードは、同期
回路9において、高速でグリッチなしに図2の下部(バ
スb側)でのクロックに同期される。
【0017】下部(バスb側)では、データバッファ1
は読み取りアドレスを発生する読み取りアドレス発生器
6によって制御される。このアドレスは、コードコンバ
ータ13でロードカウンタ8のコードと比較可能なコー
ドに変換され、同期回路9内にラッチされたロードカウ
ンタ8の内容と比較器10によって比較される。この比
較の結果は、出力レジスタ3及び12を制御し、出力レ
ジスタ12からは「データ利用可能」信号が発生され
る。
は読み取りアドレスを発生する読み取りアドレス発生器
6によって制御される。このアドレスは、コードコンバ
ータ13でロードカウンタ8のコードと比較可能なコー
ドに変換され、同期回路9内にラッチされたロードカウ
ンタ8の内容と比較器10によって比較される。この比
較の結果は、出力レジスタ3及び12を制御し、出力レ
ジスタ12からは「データ利用可能」信号が発生され
る。
【0018】さらに、リセットロジック11は次のデー
タブロックの転送のためにデータバッファ1を条件付け
るリセット信号を発生する。
タブロックの転送のためにデータバッファ1を条件付け
るリセット信号を発生する。
【0019】図2の回路は、データ入力用のレシーバ2
並びにデータ出力用の出力レジスタ3及びトランスミッ
タ4を備えたデータバッファ1を含む。出力レジスタ3
は必ずしも必要とされるわけではない。データバッファ
1は書き込みアドレス発生器5及び読み取りアドレス発
生器6によって制御される。書き込みアドレス発生器5
は、ロードカウンタ8と同じく、レシーバ7を介して
「データ利用可能」制御信号を受ける。ロードカウンタ
8は、比較器10に接続された出力を有する同期回路9
に接続されている。比較器10の出力は、出力レジスタ
12、読み取りアドレス発生器6及びデータバッファ1
の出力レジスタ3に供給される。比較器10は、コード
コンバータ13を介して読み取りアドレス発生回路6か
らも入力信号を受ける。比較器10の出力に応じて、
「データ利用可能」信号が出力レジスタ12に接続され
たトランスミッタ12′の出力に現れる。
並びにデータ出力用の出力レジスタ3及びトランスミッ
タ4を備えたデータバッファ1を含む。出力レジスタ3
は必ずしも必要とされるわけではない。データバッファ
1は書き込みアドレス発生器5及び読み取りアドレス発
生器6によって制御される。書き込みアドレス発生器5
は、ロードカウンタ8と同じく、レシーバ7を介して
「データ利用可能」制御信号を受ける。ロードカウンタ
8は、比較器10に接続された出力を有する同期回路9
に接続されている。比較器10の出力は、出力レジスタ
12、読み取りアドレス発生器6及びデータバッファ1
の出力レジスタ3に供給される。比較器10は、コード
コンバータ13を介して読み取りアドレス発生回路6か
らも入力信号を受ける。比較器10の出力に応じて、
「データ利用可能」信号が出力レジスタ12に接続され
たトランスミッタ12′の出力に現れる。
【0020】あらかじめ定められたデータ幅を有する図
3のデータバッファ1は、4ワードまで記憶することが
できると仮定する。ロードされるデータアイテムまたは
ワードは「データロード」信号によって利用可能とされ
る。ワードのローディングは各サイクル毎に、または2
つの連続するワードの間の20サイクルまでの間隔で生
じる。「データロード」信号のパルスはロードカウンタ
8及び書き込みアドレス発生器5を歩進させる。各動作
の始めにおいて、読み取りアドレス発生器6、書き込み
アドレス発生器5及びロードカウンタ8は、出力または
リセット状態にある。読み取りアドレス発生器6がリセ
ット状態にあるとき、図3のロジック回路34〜37
は、信号「1」を出力する。「データロード」信号が、
例えば1サイクルの間活動状態になると、データはデー
タバッファ1のアドレス0に記憶される。その後、書き
込みアドレスが歩進され、ラッチ回路23がセットされ
る。またラッチ回路30は、関連するクロックパルスが
加えられるとすぐにセットされる。このようにして比較
器10の回路39を構成するANDゲートの入力条件が
満たされると、回路39は活動状態になる。このとき、
読み取りアドレスはまだ0のままであるが、書き込みア
ドレスはデータバッファ1へのローディングにより1に
歩進されている。これは、読み取るべきデータがデータ
バッファ1にあることを示す。出力レジスタ3が準備状
態になると、次のクロックパルスに応答してその中に記
憶されたデータが出力端40に送られる。同じクロック
パルスは読み取りアドレス38を歩進させ、ラッチ回路
41を「1」に設定する。この歩進はアドレスビット0
を「0」から「1」に変化させ、その結果、回路34の
出力が「0」になる。「データロード」信号が受け取ら
れなければ、回路39は非活動状態に戻るが、後続の
「データロード」信号が受け取られていると活動状態の
ままである。後続の「データロード」信号のパルスはロ
ードカウンタ8の次段のラッチ回路25をセットし、続
いてラッチ回路27をセットする。仮定される27ナノ
秒のサイクルのクロックパルスはラッチ回路31をセッ
トし、続いてラッチ回路32をセットする。27ナノ秒
のサイクルで制御されるラッチ回路は、それらのデータ
入力がクロックパルスに関して時間的にあまりにも接近
して変化するとき、準安定になる。回路39が活動状態
である限り、データはデータバッファ1から読まれる。
4番目のワードが読まれた後、読み取りアドレスの最後
のビット(ビット2)が活動状態になり、回路39の1
番下のANDゲートを非活動状態にトリガする共に、ラ
ッチ回路43をセットする。ラッチ回路43の出力信号
がロードカウンタ8のラッチ回路23、25、27及び
29をリセットする。さらに、ラッチ回路44がセット
される。ロードカウンタ8がリセットされた後、同期回
路9のラッチ回路30〜至33は、関連するクロック信
号によりそれに追随する。ラッチ回路30〜33が全て
リセットされると回路42の条件が満たされ、ラッチ回
路43がリセットされる。リセットされた後、回路45
の入力信号はその真の状態にあり、読み取りアドレスに
対するリセット要求が出される。かくして、次のサイク
ルにおいて、新しい動作が開始される。
3のデータバッファ1は、4ワードまで記憶することが
できると仮定する。ロードされるデータアイテムまたは
ワードは「データロード」信号によって利用可能とされ
る。ワードのローディングは各サイクル毎に、または2
つの連続するワードの間の20サイクルまでの間隔で生
じる。「データロード」信号のパルスはロードカウンタ
8及び書き込みアドレス発生器5を歩進させる。各動作
の始めにおいて、読み取りアドレス発生器6、書き込み
アドレス発生器5及びロードカウンタ8は、出力または
リセット状態にある。読み取りアドレス発生器6がリセ
ット状態にあるとき、図3のロジック回路34〜37
は、信号「1」を出力する。「データロード」信号が、
例えば1サイクルの間活動状態になると、データはデー
タバッファ1のアドレス0に記憶される。その後、書き
込みアドレスが歩進され、ラッチ回路23がセットされ
る。またラッチ回路30は、関連するクロックパルスが
加えられるとすぐにセットされる。このようにして比較
器10の回路39を構成するANDゲートの入力条件が
満たされると、回路39は活動状態になる。このとき、
読み取りアドレスはまだ0のままであるが、書き込みア
ドレスはデータバッファ1へのローディングにより1に
歩進されている。これは、読み取るべきデータがデータ
バッファ1にあることを示す。出力レジスタ3が準備状
態になると、次のクロックパルスに応答してその中に記
憶されたデータが出力端40に送られる。同じクロック
パルスは読み取りアドレス38を歩進させ、ラッチ回路
41を「1」に設定する。この歩進はアドレスビット0
を「0」から「1」に変化させ、その結果、回路34の
出力が「0」になる。「データロード」信号が受け取ら
れなければ、回路39は非活動状態に戻るが、後続の
「データロード」信号が受け取られていると活動状態の
ままである。後続の「データロード」信号のパルスはロ
ードカウンタ8の次段のラッチ回路25をセットし、続
いてラッチ回路27をセットする。仮定される27ナノ
秒のサイクルのクロックパルスはラッチ回路31をセッ
トし、続いてラッチ回路32をセットする。27ナノ秒
のサイクルで制御されるラッチ回路は、それらのデータ
入力がクロックパルスに関して時間的にあまりにも接近
して変化するとき、準安定になる。回路39が活動状態
である限り、データはデータバッファ1から読まれる。
4番目のワードが読まれた後、読み取りアドレスの最後
のビット(ビット2)が活動状態になり、回路39の1
番下のANDゲートを非活動状態にトリガする共に、ラ
ッチ回路43をセットする。ラッチ回路43の出力信号
がロードカウンタ8のラッチ回路23、25、27及び
29をリセットする。さらに、ラッチ回路44がセット
される。ロードカウンタ8がリセットされた後、同期回
路9のラッチ回路30〜至33は、関連するクロック信
号によりそれに追随する。ラッチ回路30〜33が全て
リセットされると回路42の条件が満たされ、ラッチ回
路43がリセットされる。リセットされた後、回路45
の入力信号はその真の状態にあり、読み取りアドレスに
対するリセット要求が出される。かくして、次のサイク
ルにおいて、新しい動作が開始される。
【0021】図3の回路構成における上述の動作は、図
4のタイミング図から容易に理解することができる。図
4の左側に示されている小さい円内の数字は、図3にお
ける対応する回路を表している。従って、図4のタイミ
ング図は、図3の回路と対比させることによって容易に
理解できよう。特定の時間における書き込みアドレスが
図4の上部に、読み取りアドレスが図4の下部にそれぞ
れ示されている。図から明らかなように、書き込み用の
クロック周波数は読み取り用のクロック周波数よりも高
く、本実施例では、前者は20ナノ秒であり、後者は2
7ナノ秒である。図4から明らかなように、ロードカウ
ンタ8を構成するラッチ回路23、25、27及び29
は書き込み用のクロックにより制御され、同期回路9を
構成するラッチ回路30〜33は読み取り用のクロック
により制御される。
4のタイミング図から容易に理解することができる。図
4の左側に示されている小さい円内の数字は、図3にお
ける対応する回路を表している。従って、図4のタイミ
ング図は、図3の回路と対比させることによって容易に
理解できよう。特定の時間における書き込みアドレスが
図4の上部に、読み取りアドレスが図4の下部にそれぞ
れ示されている。図から明らかなように、書き込み用の
クロック周波数は読み取り用のクロック周波数よりも高
く、本実施例では、前者は20ナノ秒であり、後者は2
7ナノ秒である。図4から明らかなように、ロードカウ
ンタ8を構成するラッチ回路23、25、27及び29
は書き込み用のクロックにより制御され、同期回路9を
構成するラッチ回路30〜33は読み取り用のクロック
により制御される。
【0022】図5は、図2の変形例であり、特に図2の
出力レジスタ3及び12が省略されている。要するに、
これは制御及び読み取りがデータバッファ1の出力端の
トランスミッタ4及び12′で直接行われることを意味
する。また、ロードカウンタ8は、純粋なカウンタ回路
として実施される代わりに、コード化された歩進レジス
タの形態をとってもよい。コードコンバータ13及び比
較器10は組み合わされた回路として設計されてもよ
い。しかしながら、このような回路の基準は本発明の概
念にほとんど影響を与えない。また、個々のレジスタ、
論理回路段及びカウンタにどのようなラッチ回路または
技術的に等価な回路を使用するかは全体として本発明に
無関係である。図5の回路の動作は図2と同様であるか
ら、詳細な説明は省略する。
出力レジスタ3及び12が省略されている。要するに、
これは制御及び読み取りがデータバッファ1の出力端の
トランスミッタ4及び12′で直接行われることを意味
する。また、ロードカウンタ8は、純粋なカウンタ回路
として実施される代わりに、コード化された歩進レジス
タの形態をとってもよい。コードコンバータ13及び比
較器10は組み合わされた回路として設計されてもよ
い。しかしながら、このような回路の基準は本発明の概
念にほとんど影響を与えない。また、個々のレジスタ、
論理回路段及びカウンタにどのようなラッチ回路または
技術的に等価な回路を使用するかは全体として本発明に
無関係である。図5の回路の動作は図2と同様であるか
ら、詳細な説明は省略する。
【0023】
【発明の効果】本発明によれば、データバッファを介し
て互いに接続されるデータバスが異なるクロック周波数
及び他の異なる特性を有する場合のバッファのための制
御を実現することができる。
て互いに接続されるデータバスが異なるクロック周波数
及び他の異なる特性を有する場合のバッファのための制
御を実現することができる。
【図1】関連する回路を有するバッファの構成を示すブ
ロック図。
ロック図。
【図2】データバッファ用の制御回路の構成を詳細に示
すブロック図。
すブロック図。
【図3】データバッファ用の制御回路の構成をより詳細
に示すブロック図。
に示すブロック図。
【図4】図3による回路構成用のタイミング図。
【図5】データバッファ用の制御回路の変形例を示すブ
ロック図。
ロック図。
1 データバッファ 2 レシーバ 3 出力レジスタ 4 トランスミッタ 5 書き込みアドレス発生器 6 読み取りアドレス発生器 7 レシーバ 8 ロードカウンタ 9 同期回路 10 比較器 11 リセットロジック 12 出力レジスタ 13 コードコンバータ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ユルゲン、ヘス ドイツ連邦共和国ジンデルフィンゲン、 エッシェンブリュンレシュトラーセ、25 (72)発明者 ロルフ、ヒルゲンドルフ ドイツ連邦共和国ベープリンゲン、ヘー レンアルバー、シュトラーセ、44 (56)参考文献 特開 平4−121892(JP,A) 特開 昭52−134340(JP,A) 特開 昭54−124644(JP,A) 特開 昭62−49537(JP,A) 小林芳直、「PLDの論理回路設計 法」初版(昭和63年10月)CQ出版、 p.223〜228
Claims (2)
- 【請求項1】異なるサイクル時間を有する2つのバスの
間のデータ転送を制御するバッファ制御回路であって、 前記2つのバスの間に接続されたデータバッファと、 第1クロックの制御の下に一方のバスから前記データバ
ッファへの書き込みを行う書き込み部と、 前記第1クロックとは異なる第2クロックの制御の下に
前記データバッファから他方のバスへの読み取りを行う
読み取り部とを具備し、 前記書き込み部は、前記データバッファへの書き込みを
表すロード信号に応答して更新される書き込みアドレス
発生器、及び前記ロード信号に応答して順次セットされ
る複数のラッチ回路からなるロードカウンタを含み、 前記読み取り部は、前記データバッファの読み取りアド
レスを発生する読み取りアドレス発生器、前記読み取り
アドレスを前記ロードカウンタの内容と比較可能な形に
変換するコンバータ、前記ロードカウンタの出力を前記
第2のクロックに応答して受け取る複数のラッチ回路か
らなる同期回路、及び前記同期回路の出力と前記コンバ
ータの出力を比較して、前記データバッファに読み取る
べきデータがあるかどうかを調べ、もしあれば前記デー
タバッファの読み取りを行わせるとともに前記読み取り
アドレスを更新する比較器を含む、 バッファ制御回路。 - 【請求項2】前記読み取りアドレスが所定の値に達した
ときに前記ロードカウンタをリセットするリセットロジ
ックを更に含む、請求項2に記載のバッファ制御回路。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP92109990A EP0574598A1 (de) | 1992-06-13 | 1992-06-13 | Datenpufferspeicher |
DE92109990.9 | 1992-06-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0713926A JPH0713926A (ja) | 1995-01-17 |
JP3156813B2 true JP3156813B2 (ja) | 2001-04-16 |
Family
ID=8209705
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10143593A Expired - Fee Related JP3156813B2 (ja) | 1992-06-13 | 1993-04-27 | バッファ制御回路 |
Country Status (3)
Country | Link |
---|---|
US (1) | US5524270A (ja) |
EP (1) | EP0574598A1 (ja) |
JP (1) | JP3156813B2 (ja) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5796962A (en) * | 1991-05-17 | 1998-08-18 | Theeus Logic | Null convention bus |
EP0641139B1 (en) * | 1993-07-13 | 2002-09-11 | Hewlett-Packard Company, A Delaware Corporation | Merging audio and telephone data for a computer |
JPH07182170A (ja) * | 1993-12-24 | 1995-07-21 | Ricoh Co Ltd | マイクロプロセッサ |
JP3190800B2 (ja) * | 1995-03-15 | 2001-07-23 | 甲府日本電気株式会社 | 転送速度切り替え機能付き非同期転送回路 |
FI104858B (fi) * | 1995-05-29 | 2000-04-14 | Nokia Networks Oy | Menetelmä ja laitteisto asynkronisen väylän sovittamiseksi synkroniseen piiriin |
US5666550A (en) * | 1995-06-07 | 1997-09-09 | International Business Machines Corporation | Bus operation circuit using CMOS ratio logic circuits |
US5729765A (en) * | 1995-12-07 | 1998-03-17 | Samsung Electronics Co., Ltd. | Method and apparatus for determining the status of a shared resource |
US5916311A (en) * | 1996-03-27 | 1999-06-29 | Matsushita Electric Industrial Co., Ltd. | Bus controller and information processing device providing reduced idle cycle time during synchronization |
US5796963A (en) * | 1996-05-16 | 1998-08-18 | National Instruments Corporation | System and method for converting VXI bus cycles to PCI burst cycles |
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 |
EP0887740A1 (en) * | 1997-06-19 | 1998-12-30 | Canon Kabushiki Kaisha | Device and method for communication between computer buses |
US5918073A (en) * | 1997-06-27 | 1999-06-29 | Advanced Micro Devices, Inc. | System and method for equalizing data buffer storage and fetch rates of peripheral devices |
US5968180A (en) * | 1997-09-30 | 1999-10-19 | Intel Corporation | Data capture circuit for asynchronous data transfer |
JP3445476B2 (ja) * | 1997-10-02 | 2003-09-08 | 株式会社東芝 | 半導体メモリシステム |
US6047339A (en) * | 1997-10-27 | 2000-04-04 | Emulex Corporation | Buffering data that flows between buses operating at different frequencies |
US6055597A (en) * | 1997-10-30 | 2000-04-25 | Micron Electronics, Inc. | Bi-directional synchronizing buffer system |
US6363076B1 (en) * | 1998-01-27 | 2002-03-26 | International Business Machines Corporation | Phantom buffer for interfacing between buses of differing speeds |
FI981388A (fi) * | 1998-06-15 | 1999-12-16 | Abb Research Ltd | Menetelmä prosessinohjaustapahtumien ja -mittausten tahdistamiseksi reaaliaikaisessa prosessinohjausautomaatiojärjestelmässä |
JP2000222280A (ja) * | 1999-01-19 | 2000-08-11 | Texas Instr Inc <Ti> | 二重クロック・システム用の後置書込みバッファ |
US6460108B1 (en) * | 1999-03-31 | 2002-10-01 | Intel Corporation | Low cost data streaming mechanism |
JP3446946B2 (ja) * | 1999-05-12 | 2003-09-16 | 日本電気株式会社 | データ通信システム及びタイムスロット割当方法並びにタイムスロット割当制御プログラムを格納した記憶媒体 |
US6704828B1 (en) * | 2000-08-31 | 2004-03-09 | Micron Technology, Inc. | System and method for implementing data pre-fetch having reduced data lines and/or higher data rates |
US7283038B2 (en) * | 2005-06-14 | 2007-10-16 | International Business Machines Corporation | Comparing counter contents for timing critical applications |
US6996640B1 (en) | 2001-08-07 | 2006-02-07 | Adaptec, Inc. | Method and system for asynchronously transferring data |
US6920524B2 (en) * | 2003-02-03 | 2005-07-19 | Micron Technology, Inc. | Detection circuit for mixed asynchronous and synchronous memory operation |
DE102004011673B3 (de) * | 2004-03-10 | 2005-06-02 | Texas Instruments Deutschland Gmbh | Vorrichtung zur Datensynchronisation |
EP1895425A4 (en) * | 2005-06-15 | 2009-03-18 | Panasonic Corp | EXTERNAL SETUP ACCESS DEVICE |
US7571271B2 (en) * | 2005-09-28 | 2009-08-04 | Ati Technologies Ulc | Lane merging |
US8140803B2 (en) | 2007-01-09 | 2012-03-20 | International Business Machines Corporation | Structure for reducing latency associated with read operations in a memory system |
US7657771B2 (en) | 2007-01-09 | 2010-02-02 | International Business Machines Corporation | Method and apparatus for reducing latency associated with read operations in a memory system |
US7966435B2 (en) * | 2007-01-11 | 2011-06-21 | International Business Machines Corporation | Integrated circuit design structure for an asychronous data interface |
US8131967B2 (en) * | 2007-01-11 | 2012-03-06 | International Business Machines Corporation | Asynchronous data interface |
EP2780009A4 (en) | 2011-11-17 | 2015-05-06 | Univ Colorado Regents | METHODS AND COMPOSITIONS FOR ENHANCED IL-MEDICATION ADMINISTRATION AND EXTENDED DELIVERY FORMULATIONS |
US20230186142A1 (en) * | 2021-12-13 | 2023-06-15 | Intel Corporation | Technologies for high-speed interfaces for cryogenic quantum control |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2616729A1 (de) * | 1976-04-15 | 1977-11-03 | Siemens Ag | Elektronisches fallregister |
US4070630A (en) * | 1976-05-03 | 1978-01-24 | Motorola Inc. | Data transfer synchronizing circuit |
US4868735A (en) * | 1984-05-08 | 1989-09-19 | Advanced Micro Devices, Inc. | Interruptible structured microprogrammed sixteen-bit address sequence controller |
SE452937B (sv) * | 1986-04-18 | 1987-12-21 | Ericsson Telefon Ab L M | Sett och anordning for att overfora data mellan tva datautrustningar som drivs av var sin oberoende klocka |
US5121480A (en) * | 1988-07-18 | 1992-06-09 | Western Digital Corporation | Data recording system buffer management and multiple host interface control |
US5193193A (en) * | 1988-09-14 | 1993-03-09 | Silicon Graphics, Inc. | Bus control system for arbitrating requests with predetermined on/off time limitations |
US5179667A (en) * | 1988-09-14 | 1993-01-12 | Silicon Graphics, Inc. | Synchronized DRAM control apparatus using two different clock rates |
US5197126A (en) * | 1988-09-15 | 1993-03-23 | Silicon Graphics, Inc. | Clock switching circuit for asynchronous clocks of graphics generation apparatus |
US4969164A (en) * | 1989-04-27 | 1990-11-06 | Advanced Micro Devices, Inc. | Programmable threshold detection logic for a digital storage buffer |
US5224213A (en) * | 1989-09-05 | 1993-06-29 | International Business Machines Corporation | Ping-pong data buffer for transferring data from one data bus to another data bus |
US5016219A (en) * | 1990-02-12 | 1991-05-14 | Vlsi Technology, Inc. | Computer memory write protection circuit |
US5150313A (en) * | 1990-04-12 | 1992-09-22 | Regents Of The University Of California | Parallel pulse processing and data acquisition for high speed, low error flow cytometry |
JPH04121892A (ja) * | 1990-09-12 | 1992-04-22 | Fujitsu Ltd | バッファメモリ制御方式 |
US5128970A (en) * | 1990-12-20 | 1992-07-07 | Unisys Corporation | Non-return to zero synchronizer |
-
1992
- 1992-06-13 EP EP92109990A patent/EP0574598A1/de not_active Withdrawn
-
1993
- 1993-04-27 JP JP10143593A patent/JP3156813B2/ja not_active Expired - Fee Related
- 1993-05-21 US US08/066,694 patent/US5524270A/en not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
小林芳直、「PLDの論理回路設計法」初版(昭和63年10月)CQ出版、p.223〜228 |
Also Published As
Publication number | Publication date |
---|---|
US5524270A (en) | 1996-06-04 |
EP0574598A1 (de) | 1993-12-22 |
JPH0713926A (ja) | 1995-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3156813B2 (ja) | バッファ制御回路 | |
US4873703A (en) | Synchronizing system | |
US5365485A (en) | Fifo with fast retransmit mode | |
US6260152B1 (en) | Method and apparatus for synchronizing data transfers in a logic circuit having plural clock domains | |
US4056851A (en) | Elastic buffer for serial data | |
US5088061A (en) | Routing independent circuit components | |
US6366529B1 (en) | Fast FiFo memory storage system | |
US5070443A (en) | Apparatus for write handshake in high-speed asynchronous bus interface | |
JP3645584B2 (ja) | データ転送同期装置 | |
JP2007525766A (ja) | マルチポートメモリシステムにおける衝突検出 | |
US5416749A (en) | Data retrieval from sequential-access memory device | |
EP0217486B1 (en) | A synchronizing system | |
US5561691A (en) | Apparatus and method for data communication between two asynchronous buses | |
US6546451B1 (en) | Method and apparatus for decoupling processor speed from memory subsystem speed in a node controller | |
US6286072B1 (en) | System and method for synchronizing data communication between asynchronous buses | |
US4090256A (en) | First-in-first-out register implemented with single rank storage elements | |
US6519709B1 (en) | Method and device for transferring data between two asynchronously clocked circuits via a buffer by renewing an access pointer thereof only when effective data is received | |
US6487140B2 (en) | Circuit for managing the transfer of data streams from a plurality of sources within a system | |
JPH04279945A (ja) | メモリ回路 | |
US5974102A (en) | Synchronizing circuit | |
JPH0721103A (ja) | データ転送装置 | |
US5598552A (en) | Error free data transfers | |
JP3592169B2 (ja) | 非同期データ転送制御装置および非同期データ転送制御方法 | |
JP2783495B2 (ja) | クロック乗せ換え回路 | |
JP2973941B2 (ja) | 非同期fifoバッファ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |