JPH02265329A - Code inverse converter - Google Patents

Code inverse converter

Info

Publication number
JPH02265329A
JPH02265329A JP8565889A JP8565889A JPH02265329A JP H02265329 A JPH02265329 A JP H02265329A JP 8565889 A JP8565889 A JP 8565889A JP 8565889 A JP8565889 A JP 8565889A JP H02265329 A JPH02265329 A JP H02265329A
Authority
JP
Japan
Prior art keywords
bits
code
bit
word
decoding
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
JP8565889A
Other languages
Japanese (ja)
Inventor
Fumiyuki Mikami
三上 文之
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP8565889A priority Critical patent/JPH02265329A/en
Publication of JPH02265329A publication Critical patent/JPH02265329A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/42Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory
    • H03M7/425Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory for the decoding process only

Abstract

PURPOSE:To decrease the capacity of a lookup table by splitting an inputted code word into r-set of blocks in the unit of n-bit, decoding tentatively the code cord corresponding to each block into a bit number less than the n-bit of a basic code word length and decoding the result finally into a data word. CONSTITUTION:A bit string 10 of an input code word is inputted sequentially to a shift register 11, fed to a latch circuit 12, in which the signal is converted from a serial signal into a parallel signal. Moreover, a head 6-bit signal in 30 bits is sent to a bank selection circuit 13 and the remaining 25-bit is sent to a tentative coding circuit 14. The tentative decoding circuit 14 consists of 5 identical circuits and each circuit tentatively decodes a basic code word for each block in 5-bit. In total 15-bit except a 3-bit corresponding to the head block from the tentative decoded word is sent as an address signal of ROMs 21-25 being final decoding means. Thus, the capacity of the ROM for decoding is considerably reduced.

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明はデジタル信号の伝送または記録などに際し、デ
ジタルビット列からなるデータ列を復号する符号逆変換
装置に関するものである。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a code inversion device that decodes a data string consisting of a digital bit string when transmitting or recording a digital signal.

[従来の技術] デジタル信号を光ディスク、磁気ディスク等に記録する
際に用いられる記録符号は、記録の高密度化あるいはP
LL等の周辺技術の進歩に伴ない種々の方法が開発され
てきている。このような符号化は、記録すべき2進デー
タを、記録媒体を含む記録再生系の特性に適した2進符
号語パターンに変換するものである。この符号に要求さ
れる性質としては、特に以下の3点を挙げることができ
る。
[Prior Art] Recording codes used when recording digital signals on optical disks, magnetic disks, etc.
Various methods have been developed as peripheral technologies such as LL progress. Such encoding converts binary data to be recorded into a binary code word pattern suitable for the characteristics of the recording/reproducing system including the recording medium. In particular, the following three points can be mentioned as properties required for this code.

(1)最少磁化反転間隔T m l nこのT m l
 nは、記録再生系の帯域制限の影習を受けにくくする
ため、できるだけ大きいことが望ましい。
(1) Minimum magnetization reversal interval T m l nThis T m l
It is desirable that n be as large as possible in order to make it less susceptible to the effects of band limitations in the recording/reproducing system.

(2)最大磁化反転間隔T、□ このT、1.は、セルフクロック機能を得るために、再
生データからクロック情報が抽出できるように、小さい
値であることが望ましい。
(2) Maximum magnetization reversal interval T, □ This T, 1. is preferably a small value so that clock information can be extracted from reproduced data in order to obtain a self-clock function.

(3)検出窓幅T。(3) Detection window width T.

再生信号のジッタや波形干渉によるピークシフト等の時
間軸変動に対する余裕度を表わすもので、大きな値であ
ることが望ましい。
It represents the margin against time axis fluctuations such as jitter of the reproduced signal and peak shift due to waveform interference, and a large value is desirable.

通常、記録符号としてはランレングスリミテッド(以下
、RLLと略す)符号が用いられることが多い、RLL
符号は変換後の符号ビット列内の“1“と”1”の間の
“O“のラン数の最小値をd、最大値をk、基本データ
語長をn、基本符号語長をm、符号語長をr−・翼とし
て(d、k。
Usually, a run-length limited (hereinafter abbreviated as RLL) code is often used as a recording code.
For the code, the minimum value of the number of runs of "O" between "1" and "1" in the code bit string after conversion is d, the maximum value is k, the basic data word length is n, the basic code word length is m, Let the codeword length be r−·wings (d, k.

n、m、rsa工)符号と呼ばれる。これらのパラメー
タを用いて、T□l HT 1n + T ’IIは次
のように表される。
n, m, rsa engineering) code. Using these parameters, T□l HT 1n + T'II is expressed as follows.

T mln = (d ” 1 ) T VT、、、=
 (k+ l )T。
T mln = (d ” 1) T VT,,, =
(k+l)T.

T、= (m/n)T ここで、Tはデータ語の1ビツト長を示す。T, = (m/n)T Here, T indicates the 1-bit length of the data word.

このRLL符号のなかでも、可変長符号は固定長符号に
比べて、より少ない符号語長及び符号語数で同程度の性
能を実現できるなど高密度化に適している。
Among these RLL codes, variable length codes are suitable for high density, as they can achieve the same level of performance with a smaller code word length and number of code words than fixed length codes.

