JP3920002B2 - Memory bank control method - Google Patents
Memory bank control method Download PDFInfo
- Publication number
- JP3920002B2 JP3920002B2 JP2000119187A JP2000119187A JP3920002B2 JP 3920002 B2 JP3920002 B2 JP 3920002B2 JP 2000119187 A JP2000119187 A JP 2000119187A JP 2000119187 A JP2000119187 A JP 2000119187A JP 3920002 B2 JP3920002 B2 JP 3920002B2
- Authority
- JP
- Japan
- Prior art keywords
- bank
- write
- flag
- read
- memory
- 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
- 230000015654 memory Effects 0.000 title claims description 122
- 238000000034 method Methods 0.000 title claims description 17
- 238000010586 diagram Methods 0.000 description 8
- 230000001052 transient effect Effects 0.000 description 8
- 230000002159 abnormal effect Effects 0.000 description 7
- 239000007853 buffer solution Substances 0.000 description 6
- 230000000694 effects Effects 0.000 description 2
- 230000007257 malfunction Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
Images
Description
【0001】
【発明の属する技術分野】
本発明は、メモリバンク制御装置およびメモリバンク制御方法に関し、特に、画像・音声信号処理に用いられるFIFO(First In First Out)バッファシステムにおけるメモリバンク制御装置およびメモリバンク制御方法に関する。
【0002】
【従来の技術】
従来のFIFOバッファシステムにおけるメモリバンク制御装置およびメモリバンク制御方法を図9、図10、図11を参照して説明する。
図9は従来のFIFOバッファシステムにおけるメモリバンク制御装置のブロック電気回路図である。M0(13)〜M3(16)は、FIFO形式でデータが入出力される記憶領域である。
図10は従来のFIFOバッファシステムにおけるメモリバンク制御装置に使用されるバンクアドレスカウンタの動作を示す図である。
【0003】
従来のFIFOバッファシステムにおけるメモリバンク制御装置においては、記憶領域のフラグを構成するカウンタとして、2進数で表されるすべての値で構成されるカウンタを使用していた。図10はフラグが2ビットで構成される場合のカウンタであるが、この場合、00(b)、01(b)、10(b)、11(b)の4通りのフラグで構成されていた(以下、(b)はその値が2進数であることを示す)。
図11は書き込み許可信号発生器の動作を示すフローチャートである。読み出しフィールドアドレスが01(b)、書き込みフィールドアドレスが10(b)の場合について、図11のフローに従い書き込み許可信号発生器の動作を説明する。この状態でフィールド書き込みが終了する(S21)と書き込みフィールドアドレスに1が加算(S22)されて11(b)になり、その値と読み出しフィールドアドレスとを比較する。読み出しフィールドアドレスを参照した時、それが過渡状態(図10)にあり読み出しフィールドアドレスとして11(b)が参照されると、読み出しフィールドアドレスと書き込みフィールドアドレスが同じと判断され、書き込みフィールドアドレスに2が加算されて01(b)になる。
【0004】
【発明が解決しようとする課題】
しかしながら、上述した従来のFIFOバッファシステムにおけるメモリバンク制御方法においては、2進数で表されるすべての値で構成されるカウンタを使用していた。そのため過渡状態のカウンタ値も、正常時のカウンタ値と同様に別のメモリバンクを示していた。その結果、過渡状態時のカウンタ値が参照された場合に誤動作する可能性があるという問題があった。具体的には、フィールドメモリは2フィールド分書き込みが行われないのでデータが更新されず、読み出しを行った場合に画像が不連続、乱れるという現象が起こってしまう。
さらに、読み出し、書き込みのタイミングによっては読み出しアドレスが書き込みアドレスを追い越してしまう、あるいはその逆の現象が生じ、その結果画像が不連続、乱れるという現象が起こってしまうという問題もあった。
【0005】
本発明は、このような従来の技術における問題に鑑みてなされたものであって、メモリの読み出しと書き込みが非同期式であり、メモリの読み出しと書き込みが同時に行われてもアドレスの追い越しを起こさないメモリバンク制御方法を提供することを目的とする。
【0006】
【課題を解決するための手段】
前記課題を解決する本発明のメモリバンク制御方法は、バンクフラグを構成する複数の1ビットのうち1つだけを“1”とする書き込みバンクフラグ及び読み出しバンクフラグをシフト制御し、前記書き込みバンクフラグ及び読み出しバンクフラグにより、少なくとも三以上のメモリバンクから構成されるメモリの異なるメモリバンクをそれぞれ選択して、書き込み動作と読み出し動作を非同期に行うメモリバンク制御方法であって、
読み出し動作を行う場合において、
前記書き込みバンクフラグを構成する二以上の1ビットが“1”を示す場合、または前記書き込みバンクフラグを構成する全ての1ビットが“0”を示す場合には、前記読み出しバンクフラグをシフト制御してから読み出しを行い、一方、前記書き込みバンクフラグを構成する複数の1ビットのうち1つだけが“1”を示す場合には、シフト制御後の読み出しバンクフラグと現在の書き込みバンクフラグとを比較し、一致すれば、シフト制御前の読み出しバンクフラグの値を用いて読み出しを行い、一致しなければ、当該シフト制御後の読み出しバンクフラグの値を用いて読み出しを行うことを特徴とする。
また、本発明のメモリバンク制御方法は、バンクフラグを構成する複数の1ビットのうち1つだけを“1”とする書き込みバンクフラグ及び読み出しバンクフラグをシフト制御し、前記書き込みバンクフラグ及び読み出しバンクフラグにより、少なくとも三以上のメモリバンクから構成されるメモリの異なるメモリバンクをそれぞれ選択して、書き込み動作と読み出し動作を非同期に行うメモリバンク制御方法であって、
書き込み動作を行う場合において、
前記読み出しバンクフラグを構成する二以上の1ビットが“1”を示す場合、または前記読み出しバンクフラグを構成する全ての1ビットが“0”を示す場合には、前記書き込みバンクフラグをシフト制御してから書き込みを行い、一方、前記読み出しバンクフラグを構成する複数の1ビットのうち1つだけが“1”を示す場合には、シフト制御後の書き込みバンクフラグと現在の読み出しバンクフラグとを比較し、一致すれば、シフト制御前の書き込みバンクフラグの値を用いて書き込みを行い、一致しなければ、当該シフト制御後の書き込みバンクフラグの値を用いて書き込みを行うことを特徴とする。
【0007】
このような本出願第1、2の発明のメモリバンク制御方法によれば、2進数で表され、前記バンクフラグを構成する複数のフラグ(以下、複数ビット)のうち、二以上の1ビットが“1”を示す状態及び全ての1ビットが“0”を示す状態並びに前記書き込みバンクフラグの複数ビットと前記読み出しバンクフラグの複数ビットとが同一値の状態となることを防止することができる。
したがって、読み出し動作と書き込み動作とが非同期に行われるメモリ制御装置において、読み出しと書き込みが同時に行われてもアドレスの追い越しを防止することができる。
また、リングカウンタにより、内部でデータを巡回させて計数動作を行うことができ、N個のフリップフロップを用いたシフトレジスタによりN進のカウンタを構成することができる。
また、例えば、前記書き込みバンクフラグ及び前記読み出しバンクフラグのうち、何れか一方のバンクフラグを構成する二以上のフラグの1ビットが“1”を示す際に、そのバンクフラグを異常値として検出する。異常値として検出されたバンクフラグは、存在しない値として処理され、リングカウンタのシフト制御が行われる。
したがって、双方のバンクフラグの重複を防止することが可能になる。さらに、読み出しと書き込みが非同期式であり、読み出しと書き込みが同時に行われてもアドレスの追い越しを容易に防止することができる。
【0014】
このような本出願第5、6の発明のメモリバンク制御装置によれば、2進数で表され、前記バンクフラグを構成する複数のフラグ(以下、複数ビット)のうち、二以上の1ビットが“1”を示す状態及び全ての1ビットが“0”を示す状態並びに前記書き込みバンクフラグの複数ビットと前記読み出しバンクフラグの複数ビットとが同一値の状態となることを防止することができる。
したがって、読み出し動作と書き込み動作とが非同期に行われるメモリ制御装置において、読み出しと書き込みが同時に行われてもアドレスの追い越しを防止することができる。
また、リングカウンタにより、内部でデータを巡回させて計数動作を行うことができ、N個のフリップフロップを用いたシフトレジスタによりN進のカウンタを構成することができる。
また、データの書き込み及びデータの読み出しの際の各々の動作を示すバンクフラグを設けていることから、双方のバンクフラグの重複を防止することができる。
また、例えば、前記書き込みバンクフラグ及び前記読み出しバンクフラグのうち、何れか一方のバンクフラグを構成する二以上のフラグの1ビットが“1”を示す際に、そのバンクフラグを異常値として検出する。異常値として検出されたバンクフラグは、存在しない値として処理され、リングカウンタのシフト制御が行われる。
したがって、双方のバンクフラグの重複を防止することが可能になる。さらに、読み出しと書き込みが非同期式であり、読み出しと書き込みが同時に行われてもアドレスの追い越しを容易に防止することができる。
また、前記書き込みバンクフラグ及び前記読み出しバンクフラグのうち、何れか一方のバンクフラグを構成する複数ビットの全てが“0”を示す際に、そのバンクフラグを異常値として検出する。
したがって、双方のバンクフラグの重複を防止することが可能になる。さらに、読み出しと書き込みが非同期式であり、読み出しと書き込みが同時に行われてもアドレスの追い越しを容易に防止することができる。
【0023】
【発明の実施の形態】
次に、本発明のメモリバンク制御方法及びメモリバンク制御装置の実施の形態について図面を参照して説明する。
図1を参照すると、本発明の実施の形態におけるフラグを用いたメモリバンク制御ブロックが示されている。図1において、メモリ1は3つのメモリバンク101、102、103から構成されFIFO形式でデータを入出力する。
読み出しバンクフラグ4は、現在読み出しを行っているメモリバンクを表すフラグである。
書き込みバンクフラグ5は、現在書き込みを行っているメモリバンクを表すフラグである。
図2を参照すると、読み出しバンクフラグ4と書き込みバンクフラグ5とをシフト制御するカウンタが示されている。図2に示される様に、読み出しバンクフラグ4と書き込みバンクフラグ5をシフト制御するカウンタは、リングカウンタになっている。このリングカウンタはメモリバンクを構成する複数のフラグ(以下、複数ビット)の1ビットのみを“1”とするように設定されている。すなわち、メモリバンクの複数のビットが“1”を示す状態及び全てのビットが“0”を示す状態並びに前記読み出しバンクフラグ4と前記書き込みバンクフラグ5とが同一値を示す状態は存在しない。そのため、このような状態、すなわち、過渡状態にあるバンクフラグは異常であると判断することが可能になる。
【0024】
読み出し制御部2は、メモリ1の読み出しメモリバンクを図8の真理値表に従って進行させる。読み出し制御部2には、読み出しリセットと書き込みバンクフラグ5が入力され、読み出しバンクフラグ4と入出力接続される。
書き込み制御部3は、メモリ1の書き込みメモリバンクを図7の真理値表に従って進行させる。書き込み制御部3には、書き込みリセットと読み出しバンクフラグ4が入力され、書き込みバンクフラグ5と入出力接続される。
また、前記読み出し制御部2及び書き込み制御部3は、異常値検出部に相当する。
読み出しアドレスカウンタ6には、読み出し信号、読み出しリセット、読み出しバンクフラグ4が入力され、また、読み出しアドレスがメモリ1のメモリバンク101、メモリバンク102、メモリバンク103に出力される。
書き込みアドレスカウンタ7には、書き込み信号、書き込みリセット、書き込みバンクフラグ5が入力され、また、書き込みアドレスがメモリ1のメモリバンク101、メモリバンク102、メモリバンク103に出力される。
書き込みバンクセレクタ111には、書き込みバンクフラグ5と書き込み信号が入力される。
読み出しバンクセレクタ112には、読み出しバンクフラグ4と読み出し信号が入力される。
【0025】
次に、読み出し制御部2および書き込み制御部3の構成を図3と図4により詳細に説明する。
書き込み制御部3は図3のように構成される。
図3に示される様に、フラグ左シフタ201には書き込みバンクフラグ5(N)(Nは自然数)が入力され、フラグデコーダ205に接続される。
一致検出器202には、左シフト後の書き込みバンクフラグ5と読み出しバンクフラグ4が入力され、出力はANDゲートに接続される。
読み出しバンクフラグ判別器203には、読み出しバンクフラグ4が入力され、判別結果がANDゲートに出力される。
フラグデコーダ205はセレクタに接続され、書き込みバンクフラグ5(N+1)を出力する。
タイミング調整器204は書き込みリセットに接続され、書き込み更新タイミング信号が出力される。
【0026】
同様に、読み出し制御部2は図4のように構成される。
図4に示される様に、フラグ左シフタ301には読み出しバンクフラグ4(N)が入力され、フラグデコーダ305に接続される。
一致検出器302には、左シフト後の読み出しバンクフラグ4と書き込みバンクフラグ5が入力され、出力はANDゲートに接続される。
書き込みバンクフラグ判別器303には、書き込みバンクフラグ5が入力され、判別結果がANDゲートに出力される。
フラグデコーダ305はセレクタに接続され、読み出しバンクフラグ4(N+1)を出力する。
タイミング調整器304は読み出しリセットに接続され、読み出し更新タイミング信号が出力される。
【0027】
次に図1を参照して、本発明の実施の形態における読み出しアドレスカウンタ6および書き込みアドレスカウンタ7の動作を説明する。
読み出しアドレスカウンタ6は、読み出しバンクフラグ4で指定されたメモリバンクへの読み出しアクセスの際にそのアドレスを示す。読み出しアドレスカウンタ6に読み出しリセットが入力されると、読み出しアドレスカウンタ6は読み出しバンクフラグ4で指定されたメモリバンクの先頭アドレスをセットする。そして、読み出し信号が入力されるとアドレス値をカウントアップしていく。ただし、各メモリバンクの最終アドレスを越えることはないように、読み出しリセットが入力される。
同様に、書き込みアドレスカウンタ7は、書き込みバンクフラグ5で指定されたメモリバンクへの書き込みアクセスの際にそのアドレスを示す。書き込みアドレスカウンタ7に書き込みリセットが入力されると、書き込みアドレスカウンタ7は書き込みバンクフラグ5で指定されたメモリバンクの先頭アドレスをセットする。そして、書き込み信号が入力されるとアドレス値をカウントアップしていく。ただし、各メモリバンクの最終アドレスを越えることはないように、書き込みリセットが入力される。
読み出しバンクセレクタ112は各メモリバンクに共通に入力されている入力データ、読み出しアドレスをいずれかのメモリバンクのみで有効とする為に、読み出し信号を読み出しバンクフラグ4によって振り分けている。
同様に、書き込みバンクセレクタ111は各メモリバンクに共通に入力されている入力データ、書き込みアドレスをいずれかのメモリバンクのみで有効とする為に、書き込み信号を書き込みバンクフラグ5によって振り分けている。
【0028】
次に図3、図4を参照して、本発明の実施の形態における読み出し制御部2および書き込み制御部3の動作を説明する。
まず、図3に示される様に、フラグ左シフタ201に入力される書き込みバンクフラグ5(N)は現在の書き込みメモリバンクを表しており、フラグデコーダ205から出力される書き込みバンクフラグ5(N+1)は、次に書き込むメモリバンクを表す。
一致検出器202は、左シフト後の書き込みバンクフラグ5と読み出しバンクフラグ4が一致すれば値1’b1を、それ以外は1’b0を出力する。
読み出しバンクフラグ判別器203は、読み出しバンクフラグ4が001(b)、010(b)、100(b)のいずれかである場合に1’b1を、それ以外は1’b0を出力する。
タイミング調整器204は、書き込みリセット信号を入力とし、書き込みバンクフラグ5(N+1)を書き込むタイミングを表す信号を生成する。
【0029】
図4に示される読み出し制御部2の動作についても、図3に示される書き込み制御部3の動作と同様に行われる。すなわち、図4において、フラグ左シフタ301に入力される読み出しバンクフラグ4(N)は現在の読み出しメモリバンクを表しており、フラグデコーダ305から出力される読み出しバンクフラグ4(N+1)は、次に読み出すメモリバンクを表す。
一致検出器302は、左シフト後の読み出しバンクフラグ4と書き込みバンクフラグ5が一致すれば値1’b1を、それ以外は1’b0を出力する。
書き込みバンクフラグ判別器303は、書き込みバンクフラグ5が001(b)、010(b)、100(b)のいずれかである場合に1’b1を、それ以外は1’b0を出力する。
タイミング調整器304は、読み出しリセット信号を入力とし、読み出しバンクフラグ4(N+1)を読み出すタイミングを表す信号を生成する。
【0030】
次に本発明の実施の形態におけるフラグを用いたメモリバンク制御ブロックの動作を図5、図6に示されるフローチャートを使用して説明する。
書き込み動作を行う場合、図5に示される様に、システムリセットが与えられると書き込みバンクフラグ5は001(b)に初期化され(S1)、書き込みリセットが入力されるまで、入力データをメモリ1のメモリバンク101に書き込む(S2)。
書き込みリセットが与えられる(S3)と、書き込みバンクフラグ5を図2のように左シフトする(S4)。
ここで読み出しバンクフラグ4の値を読み出し(S5)、読み出しバンクフラグ4=左シフト後の書き込みバンクフラグ5なら(S6)、書き込みバンクフラグ5を右シフトする(S7)。しかし、読み出しバンクフラグ4が規定値以外であったり、読み出しバンクフラグ4≠左シフト後の書き込みバンクフラグ5なら、その書き込みバンクフラグ5をデコード(S8)し、書き込みを許可、実行(S9)する。ここで規定値とは、メモリバンクを示す値001(b)、010(b)及び100(b)を指す。
【0031】
以上のフローを、書き込みリセットが与えられた場合について図1、図7を用いて説明する。
例として、読み出しバンクフラグ4が010(b)の場合を考える。
まず、書き込みバンクフラグ5が001(b)のときに書き込みリセット信号が1になると、書き込みメモリバンクをメモリバンク101からメモリバンク102に進めたいところである。しかし、読み出しメモリバンクがメモリバンク102であるので、書き込みメモリバンクがメモリバンク102に進行すると、読み出しメモリバンクと書き込みメモリバンクとが同一になる。その結果、書き込みアドレスが読み出しアドレスを追い越す可能性がある。それを解決する為に書き込みメモリバンクは進行させずに、もう一度同じメモリバンクを書き込むように制御する。つまり書き込みバンクフラグ5は001(b)の状態を保持する。
また、書き込みバンクフラグ5が100(b)のときに書き込みリセット信号が1になると、書き込みメモリバンクはメモリバンク103からメモリバンク101に進む。この場合には、書き込みメモリバンクは読み出しメモリバンクと重ならないので書き込みメモリバンクを進めることが出来る。
さらに、書き込みバンクフラグ5が010(b)のときに書き込みリセット信号が1になる場合を考える。これは、本来ならば起こり得ない組み合わせであるが、誤動作等の場合を考慮している。この場合は読み出しメモリバンクと書き込みメモリバンクが同一なので、書き込みメモリバンクをメモリバンク102からメモリバンク103に進めることで、同一メモリバンクへのアクセスを防ぐことが出来る。
読み出しバンクフラグ4が001(b)、100(b)の場合についても、上述の3つのパターンと同様に考えることが出来る。
【0032】
しかし、読み出しバンクフラグ4が001(b)、010(b)、100(b)以外の場合は、読み出しバンクフラグ4が過渡状態であると判断し、書き込みメモリバンクを進める。それにより読み出しメモリバンクが書き込みメモリバンクに重複することを防ぐ。
読み出しバンクフラグ4が規定値以外とは、読み出しバンクフラグ4が過渡状態にあることを想定している。つまり書き込みリセットと読み出しリセットが同時に行われていることを意味する。これは、読み出しメモリバンクと書き込みメモリバンクとの両方を次のメモリバンクに進めようとしていることになる。したがって、読み出しバンクフラグ4が規定値以外なら、書き込みバンクフラグ5をデコードし書き込みを許可、実行する。
以上、書き込みリセットが与えられた場合のフローを説明したが、図8に示される読み出しリセットが与えられた場合のフローについても、書き込みリセットが与えられた場合のフローと同様に行われる。
上述した実施の形態においては、メモリ1は3つのメモリバンクから構成されるが、本発明はこれに限定されるものではない。メモリ1を構成するメモリバンクは記憶領域として3以上存在すれば、どのような形式であっても構わない。例えばメモリ1を3つで構成してもよく、また、1つのメモリ1を3領域に分割してもよい。
【0033】
【発明の効果】
以上説明したように、本発明のメモリバンク制御方法及びメモリバンク制御装置においては、以下に記載するような効果を奏する。
読み出しバンクフラグと書き込みバンクフラグとが、過渡状態を含め、いかなる組み合わせの場合も包含している真理値表を用いているので、それぞれのバンクフラグが過渡状態であってもそれを考慮した動作をすることができる。またメモリへの読み出しアクセスと書き込みアクセスとが非同期式の場合において、読み出しおよび書き込みのメモリバンク切換えが全く同時に行われる場合でも正確に動作することが可能となる。したがって、読み出しアドレスが書き込みアドレスを追い越すことを防止することができると共に、書き込みアドレスが読み出しアドレスを追い越すことを防止することができる。その結果、画像の途切れ及び画像の乱れを防止することができ、品質を保つことが可能になる。
【図面の簡単な説明】
【図1】本発明の実施の形態におけるフラグを用いたメモリバンク制御ブロックを示す図である。
【図2】本発明の実施の形態におけるバンクフラグの動作を示す図である。
【図3】本発明の実施の形態における書き込み制御部の構成を示す図である。
【図4】本発明の実施の形態における読み出し制御部の構成を示す図である。
【図5】本発明の実施の形態におけるメモリバンク書き込み制御部の動作を示すフローチャートである。
【図6】本発明の実施の形態におけるメモリバンク読み出し制御部の動作を示すフローチャートである。
【図7】本発明の実施の形態におけるバンクフラグ書き込み時の動作を示す真理値表である。
【図8】本発明の実施の形態におけるバンクフラグ読み出し時の動作を示す真理値表である。
【図9】従来の技術におけるメモリバンク制御装置のブロック電気回路図である。
【図10】従来の技術におけるバンクアドレスカウンタの動作を示す図である。
【図11】従来の技術における書き込み許可信号発生器の動作を示すフローチャートである。
【符号の説明】
1 メモリ
2 読み出し制御部
3 書き込み制御部
4 読み出しバンクフラグ
5 書き込みバンクフラグ
6 読み出しアドレスカウンタ
7 書き込みアドレスカウンタ
101、102、103 メモリバンク
111 書き込みバンクセレクタ
112 読み出しバンクセレクタ
201、301 フラグ左シフタ
202、302 一致検出器
203 読み出しバンクフラグ判別器
204、304 タイミング調整器
303 書き込みバンクフラグ判別器
205、305 フラグデコーダ[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a memory bank control device and a memory bank control method, and more particularly to a memory bank control device and a memory bank control method in a FIFO (First In First Out) buffer system used for image / audio signal processing.
[0002]
[Prior art]
A memory bank control device and a memory bank control method in a conventional FIFO buffer system will be described with reference to FIGS. 9, 10, and 11. FIG.
FIG. 9 is a block electric circuit diagram of a memory bank control device in a conventional FIFO buffer system. M0 (13) to M3 (16) are storage areas in which data is input / output in the FIFO format.
FIG. 10 is a diagram showing the operation of the bank address counter used in the memory bank control device in the conventional FIFO buffer system.
[0003]
In the memory bank control device in the conventional FIFO buffer system, a counter constituted by all values represented by binary numbers is used as a counter constituting the flag of the storage area. FIG. 10 shows a counter when the flag is composed of 2 bits. In this case, the counter is composed of four flags 00 (b), 01 (b), 10 (b), and 11 (b). (Hereinafter, (b) indicates that the value is a binary number).
FIG. 11 is a flowchart showing the operation of the write permission signal generator. When the read field address is 01 (b) and the write field address is 10 (b), the operation of the write permission signal generator will be described according to the flow of FIG. When the field writing is completed in this state (S21), 1 is added to the writing field address (S22) to become 11 (b), and the value is compared with the reading field address. When the read field address is referred to, when it is in a transient state (FIG. 10) and 11 (b) is referred to as the read field address, it is determined that the read field address and the write field address are the same, and the write field address is 2 Are added to obtain 01 (b).
[0004]
[Problems to be solved by the invention]
However, in the memory bank control method in the conventional FIFO buffer system described above, a counter composed of all values represented by binary numbers is used. For this reason, the counter value in the transient state also indicates another memory bank in the same manner as the counter value in the normal state. As a result, there is a problem that malfunction may occur when the counter value in the transient state is referred to. Specifically, since the field memory is not written for two fields, the data is not updated, and when reading is performed, a phenomenon occurs in which the image is discontinuous or disturbed.
Furthermore, depending on the timing of reading and writing, there is a problem that the read address overtakes the write address or vice versa, resulting in the phenomenon that the image is discontinuous or disturbed.
[0005]
The present invention has been made in view of such a problem in the conventional technology, and reading and writing of a memory are asynchronous, and address overtaking does not occur even when reading and writing of a memory are performed simultaneously. An object is to provide a memory bank control method.
[0006]
[Means for Solving the Problems]
The memory bank control method of the present invention for solving the above-mentioned problem shifts the write bank flag and the read bank flag in which only one of a plurality of 1 bits constituting the bank flag is "1", and the write bank flag And a memory bank control method for selecting a different memory bank of memories composed of at least three or more memory banks by a read bank flag and performing a write operation and a read operation asynchronously,
When performing a read operation,
When two or more 1 bits constituting the write bank flag indicate “1”, or when all 1 bits constituting the write bank flag indicate “0”, the read bank flag is shift-controlled. On the other hand, when only one of a plurality of 1 bits constituting the write bank flag indicates “1”, the read bank flag after the shift control is compared with the current write bank flag. If they match, the read bank flag value before the shift control is used for reading, and if they do not match, the read bank flag value after the shift control is used for reading.
Also, the memory bank control method of the present invention shifts and controls the write bank flag and the read bank flag in which only one of a plurality of 1 bits constituting the bank flag is “1”, and the write bank flag and read bank A memory bank control method for selecting a different memory bank of memories composed of at least three or more memory banks according to a flag and performing a write operation and a read operation asynchronously,
When performing a write operation,
When two or more 1 bits constituting the read bank flag indicate “1”, or when all 1 bits constituting the read bank flag indicate “0”, the write bank flag is shift-controlled. On the other hand, if only one of a plurality of 1 bits constituting the read bank flag indicates “1”, the write bank flag after the shift control is compared with the current read bank flag. If they match, writing is performed using the value of the write bank flag before the shift control, and if not, writing is performed using the value of the write bank flag after the shift control.
[0007]
According to such a memory bank control method of the first and second inventions of the present application, two or more 1 bits are represented by a binary number and a plurality of flags (hereinafter referred to as a plurality of bits) constituting the bank flag. "1" state and all the 1-bit indicates "0" state and a plurality of bits of the write bank flag indicating a plurality of bits of the read bank flag as possible out to prevent a state of the same value .
Therefore, in the memory control device in which the read operation and the write operation are performed asynchronously, overtaking of the address can be prevented even if the read and write are performed simultaneously.
In addition, the ring counter can circulate data internally to perform a counting operation, and a shift register using N flip-flops can form an N-ary counter.
Further, for example, when one bit of two or more flags constituting either one of the write bank flag and the read bank flag indicates “1”, the bank flag is detected as an abnormal value. . The bank flag detected as an abnormal value is processed as a non-existing value, and ring counter shift control is performed.
Therefore, duplication of both bank flags can be prevented. Further, reading and writing are asynchronous, and address overtaking can be easily prevented even when reading and writing are performed simultaneously.
[0014]
According to the memory bank control device of the fifth and sixth inventions of the present application, two or more 1 bits are represented by a binary number and a plurality of flags (hereinafter referred to as a plurality of bits) constituting the bank flag. "1" state and all the 1-bit indicates "0" state and a plurality of bits of the write bank flag indicating a plurality of bits of the read bank flag as possible out to prevent a state of the same value .
Therefore, in the memory control device in which the read operation and the write operation are performed asynchronously, overtaking of the address can be prevented even if the read and write are performed simultaneously.
In addition, the ring counter can circulate data internally to perform a counting operation, and a shift register using N flip-flops can form an N-ary counter.
Further, since the bank flag indicating each operation at the time of data writing and data reading is provided, duplication of both bank flags can be prevented.
Further, for example, when one bit of two or more flags constituting either one of the write bank flag and the read bank flag indicates “1”, the bank flag is detected as an abnormal value. . The bank flag detected as an abnormal value is processed as a non-existing value, and ring counter shift control is performed.
Therefore, duplication of both bank flags can be prevented. Further, reading and writing are asynchronous, and address overtaking can be easily prevented even when reading and writing are performed simultaneously.
Further, when all of a plurality of bits constituting either one of the write bank flag and the read bank flag indicate “0”, the bank flag is detected as an abnormal value.
Therefore, duplication of both bank flags can be prevented. Further, reading and writing are asynchronous, and address overtaking can be easily prevented even when reading and writing are performed simultaneously.
[0023]
DETAILED DESCRIPTION OF THE INVENTION
Next, embodiments of a memory bank control method and a memory bank control apparatus according to the present invention will be described with reference to the drawings.
Referring to FIG. 1, there is shown a memory bank control block using flags in the embodiment of the present invention. In FIG. 1, a
The read
The
Referring to FIG. 2, there is shown a counter that shift-controls the read
[0024]
The
The
The
A read signal, a read reset, and a read
A write signal, write reset, and write
The
A read
[0025]
Next, the configuration of the read
The
As shown in FIG. 3, the write bank flag 5 (N) (N is a natural number) is input to the flag left
The
The read
The
The
[0026]
Similarly, the
As shown in FIG. 4, the read bank flag 4 (N) is input to the flag left
The
The write
The
The
[0027]
Next, operations of the read
The read
Similarly, the
The read
Similarly, the
[0028]
Next, operations of the read
First, as shown in FIG. 3, the write bank flag 5 (N) input to the flag left
The
The read
The
[0029]
The operation of the read
The
The write
The
[0030]
Next, the operation of the memory bank control block using the flag in the embodiment of the present invention will be described using the flowcharts shown in FIGS.
When performing a write operation, as shown in FIG. 5, when a system reset is applied, the
When a write reset is given (S3), the
Here, the value of the read
[0031]
The above flow will be described with reference to FIGS. 1 and 7 in the case where a write reset is given.
As an example, consider the case where the read
First, when the write reset signal becomes 1 when the
When the write reset signal becomes 1 when the
Further, consider a case where the write reset signal becomes 1 when the
The case where the read
[0032]
However, if the read
If the read
The flow when the write reset is given has been described above, but the flow when the read reset shown in FIG. 8 is also performed in the same manner as the flow when the write reset is given.
In the embodiment described above, the
[0033]
【The invention's effect】
As described above, the memory bank control method and the memory bank control device of the present invention have the following effects.
Since the read bank flag and the write bank flag use a truth table that includes any combination including the transient state, even if each bank flag is in the transient state, the operation considering it can do. Further, in the case where the read access and the write access to the memory are asynchronous, it is possible to operate accurately even when the memory bank switching for read and write is performed at the same time. Accordingly, it is possible to prevent the read address from overtaking the write address, and it is possible to prevent the write address from overtaking the read address. As a result, the interruption of the image and the disturbance of the image can be prevented, and the quality can be maintained.
[Brief description of the drawings]
FIG. 1 is a diagram showing a memory bank control block using a flag in an embodiment of the present invention.
FIG. 2 is a diagram showing an operation of a bank flag in the embodiment of the present invention.
FIG. 3 is a diagram showing a configuration of a write control unit in the embodiment of the present invention.
FIG. 4 is a diagram showing a configuration of a read control unit in the embodiment of the present invention.
FIG. 5 is a flowchart showing an operation of a memory bank write control unit in the embodiment of the present invention.
FIG. 6 is a flowchart showing an operation of a memory bank read control unit in the embodiment of the present invention.
FIG. 7 is a truth table showing an operation when writing a bank flag in the embodiment of the present invention.
FIG. 8 is a truth table showing an operation at the time of reading a bank flag in the embodiment of the present invention.
FIG. 9 is a block electric circuit diagram of a memory bank control device in the prior art.
FIG. 10 is a diagram showing an operation of a bank address counter in the prior art.
FIG. 11 is a flowchart showing the operation of the write permission signal generator in the prior art.
[Explanation of symbols]
DESCRIPTION OF
101, 102, 103 memory banks
111 write bank selector
112 read bank selector
201, 301 flag left shifter
202, 302 coincidence detector
203 read bank flag discriminator
204, 304 timing adjuster
303 write bank flag discriminator
205, 305 flag decoder
Claims (2)
読み出し動作を行う場合において、
前記書き込みバンクフラグを構成する二以上の1ビットが“1”を示す場合、または前記書き込みバンクフラグを構成する全ての1ビットが“0”を示す場合には、前記読み出しバンクフラグをシフト制御してから読み出しを行い、一方、前記書き込みバンクフラグを構成する複数の1ビットのうち1つだけが“1”を示す場合には、シフト制御後の読み出しバンクフラグと現在の書き込みバンクフラグとを比較し、一致すれば、シフト制御前の読み出しバンクフラグの値を用いて読み出しを行い、一致しなければ、当該シフト制御後の読み出しバンクフラグの値を用いて読み出しを行うことを特徴とするメモリバンク制御方法。 A write bank flag and a read bank flag in which only one of a plurality of 1 bits constituting the bank flag is set to “1”, and at least three or more memory banks are configured by the write bank flag and the read bank flag. A memory bank control method for selecting a different memory bank of the memory to be executed and performing a write operation and a read operation asynchronously,
When performing a read operation,
When two or more 1 bits constituting the write bank flag indicate “1”, or when all 1 bits constituting the write bank flag indicate “0”, the read bank flag is shift-controlled. On the other hand, when only one of a plurality of 1 bits constituting the write bank flag indicates “1”, the read bank flag after the shift control is compared with the current write bank flag. If they match, the read bank flag value before the shift control is used for reading, and if not matched, the read bank flag value after the shift control is used for reading. Control method.
書き込み動作を行う場合において、
前記読み出しバンクフラグを構成する二以上の1ビットが“1”を示す場合、または前記読み出しバンクフラグを構成する全ての1ビットが“0”を示す場合には、前記書き込みバンクフラグをシフト制御してから書き込みを行い、一方、前記読み出しバンクフラグを構成する複数の1ビットのうち1つだけが“1”を示す場合には、シフト制御後の書き込みバンクフラグと現在の読み出しバンクフラグとを比較し、一致すれば、シフト制御前の書き込みバンクフラグの値を用いて書き込みを行い、一致しなければ、当該シフト制御後の書き込みバンクフラグの値を用いて書き込みを行うことを特徴とするメモリバンク制御方法。 A write bank flag and a read bank flag in which only one of a plurality of 1 bits constituting the bank flag is set to “1”, and at least three or more memory banks are configured by the write bank flag and the read bank flag. A memory bank control method for selecting a different memory bank of the memory to be executed and performing a write operation and a read operation asynchronously,
When performing a write operation,
When two or more 1 bits constituting the read bank flag indicate “1”, or when all 1 bits constituting the read bank flag indicate “0”, the write bank flag is shift-controlled. On the other hand, if only one of a plurality of 1 bits constituting the read bank flag indicates “1”, the write bank flag after the shift control is compared with the current read bank flag. If they match, writing is performed using the value of the write bank flag before the shift control, and if not, writing is performed using the value of the write bank flag after the shift control. Control method.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000119187A JP3920002B2 (en) | 2000-04-20 | 2000-04-20 | Memory bank control method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000119187A JP3920002B2 (en) | 2000-04-20 | 2000-04-20 | Memory bank control method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2001307475A JP2001307475A (en) | 2001-11-02 |
| JP3920002B2 true JP3920002B2 (en) | 2007-05-30 |
Family
ID=18630212
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2000119187A Expired - Fee Related JP3920002B2 (en) | 2000-04-20 | 2000-04-20 | Memory bank control method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3920002B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015001986A (en) | 2013-06-13 | 2015-01-05 | 富士通株式会社 | Data transfer device, buffering circuit, and buffering method |
-
2000
- 2000-04-20 JP JP2000119187A patent/JP3920002B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2001307475A (en) | 2001-11-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11183225B2 (en) | Memories and methods for performing vector atomic memory operations with mask control and variable data length and data unit size | |
| US5657484A (en) | Method for carrying out a boolean operation between any two bits of any two registers | |
| US6112268A (en) | System for indicating status of a buffer based on a write address of the buffer and generating an abort signal before buffer overflows | |
| KR960004734B1 (en) | Information protection method and information memory media | |
| TW384539B (en) | Semiconductor memory device having copy dsta protect function and method for accessing the same | |
| JP3920002B2 (en) | Memory bank control method | |
| JPWO2019054495A1 (en) | Memory circuit devices and how to use them | |
| US6901490B2 (en) | Read/modify/write registers | |
| JPH057738B2 (en) | ||
| JP3266529B2 (en) | Method and apparatus for forming translation information to translate storage area addresses into memory control signals | |
| EP0256134A1 (en) | Central processing unit | |
| US10997087B2 (en) | Direct memory access | |
| EP0661648A2 (en) | Digital signal processing circuit | |
| US5978957A (en) | Very fast pipelined shifter element with parity prediction | |
| US6081869A (en) | Bit-field peripheral | |
| JPH11143763A (en) | Access conflict processing circuit device | |
| JPH02212952A (en) | Memory access control system | |
| US6622204B1 (en) | Content-addressable memory with cascaded match, read and write logic in a programmable logic device | |
| JPH023164A (en) | dual port memory | |
| JPS63225839A (en) | Rom with security function | |
| JP2004029347A (en) | Data encryption / decryption circuit | |
| JPS61239341A (en) | Memory busy checking system | |
| JPH02302855A (en) | Memory control system | |
| JP2019050073A (en) | Memory device, arithmetic processing unit and control method of memory device | |
| JPS62239252A (en) | Storage device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050315 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050516 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060117 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20060223 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060317 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061017 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061218 |
|
| 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: 20070118 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070214 |
|
| 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: 20100223 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110223 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110223 Year of fee payment: 4 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110223 Year of fee payment: 4 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110223 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120223 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130223 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140223 Year of fee payment: 7 |
|
| LAPS | Cancellation because of no payment of annual fees |