JP2001307476A - Fifoメモリ制御回路 - Google Patents

Fifoメモリ制御回路

Info

Publication number
JP2001307476A
JP2001307476A JP2000120041A JP2000120041A JP2001307476A JP 2001307476 A JP2001307476 A JP 2001307476A JP 2000120041 A JP2000120041 A JP 2000120041A JP 2000120041 A JP2000120041 A JP 2000120041A JP 2001307476 A JP2001307476 A JP 2001307476A
Authority
JP
Japan
Prior art keywords
read
clock
write
enable signal
count
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
JP2000120041A
Other languages
English (en)
Other versions
JP3815948B2 (ja
Inventor
Takashi Yamada
高 山田
Koji Horikawa
幸司 堀川
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.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP2000120041A priority Critical patent/JP3815948B2/ja
Priority to US09/802,694 priority patent/US6470439B2/en
Publication of JP2001307476A publication Critical patent/JP2001307476A/ja
Application granted granted Critical
Publication of JP3815948B2 publication Critical patent/JP3815948B2/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
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/05Electric or magnetic storage of signals before transmitting or retransmitting for changing the transmission rate
    • 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)
  • Power Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Systems (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【課題】 読み出しクロックと書き込みクロックの周期が異なる
場合に、メモリ内の有効テ゛ータ数を正しく計数して、テ゛ータの
上書きによるテ゛ータ消失や同一テ゛ータの2度読みを防止でき
るFIFOメモリ制御回路を得る。 【解決手段】 カウントタ゛ウンイネーフ゛ル信号生成回路17が、読み
出しアト゛レスの最下位ヒ゛ットと読み出しクロックより周波数が高
い書き込みクロックから、書き込みクロックに同期し、1回の読
み出し毎に書き込みクロックの1周期分アサートされるカウントタ゛ウン
イネーフ゛ル信号を生成し、アッフ゜タ゛ウンカウンタ15に出力する。また
は、カウントアッフ゜イネーフ゛ル信号生成回路が、書き込みアト゛レスの
最下位ヒ゛ットと書き込みクロックより周波数が高い読み出しクロ
ックから、読み出しクロックに同期し、1回の書き込み毎に読
み出しクロックの1周期分アサートされるカウントアッフ゜イネーフ゛ル信号を
生成し、アッフ゜タ゛ウンカウンタに出力する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、各種の電子機器に
搭載されるFIFO(First In First
Out)メモリ制御回路に関し、特に、書き込みクロッ
クと読み出しクロックの周波数が異なり、どちらのクロ
ック周波数が高いかが既知である場合に、非同期読み書
き制御が可能なFIFOメモリ制御回路に関する。
【0002】
【従来の技術】図11に、従来のFIFOメモリ制御回
路の構成を示す。このFIFOメモリ制御回路は、メモ
リ101、書き込み制御部102、読み出し制御部10
3、書き込みアドレス回路104、読み出しアドレス回
路105およびFull−Empty(フル−エンプテ
ィ)制御回路106を備えている。
【0003】メモリ101は、同時に読み書き可能なデ
ュアルポートRAM(RandomAccess Me
mory)からなり、aワードの記憶容量を有する。こ
のメモリ101は、書き込み許可信号(WE)がアサー
トされているときに、書き込みデータ(WDATA)が
1ワードずつ、書き込みクロック(WCLK)のタイミ
ングで、書き込みアドレス(WADR)の指定した番地
に書き込まれる。また、読み出し許可信号(RE)がア
サートされているときに、読み出しデータ(RDAT
A)が1ワードずつ、読み出しクロック(RCLK)の
タイミングで、読み出しアドレス(RADR)の指定し
た番地から読み出される。ここで、書き込み許可信号
(WE)は後述する書き込み制御部102から出力され
る信号であり、読み出し許可信号(RE)は後述する読
み出し制御部103から出力される信号である。
【0004】書き込みアドレス回路104には、書き込
みクロック(WCLK)と書き込み許可信号(WE)が
接続されている。そして、書き込み許可信号(WE)が
アサートされているときに、書き込みクロック(WCL
K)のタイミングで、書き込みアドレス(WADR)を
1つずインクリメントする。
【0005】読み出しアドレス回路105には、読み出
しクロック(RCLK)と読み出し許可信号(RE)が
接続されている。そして、読み出し許可信号(RE)が
アサートされているときに、読み出しクロック(RCL
K)のタイミングで、読み出しアドレス(RADR)を
1つずインクリメントする。
【0006】Full−Empty制御回路106は、
書き込み済みのデータ数と読み出し済みのデータ数の差
から有効データ数を求めて、書き込みや読み出しのため
の制御信号を生成するものであり、アップダウンカウン
タ107と信号発生器108から構成されている。な
お、有効データ数とは、メモリ101に保持されている
データのうち、また読み出されていないデータの数を示
す。
【0007】アップダウンカウンタ107には、書き込
み許可信号(WE)がカウントアップ動作を許可するカ
ウントアップイネーブル信号(UPEN)として接続さ
れ、読み出し許可信号(RE)がカウントダウン動作を
許可するカウントダウンイネーブル信号(DNEN)と
して接続されている。そして、いずれかのイネーブル信
号がアサートされているときに、書き込みクロック(W
CLK)のタイミングでカウント動作を行う。このアッ
プダウンカウンタ107のカウント値(CNT)は、有
効データ数に相当し、信号発生器108へ出力される。
【0008】信号発生器108には、アップダウンカウ
ンタ107から出力されるカウント値(CNT)が接続
されている。そして、カウント値(CNT)が0まで減
少したときに、メモリ101から読み出すべきデータが
無いことを示すエンプティ信号(EMP)を読み出し制
御部103へ出力する。また、カウント値(CNT)が
メモリ101に格納可能なワード数aに達したときに、
メモリ101に新規データを書き込むための空き容量が
無いことを示すフル信号(FLL)を書き込み制御部1
02に出力する。
【0009】書き込み制御部102には、フル信号(F
LL)が接続されており、フル信号(FLL)がアサー
トされているときには、メモリ101へのデータの書き
込みを禁止して、データの上書きによるデータ消失を防
止している。
【0010】読み出し制御部103には、エンプティ信
号(EMP)が接続されており、エンプティ信号(EM
P)がアサートされているときには、メモリ101から
のデータの読み出しを禁止して、同一データの2度読み
を防止している。
【0011】図12は、アップダウンカウンタ107を
読み出しクロック(RCLK)のタイミングでカウント
動作させる場合の構成を示す図である。このFIFOメ
モリ制御回路は、図11に示した従来のFIFOメモリ
制御回路と同様の構成であるので、説明を省略する。
【0012】
【発明が解決しようとする課題】上述の図11に示した
従来のFIFOメモリ制御回路において、書き込みクロ
ック(WCLK)と読み出しクロック(RCLK)が同
一周波数である場合には、アップダウンカウンタは書き
込み許可信号(WE)をカウントアップ動作を許可する
カウントアップイネーブル信号とし、読み出し許可信号
(RE)をカウントダウン動作を許可するカウントダウ
ンイネーブル信号として、いずれかのイネーブル信号が
アサートされているときに、書き込みクロック(WCL
K)のタイミングでカウント動作を行う。また、図12
に示した従来のFIFOメモリ制御回路において、書き
込みクロック(WCLK)と読み出しクロック(RCL
K)が同一周波数である場合には、アップダウンカウン
タは書き込み許可信号(WE)をカウントアップ動作を
許可するカウントアップイネーブル信号とし、読み出し
許可信号(RE)をカウントダウン動作を許可するカウ
ントダウンイネーブル信号として、いずれかのイネーブ
ル信号がアサートされているときに、読み出しクロック
(RCLK)のタイミングでカウント動作を行う。
【0013】しかしながら、これら従来のFIFOメモ
リ制御回路においては、書き込みクロック(WCLK)
と読み出しクロック(RCLK)が異なる周波数である
場合には、正確なカウント動作を行うことができない。
【0014】例えば、図11に示したFIFOメモリ制
御回路では、書き込みクロック(WCLK)のタイミン
グでカウント動作する。この場合、書き込みクロック
(WCLK)が読み出しクロック(RCLK)よりも周
波数が高いときには、図13に示すように、カウントダ
ウンイネーブル信号(=RE)がアサートされる期間
が、1回の読み出しについて書き込みクロック(WCL
K)の1周期より長いため、実際には1つのデータしか
読み出されていないのに、カウント値が2つ以上デクリ
メントされるおそれがある。
【0015】一方、図12に示したFIFOメモリ制御
回路では、読み出しクロック(RCLK)のタイミング
でカウント動作する。この場合、書き込みクロック(W
CLK)が読み出しクロック(RCLK)よりも周波数
が高いときには、図14に示すように、実際にはデータ
が書き込まれているのにカウント値がインクリメントさ
れないという問題が生じる。
【0016】さらに、読み出しクロック(RCLK)が
書き込みクロック(WCLK)よりも周波数が高いとき
には、図11に示したFIFOメモリ制御回路で、デー
タが読み出されているのにも関わらずカウント値がデク
リメントされないという問題が生じ、図12に示したF
IFOメモリ制御回路で、1つのデータしか書き込まれ
ていないのに、カウント値が2つ以上インクリメントさ
れるおそれがある。
【0017】本発明は、このような従来技術の課題を解
決すべくなされたものであり、読み出しクロックと書き
込みクロックの周波数が異なる場合に、データの上書き
によるデータの消失や同一データの2度読みを防止する
ために、メモリ内の有効データ数を正しくカウントする
ことができるFIFOメモリ制御回路を提供することを
目的とする。
【0018】
【課題を解決するための手段】本発明のFIFOメモリ
制御回路は、書き込みクロックの周波数が読み出しクロ
ックの周波数よりも高い場合に用いられるFIFOメモ
リ制御回路であって、書き込みアドレスを発生する書き
込みアドレス発生回路と、読み出しアドレスを発生する
読み出しアドレス発生回路と、所定数のワードを格納可
能な記憶容量を有し、書き込み許可信号がアサートされ
ているときに、該書き込みクロックに同期して該書き込
みアドレスに指定された場所に書き込みデータが書き込
まれ、読み出し許可信号がアサートされているときに、
該読み出しクロックに同期して該読み出しアドレスに指
定された場所から読み出しデータが読み出されるメモリ
と、該読み出しアドレスの最下位ビットと該書き込みク
ロックに基づいて、カウントダウンイネーブル信号を生
成するカウントダウンイネーブル信号生成回路と、カウ
ントアップイネーブル信号として該書き込み許可信号が
アサートされているときに、該書き込みクロックに同期
してカウントアップし、該カウントダウンイネーブル信
号がアサートされているときに、該書き込みクロックに
同期してカウントダウンするアップダウンカウンタとを
備えており、そのことにより上記目的が達成される。
【0019】前記カウントダウンイネーブル信号の周期
は、前記書き込みクロックの1周期分であればよい。
【0020】本発明のFIFOメモリ制御回路は、読み
出しクロックの周波数が書き込みクロックの周波数より
も高い場合に用いられるFIFOメモリ制御回路であっ
て、書き込みアドレスを発生する書き込みアドレス発生
回路と、読み出しアドレスを発生する読み出しアドレス
発生回路と、所定数のワードを格納可能な記憶容量を有
し、書き込み許可信号がアサートされているときに、該
書き込みクロックに同期して該書き込みアドレスに指定
された場所に書き込みデータが書き込まれ、読み出し許
可信号がアサートされているときに、該読み出しクロッ
クに同期して該読み出しアドレスに指定された場所から
読み出しデータが読み出されるメモリと、該書き込みア
ドレスの最下位ビットと該読み出しクロックに基づい
て、カウントダウンイネーブル信号を生成するカウント
アップイネーブル信号生成回路と、該カウントアップイ
ネーブル信号がアサートされているときに、該読み出し
クロックに同期してカウントアップし、カウントダウン
イネーブル信号として該読み出し許可信号がアサートさ
れているときに、該読み出しクロックに同期してカウン
トダウンするアップダウンカウンタとを備えており、そ
のことにより上記目的が達成される。
【0021】前記カウントアップイネーブル信号の周期
は、前記読み出しクロックの1周期分であればよい。
【0022】本発明のFIFOメモリ制御回路は、書き
込みクロックの周波数と読み出しクロックの周波数とが
異なる場合に用いられるFIFOメモリ制御回路であっ
て、書き込みアドレスを発生する書き込みアドレス発生
回路と、読み出しアドレスを発生する読み出しアドレス
発生回路と、所定数のワードを格納可能な記憶容量を有
し、書き込み許可信号がアサートされているときに、該
書き込みクロックに同期して該書き込みアドレスに指定
された場所に書き込みデータが書き込まれ、読み出し許
可信号がアサートされているときに、該読み出しクロッ
クに同期して該読み出しアドレスに指定された場所から
読み出しデータが読み出されるメモリと、該読み出しア
ドレスの最下位ビットと、該書き込みクロックおよび該
読み出しクロックのうちの周波数が高い方のクロックと
に基づいて、カウントダウンイネーブル信号を生成する
カウントダウンイネーブル信号生成回路と、該書き込み
アドレスの最下位ビットと、該書き込みクロックおよび
該読み出しクロックのうちの周波数が高い方のクロック
とに基づいて、カウントアップイネーブル信号を生成す
るカウントアップイネーブル信号生成回路と、該カウン
トアップイネーブル信号がアサートされているときに、
該書き込みクロックおよび該読み出しクロックのうちの
周波数が高い方のクロックに同期してカウントアップ
し、該カウントダウンイネーブル信号がアサートされて
いるときに、該書き込みクロックおよび該読み出しクロ
ックのうちの周波数が高い方のクロックに同期してカウ
ントダウンするアップダウンカウンタとを備えており、
そのことにより上記目的が達成される。
【0023】前記カウントダウンイネーブル信号の周期
は、前記書き込みクロックおよび前記読み出しクロック
のうちの周波数が高い方のクロックの1周期分であれば
よく、前記カウントアップイネーブル信号の周期は、該
書き込みクロックおよび該読み出しクロックのうちの周
波数が高い方のクロックの1周期分であればよい。
【0024】本発明のFIFOメモリ制御回路は、前記
アップダウンカウンタのカウント値が0のときに、前記
メモリから読み出すべきデータが無いことを示すエンプ
ティ信号を出力し、該アップダウンカウンタのカウント
値が該メモリに格納可能な所定のワード数であるとき
に、該メモリに新規データを書き込むための空き容量が
無いことを示すフル信号を出力するメモリ監視部をさら
に備えている構成とすることができる。
【0025】本発明のFIFOメモリ制御回路は、前記
フル信号に基づいて、前記メモリへの書き込みデータの
書き込みを制御する書き込み制御回路と、前記エンプテ
ィ信号に基づいて、該メモリからの読み出しデータの読
み出しを制御する読み出し制御回路とを備えている構成
とすることができる。
【0026】以下、本発明の作用について説明する。
【0027】本発明にあっては、後述する実施形態1に
示すように、書き込みクロック(WCLK)の周波数が
読み出しクロック(RCLK)の周波数よりも高い場合
に、カウントダウンイネーブル信号生成回路が、読み出
しアドレス(RADR)の最下位ビット(RADR0)
と書き込みクロック(WCLK)に基づいてカウントダ
ウンイネーブル信号(DNEN)を生成する。これによ
り、カウントダウンイネーブル信号(DNEN)を、デ
ータの読み出しが1回行われる毎に、書き込みクロック
(WCLK)のタイミングに同期させてアップダウンカ
ウンタにアサートすることができる。
【0028】アップダウンカウンタは、このカウントダ
ウンイネーブル信号(DNEN)がアサートされている
ときに、書き込みクロック(WCLK)に同期してカウ
ントダウンするので、データの読み出しが1回行われる
毎にカウント値(CNT)を1回デクリメントすること
が可能である。アップダウンカウンタは、書き込み許可
信号(WE)がアサートされているときには、これをカ
ウントアップイネーブル信号(UPEN)として書き込
みクロック(WCLK)に同期してカウントアップする
ので、データの書き込みが1回行われる毎にカウント値
(CNT)を1回インクリメントすることが可能であ
る。
【0029】このカウントダウンイネーブル信号(DN
EN)の周期は、書き込みクロック(WCLK)の1周
期分であればよい。
【0030】本発明にあっては、後述する実施形態2に
示すように、読み出しクロック(RCLK)の周波数が
書き込みクロック(WCLK)の周波数よりも高い場合
に、カウントアップイネーブル信号生成回路が、書き込
みアドレス(WADR)の最下位ビット(WADR0)
と読み出しクロック(RCLK)に基づいてカウントア
ップイネーブル信号(UPEN)を生成する。これによ
り、カウントアップイネーブル信号(UPEN)を、デ
ータの書き込みが1回行われる毎に、読み出しクロック
(RCLK)のタイミングに同期させてアップダウンカ
ウンタにアサートすることができる。アップダウンカウ
ンタは、このカウントアップイネーブル信号(UPE
N)がアサートされているときに、読み出しクロック
(RCLK)に同期してカウントアップするので、デー
タの書き込みが1回行われる毎にカウント値(CNT)
を1回インクリメントすることが可能である。アップダ
ウンカウンタは、読み出し許可信号(RE)がアサート
されているときには、これをカウントダウンイネーブル
信号(DNEN)として読み出しクロック(RCLK)
に同期してカウントダウンするので、データの読み出し
が1回行われる毎にカウント値(CNT)を1回デクリ
メントすることが可能である。
【0031】このカウントアップイネーブル信号(UP
EN)の周期は、読み出しクロック(RCLK)の1周
期分であればよい。
【0032】本発明にあっては、後述する実施形態3に
示すように、書き込みクロック(WCLK)の周波数と
読み出しクロック(RCLK)の周波数とが異なる場合
に、カウントダウンイネーブル信号生成回路が、読み出
しアドレス(RADR)の最下位ビット(RADR0)
と、書き込みクロック(WCLK)および読み出しクロ
ック(RCLK)のうちの周波数が高い方のクロックと
に基づいて、カウントダウンイネーブル信号(DNE
N)を生成する。これにより、カウントダウンイネーブ
ル信号(DNEN)を、データの読み出しが1回行われ
る毎に、書き込みクロック(WCLK)および読み出し
クロック(RCLK)のうちの周波数が高い方のクロッ
クのタイミングに同期させてアップダウンカウンタにア
サートすることができる。また、カウントアップイネー
ブル信号生成回路は、書き込みアドレス(WADR)の
最下位ビット(WADR0)と、書き込みクロック(W
CLK)および読み出しクロック(RCLK)のうちの
周波数が高い方のクロックとに基づいて、カウントアッ
プイネーブル信号(UPEN)を生成する。これによ
り、カウントアップイネーブル信号(UPEN)を、デ
ータの書き込みが1回行われる毎に、書き込みクロック
(WCLK)および読み出しクロック(RCLK)のう
ちの周波数が高い方のクロックのタイミングに同期させ
てアップダウンカウンタにアサートすることができる。
アップダウンカウンタは、このカウントダウンイネーブ
ル信号(DNEN)がアサートされているときに、書き
込みクロック(WCLK)および読み出しクロック(R
CLK)のうちの周波数が高い方のクロックに同期して
カウントダウンするので、データの読み出しが1回行わ
れる毎にカウント値(CNT)を1回デクリメントする
ことが可能である。また、アップダウンカウンタは、カ
ウントアップイネーブル信号(DNEN)がアサートさ
れているときに、書き込みクロック(WCLK)および
読み出しクロック(RCLK)のうちの周波数が高い方
のクロックに同期してカウントアップするので、データ
の書き込みが1回行われる毎にカウント値(CNT)を
1回インクリメントすることが可能である。
【0033】このカウントダウンイネーブル信号(DN
EN)の周期およびカウントアップイネーブル信号(U
PEN)の周期は、書き込みクロック(WCLK)およ
び読み出しクロック(RCLK)のうちの周波数が高い
方のクロックの1周期分であればよい。
【0034】アップダウンカウンタのカウント値(CN
T)が0のときには、メモリ監視部から出力されたエン
プティ信号(EMP)に基づいて、読み出し制御回路が
メモリからの読み出しデータ(RDATA)の読み出し
を制御する。また、アップダウンカウンタのカウント値
(CNT)がメモリに格納可能な所定のワード数である
ときには、メモリ監視部から出力されたフル信号(FL
L)に基づいて、書き込み制御部がメモリへの書き込み
データ(WDATA)の書き込みを制御する。本発明に
あっては、アップダウンカウンタがメモリ内の有効デー
タ数を正しく計数しているので、同一データの2度読み
やデータの上書きによるデータ消失を防止することが可
能である。
【0035】
【発明の実施の形態】以下に、本発明の実施の形態につ
いて、図面を参照しながら説明する。
【0036】(実施形態1)図1は実施形態1のFIF
Oメモリ制御回路の構成を示すブロック図である。
【0037】このFIFOメモリ制御回路は、メモリ1
0、書き込み制御部11、読み出し制御部12、書き込
みアドレス回路13、読み出しアドレス回路14、アッ
プダウンカウンタ15、メモリ容量監視部16およびカ
ウントダウンイネーブル信号生成回路17を備えてい
る。
【0038】メモリ10、書き込み制御部11、読み出
し制御部12、書き込みアドレス回路13および読み出
しアドレス回路14は、図11に示した従来のFIFO
メモリ制御回路におけるメモリ101、書き込み制御部
102、読み出し制御部103、書き込みアドレス回路
104および読み出しアドレス回路105と同一の構成
であるので、説明を省略する。なお、本実施形態1で
は、メモリ10が5ワードの記憶容量を有し、書き込み
クロック(WCLK)の周波数が読み出しクロック(R
CLK)よりも高いものとする。
【0039】アップダウンカウンタ15には、カウント
アップ動作を許可するカウントアップイネーブル信号
(UPEN)として、書き込み制御部11から出力され
る書き込み許可信号(WE)が接続され、カウントダウ
ンイネーブル信号生成回路17によって生成されたカウ
ントダウン動作を許可するカウントダウンイネーブル信
号(DNEN)が接続されている。さらに、カウントク
ロック(FASTCLK)として読み出しクロック(R
CLK)よりも周波数の高い書き込みクロック(WCL
K)が接続されている。これらの信号に基づいて、カウ
ントアップイネーブル信号(UPEN)がアサートされ
ているときに、書き込み動作が1回行われる毎に書き込
みクロック(WCLK)のタイミングで1つインクリメ
ントし、カウントダウンイネーブル信号(DNEN)が
アサートされているときに、読み出し動作が1回行われ
る毎に書き込みクロック(WCLK)のタイミングで1
つデクリメントする。このアップダウンカウンタ15の
カウント値(CNT)は、有効データ数としてメモリ容
量監視部16に出力される。
【0040】以下に、アップダウンカウンタ15のカウ
ントダウン動作について、図2および図3を用いて具体
的に説明する。図2はカウントダウンイネーブル信号を
生成するカウントダウンイネーブル信号生成回路17の
一例を示す回路図であり、図3は図4に示すカウントダ
ウンイネーブル信号生成回路各部の信号およびアップダ
ウンカウンタ各部の信号を示すタイムチャートである。
【0041】まず、読み出しアドレス(RADR)の最
下位ビットの値(RADR0)は、図3の(B)に示す
ように、読み出しアドレスが変化する毎に0、1の順番
で繰り返し変化する信号である。読み出しアドレスは、
図3の(F)に示す読み出し許可信号(RE)がアサー
トされているときに、図3の(A)に示す読み出しクロ
ック(RCLK)のタイミングで読み出され、次の読み
出しアドレスに変化する。
【0042】次に、図2に示すカウントダウンイネーブ
ル信号生成回路は、2つのフリップフロップ201、2
02とEX−OR203とで構成されている。フリップ
フロップ201は、図3の(C)に示すように、図3の
(B)に示す読み出しアドレスの最下位ビットの値(R
ADR0)を、図3の(G)に示す書き込みクロック
(WCLK(FASTCLK))のタイミングで取り込
み、出力する。フリップフロップ202は、図3の
(D)に示すように、図3の(C)に示すフリップフロ
ップ201の出力を、図3の(G)に示す書き込みクロ
ック(WCLK(FASTCLK))のタイミングで取
り込み、出力する。EX−OR203は、図3の(E)
に示すように、図3の(C)に示すフリップフロップ2
01の出力と、図3の(D)に示すフリップフロップ2
02の出力とを排他的論理和したものを、カウントダウ
ンイネーブル信号(DNEN)として出力する。これに
より、カウントダウンイネーブル信号(DNEN)は、
書き込みクロック(WCLK)に同期し、かつ、読み出
しが1回行われる毎に書き込みクロック(WCLK)の
1周期分の時間だけ、アップダウンカウンタ15にアサ
ートされる。よって、アップダウンカウンタ15は、読
み出しが1回行われる毎にカウント値(CNT)を1回
デクリメントすることができる。なお、図3の(H)
は、カウントアップイネーブル信号(UPNE)として
も用いられる書き込み許可信号(WE)であり、図3の
(I)はアップダウンカウンタの出力である。
【0043】上記図3において、(E)信号は(G)信
号の立ち上がりエッジから生成されるため、(E)信号
がアサートされるまでに時間的な遅れがある。よって、
実際にカウント動作が行われるのは(G)信号の次の立
ち上がりエッジであることを示すため、本実施形態では
意図的に(G)信号と(E)信号の変化するタイミング
をずらしている。(E)信号と(G)信号とが同時に変
化した場合、(G)信号のどちらの立ち上がりエッジで
カウント動作が行われるのかが分からなくなるおそれが
あるからである。このことは、以下の実施形態2および
実施形態3でも同様に考慮している。
【0044】メモリ容量監視部16には、アップダウン
カウンタ15から出力されるカウント値(CNT)が接
続されている。そして、カウント値(CNT)が0であ
れば、メモリ10から読み出すべきデータが無いことを
示すエンプティ信号(EMP)を読み出し制御部12へ
出力する。また、カウント値(CNT)がメモリ10に
格納可能なワード数(ここでは5)に達したときに、メ
モリ10に新規データを書き込むための空き容量が無い
ことを示すフル信号(FLL)を書き込み制御部11に
出力する。
【0045】以上の構成により、メモリ内の有効データ
数を正しく計数することができる。よって、書き込み制
御部11にフル信号(FLL)がアサートされていると
きにメモリ10へのデータの書き込みを禁止して、デー
タの上書きによるデータ消失を防止すると共に、読み出
し制御部12にエンプティ信号(EMP)がアサートさ
れているときにメモリ10からのデータの読み出しを禁
止して同一データの2度読みを防止することができる。
【0046】(実施形態2)図4は実施形態2のFIF
Oメモリ制御回路の構成を示すブロック図である。
【0047】このFIFOメモリ制御回路は、メモリ2
0、書き込み制御部21、読み出し制御部22、書き込
みアドレス回路23、読み出しアドレス回路24、アッ
プダウンカウンタ25、メモリ容量監視部26およびカ
ウントダウンイネーブル信号生成回路27を備えてい
る。
【0048】メモリ20、書き込み制御部21、読み出
し制御部22、書き込みアドレス回路23および読み出
しアドレス回路24は、図11に示した従来のFIFO
メモリ制御回路におけるメモリ101、書き込み制御部
102、読み出し制御部103、書き込みアドレス回路
104および読み出しアドレス回路105と同一の構成
であるので、説明を省略する。なお、本実施形態2で
は、メモリ20が5ワードの記憶容量を有し、読み出し
クロック(RCLK)の周波数が書き込みクロック(2
CLK)よりも高いものとする。
【0049】アップダウンカウンタ25には、カウント
ダウン動作を許可するカウントダウンイネーブル信号
(DNEN)として、読み出し制御部22から出力され
る読み出し許可信号(RE)が接続され、カウントアッ
プイネーブル信号生成回路27によって生成されたカウ
ントアップ動作を許可するカウントアップイネーブル信
号(UPEN)が接続されている。さらに、カウントク
ロック(FASTCLK)として書き込みクロック(W
CLK)よりも周波数の高い読み出しクロック(RCL
K)が接続されている。これらの信号に基づいて、カウ
ントアップイネーブル信号(UPEN)がアサートされ
ているときに、書き込み動作が1回行われる毎に読み出
しクロック(RCLK)のタイミングで1つインクリメ
ントし、カウントダウンイネーブル信号(DNEN)が
アサートされているときに、読み出し動作が1回行われ
る毎に読み出しクロック(RCLK)のタイミングで1
つデクリメントする。このアップダウンカウンタ25の
カウント値(CNT)は、有効データ数としてメモリ容
量監視部26に出力される。
【0050】以下に、アップダウンカウンタ25のカウ
ントアップ動作について、図5および図6を用いて具体
的に説明する。図5はカウントアップイネーブル信号を
生成するカウントアップイネーブル信号生成回路27の
一例を示す回路図であり、図6は図5に示すカウントア
ップイネーブル信号生成回路各部の信号およびアップダ
ウンカウンタ各部の信号を示すタイムチャートである。
【0051】まず、書き込みアドレス(WADR)の最
下位ビットの値(WADR0)は、図6の(B)に示す
ように、書き込みアドレスが変化する毎に0、1の順番
で繰り返し変化する信号である。書き込みアドレスは、
図6の(F)に示す書き込み許可信号(WE)がアサー
トされているときに、図6の(A)に示す書き込みクロ
ック(WCLK)のタイミングで書き込まれ、次の書き
込みアドレスに変化する。
【0052】次に、図5に示すカウントアップイネーブ
ル信号生成回路は、2つのフリップフロップ301、3
02とEX−OR303とで構成されている。フリップ
フロップ301は、図6の(C)に示すように、図6の
(B)に示す書き込みアドレスの最下位ビットの値(W
ADR0)を、図6の(G)に示す読み出しクロック
(RCLK(FASTCLK))のタイミングで取り込
み、出力する。フリップフロップ302は、図6の
(D)に示すように、図6の(C)に示すフリップフロ
ップ301の出力を、図6の(G)に示す読み出しクロ
ック(RCLK(FASTCLK))のタイミングで取
り込み、出力する。EX−OR303は、図6の(E)
に示すように、図6の(C)に示すフリップフロップ3
01の出力と、図6の(D)に示すフリップフロップ3
02の出力とを排他的論理和したものを、カウントアッ
プイネーブル信号(UPEN)として出力する。これに
より、カウントアップイネーブル信号(UPEN)は、
読み出しクロック(RCLK)に同期し、かつ、書き込
みが1回行われる毎に読み出しクロック(RCLK)の
1周期分の時間だけ、アップダウンカウンタ25にアサ
ートされる。よって、アップダウンカウンタ25は、書
き込みが1回行われる毎にカウント値(CNT)を1回
インクリメントすることができる。なお、図6の(H)
は、カウントダウンイネーブル信号(DNEN)として
も用いられる読み出し許可信号(RE)であり、図6の
(I)はアップダウンカウンタの出力である。
【0053】メモリ容量監視部26には、アップダウン
カウンタ25から出力されるカウント値(CNT)が接
続されている。そして、カウント値(CNT)が0であ
れば、メモリ20から読み出すべきデータが無いことを
示すエンプティ信号(EMP)を読み出し制御部22へ
出力する。また、カウント値(CNT)がメモリ20に
格納可能なワード数(ここでは5)に達したときに、メ
モリ20に新規データを書き込むための空き容量が無い
ことを示すフル信号(FLL)を書き込み制御部21に
出力する。
【0054】以上の構成により、メモリ内の有効データ
数を正しく計数することができる。よって、書き込み制
御部21にフル信号(FLL)がアサートされていると
きにメモリ20へのデータの書き込みを禁止して、デー
タの上書きによるデータ消失を防止すると共に、読み出
し制御部22にエンプティ信号(EMP)がアサートさ
れているときにメモリ20からのデータの読み出しを禁
止して同一データの2度読みを防止することができる。
【0055】(実施形態3)図7は実施形態3のFIF
Oメモリ制御回路の構成を示すブロック図である。
【0056】このFIFOメモリ制御回路は、メモリ3
0、書き込み制御部31、読み出し制御部32、書き込
みアドレス回路33、読み出しアドレス回路34、アッ
プダウンカウンタ35、メモリ容量監視部36、カウン
トアップイネーブル信号生成回路37およびカウントダ
ウンイネーブル信号生成回路38を備えている。
【0057】メモリ30、書き込み制御部31、読み出
し制御部32、書き込みアドレス回路33および読み出
しアドレス回路34は、図11に示した従来のFIFO
メモリ制御回路におけるメモリ101、書き込み制御部
102、読み出し制御部103、書き込みアドレス回路
104および読み出しアドレス回路105と同一の構成
であるので、説明を省略する。なお、本実施形態3で
は、メモリ30が5ワードの記憶容量を有し、書き込み
クロック(WCLK)の周波数が読み出しクロック(R
CLK)よりも高いものとする。
【0058】アップダウンカウンタ35には、カウント
アップイネーブル信号生成回路37によって生成された
カウントアップ動作を許可するカウントアップイネーブ
ル信号(UPEN)が接続され、カウントダウンイネー
ブル信号生成回路38によって生成されたカウントダウ
ンを許可するカウントダウンイネーブル信号(DNE
N)が接続されている。さらに、カウントクロック(F
ASTCLK)として読み出しクロック(RCLK)よ
りも周波数の高い書き込みクロック(WCLK)が接続
されている。これらの信号に基づいて、カウントアップ
イネーブル信号(UPEN)がアサートされているとき
に、書き込み動作が1回行われる毎に書き込みクロック
(WCLK)のタイミングで1つインクリメントし、カ
ウントダウンイネーブル信号(DNEN)がアサートさ
れているときに、読み出し動作が1回行われる毎に書き
込みクロック(WCLK)のタイミングで1つデクリメ
ントする。このアップダウンカウンタ35のカウント値
(CNT)は、有効データ数としてメモリ容量監視部3
6に出力される。
【0059】以下に、アップダウンカウンタ35のカウ
ントダウン動作およびについて、図8、図9および図1
0を用いて具体的に説明する。図8はカウントアップイ
ネーブル信号を生成するカウントアップイネーブル信号
生成回路37の一例を示す回路図であり、図9はカウン
トダウンイネーブル信号を生成するカウントダウンイネ
ーブル信号生成回路38の一例を示す回路図であり、図
10は図8に示すカウントアップイネーブル信号生成回
路各部の信号、図9に示すカウントダウンイネーブル信
号生成回路各部の信号およびアップダウンカウンタ各部
の信号を示すタイムチャートである。
【0060】まず、書き込みアドレス(2ADR)の最
下位ビットの値(2ADR0)は、図10の(H)に示
すように、書き込みアドレスが変化する毎に0、1の順
番で繰り返し変化する信号である。書き込みアドレス
は、図10の(L)に示す書き込み許可信号(WE)が
アサートされているときに、図10の(G)に示す書き
込みクロック(RCLK(FASTCLK))のタイミ
ングで書き込まれ、次の書き込みアドレスに変化する。
また、読み出しアドレス(RADR)の最下位ビットの
値(RADR0)は、図10の(B)に示すように、読
み出しアドレスが変化する毎に0、1の順番で繰り返し
変化する信号である。読み出しアドレスは、図10の
(F)に示す読み出し許可信号(RE)がアサートされ
ているときに、図10の(A)に示す読み出しクロック
(RCLK)のタイミングで読み出され、次の読み出し
アドレスに変化する。
【0061】次に、図8に示すカウントアップイネーブ
ル信号生成回路は、2つのフリップフロップ401、4
02とEX−OR403とで構成されている。フリップ
フロップ401は、図10の(I)に示すように、図1
0の(H)に示す書き込みアドレスの最下位ビットの値
(WADR0)を、図10の(G)に示す書き込みクロ
ック(WCLK(FASTCLK))のタイミングで取
り込み、出力する。フリップフロップ402は、図10
の(J)に示すように、図10の(I)に示すフリップ
フロップ401の出力を、図10の(G)に示す書き込
みクロック(WCLK(FASTCLK))のタイミン
グで取り込み、出力する。EX−OR403は、図10
の(K)に示すように、図10の(I)に示すフリップ
フロップ401の出力と、図10の(J)に示すフリッ
プフロップ402の出力とを排他的論理和したものを、
カウントアップイネーブル信号(UPEN)として出力
する。これにより、カウントアップイネーブル信号(U
PEN)は、書き込みクロック(WCLK)に同期し、
かつ、書き込みが1回行われる毎に書き込みクロック
(WCLK)の1周期分の時間だけ、アップダウンカウ
ンタ35にアサートされる。よって、アップダウンカウ
ンタ35は、書き込みが1回行われる毎にカウント値
(CNT)を1回インクリメントすることができる。
【0062】次に、図9に示すカウントダウンイネーブ
ル信号生成回路は、2つのフリップフロップ501、5
02とEX−OR503とで構成されている。フリップ
フロップ501は、図9の(C)に示すように、図9の
(B)に示す読み出しアドレスの最下位ビットの値(R
ADR0)を、図9の(G)に示す書き込みクロック
(WCLK(FASTCLK))のタイミングで取り込
み、出力する。フリップフロップ502は、図9の
(D)に示すように、図9の(C)に示すフリップフロ
ップ501の出力を、図9の(G)に示す書き込みクロ
ック(WCLK(FASTCLK))のタイミングで取
り込み、出力する。EX−OR503は、図9の(E)
に示すように、図9の(C)に示すフリップフロップ5
01の出力と、図9の(D)に示すフリップフロップ5
02の出力とを排他的論理和したものを、カウントダウ
ンイネーブル信号(DNEN)として出力する。これに
より、カウントダウンイネーブル信号(DNEN)は、
書き込みクロック(WCLK)に同期し、かつ、読み出
しが1回行われる毎に書き込みクロック(WCLK)の
1周期分の時間だけ、アップダウンカウンタ35にアサ
ートされる。よって、アップダウンカウンタ35は、読
み出しが1回行われる毎にカウント値(CNT)を1回
デクリメントすることができる。なお、図10の(M)
は、アップダウンカウンタの出力である。
【0063】メモリ容量監視部36には、アップダウン
カウンタ35から出力されるカウント値(CNT)が接
続されている。そして、カウント値(CNT)が0であ
れば、メモリ30から読み出すべきデータが無いことを
示すエンプティ信号(EMP)を読み出し制御部32へ
出力する。また、カウント値(CNT)がメモリ30に
格納可能なワード数(ここでは5)に達したときに、メ
モリ30に新規データを書き込むための空き容量が無い
ことを示すフル信号(FLL)を書き込み制御部31に
出力する。
【0064】以上の構成により、メモリ内の有効データ
数を正しく計数することができる。よって、書き込み制
御部31にフル信号(FLL)がアサートされていると
きにメモリ30へのデータの書き込みを禁止して、デー
タの上書きによるデータ消失を防止すると共に、読み出
し制御部32にエンプティ信号(EMP)がアサートさ
れているときにメモリ30からのデータの読み出しを禁
止して同一データの2度読みを防止することができる。
【0065】上記実施形態1〜実施形態3では、メモリ
10、20、30の記憶容量を5ワードとしたが、本発
明はこれに限定されるものではなく、任意の記憶容量に
対して適応可能である。また、実施形態3では書き込み
クロックの周波数が読み出しクロックの周波数よりも高
いものとしたが、読み出しクロックの周波数の方が高い
場合には、アップダウンカウンタ35に読み出しクロッ
クを接続することにより本発明を適用可能であること
は、容易に推測することができる。
【0066】
【発明の効果】以上詳述したように、本発明によれば、
読み出しクロックと書き込みクロックの周期が異なる場
合に、アップダウンカウンタのカウント動作を許可する
信号を、書き込みクロックと読み出しクロックの周波数
が高い方のクロックに同期させ、かつ、1回の書き込み
および読み出し毎に、周波数が高い方のクロックの1周
期以上2周期未満分の時間だけアサートすることによ
り、メモリ内の有効データ数を正しく計数することがで
きるFIFOメモリ制御回路を実現することができる。
よって、メモリへのデータの上書きによるデータ消失を
防止すると共に、メモリからの同一データの2度読みを
防止することができる。
【図面の簡単な説明】
【図1】実施形態1のFIFOメモリ制御回路の構成を
示すブロック図である。
【図2】実施形態1のFIFOメモリ制御回路における
カウントダウンイネーブル信号生成回路の一例を示す回
路図である。
【図3】実施形態1のFIFOメモリ制御回路における
各部の信号を示すタイムチャートである。
【図4】実施形態2のFIFOメモリ制御回路の構成を
示すブロック図である。
【図5】実施形態2のFIFOメモリ制御回路における
カウントアップイネーブル信号生成回路の一例を示す回
路図である。
【図6】実施形態2のFIFOメモリ制御回路における
各部の信号を示すタイムチャートである。
【図7】実施形態3のFIFOメモリ制御回路の構成を
示すブロック図である。
【図8】実施形態3のFIFOメモリ制御回路における
カウントアップイネーブル信号生成回路の一例を示す回
路図である。
【図9】実施形態3のFIFOメモリ制御回路における
カウントダウンイネーブル信号生成回路の一例を示す回
路図である。
【図10】実施形態3のFIFOメモリ制御回路におけ
る各部の信号を示すタイムチャートである。
【図11】従来のFIFOメモリ制御回路の構成を示す
ブロック図である。
【図12】従来のFIFOメモリ制御回路の構成を示す
ブロック図である。
【図13】従来のFIFOメモリ制御回路の問題点を説
明するためのタイムチャートである。
【図14】従来のFIFOメモリ制御回路の問題点を説
明するためのタイムチャートである。
【符号の説明】
10、20、30、101メモリ 11、21、31、102 書き込み制御部 12、22、32、103 読み出し制御部 13、23、33、104 書き込みアドレス回路 14、24、34、105 読み出しアドレス回路 15、25、35、107 アップダウンカウンタ 16、26、36 メモリ容量監視部 27、37 カウントアップイネーブル信号生成回路 17、38 カウントダウンイネーブル信号生成回路 108 信号発生器 106 Full−Empty制御回路 201、202、301、302、401、402、5
01、502 フリップフロップ 203、303、403、503 EX−OR

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 書き込みクロックの周波数が読み出しク
    ロックの周波数よりも高い場合に用いられるFIFOメ
    モリ制御回路であって、 書き込みアドレスを発生する書き込みアドレス発生回路
    と、 読み出しアドレスを発生する読み出しアドレス発生回路
    と、 所定数のワードを格納可能な記憶容量を有し、書き込み
    許可信号がアサートされているときに、該書き込みクロ
    ックに同期して該書き込みアドレスに指定された場所に
    書き込みデータが書き込まれ、読み出し許可信号がアサ
    ートされているときに、該読み出しクロックに同期して
    該読み出しアドレスに指定された場所から読み出しデー
    タが読み出されるメモリと、 該読み出しアドレスの最下位ビットと該書き込みクロッ
    クに基づいて、カウントダウンイネーブル信号を生成す
    るカウントダウンイネーブル信号生成回路と、 カウントアップイネーブル信号として該書き込み許可信
    号がアサートされているときに、該書き込みクロックに
    同期してカウントアップし、該カウントダウンイネーブ
    ル信号がアサートされているときに、該書き込みクロッ
    クに同期してカウントダウンするアップダウンカウンタ
    とを備えているFIFOメモリ制御回路。
  2. 【請求項2】 前記カウントダウンイネーブル信号の周
    期は、前記書き込みクロックの1周期分である請求項1
    に記載のFIFOメモリ制御回路。
  3. 【請求項3】 読み出しクロックの周波数が書き込みク
    ロックの周波数よりも高い場合に用いられるFIFOメ
    モリ制御回路であって、 書き込みアドレスを発生する書き込みアドレス発生回路
    と、 読み出しアドレスを発生する読み出しアドレス発生回路
    と、 所定数のワードを格納可能な記憶容量を有し、書き込み
    許可信号がアサートされているときに、該書き込みクロ
    ックに同期して該書き込みアドレスに指定された場所に
    書き込みデータが書き込まれ、読み出し許可信号がアサ
    ートされているときに、該読み出しクロックに同期して
    該読み出しアドレスに指定された場所から読み出しデー
    タが読み出されるメモリと、 該書き込みアドレスの最下位ビットと該読み出しクロッ
    クに基づいて、カウントダウンイネーブル信号を生成す
    るカウントアップイネーブル信号生成回路と、 該カウントアップイネーブル信号がアサートされている
    ときに、該読み出しクロックに同期してカウントアップ
    し、カウントダウンイネーブル信号として該読み出し許
    可信号がアサートされているときに、該読み出しクロッ
    クに同期してカウントダウンするアップダウンカウンタ
    とを備えているFIFOメモリ制御回路。
  4. 【請求項4】 前記カウントアップイネーブル信号の周
    期は、前記読み出しクロックの1周期分である請求項3
    に記載のFIFOメモリ制御回路。
  5. 【請求項5】 書き込みクロックの周波数と読み出しク
    ロックの周波数とが異なる場合に用いられるFIFOメ
    モリ制御回路であって、 書き込みアドレスを発生する書き込みアドレス発生回路
    と、 読み出しアドレスを発生する読み出しアドレス発生回路
    と、 所定数のワードを格納可能な記憶容量を有し、書き込み
    許可信号がアサートされているときに、該書き込みクロ
    ックに同期して該書き込みアドレスに指定された場所に
    書き込みデータが書き込まれ、読み出し許可信号がアサ
    ートされているときに、該読み出しクロックに同期して
    該読み出しアドレスに指定された場所から読み出しデー
    タが読み出されるメモリと、 該読み出しアドレスの最下位ビットと、該書き込みクロ
    ックおよび該読み出しクロックのうちの周波数が高い方
    のクロックとに基づいて、カウントダウンイネーブル信
    号を生成するカウントダウンイネーブル信号生成回路
    と、 該書き込みアドレスの最下位ビットと、該書き込みクロ
    ックおよび該読み出しクロックのうちの周波数が高い方
    のクロックとに基づいて、カウントアップイネーブル信
    号を生成するカウントアップイネーブル信号生成回路
    と、 該カウントアップイネーブル信号がアサートされている
    ときに、該書き込みクロックおよび該読み出しクロック
    のうちの周波数が高い方のクロックに同期してカウント
    アップし、該カウントダウンイネーブル信号がアサート
    されているときに、該書き込みクロックおよび該読み出
    しクロックのうちの周波数が高い方のクロックに同期し
    てカウントダウンするアップダウンカウンタとを備えて
    いるFIFOメモリ制御回路。
  6. 【請求項6】 前記カウントダウンイネーブル信号の周
    期は、前記書き込みクロックおよび前記読み出しクロッ
    クのうちの周波数が高い方のクロックの1周期分であ
    り、前記カウントアップイネーブル信号の周期は、該書
    き込みクロックおよび該読み出しクロックのうちの周波
    数が高い方のクロックの1周期分である請求項5に記載
    のFIFOメモリ制御回路。
  7. 【請求項7】 前記アップダウンカウンタのカウント値
    が0のときに、前記メモリから読み出すべきデータが無
    いことを示すエンプティ信号を出力し、該アップダウン
    カウンタのカウント値が該メモリに格納可能な所定のワ
    ード数であるときに、該メモリに新規データを書き込む
    ための空き容量が無いことを示すフル信号を出力するメ
    モリ監視部をさらに備えている請求項1乃至請求項6の
    いずれかに記載のFIFOメモリ制御回路。
  8. 【請求項8】 前記フル信号に基づいて、前記メモリへ
    の書き込みデータの書き込みを制御する書き込み制御回
    路と、 前記エンプティ信号に基づいて、該メモリからの読み出
    しデータの読み出しを制御する読み出し制御回路とを備
    えている請求項7に記載のFIFOメモリ制御回路。
JP2000120041A 2000-04-20 2000-04-20 Fifoメモリ制御回路 Expired - Fee Related JP3815948B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000120041A JP3815948B2 (ja) 2000-04-20 2000-04-20 Fifoメモリ制御回路
US09/802,694 US6470439B2 (en) 2000-04-20 2001-03-08 FIFO memory control circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000120041A JP3815948B2 (ja) 2000-04-20 2000-04-20 Fifoメモリ制御回路

Publications (2)

Publication Number Publication Date
JP2001307476A true JP2001307476A (ja) 2001-11-02
JP3815948B2 JP3815948B2 (ja) 2006-08-30

Family

ID=18630924

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000120041A Expired - Fee Related JP3815948B2 (ja) 2000-04-20 2000-04-20 Fifoメモリ制御回路

Country Status (2)

Country Link
US (1) US6470439B2 (ja)
JP (1) JP3815948B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008541623A (ja) * 2005-05-11 2008-11-20 クゥアルコム・インコーポレイテッド 待ち時間に無感覚なfifoシグナリングプロトコル
KR101123087B1 (ko) * 2003-12-12 2012-03-16 오끼 덴끼 고오교 가부시끼가이샤 데이터 전송회로

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3630591B2 (ja) * 1999-08-30 2005-03-16 沖電気工業株式会社 クロック乗せ換え方法及び回路
US7161999B2 (en) * 2002-01-02 2007-01-09 Intel Corporation Synchronizing data or signal transfer across clocked logic domains
EP1432160B1 (en) 2002-12-18 2006-06-21 Alcatel Method and system for handling data between a clock and data recovery circuit and a data processing unit in asynchronous networks
JP2004280558A (ja) * 2003-03-17 2004-10-07 Ricoh Co Ltd インタフェース回路及びインタフェース回路を有する光ディスク装置
US6928027B2 (en) * 2003-04-11 2005-08-09 Qualcomm Inc Virtual dual-port synchronous RAM architecture
JP2005101771A (ja) * 2003-09-22 2005-04-14 Matsushita Electric Ind Co Ltd クロック乗せ替え回路および方法
US20050205566A1 (en) * 2004-03-22 2005-09-22 Solatronix, Inc. Incorporation System and method of interferentially varying electromagnetic near field patterns
JP4502792B2 (ja) * 2004-12-09 2010-07-14 富士通セミコンダクター株式会社 データバッファ回路
US7116601B2 (en) * 2004-12-28 2006-10-03 Via Technologies, Inc. Pseudo-synchronization of the transportation of data across asynchronous clock domains
KR101393306B1 (ko) * 2007-07-13 2014-05-09 삼성전자주식회사 보안기능을 갖는 레지스터 및 이를 구비하는 컴퓨터 시스템
US8566515B2 (en) * 2009-01-12 2013-10-22 Maxim Integrated Products, Inc. Memory subsystem
US8659973B2 (en) * 2010-06-18 2014-02-25 Fujitsu Limited Sequential-write, random-read memory
US20130066451A1 (en) * 2011-09-14 2013-03-14 Aravind Na Ganesan System and method for mitigating frequency mismatch in a receiver system
US9543044B2 (en) * 2013-11-07 2017-01-10 Stmicroelectronics International N.V. System and method for improving memory performance and identifying weak bits

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4375676A (en) * 1979-12-26 1983-03-01 Varian Associates, Inc. Feedback FIFO for cyclic data acquisition and instrument control
US4494190A (en) * 1982-05-12 1985-01-15 Honeywell Information Systems Inc. FIFO buffer to cache memory
US4894797A (en) * 1986-11-17 1990-01-16 Amp Incorporated FIFO data storage system using PLA controlled multiplexer for concurrent reading and writing of registers by different controllers
US4942593A (en) * 1989-03-16 1990-07-17 Dallas Semiconductor Corporation Telecommunications interface with improved jitter reporting
DE69124606T2 (de) * 1991-10-17 1997-08-21 Ibm Adaptive FIFO-Speichersteuerung
US5388238A (en) * 1992-07-24 1995-02-07 At&T Corp. System and method for monitoring the validity of circulating pointers in a FIFO memory
US5546347A (en) * 1994-07-22 1996-08-13 Integrated Device Technology, Inc. Interleaving architecture and method for a high density FIFO
US5761203A (en) * 1996-04-04 1998-06-02 Lucent Technologies Inc. Synchronous and asynchronous recovery of signals in an ATM network
JPH11175310A (ja) 1997-12-09 1999-07-02 Toshiba Tec Corp FiFoメモリ制御回路
US6167495A (en) * 1998-08-27 2000-12-26 Micron Technology, Inc. Method and apparatus for detecting an initialization signal and a command packet error in packetized dynamic random access memories

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101123087B1 (ko) * 2003-12-12 2012-03-16 오끼 덴끼 고오교 가부시끼가이샤 데이터 전송회로
JP2008541623A (ja) * 2005-05-11 2008-11-20 クゥアルコム・インコーポレイテッド 待ち時間に無感覚なfifoシグナリングプロトコル
JP4681046B2 (ja) * 2005-05-11 2011-05-11 クゥアルコム・インコーポレイテッド 待ち時間に無感覚なfifoシグナリングプロトコル

Also Published As

Publication number Publication date
US20020023238A1 (en) 2002-02-21
US6470439B2 (en) 2002-10-22
JP3815948B2 (ja) 2006-08-30

Similar Documents

Publication Publication Date Title
KR100337052B1 (ko) 동기화된 독출 포인터 및 기록 포인터를 갖는 2 중 포트 fifo
JP2001307476A (ja) Fifoメモリ制御回路
JP3856696B2 (ja) 2倍データ速度同期式動的ランダムアクセスメモリのための構成可能同期装置
US5956748A (en) Asynchronous, dual-port, RAM-based FIFO with bi-directional address synchronization
KR0176422B1 (ko) 페이지-인 버스트-아웃 피포 시스템
KR20060044526A (ko) 메모리 인터페이스 제어 회로와 메모리 인터페이스 제어방법
US7818527B2 (en) Wrapper circuit and method for interfacing between non-muxed type memory controller and muxed type memory
US6920080B2 (en) Methods for generating output control signals in synchronous semiconductor memory devices and related semiconductor memory devices
US9218860B2 (en) Multiple data rate memory with read timing information
EP2036090A4 (en) SYNCHRONOUS MEMORY READ DATA DATA CAPTURE
US20050157827A1 (en) Method and circuit for writing double data rate (DDR) sampled data in a memory device
US7143258B2 (en) Method and device for masking ringing in a DDR SDRAM
US7227812B2 (en) Write address synchronization useful for a DDR prefetch SDRAM
JP4079507B2 (ja) メモリ制御システムおよびメモリ制御方法
CN109062538B (zh) 环形先进先出缓冲器及数据传输接口、系统、方法
JP2004062630A (ja) Fifoメモリ及び半導体装置
US7181638B2 (en) Method and apparatus for skewing data with respect to command on a DDR interface
US6191992B1 (en) First-in-first-out storage device including synchronized full-state detention and empty-state detention
US6201756B1 (en) Semiconductor memory device and write data masking method thereof
JP5191218B2 (ja) メモリ制御回路
US5426772A (en) Single PAL circuit generating system clock and control signals to minimize skew
US20090116299A1 (en) Semiconductor memory device and method for operating the same
JP3559299B2 (ja) バッファメモリ装置
US7962698B1 (en) Deterministic collision detection
JP4825065B2 (ja) クロック乗せ換え回路

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051025

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051027

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051216

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060606

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100616

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110616

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120616

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees