JPH10214174A - Asynchronous fifo circuit - Google Patents

Asynchronous fifo circuit

Info

Publication number
JPH10214174A
JPH10214174A JP9016604A JP1660497A JPH10214174A JP H10214174 A JPH10214174 A JP H10214174A JP 9016604 A JP9016604 A JP 9016604A JP 1660497 A JP1660497 A JP 1660497A JP H10214174 A JPH10214174 A JP H10214174A
Authority
JP
Japan
Prior art keywords
signal
input
token
output
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.)
Granted
Application number
JP9016604A
Other languages
Japanese (ja)
Other versions
JP3013800B2 (en
Inventor
Misao Hagiwara
操 萩原
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP9016604A priority Critical patent/JP3013800B2/en
Publication of JPH10214174A publication Critical patent/JPH10214174A/en
Application granted granted Critical
Publication of JP3013800B2 publication Critical patent/JP3013800B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Communication Control (AREA)

Abstract

PROBLEM TO BE SOLVED: To prevent the erroneous recognition of a full state/an empty state by receiving the input of the inverted signals of write signals and the inverted signals of read signals and generating and outputting full signals for indicating the full state or empty signals for indicating an empty state. SOLUTION: Corresponding to the write of data, the write signals WR from the outside are inverted and inputted to a write pointer 1-12. Similarly, corresponding to data read, the read signals RD from the outside are inverted and inputted to a read pointer 1-13. Then, a full/empty detection circuit for performing a decoding processing to the respective address signals of the write pointer 1-12 and the read pointer 1-13 so as to generate the full state and the empty state is removed and a spike generated by the decoding processing is eliminated. Thus, the erroneous recognition mutually between the full state and the empty state is prevented.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は非同期FIFO回路
に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an asynchronous FIFO circuit.

【0002】[0002]

【従来の技術】従来の非同期FIFO回路の1例が図4
に示される。当該従来例は(4ワード)×(8ビット)
の非同期FIFO回路(以下、FIFO回路と略称す
る)の例であり、セレクタ4ー2およびDフリップフロ
ップ4ー3〜4ー7を含む(4ワード)×(8ビット)
のレジスターファイル4ー1と、書き込み回路4ー8
と、読み出し回路4ー9と、インバータ4ー10および
4ー11と、書き込みポインタ4ー12と、読み出しポ
インタ4ー13と、フル/エンプティ検出回路4ー14
と、同期化回路4ー15および4ー16とを備えて構成
される。
2. Description of the Related Art An example of a conventional asynchronous FIFO circuit is shown in FIG.
Is shown in The conventional example is (4 words) x (8 bits)
(Hereinafter, abbreviated as FIFO circuit), and includes a selector 4-2 and D flip-flops 4-3-4-7 (4 words) × (8 bits)
Register file 4-1 and write circuit 4-8
, A read circuit 4-9, inverters 4-10 and 4-11, a write pointer 4-12, a read pointer 4-13, and a full / empty detection circuit 4-14.
And synchronization circuits 4-15 and 4-16.

【0003】図4において、データの書き込みに対応し
て、外部からの書き込み信号WRは、書き込み回路4ー
8と、インバータ4ー10により反転されて書き込みポ
インタ4ー12および同期化回路4ー15に入力され
る。同様に、データ読み出しに対応して、外部からの読
み出し信号RDは、Dフリップフロップ47と、インバ
ータ411により反転されて読み出しポインタ4ー13
および同期化回路4ー16に入力される。書き込みポイ
ンタ4ー12は、データ書き込み時の書き込みアドレス
信号を出力する書き込みポインタであり、3ビットのカ
ウンタにより構成されて、W2 、W1 およびW0 を含む
3ビットの書き込みアドレス信号が出力される。これら
の3ビット書き込みアドレス信号W2 、W1 およびW0
は、フル/エンプティ検出回路4ー14に対して出力さ
れるとともに、この内の下位2ビットW1 およびW
0 は、書き込みアドレス信号として書き込み回路4ー8
に出力される。なお当該書き込みポインタ4ー12を構
成するカウンタは、書き込み信号WRのインバータ4ー
10による反転信号の立ち上がりにおいてカウントアッ
プされる。
In FIG. 4, in response to data writing, a write signal WR from outside is inverted by a write circuit 4-8 and an inverter 4-10 to be inverted by a write pointer 4-12 and a synchronization circuit 4-15. Is input to Similarly, in response to the data read, the external read signal RD is inverted by the D flip-flop 47 and the inverter 411 to read the read pointer 4-1.
And input to the synchronization circuit 4-16. The write pointer 4-12 is a write pointer for outputting a write address signal at the time of data writing, is composed of a 3-bit counter, and outputs a 3-bit write address signal including W 2 , W 1 and W 0. You. These 3-bit write address signals W 2 , W 1 and W 0
Are output to the full / empty detection circuit 4-14 and the lower two bits W 1 and W
0 is the write circuit 4-8 as a write address signal.
Is output to Note that the counter constituting the write pointer 4-12 is counted up at the rise of the inverted signal of the write signal WR by the inverter 4-10.

【0004】また、読み出しポインタ4ー13は、デー
タ読み出し時に読み出しアドレス信号を出力する読み出
しポインタであり、同様に、3ビットのカウンタにより
構成されて、R2 、R1 およびR0 を含む3ビットの読
み出しアドレス信号が出力される。これらの3ビットの
読み出しアドレス信号は、フル/エンプティ検出回路4
ー14に対して出力されるとともに、この内の下位2ビ
ットR1 およびR0 は読み出しアドレス信号として読み
出し回路4ー9に出力される。この読み出しポインタ4
ー13においても、当該読み出しポインタ4ー13を構
成するカウンタは、読み出し信号RDのインバータ4ー
11による反転信号の立ち上がりにおいてカウントアッ
プされる。これらの書き込みポインタ4ー12および読
み出しポインタ4ー13は、上述のように、共に同一構
成のカウンタとして構成されており、外部からのリセッ
ト信号RSTにより初期化される。
A read pointer 4-13 is a read pointer for outputting a read address signal at the time of reading data, and is similarly constituted by a 3-bit counter, and comprises a 3-bit counter including R 2 , R 1 and R 0. Is output. These 3-bit read address signals are supplied to the full / empty detection circuit 4
-14, and the lower two bits R 1 and R 0 are output to the read circuit 4-9 as a read address signal. This read pointer 4
Also at -13, the counter constituting the read pointer 4-13 is counted up at the rise of the inverted signal of the read signal RD by the inverter 4-11. As described above, the write pointer 4-12 and the read pointer 4-13 are both configured as counters having the same configuration, and are initialized by an external reset signal RST.

【0005】データ書き込みに対応する場合には、書き
込み回路4ー8においては、書き込みポインタ4ー12
より入力される書き込みアドレス信号W1 およびW0
デコードされ、外部から入力される書き込み信号WRと
の論理演算により、書き込み信号WRに同期した4ビッ
トの書き込み制御信号WR3 、WR2 、WR1 およびW
0 が生成されて出力されて、それぞれ対応するDフリ
ップフロップ4ー3〜4ー6のクロック入力端子に入力
される。Dフリップフロップ4ー6、4ー5、4ー4お
よび4ー3の各データ入力端子に対しては、外部からの
入力データD7〜D0 が入力されており、これらの入力
データの内の一つの入力データが、書き込み制御信号W
3 、WR2 、WR1 およびWR0 により選択されて、
Dフリップフロップ4ー6、4ー5、4ー4および4ー
3の内の、対応するDフリップフロップに書き込まれ
る。
In the case of data writing, the write pointer 4-12 is provided in the write circuit 4-8.
The input write address signals W 1 and W 0 are decoded, and a 4-bit write control signal WR 3 , WR 2 , WR 1 synchronized with the write signal WR is obtained by a logical operation with a write signal WR input from the outside. And W
R 0 is generated and output, and input to the clock input terminals of the corresponding D flip-flops 4-3-4-6. External input data D 7 to D 0 are input to the data input terminals of the D flip-flops 4-6, 4-5, 4-4 and 4-3. Is one of the write control signals W
Selected by R 3 , WR 2 , WR 1 and WR 0 ;
The data is written to the corresponding one of the D flip-flops 4-6, 4-5, 4-4, and 4-3.

【0006】一方、データの読み出しに対応する場合に
は、読み出し回路4ー9においては、読み出しポインタ
4ー13より入力される読み出しアドレス信号R1 およ
びR0 がデコードされ、4ビットの読み出し制御信号R
3 、RD2 、RD1 およびRD0 が生成されてセレク
タ4ー2に出力され、セレクタ4ー2においては、当該
読み出し制御信号RD3 、RD2 、RD1 およびRD0
を介して、Dフリップフロップ4ー6、4ー5、4ー4
および4ー3より入力されるデータが適宜選択されてD
フリップフロップ4ー7に入力され、外部からの読み出
し信号RDを介して当該Dフリップフロップ4ー7に書
き込まれて、出力データQ7 〜Q0 として外部に出力さ
れる。
On the other hand, in the case of reading data, in the read circuit 4-9, the read address signals R 1 and R 0 inputted from the read pointer 4-13 are decoded, and the read control signal of 4 bits is read. R
D 3 , RD 2 , RD 1 and RD 0 are generated and output to the selector 4-2, where the read control signals RD 3 , RD 2 , RD 1 and RD 0 are output.
Through the D flip-flops 4-6, 4-5, 4-4
And data input from 4-3 are selected as appropriate and D
Is input to the flip-flop 4-7, is written in the D flip-flop 4-7 via the read signal RD from the outside, is output as the output data Q 7 to Q 0.

【0007】また、フル/エンプティ検出回路4ー14
は、FIFO回路がフル(満杯)状態にあるかエンプテ
ィ(空)状態にあるのかを検出する回路であり、その具
体回路は図5に示される。図5に示されるように、当該
フル/エンプティ検出回路4ー14は、EXORゲート
5ー1〜5ー3と、ORゲート5ー4および5ー7と、
ANDゲート5ー6により構成される。図5において、
書き込みポインタ4ー12より入力される3ビット出力
2 、W1 およびW0 と、読み出しポインタ4ー13よ
り入力される3ビット出力R2 、R1 およびR0 が一致
した時には、ORゲート5ー7よりは、FIFO回路が
エンプティ状態であることを示すエンプティ信号EMP
TYが出力され、また書き込みポインタ4ー12の3ビ
ット出力の下位2ビットW1 およびW0 (書き込みアド
レス信号)と、読み出しポインタの3ビット出力の下位
2ビットR1 およびR0 (読み出しアドレス信号)とが
一致し、且つ、これらの書き込みアドレス信号の上位ビ
ットW2 と読み出しアドレス信号の上位ビットR2 が不
一致である場合には、ANDゲート5ー6より、FIF
O回路がフル状態であることを示すフル信号FULLが
出力される。これらのフル信号FULLおよびエンプテ
ィ信号EMPTYは、それぞれ対応する同期化回路4ー
15および4ー16に入力される。
A full / empty detection circuit 4-14
Is a circuit for detecting whether the FIFO circuit is in a full (full) state or an empty (empty) state, and a specific circuit thereof is shown in FIG. As shown in FIG. 5, the full / empty detection circuit 4-1 includes EXOR gates 5-1 to 5-3, OR gates 5-4 and 5-7,
It is composed of AND gates 5-6. In FIG.
When the 3-bit outputs W 2 , W 1 and W 0 input from the write pointer 4-12 match the 3-bit outputs R 2 , R 1 and R 0 input from the read pointer 4-13, the OR gate 5 -7, the empty signal EMP indicating that the FIFO circuit is in the empty state.
TY is output, and the lower 2 bits W 1 and W 0 (write address signal) of the 3-bit output of the write pointer 4-12 and the lower 2 bits R 1 and R 0 (read address signal) of the 3-bit output of the read pointer 4-12 ) And the upper bit W 2 of these write address signals and the upper bit R 2 of the read address signal do not match, the AND gate 5-6 outputs the FIFO
A full signal FULL indicating that the O circuit is in the full state is output. These full signal FULL and empty signal EMPTY are input to corresponding synchronization circuits 4-15 and 4-16, respectively.

