JPH11213649A - 先入れ先出し記憶装置 - Google Patents

先入れ先出し記憶装置

Info

Publication number
JPH11213649A
JPH11213649A JP10009531A JP953198A JPH11213649A JP H11213649 A JPH11213649 A JP H11213649A JP 10009531 A JP10009531 A JP 10009531A JP 953198 A JP953198 A JP 953198A JP H11213649 A JPH11213649 A JP H11213649A
Authority
JP
Japan
Prior art keywords
write
read
address
counter
clock signal
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
JP10009531A
Other languages
English (en)
Other versions
JP3998314B2 (ja
Inventor
Eiji Mizumoto
英治 湖本
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP00953198A priority Critical patent/JP3998314B2/ja
Priority to US09/221,588 priority patent/US6191992B1/en
Publication of JPH11213649A publication Critical patent/JPH11213649A/ja
Application granted granted Critical
Publication of JP3998314B2 publication Critical patent/JP3998314B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
    • G06F5/12Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
    • G06F5/12Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations
    • G06F5/14Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations for overflow or underflow handling, e.g. full or empty flags
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/04Arrangements for selecting an address in a digital store using a sequential addressing device, e.g. shift register, counter
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2205/00Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F2205/12Indexing scheme relating to groups G06F5/12 - G06F5/14
    • G06F2205/123Contention resolution, i.e. resolving conflicts between simultaneous read and write operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Memory System (AREA)
  • Information Transfer Systems (AREA)

Abstract

(57)【要約】 【課題】 先入れ先出し記憶装置から所定のパルス幅の
満信号FUL及び空信号EMPを出力することにより、
入出力動作の安定を図る。 【解決手段】 読出しアドレスRADRは、書込みクロ
ック信号WCLKに同期してレジスタ31,32に順次
シフトして保持される。レジスタ31,32の保持内容
が一致すると、一致検出部33から一致検出信号EQ1
が出力され、FF(フリップフロップ)34は動作可能
状態となる。レジスタ31,32で遅延された読出しア
ドレスR1と、書込みカウンタ15から出力された書込
みアドレスWADRとが満検出部16で比較され、RA
M1の満状態が検出される。満検出部16の検出結果
は、FF34において書込みクロック信号WCLKに同
期して保持され、書込みクロック信号WCLKと同一の
パルス幅を有する満信号FULが出力される。空信号E
MPについても同様である。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、先に書き込んだデ
ータから順番に読み出される先入れ先出し記憶装置(以
下、「FIFO」という)に関するものである。
【0002】
【従来の技術】図2は、従来のFIFOの一例を示す構
成図である。このFIFOは、データを一時的に保持す
るための随時読み書き可能なメモリ(以下、「RAM」
という)1を備えている。RAM1は、書込み制御端子
/WE(但し、「/」は反転論理を示す)にレベル
“L”の信号が与えられた時に、書込みアドレス端子W
Aに与えられるアドレス信号に対応する記憶領域に、書
込みデータ端子WDに与えられた1ワードのデータが書
き込まれるようになっている。またRAM1は、読出し
アドレス端子RAに与えられるアドレス信号に対応する
記憶領域のデータを、読出しデータ端子RDに出力する
機能を有している。RAM1は、例えば0番地から7番
地までの8ワードの記憶容量を有しており、この0番地
から7番地までをリング状に循環して使用することによ
り、最大8ワードのデータを保持することができるよう
になっている。
【0003】このFIFOは、書込み側の回路に接続す
るための端子11,12,13,14を有している。端
子11は書込みデータWDATAが与えられる端子であ
り、RAM1の書込みデータ端子WDに接続されてい
る。端子12は書込み制御信号/WREQが与えられる
端子であり、RAM1の書込み制御端子/WE及び書込
みカウンタ15のイネーブル端子/Eに接続されてい
る。端子13は書込みクロック信号WCLKが与えられ
る端子であり、書込みカウンタ15のクロック端子Cに
接続されている。書込みカウンタ15は、書込み制御信
号/WREQが“L”の時に、書込みクロック信号WC
LKの立上がりに同期して書込みアドレスWADRを1
ずつカウントアップして出力するものであり、その出力
側がRAM1の書込みアドレス端子WAと、満検出部1
6の第1の入力側に接続されている。
【0004】満検出部16は、書込みアドレスWADR
と後述の読出しカウンタ25から出力される読出しアド
レスRADRとを比較することにより、RAM1の記憶
領域がすべて有効なデータで満たされているか否かを検
出するものであり、その出力側が端子14に接続されて
いる。そして、これ以上の書込みを禁止するための満信
号FULが端子14から出力されるようになっている。
また、このFIFOは、読出し側の回路に接続するため
の端子21,22,23,24を有している。端子21
は読出しデータRDATAを出力するための端子であ
り、RAM1の読出しデータ端子RDに接続されてい
る。端子22は読出し制御信号/RREQが与えられる
端子であり、読出しカウンタ25のイネーブル端子/E
に接続されている。
【0005】端子23は読出しクロック信号RCLKが
与えられる端子であり、読出しカウンタ25のクロック
端子Cに接続されている。読出しカウンタ25は、読出
し制御信号/RREQが“L”の時に、読出しクロック
信号RCLKの立上がりに同期して読出しアドレスRA
DRを1ずつカウントアップして出力するものであり、
その出力側がRAM1の読出しアドレス端子RAと、空
検出部26の第1の入力側と、前述の満検出部16の第
2の入力側とに接続されている。空検出部26の第2の
入力側には、書込みカウンタ15の出力側が接続されて
おり、読出しアドレスRADRと書込みカウンタ15か
ら出力される書込みアドレスWADRとを比較すること
により、RAM1の記憶領域がすべて空いているか否か
をを検出するものであり、その出力側が端子24に接続
されている。そして、これ以上の読出しを禁止するため
の空信号EMPが端子24から出力されるようになって
いる。
【0006】このようなFIFOにおいて、書込み制御
信号/WREQとして“L”が与えられ、書込みクロッ
ク信号WCLKとともに書込みデータWDが与えられる
と、この書込みクロック信号WCLKの立上がり毎に、
書込みカウンタ15がカウントアップされる。そして、
書込みアドレスWADRで指示されたRAM1の記憶領
域に、書込みデータWDATAが記憶される。また、読
出し制御信号/RREQとして“L”が与えられると、
読出しクロック信号RCLKの立上がり毎に、読出しカ
ウンタ25がカウントアップされる。そして、読出しア
ドレスRADRで指示されたRAM1の記憶領域のデー
タが、読出しデータRDATAとして出力される。これ
により、先に書込まれたデータから順番に読出しが行わ
れる。
【0007】ここで、書込み動作が連続し、書込みアド
レスWADRが読出しカウンタ25の読出しアドレスR
ADRに追いついてしまうと、満検出部16から満信号
FULが出力され、これ以上の書込み動作が禁止され
る。一方、読出し動作が連続し、読出しアドレスRAD
Rが書込みカウンタ15の書込みアドレスWADRに追
いついてしまうと、空検出部26から空信号EMPが出
力され、これ以上の読出し動作が禁止される。
【0008】
【発明が解決しようとする課題】しかしながら、従来の
FIFOでは、次のような課題があった。端子11〜1
4に接続される書込み側の回路と、端子21〜24に接
続される読出し側の回路とが、それぞれ周波数及び位相
の異なるクロック信号WCLK,RCLKで動作する場
合、満検出部16から出力される満信号FUL及び空検
出部26から出力される空信号EMPのパルス幅が極め
て狭くなってしまう場合がある。このため、書込み側の
回路では満信号FULを検出できずに過剰書込みを行っ
てしまい、読出し側の回路では空信号EMPを検出でき
ずに過剰読出しを行ってしまうという課題があった。本
発明は、前記従来技術が持っていた課題を解決し、所定
のパルス幅を有する満信号FUL及び空信号EMPを出
力することができるFIFOを提供するものである。
【0009】
【課題を解決するための手段】前記課題を解決するため
に、本発明の内の第1の発明はFIFOにおいて、書込
み制御信号が与えられた時に書込みアドレスで指定され
た記憶領域に書込みデータを記憶するとともに、読出し
アドレスで指定された記憶領域に記憶されたデータを読
出して出力するメモリと、前記書込み制御信号が与えら
れた時に、書込みクロック信号を計数して前記書込みア
ドレスとして出力する書込みカウンタと、読出し制御信
号が与えられた時に、読出しクロック信号を計数して前
記読出しアドレスとして出力する読出しカウンタと、次
のような第1及び第2のレジスタと、第1の一致検出部
と、満検出部と、第1の出力部と、第3及び第4のレジ
スタと、第2の一致検出部と、空検出部と、第2の出力
部とを備えている。
【0010】第1のレジスタは、前記読出しアドレスを
前記書込みクロック信号に同期して保持するものであ
り、第2のレジスタは、前記第1のレジスタに保持され
た前記読出しアドレスを前記書込みクロック信号に同期
して保持するものである。第1の一致検出部は、前記第
1及び第2のレジスタにそれぞれ保持された前記読出し
アドレスを比較し、一致している時に第1の一致検出信
号を出力するものである。満検出部は、前記書込みカウ
ンタから出力された書込みアドレスと前記第2のレジス
タで保持された前記読出しアドレスとを比較し、前記メ
モリの記憶領域が有効なデータで満たされているか否か
を検出するものである。第1の出力部は、前記第1の一
致検出信号によって動作が制御され、前記満検出部の検
出結果を前記書込みクロック信号に同期して保持し、満
信号として出力するものである。
【0011】第3のレジスタは、前記書込みアドレスを
前記読出しクロック信号に同期して保持するものであ
り、第4のレジスタは、前記第3のレジスタに保持され
た前記書込みアドレスを前記読出しクロック信号に同期
して保持するものである。第2の一致検出部は、前記第
3及び第4のレジスタにそれぞれ保持された前記書込み
アドレスを比較し、一致している時に第2の一致検出信
号を出力するものである。空検出部は、前記読出しカウ
ンタから出力された読出しアドレスと前記第4のレジス
タで保持された前記読出しアドレスとを比較し、前記メ
モリの記憶領域に有効なデータが存在せず空き状態であ
るか否かを検出するものである。そして、第2の出力部
は、前記第2の一致検出信号によって動作が制御され、
前記空検出部の検出結果を前記読出しクロック信号に同
期して保持し、空信号として出力するものである。
【0012】第2の発明は、第1の発明のFIFOにお
ける満検出部を、前記書込みカウンタから出力された書
込みアドレスと前記第2のレジスタで保持された前記読
出しアドレスの上位複数ビット同士を比較するように構
成し、空検出部を、前記読出しカウンタから出力された
読出しアドレスと前記第4のレジスタで保持された前記
読出しアドレスの上位複数ビット同士を比較するように
構成している。第1及び第2の発明によれば、以上のよ
うにFIFOを構成したので、次のような作用が行われ
る。書込みクロック信号は、書込みカウンタで計数され
て書込みアドレスが生成される。データは書込みアドレ
スに基づいてメモリに順次格納される。また、読出しク
ロック信号は、読出しカウンタで計数されて読出しアド
レスが生成され、この読出しアドレスに基づいてメモリ
からデータが順次読み出される。
【0013】一方、読出しアドレスは、第1及び第2の
レジスタによって書込みクロック信号に同期して順次保
持され、これらの第1及び第2のレジスタの保持内容が
一致していると、第1の一致検出部から第1の一致検出
信号が出力される。第2のレジスタの保持内容と書込み
アドレスとが満検出部で比較され、その比較結果は、第
1の一致検出信号が出力されているときに、書込みクロ
ック信号に同期して第1の出力部で保持され、満信号と
して出力される。また、書込みアドレスは、第3及び第
4のレジスタによって読出しクロック信号に同期して順
次保持され、これらの第3及び第4のレジスタの保持内
容が一致していると、第2の一致検出部から第2の一致
検出信号が出力される。第4のレジスタの保持内容と読
出しアドレスとが空検出部で比較され、その比較結果
は、第2の一致検出信号が出力されているときに、読出
しクロック信号に同期して第2の出力部で保持され、空
信号として出力される。
【0014】第3の発明は、FIFOにおいて、第1の
発明と同様のメモリと、書込みカウンタと、読出しカウ
ンタと、前記書込みクロック信号を第1の割合で分周し
て分周書込みクロック信号を生成する第1の分周部と、
前記書込みアドレスを前記分周書込みクロック信号に同
期して保持する第1のレジスタと、前記読出しカウンタ
から出力された読出しアドレスと前記第1のレジスタで
保持された前記書込みアドレスとを比較し、前記メモリ
の記憶領域に有効なデータが存在せず空き状態であるか
否かを検出する空検出部と、次のような第2の分周部
と、第2のレジスタと、満検出部とを備えている。第2
の分周部は、前記読出しクロック信号を第2の割合で分
周して分周読出しクロック信号を生成するものである。
第2のレジスタは、前記読出しアドレスを前記分周読出
しクロック信号に同期して保持するものである。そし
て、満検出部は、前記書込みカウンタから出力された書
込みアドレスと前記第2のレジスタで保持された前記読
出しアドレスとを比較し、前記メモリの記憶領域が有効
なデータで満たされているか否かを検出するものであ
る。
【0015】第3の発明によれば、次のような作用が行
われる。メモリに対するデータの書込み及び読出し動作
は第1の発明と同様である。一方、第1の分周部におい
て書込みクロック信号が分周されて分周書込みクロック
が生成され、これに同期して書込みアドレスが第1のレ
ジスタに保持される。第1のレジスタの保持内容と読出
しアドレスとが空検出部で比較され、メモリの空状態が
検出される。また、第2の分周部において読出しクロッ
ク信号が分周されて分周読出しクロックが生成され、こ
れに同期して読出しアドレスが第2のレジスタに保持さ
れる。第2のレジスタの保持内容と書込みアドレスとが
満検出部で比較され、メモリの満状態が検出される。
【0016】第4の発明は、FIFOにおいて、第1の
発明と同様のメモリと、書込みカウンタと、読出しカウ
ンタと、前記読出し制御信号を保持するとともに、該保
持した読出し制御信号を前記書込みクロック信号に同期
して第1の制御信号として出力する第1の制御部と、前
記第1の制御信号によって動作制御され、前記書込みク
ロック信号に同期して前記読出しアドレスを保持する第
1のレジスタと、前記書込みカウンタから出力された書
込みアドレスと前記第1のレジスタで保持された前記読
出しアドレスとを比較し、前記メモリの記憶領域が有効
なデータで満たされているか否かを検出する満検出部
と、次のような第2の制御部と、第2のレジスタと、空
検出部とを備えている。第2の制御部は、前記書込み制
御信号を保持するとともに、該保持した書込み制御信号
を前記読出しクロック信号に同期して第2の制御信号と
して出力するものである。第2のレジスタは、前記第2
の制御信号によって動作制御され、前記読出しクロック
信号に同期して前記書込みアドレスを保持するものであ
る。そして、空検出部は、前記読出しカウンタから出力
された読出しアドレスと前記第2のレジスタで保持され
た前記書込みアドレスとを比較し、前記メモリの記憶領
域に有効なデータが存在せず空き状態であるか否かを検
出するものである。
【0017】第4の発明によれば、次のような作用が行
われる。メモリに対するデータの書込み及び読出し動作
は第1の発明と同様である。一方、第1の制御部で読出
し制御信号が保持されると、書込みクロック信号に同期
して第1のレジスタによって読出しアドレスが保持され
る。第1のレジスタの保持内容と書込みアドレスとが満
検出部で比較され、メモリの満状態が検出される。ま
た、第2の制御部で書込み制御信号が保持されると、読
出しクロック信号に同期して第2のレジスタによって書
込みアドレスが保持される。第2のレジスタの保持内容
と読出しアドレスとが空検出部で比較され、メモリの空
状態が検出される。
【0018】第5の発明は、FIFOにおいて、第1の
発明と同様のメモリと、書込みカウンタと、読出しカウ
ンタと、前記書込みクロック信号に同期して前記読出し
制御信号を保持するとともに、該保持した読出し制御信
号を第1の制御信号として出力する第1の制御部と、前
記第1の制御信号によって動作制御され、前記書込みク
ロック信号を計数する第3のカウンタと、前記書込みカ
ウンタから出力された書込みアドレスと前記第3のカウ
ンタの計数結果とを比較し、前記メモリの記憶領域が有
効なデータで満たされているか否かを検出する満検出部
と、次のような第2の制御部と、第4のカウンタと、空
検出部とを備えている。第2の制御部は、前記読出しク
ロック信号に同期して前記書込み制御信号を保持すると
ともに、該保持した書込み制御信号を第2の制御信号と
して出力するものである。第4のカウンタは、前記第2
の制御信号によって動作制御され、前記読出しクロック
信号を計数するものである。そして、空検出部は、前記
読出しカウンタから出力された読出しアドレスと前記第
4のカウンタの計数結果とを比較し、前記メモリの記憶
領域に有効なデータが存在せず空き状態であるか否かを
検出するものである。
【0019】第5の発明によれば、次のような作用が行
われる。メモリに対するデータの書込み及び読出し動作
は第1の発明と同様である。一方、第1の制御部で書込
みクロック信号に同期して読出し制御信号が保持される
と、第3のカウンタによって書込みクロック信号の計数
動作が行われる。第3のカウンタの内容と書込みアドレ
スとが満検出部で比較され、メモリの満状態が検出され
る。また、第2の制御部で読出しクロック信号に同期し
て書込み制御信号が保持されると、第4のカウンタによ
って読出しクロック信号の計数動作が行われる。第4の
カウンタの内容と読出しアドレスとが空検出部で比較さ
れ、メモリの空状態が検出される。
【0020】
【発明の実施の形態】第1の実施形態 図1は、本発明の第1の実施形態を示すFIFOの構成
図であり、図2中の要素と共通の要素には共通の符号が
付されている。このFIFOは、図2のFIFOと同様
に、データを一時的に保持するためのRAM1を備えて
いる。RAM1は、書込み制御端子/WEにレベル
“L”の信号が与えられた時に、書込みアドレス端子W
Aに与えられる書込みアドレスWADRに対応する記憶
領域に、書込みデータ端子WDに与えられた1ワードの
データが書込まれるようになっている。またRAM1
は、読出しアドレス端子RAに与えられる読出しアドレ
スRADRに対応する記憶領域のデータを、読出しデー
タ端子RDに出力する機能を有している。RAM1は、
例えば0番地から7番地までの8ワードの記憶容量を有
しており、この0番地から7番地までをリング状に循環
して使用することにより、最大8ワードのデータを保持
することができるようになっている。また、このFIF
Oは書込み側の回路に接続するための端子11,12,
13,14と、読出し側の回路に接続するための端子2
1,22,23,24とを有している。
【0021】端子11は書込みデータWDATAが与え
られる端子であり、RAM1の書込みデータ端子WDに
接続されている。端子12は書込み制御信号/WREQ
が与えられる端子であり、RAM1の書込み制御端子/
WE及び書込みカウンタ15のイネーブル端子/Eに接
続されている。端子13は書込みクロック信号WCLK
が与えられる端子であり、書込みカウンタ15のクロッ
ク端子Cに接続されている。書込みカウンタ15は、書
込み制御信号/WREQが“L”の時に、書込みクロッ
ク信号WCLKの立上がりに同期して書込みアドレスW
ADRを1ずつカウントアップして出力するものであ
り、その出力側がRAM1の書込みアドレス端子WA、
及び満検出部16の第1の入力側に接続されている。満
検出部16は、書込みアドレスWADRと後述のレジス
タ32の値R2とを比較することにより、RAM1の記
憶領域が有効なデータで満たされているか否かを検出す
るものである。
【0022】端子21は読出しデータRDATAを出力
するための端子であり、RAM1の読出しデータ端子R
Dに接続されている。端子22は読出し制御信号/RR
EQが与えられる端子であり、読出しカウンタ25のイ
ネーブル端子/Eに接続されている。端子23は読出し
クロック信号RCLKが与えられる端子であり、読出し
カウンタ25のクロック端子Cに接続されている。読出
しカウンタ25は、読出し制御信号/RREQが“L”
の時に、読出しクロック信号RCLKの立上がりに同期
して読出しアドレスRADRを1ずつカウントアップし
て出力するものであり、その出力側がRAM1の読出し
アドレス端子RA、及び空検出部26の第1の入力側に
接続されている。空検出部26は、読出しアドレスRA
DRと後述のレジスタ36の値W2とを比較することに
よってRAM1の記憶領域に有効なデータが存在せず、
空き状態であることを検出するものである。
【0023】このFIFOには、レジスタ31,32、
一致検出部33、及び出力部(例えば、フリップフロッ
プ、以下、「FF」という)34が追加されている。レ
ジスタ31の入力側には読出しカウンタ25からの読出
しアドレスRADRが与えられるようになっている。レ
ジスタ31の出力側にはレジスタ32の入力側が接続さ
れ、このレジスタ32の出力側が満検出部16の第2の
入力側に接続されている。レジスタ31,32のクロッ
ク端子Cは端子13に接続されており、書込みクロック
信号WCLKの立上がりに同期して入力側のデータを保
持し、それぞれ保持した値R1,R2を出力する機能を
有している。レジスタ31,32の出力側には、一致検
出部33が接続されている。一致検出部33は、2つの
レジスタ31,32から出力される値R1,R2が一致
しているときに、FF34のイネーブル端子Eに一致検
出信号EQ1を出力するものである。FF34のデータ
端子Dは,満検出部16の出力側に接続され、クロック
端子Cには書込みクロック信号WCLKが与えられるよ
うになっている。そして、FF34の出力端子Qが端子
14に接続され、この端子14から書込みを禁止するた
めの満信号FULが出力されるようになっている。
【0024】更に、このFIFOには、レジスタ35,
36、一致検出部37、及び出力部(例えば、FF)3
8が追加されている。レジスタ35の入力側には書込み
カウンタ15からの書込みアドレスWADRが与えられ
るようになっている。レジスタ35の出力側にはレジス
タ36の入力側が接続され、このレジスタ36の出力側
が空検出部26の第2の入力側に接続されている。レジ
スタ35,36のクロック端子Cは端子23に接続され
ており、読出しクロック信号RCLKの立上がりに同期
して入力側のデータを保持し、それぞれ保持した値W
1,W2を出力する機能を有している。レジスタ35,
36の出力側には、一致検出部37が接続されている。
一致検出部37は、2つのレジスタ35,36から出力
される値W1,W2が一致しているときに、FF38の
イネーブル端子Eに一致検出信号EQ2を出力するもの
である。FF38のデータ端子Dは、空検出部26の出
力側に接続され、クロック端子Cには読出しクロック信
号RCLKが与えられるようになっている。そして、F
F38の出力端子Qが端子24に接続され、この端子2
4から読出しを禁止するための空信号EMPが出力され
るようになっている。
【0025】図3は、図1の動作シーケンスの一例を示
すタイムチャートである。この図3を参照しつつ、図1
の動作を説明する。図3の時刻t0において、各カウン
タ15,25、及び各レジスタ31,32,35,36
はリセット状態ですべの値が0であり、また、書込み制
御信号/WREQ及び読出し制御信号/RREQは
“H”であるとする。このとき、空検出部26の出力信
号EMは“H”であり、空信号EMPは“H”となって
いる。時刻t1において、書込み制御信号/WREQが
“L”に変化すると、端子11に与えられた書込みデー
タWDATAが、RAM1の0番地に書込まれる。時刻
t2において、書込みクロック信号WCLKの立上がり
に引続いて、書込み制御信号/WREQが“H”になる
と、書込みカウンタ15の値は1となり、次の書込みア
ドレスWADRは1番地となる。
【0026】時刻t3における読出しクロック信号RC
LKの立上がりで、レジスタ35の値W1は1となる。
更に、時刻t4における読出しクロック信号RCLKの
立上がりで、レジスタ35,36の値W1,W2はいず
れも1となり、一致検出部37の一致検出信号EQ2は
“H”となる。また、空検出部26の出力信号EMは
“L”となる。時刻t5における読出しクロック信号R
CLKの立上がりで、FF38から出力される空信号E
MPは“L”となる。時刻t6において書込み制御信号
/WREQが“L”になり、続いて時刻t7において書
込みクロック信号WCLKが立上がると、書込みデータ
WDATAがRAM1の1番地に書込まれて書込みアド
レスWADRは2となる。
【0027】同様に、時刻t8,t9,…,t12,t
13における書込みクロック信号WCLKの立上がり毎
に、書込みアドレスWADRは順次3,4,…,7,0
となる。一方、読出しカウンタ25から出力される読出
しアドレスRADRは0のまま変化していないので、一
致検出部33の一致検出信号EQ1は“H”であり、時
刻t13において、書込みクロック信号WCLKの立上
がりに同期して書込みアドレスWADRが0となったと
きに、FF34から出力される満信号FULは、“H”
となり、これ以上の書込み動作が禁止される。その後、
読出し制御信号/RREQを“L”にすることにより、
RAM1に記憶されたデータは、読出しクロック信号R
CLKに同期して、0番地から7番地の順に、即ち、先
に書込まれたデータから順次読出される。
【0028】以上のように、この第1の実施形態のFI
FOは、読出しアドレスRADRを書込みクロック信号
WCLKに同期して保持するためのレジスタ31,3
2、及びこれらのレジスタ31,32の値の一致を検出
する一致検出部33を有している。これにより、書込み
クロック信号WCLKのタイミングで読出しアドレスR
ADRを確実に保持することができる。そして、レジス
タ32で保持した値R2(即ち、読出しアドレスRAD
R)と書込みアドレスWADRとを、書込み側の書込み
クロック信号WCLKのタイミングで比較して満信号F
ULを出力するための、満検出部16及びFF34を有
している。これにより、書込み側の回路で確実に満信号
FULを検出することができる。
【0029】更にこのFIFOは、書込みアドレスWA
DRを読出しクロック信号RCLKに同期して保持する
ためのレジスタ35,36、及びこれらのレジスタ3
5,36の値の一致を検出する一致検出部37を有して
いる。これにより、読出しクロック信号RCLKのタイ
ミングで書込みアドレスWADRを確実に保持すること
ができる。そして、レジスタ36で保持した値W2(即
ち、書込みアドレスWADR)と読出しアドレスRAD
Rとを、読出し側の読出しクロック信号RCLKのタイ
ミングで比較して空信号EMPを出力するための、空検
出部26及びFF38を有している。これにより、読出
し側の回路で確実に空信号EMPを検出することができ
るという利点がある。
【0030】第2の実施形態 図4は、本発明の第2の実施形態を示すFIFOの構成
図であり、図2中の要素と共通の要素には共通の符号が
付されている。このFIFOは、図2のFIFOと同様
に、データを一時的に保持するためのRAM1、書込み
側の回路に接続するための端子11,12,13,1
4、書込みカウンタ15、満検出部16、読出し側の回
路に接続するための端子21,22,23,24、読出
しカウンタ25、及び空検出部26を有している。この
FIFOには、書込みクロック信号WCLKを分周した
周波数で書込みアドレスWADRを保持して、空検出部
26に与えるための分周部41、及びレジスタ42が追
加されている。分周部41は、例えば2桁の2進カウン
タ41aと2入力の論理積ゲート(以下、「AND」と
いう)41bとで構成されている。カウンタ41aのク
ロック端子Cは、端子13に接続されて書込みクロック
信号WCLKが与えられるようになっている。カウンタ
41aの2桁の出力信号は、AND41bの入力側に与
えられている。AND41bの出力側は、レジスタ42
のクロック端子Cに接続されている。レジスタ42の入
力側は書込みカウンタ15の出力側に、出力側は空検出
部26の第2の入力側にそれぞれ接続されている。
【0031】更に、このFIFOには、読出しクロック
信号RCLKを分周した周波数で読出しアドレスRAD
Rを保持して、満検出部16に与えるための分周部4
3、及びレジスタ44が追加されている。分周部43
は、分周部41と同様に、2桁の2進カウンタ43aと
2入力のAND43bとで構成されている。カウンタ4
3aのクロック端子Cは、端子23に接続されて読出し
クロック信号RCLKが与えられるようになっている。
カウンタ43aの出力側はAND43bの入力側に接続
され、このAND43bの出力側がレジスタ44のクロ
ック端子Cに接続されている。レジスタ44の入力側は
読出しカウンタ25の出力側に、出力側は満検出部16
の第2の入力側にそれぞれ接続されている。その他の構
成は図2と同様であり、ほぼ同様の動作が行われる。但
し、書込みカウンタ15の書込みアドレスWADRが直
ちに空検出部26に与えられるのではなく、書込みクロ
ック信号WCLKの4サイクルに1回の割合でレジスタ
42に保持され、このレジスタ42を介して空検出部2
6に与えられる。また、読出しカウンタ25の読出しア
ドレスRADRも、同様に、読出しクロック信号RCL
Kの4サイクルに1回の割合でレジスタ44に保持さ
れ、このレジスタ44を介して満検出部16に与えられ
る。
【0032】以上のように、この第2の実施形態のFI
FOは、書込みクロック信号WCLKを1/4に分周
し、4サイクルに1回の割合で書込みアドレスWADR
を保持して空検出部26に与えるために分周部41とレ
ジスタ42を備えている。これにより、レジスタ42の
内容は書込みクロック信号WCLKの4クロックの間変
化しないので、読出し側の回路で確実に空信号EMPを
検出することができる。更に、読出しクロック信号RC
LKを1/4に分周し、4サイクルに1回の割合で読出
しアドレスRADRを保持して満検出部16に与えるた
めに分周部43とレジスタ44を備えている。これによ
り、レジスタ44の内容は4クロックの間変化しないの
で、書込み側の回路で確実に満信号FULを検出するこ
とができるという利点がある。
【0033】第3の実施形態 図5は、本発明の第3の実施形態を示すFIFOの構成
図であり、図2中の要素と共通の要素には共通の符号が
付されている。このFIFOは、図2のFIFOと同様
に、データを一時的に保持するためのRAM1、書込み
側の回路に接続するための端子11,12,13,1
4、書込みカウンタ15、満検出部16、読出し側の回
路に接続するための端子21,22,23,24、読出
しカウンタ25、及び空検出部26を有している。この
FIFOには、読出しカウンタ25の読出しアドレスR
ADRを一旦保持して満検出部16に与えるためのレジ
スタ51、このレジスタ51を制御するための制御部
(例えば、レジスタ制御部)52、書込みカウンタ15
の書込みアドレスWADRを一旦保持して空検出部26
に与えるためのレジスタ53、及びこのレジスタ53を
制御するための制御部(例えば、レジスタ制御部)54
が追加されている。
【0034】レジスタ制御部52は、セットリセット型
のFF52a、及び遅延型のFF52bで構成されてい
る。FF52aのセット端子/Sは端子22に接続さ
れ、読出し制御信号/RREQが与えられるようになっ
ている。FF52aの出力端子QはFF52bのデータ
端子Dに接続されている。FF52bの出力端子Qは、
FF52aのリセット端子Rとレジスタ51のイネーブ
ル端子Eに接続されている。また、レジスタ51とFF
52bのクロック端子Cは端子13に接続され、書込み
クロック信号WCLKが与えられるようになっている。
そして、レジスタ51の出力側が、満検出部16の第2
の入力側に接続されている。同様に、レジスタ制御部5
4は、セットリセット型のFF54a、及び遅延型のF
F54bで構成されている。FF54aのセット端子/
Sは端子12に接続され、書込み制御信号/WREQが
与えられるようになっている。FF54aの出力端子Q
はFF54bのデータ端子Dに接続されている。FF5
4bの出力端子Qは、FF54aのリセット端子Rとレ
ジスタ53のイネーブル端子Eに接続されている。ま
た、レジスタ53とFF54bのクロック端子Cは端子
13に接続され、読出しクロック信号RCLKが与えら
れるようになっている。そして、レジスタ53の出力側
が、空検出部26の第2の入力側に接続されている。
【0035】次に動作を説明する。書込み側の回路から
の書込み要求により、書込みデータWDATAとともに
書込み制御信号/WREQとして“L”が与えられる
と、書込みカウンタ15の書込みアドレスWADRで指
定されるRAM1のアドレスに、書込みデータWDAT
Aが格納される。更に、書込みカウンタ15の書込みア
ドレスWADRが1だけ増加され、この書込みアドレス
WADRが、次に書込むべきRAM1のアドレスとして
出力される。次に、書込み制御信号/WREQによって
FF54aがセットされ、このFF54aの出力信号は
“H”となり、FF54bに与えられる。FF54aの
出力信号は、読出しクロック信号RCLKのタイミング
に従ってFF54bに保持される。FF54bの出力信
号は、FF54aに対するリセット信号として戻される
とともに、レジスタ53のイネーブル端子Eに与えら
れ、このレジスタ53は動作可能な状態となる。レジス
タ53には、書込みアドレスWADRが読出しクロック
信号RCLKに同期して格納され、このレジスタ53の
値と読出しカウンタ25の読出しアドレスRADRとが
空検出部26によって比較されて、空状態か否かが判定
される。
【0036】一方、読出し側の回路からの読出し要求に
より、読出し制御信号/RREQとして“L”が与えら
れると、読出しカウンタ25の読出しアドレスRADR
で指定されるRAM1のアドレスから、読出しデータR
DATAが出力される。更に、読出しカウンタ25の読
出しアドレスRADRが1だけ増加され、この読出しア
ドレスRADRが、次に読出すべきRAM1のアドレス
として出力される。次に、読出し制御信号/RREQに
よってFF52aがセットされ、このFF52aの出力
信号は“H”となり、FF52bに与えられる。FF5
2aの出力信号は、書込みクロック信号WCLKのタイ
ミングに従ってFF52bに保持される。FF52bの
出力信号は、FF52aに対するリセット信号として戻
されるとともに、レジスタ51のイネーブル端子Eに与
えられ、このレジスタ51は動作可能な状態となる。レ
ジスタ51には、読出しアドレスRADRが書込みクロ
ック信号WCLKに同期して格納され、このレジスタ5
1の値と書込みカウンタ15の書込みアドレスWADR
とが満検出部16によって比較され、満状態か否かが判
定される。
【0037】以上のように、この第3の実施形態のFI
FOは、読出しアドレスRADRを書込みクロック信号
WCLKに同期して保持して満検出部15へ与えるため
のレジスタ51及びレジスタ制御部52を有している。
これにより、書込み側の回路で確実に満信号FULを検
出することができる。更に、書込みアドレスWADRを
読出しクロック信号RCLKに同期して保持して空検出
部25へ与えるためのレジスタ53及びレジスタ制御部
54を有している。これにより、読出し側の回路で確実
に空信号EMPを検出することができるという利点があ
る。
【0038】第4の実施形態 図6は、本発明の第4の実施形態を示すFIFOの構成
図であり、図2中の要素と共通の要素には共通の符号が
付されている。このFIFOは、図2のFIFOと同様
に、データを一時的に保持するためのRAM1、書込み
側の回路に接続するための端子11,12,13,1
4、書込みカウンタ15、満検出部16、読出し側の回
路に接続するための端子21,22,23,24、読出
しカウンタ25、及び空検出部26を有している。この
FIFOには、書込みクロック信号WCLKを読出し制
御信号/RREQに従ってカウントして満検出部16へ
与えるためのカウンタ61とこのカウンタ61を制御す
る制御部(例えば、カウント制御部)62、及び読出し
クロック信号RCLKを書込み制御信号/WREQに従
ってカウントして空検出部26へ与えるためのカウンタ
63とこのカウンタ63を制御する制御部(例えば、カ
ウント制御部)64が追加されている。
【0039】カウント制御部62は、遅延型のFF62
a、インバータ62b、及び2入力のAND62cで構
成されている。カウンタ61及びFF62aのクロック
端子Cは端子13に接続され、書込みクロック信号WC
LKが与えられるようになっている。また、FF62a
のデータ端子Dとインバータ62bの入力側は端子22
に接続され、読出し制御信号/RREQが与えられるよ
うになっている。AND62cの出力側はカウンタ61
のイネーブル端子Eに接続され、このカウンタ61の出
力側が満検出部16の第2の入力側に接続されている。
同様に、カウント制御部64は、遅延型のFF64a、
インバータ64b、及び2入力のAND64cで構成さ
れている。カウンタ63及びFF64aのクロック端子
Cは端子23に接続され、読出しクロック信号RCLK
が与えられるようになっている。また、FF64aのデ
ータ端子Dとインバータ64bの入力側は端子12に接
続され、書込み制御信号/WREQが与えられるように
なっている。AND64cの出力側はカウンタ63のイ
ネーブル端子Eに接続され、このカウンタ63の出力側
が空検出部26の第2の入力側に接続されている。
【0040】次に動作を説明する。書込み側の回路から
の書込み要求により、書込みデータWDATAとともに
書込み制御信号/WREQとして“L”が与えられる
と、書込みカウンタ15の書込みアドレスWADRで指
定されるRAM1のアドレスに、書込みデータWDAT
Aが格納される。更に、書込みカウンタ15の書込みア
ドレスWADRが1だけ増加され、この書込みアドレス
WADRが、次に書込むべきRAM1のアドレスとして
出力される。書込み制御信号/WREQは、カウント制
御部64を介してカウンタ63のイネーブル端子Eに与
えられ、このカウンタ63が動作可能な状態に制御され
る。これにより、カウンタ63において読出しクロック
信号RCLKに同期したカウント動作が行われる。カウ
ンタ63のカウント値RCNTと読出しカウンタ25の
読出しアドレスRADRとが空検出部26で比較され、
空状態か否かが判定される。
【0041】一方、読出し側の回路からの読出し要求に
より、読出し制御信号/RREQとして“L”が与えら
れると、読出しカウンタ25の読出しアドレスRADR
で指定されるRAM1のアドレスから、読出しデータR
DATAが出力される。更に、読出しカウンタ25の読
出しアドレスRADRが1だけ増加され、この読出しア
ドレスRADRが、次に読出すべきRAM1のアドレス
として出力される。読出し制御信号/RREQは、カウ
ント制御部62を介してカウンタ61のイネーブル端子
Eに与えられ、このカウンタ61が動作可能な状態に制
御される。これにより、カウンタ61において書込みク
ロック信号WCLKに同期したカウント動作が行われ
る。カウンタ61のカウント値WCNTと書込みカウン
タ15の書込みアドレスWADRとが満検出部16で比
較され、満状態か否かが判定される。
【0042】以上のように、この第4の実施形態のFI
FOは、書込み制御信号/WREQで制御されて読出し
クロック信号RCLKをカウントするためのカウント制
御部64とカウンタ63を有している。これにより、読
出し側の回路で確実に空信号EMPを検出することがで
きる。更に、読出し制御信号/RREQで制御されて書
込みクロック信号WCLKをカウントするためのカウン
ト制御部62とカウンタ61を有している。これによ
り、書込み側の回路で確実に満信号FULを検出するこ
とができるという利点がある。
【0043】なお、本発明は、上記実施形態に限定され
ず、種々の変形が可能である。この変形例としては、例
えば、次の(a)〜(f)のようなものがある。 (a) RAM1の記憶容量は8ワードに限定されな
い。記憶容量を大きくすれば、満状態や空状態になるこ
とが少ないので、スムーズな入出力動作が可能になる。 (b) 満検出部16及び空検出部26では、書込みア
ドレスWADRと、読出しアドレスRADRの全桁を比
較するようになっているが、記憶容量が大きい場合に
は、必ずしも全桁を比較する必要はなく、上位の複数ビ
ット同士を比較するようにしても良い。
【0044】(c) 分周部41,43の分周比は、1
/4に限定されない。また、分周部41,43の分周比
は同一である必要はない。書込みクロック信号WCLK
及び読出しクロック信号RCLKの周波数に応じて適切
な値を設定することができる。 (d) 分周部41,43の構成は、図4に示した回路
の限定されず、設定した分周比に応じた回路構成にする
必要がある。 (e) レジスタ制御部52,54の構成は、図5に示
した回路の限定されない。読出し制御信号/RREQま
たは書込み制御信号/WREQを保持して、書込みクロ
ック信号WCLKまたは読出しクロック信号RCLKに
同期して、レジスタ51,53の動作を制御することが
できる回路であれば、どのような構成でも適用可能であ
る。 (f) カウント制御部62,64の構成は、図6に示
した回路の限定されない。書込みクロック信号WCLK
または読出しクロック信号RCLKに同期して読出し制
御信号/RREQまたは書込み制御信号/WREQを保
持して、カウンタ61,63の動作を制御することがで
きる回路であれば、どのような構成でも適用可能であ
る。
【0045】
【発明の効果】以上詳細に説明したように、第1の発明
によれば、書込みクロック信号に同期して順次読出しア
ドレスを保持する第1及び第2のレジスタと、これらの
第1及び第2のレジスタの保持内容の一致を検出する第
1の一致検出部と、第1の一致検出信号と書込みクロッ
ク信号に従って満検出部の出力信号を保持して満信号と
して出力する第1の出力部を有している。これにより、
書込み側の回路で安定して満信号を検知することが可能
になり、過剰書込み等の誤動作がなくなる。また、読出
しクロック信号に同期して順次書込みアドレスを保持す
る第3及び第4のレジスタと、これらの第3及び第4の
レジスタの保持内容の一致を検出する第2の一致検出部
と、第2の一致検出信号と読出しクロック信号に従って
空検出部の出力信号を保持して空信号として出力する第
2の出力部を有している。これにより、読出し側の回路
で安定して空信号を検知することが可能になり、過剰読
出し等の誤動作がなくなる。
【0046】第2の発明によれば、満検出部及び空検出
部は、書込みアドレスと読出しアドレスの上位の複数ビ
ット同士を比較して、満状態または空状態を検出するよ
うに構成されている。これにより、メモリの記憶領域か
大きい場合には、第1の発明とほぼ同様の効果が得られ
るとともに、回路の簡素化が可能になる。第3の発明に
よれば、書込みクロック信号を分周して分周書込みクロ
ックを生成する第1の分周部と、これに同期して書込み
アドレスを保持する第1のレジスタと、該第1のレジス
タの保持内容と読出しアドレスとを比較してメモリの空
状態を検出する空検出部を有している。また、読出しク
ロック信号を分周して分周読出しクロックを生成する第
2の分周部と、これに同期して読出しアドレスを保持す
る第2のレジスタと、該第2のレジスタの保持内容と書
込みアドレスとを比較してメモリの満状態を検出する満
検出部を有している。これにより、第1の発明と同様の
効果がある。
【0047】第4の発明によれば、読出し制御信号を保
持する第1の制御部と、書込みクロック信号に同期して
読出しアドレスを保持する第1のレジスタと、第1のレ
ジスタの保持内容と書込みアドレスとを比較してメモリ
の満状態を検出する満検出部を有している。また、書込
み制御信号を保持する第2の制御部と、読出しクロック
信号に同期して書込みアドレスを保持する第2のレジス
タと、第2のレジスタの保持内容と読出しアドレスとを
比較してメモリの空状態を検出する空検出部を有してい
る。これにより、第1の発明と同様の効果がある。第5
の発明によれば、書込みクロック信号に同期して読出し
制御信号を保持する第1の制御部と、書込みクロック信
号の計数を行う第3のカウンタと、第3のカウンタの内
容と書込みアドレスとを比較してメモリの満状態を検出
する満検出部を有している。また、読出しクロック信号
に同期して書込み制御信号を保持する第2の制御部と、
読出しクロック信号の計数を行う第4のカウンタと、第
4のカウンタの内容と読出しアドレスとを比較してメモ
リの空状態を検出する空検出部を有している。これによ
り、第1の発明と同様の効果がある。
【図面の簡単な説明】
【図1】本発明の第1の実施形態を示すFIFOの構成
図である。
【図2】従来のFIFOの構成図である。
【図3】図1の動作シーケンスの一例を示すタイムチャ
ートである。
【図4】本発明の第2の実施形態を示すFIFOの構成
図である。
【図5】本発明の第3の実施形態を示すFIFOの構成
図である。
【図6】本発明の第4の実施形態を示すFIFOの構成
図である。
【符号の説明】
1 RAM 15 書込みカウンタ 16 満検出部 25 読出しカウンタ 26 空検出部 31,32,35,36 レジスタ 33,37 一致検出部 34,38 FF(フリップフロップ) 41,43 分周部 42,44,51,53 レジスタ 52,54 レジスタ制御部 61,63 カウンタ 62,64 カウント制御部 EMP 空信号 FUL 満信号 RCLK 読出しクロック信号 WCLK 書込みクロック信号 /RREQ 読出し制御信号 /WREQ 書込み制御信号

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 書込み制御信号が与えられた時に書込み
    アドレスで指定された記憶領域に書込みデータを記憶す
    るとともに、読出しアドレスで指定された記憶領域に記
    憶されたデータを読出して出力するメモリと、 前記書込み制御信号が与えられた時に、書込みクロック
    信号を計数して前記書込みアドレスとして出力する書込
    みカウンタと、 読出し制御信号が与えられた時に、読出しクロック信号
    を計数して前記読出しアドレスとして出力する読出しカ
    ウンタと、 前記読出しアドレスを前記書込みクロック信号に同期し
    て保持する第1のレジスタと、 前記第1のレジスタに保持された前記読出しアドレスを
    前記書込みクロック信号に同期して保持する第2のレジ
    スタと、 前記第1及び第2のレジスタにそれぞれ保持された前記
    読出しアドレスを比較し、一致している時に第1の一致
    検出信号を出力する第1の一致検出部と、 前記書込みカウンタから出力された書込みアドレスと前
    記第2のレジスタで保持された前記読出しアドレスとを
    比較し、前記メモリの記憶領域が有効なデータで満たさ
    れているか否かを検出する満検出部と、 前記第1の一致検出信号によって動作が制御され、前記
    満検出部の検出結果を前記書込みクロック信号に同期し
    て保持し、満信号として出力する第1の出力部と、 前記書込みアドレスを前記読出しクロック信号に同期し
    て保持する第3のレジスタと、 前記第3のレジスタに保持された前記書込みアドレスを
    前記読出しクロック信号に同期して保持する第4のレジ
    スタと、 前記第3及び第4のレジスタにそれぞれ保持された前記
    書込みアドレスを比較し、一致している時に第2の一致
    検出信号を出力する第2の一致検出部と、 前記読出しカウンタから出力された読出しアドレスと前
    記第4のレジスタで保持された前記読出しアドレスとを
    比較し、前記メモリの記憶領域に有効なデータが存在せ
    ず空き状態であるか否かを検出する空検出部と、 前記第2の一致検出信号によって動作が制御され、前記
    空検出部の検出結果を前記読出しクロック信号に同期し
    て保持し、空信号として出力する第2の出力部とを、 備えたことを特徴とする先入れ先出し記憶装置。
  2. 【請求項2】 前記満検出部は、前記書込みカウンタか
    ら出力された書込みアドレスと前記第2のレジスタで保
    持された前記読出しアドレスの上位複数ビット同士を比
    較し、前記空検出部は、前記読出しカウンタから出力さ
    れた読出しアドレスと前記第4のレジスタで保持された
    前記読出しアドレスの上位複数ビット同士を比較するこ
    とを特徴とする請求項1記載の先入れ先出し記憶装置。
  3. 【請求項3】 書込み制御信号が与えられた時に書込み
    アドレスで指定された記憶領域に書込みデータを記憶す
    るとともに、読出しアドレスで指定された記憶領域に記
    憶されたデータを読出して出力するメモリと、 前記書込み制御信号が与えられた時に、書込みクロック
    信号を計数して前記書込みアドレスとして出力する書込
    みカウンタと、 読出し制御信号が与えられた時に、読出しクロック信号
    を計数して前記読出しアドレスとして出力する読出しカ
    ウンタと、 前記書込みクロック信号を第1の割合で分周して分周書
    込みクロック信号を生成する第1の分周部と、 前記書込みアドレスを前記分周書込みクロック信号に同
    期して保持する第1のレジスタと、 前記読出しカウンタから出力された読出しアドレスと前
    記第1のレジスタで保持された前記書込みアドレスとを
    比較し、前記メモリの記憶領域に有効なデータが存在せ
    ず空き状態であるか否かを検出する空検出部と、 前記読出しクロック信号を第2の割合で分周して分周読
    出しクロック信号を生成する第2の分周部と、 前記読出しアドレスを前記分周読出しクロック信号に同
    期して保持する第2のレジスタと、 前記書込みカウンタから出力された書込みアドレスと前
    記第2のレジスタで保持された前記読出しアドレスとを
    比較し、前記メモリの記憶領域が有効なデータで満たさ
    れているか否かを検出する満検出部とを、 備えたことを特徴とする先入れ先出し記憶装置。
  4. 【請求項4】 書込み制御信号が与えられた時に書込み
    アドレスで指定された記憶領域に書込みデータを記憶す
    るとともに、読出しアドレスで指定された記憶領域に記
    憶されたデータを読出して出力するメモリと、 前記書込み制御信号が与えられた時に、書込みクロック
    信号を計数して前記書込みアドレスとして出力する書込
    みカウンタと、 読出し制御信号が与えられた時に、読出しクロック信号
    を計数して前記読出しアドレスとして出力する読出しカ
    ウンタと、 前記読出し制御信号を保持するとともに、該保持した読
    出し制御信号を前記書込みクロック信号に同期して第1
    の制御信号として出力する第1の制御部と、 前記第1の制御信号によって動作制御され、前記書込み
    クロック信号に同期して前記読出しアドレスを保持する
    第1のレジスタと、 前記書込みカウンタから出力された書込みアドレスと前
    記第1のレジスタで保持された前記読出しアドレスとを
    比較し、前記メモリの記憶領域が有効なデータで満たさ
    れているか否かを検出する満検出部と、 前記書込み制御信号を保持するとともに、該保持した書
    込み制御信号を前記読出しクロック信号に同期して第2
    の制御信号として出力する第2の制御部と、 前記第2の制御信号によって動作制御され、前記読出し
    クロック信号に同期して前記書込みアドレスを保持する
    第2のレジスタと、 前記読出しカウンタから出力された読出しアドレスと前
    記第2のレジスタで保持された前記書込みアドレスとを
    比較し、前記メモリの記憶領域に有効なデータが存在せ
    ず空き状態であるか否かを検出する空検出部とを、 備えたことを特徴とする先入れ先出し記憶装置。
  5. 【請求項5】 書込み制御信号が与えられた時に書込み
    アドレスで指定された記憶領域に書込みデータを記憶す
    るとともに、読出しアドレスで指定された記憶領域に記
    憶されたデータを読出して出力するメモリと、 前記書込み制御信号が与えられた時に、書込みクロック
    信号を計数して前記書込みアドレスとして出力する書込
    みカウンタと、 読出し制御信号が与えられた時に、読出しクロック信号
    を計数して前記読出しアドレスとして出力する読出しカ
    ウンタと、 前記書込みクロック信号に同期して前記読出し制御信号
    を保持するとともに、該保持した読出し制御信号を第1
    の制御信号として出力する第1の制御部と、 前記第1の制御信号によって動作制御され、前記書込み
    クロック信号を計数する第3のカウンタと、 前記書込みカウンタから出力された書込みアドレスと前
    記第3のカウンタの計数結果とを比較し、前記メモリの
    記憶領域が有効なデータで満たされているか否かを検出
    する満検出部と、 前記読出しクロック信号に同期して前記書込み制御信号
    を保持するとともに、該保持した書込み制御信号を第2
    の制御信号として出力する第2の制御部と、 前記第2の制御信号によって動作制御され、前記読出し
    クロック信号を計数する第4のカウンタと、 前記読出しカウンタから出力された読出しアドレスと前
    記第4のカウンタの計数結果とを比較し、前記メモリの
    記憶領域に有効なデータが存在せず空き状態であるか否
    かを検出する空検出部とを、 備えたことを特徴とする先入れ先出し記憶装置。
JP00953198A 1998-01-21 1998-01-21 先入れ先出し記憶装置 Expired - Fee Related JP3998314B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP00953198A JP3998314B2 (ja) 1998-01-21 1998-01-21 先入れ先出し記憶装置
US09/221,588 US6191992B1 (en) 1998-01-21 1998-12-29 First-in-first-out storage device including synchronized full-state detention and empty-state detention

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP00953198A JP3998314B2 (ja) 1998-01-21 1998-01-21 先入れ先出し記憶装置

Publications (2)

Publication Number Publication Date
JPH11213649A true JPH11213649A (ja) 1999-08-06
JP3998314B2 JP3998314B2 (ja) 2007-10-24

Family

ID=11722860

Family Applications (1)

Application Number Title Priority Date Filing Date
JP00953198A Expired - Fee Related JP3998314B2 (ja) 1998-01-21 1998-01-21 先入れ先出し記憶装置

Country Status (2)

Country Link
US (1) US6191992B1 (ja)
JP (1) JP3998314B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006007801A1 (fr) * 2004-07-23 2006-01-26 Huawei Technologies Co., Ltd. Memoire peps et procede d'ajustement d'adresses d'ecriture/lecture
JP2008186584A (ja) * 2008-04-25 2008-08-14 Elpida Memory Inc 半導体記憶装置及びそのリフレッシュ制御方法

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3542943B2 (ja) * 2000-04-28 2004-07-14 松下電器産業株式会社 データ転送装置、およびデータ転送方法
US6384634B1 (en) * 2001-02-21 2002-05-07 Nortel Networks Limited Elastic store: recovery and boundary verification
JP4762435B2 (ja) * 2001-05-09 2011-08-31 富士通セミコンダクター株式会社 内部カウンタを複数備えた不揮発性半導体記憶装置
US7353346B2 (en) * 2006-03-24 2008-04-01 International Business Machines Corporation Read-copy-update (RCU) operations with reduced memory barrier usage
US7818306B2 (en) * 2006-03-24 2010-10-19 International Business Machines Corporation Read-copy-update (RCU) operations with reduced memory barrier usage
US7539789B1 (en) 2006-08-14 2009-05-26 Xilinx, Inc. Circuits providing greater depth and/or asymmetric access ports for first-in first-out memory circuits (FIFOs)
US7535789B1 (en) * 2006-09-27 2009-05-19 Xilinx, Inc. Circuits and methods of concatenating FIFOs
WO2008142610A1 (en) * 2007-05-16 2008-11-27 Nxp B.V. Fifo buffer
US7996704B2 (en) * 2007-08-21 2011-08-09 Richwave Technology Corp. Asynchronous first in first out interface and operation method thereof
US8659973B2 (en) * 2010-06-18 2014-02-25 Fujitsu Limited Sequential-write, random-read memory

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5220529A (en) * 1990-08-20 1993-06-15 Fujitsu Limited One-chip first-in first-out memory device having matched write and read operations
US5473756A (en) * 1992-12-30 1995-12-05 Intel Corporation FIFO buffer with full/empty detection by comparing respective registers in read and write circular shift registers
KR0123239B1 (ko) * 1994-07-06 1997-11-26 김주용 선입선출방식(fifo) 메모리
US5555524A (en) * 1995-02-13 1996-09-10 Standard Microsystems Corporation Semi-synchronous dual port FIFO
US5956748A (en) * 1997-01-30 1999-09-21 Xilinx, Inc. Asynchronous, dual-port, RAM-based FIFO with bi-directional address synchronization

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006007801A1 (fr) * 2004-07-23 2006-01-26 Huawei Technologies Co., Ltd. Memoire peps et procede d'ajustement d'adresses d'ecriture/lecture
JP2008186584A (ja) * 2008-04-25 2008-08-14 Elpida Memory Inc 半導体記憶装置及びそのリフレッシュ制御方法

Also Published As

Publication number Publication date
US6191992B1 (en) 2001-02-20
JP3998314B2 (ja) 2007-10-24

Similar Documents

Publication Publication Date Title
JP4572264B2 (ja) 2つのクロック領域間でデータを伝送するインタフェース
TWI474320B (zh) 雙倍資料率虛擬靜態隨機存取記憶體及其控制器、存取與操作方法、寫入與讀取方法
US6493818B2 (en) Technique for pipelining synchronization to maintain throughput across two asynchronous clock domain boundaries
US5884099A (en) Control circuit for a buffer memory to transfer data between systems operating at different speeds
US8230174B2 (en) Multi-queue address generator for start and end addresses in a multi-queue first-in first-out memory system
US5956748A (en) Asynchronous, dual-port, RAM-based FIFO with bi-directional address synchronization
US6259650B1 (en) Dual port memory control signals with synchronized read and write pointers
US6134638A (en) Memory controller supporting DRAM circuits with different operating speeds
KR0176422B1 (ko) 페이지-인 버스트-아웃 피포 시스템
EP0226017B1 (en) Data synchronizer between a source system and a sink system
JP3998314B2 (ja) 先入れ先出し記憶装置
EP2808801A1 (en) Multiple data rate memory with read timing information
CN116504288A (zh) 具有输入/输出数据速率对齐的存储器部件
JP2001307476A (ja) Fifoメモリ制御回路
US5781802A (en) First-in-first-out (FIFO) controller for buffering data between systems which are asynchronous and free of false flags and internal metastability
JP2004062630A (ja) Fifoメモリ及び半導体装置
US5594743A (en) Fifo buffer system having an error detection and correction device
US6327667B1 (en) Apparatus and method for operating clock sensitive devices in multiple timing domains
US5488712A (en) Memory circuit with pipeline processing
JP3765547B2 (ja) Fifo状態インジケータ
US6486704B1 (en) Programmable burst FIFO
US7934057B1 (en) Logic for implementing a dual clock domain read access with predictable timing for bi-directional inputs/outputs
US20230087576A1 (en) Domain-selective control component
JP2783495B2 (ja) クロック乗せ換え回路
JP2625908B2 (ja) 非同期エラスティックストアドメモリのジッタ吸収量選択方式

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070522

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070706

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070807

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070807

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100817

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20100817

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees