JP3920002B2 - Memory bank control method - Google Patents

Memory bank control method Download PDF

Info

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
Application number
JP2000119187A
Other languages
Japanese (ja)
Other versions
JP2001307475A (en
Inventor
和宏 桝竹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Electronics Corp
Original Assignee
NEC Electronics 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 NEC Electronics Corp filed Critical NEC Electronics Corp
Priority to JP2000119187A priority Critical patent/JP3920002B2/en
Publication of JP2001307475A publication Critical patent/JP2001307475A/en
Application granted granted Critical
Publication of JP3920002B2 publication Critical patent/JP3920002B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

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 memory 1 includes three memory banks 101, 102, and 103 , and inputs and outputs data in a FIFO format.
The read bank flag 4 is a flag representing a memory bank that is currently reading.
The write bank flag 5 is a flag representing a memory bank that is currently being written.
Referring to FIG. 2, there is shown a counter that shift-controls the read bank flag 4 and the write bank flag 5. As shown in FIG. 2, the counter that controls the shift of the read bank flag 4 and the write bank flag 5 is a ring counter. This ring counter is set so that only one bit of a plurality of flags (hereinafter referred to as a plurality of bits) constituting the memory bank is set to “1”. That is, there is no state where a plurality of bits in the memory bank indicate “1”, a state where all the bits indicate “0”, and a state where the read bank flag 4 and the write bank flag 5 indicate the same value. Therefore, it is possible to determine that the bank flag in such a state, that is, a transient state, is abnormal.
[0024]
The read control unit 2 advances the read memory bank of the memory 1 according to the truth table of FIG. A read reset and a write bank flag 5 are input to the read control unit 2, and an input / output connection is made with the read bank flag 4.
The write control unit 3 advances the write memory bank of the memory 1 according to the truth table of FIG. A write reset and a read bank flag 4 are input to the write control unit 3, and an input / output connection with the write bank flag 5 is made.
The read control unit 2 and the write control unit 3 correspond to an abnormal value detection unit.
A read signal, a read reset, and a read bank flag 4 are input to the read address counter 6, and a read address is output to the memory bank 101, the memory bank 102, and the memory bank 103 of the memory 1.
A write signal, write reset, and write bank flag 5 are input to the write address counter 7, and a write address is output to the memory bank 101, the memory bank 102, and the memory bank 103 of the memory 1.
The write bank selector 111 receives the write bank flag 5 and a write signal.
A read bank flag 4 and a read signal are input to the read bank selector 112 .
[0025]
Next, the configuration of the read control unit 2 and the write control unit 3 will be described in detail with reference to FIGS.
The write control unit 3 is configured as shown in FIG.
As shown in FIG. 3, the write bank flag 5 (N) (N is a natural number) is input to the flag left shifter 201 and connected to the flag decoder 205 .
The coincidence detector 202 receives the write bank flag 5 and the read bank flag 4 after the left shift , and the output is connected to the AND gate.
The read bank flag discriminator 203 receives the read bank flag 4 and outputs the discrimination result to the AND gate.
The flag decoder 205 is connected to the selector and outputs the write bank flag 5 (N + 1).
The timing adjuster 204 is connected to a write reset, and a write update timing signal is output.
[0026]
Similarly, the read control unit 2 is configured as shown in FIG.
As shown in FIG. 4, the read bank flag 4 (N) is input to the flag left shifter 301 and connected to the flag decoder 305 .
The coincidence detector 302 receives the read bank flag 4 and the write bank flag 5 after the left shift , and the output is connected to the AND gate.
The write bank flag discriminator 303 receives the write bank flag 5 and outputs the discrimination result to the AND gate.
The flag decoder 305 is connected to the selector and outputs the read bank flag 4 (N + 1).
The timing adjuster 304 is connected to a read reset, and a read update timing signal is output.
[0027]
Next, operations of the read address counter 6 and the write address counter 7 in the embodiment of the present invention will be described with reference to FIG.
The read address counter 6 indicates the address at the time of read access to the memory bank designated by the read bank flag 4. When a read reset is input to the read address counter 6, the read address counter 6 sets the top address of the memory bank specified by the read bank flag 4. When the read signal is input, the address value is counted up. However, a read reset is input so that the final address of each memory bank is not exceeded.
Similarly, the write address counter 7 indicates the address at the time of write access to the memory bank designated by the write bank flag 5. When a write reset is input to the write address counter 7, the write address counter 7 sets the top address of the memory bank specified by the write bank flag 5. When a write signal is input, the address value is counted up. However, a write reset is input so that the final address of each memory bank is not exceeded.
The read bank selector 112 distributes the read signal by the read bank flag 4 so that the input data and the read address input in common to each memory bank are valid only in one of the memory banks.
Similarly, the write bank selector 111 distributes the write signal by the write bank flag 5 in order to validate the input data and the write address input in common to each memory bank only in one of the memory banks.
[0028]
Next, operations of the read control unit 2 and the write control unit 3 in the embodiment of the present invention will be described with reference to FIGS.
First, as shown in FIG. 3, the write bank flag 5 (N) input to the flag left shifter 201 represents the current write memory bank, and the write bank flag 5 (N + 1) output from the flag decoder 205. Represents a memory bank to be written next.
The coincidence detector 202 outputs the value 1′b1 if the write bank flag 5 and the read bank flag 4 after the left shift match, and 1′b0 otherwise.
The read bank flag discriminator 203 outputs 1′b1 when the read bank flag 4 is any one of 001 (b), 010 (b), and 100 (b), and outputs 1′b0 otherwise.
The timing adjuster 204 receives the write reset signal as an input, and generates a signal indicating the timing for writing the write bank flag 5 (N + 1).
[0029]
The operation of the read control unit 2 shown in FIG. 4 is performed similarly to the operation of the write control unit 3 shown in FIG. That is, in FIG. 4, the read bank flag 4 (N) input to the flag left shifter 301 represents the current read memory bank, and the read bank flag 4 (N + 1) output from the flag decoder 305 is Represents the memory bank to be read.
The coincidence detector 302 outputs the value 1′b1 if the read bank flag 4 and the write bank flag 5 after the left shift match, and 1′b0 otherwise.
The write bank flag discriminator 303 outputs 1′b1 when the write bank flag 5 is any of 001 (b), 010 (b), and 100 (b), and outputs 1′b0 otherwise.
The timing adjuster 304 receives the read reset signal as an input, and generates a signal indicating the timing for reading the read bank flag 4 (N + 1).
[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 write bank flag 5 is initialized to 001 (b) (S1), and input data is stored in the memory 1 until a write reset is input. Is written into the memory bank 101 (S2).
When a write reset is given (S3), the write bank flag 5 is shifted to the left as shown in FIG. 2 (S4).
Here, the value of the read bank flag 4 is read (S5). If the read bank flag 4 = the write bank flag 5 after the left shift (S6), the write bank flag 5 is shifted to the right (S7). However, if the read bank flag 4 is other than the specified value, or if the read bank flag 4 is not equal to the write bank flag 5 after the left shift , the write bank flag 5 is decoded (S8), and writing is permitted and executed (S9). . Here, the specified value refers to values 001 (b), 010 (b), and 100 (b) indicating the memory bank.
[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 bank flag 4 is 010 (b).
First, when the write reset signal becomes 1 when the write bank flag 5 is 001 (b), it is desired to advance the write memory bank from the memory bank 101 to the memory bank 102 . However, since the read memory bank is the memory bank 102 , when the write memory bank advances to the memory bank 102 , the read memory bank and the write memory bank become the same. As a result, the write address may overtake the read address. In order to solve this problem, the write memory bank is not advanced, and the same memory bank is written again. That is, the write bank flag 5 holds the state of 001 (b).
When the write reset signal becomes 1 when the write bank flag 5 is 100 (b), the write memory bank advances from the memory bank 103 to the memory bank 101 . In this case, the write memory bank can be advanced because the write memory bank does not overlap the read memory bank .
Further, consider a case where the write reset signal becomes 1 when the write bank flag 5 is 010 (b). This is a combination that cannot occur originally, but considers a malfunction or the like. In this case, since the read memory bank and the write memory bank are the same, the access to the same memory bank can be prevented by moving the write memory bank from the memory bank 102 to the memory bank 103 .
The case where the read bank flag 4 is 001 (b) and 100 (b) can be considered in the same manner as the above three patterns.
[0032]
However, if the read bank flag 4 is other than 001 (b), 010 (b), and 100 (b), it is determined that the read bank flag 4 is in a transient state, and the write memory bank is advanced. This prevents the read memory bank from overlapping the write memory bank.
If the read bank flag 4 is other than the specified value, it is assumed that the read bank flag 4 is in a transient state. That is, it means that the write reset and the read reset are performed simultaneously. This means that both the read memory bank and the write memory bank are going to advance to the next memory bank. Therefore, if the read bank flag 4 is other than the specified value, the write bank flag 5 is decoded, and writing is permitted and executed.
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 memory 1 is composed of three memory banks, but the present invention is not limited to this. The memory bank constituting the memory 1 may be in any format as long as there are three or more storage areas. For example, the memory 1 may be composed of three, and one memory 1 may be divided into three areas.
[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 SYMBOLS 1 Memory 2 Read control part 3 Write control part 4 Read bank flag 5 Write bank flag 6 Read address counter 7 Write address counter
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”とする書き込みバンクフラグ及び読み出しバンクフラグをシフト制御し、前記書き込みバンクフラグ及び読み出しバンクフラグにより、少なくとも三以上のメモリバンクから構成されるメモリの異なるメモリバンクをそれぞれ選択して、書き込み動作と読み出し動作を非同期に行うメモリバンク制御方法であって、
読み出し動作を行う場合において、
前記書き込みバンクフラグを構成する二以上の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”とする書き込みバンクフラグ及び読み出しバンクフラグをシフト制御し、前記書き込みバンクフラグ及び読み出しバンクフラグにより、少なくとも三以上のメモリバンクから構成されるメモリの異なるメモリバンクをそれぞれ選択して、書き込み動作と読み出し動作を非同期に行うメモリバンク制御方法であって、
書き込み動作を行う場合において、
前記読み出しバンクフラグを構成する二以上の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.
JP2000119187A 2000-04-20 2000-04-20 Memory bank control method Expired - Fee Related JP3920002B2 (en)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015001986A (en) 2013-06-13 2015-01-05 富士通株式会社 Data transfer device, buffering circuit, and buffering method

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