JPS59149545A - Data error correcting system - Google Patents
Data error correcting systemInfo
- Publication number
- JPS59149545A JPS59149545A JP58024278A JP2427883A JPS59149545A JP S59149545 A JPS59149545 A JP S59149545A JP 58024278 A JP58024278 A JP 58024278A JP 2427883 A JP2427883 A JP 2427883A JP S59149545 A JPS59149545 A JP S59149545A
- Authority
- JP
- Japan
- Prior art keywords
- data
- data block
- information
- ram
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
Description
【発明の詳細な説明】 本発明はデータ誤り訂正方式に関する。[Detailed description of the invention] The present invention relates to a data error correction method.
従来送られて来たデータに誤りがあるか否か、あるいは
誤りがあった場合、データのどこに誤りがあるか否かを
チェックする為、上述のデータを送信する側で特定の符
号を付加して送信し、かかる符号列きのデータを受信側
で処理し誤りを訂正する考えがあった。 例えば、コン
ピュタ基礎講座181′昭晃堂出版」に示されるように
、送られるデータを処理し、短縮化巡回符号を作り、上
述のデータと共に短縮化巡回符号を送信し、受信側でそ
れらを処理しデータ中に誤りがあるか否か及びどこに誤
りがあるか否かをチェフクしデータを訂正する方法であ
る。しかしながら従来の上述の訂正方式は符号夕1の受
信、検査、訂正の3つのステンプを経た後、次の符号列
の上述の処理を行なうものであった。 従って極めて大
量のデータを連続的に高速に取り扱うには適していなか
った。Conventionally, in order to check whether there is an error in the data being sent, or if there is an error, where in the data the error is, a specific code is added on the side sending the data. There was an idea of transmitting the code string and processing the data with such a code string on the receiving side to correct errors. For example, as shown in Computer Fundamentals Course 181' Shokodo Publishing, the data to be sent is processed, a shortened cyclic code is created, the shortened cyclic code is transmitted along with the above data, and the receiving side processes them. This is a method of correcting the data by checking whether there are errors in the data and where the errors are. However, the conventional correction method described above performs the above-mentioned processing on the next code string after passing through the three steps of reception, inspection, and correction of code number 1. Therefore, it was not suitable for handling extremely large amounts of data continuously and at high speed.
本発明は」二連の点に鑑み、速やかに符号列のデータ誤
りを訂正しうるデータ誤り訂正方式を提供するものであ
る。In view of the two points, the present invention provides a data error correction method that can quickly correct data errors in a code string.
本発明は」二連の点に鑑み、速やかに送られてきた符号
列の中のパースト誤りを訂正しうるバースト誤り訂正方
式を提供するものである。In view of the two points, the present invention provides a burst error correction method that can quickly correct burst errors in a transmitted code string.
本発明の他の目的は以下図面を参照して行なわれる実施
例の説明より明らかとなるであろう。Other objects of the present invention will become clear from the following description of embodiments with reference to the drawings.
本発明の内容を理解してもらう為に送られて来る1つの
データは96ビツトで、その内訳は情報点数に一79ビ
ット、訂正符号17ビツトである。One piece of data sent to help understand the content of the present invention is 96 bits, which includes 179 bits for information points and 17 bits for correction code.
以下本発明によるl実施例を説明する。An embodiment according to the present invention will be described below.
第1図は本発明による一実施例を説明するブロック図で
ある。FIG. 1 is a block diagram illustrating one embodiment of the present invention.
同図に於てIDLは入力データが送られてくる信号線で
ある。 ここでは1つのデータの長さを96ビツトの長
さとし、複数のデータが連続的に送られてくる。MPX
はマルチプレクサ−で、3つの入力部を有し、それらを
多重化して出力する。RAMはメモリで、信号線IDL
を介して送られてくるデータ、後述する回路で検査され
た入力データ及び訂正された入力データを一時適に記憶
するものである。ここではそのメモリ容量は例えば51
2ヒツトである。またDiはメモリの入力部で、Doは
メモリRAMの出力部、R/Wはメモリに対する読み出
しと書き込みの信号印加端子である。ADはメモリRA
Mをアクセスする為のアドレス印加部である。ADDS
はアドレスシフタで、後述する3つのカウンタに基づい
てメモリRAMをアクセスする為のアドレスを発生yせ
る。4CNTは4進のカウンタで、かかるカウンタのカ
ウント値は第6図に示す如く入力データの記憶、検査回
路への出力、検査回路からの入力、データの出力を切り
換える為に備えられ、かかるカウンタ4CNTのキャリ
はカウンタ192CNTの入力クロックとなっている。In the figure, IDL is a signal line to which input data is sent. Here, the length of one piece of data is 96 bits, and multiple pieces of data are sent successively. MPX
is a multiplexer, which has three input sections, multiplexes them, and outputs them. RAM is memory, signal line IDL
It temporarily stores data sent through the circuit, input data inspected by a circuit described later, and input data corrected. Here, the memory capacity is, for example, 51
There are 2 hits. Further, Di is an input section of the memory, Do is an output section of the memory RAM, and R/W is a terminal for applying signals for reading and writing to the memory. AD is memory RA
This is an address application unit for accessing M. ADDS
is an address shifter, which generates an address for accessing the memory RAM based on three counters to be described later. 4CNT is a quaternary counter, and the count value of this counter is provided to switch between storing input data, outputting to the testing circuit, inputting from the testing circuit, and outputting data, as shown in FIG. The carry is the input clock of the counter 192CNT.
またカラ・ンタ4CNTは6.144MHzのクロック
で作動し、それはアドレスシフタADDSにも印加され
ている。192cNTは192進のカウンタで、カウン
タ4CNTのキャリーで歩進する。その内容をAddr
で表わす。3CNTはカウンタで、カウンタ192CN
Tのキャリをクロツクとして受は入れる。かかるカウン
タはメモリRAMのエリアを3つに区分けしその都度そ
の内容は変る6ENCはエンコーダで、カウンタ3CN
Tの価によってその3つのエリアI、m、nは第6図に
示す如き価を“とり、それを繰り返し発生する。SRは
シフトレジスタで、可逆シフト可能で、その容量は8ピ
ントである。mod2は加算器で、キャリーのない加算
結果を出力する。SSRはシンドロームレジスタで、可
逆シフト可能で、その容量は17ビツトである。第2図
にシンドロームレジスタSSRのさらに詳細なブロック
1Δを示す。同図に於てEOI−EO5は排他論理和ゲ
ートで、SRI、SR2、SR3は双方向シフトレジス
タである。排他論理和ゲー)EOI〜EO3は送られて
来たデータ中に誤りがあるが否かを検査する為に使用さ
れ、排他論理和ゲートEO4〜EO5は訂正する為に用
いられる。シフトレジスタ5R1−SR3及び排他論理
和ゲートEOI−EO5はモードによって切り換えられ
作動する。ZDは0 検出器で、シンドロームシフトレ
ジスタSSRの9ピントの内容をつまりF8〜F16を
チェンクする。DMPXはデマルチプレクサで、多重化
された3つのデータを復元する。Furthermore, the color converter 4CNT operates with a 6.144 MHz clock, which is also applied to the address shifter ADDS. 192cNT is a 192-decimal counter that increments with the carry of counter 4CNT. Addr the contents
It is expressed as 3CNT is a counter, counter 192CN
The T carry is used as a clock to receive the ball. This counter divides the memory RAM area into three areas, and the contents change each time. 6ENC is an encoder, and counter 3CN is an encoder.
Depending on the value of T, the three areas I, m, and n take values as shown in FIG. 6, which are repeatedly generated. SR is a shift register that can be reversibly shifted and has a capacity of 8 pins. mod2 is an adder that outputs an addition result without a carry.SSR is a syndrome register that can be reversibly shifted and has a capacity of 17 bits.FIG. 2 shows a more detailed block 1Δ of the syndrome register SSR. In the figure, EOI-EO5 are exclusive OR gates, and SRI, SR2, and SR3 are bidirectional shift registers. Exclusive OR gates EO4-EO5 are used for correction.Shift registers 5R1-SR3 and exclusive OR gates EOI-EO5 are switched and operated depending on the mode.ZD is 0.Detector Then, the contents of 9 pins of the syndrome shift register SSR, that is, F8 to F16 are changed.DMPX is a demultiplexer and restores the three multiplexed data.
上述の構成から成るブロック図を参照してデータ誤り訂
正をタイミングチャートを参照して説明する。Data error correction will be explained with reference to a block diagram of the above-described configuration and a timing chart.
送られてくる情報はここでは符号長n=96、情報点数
に−79、訂正符号長17である。符号長n=96の情
報は第3図に示す如く125マイクロ秒の時間にシリア
ルに送られてくる。まず第1図に示すブロック図中の各
部分は初期状態にあると仮定する。上述の情報は信号線
IDL、マルチプレクサMPXを介してメモリRAMに
格納する。メモリRAM上の格納位置はカウンタ192
CNT、カウンタ4CNT及びカウンタ3cNTの価に
基づいてl 、m、nの価を出力するエンコーダENC
によりアドレスシフl A D D Sが192CNT
/2+lX128の演算を実行して決められ、カウンタ
4CNTの第1の状態(例えばカウント0のとき)に符
号長96の情報の1つがメモリRAMに書き込まれる。The information sent here has a code length n=96, a number of information points of -79, and a correction code length 17. Information with code length n=96 is sent serially every 125 microseconds as shown in FIG. First, it is assumed that each part in the block diagram shown in FIG. 1 is in an initial state. The above information is stored in the memory RAM via the signal line IDL and multiplexer MPX. The storage location on the memory RAM is the counter 192.
An encoder ENC that outputs the values of l, m, and n based on the values of CNT, counter 4CNT, and counter 3cNT.
The address shift l A D D S is 192 CNT.
It is determined by executing the calculation of /2+lX128, and one piece of information having a code length of 96 is written to the memory RAM in the first state of the counter 4CNT (for example, when the count is 0).
上述の如く定られたアドレスに基づいて96個の情報が
メモリRAMに書き込まれると、第3図に示す如くメモ
リRAMに格納された96個のデータの検査が始まる。When the 96 pieces of information are written to the memory RAM based on the addresses determined as described above, the inspection of the 96 pieces of data stored in the memory RAM begins as shown in FIG.
また次の符号長96の情報が前述の如きメモリ7ドレス
の演算によって定められたメモリ位置に格納される。カ
ウンタ3CNTの価が代わりlの価が変化しているので
、最初の情報(データブロックと128ヒツト位置異る
ビ・ント位置に記憶されるのは理解されるであろう。検
査のためにメモリRAMに記憶された最初の符号長96
の情報はアドレスシックADDSで192 CN T
+ m X128の演算のもとに産出され、読み出され
る。Further, information of the next code length 96 is stored in the memory location determined by the calculation of the memory 7 address as described above. It will be appreciated that since the value of the counter 3CNT is changed and the value of 1 is changed, the first information (data block) is stored in a 128 hit position different from the memory block for inspection. Initial code length 96 stored in RAM
The information is 192 CN T in Address Chic ADDS.
It is produced and read out under the operation + m ×128.
mの価は第6図に示す如くOとなっているので最初の符
号長96の情報がメ竿りRAMよりカウンタ4CNTの
第2の状態(例えばカウント1の時)に出力される。メ
モリRAMより出力された情報はデマルチプレクサDM
PXを介してシンドロームレジスタSSR及びシフトレ
ジスタSRを介してマルチプレクサMPXに印加され、
アドレスシフタADDSによって192CNT−8+m
の演算によって得られたメモリアドレスに記憶される。Since the value of m is O as shown in FIG. 6, the information of the first code length 96 is outputted from the mechanized RAM to the second state of the counter 4CNT (for example, when the count is 1). The information output from the memory RAM is sent to the demultiplexer DM.
PX, applied to multiplexer MPX via syndrome register SSR and shift register SR,
192CNT-8+m by address shifter ADDS
is stored at the memory address obtained by the calculation.
最初の符号長966゛情報が記憶されている位置にカウ
ンタ4CNTの第3の状態(例えばカウント2)に於て
再書き込みされる。It is rewritten in the third state (for example, count 2) of the counter 4CNT to the location where the initial code length 966'' information is stored.
1−述の如く再書き込みを行なう一方デマルチプレクサ
DMPXから出力される最初の符号長96ノ情報はシン
ドロームレジスタSSRに入力され、誤りがあるか否か
チェックされる。チェックの処理に於て第2図に示した
排他論理和ゲートE01、FO2、FO3が作動し、シ
フトレジスタSRI〜SR3は右方向に情報をシフトし
ていく。符号長96の情報がシンドロームレジスタSS
Hに入った時点で、シフトレジスタ5RI−SR3のF
8〜F16に1があれば、誤りがあったことを示し、そ
れがなければ誤りがないことをしめす。かかる検査はO
検出器ZDで行なわれる。1-While rewriting is performed as described above, the first code length 96 information output from the demultiplexer DMPX is input to the syndrome register SSR and checked for errors. In the check process, exclusive OR gates E01, FO2, and FO3 shown in FIG. 2 operate, and shift registers SRI to SR3 shift information to the right. Information with code length 96 is stored in syndrome register SS
At the point when it enters H, F of shift register 5RI-SR3
If there is a 1 in 8 to F16, it indicates that there is an error, and if there is no 1, it indicates that there is no error. Such inspection is
This is done on the detector ZD.
」−述の検査工程が終rすると訂正工程に移る。かかる
工程はカウンタ192CNTの内容が95になったこと
を判別して行なう、そして誤りの有無にかかわらず行な
われる。そこで誤りがあった場合の説明を行なう。” - When the above-mentioned inspection process is completed, the process moves to the correction process. This process is performed by determining that the content of the counter 192CNT has reached 95, and is performed regardless of whether there is an error or not. An explanation will be given in case there is an error.
検査工程の終了時にO検出器ZDはF8〜F16に1が
あるか否かをチェックし、チェックの結果1があれば、
胡他論理和ゲートEO4〜E O’5を作動させ、シフ
トレジスタ5RI−3R3を逆方向にシフトyせる。か
かるL程に於てアドレスシフタの19’l −192C
NT−8+mX 128の演算によってシフトレジスタ
SRの内容も逆シフトしメモリRAMに記憶して行くと
共にアドレスレジスタSRにメモリRAMに記憶された
検査済みの情報をアドレスシフタADDSによる191
−192cNT−8+mX128の演算結果により定め
られるアドレスより読み出していく。At the end of the inspection process, the O detector ZD checks whether there is a 1 in F8 to F16, and if the result of the check is 1,
The OR gates EO4 to EO'5 are activated to shift the shift registers 5RI-3R3 in the opposite direction. 19'l -192C of the address shifter at such L
By the operation of NT-8+mX 128, the contents of the shift register SR are also reversely shifted and stored in the memory RAM, and at the same time, the verified information stored in the memory RAM is transferred to the address register SR by the address shifter ADDS.
-192cNT-8+mX128 is read from the address determined by the calculation result.
F8〜F16の中がOになったときFO−R7の中にデ
ータの中の誤りが発生した場所に対応する情報のビット
が1となっており、かかるビットをシフトレジスタSR
の内容と加算器mod2で加算し、シフトレジスタSR
にもどす。かかる処理によって誤りが訂正される。When F8 to F16 becomes O, the bit of information corresponding to the location where the error occurred in the data in FO-R7 becomes 1, and this bit is transferred to shift register SR.
and the contents of adder mod2, and shift register SR
Return to. Such processing corrects errors.
J二連の如く符号長96の情報を逆方向にシフトし、メ
モリRAMにアドレスシックADDSによって191−
192CNT−8+mX128の演算によって処理され
た結果によって定まるメモリアドレスに格納される。Shift information with a code length of 96 in the opposite direction like J double series, and store it in the memory RAM by address chic ADDS to 191-
It is stored at a memory address determined by the result of the operation of 192CNT-8+mX128.
]−述の如くして検査・訂正を受けた情報は、250マ
イクロ秒経過した後、アドレスシックADDSによって
192CNT/2+nX128の演算によって定まるメ
モリアドレスから順次読み出され、デマルチプレクサD
MPXを介して出力される。] - After 250 microseconds have passed, the information that has been inspected and corrected as described above is sequentially read out from the memory address determined by the calculation of 192CNT/2+nX128 by the address chic ADDS, and then sent to the demultiplexer D.
Output via MPX.
ト述の実施例では8ビツトのシフトレジスタとメモリを
使用したが、96ビツトのシフトレジスタを2本設け、
シンドロームレジスタを2本使用し、まず第1の96ビ
ツトのシフトレジスタに情報を入力すると共に第1のシ
ンドロームレジスタに同じ情報を同時に入力し検査を行
ない、次に第2の96ビツトのシフトレジスタに第1の
シフトレジスタの内容を並列に入力し逆方向にシフトさ
せると共に第1のシンドロームレジスタの内容を第2の
シンドロームレジスタに並列に入力し、逆方向にシフト
し、0検出器で第2のシンドロームレジスタの所定の内
容に1があるか否かを調べ、あれば第2のシフトレジス
タの内容に第2のシンドロームレジスタの内容を前述の
次指令の如く加算して情報を訂正する。従って125マ
イクロ秒の遅延で情報の検査−訂正ができる。In the embodiment described above, an 8-bit shift register and memory were used, but two 96-bit shift registers were provided,
Two syndrome registers are used. First, information is input into the first 96-bit shift register, and the same information is input into the first syndrome register at the same time for inspection. Then, information is input into the second 96-bit shift register. The contents of the first syndrome register are input in parallel and shifted in the opposite direction, and the contents of the first syndrome register are input in parallel to the second syndrome register and shifted in the opposite direction. It is checked whether the predetermined contents of the syndrome register are 1, and if so, the contents of the second syndrome register are added to the contents of the second shift register as in the above-mentioned next command to correct the information. Therefore, information can be inspected and corrected with a delay of 125 microseconds.
上述の如く本発明によれば送られてくる情報を連続的に
処理できるので従来よりも高速に処理できる。As described above, according to the present invention, sent information can be processed continuously, so it can be processed faster than in the past.
第1図は本発明による一実施例を示すブロック図、第2
図はシンドロームレジスタを説明する図、第3.4.5
.6図はタイミングを説明する図である。
SRはシフトレジスタ
RAMはメモリ
5DDSはアドレスシフタ
出願人 キャノン株式会社FIG. 1 is a block diagram showing one embodiment of the present invention, and FIG.
The figure is a diagram explaining the syndrome register, Section 3.4.5
.. FIG. 6 is a diagram explaining the timing. SR is shift register RAM is memory 5DDS is address shifter Applicant: Canon Corporation
Claims (1)
き別の訂正符号を含むデータブロフクを入力している間
に前記訂正符号を含むデータブロックに対し少なくとも
データブロフクの訂正を行なうデータ誤り訂正方式A data error correction method that performs at least a data block correction on a data block containing a correction code while inputting a data block containing a correction code and subsequently inputting a data block containing another correction code.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58024278A JPS59149545A (en) | 1983-02-16 | 1983-02-16 | Data error correcting system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58024278A JPS59149545A (en) | 1983-02-16 | 1983-02-16 | Data error correcting system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS59149545A true JPS59149545A (en) | 1984-08-27 |
Family
ID=12133725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP58024278A Pending JPS59149545A (en) | 1983-02-16 | 1983-02-16 | Data error correcting system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS59149545A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0462262A (en) * | 1990-06-29 | 1992-02-27 | Takenaka Komuten Co Ltd | Concrete joining mold and production |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5481705A (en) * | 1977-12-12 | 1979-06-29 | Nec Corp | Error correction unit |
-
1983
- 1983-02-16 JP JP58024278A patent/JPS59149545A/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5481705A (en) * | 1977-12-12 | 1979-06-29 | Nec Corp | Error correction unit |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0462262A (en) * | 1990-06-29 | 1992-02-27 | Takenaka Komuten Co Ltd | Concrete joining mold and production |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6018817A (en) | Error correcting code retrofit method and apparatus for multiple memory configurations | |
US5424989A (en) | Semiconductor memory device | |
US4692893A (en) | Buffer system using parity checking of address counter bit for detection of read/write failures | |
US4271521A (en) | Address parity check system | |
US5235693A (en) | Method and apparatus for reducing buffer storage in a read-modify-write operation | |
KR100238931B1 (en) | Fail determination unit of semiconductor memory testing device | |
KR19990060758A (en) | Semiconductor memory device and error correction method thereof | |
US4454600A (en) | Parallel cyclic redundancy checking circuit | |
US3887901A (en) | Longitudinal parity generator for mainframe memories | |
GB2201016B (en) | Memories and the testing thereof | |
US5003541A (en) | Method and circuit for semiconductor memory processing of video signals with Reed-Solomon error detection | |
US4183464A (en) | Hash-coding data storage apparatus with error suppression | |
US4355391A (en) | Apparatus and method of error detection and/or correction in a data set | |
JP2998366B2 (en) | CRC check method | |
KR980007139A (en) | Data error correction method of digital signal of frame structure and apparatus used for the method | |
JPS59149545A (en) | Data error correcting system | |
US5734664A (en) | Method and apparatus to efficiently store error codes | |
JPS61255451A (en) | Data processing unit | |
US5694400A (en) | Checking data integrity in buffered data transmission | |
JPS6235199B2 (en) | ||
US6389575B1 (en) | Data integrity checking apparatus | |
KR100216045B1 (en) | Bit arithmetic processing method and apparatus of programmable controller | |
KR100218153B1 (en) | Block interleave/deinterleave method of data communication | |
KR0182007B1 (en) | Crc code tester | |
SU1029230A2 (en) | Device for checking memory error correcting units |