【0008】同期化回路4ー15においては、フル/エ
ンプティ検出回路4ー14より出力されるフル信号FU
LLを入力して、書き込み信号WRの反転信号を同期化
クロックとして、当該書き込み信号WRに同期するWR
ITEーACK信号が生成され、次の書き込みを受け付
けるか否かを示す信号として外部に出力される。同様
に、同期回路4ー16においては、フル/エンプティ検
出回路4ー14より出力されるエンプティ信号EMPT
Yを入力して、読み出し信号RDの反転信号を同期化ク
ロックとして、当該読み出し信号RDに同期するWRI
TEーACK信号が生成され、次の読み出しを受け付け
るか否かを示す信号として外部に出力される。
In the synchronization circuit 4-15, the full signal FU output from the full / empty detection circuit 4-14 is output.
LL, and the WR synchronized with the write signal WR using the inverted signal of the write signal WR as a synchronization clock.
An ITE-ACK signal is generated and output to the outside as a signal indicating whether or not to accept the next write. Similarly, in the synchronization circuit 4-16, the empty signal EMPT output from the full / empty detection circuit 4-1 is output.
Y, and a WRI synchronized with the read signal RD using the inverted signal of the read signal RD as a synchronization clock.
A TE-ACK signal is generated and output to the outside as a signal indicating whether or not to accept the next read.

【0009】[0009]

【発明が解決しようとする課題】上述した従来の非同期
FIFO回路においては、当該FIFO回路のフル状態
またはエンプティ状態を検出するために、書き込みポイ
ンタより出力される書き込みアドレス信号および読み出
しポインタより出力される読み出しアドレス信号が、非
同期の状態においてフル/エンプティ検出回路に入力さ
れており、当該フル/エンプティ検出回路においては、
上記非同期の書き込みアドレス信号および読み出しアド
レス信号よりフル信号またはエンプティ信号が生成され
る過程においてスパイクが発生し、このスパイクによる
妨害作用により、FIFO回路がフル状態にあるか、ま
たはエンプティ状態になっているかの判定において誤認
識が生じるという問題があり、その対応策として、上記
の書き込み信号と読み出し信号とを同期させてフル状態
およびエンプティ状態の判別が行われている。このため
に、書き込み信号と読み出し信号とを同期させるための
冗長的な時間が余分に必要となり、データの書き込み/
読み出しの速度が劣化されるという欠点がある。
In the above-mentioned conventional asynchronous FIFO circuit, a write address signal output from a write pointer and an output signal from a read pointer are used to detect a full state or an empty state of the FIFO circuit. The read address signal is input to the full / empty detection circuit in an asynchronous state, and in the full / empty detection circuit,
A spike occurs in the process of generating a full signal or an empty signal from the asynchronous write address signal and the read address signal, and the interference by the spike causes the FIFO circuit to be in a full state or an empty state. There is a problem that erroneous recognition occurs in the determination of the above, and as a countermeasure, the full state and the empty state are determined by synchronizing the write signal and the read signal. For this reason, extra redundant time is required for synchronizing the write signal and the read signal, and data writing / reading is performed.
There is a disadvantage that the reading speed is deteriorated.

【0010】[0010]

