JP2550359B2 - Method and apparatus for simultaneously operating address increment and memory write - Google Patents

Method and apparatus for simultaneously operating address increment and memory write

Info

Publication number
JP2550359B2
JP2550359B2 JP62193638A JP19363887A JP2550359B2 JP 2550359 B2 JP2550359 B2 JP 2550359B2 JP 62193638 A JP62193638 A JP 62193638A JP 19363887 A JP19363887 A JP 19363887A JP 2550359 B2 JP2550359 B2 JP 2550359B2
Authority
JP
Japan
Prior art keywords
write
memory
read
address
transition
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
JP62193638A
Other languages
Japanese (ja)
Other versions
JPS63118834A (en
Inventor
ディ ウォード モリス
エル ウィリアムズ ケニス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Texas Instruments Inc
Original Assignee
Texas Instruments 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
Priority claimed from US06/892,228 external-priority patent/US4829475A/en
Application filed by Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of JPS63118834A publication Critical patent/JPS63118834A/en
Application granted granted Critical
Publication of JP2550359B2 publication Critical patent/JP2550359B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Communication Control (AREA)

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は一般にデジタル信号の非同期伝送用の先入れ
先出し(first−in−first−out(FIFO))メモリに関
し、特にFIFOメモリ内に含まれるようなメモリレジスタ
にアドレスする方法及び装置に関する。
Description: FIELD OF THE INVENTION The present invention relates generally to first-in-first-out (FIFO) memory for asynchronous transmission of digital signals, particularly as contained within a FIFO memory. A method and apparatus for addressing memory registers.

(従来の技術と問題点) 転送装置によってある速度で書き込まれたデータをス
トアし、宛先装置によって別の速度でそこから読み出す
ため、システムの構成部品間に中間バッファとしてメモ
リを用いることは周知の手法である。先入れ先出し(FI
FO)方式で動作するバッファ用ランダムアクセスメモリ
が開発されてきている。特に、1985年6月20日出願の審
査中の米国特許出願第746,920号は、非常に短い時間内
で書き読みできるFIFOメモリデバイスを開示している。
このFIFOメモリは、データを直接メモリロケーションに
書き込むための共通のデータ入力バスとデータを直接そ
こから読み出せる共通のデータ出力バスとを有する複数
のメモリワードロケーションを備える。書込アドレスリ
ングカウンタが、入力書込コマンドに応じて各メモリワ
ードロケーションを逐次アドレスする。同じく読取アド
レスリングカウンタが、入力読取コマンドに応じてメモ
リワードロケーションを逐次読み取るように動作する。
It is well known to use memory as an intermediate buffer between system components in order to store data written by a transfer device at one rate and read from it at another rate by a destination device. It is a technique. First-in first-out (FI
The random access memory for the buffer which operates by FO) system has been developed. In particular, pending US Patent Application No. 746,920, filed June 20, 1985, discloses a FIFO memory device that can be written and read in a very short time.
The FIFO memory comprises a plurality of memory word locations having a common data input bus for writing data directly to the memory location and a common data output bus from which data can be read directly. A write address ring counter sequentially addresses each memory word location in response to an input write command. Similarly, the read address ring counter operates to sequentially read memory word locations in response to an input read command.

このFIFOメモリの書込コマンドは、第1の負移行遷移
と第2の正移行遷移から成る書込クロックパルスを発生
する。負移行遷移で、アドレスが次のロケーションにイ
ンクレメントされる。続く正移行遷移で、ポインタがイ
ンクレメントされたアドレスロケーションはメモリレジ
スタに書き込まれる。後で詳述するように、誤ったアド
レスへの書込を避けるため、一般にガードバンドつまり
バッファ時間が書込サイクルの低側に挿入される。
This FIFO memory write command generates a write clock pulse consisting of a first negative going transition and a second positive going transition. On a negative transition, the address is incremented to the next location. On the subsequent positive transition, the address location where the pointer was incremented is written to the memory register. As will be discussed in more detail below, guard bands or buffer times are typically inserted low in the write cycle to avoid writing to the wrong address.

前記審理中の米国特許出願第746,920号は、反転書込
クロックパルスの高部分で書込みを行い、次の反転パル
スの低部分でアドレスポインタをインクレメントする。
また、ガードバンドが低部分に入れられる。高部分と低
部分は一般に、上記動作の完全な完了を可能とするのに
充分な長さである。書込コマンドの前縁間の間隔は、高
及び低両部分の組合せ長さに等しい。
The pending U.S. Patent Application No. 746,920 writes at the high portion of the inverted write clock pulse and increments the address pointer at the low portion of the next inverted pulse.
Also, a guard band is placed in the lower part. The high and low portions are generally long enough to allow complete completion of the above operations. The spacing between the leading edges of the write commands is equal to the combined length of both the high and low portions.

このFIFOの読取サイクルは書込サイクルよりかなり短
い。FIFOを通じたデータ伝送に関する最大周波数Fmax
は、先のデータを読出可能な速さでだけ全FIFOが新たな
データを読取可能なので、許容可能な最大読取及び書込
サイクル長の逆数である。従って、前記米国特許出願の
FIFOメモリはスループット時間を著しく改良するが、許
容可能な最小読取及び書込両サイクルをほぼ同じに近付
けられれば、スループット時間をさらに減少できる。
The read cycle of this FIFO is much shorter than the write cycle. Maximum frequency Fmax for data transmission through FIFO
Is the reciprocal of the maximum allowable read and write cycle length because all FIFOs can read new data only as fast as the previous data can be read. Therefore, the above-mentioned US patent application
Although FIFO memory significantly improves throughput time, throughput time can be further reduced if both the minimum acceptable read and write cycles are approximated.

(問題点を解決するための手段) 本発明は、複数のメモリレジスタを短い時間で逐次ア
ドレスする方法及び装置を開示し請求する。書込クロッ
クパルスは書込コマンドに応答して発生され、第1及び
第2の遷移を有する。書込クロックパルスの第1遷移を
受け取ると、書込アドレス発生器がその第1ロケーショ
ンから次のロケーションにインクレメントする。また第
1の遷移で、ストアされていた第1アドレス信号が第1
ロケーションに対応するメモリレジスタに転送される。
書込クロックパルスの第2遷移を受け取ると、書込アド
レス発生器の次のロケーションからの次のアドレス信号
がストアされる。
SUMMARY OF THE INVENTION The present invention discloses and claims a method and apparatus for sequentially addressing multiple memory registers in a short amount of time. The write clock pulse is generated in response to the write command and has first and second transitions. Upon receiving the first transition of the write clock pulse, the write address generator increments from its first location to the next location. Further, at the first transition, the stored first address signal becomes the first
It is transferred to the memory register corresponding to the location.
Upon receiving the second transition of the write clock pulse, the next address signal from the next location of the write address generator is stored.

好ましい実施例においては、アドレス発生器が複数の
透明なラッチの入力に接続された出力を有し、各メモリ
レジスタ毎に1つのラッチが対応する。また各ラッチ
は、それぞれのNORゲートの一方の入力に接続された出
力を有する。各NORゲートの出力はそれぞれのメモリレ
ジスタに接続されている。書込クロックラインは各透明
ラッチと各NORゲートの入力とに接続され、更に複数の
リングカウンタまたはアドレス発生段の各々に接続され
る。各リングカウンタ段がアドレスロケーションに対応
する。
In the preferred embodiment, the address generator has an output connected to the inputs of a plurality of transparent latches, one latch for each memory register. Each latch also has an output connected to one input of a respective NOR gate. The output of each NOR gate is connected to its respective memory register. The write clock line is connected to each transparent latch and the input of each NOR gate, and further connected to each of a plurality of ring counters or address generation stages. Each ring counter stage corresponds to an address location.

第1段からの第1アドレス信号が、正移行クロックパ
ルス遷移に応じて第1ラッチ内にストアされる。次の負
移行遷移を受け取ると、ポインタの指すアドレスロケー
ションが第1段から第2段にインクレメントされ、第2
アドレス信号が対応する第2透明ラッチの入力に得られ
る。同時に負移行遷移は、第1ラッチ内にストアされて
いた第1アドレス信号を、それぞれのNORゲートを介し
て第1アドレスに書き込ませる。その後、同様のプロセ
スが後続段について繰り返される。
The first address signal from the first stage is stored in the first latch in response to the positive transition clock pulse transition. When the next negative transition is received, the address location pointed to by the pointer is incremented from the first stage to the second stage,
The address signal is available at the input of the corresponding second transparent latch. At the same time, the negative transition causes the first address signal stored in the first latch to be written to the first address via the respective NOR gate. Then, the same process is repeated for the subsequent stages.

本発明の主な利点は、クロックパルスの高パルスの高
部分におけるガードバンドがもはや必要なくなることで
ある。また、アドレス発生器のインクレメントとメモリ
書込の両方が書込クロック信号の低部分で行われるの
で、書込クロック信号の高部分は4または5ns以上必要
なくなり、段のインクレメント間にアドレス発生器を回
復可能として、望ましくないレース(race)状態を防ぎ
回路を安定化する。従って著しい時間の節約が実現さ
れ、許容可能な最大書込サイクル周波数が許容可能な最
大読取サイクル周波数に近付き、FIFOメモリはその分だ
け速いデータのスループットを有する。
The main advantage of the invention is that the guard band in the high part of the high pulse of the clock pulse is no longer needed. Also, since both the increment of the address generator and the memory writing are performed in the low part of the write clock signal, the high part of the write clock signal is not required for 4 or 5 ns or more, and the address is generated between the increments of the stages. The vessel is recoverable to prevent unwanted race conditions and stabilize the circuit. Thus, significant time savings are realized, the maximum allowable write cycle frequency approaches the maximum allowable read cycle frequency, and the FIFO memory has a correspondingly faster data throughput.

本発明の上記以外の利点及び特徴は、添付の図面を参
照した以下の例示実施例の説明から明らかとなろう。
Other advantages and features of the invention will be apparent from the following description of exemplary embodiments with reference to the accompanying drawings.

(実施例) 本発明はデジタル通信において広範囲の用途を有する
が、本発明を有利に実施できる環境例を第1図に示す。
参照符号10で概略的に表わしたFIFOメモリバッファが、
通信時FIFOメモリバッファ10を介して接続される高速の
データプロセッサ12と低速の陰極線管(CRT)端子装置1
4間に位置するものとして示してある。データ通信はデ
ータプロセッサ12からCRT端末装置14に向かう方向に行
われ、図示例においてデータプロセッサ12はCRT端末装
置14によって読取可能な速度よりはるかに高い速度でFI
FOメモリバッファ10内に書込可能である。データプロセ
ッサは毎秒約9600ビットの伝送速度を達成可能だが、CR
T端末装置14等の一般的な周辺機器は毎秒1200ビットの
伝送速度しか可能でない。
Although the present invention has a wide range of applications in digital communication, an example environment in which the present invention can be advantageously implemented is shown in FIG.
A FIFO memory buffer, schematically represented by reference numeral 10,
A high speed data processor 12 and a low speed cathode ray tube (CRT) terminal device 1 connected via a FIFO memory buffer 10 during communication.
It is shown as being located between four. Data communication occurs in the direction from the data processor 12 to the CRT terminal device 14, and in the illustrated example, the data processor 12 operates at a much higher speed than the CRT terminal device 14 can read.
It can be written in the FO memory buffer 10. The data processor can achieve a transfer rate of about 9600 bits per second, but CR
A general peripheral device such as the T terminal device 14 can only transmit data at 1200 bits per second.

そこでFIFOメモリバッファ10が、第1の速度でデータ
を書き込め、異なる第2の速度でデータを読み出せる中
間データ記憶手段を与える。但し、本発明のFIFOメモリ
バッファ10は、データ書込速度がデータ読取速度より遅
い場合にも同等の効果で使用できることが理解されるべ
きである。FIFOメモリバッファ10へのデータ転送、つま
りデータ書込動作がデータ読取動作より速い速度である
場合、主な問題は、完全に満たされたメモリの検出と、
データの転送を中断できるようにその検出をデータプロ
セッサ12に通知する点である。一方、データ読取動作の
速度がデータ書込動作の速度を越える場合の主な問題
は、空になったFIFOメモリバッファ10の検出である。こ
の場合には、CRT端末装置14からの引続く読取コマンド
が空になったFIFOメモリバッファの無意味な読取動作を
生じないように、充分な時間をとって上記状態の検出が
CRT端末装置14に通知されねばならない。
Therefore, the FIFO memory buffer 10 provides an intermediate data storage means capable of writing data at a first speed and reading data at a different second speed. However, it should be understood that the FIFO memory buffer 10 of the present invention can be used with the same effect even when the data writing speed is lower than the data reading speed. If the data transfer to the FIFO memory buffer 10, i.e. the data write operation is faster than the data read operation, the main problem is the detection of a completely filled memory,
The point is to notify the data processor 12 of the detection so that the transfer of data can be interrupted. On the other hand, when the speed of the data read operation exceeds the speed of the data write operation, the main problem is the detection of the empty FIFO memory buffer 10. In this case, the detection of the above-mentioned state should be taken with sufficient time so that the subsequent read command from the CRT terminal device 14 does not cause a meaningless read operation of the emptied FIFO memory buffer.
The CRT terminal 14 must be notified.

しかし実際のデジタルデータ通信においては、高速デ
ータ書込動作の短いバーストがバッファメモリを満たす
一方、低速データ読取動作の長いバーストがメモリバッ
ファを空にするので、空と満杯のメモリバッファという
両状態が生じることがある。このため、発生機器または
宛先機器がそれぞれ高速または低速の機器であるかに関
係なく、FIFOメモリバッファ10は空及び満杯の両状態に
遭遇する可能性がある。
However, in actual digital data communication, a short burst of high-speed data write operation fills the buffer memory, while a long burst of low-speed data read operation empties the memory buffer, resulting in both empty and full memory buffers. May occur. Thus, the FIFO memory buffer 10 may encounter both empty and full states, regardless of whether the originating or destination device is a fast or slow device, respectively.

再び第1図の例示システムを参照すれば、データの流
れはデータプロセッサ12からCRT端末装置14へ向かう方
向なので、データ入力バス16がデータプロセッサ12から
FIFOメモリバッファ10への伝送媒体を与える。データ入
力バス16に付随して書込コマンドライン18が存在し、デ
ータ入力バス16上を伝送されるデータの各ワードにライ
ン18上の書込コマンドが付随する。FIFOメモリバッファ
10からデータプロセッサ12に向かって満杯フラグライン
20が設けられ、メモリバッファが満杯であることをデー
タプロセッサ12に信号通知する。満杯フラグの詳細につ
いては後で詳しく取り扱う。
Referring again to the exemplary system of FIG. 1, since the data flow is from the data processor 12 to the CRT terminal 14, the data input bus 16 is from the data processor 12.
Provides a transmission medium to the FIFO memory buffer 10. There is a write command line 18 associated with the data input bus 16 and each word of data transmitted on the data input bus 16 is associated with a write command on line 18. FIFO memory buffer
Full flag line from 10 to data processor 12
20 is provided to signal the data processor 12 that the memory buffer is full. Details of the full flag will be dealt with in detail later.

データプロセッサ12からCRT端末装置14に至る伝送路
全体を完成するため、FIFOメモリバッファ10からCRT端
末装置14に向かうデータ出力バス22が設けられている。
デジタルデータは、読取コマンドライン24を介しCRT端
末装置14からFIFOメモリバッファ10に発せられる読取コ
マンドによって、FIFOメモリバッファ10からCRT端末装
置14に転送される。つまりデータは、読取コマンドライ
ン24上に読取コマンドが現われる速度で、FIFOメモリバ
ッファ10から読み取られ、データ出力バス22上に出力さ
れる。
To complete the entire transmission line from the data processor 12 to the CRT terminal device 14, a data output bus 22 from the FIFO memory buffer 10 to the CRT terminal device 14 is provided.
Digital data is transferred from the FIFO memory buffer 10 to the CRT terminal device 14 by a read command issued from the CRT terminal device 14 to the FIFO memory buffer 10 via the read command line 24. That is, data is read from the FIFO memory buffer 10 and output on the data output bus 22 at the rate at which the read command appears on the read command line 24.

FIFOメモリバッファ10を空状態は、空フラグライン26
を介してCRT端末装置14に信号通知される。リセットラ
イン28がデータプロセッサ12及びCRT端末装置14からFIF
Oメモリバッファ10に向かい、メモリバッファを所望の
初期状態に初期化する。
When the FIFO memory buffer 10 is empty, the empty flag line 26
A signal is sent to the CRT terminal device 14 via the. Reset line 28 from data processor 12 and CRT terminal 14 to FIF
To the O memory buffer 10, the memory buffer is initialized to a desired initial state.

図面中の第2図を参照すると、本発明によるFIFOメモ
リバッファ10の基本構造の特徴が示してある。
Referring to FIG. 2 of the drawings, the features of the basic structure of a FIFO memory buffer 10 according to the present invention are shown.

書込/読取(W/R)制御装置30が、データプロセッサ1
2及びCRT端末装置14からそれぞれ書込及び読取コマンド
を受け取り、メモリ48の書込及び読取を制御する。W/R
制御装置30は対応した書込/読取信号を、書込ライン34
を介して多段書込アドレス発生器またはリングカウンタ
32に、更に読取ライン38を介して多段読取アドレス発生
器またはリングカウンタ36に差し向ける。後で詳しく論
じるように、W/Rカウンタ30は、処理された最後のメモ
リ動作コマンドが書込または読取どちらのコマンドであ
ったかについての判断を維持する。
The write / read (W / R) controller 30 is used by the data processor 1
It receives write and read commands from the CRT terminal device 2 and the CRT terminal device 14, respectively, and controls write and read of the memory 48. W / R
The controller 30 sends the corresponding write / read signal to the write line 34.
Multi-stage write address generator or ring counter via
32 and then via read line 38 to a multi-stage read address generator or ring counter 36. As discussed in detail below, W / R counter 30 maintains a determination as to whether the last memory operation command processed was a write or read command.

複数の論理ゲートから成る比較器40がそれぞれ複数の
導体42と44によって、書込アドレスリングカウンタ32と
読取アドレスリングカウンタ36に接続されている。また
比較器40は、ライン46でW/R制御装置30にも接続され、
書込及び読取アドレスリングカウンタ32,36が同じアド
レスを指すとき信号を発生する。後で詳述するように、
W/R制御装置30はこの情報によって、メモリ48がいつ満
杯または空になったかを判定できる。
A plurality of logic gate comparators 40 are connected to the write address ring counter 32 and the read address ring counter 36 by a plurality of conductors 42 and 44, respectively. The comparator 40 is also connected to the W / R controller 30 via line 46,
A signal is generated when the write and read address ring counters 32, 36 point to the same address. As detailed later,
With this information, the W / R controller 30 can determine when the memory 48 is full or empty.

メモリ48は、ワード1〜Nをそれぞれストアするメモ
リワードロケーションまたはレジスタ501〜50Nを備えて
いる。各メモリワードレジスタ50iは書込アドレスリン
グカウンタ32の各段に固有に接続され、それらメモリワ
ードレジスタへのメモリ書込動作を行う。さらに各メモ
リワードレジスタは読取アドレスリングカウンタ36の各
対応段にも接続され、メモリ読取動作を行う。以後、書
込または読取動作時にアドレスされるメモリワードロケ
ーションは、リングカウンタまたはアドレス発生器32又
は36の一方によって指されているものと称する。読取ア
ドレスリングカウンタ36が書込アドレスリングカウンタ
32と同じメモリワードレジスタ50iを指し、且つ最後の
メモリ動作が書込動作であるとき、メモリ48は満杯であ
る。同様に、書込及び読取両アドレスリングカウンタ3
2,36が同じメモリワードレジスタ50iを指し、且つ最後
に受け取ったコマンドが読取コマンドであるとき、メモ
リ48が空なので、別の読取コマンドの受信は処理されな
い。
Memory 48 has a memory word location or register 50 1 to 50 N to store the word 1~N respectively. Each memory word register 50 i is uniquely connected to each stage of the write address ring counter 32, and performs a memory write operation to those memory word registers. Further, each memory word register is also connected to each corresponding stage of the read address ring counter 36 to perform a memory read operation. Hereinafter, the memory word location addressed during a write or read operation is referred to as being pointed to by one of the ring counter or address generator 32 or 36. The read address ring counter 36 is the write address ring counter.
Memory 48 is full when it points to the same memory word register 50 i as 32 and the last memory operation is a write operation. Similarly, both write and read address ring counter 3
When 2,36 point to the same memory word register 50 i and the last command received is a read command, the receipt of another read command is not processed because memory 48 is empty.

例えば、第2図中メモリ48のメモリワードレジスタ50
2が読み取られ、従って読取アドレスカウンタ36がレジ
スタ502を指しているものとする。ここでメモリワード
レジスタ502〜50N更に501に、新しいデータを書き込む
ことができる。メモリワードレジスタ501まで書き込ま
れれば、メモリ48は満杯である。さらに、読取アドレス
リングカウンタ36及び書込アドレスリングカウンタ32が
レジスタ502を指し、最後のメモリ動作は書込動作であ
る。
For example, the memory word register 50 of the memory 48 in FIG.
Assume that 2 is read, and thus read address counter 36 points to register 50 2 . New data can now be written to the memory word registers 50 2 to 50 N and further to 50 1 . If written to the memory word register 50 1, the memory 48 is full. Further, the read address ring counter 36 and the write address ring counter 32 points to register 50 2, the last memory operation is a write operation.

逆に、メモリ48全体が書き込まれ、従ってメモリレジ
スタ50Nが書き込まれていれば、書込アドレスリングカ
ウンタ32はレジスタ501を指している。この状態では、
メモリ48が空になるまで、レジスタ501〜50Nを順次読み
取れる。メモリが空の状態は、読取及び書込両アドレス
リングカウンタ32,26が同じメモリレジスタ501を指し、
且つ最後のメモリ動作が読取動作であるときに検出でき
ることが明らかであろう。
Conversely, the memory 48 overall is written, thus if written memory registers 50 N is, write address ring counter 32 points to register 50 1. In this state,
Registers 50 1 to 50 N can be read sequentially until memory 48 is empty. Memory is empty refers to read and write both addresses ring counter 32, 26 are the same memory register 50 1,
And it will be clear that it can be detected when the last memory operation is a read operation.

本方法によれば、特定のメモリアドレスをテーブル内
に維持する必要がなく、保持する必要があるのは(どん
な場合にでも)読取及び書込両アドレスが等しいかどう
かに関する情報と、処理された最後のメモリコマンドが
読取または書込どちらの動作であるかに関する情報だけ
であることが認識されるべきである。
According to the method, it is not necessary to keep a particular memory address in the table, what is needed (in any case) is information about whether the read and write addresses are equal and processed. It should be appreciated that the last memory command is only information about whether it is a read or write operation.

再び第2図を参照すれば、メモリワードレジスタ501
はデータ入力バス16に共通接続されたデータ入力56を有
する。残りのメモリワードレジスタ502-Nも各々、デー
タ入力バス16への同様の接続も含む。同じように、各メ
モリワードレジスタ501-Nは、データ出力バス22に共通
接続されたデータ出力58を有する。データ入力及び出力
バス16,22はそれぞれ、メモリワード(第4図)のデー
タビット数に対応した5ビットラインから成る。ここに
記す例示のFIFOメモリバッファ10には、N個のデータワ
ードをストアするN個のメモリワードが存在し、例示の
各ワードは5ビットの長さである。勿論、FIFOメモリバ
ッファ10のデータワードは、8,16または32ビット等他の
人気のあるビット長を受け入れるように容易に拡張でき
る。
Referring again to FIG. 2, the memory word register 50 1
Has a data input 56 commonly connected to the data input bus 16. Each of the remaining memory word registers 50 2-N also includes a similar connection to data input bus 16. Similarly, each memory word register 501 -N has a data output 58 commonly connected to the data output bus 22. The data input and output buses 16 and 22 each consist of 5 bit lines corresponding to the number of data bits of the memory word (FIG. 4). In the exemplary FIFO memory buffer 10 described herein, there are N memory words that store N data words, each exemplary word being 5 bits long. Of course, the data words of the FIFO memory buffer 10 can easily be extended to accommodate other popular bit lengths such as 8, 16 or 32 bits.

前述したように、書込アドレスリングカウンタ32は多
数の段32iを含み、各段は書込クロック(WRITE CLOCK)
ライン34(第4図)に接続されている。また各段32i
メモリワードレジスタ50iと対応し、書込信号をそれぞ
れのメモリワードレジスタへ差し向けるように動作す
る。後で詳述するが、メモリ48はワード1から始まって
読取または書込され、ワードNへと進んだ後、同じシー
ケンスを再び繰り返す。
As described above, the write address ring counter 32 includes a large number of stages 32 i , and each stage has a write clock (WRITE CLOCK).
It is connected to line 34 (Fig. 4). Each stage 32 i also corresponds to a memory word register 50 i and operates to direct a write signal to the respective memory word register. As will be described in greater detail below, memory 48 is read or written starting at word 1 and proceeding to word N before repeating the same sequence again.

読取アドレスリングカウンタ36は、N個のメモリワー
ドレジスタ50を同じように逐次読み取るための同様の段
を備えている。読取アドレスリングカウンタ36の各段は
読取信号ライン38に接続されている。
Read address ring counter 36 includes similar stages for similarly sequentially reading N memory word registers 50. Each stage of the read address ring counter 36 is connected to the read signal line 38.

最後の読取及び書込動作についての判断を維持し、読
取及び書込両メモリアドレスが等しいかどうかを比較す
るこの方法を用いれば、メモリ48の満杯または空の状態
に関し極めて正確な判定が行える。
Using this method of maintaining a decision about the last read and write operation and comparing whether both read and write memory addresses are equal, a very accurate determination of the full or empty state of memory 48 can be made.

従来の方式と異なり、FIFOメモリバッファ10の周期動
作は18と24における読取及び書込コマンド入力の前縁の
みに依存し、それらの後縁のタイミングと関係ない。前
述のごとく、データ入力バス16上のデータ変化等FIFOメ
モリバッファ10の外部で生じる事象、あるいはメモリ48
が空または満杯のとき生じるほぼ同時の読取または書込
動作が、FIFOメモリバッファ10の望ましくない動作をも
たらさないという点で、上記の事実は極めて有利であ
る。この目的のため、W/R制御装置30は、読取または書
込コマンドの前縁に基づき完全な内部読取及び書込パル
スを発生する回路を含む。第3図に、W/R制御装置30の
書込信号発生器60を簡略化した形で示す。
Unlike conventional schemes, the cyclic operation of the FIFO memory buffer 10 depends only on the leading edges of the read and write command inputs at 18 and 24 and not the timing of their trailing edges. As described above, events that occur outside the FIFO memory buffer 10, such as data changes on the data input bus 16, or the memory 48
The above fact is extremely advantageous in that the nearly simultaneous read or write operations that occur when is empty or full do not result in undesired operation of the FIFO memory buffer 10. To this end, the W / R controller 30 includes circuitry that generates a complete internal read and write pulse based on the leading edge of a read or write command. FIG. 3 shows the write signal generator 60 of the W / R control device 30 in a simplified form.

上記を背景として、FIFOメモリバッファ10の動作をよ
り詳しく示した第3,4及び5図を参照する。
Against the background described above, please refer to FIGS. 3, 4 and 5 which show the operation of the FIFO memory buffer 10 in more detail.

第3図中、書込信号発生器60の入力に書込コマンドの
前縁を表わす波形が、またその出力に結果として生ずる
“書込クロック”と示した書込クロックパルスがそれぞ
れ示してある。バッファゲート62が、書込コマンドライ
ン18を残りのFIFOメモリバッファ回路から隔絶する。単
安定マルチバイブレータ64がライン18上のと同じ書込コ
マンド信号を、ゲート遅延を介してであるがその入力に
受信する。単安定マルチバイブレータ64は、立上り遷移
に応答して出力パルスを発生するような型とする。単安
定マルチバイブレータ64の内部または外部に接続された
抵抗及び/又は容量部品(図示せず)は、所望巾の出力
パルスを生じるように選定される。本発明の好ましい実
施例において、単安定マルチバイブレータ64は10〜15ns
巾の出力パルスを発生する。
In FIG. 3, the input of the write signal generator 60 is shown with a waveform representing the leading edge of the write command, and the resulting write clock pulse labeled "Write Clock". A buffer gate 62 isolates the write command line 18 from the rest of the FIFO memory buffer circuit. Monostable multivibrator 64 receives the same write command signal as on line 18 through its gate delay but at its input. The monostable multivibrator 64 is of a type that produces an output pulse in response to a rising transition. Resistor and / or capacitive components (not shown) connected to the interior or exterior of monostable multivibrator 64 are selected to produce output pulses of the desired width. In the preferred embodiment of the invention, the monostable multivibrator 64 is 10-15 ns.
Generate an output pulse of width.

また特に重要なのは、インバータ98による反転後の書
込コマンドの前縁に応答し、NANDゲート68を通じた書込
クロックパルスの通過を禁止する書込エネーブルラッチ
66である。この禁止は、読取及び書込両アドレスリング
カウンタ36,32が同じメモリワードを指し、且つ前の動
作が書込動作であった場合にのみ生じることは明らかで
あろう。最後のW/R動作フリップフロップ70が設けら
れ、最後のメモリ動作がメモリ48の読取動作または書込
動作どちらであったかの判断を維持する。最後のW/R動
作フリップフロップ70は、書込エネーブルラッチ66の
“D"入力に接続され、単安定パルスがNANDゲート68を通
過すべきかどうかに関する指示を与える。
Also of particular importance is a write enable latch that responds to the leading edge of the write command after inversion by inverter 98 and inhibits the passage of write clock pulses through NAND gate 68.
66. It will be appreciated that this prohibition will only occur if both read and write address ring counters 36, 32 point to the same memory word and the previous operation was a write operation. A final W / R operation flip-flop 70 is provided to maintain a determination of whether the last memory operation was a read or write operation of memory 48. The final W / R operational flip-flop 70 is connected to the "D" input of the write enable latch 66 and gives an indication as to whether the monostable pulse should pass through the NAND gate 68.

第4図の読取信号発生器80は同様に読取コマンドの前
縁遷移に応答し、メモリ48が空でないときに読取ライン
38上に読取パルスを発生する。より詳しくは、単安定マ
ルチバイブレータ84がNANDゲート86の一入力に接続され
ている。インバータ88が読取コマンド信号を反転し、そ
れを読取エネーブルラッチ90に接続する。読取エネーブ
ルラッチ90の出力がNANDゲート86の一入力に接続され
る。
The read signal generator 80 of FIG. 4 also responds to the leading edge transitions of the read command and reads the read line when memory 48 is not empty.
Generate a read pulse on 38. More specifically, monostable multivibrator 84 is connected to one input of NAND gate 86. Inverter 88 inverts the read command signal and connects it to read enable latch 90. The output of read enable latch 90 is connected to one input of NAND gate 86.

第4図には、本発明によるFIFOメモリバッファ10の詳
細な電気配線図が示してある。概略的に言えば、メモリ
48が満杯または空でない限り、W/R制御装置30は対応す
る入力コマンドに応じて、書込クロックパルス信号を書
込ライン34上に、また読取クロックパルス信号を読取信
号ライン38上にそれぞれ発生する。読取アドレスリング
カウンタ36と書込アドレスリングカウンタ32は各々、複
数の1ビット段361-Nと321-Nを備えたシフトレジスタか
ら成る。両リングカウンタ32,36はその中の各ロケーシ
ョンつまり段を通じて1つの論理高のビットを逐次シフ
トし、読取または書込をすべき特定のメモリワードを指
す。
FIG. 4 shows a detailed electrical wiring diagram of the FIFO memory buffer 10 according to the present invention. Roughly speaking, memory
Unless 48 is full or empty, W / R controller 30 will generate a write clock pulse signal on write line 34 and a read clock pulse signal on read signal line 38 in response to the corresponding input command. To do. The read address ring counter 36 and the write address ring counter 32 each comprise a shift register having a plurality of 1-bit stages 36 1-N and 32 1-N . Both ring counters 32 and 36 sequentially shift one logic high bit through each location or stage therein to point to a particular memory word to be read or written.

比較器部40は、メモリ48の空及び満杯状態を判定する
複数の2入力NANDゲートを含む。比較器部40のNANDゲー
ト40bは、読取アドレスリングカウンタ36のアドレス出
力を書込アドレスリングカウンタ32のアドレス出力と比
較し、メモリ48が空か満杯であるかどうかの判定を行う
のに使われる出力信号をW/R制御装置30(ライン46上)
にまとめて供給する。詳しくは、NANDゲート40b1が読取
アドレスリングカウンタ段361の出力と書込アドレスリ
ングカウンタ段321の出力とを比較する。NANDゲート40
b2が両段362,322の出力を比較する等々。すなわち、NAN
Dゲート40bが読取アドレスリングカウンタ段36と同次の
書込アドレスリングカウンタ段32と比較する。
Comparator section 40 includes a plurality of two-input NAND gates that determine the empty and full states of memory 48. NAND gate 40 b of the comparator 40, the address output of the read address ring counter 36 is compared with the address output of the write address ring counter 32, used to make a determination of whether the memory 48 is empty or full W / R control device 30 (on line 46)
To be supplied together. Specifically, NAND gate 40 b1 compares the output of read address ring counter stage 36 1 with the output of write address ring counter stage 32 1 . NAND gate 40
b2 compares the outputs of both stages 36 2 and 32 2 , and so on. That is, NAN
D gate 40 b is compared with the address ring counter stage 36 and the next write address ring counter stage 32 reading.

メモリ48はラッチ74等の入力データラッチを含み、そ
こでデータ入力16からの入力データが、ライン75上の書
込コマンド信号の後縁エッジ遷移に応じてラッチされ
る。データ出力バス22は、宛先機器に差し向けられるデ
ータ出力バス22を駆動するためのパワーを供給する多数
の3状態ドライバ76の出力から成る。3状態ドライバ76
用の高インピーダンス状態制御装置78も、宛先機器に差
し向けられる補助ラインである。
Memory 48 includes input data latches, such as latch 74, where input data from data input 16 is latched in response to trailing edge transitions of a write command signal on line 75. The data output bus 22 comprises the outputs of a number of tri-state drivers 76 which provide the power to drive the data output bus 22 destined for the destination device. 3-state driver 76
The high impedance state control device 78 for is also an auxiliary line directed to the destination device.

次に第4図のFIFOメモリバッファを、一般的な動作サ
イクルに関連して説明する。
Next, the FIFO memory buffer shown in FIG. 4 will be described with reference to a general operation cycle.

FIFOメモリバッファ10内の各種回路を所望の状態に初
期化するため、リセット入力ライン28上の負パルスが与
えられる。詳しくは、リセットライン28上の信号が最後
のR/W動作フリップフロップ70をリセットし、その出
力が理論高のレベルになる。リセットライン28は、読取
及び書込アドレスリングカウンタの段362-N及び322-N
リセット入力“R"と、段361及び321のセット入力“S"に
も接続されている。従って、リングカウンタ段362-N
び322-Nの各アドレス出力が論理低にリセットされる一
方、リングカウンタ段361及び321は出力論理高のレベル
にセットされる。リセット信号はANDゲート41にも接続
され、フリップフロップ136を初期セットする。
A negative pulse on reset input line 28 is applied to initialize the various circuits within FIFO memory buffer 10 to the desired state. Specifically, the signal on reset line 28 resets the last R / W operational flip-flop 70, the output of which is at the theoretical high level. The reset line 28 is also connected to the reset input "R" of the read and write address ring counter stages 36 2-N and 32 2-N and the set input "S" of stages 36 1 and 32 1 . Therefore, each address output of ring counter stages 36 2-N and 32 2-N is reset to a logic low, while ring counter stages 36 1 and 32 1 are set to an output logic high level. The reset signal is also connected to the AND gate 41 to initialize the flip-flop 136.

リセット信号は一般にFIFOメモリバッファ10の電源投
入時またはその後に発せられるので、信頼できるデータ
はメモリ48内に存在しないと見なすべきである。従っ
て、少なくとも信頼できるデータが第1メモリレジスタ
501内に存在するように書込動作が実行されるまで、メ
モリの最初の読取は禁止されるべきである。事実最初の
読取コマンドが空のFIFOメモリバッファ10に発せられ、
読取信号発生器80がNANDゲート86の入力に読取信号を発
生したとしても、生じた読取クロックパルスが読取ライ
ン38上に現われないのは明らかであろう。
Since the reset signal is typically issued at or after powering up the FIFO memory buffer 10, reliable data should not be considered present in memory 48. Therefore, at least the reliable data is the first memory register.
Until the write operation to be present in 50 1 is executed, reading the first memory is to be prohibited. In fact the first read command is issued to the empty FIFO memory buffer 10,
It will be appreciated that even if the read signal generator 80 produces a read signal at the input of the NAND gate 86, the resulting read clock pulse does not appear on the read line 38.

リセットライン28が最後のR/W動作フリップフロップ7
0の出力に論理高を現わせしめるので、少しの間イン
バータ22の出力が高だとすれば、ANDゲート94の両入力
が論理高となり、従ってその出力に論理高を生じる。読
取エネーブルラッチ90は、エネーブル入力Eが論理高で
ある限り、D入力に現われる論理レベルの補数が出力
に転送されるようなD形透明ラッチである。エネーブル
入力Eが低のとき、その出力は低移行遷移で設定された
データの論理レベルにラッチされる。テキサスインスツ
ルメンツ社製のSN74LS364型透明ラッチが、上記の動作
を実行するラッチの一例である。
Reset line 28 is the last R / W active flip-flop 7
Since the output of 0 causes a logic high to appear, if the output of inverter 22 were high for a short time, both inputs of AND gate 94 would be a logic high, thus producing a logic high at its output. The read enable latch 90 is a D-type transparent latch such that the complement of the logic level appearing on the D input is transferred to the output as long as the enable input E is a logic high. When enable input E is low, its output is latched at the logic level of the data set on the low transition. The Texas Instruments SN74LS364 transparent latch is an example of a latch that performs the above operation.

このため、入力読取コマンドの正に移行する前縁遷移
で、インバータ88の出力の対応した低移行遷移が、透明
ラッチ90のD入力における論理高の補数を出力の論理
低としてラッチする。かつ出力の論理低が、NANDゲー
ト86の入力に接続される。
Thus, on the positive going leading transition of the input read command, the corresponding low going transition of the output of inverter 88 latches the complement of the logic high at the D input of transparent latch 90 as the logic low of the output. And the output logic low is connected to the input of NAND gate 86.

つまり、読取エネーブルラッチ90がNANDゲート86の一
入力を低とするため、このゲートが最初の読取コマンド
に応答して単安定マルチバイブレータ84によって発生さ
れる読取信号の転送を禁止する。
That is, read enable latch 90 pulls one input of NAND gate 86 low, which inhibits the transfer of the read signal generated by monostable multivibrator 84 in response to the first read command.

しかし、最後のR/W動作フリップフロップ70のQ出力
は最初に論理低のレベルにセットされているので、AND
ゲート96の出力は書込エネーブルラッチ66に論理低のレ
ベルを与える。書込コマンドインバータ98が書込コマン
ドの立上りエッジを負移行エッジに反転し、それを書込
エネーブルラッチ66のE入力に加える。これにより、ラ
ッチ66のD入力の論理低がNANDゲート68の入力100に至
る出力の論理高として与えられる。NANDゲート68の第
3入力も、バッファ62の出力が論理高である結果高であ
る。従って、単安定マルチバイブレータから発生される
書込パルスは、NANDゲート68を通過可能である。
However, since the Q output of the final R / W operation flip-flop 70 is initially set to the logic low level, AND
The output of gate 96 provides a logic low level to write enable latch 66. Write command inverter 98 inverts the rising edge of the write command to a negative going edge and applies it to the E input of write enable latch 66. This provides a logic low on the D input of latch 66 as a logic high on the output to input 100 of NAND gate 68. The third input of NAND gate 68 is also high as a result of the output of buffer 62 being a logic high. Therefore, the write pulse generated from the monostable multivibrator can pass through the NAND gate 68.

書込単安定ルーチン64は第3図にブロックの形で示し
たが、実際にはバッファゲート102、インバータ104及び
タイミングコンデンサ106で構成される。また、書込コ
マンドの正移行パルスがバッファゲート62からNANDゲー
ト68の一入力に与えられることが明らかであろう。バッ
ファ後の書込コマンドは別のバッファ102の入力にも加
えられる。タイミングコンデンサ106によってインバー
タ104の入力がバッファゲート102の入力に追従するのが
続けられ、インバータ104の入力しきい値に達するまで
タイミングコンデンサが立上り縁の遷移を遅らせ、しき
い値に達するとインバータ104の出力が論理低のレベル
になってNANDゲート68の出力を論理高に戻す。このため
上記の回路構成によれば、書込コマンドの立上り縁の遷
移が書込クロックライン34上に書込クロックパルスを生
じる。
The write monostable routine 64, shown in block form in FIG. 3, actually comprises a buffer gate 102, an inverter 104 and a timing capacitor 106. It will also be apparent that the positive transition pulse of the write command is provided from buffer gate 62 to one input of NAND gate 68. The post-buffer write command is also applied to the input of another buffer 102. The timing capacitor 106 keeps the input of the inverter 104 following the input of the buffer gate 102, delaying the rising edge transition until the input threshold of the inverter 104 is reached, when the threshold is reached. Goes to a logic low level, returning the output of NAND gate 68 to a logic high. Thus, with the above circuit arrangement, the rising edge transition of the write command causes a write clock pulse on write clock line 34.

第5図を簡単に参照すると、ライン34上に書込クロッ
クパルスを発生する。W/R制御装置30内の波形が示して
ある。これらの波形から、書込コマンド前縁の正移行遷
移の結果として、インバータ98の出力がライン75上で低
になると共に、書込エネーブルラッチ65の出力を論理
高にラッチすることが明らかであろう。同時に、バッフ
ァゲート62の出力が論理高のレベルになり、2つの論理
高がNANDゲート68の2入力に現われる。インバータ104
の入力側にあるタイミングコンデンサ106がそのインバ
ータの出力を論理高に遅延維持するので、NANDゲート68
の第3入力も高なりWRITE CLK(書込クロック)の低移
行部分を生じる。タイミングコンデンサ106がインバー
タ104の入力しきい値に対応した電圧108に帯電すると、
インバータ104の出力は波形に示すごとく低となり、NAN
Dゲート68の出力を高にして書込クロックパルスを完成
させる。第5図の波形寸法109は、タイミングコンデン
サ106がインバータ104の入力に論理高を与えるまで充分
に帯電し、その出力を論理低のレベルにするのに要する
時間量を表わす。タイミングコンデンサ106の値が大き
いほど、書込ライン34上の書込クロックパルスの巾は大
きくなる。
Referring briefly to FIG. 5, a write clock pulse is generated on line 34. Waveforms within the W / R controller 30 are shown. It is clear from these waveforms that the output of inverter 98 goes low on line 75 and the output of write enable latch 65 latches to a logic high as a result of the positive transition on the leading edge of the write command. Ah At the same time, the output of buffer gate 62 goes to a logic high level and two logic highs appear at the two inputs of NAND gate 68. Inverter 104
Since the timing capacitor 106 on the input side of the delay delays the output of that inverter to a logic high, the NAND gate 68
The third input of also goes high, causing a low transition of the WRITE CLK. When the timing capacitor 106 is charged to the voltage 108 corresponding to the input threshold value of the inverter 104,
The output of the inverter 104 becomes low as shown in the waveform, and the NAN
The output of D-gate 68 is driven high to complete the write clock pulse. Waveform dimension 109 in FIG. 5 represents the amount of time required for timing capacitor 106 to charge sufficiently to provide a logic high to the input of inverter 104 and bring its output to a logic low level. The larger the value of the timing capacitor 106, the larger the width of the write clock pulse on the write line 34.

以上から、W/R制御装置30は書込コマンドの前縁に応
答して書込クロックパルスWRITE CLKを生じることが明
らかであろう。W/R制御装置30の読取信号発生器80も同
様に構成され、読取コマンドに応答して読取ライン38上
に読取クロックパルスREAD CLKを生じる。
From the above, it will be apparent that the W / R controller 30 produces the write clock pulse WRITE CLK in response to the leading edge of the write command. Read signal generator 80 of W / R controller 30 is similarly configured to generate a read clock pulse READ CLK on read line 38 in response to a read command.

また書込コマンドに応答し、インバータ98の出力がラ
イン75上で低移行遷移となり、そのときデータ入力バス
16上に存在するデジタルデータをそれぞれの透明データ
入力ラッチ74にラッチする。すなわち、バッファインバ
ータ110がデータ入力バス16を介して伝送された各デー
タワードの5データビットを受信し、伝送ライン上の各
電圧をFIFOメモリバッファ10の回路電圧と適合可能なデ
ジタル信号に変換する。バッファインバータ110の出力
がインバータ112の出力と共に各データビットを与え、
その補数がそれぞれの入力データラッチ74に与えられ
る。この回路構成によって、データ入力バス16上にその
とき存在するデジタルデータが、書込サイクルの始めに
入力データラッチ74内にラッチされる。これは、書込コ
マンド前縁の遷移直前または直後に生じるデータ入力バ
ス16上のデジタルデータのどんな変化も無視されるとい
う点で有利である。
Also in response to the write command, the output of inverter 98 goes to a low transition on line 75, at which time the data input bus
Latch the digital data present on 16 into their respective transparent data input latches 74. That is, the buffer inverter 110 receives 5 data bits of each data word transmitted via the data input bus 16 and converts each voltage on the transmission line into a digital signal compatible with the circuit voltage of the FIFO memory buffer 10. . The output of the buffer inverter 110 provides each data bit with the output of the inverter 112,
The complement is provided to each input data latch 74. This circuit configuration causes the digital data currently present on the data input bus 16 to be latched in the input data latch 74 at the beginning of the write cycle. This is advantageous in that any changes in digital data on the data input bus 16 that occur immediately before or after the write command leading edge transition are ignored.

各段32iのQ出力は、概念上ポインタで指されている
メモリレジスタ50iをアドレスするように動作するブロ
ック150への入力となる。読取信号ライン120がブロック
150を通過し、レジスタ501〜50Nの読取アドレス入力と
して機能する。さらにブロック150はその出力として、
各々書込アドレス信号をそれぞれのレジスタ50iに転送
させる複数の書込信号ライン116を有する。書込クロッ
クライン34はNANDゲート68からの出力で、後述するよう
にブロック150のうち数段の各々に接続されている。ま
たブロック150の各段は、それぞれのリングカウンタ段
をQ出力と書込信号ライン116にも接続されている。ブ
ロック150の詳細は前記審査中の米国特許出願第746,920
号に示された構造と異なり、以下第6a、6b、7a及び7b図
を参照して詳述する。
The Q output of each stage 32 i becomes an input to block 150 which operates to address a memory register 50 i which is conceptually pointed to by a pointer. Read signal line 120 is blocked
Through 150, which functions as a reading address input of the register 50 1 to 50 N. In addition, block 150 outputs
It has a plurality of write signal lines 116 that each transfer a write address signal to a respective register 50 i . The write clock line 34 is an output from the NAND gate 68, and is connected to each of several stages of the block 150 as described later. Each stage of block 150 also connects its respective ring counter stage to the Q output and write signal line 116. Further details of block 150 may be found in pending U.S. Patent Application No. 746,920.
Unlike the structure shown in FIG. 6, detailed description will be given below with reference to FIGS. 6a, 6b, 7a and 7b.

まず第6a図を参照し、前記審査中の米国特許出願第74
6,920号に示された構造に基づく書込制御回路を説明す
る。ライン152上の反転書込クロックパルス が、書込アドレスリングカウンタ32の各レジスタ段32i
に同時にクロロック入力する。
Referring first to FIG. 6a, said pending US patent application No. 74
A write control circuit based on the structure shown in 6,920 will be described. Inverted write clock pulse on line 152 However, each register stage 32 i of the write address ring counter 32
Enter crolock at the same time.

はライン34(第4図)に現われるWR CLKパルスの反転
で、WR CLKがインバータ(図示せず)によって に変換される。各書込アドレスリングカウンタ段321〜3
2NのQ出力は、隣接する高次段のD入力に接続されてい
る。但し、段32NのQ出力は第1段321のD出力に戻り接
続されている。従って、WR−CLKの低移行遷移で、段321
の出力の論理高(リセットでQ1に得られる)が段322
出力Q2にシフトされる。
Is the inversion of the WR CLK pulse appearing on line 34 (Fig. 4), where WR CLK is driven by an inverter (not shown) Is converted to. Each write address ring counter stage 32 1 to 3
The 2 N Q output is connected to the adjacent higher order D input. However, the Q output of stage 32 N is connected back to the D output of the first stage 32 1 . Therefore, at the low transition of WR-CLK, stage 32 1
The logic high of the output of Q 1 (obtained on reset at Q 1 ) is shifted to the output Q 2 of stage 32 2 .

と同様、Q出力はNANDゲート114への入力として現われ
る。
As with, the Q output appears as an input to NAND gate 114.

Q1を例にとると、 とQ1両方が高のとき、NANDゲート114がラインQD1上に低
出力を生じ、これがインバータ153に入力される。イン
バータ153がQD1入力を、書込信号ラインWS1上の高信号
に反転する。ラインWS1上における正パルスの正移行遷
移が、入力データラッチ74内にラッチされた5データビ
ットの、メモリワード501中の対応してセルつまりビッ
ト位置への書込を開始する。
Taking Q1 as an example, And Q1 are both high, NAND gate 114 produces a low output on line QD1, which is input to inverter 153. The inverter 153 is QD1 input, inverts the high signal on the write signal line WS 1. The positive transition of the positive pulse on line WS 1 initiates the writing of the 5 data bits latched in input data latch 74 to the corresponding cell or bit position in memory word 50 1 .

第7a図を参照すると、第6a図に対応したタイミング図
が示してある。段32iパルスの負移行遷移に感知するので、発生器つまりリン
グカウンタは時点158で段321から段322にインクレメン
トする。その結果、Q1出力が低になり、Q2出力が高にな
る。Q1とQ2の遷移は瞬間的でなく、それぞれ曲線160と1
62を示す。一定の期間T1中、Q2はNANDゲート1141が高出
力を感知する一定のしきい値以上に上昇するが、Q1はゲ
ート1141用の上記しきい値以下にまで減衰しない。従っ
て、Q1とQ2は共に期間T1中それぞれのNANDゲートに高を
与える。
Referring to FIG. 7a, a timing diagram corresponding to FIG. 6a is shown. Step 32 i As it senses the negative going transition of the pulse, the generator or ring counter increments from stage 32 1 to stage 32 2 at time 158. As a result, the Q1 output goes low and the Q2 output goes high. The transitions of Q1 and Q2 are not instantaneous, but curves 160 and 1 respectively.
Shows 62. During a certain period T 1 , Q2 rises above a certain threshold at which NAND gate 114 1 senses high power, but Q1 does not decay below the above threshold for gate 114 1 . Therefore, Q1 and Q2 together provide a high to each NAND gate during period T 1 .

こゝで、 パルス間の期間をT2とする。T2は、次の書込コマンドの
前縁がいつライン18(第4図)上に受信されるかによっ
て変化する。T2がT1以下だと、それぞれのNANDゲート11
4従ってメモリレジスタ501と502の間で、どのメモリレ
ジスタがアドレスされるべきかについて競合が生じる。
このためT2は必ず、T1とガードバンドの和より大きくな
ければならない。最新の技術に基づくFIFOメモリ構造の
実際の構造では、T2が約10nsより小さくてはならないこ
とが見い出されている。第7a図中T3で示した書込信号パ
ルスWS1の長さは、 の正パルスによって、つまり究極的には単安定マルチバ
イブレータ64内のタイミングコンデンサ106の値によっ
て制御される。ラッチ74からメモリレジスタ50iの1つ
へ書き込むのに約20ns必要なので、T3は該継続時間より
小さくてはならない。T2とT3の和が、ライン18(第4
図)上に受信される隣り合う書込コマンドパルスの正移
行遷移間の最小間隔を決定する。最新の半導体デバイス
技術を実施したFIFOメモリにおいて、上記間隔はほゞ30
nsに制限される。従って、最大の書込伝送周波数1/(T2
+T3)、すなわち約33MHzである。FIFOメモリの動作周
波数Fmaxは、最大読取周波数と最大書込周波数のうち小
さい方である。この構造において書込周波数は読取周波
数の約半分なので、最大書込周波数がFmaxを決定する。
Here, Let the period between pulses be T 2 . T 2 will change depending on when the leading edge of the next write command is received on line 18 (FIG. 4). If T 2 is less than T 1 , then each NAND gate 11
4 Therefore, there is a conflict between the memory registers 50 1 and 50 2 as to which memory register should be addressed.
Therefore T 2 must always be greater than the sum of T 1 and the guard band. It has been found that T 2 should not be less than about 10 ns in the actual structure of the FIFO memory structure based on the state of the art. The length of the write signal pulse WS 1 shown by T 3 in FIG. 7a is Is controlled by the positive pulse of, and ultimately by the value of the timing capacitor 106 in the monostable multivibrator 64. About because 20ns required to write from the latch 74 to one of the memory registers 50 i, T 3 should not be less than the duration. The sum of T 2 and T 3 is line 18 (4th
Figure) determines the minimum interval between the positive transitions of adjacent write command pulses received above. In a FIFO memory that uses the latest semiconductor device technology, the above intervals are approximately 30
Limited to ns. Therefore, the maximum write transmission frequency 1 / (T 2
+ T 3 ), or about 33 MHz. The operating frequency Fmax of the FIFO memory is the smaller of the maximum read frequency and the maximum write frequency. Since the write frequency is about half the read frequency in this structure, the maximum write frequency determines Fmax.

次に第6b及び第7b図を参照すれば、本発明による書込
クロック回路とタイミング図が示してある。リングカウ
ンタ段321〜32Nは、各段32iライン152の代りにWR CLKライン34に接続される点を除
き、第6a図の場合と同じように接続されている。但し、
各段32iのQ出力はそれぞれ透明ラッチ154iのD入力に
接続されている。各透明ラッチ154iは、WR CLKライン34
に接続されたE入力と、それぞれのNORゲート156iの一
入力に接続された出力とを有する。各NORゲート156i
の他入力には、WR CLKが加わる。各NORゲート156iの出
力が、それぞれのメモリレジスタ50iに接続する書込信
号ライン116となる。
6b and 7b, there is shown a write clock circuit and timing diagram according to the present invention. For ring counter stages 32 1 to 32 N , each stage 32 i It is connected as in FIG. 6a, except that it is connected to the WR CLK line 34 instead of line 152. However,
The Q output of each stage 32 i is connected to the D input of a transparent latch 154 i , respectively. Each transparent latch 154 i has a WR CLK line 34
And an output connected to one input of each NOR gate 156 i . Each NOR gate 156 i
WR CLK is added to the other input. The output of each NOR gate 156 i becomes a write signal line 116 connected to a respective memory register 50 i .

動作時には、負移行遷移164(第7b図)によってリン
グカウンタが書込ビットを段321から322に移し、ポイン
タをロケーション1から2へとインクレメントする。Q1
が低に、Q2が高になり、これらの値が透明ラッチ1541
1542の各入力に与えられる。前回の正移行遷移がQ1の高
ビットを透明ラッチ1541内にラッチさせているので、今
回はその反転が出力ライン▲▼に現われる。NOR
ゲート1561によって負移行遷移164が受信されると、正
の書込アドレスビットがメモリレジスタ501に通過され
る。つまり、負移行遷移164がアドレス発生器を第1ロ
ケーションから次のロケーションへインクレメントする
と同時に、第1メモリレジスタへのアドレシングを行
う。
In operation, a negative transition transition 164 (FIG. 7b) causes the ring counter to move the write bit from stage 32 1 to 32 2 and increment the pointer from location 1 to 2. Q1
Is low, Q2 is high, and these values are transparent latches 154 1 ,
154 2 given to each input. Since positive-going transition of the last time is made to latch the high bit of Q1 in the transparent latch 154 1, this appears at its inverting output line ▲ ▼. NOR
When the negative transition transition 164 is received by gate 156 1 , the positive write address bit is passed to memory register 50 1 . That is, the negative transition transition 164 increments the address generator from the first location to the next location while simultaneously addressing the first memory register.

WR CLKの次の正移行遷移が166で示してある。これがQ
1(今は0)を透明ラッチ1541内に、Q2(今は1)を透
明ラッチ1542内にそれぞれクロック入力される。これに
応じ、▲▼が高に、▲▼が低になる。負の
移行遷移がNORゲート1562によって受信されると、“1"
アドレスビットがメモリレジスタ502に通過される。そ
の後、最終的に書込リングカウンタが段321へインクレ
メントされると同時に、段32N及びラッチ154Nからの高
アドレスビットがメモリレジスタ50Nに通過されるま
で、上記のサイクルが繰り返す。
The next positive transition of WR CLK is shown at 166. This is Q
1 (now 0) a transparent latch 154 in 1, Q2 (now 1) are respectively the clock input of the transparent latch 154 in 2. In response, ▲ ▼ becomes high and ▲ ▼ becomes low. When a negative transition transition is received by the NOR gate 156 2, "1"
Address bits are passed to the memory register 50 2. Then, finally at the same time writing the ring counter is incremented to the stage 32 1, to a high address bits from stages 32 N and latch 154 N is passed to the memory registers 50 N, the above cycle is repeated.

本発明は、メモリの書込時間を2つの方法で節約す
る。第1に、アドレス発生器のインクレメント及びメモ
リの書込動作が共にWR CLKの低側で行われる。このた
め、T2とT3が同時に生じ、Fmaxを決めるのに後者だけを
考慮すればよい。後者とは勿論T3で、約20nsである。第
2に、T3はかなり長い期間で、NORゲート間の競合は起
こり得ない。例えば第7b図を参照すると、WR CLKの負移
行遷移168が始まる前に、▲▼と▲▼はず
っと長くそれぞれの新たな状態にある。従って、ガード
バンドは必要ない。WR CLKの正パルスは、段32iが前の
インクレメントから回復し、且つ望ましくない進行状態
が回路内の他の箇所で生じるのを防ぐのに充分な長さだ
けあればよい。このようなパルスは、約4〜5nsの小さ
い長さとし得る。好ましい実施例において、書込周波数
つまりFmaxは1/(20+5)ns=40MHzまで可能である。
従って、FIFOメモリ全体の速度が大巾に向上する。
The present invention saves memory write time in two ways. First, both the address generator increment and the memory write operations are performed on the low side of WR CLK. Therefore, T 2 and T 3 occur at the same time, and only the latter need be considered to determine Fmax. The latter, of course, is T 3 , which is about 20 ns. To a 2, T 3 is a fairly long period, competition between NOR gate can not occur. For example, referring to FIG. 7b, ▲ ▼ and ▲ ▼ are in their respective new states much longer before the negative transition transition 168 of WR CLK begins. Therefore, no guard band is needed. The positive pulse on WR CLK need only be long enough to prevent stage 32 i from recovering from a previous increment and causing undesired progress to occur elsewhere in the circuit. Such pulses can be as small as about 4-5 ns. In the preferred embodiment, the write frequency or Fmax is possible up to 1 / (20 + 5) ns = 40 MHz.
Therefore, the speed of the entire FIFO memory is greatly improved.

第4図に戻ると、メモリレジスタ50iの各ビット記憶
領域118は、それぞれの読取及び書込入力における論理
高のレベルがメモリワードレジスタ50i内の全ビットの
対応した読取または書込を行うようなクロス結合ラッチ
である。メモリワードレジスタ501〜50Nの各ビットセル
118を形成するクロス結合ラッチは、通常の設計であ
る。
Returning to FIG. 4, each bit storage area 118 of memory register 50 i has a logic high level at its respective read and write inputs that causes a corresponding read or write of all bits in memory word register 50 i . Such a cross-coupled latch. Memory word register 50 1 to 50 N each bit cell
The cross-coupled latch forming 118 is of conventional design.

前述したように、リセットライン28に加わる信号が、
段361と321のQ出力を論理高の状態にセットし、且つ他
の段をそれらの出力状態が論理低となるようにリセット
することによって、読取及び書込アドレスリングカウン
タ36、32を初期化する。各メモリワードレジスタ50のビ
ットセルは、メモリ読取信号ライン120が論理高の状態
にあるとき、読取動作が実行されるように構成される。
書込動作はライン116上に高状態が存在する間に実行さ
れる。
As mentioned above, the signal applied to the reset line 28 is
By setting the Q outputs of stages 36 1 and 32 1 to a logic high state and resetting the other stages so that their output states are a logic low, the read and write address ring counters 36, 32 are reset. initialize. The bit cell of each memory word register 50 is configured to perform a read operation when the memory read signal line 120 is in a logic high state.
The write operation is performed while there is a high state on line 116.

本発明では、リセット28によってリセットされた後、
メモリ48は空があるいは信頼できないデータを有するも
のと見なせる。空メモリの読取は無効なデータをもたら
すので、書込動作を介在しないその後の読取は禁止され
るべきである。比較器のNANDゲート40b1は読取及び書込
アドレスリングカウンタ段361、321の出力に接続された
入力を有し、従って初期化後NANDゲート40b1の出力は論
理低である。この論理低がインバータ122の入力に導か
れ、さらにインバータ122が最後のR/W動作フリップフロ
ップ70の両ANDゲート94、96の入力に論理高を導く。前
述したように、これで最初の読取コマンドが処理される
のを防止する。
In the present invention, after being reset by the reset 28,
Memory 48 can be considered empty or having unreliable data. Subsequent reads that do not intervene a write operation should be prohibited because reading empty memory will result in invalid data. The NAND gate 40 b1 of the comparator has an input connected to the output of the read and write address ring counter stages 36 1 , 32 1 , so that after initialization the output of NAND gate 40 b1 is a logic low. This logic low is directed to the input of inverter 122, which in turn drives a logic high to the inputs of both AND gates 94, 96 of the last R / W operation flip-flop 70. As mentioned above, this prevents the first read command from being processed.

リセット28の間、最後のR/W動作フリップフロップ70
のQ出力は論理低にセットされているので、この論理低
がANDゲート96を介して導かれ、書込エネーブルラッチ6
6のD入力に現われる。ラッチ66のE入力に負移行遷移
が加わると、D入力の低論理が出力の論理高として現
われ、最初の書込コマンドを書込信号発生器60を通じて
処理可能とする。こうして発生された書込クロックパル
スがライン34上に現われ、最後のR/W動作フリップフロ
ップ70のQ出力を論理高にセットすると共に、書込アド
レス発生器32へのクロック入力を行う。各書込アドレス
リングカウンタ段のQ出力は隣りの高次段のD入力に接
続されているので、書込アドレスリングカウンタ321
最初にセットされた論理高が、ライン34上の連続するWR
CLKパルスの負移行遷移に応じて各レジスタ段の位置を
通じてシフトさせる。このため、書込コマンドの発生
で、書込アドレスリングカウンタ段321のQ1出力に最初
にあった論理高がカウンタ段322のQ2出力へシフトされ
ると同時にメモリワードロケーション501に書込がなさ
れる。
Last R / W flip-flop 70 during reset 28
Since the Q output of is set to a logic low, this logic low is routed through the AND gate 96 and the write enable latch 6
Appears on D input of 6. A negative going transition on the E input of latch 66 causes a low logic on the D input to appear as a logic high on the output, allowing the first write command to be processed through write signal generator 60. The write clock pulse thus generated appears on line 34, setting the Q output of the final R / W operation flip-flop 70 to a logic high and clocking the write address generator 32. The Q output of each write address ring counter stage is connected to the D input of the adjacent higher order stage so that the logic high initially set in the write address ring counter 32 1 will result in consecutive WR on line 34.
Shift through each register stage position in response to a negative going transition of the CLK pulse. This causes the write command to be written to memory word location 50 1 at the same time that the logical high originally at the Q1 output of write address ring counter stage 32 1 is shifted to the Q2 output of counter stage 32 2. Is done.

その後の書込及び読取動作は、各比較器のNANDゲート
40b1〜40bNがその一方の入力に論理低を有し、インバー
タ122に論理高のレベルを与えることにより、その順序
で可能となる。つまり、インバータ122の出力がライン4
6上の論理低を両ANDゲート94、96に与え、更に書込及び
読取エネーブルラッチ66、90のD入力に論理低を与え
る。この結果、両ラッチ66、90の出力が論理高になっ
て、更なる書込及び読取動作を可能とする。
Subsequent write and read operations are performed by the NAND gate of each comparator.
40 b1 to 40 bN have a logic low at one of their inputs, which is possible in that order by providing a logic high level to inverter 122. That is, the output of the inverter 122 is line 4
A logic low on 6 is applied to both AND gates 94, 96, and a logic low is applied to the D inputs of the write and read enable latches 66, 90. As a result, the outputs of both latches 66, 90 are at a logic high, allowing further write and read operations.

事実、書込アドレスリングカウンタ32が読取アドレス
リングカウンタ36より先行している限り、その後の書込
及び読取動作が発生可能で、同時に実行できる。同じメ
モリワードレジスタが読取及び書込両アドレスリングカ
ウンタ36、32によって指されてなければ、書込回路は読
取回路と全体的に独立しているので、同時の読取及び書
込コマンドをFIFOメモリバッファ10で処理可能である。
但し、このような状態が存在するときは、最後のR/W動
作フリップフロップ70が両ANDゲート94、96より優先
し、読取及び書込動作の独立性が変更される。この点
は、同じメモリワードレジスタが読取及び書込アドレス
発生器36、32によってアドレスされると、インバータ12
2の出力が高になり、最後のR/W動作フリップフロップ70
のまたはQ出力における低が、読取信号発生器80また
は書込信号発生器60のどちらがそれぞれの透明ラッチ9
0、66を介してエネーブルされるかを指示することから
明らかであろう。
In fact, as long as the write address ring counter 32 precedes the read address ring counter 36, subsequent write and read operations can occur and can be performed simultaneously. Unless the same memory word register is pointed to by both read and write address ring counters 36, 32, the write circuit is totally independent of the read circuit, so that simultaneous read and write commands can be issued to the FIFO memory buffer. It can be processed at 10.
However, when such a state exists, the last R / W operation flip-flop 70 has priority over both AND gates 94 and 96, and the independence of read and write operations is changed. This is because when the same memory word register is addressed by the read and write address generators 36, 32, the inverter 12
2 output goes high, the last R / W operation flip-flop 70
Of either the read signal generator 80 or the write signal generator 60, respectively.
It will be clear from indicating what is enabled via 0,66.

従って、読取または書込どちらのコマンドが最後の動
作だったかを判断する最後のR/W動作フリップフロップ7
0が、読取及び書込両アドレスリングカウンタ36、32が
同じメモリワードを指しているときを検出する比較器40
と協働し、メモリが空のときメモリワードが読み取られ
ず、満杯のときは書き込まれないことを保証する点が理
解できよう。また、最後のR/W動作フリップフロップ70
と連動して、読取及び書込コマンドの処理が空メモリの
読取あるいは満杯メモリの書込をもたらす場合にこれら
コマンドの確実なロックアウトを与える読取及び書込信
号発生器80、60が動作する。
Therefore, the last R / W operation flip-flop 7 to determine whether the read or write command was the last operation.
Comparator 40 that detects when 0 is both read and write address ring counters 36, 32 pointing to the same memory word.
It will be appreciated that in cooperation with, it ensures that memory words are not read when the memory is empty and not written when the memory is full. Also, the last R / W operation flip-flop 70
In conjunction with this, read and write signal generators 80, 60 are provided which provide a secure lockout of the read and write commands when the processing of the commands results in an empty memory read or a full memory write.

比較器部40によって検出されたメモリ48の空または満
杯の状態は、それぞれ出力26(空;EMPTY)と20(満杯;F
ULL)から他の機器に信号発生される。メモリ48の空/
満杯状態を信号発生する回路は、次のように接続されて
いる。
The empty or full states of memory 48 detected by comparator section 40 are output 26 (empty; EMPTY) and 20 (full; F, respectively).
ULL) to other equipment. Empty of memory 48 /
The circuit for generating the full state signal is connected as follows.

