JP3765547B2 - Fifo状態インジケータ - Google Patents

Fifo状態インジケータ Download PDF

Info

Publication number
JP3765547B2
JP3765547B2 JP26491594A JP26491594A JP3765547B2 JP 3765547 B2 JP3765547 B2 JP 3765547B2 JP 26491594 A JP26491594 A JP 26491594A JP 26491594 A JP26491594 A JP 26491594A JP 3765547 B2 JP3765547 B2 JP 3765547B2
Authority
JP
Japan
Prior art keywords
fifo
signal
data
empty
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 - Lifetime
Application number
JP26491594A
Other languages
English (en)
Other versions
JPH07200249A (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.)
NCR International Inc
Original Assignee
NCR International 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 NCR International Inc filed Critical NCR International Inc
Publication of JPH07200249A publication Critical patent/JPH07200249A/ja
Application granted granted Critical
Publication of JP3765547B2 publication Critical patent/JP3765547B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor

Description

【0001】
【産業上の利用分野】
本発明は、2台のコンピュータ間でのデータ転送に使用する先入れ先出し(FIFO)レジスタの状態(空または満杯)を表わす状態インジケータに関する。上記状態インジケータは2種類の異なるクロックに同期した2つの出力を生成する。
【0002】
【技術的背景】
BというコンピュータからAというコンピュータへデータ転送を行なう方法は多数存在する。例えば、2台のコンピュータが異なるクロック周波数で作動している場合には、転送の際にFIFO(先入れ先出し)バッファを使用することがある。FIFOバッファはコンピュータBからコンピュータAへの転送中のデータ保持部である。
【0003】
FIFOはパイプラインであると考えても良い。送信側のコンピュータBはデータ・ワードのシーケンス、例えばW1を読み込み、続けてW2、W3とパイプラインに送り込む。パイプラインはデータ・ワードを保持し、逐次的にコンピュータAで利用できるようにする。受信側のコンピュータAはパイプラインにデータが送り込まれたのと同じ順序でパイプラインからデータを読み取る。第1にW1を読み取り、続けてW2、W3と読み取る。
【0004】
コンピュータAでのFIFOの読み取りの順番は、コンピュータBで送出した順番と同じであることから、「先入れ先出し(First In, First Out)」と呼ばれている。
【0005】
このような方法の場合には2種類の問題がある。その第1は、FIFOの容量が限られていることである。送出側はデータが満杯のFIFOへデータ・ワードを送出しようとすべきではない。第2に、受信側は空のFIFOからデータ・ワードを読み込もうとすべきではない。
【0006】
これらの問題を解決するには幾つかの方法がある。その1つはデータをFIFOと正確に同じ大きさのブロックに分割することである。例えば、FIFOが8ワード保持できる場合、送信側は8データ・ワードのバースト転送によってFIFOに全て送り出す。次に、送信側は適当な時間だけ待機し、その間に受信側が先の8ワードを読み取る。この後、送信側が別の8ワードを送出する。
【0007】
要するに、この方法では転送時に遅延を必要とする。
【0008】
別の方法は図1を参照して説明する。カウンタCOUNTERがFIFO内に現在格納されているワード数を表わす出力を生成すると仮定する(図1では商業的に利用可能な74−193型カウンタを図示している)。
【0009】
図1の左上部の略図で示してあるように、データワードがFIFOへ送出されるまで、カウンタ出力は0000に設定されている。ここで、図1の右上部に図示してあるように、送信側Bが、W1〜W4の4ワードをFIFOへ送り込んだとする。
【0010】
各々のワードが送り込まれるに従い、送信側はカウンタの計数入力(COUNT UP)へパルスを送る。各々のパルスでカウンタの出力がインクリメントされる。最終出力は0100(十進法の表記による4に等しい)となる。カウンタの出力0100は、このカウンタが4ワードを格納していることを表わす。
【0011】
次に、受信側がこれらのワードを読み取る。図1の左下に図示してあるように、受信側で各々のワードを読み取るごとに、カウンタの逆計数入力(COUNTDOWN)へパルスを送る。各パルスでカウンタの出力がデクリメントする。図の右下に図示してあるように、最終的なカウンタの出力は0000となり、FIFOが空であることを表わす。
【0012】
この方法による問題は、受信側がCOUNT DOWNパルスを送信中には、同時に送信側がCOUNT UPパルスを送信できないということである。カウンタはこれらの矛盾するパルスに応答することが出来ない。COUNT UP信号とCOUNT DOWN信号の同時発生を防止して、送信側からのデータ送り込みと受信側でのデータ読み取りが同時に発生しないようにする何らかの方法を提供する必要がある。
【0013】
【発明が解決しようとする課題】
本発明の目的は送信側と受信側の間のデータ転送の改良を提供することである。
【0014】
本発明のさらなる目的はデータ転送に使用するFIFOバッファの状態を監視し該FIFOの状態にしたがって満杯(full)および空(empty)信号を生成するようなシステムを提供することである。
【0015】
【課題を解決するための手段】
本発明は、上記目的を達成するために、その1つの態様として、送信側から受信側へ転送中のデータを保持するFIFOのための複数のレベルの満杯状態を示すFIFIの状態レジスタであって、(a)以下のi)乃至iii)を含むFIFOの満杯表示システムと、i)前記FIFOのそれぞれの満杯レベルを示す複数の第1のD型フリップフロップ、ii)前記複数の第1のD型フリップフロップの各出力信号を第1のクロック周波数に同期させる第1の同期手段、iii)前記第1の同期手段の全出力がセットされたことを示す第1のロジック手段、(b)以下のi)乃至iii)を含むFIFOの空表示システムと、i)前記FIFOのぞれぞれの空レベルを示す複数の第2のD型フリップフロップ、ii)前記複数の第2のD型フリップフロップの各出力信号を第2のクロック周波数に同期させる第2の同期手段、iii)前記第2の同期手段の全出力がセットされたことを示す第2のロジック手段、(c)前記FIFOにデータが書き込まれるに従って、前記第1のD型フリップフロップのそれぞれのデータを書き換える手段と、(d)前記FIFOのデータが読み取られるに従って、前記第2のD型フリップフロップのそれぞれのデータを書き換える手段と、を有し、前記第1のロジック手段は、前記FIFOの満杯状態を表示する信号を出力し、前記第2のロジック手段は、前記FIFOの空状態を表示する信号を出力する、ことを特徴とする状態レジスタを提供するものである。
【0016】
本発明の重要な特徴はFIFO用の状態インジケータが発生する信号の同期であるが、同期の説明は後述する。第1にFIFO状態の考え方について説明し、次に状態信号をどのように生成するかを説明する。
【0017】
【実施例】
図20は本発明の1つの態様の略図である。本図についての説明は、図2から初めて順を追って段階的に行なう。
【0018】
[FIFO_EMPTY信号の生成]
図2の左側には8個のメモリー・セルの列FF0〜FF7が図示してある(右側にもFF列があるが、これについては後述する)。それぞれのセルFFは、右手に「レベル0」などと表記してある8レベルのFIFOのうちの1つのレベルに対応する。FIFO内の「レベル」は多ビットのデータワードを格納する記憶位置を表わす。
【0019】
図2のメモリーセルは2台のコンピュータ間で送信されている実際のデータを保持せず、これはFIFOが行なう。その代わり、これらのメモリーセルはFIFOの各レベルの状態(空または満杯)を表わすビットを保持するので、セルFFは「FIFO状態セル」と呼ぶことが出来る。
【0020】
FIFO内の所定のレベルは空の状態を有する目的で文字どおり空になる必要はない。例えば、受信側(例、コンピュータA)があるレベルを読み取った後、そのレベル内のデータを読み取り操作で実際に消去しなくとも、そのレベルは空になったものと見なされ、データはそのレベルに保存されている。「読み取り済み」のほうが術語として適しているかもしれないが、「空」という術語が従来から使用されている。
【0021】
データ転送の初期化時には、データをFIFO内へ読み込む前に、図2に図示したように全ての状態セルを「1」の状態にする。ANDゲートAND_1で全てのメモリーセルをAND演算する。この時点でAND_1はFIFO_EMPTY線に「1」を出力し、そのFIFOが空であることを表わす。
【0022】
このFIFO_EMPTY信号は受信側で使用する。受信側がFIFO_EMPTY信号を検出した場合、受信側ではFIFOからのデータ読み取りを行なわない。
【0023】
送信側がFIFOの第1のレベル「レベル0」へデータ・ワードを送出すると(本好適実施例において、各ワードは32ビット幅である)、図3のHI−LOW遷移を表わす記号2で図示したように、送出側でWRITE線を引き下げる。これでレベル0に対応する状態セルFF0を切り換え、図示したようにFF0で出力「0」が生成されるようにする。これでFIFO_EMPTY信号は図示したように「0」に引き下げられる。FIFOには1つのデータ・ワードが格納されたので、FIFO_EMPTY信号はFIFOが空であることをもはや示していない。
【0024】
この「0」信号を検出すると、受信側ではFIFOにデータが格納されたことが分り、そのデータを読み出す。しかしここでは、読み取り操作が行われずに送信側がFIFO内へのデータ・ワードの送出を単純に継続するものと仮定しておく。
【0025】
送信側がFIFOのレベル1に第2のデータ・ワードを送出するとき、送信側は図4に図示したように「レベル1」の状態セルであるFF1にWRITE信号を印加する。状態セルFF1は図示したように出力「0」に切り換わる。しかしFIFO_EMPTY信号は図示したように「0」のままで、レベル1の書き込みがFIFOの非空き状態(レベル0にはすでにデータが格納されている)を変更しなかった事実と一致している。
【0026】
送信側がFIFOの第1の7つのレベルの各々に書き込むと、WRITEを各々のレベルの状態セルFFへ印加する。最後に、図5に図示してあるように、送信側は第8のレベルへ書き込み、レベル7の状態セルへWRITE信号を発行する。
【0027】
ここで、8つのレベル全部にデータが取り込まれると、図5の状態セルFFは全て「0」信号を発生する。FIFO_EMPTY信号は「0」である。
【0028】
ここで受信側がFIFO内に保持されているデータの読み込みを開始するものと仮定する。受信側がレベル0のデータを読み取るときに、図6のREAD信号をレベル0の状態セルに向けて発行する。このREAD信号で、図示したように状態セルFF0を「0」から「1」へ切り換える。しかしFIFOがまだ空になっていないので、FIFO_EMPTY信号は変更されないまま(「0」のまま)である。
【0029】
次に、受信側がレベル1のデータを読み取り、図7に図示したようにそのレベルの状態セルFF1へREAD信号を印加する。この状態セルは「0」から「1」へ切り換わる。FIFO_EMPTY信号は依然として変わらない。
【0030】
受信側は各レベルの読み取りを継続する。受信側が最後のレベルであるレベル7に達すると、図8に図示したように、READ信号をそのレベルの状態セルFF7に印加する。この状態セルは「0」から「1」へ変化する。ここで、AND_1は8入力の「1」を受信し、これの出力は「0」から「1」へ変わる。図示したようにFIFO_EMPTY信号は「0」から「1」へ変化する。
【0031】
FIFO_EMPTY信号が「1」であるということは、FIFOが空であることを表わしている。受信側はFIFO_EMPTY信号を監視し、FIFO_EMPTY信号「1」に応答してFIFOの読み取りを打ちきる。
【0032】
従って、本発明は受信側によるFIFOの読み取りに追従し、FIFOの全レベルが読み取られた後でFIFO_EMPTY信号を生成する。
【0033】
[FIFO_FULL信号の生成]
本明細書では次にFIFO_FULL信号の生成を説明する。図9では8つの状態セルFF8〜FF15からなる第2の列を図示してある。各々はFIFOの1つのレベルに対応している(つまり、2つの状態セルがFIFOの各々のレベルに対応していることになる。FF0とFF8はレベル0に対応し、FF1とFF9はレベル2に対応する、という具合である)。図示したように、初期化時に、全ての状態セルFF8〜FF15は「0」出力状態となるように駆動される。これらの出力(今は値が「0」)は全てAND_2で論理積が取られる。AND_2はここで出力「0」を生成する。AND_2の出力はFIFO_FULL信号徒渉する。この信号が「1」の場合、FIFOは満杯であると見なす。送信側はこの信号を監視しており、この信号でFIFOが満杯であると示された場合、送信側はこれ以上FIFOへのデータ書き込みを行なわないようにする。
【0034】
送信側がFIFOの第1のレベルであるレベル0へデータ・ワードを書き込む場合、前述のようにWRITE信号を図3のFF0へ印加する。このWRITE信号は図10のFF0のWRITE入力で反復される。
【0035】
さらに、同じWRITE信号が図10に図示したようにFF8に印加される。FF0とFF8はそれぞれ対向する方向へ状態が変わる。FF0は状態「1」から「0」へ変化し、一方FF8は状態「0」から状態「1」へ変化する。
【0036】
FIFO_FULL信号は、実際にFIFOが満杯でないので変化しない。しかし前述のように、これまで空だったFIFOにデータ・ワードが読み込まれたので、FIFO_EMPTY信号がこの時点で変化する。
【0037】
送信側が第2のデータ・ワードをレベル1のFIFOへ書き込む場合、WRITE信号をFF1とFF9両方のセルへ印加する。両方のセルは図示したように状態が変化する。FIFO_EMPTY信号とFIFO_FULL信号はどちらも「0」のまま変化しない。
【0038】
送信側はFIFOへのデータ・ワード書き込みを続け、各々のFFの対にWRITE信号を印加して、図12に図示したFF7とFF15へ印加されるWRITE信号で書き込みを終える。この時点でFIFOは満杯である。これらのFFはどちらも状態が変化する。しかし、FF15の状態変化によってAND_2は8入力の「1」を受信し、AND_2の状態が変化する。ここでAND_2は値「1」のFIFO_FULL信号を生成する。
【0039】
FIFO_FULL信号は、FIFOの8つのレベル全部がデータを含むことを表わしている。送信側はこの信号を監視し、この時点でこれ以上のFIFOへのデータ書き込みをやめる。
【0040】
[読み取り動作]
これまでの説明は書き込み動作を考えてきた。ここでは読み取り動作について考察する。
【0041】
FIFOが満杯だと仮定する。この時点で、図13に図示したように、読み取り動作の前は、左側のFF列(FF0〜FF7)全部がデータ「0」を保持しており、これらの対応するレベルが満杯であることを表わしている。同様に、右側のFF列(FF8〜FF15)は全部データ「1」を保持しており、これらの対応するレベルが満杯であることを表わしている。
【0042】
受信側がFIFOのレベル0を読み取る時点で、図示したように、受信側はFF0とFF8両方のREAD線にREAD信号を印加する。FF0の出力は「1」から「0」に変化し、一方FF8の出力は「1」から「0」に変化する。FIFO_FULL信号は「1」から「0」に変化し、この時点でFIFOが満杯ではないと見なされていることを表わす。送信側は所望すれば別のデータ・ワードをこのFIFOへ送出することが出来る。
【0043】
図14において、受信側はFIFOの読み取りを継続している。受信側はレベル1を読み取り、レベル1の両方のFF即ちFF1とFF9のREAD入力へREAD信号を印加する。
【0044】
受信側は残りのレベルの読み取りを続け、各々のレベルに対応する2個のFFにREAD信号を印加する。読み取り動作はレベル7の読み取りで終了し、この時点で受信側は図15に図示したようにFF7とFF15へREAD信号を印加する。この最後の読み取り動作の後、FIFO_EMPTYフラグは「1」になるので、FIFOは空であると見なされる。
【0045】
[部分的WRITEと部分的READ]
これまでの説明ではFIFO全部に書き込む書き込み動作のシーケンスと、それに続けてFIFO全部を読み取る読み取り動作について考察してきた。ここではFIFOの部分的書き込みと部分的読み取りについて考察する。
【0046】
図16において、送信側はレベル0からレベル5までに6つのデータ・ワードを書き込む。つまり、破線のWRITE信号と最後の実線のWRITE信号で示したように、送信側はWRITE信号をFF0からFF5までに順次印加する。6回の書き込み動作の後のFFの状態を図17に図示してある。
【0047】
ここで、極端な例として、送信側が第7のデータ・ワードを書き込みできる前に受信側がデータ・ワードのうちの5つを読み取ると仮定する。つまり、図18に示したように、受信側はセルFF0からFF4までにREAD信号を印加する。つまり、読み取り動作の後、
−レベル0からレベル4に対応する状態セルは、これらのレベルが空であることを示す。
【0048】
−レベル5に対応する状態セルは、このレベルが満杯であることを示す。
【0049】
−レベル6とレベル7に対応する状態セルは、これらのレベルが空であることを示す。
【0050】
ここで、図19に図示したように、送信側がレベル6にデータを書き込む。図19では、この最後の書き込み動作の後の、状態セルの現在の状態を表わしている。
【0051】
これまでの説明ではFIFO_FULL信号とFIFO_EMPTY信号の生成を説明した。以下の説明では、これらの信号が異なる2種類のクロック、即ち送信側のクロックと受信側のクロックに対してどのように同期するかを説明する。
【0052】
[メモリーセルFFの構造]
メモリーセルFF0〜FF15の各々は図20の破線の囲みを各々が占有している。状態セルFF0〜FF7は全て同一である。状態セルFF8〜FF15は全て同一である。これら状態セルの対は図30に図示してある。状態セルFF0〜FF15の各々はDFFRSPとラベルを付けてあるD型フリップフロップ(同期セットおよびリセットを有するD型フリップフロップの略称)と、SYNCH RPとラベルを付けたブロックとを含む。
【0053】
SYNCH RPの詳細については後述する。ここでは、SYNCH RPが2つのことを行なうと分かっていれば十分である。その1つは、入力の信号SD(D:データ)を出力SQに複写する(SQバーはQの反転である)ことである。
【0054】
もう1つは、出力信号(SQまたはSQバーの出力)をクロック入力SCKと同期させることである。つまり、「A CLOCK」信号を受信する「A CLOCK」信号と同期させ、一方「B CLOCK」信号を受信するSYNCH
RPはその出力を「B CLOCK」信号と同期させる。
【0055】
[DFFRSPの動作]
図31はDFFRSP(本明細書においてはD型フリップフロップを指す)の入出力動作を図示している。S(セット)入力は出力QをHIにする。R(リセット)入力は出力QをLOにする。CK(クロック)入力はD(データ)入力に現われる信号(HIまたはLO)を出力Qに取り出す。QバーはQの論理的反転である。
【0056】
[SYNCH RPの動作]
図32はSYNCH RPの入出力動作を図示したものである。SR(リセット)入力は出力SQをHIにする。SCK(クロック)入力はSD(データ)入力に現われる信号(HIまたはLO)を出力Qに取り出す。SQバーはSQの論理的反転である。
【0057】
[初期化:INIT信号に対するFFの応答]
INIT(初期化)信号は図30に図示してある。同じ信号が図20の左側上隅に図示してある。この信号はコンピュータ、プロセッサ、またはその他の、FIFO(図示していない)経由でデータを転送しようとする装置が発行する。INIT信号は次のような動作を起こさせる。
【0058】
図30の、D型フリップフロップD1のS(セット)入力に信号が到達する。これによりそのフリップフロップのQバーが図示したようにLOになる。このLO信号はFF0のSYNCH RPのSR入力へ供給され、図示したようにSQバー出力をHIにする(SQバーのHI信号は実際には2クロック周期遅れて出現するが、これについては後述する)。このHI信号は、例えば図2のFF0で図示した「1」信号に対応する。このHI(または「1」)信号はレベル0(FF0が対応しているレベル)が空であることを表わしている。
【0059】
図30のINIT信号はFF8のD型フリップフロップのS(セット)入力にも到達する。これによって図示したようにフリップフロップの出力QがHIになる。このHI出力はFF8のSYNCH RPのSD(D:データ)入力に供給される。HI信号はSYNCH RPを通って伝播し、2クロック遅れてSQバー出力に(反転した状態で)現われる(2クロックの遅延については後述する)。この(SQバー出力での)LO信号は、例えば図2においてFF8のLO信号に対応するものである。このLO(または「0」)信号は、レベル0(FF8が対応しているレベル)が空であることを表わしている。
【0060】
つまり、INIT信号は全てのFFを図2に図示した状態にセットする。図2のFIFO_EMPTY信号はHIであり、FIFO_FULL信号はLOである。FIFOはデータの受け入れ準備が完了する。
【0061】
[WRITE信号に対するFFの応答]
送信側がFIFO内のあるレベルにデータを書き込む場合、前述のように図2の対応するFFにWRITE信号を印加する。図33はWRITE信号が各々のFF内で(または状態セル内で)発生させる変化を表わしている。
【0062】
WRITE信号はFF0のD型フリップフロップD1のR(リセット)入力へ供給される。これによって図示したようにQバー出力がHIになる。このHI信号がSYNCH RPのSR(R:リセット)入力へ供給され、SYNCH RPをリセット状態から解放する(SRへ印加したそれまでのLO信号でSYNCH RPはリセット状態に保持されていた)。
【0063】
SYNCH RPはリセット状態から解放されたので、A CLOCK信号が発生すると(A CLOCK信号はシステムAが使用するクロック信号で、今の例では受信側に相当する)、SYNCH RPはSD(D:データ)に存在するデータをラッチする。このデータ信号は常にHIである。2クロックパルス遅れて(これについては後述する)、データ信号がSQバーに現われるが、ここでは反転している。つまり、SQバーはLOである。
【0064】
SQバーのLO信号は図3のFF0に現われるLO(または「0」)信号に対応する。つまり、WRITE信号によってFF0が「1」から「0」に変化し、データが存在することを表わす。
【0065】
図33において、WRITE信号はFF8のD型フリップフロップD2のR(リセット)入力、およびFF8のSYNCH RPのSR(R:リセット)入力にも供給される。WRITE信号は第1にSYNCH RPをリセット状態に入れ、SQバーは図示したようにHIになる。SQバーのHI状態はD型フリップフロップをリセット状態にすることで維持され、これによって図示したように出力QがHIになる。
【0066】
繰り返すが、WRITE信号はFF8のを即時的に切り換える。WRITE信号はいつまでも持続しないので、D型フリップフロップD2のQに発生したHIを用いてSQバーをHIに維持する。QのHI状態は、今の例では送信側の装置BのクロックであるB CLOCKによりSYNCH RPを通してクロックされている。
【0067】
[READ信号に対するFFの応答]
受信側がFIFOのあるレベルからデータを読み取る場合、前述のように対応するFFにもREAD信号を印加する。図34はREAD信号によって発生する変化を図示したものである。
【0068】
READ信号はD型フリップフロップD1およびD2のCK(クロック)入力へ供給される。これによって図示したようにD1のQバー出力がLOになる。
このLO信号はSYNCH RP10のSR(リセット)入力へ供給されてSYNCH RP10をリセット状態に保持する。図示したように、出力SQバーはHIになる。このHI信号は図20のAND_1へ供給され、(あるレベルの読み出しでそのレベルが空と見なされることになるため)FIFO_EMPTY信号を発生させる。
【0069】
READ信号は別のD型フリップフロップD2のCK(クロック)入力の両方にも供給される。READ信号は第1にD2にD入力のHI信号をラッチさせ、図示したように出力QをHIにする。
【0070】
D2のQにおけるHI出力はSYNCH RP13のSD(D:データ)入力に供給される。このHI入力は、2クロック周期遅れてSQバー出力に反転して現われる。図示したようにSQバーはLOになる。
【0071】
繰り返すが、READ信号はSYNCH RP10を即時的に切り換える(D1のQバーがSYNCH RPをすぐに(厳密にはクロックの速度に比べて小さい伝播遅延の後)リセット状態にするため)。READ信号は永久に持続しないので、フリップフロップD1のQバー出力に現われたLOを用いてSQバーのHI状態を維持する。このD1のQバーでのLOは、今の例では送信側の装置AのクロックであるA CLOCKによりSYNCH RPを通してクロックされている。
【0072】
[SYNCH RP]
図35はSYNCH RPの内部構造を図示したものである。図36は、図35にも図示したDATA IN信号がどのようにCLOCKと同期するか、またどのように2クロック周期の遅延が挟まれるかを示している。
【0073】
FIRST OUT端末はクロックと同期した信号を生成する(術語「同期」は技術用語の1つである。その定義は本明細書の後で示す。同期の概念における基本的前提は次のようなものである:ある信号があるクロック信号と同期するのは、その信号がクロック信号の発生と同時に(または所定の時間内に)読み取られる準備が出来ている場合である)。
【0074】
SYNCH RPにおいて、FIRST OUT信号はINPUTデータが安定した後発生するCLOCK信号の第1の立ち上がり縁に同期する。
【0075】
SECOND OUT端末はこれもクロックと同期した信号を生成するが、1クロック周期だけFIRST OUT信号より遅延する。
【0076】
つまりSYNCH RPは(a)SECOND OUT信号をクロックと同期させるが、(b)2クロック周期だけ遅延させる。
【0077】
[カウンタとデコーダ:図20]
これまでの説明では、READとWRITE信号が図2のFFにシーケンスとして印加されると述べた。次に8つのFFへのシーケンスとしてのREADおよびWRITE信号の生成を説明する。
【0078】
受信側のコンピュータAがFIFOを読み取る場合、図20左上に図示したようにA_RD(A−READの略称)信号を生成する。各々のA_RD信号は3ビットカウンタCTRをクロックしている。つまり、第1の読み取り動作では、カウンタ出力は000から001へ変化する。第2の動作では、カウンタ出力は001から011へ変化し、以下同様に続く。
【0079】
カウンタCTRは000から111まで計数し、このあとまた000からカウントを始める(カウンタCTRは1方向にだけ連続的にカウントを行なう)。
カウンタCTRの3ビット出力は、「3対8」とラベル付けしてある3対8デコーダに供給される。このデコーダはカウンタの3ビット出力に対応するバスLLの1つの線を引き上げる。例えば、カウンタの3ビット出力が000の場合、デコーダは「L0」とラベルを付けてある線を高値にする(「L0」はL−ZEROであって「LO(ロー)」ではない)。カウンタの3ビット出力が001の場合には、デコーダはL1をHIにする。
【0080】
つまり、線L0からL1が順にHIになる。このシーケンスによってD1フリップフロップのCK入力が順番にHIになる。つまり、FF0のD1のCKが第1にHIになり、FF0からFF7までの他の全てのCKはLOとなる。
【0081】
次に、FF1のD1のCKがHIになり、FF0からFF7までの他の全てのCKはLOとなる。
【0082】
次に、FF2のD1のCKがHIになり、FF0からFF7までの他の全てのCKはLOとなる。以下同様に続く。
【0083】
NANDゲートNとインバータIは、カウンタCTRと3対8でコーダと一緒にこの連続動作を行なわせる。当然のことながら、8本のREAD線を1回に1本づつ順番に作動させるための従来技術で周知の他の方法が存在する。
【0084】
ここでは図3から図5を参照して前述したように、順番に各々のFFにREAD信号を印加する方法を説明した。WRITE信号は、図20の左上の部分に図示したB_WR(B WRITEの略称)によって供給されるカウンタCTRによって、同じ方法で順番に各々のFFへ印加される。
【0085】
[重要なポイント]
ポイント1.以下のことがらを説明する。
【0086】
事項:図33のWRITE信号は、SYNCH RP13が図20のANDゲート20へ供給されるので、FIFO_FULL信号を作動させることが出来る。
【0087】
事項:逆に、同じWRITE信号で、図33のSYNCH RP10が図20のANDゲート23へ供給されるため、FIFO_EMPTY信号を作動停止させることが出来る。
【0088】
事項:FIFO_FULL信号のこの動作はWRITE信号により即時的に生成される。
【0089】
事項:FIFO_EMPTY信号のこの動作は受信側のクロックと同期しており、同期遅延の後で発生する。
【0090】
事項:図34のREAD信号は、SYNCH RP13が図20のANDゲート20へ供給されるので、FIFO_FULL信号を作動停止させることが出来る。
【0091】
事項:逆に、同じREAD信号で、図33のSYNCH RP10が図20のANDゲート23へ供給されるため、FIFO_EMPTY信号を作動させることが出来る。
【0092】
事項:このFIFO_EMPTY信号の作動はREAD信号により即時的に行われる。
【0093】
事項:FIFO_FULL信号の作動停止は送信側のクロックと同期しており、同期遅延の後で発生する。
【0094】
[事項の説明]
ここで考えている例では、コンピュータBが送信側で、WRITE信号を発行している。またコンピュータAが受信側で、READ信号を発行している。
【0095】
[WRITE信号の効果]
図33において、WRITE信号は主として2つの作用を起こす可能性を有している:図33の「AND_1へ」の線上の信号を経由して図2と図20のFIFO_EMPTY信号を作動停止させ、「AND_2へ」と表記してある線上の信号を経由してFIFO_FULL信号を作動させる。
【0096】
つまり、0から6までの7つのレベルのFIFOが満杯であると仮定すると、図2と図20のAND_2はFF8〜FF14の7つの状態セルから「1」信号を受信しており、FF15状態セルからは「0」信号を受信している。このANDゲートは出力「0」を生成する。FIFO_FULL信号は発行されない。
【0097】
コンピュータBがFIFOのレベル8に書き込むと、WRITE信号がFF15に(READ信号による反転が発生していないとして)到達する。WRITE信号は図33に図示してある。FF15の出力は「1」となる。ここで図20のAND_2は「0」から「1」へ切り換わり、FIFO_FULL信号を生成する。
【0098】
同期は重要である。FIFO_FULL信号は図33のSYNCH RPが発生する。前述したように、SYNCH RPはWRITE信号によって即時的に切り換わる。即ち、FIFO_FULL信号の起動時に同期遅延は起こらない。さらに、この信号を発行する装置(コンピュータB)もFIFOの満杯状態を引き起こす装置であり、この信号を必要とする。
【0099】
逆の状態を考えると、(前述のような)FIFO_FULL信号を作動することの出来る同じWRITE信号が図2と図20のAND_1で生成されたFIFO_EMPTY信号を作動停止することもできる。作動停止は図33のフリップフロップD1に到達するWRITE信号によって引き起される。
【0100】
[異なる同期]
繰り返すと、WRITE信号はFIFO_FULL信号を作動させることが出来、FIFO_EMPTY信号を作動停止させることが出来る。しかし、起動と作動停止は別個に同期している。
【0101】
FIFO_FULL信号の起動は図33のSYNCH RP13のWRITE信号リセット動作により行われる。このリセットによってFIFO_FULL信号が即時的に(伝播遅延が起きる)発生する。
【0102】
逆に、FIFO_EMPTY信号の作動停止は図33のフリップフロップD1のWRITE信号切り換えにより行われる。作動停止はSYNCH RP10による同期遅延の後で発生する。送信側の生成するWRITE信号の直後に作動停止は行われないが、これは、受信側のクロックであるA CLOCKによってクロックされているSYNCH RP10で作動停止信号が生成されるためである。
【0103】
つまり、作動停止の場合には、送信側(コンピュータB)がWRITE信号を発行し、これによってFIFO_EMPTY信号の作動を停止する。しかし、信号の作動停止は、実際には受信側(コンピュータA)のクロックによって引き起こされ、またこれと同期している。
【0104】
[READ信号の効果]
図34において、READ信号は主として2つの作用を引き起こす可能性を有している:図2と図20のFIFO_EMPTY信号を作動させ、同図に図示したFIFO_FULL信号を停止させる。
【0105】
つまり、FIFOの0から6までの7つのレベルが空だと仮定する。図2と図20のAND_1は7つの状態セルFF0〜FF6から「1」信号を受信しており、状態セルFF7からの「0」信号を受信している。これによりANDゲートは出力「0」を生成する。FIFO_EMPTY信号は作動されない。
【0106】
コンピュータAがFIFOのレベル7を読み込むとき、READ信号がFF7に到達する(WRITE信号による反転が発生しないものと仮定する)。READ信号は図34に図示してある。FF7の出力は「1」となる。ここで、図20のANDゲート23が「0」から「1」に切り換わり、FIFO_EMPTY信号を発生する。
【0107】
同期は重要である。FIFO_EMPTY信号は図25のSYNCH RP10に起因する。SYNCH RPは即時的に(D1とSYNCH RP10を通過する際の伝播遅延を除く)READ信号によって切り換わる。つまり、FIFO_EMPTY信号の作動時には同期遅延が発生しない。さらに、この信号を作動させる装置(コンピュータA)もFIFO内の空の状態を発生させる装置であり、この信号を必要とする。
【0108】
逆の状況を考えてみると、(前述のように)FIFO_EMPTY信号を作動させることの出来るのと同じREAD信号で、図2と図20のANDゲート20により生成されたFIFO_FULL信号を作動停止させることもできる。作動停止は図34のフリップフロップD2に到達するREAD信号に起因する。
【0109】
繰り返すが、READ信号はFIFO_EMPTY信号を作動させることが出来、FIFO_FULL信号を作動停止させることが出来る。しかし、起動と作動停止は別々に同期している。
【0110】
FIFO_EMPTY信号の作動は、D1のQバー出力を経由したREAD信号による図34のSYNCH RP10のリセットで発生する。FIFO_EMPTY信号はREAD信号の直後(伝播遅延が起こる)に発生する。
【0111】
逆に、FIFO_FULL信号の作動停止は図34のフリップフロップD2がREAD信号によって切り換わることで発生する。作動停止はSYNCH RP13による同期遅延の後で発生する。受信側により生成されたREAD信号の直後に作動停止が発生しないのは、作動停止信号がSYNCH RP13で生成され、これが送信側のクロックであるB CLOCKによりクロックされているためである。
【0112】
つまり、作動停止の場合、受信側(コンピュータA)はREAD信号を発行し、これによってFIFO_FULL信号の作動停止を行なうことが出来る。しかし、この信号の作動停止は実際には送信側(コンピュータB)のクロックに起因しており、これと同期している。
【0113】
ポイント2.送信側から受信側への転送中にFIFOはデータを保持する。データ転送は一方通行である。受信側が送信側へデータを送信することを所望する場合、第2のFIFOと、図20の本発明の複製を設けることが出来る。
【0114】
ポイント3.本発明により、FIFOが満杯になるまで、送信側は送信側の各クロック周期毎に1つのデータ・ワードをFIFOへ書き込むことが出来る。この時点でFIFO_FULLフラグが立てられ(直後、伝播遅延が起こる)、送信側によるこれ以上のデータの書き込みを停止させる。
【0115】
逆に、本発明により、FIFOが空になるまで、受信側は受信側の各クロック周期毎にFIFOから1つのデータ・ワードを読み出すことが出来る。この時点でFIFO_EMPTYフラグが立てられ(直後、伝播遅延が起こる)、受信側によるこれ以上のデータの読み込みを停止させる。
【0116】
例えば、図37では送信側のクロックが受信側のクロックより速い場合を図示している。送信側による最後の4回の書き込み動作の後、図示してあるようにFIFOは満杯になる。受信側がFIFOを読み出す場合、図示したように、READ信号によって送信側の第2のクロック立ち上がり端でFIFO_FULL信号が作動停止する。ここで送信側はさらにデータを書き込むことが出来るようになる。しかし、受信側のFIFO読み取りは中断されない。受信側はそのクロックパルス毎に1つのデータ・ワードを読み出すことが出来る。
【0117】
一般に、受信側のクロックが送信側のクロックよりも遅い場合、受信側は受信側のクロックパルス毎に1つのデータ・ワードをFIFOから読み出すことが出来る。送信側には図37に示した形式の遅延が発生する。
【0118】
逆に、送信側のクロックが受信側のクロックよりも遅い場合、送信側は送信側のクロックパルス毎に1つのデータ・ワードをFIFOへ書き込むことが出来る。
【0119】
両者のクロックが周波数的に十分近いけれども、同期してはいない場合、送信側はクロックパルス1つ毎に1つのデータ・ワードを書き込むことが出来、受信側はクロックパルス1つ毎にFIFOから1つのデータ・ワードを読み出すことが出来る。
【0120】
ポイント4.簡単な例で「同期」を説明する。だれかが光の点滅する回数を数えたいと仮定する。点滅は無作意な時刻に発生するものとする。光は送信側であり、この人の目は受信側である。しかし、その人がまばたきをするので、点滅の計数には問題が発生することがある。
【0121】
つまり、点滅した時点でその光が常に1秒間持続するものとし、またまばたきが1/10秒で行なえるものと仮定すると、明らかなように、まばたきを行なった瞬間がどうあれ、まばたきによって計数が中断されることはない。
【0122】
しかし、光が1/15秒間だけ転倒する場合には、点滅がまばたきと同時に発生し得ることが考えられ、計数できないことがある。この場合、ある人が無作意な点滅を正確に計数するのは不可能である。
【0123】
しかし、フラッシュが1秒間のブザー音が鳴っている間にだけ点滅することにするという規則を付け加えた場合、その人はブザー音の度に1秒間にわたって目を開いたままにしておくことが出来る。これで目と点滅を同期させることが出来、全ての点滅を計数することが出来るようになる。
【0124】
つまり、「同期」の1つの定義は、信号(点滅)がクロック(ブザー音)にたいして所定の時間枠内で発生する場合、信号とクロックが同期しているという。
他の「同期」の定義も可能である。
【0125】
ポイント5.送信側のクロックが受信側のクロックより大幅に速い場合、一般に、FIFO_EMPTY信号は発生しなくなるが、これはいつでも送信側がFIFO_FULL信号の作動停止とほぼ同時にFIFO内へ再書き込みを行なってしまうためである。受信側はFIFOを空にすることが出来なくなる。一般的には、FIFOは少なくとも7つのデータ・ワードを含むことになる。
【0126】
逆に、受信側のクロックが送信側のクロックより大幅に速い場合、一般にFIFO_FULL信号は発生しなくなるが、これは、FIFO_EMPTY信号が作動停止するとほぼ同時に受信側が常にFIFOを読み出してしまうためである。送信側はFIFOを満杯にすることが出来なくなる。一般的には、FIFOは最大でも1つのデータ・ワードを含むだけである。
【0127】
つまり、1つの条件下で、FIFO_FULL信号はまったく使用されず、別の条件下では、FIFO_EMPTY信号がまったく使用されない。そのため、本発明では2種類のクロックが相互に近接しているような場合に広く適用範囲を求めることが出来る。
【0128】
ポイント6.図30はフリップフロップD1とD2の両方が同じ入力を受信することを表わしている。その結果、各々のFFの対の2個のフリップフロップを、図38のように接続した1つのフリップフロップD3に置き換えることが可能になる。
【0129】
ポイント7.FIFOはコンピュータ間を移動するデータを保持する必要はない。他の形式の装置間でのデータ転送に本発明を使用することが可能である。
ポイント8.書き込み動作と読み出し動作は一般にFIFOの1つのレベルに処理を行なう動作と見なすことが出来る。書き込み動作はそのレベルにデータを書き込み、一方読み出し動作はあるレベルから読み出して、そのレベルを空にするものと考えられる。読みだしと書き込みの両方を「FIFOレベル操作」と称することが出来る。
【0130】
【発明の効果】
本発明は送信側と受信側の間のデータ転送の改良を提供する。また、データ転送に使用するFIFOバッファの状態を監視し該FIFOの状態にしたがって満杯(full)および空(empty)信号を生成するようなシステムを提供する。
【図面の簡単な説明】
【図1】 カウンタ回路をFIFOの状態インジケータとして使用する方法を示し、発明者の創作である。
【図2】 初期化の直後の状態インジケータの半分の状態を図示する。
【図3】 状態レジスタの半分が8回の書き込み操作に応答する方法を図示する。
【図4】 状態レジスタの半分が8回の書き込み操作に応答する方法を図示する。
【図5】 状態レジスタの半分が8回の書き込み操作に応答する方法を図示する。
【図6】 図3から図5までの書き込み操作に続けて行なう8回の読み取り操作に対して状態レジスタが応答する方法を図示する。
【図7】 図3から図5までの書き込み操作に続けて行なう8回の読み取り操作に対して状態レジスタが応答する方法を図示する。
【図8】 図3から図5までの書き込み操作に続けて行なう8回の読み取り操作に対して状態レジスタが応答する方法を図示する。
【図9】 初期化直後の状態レジスタ全部の状態を図示する。
【図10】 状態レジスタ全部が8回の書き込み操作に応答する方法を図示する。
【図11】 状態レジスタ全部が8回の書き込み操作に応答する方法を図示する。
【図12】 状態レジスタ全部が8回の書き込み操作に応答する方法を図示する。
【図13】 図10から図12に図示した8回の書き込み操作に続けて、8回の読み取り操作に対し状態レジスタ全部が応答する方法を図示する。
【図14】 図10から図12に図示した8回の書き込み操作に続けて、8回の読み取り操作に対し状態レジスタ全部が応答する方法を図示する。
【図15】 図10から図12に図示した8回の書き込み操作に続けて、8回の読み取り操作に対し状態レジスタ全部が応答する方法を図示する。
【図16】 状態レジスタ全部が6回の書き込み操作に対して応答する方法を図示する。
【図17】 図16の書き込み操作の後の状態レジスタの状態を図示する。
【図18】 図16の書き込み操作の直後に、書き込み操作と干渉しないで5回の読み取り操作に対し状態レジスタ全部が応答する方法を図示する。
【図19】 図18の6回の読み取り操作に続けて、さらに書き込み操作を続ける状態レジスタの状態を図示する。
【図20】 本発明の1つの態様を図示する。
【図21】 本発明の1つの態様を図示する。
【図22】 本発明の1つの態様を図示する。
【図23】 本発明の1つの態様を図示する。
【図24】 本発明の1つの態様を図示する。
【図25】 本発明の1つの態様を図示する。
【図26】 本発明の1つの態様を図示する。
【図27】 本発明の1つの態様を図示する。
【図28】 本発明の1つの態様を図示する。
【図29】 本発明の1つの態様を図示する。
【図30】 図20のFF0〜FF8の内部構造と、FF0〜FF8がINIT(初期化)信号に応答する方法を図示する。
【図31】 図30の素子D1の入出力応答を図示する。
【図32】 図30の素子D2の入出力応答を図示する。
【図33】 書き込み(WRITE)信号へのFF0〜FF8の応答を図示する。
【図34】 読み取り(READ)信号に対するFF0〜FF8の応答を図示する。
【図35】 FF0とFF8の両方に図示したSYNCH RPの構造を図示する。
【図36】 SYNCH RPの動作を図示する。
【図37】 受信側のクロックが送信側のクロックよりも遅い場合に発生する1シーケンスの動作を図示する。
【図38】 図20の状態レジスタFFの別の構造を図示する。
【符号の説明】
10 SYNCH RP
13 SYNCH RP
20 ANDゲート
23 ANDゲート
FF 状態セル

