JPH05204596A - Ring buffer device - Google Patents

Ring buffer device

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
Japanese (ja)
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/en
Publication of JPH05204596A publication Critical patent/JPH05204596A/en
Pending legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

PURPOSE:To execute a ring buffer operation by using only a bank whose memory function is normal, in plural banks obtained by dividing a storage area of a buffer memory. CONSTITUTION:By a CPU 1, a memory check of each bank of a buffer memory 2 is executed, and the head address (pointer) of the bank whose memory function is normal is set to an address holding means 9. A write address generating means 11 and a read address generating means 12 read out cyclically the pointer of the held bank, designate the bank of the buffer memory 2, and generate an address in the bank.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、バッファメモリの記憶
領域を複数の単位領域(以下、バンクと呼ぶ)に分割
し、各バンクへのデータの読み出しと書き込みの一連処
理をサイクリックに行うリングバッファ装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention divides a storage area of a buffer memory into a plurality of unit areas (hereinafter referred to as banks) and cyclically performs a series of processing for reading and writing data in each bank. Regarding a buffer device.

【0002】[0002]

【従来の技術】リングバッファ装置は、データを記憶す
るバッファメモリと、バッファメモリへの書き込みアド
レスをサイクリックに発生する書き込みアドレス発生回
路と、バッファメモリ内のデータの読み出しアドレスを
サイクリックに発生する読み出しアドレス発生回路と、
これらのアドレス発生回路の出力を順次に切り換え制御
する制御部(一般にはCPU)とを備えて構成される。
2. Description of the Related Art A ring buffer device cyclically generates a buffer memory that stores data, a write address generation circuit that cyclically generates a write address to the buffer memory, and a read address of data in the buffer memory. A read address generation circuit,
A control unit (generally a CPU) for sequentially switching and controlling the outputs of these address generation circuits is provided.

【0003】比較的データ量の多い画像データなどを記
憶するのに用いられるバッファメモリは、通常、複数個
のメモリIC(以下、メモリチップと呼ぶ)を接続して
記憶容量を確保している。このような大容量のバッファ
メモリでは、その記憶領域(各メモリチップの記憶領域
の総和)を複数のバンクに分割し、分割した各バンクに
対してデータの読み書きが行われる。バンクの設定は任
意であるが、以下では、説明の便宜上、1つのバンクが
1つのメモリチップの記憶領域に相当するものとする。
A buffer memory used for storing image data having a relatively large amount of data is usually connected with a plurality of memory ICs (hereinafter referred to as memory chips) to secure a storage capacity. In such a large-capacity buffer memory, its storage area (sum of storage areas of each memory chip) is divided into a plurality of banks, and data is read from and written to each of the divided banks. Although the bank setting is arbitrary, in the following, for convenience of description, one bank corresponds to the storage area of one memory chip.

【0004】したがって、前記の書き込みアドレス発生
回路は、1つのバンク内のアドレスを順次発生してい
き、バンク内の最終アドレスを発生し終えると、次のバ
ンクを選択するためのバンクセレクト信号を出力する。
このバンクセレクト信号をサイクリックに発生すること
で、バッファメモリの各バンクを順に繰り返し指定す
る。読み出しアドレス発生回路も同様である。これらの
アドレスおよびバンクセレクト信号は、CPUのリード
ライトフェーズ信号により、順次切り換えられてバッフ
ァメモリに出力される。
Therefore, the write address generation circuit sequentially generates the addresses in one bank, and when the generation of the final address in the bank is completed, outputs the bank select signal for selecting the next bank. To do.
By cyclically generating this bank select signal, each bank of the buffer memory is sequentially and repeatedly designated. The same applies to the read address generation circuit. These addresses and bank select signals are sequentially switched by a CPU read / write phase signal and output to the buffer memory.

【0005】[0005]

【発明が解決しようとする課題】このように、各アドレ
ス発生回路によって各バンクを順に繰り返し選択するだ
けの装置では、何らかの原因で一つのバンク(メモリチ
ップ)に故障が発生した場合でも、その故障したバンク
を選択してしまう結果、データの読み書きができないこ
とからリングバッファ動作が中断されるという問題があ
る。残りのバンクは正常であるのにもかかわらず、バッ
ファメモリをリングバッファとして使用することができ
なくなる。また、復旧のためにはメモリチップの交換が
必要であり、応急的な処置ができなかった。
As described above, in a device in which each bank is repeatedly and sequentially selected by each address generation circuit, even if one bank (memory chip) fails for some reason, the failure occurs. As a result of selecting the selected bank, there is a problem that the ring buffer operation is interrupted because data cannot be read or written. Even though the remaining banks are normal, the buffer memory cannot be used as a ring buffer. In addition, it was necessary to replace the memory chip for recovery, so emergency measures could not be taken.

【0006】本発明は、このような事情に鑑みてなされ
たものであって、バッファメモリのバンクに異常が発生
した場合でも、残りの正常なバンクのみを選択的に使用
してリングバッファ動作を継続することができるリング
バッファ装置を提供することを目的とする。
The present invention has been made in view of the above circumstances, and even when an abnormality occurs in a bank of the buffer memory, only the remaining normal banks are selectively used to perform the ring buffer operation. An object is to provide a ring buffer device that can continue.

【0007】[0007]

【課題を解決するための手段】本発明は、上記の目的を
達成するために次のような構成をとる。すなわち、本発
明は、バッファメモリの記憶領域を複数の単位領域(バ
ンク)に分割し、各バンクへのデータの読み書きをサイ
クリックに行うリングバッファ装置において、前記各バ
ンクのメモリ機能が正常であるか異常であるかを検出す
る手段と、メモリ機能が正常であるバンクのアドレスを
保持する手段と、保持されているバンクのアドレスをサ
イクリックに読み出す手段と、読み出したアドレスに対
してデータの読み書きを行う手段とを備えたことを特徴
とする。
The present invention has the following constitution in order to achieve the above object. That is, according to the present invention, in the ring buffer device that divides the storage area of the buffer memory into a plurality of unit areas (banks) and cyclically reads and writes data to each bank, the memory function of each bank is normal. Means for detecting whether the memory function is normal, a means for holding the address of a bank whose memory function is normal, a means for cyclically reading the address of the held bank, and a data read / write operation for the read address And means for performing.

【0008】[0008]