記録符号を用いるためには、符号語をデータ語に逆変換
する復号化装置が必要となるが、この実現方法としては
ゲート回路の組合わせで構成する方法と、入力符号語ビ
ット列をアドレス信号として、データ語ビット列を書込
んだROMにアクセスする方法とがある。(d、に、m
、n。
In order to use a recording code, a decoding device is required to convert the code word back into a data word, but this can be achieved by constructing a combination of gate circuits, or by using an input code word bit string as an address signal. There is a method of accessing a ROM in which a data word bit string is written. (d, ni, m
, n.

r□8)符号の場合、ROMを用いるとその容量v1は
、y 、 = 2 rssx ′。’rmax’mピッ
トドなる。なお、可変長符号においては、ワード同期を
とるために何ビットの符号語を逆変換したかの情報が必
要となり、通常これもROMに書込んでおくが、このメ
モリ量は除いて考えることにする。
r□8) In the case of a code, if a ROM is used, its capacity v1 is y, = 2 rssx'. 'rmax'm pitted. In addition, in variable length codes, information on how many bits of the code word have been inversely converted is required in order to achieve word synchronization, and this is also normally written in the ROM, but this memory amount will not be considered when considering it. do.

第2図(A)〜(D)は(4,19,2,5゜6)符号
の場合を示す図である。ここでは、基本データ語長が2
ビツト、基本符号語長が5ビツト、符号語中における“
0“のラン数の最小値が4、最大値が19である。
FIGS. 2(A) to 2(D) are diagrams showing the case of (4, 19, 2, 5° 6) code. Here, the basic data word length is 2.
bit, basic codeword length is 5 bits, “
The minimum value of the number of runs of 0" is 4, and the maximum value is 19.

従来の復号化回路は、例えば第12図のように構成され
る。ここでは、入力されるビット列は、m’raax 
 (5X6=30)より30ビツトのシフトレジスタに
入力され、同じく30ビツトからなるラッチ回路にラッ
チされて、30ビット単位でROMテーブル141によ
り、最大n”rma*(2X6=12)ビットに復号さ
れる。従って、必要なROMテーブル141の容量Vは
、■=230・12〜1.3X10”(ビット)となる
A conventional decoding circuit is configured as shown in FIG. 12, for example. Here, the input bit string is m'raax
(5X6=30), it is input into a 30-bit shift register, latched into a latch circuit also consisting of 30 bits, and decoded into a maximum of n''rma* (2X6=12) bits by the ROM table 141 in 30-bit units. Therefore, the required capacity V of the ROM table 141 is 2=230.12 to 1.3×10'' (bits).

[発明が解決しようとしている課題] 一般に、符号語長nを長くすると、T1゜。[Problem to be solved by the invention] Generally, when the codeword length n is increased, T1°.

T 1jllX + TVのいずれかを改善できる。上
述のように、可変長符号においても高密度化を計るため
に、より良い性能の符号を求めると、その符号語長、符
号語数が共に大きくなってしまう、このため、ROMを
用いて復号化回路を構成すると、その容量が極めて大き
くなり実用的でないという不具合が生じる。
Either T 1jllX + TV can be improved. As mentioned above, when seeking a code with better performance in order to increase the density of variable-length codes, both the code word length and the number of code words become large. Therefore, decoding using ROM is necessary. When the circuit is constructed, the problem arises that its capacity becomes extremely large, making it impractical.

本発明は上記従来例に鑑みてなされたもので、(d、に
、m、n、rahax )復号化に使用されるルックア
ップテーブルの容量を減少させた符号逆変換装置を提供
することを目的とする。
The present invention has been made in view of the above conventional example, and an object of the present invention is to provide a code inversion device that reduces the capacity of a lookup table used for (d, ni, m, n, rahax) decoding. shall be.

[課題を解決するための手段] 上記目的を達成するために本発明の符号逆変換装置は以
下の様な構成からなる。即ち、基本データ語長をmビッ
ト、基本符号語長をnビットとするとき、所定数rに対
し前記基本データ語のに倍ビットのデータ語を、前記基
本符号語長のに倍に変換した符号語を逆変換する符号逆
変換装置であって、入力した符号語をnビット単位にr
個のブロックに分割する分割手段と、前記ブロックのそ
れぞれに相当する符号語を前記nビットよりも少ないビ
ット数に仮復号する仮復号手段と、前記ブロックのうち
の少なくとも先頭ブロックのビットパターンをもとに、
仮復号されたビットパターンを入力して最終的にデータ
語に復号する復号化手段とを有する。
[Means for Solving the Problems] In order to achieve the above object, the code inversion device of the present invention has the following configuration. That is, when the basic data word length is m bits and the basic code word length is n bits, for a predetermined number r, a data word with twice the bits of the basic data word is converted to twice the basic code word length. A code inverse conversion device that inversely converts a code word, the input code word being r
dividing means for dividing the blocks into blocks; temporary decoding means for temporarily decoding a code word corresponding to each of the blocks into a number of bits smaller than the n bits; Toni,
and decoding means for inputting the temporarily decoded bit pattern and finally decoding it into a data word.

[作用] 以上の構成において、入力した符号語をnビット単位に
r個のブロックに分割し、それら分割されたブロックの
それぞれに相当する符号語を、基本符号語長のnビット
よりも少ないビット数に仮復号する。そして、それらブ
ロックのうちの少なくとも先頭ブロックのビットパター
ンをもとに、仮復号されたビットパターンを入力して、
最終的にデータ語に復号するように動作している。
[Operation] In the above configuration, the input code word is divided into r blocks in units of n bits, and the code word corresponding to each of the divided blocks is divided into bits smaller than the basic code word length of n bits. Temporarily decode into numbers. Then, input the temporarily decoded bit pattern based on the bit pattern of at least the first block among those blocks,
It operates to finally decode it into data words.