Claims (1)

  1. 送信側から受信側へ転送中のデータを保持するFIFOのための複数のレベルの満杯状態を示すFIFIの状態レジスタであって、
    (a)以下のi)乃至iii)を含むFIFOの満杯表示システムと、
    i)前記FIFOのそれぞれの満杯レベルを示す複数の第1のD型フリップフロップ、
    ii)前記複数の第1のD型フリップフロップの各出力信号を第1のクロック周波数に同期させる第1の同期手段、
    iii)前記第1の同期手段の全出力がセットされたことを示す第1のロジック手段、
    (b)以下のi)乃至iii)を含むFIFOの空表示システムと、
    i)前記FIFOのぞれぞれの空レベルを示す複数の第2のD型フリップフロップ、
    ii)前記複数の第2のD型フリップフロップの各出力信号を第2のクロック周波数に同期させる第2の同期手段、
    iii)前記第2の同期手段の全出力がセットされたことを示す第2のロジック手段、
    (c)前記FIFOにデータが書き込まれるに従って、前記第1のD型フリップフロップのそれぞれのデータを書き換える手段と、
    (d)前記FIFOのデータが読み取られるに従って、前記第2のD型フリップフロップのそれぞれのデータを書き換える手段と、を有し、
    前記第1のロジック手段は、前記FIFOの満杯状態を表示する信号を出力し、前記第2のロジック手段は、前記FIFOの空状態を表示する信号を出力する、ことを特徴とする状態レジスタ。