NANDゲート40a1が、読取アドレスリングカウンタ段36
1を高次の書込アドレスリングカウンタ段321と比較す
る。NANDゲート40a2が読取カウンタ段362を高次の書込
カウンタ段323と比較する、等々。こうして、NANDゲー
ト40aが読取アドレスリングカウンタ段36をそれぞれ高
次の書込アドレスリングカウンタ段32と比較する。
NAND gate 40 a1 has read address ring counter stage 36
Compare 1 to the higher order write address ring counter stage 32 1 . NAND gate 40 a2 compares read counter stage 36 2 with higher order write counter stage 32 3, and so on. Thus, the address ring counter stage 36 NAND gate 40 a is read respectively compared to the high-order write address ring counter stage 32.

NANDゲート40c1が書込アドレスリングカウンタ段321
の出力を、高次の読取アドレスリングカウンタ段362
比較する。NANDゲート40c2が書込段322を高次の読取段3
63等と比較する。つまり、NANDゲート40cが書込アドレ
スリングカウンタ段32をそれぞれ高次の読取アドレスリ
ングカウンタ段36と比較する。
NAND gate 40 c1 is the write address ring counter stage 32 1
Outputs, compares higher the reading address ring counter stage 36 2. NAND gate 40 c2 drives write stage 32 2 to higher read stage 3
6 Compare with 3 mag. That, NAND gate 40 c is compared with the read address ring counter stage 36 of the high-order write address ring counter stage 32, respectively.

