JP4232914B2 - シングルポートram用制御回路 - Google Patents
シングルポートram用制御回路 Download PDFInfo
- Publication number
- JP4232914B2 JP4232914B2 JP21219997A JP21219997A JP4232914B2 JP 4232914 B2 JP4232914 B2 JP 4232914B2 JP 21219997 A JP21219997 A JP 21219997A JP 21219997 A JP21219997 A JP 21219997A JP 4232914 B2 JP4232914 B2 JP 4232914B2
- Authority
- JP
- Japan
- Prior art keywords
- signal
- write
- read
- control circuit
- port ram
- 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 - Fee Related
Links
Images
Description
【発明の属する技術分野】
この発明は、シングルポートRAMを用いて、First In First Outメモリ(以下、単にFIFOと記述)を構成する場合に該FIFOに対するデータの入出力を制御するシングルポートRAM用制御回路に関する。
【0002】
【従来の技術】
従来、比較的安価で構造がシンプルなシングルポートRAMを用いてFIFOを構成する場合、図5に示す回路構成が知られている。図5において、PUSH(書き込み)カウンタ1は、PUSH信号が供給される度にクロックをカウントして書き込みアドレスを更新し、選択回路3の一方の入力端に供給する。また、POP(読み出し)カウンタ2は、POP信号が供給される度にクロックをカウントして読み出しアドレスを更新し、選択回路3の他方の入力端に供給する。該POPカウンタ2には、PUSH信号も供給されており、該PUSH信号が有効の時には、POP信号が供給されても動作しないようになっている。選択回路3は、上記書き込みアドレスおよび読み出しアドレスを、PUSH信号によって選択するようになっており、PUSH信号が供給されたときには、書き込みアドレスをシングルポートRAM4のアドレス入力端Aに供給し、PUSH信号が供給されないときには、読み出しアドレスをシングルポートRAM4のアドレス入力端Aに供給する。シングルポートRAM4は、通常、読み出しモードとなっており、書き込み端子WEにPOP信号が供給されると、書き込みモードとなる。データは、入力端子DIから入力され、出力端子DOから出力される。
【0003】
上記構成によれば、PUSH信号が供給されると、PUSH(書き込み)カウンタ1で書き込みアドレスが更新され、選択回路3の一方の入力端に供給される。このとき、選択回路3では、PUSH信号が選択信号として供給されるので、上記書き込みアドレスがシングルポートRAM4のアドレス入力端Aに供給される。シングルポートRAM4では、上記書き込みアドレスに入力端子DIから入力されるデータを書き込んで記憶する。
【0004】
一方、POP信号が供給されると、POP(読み出し)カウンタ2で読み出しアドレスが更新され、選択回路3の他方の入力端に供給される。このとき、選択回路3では、PUSH信号が供給されていないので、上記読み出しアドレスがシングルポートRAM4のアドレス入力端Aに供給される。シングルポートRAM4では上記読み出しアドレスに記憶されているデータを出力端子DOから出力する。
【0005】
また、上記POPカウンタ2には、PUSH信号も供給されており、該PUSH信号が有効の時には、POP信号が供給されても動作しないようになっている。したがって、PUSH信号とPOP信号とが同時に発生した場合には、常に、PUSH信号が優先され、POP信号が無視されることになる。
【0006】
【発明が解決しようとする課題】
ところで、従来のFIFOでは、上述したように、PUSH信号およびPOP信号の同時発行は許されず、どちらかを優先させなければならない。しかしながら、このような同時発行は、十分に起こり得る事象であり、例えばPOP信号を無視する構成ではPOPカウンタ2のカウント値が更新されず、同じデータを2度読み出すという不具合が生じる。
【0007】
この発明は上述した事情に鑑みてなされたもので、シングルポートRAMに対する書き込み信号および読み出し信号が同時に発行されても、自動的に優先順位を与えることができ、どちらの命令も実行できるシングルポートRAM用制御回路を提供することを目的としている。
【0008】
【課題を解決するための手段】
上述した課題を解決するために、請求項1記載の発明では、シングルポートRAMのアドレス入力端子にその出力が接続された選択回路の一方の入力端子に対して、発行した書き込み信号で指定された期間、書き込みカウンタによって、所定のクロックをカウントして、書き込みアドレスを生成して供給し、前記選択回路の他方の入力端子に対して、発行した読み出し信号で指定された期間、前記書き込み信号が同時発生しないことを条件として、読み出しカウンタによって、所定のクロックをカウントして、読み出しアドレスを生成して供給するシングルポートRAM用制御回路であって、外部から供給された書き込み信号と読み出し信号との同時発生を検出するとともに、前記同時発生を検出した場合に、外部から供給された書き込み信号を優先的に前記書き込みカウンタに出力するとともに、外部から供給された読み出し信号を前記書き込み信号の発生がなくなるまで遅延させるとともに、前記書き込み信号の発生がなくなった後に、前記遅延させた読み出し信号を前記読み出しカウンタに出力する制御回路を具備することを特徴とする。
【0009】
請求項2記載の発明では、シングルポートRAMのアドレス入力端子にその出力が接続された選択回路の一方の入力端子に対して、発行した読み出し信号で指定された期間、読み出しカウンタによって、所定のクロックをカウントして、読み出しアドレスを生成して供給し、前記選択回路の他方の入力端子に対して、発行した書き込み信号で指定された期間、前記読み出し信号が同時発生しないことを条件として、書き込みカウンタによって、所定のクロックをカウントして、書き込みアドレスを生成して供給するシングルポートRAM用制御回路であって、外部から供給された書き込み信号と読み出し信号との同時発生を検出するとともに、前記同時発生を検出した場合に、外部から供給された読み出し信号を優先的に前記読み出しカウンタに出力するとともに、外部から供給された書き込み信号を前記読み出し信号の発生がなくなるまで遅延させるとともに、前記読み出し信号の発生がなくなった後に、前記遅延させた書き込み信号を前記書き込みカウンタに出力する制御回路を具備することを特徴とする。
また、請求項3記載の発明では、請求項1または2記載の発明において、前記シングルポートRAM用制御回路の状態を監視する監視手段を備え、前記制御回路は、前記監視手段によるシングルポートRAM用制御回路の状態に応じて、前記書き込み信号および前記読み出し信号を発行するか否かを決定する。
【0011】
この発明によれば、書き込み信号と読み出し信号とが同時発生したことが検出手段によって検出されると、発行手段は、前記書き込み信号と前記読み出し信号のいずれか一方を優先的に発行した後、前記書き込み信号と読み出し信号のうち他方を発行する。したがって、優先信号を書き込み信号(PUSH信号)、非優先信号を読み出し信号(POP信号)とした場合、書き込み信号および読み出し信号が同時発行されても、自動的に優先順位を与えることが可能となり、どちらの命令も実行することが可能となる。
【0012】
【発明の実施の形態】
次に図面を参照してこの発明の実施形態について説明する。
【0013】
A.第1実施形態
A−1.第1実施形態の構成
図1は本発明の第1実施形態によるシングルポートRAMを使用したFIFOおよび該FIFOに対するデータの書き込みおよび読み出しを制御する制御回路の構成を示すブロック図である。なお、図5に対応する部分には同一の符号を付けて説明を省略する。図において、5は、制御回路であり、OR回路5a、AND回路5b、ディレイ回路5cおよびAND回路5dから構成されている。OR回路5aは、一方の入力端にPOP信号が入力されており、他方の入力端に後述するディレイ回路5cの出力が入力されており、論理和をとって、AND回路5bの一方の入力端およびAND回路5dの一方の入力端に供給する。
【0014】
AND回路5bは、PUSH信号と上記OR回路5aの出力との論理積をとり、ディレイ回路5cとAND回路5dの他方の入力端に供給する。ディレイ回路5cは、AND回路5bの出力を1クロック分遅延して上記OR回路5aの他方の入力端に供給する。また、AND回路5dは、上記OR回路5aの出力とAND回路5bの出力を反転した値との論理積をとり、POPカウンタ2のチップセレクト端子CEに供給する。
【0015】
また、6は、ラッチ回路6a,6bから構成されている保持回路であり、POP信号が発生したタイミングに同期して新しいデータを出力するために設けている。後述するように、この実施形態では、PUSH信号とPOP信号とが競合した場合、PUSH動作を優先してPOP動作をその間待機させる構成としているので、所望のPOPタイミングとは異なるタイミングでPOP動作が行われることになるが、それを所望のPOPタイミングに合わせるためにラッチ回路6a、6bが設けられている。
【0016】
A−2.第1実施形態の動作
次に、上述した第1実施形態による動作について説明する。ここで、図2は、制御回路5の動作を説明するための回路図であり、図3は、その動作を説明するためのタイミングチャートである。PUSH信号とPOP信号が同時に発行されると(T1)、まず、OR回路5aの出力Mが「1」となる。これより、AND回路5bの両入力端が「1」となるので、その出力Nも「1」となる。AND回路5dでは、OR回路5aの出力M(「1」)とAND回路5bの出力Nの反転(「0」)との論理積をとるので、その出力Zは、「0」となる。したがって、POPカウンタ2は更新されず(データの読み出しも行われず)、同時に発行されたPUSH信号に基づきデータが書き込まれるとともに、PUSHカウンタ1が更新される。
【0017】
POP信号は、次のサイクルT2で「0」となるが、ディレイ回路5cによってAND回路5bの出力Nが遅延されて、OR回路5aに供給されるので、該OR回路5aの出力Mは、サイクルT2においても「1」となる。また、AND回路5bにおいても、PUSH信号が「1」で、上記OR回路5aの出力Mが「1」であるので、その出力Nは「1」となる。したがって、AND回路5dの出力Zは、「0」となる。すなわち、PUSH信号はT1からT2にかけて連続して供給されているので、待機していたPOP動作はさらに待たされることになる。
【0018】
PUSH信号は、次のサイクルT3で「0」となる。このとき、OR回路5aには、上述したように、ディレイ回路5cによって、サイクルT2におけるAND回路5bの出力Nが遅延されて供給されるので、その出力Mは「1」のままとなる。そして、PUSH信号が「0」となるので、AND回路5bの出力Nは「0」となる。したがって、AND回路5dの出力Zは、「1」となる。すなわち、このサイクルT3で待機していたPOP動作が行われることになる。
【0019】
そして、次のサイクルT4では、AND回路5bの出力NがサイクルT3で「0」となっているので、AND回路5dの出力Zは、「0」となる。
【0020】
上述したように、制御回路5では、PUSH信号とPOP信号が同時に発行されると、PUSH信号が終了してから、POP信号に相当する信号がPOPカウンタ2のチップセレクタCEに供給される。したがって、PUSH信号、POP信号が同時に発行されても、自動的にPUSH信号を優先することができ、その後、POP信号を有効とすることができる。なお、POP信号を非優先信号A、PUSH信号を優先信号Bとすると、出力Zは、優先信号Bの終了後に発行されるように制御された、非優先信号Aと言える。なお、優先信号Bをbusy信号(またはwait信号)と置き換えてもよい。
【0021】
B.第2実施形態
B−1.第2実施形態の構成
次に、本発明の第2実施形態について説明する。第1実施形態ではPUSH信号とPOP信号が同時に発行された場合、機械的にPUSH信号を優先してPOP信号を待機させる構成としているので、データが満杯になりやすい構成といえる。そこで、本第2実施形態では、一義的にPUSH信号を優先とするのではなく、FIFOステータス(FULLとか、EMPTY)の状態を加味している。なお、FULLとはデータが満杯でこれ以上書き込むことができない状態である(あるいはほぼ満杯である状態も含むようにしてもよい)。また、EMPTYとはデータが空の状態である。ここで、図4は、第2実施形態によるシングルポートRAMを使用したFIFOおよび該FIFOに対するデータの書き込みおよび読み出しを制御する制御回路の構成を示すブロック図である。なお、図1に対応する部分には同一の符号を付けて説明を省略する。
【0022】
図において、AND回路7は、PUSH信号とFULL信号の反転信号との論理積をとり、制御回路5のAND回路5bと、PUSHカウンタ1のチップセレクト端子CEに供給する。したがって、FULL信号が「1」となると、PUSH信号は無効となる。次に、AND回路8は、制御回路5の出力であるPOP信号とEMPTY信号の反転信号との論理積をとり、POPカウンタ2のチップセレクト端子CEに供給する。したがって、EMPTY信号が「1」となると、制御回路の出力であるPOP信号は無効となる。FIFO状態監視部9は、上記AND回路7の出力と上記AND回路の出力とを監視し、FULL信号またはEMPTY信号を出力する。
【0023】
B−2.第2実施形態の動作
次に、上述した第1実施形態による動作について説明する。通常の状態のとき(FULL信号またはEMPTY信号がないとき)、PUSH信号およびPOP信号が同時に発行されると、前述した第1実施形態と同様に、PUSH信号が優先され、該PUSH信号の終了後、POP信号が有効となる。
【0024】
一方、FULLの状態のとき、PUSH信号およびPOP信号が同時に発行されると、AND回路7においてPUSH信号が無効となるので、第1実施形態のようにPOP動作が待機させられることがない。言い換えると、FULLの状態とは、データがこれ以上記憶できないという状態であるので、データを読み出すPOP信号のみを有効とし、データを書き込むPUSH信号を無効とするわけである。
【0025】
なお、EMPTYの状態のときは、PUSH信号およびPOP信号が同時に発行される場合は勿論のこと、POP信号が単独で発生した場合においても、AND回路8において制御回路5から出力されるPOP信号が無効となるので、PUSH信号のみが有効となる。言い換えると、EMPTYの状態とは、読み出すデータがないという状態であるので、データを書き込むPUSH信号のみを有効とし、データを読み出すPOP信号を無効とするわけである。
【0026】
このように、第2実施形態では、通常の状態のときにPUSH信号とPOP信号が同時に発行されると、PUSH信号が終了してから、POP信号が有効となる。但し、FULL状態のときに限ってPUSH信号とPOP信号が同時に発行されても、PUSH信号が有効となることはない。したがって、FIFOステータス(FULLまたはEMPTY)の状態に応じて、PUSH信号またはPOP信号の発行を制限でき、POP信号が待機させられる頻度を少なくすることができる。
【0027】
なお、上述した第2実施形態において、第1実施形態と同様に、「原則、POP信号を優先とし、EMPTY状態のときはPUSH信号有効」とするようにしてもよい。
【0028】
【発明の効果】
以上、説明したように、この発明によれば、書き込み信号と読み出し信号とが同時発生したことが検出手段によって検出された場合、発行手段によって、前記書き込み信号と前記読み出し信号のいずれか一方を優先的に発行した後、前記書き込み信号と読み出し信号のうち他方を発行するようにしたので、優先信号を書き込み信号(PUSH信号)、非優先信号を読み出し信号(POP信号)とした場合、書き込み信号および読み出し信号が同時発行されても、自動的に優先順位を与えることができ、どちらの命令も実行できるいう利点が得られる。
【図面の簡単な説明】
【図1】 本発明の第1実施形態によるFIFOおよび該FIFOに対するデータの書き込みおよび読み出しを制御するデジタル制御回路の構成を示すブロック図である。
【図2】 デジタル制御回路5の動作を説明するための回路図である。
【図3】 デジタル制御回路5の動作を説明するためのタイミングチャートである。
【図4】 本発明の第2実施形態によるFIFOおよび該FIFOに対するデータの書き込みおよび読み出しを制御するデジタル制御回路の構成を示すブロック図である。
【図5】 シングルポートRAMを用いて構成した従来のFIFOの構成を示すブロック図である。
【符号の説明】
4 シングルポートRAM
5 デジタル制御回路(検出手段、発行手段)
6 保持回路
7 AND回路
8 AND回路
9 FIFO状態監視部(監視手段)
Claims (3)
- シングルポートRAMのアドレス入力端子にその出力が接続された選択回路の一方の入力端子に対して、発行した書き込み信号で指定された期間、書き込みカウンタによって、所定のクロックをカウントして、書き込みアドレスを生成して供給し、前記選択回路の他方の入力端子に対して、発行した読み出し信号で指定された期間、前記書き込み信号が同時発生しないことを条件として、読み出しカウンタによって、所定のクロックをカウントして、読み出しアドレスを生成して供給するシングルポートRAM用制御回路であって、
外部から供給された書き込み信号と読み出し信号との同時発生を検出するとともに、前記同時発生を検出した場合に、外部から供給された書き込み信号を優先的に前記書き込みカウンタに出力するとともに、外部から供給された読み出し信号を前記書き込み信号の発生がなくなるまで遅延させるとともに、前記書き込み信号の発生がなくなった後に、前記遅延させた読み出し信号を前記読み出しカウンタに出力する制御回路
を具備することを特徴とするシングルポートRAM用制御回路。 - シングルポートRAMのアドレス入力端子にその出力が接続された選択回路の一方の入力端子に対して、発行した読み出し信号で指定された期間、読み出しカウンタによって、所定のクロックをカウントして、読み出しアドレスを生成して供給し、前記選択回路の他方の入力端子に対して、発行した書き込み信号で指定された期間、前記読み出し信号が同時発生しないことを条件として、書き込みカウンタによって、所定のクロックをカウントして、書き込みアドレスを生成して供給するシングルポートRAM用制御回路であって、
外部から供給された書き込み信号と読み出し信号との同時発生を検出するとともに、前記同時発生を検出した場合に、外部から供給された読み出し信号を優先的に前記読み出しカウンタに出力するとともに、外部から供給された書き込み信号を前記読み出し信号の発生がなくなるまで遅延させるとともに、前記読み出し信号の発生がなくなった後に、前記遅延させた書き込み信号を前記書き込みカウンタに出力する制御回路
を具備することを特徴とするシングルポートRAM用制御回路。 - 前記シングルポートRAM用制御回路の状態を監視する監視手段を備え、
前記制御回路は、前記監視手段によるシングルポートRAM用制御回路の状態に応じて、前記書き込み信号および前記読み出し信号を発行するか否かを決定する
ことを特徴とする請求項1または2記載のシングルポートRAM用制御回路。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21219997A JP4232914B2 (ja) | 1997-08-06 | 1997-08-06 | シングルポートram用制御回路 |
US09/120,277 US6266746B1 (en) | 1997-07-29 | 1998-07-22 | Control apparatus for random access memories |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21219997A JP4232914B2 (ja) | 1997-08-06 | 1997-08-06 | シングルポートram用制御回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1153879A JPH1153879A (ja) | 1999-02-26 |
JP4232914B2 true JP4232914B2 (ja) | 2009-03-04 |
Family
ID=16618568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP21219997A Expired - Fee Related JP4232914B2 (ja) | 1997-07-29 | 1997-08-06 | シングルポートram用制御回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4232914B2 (ja) |
-
1997
- 1997-08-06 JP JP21219997A patent/JP4232914B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH1153879A (ja) | 1999-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6134155A (en) | Synchronized circuit for coordinating address pointers across clock domains | |
US5805872A (en) | Apparatus for generation of control signals from the read cycle rate and read speed of a memory | |
EP1238339B1 (en) | Interface for a memory unit | |
JPH05204597A (ja) | メモリ装置 | |
US7420869B2 (en) | Memory device, use thereof and method for synchronizing a data word | |
JP2004062630A (ja) | Fifoメモリ及び半導体装置 | |
US6021264A (en) | Data processing system capable of avoiding collision between read data and write data | |
JP4232914B2 (ja) | シングルポートram用制御回路 | |
US6266746B1 (en) | Control apparatus for random access memories | |
EP0706107A1 (en) | Array clocking method and apparatus for input/output subsystems | |
EP0840237B1 (en) | Synchronization of data processor with external bus | |
JP4696003B2 (ja) | データ転送回路 | |
JPH05100844A (ja) | マイクロ・プロセツサのプログラムウエイト制御回路 | |
US5699086A (en) | Method and apparatus for controlling image display | |
JPH10171707A (ja) | メモリ制御回路 | |
JP2870468B2 (ja) | データ転送速度差吸収方式 | |
EP0988603B1 (en) | Method and arrangement for connecting processor to asic | |
JP3755249B2 (ja) | データ記憶装置 | |
JP2003288268A (ja) | メモリ装置 | |
JPH11312116A (ja) | シンクロナス・ダイナミックランダムアクセスメモリ用同期装置 | |
JP2003196972A (ja) | メモリ装置 | |
JPH10340596A (ja) | データ記憶装置および半導体記憶装置 | |
JP3324514B2 (ja) | フレーム多重プロトコル処理用多重タイマ | |
JP4438276B2 (ja) | データ転送装置 | |
JP3001574B1 (ja) | 先入れ先出しメモリ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050208 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050408 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20051206 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060206 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20060209 |
|
A912 | Removal of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20060512 |
|
RD13 | Notification of appointment of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7433 Effective date: 20080903 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081031 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20081204 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111219 Year of fee payment: 3 |
|
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: 20111219 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121219 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |