JPH05204596A - リングバッファ装置 - Google Patents

リングバッファ装置

Info

Publication number
JPH05204596A
JPH05204596A JP3425292A JP3425292A JPH05204596A JP H05204596 A JPH05204596 A JP H05204596A JP 3425292 A JP3425292 A JP 3425292A JP 3425292 A JP3425292 A JP 3425292A JP H05204596 A JPH05204596 A JP H05204596A
Authority
JP
Japan
Prior art keywords
bank
register
output
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.)
Pending
Application number
JP3425292A
Other languages
English (en)
Inventor
Katsunori Yamada
勝則 山田
Masayoshi Saito
正嘉 斉藤
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.)
Dainippon Screen Manufacturing Co Ltd
Original Assignee
Dainippon Screen Manufacturing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dainippon Screen Manufacturing Co Ltd filed Critical Dainippon Screen Manufacturing Co Ltd
Priority to JP3425292A priority Critical patent/JPH05204596A/ja
Publication of JPH05204596A publication Critical patent/JPH05204596A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

(57)【要約】 【目的】 バッファメモリの記憶領域を分割する複数の
バンクのうち、メモリ機能が正常なバンクのみを用いて
リングバッファ動作を行う。 【構成】 CPU1によってバッファメモリ2の各バン
クのメモリチェックを行い、メモリ機能が正常なバンク
の先頭アドレス(ポインタ)を、アドレス保持手段9に
セットする。ライトアドレス発生手段11およびリードア
ドレス発生手段12は保持されているバンクのポインタを
サイクリックに読み出して、バッファメモリ2のバンク
の指定、およびバンク内のアドレスを発生する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、バッファメモリの記憶
領域を複数の単位領域(以下、バンクと呼ぶ)に分割
し、各バンクへのデータの読み出しと書き込みの一連処
理をサイクリックに行うリングバッファ装置に関する。
【0002】
【従来の技術】リングバッファ装置は、データを記憶す
るバッファメモリと、バッファメモリへの書き込みアド
レスをサイクリックに発生する書き込みアドレス発生回
路と、バッファメモリ内のデータの読み出しアドレスを
サイクリックに発生する読み出しアドレス発生回路と、
これらのアドレス発生回路の出力を順次に切り換え制御
する制御部(一般にはCPU)とを備えて構成される。
【0003】比較的データ量の多い画像データなどを記
憶するのに用いられるバッファメモリは、通常、複数個
のメモリIC(以下、メモリチップと呼ぶ)を接続して
記憶容量を確保している。このような大容量のバッファ
メモリでは、その記憶領域(各メモリチップの記憶領域
の総和)を複数のバンクに分割し、分割した各バンクに
対してデータの読み書きが行われる。バンクの設定は任
意であるが、以下では、説明の便宜上、1つのバンクが
1つのメモリチップの記憶領域に相当するものとする。
【0004】したがって、前記の書き込みアドレス発生
回路は、1つのバンク内のアドレスを順次発生してい
き、バンク内の最終アドレスを発生し終えると、次のバ
ンクを選択するためのバンクセレクト信号を出力する。
このバンクセレクト信号をサイクリックに発生すること
で、バッファメモリの各バンクを順に繰り返し指定す
る。読み出しアドレス発生回路も同様である。これらの
アドレスおよびバンクセレクト信号は、CPUのリード
ライトフェーズ信号により、順次切り換えられてバッフ
ァメモリに出力される。
【0005】
【発明が解決しようとする課題】このように、各アドレ
ス発生回路によって各バンクを順に繰り返し選択するだ
けの装置では、何らかの原因で一つのバンク(メモリチ
ップ)に故障が発生した場合でも、その故障したバンク
を選択してしまう結果、データの読み書きができないこ
とからリングバッファ動作が中断されるという問題があ
る。残りのバンクは正常であるのにもかかわらず、バッ
ファメモリをリングバッファとして使用することができ
なくなる。また、復旧のためにはメモリチップの交換が
必要であり、応急的な処置ができなかった。
【0006】本発明は、このような事情に鑑みてなされ
たものであって、バッファメモリのバンクに異常が発生
した場合でも、残りの正常なバンクのみを選択的に使用
してリングバッファ動作を継続することができるリング
バッファ装置を提供することを目的とする。
【0007】
【課題を解決するための手段】本発明は、上記の目的を
達成するために次のような構成をとる。すなわち、本発
明は、バッファメモリの記憶領域を複数の単位領域(バ
ンク)に分割し、各バンクへのデータの読み書きをサイ
クリックに行うリングバッファ装置において、前記各バ
ンクのメモリ機能が正常であるか異常であるかを検出す
る手段と、メモリ機能が正常であるバンクのアドレスを
保持する手段と、保持されているバンクのアドレスをサ
イクリックに読み出す手段と、読み出したアドレスに対
してデータの読み書きを行う手段とを備えたことを特徴
とする。
【0008】
【作用】本発明の構成によれば、メモリ機能が正常であ
るバンクのアドレスを保持し、そのバンクのアドレスを
サイクリックに読み出して、バッファメモリへのデータ
の読み書きを行うので、バッファメモリにメモリ機能が
異常なバンクが存在していても、そのバンクを選択する
ことがなくリングバッファ動作は継続される。
【0009】
【実施例】以下、本発明の一実施例を図面に基づいて説
明する。図1はこの実施例に係るリングバッファ装置の
概略構成を示したブロック図である。CPU1はバッフ
ァメモリ2の各バンク(通常、各バンクはメモリチップ
で構成される)のメモリ機能が正常であるか異常である
かを検出する(このことをメモリチェックという)とと
もに、バッファメモリ2へのデータの読み書きを制御す
るものである。ROM3にはメモリチェック用のプログ
ラムが予め格納され、RAM4にはメモリチェック用の
データが予め格納されている。本装置への電源投入時に
ROM3内のプログラムが立ち上がり、CPU1がその
プログラムに従ってバッファメモリ2のメモリチェック
を行うようになっている。
【0010】入力データ保持部5はバッファメモリ2に
入力するメモリチェック用のデータを一時的に保持し、
CPU1からの制御信号によってそのデータを入力バッ
ファ7に転送する一種のレジスタである。出力データ保
持部6も同様で、出力バッファ8から出力されるメモリ
チェック用のデータを一時的に保持するレジスタとして
構成されている。
【0011】アドレス保持部9は、バッファメモリ2の
各バンクの先頭アドレス(以下、これをポインタと呼
ぶ)を保持する複数個のレジスタで構成されている。ク
ロック発生回路10は、バッファメモリ2のアドレス発生
用の基本クロック信号CLを発生するとともに、バッフ
ァメモリ2の読み書きを制御するリードライトフェーズ
信号RWPを発生するもので、いわば、入出力機器間の
データのやり取りを制御する入出力制御部と言うことも
できる。そして、これらの信号のパルス幅,サイクル等
はCPU1によって設定されるようになっている。
【0012】ライトアドレス発生部11は、基本クロック
信号CLの入力に基づいて1つのバンク内のアドレス信
号Aを発生するとともに、各バンクを選択するバンクセ
レクト信号CS および、アドレス保持部9に出力動作を
指示するアウトプットイネーブル信号OEを発生するも
のである。一方のリードアドレス発生部12も同様の機能
をもつ。これらの各アドレス発生部11,12 からの出力信
号(アドレス信号A,バンクセレクト信号CS ,アウト
プットイネーブル信号OE)は、クロック発生回路10か
らのリードライトフェーズ信号RWPに応じて、その出
力が切り換えられるようになっている。なお、図1で
は、便宜上、リードライトフェーズ信号RWPが各アド
レス発生部11,12 に入力するようになっているが、後の
図3に示すように実際には、各出力信号の切り換え器
(マルチプレクサ)に入力される。
【0013】入力機器13および出力機器14はバッファメ
モリ2を用いてデータの入出力を行う外部機器であり、
入力機器13はリードライトフェーズ信号RWPが書き込
み可能状態になっているときに入力データを入力バッフ
ァ7に転送し、一方の出力機器14はリードライトフェー
ズ信号RWPが読み出し可能状態になっているときに出
力バッファ8からのデータを取り込むようになってい
る。また、入力バッファ7および出力バッファ8も、リ
ードライトフェーズ信号RWPの状態によってその出力
動作が切り換えられるようになっている。すなわち、リ
ードライトフェーズ信号RWPによって入力バッファ7
が動作状態となっているとき、出力バッファ8にはイン
バータ15で反転されたリードライトフェーズ信号RWP
が与えられるので非動作状態となる。この逆の場合も同
様である。
【0014】次に、アドレス保持部9,ライトアドレス
発生部11, リードアドレス発生部12の詳細を示した図3
を参照しながら、このリングバッファ装置の基本動作
(リングバッファ動作)について説明する。図3におい
て、レジスタRA,レジスタR1〜R8,レジスタRB
がアドレス保持部9に相当し、ライトカウンタ111,一致
回路112,レジスタP, デコーダ113,ゲート回路114 がラ
イトアドレス発生部11に相当し、リードカウンタ121,一
致回路122,レジスタP,デコーダ123,ゲート回路124 が
リードアドレス発生部12に相当する。
【0015】なお、マルチプレクサmux1〜mux8およびマ
ルチプレクサMUX1,MUX2 は、リードライトフェーズ信号
RWPが書き込み状態のときに上記したライトアドレス
発生部11の各構成回路からの入力信号を選択して出力
し、読み出し状態のときには上記のリードアドレス発生
部12の各構成回路からの入力信号を選択して出力すると
いう機能をもつ。
【0016】まず、バッファメモリ2の記憶領域が図2
に示すように8つのバンクB1〜B8に分割設定されて
いるとする。各バンクのポインタをA0 〜A10の11ビッ
トで表し、上位3ビットのA8 〜A10をバンクを指定す
るためのアドレスデータ、下位8ビットのA0 〜A7
1つのバンク内のアドレスを指定するアドレスデータと
する。
【0017】CPU1は、レジスタRAに書き込みを開
始するバンクのポインタをセットし、レジスタR1〜R
8に次に指定するバンクのポインタを順にセットし、レ
ジスタRBに読み出しを開始するバンクのポインタをセ
ットする。例えば、レジスタRA,RBにバンクB1の
ポインタ「0000〜0 」がセットされると、レジスタR1
〜R8の内容は次のようになる。 レジスタR1・・・バンクB2のポインタ「0010〜
0」 レジスタR2・・・バンクB3のポインタ「0100〜
0」 レジスタR3・・・バンクB4のポインタ「0110〜
0」 レジスタR4・・・バンクB5のポインタ「1000〜
0」 レジスタR5・・・バンクB6のポインタ「1010〜
0」 レジスタR6・・・バンクB7のポインタ「1100〜
0」 レジスタR7・・・バンクB8のポインタ「1110〜
0」 レジスタR8・・・バンクB1のポインタ「0000〜
0」
【0018】CPU1は、バッファメモリ2へのデータ
の書き込み時に、レジスタRAの内容をライトカウンタ
111 にロードし、クロック発生回路10のリードライトフ
ェーズ信号RWPを書き込み状態にする。ライトカウン
タ111 は基本クロック信号CLの入力に応じてその内容
を「1」カウントアップし、上位3ビットA8 〜A10
デコーダ113 に出力するとともに、下位8ビットA0
7 を一致回路112 に出力し、かつ、マルチプレクサMU
X2を介してバッファメモリ2のアドレス端子に出力す
る。
【0019】デコーダ113 は上位3ビットA8 〜A10
2進数を10進数(0〜7)にデコードし、それぞれの数
値に対応しているデータ線から信号を出力する。リード
ライトフェーズ信号RWPが書き込み状態であるから、
この「0〜7」に対応している8本のデータ線はゲート
回路114 を介してレジスタR1〜R8のアウトプットイ
ネーブル端子に接続されるとともに、バッファメモリ2
のバンクセレクト端子に接続される。すなわち、デコー
ダ113 の出力信号がバンクを選択するためのバンクセレ
クト信号CS となり、かつ、レジスタR1〜R8のアウ
トプットイネーブル信号OE1〜OE8となる。
【0020】このことをより詳しくするために図4を参
照する。上位3ビットA8 〜A10が「000」のとき、
デコーダ113 のデータ線D0からのみ信号(アクティブ
「L」)が出力され、残りのデータ線D1〜D7からは
出力されない。このデータ線D0からの出力信号は、バ
ッファメモリ2のバンクB1に相当するメモリチップM
1を選択するとともに、レジスタR1のアウトプットイ
ネーブル信号OE1としてゲート回路114 に出力され
る。
【0021】以下、同様で、上位3ビットA8 〜A10
「001」のときはデータ線D1からのみ信号が出力さ
れて、バッファメモリ2のバンクB2に相当するメモリ
チップM1が選択されるとともに、レジスタR2のアウ
トプットイネーブル信号OE2がゲート回路114 に出力
される。上位3ビットA8 〜A10が「111」のときは
データ線D7からのみ信号が出力されて、バッファメモ
リ2のバンクB8に相当するメモリチップM8が選択さ
れるとともに、レジスタR8のアウトプットイネーブル
信号OE8がゲート回路114 に出力される。
【0022】一致回路112 は下位8ビットA0 〜A7
データと、レジスタPにセットされているデータとの比
較を行い、これらの内容が一致すれば、ゲート回路114
をオープンにする。レジスタPには1つのバンクの最終
アドレス値が予め格納されている。この例では、下位8
ビットA0 〜A7 で1つのバンク内のアドレスを指定す
るから、その最終値として256=「11111111」がセッ
トされている。なお、以下では、都合により、下位8ビ
ットA0 〜A7 をアドレスA0 〜A7 と記載する。
【0023】以上のことをまとめると、本実施例のリン
グバッファ装置によるアドレスの発生は次のようにして
行われる。ライトカウンタ111 に書き込み開始のバンク
B1のポインタ「0000〜0 」がロードされると、デコー
ダ113 がその上位3ビットA8 〜A10をデコードして、
バッファメモリ2のバンクB1を指定するバンクセレク
ト信号CS を出力するとともに、レジスタR1のアウト
プットイネーブル信号OE1をゲート回路114 に出力す
る。ライトカウンタ111 によって、1つずつカウントア
ップされるバンクB1のアドレスA0 〜A7 に、図1の
入力機器13からの入力データが順に書き込まれ、アドレ
スA0 〜A7 が最終値になるとゲート回路114 が開く。
すると、アウトプットイネーブル信号OE1がレジスタ
R1に出力され、レジスタR1にセットされているバン
クB2のポインタ「0010〜0 」がライトカウンタ111 に
ロードされる。
【0024】以下、同様で、デコーダ113 はバンクB2
のポインタ「0010〜0 」の上位3ビットA8 〜A10をデ
コードして、バッファメモリ2のバンクB2を指定する
バンクセレクト信号CS を出力するとともに、レジスタ
R2のアウトプットイネーブル信号OE2をゲート回路
114 に出力する。基本クロック信号CLによって1つず
つカウントアップされるバンクB2のアドレスA0 〜A
7 がバンクB2の最終値(=512)になると、ゲート回路
114 が開いてアウトプットイネーブル信号OE2がレジ
スタR2に出力され、レジスタR2にセットされている
バンクB3のポインタ「0100〜0 」がライトカウンタ11
1 にロードされる。
【0025】このように、アドレスA0 〜A7 が各バン
クの最終値になる毎に、レジスタR1〜R8にセットさ
れているバンクのポインタが順に読み出されて、次のバ
ンクの指定がサイクリックに行われる。この動作はリー
ドライトフェーズ信号RWPが書き込み状態になってい
る間、続けられ、バンクB1〜B8に入力機器13からの
データが書き込まれる。
【0026】リードライトフェーズ信号RWPが読み込
み状態に変わると、レジスタRBにセットされている読
み出し開始のバンクB1のポインタがリードカウンタ12
1 にロードされ、上記と同じ動作で順にバンクB1〜B
8が選択されて、データが出力機器14に読み出される。
【0027】以上が、このリングバッファ装置の基本動
作である。バンクB1〜B8をサイクリックに選択する
という点において従来技術と同様の動作であるが、各バ
ンクのポインタをレジスタR1〜R8にセットしてこれ
を読み出すという点で相違がある(従来では単にリング
カウンタ等を用いてバンクB1〜B8を順に選択してい
る)。したがって、レジスタR1〜R8の読み出しを適
宜に選択することで特定のバンクが選択できる。すなわ
ち、メモリ機能が正常なバンクのポインタのみをレジス
タR1〜R8にセットし、それらを順に読み出すこと
で、異常なバンクが存在していてもリングバッファ動作
を継続できる。この処理について以下に説明する。
【0028】まず、この装置の電源を投入した時点で、
図1に示したROM3内のプログラムが立ち上がり、こ
れに従ってCPU1がメモリチェックを行う。なお、こ
のときに、レジスタRA,レジスタR1〜R8,レジス
タRBに対して上記で説明したような各バンクのポイン
タがセットされ、リングバッファ動作の準備が行われ
る。また、RAM4内にはメモリチェック用のデータと
して、1つのバンクの記憶容量と同一量のデータが予め
格納されているとする。このデータの内容は任意であ
る。
【0029】CPU1はRAM4内のデータを入力デー
タ保持部5にセットし、クロック発生回路10に対してリ
ードライトフェーズ信号RWPのサイクル(書き込み状
態と読み出し状態との繰り返し周期)を設定する。例え
ば、図5に示すように、バンクセレクト信号CS が 256
×8回出力される毎に、書き込み状態と読み出し状態と
が繰り返されるように設定される。
【0030】次に、入力データ保持部5にアウトプット
イネーブル信号を与えて、その内容を入力バッファ7に
転送し、クロック発生回路10から基本クロック信号CL
とリードライトフェーズ信号RWPとを出力させる。そ
して、図3のレジスタRAにセットされている書き込み
開始のバンクB1のポインタをライトカウンタ111 にロ
ードする。これにより、前述のリングバッファ動作が行
われ、バンクB1〜B8が順に指定されてメモリチェッ
ク用のデータが書き込まれる。なお、この例のメモリチ
ェックではバンクB1〜B8に同じデータが順に書き込
まれることになる。
【0031】バンクB8へのデータの書き込みが終わる
と(バンクセレクト信号CS が 256×8回出力される
と)、リードライトフェーズ信号RWPが読み出し状態
に変わる。CPU1はこのタイミングで図3のレジスタ
RBにセットされている読み出し開始のバンクB1のポ
インタをリードカウンタ121 にロードする。これによ
り、リングバッファ動作が行われ、バンクB1〜B8が
順に指定されてメモリチェック用のデータが読み出され
る。
【0032】最初に読み出されたバンクB1のデータは
出力データ保持部6に一旦保持され、CPU1によって
取り込まれ、RAM4内のデータと比較される。この間
に、次に読み出されたバンクB2のデータが出力データ
保持部6に一旦保持される。このようにして、CPU1
はRAM4内のデータと、バンクB1〜B8のデータと
を順に比較し、両データが一致していればそのバンクの
メモリ機能は正常であると判断し、また、一致していな
ければそのバンクのメモリ機能は異常であると判断す
る。
【0033】ここで、バンクB2およびバンクB5のメ
モリ機能が異常であると判断されたとする。CPU1
は、バンクB2のポインタがセットされているレジスタ
R1の内容およびバンクB5のポインタがセットされて
いるレジスタR4の内容を変更する。すなわち、レジス
タR1にはバンクB2の次に選択されるバンクB3のポ
インタをセットし、レジスタR4にはバンクB5の次に
選択されるバンクB6のポインタをセットする。
【0034】ここであらためて、各レジスタR1〜R8
セットされているバンクのポインタを以下に列挙する。 *レジスタR1・・・バンクB3のポインタ「0100
〜0」 レジスタR2・・・・バンクB3のポインタ「0100
〜0」 レジスタR3・・・・バンクB4のポインタ「0110
〜0」 *レジスタR4・・・バンクB6のポインタ「1010
〜0」 レジスタR5・・・・バンクB6のポインタ「1010
〜0」 レジスタR6・・・・バンクB7のポインタ「1100
〜0」 レジスタR7・・・・バンクB8のポインタ「1110
〜0」 レジスタR8・・・・バンクB1のポインタ「0000
〜0」
【0035】「*」印を付しているのが、今回のメモリ
チェックで内容が変更されたレジスタである。このよう
に、メモリ機能が正常であると判断されたバンクのみ、
レジスタR1〜R8にセットされる。
【0036】以上がメモリチェック処理である。この処
理でセットされたレジスタの内容を用いて前述したリン
グバッファ動作を行うと以下のようになる(図3および
図4参照)。
【0037】書き込み時において、レジスタRAからラ
イトカウンタ111 に書き込みを開始するバンクB1のポ
インタ「0000〜0 」がロードされると、デコーダ113 が
その上位3ビットA8 〜A10「000」を10進数にデコ
ードして、「0」に対応しているデータ線D0から信号
を出力する。
【0038】この出力信号がバンクB1に相当するメモ
リチップM1を選択するとともに、レジスタR1のアウ
トプットイネーブル信号OE1としてゲート回路114 に
出力される。ライトカウンタ111 は基本クロック信号C
Lの発生に伴って、アドレスA0 〜A7 を1つずつカウ
ントアップする。このアドレスA0 〜A7 に入力機器13
からの入力データが書き込まれていく。
【0039】アドレスA0 〜A7 が最終値になると、ゲ
ート回路114 が開いてアウトプットイネーブル信号OE
1がレジスタR1に出力され、異常バンクB2でなく、
レジスタR1にセットされている正常バンクB3のポイ
ンタがライトカウンタ111 にロードされる。
【0040】以下、同様で、デコーダ113 はバンクB3
のポインタ「0100〜0 」の上位3ビットA8 〜A10「0
10」をデコードして、バッファメモリ2のバンクB3
を指定するとともに、レジスタR3のアウトプットイネ
ーブル信号OE3をゲート回路114 に出力する。ライト
カウンタ111 によって1つずつカウントアップされるア
ドレスA0 〜A7 が最終値になると、ゲート回路114 が
開いてアウトプットイネーブル信号OE3がレジスタR
3に出力され、レジスタR3にセットされているバンク
B4のポインタ「0110〜0 」がライトカウンタ111 にロ
ードされる。
【0041】デコーダ113 はバンクB4のポインタの上
位3ビットA8 〜A10「011」をデコードして、バン
クB4を指定するとともに、レジスタR4のアウトプッ
トイネーブル信号OE4を出力する。これにより、次に
はレジスタR4にセットされているバンクB6がライト
カウンタ111 にロードされる。このように、レジスタR
1,R3,R4,R6,R7,R8のアウトプットイネ
ーブル信号OE1,OE3,OE4,・・・,が順に出
力されて、正常なバンクB1,B3,B4,・・・・,
が順に選択される。なお、データの読み出し時も同様に
してバンクの選択が行われる。よって、メモリ機能が異
常なバンクが存在していてもリングバッファ動作は支障
なく行われる。
【0042】以上の実施例では、メモリ機能が正常なバ
ンクの選択をハードウエアを用いて実施したが、これを
ソフトウエアに代えて実施することもできる。例えば、
メモリチェックの結果、メモリ機能が正常であると判断
したバンクのポインタをRAM4に記憶しておき、図3
の一致回路112,122 からの信号に応じて、RAM4に記
憶しているポインタを順にライトカウンタ111 あるいは
リードカウンタ121 にロードする。ただし、RAM4へ
のアクセスタイムにより、実施例に比べると、若干処理
速度が低下する。また、信頼性の観点からもリングバッ
ファ動作をハードウエアで実施するのが好ましい。ハー
ドウエアで実施するためのその他の例を変形例として以
下に示す。
【0043】<変形例>上述の実施例では、CPU1に
よるメモリチェックを行う際にも、ライトアドレス発生
部11とリードアドレス発生部12とを用いてリングバッフ
ァ動作を実行していた。このため、レジスタR1〜R8
の内容をメモリチェックの結果により更新するという処
理を行っていた。この変形例はレジスタR1〜R8の内
容の変更を省くものである。したがって、メモリチェッ
クの際の書き込みアドレスの発生、および読み出しアド
レスの発生をCPU1によるソウトウエアの処理によっ
て行う。メモリチェックの際には、特に、前述のような
リングバッファ動作を行う必要はないからである。
【0044】まず、CPU1によりバンクB1のアドレ
スを順に発生させる。すなわち、図2に示すように、バ
ンクB1のアドレス「0000〜0」から「0001〜
1」を発生させ、このアドレスにRAM4内に格納され
ているデータを書き込む。書き込み終了後、バンクB1
のデータを読み出してRAM4の内容と比較し、メモリ
チェックを行う。残りのバンクB2〜B8に対しても同
様にメモリチェックを行う。
【0045】実施例と同じく、メモリチェックの結果、
バンクB2およびバンクB5のメモリ機能が異常である
と判断されたとする。CPU1はメモリ機能が正常なバ
ンクのポインタのみをレジスタR1〜R8にセットす
る。すなわち、レジスタR1〜R8の内容は以下のよう
になる。 レジスタR1・・・バンクB1のポインタ「0000〜
0」 レジスタR2・・・バンクB3のポインタ「0100〜
0」 レジスタR3・・・バンクB4のポインタ「0110〜
0」 レジスタR4・・・バンクB6のポインタ「1010〜
0」 レジスタR5・・・バンクB7のポインタ「1100〜
0」 レジスタR6・・・バンクB8のポインタ「1110〜
0」 レジスタR7・・・使用せず レジスタR8・・・使用せず
【0046】このレジスタR1〜R6のみを用いて、正
常なバンクのみをサイクリックに選択してリングバッフ
ァ動作を実行する。そのためのハードウエアの構成を図
6に示す。なお、この図には書き込みアドレスを発生す
る構成のみを記載し、読み出しアドレスを発生する構成
およびこれらを切り換えるマルチプレクサmux1〜mux8,
マルチプレクサMUX1,MUX2 の図示を省略している。
【0047】図6において、レジスタR1〜R8,ライ
トカウンタ111,一致回路112,レジスタP,デコーダ113
は図4に記載したものと同様の構成回路である。ただ
し、デコーダ113 はバンクのポインタの上位3ビットA
8 〜A10をデコードして、バンクセレクト信号CS のみ
を出力するようになっている。
【0048】まず、図示を省略しているレジスタRAか
ら、書き込み開始のバンクB1のポインタがライトカウ
ンタ111 にロードされると、デコーダ113 がその上位3
ビットA8 〜A10「000」をデコードして、バンクB
1を指定するバンクセレクト信号CS をバッファメモリ
2に出力する。
【0049】ライトカウンタ111 で1つずつカウントア
ップされたアドレスA0 〜A7 はバッファメモリ2に与
えられるとともに、一致回路112 に出力される。レジス
タPにはアドレスA0 〜A7 の最終値が予めセットされ
ており、一致回路112 はライトカウンタ111 の出力値が
最終アドレス値になると信号を出力する。ここまでの動
作は、実施例の装置と同じである。
【0050】一致回路112 の出力信号は、シフトレジス
タ60とカウンタ61とに与えられる。シフトレジスタ60の
出力はレジスタR1〜R8のアウトプットイネーブル端
子に接続されており、一致回路112 から信号が与えられ
るたびに、出力をシフトしていく。
【0051】一方、カウンタ61は一致回路112 からの出
力信号をカウントし、カウント値を別の一致回路62に出
力する(以下、区別のためこの一致回路62を第2の一致
回路62とする) 。第2の一致回路62は、そのカウント値
とレジスタQの内容とを比較し、一致した時点で、シフ
トレジスタ60をクリアする。レジスタQには、CPU1
によって正常なバンクの数が予めセットされる。この例
では正常なバンクの数として「6」がセットされる。
【0052】したがって、1つのバンクのアドレスA0
〜A7 が最終値になると、アウトプットイネーブル信号
OE1〜OE8がシフトレジスタ60から順に出力され、
レジスタR1〜R8にセットされているバンクのポイン
タが順にライトカウンタ111にロードされる。そして、
一致回路112 の出力信号の数が「6」になると、すなわ
ち、アウトプットイネーブル信号OE1〜OE6が出力
されると、第2の一致回路62がシフトレジスタ60をクリ
アする。引き続き、一致回路112 から信号が出力される
と、シフトレジスタ60は再びアウトプットイネーブル信
号OE1〜OE6を出力する。
【0053】このように、正常なバンクのポインタをセ
ットしているレジスタR1〜R6のアウトプットイネー
ブル信号OE1〜OE6のみが順に出力され、未使用の
レジスタR7,R8に対するアウトプットイネーブル信
号OE7,8は出力されず、正常なバンクのみがサイク
リックに選択される。
【0054】
【発明の効果】以上の説明から明らかなように、本発明
のリングバッファ装置によれば、メモリ機能が正常であ
るバンクのアドレスを保持し、そのバンクのアドレスを
サイクリックに読み出して、バッファメモリへのデータ
の読み書きを行うので、バッファメモリにメモリ機能が
異常なバンクが存在していても、そのバンクを選択する
ことがなくリングバッファ動作を継続することができ
る。したがって、メモリ機能の復旧作業に取りかかるま
での応急処置的な対応が可能となり、リングバッファ装
置の停止、ひいてはこのリングバッファ装置を用いてデ
ータを入出力する装置の停止を避けることができ、実用
上有効である。
【図面の簡単な説明】
【図1】本発明の一実施例に係るリングバッファ装置の
概略構成を示したブロック図である。
【図2】バッファメモリのバンクを模式的に示した図で
ある。
【図3】リングバッファ装置の要部を示したブロック図
である。
【図4】さらにその一部を詳細に示したブロック図であ
る。
【図5】リードライトフェーズ信号RWPの一設定例を
示した図である。
【図6】変形例としてのリングバッファ装置の要部を示
した図である。
【符号の説明】
1・・・CPU 2・・・バッファメモリ 3・・・ROM 4・・・RAM 9・・・アドレス保持部 11・・・ライトアドレス発生部 12・・・リードアドレス発生部

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 バッファメモリの記憶領域を複数の単位
    領域(バンク)に分割し、各バンクへのデータの読み書
    きをサイクリックに行うリングバッファ装置において、 前記各バンクのメモリ機能が正常であるか異常であるか
    を検出する手段と、 メモリ機能が正常であるバンクのアドレスを保持する手
    段と、 保持されているバンクのアドレスをサイクリックに読み
    出す手段と、 読み出したアドレスに対してデータの読み書きを行う手
    段と、 を備えたことを特徴とするリングバッファ装置。