各NANDゲート40aの出力は、ANDゲート41の一入力は入
力へ共通に接続されている。ANDゲート41の他入力はリ
セット(RE SET)信号ラインに接続してある。ANDゲー
ト41の出力はフリップフロップ136のセット入力に接続
されている。同じく、各NANDゲート40cの出力はフリッ
プフロップ136のリセット入力へ共通に接続されてい
る。
The output of each NAND gate 40 a is one input of AND gate 41 is connected to the common to the input. The other input of the AND gate 41 is connected to the reset (RE SET) signal line. The output of the AND gate 41 is connected to the set input of the flip-flop 136. Similarly, the output of each NAND gate 40 c is connected to the common to the reset input of the flip-flop 136.

インバータ122の出力はNANDゲート138、140の一入力
に接続されている。フリップフロップ136のQ及び出
力が、NANDゲート138、140の他入力にそれぞれ接続され
ている。さらに、NANDゲート138の出力26がメモリ48の
空(EMPTY)状態を示す信号を発生し、NANDゲート140の
出力20が満杯(FULL)状態を示す信号を発生する。
The output of the inverter 122 is connected to one input of the NAND gates 138 and 140. The Q and output of the flip-flop 136 are connected to the other inputs of the NAND gates 138 and 140, respectively. Further, the output 26 of NAND gate 138 produces a signal indicating the empty state of memory 48 and the output 20 of NAND gate 140 produces a signal indicating the full state.

動作時、比較器部40のNANDゲート40a、40bがメモリの
ほゞ空またはほゞ満杯の状態をそれぞれ検出すると、フ
リップフロップ136がそれに応じてリセットまたはセッ
トされる。詳述すれば、1つのメモリワードロケーショ
ンだけが書込可能な状態で残っているとき、NANDゲート
40cが動作してフリップフロップ136をリセットする。逆
に、1つのメモリワードロケーションだけが読取可能な
状態で残っているとき、NANDゲート40aが動作してフリ
ップフロップ136をセットする。さらに、指示された最
後のメモリワードロケーションが実際に書き込まれるか
または読み取られると、NANDゲート40bが動作して両NAN
Dゲート138、140をエネーブルする。両NANDゲート138、
140のエネーブルにより、フリップフロップ136は満杯
(FULL)ライン20または空(EMPTY)ライン26を介して
満杯か空かの指示を外部の装置へ出力可能とする。
In operation, NAND gates 40 a, 40 b of the comparator 40 is detects respective states of Ho Isuzu empty or Ho Isuzu full memory, the flip-flop 136 is reset or set accordingly. Specifically, when only one memory word location remains writable, the NAND gate
40 c operates to reset flip-flop 136. Conversely, when only one memory word location remains in a state capable of reading, NAND gate 40 a sets the flip-flop 136 operates. Furthermore, when the last memory word locations that have been instructed is actually being or read written, both NAND gate 40 b is operated NAN
Enable D gates 138 and 140. Both NAND gates 138,
The enable of 140 allows the flip-flop 136 to output a full or empty indication to an external device via the FULL line 20 or the EMPTY line 26.

上記の一例として、読取アドレスリングカウンタ段36
2の出力が論理1で、従ってメモリワードロケーション5
02を指し、また同様に書込アドレスリングカウンタ段32
3がメモリワードロケーション503を指しているものとす
る。これは、メモリワードロケーション502が書き込ま
れた最後のメモリワードで、次に読み取られるべきもの
である状態、つまりほゞ空の状態を表わす。従って、NA
NDゲート40a2の両入力が共に高となり、その出力が低を
ANDゲート41に導き、フリップフロップ136をセットす
る。この結果、メモリワードロケーション503が読み取
られると、NANDゲート40b3が両段363、323間の等しいこ
とを検出し、NANDゲート138をエネーブルして出力26上
に空(EMPTY)状態を信号発性する。
As an example of the above, the read address ring counter stage 36
The output of 2 is a logic 1, thus memory word location 5
0 2 and likewise write address ring counter stage 32
3 it is assumed that points to the memory word locations 50 3. This represents the state where the memory word location 50 2 is the last memory word written and is to be read next, i.e. almost empty. Therefore, NA
Both inputs of ND gate 40 a2 go high and its output goes low.
It leads to the AND gate 41 and sets the flip-flop 136. As a result, when memory word location 50 3 is read, it detects that NAND gate 40 b3 is equal between both stages 36 3 and 32 3 and enables NAND gate 138 to put an empty (EMPTY) state on output 26. Signal.

メモリが満杯状態の例に関して、書込アドレスリング
カウンタ段322の出力が論理1で、従ってメモリワード
ロケーション502を指し、また同様に読取アドレスリン
グカウンタ段363がメモリワードロケーション503を指し
ているものとする。これは、メモリワードロケーション
502が読み取られた最後のメモリワードで、次に書き込
まれるべきものである状態、つまりほゞ満杯の状態を表
わす。従って、NANDゲート40c2の両入力が共に高とな
り、その出力が低をフリップフロップ136のリセット入
力に導く。そこでフリップフロップ136がリセットさ
れ、満杯の状態を予知してNANDゲート140の一入力に論
理高を設定する。実際に、次の書込動作が生じ、書込及
び読取段363、323が共にメモリワードロケーション503
を指すと、NANDゲート40b3がNANDゲート140をエネーブ
ルし、論理低が出力20上に満杯(FULL)状態を信号発生
する。
For the memory full example, the output of the write address ring counter stage 32 2 is a logic 1 and thus points to the memory word location 50 2 , and similarly the read address ring counter stage 36 3 points to the memory word location 50 3 . It is assumed that This is the memory word location
50 2 the last memory word read is then those are to be written state, that ho Isuzu represent full state. Therefore, both inputs of NAND gate 40 c2 are both high and its output leads low to the reset input of flip-flop 136. The flip-flop 136 is then reset, anticipating a full condition and setting a logic high on one input of the NAND gate 140. Indeed, occurs following a write operation, write and read stage 36 3, 32 3 are memory word locations 50 3 both
, NAND gate 40 b3 enables NAND gate 140 and a logic low signals a FULL condition on output 20.

(発明の効果) 以上から、明確な空または満杯状態を含むゼロ通過時
非同期式FIFOバッファメモリが提供される。メモリワー
ドが書き込まれるかまたは読み取られたときを比較器が
検出する一方、最後のR/W動作フリップフロップが、最
後のメモリ動作が読取動作または書込動作どちらであっ
たかの判断を維持する。読取信号発生器及び書込信号発
生器が、各入力読取コマンド及び書込コマンドの前縁遷
移に応答して、内部読取及び書込パルスを発生する。読
取信号発生器は比較器部と最後のR/W動作フリップフロ
ップとにも応答し、読取及び書込両アドレスリングカウ
ンタが同じメモリワードを指し、且つ最後の動作がメモ
リ読取動作であった場合に読取信号の内部発生を防止す
る。同じく、書込信号発生器が比較器部及び最後のR/W
動作フリップフロップと協働し、両カウンタが同じメモ
リワードを指し且つ最後の動作が書込動作であった場合
に、書込信号の発生を防止する。
(Advantages of the Invention) From the above, an asynchronous FIFO buffer memory at the time of zero passage including a clear empty or full state is provided. While the comparator detects when a memory word has been written or read, the last R / W operational flip-flop maintains a determination of whether the last memory operation was a read or write operation. Read signal generators and write signal generators generate internal read and write pulses in response to the leading edge transitions of each input read and write command. The read signal generator also responds to the comparator section and the last R / W operation flip-flop, both read and write address ring counters point to the same memory word, and the last operation was a memory read operation. In addition, the internal generation of read signals is prevented. Similarly, the write signal generator is the comparator section and the last R / W.
In cooperation with the operation flip-flop, it prevents the generation of a write signal if both counters point to the same memory word and the last operation was a write operation.

