# US 2005/0174262 A1 · Rate-13/15 maximum transition run code encoding and decoding method and apparatus

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2005/0174262 A1
- Document ID: US20050174262A1
- Status: Published application
- Kind: A1
- Application number: 11/031,529
- Filed: 2005-01-10
- Published: 2005-08-11
- Earliest claimed: 2004-01-08
- Assignees: Samsung Electronics Co., Ltd.
- Inventors: Jun Lee; Joo-hyun Lee; Kyu-suk Lee; Jae-jin Lee
- Web page: https://patentgrep.com/patent/US20050174262A1

## CPC

- H03M 5/145: {Conversion to or from block codes or representations thereof}
- G11B 20/1426: {conversion to or from block codes or representations thereof}
- G11B 2020/1434: {8 to 9 modulation}
- G11B 2020/1446: {16 to 17 modulation}
- H03M: CODING; DECODING; CODE CONVERSION IN GENERAL (using fluidic means F15C4/00; optical analogue/digital converters G02F7/00; coding, decoding or code conversion, specially adapted for particular applications, see the relevant subclasses, e.g. G01D, G01R, G06F, G06T, G09G, G10L, G11B, G11C, H04B, H04L, H04M, H04N; ciphering or deciphering for cryptography or other purposes involving the need for secrecy G09C)
- G11B: INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER (recording measured values in a way that does not require playback through a transducer G01D9/00; recording or playback apparatus using mechanically marked tape, e.g. punched paper tape, or using unit records, e.g. punched or magnetically marked cards G06K; transferring data from one type of record carrier to another G06K1/18; circuits for coupling output of reproducer to radio receiver H04B1/20; gramophone pick-ups or like acoustic electromechanical transducers or circuits therefor H04R)

## Abstract

Provided are a rate 13/15 MTR code encoding/decoding method and apparatus. The encoding method includes: generating a predetermined rate-13/15 MTR code in which 13-bit data corresponds to 15-bit data; outputting input 13-bit data as a 15-bit codeword according to the rate-13/15 MTR code; checking whether codewords satisfy a predetermined constraint condition by connecting the 15-bit codeword and a subsequent 15-bit codeword; and converting specific bits of the codewords if the codewords violate the constraint condition and not converting the codewords if the codewords do not violate the constraint condition. The rate-13/15 MTR (j=2, k=8) code includes: 8192 codewords obtained to prevent the number of consecutive transitions from becoming 3 at code boundaries in a modulation coding process. Data can be reliably reproduced with high write density, and a large amount of data can be stored in and reproduced from a magnetic recording information storage medium.

## Claims

### Claim 1

A rate-13/15 maximum transition run (MTR) code encoding method comprising:
(a) generating a predetermined rate-13/15 MTR code in which 13-bit data corresponds to 15-bit data;
(b) outputting inputted 13-bit data as a 15-bit codeword according to the predetermined rate-13/15 MTR code;
(c) checking whether a plurality of 15-bit codewords satisfy a predetermined constraint condition by connecting a current 15-bit codeword of the plurality of 15-bit codewords and a subsequent 15-bit codeword of the plurality of 15-bit codewords; and
(d) converting specific bits of at least one of the current and the subsequent 15-bit codewords if the current and the subsequent 15-bit codewords violate the predetermined constraint condition and not converting the current and the subsequent 15-bit codewords if the current and the subsequent 15-bit codewords do not violate the predetermined constraint condition, and
the rate-13/15 MTR code comprises 8192 codewords.

### Claim 2 (depends on 1)