【作用】本発明の構成によれば、メモリ機能が正常であ
るバンクのアドレスを保持し、そのバンクのアドレスを
サイクリックに読み出して、バッファメモリへのデータ
の読み書きを行うので、バッファメモリにメモリ機能が
異常なバンクが存在していても、そのバンクを選択する
ことがなくリングバッファ動作は継続される。
According to the configuration of the present invention, the address of a bank having a normal memory function is held, the address of the bank is cyclically read, and the data is read from or written to the buffer memory. Even if there is a bank with an abnormal function, the ring buffer operation is continued without selecting that bank.

【0009】[0009]

【実施例】以下、本発明の一実施例を図面に基づいて説
明する。図1はこの実施例に係るリングバッファ装置の
概略構成を示したブロック図である。CPU1はバッフ
ァメモリ2の各バンク(通常、各バンクはメモリチップ
で構成される)のメモリ機能が正常であるか異常である
かを検出する(このことをメモリチェックという)とと
もに、バッファメモリ2へのデータの読み書きを制御す
るものである。ROM3にはメモリチェック用のプログ
ラムが予め格納され、RAM4にはメモリチェック用の
データが予め格納されている。本装置への電源投入時に
ROM3内のプログラムが立ち上がり、CPU1がその
プログラムに従ってバッファメモリ2のメモリチェック
を行うようになっている。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a schematic configuration of a ring buffer device according to this embodiment. The CPU 1 detects whether the memory function of each bank of the buffer memory 2 (usually, each bank is composed of memory chips) is normal or abnormal (this is called a memory check), and also to the buffer memory 2. It controls the reading and writing of data. A program for memory check is stored in advance in the ROM 3, and data for memory check is stored in advance in the RAM 4. A program in the ROM 3 starts up when the power of the apparatus is turned on, and the CPU 1 performs a memory check of the buffer memory 2 according to the program.

【0010】入力データ保持部5はバッファメモリ2に
入力するメモリチェック用のデータを一時的に保持し、
CPU1からの制御信号によってそのデータを入力バッ
ファ7に転送する一種のレジスタである。出力データ保
持部6も同様で、出力バッファ8から出力されるメモリ
チェック用のデータを一時的に保持するレジスタとして
構成されている。
The input data holding unit 5 temporarily holds the data for memory check input to the buffer memory 2,
It is a kind of register that transfers the data to the input buffer 7 according to a control signal from the CPU 1. Similarly, the output data holding unit 6 is configured as a register that temporarily holds the memory check data output from the output buffer 8.

【0011】アドレス保持部9は、バッファメモリ2の
各バンクの先頭アドレス(以下、これをポインタと呼
ぶ)を保持する複数個のレジスタで構成されている。ク
ロック発生回路10は、バッファメモリ2のアドレス発生
用の基本クロック信号CLを発生するとともに、バッフ
ァメモリ2の読み書きを制御するリードライトフェーズ
信号RWPを発生するもので、いわば、入出力機器間の
データのやり取りを制御する入出力制御部と言うことも
できる。そして、これらの信号のパルス幅,サイクル等
はCPU1によって設定されるようになっている。
The address holding unit 9 is composed of a plurality of registers for holding the head address of each bank of the buffer memory 2 (hereinafter referred to as a pointer). The clock generation circuit 10 generates a basic clock signal CL for generating an address of the buffer memory 2 and a read / write phase signal RWP for controlling reading and writing of the buffer memory 2, so to speak, data between input / output devices. It can also be said to be an input / output control unit that controls the exchange of data. The pulse width, cycle, etc. of these signals are set by the CPU 1.

【0012】ライトアドレス発生部11は、基本クロック
信号CLの入力に基づいて1つのバンク内のアドレス信
号Aを発生するとともに、各バンクを選択するバンクセ
レクト信号CS および、アドレス保持部9に出力動作を
指示するアウトプットイネーブル信号OEを発生するも
のである。一方のリードアドレス発生部12も同様の機能
をもつ。これらの各アドレス発生部11,12 からの出力信
号(アドレス信号A,バンクセレクト信号CS ,アウト
プットイネーブル信号OE)は、クロック発生回路10か
らのリードライトフェーズ信号RWPに応じて、その出
力が切り換えられるようになっている。なお、図1で
は、便宜上、リードライトフェーズ信号RWPが各アド
レス発生部11,12 に入力するようになっているが、後の
図3に示すように実際には、各出力信号の切り換え器
(マルチプレクサ)に入力される。
The write address generator 11 generates the address signal A in one bank based on the input of the basic clock signal CL, and outputs the bank select signal C S for selecting each bank and the address holding unit 9. The output enable signal OE for instructing the operation is generated. One of the read address generators 12 also has the same function. These output signals from the address generator 11 and 12 (the address signal A, the bank select signal C S, output enable signal OE) in response to the read write phase signal RWP from the clock generation circuit 10, whose output It can be switched. In FIG. 1, the read / write phase signal RWP is input to the address generators 11 and 12 for the sake of convenience. However, as shown in FIG. Input to the multiplexer).

【0013】入力機器13および出力機器14はバッファメ
モリ2を用いてデータの入出力を行う外部機器であり、
入力機器13はリードライトフェーズ信号RWPが書き込
み可能状態になっているときに入力データを入力バッフ
ァ7に転送し、一方の出力機器14はリードライトフェー
ズ信号RWPが読み出し可能状態になっているときに出
力バッファ8からのデータを取り込むようになってい
る。また、入力バッファ7および出力バッファ8も、リ
ードライトフェーズ信号RWPの状態によってその出力
動作が切り換えられるようになっている。すなわち、リ
ードライトフェーズ信号RWPによって入力バッファ7
が動作状態となっているとき、出力バッファ8にはイン
バータ15で反転されたリードライトフェーズ信号RWP
が与えられるので非動作状態となる。この逆の場合も同
様である。
The input device 13 and the output device 14 are external devices that input and output data using the buffer memory 2.
The input device 13 transfers the input data to the input buffer 7 when the read / write phase signal RWP is in the writable state, and one output device 14 is in the readable state of the read / write phase signal RWP. The data from the output buffer 8 is taken in. The output operation of the input buffer 7 and the output buffer 8 is also switched depending on the state of the read / write phase signal RWP. That is, the read / write phase signal RWP causes the input buffer 7
Is operating, the read / write phase signal RWP inverted by the inverter 15 is output to the output buffer 8.
Is given, it is inactive. The same applies to the opposite case.