【課題を解決するための手段】本発明の非同期FIFO
回路は、外部からの複数ビットのデータの入力を受け
て、所定の複数ビットの書き込み制御信号を介して格納
するとともに、格納された当該複数ビットのデータを所
定の複数ビットの読み出し制御信号を介して選択し、外
部からの読み出し信号を介して複数ビットの読み出しデ
ータとして出力するレジスタファイルと、外部からのリ
セット信号を介してリセットされ、外部からの書き込み
信号の反転信号を介して、当該書き込み信号に同期した
複数ビットの書き込みアドレス信号を生成して出力する
書き込みポインタと、外部からの前記書き込み信号およ
び前記書き込みポインタより出力される書き込みアドレ
ス信号を入力して、複数ビットの前記書き込み制御信号
を生成して出力する書き込み回路と、外部からのリセッ
ト信号を介してリセットされ、外部からの前記読み出し
信号の反転信号を介して、当該読み出し信号に同期した
複数ビットの読み出しアドレス信号を生成して出力する
読み出しポインタと、前記読み出しポインタより出力さ
れる読み出しアドレス信号を入力して、複数ビットの前
記読み出し制御信号を生成して出力する読み出し回路
と、外部からの前記書き込み信号の反転信号ならびに前
記読み出し信号の反転信号の入力を受けて、内部に含ま
れるシフトレジスタブロックのフル(FULL:満杯)
状態を示すフル信号またはエンプティ(EMPTY:
空)状態を示すエンプティ信号を生成して出力するフル
/エンプティ識別回路と、を備えて構成されることを特
徴としている。
SUMMARY OF THE INVENTION Asynchronous FIFO of the present invention
The circuit receives input of multiple bits of data from the outside, stores the multiple bits of data via a predetermined multiple bits of a write control signal, and stores the stored multiple bits of data through a predetermined multiple bits of a read control signal. Register file that is selected and output as read data of a plurality of bits through an external read signal, and the write signal that is reset through an external reset signal and is inverted through an inverted signal of the external write signal. A write pointer for generating and outputting a multi-bit write address signal synchronized with the above, and the write signal from the outside and a write address signal output from the write pointer are input to generate the write control signal of a plurality of bits. And a reset circuit via an external reset signal. A read pointer for generating and outputting a plurality of bits of a read address signal synchronized with the read signal via an inverted signal of the read signal from the outside, and a read address signal output from the read pointer. A read circuit that generates and outputs a plurality of bits of the read control signal; Full (FULL: full)
Full signal or empty (EMPTY:
And a full / empty identification circuit that generates and outputs an empty signal indicating an (empty) state.

【0011】なお、n段の非同期FIFO回路に対応し
て、前記フル/エンプティ識別回路は、第1の入力端に
前記書き込み信号の反転信号が入力される第1の2入力
NANDゲートと、外部からのリセット信号の反転信号
を出力する第1のインバータと、第1の入力端に前記第
1の2入力NANDゲートの出力端が接続され、第2の
入力端に前記第1のインバータの出力端が接続されて、
第3の入力端に第1のトークン消去信号が入力される第
1の3入力NANDゲートと、第1の入力端に前記書き
込み信号の反転信号が入力され、第2の入力端に前記第
1の2入力ANDゲートの出力端が接続される第1の2
入力ANDゲートと、前記第1のインバータより出力さ
れるリセット反転信号によりリセットされるシフトレジ
スタブロックにより形成され、前記第1の2入力AND
ゲートより出力されるトークン信号および縦続接続され
る第2のユニットより出力される第2のトークン消去信
号を入力とし、前記第1のトークン消去信号および第1
のトーク信号を出力とする第1のユニットと、前記第1
のトーク信号を反転して前記フル信号として出力する第
2のインバータと、前記リセット反転信号によりリセッ
トされるシフトレジスタブロックにより形成され、第i
(i=1,2,3,……,nー1)のユニットより出力
される第i(i=1,2,3,……,nー2)のトーク
ン信号および第(i+2)のユニットより出力される第
(i+2)のトークン消去信号を入力とし、第(i+
1)のトークン信号および第(i+1)のトークン消去
信号を出力とする第(i+1)のユニットと、前記リセ
ット反転信号によりリセットされるシフトレジスタブロ
ックにより形成され、第(nー1)のユニットより出力
される第(nー1)のトークン信号および前記読み出し
信号の反転信号を介して生成されるトークン消去信号を
入力とし、第nのトークン信号およひ第nのトークン消
去信号を出力とする第nのユニットと、前記第nのトー
クン消去信号を反転して前記エンプティ信号として出力
する第3のインバータと、第1の入力端に前記第nのト
ークン消去信号が入力され、第2の入力端に前記リセッ
ト反転信号が入力される第2の3入力NANDゲート
と、第1の入力端に前記第2の3入力NANDゲートの
出力端が接続され、第2の入力端に前記読み出し信号の
反転信号が入力される第2の2入力NANDゲートと、
第1の入力端に前記第2の2入力NANDゲートの出力
端が接続され、第2の入力端に前記読み出し信号の反転
信号が入力されて、出力端より、前記第nのユニットに
対して前記トークン消去信号を出力する第3の2入力N
ANDゲートと、を備えて構成してもよい。
In response to the n-stage asynchronous FIFO circuit, the full / empty discriminating circuit includes a first two-input NAND gate to which an inverted signal of the write signal is input at a first input terminal, and an external A first inverter for outputting an inverted signal of the reset signal from the first inverter, an output terminal of the first two-input NAND gate connected to a first input terminal, and an output terminal of the first inverter connected to a second input terminal. Ends are connected,
A first three-input NAND gate to which a first token erase signal is input to a third input terminal; an inverted signal of the write signal input to a first input terminal; To the output terminal of the two-input AND gate of
An input AND gate and a shift register block reset by a reset inversion signal output from the first inverter;
A token signal output from a gate and a second token erase signal output from a second unit connected in cascade are input to the first token erase signal and the first token erase signal.
A first unit that outputs a talk signal of
A second inverter that inverts the talk signal of the second and outputs the full signal, and a shift register block that is reset by the reset inversion signal.
The (i = 1, 2, 3,..., N-2) th token signal output from the (i = 1, 2, 3,..., N-1) unit and the (i + 2) th unit The (i + 2) th token erasure signal output from the
The (i + 1) -th unit that outputs the token signal of (1) and the (i + 1) -th token erasing signal, and a shift register block that is reset by the reset inversion signal. The (n-1) th token signal output and the token erasure signal generated via the inverted signal of the read signal are input, and the nth token signal and the nth token erasure signal are output. An n-th unit, a third inverter that inverts the n-th token erasure signal and outputs the same as the empty signal, a first input terminal to which the n-th token erasure signal is input, and a second input A second three-input NAND gate to which the reset inversion signal is input at one end; and an output terminal of the second three-input NAND gate to the first input terminal; A second two-input NAND gate an inverted signal of the read signal to the second input terminal is input,
An output terminal of the second two-input NAND gate is connected to a first input terminal, an inverted signal of the read signal is input to a second input terminal, and the output terminal is connected to the n-th unit. A third two-input N for outputting the token erase signal
And an AND gate.

【0012】また、前記第1のユニットは、第1の入力
端に前記トークン信号が入力される第4の2入力NAN
Dゲートと、第1の入力端に前記第4の2入力NAND
ゲートの出力端が接続され、出力端より前記第1のトー
クン出力信号が出力される第5の2入力NANDゲート
と、第1の入力端に前記第5の2入力NANDゲートの
出力端が接続され、第2の入力端に前記リセット反転信
号が入力されて、第3の入力端に前記第2のトークン消
去信号が入力される第3の3入力NANDゲートと、入
力端に前記第3の3入力NANDゲートの出力端が接続
される第4のインバータと、入力端に前記第4のインバ
ータの出力端が接続される第5のインバータと、第1の
入力端に前記第2のトークン消去信号が入力され、第2
の入力端に前記第5のインバータの出力端が接続され
て、第3の入力端に前記トークン信号が入力され、出力
端が前記第4の2入力NANDゲートの第2の入力端に
接続される第4の3入力ANDゲートと、入力端に前記
第4の3入力ANDゲートの出力端が接続される第6の
インバータと、第1の入力端に前記トークン信号が入力
される第6の2入力NANDゲートと、第1の入力端に
前記第6の2入力NANDゲートの出力端が接続され、
第2の入力端に前記第6のインバータの出力端が接続さ
れて、出力端に前記第6の2入力NANDゲートの第2
の入力端が接続される第7の2入力NANDゲートと、
第1の入力端に前記第7の2入力NANDゲートの出力
端が接続され、第2の入力端に前記第6のインバータの
出力端が接続されて、出力端より前記第1のトークン消
去信号が出力される第8の2入力NANDゲートと、を
備えて構成するとともに、前記第2のユニット乃至第n
のユニットを含む(n−1)個の各ユニットを、それぞ
れ上記の第1のユニットと同一回路構成により形成する
ことを特徴としている。
The first unit may include a fourth two-input NAN to which the token signal is input at a first input terminal.
A D gate, and a fourth input NAND gate at a first input terminal.
A fifth two-input NAND gate to which an output terminal of the gate is connected and the first token output signal is output from the output terminal, and an output terminal of the fifth two-input NAND gate connected to the first input terminal A third three-input NAND gate having the second input terminal receiving the reset inversion signal, the third input terminal receiving the second token erase signal, and the third input terminal having the third input terminal. A fourth inverter to which the output terminal of the three-input NAND gate is connected, a fifth inverter to which the output terminal of the fourth inverter is connected to the input terminal, and the second token erasure to the first input terminal The signal is input and the second
Is connected to the output terminal of the fifth inverter, the third input terminal receives the token signal, and the output terminal is connected to the second input terminal of the fourth two-input NAND gate. A fourth three-input AND gate, an input terminal connected to the output terminal of the fourth three-input AND gate, and a sixth input terminal to which the token signal is input. A two-input NAND gate, and an output terminal of the sixth two-input NAND gate connected to the first input terminal;
An output terminal of the sixth inverter is connected to a second input terminal and a second input terminal of the sixth two-input NAND gate is connected to an output terminal.
A seven-input NAND gate to which the input terminal of
An output terminal of the seventh two-input NAND gate is connected to a first input terminal, and an output terminal of the sixth inverter is connected to a second input terminal. And an eighth two-input NAND gate for outputting the second unit to the n-th NAND gate.
(N-1) units including the above-mentioned unit are formed by the same circuit configuration as the first unit.

【0013】[0013]

【発明の実施の形態】次に、本発明について図面を参照
して説明する。図1は本発明の1実施形態を示すブロッ
ク図である。図1に示されるように、本実施形態は、
(4ワード)×(8ビット)の4段のFIFO回路の実
施形態であり、セレクタ1ー2およびDフリップフロッ
プ1ー3〜1ー7を含む(4ワード)×(8ビット)の
レジスターファイル1ー1と、書き込み回路1ー8と、
読み出し回路1ー9と、インバータ1ー10および1ー
11と、書き込みポインタ1ー12と、読み出しポイン
タ1ー13と、NANDゲート1ー14、1ー16、1
ー23〜1ー25と、インバータ1ー17、1ー18、
1ー26と、ANDゲート1ー25と、4段のFIFO
回路に対応して、それぞれシフトレジスタとして形成さ
れ、1ビットのトークンを保持する4個のユニット1ー
19〜1ー22とを備えて構成される。なお、ユニット
の数は、非同期FIFO回路の段数に等しい個数に設定
される。図2は、上記のシフトレジスタブロックを形成
するユニット1ー19の内部構成を示す回路図であり、
NANDゲート2−1〜2−3および2−8〜2−10
と、インバータ2−4、2−5および2−7と、NAD
ゲート2−6とを備えて構成される。他のユニット1ー
20〜1ー22の内部構成についても当該回路図と同一
である。また、図3(a)、(b)、(c)、(d)、
(e)、(f)、(g)、(h)、(i)、(j)、
(k)、(l)、(m)、(n)および(o)は、当該
実施形態における動作タイミング図である。 以下、図
1、図2および図3を参照して、本実施形態の動作につ
いて説明する。
Next, the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing one embodiment of the present invention. As shown in FIG.
This is an embodiment of a (4 words) × (8 bits) four-stage FIFO circuit, and includes a (4 words) × (8 bits) register file including a selector 1-2 and D flip-flops 1-3 to 1-7. 1-1, a writing circuit 1-8,
A read circuit 1-9, inverters 1-10 and 1-11, a write pointer 1-12, a read pointer 1-13, NAND gates 1-14, 1-16, 1
-23 to 1-25, inverters 1-17, 1-18,
1-26, AND gate 1-25, 4-stage FIFO
In correspondence with the circuit, each unit is formed as a shift register and includes four units 1-19 to 1-22 each holding a 1-bit token. The number of units is set to be equal to the number of stages of the asynchronous FIFO circuit. FIG. 2 is a circuit diagram showing an internal configuration of the unit 1-19 forming the above-described shift register block.
NAND gates 2-1 to 2-3 and 2-8 to 2-10
, Inverters 2-4, 2-5 and 2-7, and NAD
And a gate 2-6. The internal configuration of the other units 1-20 to 1-22 is also the same as the circuit diagram. 3 (a), (b), (c), (d),
(E), (f), (g), (h), (i), (j),
(K), (l), (m), (n) and (o) are operation timing diagrams in the present embodiment. Hereinafter, the operation of this embodiment will be described with reference to FIGS. 1, 2, and 3.

【0014】図1において、データの書き込みに対応し
て、外部からの書き込み信号WRは、書き込み回路1ー
8と、インバータ1ー10により反転されて書き込みポ
インタ1ー12、NANDゲート1ー14およびAND
ゲート1ー15に入力される。同様に、データ読み出し
に対応して、外部からの読み出し信号RDは、Dフリッ
プフロップ1ー7と、インバータ1ー11により反転さ
れて読み出しポインタ1ー13、NANDゲート1ー2
4およびNANDゲート25に入力される。
In FIG. 1, in response to data writing, an external write signal WR is inverted by a write circuit 1-8 and an inverter 1-10, and is inverted by a write pointer 1-12, a NAND gate 1-14, AND
Input to gate 1-15. Similarly, in response to data reading, an external read signal RD is inverted by a D flip-flop 1-7 and an inverter 1-11, and is read by a read pointer 1-13 and a NAND gate 1-2.
4 and the NAND gate 25.

【0015】書き込みポインタ1ー12は、データ書き
込み時の書き込みアドレス信号を出力する書き込みポイ
ンタであり、3ビットのカウンタにより構成されてお
り、外部からのリセット信号RSTにより初期化され
る。データの書き込み時においては、外部から入力され
る書き込み信号WRのインバータ1−10による反転書
き込み信号がクロック入力端子に入力されて、当該反転
書き込み信号の立ち上がりにおいてカウントアップさ
れ、3ビット出力の内の下位2ビットW1 およびW0
書き込みアドレス信号として出力されて、書き込み回路
1−8に入力される。書き込み回路1−8においては、
書き込み信号WRに同期して書き込みポインタ1−12
から出力される書き込みアドレス信号の入力を受けて、
当該書き込みアドレス信号に対応する書き込み制御信号
WR0 、WR1 、WR2 およびWR3 が出力され、対応
するDフリップフロップ1−3、1−4、1−5および
1−6のクロック入力端子に入力される。これらのDフ
リップフロップ1−3、1−4、1−5および1−6の
データ入力端子に入力されるデータD7 〜D0 は、上記
の書き込み制御信号WR0 、WR1 、WR2 およびWR
3 を介して、これらのDフリップフロップに書き込まれ
る。
The write pointer 1-12 is a write pointer for outputting a write address signal at the time of data writing, is constituted by a 3-bit counter, and is initialized by an external reset signal RST. At the time of writing data, an inverted write signal of the externally input write signal WR by the inverter 1-10 is input to the clock input terminal, and is counted up at the rising edge of the inverted write signal. The lower two bits W 1 and W 0 are output as write address signals and input to the write circuit 1-8. In the writing circuit 1-8,
Write pointer 1-12 in synchronization with write signal WR
Receiving the input of the write address signal output from
Write control signals WR 0 , WR 1 , WR 2 and WR 3 corresponding to the write address signal are output, and are applied to clock input terminals of corresponding D flip-flops 1-3, 1-4, 1-5 and 1-6. Is entered. The data D 7 to D 0 input to the data input terminals of these D flip-flops 1-3, 1-4, 1-5 and 1-6 correspond to the above-mentioned write control signals WR 0 , WR 1 , WR 2 and WR
3 are written to these D flip-flops.

【0016】また、読み出しポインタ1ー13は、デー
タ読み出し時の読み出しアドレス信号を出力する読み出
しポインタであり、書き込みポインタ1ー12と同様
に、3ビットのカウンタにより構成されており、外部か
らのリセット信号RSTにより初期化される。データの
読み出し時においては、外部から入力される読み出し信
号RDのインバータ1−11による反転読み出し信号が
クロック入力端子に入力されて、当該反転読み出し信号
の立ち上がりにおいてカウントアップされ、3ビット出
力の内の下位2ビットR1 およびR0 が読み出しアドレ
ス信号として出力されて、読み出し回路1−9に入力さ
れる。読み出し回路1−9においては、読み出し信号R
Dに同期して読み出しポインタ1−13から出力される
読み出しアドレス信号の入力を受けて、当該読み出しア
ドレス信号に対応する読み出しデータ選択信号RD3
RD2 、RD1 およびRD0 が出力され、セレクタ1−
2に入力される。
The read pointer 1-13 is a read pointer for outputting a read address signal at the time of data reading. Like the write pointer 1-12, the read pointer 1-13 is constituted by a 3-bit counter. Initialized by the signal RST. At the time of data reading, an inverted read signal of the read signal RD input from the outside by the inverter 1-11 is input to the clock input terminal, and is counted up at the rising edge of the inverted read signal. The lower two bits R 1 and R 0 are output as read address signals and input to the read circuit 1-9. In the read circuit 1-9, the read signal R
In response to the input of the read address signal output from the read pointer 1-13 in synchronization with D, the read data selection signal RD 3 corresponding to the read address signal,
RD 2 , RD 1 and RD 0 are output and the selector 1-
2 is input.

【0017】Dフリップフロップ1−7においては、前
記読み出し回路1−9より出力される読み出しデータ選
択信号RD3 、RD2 、RD1 およびRD0 を介して、
セレクタ1−2において選択されるDフリップフロップ
1−3〜1−6のデータ出力が、外部からクロック入力
端子に入力される読み出し信号RDの立ち上がりにおい
て書き込まれ、当該Dフリップフロップ1−7のデータ
出力端子より、FIFO回路の読み出し信号Q7 〜Q0
として出力される。
In the D flip-flop 1-7, via the read data selection signals RD 3 , RD 2 , RD 1 and RD 0 output from the read circuit 1-9,
The data output of the D flip-flops 1-3 to 1-6 selected by the selector 1-2 is written at the rising edge of the read signal RD externally input to the clock input terminal, and the data of the D flip-flop 1-7 is written. From the output terminal, the read signals Q 7 to Q 0 of the FIFO circuit are output.
Is output as

【0018】次に、図1、図2および図3を参照して、
本実施形態における、トークンの生成動作、トークンの
バブル・スルー動作およびトークンの消去動作について
説明する。図1において、本実施形態のFIFO回路に
対する書き込み信号WRにより、レジスタファイル1−
1に対する書き込み入力データD7 〜D0 の書き込みが
完了する。その際には、インバータ1−9により書き込
み信号WRが反転されて、反転書き込み信号101が生
成されるため(図3(a)参照)、ANDゲート1−1
5からは、“H”レベルのトークン信号103(図3
(c)参照)が出力される。当該トークン信号103は
ユニット1−19を形成する初段のシフトレジスタに入
力される。図2において、当該シフトレジスタ内には、
当該シフトレジスタの初段においてトークン信号を保持
するために、NANDゲート2−2と2−3によりフリ
ップフロップ回路が形成されており、当該フリップフロ
ップ回路に対するデータ書き込み動作は、NANDゲー
ト2−1の出力105(図3(e)参照)により、AN
Dゲート2−6の動作条件が揃うまで禁止されている。
従って、NANDゲート2−2と2−3により形成され
るフリップフロップ回路に対する書き込み動作は、前段
からのトークン信号の伝播と、NANDゲート2−2と
2−3のフリップフロップ回路にトークン信号が存在し
ていないこと、および次段に対するトークン信号の伝播
が完了して、NANDゲート2−2と2−3のフリップ
フロップ回路に保持されるトークン信号を消去させてい
る過程ではないこと(ユニット1−20より入力される
トークン消去信号115が“H”レベル:図3(o)参
照)によって行われる。
Next, referring to FIGS. 1, 2 and 3,
A token generation operation, a token bubble-through operation, and a token erasure operation in the present embodiment will be described. In FIG. 1, a write signal WR to the FIFO circuit of the present embodiment causes a register file 1-.
The writing of the write input data D 7 to D 0 to 1 is completed. At this time, the write signal WR is inverted by the inverter 1-9 to generate the inverted write signal 101 (see FIG. 3A), so that the AND gate 1-1
5, the token signal 103 of "H" level (FIG. 3
(See (c)) is output. The token signal 103 is input to the first-stage shift register forming the unit 1-19. In FIG. 2, the shift register includes:
In order to hold the token signal at the first stage of the shift register, a flip-flop circuit is formed by the NAND gates 2-2 and 2-3, and the data write operation to the flip-flop circuit is performed by the output of the NAND gate 2-1. 105 (see FIG. 3E), the AN
It is prohibited until the operation conditions of the D gate 2-6 are met.
Therefore, the write operation to the flip-flop circuit formed by the NAND gates 2-2 and 2-3 involves the propagation of the token signal from the preceding stage and the presence of the token signal in the flip-flop circuits of the NAND gates 2-2 and 2-3. That the token signal has not been propagated to the next stage, and that the token signal held in the flip-flop circuits of the NAND gates 2-2 and 2-3 is not being erased (unit 1- The token erasing signal 115 input from the terminal 20 is at "H" level: see FIG.

【0019】NANDゲート2−2と2−3のフリップ
フロップ回路にトークン信号が存在していない場合に
は、NANDゲート2−2の出力106(図3(f)参
照)が“L”レベルで、NANDゲート2−3の出力
(図3(g)参照)が“H”レベルとなっており、ユニ
ット1−20より入力されるトークン消去信号115
(図3(o)参照)が“H”レベルで入力される際に、
ANDゲート1−15より出力されるトークン信号10
3(図3(c)参照)は、ANDゲート2−6およびN
ANDゲート2−1を介して2−2と2−3のフリップ
フロップ回路に伝播される。このトークン信号の伝播に
より、NANDゲート2−2の出力106(図3(f)
参照)が“L”レベルから“H”レベルに転移し、NA
NDゲート2−3の出力107(図3(g)参照)が
“H”レベルから“L”レベルに転移する。これによ
り、インバータ2−4および2−5を介して“L”レベ
ルの出力109(図3(i)参照)がANDゲート2−
6に入力されて、当該ANDゲート2−6の出力110
(図3(j)参照)は“H”レベルから“L”レベルに
転移し、次のトークン信号の伝播が禁止される状態とな
る。この動作過程により、NANDゲート1−15にお
いて生成されたトークン信号(図3(c)参照)は、ユ
ニット1−19を形成するシフトレジスタの初段に伝播
されるために、次の動作としては、前段のトークン信号
を消去させることが必要となる。この消去動作により、
ANDゲート2−6により、NANDゲート2−2と2
−3のフリップフロップ回路に対するトークン信号の伝
播が可能になるとともに、インバータ2−8の反転作用
を介してANDゲート2−6の出力110(図3(j)
参照)が反転されて“L”レベルから“H”レベルに転
移し、そして再度“L”レベルに戻ってトークン信号の
伝播完了に伴ない、ANDゲート2−6の出力110
(図3(j)参照)の立ち下がりエッジにおいて、前段
に対するトークン消去信号114(図3(n)参照)が
“H”レベルから“L”レベルに転移されて、NAND
ゲート2−10より、トークン消去信号114(図3
(n)参照)として出力される。この状態においては、
NANDゲート2−2と2−3のフリップフロップ回路
に保持されているトークン信号は消去され、ANDゲー
ト1−15の出力103(図3(c)参照)が“L”レ
ベルになるため、NANDゲート2−7と2−9により
形成されるフリップフロップ回路はリセットされた状態
となる。これにより、NANDゲート2−10より出力
されるトークン消去信号114(図3(n)参照)は
“L”レベルから“H”レベルに戻り、前段に対するト
ークン消去要求は解除されて、一連のトークン消去作業
が完了する。
When the token signal does not exist in the flip-flop circuits of the NAND gates 2-2 and 2-3, the output 106 of the NAND gate 2-2 (see FIG. 3 (f)) becomes "L" level. , NAND gate 2-3 (see FIG. 3 (g)) is at "H" level, and token erase signal 115 input from unit 1-20 is output.
(See FIG. 3 (o)) is input at the “H” level.
Token signal 10 output from AND gate 1-15
3 (see FIG. 3 (c)) are AND gates 2-6 and N
The signal is transmitted to the flip-flop circuits 2-2 and 2-3 via the AND gate 2-1. The propagation of the token signal causes the output 106 of the NAND gate 2-2 (FIG. 3 (f)).
) From “L” level to “H” level, and NA
The output 107 of the ND gate 2-3 (see FIG. 3 (g)) changes from "H" level to "L" level. As a result, the output 109 at "L" level (see FIG. 3 (i)) is supplied to the AND gate 2--2 via inverters 2-4 and 2-5.
6 and the output 110 of the AND gate 2-6.
(See FIG. 3 (j)) changes from the "H" level to the "L" level, and the propagation of the next token signal is inhibited. According to this operation process, the token signal (see FIG. 3C) generated in the NAND gate 1-15 is propagated to the first stage of the shift register forming the unit 1-19. It is necessary to erase the token signal in the preceding stage. With this erase operation,
NAND gates 2-2 and 2 are provided by AND gate 2-6.
-3 can be propagated to the flip-flop circuit, and the output 110 of the AND gate 2-6 (FIG. 3 (j))
) Is inverted to transition from “L” level to “H” level, and returns to “L” level again, and when the propagation of the token signal is completed, the output 110 of the AND gate 2-6 is completed.
At the falling edge of (see FIG. 3 (j)), the token erase signal 114 for the preceding stage (see FIG. 3 (n)) is changed from “H” level to “L” level, and the NAND
From the gate 2-10, the token erase signal 114 (FIG. 3)
(See (n)). In this state,
The token signal held in the flip-flop circuits of the NAND gates 2-2 and 2-3 is erased, and the output 103 (see FIG. 3C) of the AND gate 1-15 becomes "L" level. The flip-flop circuit formed by the gates 2-7 and 2-9 is in a reset state. As a result, the token erasure signal 114 (see FIG. 3 (n)) output from the NAND gate 2-10 returns from the "L" level to the "H" level, and the token erasure request for the preceding stage is cancelled. The erasing operation is completed.

【0020】このようにして、ユニット1−19、1−
20、1−21および22を形成する各シフトレジスタ
ブロックにおいては、次段に対するトークンの伝播動作
と、後段のトークン消去動作とを連動し繰返して行うこ
とにより、これらシフトレジスタの出力段に対するトー
クン信号の伝播が実施される。なお、ユニット1−21
の出力段においては、FIFO回路に対する読み出し信
号RDの後縁エッジにおいて読み出し動作が完了する
が、読み出し信号RDのインバータ1−11による反転
読み出し信号が、NANDゲート1−24および1−2
5に入力されているために、ユニット1−22のトーク
ン信号の消去を行うことが可能となり、このトークンの
消去により、当該ユニット1−22より出力されるトー
クン信号117のレベルが“H”レベルから“L”レベ
ルに転移し、これにより、NANDゲート1−25の出
力レベルが再度“H”レベルに戻り、上記のトークン信
号の消去要求が解除される。
Thus, the units 1-19, 1-
In each shift register block forming 20, 20, 21 and 22, the token transmission operation to the next stage and the token erase operation at the subsequent stage are repeatedly performed in conjunction with each other, so that the token signal to the output stage of these shift registers is obtained. Is propagated. Unit 1-21
In the output stage, the read operation is completed at the trailing edge of the read signal RD to the FIFO circuit, but the inverted read signal of the read signal RD by the inverter 1-11 is supplied to the NAND gates 1-24 and 1-2.
5, the token signal of the unit 1-22 can be erased, and the level of the token signal 117 output from the unit 1-22 becomes "H" level by the erasure of the token. To the "L" level, the output level of the NAND gate 1-25 returns to the "H" level again, and the above-described token signal erasing request is canceled.

【0021】次に、図1において、ユニット1−19の
NANDゲート2−2より出力されるトークン信号10
6が、インバータ1−17により反転して出力されるフ
ル信号FULLと、ユニット1−22のNANDゲート
2−2より出力されるトークン信号117が、インバー
タ1−26により反転して出力されるエンプティ信号E
MPTYについて敷衍して説明する。ここで、FIFO
回路のフル状態とは、シフトレジスタブロックを形成す
るユニット1−19内にトークンが存在している状態を
意味するものとし、FIFO回路のエンプティ状態と
は、シフトレジスタブロックを形成するユニット1−2
2内にトークンが存在していない状態を意味するものと
する。
Next, referring to FIG. 1, the token signal 10 output from the NAND gate 2-2 of the unit 1-19 will be described.
6, an empty signal FULL inverted by the inverter 1-17 and the token signal 117 output from the NAND gate 2-2 of the unit 1-22 are inverted by the inverter 1-26 and output. Signal E
MPTY will be described in detail. Where FIFO
The full state of the circuit means a state in which a token exists in the unit 1-19 forming the shift register block, and the empty state of the FIFO circuit means the state of the unit 1-2 forming the shift register block.
2 means that no token exists.

【0022】FIFO回路をフル状態にするためのトリ
ガー信号は、常にFIFO回路に対する書き込み信号W
Rそのものであり、当該書き込み信号WRによってのみ
FIFO回路はフル状態となる。実際には、FIFO回
路に対する読み出し信号RDは、常にフル信号FULL
をクリアする方向に対してのみ作用しているために、同
期化回路を介することなくフル信号FULLを読み出す
ことにより、高速の書き込みを行うことが可能となる。
トークン信号の伝播は、各ゲート回路の遅延作用を介し
て処理されているために、当該ゲート回路の遅延分が、
連続書き込みを行う際のサイクル時間に影響してくるこ
とになるが、書き込み動作が完了してから、ユニット1
−19の初段に対するトークン信号の伝播が終了して、
次段に移行するまでに通過するゲート回路の段数は、本
実施形態のFIFO回路の場合には20段程度となるた
めに、動作の所要時間としては10ns程度で終了し、
従って、50MHz(20ns)での連続的な書き込み
動作が可能となる。
The trigger signal for bringing the FIFO circuit to the full state is always a write signal W to the FIFO circuit.
R itself, and the FIFO circuit is brought into a full state only by the write signal WR. Actually, the read signal RD to the FIFO circuit is always the full signal FULL
Operates only in the direction of clearing the full signal FULL, so that high-speed writing can be performed by reading the full signal FULL without going through a synchronization circuit.
Since the propagation of the token signal is processed through the delay action of each gate circuit, the delay of the gate circuit is
Although this will affect the cycle time when performing continuous writing, after the writing operation is completed, the unit 1
After the transmission of the token signal to the first stage of −19 is completed,
Since the number of stages of the gate circuit that passes through to the next stage is about 20 in the case of the FIFO circuit of the present embodiment, the operation time is completed in about 10 ns,
Therefore, a continuous write operation at 50 MHz (20 ns) becomes possible.

【0023】また、FIFO回路をエンプティ状態にす
るためのトリガー信号は、常にFIFO回路に対する読
み出し信号RDそのものであり、当該読み出し信号RD
によってのみFIFO回路はエンプティ状態となる。実
際には、FIFO回路に対する読み出し信号RDは、常
にエンプティ信号EMPTYをクリアする方向に対して
のみ作用しているために、同期化回路を介することなく
エンプティ信号EMPTYを読み出すことにより、高速
の読み出しを行うことが可能となる。またトークン信号
の伝播は、各ゲート回路の遅延作用を介して制御されて
いるために、一旦読み出しが行われてから、次のトーク
ン信号が伝播されるまでの時間が、連続的な読み出し動
作時のサイクル時間に影響してくることになるが、読み
出し動作が完了した後に、トークンが伝播する際に通過
するゲート回路の段数は、本実施形態のFIFO回路の
場合には20段程度となるために、10ns程度の経過
時間の後に、次の読み出し動作を行うことが可能とな
る。従って、50MHz(20ns)での連続的な読み
出し動作が可能となる。
The trigger signal for bringing the FIFO circuit into the empty state is always the read signal RD for the FIFO circuit, and the read signal RD
The FIFO circuit is in an empty state. Actually, since the read signal RD to the FIFO circuit always acts only in the direction to clear the empty signal EMPTY, high-speed reading can be performed by reading the empty signal EMPTY without passing through the synchronization circuit. It is possible to do. Also, since the propagation of the token signal is controlled through the delay action of each gate circuit, the time from once reading to the propagation of the next token signal is the time of continuous reading operation. However, the number of stages of the gate circuit that the token passes when the token is propagated after the read operation is completed is approximately 20 in the case of the FIFO circuit of the present embodiment. After the elapsed time of about 10 ns, the next read operation can be performed. Therefore, a continuous read operation at 50 MHz (20 ns) becomes possible.

【0024】[0024]

【発明の効果】以上説明したように、本発明は、非同期
FIFO回路に適用されて、当該非同期FIFO回路の
フル状態およびエンプティ状態を生成するために、書き
込みポインタと読み出しポインタのそれぞれのアドレス
信号に対するデコード処理を行うフル/エンプティ検出
回路を除去し、当該デコード処理により発生するスパイ
クを排除することにより、フル状態とエンプティ状態と
の相互間における誤認識を防止することがでいきるとい
う効果がある。
As described above, the present invention is applied to an asynchronous FIFO circuit, and generates a full state and an empty state of the asynchronous FIFO circuit. By eliminating the full / empty detection circuit for performing the decoding process and eliminating spikes generated by the decoding process, there is an effect that erroneous recognition between the full state and the empty state can be prevented.

【0025】また、上記のフルの状態およびエンプティ
状態を生成するための回路手段として同期回路の導入を
除去しているために、当該同期回路による同期化動作に
起因する時間遅延を排除することが可能となり、非同期
FIFO回路の処理速度を改善することができるという
効果がある。
Further, since the introduction of the synchronization circuit as the circuit means for generating the full state and the empty state is eliminated, it is possible to eliminate the time delay caused by the synchronization operation by the synchronization circuit. This makes it possible to improve the processing speed of the asynchronous FIFO circuit.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の1実施形態を示すブロック図である。FIG. 1 is a block diagram showing one embodiment of the present invention.

【図2】本実施形態におけるユニットの内部構成を示す
回路図である。
FIG. 2 is a circuit diagram showing an internal configuration of a unit according to the embodiment.

【図3】本実施形態における動作タイミング図である。FIG. 3 is an operation timing chart in the present embodiment.

【図4】従来例を示すブロック図である。FIG. 4 is a block diagram showing a conventional example.

【図5】従来例におけるフル/エンプティ検出回路の内
部構成を示す回路図である。
FIG. 5 is a circuit diagram showing an internal configuration of a full / empty detection circuit in a conventional example.

【符号の説明】[Explanation of symbols]

1ー1、4ー1 レジスタファイル 1ー2、4ー2 セレクタ 1ー3〜1ー7、4ー3〜4ー7 Dフリップフロッ
プ 1ー8、4ー8 書き込み回路 1ー9、4ー9 読み出し回路 1ー10、1ー11、1ー17、1ー18、1ー26、
2ー4、2ー5、2ー7、4ー10、4ー11、5ー5
インバータ 1ー12、4ー12 書き込みポインタ 1ー13、4ー13 読み出しポインタ 1ー14、1ー16、1ー23〜1ー25、2ー1〜2
ー3、2ー8〜2ー10 NANDゲート 1ー15、2ー6、5ー6 ANDゲート 1ー19〜1ー22 ユニット 4ー14 フル/エンプティ検出回路 4ー15、4ー16 同期化回路 5ー1〜5ー3 EXORゲート 5ー4、5ー7 ORゲート
1-1, 4-1 Register file 1-2, 4-2 Selector 1-3-1-7, 4-3-4-7 D flip-flop 1-8, 4-8 Write circuit 1-9, 4- 9 Readout circuit 1-10, 1-11, 1-17, 1-18, 1-26,
2-4, 2-5, 2-7, 4-10, 4-11, 5-5
Inverter 1-12, 4-12 Write pointer 1-13, 4-13 Read pointer 1-14, 1-16, 1-23-1-25, 2-1-2
-3, 2-8 to 2-10 NAND gate 1-15, 2-6, 5-6 AND gate 1-19 to 1-22 unit 4-14 Full / empty detection circuit 4-15, 4-16 Synchronization Circuit 5-1 to 5-3 EXOR gate 5-4, 5-7 OR gate

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 外部からの複数ビットのデータの入力を
受けて、所定の複数ビットの書き込み制御信号を介して
格納するとともに、格納された当該複数ビットのデータ
を所定の複数ビットの読み出し制御信号を介して選択
し、外部からの読み出し信号を介して複数ビットの読み
出しデータとして出力するレジスタファイルと、 外部からのリセット信号を介してリセットされ、外部か
らの書き込み信号の反転信号を介して、当該書き込み信
号に同期した複数ビットの書き込みアドレス信号を生成
して出力する書き込みポインタと、 外部からの前記書き込み信号および前記書き込みポイン
タより出力される書き込みアドレス信号を入力して、複
数ビットの前記書き込み制御信号を生成して出力する書
き込み回路と、 外部からのリセット信号を介してリセットされ、外部か
らの前記読み出し信号の反転信号を介して、当該読み出
し信号に同期した複数ビットの読み出しアドレス信号を
生成して出力する読み出しポインタと、 前記読み出しポインタより出力される読み出しアドレス
信号を入力して、複数ビットの前記読み出し制御信号を
生成して出力する読み出し回路と、 外部からの前記書き込み信号の反転信号ならびに前記読
み出し信号の反転信号の入力を受けて、内部に含まれる
シフトレジスタブロックのフル(FULL:満杯)状態
を示すフル信号またはエンプティ(EMPTY:空)状
態を示すエンプティ信号を生成して出力するフル/エン
プティ識別回路と、 を備えて構成されることを特徴とする非同期FIFO回
路。
1. A multi-bit read control signal receiving a plurality of bits of data from an external device and storing the multi-bit data via a predetermined multi-bit write control signal. And a register file that is selected via the external read signal and output as a plurality of bits of read data via an external read signal. The register file is reset via an external reset signal. A write pointer for generating and outputting a multi-bit write address signal synchronized with a write signal; and an externally applied write signal and a write address signal output from the write pointer, and a multi-bit write control signal. And a write circuit that generates and outputs A read pointer that generates and outputs a plurality of bits of a read address signal synchronized with the read signal via an inverted signal of the read signal from outside, and a read address signal output from the read pointer. A read circuit for generating and outputting a plurality of bits of the read control signal; and a shift register block included therein upon receiving an input of an inverted signal of the write signal and an inverted signal of the read signal from outside. A full / empty identification circuit that generates and outputs a full signal indicating a full (FULL: full) state or an empty signal indicating an empty (EMPTY: empty) state of the asynchronous FIFO. circuit.
【請求項2】 n段の非同期FIFO回路に対応して、
前記フル/エンプティ識別回路が、第1の入力端に前記
書き込み信号の反転信号が入力される第1の2入力NA
NDゲートと、 外部からのリセット信号の反転信号を出力する第1のイ
ンバータと、 第1の入力端に前記第1の2入力NANDゲートの出力
端が接続され、第2の入力端に前記第1のインバータの
出力端が接続されて、第3の入力端に第1のトークン消
去信号が入力される第1の3入力NANDゲートと、 第1の入力端に前記書き込み信号の反転信号が入力さ
れ、第2の入力端に前記第1の2入力ANDゲートの出
力端が接続される第1の2入力ANDゲートと、 前記第1のインバータより出力されるリセット反転信号
によりリセットされるシフトレジスタブロックにより形
成され、前記第1の2入力ANDゲートより出力される
トークン信号および縦続接続される第2のユニットより
出力される第2のトークン消去信号を入力とし、前記第
1のトークン消去信号および第1のトーク信号を出力と
する第1のユニットと、 前記第1のトーク信号を反転して前記フル信号として出
力する第2のインバータと、 前記リセット反転信号によりリセットされるシフトレジ
スタブロックにより形成され、第i(i=1,2,3,
……,nー1)のユニットより出力される第i(i=
1,2,3,……,nー2)のトークン信号および第
(i+2)のユニットより出力される第(i+2)のト
ークン消去信号を入力とし、第(i+1)のトークン信
号および第(i+1)のトークン消去信号を出力とする
第(i+1)のユニットと、 前記リセット反転信号によりリセットされるシフトレジ
スタブロックにより形成され、第(nー1)のユニット
より出力される第(nー1)のトークン信号および前記
読み出し信号の反転信号を介して生成されるトークン消
去信号を入力とし、第nのトークン信号およひ第nのト
ークン消去信号を出力とする第nのユニットと、 前記第nのトークン消去信号を反転して前記エンプティ
信号として出力する第3のインバータと、 第1の入力端に前記第nのトークン消去信号が入力さ
れ、第2の入力端に前記リセット反転信号が入力される
第2の3入力NANDゲートと、 第1の入力端に前記第2の3入力NANDゲートの出力
端が接続され、第2の入力端に前記読み出し信号の反転
信号が入力される第2の2入力NANDゲートと、 第1の入力端に前記第2の2入力NANDゲートの出力
端が接続され、第2の入力端に前記読み出し信号の反転
信号が入力されて、出力端より、前記第nのユニットに
対して前記トークン消去信号を出力する第3の2入力N
ANDゲートと、 を備えて構成されることを特徴とする請求項1記載の非
同期FIFO回路。
2. In response to an n-stage asynchronous FIFO circuit,
A first two-input NA having a first input terminal to which an inverted signal of the write signal is input;
An ND gate, a first inverter that outputs an inverted signal of an external reset signal, an output terminal of the first two-input NAND gate connected to a first input terminal, and a second input terminal connected to the second input terminal. A first three-input NAND gate to which an output terminal of the first inverter is connected and a third input terminal to which a first token erase signal is input; and an input signal to which an inverted signal of the write signal is input. A first two-input AND gate having an output terminal of the first two-input AND gate connected to a second input terminal; and a shift register reset by a reset inversion signal output from the first inverter. A token signal output from the first two-input AND gate and a second token erasure signal output from a cascade-connected second unit, which are formed by a block; A first unit that outputs a first token erase signal and a first talk signal; a second inverter that inverts the first talk signal and outputs the full signal; and a reset by the reset inverted signal And the i-th (i = 1, 2, 3, 3)
.., N−1) output from the unit (i =
, N-2) and the (i + 2) th token erasure signal output from the (i + 2) th unit are input, and the (i + 1) th token signal and the (i + 1) th token signal are input. And (n-1) th unit formed by a (i + 1) th unit that outputs a token erase signal of (i) and a shift register block reset by the reset inversion signal and output from the (n−1) th unit. An n-th unit that receives as input a token signal generated through an inverted signal of the read signal and an n-th token signal and an n-th token erase signal; A third inverter for inverting the token erasure signal of the above and outputting the same as the empty signal, and the n-th token erasure signal is input to a first input terminal, A second three-input NAND gate to which the reset inversion signal is input at the input terminal; an output terminal of the second three-input NAND gate connected to the first input terminal; and a read signal at the second input terminal A second two-input NAND gate to which the inverted signal of the above is input, an output terminal of the second two-input NAND gate is connected to a first input terminal, and an inverted signal of the read signal is connected to a second input terminal. A third two-input N which is input and outputs the token erasure signal from the output terminal to the n-th unit.
2. The asynchronous FIFO circuit according to claim 1, further comprising: an AND gate.
【請求項3】 前記第1のユニットが、第1の入力端に
前記トークン信号が入力される第4の2入力NANDゲ
ートと、 第1の入力端に前記第4の2入力NANDゲートの出力
端が接続され、出力端より前記第1のトークン信号が出
力される第5の2入力NANDゲートと、 第1の入力端に前記第5の2入力NANDゲートの出力
端が接続され、第2の入力端に前記リセット反転信号が
入力されて、第3の入力端に前記第2のトークン消去信
号が入力される第3の3入力NANDゲートと、 入力端に前記第3の3入力NANDゲートの出力端が接
続される第4のインバータと、 入力端に前記第4のインバータの出力端が接続される第
5のインバータと、 第1の入力端に前記第2のトークン消去信号が入力さ
れ、第2の入力端に前記第5のインバータの出力端が接
続されて、第3の入力端に前記トークン信号が入力さ
れ、出力端が前記第4の2入力NANDゲートの第2の
入力端に接続される第4の3入力ANDゲートと、 入力端に前記第4の3入力ANDゲートの出力端が接続
される第6のインバータと、 第1の入力端に前記トークン信号が入力される第6の2
入力NANDゲートと、 第1の入力端に前記第6の2入力NANDゲートの出力
端が接続され、第2の入力端に前記第6のインバータの
出力端が接続されて、出力端に前記第6の2入力NAN
Dゲートの第2の入力端が接続される第7の2入力NA
NDゲートと、 第1の入力端に前記第7の2入力NANDゲートの出力
端が接続され、第2の入力端に前記第6のインバータの
出力端が接続されて、出力端より前記第1のトークン消
去信号が出力される第8の2入力NANDゲートと、 を備えて構成されるとともに、前記第2のユニット乃至
第nのユニットを含む(n−1)個の各ユニットが、そ
れぞれ上記の第1のユニットと同一回路構成により形成
されることを特徴とする請求項2記載の非同期FIFO
回路。
3. The first unit, wherein the fourth input NAND gate receives the token signal at a first input terminal, and the output of the fourth two input NAND gate at a first input terminal. A second input NAND gate having an output terminal connected to the first token signal and an output terminal of the fifth two-input NAND gate connected to the first input terminal. A third input NAND gate having the input terminal receiving the reset inversion signal and a third input terminal receiving the second token erase signal; and a third input NAND gate having an input terminal. A fourth inverter to which an output terminal of the fourth inverter is connected, a fifth inverter to which an output terminal of the fourth inverter is connected to an input terminal, and the second token erasing signal to be inputted to a first input terminal. And the fifth input terminal to a second input terminal. A fourth three-input AND gate having an output terminal connected to the third input terminal, the token signal being input to the third input terminal, and an output terminal connected to the second input terminal of the fourth two-input NAND gate; A sixth inverter having an input terminal connected to the output terminal of the fourth three-input AND gate, and a sixth input terminal having the first input terminal receiving the token signal.
An input NAND gate, a first input terminal connected to the output terminal of the sixth two-input NAND gate, a second input terminal connected to an output terminal of the sixth inverter, and an output terminal connected to the output terminal of the sixth inverter. 6 2-input NAN
Seventh two-input NA to which the second input terminal of the D gate is connected
An ND gate; a first input terminal connected to an output terminal of the seventh two-input NAND gate; a second input terminal connected to an output terminal of the sixth inverter; And an (n-1) -th unit including the second to n-th units, wherein each of the (n-1) units includes the second unit to the n-th unit. 3. The asynchronous FIFO according to claim 2, wherein the asynchronous FIFO is formed by the same circuit configuration as the first unit.
circuit.
JP9016604A 1997-01-30 1997-01-30 Asynchronous FIFO circuit Expired - Lifetime JP3013800B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9016604A JP3013800B2 (en) 1997-01-30 1997-01-30 Asynchronous FIFO circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9016604A JP3013800B2 (en) 1997-01-30 1997-01-30 Asynchronous FIFO circuit