The method of claim 1, wherein the predetermined constraint condition in (c) comprises:
a constraint condition (j=2) allowing at most 2 consecutive data transitions; and a constraint condition (k=8) allowing a number of consecutive ‘0’s to be equal to or less than 8, and
the (c) checking comprises:
when the current and the subsequent 15-bit codewords among the 8192 codewords are connected and c(k)=[x14x13x12 . . . x2x1x0] represents the current 15-bit codeword for which codeword violation checking is performed and c(k+1)=[y14y13y12 . . . y2y1y0] represents the subsequent 15-bit codeword, determining whether last 3 bits (x2, x1, x0) of the current 15-bit codeword and first 3 bits (y14, y13, y12) of the subsequent 15-bit codeword violate the predetermined constraint condition, and
the (d) converting comprises:
when z0 and z1 indicate parameters for determining whether the current and the subsequent 15-bit codewords satisfy the constraint condition (j=2) and z2 indicates a parameter for determining whether the current and the subsequent 15-bit codewords satisfy the constraint condition (k=8), calculating z0, z1, and z2 using z0=x1·x0·y14·{overscore (y12)}, z1=x1·x0·y14·y12, and z2=x2+x1+x0+y14+y13+y12, wherein + indicates a modulo-2 add operation; and
converting x1 and x0 into 0 and x2 and y13 into 1 so that j does not exceed 2 when z0=1, converting x0 and y12 into 0 and y13 into 1 so that j does not exceed 2 when z1=1, and converting y14 and y13 into 1 so that k does not exceed 8 when z2=1.

### Claim 3

A rate-13/15 maximum transition run (MTR) code encoding apparatus comprising:
a 13/15 encoder generating a rate-13/15 MTR code for outputting 13-bit data as a predetermined 15-bit codeword; and
an MTR violation checking & converting unit checking whether a plurality of predetermined 15-bit codewords satisfy a predetermined constraint condition by connecting a current 15-bit codeword of the plurality of 15-bit codewords and a subsequent 15-bit codeword of the plurality of 15-bit codewords, converting specific bits of at least one of the current and the subsequent 15-bit codewords if the current and the subsequent 15-bit codewords violate the predetermined constraint condition, and not converting the current and the subsequent 15-bit codewords if the current and the subsequent 15-bit codewords do not violate the predetermined constraint condition, and
the rate-13/15 MTR code comprises 8192 codewords.

### Claim 4 (depends on 3)

The apparatus of claim 3, wherein the MTR violation checking & converting unit comprises:
an MTR constraint condition checker determining whether last 3 bits (x2, x1, x0) of the current 15-bit codeword and first 3 bits (y14, y13, y12) of the subsequent 15-bit codeword violate the predetermined constraint condition when the current and the subsequent 15-bit codewords among the 8192 codewords are connected to each other and c(k) represents the current 15-bit codeword for which the codeword violation checking is performed and c(k+1) represents the subsequent 15-bit codeword; and
a codeword converter converting x1 and x0 into 0 and x2 and y13 into 1 so that j does not exceed 2 when z0=1, converting x0 and y12 into 0 and y13 into 1 so that j does not exceed 2 when z1=1, and converting y14 and y13 into 1 so that k does not exceed 8 when z2=1 by calculating z0, z1, and z2 using z0=x1·x0·y14·{overscore (y12)}, z1=x1·x0·y14·y12, and z2=x2+x1+x0+y14+y13+y12, wherein + indicates a modulo-2 add operation, when z0 and z1 indicate parameters for determining whether the current and the subsequent 15-bit codewords satisfy the j constraint condition (j=2) and z2 indicates a parameter for determining whether the current and the subsequent 15-bit codewords satisfy the constraint condition (k=8).

### Claim 5 (depends on 3)

The apparatus of claim 3, further comprising:
a parallel-to-serial converter converting parallel codewords of the MTR violation checking & converting unit into serial data; and
a precoder changing a signal level of the serial data in order to record the serial data in a channel.

### Claim 6

A rate-13/15 maximum transition run (MTR) code decoding method comprising:
(1) checking whether two codewords were MTR-code-converted to satisfy a predetermined MTR constraint condition when the two codewords were encoded by connecting a currently input 15-bit codeword and a subsequently input 15-bit codeword;
(2) if the current and the subsequent 15-bit codewords were MTR-code-converted, converting specific bits of at least one of the current and the subsequent 15-bit codewords, and if the current and the subsequent 15-bit codewords were not MTR-code-converted, not converting the current and the subsequent 15-bit codewords; and
(3) decoding each of a plurality of 15-bit codewords, which has passed through (2), into 13-bit data using a predetermined MTR code, wherein
the predetermined MTR code comprises:
8192 codewords obtained by excluding optional 40 codewords from 8232 codewords, the 8232 codewords being obtained by excluding 230 codewords, each having ‘11011’ at a corresponding trailing edge, 420 codewords, each having 8 or more consecutive ‘0’s, and 22 codewords, each having 7 consecutive ‘0’s at a corresponding leading edge or a corresponding trailing edge, from selected 8904 codewords, the selected 8904 codewords being obtained by adding 7473 codewords, each having a number of 1s at corresponding leading two bits and/or a number of 1s at corresponding trailing two bits of at most 1, respectively, and 1431 codewords, each having ‘11’ at a corresponding trailing edge.

### Claim 7 (depends on 6)

The method of claim 6, wherein the (1) checking comprises:
when {overscore (c(k))}=[x14x13x12 . . . x2x1x0] represents the current 15-bit codeword for which codeword violation checking is performed and {overscore (c(k+1))}=[y14y13y12 . . . y2y1y0] represents the subsequent 15-bit codeword, determining whether last 3 bits (x2, x1, x0) of the current 15-bit codeword and first 3 bits (y14, y13, y12) of the subsequent 15-bit codeword violate the predetermined MTR constraint condition, and
the (2) converting comprises:
calculating z0, z1, and z2 using z0=x2·y14·y13, z1=x1·y14·y13, and z2={overscore (x2)}·{overscore (x1)}·{overscore (x0)}·y14·y13; and
converting x1 and x0 into 1 and x2 and y13 into 0 when z0=1, converting x0 and y12 into 1 and y13 into 0 when z1=1, and converting y14 and y13 into 0 when z2=1.

### Claim 8

A rate-13/15 maximum transition run (MTR) code decoding apparatus comprising:
an MTR condition checking & converting unit checking whether two codewords were MTR-code-converted to satisfy a predetermined MTR constraint condition when the two codewords were encoded by connecting a currently input 15-bit codeword and a subsequently input 15-bit codeword, converting specific bits of at least one of the current and the subsequent 15-bit codewords if the current and the subsequent 15-bit codewords were MTR-code-converted, and not converting the current and the subsequent 15-bit codewords if the current and the subsequent 15-bit codewords were not MTR-code-converted; and
a 13/15 decoder decoding each of a plurality of 15-bit codewords output from the MTR condition checking & converting unit to 13-bit data using a predetermined MTR code, and
the predetermined MTR code comprises:
8192 codewords obtained by excluding optional 40 codewords from 8232 codewords, the 8232 codewords being obtained by excluding 230 codewords, each having ‘11011’ at a corresponding trailing edge, 420 codewords, each having 8 or more consecutive ‘0’s, and 22 codewords, each having 7 consecutive ‘0’s at a corresponding leading edge or a corresponding trailing edge, from selected 8904 codewords, the selected 8904 codewords being obtained by adding 7473 codewords, each having a number of 1s at corresponding leading two bits and/or a number of 1s at corresponding trailing two bits of at most 1, respectively, and 1431 codewords, each having ‘11’ at a corresponding trailing edge.

### Claim 9 (depends on 8)

The apparatus of claim 8, wherein the MTR condition checking & converting unit comprises:
an MTR code conversion checker, when {overscore (c(k))}=[x14x13x12 . . . x2x1x0] represents the current 15-bit codeword for which codeword violation checking is performed and {overscore (c(k+1))}=[y14y13y12 . . . y2y1y0] represents the subsequent 15-bit codeword, determining whether the last 3 bits (x2, x1, x0) of the current 15-bit codeword and the first 3 bits (y14, y13, y12) of the subsequent 15-bit codeword were MTR-code-converted when the current and the subsequent 15-bit codewords were encoded; and
a codeword converter converting x1 and x0 into 1 and x2 and y13 into 0 when z0=1, converting x0 and y12 into 1 and y13 into 0 when z1=1, and converting y14 and y13 into 0 when z2=1by calculating z0, z1, and z2 using z0=x2·y14·y13, z1=x1·y14·y13, and z2={overscore (x2)}·{overscore (x1)}·{overscore (x0)}·y14·y13.

### Claim 10