【0014】次に、アドレス保持部9,ライトアドレス
発生部11, リードアドレス発生部12の詳細を示した図3
を参照しながら、このリングバッファ装置の基本動作
(リングバッファ動作)について説明する。図3におい
て、レジスタRA,レジスタR1〜R8,レジスタRB
がアドレス保持部9に相当し、ライトカウンタ111,一致
回路112,レジスタP, デコーダ113,ゲート回路114 がラ
イトアドレス発生部11に相当し、リードカウンタ121,一
致回路122,レジスタP,デコーダ123,ゲート回路124 が
リードアドレス発生部12に相当する。
Next, FIG. 3 showing the details of the address holding unit 9, the write address generating unit 11, and the read address generating unit 12.
The basic operation (ring buffer operation) of this ring buffer device will be described with reference to FIG. 3, register RA, registers R1 to R8, register RB
Corresponds to the address holding unit 9, the write counter 111, the coincidence circuit 112, the register P, the decoder 113, and the gate circuit 114 correspond to the write address generation unit 11, and the read counter 121, the coincidence circuit 122, the register P, the decoder 123, The gate circuit 124 corresponds to the read address generation unit 12.

【0015】なお、マルチプレクサmux1〜mux8およびマ
ルチプレクサMUX1,MUX2 は、リードライトフェーズ信号
RWPが書き込み状態のときに上記したライトアドレス
発生部11の各構成回路からの入力信号を選択して出力
し、読み出し状態のときには上記のリードアドレス発生
部12の各構成回路からの入力信号を選択して出力すると
いう機能をもつ。
The multiplexers mux1 to mux8 and the multiplexers MUX1 and MUX2 select and output the input signals from the respective constituent circuits of the write address generating section 11 described above when the read / write phase signal RWP is in the write state and read them. In the state, it has a function of selecting and outputting an input signal from each of the constituent circuits of the read address generating unit 12.

【0016】まず、バッファメモリ2の記憶領域が図2
に示すように8つのバンクB1〜B8に分割設定されて
いるとする。各バンクのポインタをA0 〜A10の11ビッ
トで表し、上位3ビットのA8 〜A10をバンクを指定す
るためのアドレスデータ、下位8ビットのA0 〜A7
1つのバンク内のアドレスを指定するアドレスデータと
する。
First, the storage area of the buffer memory 2 is shown in FIG.
It is assumed that the banks are divided into eight banks B1 to B8 as shown in FIG. The pointer of each bank is represented by 11 bits of A 0 to A 10 , the upper 3 bits of A 8 to A 10 are address data for designating the bank, and the lower 8 bits of A 0 to A 7 are in one bank. Address data that specifies an address.

【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」
The CPU 1 sets the pointer of the bank to start writing in the register RA, and registers R1 to R
The pointer of the bank to be designated next is sequentially set to 8, and the pointer of the bank to start reading is set to the register RB. For example, when the pointers "0000 to 0" of the bank B1 are set in the registers RA and RB, the register R1
The contents of ~ R8 are as follows. Register R1 ... Bank B2 pointer "0010-
0 ”register R2 ... pointer of bank B3“ 0100-
0 "register R3 ... pointer of bank B4" 0110-
0 "register R4 ... pointer of bank B5" 1000 ...
0 ”register R5 ... pointer of bank B6“ 1010
0 ”register R6 ... Pointer“ 1100 to bank B7 ”
0 "Register R7 ... Bank B8 pointer" 1110 "
0 "register R8 ... pointer" 0000 to bank B1 "
0 ”

【0018】CPU1は、バッファメモリ2へのデータ
の書き込み時に、レジスタRAの内容をライトカウンタ
111 にロードし、クロック発生回路10のリードライトフ
ェーズ信号RWPを書き込み状態にする。ライトカウン
タ111 は基本クロック信号CLの入力に応じてその内容
を「1」カウントアップし、上位3ビットA8 〜A10
デコーダ113 に出力するとともに、下位8ビットA0
7 を一致回路112 に出力し、かつ、マルチプレクサMU
X2を介してバッファメモリ2のアドレス端子に出力す
る。
When writing data to the buffer memory 2, the CPU 1 writes the contents of the register RA into a write counter.
The read / write phase signal RWP of the clock generation circuit 10 is set to the write state. The write counter 111 counts up the content by “1” in response to the input of the basic clock signal CL, outputs the upper 3 bits A 8 to A 10 to the decoder 113, and the lower 8 bits A 0 to.
A 7 is output to the matching circuit 112, and the multiplexer MU
Output to the address terminal of the buffer memory 2 via X2.

【0019】デコーダ113 は上位3ビットA8 〜A10
2進数を10進数(0〜7)にデコードし、それぞれの数
値に対応しているデータ線から信号を出力する。リード
ライトフェーズ信号RWPが書き込み状態であるから、
この「0〜7」に対応している8本のデータ線はゲート
回路114 を介してレジスタR1〜R8のアウトプットイ
ネーブル端子に接続されるとともに、バッファメモリ2
のバンクセレクト端子に接続される。すなわち、デコー
ダ113 の出力信号がバンクを選択するためのバンクセレ
クト信号CS となり、かつ、レジスタR1〜R8のアウ
トプットイネーブル信号OE1〜OE8となる。
The decoder 113 decodes the upper 3 bits A 8 to A 10 binary numbers into decimal numbers (0 to 7) and outputs signals from the data lines corresponding to the respective numbers. Since the read / write phase signal RWP is in the write state,
The eight data lines corresponding to "0 to 7" are connected to the output enable terminals of the registers R1 to R8 via the gate circuit 114 and the buffer memory 2
Connected to the bank select terminal of. That is, the output signal of the decoder 113 becomes the bank select signal C S for selecting a bank, and the output enable signals OE1 to OE8 of the registers R1 to R8.

【0020】このことをより詳しくするために図4を参
照する。上位3ビットA8 〜A10が「000」のとき、
デコーダ113 のデータ線D0からのみ信号(アクティブ
「L」)が出力され、残りのデータ線D1〜D7からは
出力されない。このデータ線D0からの出力信号は、バ
ッファメモリ2のバンクB1に相当するメモリチップM
1を選択するとともに、レジスタR1のアウトプットイ
ネーブル信号OE1としてゲート回路114 に出力され
る。
To make this more detailed, refer to FIG. When the upper 3 bits A 8 to A 10 are “000”,
The signal (active "L") is output only from the data line D0 of the decoder 113, and is not output from the remaining data lines D1 to D7. The output signal from the data line D0 is applied to the memory chip M corresponding to the bank B1 of the buffer memory 2.
1 is selected and output to the gate circuit 114 as the output enable signal OE1 of the register R1.

【0021】以下、同様で、上位3ビットA8 〜A10
「001」のときはデータ線D1からのみ信号が出力さ
れて、バッファメモリ2のバンクB2に相当するメモリ
チップM1が選択されるとともに、レジスタR2のアウ
トプットイネーブル信号OE2がゲート回路114 に出力
される。上位3ビットA8 〜A10が「111」のときは
データ線D7からのみ信号が出力されて、バッファメモ
リ2のバンクB8に相当するメモリチップM8が選択さ
れるとともに、レジスタR8のアウトプットイネーブル
信号OE8がゲート回路114 に出力される。
Similarly, when the upper 3 bits A 8 to A 10 are "001", a signal is output only from the data line D1 and the memory chip M1 corresponding to the bank B2 of the buffer memory 2 is selected. At the same time, the output enable signal OE2 of the register R2 is output to the gate circuit 114. When the upper 3 bits A 8 to A 10 is "111" is output signal only from the data line D7, together with the memory chip M8, which corresponds to the bank B8 of the buffer memory 2 is selected, output enable registers R8 The signal OE8 is output to the gate circuit 114.

【0022】一致回路112 は下位8ビットA0 〜A7
データと、レジスタPにセットされているデータとの比
較を行い、これらの内容が一致すれば、ゲート回路114
をオープンにする。レジスタPには1つのバンクの最終
アドレス値が予め格納されている。この例では、下位8
ビットA0 〜A7 で1つのバンク内のアドレスを指定す
るから、その最終値として256=「11111111」がセッ
トされている。なお、以下では、都合により、下位8ビ
ットA0 〜A7 をアドレスA0 〜A7 と記載する。
The coincidence circuit 112 compares the lower 8 bits A 0 to A 7 with the data set in the register P. If the contents match, the gate circuit 114
To open. The register P stores the final address value of one bank in advance. In this example, the lower 8
Since bits A 0 to A 7 specify addresses in one bank, 256 = “11111111” is set as the final value. In the following, for convenience, it describes the lower 8 bits A 0 to A 7 and the address A 0 to A 7.

【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 に
ロードされる。
In summary of the above, addresses are generated by the ring buffer device of this embodiment as follows. When the write counter 111 pointer "0000-0" write start of the bank B1 is loaded, the decoder 113 decodes the upper three bits A 8 to A 10 that,
The bank select signal C S designating the bank B1 of the buffer memory 2 is output, and the output enable signal OE1 of the register R1 is output to the gate circuit 114. The write counter 111 sequentially writes the input data from the input device 13 of FIG. 1 into the addresses A 0 to A 7 of the bank B 1 which are counted up one by one, and when the addresses A 0 to A 7 reach the final value, the gate is gated. Circuit 114 opens.
Then, the output enable signal OE1 is output to the register R1 and the pointer "0010 to 0" of the bank B2 set in the register R1 is loaded into the write counter 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 にロードされる。
The same applies to the decoder 113 in the bank B2.
The upper 3 bits A 8 to A 10 of the pointer “0010 to 0” of No. 2 are decoded to output the bank select signal C S designating the bank B2 of the buffer memory 2 and to gate the output enable signal OE2 of the register R2. circuit
Output to 114. Addresses A 0 to A of the bank B2 that are incremented by 1 by the basic clock signal CL
When 7 becomes the final value of bank B2 (= 512), the gate circuit
114 is opened, the output enable signal OE2 is output to the register R2, and the pointer "0100 to 0" of the bank B3 set in the register R2 indicates the write counter 11
Loaded to 1.

【0025】このように、アドレスA0 〜A7 が各バン
クの最終値になる毎に、レジスタR1〜R8にセットさ
れているバンクのポインタが順に読み出されて、次のバ
ンクの指定がサイクリックに行われる。この動作はリー
ドライトフェーズ信号RWPが書き込み状態になってい
る間、続けられ、バンクB1〜B8に入力機器13からの
データが書き込まれる。
As described above, every time the addresses A 0 to A 7 reach the final value of each bank, the pointers of the banks set in the registers R1 to R8 are sequentially read, and the next bank is designated. Click to be done. This operation is continued while the read / write phase signal RWP is in the write state, and the data from the input device 13 is written in the banks B1 to B8.

【0026】リードライトフェーズ信号RWPが読み込
み状態に変わると、レジスタRBにセットされている読
み出し開始のバンクB1のポインタがリードカウンタ12
1 にロードされ、上記と同じ動作で順にバンクB1〜B
8が選択されて、データが出力機器14に読み出される。
When the read / write phase signal RWP changes to the read state, the pointer of the read start bank B1 set in the register RB is read by the read counter 12.
Banks B1 to B loaded in sequence 1 and in the same operation as above
8 is selected and the data is read to the output device 14.

【0027】以上が、このリングバッファ装置の基本動
作である。バンクB1〜B8をサイクリックに選択する
という点において従来技術と同様の動作であるが、各バ
ンクのポインタをレジスタR1〜R8にセットしてこれ
を読み出すという点で相違がある(従来では単にリング
カウンタ等を用いてバンクB1〜B8を順に選択してい
る)。したがって、レジスタR1〜R8の読み出しを適
宜に選択することで特定のバンクが選択できる。すなわ
ち、メモリ機能が正常なバンクのポインタのみをレジス
タR1〜R8にセットし、それらを順に読み出すこと
で、異常なバンクが存在していてもリングバッファ動作
を継続できる。この処理について以下に説明する。
The above is the basic operation of the ring buffer device. The operation is similar to that of the conventional technique in that the banks B1 to B8 are cyclically selected, but there is a difference in that the pointers of the banks are set in the registers R1 to R8 and are read out (only in the conventional ring. Banks B1 to B8 are sequentially selected using a counter or the like). Therefore, a specific bank can be selected by appropriately selecting the reading of the registers R1 to R8. That is, by setting only the pointers of the banks having the normal memory function in the registers R1 to R8 and reading them sequentially, the ring buffer operation can be continued even if the abnormal banks exist. This processing will be described below.