こゝに開示した改良書込回路によれば、メモリの書込
動作とアドレス発生器のインクレメント動作が共に、書
込クロックパルスの負移行遷移によって行われる。本発
明の書込方法及び回路は、アドレス競合の可能性を取り
除き、FIFOメモリの最大動作周波数を高める点で有利で
ある。
According to the improved write circuit disclosed herein, both the memory write operation and the address generator increment operation are performed by the negative transition of the write clock pulse. The writing method and circuit of the present invention are advantageous in that the possibility of address conflict is eliminated and the maximum operating frequency of the FIFO memory is increased.

本発明の方法及び装置の好ましい実施例を特定の論理
構造に関連して開示したが、特許請求の範囲の項に限定
された発明の範囲を逸脱しなければ、エンジニアリング
上の選択の問題として詳細な点で多くの変更が可能であ
る。また、こゝに開示した各種の有利な特徴を全て1つ
の複合FIFOメモリバッファに含める必要はなく、個々の
利点を実現するだけでもよい。このような有利な特徴
は、以下の各項の一部にそれぞれ記す。
While the preferred embodiment of the method and apparatus of the present invention has been disclosed in relation to a particular logical structure, details of the method and apparatus of choice may be selected as a matter of engineering choice without departing from the scope of the invention as defined in the claims section. Many changes are possible. Also, it is not necessary to include all of the various advantageous features disclosed herein in a single composite FIFO memory buffer, but only to achieve the individual advantages. Such advantageous features are described in some of the following sections.

以上の記載に関連して、以下の各項を開示する。 The following items are disclosed in relation to the above description.

(1) 第1及び第2遷移を含む書込パルスを用いて複
数のメモリレジスタを逐次アドレスする方法において: 前記書込パルスの第1遷移に応答して書込アドレス発
生器をインクレメントするステップ; 同時に、前記書込パルスの第1繊維に応答して、先に
ストアされたアドレス信号をメモリレジスタに加えるス
テップ;及び 前記書込パルスの第2遷移に応答して書込アドレス発
生器から次のアドレス信号をストアするステップ;を備
えた方法。
(1) In a method of sequentially addressing a plurality of memory registers using a write pulse including first and second transitions: incrementing a write address generator in response to the first transition of the write pulse. At the same time, in response to a first fiber of the write pulse, applying a previously stored address signal to a memory register; and in response to a second transition of the write pulse from a write address generator. Storing the address signal of the.

(2) 前記書込パルスの第2遷移に応答してアドレス
信号をアドレスレジスタに加えるのを禁止するステップ
を更に含む第1項の方法。
(2) The method of claim 1, further comprising the step of inhibiting the application of an address signal to the address register in response to the second transition of the write pulse.

(3) 前記書込パルスの第1及び第2遷移が反対の極
性を有する第1項の方法。
(3) The method of paragraph 1, wherein the first and second transitions of the write pulse have opposite polarities.

(4) 前記書込アドレス発生器が第1ロケーションと
第2ロケーションを含む複数のロケーションを備え、前
記書込アドレス発生器をインクレメントするステップ
が: 前記書込アドレス発生器にクロック入力を与え、論理
“1"ビットを第1ロケーションから第2ロケーションに
シフトするステップから成る第1項の方法。
(4) The write address generator comprises a plurality of locations including a first location and a second location, and the step of incrementing the write address generator comprises: providing a clock input to the write address generator, The method of claim 1 comprising the step of shifting a logical "1" bit from a first location to a second location.

(5) 前記ストアされたアドレス信号を加えるステッ
プが: 先のクロックパルスの第2遷移に応答して、先にスト
アされたアドレス信号の反転をメモリレジスタに接続さ
れた出力を有するNORゲートの第1入力に加えるステッ
プ;及び 第1遷移をNORゲートの第2入力に加え、前記アドレ
ス信号をメモリレジスタに転送するステップ;から成る
方法。
(5) The step of applying the stored address signal comprises: responsive to a second transition of the previous clock pulse, inversion of the previously stored address signal of a NOR gate having an output connected to a memory register. Applying a first transition to a second input of a NOR gate and transferring the address signal to a memory register.

(6) 複数のメモリレジスタを逐次書き込むと同時
に、複数の書込アドレスビットをそれぞれのラッチに接
続された各ロケーション内にストアするアドレス発生器
をインクレメントする方法において: クロック信号の正移行遷移縁に応答してアドレスビッ
トを第1ラッチ内にストアするステップ; 前記クロック信号の負移行遷移縁に応答してアドレス
ビットを第1ロケーションから第2ロケーションにイン
クリメントうるステップ; 前記クロック信号の負移行遷移縁に応答して先にスト
アされたアドレスビットを第1ラッチからメモリレジス
タに書き込むステップ; 前記クロック信号の次の正移行遷移縁に応答してアド
レスビットを第2ラッチ内にストアするステップ; 前記クロック信号の次の正移行遷移縁に応答して、第
1ラッチ内にストアされたアドレスビットの書込を中止
するステップ;及び 以後のロケーション、ラッチ及びメモリレジスタにつ
いて上記のステップを繰り返すステップ;を備えた方
法。
(6) In a method of incrementing an address generator that sequentially writes multiple memory registers while simultaneously storing multiple write address bits in each location connected to each latch: a positive transition edge of a clock signal. Storing an address bit in a first latch in response to a negative transition transition edge of the clock signal from a first location to a second location in response to a negative transition transition edge of the clock signal; Writing a previously stored address bit from a first latch to a memory register in response to an edge; storing an address bit in a second latch in response to a next positive transition transition edge of the clock signal; In the first latch in response to the next positive transition edge of the clock signal Step stops the writing store address bits; method provided with; and subsequent locations, latch and repeating the above steps for the memory registers.

(7) 前記アドレス発生器が第1及び最後のロケーシ
ョンを有するリングカウンタであり: 正移行遷移縁に応答してアドレスビットを最後のラッ
チ内にストアするステップ; 負移行遷移縁に応答してアドレスビットを最後のロケ
ーションから第1ロケーションにインクレメントするス
テップ;及び 負移行遷移縁に応答して先にストアされたアドレスビ
ットを第1ラッチからメモリレジスタに書き込むステッ
プ;を含む第6項の方法。
(7) The address generator is a ring counter having first and last locations: storing address bits in the last latch in response to a positive transition transition edge; address in response to a negative transition transition edge. Incrementing a bit from the last location to a first location; and writing a previously stored address bit from a first latch to a memory register in response to a negative transition transition edge.

(8) 複数の書込コマンドパルスの前縁から書込クロ
ックパルスを発生するステップ;を更に含む第6項の方
法。
(8) generating the write clock pulse from the leading edge of a plurality of write command pulses;

(9) 前記各ラッチが透明ラッチであり: クロック信号の正移行遷移縁に応答してアドレスビッ
トを透明ラッチ内にロードするステップ; 前記クロック信号の続く負移行遷移縁に応答して前記
アドレスビットの反転を前記透明ラッチからNORゲート
に導くステップ;及び 前記クロック信号の負移行遷移縁に応答して前記アド
レスビットをNORゲートの出力からメモリレジスタに書
き込むステップ;を更に含む第6項の方法。
(9) each said latch is a transparent latch: loading an address bit into a transparent latch in response to a positive transition transition edge of a clock signal; said address bit in response to a subsequent negative transition transition edge of said clock signal 7. The method of claim 6 further comprising: inverting the inversion of the transparent latch from the transparent latch to a NOR gate; and writing the address bit from an output of the NOR gate to a memory register in response to a negative transition edge of the clock signal.

(10) 先入れ先出しメモリ内の複数のメモリレジスタ
にデータを書き込むのと同時に、前記メモリの書込アド
レスシストレジスタの第1段から該書込アドレスシフト
レジスタの次の段へクロック入力を与える方法におい
て: 連続する書込コマンドの前縁に応答して、各々所定の
巾と反対極性の第1及び第2遷移とを有する複数のクロ
ックパルスを形成するステップ; 前記第2遷移に応答して、アドレスビットを第1段に
接続された透明ラッチ内にストアするステップ; 後続の第1遷移に応答して、アドレスビットをメモリ
レジスタに導くステップ;及び 前記第1遷移に応答して、第1段から次の段へとシフ
トレジスタにクロック入力を与えるステップ;を備えた
方法。
(10) In a method of writing data to a plurality of memory registers in a first-in first-out memory and simultaneously applying a clock input from the first stage of the write address shift register of the memory to the next stage of the write address shift register: Forming a plurality of clock pulses each having a predetermined width and first and second transitions of opposite polarities in response to a leading edge of a successive write command; address bits in response to the second transition. In a transparent latch connected to the first stage; directing address bits to a memory register in response to a subsequent first transition; and in response to the first transition from the first stage to the next. Applying a clock input to the shift register to the stages of.

(11) 前記第1遷移が負移行遷移で、前記第2遷移が
正移行遷移である第10項の方法。
(11) The method according to item 10, wherein the first transition is a negative transition and the second transition is a positive transition.

(12) シフトレジスタを第1遷移間で回復可能とする
所定の巾を選択するステップ;及び 前記先入れ先出しメモリの最大伝送周波数を、前記所
定の巾とメモリレジスタをアドレスするのに必要な時間
とから成る量の逆数に等しいように選択するステップ;
を更に含む第10項の方法。
(12) selecting a predetermined width that makes the shift register recoverable between the first transitions; and determining the maximum transmission frequency of the first-in first-out memory from the predetermined width and the time required to address the memory register. Choosing to be equal to the reciprocal of
The method of paragraph 10, further comprising:

(13) 複数のメモリレジスタを逐次アドレスする装置
において: クロックパルスを伝送するように動作可能なクロック
信号源で、各クロックパルスが第1及び第2遷移を有す
る; 前記クロック信号源に接続され、クロックパルスの第
1遷移に応答して、第1のアドレスロケーションから次
のアドレスロケーションヘインクレメントするように動
作可能なアドレス発生器; 前記アドレス発生器とクロック発生源とに接続された
記憶手段で、該記憶手段が先行クロックパルスの前記第
2遷移に応答してアドレス信号をストアするように動作
可能である;及び 前記アドレス信号が、前記第1遷移に応答して前記記
憶手段からメモリレジスタに加えられる;を備えた装
置。
(13) In a device for sequentially addressing a plurality of memory registers: a clock signal source operable to transmit clock pulses, each clock pulse having first and second transitions; connected to said clock signal source, An address generator operable to increment from a first address location to a next address location in response to a first transition of a clock pulse; storage means coupled to the address generator and the clock source, The storage means is operable to store an address signal in response to the second transition of the preceding clock pulse; and the address signal is added from the storage means to a memory register in response to the first transition. Device.

(14) 前記記憶手段の出力に接続されたゲートを備
え、該ゲートが前記第1遷移に応答して前記アドレス信
号をメモリレジスタへ伝送するように動作可能である第
13項の装置。
(14) A gate is connected to the output of the storage means, and the gate is operable to transmit the address signal to a memory register in response to the first transition.
Device of paragraph 13.

(15) 前記ゲートが、前記第1遷移の後に生じる次の
第2遷移に応答して、前記アドレス信号の伝送を中止す
るように動作可能である第14項の装置。
(15) The apparatus of paragraph 14, wherein the gate is operable to discontinue transmission of the address signal in response to a next second transition occurring after the first transition.

(16) 前記第1遷移と第2遷移が反対の極性を有する
第13項の装置。
(16) The apparatus according to item 13, wherein the first transition and the second transition have opposite polarities.

(17) 前記第2遷移と続く第1遷移との間の間隔が、
アドレスのインクレメント中にアドレス発生器の回復を
可能とするように選定され、前記クロック信号源が書込
コマンドパルスの前縁遷移に応答して前記クロックパル
スを発生し、前記2つの前縁遷移間の最小間隔が前記ク
ロックパルスと前記アドレス発生器が回復するのに必要
な時間との和に等しい第16項の装置。
(17) The interval between the second transition and the subsequent first transition is
Selected to enable recovery of the address generator during address incrementation, the clock signal source generating the clock pulse in response to a leading edge transition of a write command pulse, and the two leading edge transitions. The apparatus of paragraph 16 wherein the minimum interval between is equal to the clock pulse plus the time required for the address generator to recover.

(18) 前記第1遷移が負移行遷移で、前記第2遷移が
正移行遷移である第16項の装置。
(18) The apparatus according to item 16, wherein the first transition is a negative transition and the second transition is a positive transition.

