【発明の詳細な説明】
[産業上の利用分野]
この発明は、DAT(オーディオPCM信号記録再生装
置)等の復号化装置に関するものである.特に、復号化
装置のエラー訂正に関するものである.
[従来の技術]
従来例の構成を第3図及び第4図を参照しながら説明す
る.
第3図は従来の符号化装置を示すブロック図、第4図は
従来の復号化装置を示すブロック図である.
第3図において、従来の符号化装置は、メモリー(1)
と、このメモリー(1)に接続されたバス(アドレス/
データ/制御信号バス)(2)と、このバス(2)に接
続された符号化制御回路(3)と、バス(2)に接続さ
れたC1符号器(4)と、バス(2)に接続されたC2
符号器(5)とがら構成されている.第4図におい,て
、従来の復号化装置は、メモリー(6)と、このメモリ
ー(6)に接続されたバス(アドレス/データ/制御信
号バス)(7)と、このバス(7)に接続された復号化
制御回路《8》と、バス(7)に接続されたc1復号器
(9)と、バス(7)に接続されたイレージャレジスタ
(1o)と、バス(7》に接続されたC2復号器(11
)とがら構成されている.
つぎに、上述した従来例の動作を説明する.まず、従来
の符号化装置の動作を第5図を参照しながら説明する.
第5図は従来例及びこの発明の実施例で処理する2次元
符号フォーマットを示すフォーマット図である.
第5図において、2次元符号フォーマットは、情報語と
、C1検査語と、C2検査語と、チェック・オン・チェ
ック(C+検査語の02検査語)とから楕成されている
.
ここで、線形符号を(n,k,d)と表記し、nは符号
長、kは情報シンボル数、dは最小距離を表す.C1符
号器(4)は、メモリー(1)からバス(2)を介して
読み出されたデータを、第5図で示すM方向に、ガロア
体GF“2°”上の(32,28.5)リード・ソロモ
ン符号で符号化する.
さらに、C2符号器(5)は、符号化されたデータを、
第5図で示すN方向に、ガロア体GF“2@”上の(3
2,26.7)リード・ソロモン符号で符号化する.
そして、C2符号器(5)により符号化されたデータが
、第5図で示すようなフォーマットで再びメモリー(1
)に格納される.なお、上述した一連の動作は、符号化
制御回路(3)の指令に基づいて行なわれる.
つづいて、従来の復号化装置の動作を説明する.符号化
装置より通信路(磁気テープ等)を経て再生された受信
語が、メモリー(6)に格納される.受信されたデータ
は、バス(7)を介して、Cl復号器く9)により復号
される.このとき、通信路で発生した誤りに対する復号
情報がイレージャレジスタ(10)に格納される.デー
タは、さらにC2復号器(11)により,復号され、最
終的に元の情報を再生する.
Cl復号器(9)は、軽微の誤りすなわち、単一誤りが
起こったと判断される場合は、それらを訂正する.2重
誤りが起こったと判断される場合は、誤訂正の可能性が
単一誤りのときより増えているので、全符号語すなわち
全シンボルに誤り検出フラグを付ける.フラグ情報は、
イレージャレジスタ(10)に格納される.
C2復号器(11)は、イレージャレジスタ(10)の
フラグ情報を利用して軟判定復号することにより、C2
復号での誤り訂正能力を最大2倍まで拡大することがで
きる.
ここで、C,復号器(9)の動作を第6図を参照しなが
ら詳しく説明する.
第6図は従来の復号化装置のCl復号器(9)の動作を
示すフローチャート図である.
ステ,フ゜(20)において、C1復号器(9)は、シ
ンドロームを計算する.すなわち、最小距離“5”のリ
ード・ソロモン符号を用いて、そのバリテイ検査とする
とき、シンドロームは、
で与えられる.ただし、rは受信語、Tは行列の転置を
表す.
ステッフ゜(21)〜(22)において、単一誤りが発
生しているかどうかを判断し、単一誤りが発生している
とき(YES)は、
S,/SO=S2/Sl=S3/S2=α1■式
となり、α■のパターンを予めメモリーに記録されてい
るものと、比較して誤りを訂正する.そして、C,復号
器(9)は、この処理を終了する.単一誤りが発生して
いないとき(No)は、っぎのステッフ゜(23)に進
む.
ステッフ゛(23)〜(24)において、2重誤りが発
生しているかどうかを判断し、2重誤りが発生したとき
(Y E S ”)は、
So=ei+ej
S l=eia ’ +eja j
S 2=era ” +eja ”J
Sコ=eiα月 +ejα3j
・・・ ■式
・・・ ■式
となるので、
S6S2+S,2≠O
SIS2+SzSo≠0
が成立すれば、未知数α1、αJ , ei.ejに対
して■式が方程式として意味をもつので、2重誤りが発
生していると判断される.
誤り位置多項式σ(X)は、
σ(X)=(X+αI)(X+αj)
= X 2+σlX+σ2
と表せる.X=σ,Yと置くと、
Y2+Y+σ2/σ1′=0
となる.したがって、
σ2/σ2=(α匡 α』)/(α!+αJ)を求めて
、ROMを索表すればよい。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a decoding device such as a DAT (audio PCM signal recording and reproducing device). In particular, it concerns error correction in decoding equipment. [Prior Art] The configuration of a conventional example will be explained with reference to FIGS. 3 and 4. FIG. 3 is a block diagram showing a conventional encoding device, and FIG. 4 is a block diagram showing a conventional decoding device. In FIG. 3, the conventional encoding device has memory (1)
and the bus (address/
data/control signal bus) (2), an encoding control circuit (3) connected to this bus (2), a C1 encoder (4) connected to the bus (2), and a C1 encoder (4) connected to the bus (2). connected C2
It consists of an encoder (5). In Fig. 4, the conventional decoding device has a memory (6), a bus (address/data/control signal bus) (7) connected to this memory (6), and a bus (7) connected to this memory (6). The connected decoding control circuit <<8>>, the c1 decoder (9) connected to the bus (7), the erasure register (1o) connected to the bus (7), and the Connected C2 decoder (11
) It is composed of spikes. Next, the operation of the conventional example described above will be explained. First, the operation of the conventional encoding device will be explained with reference to FIG. FIG. 5 is a format diagram showing two-dimensional code formats processed in the conventional example and the embodiment of the present invention. In FIG. 5, the two-dimensional code format is composed of an information word, a C1 check word, a C2 check word, and a check-on-check (02 check words of the C+ check word). Here, the linear code is expressed as (n, k, d), where n represents the code length, k represents the number of information symbols, and d represents the minimum distance. The C1 encoder (4) converts the data read from the memory (1) via the bus (2) in the M direction shown in FIG. 5 to (32, 28 . 5) Encode with Reed-Solomon code. Furthermore, the C2 encoder (5) converts the encoded data into
(3) on the Galois field GF “2@” in the N direction shown in FIG.
2, 26.7) Encode with Reed-Solomon code. The data encoded by the C2 encoder (5) is then stored again in the memory (1) in the format shown in FIG.
). Note that the series of operations described above are performed based on instructions from the encoding control circuit (3). Next, the operation of the conventional decoding device will be explained. The received words reproduced from the encoding device via a communication channel (magnetic tape, etc.) are stored in the memory (6). The received data is decoded by the Cl decoder 9) via the bus (7). At this time, decoding information for errors occurring on the communication path is stored in the erasure register (10). The data is further decoded by a C2 decoder (11) to finally reproduce the original information. The Cl decoder (9) corrects minor errors, ie single errors, if they are determined to have occurred. If it is determined that a double error has occurred, the possibility of error correction is greater than when a single error occurs, so an error detection flag is attached to all code words, that is, all symbols. The flag information is
Stored in erasure register (10). The C2 decoder (11) performs soft decision decoding using the flag information of the erasure register (10).
Error correction capability during decoding can be expanded up to twice. Here, the operation of the C decoder (9) will be explained in detail with reference to FIG. FIG. 6 is a flowchart showing the operation of the Cl decoder (9) of the conventional decoding device. In step (20), the C1 decoder (9) calculates the syndrome. That is, when using a Reed-Solomon code with a minimum distance of "5" and performing its validity check, the syndrome is given by: Here, r represents the received word and T represents the transpose of the matrix. In steps (21) to (22), it is determined whether a single error has occurred, and if a single error has occurred (YES), S, /SO=S2/Sl=S3/S2= The α1■ formula is used, and errors are corrected by comparing the α■ pattern with the one recorded in memory in advance. Then, C, the decoder (9) ends this process. If no single error has occurred (No), proceed to the next step (23). In steps (23) to (24), it is determined whether a double error has occurred, and when a double error has occurred (Y E S ”), So=ei+ej S l=eia '+eja j S 2 =era ” +eja ”J S co=eiα month +ejα3j ... ■Formula... ■Formula, so if S6S2+S,2≠O SIS2+SzSo≠0 holds, then for the unknowns α1, αJ, ei.ej ■Since the expression has meaning as an equation, it is determined that a double error has occurred.The error locator polynomial σ(X) can be expressed as σ(X)=(X+αI)(X+αj)=X 2+σlX+σ2.X =σ, Y, then Y2+Y+σ2/σ1'=0. Therefore, σ2/σ2=(α匡α')/(α!+αJ) can be found and the ROM can be searched.
αIαj、αi+α』をS0〜S,で表現するためにつ
ぎの変形を行う.
A =S o S 2 + S l
=ei ej(α直+αj)2
B = S + S 2 + S s S o=ei
ej(α『+α』》コ
.・.αl十α3=B/A
F ” S + S 3+ S 2
=ei ej α1 αJ (α1 +αJ)2,
゛.αI αJ =F/B
=(SI83+92)”/(SOS,+S,2)あとは
■式よりei, ejを求めればよい.一方、2重誤り
が発生しないとき(No>は、上述した2重誤りの訂正
をしないでつぎのステッフ゜(25)に進む.
ステ,フ゜(25)において、全シンボルに誤り検出フ
ラグを付ける.すなわち、イレージャレジスタ(10)
の該当箇所にフラグを立てる.これで、CI復号器(9
)は、この処理を終了する.さらに、C,復号器(11
)の動作を第7図を参照しながら詳しく説明する.
第7図は従来の復号化装置のC2復号器(11)の動作
を示すフローチャート図である.
ステ,フ゜(30)において、C,復号器(11)は、
シンドロームの計算をする.
ステッ7”(31)〜(34)において、シンドローム
により誤りNeがなかったかどうかを判断し、誤りNe
がなかった場合(Y E S )は、さらにC1復号で
の誤り検出フラグの数Nf#(Ll(1≦L.≦L−1
、L:C2符号語のシンボル数)より小さいかどうかを
判断する.小さい場合(YES)は誤り無しとみなして
データを出力し、小さくない場合(NO)は訂正できな
い誤りが起こったと判断して前後のデータより補正する
.そして、C2復号器(11)は、この処理を終了する
.
一方、誤りNeがあった場合(No)は、ステッフ゜(
35)に進む.
ステッ7゜(35)〜(39)において、シンドローム
により誤りNeが訂正可能個数iを越えていないかどう
かを判断し、越えていない場合(YES)はシンドロー
ムより誤り位置の計算をする.そして、計算した誤り位
置が、C1復号器(9)で示している誤り位W(フラグ
位置)と一致しているかどうかを判断し、一致している
場合(Y E S )は誤りの位置を確認して誤りを訂
正し、一致していない場合(NO)はC2復号器(11
)で計算した誤り位置と、C復号器(9)で計算した誤
り位置とが一致しないことになるので、データを出力し
ないで前後のデータより補正する.そして、C,復号器
(11)は、この処理を終了する.
一方、誤りNeが訂正可能個数iを越えている場合(N
O)はステッフ゜(40)に進む.ステッフ゜(40)
において、シンドロームより判断される誤りの数Neが
訂正可能個数iを越えているため、データを出力せず、
前後のデータより補正する.そして、C2復号器(11
)は、この処理を終了する.
ところで、イレージャには2種類あって、フラグ(誤り
検出フラグ)が付いていてデータは誤っている真のイレ
ージャと、フラグが付いているがデータは正しい空イレ
ージャとがある.
誤り率が低い場合には、フラグが付いていても空イレー
ジャの確率が高い.最小距離“5″の場合だと、
1.3重誤りを2重誤りと思い込み誤訂正して5重誤り
にする場合と、
I[.3重誤りを検出して3重誤りのままC2復号器(
11)へ転送する場合がある.
■の場合は全32シンボル中、2 7/3 2 −84
.4%が空イレージャ、■の場合は29/32=90.
6%が空イレージャの確率であるから、C2復号器でフ
ラグの数を計数し、フラグの数が一定数以下のときは、
フラグを無視して訂正するか、あるいは上述したように
シンドロームからもとめた誤り位置とフラグの示す誤り
位置の一致を確かめて訂正するなどが知られている.[
発明が解決しようとする課題コ
上述したような従来の復号化装置では、誤り率が極端に
悪くなりフラグ数が非常に多くなって誤訂正が起こって
いる場合、シンドロームからもとめた誤り位置とフラグ
の示す誤り位置との一致の確率が増えてくるので、両者
の一致を確認してから訂正する方式が意味をなさないと
いう問題点があった.
特に、一定レベル以上の誤り率になると、全フラグが立
ち、常時、両者の一致が起こり、本当の誤訂正が起こる
という問題点があった.この発明は、上述した問題点を
解決するためになされたもので、誤訂正を減少すること
ができる復号化装置を得ることを目的とする.
[課題を解決するための手段]
この発明に係る復号化装置は、以下に述べるような手段
を備えたものである.
(i).データが単一誤りを起こしたときはそれを訂正
し2重誤,りを起こしたときは全シンボルに誤り検出フ
ラグを付ける第1の復号器。In order to express ``αIαj, αi+α'' as S0 to S, the following transformation is performed. A = S o S 2 + S l = ei ej (α direct + α j) 2 B = S + S 2 + S s S o = ei
ej (α ``+α''》ko...αl ten α3=B/A F ” S + S 3+ S 2 =ei ej α1 αJ (α1 +αJ)2,
゛. αI αJ =F/B =(SI83+92)”/(SOS,+S,2) All that is left to do is find ei and ej from the formula ■.On the other hand, when no double error occurs (No Proceed to the next step (25) without correcting the error. In step (25), an error detection flag is attached to all symbols. That is, the erasure register (10)
Set a flag at the relevant location. Now the CI decoder (9
) ends this process. Furthermore, C, decoder (11
) operation will be explained in detail with reference to Figure 7. FIG. 7 is a flowchart showing the operation of the C2 decoder (11) of the conventional decoding device. In step (30), C decoder (11) is
Calculate the syndrome. In steps 7'' (31) to (34), it is determined whether there is an error Ne due to the syndrome, and the error Ne is determined.
If there is no (Y E S ), the number of error detection flags in C1 decoding Nf#(Ll(1≦L.≦L−1
, L: the number of symbols of the C2 codeword). If it is small (YES), it is assumed that there is no error and the data is output; if it is not small (NO), it is judged that an uncorrectable error has occurred and it is corrected using the previous and subsequent data. The C2 decoder (11) then ends this process. On the other hand, if there is an error Ne (No), step ゜(
Proceed to 35). In steps 7° (35) to (39), it is determined based on the syndrome whether the error Ne exceeds the correctable number i, and if it does not exceed (YES), the error position is calculated based on the syndrome. Then, it is determined whether the calculated error position matches the error position W (flag position) shown by the C1 decoder (9), and if they match (Y E S ), the error position is determined. Check and correct the error, and if they do not match (NO), use the C2 decoder (11
) will not match the error position calculated by the C decoder (9), so the data will be corrected using the previous and subsequent data without outputting the data. Then, C, the decoder (11) ends this process. On the other hand, if the error Ne exceeds the correctable number i (N
O) proceeds to step (40). Step゜(40)
In , the number of errors Ne determined from the syndrome exceeds the correctable number i, so no data is output,
Correct based on previous and subsequent data. Then, a C2 decoder (11
) ends this process. By the way, there are two types of erasures: true erasures that have a flag (error detection flag) attached and the data is incorrect, and empty erasures that have a flag attached but the data is correct. If the error rate is low, the probability of empty erasure is high even if a flag is attached. In the case of the minimum distance "5", 1. A case where a triple error is assumed to be a double error and is incorrectly corrected to become a quintuple error, and I[. A triple error is detected and the C2 decoder (
11). In case of ■, 2 7/3 2 -84 out of 32 symbols
.. If 4% is empty erasure, ■, then 29/32=90.
Since the probability of empty erasure is 6%, the number of flags is counted by the C2 decoder, and when the number of flags is less than a certain number,
It is known to correct the error by ignoring the flag, or by checking whether the error location determined from the syndrome matches the error location indicated by the flag as described above. [
Problems to be Solved by the Invention In the conventional decoding device as described above, when the error rate is extremely bad and the number of flags is extremely large and erroneous correction occurs, the error position and flag determined from the syndrome are Since the probability of a match with the error position indicated by increases, there is a problem in that it is meaningless to correct the method after confirming the match between the two. In particular, when the error rate exceeds a certain level, all flags are raised, and the two always match, causing a true error correction. This invention was made to solve the above-mentioned problems, and aims to provide a decoding device that can reduce erroneous corrections. [Means for Solving the Problems] A decoding device according to the present invention includes the following means. (i). A first decoder that corrects a single error in the data and sets an error detection flag on all symbols when a double error occurs.
(ii).上記誤り検出フラグを計数し全シンボル数よ
り少ない場合に上記データの誤りを訂正する第2の復号
器.
[作用]
この発明においては、第1の復号器によって、データが
単一誤りを起こしたときはそれが訂正され、2重誤りを
起こしたときは全シンボルに誤り検出フラグが付される
.
また、第2の復号器によって、上記誤り検出フラグが計
数され、全シンボル数より少ない場合に上記データの誤
りが訂正される.
[実施例]
この発明の実施例の構成を第1図を参照しながら説明す
る.
第1図は、この発明の一実施例を示すブロック図であり
、メモリー(6》〜イレージャレジスタ(10)は上記
従来装置のものと全く同一である.第1図において、こ
の発明の一実施例は、上述した従来装置のものと全く同
一のものと、バス(7)に接続されたC2復号器(11
^)とから構成されている.
ところで、この発明の第1の復号器は、上述した実施例
ではC1復号器(9)から構成され、第2の復号器は、
C2復号器(11^)から構成されている.つぎに、上
述した実施例の動作を第2図を参照しながら説明する.
第2図は、この発明の一実施例のC2復号器(11^)
の動作を示すフローチャート図である.C1復号器(9
)の動作は、従来例と同一であるので、C2復号器(1
1^)の動作について説明する.ステッフ゜(50)に
おいて、C2復号器(11^)は、フラグの数NfがL
−1個以下かどうかを判断し、L−1個以下の場合(Y
ES)はステッフ゜(40)へ進み、L−1個以下でな
い場合(N○)はつぎのステッ7゜(30)に進む.
ステッ7” (30)〜(40)は、上述した従来例と
同一である.
この発明の一実施例は、上述したようにC2復号器(1
1^)でフラグの付いているシンボルが幾つあるかを計
数し、全シンボルにフラグが付いている場合だけ、該当
シンボル全体を補正する.シンボル誤り率が0.1〜0
.05に近付くと、C1受信語の32シンボル中、常時
、2〜3個の誤りが生じて32シンボル全部にフラグが
立つ確率がほとんど1になる.このような場合は誤訂正
を防ぐことが先決であって、確実に誤訂正を防いだ後、
補正をすることが大切になる.
なお、上記実施例ではC1符号及びC,符号に(32,
28.5)及び(32.26.7)リード・ソロモン符
号を用いたが、一般に線形符号であればどのような符号
でも同様の動作を期待できる.[発明の効果]
この発明は、以上説明したとおり、データが単一誤りを
起こしたときはそれを訂正し2重誤りを起こしたときは
全シンボルに誤り検出フラグを付ける第1の復号器と、
上記誤り検出フラグを計数し全シンボル数より少ない場
合に上記データの誤りを訂正する第2の復号器とを備え
たので、確実に誤訂正を減少することができるという効
果を奏する.(ii). a second decoder that counts the error detection flag and corrects an error in the data if the number is less than the total number of symbols; [Operation] In this invention, when a single error occurs in data, the first decoder corrects it, and when a double error occurs, an error detection flag is attached to all symbols. Further, the second decoder counts the error detection flag, and if the number is less than the total number of symbols, the error in the data is corrected. [Embodiment] The configuration of an embodiment of this invention will be explained with reference to FIG. FIG. 1 is a block diagram showing an embodiment of the present invention, and the memory (6) to erasure register (10) are completely the same as those of the conventional device described above. One embodiment includes a C2 decoder (11
It consists of ^). By the way, the first decoder of the present invention is composed of the C1 decoder (9) in the above-mentioned embodiment, and the second decoder is composed of the C1 decoder (9).
It consists of a C2 decoder (11^). Next, the operation of the above embodiment will be explained with reference to FIG. FIG. 2 shows a C2 decoder (11^) according to an embodiment of the present invention.
FIG. 2 is a flowchart diagram showing the operation. C1 decoder (9
) is the same as the conventional example, so the C2 decoder (1
The operation of 1^) will be explained. At step (50), the C2 decoder (11^) determines that the number of flags Nf is L.
-1 or less, and if it is L-1 or less (Y
ES) proceeds to step ゜(40), and if the number is not less than L-1 (N○), proceeds to the next step 7゜(30). Steps 7" (30) to (40) are the same as those in the conventional example described above. In one embodiment of the present invention, as described above, the C2 decoder (1
1^) Count the number of symbols with flags, and only if all symbols have flags, correct the entire symbol. Symbol error rate is 0.1 to 0
.. 05, two or three errors will always occur among the 32 symbols of the C1 received word, and the probability that all 32 symbols will be flagged becomes almost 1. In such cases, the first priority is to prevent erroneous corrections, and after ensuring that erroneous corrections are prevented,
It is important to make corrections. In addition, in the above embodiment, (32,
28.5) and (32.26.7) Reed-Solomon codes were used, but in general any linear code can be expected to perform similarly. [Effects of the Invention] As explained above, the present invention includes a first decoder that corrects a single error in data and sets an error detection flag on all symbols when a double error occurs. ,
Since the second decoder counts the error detection flag and corrects the error in the data when the number is less than the total number of symbols, it is possible to reliably reduce error corrections.
【図面の簡単な説明】[Brief explanation of drawings]
第1図はこの発明の一実施例を示すブロック図、第2図
はこの発明の一実施例のC2復号器の動作を示すフロー
チャート図、第3図は従来の符号化装置を示すブロック
図、第4図は従来の復号化装置を示すブロック図、第5
図は従来例及びこの発明の実施例で処理する2次元符号
フォーマットを示すフォーマット図、第6図は従来の復
号化装置のCl復号器の動作を示すフローチャート図、
第7図は従来の復号化装置のC2復号器の動作を示すフ
ローチャート図である。
図において、
(6)・・・ メモリー
(7) ・・・ バス、
(8)・・・ 復号化制御回路、
(9)・・・ C1復号器、
(10) ・・・ イレージャレジスタ、(11^)
・・・ C,復号器である.なお、各図中,、同一符
号は同一、
を示す.FIG. 1 is a block diagram showing an embodiment of the present invention, FIG. 2 is a flowchart showing the operation of a C2 decoder according to an embodiment of the invention, and FIG. 3 is a block diagram showing a conventional encoding device. FIG. 4 is a block diagram showing a conventional decoding device, and FIG.
FIG. 6 is a format diagram showing two-dimensional code formats processed in a conventional example and an embodiment of the present invention, FIG. 6 is a flow chart diagram showing the operation of a Cl decoder of a conventional decoding device,
FIG. 7 is a flowchart showing the operation of the C2 decoder of the conventional decoding device. In the figure, (6)... memory (7)... bus, (8)... decoding control circuit, (9)... C1 decoder, (10)... erasure register, (11^)
... C is a decoder. In each figure, the same symbols indicate the same.