[実施例] 以下、添付図面を参照して本発明の好適な実施例を詳細
に説明する。
[Embodiments] Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

この実施例を説明する前に、まず最初に本発明の詳細な
説明する。
Before explaining this embodiment, the present invention will first be explained in detail.

一般に、可変長符号の基本符号語数は、基本符号語長で
あるnビットで表される2進符号数よりはるかに小さい
、つまり、2進nビツトでは1ビツトで2個の符号を表
現できるが、RLL符号においては符号語中の“1”と
“1”の間の“0”のラン数が、最小値(d)、最大値
(k)共に制限される。これにより、例えば第2図に示
した(4,19,2.5.6)符号では第3図に示した
6個の符号語が基本符号語となる。この符号は符号語長
n=5であり、32個の数値を表現できるため、その分
冗長性を有していることになる。
In general, the basic number of code words of a variable-length code is much smaller than the number of binary codes represented by n bits, which is the basic code word length.In other words, with binary n bits, two codes can be expressed with one bit. , RLL code, the number of runs of "0" between "1" and "1" in a code word is limited in both the minimum value (d) and the maximum value (k). As a result, for example, in the (4, 19, 2.5.6) code shown in FIG. 2, the six code words shown in FIG. 3 become basic code words. This code has a code word length n=5 and can express 32 numerical values, so it has redundancy accordingly.