JP26491594A 1993-10-29 1994-10-28 Fifo状態インジケータ Expired - Lifetime JP3765547B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14591293A 1993-10-29 1993-10-29
US08/145,912 1993-10-29

Publications (2)

Publication Number Publication Date
JPH07200249A JPH07200249A (ja) 1995-08-04
JP3765547B2 true JP3765547B2 (ja) 2006-04-12

Family

ID=22515093

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26491594A Expired - Lifetime JP3765547B2 (ja) 1993-10-29 1994-10-28 Fifo状態インジケータ

Country Status (4)

Country Link
US (1) US6289065B1 (ja)
EP (1) EP0651319B1 (ja)
JP (1) JP3765547B2 (ja)
DE (1) DE69423069T2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6782486B1 (en) * 2000-08-11 2004-08-24 Advanced Micro Devices, Inc. Apparatus for stopping and starting a clock in a clock forwarded I/O system depending on the presence of valid data in a receive buffer
US6810098B1 (en) * 2000-12-08 2004-10-26 Cypress Semiconductor Corp. FIFO read interface protocol
US6694389B2 (en) * 2001-03-19 2004-02-17 Sun Microsystems, Inc. Method and apparatus for data flow analysis
US7227876B1 (en) 2002-01-28 2007-06-05 Pmc-Sierra, Inc. FIFO buffer depth estimation for asynchronous gapped payloads
US7085874B2 (en) * 2004-04-02 2006-08-01 Arm Limited Synchronous/asynchronous bridge circuit for improved transfer of data between two circuits
JP4730051B2 (ja) * 2005-10-13 2011-07-20 日本電気株式会社 半導体ディジタル回路、fifoバッファ回路及びそれらに用いるデータ受け渡し方法
JP2013178696A (ja) * 2012-02-29 2013-09-09 Hitachi-Lg Data Storage Inc アーカイブシステムおよび処理方法
US9087718B2 (en) 2013-03-13 2015-07-21 Transphorm Inc. Enhancement-mode III-nitride devices

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4159532A (en) * 1977-08-04 1979-06-26 Honeywell Information Systems Inc. FIFO look-ahead system
DE3213345C2 (de) * 1982-04-08 1984-11-22 Siemens Ag, 1000 Berlin Und 8000 Muenchen Datenübertragungseinrichtung zwischen zwei asynchron gesteuerten Datenverarbeitungssystemen
US4596026A (en) * 1983-05-09 1986-06-17 Raytheon Company Asynchronous data clock generator
US4873703A (en) * 1985-09-27 1989-10-10 Hewlett-Packard Company Synchronizing system
US4694426A (en) 1985-12-20 1987-09-15 Ncr Corporation Asynchronous FIFO status circuit
US4718074A (en) * 1986-03-25 1988-01-05 Sotas, Inc. Dejitterizer method and apparatus
US4907186A (en) * 1987-02-09 1990-03-06 The United States Of America As Represented By The Secretary Of Commerce Data direct ingest system
US4965794A (en) * 1987-10-05 1990-10-23 Dallas Semiconductor Corporation Telecommunications FIFO
US4933901A (en) * 1988-01-11 1990-06-12 Texas Instruments Incorporated Method for assigning priority to read and write requests received closely in time
EP0342107B1 (en) * 1988-05-09 1996-07-17 STMicroelectronics, Inc. Flag for a FIFO
JPH02159624A (ja) * 1988-12-13 1990-06-19 Nec Corp 先入れ先出しレジスタ装置
EP0433520B1 (en) * 1989-12-22 1996-02-14 International Business Machines Corporation Elastic configurable buffer for buffering asynchronous data
DE69227820T2 (de) * 1991-10-10 1999-05-12 Nec Corp Sonet DS-N-Desynchronisiereinrichtung