(19) 前記第1アドレスロケーション、前記次のアド
レスロケーションおよび最後のアドレスロケーションを
含む前記アドレス発生器内の複数のアドレスロケーショ
ン;を更に備え、 前記アドレス発生器が、前記第1アドレスロケーショ
から前記アドレスロケーションを通じて前記最後のアド
レスロケーションまで連続的にインクレメントするよう
に動作可能であり、その後前記アドレス発生器が前記第
1アドレスロケーションへ戻るようにインクレメントす
る;第13項の装置。
(19) a plurality of address locations in the address generator including the first address location, the next address location and the last address location; wherein the address generator includes the address from the first address location. 14. The apparatus of claim 13, operable to sequentially increment through locations to the last address location, after which the address generator increments back to the first address location.

(20) 前記記憶手段がそれぞれのアドレスロケーショ
ンに色々接続された複数の透明ラッチから成る第13項の
装置。
(20) The apparatus of paragraph 13, wherein said storage means comprises a plurality of transparent latches variously connected to respective address locations.

(21) 前記アドレス発生器がその1つのロケーション
に一極性の第1ビットを有するリングカウンタから成
り、残りのロケーションが反対極性の第2ビットを含
み;更に 現像アドレス発生器が前記第1遷移に応答して、前記
第1ビットを隣接位置へシフトするように動作可能であ
る;第13項の装置。
(21) The address generator comprises a ring counter having a first bit of one polarity at one of its locations and the remaining location contains a second bit of opposite polarity; and the development address generator is at the first transition. In response, operable to shift the first bit to an adjacent position; the apparatus of paragraph 13.

(22) 現像第1ゲートを含む複数のゲートを更に備
え、該ゲートが各々前記記憶手段、前記クロック信号源
及び各々のメモリレジスタに接続され、前記ゲートの選
択された1つが、前記第2遷移に応答して前記アドレス
信号の反転を前記記憶手段から受け取り、前記各ゲート
が第1遷移に応答して前記アドレス信号を各々のメモリ
レジスタに伝送するように動作可能である第13項の装
置。
(22) A plurality of gates including a developing first gate are further provided, and the gates are respectively connected to the storage means, the clock signal source and each memory register, and the selected one of the gates is the second transition. 14. The apparatus of paragraph 13 operable to receive an inversion of the address signal from the storage means in response to, and each gate to transmit the address signal to a respective memory register in response to a first transition.

(23) メモリ動作に応じてデータを書き込む複数の相
互に接続されたメモリレジスタを有するシフトレジスタ
メモリシステムにおいて: 各々第1遷移と、該第1遷移と反対の第2遷移とを有
する複数の書込クロックパルスを生じるように動作可能
な書込クロック; 前記クロックに接続され且つ複数のアドレスロケーシ
ョンを有する書込アドレス発生器で、該書込アドレス発
生器が前記第1遷移に応答して、第1アドレスロケーシ
ョンから次のアドレスロケーションにインクレメントす
る; 前記クロックに接続され且つ前記書込アドレス発生器
内の各々のロケーションに対応した複数の透明ラッチ
で、該各ラッチが第2遷移に応答して書込信号をそれぞ
れのアドレスロケーションからストアするように動作可
能である;及び 前記クロック、それぞれのラッチ及びそれぞれのメモ
リレジスタに各々接続された複数のゲートで、該各ゲー
トが第1遷移に応答して書込信号の前記メモリレジスタ
への伝送を可能とする;を備えたシフトレジスタメモリ
システム。
(23) In a shift register memory system having a plurality of interconnected memory registers for writing data in response to a memory operation: a plurality of writes each having a first transition and a second transition opposite the first transition. A write clock operable to generate an embedded clock pulse; a write address generator connected to the clock and having a plurality of address locations, the write address generator being responsive to the first transition; Incrementing from one address location to the next address location; a plurality of transparent latches connected to the clock and corresponding to each location in the write address generator, each latch in response to a second transition. Operable to store a write signal from a respective address location; and said clock, A plurality of gates each connected to a respective latch and a respective memory register, each gate being capable of transmitting a write signal to said memory register in response to a first transition. Register memory system.

(21) 各クロックパルスが書込コマンドの前縁遷移に
応答して発生され、前記クロックパルスの巾が、アドレ
ス信号に応答してデータをメモリレジスタ内へ書き込む
のに必要な時間の量によって決まり、前記任意の2つの
前縁遷移間の最小間隔が前記クロックパルスとインクレ
メント間に前記アドレス発生器が回復するのに必要な時
間との和に等しい第23項の書込制御装置。
(21) Each clock pulse is generated in response to a leading edge transition of a write command, the width of said clock pulse being determined by the amount of time required to write data into the memory register in response to the address signal. 23. The write controller of claim 23, wherein the minimum interval between any two leading edge transitions is equal to the clock pulse plus the time required for the address generator to recover between increments.

(25) 前記第1遷移が負移行遷移で、前記第2遷移が
正移行遷移である第23項の書込制御装置。
(25) The write control device according to item 23, wherein the first transition is a negative transition and the second transition is a positive transition.

(26) 前記各メモリレジスタを逐次アドレスし該メモ
リレジスタからデータを読み取る読取アドレス発生器; 前記書込アドレス発生器のアドレスを前記読取アドレ
ス発生器のアドレスと比較し、これら両アドレスが等し
いことを判定する比較器; 前記メモリシステムの最新の読取または書込動作に関
する指示をストアする読取及び書込記憶手段;及び 前記読取及び書込アドレスが等しいことを前記比較器
が判定し、且つ最後のメモリ動作が前記メモリシステム
の所定の動作であったことの指示を前記読取及び書込記
憶手段が内部にストアしたときに、前記メモリレジスタ
のメモリ動作を防ぐ防止装置;を更に備えた第23項の書
込制御装置。
(26) Read address generator for sequentially addressing each of the memory registers and reading data from the memory register; comparing the address of the write address generator with the address of the read address generator, and confirming that these two addresses are equal. A comparator for determining; a read and write storage means for storing an instruction regarding the latest read or write operation of the memory system; and a comparator for determining that the read and write addresses are equal and a final memory 23. The device according to claim 23, further comprising: a prevention device for preventing a memory operation of the memory register when the read and write storage means stores therein an instruction that the operation is a predetermined operation of the memory system. Write control device.

(27) 前記書込アドレス発生器が前記書込クロックに
各々接続された複数のラッチから成り、第1アドレスビ
ットが前記ラッチの1つにストアされ、該第1アドレス
ビットと反対極性の第2アドレスビットが前記ラッチの
残りにストアされ、前記アドレス発生器が第1遷移に応
答して前記第1アドレスビットを隣のラッチにシフトす
るように動作可能である第23項の書込制御装置。
(27) The write address generator comprises a plurality of latches each connected to the write clock, a first address bit being stored in one of the latches, and a second address having a polarity opposite to the first address bit. 24. The write controller of claim 23, wherein address bits are stored in the rest of the latches and the address generator is responsive to a first transition to shift the first address bits into an adjacent latch.

(28) 前記各透明ラッチが入力と出力を有し、また該
各透明ラッチが第1遷移に応答して前記書込信号の反転
を前記出力に発生するように動作可能であり;更に 前記各ゲートがその一入力として前記書込信号を受信
するように動作可能なNORゲートから成り、該NORゲート
が第1遷移に応答しその出力として前記書込信号を発生
するように動作可能である;第23項の書込制御装置。
(28) Each transparent latch has an input and an output, and each transparent latch is operable to generate an inversion of the write signal at the output in response to a first transition; A gate comprises a NOR gate operable to receive the write signal as one input thereof, the NOR gate being operable to generate the write signal at its output in response to a first transition; 23. The writing control device according to item 23.

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

第1図は本発明を実施可能な環境のブロック図;第2図
は本発明のより詳細なブロック図で、FIFOメモリバッフ
ァの各種機能部分を示す図;第3図に入力書込コマンド
の前縁遷移から書込信号を発生するための単安定マルチ
バイブレータ回路を用いたW/R制御装置の一部の簡単な
概略図;第4図はFIFOメモリバッファの好ましい実施例
の詳細な配線図;第5図はW/R制御装置の単安定マルチ
バイブレータ回路の波形図;第6a図は審査中の米国特許
出願第746,920号に基づく、第4図に示した書込回路ブ
ロックの詳細な回線図;第6b図は本発明に基づく、第4
図に示した書込回路ブロックの詳細な回線図;第7a図は
第6a図に対応したタイミング図;及び第7b図は第6b図に
対応したタイミング図である。 10……FIFOメモリバッファ、16、22……データ入力、出
力バス、32、36……書込、読取アドレスリングカウンタ
(発生器)、40……比較器、48……メモリ、50……メモ
リレジスタ、60、80……書込、読取信号発生器、64、84
……メモリ動作防止装置、70……読取及び書込記憶手段
(最後のR/W動作フリップフロップ)、154……ラッチ
(記憶手段)、156……NORゲータ。
1 is a block diagram of an environment in which the present invention can be implemented; FIG. 2 is a more detailed block diagram of the present invention, showing various functional parts of a FIFO memory buffer; FIG. A simplified schematic diagram of a portion of a W / R controller using a monostable multivibrator circuit for generating write signals from edge transitions; FIG. 4 is a detailed wiring diagram of a preferred embodiment of a FIFO memory buffer; FIG. 5 is a waveform diagram of the monostable multivibrator circuit of the W / R controller; FIG. 6a is a detailed circuit diagram of the write circuit block shown in FIG. 4 based on pending US Patent Application No. 746,920. FIG. 6b is a fourth diagram according to the present invention;
FIG. 7a is a detailed circuit diagram of the write circuit block shown in the figure; FIG. 7a is a timing diagram corresponding to FIG. 6a; and FIG. 7b is a timing diagram corresponding to FIG. 6b. 10 …… FIFO memory buffer, 16,22 …… Data input, output bus, 32,36 …… Write, read address ring counter (generator), 40 …… Comparator, 48 …… Memory, 50 …… Memory Register, 60, 80 ... Write, read signal generator, 64, 84
...... Memory operation prevention device, 70 ...... Read and write storage means (last R / W operation flip-flop), 154 ... Latch (storage means), 156 ... NOR gater.

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】第1及び第2遷移を含む書込パルスを用い
て複数のメモリレジスタを逐次アドレスする方法におい
て: 前記書込パルスの第1遷移に応答して書込アドレス発生
器をインクレメントするステップ; 同時に、前記書込パルスの第1遷移に応答して、先にス
トアされたアドレス信号をメモリレジスタに加えるステ
ップ;及び 前記書込パルスの第2遷移に応答して書込アドレス発生
器から次のアドレス信号をストアするステップ;を備え
た方法。
1. A method of sequentially addressing a plurality of memory registers using a write pulse including first and second transitions: Incrementing a write address generator in response to the first transition of the write pulse. At the same time, in response to the first transition of the write pulse, adding a previously stored address signal to a memory register; and in response to the second transition of the write pulse, a write address generator. To store the next address signal from.
JP62193638A 1986-08-01 1987-08-01 Method and apparatus for simultaneously operating address increment and memory write Expired - Lifetime JP2550359B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US892228 1986-08-01
US06/892,228 US4829475A (en) 1985-06-20 1986-08-01 Method and apparatus for simultaneous address increment and memory write operations

Publications (2)

Publication Number Publication Date
JPS63118834A JPS63118834A (en) 1988-05-23
JP2550359B2 true JP2550359B2 (en) 1996-11-06

Family

ID=25399598

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62193638A Expired - Lifetime JP2550359B2 (en) 1986-08-01 1987-08-01 Method and apparatus for simultaneously operating address increment and memory write

Country Status (1)

Country Link
JP (1) JP2550359B2 (en)

Also Published As

Publication number Publication date
JPS63118834A (en) 1988-05-23

Similar Documents

Publication Publication Date Title
US4829475A (en) Method and apparatus for simultaneous address increment and memory write operations
US5365485A (en) Fifo with fast retransmit mode
US4712190A (en) Self-timed random access memory chip
US5079693A (en) Bidirectional FIFO buffer having reread and rewrite means
US5587953A (en) First-in-first-out buffer memory
US5088061A (en) Routing independent circuit components
JP2916045B2 (en) FIFO module
JP3645584B2 (en) Data transfer synchronization device
JPH01129322A (en) Fifo buffer controller
US6058439A (en) Asynchronous first-in-first-out buffer circuit burst mode control
EP0282248B1 (en) Block access system using cache memory
EP0276794A2 (en) Data input circuit having latch circuit
JP2550359B2 (en) Method and apparatus for simultaneously operating address increment and memory write
US6286072B1 (en) System and method for synchronizing data communication between asynchronous buses
JP2863545B2 (en) Circuit and method for providing a flag for a FIFO
US6289065B1 (en) FIFO status indicator
JPH0675745A (en) Serialization difference flag circuit
US5617433A (en) Serial data transfer apparatus
JP3090330B2 (en) Output signal generating apparatus and method, and FIFO memory
KR100301653B1 (en) High speed empty flag generator
US5249154A (en) Data access controller and method
JPH03108182A (en) Memory control system and method
JP3019917B2 (en) High-speed FIFO circuit
JP3305975B2 (en) Address counter circuit and semiconductor memory device
JP3592169B2 (en) Asynchronous data transfer control device and asynchronous data transfer control method

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term