JPS6339990B2 - - Google Patents
Info
- Publication number
- JPS6339990B2 JPS6339990B2 JP53000683A JP68378A JPS6339990B2 JP S6339990 B2 JPS6339990 B2 JP S6339990B2 JP 53000683 A JP53000683 A JP 53000683A JP 68378 A JP68378 A JP 68378A JP S6339990 B2 JPS6339990 B2 JP S6339990B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- error
- code word
- write
- erroneous
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Landscapes
- Television Signal Processing For Recording (AREA)
Description
【発明の詳細な説明】
アナログ信号を符号化したデジタル信号に変換
して伝送したり記録媒体に記録したりすることが
広く行なわれているが、信号の伝送途中あるいは
記録再生の過程において各種の原因によつて符号
誤りが発生すると、再生出力中にパルス性の雑音
が生じるため、伝送あるいは記録に際しては符号
化した信号にパリテイ符号や巡回符号を付して伝
送あるいは記録し、復号に際しては前記したパリ
テイ符号や巡回符号を用いて符号誤りを検出し、
誤りが検出されたときは、例えばその誤りの検出
された符号語を一つ前の符号語に置き換えて出力
信号をホールドするようにしたり、あるいはま
た、例えば誤りが一語だけの場合は、加算器を用
いて前後の語の示す平均値を得て、これを誤りの
検出された符号語に置き換えることが行なわれて
いた。[Detailed Description of the Invention] It is widely practiced to convert an analog signal into a coded digital signal and transmit it or record it on a recording medium. If a code error occurs due to a cause, pulse noise will occur in the reproduced output. Therefore, when transmitting or recording, a parity code or cyclic code is attached to the encoded signal and transmitted or recorded, and when decoding, the above-mentioned code is added. Detect code errors using parity codes and cyclic codes,
When an error is detected, for example, the code word in which the error was detected is replaced with the previous code word and the output signal is held, or if the error is only one word, addition is performed. The average value of the preceding and succeeding words was obtained using an instrument, and this was then replaced with the code word in which the error was detected.
しかし、前記した従来の誤り語の補正手段にお
いては誤り語が連続している場合に、前記した従
来法の前者の補正手段では不連続な再生信号波形
となるために補正ノイズが大きくなり、また、前
記した従来法の後者の補正手段では補正すること
ができないという欠点があつた。 However, when the above-mentioned conventional error word correction means has consecutive error words, the former correction means of the above-mentioned conventional method produces a discontinuous reproduced signal waveform, resulting in large correction noise. However, the latter correction means of the conventional method described above had a drawback in that it could not be corrected.
本発明は、誤りのある符号語が連続していて
も、その語の前後近傍における誤りのない符号語
の示す値から推定して補間することにより、前記
した従来法の欠点が良好に解決され、ノイズの少
ない再生出力信号が得られるようにした簡単な構
成を有する符号語の誤り修正装置、すなわち、原
信号に対するサンプリング周期と同期して設定さ
れている書込み期間と読出し期間とに、それぞれ
書込みアドレス信号と読出しアドレス信号とを送
出し、かつ、互に予め定められたアドレス間隔を
保持した状態で巡回する如くになされた書込みア
ドレスカウンタと読出しアドレスカウンタとの動
作によつて、入力された次々の符号語がメモリに
一時記憶されて前記した予め定められたアドレス
間隔と対応する時間だけの遅延を受けて出力され
るようにし、また、前記した書込みアドレスカウ
ンタと読出しアドレスカウンタとにおけるある1
つの書込み期間と読出し期間とが終了した時点か
ら次の書込み期間が開始する時点までの期間を誤
りの修正期間として、誤り発生検出信号をうけて
入力信号の変化態様に応じて、誤り修正のロジツ
クが切換えられるようになされた修正装置を起動
するトリガ機能と誤りのある符号語が記憶されて
いるメモリのアドレスを一時記憶する機能とを有
するレジスタの出力によつて修正装置における修
正動作を開始させ、修正装置が誤りのある符号語
とその前後近傍の誤りのない符号語をメモリから
読出して誤りのある符号語をその前後近傍の誤り
のない符号語の示す値から推定した値に修正し、
その修正された符号語をメモリにおける誤りのあ
る符号語のアドレス位置に書込み、読出しアドレ
スカウンタによつて誤りのある符号語のアドレス
が指定される以前にその誤りのある符号語が修正
された符号語となされるようにして、修正された
符号語が出力されるようにしてなる符号語の誤り
を修正する装置、及び、前記した修正装置として
1個または連続する複数個の誤りのある符号語が
存在している区間の前と後のそれぞれにおける誤
りのない符号語A,Bの示す値と、符号語A,B
の前または後の誤りのない符号語とのそれぞれの
差分ΔA,ΔBとの関係が同符号のときは、符号
語A,B間を直線補間によつて修正し、前記した
差分ΔA,ΔBとの関係が異符号のときは、誤り
のある語の連続区間の中程までの個数でもつて前
記した符号語A及び符号語Bとを結んだときに相
当する傾斜と差分ΔAまたは差分ΔBの傾斜との
差を分割した変化率により誤りのある語を2次近
似によつて修正するように構成されたものを用い
た符号語の誤りを修正する装置を提供することを
目的としてなされたものであり、以下、添付図面
を参照してその具体的な内容を明らかにする。 The present invention satisfactorily solves the above-mentioned drawbacks of the conventional method by estimating and interpolating values indicated by error-free code words in the vicinity before and after the code words that contain errors, even if code words with errors occur consecutively. , a code word error correction device having a simple configuration that allows a reproduced output signal with less noise to be obtained, that is, a code word error correction device that writes data in a write period and a read period that are set in synchronization with the sampling period for the original signal. A write address counter and a read address counter send out an address signal and a read address signal, and operate a write address counter and a read address counter that circulate while maintaining a predetermined address interval from each other. A code word is temporarily stored in a memory and output after being delayed by a time corresponding to the predetermined address interval, and a certain code word in the write address counter and the read address counter is
The period from the end of one write period and read period to the start of the next write period is defined as an error correction period. The correcting operation in the correcting device is started by the output of a register having a trigger function to start the correcting device configured to switch and a function to temporarily store the address of the memory where the erroneous code word is stored. , a correction device reads the erroneous code word and the error-free code words in the vicinity before and after it from the memory, and corrects the erroneous code word to a value estimated from the values indicated by the error-free code words in the vicinity before and after it;
Write the corrected codeword to the address location of the erroneous codeword in memory, and write the erroneous codeword to the corrected code before the address of the erroneous codeword is specified by the read address counter. A device for correcting an error in a code word by outputting a corrected code word, and a device for correcting a code word having one or a plurality of consecutive errors as the correction device. The values indicated by error-free code words A and B before and after the interval in which code words A and B exist, respectively.
When the relationships between the differences ΔA and ΔB with the error-free code words before or after are of the same sign, the code words A and B are corrected by linear interpolation, and the differences ΔA and ΔB mentioned above are corrected by linear interpolation. When the relationship between is of opposite sign, the slope corresponding to the case where code word A and code word B described above are connected up to the middle of the continuous interval of erroneous words and the slope of difference ΔA or difference ΔB. The purpose of this invention is to provide a device for correcting errors in code words using a device configured to correct erroneous words by quadratic approximation based on the rate of change obtained by dividing the difference between The specific contents will be clarified below with reference to the attached drawings.
第1図は本発明の符号語の誤りを修正する装置
の一実施態様のもののブロツク図であつて、この
第1図において1はスイツチ回路、2はメモリ、
3はアドレスカウンタ、4はノイズアドレスレジ
スタ、5は修正装置、6は入力端子、7はクロツ
ク端子、8は出力端子である。 FIG. 1 is a block diagram of one embodiment of a code word error correction apparatus according to the present invention, in which 1 is a switch circuit, 2 is a memory;
3 is an address counter, 4 is a noise address register, 5 is a correction device, 6 is an input terminal, 7 is a clock terminal, and 8 is an output terminal.
入力端子6には、例えば、デジタル式オーデイ
オ信号再生装置からの出力信号が、オーデイオ信
号のサンプル値と対応する15ビツトの符号と誤り
を表わす1ビツトの符号との計16ビツトよりなる
符号語の形で入力信号Diとして与えられている。 At the input terminal 6, for example, an output signal from a digital audio signal reproducing device receives a code word consisting of a total of 16 bits, including a 15-bit code corresponding to the sample value of the audio signal and a 1-bit code representing an error. is given as an input signal D i in the form
前記した入力端子6に与えられた入力信号は、
スイツチ回路1における書込みゲート11に送ら
れ、第2図e図中の書込みパルスWがローレベル
となる書込み期間Tw中にデータバスを通してメ
モリ2におけるRAM21に書込まれる。すなわ
ち、クロツク端子7には原信号のオーデイオ信号
のサンプル値を得るために用いられたサンプリン
グパルスの繰返し周波数と同一の繰返し周波数
(以下の説明では48KHzであるとされている)を
有するクロツクパルスCK{第2図a図}が与えら
れており、前記したクロツクパルスCKは単安定
マルチバイブレータ12をトリガして第2図c図
に示すようにクロツクパルスCKと同期した
DMAC信号を単安定マルチバイブレータ12か
ら出力させ、また、前記のDMAC信号が与えら
れた単安定マルチバイブレータ13からは
DMAC信号のハイレベルの期間中に書込みパル
スWと読出しパルスR{第2図f図}とが送出さ
れるようになされている。そして、書込みゲート
11及びゲート18は前記した書込みパルスWが
ローレベルの期間だけにゲートを開いて、書込み
ゲート11は入力端子6に与えられた入力信号を
メモリ2におけるRAM21に送り、また、ゲー
ト18はアドレスカウンタ31からのアドレス信
号をメモリ2におけるRAM21に送り、さらに
スイツチ14を介してローレベルの書込みパルス
Wがメモリ2におけるRAM21に送られるか
ら、書込み期間Tw中におけるRAM21には入
力端子6から書込みゲート11を通してデータバ
スを介して送られた入力信号の符号語が、アドレ
スカウンタ31からゲート18及びアドレスバス
を通してRAM21に与えられているアドレス信
号と対応するRAM21のアドレス位置に記憶さ
れるのである。 The input signal given to the input terminal 6 described above is
The data is sent to the write gate 11 in the switch circuit 1 and written into the RAM 21 in the memory 2 through the data bus during the write period Tw when the write pulse W in FIG. 2e is at a low level. That is, the clock terminal 7 receives a clock pulse CK{ having the same repetition frequency (assumed to be 48 KHz in the following explanation) as the repetition frequency of the sampling pulse used to obtain the sample value of the original audio signal. Figure 2a} is given, and the aforementioned clock pulse CK triggers the monostable multivibrator 12 to synchronize with the clock pulse CK as shown in Figure 2c.
The DMAC signal is output from the monostable multivibrator 12, and the monostable multivibrator 13 to which the DMAC signal is given is outputted from the monostable multivibrator 12.
A write pulse W and a read pulse R (FIG. 2f) are sent out during the period when the DMAC signal is at a high level. The write gate 11 and the gate 18 are opened only during the period when the write pulse W described above is at a low level, and the write gate 11 sends the input signal applied to the input terminal 6 to the RAM 21 in the memory 2, and the gate 18 sends the address signal from the address counter 31 to the RAM 21 in the memory 2, and furthermore, the low level write pulse W is sent to the RAM 21 in the memory 2 via the switch 14, so that the input terminal 6 is connected to the RAM 21 during the write period Tw. Since the code word of the input signal sent from the address counter 31 to the RAM 21 through the gate 18 and the address bus is stored in the address position of the RAM 21 corresponding to the address signal being applied to the RAM 21 from the address counter 31 through the gate 18 and the address bus. be.
前記したスイツチ14は、DMAC信号がハイ
レベルの場合には、ローレベルの書込みパルスW
を(R/W)に出力し、また、DMAC信号がロ
ーレベルの場合には修正装置5におけるCPU5
1からのコントロール信号R/Wを出力する。 When the DMAC signal is high level, the switch 14 described above outputs a low level write pulse W.
(R/W), and when the DMAC signal is low level, the CPU 5 in the correction device 5
Outputs the control signal R/W from 1.
前記した書込み期間Twに続く読出し期間TRに
は、単安定マルチバイブレータ13からローレベ
ルの読出しパルスRが送出されてゲート15とゲ
ート19とが開き、また、この期間には書込みパ
ルスWがハイレベルとなるから書込みゲート11
とゲート18とが閉じると共に、スイツチ14か
らはハイレベルのパルスWがRAM21に送られ
るから、読出しアドレスカウンタ32からゲート
19及びアドレスバスを介してRAM21に送ら
れたアドレス信号によつて指定されたRAM21
内の記憶内容が読み出されて、その読出された符
号語がデータバス及びゲート15を介して出力端
子8に送出される。 During the read period T R following the write period Tw described above, a low level read pulse R is sent from the monostable multivibrator 13 to open the gates 15 and 19, and during this period, the write pulse W is high. Write gate 11 because it becomes level
and gate 18 are closed, and the switch 14 sends a high-level pulse W to the RAM 21. Therefore, the address signal specified by the address signal sent from the read address counter 32 to the RAM 21 via the gate 19 and the address bus is sent from the switch 14 to the RAM 21. RAM21
The stored contents in the memory are read out, and the read code word is sent to the output terminal 8 via the data bus and the gate 15.
前記の書込み期間Twと読出し期間TRとにおい
て、符号語が書込まれるRAM21のアドレス位
置と符号語が読出されるRAM21のアドレス位
置とは、予め定められたアドレス間隔を示すもの
となされているが、次にこれを具体例について説
明する。今、RAM21が(256語×16ビツト)
の記憶容量を有するものとし、また、書込みアド
レスカウンタ31と読出しアドレスカウンタ32
とがそれぞれ8ビツトで0〜255のアドレス信号
を送出するものとし、さらに、クロツクパルス
CKの繰返し周波数を48KHzとした場合を考え、
ある書込み期間TWにRAM21の0番地に符号
語を書込み、前記したある書込み期間Twの終了
の時点が読出し期間の開始の時点となるある読出
し期間TRにRAM21の1番地の記憶容量が読出
される、というように、次々の書込み期間と読み
出し期間との関係が定められていた場合には、符
号語が書込まれるRAM21のアドレス位置と、
符号語が読出されるRAM21のアドレス位置と
のアドレス間隔は256となり、したがつて、ある
番地に書込まれた記憶内容が読出されるまでの時
間は256/48(KHz)≒5.3(ms)となる。 In the write period Tw and read period T R , the address position of the RAM 21 where the code word is written and the address position of the RAM 21 where the code word is read are set to indicate a predetermined address interval. However, this will be explained next using a specific example. Now, RAM21 (256 words x 16 bits)
It also has a storage capacity of a write address counter 31 and a read address counter 32.
and sends an address signal of 0 to 255 with 8 bits each, and a clock pulse
Considering the case where the CK repetition frequency is 48KHz,
A code word is written to address 0 of the RAM 21 during a certain write period TW, and the storage capacity at address 1 of the RAM 21 is read out during a certain read period TR in which the end of the above-mentioned certain write period Tw is the start of the read period. If the relationship between successive write periods and read periods is determined, such as, the address position of the RAM 21 where the code word is written,
The address interval from the address position of the RAM 21 where the code word is read is 256, so the time it takes to read the memory content written to a certain address is 256/48 (KHz) ≒ 5.3 (ms). becomes.
このように、入力端子6に供給された入力信号
は、それがメモリ2におけるRAM21に書込ま
れ、そして読出されて出力端子8に送出されるま
でに、書込みアドレスカウンタ31と読出しアド
レスカウンタ32とにより予め定められているア
ドレス間隔と対応した時間遅延を受けるのであ
り、また、入力信号の符号語の誤りは前記した
RAM21に書込まれてから読出されるまでの時
間内に充分に修正され得るのである。 In this way, the input signal supplied to the input terminal 6 is written to the RAM 21 in the memory 2, and before it is read out and sent to the output terminal 8, the input signal is input to the write address counter 31 and the read address counter 32. Errors in the code word of the input signal are subject to a time delay corresponding to the predetermined address interval.
It can be sufficiently modified within the time from when it is written to the RAM 21 until when it is read.
前記した書込みアドレスカウンタ31と読出し
アドレスカウンタ32とは、DMAC信号のパル
スをカウントしてそれぞれ0〜255の数値を順次
に出力しながら巡回するが、読出しアドレスカウ
ンタ32は書込みアドレスカウンタ31が一巡す
る毎に出力する桁上げ信号(CA信号)によつて
セツトされることにより書込みアドレスカウンタ
31と同期し、前記した書込みアドレスカウンタ
31の出力はバスWBを介してゲート18とレジ
スタ41とに送られ、また、読出しアドレスカウ
ンタ32の出力はバスRBを介してゲート19に
送られる。ゲート18,19は前記したバスWB
(RB)を介して供給されているアドレス信号を、
書込み期間Tw(読出し期間TR)にRAM21に送
るようにゲートを開くことは既述のとおりであ
る。 The above-mentioned write address counter 31 and read address counter 32 count the pulses of the DMAC signal and rotate while sequentially outputting numerical values from 0 to 255, respectively, but the read address counter 32 makes one cycle when the write address counter 31 goes through the cycle. The output of the write address counter 31 is synchronized with the write address counter 31 by being set by a carry signal (CA signal) that is output every time. , and the output of the read address counter 32 is sent to the gate 19 via the bus RB. Gates 18 and 19 are connected to the bus WB mentioned above.
The address signal being supplied through (RB),
As described above, the gate is opened to send data to the RAM 21 during the write period Tw (read period T R ).
入力端子6に供給された入力信号の符号語に誤
りがあると、入力端子6に供給された16ビツトの
符号語の内の誤り符号ERエラービツトを示す1
ビツトがハイレベルとなつて、この誤り符号ER
がノイズアドレスレジスタ4におけるレジスタ4
1に記憶されると同時に書込みアドレスカウンタ
31の内容(誤りの発生した最初のアドレス)も
レジスタ41に記憶される。 If there is an error in the code word of the input signal supplied to the input terminal 6, an error code ER indicating the error bit in the 16-bit code word supplied to the input terminal 6 is set.
When the bit goes high, this error code ER
is register 4 in noise address register 4
At the same time, the contents of the write address counter 31 (the first address where the error occurred) are also stored in the register 41.
前記のレジスタ41は、このレジスタ41を指
定するアドレスエンコーダ42の出力ENによつ
て指定されてその記憶内容がデータバスを介して
CPU51に読出された後、CPU51により誤り
のビツトが0に書替えられるまでの間はその記憶
内容を保持する。 The register 41 is specified by the output EN of the address encoder 42 that specifies this register 41, and its stored contents are transmitted via the data bus.
After being read by the CPU 51, the stored contents are held until the CPU 51 rewrites the erroneous bits to 0.
図示の例において、修正装置5は、CPU51,
ROM52,RAM53、同期回路54、クロツ
ク回路55などで構成されたプログラムロジツク
装置形態のものとして示されており、この修正装
置5は既述したメモリ2におけるRAM21に書
込まれた符号語の内で誤りのある符号語が読出さ
れて出力端子8に送出される以前に修正されるよ
うに、DMAC信号のローベルの期間中に所要の
誤り修正のための動作を行なう。図示の例の修正
装置5は、その起動が起動装置によりトリガされ
て割込みルーチンへ移る方式で行なわれるのでは
なく、ROM52のプログラム制御によつてその
機能を持つようになされているものとして説明さ
れる。 In the illustrated example, the correction device 5 includes a CPU 51,
This correction device 5 is shown as a program logic device composed of a ROM 52, a RAM 53, a synchronization circuit 54, a clock circuit 55, etc., and this correction device 5 corrects the code words written in the RAM 21 in the memory 2 described above. The necessary error correction operations are performed during the low level of the DMAC signal so that the erroneous codeword is corrected before being read out and sent to the output terminal 8. The modification device 5 in the illustrated example will be described as having its function under program control of the ROM 52, rather than being activated by a startup device and proceeding to an interrupt routine. Ru.
すなわち、図示の例の修正装置5は、ROM5
2に記憶させてあるプログラムに従つて、ノイ
ズ・アドレス・レジスタ4におけるレジスタ41
の記憶内容を、アドレスエンコーダ42を指定し
てCPU51のアキユムレータへ読み取り、レジ
スタ41に記憶されていた誤り符号ERのビツト
がハイレベルの時には保持されたアドレス値を
RAM53へ書込み、誤り符号ERのビツトを0
に戻して誤りの修正を開始し、修正が終了した時
には再びアドレスエンコーダ42を指定して誤り
の発生を待つのである。 That is, the modification device 5 in the illustrated example has a ROM 5
register 41 in the noise address register 4 according to the program stored in the noise address register 2.
The stored contents of are read into the accumulator of the CPU 51 by specifying the address encoder 42, and when the bit of the error code ER stored in the register 41 is at a high level, the stored address value is read.
Write to RAM53 and set the error code ER bit to 0.
When the correction is completed, the address encoder 42 is designated again and the error is waited for.
修正装置5において、DMAC信号がハイレベ
ルの時は、この信号によつてCPU51のアドレ
スバス端子及びデータバス端子は制御を失ない、
メモリ2におけるRAM21は書込みゲート1
1、ゲート15、ゲート18,19の各出力によ
つて読み書きされる。このようにDMAC信号が
ハイレベルの状態におけるクロツク回路55は、
同期回路54の出力によつて第2図d図示のよう
にその出力クロツクφを一時伸長させてCPU5
1の動作を保留させ、DMAC信号が再びローレ
ベールへ戻つた時にCPU51へ動作の続きをさ
せるのである。 In the correction device 5, when the DMAC signal is at a high level, this signal prevents the address bus terminal and data bus terminal of the CPU 51 from losing control.
RAM21 in memory 2 is write gate 1
1, gate 15, and gates 18 and 19. In this way, when the DMAC signal is at a high level, the clock circuit 55 operates as follows.
The output clock φ of the synchronizing circuit 54 is temporarily extended as shown in FIG.
1 is suspended, and when the DMAC signal returns to the low level again, the CPU 51 is made to continue the operation.
修正装置5における誤りのある符号語に対する
誤りの修正方法は、修正装置5に設けるROM5
2に記憶させておくべきプログラムを変更するこ
とによつて変更可能なことはいうまでもないが、
次に、第3図のフローチヤートで示されるような
プログラム例に従つて誤りのある符号語が修正さ
れる場合について説明する。 The error correction method for an erroneous code word in the correction device 5 is based on the ROM 5 provided in the correction device 5.
It goes without saying that this can be changed by changing the program that should be stored in 2.
Next, a case will be described in which an erroneous code word is corrected according to a program example as shown in the flowchart of FIG.
第3図示のフローチヤートは、プログラムがス
テツプ(1)より始まりステツプ(12)から再びステツプ
(1)に戻るループをなしており、誤りのある語を誤
りのない語の間で直線補間して修正するプログラ
ムを示している。 In the flowchart shown in Figure 3, the program starts from step (1) and starts again from step (12).
It shows a program that loops back to (1) and corrects erroneous words by linearly interpolating them between non-erroneous words.
まず、ステツプ(1)でレジスタ41の内容を
CPUが読み込み(ロード命令によりアキユムレ
ータへロードし)、ステツプ(2)で誤りビツトの有
無を調べ(誤りビツトを最上位ビツトにロードさ
せ、左シフト命令によりキヤリへ送り、キヤリに
よる条件ブランチをさせる)、誤りがあればステ
ツプ(3)以下の修正処理を行ない、誤りがなければ
ステツプ(1)へ戻る。 First, in step (1), the contents of register 41 are
The CPU reads it (loads it to the accumulator using the load instruction) and checks whether there is an error bit in step (2) (loads the error bit into the most significant bit, sends it to the carry using the left shift instruction, and performs a conditional branch using the carry). If there is an error, perform the correction process from step (3) onwards, and if there is no error, return to step (1).
ステツプ(3)では、読み込んだ誤りのある符号語
のアドレスを記憶させる(アキユムレータを右シ
フトして内容を戻した後にインデツクスレジスタ
へロードしRAM53へもストアする)。ステツ
プ(4)は誤りのある符号語とその後の誤りのない符
号語とが書込まれた後で修正処理が行なわれるよ
うにするための時間待ちであり(一定の数値をロ
ードし、数値1づつ引いてゼロになるまで繰返す
という無駄な計算を行なわせる)、ステツプ(5)で
はステツプ(1)と同様の操作で今度はメモリ2にお
けるRAM21の内容をロードし、次いで最下位
におかれた誤りビツトを右シフトによつて調べ、
アドレスはインデツクス修飾により順に指定し、
誤りの連続個数Cを得る。この時、誤りのある符
号語の誤りビツトは0にして計算されないように
する。ステツプ(6)で誤りのある符号語を挾む前後
の符号語の値A,Bをアキユムレータへロードし
て、減算命令によりその差B−A=Sを得る。 In step (3), the address of the read code word containing the error is stored (after shifting the accumulator to the right and returning the contents, it is loaded into the index register and also stored into the RAM 53). Step (4) is a wait for a period of time so that the correction process can be performed after the erroneous codeword and the subsequent non-erroneous codeword have been written (loading a constant number, In step (5), the contents of RAM 21 in memory 2 are loaded using the same operation as in step (1), and then the contents are placed at the bottom. Examine the erroneous bits by right-shifting,
Addresses are specified in order by index qualification,
Obtain the number C of consecutive errors. At this time, the error bit of the code word containing the error is set to 0 so that it is not calculated. In step (6), the values A and B of the code words before and after the erroneous code word are loaded into the accumulator, and the difference BA=S is obtained by a subtraction instruction.
さらに、ステツプ(7)でSを(C+1)で割り、
差分Dを得る。そして、ステツプ(8)において、誤
りのある符号語は、それらのアドレス位置へ順
に、(A+D),(A+2D),…という形でストア
して、修正した値の符号語におきかえる。 Furthermore, in step (7), divide S by (C+1),
Obtain the difference D. Then, in step (8), the erroneous code words are stored in the address locations in the form (A+D), (A+2D), . . . and replaced with code words of corrected values.
ステツプ(9)〜(11)では、このあとに書込まれたで
あろう誤りのある符号語を探がすべく、既述した
ステツプ(5)と同様の操作を行ない、誤りビツトが
1でなければ、ステツプ(1)で得たアドレスと比較
しながらRAM21のアドレス指定を一巡しない
範囲でステツプ(9)を繰返して行ない、誤りが見つ
かればステツプ(5)へ分岐して、既述した修正処理
をステツプ(5)〜(8)で行なう。ステツプ(11)で一巡し
ても誤りがなければ、ステツプ(12)でレジスタ41
の誤りビツトをストア命令によりリセツトして再
びステツプ(1)へ戻る。 In steps (9) to (11), in order to search for code words with errors that may have been written after this, the same operation as in step (5) described above is performed, and if the error bit is 1, If not, repeat step (9) without specifying the RAM 21 address one cycle while comparing the address obtained in step (1). If an error is found, proceed to step (5) and make the corrections described above. Processing is performed in steps (5) to (8). If there is no error after going through one cycle in step (11), register 41 is returned in step (12).
The error bit is reset by the store instruction and the process returns to step (1).
このような修正処理を行なうことにより、誤り
のある語をその前後の符号語の値から直線補間に
よつて修正し、その結果、雑音の少ない再生音の
得られる信号とすることができる。 By performing such a correction process, an erroneous word can be corrected by linear interpolation from the values of the code words before and after the word, and as a result, a signal from which reproduced sound with less noise can be obtained can be obtained.
第4図は上記した第3図示のフローチヤートで
示されているプログラムに従つて修正が行なわれ
る場合の一例波形を示す波形図であつて、第4図
a,b図において、点線で示す波形は原信号波
形、第4図a図中の白丸印しは再生出力のサンプ
ル値であり、また、第4図b図中の白丸印しは誤
りのある符号語がその前後の符号語の値から直線
補間によつて修正された場合の結果を示す。 FIG. 4 is a waveform diagram showing an example of waveforms when correction is performed according to the program shown in the flowchart shown in FIG. is the original signal waveform, the white circles in Figure 4a are the sample values of the reproduced output, and the white circles in Figure 4b are the values of the code words before and after the erroneous code word. The results are shown when the results are corrected by linear interpolation.
第4図a,b図示の波形図より明らかなよう
に、図中でαの部分の修正は良好であるが、図中
でβの部分の修正は原信号に対して大きな誤差を
生じているものとなつている。 As is clear from the waveform diagrams shown in Figures 4a and b, the correction of the part α in the figure is good, but the correction of the part β in the figure causes a large error with respect to the original signal. It has become a thing.
第5図のフローチヤートは、第4図中のβの部
分の修正が良好な状態となるように、誤りのある
符号語の修正の仕方を直線補間よりも改善するた
めに、既述した第3図示のフローチヤートにおけ
るステツプの一部を変更したフローチヤートを示
し、第6図b図{第6図a図は第4図a図と同
じ}に、この変更された修正法に従つて誤りのあ
る符号語が修正された場合の結果を示す。 The flowchart in FIG. 5 uses the previously described method to improve the method of correcting erroneous code words compared to linear interpolation so that the correction of the part β in FIG. 4 is in a good state. 3 shows a flowchart in which some of the steps in the flowchart shown in FIG. The result is shown when a certain codeword is modified.
第5図に示すフローチヤート中のステツプ
(13)〜(16)において、ステツプ(13)は既述
した第3図に示すフローチヤート中のステツプ(7)
に後続され、符号語Aとこの符号語Aの直前の正
しい符号語との値の差分をΔA、符号語Bとこの
符号語Bの直後の正しい符号語との値の差分を
ΔBとすると、このステツプ(13)で差分Δと差
分ΔBとを得て次のステツプ(14)に与え、ステ
ツプ(14)では差分△と差分ΔBとが同符号の時
は既述した第3図示のフローチヤート中のステツ
プ(8)に続け、また、差分△と差分ΔBとが異符号
の時は、ステツプ(15)に続ける。ステツプ15
では誤り個数Cと、BとAとの差Dとから、
ΔΔ=(D−△)/{[(C+1)/2]+1}を
得る。前式において、[ ]はガウスの記号であ
り、[(C+1)/2]は小数点を切捨てた整数と
なる。 In steps (13) to (16) in the flowchart shown in FIG. 5, step (13) is the same as step (7) in the flowchart shown in FIG.
, and if the difference in value between codeword A and the correct codeword immediately before this codeword A is ΔA, and the difference in value between codeword B and the correct codeword immediately after this codeword B is ΔB, then In this step (13), the difference Δ and the difference ΔB are obtained and given to the next step (14), and in the step (14), when the difference Δ and the difference ΔB have the same sign, the flowchart shown in the third figure described above is applied. Continue to step (8) in the middle, and if the difference Δ and the difference ΔB have different signs, continue to step (15). Step 15
Then, from the number of errors C and the difference D between B and A, ΔΔ=(D−Δ)/{[(C+1)/2]+1} is obtained. In the above equation, [ ] is a Gauss symbol, and [(C+1)/2] is an integer with the decimal point omitted.
ΔΔは第7図a,b図に示すように、誤りのあ
る語の連続区間の中程で傾斜がAとBとを結ぶ線
に平行となるように、差分(X1−A),(X2−
X1)…が一定値ΔΔだけ変化するようにし、前記
した中程から先は中程から前へもどるXi(i=1,
2…〔C/2〕)と結ぶ線が線ABと平行となる
ようにとる。 As shown in Figure 7a and b, ΔΔ is calculated by dividing the difference (X 1 −A), ( X 2 −
X 1 )... changes by a constant value ΔΔ, and from the middle point onward returns from the middle point to the front. X i (i=1,
2...[C/2]) Take the line so that it is parallel to line AB.
次いで、ステツプ(16)では、推定値
X1=A+D+ΔΔ,X2=X1+D+2ΔΔ…
Xc=X1+D(C−1)/(C+1),Xc-1
=X2+D(C−2)/(C+1)…
を誤りのある符号語におきかえて、既述した第3
図示のフローチヤートのステツプ(9)へ移行させ
る。ステツプ(9)以降のステツプは既述した第3図
の場合と同様である。 Next, in step (16), the estimated values X 1 =A + D+ΔΔ, X 2 =X 1 + D +2ΔΔ ... )/(C+1)... by the code word with the error, and the third
Proceed to step (9) of the illustrated flowchart. The steps after step (9) are the same as in the case of FIG. 3 described above.
ステツプ(14)において△とΔBとの符号が等
しい場合にステツプ(8)へ移行させるのには、この
場合には直線補間の方が尤度の高い波形が得られ
るためである。 The reason for moving to step (8) when the signs of Δ and ΔB are equal in step (14) is that in this case, a waveform with higher likelihood can be obtained by linear interpolation.
第8図は、信号周波数を横軸にとり、また、雑
音の大きさを縦軸にとつて、従来の前値ホールド
方式の場合(第8図中の曲線)と、直線近似の
場合(第8図中の曲線)と、2次近似と直線近
似との組合わせの場合(第8図中の曲線)とに
おける聴感上の評価結果を示した曲線図である。 Figure 8 shows the case of the conventional prior value hold method (the curve in Figure 8) and the case of the linear approximation (the curve in Figure 8), with the signal frequency on the horizontal axis and the magnitude of the noise on the vertical axis. FIG. 8 is a curve diagram showing the audible evaluation results in the case of a combination of quadratic approximation and linear approximation (curve in FIG. 8); FIG.
以上、詳細に説明したところから明らかなよう
に、本発明の符号語の誤りを修正する装置におい
ては、連続した誤りを単一の誤りと共に誤りのあ
る符号語の前後近傍の誤りのない符号語の示す値
から推定して補間し、雑音の少ない再生出力信号
が得られるようにしたものであつて、本発明によ
れば誤り検出符号を用いるだけで、誤りによる雑
音が殆んど検出されなくなるような修正を、簡単
な構成の装置によつて実現することができ、ま
た、本発明によれば誤り訂正のための符号を加え
ることによる効率低下や2重記録による効率低
下、訂正装置のコストの上昇などを防ぐことがで
きるという利点が得られる。 As is clear from the above detailed explanation, in the code word error correction device of the present invention, consecutive errors can be corrected by not only single errors but also error-free code words before and near an erroneous code word. According to the present invention, by simply using an error detection code, almost no noise due to errors is detected. Such corrections can be realized by a device with a simple configuration, and according to the present invention, there is no reduction in efficiency due to addition of a code for error correction, reduction in efficiency due to double recording, and cost of the correction device. This has the advantage of being able to prevent a rise in
第1図は本発明の符号語の誤りを修正する装置
の一実施態様のもののブロツク図、第2図a〜f
図は動作説明用波形図、第3図及び第5図はフロ
ーチヤート、第4図a,b図及び第6図a,b図
ならびに第7図a,b図は説明用の波形図、第8
図は聴感上の評価を示す曲線図である。
1…スイツチ回路、2…メモリ、3…アドレス
カウンタ、4…ノイズアドレスレジスタ、5…修
正装置。
FIG. 1 is a block diagram of one embodiment of the apparatus for correcting codeword errors of the present invention; FIGS. 2a-f
The figure is a waveform diagram for explaining the operation, FIGS. 3 and 5 are flowcharts, FIGS. 8
The figure is a curve diagram showing auditory evaluation. DESCRIPTION OF SYMBOLS 1... Switch circuit, 2... Memory, 3... Address counter, 4... Noise address register, 5... Correction device.
Claims (1)
設定されている書込み期間と読出し期間とに、そ
れぞれ書込みアドレス信号と読出しアドレス信号
とを送出し、かつ、互に予め定められたアドレス
間隔を保持した状態で巡回する如くになされた書
込みアドレスカウンタと読出しアドレスカウンタ
との動作によつて、入力された次々の符号語がメ
モリに一時記憶されて前記した予め定められたア
ドレス間隔と対応する時間だけの遅延を受けて出
力されるようにし、また、前記した書込みアドレ
スカウンタと読出しアドレスカウンタとにおける
ある1つの書込み期間と読出し期間とが終了した
時点から次の書込み期間が開始する時点までの期
間を誤りの修正期間として、誤り発生検出信号を
うけて入力信号の変化態様に応じて、誤り修正の
ロジツクが切換えられるようになされた修正装置
を起動するトリガ機能と誤りのある符号語が記憶
されているメモリのアドレスを一時記憶する機能
とを有するレジスタの出力によつて修正装置にお
ける修正動作を開始させ、修正装置が誤りのある
符号語とその前後近傍の誤りのない符号語をメモ
リから読出して誤りのある符号語をその前後近傍
の誤りのない符号語の示す値から推定した値に修
正し、その修正された符号語をメモリにおける誤
りのある符号語のアドレス位置に書込み、読出し
アドレスカウンタによつて誤りのある符号語のア
ドレスが指定される以前にその誤りのある符号語
が修正された符号語となされるようにして、修正
された符号語が出力されるようにしてなる符号語
の誤りを修正する装置。 2 修正装置として1個または連続する複数個の
誤りのある符号語が存在している区間の前と後の
それぞれにおける誤りのない符号語A,Bの示す
値と、符号語A,Bの前または後の誤りのない符
号語とのそれぞれの差分ΔA,ΔBとの関係が同
符号のときは、符号語A,B間を直線補間によつ
て修正し、前記した差分ΔA,ΔBとの関係が異
符号のときは、誤りのある語の連続区間の中程ま
での個数でもつて前記した符号語A及び符号語B
とを結んだときに相当する傾斜と差分ΔAまたは
差分ΔBの傾斜との差を分割した変化率により誤
りのある語を2次近似によつて修正するように構
成されたものを用いた特許請求の範囲第1項に記
載の符号語の誤りを修正する装置。[Scope of Claims] 1. A write address signal and a read address signal are respectively sent during a write period and a read period that are set in synchronization with the sampling period for the original signal, and each address is set to a predetermined address. By the operation of the write address counter and the read address counter, which are configured to cycle while maintaining the interval, successive input code words are temporarily stored in the memory and correspond to the predetermined address interval. from the time when one write period and read period in the write address counter and read address counter end to the time when the next write period starts. The error correction period is set as an error correction period, and a trigger function is provided to activate a correction device in which the error correction logic is switched according to the variation of the input signal in response to an error occurrence detection signal. A correction operation is started in the correction device by the output of a register having a function of temporarily storing the stored memory address, and the correction device stores the error code word and the error-free code words in the vicinity before and after it in the memory. Correct the erroneous code word to a value estimated from the values of the error-free code words in its vicinity, write the corrected code word to the address position of the erroneous code word in memory, and read it. Before the address of the erroneous code word is designated by the address counter, the erroneous code word is made into a corrected code word, and the corrected code word is output. A device for correcting codeword errors. 2. As a correction device, the values indicated by error-free code words A and B before and after the interval in which one or several consecutive erroneous code words exist, and the values before code words A and B. Or, if the relationships between the differences ΔA and ΔB with the later error-free codewords are of the same sign, the codewords A and B are corrected by linear interpolation, and the relationship with the differences ΔA and ΔB described above is corrected by linear interpolation. If they have different signs, the number of erroneous words up to the middle of the continuous interval will be the same as code word A and code word B.
A patent claim using a device configured to correct an erroneous word by quadratic approximation based on a rate of change obtained by dividing the difference between the slope corresponding to when connecting the difference ΔA or the slope of the difference ΔB A device for correcting errors in code words according to scope 1.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP68378A JPS5493940A (en) | 1978-01-08 | 1978-01-08 | Correcting unit of code word error |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP68378A JPS5493940A (en) | 1978-01-08 | 1978-01-08 | Correcting unit of code word error |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS5493940A JPS5493940A (en) | 1979-07-25 |
| JPS6339990B2 true JPS6339990B2 (en) | 1988-08-09 |
Family
ID=11480550
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP68378A Granted JPS5493940A (en) | 1978-01-08 | 1978-01-08 | Correcting unit of code word error |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS5493940A (en) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS59218613A (en) * | 1983-05-27 | 1984-12-08 | Hitachi Ltd | PCM circuit |
| JP2574740B2 (en) * | 1983-12-26 | 1997-01-22 | 株式会社日立製作所 | PCM signal reproduction device |
| JP2644506B2 (en) * | 1987-10-16 | 1997-08-25 | キヤノン株式会社 | Image processing device |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4030129A (en) * | 1976-06-14 | 1977-06-14 | Lase Industries | Pulse code modulated digital audio system |
| JPS598887A (en) * | 1982-07-04 | 1984-01-18 | 不二サッシ株式会社 | Mold frame in sash attaching method |
-
1978
- 1978-01-08 JP JP68378A patent/JPS5493940A/en active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS5493940A (en) | 1979-07-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0129849B1 (en) | Error correction method and system | |
| US4641309A (en) | Method and apparatus for selectively compensating burst errors of variable length in successive digital data words | |
| JPS6035373A (en) | Data compression and restoration system | |
| JPH0421944B2 (en) | ||
| JPH0320832B2 (en) | ||
| JPS6339990B2 (en) | ||
| KR100193477B1 (en) | Information transmission device | |
| EP0176099B1 (en) | Method and apparatus for error correction | |
| US4982286A (en) | Video signal processing device performing freezing and frame synchronization functions | |
| KR960002608B1 (en) | Time base correction device of digital signal | |
| US4953034A (en) | Signal regeneration processor with function of dropout correction | |
| JPS598887B2 (en) | Code error compensation circuit device in digital recording device | |
| KR910003378B1 (en) | Digital signal demodulation and playing device | |
| JPH1083356A (en) | Method and device for hiding error in stored digital data | |
| JPS6131549B2 (en) | ||
| JP2624739B2 (en) | Recording / playback method | |
| JPH043525A (en) | Code error correction device | |
| JP2778024B2 (en) | Address playback device | |
| JPH0363973A (en) | Error corrector | |
| JPH0473335B2 (en) | ||
| SU1487103A1 (en) | DYNAMIC STORAGE DEVICE WITH CORRECTION OF ERRORS | |
| JPS6342896B2 (en) | ||
| JPH0450675B2 (en) | ||
| JPS6320554A (en) | Memory error detecting and correcting circuit | |
| JPH0465475B2 (en) |