【0028】まず、この装置の電源を投入した時点で、
図1に示したROM3内のプログラムが立ち上がり、こ
れに従ってCPU1がメモリチェックを行う。なお、こ
のときに、レジスタRA,レジスタR1〜R8,レジス
タRBに対して上記で説明したような各バンクのポイン
タがセットされ、リングバッファ動作の準備が行われ
る。また、RAM4内にはメモリチェック用のデータと
して、1つのバンクの記憶容量と同一量のデータが予め
格納されているとする。このデータの内容は任意であ
る。
First, when the power of this device is turned on,
The program in the ROM 3 shown in FIG. 1 starts up, and the CPU 1 carries out a memory check accordingly. At this time, the pointers of the banks as described above are set in the register RA, the registers R1 to R8, and the register RB, and the ring buffer operation is prepared. Further, it is assumed that the same amount of data as the storage capacity of one bank is stored in advance in the RAM 4 as memory check data. The content of this data is arbitrary.

【0029】CPU1はRAM4内のデータを入力デー
タ保持部5にセットし、クロック発生回路10に対してリ
ードライトフェーズ信号RWPのサイクル(書き込み状
態と読み出し状態との繰り返し周期)を設定する。例え
ば、図5に示すように、バンクセレクト信号CS が 256
×8回出力される毎に、書き込み状態と読み出し状態と
が繰り返されるように設定される。
The CPU 1 sets the data in the RAM 4 in the input data holding unit 5 and sets the cycle of the read / write phase signal RWP (repetition cycle between the write state and the read state) to the clock generation circuit 10. For example, as shown in FIG. 5, the bank select signal C S is 256
It is set so that the write state and the read state are repeated each time × 8 times of output.

【0030】次に、入力データ保持部5にアウトプット
イネーブル信号を与えて、その内容を入力バッファ7に
転送し、クロック発生回路10から基本クロック信号CL
とリードライトフェーズ信号RWPとを出力させる。そ
して、図3のレジスタRAにセットされている書き込み
開始のバンクB1のポインタをライトカウンタ111 にロ
ードする。これにより、前述のリングバッファ動作が行
われ、バンクB1〜B8が順に指定されてメモリチェッ
ク用のデータが書き込まれる。なお、この例のメモリチ
ェックではバンクB1〜B8に同じデータが順に書き込
まれることになる。
Next, an output enable signal is given to the input data holding section 5, the content is transferred to the input buffer 7, and the basic clock signal CL is supplied from the clock generation circuit 10.
And a read / write phase signal RWP. Then, the pointer of the bank B1 of the write start set in the register RA of FIG. 3 is loaded into the write counter 111. As a result, the above-mentioned ring buffer operation is performed, the banks B1 to B8 are sequentially designated, and the memory check data is written. In the memory check of this example, the same data will be sequentially written in the banks B1 to B8.

【0031】バンクB8へのデータの書き込みが終わる
と(バンクセレクト信号CS が 256×8回出力される
と)、リードライトフェーズ信号RWPが読み出し状態
に変わる。CPU1はこのタイミングで図3のレジスタ
RBにセットされている読み出し開始のバンクB1のポ
インタをリードカウンタ121 にロードする。これによ
り、リングバッファ動作が行われ、バンクB1〜B8が
順に指定されてメモリチェック用のデータが読み出され
る。
When the writing of data to the bank B8 is completed (when the bank select signal C S is output 256 × 8 times), the read / write phase signal RWP changes to the read state. At this timing, the CPU 1 loads the read counter 121 of the read start bank B1 set in the register RB of FIG. As a result, the ring buffer operation is performed, the banks B1 to B8 are sequentially designated, and the memory check data is read.

【0032】最初に読み出されたバンクB1のデータは
出力データ保持部6に一旦保持され、CPU1によって
取り込まれ、RAM4内のデータと比較される。この間
に、次に読み出されたバンクB2のデータが出力データ
保持部6に一旦保持される。このようにして、CPU1
はRAM4内のデータと、バンクB1〜B8のデータと
を順に比較し、両データが一致していればそのバンクの
メモリ機能は正常であると判断し、また、一致していな
ければそのバンクのメモリ機能は異常であると判断す
る。
The first read data of the bank B1 is temporarily held in the output data holding unit 6, fetched by the CPU 1 and compared with the data in the RAM 4. During this time, the next read data of the bank B2 is temporarily held in the output data holding unit 6. In this way, the CPU1
Compares the data in the RAM 4 with the data in the banks B1 to B8 in order, judges that the memory function of the bank is normal if both data match, and if they do not match, the memory of the bank It is determined that the memory function is abnormal.

【0033】ここで、バンクB2およびバンクB5のメ
モリ機能が異常であると判断されたとする。CPU1
は、バンクB2のポインタがセットされているレジスタ
R1の内容およびバンクB5のポインタがセットされて
いるレジスタR4の内容を変更する。すなわち、レジス
タR1にはバンクB2の次に選択されるバンクB3のポ
インタをセットし、レジスタR4にはバンクB5の次に
選択されるバンクB6のポインタをセットする。
Here, it is assumed that it is determined that the memory functions of the banks B2 and B5 are abnormal. CPU1
Changes the contents of register R1 in which the pointer of bank B2 is set and the contents of register R4 in which the pointer of bank B5 is set. That is, the pointer of the bank B3 selected next to the bank B2 is set in the register R1, and the pointer of the bank B6 selected next to the bank B5 is set in the register R4.

【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」
Here again, each register R1 to R8
The pointers of the banks that are set are listed below. * Register R1 ... Pointer of bank B3 “0100
~ 0 "register R2 ... Pointer" 0100 "of bank B3
~ 0 "Register R3 ... Pointer" 0110 "of bank B4
~ 0 "* Register R4 ... Bank B6 pointer" 1010 "
~ 0 "Register R5 ... Pointer" 1010 "of bank B6
~ 0 "Register R6 ... Pointer" 1100 "of bank B7
~ 0 "Register R7 ...- Pointer" 1110 "of bank B8
~ 0 "Register R8 ... Pointer" 0000 "of bank B1
~ 0 "

【0035】「*」印を付しているのが、今回のメモリ
チェックで内容が変更されたレジスタである。このよう
に、メモリ機能が正常であると判断されたバンクのみ、
レジスタR1〜R8にセットされる。
The mark "*" is attached to the register whose contents have been changed in this memory check. In this way, only the bank that is judged to have normal memory function,
It is set in registers R1 to R8.