Publications (2)

Publication Number Publication Date
JPH10214174A true JPH10214174A (en) 1998-08-11
JP3013800B2 JP3013800B2 (en) 2000-02-28

Family

ID=11920913

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9016604A Expired - Lifetime JP3013800B2 (en) 1997-01-30 1997-01-30 Asynchronous FIFO circuit

Country Status (1)

Country Link
JP (1) JP3013800B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6941434B2 (en) 2002-03-07 2005-09-06 Sharp Kabushiki Kaisha Self-synchronous FIFO memory device having high access efficiency, and system provided with interface for data transfer using the same
CN1293479C (en) * 2001-08-30 2007-01-03 华为技术有限公司 Asynchronous FIFO data caching method
CN100395680C (en) * 2005-05-26 2008-06-18 华为技术有限公司 Configuration method and device for asynchronous clock field parameter
CN100424663C (en) * 2004-02-10 2008-10-08 中国科学院计算技术研究所 Implementing asynchronous first-in first-out data transmission by double-port direct access storage device

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6512640B1 (en) 2017-10-19 2019-05-15 Necプラットフォームズ株式会社 Asynchronous FIFO circuit

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1293479C (en) * 2001-08-30 2007-01-03 华为技术有限公司 Asynchronous FIFO data caching method
US6941434B2 (en) 2002-03-07 2005-09-06 Sharp Kabushiki Kaisha Self-synchronous FIFO memory device having high access efficiency, and system provided with interface for data transfer using the same
CN100424663C (en) * 2004-02-10 2008-10-08 中国科学院计算技术研究所 Implementing asynchronous first-in first-out data transmission by double-port direct access storage device
CN100395680C (en) * 2005-05-26 2008-06-18 华为技术有限公司 Configuration method and device for asynchronous clock field parameter