Also Published As

Publication number Publication date
EP0651319A1 (en) 1995-05-03
US6289065B1 (en) 2001-09-11
EP0651319B1 (en) 2000-02-23
JPH07200249A (ja) 1995-08-04
DE69423069D1 (de) 2000-03-30
DE69423069T2 (de) 2000-08-24

Similar Documents

Publication Publication Date Title
US5365485A (en) Fifo with fast retransmit mode
US6493818B2 (en) Technique for pipelining synchronization to maintain throughput across two asynchronous clock domain boundaries
EP0226017B1 (en) Data synchronizer between a source system and a sink system
US4423482A (en) FIFO Register with independent clocking means
US5003558A (en) Data synchronizing buffers for data processing channels
US20020163361A1 (en) Source synchronous I/O without synchronizers using temporal delay queues
KR0145321B1 (ko) 2방향 데이타 전송장치
JPS61146030A (ja) データ流れ同期装置
JPH02232758A (ja) マルチプロセッサ用システム制御ユニットをインタフェースするための装置
JPH11505047A (ja) ソース同期クロック型データリンク
JP3645584B2 (ja) データ転送同期装置
JP3765547B2 (ja) Fifo状態インジケータ
US20050207280A1 (en) Bit clock with embedded word clock boundary
US8131967B2 (en) Asynchronous data interface
US6085285A (en) Intermixing different devices along a single data communication link by placing a strobe signal in a parity bit slot
JPH02500549A (ja) ピン数の少ない高性能バスインターフェイス
JPH11213649A (ja) 先入れ先出し記憶装置
WO2008083916A1 (en) Asynchronous data interface
US5283763A (en) Memory control system and method
JPS6386630A (ja) 並列伝送路におけるフレ−ム同期方式
US6282149B1 (en) Circuit and method for synchronized data banking
FR2497596A1 (fr) Machine informatique comportant une antememoire
US5249154A (en) Data access controller and method
JP2581041B2 (ja) デ−タ処理装置
Pung Design and Implementation of First-in First-out Memory

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041207

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20041227

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20050304

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050607

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050809

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20050708

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060123

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

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

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

Free format text: PAYMENT UNTIL: 20090203

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20090203

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20100203

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100203

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110203

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120203

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130203

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20140203

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term