ここで、基本符号語パターン数をpとすると、pはq 
(= [lagzpl + 1 )ビット([]はガウ
ス記号)の2進数で基本符号語パターンの中のどれかを
一意に指定することができる。つまり、入力符号語を直
接アドレス信号とせずに、nビットの各ブロック毎にq
ビットのコードに仮復号し、仮復号した結果の合計r1
1、・qビットをアドレス信号とすれば、復号化に要す
るROMの容量v2は、 V 2 =2 ”””−rmaw  ” m  (ビッ
ト)となる、さらに、先頭から8個のブロック内のビッ
トパターンによって、残りの(f”sax  S)ブロ
ックからの仮復号出力((r、□−8)・q)(ビット
)をアドレスとして入力する22個のROMを選択すれ
ば必要となるROM容坦■コは、■ !  =  (r
  mat     S  )  r  ”−暑”−”
  ”  ”  r  、ax  m(ビット)となり
、入力符号語を直接アドレス信号とする場合に比べてR
OM容量の比は、Vs/V+= (r  、□s  )  2  (r * a x −
* l °q−1”1翼°nとなる。
Here, if the number of basic codeword patterns is p, then p is q
Any one of the basic code word patterns can be uniquely specified using a binary number of (= [lagzpl + 1) bits ([ ] is a Gaussian symbol). In other words, instead of using the input code word directly as an address signal, q
Temporarily decoded into a bit code, and the total of the temporary decoded results r1
If 1, q bits are used as an address signal, the ROM capacity v2 required for decoding is V 2 = 2 """ - rmaw "m (bits).Furthermore, the bits in the first eight blocks Depending on the pattern, select 22 ROMs into which the temporary decoding output ((r, □-8)・q) (bit) from the remaining (f”sax S) block is input as an address, and the required ROM capacity will be reduced. ■ko is■! = (r
mat S ) r ”-hot”-”
” ” r , ax m (bits), and compared to the case where the input code word is directly used as an address signal, R
The ratio of OM capacitance is Vs/V+= (r, □s) 2 (r * a x −
* l °q-1” 1 blade °n.

[復号化回路の説明 (第1図〜第8図)]以下、本実
施例を実現するための構成を(4゜19.2,5.6)
符号を例にとり、図面に基づいて説明する。
[Description of decoding circuit (Figs. 1 to 8)] The configuration for realizing this embodiment will be described below (4°19.2, 5.6).
A description will be given based on the drawings, taking a code as an example.

この符号は基本データ語長m=2.基本符号語長n=5
.符号語長数r maM =6であり、T m l n
=2.0.T、、、=8゜O,T、=0.4である可変
長符号である。
This code has a basic data word length m=2. Basic codeword length n=5
.. The codeword length number r maM = 6, and T m l n
=2.0. It is a variable length code with T, , , = 8°O, T, = 0.4.

第1図は実施例の復号化回路の概略を示すブロック図で
ある。
FIG. 1 is a block diagram schematically showing a decoding circuit according to an embodiment.

入力符号語のビット列10は、30ビツトのシフトレジ
スタ11に順次入力され、同じく30ビツトからなるラ
ッチ回路12に送られて、シリアル信号よりパラレル信
号に変換される。また、30ビツトのうちの先頭の5ビ
ット信号は、バンク選択回路13に送出され、残りの2
5ビツトは仮復号化回路14に送られる。
The bit string 10 of the input code word is sequentially input to a 30-bit shift register 11, and sent to a latch circuit 12 also consisting of 30 bits, where the serial signal is converted into a parallel signal. Furthermore, the first 5 bits of the 30 bits are sent to the bank selection circuit 13, and the remaining 2 bits are sent to the bank selection circuit 13.
The 5 bits are sent to the temporary decoding circuit 14.

仮復号化回路14は、5個の同じ回路により構成され、
各回路は5ビツトのブロック毎に基本符号語を仮復号し
ている。ここで、前述したように、基本符号語のパター
ン数が6であるから、[1ogz61+1・3より仮復
号語のビット数は3ビツトとなる。この仮復号語と基本
符号語との関係を示したのが第3図である。ここでは6
種類の基本符号語に3ビツトのコードを割り当てている
。8種類の3ビツトのコードをどのように割り当てるか
は任意であるが、ここでは第3図に従うことにする。
The temporary decoding circuit 14 is composed of five identical circuits,
Each circuit temporarily decodes the basic code word for each 5-bit block. Here, as mentioned above, since the number of patterns of the basic code word is 6, the number of bits of the temporary decode word is 3 bits from [1ogz61+1.3. FIG. 3 shows the relationship between this provisional decoded word and the basic coded word. here 6
A 3-bit code is assigned to each type of basic code word. Although it is arbitrary how to allocate the eight types of 3-bit codes, the method shown in FIG. 3 will be followed here.

仮復号化回路14はこの対応に従って、ブロック毎にそ
れぞれ3ビツトのコード(仮復号語)を出力する。つま
り、第2図(A)〜(D)に示した符号語のそれぞれを
5ビツトずつに区切り、第3図に従って置き換えれば、
仮復号語とデータ語との対応が得られる。その一部を第
4図に示す。
The temporary decoding circuit 14 outputs a 3-bit code (temporary decoded word) for each block according to this correspondence. In other words, if each of the code words shown in FIGS. 2(A) to (D) is divided into 5 bits and replaced according to FIG.
Correspondence between temporary decoded words and data words can be obtained. A part of it is shown in Figure 4.

この仮復号語から先頭のブロックに対応する3ビツトを
除いた合計15ビツト(3ビツトX5)が最終復号化手
段であるROM21〜25のアドレス信号として送られ
る。このようにして、第4図に示すように仮復号語(ア
ドレス)からデータ語(ROMに記憶されているデータ
)への復号が行なわれる。
A total of 15 bits (3 bits x 5), excluding 3 bits corresponding to the first block from this provisional decoded word, are sent as address signals to ROMs 21 to 25, which are the final decoding means. In this way, the temporary decoded word (address) is decoded into a data word (data stored in the ROM) as shown in FIG.

5ビツトの基本符号語は、第3図に示すように6種類あ
るため、それに対応してROMのそれぞれは6個のバン
クを必要とするが、この中のどのバンクを選択するかは
バンク選択回路13によって決定される。なお、(4,
19,2,5,6)符号の場合、第2図からも分かるよ
うに、先頭のブロックの5ビツトが全て“0”である符
号語は存在しないため、ROMのバンクは5個となる。
Since there are six types of 5-bit basic codewords as shown in Figure 3, each ROM requires six banks correspondingly, but which bank to select from among these is determined by bank selection. Determined by circuit 13. In addition, (4,
In the case of the 19,2,5,6) code, as can be seen from FIG. 2, there is no code word in which all five bits of the first block are "0", so there are five ROM banks.

これにより、バンク選択回路13では先頭の5ビツトが 10000のとき、バンク1 01000のとき、バンク2 00100(7)とき、バンク3 00010のとき、バンク4 00001のとき、バンク5 を選択するものとする。As a result, the bank selection circuit 13 selects the first 5 bits. When 10000, bank 1 When 01000, bank 2 When 00100 (7), bank 3 When 00010, bank 4 When 00001, bank 5 shall be selected.

次に、最終復号に用いるROMの内容について第2図を
基に説明する。
Next, the contents of the ROM used for final decoding will be explained based on FIG. 2.

第2図から明らかなように、r宜>r+ とした場合、
5r、ビットの符号語が、5rzビツトの符号語の先頭
から5r、ビットに等しい場合がある0例えば、先頭の
5ビツトが“10000“である符号語を選んで第5図
に示す(この4個の符号語は全てバンク1に含まれる)
。このように、入力シフトレジスタ11内の先頭の5ビ
ツトが“10000” (対応する仮復号語は第3図よ
り“001”)の場合に、即座にデータ語“00”と復
号するわけにはいかず、語長の長い符号語を優先して照
合する必要がある。これをROM内のデータの配置で実
現するには、バンク1ではデータの配置を第6図のよう
にすればよい。図において、データビット中のXは任意
のビットである。
As is clear from Fig. 2, when r > r+,
The codeword of 5r, bits may be equal to the 5r, bits from the beginning of the codeword of 5rz bits. (all codewords are included in bank 1)
. In this way, when the first 5 bits in the input shift register 11 are "10000" (the corresponding provisional decoded word is "001" from FIG. 3), it cannot be immediately decoded as the data word "00". However, it is necessary to give priority to codewords with longer word lengths. In order to realize this by arranging the data in the ROM, the data may be arranged in bank 1 as shown in FIG. In the figure, X in the data bits is an arbitrary bit.

同様に、第7図は先頭の5ビツトが“ooo。Similarly, in FIG. 7, the first 5 bits are "ooo".

1“で始まる符号語と、それに対応する仮復号語及びデ
ータ語との対応を示す図である。また、第8図は第7図
に対応するバンク5でのROM25におけるデータ配置
を示す図である。
8 is a diagram showing the correspondence between code words starting with 1" and the corresponding temporary decoded words and data words. FIG. 8 is a diagram showing the data arrangement in the ROM 25 in bank 5 corresponding to FIG. 7. be.

ROM21〜25のそれぞれは前述したバンクに対応し
ており、ROM21はバンクlに、ROM22はバンク
2というように対応している。これらROMによりデー
タ語に変換された12ビツトの信号(全てのビットが確
定したデータ語とは限らない)は、12ビツトの出力用
シフトレジスタ17へ送られる。同時に、ROM21〜
25から何ビットの符号語を復号したかを示す情報がラ
ッチ信号発生回路15へ送られる。これにより、例えば
10ビツトの符号語(データ語の2語分)が変換された
ときには、入力用シフトレジスタ11にさらに新しく1
0ビツトの符号語が入力されたときに、ラッチ回路12
に次のラッチ信号が出力される。また、出力用シフトレ
ジスタ17に送られた符号語は、シリアル変換され1ビ
ツトずつ出力される。但し、第1図には示していないが
、出力用シフトレジスタ17には、入力用シフトレジス
タ11がIOビットシフトする間に出力用シフトレジス
タ17は4ビツトシフトするように構成されている。
Each of the ROMs 21 to 25 corresponds to the bank described above, with the ROM 21 corresponding to the bank 1, the ROM 22 corresponding to the bank 2, and so on. The 12-bit signals converted into data words by these ROMs (not all bits are necessarily fixed data words) are sent to a 12-bit output shift register 17. At the same time, ROM21~
25, information indicating how many bits of the code word have been decoded is sent to the latch signal generation circuit 15. As a result, for example, when a 10-bit code word (two data words) is converted, a new one is added to the input shift register 11.
When a 0-bit code word is input, the latch circuit 12
The next latch signal is output. Further, the code word sent to the output shift register 17 is serially converted and output bit by bit. However, although not shown in FIG. 1, the output shift register 17 is configured so that while the input shift register 11 shifts IO bits, the output shift register 17 shifts 4 bits.

[復号化例の説明 (第1図〜第9図)]第9図はデー
タ語“1001001100011110101100
“を符号化した符号語から、元のデータ語に復号する例
を示したものである。
[Explanation of decoding example (Figures 1 to 9)] Figure 9 shows the data word "1001001100011110101100"
This shows an example of decoding a code word encoded with " into the original data word.

図において、90は元のデータ語、91はその符号語列
を示している。また、92は仮復号化回路14により復
号された仮復号語を示している。
In the figure, 90 indicates the original data word, and 91 indicates its code word string. Further, 92 indicates a temporary decoded word decoded by the temporary decoding circuit 14.

この符号語列は入力ビツト列10として、30ビツトの
シフトレジスタ11に入力される。こうして、符号語列
91の左より30ビツトがシフトレジスタ11に入力さ
れると、ラッチ信号発生回路15よりラッチ信号がラッ
チ回路12に出力されて、シフトレジスタ11の30ビ
ツトがラッチ回路12にラッチされる。ここで、符号語
の先頭の5ビツト(97)がバンク選択回路13に入力
され、バンク1が選択される。また、仮復号化回路14
は後続の25ビツトを仮復号する。その復号結果は、9
3で示すように“000000101101000“ど
なっている。
This code word string is input to a 30-bit shift register 11 as an input bit string 10. In this way, when 30 bits from the left of the code word string 91 are input to the shift register 11, a latch signal is output from the latch signal generation circuit 15 to the latch circuit 12, and the 30 bits of the shift register 11 are latched into the latch circuit 12. be done. Here, the first five bits (97) of the code word are input to the bank selection circuit 13, and bank 1 is selected. In addition, the temporary decoding circuit 14
temporarily decodes the subsequent 25 bits. The decryption result is 9
As shown in 3, "000000101101000" is yelling.

この“0000001011旧000”がROM21(
バンクl)のアドレスとして入力されることにより、第
6図の(b)で示すように、データ語“100100x
xxx”に復号される。ここで、Xは任意のコードであ
るため、前半の6ビツト分のデータ語が確定したことに
なる。
This “0000001011 old 000” is stored in ROM21 (
As shown in FIG. 6(b), the data word “100100x
xxx". Here, since X is an arbitrary code, the data word for the first 6 bits is determined.

ここで、確定した6ビツトのデータ語は符号語の基本符
号語の3語分(15ビツト)に相当するため、シフトレ
ジスタ11では新に15ビツトの符号語がシフトインさ
れる。これにより、次にバンク選択回路13に入力され
る5ビツトは、98で示された符号語(00001)と
なり、バンク5が選択される。また、仮復号化回路14
には“0000100000100000000000
000”の25ビツトが入力される。仮復号化回路14
ではこの入力データを仮復号して、“10100θ00
1000000”の15ビツトをROM25(バンク5
)のアドレスとして出力する。このアドレスは、第8図
の(8)で示されたアドレスに対応しているため、これ
を復号したデータ語は“l100OIXXXXXX”と
なる(第9図の94)。
Here, since the determined 6-bit data word corresponds to three words (15 bits) of the basic code word of the code word, a new 15-bit code word is shifted into the shift register 11. As a result, the next 5 bits input to the bank selection circuit 13 become the code word (00001) indicated by 98, and bank 5 is selected. In addition, the temporary decoding circuit 14
“0000100000100000000000
25 bits of “000” are input. Temporary decoding circuit 14
Now, temporarily decode this input data and get “10100θ00
1000000” 15 bits are stored in ROM25 (bank 5
) is output as the address. Since this address corresponds to the address shown at (8) in FIG. 8, the data word decoded is "l100OIXXXXXX" (94 in FIG. 9).

こうして、さらに6ビツトのデータ語が確定すると、新
に15ビツトの符号語がシフトレジスタ11にシフトイ
ンされ、前述と同様にして、バンク選択回路13に符号
語99がセットされる。こうして、再びバンク1が選択
され、仮復号化回路14には“0OOOOOOOOOO
OOOO100OOXXXXX ” (Xは不定)が入
力され、仮復号語“0OOOOOOOOOOIXXX”
に変換される。この仮復号語は第6図の(a)に相当し
ているため、ROM21(バンク1)によりデータ語“
1110101100”に復号される(第9図の95)
、 以上説明したようにして、復号されたデータ語の確
定部分(前述のデータ語の下線部分)を繋ぎ合せると、
“1001001100011110101100”と
して復号され、このデータ語は元のデータ語と完全に一
致していることが確かめられた。
In this way, when another 6-bit data word is determined, a new 15-bit code word is shifted into the shift register 11, and code word 99 is set in the bank selection circuit 13 in the same manner as described above. In this way, bank 1 is selected again, and the temporary decoding circuit 14 has “0OOOOOOOOOOOO
OOOO100OOXXXXX” (X is undefined) is input, and the temporary decryption word “0OOOOOOOOOOIXXX” is input.
is converted to Since this provisional decoded word corresponds to (a) in FIG. 6, the data word “
1110101100” (95 in Figure 9)
, If we connect the definite parts of the decoded data words (the underlined parts of the data words mentioned above) as explained above, we get
It was decoded as "1001001100011110101100", and it was confirmed that this data word completely matched the original data word.

[他の実施例の説明 (第5図、第10図、第11図)] なお、第5図から明らかなように、バンク1から送出さ
れる符号語は4個にすぎない、しかし、そのために32
にワードのROM21が必要となっている。そこで、バ
ンクlをROM21でなくゲート回路26で構成すると
、簡単な回路の追加だけで32にワード分のROMを減
少することができる。これを示したのが第10図で、そ
のブロック図で、第11図がバンク1を構成するゲート
回路26の概略回路図である。
[Description of other embodiments (Fig. 5, Fig. 10, Fig. 11)] As is clear from Fig. 5, only four code words are sent from bank 1. to 32
A word ROM 21 is required. Therefore, if bank 1 is configured with the gate circuit 26 instead of the ROM 21, the number of ROMs corresponding to 32 words can be reduced by simply adding a circuit. This is shown in FIG. 10, which is a block diagram thereof, and FIG. 11 is a schematic circuit diagram of the gate circuit 26 constituting bank 1.

図において、仮復号化回路14の3ビット単位の各ブロ
ックを14a〜14eで示す、但し、ブロック14aに
相当する仮復号語部分は、バンク選択回路13に入力さ
れてバンクの選択に利用される。いま、第5図の仮復号
語“001000”が入力された場合を考えると、ブロ
ック14bの値はooo ”であるため、NOR回路1
04の出力がハイレベルになる。ブロック14cには次
の仮復号語の先頭(3ビツトのいずれかが“1″である
コード)が入力されるため、NOR回路103の出力は
ロウレベルになる。これにより、AND回路105の出
力はハイレベルに、AND回路106の出力はロウレベ
ルになる。これにより、バッファ109の出力は“01
00001100“になる、ここで、入力データは仮復
号語“001000”であるため、バッファ109の出
力の先頭より4ビツトデータ(0100)が採用される
In the figure, each 3-bit block of the temporary decoding circuit 14 is shown as 14a to 14e. However, the temporary decoding word portion corresponding to block 14a is input to the bank selection circuit 13 and used for bank selection. . Now, considering the case where the temporary decoded word "001000" shown in FIG.
The output of 04 becomes high level. Since the beginning of the next temporary decoded word (a code in which any of the three bits is "1") is input to the block 14c, the output of the NOR circuit 103 becomes low level. As a result, the output of the AND circuit 105 becomes high level, and the output of the AND circuit 106 becomes low level. As a result, the output of the buffer 109 is “01”.
Here, since the input data is the temporary decoded word "001000", 4-bit data (0100) is adopted from the beginning of the output of the buffer 109.

同様にして、仮復号語が“001000000”のとき
は、バッファ109の出力は“1001001100”
となり、このデータの先頭より6ビツト(100100
)がデータ語として採用される。さらに、仮復号語“o
alooo ooo ooo oat”が入力されたと
きは、NOR回路102〜104の出力が全てハイレベ
ルになり、AND回路106と107の出力がハイレベ
ルに、AND回路105とlO8の出力が共にロウレベ
ルになる。これにより、バッファ109の出力は“11
10101100”となり、仮復号語が15ビツトで構
成されているため、バッファ109の全出力ビット(1
0ビツト)がデータ語として採用される。
Similarly, when the temporary decoded word is "001000000", the output of the buffer 109 is "1001001100".
6 bits from the beginning of this data (100100
) is adopted as a data word. Furthermore, the temporary decoded word “o”
When “aloooo ooo ooo oat” is input, the outputs of NOR circuits 102 to 104 all go to high level, the outputs of AND circuits 106 and 107 go to high level, and the outputs of AND circuits 105 and lO8 both go to low level. As a result, the output of the buffer 109 becomes “11”.
10101100'', and since the temporary decoded word consists of 15 bits, all the output bits of the buffer 109 (1
0 bit) is adopted as the data word.

このように、バンク1のROM21部分をゲート回路2
6で代用することにより、回路コストを低く抑えること
ができる。
In this way, the ROM21 part of bank 1 is connected to the gate circuit 2.
By substituting 6, the circuit cost can be kept low.

以上説明したように、本実施例によれば、可変長RLL
符号の復号化装置において、nビットの基本符号語数が
nビットで表しつる符号語数よりも小さいことを利用し
、復号化を仮復号化と最終復号化とに分け、さらに先頭
ブロックの内のビットパターンによりバンクを選択する
ことにより、回路に要する復号化のためのROMの容量
を大幅に減少することができた。これにより、記録の高
密度化が進み、記録符号の規模が大きくなっても小さな
ROM容量で復号化回路を構成でき、その実用的価値は
非常に高い。
As explained above, according to this embodiment, the variable length RLL
In a code decoding device, by taking advantage of the fact that the basic number of n-bit code words is smaller than the number of code words represented by n bits, decoding is divided into preliminary decoding and final decoding, and furthermore, the bits in the first block are By selecting banks based on patterns, it was possible to significantly reduce the ROM capacity required for decoding in the circuit. As a result, even if recording density increases and the scale of recorded codes increases, a decoding circuit can be configured with a small ROM capacity, and its practical value is extremely high.

[発明の効果] 以上説明したように本発明によれば、(d。[Effect of the invention] As explained above, according to the present invention, (d.

k、m、n、r□8)復号化に使用されるルックアップ
テーブルの容量を減少できるという効果がある。
k, m, n, r□8) This has the effect of reducing the capacity of the lookup table used for decoding.

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

第1図は実施例の復号化回路の概略構成を示すブロック
図、 第2図(A)〜(D)は実施例の(4,19゜2.5.
6)符号のデータ語と符号語の対応を示す図、 第3図は本実施例における(4,19,2゜5.6)符
号の基本符号語と仮復号語との対応を示す図、 第4図は本実施例における(4,19,2゜5.6)符
号のデータ語と仮復号語との対応を示す図、 第5図は先頭の5ビツトが“10000”である符号語
と対応する仮復号語及びデータ語を示す図・ 第6図は(4,19,2,5,6)符号の最終復号化に
用いるバンク1のROMにおけるアドレスとデータの関
係を示す図、 第7図は先頭の5ビツトが“00001”である符号語
とそれに対応する仮復号語及びデータ語を示す図、 第8図は最終復号化に用いるバンク5のROMのアドレ
スとデータとの関係を示す図、第9図は実施例の復号化
回路における復号処理を示す図、 第10図は実施例の復号化回路のバンク1のR0Mをゲ
ート回路で構成した場合のブロック図、第11図はバン
ク1のROMの代用ゲート回路の構成を示すブロック図
、そして 第12図は従来の入力符号語ビット列を直接ROMのア
ドレスに用いた復号化回路の構成を示す図である。 図中、10・・・入力符号語ビット列、11.17・・
・シフトレジスタ、12・・・ラッチ回路、13・・・
バンク選択回路、14・・・仮復号化回路、15・・・
ラッチ信号発生回路、21〜25・・・最終復号化用R
OM、26・・・ゲート回路である。 特許出願人  キャノン株式会社 第4 図 第12図
FIG. 1 is a block diagram showing a schematic configuration of a decoding circuit according to an embodiment, and FIGS. 2(A) to (D) are (4,19°2.5.
6) A diagram showing the correspondence between the data word and code word of the code, FIG. 3 is a diagram showing the correspondence between the basic code word and the temporary decoded word of the (4,19,2°5.6) code in this embodiment Fig. 4 is a diagram showing the correspondence between the data word and the temporary decoded word of the (4,19,2°5.6) code in this embodiment, and Fig. 5 is a code word whose first 5 bits are "10000". Figure 6 is a diagram showing the relationship between addresses and data in the ROM of bank 1 used for final decoding of the (4, 19, 2, 5, 6) code. Figure 7 shows a code word whose first 5 bits are "00001" and its corresponding temporary decoded word and data word. Figure 8 shows the relationship between the address and data of the ROM in bank 5 used for final decoding. 9 is a diagram showing the decoding process in the decoding circuit of the embodiment, FIG. 10 is a block diagram when R0M of bank 1 of the decoding circuit of the embodiment is configured with a gate circuit, and FIG. 11 is a diagram showing the decoding process in the decoding circuit of the embodiment. FIG. 12 is a block diagram showing the configuration of a substitute gate circuit for the ROM in bank 1, and FIG. 12 is a diagram showing the configuration of a conventional decoding circuit that uses an input code word bit string directly as a ROM address. In the figure, 10...input code word bit string, 11.17...
・Shift register, 12...Latch circuit, 13...
Bank selection circuit, 14...Temporary decoding circuit, 15...
Latch signal generation circuit, 21-25...R for final decoding
OM, 26... is a gate circuit. Patent applicant Canon Co., Ltd. Figure 4 Figure 12

Claims (3)

【特許請求の範囲】[Claims] (1)基本データ語長をmビット、基本符号語長をnビ
ットとするとき、所定数rに対し前記基本データ語のr
倍ビットのデータ語を、前記基本符号語長のに倍に変換
した符号語を逆変換する符号逆変換装置であつて、 入力した符号語をnビット単位にr個のブロックに分割
する分割手段と、 前記ブロックのそれぞれに相当する符号語を前記nビッ
トよりも少ないビット数に仮復号する仮復号手段と、 前記ブロックのうちの少なくとも先頭ブロックのビット
パターンをもとに、仮復号されたビットパターンを入力
して最終的にデータ語に復号する復号化手段と、 を有することを特徴とする符号逆変換装置。
(1) When the basic data word length is m bits and the basic code word length is n bits, for a given number r, the basic data word r
A code inversion device for inversely converting a code word obtained by converting a double-bit data word to twice the basic code word length, and a dividing means for dividing the input code word into r blocks in units of n bits. and provisional decoding means for provisionally decoding a code word corresponding to each of the blocks into a number of bits smaller than the n bits, and provisionally decoded bits based on the bit pattern of at least the first block among the blocks. A code inverse conversion device comprising: decoding means for inputting a pattern and finally decoding it into a data word.
(2)基本符号語長であるnビットの基本符号語数をp
とすると、前記仮復号化手段は各ブロックに対して、p
種のパターンに対応するqビット(q=[log_2p
]+1([]はガウス記号))の仮復号化コードを出力
するようにしたことを特徴とする請求項第1項に記載の
符号逆変換装置。
(2) The number of basic codewords of n bits, which is the basic codeword length, is p
Then, the temporary decoding means p
q bits corresponding to the seed pattern (q=[log_2p
2. The code inverse conversion device according to claim 1, wherein a temporary decoding code of ]+1 ([ ] is a Gaussian symbol) is output.
(3)前記復号化手段は、前記仮復号手段より出力され
る最大(r_m_a_x−1)×([log_2p]+
1)ビットの仮符号化コードを、r_m_a_x・mビ
ットのデータ語に変換するようにしたことを特徴とする
請求項第1項に記載の符号逆変換装置。
(3) The decoding means outputs the maximum (r_m_a_x-1)×([log_2p]+
1) The code inverse conversion device according to claim 1, wherein a temporary encoded code of bits is converted into a data word of r_m_a_x·m bits.
JP8565889A 1989-04-06 1989-04-06 Code inverse converter Pending JPH02265329A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8565889A JPH02265329A (en) 1989-04-06 1989-04-06 Code inverse converter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8565889A JPH02265329A (en) 1989-04-06 1989-04-06 Code inverse converter

Publications (1)

Publication Number Publication Date
JPH02265329A true JPH02265329A (en) 1990-10-30

Family

ID=13864925

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8565889A Pending JPH02265329A (en) 1989-04-06 1989-04-06 Code inverse converter

Country Status (1)

Country Link
JP (1) JPH02265329A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0624956A2 (en) * 1993-05-13 1994-11-17 Intel Corporation System and method for fast Huffman decoding
WO2002101935A1 (en) * 2001-06-06 2002-12-19 Seiko Epson Corporation Decoding apparatus, decoding method, lookup table, and decoding program
US6546053B1 (en) 1997-05-14 2003-04-08 Nec Corporation System and method for decoding signal and method of generating lookup table for using in signal decoding process

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0624956A2 (en) * 1993-05-13 1994-11-17 Intel Corporation System and method for fast Huffman decoding
EP0624956A3 (en) * 1993-05-13 1996-02-28 Intel Corp System and method for fast Huffman decoding.
US6546053B1 (en) 1997-05-14 2003-04-08 Nec Corporation System and method for decoding signal and method of generating lookup table for using in signal decoding process
WO2002101935A1 (en) * 2001-06-06 2002-12-19 Seiko Epson Corporation Decoding apparatus, decoding method, lookup table, and decoding program
US6812863B2 (en) 2001-06-06 2004-11-02 Seiko Epson Corporation Decoder, decoding method, look-up table, and decoding program

Similar Documents

Publication Publication Date Title
US4463344A (en) Method and apparatus for generating a noiseless sliding block code for a (2,7) channel with rate 1/2
US7486208B2 (en) High-rate RLL encoding
US4985700A (en) Variable-length coding/decoding device
US5781133A (en) Method and apparatus for implementing run length limited codes
JP3590209B2 (en) Modulation coding method
US4882583A (en) Modified sliding block code for limiting error propagation
US5241309A (en) Data coding for fast start-up of prml receivers
JPS6318821A (en) Encoder
JPH0319735B2 (en)
JPH05274811A (en) Method and device for encoding
JP2002271205A (en) Modulation method, modulator, demodulation method, demodulator, information recoding medium, information transmitting method and information transmitting equipment
EP0557130B1 (en) Data conversion method and recording/reproducing apparatus using the same
BG105877A (en) Method of converting a stream of databits of a binary information signal into a stream of databits of a constrained binary channel signal, device for encoding, signal comprising a stream of databits of a constrained binary channel signal, record carrier and device for decoding
JP2002280907A (en) Modulation method, modulator, demodulation method, demodulator, information recording medium, information transmission method and information transmitter
JPH01286626A (en) Data encoding system
JPH02265329A (en) Code inverse converter
US6985320B2 (en) Method and apparatus for encoding data to guarantee isolated transitions in a magnetic recording system
KR100448282B1 (en) Method for balanced encoding and decoding of locks having the different constant weight
KR20020038709A (en) Device for encoding a stream of databits of a binary source signal into a stream of databits of a binary channel signal, memory means, device for recording information, record carrier, device for coding and device for playing back
KR100470026B1 (en) Method and apparatus for coding/decoding information
JPH02119434A (en) Coding circuit and decoding circuit
JP2794719B2 (en) Code conversion device
JPH01221918A (en) Variable length code converter
JPH01221924A (en) Variable length code inverse converter
JP2600148B2 (en) Code conversion method