KR20000067781A - 개선된 dc 억압 능력을 갖는 rll 코드 배치 방법, 변복조 방법 및 복조 장치 - Google Patents

개선된 dc 억압 능력을 갖는 rll 코드 배치 방법, 변복조 방법 및 복조 장치 Download PDF

Info

Publication number
KR20000067781A
KR20000067781A KR1019990042032A KR19990042032A KR20000067781A KR 20000067781 A KR20000067781 A KR 20000067781A KR 1019990042032 A KR1019990042032 A KR 1019990042032A KR 19990042032 A KR19990042032 A KR 19990042032A KR 20000067781 A KR20000067781 A KR 20000067781A
Authority
KR
South Korea
Prior art keywords
codeword
code
code group
parameter
codewords
Prior art date
Application number
KR1019990042032A
Other languages
English (en)
Other versions
KR100565046B1 (ko
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 KR1019990042032A priority Critical patent/KR100565046B1/ko
Priority to EP00303324A priority patent/EP1047197A3/en
Priority to CNA2005100826474A priority patent/CN1734636A/zh
Priority to JP2000121699A priority patent/JP3545311B2/ja
Priority to US09/556,827 priority patent/US6281815B1/en
Priority to CNB001186469A priority patent/CN100391106C/zh
Publication of KR20000067781A publication Critical patent/KR20000067781A/ko
Priority to JP2004013588A priority patent/JP4034742B2/ja
Application granted granted Critical
Publication of KR100565046B1 publication Critical patent/KR100565046B1/ko

Links

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
    • 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
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M5/00Conversion of the form of the representation of individual digits
    • H03M5/02Conversion to or from representation by pulses
    • H03M5/04Conversion to or from representation by pulses the pulses having two levels
    • H03M5/14Code representation, e.g. transition, for a given bit cell depending on the information in one or more adjacent bit cells, e.g. delay modulation code, double density code
    • 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/46Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind

Abstract

본 발명에는 개선된 DC 억압 능력을 갖는 RLL 코드 배치 방법, 변복조 방법 및 복조 장치가 개시되어 있다. 본 발명은 코드열의 DC 억압 제어를 위해 억압 제어가 가능한 코드 그룹쌍을 배치하고, 코드 그룹쌍내에 동일한 소스코드에 해당하는 코드의 코드워드내의 DC값을 나타내는 파라미터(CSV)의 부호와 다음 코드워드의 DSV(Digital Sum Value) 천이 방향을 예측하는 파라미터(INV)의 특징이 서로 반대가 되도록 배치한 DC 억압 능력을 갖는 (1,8,8,12) 코드를 사용함으로써, 고밀도 광디스크 시스템에 적합하다.

Description

개선된 DC 억압 능력을 갖는 RLL 코드 배치 방법, 변복조 방법 및 복조 장치{Method of arranging RLL code having enhanced DC suppression capability, modulation method, demodulation method and demodulation apparatus therefor}
본 발명은 m 비트의 정보 워드를 변조 신호로 변환하고 다시 복원하는 분야에 관한 것으로, 특히 고밀도 기록/재생을 요구하는 광디스크 기록/재생 장치를 위한 RLL(Run Length Limited) 코드에서 코드워드 스트림의 DC 성분을 효과적으로 억압하는 (1,8,8,12) 코드를 생성해서 배치하는 방법, 변복조 방법과 복조 장치에 관한 것이다.
광디스크 기록/재생 장치에서 원래의 정보를 광디스크에 적합한 신호로 변환하는 변조와 광디스크로부터 재생된 신호를 원래의 정보로 복원하는 복조시 널리 사용되는 코드는 (d,k,m,n)로 표현되는 RLL 코드이다. 광디스크로는 CD(Compact Disc), DVD(Digital Versatile Disc) 등이 있으며, 현재 DVD 보다 고밀도 기록 및 재생이 요구되는 고밀도(High Density:HD) 디스크(일명 HD-DVD라고도 함)가 개발되고 있다.
이 고밀도 디스크에 사용될 수 있는 RLL 코드 중 (1,7,2,3) 코드의 특징은 최소 런 길이가 2T(d=1), 최대 런 길이가 8T(k=7)로서 런 길이가 제한되는 특징을 가지고 있으며, 코드 레이트 R는 R=m/n=2/3인 코드이다. T는 코드워드내 비트 간격이다.
도 1a에 도시된 바와 같이 데이터 2비트에 대해 3비트의 채널 비트로 변환하며, 런 길이 위반일 경우 즉, 사용자 데이터 "00" 다음 사용자 데이터가 "00"이 올 경우와 "01"이 올 경우, 또는 사용자 데이터 "10" 다음 사용자 데이터가 "00"일 올 경우와 "01"이 올 경우 최소 런 길이 조건(d=1)을 위반하게 되므로 도 1b에 도시된 변환표를 사용하여 대체하고 있다.
종래의 (1,7,2,3) 코드는 그 코드 자체로서는 코드의 DC 성분을 억압할 수 있는 기능이 없어서, 동기를 추가하지 않은 경우 (1,7,2,3) 코드의 DSV(Digital Sum Value)의 추이 곡선을 도시한 도 2에서도 알 수 있듯이, DSV 추이가 "0"으로 수렴하지 않는다. 이러한 코드를 그대로 광디스크 시스템에 사용할 경우 디스크로부터 픽업된 전기적인 RF 신호를 이진 신호로 변환하는 데이터 슬라이서(데이터 2치화 회로라고도 함)가 제대로 기능을 못할 뿐만 아니라 트래킹 제어계 및 포커싱 제어계를 포함하는 서보계(servo unit)에도 코드의 저주파 성분이 유입되어 악영향을 미치게 되어 시스템의 신뢰성이 저하되는 문제점이 있었다.
상술한 문제점을 극복하기 위하여, 본 발명의 목적은 코드워드 스트림의 DC 성분을 효과적으로 억압하는 고밀도 디스크 시스템에 적합한 (1,8,8,12) 코드를 배치하는 방법을 제공하는 데 있다.
본 발명의 다른 목적은 코드워드 스트림의 DC 성분을 효과적으로 억압하는 (1,8,8,12) 코드의 변조 방법을 제공하는 데 있다.
본 발명의 또 다른 목적은 DC 억압을 위한 DSV 제어용 코드 변환표의 코드 워드들은 주 변환표에서 이미 사용되고 있는 코드워드 일부 또는 전부를 그대로 이용하여 코드워드의 비트수를 줄일 수 있는 변조 방법을 제공하는 데 있다.
본 발명의 또 다른 목적은 주 변환표의 코드워드 특성 즉, 코드워드내의 DC값을 나타내는 파라미터인 CSV의 부호와 다음 코드워드의 DSV 천이 방향을 예측하는 파라미터인 INV의 특징을 최대로 이용한 주 변환표와는 별도의 DSV 제어용 보조 변환표를 이용하여 효과적인 DC 억압 효과를 갖는 변조 방법을 제공하는 데 있다.
본 발명의 또 다른 목적은 코드워드 스트림의 DC 성분을 효과적으로 억압하는 (1,8,8,12) 코드의 복조 방법을 제공하는 데 있다.
본 발명의 또 다른 목적은 DC 억압을 위한 DSV 제어용 변환표의 코드 워드들은 주 변환표에서 이미 사용되고 있는 코드워드 일부 또는 전부를 그대로 이용하여 변조된 코드워드를 복조하는 방법을 제공하는 데 있다.
본 발명의 또 다른 목적은 주 변환표의 코드워드 특성 즉, CSV와 INV의 특징을 최대로 이용한 주 변환표와는 별도의 DSV 제어용 보조 변환표를 이용하여 변조된 코드워드를 복조하는 방법을 제공하는 데 있다.
본 발명의 또 다른 목적은 고밀도 디스크 시스템에 적합한 (1,8,8,12) 코드의 복조 장치를 제공하는 데 있다.
상기한 목적들을 달성하기 위하여, 본 발명에 의한 RLL 코드 배치 방법은 최소 런 길이(d), 최대 런 길이(k), 데이터 비트 길이(m), 코드워드 비트 길이(n)를 나타내는 (d,k,m,n)으로 표현되는 RLL(Run Length Limited) 코드를 생성해서 코드워드가 갖는 특징에 따라 그룹화된 코드 그룹들을 배치 방법에 있어서: 코드열의 DC 억압 제어를 위해 억압 제어가 가능한 코드 그룹쌍을 배치하고, 코드 그룹쌍내에 동일한 소스코드에 해당하는 코드의 코드워드내의 DC값을 나타내는 파라미터(CSV)의 부호와 다음 코드워드의 DSV(Digital Sum Value) 천이 방향을 예측하는 파라미터(INV)의 특징이 서로 반대가 되도록 배치하는 것을 특징으로 하고 있다.
본 발명에 의한 변조 방법은 광디스크 기록/재생 장치에 입력되는 데이터를 최소 런 길이(d), 최대 런 길이(k), 데이터 비트 길이(m), 코드워드 비트 길이(n)를 나타내는 (d,k,m,n)으로 표현되는 RLL(Run Length Limited) 코드로 변조하는 방법에 있어서: DSV 제어 시기이면 입력되는 m 비트의 데이터를 DSV 제어용 코드워드를 삽입해서 변조하고, 그렇지 않으면 입력되는 m 비트의 데이터를, 중복 코드워드를 가지며 각 코드 그룹의 코드워드들은 코드워드내의 DC(Direct Current)값을 나타내는 제1 파라미터(CSV: Codeword Sum Value)의 부호와 다음 코드워드의 DSV 천이 방향을 예측하는 제2 파라미터(INV)의 특징이 서로 반대가 되도록 배치된 주코드 그룹들, 중복 코드워드의 판별을 위한 판단 코드 그룹들 중 어느 한 코드 그룹의 코드워드를 선택해서 변조하는 단계를 포함함을 특징으로 하고 있다.
본 발명에 의한 복조 방법은 DSV(Digital Sum Value) 제어 시기이면 소정수의 입력 데이터마다 입력되는 m 비트의 데이터를 DSV 제어용 코드워드로서 변조하고, DSV 제어 시기가 아니면, 입력되는 m 비트의 데이터를, 중복 코드워드를 가지며 각 코드 그룹의 코드워드들은 코드워드내의 DC(Direct Current)값을 나타내는 제1 파라미터(CSV: Codeword Sum Value)의 부호와 다음 코드워드의 DSV 천이 방향을 예측하는 제2 파라미터(INV)의 특징이 서로 반대가 되도록 배치된 주코드 그룹들, 중복 코드워드의 판별을 위한 판단 코드 그룹들 중 어느 한 코드 그룹의 코드워드로서 변조된 RLL(Run Length Limited) 코드를 사용하는 광디스크 기록/재생 장치에서 입력되는 코드워드 스트림을 원래의 데이터로 복조하는 복조 방법에 있어서: 코드워드 스트림을 입력해서, 이전 코드워드의 특징에 따라 복조하고자 하는 코드워드가 속해 있는 그룹을 나타내는 제3 파라미터(ncg)를 갱신하는 단계; 및 갱신된 제3 파라미터(ncg)가 지시하는 코드 그룹에서 두 개의 동일한 현재 코드워드가 존재하지 않으면 갱신된 제3 파라미터(ncg)에서 지시하는 코드 그룹 중 하나에서 복조하고자 하는 코드워드에 대응하는 m 비트의 원래의 데이터로 복조하는 단계를 포함함을 특징으로 하고 있다.
본 발명의 복조 장치는 최소 런 길이(d), 최대 런 길이(k), 데이터 비트 길이(m), 코드워드 비트 길이(n)를 나타내는 (d,k,m,n)으로 표현되는 RLL(Run Length Limited) 코드를 사용하는 광디스크 기록/재생 장치에서 n 비트의 코드워드를 원래의 m 비트의 데이터로 복조하는 복조 장치에 있어서: 입력되는 코드워드 스트림에서 이전 코드워드, 현재 코드워드, 다음 코드워드를 저장하는 시프트 레지스터, 이전 코드워드의 엔드 제로수(EZ)를 검사하여 EZ값에 따라 이전 코드워드가 지시하고 있는 다음 코드 그룹을 나타내는 제3 파라미터(ncg)의 값을 검출하는 검출기, 이전 코드워드의 소정의 비트를 검사하여 중복 코드워드를 판별하기 위한 판별 신호를 제공하는 판별기 및 중복 코드워드를 가지며 각 코드 그룹의 코드워드들은 코드워드내의 DC(Direct Current)값을 나타내는 제1 파라미터(CSV: Codeword Sum Value)의 부호와 다음 코드워드의 DSV 천이 방향을 예측하는 제2 파라미터(INV)의 특징이 서로 반대가 되도록 배치된 주코드 그룹들, 중복 코드워드의 판별을 위한 판단 코드 그룹들을 가지며, 제3 파라미터(ncg), 중복 코드워드용 판별 신호, DSV 제어 시기를 나타내는 DSV 제어 신호에 대응하여 이전 코드워드의 제3 파라미터(ncg)가 지정하는 코드 그룹들 중 하나에서 현재 코드워드에 대응한 m 비트의 데이터를 제공하는 복조 코드표를 포함함을 특징으로 하고 있다.
도 1a는 종래의 (1,7,2,3) 코드 변환표이고, 도 1b는 (1,7,2,3) 코드의 런 길이 위반일 경우 대체 변환표이다.
도 2는 종래의 (1,7,2,3) 코드의 DSV 추이 곡선이다.
도 3은 본 발명의 이해를 돕기 위한 머지 비트를 사용하는 DSV 제어 방법을 설명하기 위한 도면이다.
도 4는 본 발명의 이해를 돕기 위한 별도의 DSV 코드를 사용하는 DSV 제어 방법을 설명하기 위한 도면이다.
도 5a 및 도 5b는 본 발명의 이해를 돕기 위한 RLL 코드를 위한 코드 그룹 생성 방법의 흐름도이다.
도 6a와 도 6b는 본 발명에 의한 (1,8,8,12) 코드의 사용 가능한 코드워드의 수를 보인 표이다.
도 7a 내지 도 7e는 도 3a 및 도 3b에 도시된 방법에 의해 생성된 (1,8,8,12) 코드의 주 변환표이다.
도 8은 도 3a 및 도 3b에 도시된 방법에 의해 생성된 (1,8,8,12) 코드의 DSV 제어용 주 변환표이다.
도 9a 내지 도 9e는 도 3a 및 도 3b에 도시된 방법에 의해 생성된 (1,8,8,12) 코드의 DSV 제어용 보조 변환표이다.
도 10은 도 9a 내지 도 9e에 도시된 DSV 제어용 보조 변환표를 사용한 (1,8,8,12) 코드의 파워 스펙트럼을 보인 도면이다.
도 11는 도 9a 내지 도 9e에 도시된 DSV 제어용 보조 변환표를 사용하지 않은 (1,8,8,12) 코드의 DSV 추이 곡선이다.
도 12a 내지 도 12c는 주 변환표와는 별도의 DSV 제어용 보조 변환표의 다른 예이다.
도 13a 내지 도 13c는 도 12a 내지 도 12c에 도시된 코드워드와는 CSV 부호와 INV의 특징이 반대가 되도록 배치된 DSV 제어용 보조 변환표의 다른 예이다.
도 14a 및 도 14b는 도 5a 및 도 5b에 도시된 RLL 코드 그룹 생성 방법을 이용하여 (1,8,8,12) 코드를 위한 코드 그룹 생성 방법의 일 실시예에 따른 흐름도이다.
도 15a 내지 도 15e는 도 14a 및 도 14b에 도시된 방법에 의해 생성된 (1,8,8,12) 코드의 주 변환표이다.
도 16는 도 14a 및 도 14b에 도시된 방법에 의해 생성된 (1,8,8,12) 코드의 DSV 제어용 주 변환표이다.
도 17a 내지 도 17e는 도 14a 및 도 14b에 도시된 방법에 의해 생성된 (1,8,8,12) 코드의 DSV 제어용 보조 변환표이다.
도 18는 도 15a 내지 도 16에 도시된 주 변환표만을 이용하여 (1,8,8,12) 코드의 파워 스펙트럼 밀도 곡선을 보인 도면이다.
도 19는 도 15a 내지 도 16에 도시된 주 변환표만을 이용하여 (1,8,8,12) 코드의 INV 파라미터로 인한 DC 억압 효과를 보인 도면이다.
도 20은 도 15a 내지 도 16에 도시된 주 변환표만을 이용하여 (1,8,8,12) 코드의 DSV 코드 그룹으로 인한 DC 억압 효과를 보인 도면이다.
도 21은 도 15a 내지 도 17에 도시된 주 변환표와 보조 변환표를 이용하여 (1,8,8,12) 코드의 DSV 제어용 머지 비트를 추가하였을 때의 DC 억압 효과를 보인 도면이다.
도 22a와 도 22b는 (1,8,8,12) 코드의 변조 방법의 일 실시예에 따른 흐름도이다.
도 23는 도 7a 내지 도 9e에 도시된 코드 변환표를 사용하는 본 발명에 의한 (1,8,8,12) 코드에서 사용할 수 있는 동기 패턴의 일 예들이다.
도 24은 도 15a 내지 도 17e에 도시된 코드 변환표를 사용하는 본 발명에 의한 (1,8,8,12) 코드에서 사용할 수 있는 동기 패턴의 일 예들이다.
도 25은 본 발명에서 사용되는 ncg가 지시하는 코드 그룹의 내용을 정리한 표이다.
도 26a 및 도 26b는 도 7a 내지 도 9e에 도시된 코드 변환표를 사용하는 도 22에 도시된 방법에 의해 변조된 코드를 원래의 데이터로 복조하는 (1,8,8,12) 코드의 복조 방법의 일 실시예에 따른 흐름도이다.
도 27은 도 26a 및 도 26b에 도시된 복조 방법을 수행하기 위한 본 발명에 의한 (1,8,8,12) 코드의 복조 장치의 일 실시예에 따른 회로도이다.
도 28a 및 도 28b는 도 15a 내지 도 17e에 도시된 코드 변환표를 사용하며, 도 22에 도시된 방법에 의해 변조된 코드를 원래의 데이터로 복조하는 (1,8,8,12) 코드의 복조 방법의 다른 실시예에 따른 흐름도이다.
도 29는 도 28a 및 도 28b에 도시된 복조 방법을 수행하기 위한 본 발명에 의한 (1,8,8,12) 코드의 복조 장치의 다른 실시예에 따른 회로도이다.
이하, 첨부된 도면을 참조하여 본 발명에 의한 개선된 DC 억압 능력을 갖는 RLL 코드 배치 방법, 변복조 방법 및 복조 장치의 바람직한 실시예를 설명하기로 한다.
(d,k,m,n)으로 표현되는 RLL 코드에서 코드의 성능을 표현하는 요인 중에서 크게 기록 밀도의 측면과 코드의 DC 성분을 억압하는 능력을 보고 그 코드의 우수함을 평가한다. 기록 밀도와 코드의 검출창폭(detection window margin)은 다음과 같은 수학식 1과 수학식 2로 표현된다.
여기서, m은 데이터 비트수(일명 소스 비트수, 정보 워드 비트수라고도 함), n은 변조후의 코드워드 비트수(일명 채널 비트수라고도 함), d는 코드워드내에서 1과 1사이에 존재할 수 있는 연속되는 0의 최소수, k는 코드워드내에서 1과 1사이에 존재할 수 있는 연속되는 0의 최대수이고, T는 코드워드내 비트 간격이다.
위 수학식 1에서 알 수 있듯이, 변조 방법에서 기록 밀도를 향상시킬 수 있는 방법은 d와 m은 동일한 조건에서 코드워드의 비트수 n을 줄이는 것이다. 그러나, RLL 코드는 코드워드내에서 1과 1사이에 존재할 수 있는 연속되는 0의 최소수인 d 조건과 연속되는 0의 최대수인 k 조건을 만족해야 한다. 이 (d,k) 조건을 만족하면서 데이터 비트수가 m이라 할 때 RLL(d,k)를 만족하는 코드워드의 수는 2m개 이상이면 된다. 그러나, 실제 이러한 코드를 사용하기 위해서는 코드워드와 코드워드가 연결되는 부분에서도 RLL(d,k) 조건을 만족해야 하며, 광디스크 기록/재생 장치와 같이 코드의 DC 성분이 시스템 성능에 영향을 주는 경우에는 사용하고자 하는 코드가 DC 억압 능력을 가져야 한다.
이러한 이유로 CD의 경우는 EFM(Eight-to-Fourteen Modulation) 코드 즉, 8비트의 데이터를 변조하면 14비트의 코드워드로 변환되고, 코드워드 사이에 RLL(2,10)(CD는 d=2,k=10인 코드를 사용함)의 런 길이 조건을 만족하면서 DC 억압 능력을 갖추기 위해 14비트로 변환된 코드워드와는 별도로 3비트의 머지 비트(merge bit)가 추가되어 있다. 이 머지 비트는 아무런 정보가 없는 단지 (d,k)의 런 길이와 DC 억압을 위한 비트로 추가되어 있고, 이러한 머지 비트는 기록 밀도를 올리는 데 큰 부담이 된다.
DVD의 경우는 EFM 플러스(EFM+) 코드를 사용하는 데 이 코드 역시 RLL(2,10)의 런 길이 조건을 가지며, CD와는 달리 머지 비트가 없고 대신 코드워드의 길이(n)가 16비트이다. (2,10)의 런 길이는 4개의 주 변환표를 사용하여 만족하면 코드열의 DC 억압은 보조 변환표를 이용하여 실시하고 있다.
상술한 코드들은 DC 성분 억압이라는 측면에서는 우수한 코드이며, 특히 DVD에 적용되는 EFM+ 코드의 경우는 CD에 적용되는 EFM 코드와 대비하여 1비트의 코드워드 비트 수를 줄이면서 코드 변조 방법의 변경만으로 5.9%의 기록 밀도 상승의 효과를 얻고 있다. 그러나, EFM+ 코드의 경우도 DC 억압을 위해 주 변환표와는 다른 4개의 보조 변환표를 별도로 갖기 때문에 더 이상의 코드워드의 비트수를 줄이기에는 어려운점이 많다.
이러한 RLL 변조 코드에서 DC를 억압하는 가장 중요한 이유는 재생 신호가 서보 대역에 주는 영향을 최소화하기 위해서이다. DC를 억압하는 방법을 이하 DSV(Digital Sum Value) 제어 방식이라 부르기로 한다.
DSV 제어 방식은 크게 두 가지가 있다. 하나는 코드 자체에 DSV를 제어할 수 있는 DSV 제어 코드를 갖고 있는 방식이고, 다른 하나는 DSV 제어 시점마다 머지(merge) 비트를 삽입하는 방식이다. 앞서 언급한 코드 중에서 EFMPlus 코드는 별도의 코드표을 사용해서 DSV 제어를 행하는 코드이고, EFM 코드나 (1,7) 코드는 머지 비트를 삽입하여 DSV 제어를 행하는 코드이다.
머지 비트를 사용하는 DSV 제어 방식은 도 3에 도시된 바와 같이, DSV 제어 시점이 아닌 경우에는 m비트의 소스 코드가 n비트의 채널 코드로 변환되고, DSV 제어 시점인 경우 p비트의 머지 비트가 삽입된다. 이때, RLL 코드의 (d,k) 조건을 만족하는 경우에 한해서 DSV 제어를 행할 수 있다. p비트 중 (d,k) 조건을 만족하는 경우에 대해서 누적 DSV가 작아지는 코드를 선택하는 방식으로 DSV 제어를 행한다. 이때, 매 N개의 코드마다 DSV를 행하는 경우를 고려하면 N개의 소스 코드에 해당하는 실제 채널 비트의 수는 N*n+p가 된다.
머지 비트를 추가하여 DSV 제어를 행하는 경우 DSV 시점마다 매번 DSV 제어를 행할 수 있는 것이 아니다. 머지시 RLL 코드의 (d,k) 조건을 만족하는 경우에만 DSV 제어를 수행할 수 있다. 일 실시예로 (1,8) 조건을 만족하는 RLL 코드에 각각 1 비트와 2 비트의 머지 비트를 삽입하는 경우 매 머지시 DSV 제어를 수행할 확률은 각각 75%,95%이다. 이러한 점에 착안하여 DSV용의 별도의 변조 코드표을 사용하여 도 4에 도시된 바와 같이 DSV 시점시 매번 DSV 제어가 가능하게 할 수 있다.
즉, DSV 제어 시점에 머지 비트를 삽입하는 대신 DSV 제어 시점의 채널 코드를 DSV 제어용으로 설계된 별도의 코드표로부터 얻는다. DSV 제어용의 별도의 코드표은 항상 DSV 제어가 가능하도록 설계한다. 일반적으로 DSV 제어용 별도의 코드표의 q비트의 코드워드는 n비트의 채널 워드보다는 큰 조건(q 〉 n)을 갖는다.
DSV 제어 시점이 아닌 경우에는 m 비트의 소스 코드가 n 비트의 채널 코드로 변환되고, DSV 제어 시점인 경우 m비트의 소스 코드가 q비트의 채널 코드로 변환된다. DSV 제어가 가능한 q1과 q2 중 누적 DSV가 최소가 되는 코드를 선택하여 DSV 제어를 행한다. q1,q2는 DSV 제어가 항상 가능하도록 구성된 코드표로부터 얻을 수 있는 코드로서 매 DSV 시점마다 항상 DSV 제어가 가능하다. 도 4에서 매 N개의 코드마다 DSV를 행하는 경우를 고려하면 N개의 소스 코드에 해당하는 채널 비트의 수는 (N-1)*n+q 비트가 된다.
따라서, 본 발명에서는 DC 억압을 위한 DSV 제어용 보조 변환표의 코드 워드들은 주 변환표에서 이미 사용되고 있는 코드워드 일부 또는 전부를 그대로 이용하여 코드워드의 비트수를 줄일 수 있거나 주 변환표의 코드워드 특성 즉, 코드워드내의 DC값을 나타내는 파라미터인 CSV와 다음 코드워드의 DSV 천이 방향을 예측하는 파라미터인 INV의 특징을 최대로 이용한 주 변환표와는 별도의 DSV 제어용 보조 변환표를 만듦으로서 효과적인 DC 억압 효과를 기대할 수 있도록 한다.
이러한 주/보조 변환표를 이용하여 DC 억압과 기록 밀도 상승이라는 효과를 얻을 수 있으며, 고밀도 광디스크 시스템에 적합한 RLL 코드 생성 방법을 설명하기로 한다.
먼저, 본 발명에서 사용되는 용어를 설명한다.
(previous code) (current code)
000010001001000 001000001001000
LZ(p) EZ(p) LZ(c) EZ(c)
여기서, d는 최소 런 길이, k는 최대 런 길이, m은 데이터 비트 길이, n은 코드워드 비트 길이를 각각 나타내고, LZ(p)와 LZ(c)는 각각 이전 코드워드와 현재 코드워드내의 리드(lead) 제로수이고, EZ(p)와 EZ(c)는 각각 이전 코드워드와 현재 코드워드내의 엔드(end) 제로수이고, DSV는 코드워드 스트림에서 디지털 합 값(Digital Sum Value in codeword stream) 즉, 일련의 코드워드 스트림에서 "1"이 나올때마다 반전을 시킨후 반전된 패턴에서 0은 "-1"로 계수하고, 1은 "+1"로 계수한 값이다. CSV는 코드워드내에서 디지털 합 값(Digital Sum Value in a codeword) 즉, 하나의 코드워드내에서 "1"이 나올때마다 반전을 시킨 후 반전된 패턴에서 0은 "-1"로 계수하고 1은 "+1"로 계수한 값이다. INV는 다음 코드워드의 천이를 알 수 있는 파라미터로서, 코드워드내에서 "1"의 수가 짝수개이면 INV의 파라미터의 값은 0(INV=0)이고, 코드워드내에서 "1"의 수가 홀수개이면 INV의 파라미터의 값은 1(INV=1)이고, x는 주코드 그룹을 분할하는 파라미터이고, y는 코드워드의 중복 파라미터이고, bit(i), bit(j), bit(k)는 코드워드내의 i,j,k번째 비트를 나타낸다. 여기서, 코드워드 스트림에서 누적된 INV의 값이 "0"이면 다음 코드워드의 CSV을 그 코드워드 이전까지의 누적된 DSV 값에 그대로 더하여 DSV값을 갱신하고, 누적된 INV값이 "1"이면 다음 코드워드의 CSV의 부호를 반전시켜 그 코드워드 이전까지의 누적된 DSV값에 더하여 DSV값을 갱신한다.
위의 스트림을 예로 하면 INV, CSV, DSV 파라미터는 아래와 같이 주어진다.
코드워드 : 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0
INV : 1 0
CSV : +1 -3
코드스트림: 0 0 0 0 1 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 1
DSV : -1-2-3-4-3-2-1 0-1-2-3-2-1 0+1 +2+3+2+1 0+1+2+3+2+1 0+1+2+3+4
이러한 방법은 "개선된 DC 억압 능력을 갖는 RLL 코드 생성 방법과 생성된 RLL 코드 변복조 방법"이라는 제목으로 동출원인이 1999년 3월 9일에 출원한 대한민국 출원번호 제99-7723호에 개시되어 있으며, 참조를 위해 도 5a 및 도 5b를 통해 여기에 인용된다.
본 발명의 이해를 돕기 위한 RLL 코드 그룹 생성 방법의 흐름도인 도 5a 및 도 5b에 있어서, 원하는 최소 런 길이(d), 최대 런 길이(k), 데이터 비트 길이(m), 코드워드 비트 길이(n), 주코드 그룹의 구분 파라미터(x), 코드워드의 중복 파라미터(y) 및 특정 비트들(bit(i),bit(j),bit(k))을 입력시킨다(S101 단계).
S101 단계에서 입력된 조건에 맞는 코드를 0부터 2n-1까지 2n개의 코드워드를 발생시키고(S102 단계), 생성된 코드에 대해 런 길이(d,k) 조건을 만족하는 지를 판단한다(S103 단계). 생성된 코드 중 사용가능한 코드는 런 길이(d,k) 조건을 만족하는 코드만 사용가능하므로 이 조건에 맞지 않는 코드는 버린다(S104 단계). (d,k) 조건을 만족하는 코드워드는 그 코드워드의 특징을 추출하는 데, 필요한 특징을 추출하는 데 필요한 파라미터는 각각 코드워드내의 리드 제로수(LZ), 코드워드내의 앤드 제로수(EZ), 코드워드 합 값(CSV)이다(S105 단계).
사용가능한 코드의 수를 늘이기 위해 일부 코드는 중복시키고, 코드워드와 코드워드가 연결되는 부분에서의 (d,k) 조건을 만족시키기 위해 파라미터 EZ 값을 검사한다(S106 단계). 이 EZ 값에 따라 다음과 같은 동작을 한다.
코드워드내의 엔드 제로수(EZ)가 0EZ 〈 d이면, 다음 코드 그룹(next code group:이하 ncg라고 함)은 제2 주코드 그룹((Main Code Group:MCG2) 또는 DSV 코드 그룹으로부터 다음 코드워드가 올 수 있도록 지정한다(S107 단계).
코드워드의 EZ값이 dEZy이면, 코드워드가 중복되는 지를 판단해서(S108 단계), 코드워드가 중복되지 않은 원래의 코드워드이면 ncg는 제1 판단 코드 그룹(Decision Code Group:DCG1)으로부터 다음 코드워드가 올 수 있도록 지정하고, 중복된 코드워드이면 ncg는 제2 판단 코드 그룹(DCG2)으로부터 다음 코드워드가 올 수 있도록 지정한다(S109 단계).
코드워드의 EZ값이 y 〈 EZk이거나 S108 단계에서 EZ값이 dEZy이면서 중복되지 않은 코드워드이면, 그 코드워드는 ncg가 제1 주코드 그룹(MCG1) 는 제2 주코드 그룹(MCG2)에서 다음 코드워드가 올 수 있도록 지정한다(S110 단계).
이러한 과정으로 (d,k) 조건을 만족하는 코드워드의 ncg를 결정하며, 이 ncg에 따라 그 코드워드 다음에 붙을 수 있는 코드워드의 코드 그룹이 결정되며, 코드워드와 코드워드가 연결되는 부분에서도 (d,k) 조건을 만족시킨다. 여기서, EZ값이 dEZy를 만족하는 코드를 중복시키는 이유는 EZ값이 0,1,...,d-1인 코드에 대해서는 DSV 코드 그룹들을 이용하여 코드워드 스트림의 DSV 제어를 실시하여 전체 DC 성분을 억압하기 위해서이다.
코드 그룹별로 코드워드를 묶는 방법과 각각의 코드 그룹의 특징에 대해 설명한다. 코드 그룹별로 코드워드를 묶기 위해서는 코드워드내의 리드제로수(LZ)를 이용하는 데 S111 단계에서는 코드워드내의 LZ값을 검사한다.
코드워드내의 LZ값이 x보다 작거나 같은 경우는 그 코드워드는 제1 주코드 그룹(MCG1)에 저장한다(S112 단계). LZ값이 x보다 큰 코드워드는 제2 주코드 그룹(MCG2)에 저장하는 데 그 코드워드의 순서는 제1 주코드 그룹(MCG1)에 들어 있는 동일한 복호값을 갖는 코드워드와 비교하여 제1 주코드 그룹(MCG1)의 같은 위치의 코드워드와 가능한 파라미터 INV의 특징과 CSV의 부호가 반대인 것으로 배치한다(S113 단계). 만일 INV의 특징과 CSV의 부호가 모두 반대인 것이 없으면 CSV의 부호가 반대인 것으로 우선 순위를 두고 그 다음의 우선 순위는 INV의 특징이 반대인 것으로 배치한다. 이렇게 코드워드들을 배치하는 이유는 어느 한 코드워드의 ncg가 제1 주코드 그룹(MCG1)이나 제2 주코드 그룹(MCG2)에서 다음 코드워드를 불러내도록 지시하는 경우에 두 코드 그룹내의 동일한 복호값을 갖는 코드워드가 동시에 (d,k) 조건을 만족한다면 코드워드 스트림의 DC 억압이 유리하게 진행되는 코드워드로 선택할 수 있게 함과 동시에 두 코드 그룹내의 코드워드의 INV의 특징 및 CSV의 부호가 반대이므로 DC 제어가 두 코드워드 중 하나는 최적인 방향으로 진행될 수 있기 때문이다.
LZ값이 LZk-y인 경우는 비트(i), 비트(j), 비트(k)를 검사하여(S114 단계), 그 중 어느 한 비트라도 "1"이 존재하면 그 코드워드는 제1 판단 코드 그룹(DCG1)에 저장하고(S115 단계), S114 단계에서 검사된 비트들이 모두 "0"이면 제2 판단 코드 그룹(DCG2)에 저장한다(S116 단계). 판단 코드 그룹(DCG)내에서의 코드워드의 배치순서는 가능한 제1 및 제2 주코드 그룹(MCG1, MCG2)에서와 같은 위치에 배치시킨다. 예를 들어, "100010001000100"이 제1 주코드 그룹(MCG1)에 있는 코드워드이면서 제1 판단 코드 그룹(DCG1)에 속하는 코드워드이고, 이 코드워드가 제1 주코드 그룹(MCG1)에서 복호값이 128에 해당한다면 제1 판단 코드 그룹(DCG1) 내에서도 그 복호값이 128에 해당하는 위치에 배치시킨다. 이는 복호시 에러가 발생했을 때 에러 전파를 최소화하기 위한 배려이다.
LZ값이 LZk-y인 코드를 판단 코드 그룹(DCG)에 배치시키는 이유는 EZ값이 dEZy인 코드워드를 중복시켰기 때문이다. 중복된 코드를 복호할 때 해당 데이터를 올바르게 복호하기 위해서 다음 코드워드를 참조하는 데, 다음 코드워드가 제1 판단 코드 그룹(DCG1)에서 온 코드워드라면 원래의 코드워드에 대한 복호 데이터로 복조하고, 다음 코드워드가 제2 판단 코드 그룹(DCG2)에서 온 코드워드라면 중복시킨 코드워드에 대한 복호 데이터로 복조한다.
또한, dEZy인 코드들이 제1 판단 코드 그룹(DCG1)이나 제2 판단 코드 그룹(DCG)내의 코드워드들과 (d,k)를 만족시키면서 연결되기 위해서는 이전 코드워드의 엔드 제로수 EZ(p)와 현재 코드워드의 리드 제로수 LZ(c)의 합 EZ(p)+LZ(c)이 dEZ(p)+LZ(c)k를 만족해야 하므로 판단 코드 그룹의 LZ(c)는 LZk-y를 만족해야 한다.
예를 들어, "1000100001000100"인 코드워드가 제1 주코드 그룹(MCG1)내에 두 개 존재할 때, 즉, 원래의 코드워드 "100010001000100"에 대한 복호값이 128, ncg가 제1 판단 코드 그룹(DCG1)이고, 중복시킨 코드워드 "100010001000100"에 대한 복호값이 129, ncg가 제2 판단 코드 그룹(DCG2)이라 하면 코드워드 "100010001000100"를 복호할 때 그 다음에 오는 코드워드가 DCG1에 속해 있느냐 DCG2에 속해 있느냐에 따라 128 또는 129로 복조된다.
다음은 DSV 코드 그룹들의 배치에 대해 설명한다. DSV 코드 그룹들은 본 발명에서 코드워드 스트림의 DC 성분을 억압하기 위한 방법으로 제시한 것으로 별도의 코드워드들이 필요하지 않고 제1 주코드 그룹(MCG1)에서 사용중인 코드워드들을 이용하므로 보조 코드 그룹에 해당한다.
LZ = x인 코드워드들은 제2 주코드 그룹(MCG2)과 같은 위치의 코드이면서 반대의 CSV 부호, 반대의 INV 특징을 갖도록 제1 DSV 코드 그룹에 배치하고(S117 단계), LZ = x 또는 x-1인 코드워드들은 제2 주코드 그룹(MCG2)과 같은 위치의 코드이면서 반대의 CSV의 부호, 반대의 INV 특징을 갖도록 제2 DSV 코드 그룹에 배치한다(S118 단계)). 같은 방법으로 LZ = x 또는 x-1 또는...x-l인 코드워드들은 제2 주코드 그룹(MCG2)과 같은 위치의 코드이면서 반대의 CSV 부호, 반대의 INV 특징을 갖도록 제l+1 DSV 코드 그룹에 배치한다(S119 단계). DSV 코드 그룹내에서의 코드워드의 배치 위치는 제1 주코드 그룹(MCG1)내에서의 배치 위치와 동일하게 한다. 즉, 같은 코드워드가 제1 주코드 그룹(MCG1)과 DSV 코드 그룹내에 있다면 복호시 같은 데이터로 복호가 되도록 배치한다.
S107 단계에서도 이미 설명된 바와 같이, 어느 한 코드워드의 EZ값이 0EZ 〈 d이면 ncg는 제2 주코드 그룹(MCG2)이나 DSV 코드 그룹으로부터 다음 코드워드가 올 수 있도록 지정되는 데 DSV 코드 그룹내의 코드워드들은 주코드 그룹들 중 본 발명의 실시예에서는 제1 주코드 그룹(MCG1)에서 추출한 것들이기 때문에 제2 주코드 그룹(MCG2)내의 코드워드들과 분명하게 구분된다. 0EZ 〈 d인 코드워드 다음에 입력되는 코드워드들은 제2 주코드 그룹(MCG2)내에서 코드워드를 선택하느냐 DSV 코드 그룹내에서 코드워드를 선택하느냐는 DC 억압에 유리한 코드워드가 속해 있는 그룹으로부터 선택하면 된다.
따라서, DSV 코드 그룹의 선택 방법은 dEZ(p)+LZ(c)k를 만족하면서 EZ(p)가 0일 때는 LZ(c)가 x인 제1 DSV 코드 그룹에서 코드워드를 선택하고, EZ(p)가 1일때는 LZ(c)가 x 또는 x-1인 코드워들이 속해 있는 제2 DSV 코드 그룹에서 코드워드를 선택하고, 같은 방법으로 EZ(p)가 x일 때는 LZ(c)가 x 또는 x-1 또는...x-l인 코드워드들이 속해 있는 제l+1 DSV 코드 그룹에서 코드워드를 선택한다.
따라서, 각 코드 그룹에 존재하는 코드워드들 다음에 오는 코드워드들의 코드 그룹을 지시하는 ncg(next code group)는 코드워드의 엔드 제로수(EZ)를 검사하여 EZd-1 일때는 ncg가 제2 주코드 그룹 또는 DSV 주코드 그룹을 지시하도록 하고, dEZy이고, 중복된 경우에는 ncg가 제1 판단 코드 그룹 또는 제2 판단 코드 그룹을 지시하도록 하고, y 〈 EZk이거나 dEZy이고 코드워드가 중복되지 않은 경우에는 ncg가 제1 주코드 그룹 또는 제2 주코드 그룹을 지시하도록 하여 최대 런 길이 k를 위반하지 않는 경우에 코드의 선택폭을 넓힐 수 있도록 하여 코드의 DC 억압 능력을 향상시킨다.
이렇게 생성된 코드워드에 대해 해당하는 코드 그룹에 저장하게 되고, 마지막 데이터인지를 판단해서(S120 단계), 마지막 데이터이면 종료하고, 그렇지 않으면 i(여기서, i=0,1,...,2n-1)를 증가해서(S121 단계), 2n개의 코드워드를 생성하는 S102 단계로 진행한다.
도 6a와 도 6b는 본 발명에서 제안하는 (1,8,8,12) 코드의 사용가능한 코드워드의 수를 나타내고 있다. 생성된 코드워드는 그 코드워드가 같는 특징에 따라 총 5개의 코드 그룹으로 나뉘어지고, 5개의 코드 그룹은 각각의 기능에 따라 두 개의 주코드 그룹(MCG1,MCG2)과 두 개의 판단 코드 그룹(DCG1,DCG2)과 하나의 DSV 코드 그룹으로 나뉘어진다.
여기서, 두 개의 주코드 그룹 MCG1과 MCG2에는 동일한 코드워드가 존재하지 않으며, 두 개의 판단 코드 그룹 DCG1과 DCG2에도 마찬가지로 동일한 코드워드는 존재하지 않는다. 여기서, 주코드 그룹이라 함은 중복되지 않은 코드워드의 다음에 오는 코드워드가 속해있는 코드 그룹으로 정의하며, 판단 코드 그룹이라 함은 중복된 코드워드의 다음에 오는 코드워드가 속해 있는 코드 그룹으로 정의한다. 따라서, 향후에 이들의 코드 그룹을 사용 목적에 따라 다르게 명명할 수도 있겠으나 그 코드 그룹의 의미는 상술한 것에서 벗어나지 않는다면 동일하다고 보아도 무방할 것이다.
DSV 코드 그룹은 코드열의 DC 억압을 위한 별도의 코드 그룹이며, 여기에 속한 70개의 코드워드는 모두 "010"로 시작하며 주코드 그룹 중 하나인 제1 주코드 그룹(MCG1)에 속해 있다. 주코드 그룹과 판단 코드 그룹은 각각 256개의 코드워드를 가져야 한다. 제1 주코드 그룹(MCG1)은 70개의 코드워드가 부족하고, 제2 주코드 그룹(MCG2)에는 58개의 코드워드가 부족하다. 이 부족한 코드워드의 수는 모두 128개이며, 이들 코드워드는 "01"로 시작하는 코드워드로 각각 보충한다. 따라서, DSV 코드 그룹을 제외하고 제2 판단 코드 그룹(DCG2)에 있는 코드워드 중 한 개의 코드워드를 제거하면 모든 코드 그룹이 256개의 코드워드를 갖게 된다.
도 6a에 도시된 코드 그룹의 특징에 따라 생성된 코드 변환표는 도 7a 내지 도 8에 도시되어 있고, 도 6b에 도시된 코드 그룹의 특징에 따라 생성된 코드 변환표는 도 15a 내지 도 16에 도시되어 있다.
도 7a 내지 도 7e는 본 발명에 의한 (1,8,8,12) 코드를 위한 코드 그룹별(MCG1, MCG2, DCG1, DCG2) 주 변환표로서, 파라미터를 d=1, k=8, m=8, n=12, x=1, y=3, bit(i)=bit(j)=9, bit(k)=5인 경우 코드 변환표를 생성한 예를 보이고 있다.
우선, 주코드 그룹, 예를 들어, 제1 주코드 그룹(MCG1)에는 LZ가 0인 코드워드 186개와 LZ가 1인 코드워드 128개중 70개를 할당한다. 128개 중 어떤 코드워드를 제1 주코드 그룹(MCG1)에 배치하는가 하는 문제는 매우 실험적이긴 하지만 제1 주코드 그룹(MCG1)과 제2 주코드 그룹(MCG2)내에서 같은 소스워드에 대한 코드워드들이 DSV 제어에 유리하도록 선택하며 여기서는 같은 소스워드에 대한 코드워드들이 반대의 CSV 부호와 반대의 INV 특징을 갖도록 선택한다.
일단 DSV 코드 그룹을 제외한 모든 코드 그룹이 256개의 코드워드를 확보하면 제1 주코드 그룹(MCG1)과 제2 주코드 그룹(MCG2)내의 코드워드들을 일단 CSV의 절대값이 큰 값에서 작은 값 순으로 배열한 후 제2 주코드 그룹(MCG2)내의 코드워드들은 제1 주코드 그룹(MCG1)내의 코드워드와 CSV의 부호 뿐만아니라 INV의 특징이 반대가 되도록 재배치한다. DSV 코드 그룹에 있는 70개의 코드워드들 역시 CSV의 절대값이 큰 값에서 작은 값 순으로 배열한 후 제2 주코드 그룹(MCG2)내에 같은 소스워드에 해당하는 코드워드들과 CSV의 부호 뿐만아니라 INV의 특징이 반대가 되도록 재배치한다.
한편, DC 억압 제어가 가능한 코드 그룹쌍(MCG1과 MCG2 또는 MCG2와 DSV 코드 그룹)내의 코드워드의 배치 방법으로 상술한 INV의 특징 및 CSV의 부호가 반대가 되도록 배치하는 방법 외에 DC 억압 제어가 가능한 코드 그룹쌍내에 동일한 소스코드에 해당하는 코드워드의 CSV의 부호 및 INV의 특징이 반대이면서 다음에 올 코드워드의 코드 그룹까지 동일하게 지정하도록 하여 코드열의 DSV 방향이 반대로 진행하도록 하거나 코드워드의 INV가 반대이면서 다음에 올 코드워드의 코드 그룹은 동일하게 지정하도록 하여 현재의 DSV는 불리하더라도 코드열의 DSV 방향이 반대로 진행하도록 하여 특히, 룩어헤드(Look-ahead) 방법의 코드열 선택 알고리즘을 사용할 때 유리하도록 코드워드를 배치하는 방법도 있을 수 있다.
이들 코드 그룹쌍 제1 및 제2 주코드 그룹(MCG1과 MCG2) 또는 제2 주코드 그룹(MCG2)와 DSV 코드 그룹은 코드열의 DC 억압을 수행할 수 있는 코드 그룹으로서 코드워드의 파라미터 CSV의 부호 및 INV의 특징이 반대가 되도록 배치하는 경우의 DC 억압 능력은 CSV만 반대로 배치한 경우보다 약 23dB의 추가적인 억압 효과를 기대할 수 있다.
도 8은 DSV 제어용 주 변환표로서, DSV 코드 그룹은 상술한 바와 같이 LZ=1이면서 제1 주코드 그룹(MCG1)에 존재하는 코드워드 70개를 DSV 제어를 위해 별도로 분리하고, 제2 주코드 그룹(MCG2)의 코드 그룹내의 코드워드와는 CSV의 부호, INV의 특징이 반대가 되도록 배치하여 생성한 코드 변환표이다. 변조되는 코드워드에 DSV 제어 비트를 삽입하는 DSV 삽입 시점이 아닐 때 입력 데이터가 70보다 작은 경우에는 도 7a 내지 도 7e에 도시된 제2 주코드 그룹(MCG2)의 변환표 또는 도 8에 도시된 DSV 제어용 주 변환표를 선택적으로 사용하여 DSV 제어를 수행한다.
여기서, DSV 코드 그룹은 다음 코드워드가 속해 있는 코드 그룹이 제1 주코드 그룹(MCG1)이더라도 제2 주코드 그룹(MCG2)에 속해 있는 코드워드 중 (d,k) 런 길이 조건을 위반하지 않을 가능성이 있는 코드워드들만 별도로 만들 수 있으며, 이때 제1 주코드 그룹(MCG1)의 동일한 소스워드에 해당하는 코드워드와 CSV의 부호 및 INV의 특징이 반대가 되도록 코드워드들을 DSV 제어용 코드 그룹에 배치하여 제1 주코드 그룹(MCG1)과 함께 추가적인 DC 억압 제어를 할 수 있다.
도 9a 내지 도 9e는 변조되는 코드워드에 DSV 제어 비트가 삽입되는 DSV 제어 시점일 때 도 7a 내지 도 7e에 도시된 주 변환표 대신에 사용하기 위한 DSV 제어용 보조(sub) 변환표이며, 도 7a 내지 도 8과는 달리 13비트의 코드워드로 구성되어 있고, 최상위 비트가 DSV 제어용 비트이다. x의 의미는 0과 1을 모두 사용할 수 있으며, DSV 제어에 유리한 것으로 선택하면 된다. 도 9a 내지 도 9e에 도시된 DSV 제어용 보조 변환표의 특징은 도 7a 내지 도 7e에 도시된 주 변환표의 코드워드 비트수에 1 비트의 머지 비트가 추가된 형태로서, 그 1 비트는 MSB에 배치하고, 그 값은 런 길이를 위반하지 않도록 "0" 또는 "1"이 선택될 수 있다는 x로 표시되어 있다.
따라서, MSB의 x는 0과 1 중 DSV에 유리한 값으로 선택가능하고, MSB를 제외한 나머지 비트(본 실시예에서는 12비트)들은 주 변환표의 내용과 동일하다는 특징을 갖고 있다. 그러나, 도 9a 내지 도 9e에 도시된 코드워드들은 DSV 제어용으로 주 변환표의 코드워드들보다 많은 비트수(여기서는 13비트)를 가지며, DSV 제어를 보다 강력히 원할 때에는 머지 비트없이 주 변환표와는 별도의 13비트를 사용하여 DSV 제어에 적합한 코드워드를 찾아 설계할 수 있다. 이때, 머지 비트가 삽입된 경우를 위한 도 9a 내지 도 9e에 도시된 DSV 제어용 보조 변환표와는 별도로 소정 비트(예로서 13비트 이상)의 코드워드들로 되어 있을 수 있다.
도 10은 도 7a 내지 도 9e에서 예시한 코드표를 이용하는 (1,8,8,12) 코드의 DSV 추이 곡선을 나타낸 것으로서, DSV 제어 빈도수(도 9에 도시된 DSV 제어용 보조 변환표 이용 횟수)에 따른 코드의 DC 성능을 시뮬레이션해서 얻은 결과이다. 위로부터 DSV 제어용 보조 변환표를 사용하지 않은 경우, 8개의 코드워드마다 한 번 DSV 제어용 보조 변환표를 사용한 경우, 4개의 코드워드마다 한 번 DSV 제어용 보조 변환표를 사용한 경우, 2개의 코드워드마다 한 번 DSV 제어용 보조 변환표를 사용한 경우, 매 코드워드마다 DSV 제어용 보조 변환표를 사용한 경우의 파워 스펙트럼을 보이고 있다.
입력 데이터는 랜덤 데이터이고, 도 9a 내지 도 9e에 도시된 DSV 제어용 보조 변환표의 사용 빈도수가 많을 수록 코드의 저주파 성분은 감소함을 알 수 있다. 또한, DSV 제어용 보조 변환표(도 9a 내지 도 9e)를 사용하지 않고 주 변환표(도 7a 내지 도 7e)와 DSV 제어용 주 변환표(도 8)만을 사용하더라도 도 11에서 알 수 있듯이 종래의 (1,7,2,3) 코드에 대한 DSV 추이 곡선인 도 2와는 달리 계속해서 DSV값이 "0"으로 수렴하려는 특성을 가지고 있음을 알 수 있다.
도 12(도 12a, 도 12b, 도 12c)와 도 13(도 13a, 도 13b, 도 13c)은 도 14a 및 도 14b에 도시된 RLL 코드 생성 방법을 이용하여 d와 k가 각각 1과 8인 조건을 만족하면서 생성된 주 변환표와는 별도의 DSV 제어용 보조 변환표이다. 도 9a 내지 도 9e에 도시된 DSV 제어용 보조 변환표는 도 7 내지 도 7e에 도시된 주 변환표의 코드워드를 그대로 이용하면서 최상위 비트가 DSV 제어용 비트로 사용되는 코드워드인 반면에 도 12와 도 13은 주 변환표와는 별도의 14 비트의 코드워드를 사용하고 있다.
도 12 및 도 13에 도시된 별도의 DSV 제어용 보조 변환표는 각각 4개의 코드 그룹으로 구성된다. 도 12에 도시된 DSV 제어용 보조 변환표의 코드 그룹(MCG1-1, MCG2-1, DCG1-1, DCG2-1)과 이에 대응하는 도 13에 도시된 DSV 제어용 보조 변환표의 코드 그룹(MCG1-2, MCG2-2, DCG1-2, DCG2-2)은 주 변환표의 코드워드의 특징과 마찬가지로 CSV의 부호가 서로 반대가 되도록 배치하고, INV의 특징도 반대가 되도록 배치하면서 다음에 올 코드워드의 코드 그룹까지 동일하게 지정하도록 하여 코드열의 DSV 방향이 반대로 진행하도록 한다.
도 14a 및 도 14b는 도 5a 및 도 5b에 도시된 RLL 코드 그룹 생성 방법을 이용하여 (1,8,8,12) 코드를 위한 코드 그룹 생성 방법의 일 실시예에 따른 흐름도로서, 도 5a 및 도 5b에 도시된 흐름도와 비교해 볼 때, S153 단계 내지 S163 단계, S169 단계, S170 단계는 동일하므로 그 설명은 생략하기로 하며, 도 5a 및 도 5b와 구별되는 S151 단계, S152 단계, S164 단계 내지 S168 단계를 중심으로 설명하기로 한다.
S151 단계에서는 원하는 최소 런 길이(d)를 1로 하고, 최대 런 길이(k)를 8로 하고, 데이터 비트 길이(m)를 8로 입력하고, 코드워드 비트 길이(n)를 12로 입력하고, 주코드 그룹의 구분 파라미터(x)를 1로 입력하고, 코드워드의 중복 파라미터(y)를 3으로 입력한다. S152 단계에서는 입력된 조건에 맞는 코드를 2n개(i=02n-1)까지 즉, 212개의 코드워드를 발생시킨다.
한편, S164 단계에서는 LZ값이 LZk-y인 경우는 최하위 비트(bit0)에서부터 최상위 비트(bit11)까지 검사하고, S165 단계에서는 최상위 비트(bit11)가 "1"(10xxb: LZ=0) 이거나 상위 4비트(bit11bit8)가 모두 "0"(000b: LZ=4 or 5)인지를 판단해서 최상위 비트(bit11)가 1이거나 상위 4비트(bit11bit8) 모두가 "0"이면 그 코드워드는 제1 판단 코드 그룹(DCG1)에 저장하고(S166 단계), 그렇지 않으면(010xb(LZ=1), 0010b(LZ=1) or 0001b(LZ=3)) 제2 판단 코드 그룹(DCG2)에 저장한다(S167 단계). S168 단계에서는 LZ=1인 코드워드들은 제2 주코드 그룹(MCG2)과 같은 위치의 코드이면서 반대의 CSV 부호, 반대의 INV 특징을 갖도록 DSV 코드 그룹에 저장한다.
도 15a 내지 도 15e는 도 14a 및 도 14b에 도시된 알고리즘에 의해 생성된 (1,8,8,12) 코드를 위한 코드 그룹별(MCG1, MCG2, DCG1, DCG2) 주 변환표로서, 각 코드 그룹의 특성은 도 6b에 도시된 바와 같으며, 다만 두 개의 판단 코드 그룹 DCG1과 DCG2는 각각 LZ가 0, 4 또는 5인 코드워드들과 LZ가 1,2 또는 3인 코드워드들로 배치하고, 가능한 제1 주코드 그룹(MCG1)과 제2 주코드 그룹(MCG2)내의 같은 소스워드에 해당하는 코드워드와 동일하게 배치함으로서 복조시 에러가 적게 발생하도록 한다.
도 16은 도 15a 내지 도 15e에 도시된 제1 주코드 그룹(MCG1)에 존재하는 코드워드 70개를 DSV 제어를 위해 별도로 분리한 DSV 제어용 주 변환표로서, DSV 코드 그룹은 제2 주코드 그룹(MCG2)의 코드 그룹내의 코드워드와는 CSV, INV 파라미터가 반대로 배치되도록 하여 생성한 코드 변환표이다.
도 17a 내지 도 17e는 변조되는 코드워드에 DSV 제어 비트가 삽입되는 DSV 제어 시점일 때 도 15a 내지 도 15e에 도시된 주 변환표 대신에 사용하기 위한 DSV 제어용 보조 변환표로서, 도 15a 내지 도 15e에 도시된 주 변환표의 코드워드 비트수에 1 비트의 머지 비트가 추가된 형태로서, 그 1 비트는 MSB에 배치하고, 그 값은 런 길이를 위반하지 않도록 "0" 또는 "1"이 선택될 수 있다는 x로 표시되어 있다.
도 18은 도 15a 내지 도 16에 도시된 주 변환표만을 사용하여 코드의 DC 성능을 컴퓨터 시뮬레이션해서 얻은 결과이다. 머지 비트없이도 코드자체가 DC 억압 효과가 있음을 알 수 있다.
도 19는 코드 그룹쌍 MCG1과 MCG2 또는 MCG2과 DSV 코드 그룹은 코드열의 DC 억압을 수행할 수 있는 코드 그룹으로서 코드워드의 CSV 및 INV 파라미터를 반대가 되도록 배치하는 경우(실선으로 표시)의 DC 억압 능력은 CSV만 반대로 배치한 경우(점선으로 표시)보다 23dB의 추가적인 억압 효과를 기대할 수 있다.
도 20은 도 16에 도시된 바와 같은 DSV 코드 그룹을 별도로 둠으로서 DSV 코드 그룹을 사용하는 경우(실선으로 표시)가 그렇지 않은 경우(점선으로 표시)보다 약 2dB의 DC 억압 효과를 더 기대할 수 있음을 나타내고 있다.
도 21은 입력 데이터는 랜덤 데이터이고, DSV 제어의 빈도수(도 17a 내지 도 17e에 도시된 DSV 제어용 보조 변환표 이용 횟수)에 따른 코드의 DC 성능을 컴퓨터 시뮬레이션해서 얻은 결과이다. 위로부터 8개의 코드워드마다 한 번 DSV 제어용 보조 변환표를 사용한 경우, 4개의 코드워드마다 한 번 DSV 제어용 보조 변환표를 사용한 경우, 2개의 코드워드마다 한 번 DSV 제어용 보조 변환표를 사용한 경우의 파워 스펙트럼을 보이고 있다. 도 21에서 알 수 있듯이 도 17a 내지 도 17e에 도시된 DSV 제어용 보조 변환표의 사용 빈도수가 많을 수록 코드의 저주파 성분은 감소하나 그만큼 코드의 기록 밀도는 떨어진다.
다음은 도 5a 및 도 5b에 도시된 방법에 의해 생성된 도 7a 내지 도 9e에 도시된 코드 그룹별 코드 변환표와 도 14a 및 도 14b에 도시된 방법에 의해 생성된 도 15a 내지 17e에 도시된 코드 그룹별 코드 변환표를 이용하여 (1,8,8,12) 코드의 변복조 방법을 설명한다.
도 22a와 도 22b는 본 발명에 의한 (1,8,8,12)로 표현되는 RLL 코드의 변조 방법의 일 실시예에 따른 흐름도로서, 설명의 편의상 도 7a 내지 도 9e를 결부시켜 설명하기로 한다.
우선 ncg를 "1"로서 초기화하고, DSV 코드 삽입 빈도수를 설정한다(S201 단계).
여기서, 삽입 빈도수로 설정되는 숫자의 의미를 살펴 보면 "0"은 DSV 제어용 코드워드를 사용하지 않는다는 의미이고, 즉, DSV 제어용 보조 변환표(도 9a 내지 도 9e)를 사용하지 않는다는 의미이다. "1"은 매 코드워드마다 DSV 제어 비트를 삽입한다는 의미로서, 이 경우는 주 변환표(도 7a 내지 도 8)를 사용하지 않고 DSV 제어용 보조 변환표를 사용하여 부호화를 한다는 의미이다. 2는 두 코드워드마다 한 번씩 DSV 제어용 보조 변환표를 사용한다는 의미로서, 이 경우는 번갈아가며 한 번은 주 변환표를 이용하여 부호화하고, 다른 한번은 DSV 제어용 보조 변환표를 이용하여 부호화한다는 의미이다. 4는 네 코드워드마다 한 번씩 DSV 제어용 보조 변환표를 사용한다는 의미로서, 이렇게 소정의 삽입 빈도수 q는 모듈로 연산하여 그 값이 "0"(modulo(q)=0)인 경우 DSV 제어용 보조 변환표를 이용하여 부호화하고, 나머지는 주 변환표를 이용하여 부호화한다는 의미이다.
물론, DSV 제어용 보조 변환표를 이용하는 횟수가 많아지면 코드의 리던던시가 많아지게 되어 DSV 제어 측면에서는 유리하지만 기록 밀도 측면에서는 불리하다.
S201 단계에서 ncg를 1로 초기화하고, DSV 코드 삽입 빈도수를 입력한 후 동기 코드를 삽입할 것인지를 판단한다(S202 단계). 동기 코드워드의 예는 도 23에 도시되어 있다.
도 23은 도 7a 내지 도 9e에 도시된 코드 변환표를 이용하여 (1,8,8,12) 변조시 사용할 수 있는 24비트의 동기 코드워드들이며, ncg가 제1 주코드 그룹(MCG1)과 제2 판단 코드 그룹(DCG2)를 지시할 때와 제2 주코드 그룹(MCG2)과 제1 판단 코드 그룹(DCG1)을 지시하는 경우로 나누어 ncg가 MCG1과 DCG2를 지시할 때 사용되는 동기 코드워드들과 ncg가 MCG2와 DCG1을 지시할 때 사용되는 동기 코드워드들의 CSV의 부호가 각각 반대가 되도록 배치하여 DSV 제어에 유리한 동기 코드워드를 선택할 수 있도록 배려하고 있다.
도 24는 도 15a 내지 도 17e에 도시된 코드 변환표를 이용하는 경우 변조시 사용할 수 있는 동기 코드워드들로서 ncg가 제1 주코드 그룹(MCG1)과 제1 판단 코드 그룹(DCG1)를 지시할 때와 제2 주코드 그룹(MCG2)와 제2 판단 코드 그룹(DCG2)를 지시하는 경우로 나누어 ncg가 MCG1과 DCG1을 지시할 때 사용되는 동기 코드워드들과 ncg가 MCG2와 DCG2를 지시할 때 사용되는 동기 코드워드들의 CSV의 부호가 반대가 되도록 배치하여 DSV 제어에 유리한 동기 코드워드를 선택할 수 있도록 배려하고 있다.
한편, S202 단계에서 판단 결과가 동기를 삽입하는 시점이면 동기 패턴은 DC 억압하기에 유리한 패턴으로 선택하는 동기 삽입 루틴을 수행한 후(S203 단계), 데이터 끝이 아니면 다시 동기 삽입 판단 단계(S202 단계)로 되돌아간다(S221 단계). 도면에 도시된 mc는 변조 코드워드(modulated codeword)를, DCC는 DC 제어에 유리한 것을 선택한다는 것을 각각 의미한다.
동기 다음에 오는 코드워드는 특정 코드워드 그룹에서 찾아야 한다는 규정이 필요하다. 따라서, 본 발명의 일 실시예에서는 동기 다음에 오는 코드워드를 지정하는 ncg는 2로 하고, 다음에 오는 데이터에 대한 코드워드는 제2 주코드 그룹(MCG2)에서 찾는다.
S202 단계에서 판단 결과가 동기 삽입 시기가 아니면 입력되는 1 바이트 단위로 데이터(dt)를 읽고(S204 단계), DSV 코드 삽입 시기인지를 판단해서(S205 단계), DSV 코드 삽입 시기가 아니면 코드 그룹을 주 변환표(도 7a 내지 도 8)를 참조한다(S206 단계). 여기서, cod1(dt)는 입력 데이터의 변조되는 코드워드를 제1 주코드 그룹(MCG1)에서 찾고, cod2(dt)는 입력 데이터의 변조되는 코드워드를 제2 주코드 그룹(MCG2)에서 찾고, cod3(dt)는 입력 데이터의 변조되는 코드워드를 제1 판단 코드 그룹(DCG1)에서 찾고, cod4(dt)는 입력 데이터의 변조되는 코드워드를 제2 판단 코드 그룹(DCG2)에서 찾고, cod5(dt)는 입력 데이터의 변조되는 코드워드를 DSV 코드 그룹에서 코드워드를 찾는 것을 의미한다.
이전 코드워드가 지시하는 ncg에 대응한 해당 코드 그룹에서, 읽혀진 1바이트의 데이터에 대한 변조 코드워드를 찾는다(S207 단계). 단 DC 억압을 위해 ncg가 1일 때와 2일 때는 참조할 수 있는 변환 코드 그룹이 두 개이다.
먼저, 이전 코드워드의 ncg가 1이면 그 코드워드의 EZ값은 1EZ3중에서 중복되지 않은 코드워드나 EZ 〉 3인 코드워드로서 (1,8)의 런 길이 조건을 위반하지 않는 범위에서 제1 주코드 그룹(MCG1)과 제2 주코드 그룹(MCG2)을 모두 참조해서 변조 코드워드를 선택할 수 있다(S208,S209 단계). 이때, 코드 그룹의 선택 기준은 DC 제어에 유리한 코드가 속해 있는 코드 그룹을 선택한다. 따라서, S209 단계에서는 변조 코드워드(mc)를 제1 주코드 그룹(MCG1)과 제2 주코드 그룹(MCG2) 중 DC 제어에 유리한 코드 그룹에서 찾고, ncg는 찾아진 코드 그룹에 속하는 코드워드가 지정하는 ncg로 갱신한다.
여기서, EZ값이 1EZ3인 코드워드를 중복 시킬 때, EZ=1이면서 코드워드의 상위 비트들 4개의 값이 8(1000b)이나 9(1001b)일 때는 중복시키지 않고, 다음에 따라오는 코드워드의 코드 그룹이 DCG1 또는 DCG2가 아니라 MCG1 또는 MCG2가 되도록 ncg(=1)를 생성하여 DSV 제어에 유리하도록 한다.
한편, 이전 코드워드의 ncg가 1이고, 제2 주코드 그룹(MCG2)에서 (1,8)의 런길이 조건을 만족하지 않으면 변조 코드워드를 제1 주코드 그룹(MCG1)에서 찾고, ncg는 찾아진 코드워드가 지정하는 ncg로 갱신한다(S210 단계).
이전 코드워드의 ncg가 2이면 그 코드워드의 EZ값이 EZ = 0인 경우이며, 이 경우에는 읽혀진 데이터(dt)가 70 미만이면 변조 코드워드를 제2 주코드 그룹(MCG2) 또는 DSV 코드 그룹에서 선택해서 찾을 수 있고, ncg는 찾아진 코드워드가 지정하는 ncg로 갱신한다(S211,212 단계). 이때, 선택 기준은 DC 억압에 유리한 코드 그룹에서 찾으면 된다. S211 단계에서 읽혀진 데이터(dt)가 70 이상일 경우에는 변조 코드워드를 제2 주코드 그룹(MCG2)에서 찾고, ncg는 찾아진 코드워드가 지정하는 ncg로 갱신한다(S213 단계).
이전 코드워드의 ncg가 3이나 4이면 그 코드워드의 EZ값이 1EZ3이고 중복된 코드워드가 있는 경우이며 다음에 오는 코드워드는 각각 제1 판단 코드 그룹(DCG1)이나 제2 판단 코드 그룹(DCG2)에서 찾고, ncg는 찾아진 코드워드가 지정하는 ncg로 갱신한다(S214,S215 단계).
한편, S205 단계에서 판단된 결과가 DSV 코드 삽입 시기이면 코드 그룹을 주 변환표를 사용하지 않고 DSV 제어용 보조 변환표(도 9a 내지 도 9e)를 사용하여 데이터의 부호화를 실시한다(S216 단계). 여기서, DSV 제어용 보조 변환표는 도 12a 내지 도 13c를 사용할 수도 있다.
도시된 cod*1(dt)는 DSV 제어용 보조 변환표의 제1 주코드 그룹에서 코드워드를 찾는 것을 의미하고, cod*2(dt)는 DSV 제어용 보조 변환표의 제2 주코드 그룹에서 코드워드를 찾는 것을 의미하고, cod*3(dt)는 DSV 제어용 보조 변환표의 제1 판단 코드 그룹에서 코드워드를 찾는 것을 의미하고, cod*4(dt)는 DSV 제어용 보조 변환표의 제2 판단 코드 그룹에서 코드워드를 찾는 것을 의미한다. * 표시는 해당 코드 그룹에서 복수개의 코드워드가 생성 가능하다는 의미이다. 또한, DCC(cod*1(dt))의 의미는 도 9a 내지 도 9e의 DSV 제어용 보조 변환표를 사용하는 경우 MSB에 x(don't care) 비트가 존재하여 이 경우는 0과 1이 모두 사용가능하므로 DC 억압에 유리한 비트를 선택한다는 의미이다.
이전 코드의 ncg를 검사해서(S217 단계), ncg가 "1" 또는 "2"를 지시하는 경우에는 DSV 제어용 보조 변환표내의 제1 주코드 그룹(MCG1) 또는 제2 주코드 그룹(MCG2) 모두 사용 가능하며, DSV 제어용 보조 변환표내의 제1 주코드 그룹(MCG1)과 제2 주코드 그룹(MCG2) 내에서도 MSB에 x가 존재하는 코드는 "0"이나 "1" 모두 선택가능하므로 최종적인 코드 선택은 DCC(DCC(cod*1(dt)), DCC(cod*2(dt))가 된다(S218 단계).
ncg가 3이나 4일때는 DSV 제어 비트가 삽입되지 않는 경우(주 변환표를 이용하는 경우)는 DSV 제어가 불가능하지만 DSV 제어 비트가 삽입되는 경우(MSB가 x인 DSV 제어용 보조 변환표를 이용하는 경우)는 DSV 제어가 가능하다. 따라서, 이전 코드의 ncg가 "3" 및 "4"를 지시하는 경우는 각각 DSV 제어용 보조 변환표내의 제1 판단 코드 그룹(DCG1)과 제2 판단 코드 그룹(DCG2) 내에서 DSV 제어에 유리하도록 don't care 비트인 MSB를 "0" 또는 "1"을 선택하게 되므로, 이전 코드의 ncg가 "3" 및 "4"를 지시하는 경우 최종적인 코드 선택은 각각 DCC(cod*3(dt)) 및 DCC(cod*4(dt))에서 유리한 비트를 선택한다(S219 단계, S220 단계).
도 25는 ncg가 지시하는 코드 그룹의 내용이 DSV 제어용 코드워드 삽입 시기가 아닐 때와 DSV 제어용 코드워드 삽입 시기일 때로 나누어 바뀐다는 것을 나타내는 표이다. DSV 제어용 코드워드 삽입 시기가 아닐 때는 변복조시 주 변환표(도 7a 내지 도 8)를 이용하고, DSV 제어용 코드워드 삽입 시기일 때는 변복조시 DSV 제어용 보조 변환표(예로서, 도 9a 내지 도 9e)를 이용한다.
즉, ncg가 지시하는 코드 그룹에 대한 내용은 DSV 제어용 코드워드 삽입 시기가 아닐 때 ncg가 1이면 다음 코드워드가 속해 있는 코드 그룹은 제1 주코드 그룹(MCG1) 또는 제2 주코드 그룹(MCG2)이고, ncg가 2이면 다음 코드워드가 속해 있는 코드 그룹은 제2 주코드 그룹(MCG2) 또는 DSV 코드 그룹이고, ncg가 3이면 다음 코드워드가 속해 있는 코드 그룹은 제1 판단 코드 그룹(DCG1)이고, ncg가 4이면 다음 코드워드가 속해 있는 코드 그룹은 제2 판단 코드 그룹(DCG2)이다.
DSV 제어용 코드워드 삽입 시기일 때, ncg가 1, 3, 4인 경우에는 DSV 제어용 코드 삽입 시기가 아닐 때와 동일한 코드 그룹이 적용되지만, ncg가 2인 경우에는 다음 코드워드가 속해 있는 코드 그룹은 제1 주코드 그룹(MCG1) 또는 제2 주코드 그룹(MCG2)이다.
도 26a와 도 26b는 도 7a 내지 도 9e에 도시된 코드 변환표를 사용하는 본 발명에 의한 (1,8,8,12) 코드의 복조 방법의 일 실시예에 따른 흐름도로서, 도 27에 도시된 시프트 레지스터들(102,104,106,108), 동기 검출 및 보호기(110), 제1 비트 검사기(112), ncg 추출 및 변경기(114), 검출기(116), 제2 비트 검사기(118), 로직 회로(120), 제3 비트 검사기(122), 복조 코드표(124)로 구성된 복조 장치를 결부시켜 설명하기로 한다.
DSV 코드 삽입 빈도수를 입력하고, 직렬로 입력되는 코드워드 스트림을 도 27에 도시된 시프트 레지스터들(SR2,SR1,SR0,SR로 표기되어 있음:108,106,104,102)에 시프트해서 저장한다(S301 단계).
동기 검출 및 보호기(110)는 시프트 레지스터들(102,104)로부터 제공되는 도 23에 예시된 바와 같은 24비트의 동기 패턴을 복호해서 동기인지를 검출한다. 이렇게 동기 검출 및 보호기(110)에 의해 동기 패턴이 검출되면(S302 단계), 동기 보호 및 내삽하는 동기 복원 루틴을 수행하고, 동기 다음은 ncg를 2로 갱신한 후 마지막 데이터인지를 판단하는 S318 단계로 진행한다(S303 단계). 즉, S303 단계에서는 동기 검출 및 보호기(110)에 의해 검출된 동기를 판단하여 제대로 검출된 동기이면 그대로 사용하고 그렇지 않으면 동기 검출 및 보호기(110)에서 제공되는 의사 동기(pseudo sync)를 내삽한다.
다음은 복조하고자 하는 코드워드(SR1)를 저장하고 있는 시프트 레지스터(106)로부터 출력되는 코드워드가 속해 있는 코드 그룹을 표시하는 ncg를 찾아내는 과정을 설명한다.
S302 단계에서 시프트 레지스터(102,104)에 저장된 코드워드(SR,SR0)가 동기가 아니면 DSV 코드 삽입 시기인지를 판단하여 DSV 코드 삽입 시기이면 DSV 제어용 보조 변환표를 도 9a 내지 도 9e를 사용하는 경우에는 코드워드의 최상위 비트에 할당된 DSV 제어 비트를 제거한다(S305 단계). 여기서, 도12a 내지 도 13c에 도시된 DSV 제어용 보조 변환표를 사용하는 경우에는 DSV 제어 비트를 제거하지 않고 도 12a 내지 도 13c에 도시된 보조 변환표를 사용하여 주 변환표에 의해 변조된 코드워드를 복조하는 S306 단계 내지 S318 단계와 동일한 순서로 복조하면 된다.
여기서, 시프트 레지스터(108) 및 복조 코드표(124)에 제공되는 DSV 제어 신호(DSV time)는 검출된 동기 이후 카운트하여 S301 단계에서 입력된 DSV 코드 삽입 빈도수에 해당하는 값이 되면 인에이블되는 신호이다. 도 9a 내지 도 9e에 도시된 DSV 제어용 보조 변환표를 사용할 경우, 코드워드의 MSB가 DSV 제어용 비트이고 나머지 12비트는 도 7a 내지 도 7e에 도시된 주 변환표와 동일하므로 MSB를 제거하고 주 변환표를 사용하면 된다. 즉, 시프트 레지스터(108)의 최상위 비트(bit12)에 저장된 코드워드의 비트는 DSV time 신호가 인에이블될 때 제거된다.
S304 단계에서 DSV 코드 삽입 시기가 아니면 시프트 레지스터(104)로부터 제공되는 이전 코드워드의 EZ값을 검사하여(S306 단계), EZ값이 0일 때는 ncg를 2로 갱신한다(S307 단계).
EZ가 1EZ3인 경우는 이전 코드워드(SR0)의 ncg에서 지시하는 코드 그룹에서 동일한 코드워드가 두 개 존재하는지를 검사한다(S308 단계).
만일, S308 단계에서 이전 코드워드의 ncg가 지시하는 코드 그룹에서 시프트 레지스터(104)에 저장된 이전 코드워드(SRO)와 동일한 코드워드가 두 개 존재하면 시프트 레지스터(106)로부터 현재 복조하고자하는 코드워드(SR1)의 9번째 비트(bit9)와 5번째 비트(bit5)를 검사하여(S309 단계), 어느 한 비트라도 "1"이 존재하면 ncg를 3으로 갱신하고 둘 다 "0"이면 ncg를 4로 갱신한다(S310,S311 단계).
S308 단계에서 이전 코드워드의 EZ가 1EZ3이면서 이전 ncg에서 지시하는 코드 그룹에서 동일한 코드워드가 존재하지 않거나 EZ 〉 3이면 ncg는 1로 갱신한다(S312 단계).
즉, 제1 비트 검사기(112)는 시프트 레지스터(104)의 이전 코드워드(SR0)의 하위 4비트를 검사하여 EZ값이 "0"일 경우(bit0가 1인 경우)는 ncg CON 신호를 "01b"로 출력(ncg가 2임을 의미)하고, EZ값이 1이상 3이하일 경우(bit3bit0가 1000b,0100b,0010b,1010b를 의미)는 ncg CON 신호를 "10b"로 출력(ncg가 3 이나 4임을 의미)하고, EZ값이 4이상일 경우(bit3bit0가 0000b을 의미)는 ncg CON 신호를 "00b"으로 출력(ncg가 1임을 의미)한다.
한편, 제2 비트 검사기(118)는 시프트 레지스터(104)로부터 제공되는 이전 코드워드(SR0)의 상위 4비트(bit11bit8)를 검사하여,"1000b" 이거나 "1OO1b"일 경우는 로직 "하이" 신호를 로직 회로(120)에 제공한다. 딜레이를 포함하는 검출기(116)는 ncg 추출 및 변경기(114)의 출력으로부터 "00b"가 검출되면 로직 "하이" 신호를 로직 회로(120)에 제공한다.
로직 회로(120)는 시프트 레지스터(104)의 상위 4비트의 값이 "1000b" 이거나 "1001b"이고, 검출기(116)에서 검출된 시프트 레지스터(104)에 저장되어 있는 이전 코드워드(SR0)가 지시하는 ncg가 "00b(ncg가 1임을 의미)"이면 예외(exception) 신호를 인에이블하여, ncg 추출 및 변경기(114)에 제공한다. ncg 추출 및 변경기(114)는 인에이블된 예외(exception) 신호에 따라 제1 비트 검사기(112)로부터 제공되는 ncg CON 신호가 "10b(ncg가 3 또는 4를 의미)"를 "00b"으로 변경하여 출력하고, 로직 회로(120)로부터 출력되는 exception 신호가 디세이블되어 있거나 ncg CON 신호가 "10b"가 아닐 때 ncg CON 신호를 그대로 복조 코드표(124)에 출력한다.
단 ncg 추출 및 변경기(114)는 ncg CON 신호가 "10b"이면 시프트 레지스터(106)에 저장된 복조하고자 하는 코드워드(SR1)의 9번째 비트와 5번째 비트를 검사하여, 어느 한 비트라도 "1"이면 ncg가 3임을 나타내는 "10b"를, 두비트 모두 "0"이면 ncg가 4임을 나타내는 "11b"를 복조 코드표(124)에 출력한다.
ncg 추출 및 변경기(114)가 인에이블되는 exception 신호에 따라 ncg CON 신호를 "10b"에서 "00b"으로 변경하는 이유는 1EZ3인 코드워드를 중복시킬 때 EZ=1이면서 코드워드의 상위 비트 4개의 값이 8(1000b) 또는 9(1001b)일 때는 중복시키지 않은 코드워드의 ncg가 MCG1 또는 MCG2가 되는 "1"(ncg CON = 00b)이 되도록 하기 위함이다.
다음은 복조하고자 하는 코드워드를 저장한 시프트 레지스터(106)의 출력을 복호하는 단계를 설명한다.
갱신된 ncg가 지시하는 코드 그룹에 복조하고자 하는 코드워드가 두 개 존재하는지를 검사한다(S313 단계). S313 단계에서 동일한 코드워드가 두 개 존재하면 제3 비트 검사기(122)에서 시프트 레지스터(108)로부터 제공되는 다음 코드워드(SR2)의 9번째 비트(bit9)와 5번째 비트(bit5)를 검사하여(S313 단계), 어느 한 비트라도 "1"이 존재하면 시프트 레지스터(106)로부터 제공되는 현재 복조하고자 하는 코드(SR1)는 동일한 코드워드 중 첫 번째 코드워드임을 확인하고 이에 대응하는 원래 데이터로 복조한다(S315 단계).
S314 단계에서 시프트 레지스터(108)로부터 제공되는 다음 코드워드(SR2)의 9번째 비트(bit9)와 5번째 비트(bit5) 둘 다 "0"이면 시프트 레지스터(106)로부터 제공되는 현재 복조하는 코드워드(SR0)는 동일한 코드워드 중 두 번째 코드워드임을 확인하고 이에 대응하는 원래 데이터로 복조한다(S316 단계).
S313 단계에서 갱신된 ncg가 지시하는 코드 그룹에 시프트 레지스터(106)로부터 제공되는 코드워드(SR1)가 하나만 존재한다면 갱신된 ncg가 지시하는 코드 그룹에서 시프트 레지스터(106)로부터 제공되는 현재 복조하고자 하는 코드워드(SR1)에 대응하는 원래 데이터로 복조한다(S317 단계).
ncg가 지시하는 코드 그룹은 도 25에 도시된 바와 같이 DSV 제어용 코드워드 삽입 시기가 아닐 때, ncg가 1이면 다음 코드워드가 속해 있는 코드 그룹은 제1 주코드 그룹(MCG1) 또는 제2 주코드 그룹(MCG2)이고, ncg가 2이면 다음 코드워드가 속해 있는 코드 그룹은 제2 주코드 그룹(MCG2) 또는 DSV 코드 그룹이고, ncg가 3이면 다음 코드워드가 속해 있는 코드 그룹은 제1 판단 코드 그룹(DCG1)이고, ncg가 4이면 다음 코드워드가 속해 있는 코드 그룹은 제2 판단 코드 그룹(DCG2)이고, DSV 제어용 코드워드 삽입 시기일 때 ncg가 1과 2이면 다음 코드워드가 속해 있는 코드 그룹은 제1 주코드 그룹(MCG1) 또는 제2 주코드 그룹(MCG2)이고, ncg가 3이면 다음 코드워드가 속해 있는 코드 그룹은 제1 판단 코드 그룹(DCG1)이고, ncg가 4이면 다음 코드워드가 속해 있는 코드 그룹은 제2 판단 코드 그룹(DCG2)이다.
예를 들어, 복조 코드표(124)에서는 DSV time 신호가 인에이블되어 있고(DSV 제어용 코드가 삽입된 시기임을 의미), ncg 추출 및 변경기(114)로부터 제공되는 신호가 "00b"일 때는 제1 주코드 그룹(MCG1) 또는 제2 주코드 그룹(MCG2)에서 선택하도록 되어 있다.
DSV time 신호와는 무관하게 ncg 추출 및 변경기(114)로부터 제공되는 신호가 "00b" 이면 복조 코드표(124)는 각각 MCG1 또는 MCG2에서 선택하고, "01b"이면 제2 주코드 그룹(MCG2) 또는 DSV 코드 그룹에서 선택하고, "10b"이면 DCG1에서 선택하고 "11b"이면 DCG2에서 선택하도록 한다. 단 ncg 추출 및 변경기(114)로부터 제공되는 신호가 "10b" 또는 "11b"일 경우에는 시프트 레지스터(108)의 다음 코드워드(SR2)의 9번째 비트(bit9)와 5번째 비트(bit5)를 검사하여 1이 있는지 또는 없는지에 따라 각각 중복코드 중 앞의 코드 또는 뒤의 코드를 선택한다. 이렇게 시프트 레지스터(106)에 저장된 복조하고자 하는 코드워드(SR1) 12비트에 따라 복조 코드표(124)로부터 8비트의 원래의 데이터가 복원된다.
도 28a 및 도 28b는 도 15a 내지 도 17e의 코드 변환표를 사용하는 본 발명에 의한 (1,8,8,12) 코드의 복조 방법의 다른 실시예에 따른 흐름도로서, 도 26a와 도 26b를 비교해 볼 때, S351 단계S357 단계, S363 단계, S367 단계, S368 단계는 동일하므로 그 상세한 설명은 생략하며, 도 26a 및 도 26b와 구별되는 S358 단계S361 단계, S364 단계S366 단계를 중심으로 설명하기로 한다.
S358 단계에서는 이전 코드워드가 코드 그룹 MCG1(ncg=1)에 속하며, 이전 코드워드의 상위 4비트가 8(1000b) 또는 9(1001b)인지를 검사한다. S359 단계에서는 복조하고자 하는 코드워드의 모든 비트를 검사하고, 복조하고자 하는 코드워드의 리드제로수(LZ)가 0, 4 또는 5이면, ncg를 3으로 갱신하고(S360 단계), 복조하고자 하는 코드워드의 LZ가 1,2 또는 3이면 ncg를 4로 갱신한다(S361 단계).
S364 단계에서는 다음 코드워드의 비트를 검사해서 다음 코드워드의 LZ가 0,4, 또는 5이면 현재 복조하고자 하는 코드는 동일한 코드워드 중 첫 번째 코드워드임을 확인하고 이에 대응하는 원래 데이터로 복조하고(S315 단계), 다음 코드워드의 LZ가 1,2 또는 3이면 현재 복조하고자 하는 코드는 동일한 코드워드 중 두 번째 코드워드임을 확인하고 이에 대응하는 원래 데이터로 복조한다(S316 단계).
부가적으로 S352 단계에서 판단하는 동기 패턴은 도 24에 도시된 바와 같은 24비트의 동기 패턴이다.
도 29는 도 28a 및 도 28b에 도시된 복조 방법을 구현하기 위한 복조 장치로서, 도 27에 도시된 복조 장치와 비교해 볼 때, 시프트 레지스터들(152158), 동기 검출 및 보호기(160), 제1 및 제2 비트 검사기(162,168), 검출기(166), 로직 회로(170)의 동작은 동일하므로 그 상세한 설명을 생략하며, ncg 추출 및 변경기(164), 제3 비트 검사기(172), 복조 코드표(174)를 중심으로 설명하기로 한다.
ncg 추출 및 변경기(164)는 제1 비트 검사기(162)로부터 제공되는 ncg CON 신호를 입력한다. 시프트 레지스터(154)로부터 제공되는 이전 코드워드(SR0)의 하위 4비트의 EZ값이 0이면(bit0가 1인 경우) ncg CON 신호는 "01b"(ncg가 2임을 의미)이고, EZ값이 1 이상 3 이하이면(bit3bit0가 1000b,0100b,0010b,1010b인 경우) ncg CON 신호는 "10b"(ncg가 3 또는 4임을 의미)이고, EZ값이 4 이상이면(bit3bit0가 0000b인 경우) ncg CON 신호는 "00b"(ncg가 1을 의미)이다.
이때, ncg CON 신호가 "10b"이면 시프트 레지스터(156)로부터 제공되는 현재 코드워드(SR1)의 상위 4비트(bit11bit8)가 10xxb(LZ=0) 또는 0000b(LZ=4 or 5)일 경우는 ncg 추출 및 변경기(164)는 ncg가 3을 의미하는 "10b"를 복조 코드표(174)에 제공하고, 현재 코드워드의 상위 4비트(bit11bit8)가 010xb(LZ=1), 0010b(LZ=2) 또는 0001b(LZ=3)일 경우는 ncg가 4를 의미하는 "11b"를 복조 코드표(174)에 제공한다.
한편, 제2 비트 검사기(168)에 의해 검사된 이전 코드워드(SR0)의 상위 4비트(bit11bit8)의 값이 "8"(=1000b) 또는 "9"(=10001b)이면 이전의 ncg CON 신호가 "00b"일 때(이는 시프트 레지스터(104)에 저장되어 있는 이전 코드워드(SR0)가 지시하는 ncg가 1인 경우), 예외(exception) 신호를 인에이블하여 현재 제1 비트 검사기(162)로부터 제공되는 ncg CON 신호가 "10b"일 때 "00b"로 변경해서 출력하고, 예외 신호가 디세이블되어 있거나 ncg CON가 "10b"가 아닐 때는 ncg CON 신호를 그대로 복조 코드표(174)에 제공한다.
복조 코드표(174)는 DSV time 신호가 디세이블되고, ncg 추출 및 변경기(164)로부터 제공되는 신호가 "10b"일 때는 제2 주코드 그룹(MCG2)과 DSV 코드 그룹을 선택하도록 하고, DSV time 신호가 인에이블되어 있고(DSV 제어용 코드가 삽입된 시기임을 의미), ncg 추출 및 변경기(164)로부터 제공되는 신호가 "10b"일 때는 제1 주코드 그룹(MCG1) 또는 제2 주코드 그룹(MCG2)을 선택하도록 한다.
DSV time 신호와는 무관하게 ncg 추출 및 변경기(164)로부터 제공되는 신호가 "00b"일 때는 제1 주코드 그룹(MCG1) 또는 제2 주코드 그룹(MCG2)을 선택하고, "10b"일 때는 제1 판단 코드 그룹(DCG1)을 선택하고, "11b"일 때는 제2 판단 코드 그룹(DCG2)을 선택한다. 단, ncg 추출 및 변경기(164)로부터 제공되는 신호가 "10b" 또는 "11b"일 때는 제3 비트 검사기(172)에 의해 검사된 다음 코드워드(SR2)의 상위 4비트(bit11bit8)의 값이 "10xxb" 또는 "0000b"일 경우는 중복 코드 중 앞의 코드를 선택하고, "0100b", "0101b", "0010b" 또는 "0001b"일 경우는 중복 코드중 뒤의 코드를 선택한다. 이렇게 최종 코드워드의 복조는 시프트 레지스터(156)로부터 제공되는 현재 코드워드(SR1)의 12 비트에 따라 복조 코드표(174)를 이용하여 8비트의 원래의 데이터로 복원된다.
상술한 바와 같이, 본 발명은 DC 억압을 위한 DSV 코드 그룹내의 코드워드를 주코드 그룹에서 이미 사용되고 있는 코드워드 일부를 그대로 이용하고, 주코드 그룹의 코드워드의 특성(예: CSV 및 INV 파라미터)을 최대로 이용하여 주코드 그룹을 생성함으로서, 코드워드의 비트수를 줄여 기록 밀도는 향상시키면서도 DC 억압 능력은 증가시키는 효과가 있다.
본 발명은 DSV 제어 시점에 사용되는 DSV 제어용 보조 변환표를 주 변환표에서 이미 사용되고 있는 코드워드를 그대로 이용함으로써 코드워드의 비트수를 줄일 수 있는 효과가 있다. 본 발명은 DSV 제어 시점에 사용되는 DSV 제어용 보조 변환표를 주 변환표와는 별도의 코드워드를 가지면서 주 변환표의 코드워드 특성 즉, 코드워드내의 DC값을 나타내는 파라미터인 CSV의 부호와 다음 코드워드의 DSV 천이 방향을 예측하는 파라미터인 INV의 특징을 최대로 이용함으로써 효과적인 DC 억압 효과를 갖는다.
또한, 본 발명은 (1,7,2,3) 코드에서는 불가능하였던 DC 억압을 가능케 하였으며, DSV 제어 비트를 이용한 추가적인 DC 억압을 가능케 하는 효과가 있다. 이 효과로 인해 서보계에 유입되는 코드의 잡음을 현저히 줄일 수가 있으며 픽업으로부터 출력되는 RF 신호의 이치화를 수행하는 데 문제가 없게 함으로써 시스템 전체의 신뢰성을 높이는 효과가 있다.

Claims (56)

  1. 광디스크 기록/재생 장치에 입력되는 데이터를 최소 런 길이(d), 최대 런 길이(k), 데이터 비트 길이(m), 코드워드 비트 길이(n)를 나타내는 (d,k,m,n)으로 표현되는 RLL(Run Length Limited) 코드로 변조하는 방법에 있어서:
    (a) DSV 제어 시기이면 입력되는 m 비트의 데이터를 DSV 제어용 코드워드를 삽입해서 변조하고, 그렇지 않으면 입력되는 m 비트의 데이터를, 중복 코드워드를 가지며 각 코드 그룹의 코드워드들은 코드워드내의 DC(Direct Current)값을 나타내는 제1 파라미터(CSV: Codeword Sum Value)의 부호와 다음 코드워드의 DSV 천이 방향을 예측하는 제2 파라미터(INV)의 특징이 서로 반대가 되도록 배치된 주코드 그룹들, 상기 중복 코드워드의 판별을 위한 판단 코드 그룹들 중 어느 한 코드 그룹의 코드워드를 선택해서 변조하는 단계를 포함하는 변조 방법.
  2. 제1항에 있어서, 상기 (a) 단계에서 DSV 제어 시기가 아닐 때, 상기 주코드 그룹들 내의 어느 한 주코드 그룹의 일부 또는 전체 코드워드들로 구성되고 DSV 제어를 위한 하나 이상의 DSV 코드 그룹을 더 이용하여 변조하는 것을 특징으로 하는 변조 방법.
  3. 제2항에 있어서, 상기 DSV 제어 시기를 결정하는 DSV 제어용 코드워드 삽입 빈도수를 소정수 q로 설정해서, 모듈로 연산한 값이 "0" 인 경우 입력 데이터를 DSV 제어용 코드워드로서 변조하고, 그렇지 않으면 상기 주코드 그룹들, 판단 코드 그룹들, DSV 코드 그룹 중 어느 한 코드 그룹의 코드워드로서 변조하는 것을 특징으로 하는 변조 방법.
  4. 제3항에 있어서, 상기 주코드 그룹들은 DC 억압 제어가 가능한 코드 그룹쌍인 제1 및 제2 주코드 그룹을 포함하고, 판단 코드 그룹들은 제1 및 제2 판단 코드 그룹을 포함하고, 상기 DSV 코드 그룹은 상기 제1 또는 제2 주코드 그룹의 일부 또는 전체 코드워드를 이용하여 대응되는 상기 제2 또는 제1 주코드 그룹의 동일한 소스워드에 해당하는 코드워드와는 제1 파라미터의 부호 및 제2 파라미터의 특징이 서로 반대가 되도록 코드워드들을 배치하여 DC 억압을 수행하는 것을 특징으로 하는 변조 방법.
  5. 제4항에 있어서, 상기 방법은
    (b) 상기 각 코드 그룹에 존재하는 코드워드들 다음에 오는 코드워드들의 코드 그룹을 지시하는 제3 파라미터(ncg)는 코드워드의 엔드 제로수(EZ)를 검사하여, EZd-1 일때는 제3 파라미터가 제2 주코드 그룹 또는 DSV 코드 그룹을 지시하도록 하고, dEZy(y:중복 파라미터)이고, 중복된 경우에는 제3 파라미터가 제1 판단 코드 그룹 또는 제2 판단 코드 그룹을 지시하도록 하고, y 〈 EZk이거나 dEZy이고 코드워드가 중복되지 않은 경우에는 제3 파라미터가 제1 주코드 그룹 또는 제2 주코드 그룹을 지시하도록 하는 단계를 더 포함하여,
    최대 런 길이 k를 위반하지 않는 경우에 코드의 선택폭을 넓힐 수 있도록 하여 코드의 DC 억압 능력을 향상시키는 것을 특징으로 하는 변조 방법.
  6. 제5항에 있어서, 각각 d는 1, k는 8, m은 8, n은 12로 하고, 제1 주코드 그룹과 제2 주코드 그룹을 구분하기 위한 구분 파라미터 x를 1로 하고 코드의 중복 파라미터 y를 3으로 한 (1,8,8,12) 코드인 것을 특징으로 하는 변조 방법.
  7. 제5항에 있어서, 상기 방법은
    (c) 소정 주기마다 동기 패턴을 삽입하는 단계를 더 포함하고,
    상기 제3 파라미터가 제1 주코드 그룹과 제2 판단 코드 그룹을 지시할 때 사용되는 동기 코드워드들과 상기 제3 파라미터가 제2 주코드 그룹과 제1 판단 코드 그룹을 지시할 때 사용되는 동기 코드워드들의 제1 파라미터의 부호와 제2 파라미터의 특징이 각각 반대가 되도록 배치하여 DSV 제어에 유리한 동기 코드워드를 선택하도록 되어 있는 것을 특징으로 하는 변조 방법.
  8. 제5항에 있어서, 상기 방법은
    (c) 소정 주기마다 동기 패턴을 삽입하는 단계를 더 포함하고,
    상기 제3 파라미터가 제1 주코드 그룹과 제1 판단 코드 그룹을 지시할 때 사용되는 동기 코드워드들과 상기 제3 파라미터가 제2 주코드 그룹과 제2 판단 코드 그룹을 지시할 때 사용되는 동기 코드워드들의 제1 파라미터의 부호와 제2 파라미터의 특징이 각각 반대가 되도록 배치하여 DSV 제어에 유리한 동기 코드워드를 선택하도록 되어 있는 것을 특징으로 하는 변조 방법.
  9. 제5항에 있어서, 상기 DSV 제어 시기일 때와 아닐 때 상기 제3 파라미터가 지시하는 코드 그룹의 내용이 바뀌는 데, 즉, 코드워드의 엔드 제로수가 최소 런 길이보다 작을 때 지정하는 다음 코드 그룹이면, DSV 제어 시기일 때는 제1 및 제2 주코드 그룹 중에서 런 길이를 위반하지 않으면서 DSV 제어에 유리한 코드워드가 선택되고, DSV 제어 시기가 아닐 때는 제2 주코드 그룹 또는 DSV 코드 그룹에서 DSV 제어에 유리한 코드워드가 선택되는 것을 특징으로 하는 변조 방법.
  10. 제1항에 있어서, 상기 (a) 단계에서는 상기 DSV 제어 시기이면 입력되는 m 비트의 데이터를 DSV 제어용 보조 변환표 또는 DSV 제어용 비트를 이용하여 코드 스트림의 DC 성분을 보다 강력하게 억압하는 것을 특징으로 하는 변조 방법.
  11. 제10항에 있어서, 상기 DSV 제어용 보조 변환표의 코드워드들은 상기 주코드 그룹들과 판단 코드 그룹들과 동일한 코드워드를 사용하고, 소정의 머지 비트가 추가된 것을 특징으로 하는 변조 방법.
  12. 제11항에 있어서, 상기 DSV 제어용 보조 변환표의 코드워드들은 상기 주코드 그룹들, 판단 코드 그룹들과 동일한 다음 코드 그룹(ncg)를 지정하는 것을 특징으로 하는 변조 방법.
  13. 제10항에 있어서, 상기 DSV 제어용 보조 변환표의 코드워드들은 상기 주 코드 그룹들과 판단 코드 그룹들의 코드워드의 최상위 비트에 DSV 제어용 비트가 추가된 것을 특징으로 하는 변조 방법.
  14. 제10항에 있어서, 상기 DSV 제어용 보조 변환표는 상기 주코드 그룹들과 판단 코드 그룹들과는 별도의 상기 n보다 큰 코드워드들로 이루어진 4개의 스테이트로 나뉘어지며, 각 스테이트는 2개의 코드 그룹으로 구성되며, 각 스테이트의 각 코드 그룹은 서로 제1 파라미터가 반대 극성인 코드워드들을 갖는 것을 특징으로 하는 변조 방법.
  15. 제10항에 있어서, 상기 DSV 제어용 보조 변환표는 상기 주코드 그룹들과 판단 코드 그룹들과는 별도의 상기 n보다 큰 코드워드들로 이루어진 4개의 스테이트로 나뉘어지며, 각 스테이트는 2개의 코드 그룹으로 구성되며, 각 스테이트의 각 코드 그룹은 서로 제2 파라미터의 특징이 반대인 코드워드들을 갖는 것을 특징으로 하는 변조 방법.
  16. 제10항에 있어서, 상기 DSV 제어용 보조 변환표는 d와 k가 각각 1과 8을 만족하고, 14 비트의 코드워드들로 이루어진 것을 특징으로 하는 변조 방법.
  17. 제4항에 있어서, 상기 제1 주코드 그룹은 코드워드내의 리드 제로수(LZ)가 주코드 그룹 구분 파라미터(x)인 1 보다 작거나 같은 코드워드들로 구성되고, 제2 주코드 그룹은 LZ값이 1보다 크거나 같은 코드워드들로 구성되고, 제1 및 제2 주코드 그룹에는 서로 동일한 코드워드는 존재하지 않고, 코드워드내의 엔드 제로수(EZ)가 최소 런 길이(d)보다 같거나 크고 코드워드 중복 파라미터(y)보다 같거나 작은 코드워드는 중복되어 있는 것을 특징으로 하는 변조 방법.
  18. 제17항에 있어서, 보다 효율적인 DC 억압 제어를 위해 특정 코드 그룹과 특정 비트를 판별하여 코드워드내의 엔드 제로수(EZ)가 최소 런 길이(d)보다 같거나 크고, 코드워드 중복 파라미터(y)보다 같거나 작은 코드워드 중에서 예외적으로 중복시키지 않는 코드워드를 갖는 것을 특징으로 하는 변조 방법.
  19. 제18항에 있어서, 상기 예외적으로 중복되지 않는 코드워드의 다음 코드 그룹(ncg)는 제1 또는 제2 판별 코드 그룹을 지정하지 않고, 제1 또는 제2 주코드 그룹을 지정하는 것을 특징으로 하는 변조 방법.
  20. 제17항에 있어서, 상기 EZ값이 1EZ3인 코드워드를 중복시키고, 단 EZ값이 1이고 코드워드의 상위비트 4개의 값이 8(1000b) 또는 9(1001b)일 때는 중복시키지 않고, 다음에 따라오는 코드워드들의 코드 그룹이 제1 판단 코드 그룹 또는 제2 판단 코드 그룹이 아니라 제1 주코드 그룹 또는 제2 주코드 그룹이 되도록 제3 파라미터(ncg)를 변경하여 DSV 제어에 유리하도록 하는 것을 특징으로 하는 변조 방법.
  21. 최소 런 길이(d), 최대 런 길이(k), 데이터 비트 길이(m), 코드워드 비트 길이(n)를 나타내는 (d,k,m,n)으로 표현되는 RLL(Run Length Limited) 코드를 생성해서 코드워드가 갖는 특징에 따라 그룹화된 코드 그룹들을 배치하는 방법에 있어서:
    코드열의 DC 억압 제어를 위해 억압 제어가 가능한 코드 그룹쌍을 배치하고;
    상기 코드 그룹쌍내에 동일한 소스코드에 해당하는 코드의 코드워드내의 DC값을 나타내는 파라미터(CSV)의 부호와 다음 코드워드의 DSV(Digital Sum Value) 천이 방향을 예측하는 파라미터(INV)의 특징이 서로 반대가 되도록 배치하는 것을 특징으로 하는 배치 방법.
  22. 제21항에 있어서, 상기 코드 그룹쌍내에 동일한 소스코드에 해당하는 코드워드의 파라미터(CSV)의 부호 및 파라미터(INV)의 특징이 반대이면서 다음에 올 코드워드의 코드 그룹은 동일하게 지정하도록 하여 코드열의 DSV 방향이 반대로 진행하도록 배치하는 것을 특징으로 배치 방법.
  23. 제21항에 있어서, 상기 코드 그룹쌍 중 기준이 되는 코드 그룹의 코드 워드를 파라미터(CSV)의 절대값 순서로 배치하는 것을 특징으로 하는 배치 방법.
  24. 제23항에 있어서, 상기 코드 그룹쌍 중 기준이 되는 코드 그룹과 DC 억압 제어를 할 수 있는 코드 그룹의 코드워드는 파라미터(CSV)의 절대값이 큰 순서대로 배치하되, 기준이 되는 코드 그룹내의 같은 소스워드에 해당하는 코드워드들이 파라미터(CSV)의 부호와 파라미터(INV)의 특징이 반대가 되도록 배치하는 것을 특징으로 하는 배치 방법.
  25. 최소 런 길이(d), 최대 런 길이(k), 데이터 비트 길이(m), 코드워드 비트 길이(n)를 나타내는 (d,k,m,n)으로 표현되는 RLL(Run Length Limited) 코드를 생성해서 코드워드가 갖는 특징에 따라 그룹화된 코드 그룹들을 배치하는 방법에 있어서:
    코드열의 DC 억압 제어를 위해 억압 제어가 가능한 코드 그룹쌍을 배치하고;
    상기 코드 그룹쌍내에 동일한 소스코드에 해당하는 코드워드의 다음 코드워드의 DSV(Digital Sum Value) 천이 방향을 예측하는 파라미터(INV)의 특징이 반대이면서 다음에 올 코드워드의 코드 그룹은 동일하게 지정하도록 하여 코드열의 DSV 방향이 반대로 진행하도록 배치하여;
    룩어헤드 방법의 코드열 선택 알고리즘을 사용할 때 유리하도록 코드워드를 배치하는 것을 특징으로 하는 배치 방법.
  26. 최소 런 길이(d), 최대 런 길이(k), 데이터 비트 길이(m), 코드워드 비트 길이(n)를 나타내는 (d,k,m,n)으로 표현되는 RLL(Run Length Limited) 코드를 생성해서 코드워드가 갖는 특징에 따라 그룹화된 코드 그룹들을 배치하는 방법에 있어서:
    중복되지 않은 코드워드의 다음에 오는 코드워드가 속해 있는 코드 그룹으로 정의되는 주코드 그룹과 중복된 코드워드 다음에 오는 코드워드가 속해 있는 코드 그룹으로 정의되는 판단 코드 그룹으로 배치하고;
    상기 주코드 그룹은 리드 제로(LZ)수가 주코드 그룹 구분 파라미터(x)보다 작거나 같은 코드워드들을 제1 주코드 그룹에 배치하고, 리드 제로수가 파라미터(x)보다 크거나 같은 코드워들은 제2 주코드 그룹에 배치하고, 제1 주코드 그룹과 제2 주코드 그룹의 코드워드들은 같은 코드워드가 없도록 배치되고;
    상기 판단 코드 그룹은 리드 제로수가 상기 최대 런 길이(k)와 코드워드 중복 파라미터(y)와의 차보다 같거나 작은 코드워드들로 구성되고, 이 코드워드들은 특정 비트들의 값에 따라 제1 판단 코드 그룹 또는 제2 판단 코드 그룹에 배치되어 있는 것을 특징으로 하는 배치 방법.
  27. 제26항에 있어서, LZ3이고 코드워드의 9번째 비트 또는 5번째 비트가 "1"인 코드워드들은 제1 판단 코드 그룹에 배치하고, LZ3이고 코드워드의 9번째 비트와 5번째 비트가 모두 "0"인 코드워드들은 제2 판단 코드 그룹에 배치하며 제1 판단 코드 그룹과 제2 판단 코드 그룹의 코드워드들은 같은 코드워드가 없음을 특징으로 하는 배치 방법.
  28. 제26항에 있어서, 코드워드의 비트 중 11번째 비트를 최상위 비트라 하고, 0번째 비트를 최하위 비트라고 했을 때 최상위비트가 "1"이거나 또는 상위 4비트가 모두 "0"이면 즉, 코드워드의 상위 4비트의 값의 리드 제로수가 0,4 또는 5인 코드워드는 제1 판단 코드 그룹에 배치하고, 그렇지 않으면 1,2 또는 3인 코드워드는 제2 판단 코드 그룹에 배치하는 것을 특징으로 하는 배치 방법.
  29. 제26항에 있어서, 코드열의 DC 억압을 위한 별도의 코드 그룹으로서 상기 주코드 그룹중 하나의 코드 그룹에서 추출된 코드워드들로 배치되는 DSV 코드 그룹을 더 포함하는 배치 방법.
  30. 제29항에 있어서, 상기 DSV 코드 그룹은, 다음 코드워드가 속해 있는 코드 그룹이 제1 주코드 그룹이더라도 제2 주코드 그룹에 속해있는 코드워드 중 (d,k) 런길이를 위반하지 않을 가능성이 있는 코드워드들만 추출해서, 상기 제1 주코드 그룹의 동일한 소스워드에 해당하는 코드워드와 파라미터 CSV의 부호 및 파라미터 INV의 특징이 반대가 되도록 코드워드들을 배치하여 제1 주코드 그룹과 함께 추가적인 DC 억압 제어를 하는 배치 방법.
  31. 제29항에 있어서, 상기 DSV 코드 그룹은, 다음 코드 워드가 속해 있는 코드 그룹이 제2 주코드 그룹이더라도 제1 주코드 그룹에 속해있는 코드워드 중 (d,k) 런길이를 위반하지 않을 가능성이 있는 코드워드들만 추출해서, 상기 제2 주코드 그룹의 동일한 소스워드에 해당하는 코드워드와 파라미터(CSV)의 부호 및 파라미터(INV)의 특징이 반대가 되도록 코드워드들을 DSV 제어용 코드 그룹에 배치하여 상기 제2 주코드 그룹과 함께 추가적인 DC 억압 제어를 하는 배치 방법.
  32. 제31항에 있어서, 상기 DSV 코드 그룹은 상기 제1 주코드 그룹에 속해 있는 코드워드 중 리드 제로수가 1인 코드워드들로만 배치하고, 엔드 제로수가 "0"인 코드워드들은 다음 코드가 속해 있을 코드 그룹을 상기 제2 주코드 그룹으로 지시하게 하여 상기 제2 주코드 그룹에 속해 있는 동일한 소스워드에 해당하는 코드워드와 파라미터(CSV)의 부호와 파라미터(INV)의 특징이 반대가 되도록 배치하여 상기 제2 주코드 그룹과 함께 코드열의 DC 억압 제어가 가능한 배치 방법.
  33. DSV(Digital Sum Value) 제어 시기이면 소정수의 입력 데이터마다 입력되는 m 비트의 데이터를 DSV 제어용 코드워드로서 변조하고, DSV 제어 시기가 아니면, 입력되는 m 비트의 데이터를, 중복 코드워드를 가지며 각 코드 그룹의 코드워드들은 코드워드내의 DC(Direct Current)값을 나타내는 제1 파라미터(CSV: Codeword Sum Value)의 부호와 다음 코드워드의 DSV 천이 방향을 예측하는 제2 파라미터(INV)의 특징이 서로 반대가 되도록 배치된 주코드 그룹들, 상기 중복 코드워드의 판별을 위한 판단 코드 그룹들 중 어느 한 코드 그룹의 코드워드로서 변조된 RLL(Run Length Limited) 코드를 사용하는 광디스크 기록/재생 장치에서 입력되는 코드워드 스트림을 원래의 데이터로 복조하는 복조 방법에 있어서:
    (a) 코드워드 스트림을 입력해서, 이전 코드워드의 특징에 따라 복조하고자 하는 코드워드가 속해 있는 그룹을 나타내는 제3 파라미터(ncg)를 갱신하는 단계; 및
    (b) 갱신된 제3 파라미터(ncg)가 지시하는 코드 그룹에서 두 개의 동일한 현재 코드워드가 존재하지 않으면 갱신된 제3 파라미터(ncg)에서 지시하는 상기 코드 그룹 중 하나에서 상기 복조하고자 하는 코드워드에 대응하는 m 비트의 원래의 데이터로 복조하는 단계를 포함하는 복조 방법.
  34. 제33항에 있어서, 상기 방법은
    (c) 상기 갱신된 제3 파라미터(ncg)에서 지시하는 코드 그룹에서 두 개의 동일한 현재 코드워드가 존재하면 다음 코드워드의 특정 비트들을 검사해서 어느 하나라도 "1"이면 동일 코드워드 중 첫 번째 코드워드를 선택해서 데이터로 복조하고, 특정 비트들이 모두 "0"이면 동일 코드워드 중 두 번째 코드워드를 선택해서 데이터로 복조하는 단계를 더 포함하는 복조 방법.
  35. 제33항에 있어서, 상기 방법은
    (c) 상기 갱신된 제3 파라미터(ncg)에서 지시하는 코드 그룹에서 두 개의 동일한 현재 코드워드가 존재하면 다음 코드워드의 다음 코드워드의 리드 제로수가 0, 4 또는 5이면 동일 코드워드 중 첫 번째 코드워드를 선택해서 데이터로 복조하고, 1,2 또는 3이면 동일 코드워드 중 두 번째 코드워드를 선택해서 데이터로 복조하는 단계를 더 포함하는 복조 방법.
  36. 제33항에 있어서, 상기 방법은
    (c) 입력되는 코드워드 스트림이 동기 패턴인지를 판단해서 동기를 복원하고, 상기 제3 파라미터(ncg)를 상기 어느 한 코드 그룹으로 초기화하는 단계를 더 포함하는 복조 방법.
  37. 제33항에 있어서, 상기 방법은,
    (c) 입력되는 코드워드 스트림이 DSV 제어 시기에 변조된 코드워드이면 DSV 제어 비트를 제거한 후 상기 (a) 단계로 진행하는 단계를 더 포함하는 복조 방법.
  38. 제33항에 있어서, 상기 방법은,
    (c) 입력되는 코드워드 스트림이 DSV 제어 시기에 변조된 코드워드이면 별도의 DSV 제어용 보조 변환표를 이용하여 복조하는 단계를 더 포함하는 복조 방법.
  39. 제33항에 있어서, 상기 DSV 제어 시기가 아닐 때 상기 변조된 RLL 데이터는 주코드 그룹내의 일부 코드워드들로 구성된 하나 이상의 DSV 코드 그룹을 더 이용하여 변조되어 있는 것을 특징으로 하는 복조 방법.
  40. 제39항에 있어서, 상기 (a) 단계는,
    (a1) 이전 코드워드의 엔드 제로수(EZ)를 판단하는 단계;
    (a2) 상기 이전 코드의 EZ값이 "0"이면 제3 파라미터(ncg)를 제2 주코드 그룹으로 갱신하는 단계;
    (a3) 상기 이전 코드의 EZ값이 "1"이면 DSV 제어 시기가 아닌 경우 제3 파라미터(ncg)를 DC 제어에 보다 유리한 제2 주코드 그룹 또는 DSV 코드 그룹 중 하나로 갱신하고, DSV 제어 시기이면 제1 주코드 그룹 또는 제2 주코드 그룹 중 하나로 갱신하는 단계;
    (a4) 상기 이전 코드의 EZ값이 최소 런 길이(d)와 같거나 크고, 코드워드의 중복 파라미터(y)보다 작거나 같으면 이전 코드워드의 ncg에서 지시하는 코드 그룹에서 두개의 동일한 이전 코드워드가 존재하는 지를 판단하는 단계;
    (a5) 상기 (a4) 단계에서 두개의 동일한 이전 코드가 존재하면 현재 코드워드의 특정 비트들을 검사해서 특정 비트들이 "1" 또는 "0"인지에 따라 제3 파라미터(ncg)를 제1 판단 코드 그룹 또는 제2 판단 코드 그룹으로 갱신하는 단계; 및
    (a6) 상기 이전 코드의 EZ값이 코드워드의 중복 파라미터(y)보다 크고 최대 런 길이(k)보다 작거나 같거나 상기 (a4) 단계에서 두개의 동일한 이전 코드가 존재하지 않으면 제3 파라미터(ncg)를 DC 제어에 보다 유리한 제1 주코드 그룹 또는 제2 주코드 그룹으로 갱신하는 단계를 포함하는 복조 방법.
  41. 제40항에 있어서, 각각 d는 1, k는 8, m은 8, n은 12로 하고, 제1 주코드 그룹과 제2 주코드 그룹을 구분하는 파라미터(x)는 1이고, 코드워드 중복 파라미터(y)는 3이고, 상기 특정 비트들은 9번째 비트와 5번째 비트이면, 상기 (a5) 단계에서는 현재 코드워드의 9번째 비트와 5번째 비트 중 어느 하나라도 "1"이면 제3 파라미터(ncg)를 제1 판단 코드 그룹으로 갱신하고, 모두 "0"이면 제3 파라미터(ncg)를 제2 판단 코드 그룹으로 갱신하는 것을 특징으로 하는 복조 방법.
  42. 제40항에 있어서, 각각 d는 1, k는 8, m은 8, n은 12로 하고, 제1 주코드 그룹과 제2 주코드 그룹을 구분하는 파라미터(x)는 1이고, 코드워드 중복 파라미터(y)는 3이고, 상기 특정 비트들이 현재 코드워드의 상위 4비트이면, 상기 (a5) 단계에서는 현재 코드워드의 최상위 비트가 "1"이거나 상위 4비트가 모두 "0"이면 제3 파라미터(ncg)를 제1 판단 코드 그룹으로 갱신하고, 그렇지 않으면 제3 파라미터(ncg)를 제2 판단 코드 그룹으로 갱신하는 것을 특징으로 하는 복조 방법.
  43. 최소 런 길이(d), 최대 런 길이(k), 데이터 비트 길이(m), 코드워드 비트 길이(n)를 나타내는 (d,k,m,n)으로 표현되는 RLL(Run Length Limited) 코드를 사용하는 광디스크 기록/재생 장치에서 n 비트의 코드워드를 원래의 m 비트의 데이터로 복조하는 복조 장치에 있어서:
    입력되는 코드워드 스트림에서 이전 코드워드, 현재 코드워드, 다음 코드워드를 저장하는 시프트 레지스터;
    상기 이전 코드워드의 엔드 제로수(EZ)를 검사하여 상기 EZ값에 따라 이전 코드워드가 지시하고 있는 다음 코드 그룹을 나타내는 제3 파라미터(ncg)의 값을 검출하는 검출기;
    상기 이전 코드워드의 소정의 비트를 검사하여 중복 코드워드를 판별하기 위한 판별 신호를 제공하는 판별기; 및
    중복 코드워드를 가지며 각 코드 그룹의 코드워드들은 코드워드내의 DC(Direct Current)값을 나타내는 제1 파라미터(CSV: Codeword Sum Value)의 부호와 다음 코드워드의 DSV 천이 방향을 예측하는 제2 파라미터(INV)의 특징이 서로 반대가 되도록 배치된 주코드 그룹들, 상기 중복 코드워드의 판별을 위한 판단 코드 그룹들을 가지며, 상기 제3 파라미터(ncg), 상기 중복 코드워드용 판별 신호, DSV 제어 시기를 나타내는 DSV 제어 신호에 대응하여 이전 코드워드의 상기 제3 파라미터(ncg)가 지정하는 상기 코드 그룹들 중 하나에서 현재 코드워드에 대응한 m 비트의 데이터를 제공하는 복조 코드표를 포함하는 복조 장치.
  44. 제43항에 있어서, 상기 시프트 레지스터의 출력으로부터 동기 패턴을 검출해서 검출된 동기 패턴이 제대로 검출되었으면 그대로 사용하고 그렇지 않으면 의사 동기를 사용하는 동기 검출 및 보호기를 더 포함하는 복조 장치.
  45. 제44항에 있어서, 상기 동기 이후 카운트를 시작하여 DSV 제어용 코드워드 삽입 빈도수에 대응하는 DSV 제어 시기이면 DSV 코드가 삽입된 코드워드로부터 최상위 비트를 제거하는 것을 특징으로 하는 복조 장치.
  46. 제44항에 있어서, 상기 동기 이후 카운트를 시작하여 DSV 제어용 코드워드 삽입 빈도수에 대응하는 DSV 주기 신호에 따라 DSV 코드가 삽입된 코드워드를 별도의 DSV 제어용 복조 코드표를 이용하여 복조하는 것을 특징으로 하는 복조 장치.
  47. 제43항에 있어서, 상기 검출기는,
    상기 이전 코드워드의 엔드 제로수를 검사하여 상기 EZ값에 따라 이전 코드워드가 지시하고 있는 다음 코드 그룹을 나타내는 ncg 제어 신호를 제공하는 제1 비트 검사기;
    중복 코드 예외 조건을 갖는 코드워드를 검출하기 위해서 상기 이전 코드워드의 소정수의 상위 비트를 검사하여 소정값이면 예외 제어 신호를 제공하는 제2 비트 검사기; 및
    상기 제2 비트 검사기로부터 제공되는 예외 제어 신호와 상기 제1 비트 검사기로부터 제공되는 ncg 제어 신호가 제3 상태값이면 상기 ncg 제어 신호를 제1 상태값으로 변경하고, 상기 제2 비트 검사기로부터 예외 제어 신호가 제공되지 않거나 ncg 제어 신호가 제3 상태값이 아니면 상기 제1 비트 검사기로부터 제공되는 제1 및 제2 상태값의 ncg 제어 신호를 그대로 제공하는 ncg 변경 및 추출 회로를 포함하는 복조 장치.
  48. 제47항에 있어서, 상기 ncg 변경 및 추출 회로는 상기 이전 코드워드의 하위 4비트를 검사하여 EZ값이 0일 경우 제3 파라미터(ncg)를 제2 상태값으로 출력하고, EZ값이 1이상 3이하일 경우는 제3 파라미터(ncg)를 제3 상태값으로 출력하고, EZ값이 4이상일 경우 제3 파라미터(ncg)를 제1 상태값으로 출력하는 것을 특징으로 하는 복조 장치.
  49. 제47항에 있어서, 상기 복조 코드표는 상기 ncg 변경 및 추출 회로로부터 제공되는 제3 파라미터(ncg)가 제3 상태값이면 상기 현재 코드워드에 대응하는 원래 데이터를 판단 코드 그룹들 중에서 하나의 코드 그룹을 이용하여 복조하는 것을 특징으로 하는 복조 장치.
  50. 제47항에 있어서, 상기 복조 코드표는 상기 ncg 변경 및 추출 회로로부터 제공되는 제3 파라미터(ncg)가 제1 상태값이면 상기 현재 코드워드에 대응하는 원래 데이터를 상기 주코드 그룹들 중에서 하나의 코드 그룹을 이용하여 복조하는 것을 특징으로 하는 복조 장치
  51. 제47항에 있어서, 상기 복조 크드표는 주코드 그룹들 중 하나의 코드 그룹내의 일부 또는 전체 코드워드들로 구성된 하나 이상의 DSV 코드 그룹을 더 가지고 있는 것을 특징으로 하는 복조 장치.
  52. 제51항에 있어서, 상기 복조 코드표는 상기 ncg 변경 및 추출 회로로부터 제공되는 제3 파라미터(ncg))가 제2 상태값이고, 상기 DSV 제어 신호에 따라 DSV 제어 시기이면 상기 주코드 그룹들 중 하나의 코드 그룹에서 복조 데이터를 얻고, DSV 제어 시기가 아니면 상기 DSV 코드 그룹 또는 DSV 코드 그룹의 코드워드와는 제1 파라미터의 부호와 제2 파라미터의 특징이 반대인 주코드 그룹에서 복조 데이터를 얻는 것을 특징으로 하는 복조 장치.
  53. 제47항에 있어서, 상기 제2 비트 검사기에서는 이전 코드워드의 상위 4비트가 8(1000b) 또는 9(1001b)가 되는 지를 검사하고, 상기 판별기에서는 다음 코드워드의 9번째 비트와 5번째 비트의 값이 0 또는 1인지를 검사하고, 상기 복조 코드표는 상기 제3 파라미터(ncg)가 제3 상태값이고, 상기 9번째 비트와 5번째 비트가 어느 한 비트라도 "1" 인지에 따라 중복 코드 중 앞 또는 뒤의 코드워드를 선택하는 것을 특징으로 하는 복조 장치.
  54. 제47항에 있어서, 상기 제2 비트 검사기에서는 이전 코드워드의 상위 4비트가 8(1000b) 또는 9(1001b)가 되는 지를 검사하고, 상기 판별기에서는 다음 코드워드의 상위 4비트를 검사하고, 상기 복조 코드표는 상기 파라미터(ncg)가 제3 상태값이고, 상위 4비트의 리드 제로수에 따라 중복 코드중 앞 또는 뒤의 코드워드를 선택하게 되는 것을 특징으로 하는 복조 장치.
  55. 제47항에 있어서, 상기 ncg 변경 및 추출 회로는 이전 코드워드의 EZ값이 1이면서 이전 코드워드의 상위 4비트의 값이 8(1000b) 또는 9(1001b)일 때 중복시키지 않은 코드워드의 제3 파라미터(ncg)를 주코드 그룹들 중 하나의 코드 그룹이 되도록 하기 위해서 상기 제1 비트 검사기로부터 제공되는 ncg 제어 신호의 제3 상태값을 제1 상태값으로 변경하는 것을 특징으로 하는 복조 장치.
  56. 제43항에 있어서, 각각 d는 1, k는 8, m은 8, n은 12로 하는 (1,8,8,12) 코드인 것을 특징으로 하는 복조 장치.
KR1019990042032A 1999-04-21 1999-09-30 개선된 dc 억압 능력을 갖는 rll 코드 배치 방법, 변복조 방법 및 복조 장치 KR100565046B1 (ko)

Priority Applications (7)

Application Number Priority Date Filing Date Title
KR1019990042032A KR100565046B1 (ko) 1999-04-21 1999-09-30 개선된 dc 억압 능력을 갖는 rll 코드 배치 방법, 변복조 방법 및 복조 장치
EP00303324A EP1047197A3 (en) 1999-04-21 2000-04-19 RLL modulation with enhanced DC suppression
CNA2005100826474A CN1734636A (zh) 1999-04-21 2000-04-21 游程长度受限代码分配方法、调制和解调方法、及其装置
JP2000121699A JP3545311B2 (ja) 1999-04-21 2000-04-21 改善されたdc抑圧能力を有するrllコード配置方法、変復調方法及び復調装置
US09/556,827 US6281815B1 (en) 1999-04-21 2000-04-21 Method of allocating RLL code having enhanced DC suppression capability, modulation method, demodulation method, and demodulation apparatus therefor
CNB001186469A CN100391106C (zh) 1999-04-21 2000-04-21 游程长度受限代码分配方法
JP2004013588A JP4034742B2 (ja) 1999-04-21 2004-01-21 改善されたdc抑圧能力を有するrllコード配置方法、変復調方法及び復調装置

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
KR19990014284 1999-04-21
KR1019990014284 1999-04-21
KR19990022574 1999-06-16
KR1019990022574 1999-06-16
KR1019990042032A KR100565046B1 (ko) 1999-04-21 1999-09-30 개선된 dc 억압 능력을 갖는 rll 코드 배치 방법, 변복조 방법 및 복조 장치

Publications (2)

Publication Number Publication Date
KR20000067781A true KR20000067781A (ko) 2000-11-25
KR100565046B1 KR100565046B1 (ko) 2006-03-30

Family

ID=27349942

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990042032A KR100565046B1 (ko) 1999-04-21 1999-09-30 개선된 dc 억압 능력을 갖는 rll 코드 배치 방법, 변복조 방법 및 복조 장치

Country Status (5)

Country Link
US (1) US6281815B1 (ko)
EP (1) EP1047197A3 (ko)
JP (2) JP3545311B2 (ko)
KR (1) KR100565046B1 (ko)
CN (2) CN1734636A (ko)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100370493B1 (ko) * 2001-02-06 2003-02-05 엘지전자 주식회사 광기록매체의 데이터 변/복조 방법 및 장치
KR100407495B1 (ko) * 2000-06-22 2003-12-01 엘지전자 주식회사 일련의 데이터 워드를 변조신호로 변환하는 방법 및 장치
KR100421004B1 (ko) * 2001-04-20 2004-03-03 삼성전자주식회사 코드 생성 및 배치 방법
KR100565079B1 (ko) * 2004-09-08 2006-03-30 삼성전자주식회사 코드 생성 방법, 변조 장치 및 변조 방법
KR100648360B1 (ko) * 2000-02-07 2006-11-23 엘지전자 주식회사 광기록매체의 데이터 변/복조 장치
KR100672399B1 (ko) * 2000-05-04 2007-01-23 엘지전자 주식회사 광기록매체의 데이터 변/복조 방법 및 장치
KR100677105B1 (ko) * 2002-10-17 2007-02-01 삼성전자주식회사 데이터 변조 방법과 장치, 데이터 복조 방법 및 장치
CN1300781C (zh) * 2001-12-18 2007-02-14 三星电子株式会社 在可写光盘上记录数据的方法
US7359301B2 (en) 2002-06-03 2008-04-15 Samsung Electronics Co., Ltd. Method of and apparatus for recording data on an optical recording medium
KR100871848B1 (ko) * 2002-05-30 2008-12-03 삼성전자주식회사 광기록매체상의 데이터 변조 방법 및 장치

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100644599B1 (ko) * 2000-09-06 2006-11-13 삼성전자주식회사 개선된 dc 억압 능력을 갖는 rll 코드 변복조 방법
US7034719B2 (en) 2002-09-27 2006-04-25 Samsung Electronics Co., Ltd. Data modulating method and apparatus, data demodulating method and apparatus, and code arranging method
PL351717A1 (en) * 2000-05-10 2003-06-02 Koninkl Philips Electronics Nv 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, method for decoding, device for decoding
TWI225341B (en) * 2000-10-04 2004-12-11 Ind Tech Res Inst Distance-enhancing encoding method
KR100716956B1 (ko) * 2000-10-11 2007-05-10 삼성전자주식회사 데이터 변조 방법 및 그 검출 방법
JP2002304859A (ja) * 2001-02-02 2002-10-18 Victor Co Of Japan Ltd 同期信号生成方法、記録装置、伝送装置、記録媒体及び伝送媒体
JP2002319242A (ja) * 2001-02-13 2002-10-31 Victor Co Of Japan Ltd 記録方法、記録装置、伝送装置、再生方法、再生装置、受信装置、記録媒体及び伝送媒体
KR100669623B1 (ko) * 2001-03-12 2007-01-15 엘지전자 주식회사 디지털 데이터 변환방법
US7084788B2 (en) 2001-04-20 2006-08-01 Samsung Electronics Co., Ltd. Code generation and allocation method
KR100424483B1 (ko) * 2001-05-14 2004-03-24 엘지전자 주식회사 일련의 데이터 워드를 변조신호로 변환하는 방법 및 장치
US6903780B2 (en) * 2001-06-08 2005-06-07 Texas Instruments Incorporated Method of expanding high-speed serial video data providing compatibility with a class of DVI receivers
JP2003085898A (ja) * 2001-09-12 2003-03-20 Toshiba Corp 情報記憶媒体、情報記録装置、情報記録方法、情報再生装置、及び情報再生装置
US7525890B2 (en) * 2001-09-29 2009-04-28 Samsung Electronics Co., Ltd. Method of and apparatus for recording data on optical recording medium
KR100833227B1 (ko) * 2001-12-17 2008-05-28 삼성전자주식회사 광 기록매체에 데이터를 기록하는 방법 및 장치
US7376064B2 (en) * 2002-02-25 2008-05-20 Samsung Electronics Co., Ltd. Method and apparatus for recording data on optical recording medium
JP4141175B2 (ja) * 2002-05-14 2008-08-27 ソニー株式会社 データ記録媒体、データ記録方法および装置
KR20030093489A (ko) * 2002-06-03 2003-12-11 삼성전자주식회사 신호 복조 장치 및 방법
GB0218714D0 (en) * 2002-08-12 2002-09-18 Mitel Knowledge Corp Generation o availability indicators from call control policies for presence enabled telephony
JP2004080508A (ja) * 2002-08-20 2004-03-11 Nec Electronics Corp 誤り訂正符号の復号方法、そのプログラム及びその装置
JP4022111B2 (ja) * 2002-08-23 2007-12-12 株式会社エヌ・ティ・ティ・ドコモ 信号符号化装置及び信号符号化方法
US7212483B2 (en) * 2002-09-25 2007-05-01 Victor Company Of Japan, Limited Modulation device, modulation method and recording medium
JP3967691B2 (ja) * 2003-03-31 2007-08-29 株式会社東芝 情報記憶媒体と情報再生装置と情報記録再生装置
JP3960263B2 (ja) * 2003-05-21 2007-08-15 ソニー株式会社 データ記録方法
TWI244272B (en) * 2003-12-04 2005-11-21 Via Tech Inc Digital signal modulation method
FR2873518B1 (fr) * 2004-07-22 2008-12-19 Canon Kk Procede de codage et de decodage d'une sequence de mots, signal, codeur, decodeur, programmes d'ordinateur et moyens de stockage correspondants
CA2580269C (en) * 2005-01-06 2009-02-03 Infra-Com Ltd. Error detection and correction for base-band wireless systems
JP4705461B2 (ja) 2005-03-31 2011-06-22 富士通株式会社 符号器および復号器
US20060220926A1 (en) * 2005-03-31 2006-10-05 Fujitsu Limited Encoder and decoder
EP1708191B1 (en) * 2005-03-31 2008-08-20 Fujitsu Ltd. Guided Scrambling GS replacement codes using sliding window for reducing DC component for a magnetic- or optical- disk encoder.
KR20090085257A (ko) * 2008-02-04 2009-08-07 삼성전자주식회사 Dsv 제어 방법, 이에 적합한 기록매체 및 장치
CN101800053B (zh) * 2010-03-31 2011-08-24 中国电子科技集团公司第三十研究所 一种磁盘擦除方法
US11967973B2 (en) * 2021-05-06 2024-04-23 Samsung Display Co., Ltd. Low overhead transition encoding codes

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW219416B (ko) * 1992-03-10 1994-01-21 Sony Co Ltd
US5870037A (en) * 1994-07-08 1999-02-09 Sony Corporation Method and apparatus, demodulating method and signal demodulating apparatus
JP3541439B2 (ja) * 1994-07-08 2004-07-14 ソニー株式会社 信号変調方法及び装置、並びに信号復調装置及び方法
WO1997009718A1 (en) * 1995-09-01 1997-03-13 Philips Electronics N.V. Method of converting a series of m-bit information words to a modulated signal, method of producing a record carrier, coding device, device, recording device, signal, as well as a record carrier
US6002718A (en) * 1995-10-27 1999-12-14 Hewlett-Packard Company Method and apparatus for generating runlength-limited coding with DC control
JP3339539B2 (ja) * 1995-12-13 2002-10-28 松下電器産業株式会社 デジタル変調装置、その方法及び記録媒体
US5969651A (en) * 1996-03-08 1999-10-19 Sony Corporation Signal modulating method, signal modulating apparatus, signal demodulating method and signal demodulating apparatus
JP3760961B2 (ja) 1997-09-11 2006-03-29 ソニー株式会社 変調装置および変調方法、復調装置および復調方法、並びに記録媒体
KR100294893B1 (ko) * 1999-03-09 2001-07-12 윤종용 개선된 dc 억압 능력을 갖는 rll 코드 생성 방법 과 생성된 rll 코드 변복조 방법

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100648360B1 (ko) * 2000-02-07 2006-11-23 엘지전자 주식회사 광기록매체의 데이터 변/복조 장치
KR100672399B1 (ko) * 2000-05-04 2007-01-23 엘지전자 주식회사 광기록매체의 데이터 변/복조 방법 및 장치
KR100407495B1 (ko) * 2000-06-22 2003-12-01 엘지전자 주식회사 일련의 데이터 워드를 변조신호로 변환하는 방법 및 장치
KR100370493B1 (ko) * 2001-02-06 2003-02-05 엘지전자 주식회사 광기록매체의 데이터 변/복조 방법 및 장치
KR100421004B1 (ko) * 2001-04-20 2004-03-03 삼성전자주식회사 코드 생성 및 배치 방법
CN1300781C (zh) * 2001-12-18 2007-02-14 三星电子株式会社 在可写光盘上记录数据的方法
US7327659B2 (en) 2001-12-18 2008-02-05 Samsung Electronics Co., Ltd. Method and apparatus for recording data on writable compact disc
KR100871848B1 (ko) * 2002-05-30 2008-12-03 삼성전자주식회사 광기록매체상의 데이터 변조 방법 및 장치
US7359301B2 (en) 2002-06-03 2008-04-15 Samsung Electronics Co., Ltd. Method of and apparatus for recording data on an optical recording medium
KR100677105B1 (ko) * 2002-10-17 2007-02-01 삼성전자주식회사 데이터 변조 방법과 장치, 데이터 복조 방법 및 장치
KR100565079B1 (ko) * 2004-09-08 2006-03-30 삼성전자주식회사 코드 생성 방법, 변조 장치 및 변조 방법

Also Published As

Publication number Publication date
CN100391106C (zh) 2008-05-28
KR100565046B1 (ko) 2006-03-30
JP2000339871A (ja) 2000-12-08
JP4034742B2 (ja) 2008-01-16
EP1047197A3 (en) 2005-05-25
JP2004164847A (ja) 2004-06-10
CN1734636A (zh) 2006-02-15
CN1274998A (zh) 2000-11-29
EP1047197A2 (en) 2000-10-25
JP3545311B2 (ja) 2004-07-21
US6281815B1 (en) 2001-08-28

Similar Documents

Publication Publication Date Title
KR100565046B1 (ko) 개선된 dc 억압 능력을 갖는 rll 코드 배치 방법, 변복조 방법 및 복조 장치
KR100294893B1 (ko) 개선된 dc 억압 능력을 갖는 rll 코드 생성 방법 과 생성된 rll 코드 변복조 방법
KR100644599B1 (ko) 개선된 dc 억압 능력을 갖는 rll 코드 변복조 방법
JP2939185B2 (ja) デジタルデータチャンネル符号化及び復号化装置並びにその方法
KR100817226B1 (ko) 알.엘.엘. 코드 시퀀스에 보조 정보신호를 추가하거나 이시퀀스로부터 보조 정보신호를 추출하는 방법 및 장치
EP1335373A1 (en) Code conversion method and apparatus, code recording medium, code recording apparatus and code reproducing apparatus
JPH05266600A (ja) 2値符号記録媒体
KR100424482B1 (ko) 일련의 데이터 워드를 변조신호로 변환하는 방법 및 장치
JPH07235876A (ja) 情報変換方法及び記録再生装置
JP3947510B2 (ja) データ変調方法、データ復調方法及びコード配置方法
KR100274213B1 (ko) Rll(2,25)코드를 이용한 7/13 채널코딩 및 채널디코딩방법
US6943708B2 (en) Method of converting a series of data words into a modulated signal
JP2004120763A5 (ko)
JP2003288760A (ja) 変調方法、変調装置、記録媒体、復調方法および復調装置
JP3757918B2 (ja) 符号化変調方法および変調装置、復調方法および復調装置
JPH08235785A (ja) 記録信号変調装置、記録信号復調装置、記録信号変調方法および記録信号復調方法
KR100908763B1 (ko) 데이터 스트림을 코딩하는 방법
JP4061844B2 (ja) 変調方法、変調装置、復調方法、復調装置、情報記録媒体、情報伝送方法および情報伝送装置
KR100206795B1 (ko) 디브이디 및 씨디의 복조 및 오류검출 방법 및 장치
JP2005502980A (ja) 符号化方法およびその装置
JP2002279732A (ja) 変調方法、変調装置、復調方法、復調装置、記録媒体、伝送装置および伝送方法

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130227

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140227

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150226

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160226

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee