KR20090028937A - Data modulation method, modulator, recording method, and recording apparatus - Google Patents

Data modulation method, modulator, recording method, and recording apparatus Download PDF

Info

Publication number
KR20090028937A
KR20090028937A KR1020070094091A KR20070094091A KR20090028937A KR 20090028937 A KR20090028937 A KR 20090028937A KR 1020070094091 A KR1020070094091 A KR 1020070094091A KR 20070094091 A KR20070094091 A KR 20070094091A KR 20090028937 A KR20090028937 A KR 20090028937A
Authority
KR
South Korea
Prior art keywords
bit
run length
channel sequence
bit flip
sequence
Prior art date
Application number
KR1020070094091A
Other languages
Korean (ko)
Other versions
KR101430448B1 (en
Inventor
이준
Original Assignee
엘지전자 주식회사
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 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1020070094091A priority Critical patent/KR101430448B1/en
Priority to CN200880107389A priority patent/CN101802912A/en
Priority to PCT/KR2008/005386 priority patent/WO2009038311A2/en
Priority to US12/678,682 priority patent/US8495461B2/en
Publication of KR20090028937A publication Critical patent/KR20090028937A/en
Application granted granted Critical
Publication of KR101430448B1 publication Critical patent/KR101430448B1/en

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
    • G11B20/1426Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B7/00Recording or reproducing by optical means, e.g. recording using a thermal beam of optical radiation by modifying optical properties or the physical structure, reproducing using an optical beam at lower power by sensing optical properties; Record carriers therefor
    • G11B7/004Recording, reproducing or erasing methods; Read, write or erase circuits therefor
    • G11B7/0045Recording
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1108Hard decision decoding, e.g. bit flipping, modified or weighted bit flipping

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

A data modulating method and apparatus and a recording method and apparatus are provided to facilitate the change of k-constraint condition by bit flip and prevent error propagation by bit flip. A data modulating method comprises the steps of: producing a channel sequence about input sequence; determining whether RLL(Run Length Limit) condition is violated; and, when the RLL condition is violated, performing bit flip at the position before the violation occurrence position among the bits included in the channel sequence. The bit flip performing step includes determining the bit flip position in order to prevent error propagation in decoding.

Description

데이터 변조방법, 변조장치, 기록방법 및 기록장치{DATA MODULATION METHOD, MODULATOR, RECORDING METHOD, AND RECORDING APPARATUS}Data modulation method, modulation device, recording method and recording device {DATA MODULATION METHOD, MODULATOR, RECORDING METHOD, AND RECORDING APPARATUS}

본 발명은 데이터 변조방법, 변조장치, 기록방법 및 기록장치에 관한 것으로, 보다 상세하게는 광 기록매체에 기록되는 데이터를 변조하는 방법 및 장치와 이를 이용한 기록 방법 및 장치에 관한 것이다. The present invention relates to a data modulation method, a modulation device, a recording method, and a recording device, and more particularly, to a method and apparatus for modulating data recorded on an optical recording medium, and a recording method and apparatus using the same.

일반적인 기록 시스템은 변조 코드를 사용하는데, 변조 코드는 기록 시스템의 재생부에서 인접 심벌 간의 간섭에 의해 야기되는 재생 신호의 왜곡을 저감하고 원활한 타이밍 복원을 제공하기 위해 사용된다. A general recording system uses a modulation code, which is used to reduce distortion of a reproduction signal caused by interference between adjacent symbols in the reproduction portion of the recording system and to provide smooth timing recovery.

이때의 변조 코드를 (d, k)로 표현할 수 있는데, 이를 런 길이 제한(run length limit, RLL) 코드라고 한다. 여기서, d 는 변조 코드의 1과 1사이에 존재할 수 있는 0의 최소 개수를 의미하는 구속 조건으로, 인접 심벌 간 간섭에 의해 야기되는 신호의 왜곡을 저감시켜 주기 위한 조건이다. 또한, k는 1과 1사이에 존재할 수 있는 0의 최대 개수를 의미하는 구속 조건으로, 타이밍 복원을 위한 조건이다. The modulation code at this time may be expressed as (d, k), which is called a run length limit (RLL) code. Here, d is a constraint condition that means the minimum number of zeros that may exist between 1 and 1 of the modulation code, and is a condition for reducing distortion of a signal caused by interference between adjacent symbols. In addition, k is a constraint condition that means the maximum number of zeros that may exist between 1 and 1, and is a condition for timing recovery.

변조 코드 디자인 시 k-구속 조건을 부가하는 방법 중 변조 코드 인코 더(encoder)의 출력인 채널 시퀀스를 관찰한 후 k-구속 조건을 위반하는 시퀀스가 관찰이 되면 그 위치에서 데이터 0을 1로 바꾸어 k-구속 조건을 부가하는 비트 플립(bit flip) 방법이 있다. When designing a modulation code, observe the channel sequence that is the output of the modulation code encoder and add data 0 to 1 at that position. There is a bit flip method that adds a k-restriction condition.

즉, 비트 플립 방법은 채널 시퀀스에 에러를 가하여 k-구속 조건을 부가하는 방법이다. 이 방법은 기록매체에 기록되기 전의 시퀀스인, 채널 시퀀스에 에러가 가하는 방법이므로 기록매체에 기록되는 시퀀스에는 에러가 포함하게 된다. In other words, the bit flip method is a method of adding a k-restraint condition by applying an error to a channel sequence. In this method, an error is applied to a channel sequence, which is a sequence before being recorded on the recording medium, so that an error is included in the sequence recorded on the recording medium.

따라서 이러한 비트 플립 방법에서 비트 플립이 빈번하게 발생할 경우, 복조 시 원래의 데이터의 복원이 어렵고, 복원이 가능한 경우에도 기록 밀도의 향상에 한계가 존재하는 문제점이 있다. 특히, 기록 시스템을 위한 변조 코드들은 디자인 특성상 디코딩 시 한 비트의 에러가 여러 비트의 에러를 야기하는 에러 전달 특성을 가지게 되므로 이러한 문제점은 더욱 심각해 진다. Therefore, if a bit flip occurs frequently in such a bit flip method, it is difficult to restore the original data during demodulation, and there is a limit in improving the recording density even when the bit flip is possible. In particular, this problem becomes more serious because modulation codes for a recording system have an error propagation characteristic in which a bit error causes multiple bit errors in decoding due to the design.

따라서 본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 원래의 데이터의 복원이 용이하며, 기록밀도를 향상시킬 수 있는 복조방법, 복조장치, 기록방법 및 기록장치를 제공하는 데 있다. Accordingly, the present invention is to solve the above problems, an object of the present invention is to provide a demodulation method, a demodulation device, a recording method and a recording device that can easily restore the original data, improve the recording density have.

상기와 같은 목적을 달성하기 위해 본 발명에 따른 데이터 변조방법은 입력 시퀀스에 대한 채널 시퀀스를 생성하는 단계, 런 길이 제한(Run Length Limit, RLL) 조건의 위반 여부를 판단하는 단계 및 런 길이 제한 조건을 위반한 경우, 채 널 시퀀스에 포함되는 비트 중 런 길이 제한 조건의 위반이 발생하는 위치보다 앞의 위치에서 비트 플립을 실시하는 단계를 포함한다. In order to achieve the above object, a data modulation method according to the present invention includes generating a channel sequence for an input sequence, determining whether a run length limit (RLL) condition is violated, and a run length limit condition. In the case of violating the bit sequence, performing a bit flip at a position before the violation of the run length constraint occurs among the bits included in the channel sequence.

비트 플립을 실시하는 단계는 디코딩 시 에러 전달이 없도록 비트 플립 위치를 결정하는 단계를 포함할 수 있다. Performing a bit flip may include determining a bit flip position such that there is no error propagation in decoding.

비트 플립 위치를 결정하는 단계에서, 런 길이 제한 조건의 위반 위치와 코드워드의 길이에 근거하여 비트 플립 위치를 결정할 수 있다. In determining the bit flip position, the bit flip position may be determined based on the violation position of the run length constraint and the length of the codeword.

비트 플립 위치를 결정하는 단계에서, 위반 위치를 코드워드의 길이로 나눈 나머지에 근거하여 비트 플립 위치를 결정할 수 있다. In determining the bit flip position, the bit flip position may be determined based on the remainder of the violation position divided by the length of the codeword.

런 길이 제한 조건은 채널 시퀀스에서 1과 1 사이에 존재하는 최대 0의 개수에 대한 조건이고, 비트 플립은 특정 위치의 0 비트를 1 비트로 변환하여 이루어지질 수 있다. The run length constraint is a condition for the maximum number of zeros existing between 1 and 1 in the channel sequence, and bit flipping may be performed by converting 0 bits of a specific position into 1 bit.

비트 플립 회수의 통계적 검사에 근거하여 런 길이 제한 조건을 설정하는 단계를 더 포함할 수 있다. The method may further include setting a run length constraint based on the statistical check of the number of bit flips.

입력 시퀀스에 대한 채널 시퀀스를 생성하는 단계에서, 변조 테이블을 이용하여 입력 시퀀스에 대한 채널 시퀀스를 생성할 수 있다. In the step of generating a channel sequence for the input sequence, a channel sequence for the input sequence may be generated using a modulation table.

변조 테이블은 적어도 하나의 스테이트, 입력 코드에 상응하는 코드 워드 및 다음 스테이트를 지정하는 정보를 포함할 수 있다. The modulation table may include at least one state, code words corresponding to the input code, and information designating the next state.

변조 테이블은 1과 1 사이의 최소 0의 개수가 1이며, 0과 0 사이의 최대 1의 개수가 무한대이고, RMTR(repeated minimum transition run)이 2인 채널 시퀀스를 생성할 수 있다. The modulation table may generate a channel sequence in which the minimum number of 0s between 1 and 1 is 1, the maximum number of 1s between 0 and 0 is infinity, and the repeated minimum transition run (RMTR) is 2.

한편, 본 발명에 따른 데이터 변조장치는 입력 시퀀스에 대한 채널 시퀀스를 생성하는 인코더(encoder) 및 런 길이 제한 조건의 위반 여부를 판단하고, 런 길이 제한 조건을 위반한 경우, 채널 시퀀스에 포함되는 비트 중 런 길이 제한 조건의 위반이 발생하는 위치보다 앞의 위치에서 비트 플립을 실시하는 비트 플리퍼(bit flipper)를 포함한다. Meanwhile, the data modulator according to the present invention determines whether an encoder and a run length constraint for generating a channel sequence for an input sequence are violated, and if the run length constraint is violated, a bit included in the channel sequence. And a bit flipper for performing a bit flip at a position before the violation of the middle run length constraint.

비트 플리퍼는 디코딩 시 에러 전달이 없도록 비트 플립 위치를 결정할 수 있다. The bit flipper may determine the bit flip position so that there is no error propagation in decoding.

비트 플리퍼는 런 길이 제한 조건의 위반이 발생하는 위치와 코드워드의 길이에 근거하여 비트 플립 위치를 결정할 수 있다. The bit flipper may determine the bit flip position based on the location of the violation of the run length constraint and the length of the codeword.

비트 플리퍼는 위반 위치를 코드워드의 길이로 나눈 나머지에 근거하여 비트 플립 위치를 결정할 수 있다. The bit flipper may determine the bit flip position based on the remainder of the violation position divided by the length of the codeword.

런 길이 제한 조건은 채널 시퀀스에서 1과 1 사이에 존재하는 최대 0의 개수에 대한 조건이고, 비트 플리퍼는 특정 위치의 0 비트를 1 비트로 변환할 수 있다. The run length constraint is a condition for the maximum number of zeros existing between 1 and 1 in the channel sequence, and the bit flipper may convert the 0 bits of a specific position into 1 bit.

인코더는 비트 플립 회수의 통계적 검사에 근거하여 런 길이 제한 조건을 설정할 수 있다. The encoder can set run length constraints based on a statistical check of the number of bit flips.

인코더는 변조 테이블을 이용하여 입력 시퀀스에 대한 채널 시퀀스를 생성할 수 있다. The encoder may generate a channel sequence for the input sequence using the modulation table.

변조 테이블은 적어도 하나의 스테이트, 입력 코드에 상응하는 코드 워드 및 다음 스테이트를 지정하는 정보를 포함할 수 있다. The modulation table may include at least one state, code words corresponding to the input code, and information designating the next state.

변조 테이블은 1과 1 사이의 최소 0의 개수가 1이며, 0과 0 사이의 최대 1의 개수가 무한대이고, RMTR(repeated minimum transition run)이 2인 채널 시퀀스를 생성할 수 있다. The modulation table may generate a channel sequence in which the minimum number of 0s between 1 and 1 is 1, the maximum number of 1s between 0 and 0 is infinity, and the repeated minimum transition run (RMTR) is 2.

한편, 본 발명에 따른 데이터 기록방법은 입력 시퀀스에 대한 채널 시퀀스를 생성하는 단계, 런 길이 제한 조건의 위반 여부를 판단하는 단계, 런 길이 제한 조건을 위반한 경우, 채널 시퀀스에 포함되는 비트 중 런 길이 제한 조건의 위반이 발생하는 위치보다 앞의 위치에서 비트 플립을 실시하여 변조 데이터를 생성하는 단계 및 변조 데이터를 기록매체에 저장하는 단계를 포함한다. Meanwhile, the data recording method according to the present invention includes generating a channel sequence for an input sequence, determining whether a run length constraint is violated, and when a run length constraint is violated, a run among bits included in the channel sequence. And performing a bit flip at a position before the violation of the length constraint condition to generate the modulated data and storing the modulated data on the recording medium.

한편, 본 발명에 따른 데이터 기록장치는 데이터를 변조하는 변조부, 및 데이터를 기록매체에 광을 조사하여 변조부에서 생성된 변조 데이터를 기록매체에 기록하는 광학부를 포함한다. On the other hand, the data recording apparatus according to the present invention includes a modulator for modulating data, and an optical unit for irradiating light onto the recording medium to record the modulated data generated by the modulator on the recording medium.

본 발명은 k-구속 조건을 부가 하기 위한 보조 테이블을 필요로 하지 않으며, 비트 플립에 의한 k-구속 조건 변화를 용이하게 할 수 있고, 비트 플립에 의한 에러 전달이 존재하지 않는 효과를 갖는다. The present invention does not require an auxiliary table for adding a k-restriction condition, can facilitate the change of the k-restriction condition by bit flip, and has an effect that there is no error propagation by bit flip.

이하 첨부된 도면을 참조하여 본 발명의 실시예를 본 발명이 속하는 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세하게 설명한다. 본 명세서에서 기록장치라 함은, 기록매체를 이용하여 데이터를 기록하거나 기록된 데이터를 재생하는 것이 가능한 모든 장치를 의미한다. 또한, 본 명세서에서 기록매체라 함은, 데이터가 기록되어 있거나 기록하는 것이 가능한 모든 매체를 의미하 며, 구체적으로는 광 디스크를 예로 들 수 있다. DETAILED DESCRIPTION Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. In the present specification, the recording apparatus means any device capable of recording data or reproducing the recorded data using a recording medium. In the present specification, the recording medium means any medium in which data is recorded or can be recorded, and specifically, an optical disc may be used.

도 1은 본 발명의 실시예에 따른 데이터 기록장치의 블록도이다. 이하에서 도 1을 참조하여 본 발명의 실시예에 따른 데이터 기록장치에 대하여 설명한다. 도시한 바와 같이, 본 발명의 실시예에 따른 기록장치는 변조부(100)와 광학부(200)를 포함한다. 1 is a block diagram of a data recording apparatus according to an embodiment of the present invention. Hereinafter, a data recording apparatus according to an embodiment of the present invention will be described with reference to FIG. 1. As shown, the recording apparatus according to the embodiment of the present invention includes a modulator 100 and an optical unit 200.

변조부(100)는 입력 데이터를 변조하여 변조 데이터를 생성하고, 광학부(200)는 변조부(100)에서 생성된 변조 데이터를 기록매체(300)에 기록한다. 이때, 광학부(200)는 광 픽업(pick up)으로 구성될 수 있다. The modulator 100 modulates input data to generate modulated data, and the optical unit 200 records the modulated data generated by the modulator 100 on the recording medium 300. In this case, the optical unit 200 may be configured as an optical pick up.

도 1에 도시한 바와 같이, 변조부(100)는 인코더(encoder, 10), 비트 플리퍼(bit flipper, 12) 및 프리코더(precoder, 14)를 포함한다. As shown in FIG. 1, the modulator 100 includes an encoder 10, a bit flipper 12, and a precoder 14.

한편, 도 2는 인코더(10)에서 사용이 가능한 변조 테이블의 일례를 나타낸다. 이때, 도 2의 변조 테이블은 (1, ∞, 2)의 구속 조건을 갖는 패리티 보완(parity complementary) 코드이다. 즉, 변조 테이블에 의해 생성되는 채널 시퀀스는 1과 1 사이에 최소 1개의 0이 존재하며, 무한대의 0이 존재할 수 있다. 또한, RMTR(repeated minimum transition run)은 2가 된다. 변조 테이블은 적어도 하나의 레지스터를 포함하며, 각각의 레지스터는 입력 코드에 상응하는 코드 워드와 다음 레지스터를 지정하는 정보를 포함한다. 2 shows an example of a modulation table that can be used in the encoder 10. In this case, the modulation table of FIG. 2 is a parity complementary code having a constraint of (1, ∞, 2). That is, in the channel sequence generated by the modulation table, at least one zero exists between 1 and 1, and infinite zero may exist. In addition, a replicated minimum transition run (RMTR) becomes two. The modulation table includes at least one register, each register containing a code word corresponding to the input code and information specifying the next register.

비트 플리퍼(12, bit flipper)는 인코더(10)에 의해 생성된 채널 시퀀스가 런 길이 제한(Run Length Limit, RLL) 조건에 위배되는 경우, 채널 시퀀스에 포함되는 비트 중 런 길이 제한 조건의 위반이 발생하는 위치보다 앞의 위치에서 비트 플립(bit flip)을 실시하여 런 길이 제한 조건을 부가한다. 이에 대하여는 후술하도록 한다. When the channel sequence generated by the encoder 10 violates the Run Length Limit (RLL) condition, the bit flipper 12 may violate the run length constraint among the bits included in the channel sequence. The run length constraint is added by performing a bit flip at a position before the generated position. This will be described later.

프리코더(14)는 인코더(10) 및 비트 플리퍼(12)에 의해 생성된 데이터를 NRZI(Non Return to Zero Invert) 신호로 변환하여 광학부(200)에 전달한다. 광학부(200)는 광 픽업을 이용하여 변조된 데이터를 기록매체에 기록한다. The precoder 14 converts the data generated by the encoder 10 and the bit flipper 12 into a non return to zero invert (NRZI) signal and transmits the data to the optical unit 200. The optical unit 200 records the modulated data on the recording medium by using the optical pickup.

이하에서는 본 발명의 실시예에 따른 데이터 변조방법을 상세하게 설명한다. 먼저, 도 2에서 예시한 변조 테이블을 이용하여 입력되는 비트들에 대응하는 채널 시퀀스를 생성한다. 상기한 바와 같이, 도 2의 변조 테이블은 (1, ∞, 2) 패리티 보완(parity complementary) 코드를 생성한다. Hereinafter, a data modulation method according to an embodiment of the present invention will be described in detail. First, a channel sequence corresponding to the input bits is generated using the modulation table illustrated in FIG. 2. As described above, the modulation table of FIG. 2 generates (1, ∞, 2) parity complementary codes.

도 2에서는 코드율(code rate)이 2/3인 경우, 즉 2 비트(bit)의 입력 코드에 대하여 3 비트의 코드 워드(codeword)를 생성하는 변조 테이블을 예시한다. 또한, 도 2에서는 변조 테이블이 5개의 스테이트(state)로 각각 구분되는 5개의 레지스터(register)를 포함하는 경우의 변조방법을 예시한다. 그러나 본 발명이 여기에 한정되는 것은 아니며 본 발명은 이와 다른 형태의 변조 테이블을 사용하는 것에도 적용이 가능하다. FIG. 2 illustrates a modulation table in which a code rate of 2/3 is generated, that is, a code word of 3 bits is generated for an input code of 2 bits. In addition, FIG. 2 illustrates a modulation method in the case where the modulation table includes five registers, each divided into five states. However, the present invention is not limited thereto, and the present invention can be applied to using a modulation table of another type.

도 2를 참조하면, 초기 설정된 스테이트에서 초기 입력 코드에 상응하는 코드 워드를 출력하고, 변조 테이블에 지정된 다음 스테이트(next state)로 이동하여 다음의 입력 코드에 대한 코드 워드들을 순차적으로 발생시킨다. Referring to FIG. 2, a code word corresponding to an initial input code is output from an initially set state, and a code word for a next input code is sequentially generated by moving to a next state specified in a modulation table.

예를 들어, 변조 코드가 S1에서 인코딩을 시작한다고 가정하고, 변조 코드 인코더의 입력 시퀀스가 [10 10 10]이라 할 때, 도 2에 따라 초기 입력 코드 [10] 에 대한 채널 코드는 [000]이 되고, 다음 스테이트는 S1이 된다. 따라서 다음 입력 코드 [10]에 대한 채널 코드 또한 [000]이 된다. 이와 같은 과정에 따라 생성된 채널 시퀀스는 [000, 000, 000]이 된다. For example, suppose that the modulation code starts encoding at S1, and when the input sequence of the modulation code encoder is [10 10 10], the channel code for the initial input code [10] according to FIG. 2 is [000]. And the next state is S1. Therefore, the channel code for the next input code [10] also becomes [000]. The channel sequence generated according to this process becomes [000, 000, 000].

한편, 이와 같이 생성된 채널 시퀀스에 있어서 시스템의 원활한 타이밍 복원을 위해서는 채널 시퀀스에 k-구속 조건 즉, 1과 1 사이에 존재하는 최대 0의 개수 조건을 부가하는 것이 필요하다. Meanwhile, in the channel sequence generated as described above, in order to smoothly restore the timing of the system, it is necessary to add a k-restriction condition to the channel sequence, that is, a maximum number of 0 conditions existing between 1 and 1.

본 실시예에서는 비트 플립 방법을 사용하여 k-구속 조건을 부가한다. 이때, k-구속 조건을 부가하는 과정에서 디자인된 변조 코드의 다른 구속 조건을 위반하지 않도록 하기 위한 비트 플립 위치의 선택이 필요하다. In this embodiment, the k-restriction condition is added using the bit flip method. At this time, it is necessary to select the bit flip position so as not to violate other constraints of the designed modulation code in the process of adding the k-constraint condition.

비트 플립은 기록매체에 데이터가 기록되기 전에 생성된 채널 시퀀스에 에러를 부가하는 방법이다. 따라서 기록매체에 기록되는 시퀀스는 에러를 포함하게 된다. 이때, 본 발명의 실시예에 따른 변조방법에 의하면 발생하는 에러의 개수는 플립된 비트 수와 동일하다. Bit flip is a method of adding an error to a channel sequence generated before data is written to a recording medium. Therefore, the sequence recorded on the recording medium contains an error. At this time, according to the modulation method according to the embodiment of the present invention, the number of errors generated is equal to the number of flipped bits.

비트 플립에 의해 형성된 에러의 정정은 디코딩 부의 에러 정정 알고리즘에 의해 수행되는데, 비트 플립 회수의 증가는 에러 정정 알고리즘의 부가 정보의 증가를 가져오게 되므로 디코딩 시 효율이 저하된다. 따라서 비트 플립의 회수를 적절한 수로 제한하는 것이 필요하다. Correction of the error formed by the bit flip is performed by the error correction algorithm of the decoding unit, and the increase in the number of bit flips results in an increase in the additional information of the error correction algorithm, thereby degrading efficiency in decoding. Therefore, it is necessary to limit the number of bit flips to an appropriate number.

이 경우, k값이 작을수록 비트 플립 회수는 증가하게 되므로, 이를 고려하여 k-구속 조건을 결정하며, k-구속 조건을 비트 플립 회수의 통계적 검사에 근거하여 설정할 수 있다. 또한, k 값의 결정은 비트 플립 회수 즉, 가해진 에러의 수가 에 러 정정 코드의 정정 능력 안에 있도록 결정하는 것이 바람직하다. 또한, k 값은 디코딩 시 에러 전달을 발생하지 않도록 하는 비트 플립 위치의 존재 유무에 따라 결정될 수 있다. In this case, since the number of bit flips increases as the k value is smaller, the k-binding condition may be determined in consideration of this, and the k-binding condition may be set based on a statistical check of the number of bit flips. Also, the determination of the value of k is preferably determined so that the number of bit flips, i.e., the number of errors applied, is within the correction capability of the error correction code. In addition, the k value may be determined depending on the presence or absence of a bit flip position that does not cause error propagation during decoding.

일례로, 상기한 채널 시퀀스에 대하여 k 값을 7 내지 10으로 설정할 수 있다. 이하에서는 k값이 10, 9, 7인 경우를 예로 도 3a 내지 도 5c를 참조하여 비트 플립 방법을 설명하도록 한다. For example, the k value may be set to 7 to 10 for the channel sequence. Hereinafter, the bit flip method will be described with reference to FIGS. 3A to 5C, for example, when k values are 10, 9, and 7.

먼저, 도 3a 내지 도 3c를 참조하여 k값이 10인 경우의 비트 플립 방법을 설명하도록 한다. 상기한 변조 테이블에서 생성된 채널 시퀀스는 그 앞에 위치하는 시퀀스와 그 뒤에 오는 시퀀스와의 관계에 따라 k-구속 조건 10에 위반될 수 있다. 이러한 채널 시퀀스에 대하여 비트 플립을 실시함으로써, 생성된 채널 시퀀스에 k- 구속 조건 10을 부가한다. First, a bit flip method when the k value is 10 will be described with reference to FIGS. 3A to 3C. The channel sequence generated in the modulation table may violate k-constraining condition 10 depending on the relationship between the sequence preceding it and the sequence following it. By performing a bit flip on this channel sequence, the k- constraint condition 10 is added to the generated channel sequence.

도 3a 내지 도 3c는 K가 10인 경우 비트 플립을 실시하는 예를 나타낸다. 상기와 같이 k값이 정해진 경우, 비트 플립 위치를 결정한다. 이때, 채널 시퀀스에 k-구속을 부가하기 위한 비트 플립 위치는 디코딩 시 에러 전달이 없도록 선택될 수 있다. 3A to 3C illustrate examples of performing a bit flip when K is 10. Referring to FIG. If k is determined as described above, the bit flip position is determined. In this case, the bit flip position for adding k-restraining to the channel sequence may be selected such that there is no error propagation in decoding.

디코딩 시 에러 전달을 야기하기 않기 위해 비트 플립의 위치는 k-구속 조건 위반 위치와 코드워드의 길이에 근거하여 결정될 수 있다. 보다 구체적으로, 위반 위치를 코드워드로 나눈 후 그 나머지 값에 의해 결정할 수 있다. In order not to cause error propagation in decoding, the position of the bit flip may be determined based on the k-constraint violation position and the length of the codeword. More specifically, the location of violation may be determined by dividing the codeword by the remaining values.

예를 들어, 위반 위치를 코드워드로 나눈 나머지 값이 0이면, 비트 플립 위치는 위반 위치보다 4비트 앞이 되며, 나머지 값이 1이면, 비트 플립 위치는 위반 위치보다 2비트 앞이 되고, 나머지 값이 2이면, 비트 플립 위치는 위반 위치보다 3비트 앞이 된다. For example, if the remaining position divided by the codeword is 0, the bit flip position is 4 bits ahead of the violation position; if the remaining value is 1, the bit flip position is 2 bits ahead of the violation position, If the value is 2, the bit flip position is 3 bits ahead of the violation position.

도 3a에서 k-구속 조건 10의 위반 위치는 14가 된다. 또한, 변조 테이블에 의한 코드워드의 길이는 3이 된다. 이때, 위반 위치를 코드워드로 나눈 나머지는 2가 되므로, 비트 플립 위치는 위반 위치인 14보다 3비트 앞인 11이 된다. 이와 같은 비트 플립에 의해 채널 시퀀스는 k 구속 조건 10이 부가된 시퀀스가 된다. 이 경우, 디코딩 시 에러 전달을 야기하기 않고, d, r 구속 조건 즉, 1과 1사이 존재하는 최소 0의 개수 조건과 RMTR 조건은 각각 d=1, r=2을 만족하게 된다. In FIG. 3A, the violation position of the k-constraining condition 10 is 14. In addition, the codeword length of the modulation table is three. In this case, the remainder obtained by dividing the violation position by the codeword is 2, so the bit flip position is 11, which is 3 bits before the violation position 14. By such a bit flip, the channel sequence becomes a sequence to which the k constraint condition 10 is added. In this case, d and r constraints, that is, the minimum number of conditions 0 and the RMTR condition existing between 1 and 1, satisfy d = 1 and r = 2 without causing error propagation during decoding.

도 3b의 경우, k-구속 조건 10의 위반 위치는 13이 된다. 따라서 위반 위치를 코드워드로 나눈 나머지는 1이 되므로, 비트 플립 위치는 위반 위치인 13보다 2비트 앞인 11이 된다. 이와 같은 비트 플립에 의해 채널 시퀀스는 k 구속 조건 10이 부가된 시퀀스가 된다. 이 경우, 비트 플립에 의해 디코딩 시 에러 전달을 야기하기 않으며, d, r 구속 조건 d=1, r=2을 만족하게 된다. In the case of FIG. 3B, the violation position of the k-constraining condition 10 is 13. Therefore, since the violation position divided by the codeword is 1, the bit flip position is 11, which is two bits before the violation position 13. By such a bit flip, the channel sequence becomes a sequence to which the k constraint condition 10 is added. In this case, bit flipping does not cause error propagation during decoding and satisfies d, r constraints d = 1 and r = 2.

도 3c의 경우, k-구속 조건 10의 위반 위치는 12가 된다. 따라서 위반 위치를 코드워드로 나눈 나머지는 0이 되므로, 비트 플립 위치는 위반 위치인 12보다 4비트 앞인 8이 된다. 이와 같은 비트 플립에 의해 채널 시퀀스는 k 구속 조건 10이 부가된 시퀀스가 된다. 이 경우, 비트 플립에 의해 디코딩 시 에러 전달을 야기하기 않으며, d, r 구속 조건 d=1, r=2을 만족하게 된다. In the case of FIG. 3C, the violation position of the k-constraining condition 10 is 12. Therefore, since the violation position divided by the codeword is 0, the bit flip position is 8 four bits before the violation position 12. By such a bit flip, the channel sequence becomes a sequence to which the k constraint condition 10 is added. In this case, bit flipping does not cause error propagation during decoding and satisfies d, r constraints d = 1 and r = 2.

이하에서는 k값이 9인 경우의 비트 플립 방법을 설명하도록 한다. 상기한 변조 테이블에 의해 생성된 채널 시퀀스는 그 앞에 위치하는 시퀀스와 그 뒤에 오 는 시퀀스와의 관계에 따라 k-구속 조건 9에 위반된다. 비트 플리퍼(12)는 이러한 채널 시퀀스에 대하여 비트 플립을 실시함으로써, 생성된 채널 시퀀스에 k- 구속 조건 9를 부가한다. Hereinafter, the bit flip method when the k value is 9 will be described. The channel sequence generated by the modulation table is violated in k-constraining condition 9 according to the relationship between the sequence located before and the sequence following. Bit flipper 12 adds a k− constraint 9 to the generated channel sequence by performing a bit flip on this channel sequence.

도 4a 내지 도 4c는 K가 9인 경우 비트 플립을 실시하는 예를 나타낸다. 도 4a 내지 도 4c를 참조하여 비트 플립을 실시하는 방법을 상세하게 설명한다. 상기한 바와 같이, 채널 시퀀스에 k-구속을 부가하기 위한 비트 플립 위치는 디코딩 시 에러 전달이 없도록 선택된다. 4A to 4C show an example of performing a bit flip when K is 9. A method of performing a bit flip will be described in detail with reference to FIGS. 4A to 4C. As noted above, the bit flip position for adding k-restraints to the channel sequence is chosen such that there is no error propagation in decoding.

먼저, 채널 시퀀스에 k=9라는 구속 조건을 부가 하기 위해 디코딩 시 에러 전달을 야기하기 않는 특정 비트 플립 위치를 선택한다. 디코딩 시 에러 전달을 야기하기 않기 위해 비트 플립의 위치는 k-구속 조건 위반 위치와 코드워드의 길이에 근거하여 결정될 수 있다. First, to add a constraint of k = 9 to the channel sequence, a specific bit flip position is selected that does not cause error propagation in decoding. In order not to cause error propagation in decoding, the position of the bit flip may be determined based on the k-constraint violation position and the length of the codeword.

도 4a에서 k-구속 조건 9의 위반 위치는 13이 된다. 또한, 변조 테이블에 의한 코드워드의 길이는 3이 된다. 이때, 위반 위치를 코드워드로 나눈 후 그 나머지 값에 의해 결정한다. In FIG. 4A, the violation position of the k-constraining condition 9 is 13. In addition, the codeword length of the modulation table is three. At this time, the violation position is determined by dividing the code word by the remaining values.

예를 들어, 위반 위치를 코드워드로 나눈 나머지 값이 0이면, 비트 플립 위치는 위반 위치보다 4비트 앞이 되며, 나머지 값이 1이면, 비트 플립 위치는 위반 위치보다 2비트 앞이 되고, 나머지 값이 2이면, 비트 플립 위치는 위반 위치보다 3비트 앞이 된다. For example, if the remaining position divided by the codeword is 0, the bit flip position is 4 bits ahead of the violation position; if the remaining value is 1, the bit flip position is 2 bits ahead of the violation position, If the value is 2, the bit flip position is 3 bits ahead of the violation position.

도 4a의 경우 나머지는 1이 되므로, 비트 플립 위치는 위반 위치인 13보다 2비트 앞인 11이 된다. 이와 같은 비트 플립에 의해 채널 시퀀스는 k 구속 조건 9 가 부가된 시퀀스가 된다. 이 경우, 디코딩 시 에러 전달을 야기하기 않고, d, r 구속 조건 d=1, r=2을 만족하게 된다. In the case of FIG. 4A, since the remainder is 1, the bit flip position is 11, which is 2 bits before the violation position 13. By such a bit flip, the channel sequence becomes a sequence to which k constraint condition 9 is added. In this case, d, r constraints d = 1 and r = 2 are satisfied without causing error propagation during decoding.

도 4b의 경우, k-구속 조건 9의 위반 위치는 12가 된다. 따라서 나머지는 0이 되므로, 비트 플립 위치는 위반 위치인 12보다 4비트 앞인 8이 된다. 이와 같은 비트 플립에 의해 채널 시퀀스는 k 구속 조건 9가 부가된 시퀀스가 된다. 이 경우, 비트 플립에 의해 디코딩 시 에러 전달을 야기하기 않으며, d, r 구속 조건 d=1, r=2을 만족하게 된다. In the case of FIG. 4B, the violation position of the k-constraining condition 9 becomes 12. Therefore, the remainder is zero, so the bit flip position is 8, four bits before the violation position 12. By such bit flipping, the channel sequence becomes a sequence to which k constraint condition 9 is added. In this case, bit flipping does not cause error propagation during decoding and satisfies d, r constraints d = 1 and r = 2.

도 4c의 경우, k-구속 조건 9의 위반 위치는 11이 된다. 따라서 나머지는 2가 되므로, 비트 플립 위치는 위반 위치인 11보다 3비트 앞인 8이 된다. 이와 같은 비트 플립에 의해 채널 시퀀스는 k 구속 조건 9가 부가된 시퀀스가 된다. 이 경우, 비트 플립에 의해 디코딩 시 에러 전달을 야기하기 않으며, d, r 구속 조건 d=1, r=2을 만족하게 된다. In the case of FIG. 4C, the violation position of the k-constraining condition 9 is 11. Therefore, the remainder is 2, so the bit flip position is 8, which is 3 bits before the violation position 11. By such bit flipping, the channel sequence becomes a sequence to which k constraint condition 9 is added. In this case, bit flipping does not cause error propagation during decoding and satisfies d, r constraints d = 1 and r = 2.

이하에서는 k값이 7인 경우의 비트 플립 방법을 설명하도록 한다. 상기한 변조 테이블에 의해 생성된 채널 시퀀스는 그 앞에 위치하는 시퀀스와 그 뒤에 오는 시퀀스와의 관계에 따라 k-구속 조건 7에 위반된다. 비트 플리퍼(12)는 이러한 채널 시퀀스에 대하여 비트 플립을 실시함으로써, 생성된 채널 시퀀스에 k- 구속 조건 7를 부가한다. Hereinafter, the bit flip method when the k value is 7 will be described. The channel sequence generated by the modulation table described above violates k-constraining condition 7, depending on the relationship between the sequence preceding it and the sequence following it. Bit flipper 12 adds a k- constraint condition 7 to the generated channel sequence by performing a bit flip on this channel sequence.

도 5a 내지 도 5c는 K가 7인 경우 비트 플립을 실시하는 예를 나타낸다. 도 5a 내지 도 5c를 참조하여 비트 플립을 실시하는 방법을 상세하게 설명한다. 상기한 바와 같이, 채널 시퀀스에 k-구속을 부가하기 위한 비트 플립 위치는 디코딩 시 에러 전달이 없도록 선택된다. 5A to 5C show an example of performing a bit flip when K is 7. A method of performing a bit flip will be described in detail with reference to FIGS. 5A to 5C. As noted above, the bit flip position for adding k-restraints to the channel sequence is chosen such that there is no error propagation in decoding.

먼저, 채널 시퀀스에 k=7이라는 구속 조건을 부가 하기 위해 디코딩 시 에러 전달을 야기하기 않는 특정 비트 플립 위치를 선택한다. 디코딩 시 에러 전달을 야기하기 않기 위해 비트 플립의 위치는 k-구속 조건 위반 위치와 코드워드의 길이에 근거하여 결정될 수 있다. First, to add a constraint of k = 7 to the channel sequence, a specific bit flip position is selected that does not cause error propagation in decoding. In order not to cause error propagation in decoding, the position of the bit flip may be determined based on the k-constraint violation position and the length of the codeword.

도 5a에서 k-구속 조건 7의 위반 위치는 11이 된다. 또한, 변조 테이블에 의한 코드워드의 길이는 3이 된다. 이때, 위반 위치를 코드워드로 나눈 후 그 나머지 값에 의해 결정한다. In FIG. 5A, the violation position of the k-constraining condition 7 is 11. In addition, the codeword length of the modulation table is three. At this time, the violation position is determined by dividing the code word by the remaining values.

예를 들어, 위반 위치를 코드워드로 나눈 나머지 값이 0이면, 비트 플립 위치는 위반 위치보다 1비트 앞이 되며, 나머지 값이 1이면, 비트 플립 위치는 위반 위치보다 2비트 앞이 되고, 나머지 값이 2이면, 비트 플립 위치는 위반 위치보다 3비트 앞이 된다. For example, if the remaining value divided by the codeword is 0, the bit flip position is 1 bit ahead of the violation position; if the remaining value is 1, the bit flip position is 2 bits ahead of the violation position, If the value is 2, the bit flip position is 3 bits ahead of the violation position.

도 5a의 경우 나머지는 2가 되므로, 비트 플립 위치는 위반 위치인 11보다 3비트 앞인 8이 된다. 이와 같은 비트 플립에 의해 채널 시퀀스는 k 구속 조건 7이 부가된 시퀀스가 된다. 이 경우, 디코딩 시 에러 전달을 야기하기 않고, d, r 구속 조건 d=1, r=2을 만족하게 된다. In the case of FIG. 5A, since the remainder is 2, the bit flip position is 8, which is 3 bits before the violation position 11. By such a bit flip, the channel sequence becomes a sequence to which the k constraint condition 7 is added. In this case, d, r constraints d = 1 and r = 2 are satisfied without causing error propagation during decoding.

도 5b의 경우, k-구속 조건 7의 위반 위치는 10이 된다. 따라서 나머지는 1이 되므로, 비트 플립 위치는 위반 위치인 10보다 2비트 앞인 8이 된다. 이와 같은 비트 플립에 의해 채널 시퀀스는 k 구속 조건 7이 부가된 시퀀스가 된다. 이 경우, 비트 플립에 의해 디코딩 시 에러 전달을 야기하기 않으며, d, r 구속 조건 d=1, r=2을 만족하게 된다. In the case of FIG. 5B, the violation position of the k-constraining condition 7 is 10. FIG. Thus, the remainder is 1, so the bit flip position is 8, two bits before the violation position 10. By such a bit flip, the channel sequence becomes a sequence to which the k constraint condition 7 is added. In this case, bit flipping does not cause error propagation during decoding and satisfies d, r constraints d = 1 and r = 2.

도 5c의 경우, k-구속 조건 7의 위반 위치는 9가 된다. 따라서 나머지는 0이 되므로, 비트 플립 위치는 위반 위치인 9보다 1비트 앞인 8이 된다. 이와 같은 비트 플립에 의해 채널 시퀀스는 k 구속 조건 7이 부가된 시퀀스가 된다. 이 경우, 비트 플립에 의해 디코딩 시 에러 전달을 야기하기 않으며, d, r 구속 조건 d=1, r=2을 만족하게 된다. In the case of FIG. 5C, the violation position of the k-constraining condition 7 is 9. Thus, the remainder is zero, so the bit flip position is 8, one bit before the violation position of nine. By such a bit flip, the channel sequence becomes a sequence to which the k constraint condition 7 is added. In this case, bit flipping does not cause error propagation during decoding and satisfies d, r constraints d = 1 and r = 2.

상기의 예들에서, 비트 플립을 실시하여 채널 시퀀스를 변환한다고 하더라도, 디코딩 후 에러 개수는 비트 플립의 회수와 동일함을 확인할 수 있다. 변조 테이블에 의해 생성된 코드는 k-구속 조건을 위반하는 채널 시퀀스가 많이 존재하지만, 상기와 같은 방법에 의해 k-구속 조건과, d-구속 조건 및 RMTR을 만족하는 채널 시퀀스로 변환이 가능하다. 또한, 본 발명의 실시예에 따른 변조방법에 의하면 k-구속 조건을 부가하기 위한 별도의 보조 테이블을 필요로 하지 않는다. 따라서 본 실시예에 따른 변조방법은 보다 우수한 직류 억압 성능을 가질 수 있다. In the above examples, even if a bit flip is performed to convert the channel sequence, it can be seen that the number of errors after decoding is equal to the number of bit flips. Codes generated by the modulation table have many channel sequences that violate k-constraints, but can be converted to channel sequences that satisfy k-constraints, d-constraints, and RMTRs by the method described above. . In addition, the modulation method according to the embodiment of the present invention does not require a separate auxiliary table for adding k-constraints. Therefore, the modulation method according to the present embodiment may have better DC suppression performance.

상기에서 본 발명의 바람직한 실시예에 대하여 설명하였지만, 본 발명은 이에 한정되는 것이 아니고 특허청구범위와 발명의 상세한 설명 및 첨부한 도면의 범위 안에서 여러 가지로 변형하여 실시하는 것이 가능하고 이 또한 본 발명의 범위에 속하는 것은 당연하다. Although the preferred embodiments of the present invention have been described above, the present invention is not limited thereto, and various modifications and changes can be made within the scope of the claims and the detailed description of the invention and the accompanying drawings, and the present invention is also provided. Naturally, it belongs to the range of.

도 1은 본 발명의 실시예에 따른 데이터 기록장치의 블록도이다. 1 is a block diagram of a data recording apparatus according to an embodiment of the present invention.

도 2는 본 발명의 실시예에 따른 데이터 변조방법에서 채널 시퀀스를 생성하는 변조 테이블의 일례를 나타낸다. 2 shows an example of a modulation table for generating a channel sequence in a data modulation method according to an embodiment of the present invention.

도 3a 내지 도 3c는 K가 10인 경우 비트 플립을 수행하는 방법을 예시한 개략도이다. 3A to 3C are schematic diagrams illustrating a method of performing a bit flip when K is 10.

도 4a 내지 도 4c는 K가 9인 경우 본 발명의 실시예에서 비트 플립을 수행하는 방법을 예시한 개략도이다. 4A through 4C are schematic diagrams illustrating a method of performing a bit flip in an embodiment of the present invention when K is 9.

도 5a 내지 도 5c는 K가 7인 경우 본 발명의 실시예에서 비트 플립을 수행하는 방법을 예시한 개략도이다. 5A through 5C are schematic diagrams illustrating a method of performing a bit flip in an embodiment of the present invention when K is 7.

Claims (20)

입력 시퀀스에 대한 채널 시퀀스를 생성하는 단계;Generating a channel sequence for the input sequence; 런 길이 제한(Run Length Limit, RLL) 조건의 위반 여부를 판단하는 단계; 및Determining whether a run length limit (RLL) condition is violated; And 상기 런 길이 제한 조건을 위반한 경우, 상기 채널 시퀀스에 포함되는 비트 중 상기 런 길이 제한 조건의 위반이 발생하는 위치보다 앞의 위치에서 비트 플립을 실시하는 단계If the run length constraint is violated, performing a bit flip at a position before the violation of the run length constraint occurs among bits included in the channel sequence; 를 포함하는 데이터 변조방법.Data modulation method comprising a. 제1 항에 있어서,According to claim 1, 상기 비트 플립을 실시하는 단계는, 디코딩 시 에러 전달이 없도록 상기 비트 플립 위치를 결정하는 단계를 포함하는 데이터 변조방법. The performing of the bit flipping includes determining the bit flip position such that there is no error propagation in decoding. 제2 항에 있어서,The method of claim 2, 상기 비트 플립 위치를 결정하는 단계에서, 상기 런 길이 제한 조건의 위반 위치와 코드워드의 길이에 근거하여 상기 비트 플립 위치를 결정하는 데이터 변조방법.And determining the bit flip position based on the violation position of the run length constraint and the length of a codeword. 제3 항에 있어서,The method of claim 3, wherein 상기 비트 플립 위치를 결정하는 단계에서, 상기 위반 위치를 상기 코드워드의 길이로 나눈 나머지에 근거하여 비트 플립 위치를 결정하는 데이터 변조방법.And determining the bit flip position based on a remainder obtained by dividing the violation position by the length of the codeword. 제2 항에 있어서,The method of claim 2, 상기 런 길이 제한 조건은 상기 채널 시퀀스에서 1과 1 사이에 존재하는 최대 0의 개수에 대한 조건이고, 상기 비트 플립은 특정 위치의 0 비트를 1 비트로 변환하여 이루어지는 데이터 변조방법.The run length limitation condition is a condition for a maximum number of zeros existing between 1 and 1 in the channel sequence, and the bit flip is performed by converting 0 bits at a specific position into 1 bit. 제1 항에 있어서,According to claim 1, 비트 플립 회수의 통계적 검사에 근거하여 상기 런 길이 제한 조건을 설정하는 단계를 더 포함하는 데이터 변조방법.And setting the run length constraint condition based on a statistical check of the number of bit flips. 제1 항에 있어서,According to claim 1, 상기 입력 시퀀스에 대한 채널 시퀀스를 생성하는 단계에서, 변조 테이블을 이용하여 입력 시퀀스에 대한 채널 시퀀스를 생성하는 데이터 변조방법.Generating a channel sequence for the input sequence using a modulation table in the step of generating a channel sequence for the input sequence. 제7 항에 있어서,The method of claim 7, wherein 상기 변조 테이블은 적어도 하나의 스테이트, 입력 코드에 상응하는 코드 워드 및 다음 스테이트를 지정하는 정보를 포함하는 데이터 변조방법.And wherein said modulation table comprises information specifying at least one state, a code word corresponding to an input code, and a next state. 제8 항에 있어서,The method of claim 8, 상기 변조 테이블은 1과 1 사이의 최소 0의 개수가 1이며, 0과 0 사이의 최대 1의 개수가 무한대이고, RMTR(repeated minimum transition run)이 2인 채널 시퀀스를 생성하는 데이터 변조방법.The modulation table is a data modulation method for generating a channel sequence of the minimum number of 0 between 1 and 1 is 1, the maximum number of 1 between 0 and 0 is infinite, the repeated minimum transition run (RMTR) 2. 입력 시퀀스에 대한 채널 시퀀스를 생성하는 인코더(encoder); 및An encoder for generating a channel sequence for the input sequence; And 런 길이 제한 조건의 위반 여부를 판단하고, 상기 런 길이 제한 조건을 위반한 경우, 상기 채널 시퀀스에 포함되는 비트 중 상기 런 길이 제한 조건의 위반이 발생하는 위치보다 앞의 위치에서 비트 플립을 실시하는 비트 플리퍼(bit flipper)It is determined whether a run length constraint is violated, and when the run length constraint is violated, a bit flip is performed at a position before the violation of the run length constraint among bits included in the channel sequence. Bit flipper 를 포함하는 데이터 변조장치.Data modulation device comprising a. 제10 항에 있어서,The method of claim 10, 상기 비트 플리퍼는 디코딩 시 에러 전달이 없도록 상기 비트 플립 위치를 결정하는 데이터 변조장치. And the bit flipper determines the bit flip position so that there is no error propagation in decoding. 제11 항에 있어서,The method of claim 11, wherein 상기 비트 플리퍼는 상기 런 길이 제한 조건의 위반이 발생하는 위치와 코드워드의 길이에 근거하여 상기 비트 플립 위치를 결정하는 데이터 변조장치.And the bit flipper determines the bit flip position based on the location of the violation of the run length constraint and the length of the codeword. 제12 항에 있어서,The method of claim 12, 상기 비트 플리퍼는 상기 위반 위치를 상기 코드워드의 길이로 나눈 나머지에 근거하여 비트 플립 위치를 결정하는 데이터 변조장치.And the bit flipper determines a bit flip position based on a remainder obtained by dividing the violation position by the length of the codeword. 제10 항에 있어서,The method of claim 10, 상기 런 길이 제한 조건은 상기 채널 시퀀스에서 1과 1 사이에 존재하는 최대 0의 개수에 대한 조건이고, 상기 비트 플리퍼는 특정 위치의 0 비트를 1 비트로 변환하는 데이터 변조장치.The run length limitation condition is a condition for a maximum number of zeros existing between 1 and 1 in the channel sequence, and the bit flipper converts 0 bits at a specific position into 1 bit. 제10 항에 있어서,The method of claim 10, 상기 인코더는 비트 플립 회수의 통계적 검사에 근거하여 런 길이 제한 조건을 설정하는 데이터 변조장치.And the encoder sets a run length limitation condition based on a statistical check of the number of bit flips. 제10 항에 있어서,The method of claim 10, 상기 인코더는 변조 테이블을 이용하여 입력 시퀀스에 대한 채널 시퀀스를 생성하는 데이터 변조장치.And the encoder generates a channel sequence for the input sequence using the modulation table. 제16 항에 있어서,The method of claim 16, 상기 변조 테이블은 적어도 하나의 스테이트, 입력 코드에 상응하는 코드 워드 및 다음 스테이트를 지정하는 정보를 포함하는 데이터 변조장치.And the modulation table includes information specifying at least one state, a code word corresponding to an input code, and a next state. 제17 항에 있어서,The method of claim 17, 상기 변조 테이블은 1과 1 사이의 최소 0의 개수가 1이며, 0과 0 사이의 최대 1의 개수가 무한대이고, RMTR(repeated minimum transition run)이 2인 채널 시퀀스를 생성하는 데이터 변조장치.And the modulation table generates a channel sequence having a minimum number of 0s between 1 and 1, a maximum number of 1s between 0 and 0, and an infinite minimum transition run (RMTR) of 2. 입력 시퀀스에 대한 채널 시퀀스를 생성하는 단계;Generating a channel sequence for the input sequence; 런 길이 제한 조건의 위반 여부를 판단하는 단계; Determining whether a run length constraint is violated; 상기 런 길이 제한 조건을 위반한 경우, 상기 채널 시퀀스에 포함되는 비트 중 상기 런 길이 제한 조건의 위반이 발생하는 위치보다 앞의 위치에서 비트 플립을 실시하여 변조 데이터를 생성하는 단계; 및Generating a modulated data by performing a bit flip at a position before a violation of the run length constraint occurs among bits included in the channel sequence when the run length constraint is violated; And 상기 변조 데이터를 기록매체에 저장하는 단계Storing the modulated data on a recording medium 를 포함하는 데이터 기록방법.Data recording method comprising a. 데이터를 변조하는 변조부; 및A modulator for modulating data; And 데이터를 기록매체에 광을 조사하여 상기 변조부에서 생성된 변조 데이터를 상기 기록매체에 기록하는 광학부An optical unit for irradiating light onto the recording medium and recording the modulated data generated by the modulation unit on the recording medium 를 포함하고,Including, 상기 변조부는,The modulator, 입력 시퀀스에 대한 채널 시퀀스를 생성하는 인코더; 및An encoder for generating a channel sequence for the input sequence; And 런 길이 제한 조건의 위반 여부를 판단하고, 상기 런 길이 제한 조건을 위반 한 경우, 상기 채널 시퀀스에 포함되는 비트 중 상기 런 길이 제한 조건의 위반이 발생하는 위치보다 앞의 위치에서 비트 플립을 실시하는 비트 플리퍼(bit flipper)It is determined whether a run length constraint is violated, and when the run length constraint is violated, a bit flip is performed at a position before the violation of the run length constraint among bits included in the channel sequence. Bit flipper 를 포함하는 데이터 기록장치.Data recording device comprising a.
KR1020070094091A 2007-09-17 2007-09-17 Data modulation method, modulator, recording method, and recording apparatus KR101430448B1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020070094091A KR101430448B1 (en) 2007-09-17 2007-09-17 Data modulation method, modulator, recording method, and recording apparatus
CN200880107389A CN101802912A (en) 2007-09-17 2008-09-11 Data modulation method, modulator, recording method, and recording apparatus
PCT/KR2008/005386 WO2009038311A2 (en) 2007-09-17 2008-09-11 Data modulation method, modulator, recording method, and recording apparatus
US12/678,682 US8495461B2 (en) 2007-09-17 2008-09-11 Data modulation method, modulator, recording method, and recording apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070094091A KR101430448B1 (en) 2007-09-17 2007-09-17 Data modulation method, modulator, recording method, and recording apparatus

Publications (2)

Publication Number Publication Date
KR20090028937A true KR20090028937A (en) 2009-03-20
KR101430448B1 KR101430448B1 (en) 2014-08-14

Family

ID=40695838

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070094091A KR101430448B1 (en) 2007-09-17 2007-09-17 Data modulation method, modulator, recording method, and recording apparatus

Country Status (1)

Country Link
KR (1) KR101430448B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108023670A (en) * 2016-11-04 2018-05-11 展讯通信(上海)有限公司 One kind packet code coding method and device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100688534B1 (en) * 2005-01-26 2007-03-02 삼성전자주식회사 Method and apparatus for encoding and decoding of a modulation code

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108023670A (en) * 2016-11-04 2018-05-11 展讯通信(上海)有限公司 One kind packet code coding method and device

Also Published As

Publication number Publication date
KR101430448B1 (en) 2014-08-14

Similar Documents

Publication Publication Date Title
KR100753966B1 (en) Apparatus and method for modulation/demodulation with consecutive minimum runlength limitation
US7734993B2 (en) Method and apparatus for encoding and precoding digital data within modulation code constraints
JP3722331B2 (en) Modulation apparatus and method, and recording medium
US8495461B2 (en) Data modulation method, modulator, recording method, and recording apparatus
US6604219B1 (en) DC control of a multilevel signal
US7142134B2 (en) Techniques for generating modulation codes using running substitutions
JP2011086333A (en) Device, method, and program for data modulation, and recording medium
JP3717024B2 (en) Demodulator and method
KR20090028937A (en) Data modulation method, modulator, recording method, and recording apparatus
KR100537516B1 (en) Method and apparatus of rate 13/15 maximum transition run code encoding and decoding
US20090195421A1 (en) Method and apparatus for controlling digital sum value and recording medium for executing the method
JP2000068850A (en) Demodulator, its method and serving medium
US7696908B2 (en) Techniques for reducing error propagation using modulation codes having a variable span
JPH11154381A (en) Modulation device and its method, and providing medium
JP2000048492A (en) Device and method for supplying punctured maximum transition code
JP4479855B2 (en) Modulation apparatus, modulation method, and recording medium
JP3147647B2 (en) Digital information transmission method
KR100368888B1 (en) Method for writing and reading rll modulation code in an optical disk, and encoder and decoder therefor
KR20090012421A (en) Data modulation method, modulator, recording method, and recording apparatus
JP2000068849A (en) Modulation device and method, demodulation device and method and providing medium
JP4366662B2 (en) Modulation apparatus, modulation method, and recording medium
KR20090100611A (en) Method and apparatus for correcting data error
JP4919121B2 (en) Modulation apparatus, modulation method, and recording medium
JP4479854B2 (en) Modulation apparatus, modulation method, and recording medium
KR100752880B1 (en) Method and apparatus for coding/decoding information

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right