【0036】以上がメモリチェック処理である。この処
理でセットされたレジスタの内容を用いて前述したリン
グバッファ動作を行うと以下のようになる(図3および
図4参照)。
The above is the memory check process. When the ring buffer operation described above is performed using the contents of the register set in this processing, the result is as follows (see FIGS. 3 and 4).

【0037】書き込み時において、レジスタRAからラ
イトカウンタ111 に書き込みを開始するバンクB1のポ
インタ「0000〜0 」がロードされると、デコーダ113 が
その上位3ビットA8 〜A10「000」を10進数にデコ
ードして、「0」に対応しているデータ線D0から信号
を出力する。
[0037] In a write operation, the pointer "0000-0" banks B1 to start writing from the register RA to the write counter 111 is loaded, the decoder 113 is a "000" the three most significant bits A 8 to A 10 10 It is decoded into a base number and a signal is output from the data line D0 corresponding to "0".

【0038】この出力信号がバンクB1に相当するメモ
リチップM1を選択するとともに、レジスタR1のアウ
トプットイネーブル信号OE1としてゲート回路114 に
出力される。ライトカウンタ111 は基本クロック信号C
Lの発生に伴って、アドレスA0 〜A7 を1つずつカウ
ントアップする。このアドレスA0 〜A7 に入力機器13
からの入力データが書き込まれていく。
This output signal selects the memory chip M1 corresponding to the bank B1 and is output to the gate circuit 114 as the output enable signal OE1 of the register R1. The write counter 111 is the basic clock signal C
With the generation of L, the addresses A 0 to A 7 are incremented by one. Input device 13 is assigned to this address A 0 to A 7.
Input data from is written.

【0039】アドレスA0 〜A7 が最終値になると、ゲ
ート回路114 が開いてアウトプットイネーブル信号OE
1がレジスタR1に出力され、異常バンクB2でなく、
レジスタR1にセットされている正常バンクB3のポイ
ンタがライトカウンタ111 にロードされる。
When the addresses A 0 to A 7 reach the final value, the gate circuit 114 is opened to output the output enable signal OE.
1 is output to the register R1 and not the abnormal bank B2,
The pointer of the normal bank B3 set in the register R1 is loaded into the write counter 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 にロ
ードされる。
The same applies to the decoder 113 in the bank B3.
Upper 3 bits of the pointer “0100 to 0” of A 8 to A 10 “0
10 "is decoded and the bank B3 of the buffer memory 2 is decoded.
And output the output enable signal OE3 of the register R3 to the gate circuit 114. When the addresses A 0 to A 7 which are counted up one by one by the write counter 111 reach the final value, the gate circuit 114 is opened and the output enable signal OE3 is transferred to the register R.
The pointer "0110-0" of the bank B4 which is output to the register 3 and is set in the register R3 is loaded into the write counter 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,・・・・,
が順に選択される。なお、データの読み出し時も同様に
してバンクの選択が行われる。よって、メモリ機能が異
常なバンクが存在していてもリングバッファ動作は支障
なく行われる。
The decoder 113 decodes the upper 3 bits A 8 to A 10 "011" of the pointer of the bank B4 to specify the bank B4 and outputs the output enable signal OE4 of the register R4. As a result, next, the bank B6 set in the register R4 is loaded into the write counter 111. In this way, register R
Output enable signals OE1, OE3, OE4, ... Of 1, R3, R4, R6, R7, R8 are sequentially output, and normal banks B1, B3, B4 ,.
Are selected in order. Note that bank selection is similarly performed when reading data. Therefore, even if there is a bank with an abnormal memory function, the ring buffer operation can be performed without any trouble.

【0042】以上の実施例では、メモリ機能が正常なバ
ンクの選択をハードウエアを用いて実施したが、これを
ソフトウエアに代えて実施することもできる。例えば、
メモリチェックの結果、メモリ機能が正常であると判断
したバンクのポインタをRAM4に記憶しておき、図3
の一致回路112,122 からの信号に応じて、RAM4に記
憶しているポインタを順にライトカウンタ111 あるいは
リードカウンタ121 にロードする。ただし、RAM4へ
のアクセスタイムにより、実施例に比べると、若干処理
速度が低下する。また、信頼性の観点からもリングバッ
ファ動作をハードウエアで実施するのが好ましい。ハー
ドウエアで実施するためのその他の例を変形例として以
下に示す。
In the above-described embodiments, the bank having the normal memory function is selected by using hardware, but this may be replaced by software. For example,
As a result of the memory check, the pointer of the bank determined to have the normal memory function is stored in the RAM 4,
The pointers stored in the RAM 4 are sequentially loaded into the write counter 111 or the read counter 121 according to the signals from the coincidence circuits 112 and 122. However, due to the access time to the RAM 4, the processing speed is slightly reduced as compared with the embodiment. Also, from the viewpoint of reliability, it is preferable to implement the ring buffer operation by hardware. Other examples for implementation in hardware are shown below as modified examples.

【0043】<変形例>上述の実施例では、CPU1に
よるメモリチェックを行う際にも、ライトアドレス発生
部11とリードアドレス発生部12とを用いてリングバッフ
ァ動作を実行していた。このため、レジスタR1〜R8
の内容をメモリチェックの結果により更新するという処
理を行っていた。この変形例はレジスタR1〜R8の内
容の変更を省くものである。したがって、メモリチェッ
クの際の書き込みアドレスの発生、および読み出しアド
レスの発生をCPU1によるソウトウエアの処理によっ
て行う。メモリチェックの際には、特に、前述のような
リングバッファ動作を行う必要はないからである。
<Modification> In the above-described embodiment, the ring buffer operation is executed by using the write address generation unit 11 and the read address generation unit 12 even when the memory check is performed by the CPU 1. Therefore, the registers R1 to R8
The contents of is updated according to the result of the memory check. This modification omits the change of the contents of the registers R1 to R8. Therefore, the generation of the write address and the generation of the read address in the memory check are performed by the software processing by the CPU 1. This is because it is not necessary to perform the ring buffer operation as described above when the memory is checked.

【0044】まず、CPU1によりバンクB1のアドレ
スを順に発生させる。すなわち、図2に示すように、バ
ンクB1のアドレス「0000〜0」から「0001〜
1」を発生させ、このアドレスにRAM4内に格納され
ているデータを書き込む。書き込み終了後、バンクB1
のデータを読み出してRAM4の内容と比較し、メモリ
チェックを行う。残りのバンクB2〜B8に対しても同
様にメモリチェックを行う。
First, the CPU 1 sequentially generates the addresses of the bank B1. That is, as shown in FIG. 2, addresses "0000-0" to "0001-
1 ”is generated, and the data stored in the RAM 4 is written at this address. After writing, bank B1
Data is read out and compared with the contents of the RAM 4 to perform a memory check. A memory check is similarly performed on the remaining banks B2 to 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・・・使用せず
As in the embodiment, as a result of the memory check,
It is assumed that it is determined that the memory functions of bank B2 and bank B5 are abnormal. The CPU 1 sets only the pointers of the banks having normal memory functions in the registers R1 to R8. That is, the contents of the registers R1 to R8 are as follows. Register R1 ... Pointer “0000 to Bank B1
0 ”register R2 ... pointer of bank B3“ 0100-
0 "register R3 ... pointer of bank B4" 0110-
0 "register R4 ... pointer of bank B6" 1010
0 "register R5 ... pointer of bank B7" 1100-
0 "Register R6 ... Bank B8 pointer" 1110 "
0 ”Register R7 ... Not used Register R8 ... Not used

【0046】このレジスタR1〜R6のみを用いて、正
常なバンクのみをサイクリックに選択してリングバッフ
ァ動作を実行する。そのためのハードウエアの構成を図
6に示す。なお、この図には書き込みアドレスを発生す
る構成のみを記載し、読み出しアドレスを発生する構成
およびこれらを切り換えるマルチプレクサmux1〜mux8,
マルチプレクサMUX1,MUX2 の図示を省略している。
Only the normal banks are cyclically selected using only the registers R1 to R6 to execute the ring buffer operation. The hardware configuration for that purpose is shown in FIG. It should be noted that only the configuration for generating the write address is shown in this figure, the configuration for generating the read address and the multiplexers mux1 to mux8, which switch between these configurations,
Illustration of the multiplexers MUX1 and MUX2 is omitted.

【0047】図6において、レジスタR1〜R8,ライ
トカウンタ111,一致回路112,レジスタP,デコーダ113
は図4に記載したものと同様の構成回路である。ただ
し、デコーダ113 はバンクのポインタの上位3ビットA
8 〜A10をデコードして、バンクセレクト信号CS のみ
を出力するようになっている。
In FIG. 6, registers R1 to R8, a write counter 111, a coincidence circuit 112, a register P and a decoder 113.
Is a configuration circuit similar to that shown in FIG. However, the decoder 113 uses the upper 3 bits A of the bank pointer.
It decodes 8 to A 10 and outputs only the bank select signal C S.

【0048】まず、図示を省略しているレジスタRAか
ら、書き込み開始のバンクB1のポインタがライトカウ
ンタ111 にロードされると、デコーダ113 がその上位3
ビットA8 〜A10「000」をデコードして、バンクB
1を指定するバンクセレクト信号CS をバッファメモリ
2に出力する。
First, when the pointer of the bank B1 at the start of writing is loaded into the write counter 111 from the register RA (not shown), the decoder 113 is placed in the upper three positions.
By decoding the "000" bit A 8 ~A 10, bank B
The bank select signal C S designating 1 is output to the buffer memory 2.

【0049】ライトカウンタ111 で1つずつカウントア
ップされたアドレスA0 〜A7 はバッファメモリ2に与
えられるとともに、一致回路112 に出力される。レジス
タPにはアドレスA0 〜A7 の最終値が予めセットされ
ており、一致回路112 はライトカウンタ111 の出力値が
最終アドレス値になると信号を出力する。ここまでの動
作は、実施例の装置と同じである。
The addresses A 0 to A 7 counted up one by one by the write counter 111 are supplied to the buffer memory 2 and are also output to the coincidence circuit 112. The final values of the addresses A 0 to A 7 are preset in the register P, and the coincidence circuit 112 outputs a signal when the output value of the write counter 111 reaches the final address value. The operation up to this point is the same as that of the apparatus of the embodiment.

【0050】一致回路112 の出力信号は、シフトレジス
タ60とカウンタ61とに与えられる。シフトレジスタ60の
出力はレジスタR1〜R8のアウトプットイネーブル端
子に接続されており、一致回路112 から信号が与えられ
るたびに、出力をシフトしていく。
The output signal of the coincidence circuit 112 is given to the shift register 60 and the counter 61. The output of the shift register 60 is connected to the output enable terminals of the registers R1 to R8, and the output is shifted every time a signal is given from the matching circuit 112.

【0051】一方、カウンタ61は一致回路112 からの出
力信号をカウントし、カウント値を別の一致回路62に出
力する(以下、区別のためこの一致回路62を第2の一致
回路62とする) 。第2の一致回路62は、そのカウント値
とレジスタQの内容とを比較し、一致した時点で、シフ
トレジスタ60をクリアする。レジスタQには、CPU1
によって正常なバンクの数が予めセットされる。この例
では正常なバンクの数として「6」がセットされる。
On the other hand, the counter 61 counts the output signal from the matching circuit 112 and outputs the count value to another matching circuit 62 (hereinafter, this matching circuit 62 is referred to as a second matching circuit 62 for distinction). .. The second matching circuit 62 compares the count value with the contents of the register Q and, when they match, clears the shift register 60. Register Q contains CPU1
The number of normal banks is preset by. In this example, "6" is set as the number of normal banks.

【0052】したがって、1つのバンクのアドレスA0
〜A7 が最終値になると、アウトプットイネーブル信号
OE1〜OE8がシフトレジスタ60から順に出力され、
レジスタR1〜R8にセットされているバンクのポイン
タが順にライトカウンタ111にロードされる。そして、
一致回路112 の出力信号の数が「6」になると、すなわ
ち、アウトプットイネーブル信号OE1〜OE6が出力
されると、第2の一致回路62がシフトレジスタ60をクリ
アする。引き続き、一致回路112 から信号が出力される
と、シフトレジスタ60は再びアウトプットイネーブル信
号OE1〜OE6を出力する。
Therefore, the address A 0 of one bank
When ~ A 7 reaches the final value, output enable signals OE1 to OE8 are sequentially output from the shift register 60,
The pointers of the banks set in the registers R1 to R8 are sequentially loaded into the write counter 111. And
When the number of output signals of the coincidence circuit 112 becomes “6”, that is, when the output enable signals OE1 to OE6 are output, the second coincidence circuit 62 clears the shift register 60. Subsequently, when a signal is output from the coincidence circuit 112, the shift register 60 outputs the output enable signals OE1 to OE6 again.

【0053】このように、正常なバンクのポインタをセ
ットしているレジスタR1〜R6のアウトプットイネー
ブル信号OE1〜OE6のみが順に出力され、未使用の
レジスタR7,R8に対するアウトプットイネーブル信
号OE7,8は出力されず、正常なバンクのみがサイク
リックに選択される。
In this way, only the output enable signals OE1 to OE6 of the registers R1 to R6 in which the pointers of the normal banks are set are sequentially output, and the output enable signals OE7 and 8 to the unused registers R7 and R8 are output. Is not output and only normal banks are cyclically selected.

【0054】[0054]

【発明の効果】以上の説明から明らかなように、本発明
のリングバッファ装置によれば、メモリ機能が正常であ
るバンクのアドレスを保持し、そのバンクのアドレスを
サイクリックに読み出して、バッファメモリへのデータ
の読み書きを行うので、バッファメモリにメモリ機能が
異常なバンクが存在していても、そのバンクを選択する
ことがなくリングバッファ動作を継続することができ
る。したがって、メモリ機能の復旧作業に取りかかるま
での応急処置的な対応が可能となり、リングバッファ装
置の停止、ひいてはこのリングバッファ装置を用いてデ
ータを入出力する装置の停止を避けることができ、実用
上有効である。
As is apparent from the above description, according to the ring buffer device of the present invention, the address of a bank having a normal memory function is retained, the address of the bank is cyclically read, and the buffer memory is Since data is read from and written to the ring memory, even if there is a bank having an abnormal memory function in the buffer memory, the ring buffer operation can be continued without selecting that bank. Therefore, it is possible to take a temporary action until the work of restoring the memory function is started, and it is possible to avoid the stop of the ring buffer device and the stop of the device for inputting / outputting data by using this ring buffer device. It is valid.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の一実施例に係るリングバッファ装置の
概略構成を示したブロック図である。
FIG. 1 is a block diagram showing a schematic configuration of a ring buffer device according to an embodiment of the present invention.

【図2】バッファメモリのバンクを模式的に示した図で
ある。
FIG. 2 is a diagram schematically showing a bank of a buffer memory.

【図3】リングバッファ装置の要部を示したブロック図
である。
FIG. 3 is a block diagram showing a main part of a ring buffer device.

【図4】さらにその一部を詳細に示したブロック図であ
る。
FIG. 4 is a block diagram showing in detail a part thereof.

【図5】リードライトフェーズ信号RWPの一設定例を
示した図である。
FIG. 5 is a diagram showing a setting example of a read / write phase signal RWP.

【図6】変形例としてのリングバッファ装置の要部を示
した図である。
FIG. 6 is a diagram showing a main part of a ring buffer device as a modified example.

【符号の説明】[Explanation of symbols]

1・・・CPU 2・・・バッファメモリ 3・・・ROM 4・・・RAM 9・・・アドレス保持部 11・・・ライトアドレス発生部 12・・・リードアドレス発生部 1 ... CPU 2 ... Buffer memory 3 ... ROM 4 ... RAM 9 ... Address storage unit 11 ... Write address generation unit 12 ... Read address generation unit

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 バッファメモリの記憶領域を複数の単位
領域(バンク)に分割し、各バンクへのデータの読み書
きをサイクリックに行うリングバッファ装置において、 前記各バンクのメモリ機能が正常であるか異常であるか
を検出する手段と、 メモリ機能が正常であるバンクのアドレスを保持する手
段と、 保持されているバンクのアドレスをサイクリックに読み
出す手段と、 読み出したアドレスに対してデータの読み書きを行う手
段と、 を備えたことを特徴とするリングバッファ装置。
1. In a ring buffer device in which a storage area of a buffer memory is divided into a plurality of unit areas (banks) and data is read from and written to each bank cyclically, is the memory function of each bank normal? A means to detect whether it is abnormal, a means to hold the address of a bank with a normal memory function, a means to cyclically read the address of the held bank, and a data read / write operation to the read address. A ring buffer device comprising: a means for performing.
JP3425292A 1992-01-24 1992-01-24 Ring buffer device Pending JPH05204596A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3425292A JPH05204596A (en) 1992-01-24 1992-01-24 Ring buffer device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3425292A JPH05204596A (en) 1992-01-24 1992-01-24 Ring buffer device

Publications (1)

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

Family

ID=12408982

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3425292A Pending JPH05204596A (en) 1992-01-24 1992-01-24 Ring buffer device

Country Status (1)

Country Link
JP (1) JPH05204596A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100454144B1 (en) * 2001-11-23 2004-10-26 주식회사 하이닉스반도체 Flash memory device having a multi bank structure

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100454144B1 (en) * 2001-11-23 2004-10-26 주식회사 하이닉스반도체 Flash memory device having a multi bank structure

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
JPH01184700A (en) Memory test equipment
US4759021A (en) Test pattern generator
JPH0743429A (en) Physical address conversion circuit
JPH0652070A (en) Device and method for data protection in integrated circuit
JP2002312252A (en) Memory diagnostic device and diagnostic method
JPH05204596A (en) Ring buffer device
JP2001155496A (en) Pattern generating method, pattern generator, and memory test device
US6175518B1 (en) Remote register hierarchy accessible using a serial data line
JP2824853B2 (en) Pattern data writing method
JPH06324906A (en) Single chip microcomputer
JPS63108747A (en) Gate array integrated circuit
JPH09146662A (en) Suspend/resume method and computer system
JP3177975B2 (en) One-chip microcomputer
JPS6153579A (en) Tester for function of logical circuit
JPH01239485A (en) Large-scale integrated circuit
JP3281898B2 (en) Memory mounted semiconductor device and memory test method
JPH01112449A (en) Speed converting memory device
JPS62259145A (en) Generating device for algorithmic pattern
JPS63231676A (en) Vector register control system
JPH02302855A (en) Memory control system
JPS62276636A (en) Memory control circuit
JPS6210389B2 (en)
JPS6143346A (en) Data flow processor