Also Published As

Publication number Publication date
JP3013800B2 (en) 2000-02-28

Similar Documents

Publication Publication Date Title
US4734850A (en) Data process system including plural storage means each capable of concurrent and intermediate reading and writing of a set of data signals
CA1233259A (en) High performance memory utilizing pipelining techniques
US5745498A (en) Rapid compare of two binary numbers
US4841436A (en) Tag Data processing apparatus for a data flow computer
US6522170B1 (en) Self-timed CMOS static logic circuit
JPS63276795A (en) Variable length shift register
US5398270A (en) Data coincidence detecting circuit
JP3013800B2 (en) Asynchronous FIFO circuit
US5021994A (en) Look-ahead flag generator
JP3437802B2 (en) Clock control circuit and error correction circuit using the same
Huemer et al. Timing domain crossing using Muller pipelines
US20020091980A1 (en) Single-pass methods for generating test patterns for commbinational circuits
JP3240067B2 (en) Sequential memory
US3815096A (en) Stacking store having overflow indication for the transmission of data in the chronological order of their appearance
US6175518B1 (en) Remote register hierarchy accessible using a serial data line
JP2004295819A (en) Data buffer device
CN110875068B (en) Command counter in pipeline for memory device
Compton et al. Self-timed pipeline with adder
US6097655A (en) Pull through FIFO memory device
JP2667702B2 (en) Pointer reset method
JPS58182185A (en) Semiconductor storage device
JPS6043592B2 (en) Large capacity static shift register
RU2042196C1 (en) Device for modeling digital circuits
SU1591074A1 (en) Buffer storage
JP2908117B2 (en) Vector arithmetic processing unit

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19991116