JP3425292A 1992-01-24 1992-01-24 リングバッファ装置 Pending JPH05204596A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3425292A JPH05204596A (ja) 1992-01-24 1992-01-24 リングバッファ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3425292A JPH05204596A (ja) 1992-01-24 1992-01-24 リングバッファ装置

Publications (1)

Publication Number Publication Date
JPH05204596A true JPH05204596A (ja) 1993-08-13

Family

ID=12408982

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3425292A Pending JPH05204596A (ja) 1992-01-24 1992-01-24 リングバッファ装置

Country Status (1)

Country Link
JP (1) JPH05204596A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100454144B1 (ko) * 2001-11-23 2004-10-26 주식회사 하이닉스반도체 멀티 뱅크 구조의 플래쉬 메모리 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100454144B1 (ko) * 2001-11-23 2004-10-26 주식회사 하이닉스반도체 멀티 뱅크 구조의 플래쉬 메모리 장치

Similar Documents

Publication Publication Date Title
EP0978124B1 (en) A method for testing integrated memory using an integrated dma controller
US4870562A (en) Microcomputer capable of accessing internal memory at a desired variable access time
JPH02133834A (ja) インサートキットエミュレータ
US4759021A (en) Test pattern generator
JP2002216499A (ja) シリアルアクセス機能付きアドレスマルチプレクサメモリのテスト方式
JPH0743429A (ja) 物理アドレス変換回路
KR970051415A (ko) 반도체 메모리 장치의 병합 데이타 출력 모드 선택 방법
JPH0652070A (ja) 集積回路のデータ保護装置およびデータ保護方法
JPH05204596A (ja) リングバッファ装置
JP2001155496A (ja) パターン発生方法・パターン発生器・メモリ試験装置
JP2002367397A (ja) メモリテスト兼初期化回路
JP2824853B2 (ja) パターンデータ書込み方式
JPH06324906A (ja) シングルチップマイクロコンピュータ
JPS63108747A (ja) ゲ−トアレイ集積回路
SU1472909A1 (ru) Запоминающее устройство с динамической адресацией
JPH09146662A (ja) サスペンド・レジューム方法およびコンピュータシステム
JPS6153579A (ja) 論理回路機能試験機
JPH01239485A (ja) 大規模集積回路
JPH05151017A (ja) マイクロコンピユータ
JP3281898B2 (ja) メモリ搭載半導体装置及びメモリテスト方法
JPS6319027B2 (ja)
KR930011426B1 (ko) 마이크로프로그램을 갖는 반도체 집적 회로장치
JPS62259145A (ja) アルゴリズミツク・パタ−ン発生装置
JPH0575985B2 (ja)
JPS63231676A (ja) ベクトルレジスタ制御方式