A computer readable medium having recorded thereon a computer readable program for performing the method of rate-13/15 maximum transition run (MTR) code encoding comprising:
(a) generating a predetermined rate-13/15 MTR code in which 13-bit data corresponds to 15-bit data;
(b) outputting inputted 13-bit data as a 15-bit codeword according to the predetermined rate-13/15 MTR code;
(c) checking whether a plurality of 15-bit codewords satisfy a predetermined constraint condition by connecting a current 15-bit codeword of the plurality of 15-bit codewords and a subsequent 15-bit codeword of the plurality of 15-bit codewords; and
(d) converting specific bits of at least one of the current and the subsequent 15-bit codewords if the current and the subsequent 15-bit codewords violate the predetermined constraint condition and not converting the current and the subsequent 15-bit codewords if the current and the subsequent 15-bit codewords do not violate the predetermined constraint condition, and
the rate-13/15 MTR code comprises 8192 codewords.

### Claim 11 (depends on 10)

The computer readable medium of claim 10 having recorded thereon a computer readable program for performing the method of rate-13/15 maximum transition run (MTR) code encoding, wherein the 8192 codewords are obtained by excluding optional 40 codewords from 8232 codewords, the 8232 codewords being obtained by excluding 230 codewords, each having ‘11011’ at a corresponding trailing edge, 420 codewords, each having 8 or more consecutive ‘0’s, and 22 codewords, each having 7 consecutive ‘0’s at a corresponding leading edge or a corresponding trailing edge, from selected 8904 codewords, the selected 8904 codewords being obtained by adding 7473 codewords, each having a number of 1s at corresponding leading two bits and/or a number of 1s at corresponding trailing two bits of at most 1, respectively, and 1431 codewords, each having ‘11’ at a corresponding trailing edge.

### Claim 12 (depends on 10)

The computer readable medium of claim 10 having recorded thereon a computer readable program for performing the method of rate-13/15 maximum transition run (MTR) code encoding, wherein the predetermined constraint condition in (c) comprises:
a constraint condition (j=2) allowing at most 2 consecutive data transitions; and a constraint condition (k=8) allowing a number of consecutive ‘0’s to be equal to or less than 8, and
the (c) checking comprises:
when the current and the subsequent 15-bit codewords among the 8192 codewords are connected and c(k)=[x14x13x12 . . . x2x1x0] represents the current 15-bit codeword for which codeword violation checking is performed and c(k+1)=[y14y13y12 . . . y2y1y0] represents the subsequent 15-bit codeword, determining whether last 3 bits (x2, x1, x0) of the current 15-bit codeword and first 3 bits (y14, y13, y12) of the subsequent 15-bit codeword violate the predetermined constraint condition, and
the (d) converting comprises:
when z0 and z1 indicate parameters for determining whether the current and the subsequent 15-bit codewords satisfy the constraint condition (j=2) and z2 indicates a parameter for determining whether the current and the subsequent 15-bit codewords satisfy the constraint condition (k=8), calculating z0, z1, and z2 using z0=x1·x0·y14·{overscore (y12)}, z1=x1·x0·y14·y12, and z2=x2+x1+x0+y14+y13+y12, wherein + indicates a modulo-2 add operation; and
converting x1 and x0 into 0 and x2 and y13 into 1 so that j does not exceed 2 when z0=1, converting x0 and y12 into 0 and y13 into 1 so that j does not exceed 2 when z1=1, and converting y14 and y13 into 1 so that k does not exceed 8 when z2=1.

### Claim 13

A computer readable medium having recorded thereon a computer readable program for performing the method of rate-13/15 maximum transition run (MTR) code decoding comprising:
(1) checking whether two codewords were MTR-code-converted to satisfy a predetermined MTR constraint condition when the two codewords were encoded by connecting a currently input 15-bit codeword and a subsequently input 15-bit codeword;
(2) if the current and the subsequent 15-bit codewords were MTR-code-converted, converting specific bits of at least one of the current and the subsequent 15-bit codewords, and if the current and the subsequent 15-bit codewords were not MTR-code-converted, not converting the current and the subsequent 15-bit codewords; and
(3) decoding each of a plurality of 15-bit codewords, which has passed through (2), into 13-bit data using a predetermined MTR code, wherein
the predetermined MTR code comprises:
8192 codewords obtained by excluding optional 40 codewords from 8232 codewords, the 8232 codewords being obtained by excluding 230 codewords, each having ‘11011’ at a corresponding trailing edge, 420 codewords, each having 8 or more consecutive ‘0’s, and 22 codewords, each having 7 consecutive ‘0’s at a corresponding leading edge or a corresponding trailing edge, from selected 8904 codewords, the selected 8904 codewords being obtained by adding 7473 codewords, each having a number of 1s at corresponding leading two bits and/or a number of 1s at corresponding trailing two bits of at most 1, respectively, and 1431 codewords, each having ‘11’ at a corresponding trailing edge.

### Claim 14 (depends on 13)

The computer readable medium of claim 13 having recorded thereon a computer readable program for performing the method of rate-13/15 maximum transition run (MTR) code decoding, wherein the (1) checking comprises:
when {overscore (c(k))}=[x14x13x12 . . . x2x1x0] represents the current 15-bit codeword for which codeword violation checking is performed and {overscore (c(k+1))}=[y14y13y12 . . . y2y1y0] represents the subsequent 15-bit codeword, determining whether last 3 bits (x2, x1, x0) of the current 15-bit codeword and first 3 bits (y14, y13, y12) of the subsequent 15-bit codeword violate the predetermined MTR constraint condition, and
the (2) converting comprises:
calculating z0, z1, and z2 using z0=x2·y14·y13, z1=x1·y14·y13, and z2={overscore (x2)}·{overscore (x1)}·{overscore (x0)}·y14·y13; and
converting x1 and x0 into 1 and x2 and y13 into 0 when z0=1, converting x0 and y12 into 1 and y13 into 0 when z1=1, and converting y14 and y13 into 0 when z2=1.

### Claim 15 (depends on 1)

The method of claim 1, wherein the 8192 codewords are obtained by excluding optional 40 codewords from 8232 codewords, the 8232 codewords being obtained by excluding 230 codewords, each having ‘11011’ at a corresponding trailing edge, 420 codewords, each having 8 or more consecutive ‘0’s, and 22 codewords, each having 7 consecutive ‘0’s at a corresponding leading edge or a corresponding trailing edge, from selected 8904 codewords, the selected 8904 codewords being obtained by adding 7473 codewords, each having a number of 1s at corresponding leading two bits and/or a number of 1s at corresponding trailing two bits of at most 1, respectively, and 1431 codewords, each having ‘11’ at a corresponding trailing edge.

### Claim 16 (depends on 3)

The apparatus of claim 3, wherein the 8192 codewords are obtained by excluding optional 40 codewords from 8232 codewords, the 8232 codewords being obtained by excluding 230 codewords, each having ‘11011’ at a corresponding trailing edge, 420 codewords, each having 8 or more consecutive ‘0’s, and 22 codewords, each having 7 consecutive ‘0’s at a corresponding leading edge or a corresponding trailing edge from selected 8904 codewords, the selected 8904 codewords being obtained by adding 7473 codewords, each having a number of 1s at corresponding leading two bits and/or a number of 1s at corresponding trailing two bits of at most 1, respectively, and 1431 codewords, each having ‘11’ at a corresponding trailing edge.

### Claim 17 (depends on 1)

The method of claim 1, wherein the 8192 codewords are obtained in order to prevent the number of consecutive transitions from becoming 3 at code boundaries in a modulation coding process.

### Claim 18 (depends on 3)

The apparatus of claim 3, wherein the 8192 codewords are obtained in order to prevent the number of consecutive transitions from becoming 3 at code boundaries in a modulation coding process.

### Claim 19 (depends on 6)

The method of claim 6, wherein the 8192 codewords are obtained in order to prevent the number of consecutive transitions from becoming 3 at code boundaries in a modulation coding process.

### Claim 20 (depends on 8)

The method of claim 8, wherein the 8192 codewords are obtained in order to prevent the number of consecutive transitions from becoming 3 at code boundaries in a modulation coding process.
