KR19990072589A - 로버스트재동기를가진실행길이가제한된인코딩/디코딩방법및장치 - Google Patents

로버스트재동기를가진실행길이가제한된인코딩/디코딩방법및장치 Download PDF

Info

Publication number
KR19990072589A
KR19990072589A KR1019990004835A KR19990004835A KR19990072589A KR 19990072589 A KR19990072589 A KR 19990072589A KR 1019990004835 A KR1019990004835 A KR 1019990004835A KR 19990004835 A KR19990004835 A KR 19990004835A KR 19990072589 A KR19990072589 A KR 19990072589A
Authority
KR
South Korea
Prior art keywords
pattern
resynchronization
rll
consecutive
bit
Prior art date
Application number
KR1019990004835A
Other languages
English (en)
Other versions
KR100393386B1 (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 포만 제프리 엘
Publication of KR19990072589A publication Critical patent/KR19990072589A/ko
Application granted granted Critical
Publication of KR100393386B1 publication Critical patent/KR100393386B1/ko

Links

Classifications

    • 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
    • H03M5/145Conversion to or from block codes or representations thereof
    • 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/14Conversion to or from non-weighted codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 실행 길이가 제한된(run length limited: RLL) (d, k) 인코드된 채널 비트 스트림으로 삽입하기 위한 로버스트 재동기 패턴(robust Resync pattern)을 개시하는데, 로버스트 재동기 패턴은 데이터와 혼동을 일으킴이 없이 RLL (d, k) 인코드된 비트 스트림으로부터 복구될 수 있다. 재동기 패턴은 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링을 포함하며, 채널 비트 스트림 RLL 데이터 코드워드 내로 삽입된다. RLL 코드는 "0" 비트로 이루어지는 스트링에 인접한 하나 또는 2개의 "1" 비트로 이루어지는 재동기 패턴으로부터 하나의 비트 시프트를 나타내는 소정 패턴을 배제시키는데, 여기서 상기 "1" 비트는 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트된다. 또한, 재동기 패턴은 2가지 상이한 특성을 가지는데, 그 중 하나는 RLL 코드의 제한에 위배되는 "0" 비트로 이루어진 스트링이며, 또 다른 특성은 재동기 패턴이 미리 정해진 길이 또는 그보다 더 긴 길이의 VFO 비트 패턴으로 이루어지는 배제된 연속 시퀀스(concatenated sequence)와 같이 RLL 코드에서 추가로 확실하게 배제되는 점이다. 재동기 검출기는 "0" 비트로 이루어지는 스트링을 포함하며, 인코드된 비트 스트림으로부터 수신된 패턴을 재동기 패턴에 유리하도록 분해하여, 상기 "0" 비트로 이루어지는 스트링에 인접하며 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트되는 하나 또는 2개의 "1" 비트로 이루어지는 재동기 패턴의 비트 시프트를 조정한다. RLL 코드는 4:6 비율로 인코드되는 비트 신호를 갖는 실행 길이가 제한된 (1, 7) 코드를 포함할 수 있다.

Description

로버스트 재동기를 가진 실행 길이가 제한된 인코딩/디코딩 방법 및 장치{RUN LENGTH LIMITED ENCODING/DECODING WITH ROBUST RESYNC}
본 발명은 실행 길이가 제한된 코드의 인코딩 및 디코딩에 관한 것으로, 좀 더 구체적으로는 코드워드(codeword)의 위상을 동기시키기 위해 데이터 집합의 코드워드 영역 내의 재동기 문자를 사용하는 인코딩 및 디코딩에 관한 것이다.
실행 길이가 제한된(run length limited: RLL) 2진 코드는 제한이 없는 2진 데이터 집합을 "0"과 "1" 사이의 최소 거리 (d) (또는 기록 전이) 및 "0"과 "1" 사이의 최대 거리 (k)를 갖는 제한된 코드워드 집합으로 인코딩하기 위한 데이터 전송 및 데이터 기록 기술 분야에서 널리 사용되고 있다. 여러 가지 형태의 실행 길이가 제한된 (d, k) 코드가 데이터 전송용, 및 자기 데이터 및 광 데이터 기록용으로 사용되고 있다. 하나의 예로 Franaszek에게 1972년 9월 5일 특허가 부여되었으며, 본 출원인에게 공동 양도된 미국 특허 제 3,689,899호에는 가변 길이 코드 집합이 기술되어 있다. 또 다른 예로는 Adler 등에게 1972년 9월 5일 특허가 부여되었으며, 본 출원인에게 공동 양도된 미국 특허 제 4,413,251호에는 노이즈가 없는 슬라이딩 블록 RLL (1,7) 코드를 2:3 비율로 생성하는 인코더가 기술되어 있다. 상기 특허에서 2:3 비율이란 2개 입력(소스) 2진 비트 각각에 대해 3개의 출력(채널) 2진 비트의 코드워드가 생성되며, 여기서 코드워드의 각각의 2진 비트 "1"은 전이를 갖는 비트 클록 시간을 나타내고, 각각의 2진 비트 "0"은 전이를 갖지 않는 비트 클록 시간을 나타낸다.
데이터 집합은 특정 위치(통상적으로 헤더)에서 기지(known)의 소정 전이 주파수의 VFO 패턴을 포함하여, 판독 클록을 코드워드 비트 주파수에 동기시킨다(통상적으로 위상 동기 루프 또는 PLL). VFO 패턴은 통상 반복성을 갖는 코드워드 패턴이지만, 헤더의 위치 때문에 식별이 가능하다.
또한 통상적으로 VFO 패턴과 임의의 인코드된 데이터 사이에 기지(known)의 동기 패턴이 제공되어 RLL 디코더가 코드워드 경계에 대한 정렬 및 인코드된 입력 데이터의 시작 위치에 대한 정렬이 가능하도록 해준다.
PLL이 완전한 위상 동기를 이루지 못하는 경우 또는 RLL 디코더가 입력 데이터 상의 코드워드 경계에 대한 정렬이 이루어지지 못하는 경우(이중 어느 경우라도 매체 결함이 존재할 때 발생할 수 있음), RLL 디코더는 인코드된 입력 데이터를 성공적으로 디코드할 수 없다. 그러나, 위상 동기가 충분히 가까워지기 시작한 경우 PLL은 인코드 데이터에서 완전한 위상 동기를 이룰 수도 있으며, RLL 디코더는 제 2 RLL 동기 패턴이 발생하는 경우에 정렬될 수 있다.
제 2 또는 후속 RLL 동기 패턴은 흔히 재동기 패턴, 또는 단순히 재동기라고도 한다. 재동기는 예를 들어 사토무라(Satomura)에게 1995년 9월 15일에 특허 부여된 미국 특허 제 5,451,943호에 예시되는 바와 같은 데이터 내에 통상 삽입된다. 재동기 패턴은 PLL이 데이터의 큰 손실 없이 코드워드에 적절한 위상 동기를 재획득하도록 해준다. 사토무라의 특허에 개시되어 있는 바와 같이, 재동기 패턴은 데이터와 혼동을 일으키지 않아야 하는데, 그 이유는 재동기와 동일한 패턴을 갖는 데이터 코드워드가 나타나면 데이터로서 디코드되는 것이 아니라 재동기 패턴으로 검출될 가능성이 커서, 결과적으로 데이터 손실을 가져온다. 따라서, 사토무라는 코드 내의 특정 위치(예를 들어 입력 데이터의 매 20 바이트마다)에 삽입되는 가변 길이 RLL (1,7) 코드용 재동기 패턴을 제안한 바 있으며, 이러한 재동기 패턴은 인코드된 데이터의 디지털 합산 값을 감소시켜 검출이 가능하다. 이러한 패턴 중의 하나로 "X01000000001" 패턴이 있으며, 이 패턴은 RLL 코드의 (k) 제한을 초과하므로 데이터와 혼동될 가능성이 없다.
동기 패턴이 검출되지 않거나(분실되었거나) 또는 (예를 들어 결함으로 인해) 잘못된 위치에서 오류로 검출되면, RLL 코드워드 경계에 대한 정확한 비트 위치 및 정렬을 알 수 없게 된다. 따라서, 재동기가 위치될 수 있는 정확한 위치 또한 불확실해진다. 이러한 위치의 불확실성의 크기가 재동기의 크기와 동일한 경우(이는 대부분의 테이프 드라이브에 존재하는 통상적인 경우임), 재동기 검출기는 필수적으로 인코드된 데이터 내에서 재동기를 찾아야 한다. 이러한 이유로, 재동기는 데이터와 구별되는 것이 중요하며, 따라서 인코드된 데이터에 사용되는 RLL 코드의 코드워드 공간 외부에 존재해야 한다. 재동기를 RLL 코드의 코드워드 공간 외부에 놓으면, 다수의 재동기가 코드의 (k) 제한에 위배되는 "0"으로 이루어지는 하나의 긴 스트링 또는 본질적으로 인코드될 수 없는 "0"으로 이루어지는 긴 스트링들의 시퀀스를 갖도록 설계되며, 상기 2가지 경우 모두 RLL 위배로 알려져 있다. 재동기 검출기는 상기 RLL 위배를 찾는데, 이러한 RLL 위배는 정상적으로 인코드된 데이터(노이즈 또는 결함이 없는 데이터)에서는 발생할 수 없다. 피크 검출 채널의 단점은 고주파 신호의 심볼간 간섭(intersymbol interference)가 임의의 전이 검출을 이웃 전이에서 멀어지도록 시프트시키고 또한 전이가 없는 영역 ("0") 쪽으로 시프트시키는 경향이 있다는 점이다. 따라서, 검출된 일부 전이는 검출된 비트 스트림이 재동기 패턴으로 검출되지 않을 수도 있는 위치로 시프트되는 경향이 있다.
본 발명의 목적은 인코드된 데이터를 동기 패턴, 구체적으로는 인코드된 재동기 패턴을 데이터와 혼동하지 않도록 하는, 실행 길이가 제한된 코드를 인코딩하며 데이터 코드워드 및 재동기 패턴을 검출하고 분해하는 인코더 및 인코딩 방법을 제공하는 것이다.
본 발명의 또 다른 목적은 RLL 인코드된 데이터 내에 로버스트 재동기 패턴(robust Resync pattern), 및 코드워드 및 재동기 패턴을 디코드하기 위해 비트 시프트된 신호를 검출하여 분해하는 방법 및 디코더를 제공하는 것이다.
본 발명의 또 다른 목적은 로버스트 코드워드 동기 패턴을 제공하는 것이다.
도 1은 본 발명의 기록 인코더 및 재동기 발생기, 디코더, 및 채널을 표시하는 블록 다이어그램.
도 2는 본 발명의 재동기를 사용하는 인코드된 데이터 집합의 기록 또는 채널 포맷을 다이어그램으로 예시한 도면.
도 3은 도 1에 나타낸 예시적인 인코더의 인코딩 특성을 나타내는 테이블.
도 4는 도 3의 출력 표지(label) 및 이에 대응하는 6 비트 코드워드(codeword)의 리스트.
도 5는 도 3에 도시된 인코더의 상태 머신 인코더 논리를 나타내는 테이블.
도 6은 도 3 내지 도 5의 인코더에 사용되는 데이터 입력 및 출력을 예시하는 테이블.
도 7은 도 3 내지 도 6의 인코더 상태에 기초한 재동기 출력을 예시한 테이블.
도 8은 도 1에 도시된 예시적인 디코더의 디코딩 특성을 나타내는 테이블.
도 9는 도 6에 도시된 디코더의 상태 머신 디코더 논리를 나타내는 테이블.
도 10은 도 1에 도시된 재동기 검출기의 블록 다이어그램.
본 발명에는 로버스트 재동기 패턴을 채널 비트 스트림으로 발생시키고, RLL 인코드된 비트 스트림으로부터 재동기 패턴을 복구하는 인코더, 디코더, 인코더/디코더, 데이터 기록 매체, 및 실행 길이가 제한된 코드를 인코딩 및 디코딩하는 방법이 개시된다. 데이터 스트림은 실행 길이가 제한된 (d, k) 코드에 의해 인코드되며, 그 코드 내에 적어도 하나의 재동기 패턴을 갖는다. 재동기 패턴은 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링을 포함하며, 채널 비트 스트림 내로 삽입된다.
RLL 인코더는 제한이 없는 연속된 2진 소스 신호로부터 채널 비트 스트림 내의 RLL 2진 비트 신호를 인코드하며, RLL 채널 비트 스트림으로부터 소정의 패턴을 배제시키는데, 여기서 소정의 패턴은 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링이 나타나는 곳에 인접한 하나 또는 2개의 "1" 비트로 이루어지는 재동기 패턴으로부터 하나의 비트 시프트를 나타내며, "1" 비트는 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트된다.
채널은 인코드된 비트 스트림을 전송하고 인코드된 비트 스트림을 수신하는 재동기 발생기 및 RLL 인코더에 연결된다. 슬라이딩 블록 디코더와 같은 디코더는 인코드된 비트 스트림을 디코딩하는 채널 출력에 연결되고, 재동기 검출기는 재동기 패턴을 복구하는데, 여기서 재동기 검출기는 연속된 "0" 비트로 이루어지는 스트링을 포함하는 수신된 비트 스트림의 패턴을 재동기 패턴에 유리하도록 분해하여, 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링이 나타나는 곳에 인접하며 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트되는 하나 또는 2개의 "1" 비트로 이루어지는 재동기 패턴으로부터 비트 시프트를 조정한다.
또한, 재동기 패턴은 RLL (k) 제한에 위배되는 저주파 특성, 및 미리 정해진 길이 또는 그보다 더 긴 길이의 비트 패턴으로 이루어지는 연속 시퀀스(concatenated sequence)와 같이 RLL 코드에서 추가로 배제되는 고주파 특성 양자를 가질 수 있다. 상기 상이한 2가지 특성은 또한 재동기 패턴과 데이터 간의 혼동 가능성을 감소시킨다.
본 발명을 더욱 완전하게 이해하기 위해 첨부된 도면과 함께 이하의 본 발명에 대한 상세한 설명을 참조하여야 한다.
도 1을 참조하면, 소스(10)로부터의 2진 데이터는 실행 길이가 제한된 인코더(11)에 의해 전송되도록 인코드되고, 인코드된 데이터는 채널 입력(12)으로 입력되는 데이터 전송 시스템 또는 데이터 기록 시스템이 예시되어 있다. 채널은 전송 매체를 포함하거나, 데이터 저장 드라이브(15) 또는 기타 다른 저장 장치를 포함한다. 인코드된 데이터는 채널로부터 수신되거나 데이터 저장 장치로부터 판독되고, 출력 채널(18)에서 수신된 후 출력(21) 상에 2진 출력 데이터를 제공하는 디코더(20)에 의해 디코드된다. 인코딩 및 디코딩이 정확하게 이루어지고, 에러 없이 전송되었다면 2진 출력 데이터(21)는 소스(10)로부터의 2진 입력 데이터와 동일할 것이다.
2개의 2진 상태 간의 전이와 전이 사이의 거리에 대한 제한을 부과하는 인코딩 구조(실행 길이가 제한된(RLL) 2진 코드라고도 함)는 제한이 없는 2진 데이터 집합을 제한된 코드워드 집합으로 인코딩하기 위한 데이터 전송 및 데이터 기록 기술 분야에서 널리 사용되고 있다. RLL 2진 코드는 "1"과 "1" 사이의 "0"의 최소 거리 (d) (또는 기록 전이) 및 "1"과 "1" 사이의 "0"의 최대 거리 (k)를 갖는 것으로 기술될 수 있다.
다양한 형태의 RLL (d, k) 코드가 특히 유용한 것으로 밝혀졌으며, 상기 기술한 바와 같이 가변 길이 코드워드 또는 고정 길이 코드워드를 포함할 수 있다. 입력 채널(12) 및 출력 채널(18)은 통상적으로 비동기적이며, 데이터 저장 드라이브(15)가 자기 테이프 드라이브와 같은 아카이브(archive) 장치로 사용되는 경우 출력 채널은 1차 저장 디바이스를 복구할 필요성이 발생하는 시점에서 1년 이상 데이터를 제공하지 않을 수 있다. 따라서, 인코드된 데이터는 디코더(20)가 채널 출력 데이터를 디코드할 수 있도록 출력 채널(18)이 저장된 데이터의 전이를 번역하고 데이터를 판독하도록 하는데 필요한 클록킹을 제공해야 한다. 그러나, RLL 코드는 PLL이 인코드된 임의 데이터에 대한 위상 동기(phase-lock)를 얻는 것을 일반적으로 허용하지 않는다. 따라서, 클록킹 필드는 통상적으로 인코드된 데이터 필드에 들어가기 전에 PLL로 하여금 PLL의 클록이 성공적으로 판독되는 것을 요구하는 위상 동기를 수행할 수 있도록 인코드된 데이터 필드에 추가된다.
통상적으로, 필요한 클록킹 정보는 물론 다른 필요 정보를 가진 헤더는 기록 포맷기(write formatter, 25)에 의해 각 데이터 집합 등에 추가된다. 그 후, 클록킹 정보는 출력 채널 또는 판독 채널(18)에 의해 사용되어 인코드된 데이터의 각 전이 위치를 식별하고, 인코드된 데이터를 디코딩하기 위해 디코더(20)에 클록킹 정보를 공급할 수 있다.
인코드된 데이터 형태의 통상적인 예가 도 2에 도시되어 있다. 각 데이터 집합은 데이터 집합 분리기(data set separator) 또는 갭(gap, 30)에 의해 분리된다. 데이터가 자기 저장 테이프 드라이브에 의해 기록될 때, 갭은 때때로 "IBG" 또는 블록간 갭(interblock gap)이라고 한다. 갭 다음에는 통상적으로 "VFO" 영역(32)이 이어지고, 이 영역(32)은 출력 채널 PLL에 의해 사용되어 동작 주파수가 VFO 영역의 동작 주파수가 된다(위상 동기). ("VFO"는 가변 주파수 발진기를 나타낸다. 일부 최신 시스템은 더 이상 아날로그 가변 주파수 발진기를 사용하지 않지만, 용어는 사용되고 있다.) 데이터 기록시, 데이터 저장 드라이브는 다양한 속도로 동작할 수 있으므로, 데이터 주파수가 변화되는데, 이러한 변화는 VFO 영역 주파수를 검출함으로써 PLL에 의해 결정되어야 한다.
또한, VFO 영역(32) 다음에는 인코드된 데이터(33 내지 35)와, 자기 테이프와 같이 앞뒤로 이동할 수 있는 데이터 저장 드라이브의 경우에는 뒤쪽의 VFO 영역(37)이 이어진다.
통상적인 코드워드 쿼드(34)는 확장되어 보다 상세하게 나타난다. 통상적인 코드워드 쿼드는 선행 VFO 패턴(40)과 "동기" 패턴(41)을 가진 헤더, 및 다수의 코드워드 그룹(42 내지 43)을 포함한다. 각 코드워드 그룹은 길이가 짧은 헤더(45)와 코드워드 데이터(46)를 포함할 수 있다. 코드워드 그룹(42 내지 43)은 임의의 적절한 길이를 가질 수 있는데, 예를 들어, 총 490 바이트에 대하여 헤더(45)는 단지 10 바이트뿐이고 코드워드는 480 바이트를 가진다.
VFO 패턴(40)은 통상적으로 반복하는 코드워드 패턴이지만 헤더 내에서의 위치 때문에 식별이 가능하고, 클록이나 PLL이 VFO 영역(32)의 동작 주파수를 재획득하도록 조정할 수 있는 짧은 패턴을 제공한다. 그러나, VFO 패턴(40)은, 16 바이트 데이터 집합 패턴 VFO와 첫 번째 코드워드 쿼드 VFO를 결합하는 총 30 바이트일 수 있는 데이터 집합 VFO(32)에 비해 주파수가 검출되어 동기될 수 있을 정도로 충분히 긴 예를 들어 14 바이트 길이를 가져야 한다.
동기 패턴(41)은 RLL 인코드된 데이터의 시작 위치를 결정하여, RLL 디코더를 RLL 코드워드 경계에 정렬시키는데 제공된다. 동기 패턴은 (통상적으로 인접하지 않은 재동기 패턴과는 달리) 항상 VFO 패턴에 인접하기 때문에, VFO 패턴으로부터 확실하게 검출되어야 한다. 이것은 동기 패턴이 반드시 RLL을 위배해야 한다는 것을 의미하지는 않는다(재동기 패턴은 RLL을 위배해야 함). 동기 패턴의 위치는 동기 패턴이 인코드된 데이터 내에서 발견될 것이라는 임의의 가능성을 충분히 제거한다.
PLL이 위상 동기를 완수하지 못하는 경우, 또는 디코더가 입력 데이터 상의 코드워드 경계에 정렬되지 못하는 경우, 상기한 바와 같이 임의의 데이터 코드워드를 디코드할 수 없게 될 것이다. 따라서, 재동기(50)는 예를 들어 사토무라 특허에 예시된 바와 같이 통상적으로 데이터 내에 위치된다. 재동기 패턴은 RLL 디코더가 인코드된 데이터 내의 위치 및 RLL 코드워드 경계에 대한 정렬을 재획득하도록 하여 인코드된 후속 데이터의 복구를 가능하게 해준다. 통상적으로 사용되는 것은 아니지만, 일단 RLL 코드워드 경계가 재동기를 통해 결정되면 재동기 전에 발견된 인코드된 데이터를 저장하고 디코드하는 것이 또한 가능하다.
재동기 패턴(50)은 헤더의 일부로 식별될 가능성은 없다. 따라서, 사토무라의 특허에 개시되어 있는 바와 같이, 재동기 패턴은 데이터와 혼동을 일으키지 않아야 하는데, 그 이유는 재동기와 동일한 패턴을 갖는 데이터 코드워드가 나타나면 데이터로서 디코드되는 것이 아니라 재동기 패턴으로 검출될 가능성이 커서, 결과적으로 데이터 손실을 가져온다. 상기 논의한 바와 같이, 사토무라의 접근 방법에 따르면 데이터 내에서 재동기 패턴의 주기적인 위치에 의해 재동기 패턴을 식별하는 것이 여전히 가능하다. PLL이 위상을 벗어나도록 이동하게 하는 에러 발생 가능성 또는 일부 데이터 손실이 발생할 수 있다는 점, 또는 올바른 위상이 헤더에 전혀 도달하지 않은 경우에 상기 사토무라의 접근 방법은 신뢰하기 어렵다. 위상 동기가 이루어지지 않거나 RLL 디코더 정합이 올바로 이루어지지 않으면, 디코더는 주기적인 재동기 위치까지 카운트를 할 수 없으며, 패턴이 재동기 패턴인지를 검출할 수 없다.
사토무라가 제안한 패턴 중 하나가 구별 가능한데, 그 이유는 그 패턴이 RLL 코드의 (k) 제한 밖에 있기 때문이다. 그러나, 데이터 검출 내의 약간의 위상 에러 또는 재동기 패턴을 포함하는 전이 내의 약간의 비트 시프트가 결과적으로 인코드된 데이터 형태 대신 나타나는 재동기 패턴이 될 수 있다는 점이 단점이다.
RLL 디코더에서, 재동기 패턴은 통상 적어도 2개의 연속 전이 사이에 긴 거리를 포함한다. 특히 피크 검출을 통해 검출되는 자기 테이프 상에 기록된 자기 전이(magnetic transition)인 경우의 단점은 고주파 신호의 심볼간 간섭이 임의의 전이 검출을 가까운 이웃 전이에서 멀어지도록 시프트시키고 또한 전이들 사이의 전이가 없는 긴 영역 ("0") 쪽으로 시프트시키는 경향이 있다는 점이다. 따라서, 검출 회로는 재동기 패턴의 전이들을 서로 가까워지도록, 즉 이들 전이가 재동기 패턴이 아니라 데이터 코드워드로 잘못 검출될 수 있는 위치로 시프트시킨다.
다시 도 1을 참조하면, 본 발명의 실시예에 따르면 로버스트 재동기 패턴(50)은 재동기 발생기(55)에 의해 제공되고 이하에서 설명되는 바와 같이 기록 포맷기(25)에 의해 코드워드 내의 채널 데이터 비트 스트림 내로 삽입된다. 재동기 패턴은 RLL (k) 제한을 초과하는 "0"으로 이루어지는 적어도 하나의 스트링을 포함하며, 그에 따라 어느 데이터 코드워드와도 직접적으로 혼동을 일으키지 않는다. 따라서, RLL (1, 7) 또는 RLL (2, 7) 코드에서, 재동기 패턴은 전이와 전이 사이에 연속된 8개의 "0"을 갖는 "1000000001"이 될 수 있다. 이러한 패턴은 또한 전이와 전이 사이에 9개의 클록 거리를 갖는다는 점에서 "9T" 패턴이라고도 한다.
본 발명의 실시예에 따르면, 재동기 패턴은 코드워드로 소정의 패턴을 배제하는 인코더(11) 내에서 RLL 코드를 구현함으로써 로버스트 상태로 되는데, 여기서 소정의 패턴은 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링이 나타나는 곳에 인접한 하나 또는 2개의 "1" 비트로 이루어지는 재동기 패턴으로부터 하나의 비트 시프트를 나타내며, 상기 "1" 비트는 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트된다. 예를 들어 상기 재동기 패턴은 선행 전이를 후행 전이 쪽으로 시프트시켜, 즉 "0100000001"이 되게 하여 그 결과 (k) 제한이 더 이상 초과되지 않도록 하는 비트 시프트의 영향을 받을 수 있다. 이와 마찬가지로, 종료 전이는 후행 전이를 선행 전이 쪽으로 시프트시켜, 즉 "1000000010"이 되게 하여 그 결과 (k) 제한이 더 이상 초과되지 않도록 하는 비트 시프트의 영향을 받을 수 있다. 마지막으로, 선행 전이 및 후행 전이 양자는 서로 가까운 쪽으로, 즉 (k) 제한 이내인 "0100000010"이 되도록 시프트된다. 따라서, 본 발명은 RLL 인코더(11)에 의해 생성되는 코드워드로부터 상기 비트 시프트 패턴을 배제한다.
본 발명의 또 다른 실시예에 따르면, 재동기 패턴(50)에는 2가지 상이한 특징이 제공되는데, 그 중 하나는 배제된 패턴 및 RLL 코드의 제한에 위배되는 저주파 특성, 및 미리 정해진 길이 또는 그보다 더 긴 길이의 비트 패턴으로 이루어지는 연속 시퀀스와 같이 RLL 코드에서 추가로 확실하게 배제되는 고주파 특성 양자를 가질 수 있다. 예를 들어, 고주파 연속 시퀀스는 2T 버스트 또는 "10"과 같은 짧은 버스트로 이루어지는 반복 패턴인 VFO 패턴을 포함할 수 있다. RLL (1, 7) 코드에서 2T 버스트가 "d" 제한에 위배되지 않는 경우라도, 본 발명에 따르면 2T 버스트의 전체 연속 시퀀스가 또한 인코더(11)의 가능한 코드워드 시퀀스로부터 배제되어 재동기 패턴에 대한 2 종류의 배제가 개별적으로 이루어진다.
예를 들어, 배제된 VFO 패턴은 연속 "10" 비트가 7개 이상 반복되는 길이를 갖는 스트링을 포함하여, VFO 패턴을 검출할 수 있도록 배제될 수 있다. 따라서, 연속 스트링의 일부를 이루는 VFO 패턴(32) 및 (40)과 재동기 패턴(50) 중 어느 것도 인코드된 데이터와 혼동을 일으키지 않는다. RLL (1, 7) 코드에 대해 RLL (k) 제한을 초과하는 "0"으로 이루어지는 스트링과 함께 VFO 패턴을 갖는 예시적인 재동기 패턴은 다음과 같다.
"010000.000010.101010.101010"
재동기 패턴의 배제된 비트 시프트된 형태는 다음과 같다:
a) "010000.000100.101010.101010"은 "0"으로 이루어지는 스트링의 후행 전이의 비트 시프트를 나타내며, 이러한 비트 시프트는 "0"으로 이루어지는 스트링이 (k) 제한 내에 있도록 하며, "10" 비트 쌍으로 이루어지는 연속 스트링을 6번 반복하도록 하여 연속 배제에 의해 배제되지 않도록 한다. 따라서, 상기 패턴은 인코더(11)에 의해 가능한 코드워드 출력으로부터 확실하게 배제되어야 한다.
b) "001000.000100.101010.101010"은 "0"으로 이루어지는 스트링의 선행 전이 및 후행 전이 양자의 비트 시프트를 나타내며, 이러한 비트 시프트는 또한 "0"으로 이루어지는 스트링이 (k) 제한 내에 있도록 하며, "10" 비트 쌍으로 이루어지는 연속 스트링을 6번 반복하도록 하여 연속 배제에 의해 배제되지 않도록 한다. 따라서, 상기 패턴은 인코더(11)에 의해 가능한 코드워드 출력으로부터 확실하게 배제되어야 한다.
c) "001000.000010.101010.101010"은 "0"으로 이루어지는 스트링의 선행 전이의 비트 시프트를 나타내며, 이러한 비트 시프트는 또한 VFO 패턴 배제로 인해 배제된다.
따라서, RLL (1, 7) 고정 길이 코드의 예인 경우 금지되는 데이터 인코딩 패턴은 다음과 같다.
1) "11"-(d) 제한;
2) "0"-(k) 제한;
3) "10 10 10 10 10 10 10"-7개 이상의 "10"의 연속 반복;
4) "010000.000010.101010.101010"-재동기 패턴;
5) "010000.000100.101010.101010"-상기 재동기 비트 시프트 패턴 a);
6) "001000.000100.101010.101010"-상기 재동기 비트 시프트 패턴 b); 및
7) "001000.000010.101010.101010"-상기 재동기 비트 시프트 패턴 c).
따라서, 재동기 패턴은 인코드된 데이터로부터 배제되는 모두 유사한 비트 시프트 패턴을 가지며, 데이터로부터 2번째 배제로서 추가로 배제되는 "VFO" 패턴의 일부를 이루는 높은 로버스트 상태가 된다.
인코드된 데이터 및 추가로 배제되는 "VFO" 패턴의 일부를 이루는 재동기 패턴은 적절한 포맷 정보와 함께 인코더(11), 기록 포맷기(25), 및 재동기 발생기(55)에 의해 제공된다. 구체적으로, 기록 포맷기(25)는 RLL 인코더(11), 재동기 발생기(55), 및 멀티플렉서(57)를 동작시켜 인코드된 데이터, 재동기 패턴 등을 원하는 포맷으로 정렬시킨 후 데이터 스트림을 기록 채널(12)로 전송한다. 채널은 전송 매체 또는 데이터 저장 드라이브(15)를 포함할 수 있다. 데이터 저장 드라이브인 경우, 채널에 대한 입력은 단기간 아카이브되거나 저장되도록 자기 테이프 또는 광 디스크와 같은 데이터 저장 매체 상에 데이터 저장 드라이브에 의해 기록된다. 어느 경우든 소정 시점에서 저장 매체는 동일 또는 다른 데이터 저장 드라이브(15)에 의해 액세스되어 판독이 가능하다. 데이터 저장 드라이브로부터 판독되거나 채널(12)을 통해 전송되어 수신된 데이터가 채널 출력(18)에 제공된다. 판독 채널(18)에 의해 검출되는 인코드된 비트 스트림은 디코더(20)에 의해 디코드되며, 재동기 패턴은 재동기 검출기(58)에 의해 검출된다. 재동기 검출기(58)에 의해 검출된 재동기 패턴의 검출을 나타내는 신호는 재동기 기간 동안 RLL 디코더(20)를 디게이트(degate)하는(즉, 통과하지 않는) 판독 포맷기에 제공된다. 재동기의 타이밍은 RLL 디코더(20)에 의해 사용되어 RLL 디코더가 재동기 패턴으로부터 RLL 코드워드의 적절한 "프레이밍(framing)"을 얻어, 입력 코드워드 경계 및 시작 위치에 대한 정렬을 유지 또는 재획득할 수 있다.
재동기 디코더(58)는 "0"으로 이루어지는 스트링을 포함하는 수신된 비트 스트림의 패턴을 재동기 패턴에 유리하도록 분해하여, 연속된 "0" 비트로 이루어지는 적어도 하나의 긴 스트링이 나타나는 곳에 인접하며 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트되는 하나 또는 2개의 "1" 비트로 이루어지는 재동기 패턴으로부터 비트 시프트를 조정한다. 또한, 수신된 재동기 패턴이 RLL (k) 제한을 초과하는 "0" 비트로 이루어지는 스트링 및 미리 정해진 길이로 이루어지는 반복되는 비트 패턴의 연속 시퀀스를 포함하는 연속 패턴 양자를 구비하는 경우, 재동기 검출기(58)는 "0"으로 이루어지는 스트링 및 연속 패턴 양자를 포함하는 수신된 비트 스트림의 비트 패턴을 재동기 패턴에 유리하게 추가로 분해한다.
예를 들어, 상술한 바와 같이 수신된 RLL (d, k) 인코드된 채널 비트 스트림은 적어도 하나의 재동기 패턴을 갖는 RLL (1, 7) 인코드된 비트 스트림을 포함하며, "0"으로 이루어지는 재동기 패턴 스트링은 연속 패턴과 함께 8개의 연속된 "0" 비트를 포함하는 경우, 재동기 패턴에 유리하도록 디코더(20) 및 재동기 디코더(58)에 의해 분해된 수신 패턴은 다음과 같은 패턴을 포함한다:
a) "010000.000100.101010.101010";
b) "001000.000100.101010.101010"; 및
c) "001000.000010.101010.101010".
본 발명의 또 다른 특징에 따르면, 3 비트 재동기 패턴이 데이터로부터의 연결(linkage)과 결합되어 재동기 패턴 및 데이터의 효과적인 디코딩을 가능하게 하여 예를 들어 (d)=1 제한의 위배를 회피하거나 슬라이딩 블록 디코더에 의한 디코딩을 가능하게 하는데 데이터로부터 분리하기 위해 긴 재동기 패턴을 필요로 하지 않는다. 또한, 전진 또는 후진 방향으로 판독될 수 있는, 자기 테이프 상에 기록된 데이터에 대해 동일한 성능을 제공하기 위해 재동기 패턴의 시작 부분 및 마지막 부분 각각에 있는 3 비트가 데이터로부터의 연결과 결합된다. 연결은 "xxx" 형태가 될 수 있으며, 여기서 각 x 비트는 선행하는 데이터에 따라 "1" 또는 "0" 상태 중 어느 하나로 가정할 수 있다.
따라서, 상기 24 비트 재동기 패턴은 앞서와는 달리 사용자 데이터 스트림 다음에 4개의 고정 비트를 인코딩하고(사용자 데이터 스트림을 효과적으로 확장하고), 그 다음에 18 비트의 일부 재동기 패턴인 "000000010101010101"이 이어지고, 그 다음에 주어진(고정) 상태에서 시작하는 인코드된 후속 사용자 데이터가 이어지도록 하여 기록될 수 있다. 이것은 코드워드 그룹(42)을 4개의 고정 비트만큼 효과적으로 확장하여 코드워드 그룹(43)의 인코드가 고정 상태에서 시작된다.
입력 소스 데이터(10)가 제한이 없도록 해주기 위해 충분한 수의 상이한 코드워드를 제공할 수 있는 바람직한 실시예는 4:6의 비율(즉, 4개의 소스 비트가 6 채널 비트 길이의 코드워드를 생성함)로 인코드되는 실행 길이가 제한된 (d, k)가 (1, 7)인 코드이다. RLL이 (1, 7)이고 비율이 4:6인 경우의 예를 예시하는 테이블이 도 3에 도시되어 있으며, 허용되는 6 비트 코드워드가 도 4에 도시되어 있다.
또한 바람직한 실시예에서, 도 1의 인코더(11)은 7개 상태를 가지며 4 비트 그룹의 소스 비트에 응답하여 6 비트 그룹의 채널 비트를 제공하는 상태 머신이다. 기타 다른 적절한 RLL 인코더가 또한 사용될 수 있다.
도 3의 테이블에서, 로우와 칼럼은 인코더의 7가지 상태 {1, 2, ..., 7}에 의해 인덱스된다. 각각의 현재 상태는 x/y 형태의 16개의 출력 전이를 갖는데, 여기서 x는 16진수(즉, {0, 1, ..., 9, a, b, ..., f})로 표시되는 4 비트 입력 (또는 사용자) 표지(label)이고, y는 도 4의 목록에 따르는 바와 같이 정수 {1, ..., 21}로 표시되는 출력 코드워드의 6 비트 표지이다.
도 3의 상태 테이블로 표시되는 인코딩을 구현하는데 사용될 수 있는 인코더 논리의 하나의 실시예가 도 5의 테이블에 기술되어 있다. 도 5의 인코더 논리에 있어서, 현재 상태는 3 비트 표지 s2s1s0로 표시된다. 이러한 현재 상태를 나타내는 3 비트 표지는 4 비트 사용자 표지인 b3b2b1b0와 함께 6 비트 출력 코드워드 c5c4c3c2c1c0와 다음 상태 t2t1t0를 결정한다.
인코딩 규약은 재동기 패턴과 결합되는 3 비트 데이터로 이루어지는 연결을 제공하여 데이터와 실제 재동기 패턴 사이의 연결점(junction)에서 슬라이딩 블록 디코더에 의해 데이터의 효과적인 디코딩을 가능하게 함으로써, 데이터 끝부분에서의 "xxx" 비트 및 재동기 패턴의 시작점을 정해준다. 상기에서 예를 든 6 비트 출력 포맷을 사용하면, 도 3 내지 도 5에 예시된 인코더에 대한 인코딩 규약은 데이터 스트림 내에서 "xxx010" 형태의 마지막 6 비트 채널 워드와 "010xxx" 형태의 첫 번째 6 비트 채널 워드를 제공한다.
상기 채널 코드워드를 생성하기 위한 인코딩 규약은 다음과 같다:
#1 - 4 비트 입력 (또는 사용자) 워드인 "b"(16 진수임)는 모든 입력 데이터 스트림의 끝부분에 부착되어 있으며, 인코드된다(따라서, 인코드된 데이터 스트림은 6 비트 더 길어짐).
#2 - 입력 데이터 스트림의 인코딩은 항상 상태 7에서 시작한다.
인코딩 규약 #1 및 도 3의 테이블 칼럼 3을 검사하면 임의의 인코드된 데이터 스트림 내의 최종 채널 워드가 "xxx010"(즉, "10"으로 끝남)이 되는데, 그 이유는 "b"가 3, 8, 11, 16, 또는 21로 인코드되고 이들 각각은 (도 4의 목록에 따라) "10"으로 끝나는 출력 표지에 대응되기 때문이다.
인코딩 규약 #2 및 도 3의 테이블 칼럼 7을 검사하면 임의의 인코드된 데이터 스트림 내의 최초 채널 워드가 "10"으로 시작되는데, 그 이유는 상태 7로부터 4 비트 사용자 워드는 10, 11, 12 또는 13으로 인코드되고 이들 각각은 (도 4의 목록에 따라) "10"으로 시작하는 출력 표지에 대응되기 때문이다.
재동기 패턴을 데이터에 연결하더라도 오버헤드(overhead)를 추가하지 않는다. 실제 재동기 오버헤드는 24 비트인데, 이 중 18 비트는 일부 재동기 패턴에서 온 것이고 6 비트는 사용자 정보를 보유하지 않은 전방부의 채널 워드 "xxx010"로터 온 것이다. 후방부에 있는 채널 워드 "010xxx"는 완전한 4비트 사용자 정보를 보유하며, 따라서 오버헤드로 간주되지 않는다.
상기 연결의 경우, 재동기 패턴 또는 인코드된 데이터 및 재동기의 연결점에서 형성되는 재동기 패턴의 가장 발생 가능성이 높은 2개의 비트 시프트의 진정한 카피(copy)는 모두 정확한 위치에서 재동기 패턴으로 여전히 식별된다.
도 6은 4 비트 데이터 입력, 대응 6 비트 현재 상태 출력, 및 도 3 내지 도 5의 인코더의 다음 상태를 예시하고 있으며, 도 7은 도 3 내지 도 6의 인코더 상태에 따라 재동기 발생기(55)에 의해 발생되며, 연결에 인코드된 데이터를 제공하는 재동기 패턴을 예시하고 있다.
인코더(11)에 의해 인코드된 채널 데이터 스트림을 디코딩하는 디코더(20)의 예로 메모리를 가지지 않으며 하나의 6 비트 예측 블록을 갖는 슬라이딩 블록 디코더가 있다. 따라서, 현재 4 비트 사용자 워드가 현재 6 비트 채널 워드 및 다음에 나타나는 6 비트 채널 워드의 함수로 복구된다. 이것은 도 3의 테이블에 예시되는데, 도 3 테이블에서는 (1) 동일한 칼럼에서 동일 출력 표지 y가 2번 나타나면(즉, 동일한 다음 상태의 경우) 그 표지는 항상 동일한 입력 표지를 가지며, (2) 상이한 칼럼에서 동일 출력 표지 y가 2번 나타나면(즉, 상이한 다음 상태의 경우) 그 표지의 다음에는 공통 출력 표지가 이어질 수 없다.
디코더 함수는 도 8에 도시되어 있으며, 이 함수에서 로우는 현재 채널 워드에 의해 인덱스되고, 칼럼은 다음에 나타나는 채널 워드에 의해 인덱스된다. 따라서, 디코더(20)는 각각 4 비트 사용자 워드를 디코드하기 위한 2개의 연속된 6 비트 채널 워드에 좌우된다.
디코더 논리는 도 9에 도시되어 있다. 도 9의 디코더 논리에 있어서, 현재 6 비트 채널 코드워드 c5c4c3c2c1c0는 다음 6 비트 채널 코드워드 d5d4d3d2d1d0와 함께 디코드된 4 비트 사용자 코드워드 b3b2b1b0를 결정한다.
디코더(20)는 2개의 연속된 6 비트 채널 코드워드 c5c4c3c2c1c0에만 좌우되므로, 많아야 7개의 연속 채널 에러로 이루어지는 버스트가 많아야 3개의 연속 4 비트 사용자 워드 및 그에 따라 많아야 2개의 연속된 사용자 바이트를 오염시킬 수 있다. 따라서, 인터리브된 간단한 에러 정정 코드가 데이터를 보호하는데 사용될 수 있다.
도 1의 재동기 검출기(58)의 예시적인 실시예가 도 10에 예시되어 있다. 판독 채널(18)로부터의 입력 비트는 시프트 레지스터를 통해 순차 배열되고, 검사 중인 24 비트는 레지스터(60)에 공급된다. 재동기 패턴 01000.000010.101010.101010에 대한 검사가 진행 중인 비트를 좌측에서부터 우측으로 b0, b1,..., b23으로 번호를 부여하고, 레지스터(60)의 비트도 그에 따라 번호를 부여하면, 공칭 재동기 패턴(nominal Resync pattern) 및 그 패턴의 발생 가능성이 가장 높은 2개의 비트 시프트 위치의 검출은 배타적 OR 논리(62) 및 (63), AND 논리(65)에 의해 행해질 수 있다. 따라서, AND(65)가 원하는 "1" 비트 입력을 갖도록 "0"이 검출되어야 하는 AND(65)에 대한 모든 입력은 반전된다. 그러므로, 비트 시프트가 일어날 수 있는 입력 비트 b1및 b2와 입력 비트 b9및 b10은 정확한 위치 또는 비트 시프트된 위치 중 어느 하나로 검출되도록 논리(62) 및 (63)에 의해 배타적 OR된다.
재동기 패턴을 검출하기 위한 임의의 다른 적합한 논리가 사용될 수 있다.
도 1을 참조하면, 재동기 검출기(58)는 동기 입력을 판독 포맷기(59)에 제공하며, 판독 포맷기는 RLL 코드워드로 RLL 디코더(20)를 동기시킨다.
본 발명의 로버스트 재동기 패턴을 사용하는 대안적인 RLL 코드 및 이에 대응하는 인코더(11), 재동기 발생기(55), 디코더(20), 및 재동기 검출기(58)가 향후 출현되는 경우 이들의 사용도 가능하다.
본 발명의 바람직한 실시예가 상세히 예시되었지만, 이들 실시예에 대한 변경 및 개변이 첨부되는 특허청구범위에 기재된 본 발명의 범위를 벗어남이 없이 당업자에 의해 이루어질 수 있다.
본 발명의 인코더 및 인코딩 방법은 실행 길이가 제한된 코드를 인코딩하며 데이터 코드워드 및 재동기 패턴을 검출하고 분해하여 인코드된 재동기 패턴을 데이터와 혼동하지 않도록 해준다.

Claims (45)

  1. 제한이 없는 연속된 2진 소스 신호를 실행 길이가 제한된(RLL) (d, k) 코드로 인코딩하는 방법에 있어서,
    a) 상기 2진 소스 신호로 이루어지는 그룹을 수신하는 단계; 및
    b) 2진 신호로 이루어지는 RLL 채널 그룹을 제공하도록 상기 2진 소스 신호로 이루어지는 그룹을 RLL 인코딩하는 단계
    를 포함하고,
    상기 RLL 채널 그룹은
    i) 상기 RLL (d) 제한보다 더 적은 수의 "0" 비트를 갖는 패턴;
    ii) 상기 RLL (k) 제한보다 더 많은 수의 "0" 비트를 갖는 패턴;
    iii) 상기 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링을 갖는 재동기 패턴; 및
    iv) "0" 비트로 이루어지는 적어도 하나의 스트링이 나타나는 곳에 인접한 하나 또는 2개의 "1" 비트―여기서 "1" 비트는 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트됨―로 이루어지는 시프트를 포함하는 재동기 패턴으로부터 한 개의 비트 시프트를 나타내는 적어도 하나의 패턴
    을 배제하는 비트의 스트림을 포함하는
    인코딩 방법.
  2. 제 1항에 있어서,
    상기 RLL 인코딩하는 단계는 미리 정해진 길이를 갖는 반복 비트 패턴으로 이루어지는 연속 시퀀스(concatenated sequence)를 포함하는 연속 패턴을 추가로 배제하고,
    상기 재동기 패턴은 상기 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 스트링, 및 상기 연속 패턴 양자를 포함하는
    인코딩 방법.
  3. 제 2항에 있어서,
    상기 RLL 인코딩하는 단계의 재동기 패턴이 바로 앞에 선행하는 채널 그룹과 관련된 4 비트로 이루어지는 패턴을 나타내는 선행 "xxx010" 비트 패턴을 추가로 포함하는 인코딩 방법.
  4. 제 1항에 있어서,
    상기 실행 길이가 제한된 코드는 (1, 7) 코드를 포함하고,
    상기 연속된 "0" 비트로 이루어지는 스트링을 갖는 RLL 인코딩하는 단계의 재동기 패턴은 길이가 8인
    인코딩 방법.
  5. 제 4항에 있어서,
    상기 RLL 인코딩하는 단계는 미리 정해진 길이를 갖는 "10" 비트 쌍으로 이루어지는 반복 패턴의 연속 시퀀스를 포함하는 VFO 패턴을 추가로 배제하고,
    상기 재동기 패턴은 상기 RLL (k) 제한을 초과하는 연속된 8개의 "0" 비트로 이루어지는 스트링, 및 상기 VFO 패턴 양자를 포함하는
    인코딩 방법.
  6. 제 5항에 있어서,
    상기 실행 길이가 제한된 (1, 7) 코드는 비트를 4:6 비율로 인코드하고,
    상기 VFO 패턴은 6회보다 더 긴 연속된 "10" 비트 쌍으로 이루어지는 시퀀스를 포함하며,
    상기 RLL 인코딩하는 단계의 재동기 패턴은 "010000.000010.101010.101010"을 포함하는
    인코딩 방법.
  7. 제 6항에 있어서,
    상기 RLL 인코딩하는 단계의 재동기 비트 시프트를 나타내는 배제된 패턴이
    a) "010000.000100.101010.101010";
    b) "001000.000100.101010.101010"; 및
    c) "001000.000010.101010.101010"
    을 포함하는 인코딩 방법.
  8. 로버스트 재동기 패턴(robust Resync pattern)을 실행 길이가 제한된(RLL) (d, k) 인코드된 코드로 이루어지는 채널 비트 스트림으로 생성하는 방법에 있어서,
    a) 상기 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링을 포함하는 상기 재동기 패턴을 상기 채널 비트 스트림으로 인코딩하는 단계; 및
    b) 상기 RLL (d, k) 채널 비트 스트림으로부터 소정 패턴―여기서 소정 패턴은 상기 재동기 패턴, 및 "0" 비트로 이루어지는 적어도 하나의 스트링이 나타나는 곳에 인접한 하나 또는 2개의 "1" 비트로 이루어지는 시프트를 포함하는 재동기 패턴으로부터 한 개의 비트 시프트를 나타내는 적어도 하나의 패턴을 포함하되, 상기 "1" 비트는 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트됨―을 배제하는 단계
    를 포함하는 로버스트 재동기 패턴을 채널 비트 스트림으로 생성하는 방법.
  9. 제 8항에 있어서,
    상기 인코딩하는 단계의 재동기 패턴은 상기 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 스트링, 및 미리 정해진 길이를 갖는 반복 비트 패턴으로 이루어지는 연속 시퀀스를 포함하는 연속 패턴 양자를 포함하고,
    상기 배제 단계는 상기 연속 패턴을 추가로 배제하는
    로버스트 재동기 패턴을 채널 비트 스트림으로 생성하는 방법.
  10. 제 8항에 있어서,
    상기 인코딩하는 단계의 재동기 패턴이 바로 앞에 선행하는 채널 RLL 비트와 관련된 4 비트로 이루어지는 패턴을 나타내는 선행 "xxx010" 비트 패턴을 추가로 포함하는 로버스트 재동기 패턴을 채널 비트 스트림으로 생성하는 방법.
  11. 제 8항에 있어서,
    상기 실행 길이가 제한된 코드는 (1, 7) 코드를 포함하고,
    상기 연속된 "0" 비트로 이루어지는 스트링을 갖는, 상기 인코딩하는 단계의 재동기 패턴은 연속된 8개 "0" 비트로 이루어지는
    로버스트 재동기 패턴을 채널 비트 스트림으로 생성하는 방법.
  12. 제 11항에 있어서,
    상기 인코딩하는 단계의 재동기 패턴은 상기 RLL (k) 제한을 초과하는 연속된 8개의 "0" 비트로 이루어지는 스트링, 및 미리 정해진 길이의 "10" 비트 쌍의 반복 패턴으로 이루어지는 연속 시퀀스를 포함하는 VFO 패턴 양자를 포함하고,
    상기 배제 단계는 상기 VFO 패턴을 추가로 배제하는
    로버스트 재동기 패턴을 채널 비트 스트림으로 생성하는 방법.
  13. 제 12항에 있어서,
    상기 인코딩하는 단계의 재동기 패턴이 "010000.000010.101010.101010"을 포함하는 로버스트 재동기 패턴을 채널 비트 스트림으로 생성하는 방법.
  14. 구조적으로 제한된 환경에서 제한이 없는 연속된 2진 소스 신호로부터, 2진 비트 신호로 이루어지며 인접한 "1" 비트 사이에 최소 거리 (d) 및 최대 거리 (k)를 갖는 제한된 실행 길이가 제한된(RLL) 코드를 생성하는 인코더에 있어서,
    a) 상기 2진 소스 신호를 수신하는 소스; 및
    b) 상기 소스에 연결되며, 상기 2진 소스 신호로 이루어지는 그룹을 수신하고 상기 RLL 코드 내에서 인코드된 2진 신호로 이루어지는 RLL 채널 그룹을 제공하도록 상기 2진 소스 신호로 이루어지는 소스 그룹에 응답하는 RLL 인코더
    를 포함하고,
    상기 RLL 채널 그룹은
    i) 상기 RLL (d) 제한보다 더 적은 수의 "0" 비트를 갖는 패턴;
    ii) 상기 RLL (k) 제한보다 더 많은 수의 "0" 비트를 갖는 패턴;
    iii) 상기 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링을 갖는 재동기 패턴; 및
    iv) "0" 비트로 이루어지는 적어도 하나의 스트링이 나타나는 곳에 인접한 하나 또는 2개의 "1" 비트―여기서 "1" 비트는 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트됨―로 이루어지는 시프트를 포함하는 재동기 패턴으로부터 한 개의 비트 시프트를 나타내는 패턴들
    을 배제하는 비트의 스트림을 포함하는
    인코더.
  15. 제 14항에 있어서,
    상기 RLL 인코더는 미리 정해진 길이를 갖는 반복 비트 패턴으로 이루어지는 연속 시퀀스(concatenated sequence)를 포함하는 연속 패턴을 추가로 배제하고,
    상기 재동기 패턴은 상기 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 스트링, 및 상기 연속 패턴 양자를 포함하는
    인코더.
  16. 제 15항에 있어서,
    상기 재동기 패턴이 상기 RLL 인코더에 의해 인코드된 바로 앞에 선행하는 채널 그룹과 관련된 4 비트로 이루어지는 패턴을 나타내는 선행 "xxx010" 비트 패턴을 포함하는 추가로 포함하는 인코더.
  17. 제 14항에 있어서,
    상기 RLL 인코더의 실행 길이가 제한된 코드는 (1, 7) 코드를 포함하고,
    상기 연속된 "0" 비트로 이루어지는 스트링을 갖는 재동기 패턴은 연속된 8개의 "0" 비트를 포함하는
    인코더.
  18. 제 17항에 있어서,
    상기 RLL 인코더는 미리 정해진 길이를 갖는 "10" 비트 쌍으로 이루어지는 반복 패턴의 연속 시퀀스를 포함하는 VFO 패턴을 추가로 배제하고,
    상기 재동기 패턴은 상기 RLL (k) 제한을 초과하는 연속된 8개의 "0" 비트로 이루어지는 스트링, 및 상기 VFO 패턴 양자를 포함하는
    인코더.
  19. 제 18항에 있어서,
    상기 RLL 인코더의 실행 길이가 제한된 (1, 7) 코드는 비트를 4 비트의 엔터링된 그룹과 6 비트의 RLL 채널 그룹을 나타내는 4:6 비율로 인코드하고,
    상기 배제된 VFO 패턴은 6회보다 더 긴 연속된 "10" 비트 쌍으로 이루어지는 시퀀스를 포함하며,
    상기 재동기 패턴은 "010000.000010.101010.101010"을 포함하는
    인코더.
  20. 제 19항에 있어서,
    상기 재동기 비트 시프트를 나타내는, RLL 인코더의 배제된 패턴이
    a) "010000.000100.101010.101010";
    b) "001000.000100.101010.101010"; 및
    c) "001000.000010.101010.101010"
    을 포함하는 인코더.
  21. 로버스트 재동기 패턴(robust Resync pattern)을 실행 길이가 제한된(RLL) (d, k) 비트 신호로 이루어지는 채널 비트 스트림으로 생성하는 인코더에 있어서,
    a) 상기 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링을 포함하는 상기 재동기 패턴을 생성하는 재동기 발생기; 및
    b) 제한이 없는 연속된 2진 소스 신호로부터 상기 채널 비트 스트림 내의 상기 RLL (d, k) 2진 비트 신호를 인코딩하고, 상기 RLL (d, k) 채널 비트 스트림으로부터 소정 패턴―여기서 소정 패턴은 상기 재동기 패턴, 및 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링이 나타나는 곳에 인접한 하나 또는 2개의 "1" 비트로 이루어지는 시프트를 포함하는 재동기 패턴으로부터 한 개의 비트 시프트를 나타내는 적어도 하나의 패턴을 포함하되, 상기 "1" 비트는 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트됨―을 배제하는 RLL 인코더
    를 포함하는 로버스트 재동기 패턴을 채널 비트 스트림으로 생성하는 인코더.
  22. 제 21항에 있어서,
    상기 재동기 발생기에 의해 생성되는 재동기 패턴은 상기 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 스트링, 및 미리 정해진 길이를 갖는 반복 비트 패턴으로 이루어지는 연속 시퀀스를 포함하는 연속 패턴 양자를 포함하고,
    상기 RLL 인코더는 상기 연속 패턴을 추가로 배제하는
    로버스트 재동기 패턴을 채널 비트 스트림으로 생성하는 인코더.
  23. 제 22항에 있어서,
    상기 재동기 발생기에 의해 생성되는 재동기 패턴이 바로 앞에 선행하는 채널 RLL 비트와 관련된 4 비트로 이루어지는 패턴을 나타내는 선행 "xxx010" 비트 패턴을 포함하는 추가로 포함하는 로버스트 재동기 패턴을 채널 비트 스트림으로 생성하는 인코더.
  24. 제 21항에 있어서,
    상기 실행 길이가 제한된 코드는 (1, 7) 코드를 포함하고,
    상기 재동기 발생기에 의해 생성되는 연속된 "0" 비트로 이루어지는 스트링을 갖는 재동기 패턴은 연속된 8개 "0" 비트로 이루어지는
    로버스트 재동기 패턴을 채널 비트 스트림으로 생성하는 인코더.
  25. 제 24항에 있어서,
    상기 재동기 발생기에 의해 생성되는 재동기 패턴은 상기 RLL (k) 제한을 초과하는 연속된 8개의 "0" 비트로 이루어지는 스트링, 및 미리 정해진 길이의 "10" 비트 쌍의 반복 패턴으로 이루어지는 연속 시퀀스를 포함하는 VFO 패턴 양자를 포함하고,
    상기 RLL 인코더는 상기 VFO 패턴을 추가로 배제하는
    로버스트 재동기 패턴을 채널 비트 스트림으로 생성하는 인코더.
  26. 제 25항에 있어서,
    상기 재동기 발생기에 의해 생성되는 재동기 패턴이 "010000.000010.101010.101010"을 포함하는 로버스트 재동기 패턴을 채널 비트 스트림으로 생성하는 인코더.
  27. 실행 길이가 제한된(RLL) 코드의 (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 스트링을 갖는 적어도 하나의 재동기 패턴을 구비한 실행 길이가 제한된 (d, k) 인코드된 채널 비트 스트림을 디코딩하는 방법에 있어서,
    a) 상기 인코드된 채널 비트 스트림을 수신하는 단계;
    b) 상기 인코드된 채널 비트 스트림을 미리 정해진 길이의 슬라이딩 블록 그룹(sliding block group)으로 그룹핑하는 단계;
    c) 상기 수신된 비트 스트림의 패턴을 디코드하기 위해 상기 슬라이딩 블록 그룹에 응답하는 단계; 및
    d) 상기 재동기 패턴을 검출하며, 상기 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링이 나타나는 곳에 인접한 하나 또는 2개의 "1" 비트―여기서 "1" 비트는 상기 재동기 패턴에 유리하게 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트됨―로 이루어지는 상기 재동기 패턴으로부터 비트 시프트를 분해하는 단계
    를 포함하고,
    상기 검출된 재동기 패턴은 슬라이딩 블록 그룹을 동기시키는
    디코딩 방법.
  28. 제 27항에 있어서,
    상기 수신된 재동기 패턴은 상기 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 스트링, 및 미리 정해진 길이를 갖는 반복 비트 패턴으로 이루어지는 연속 시퀀스(concatenated sequence)를 포함하는 VFO 패턴 양자를 포함하고,
    상기 검출하는 단계는 상기 연속된 "0" 비트로 이루어지는 스트링 및 VFO 패턴 양자를 포함하는 상기 수신된 비트 스트림의 비트 패턴을 상기 재동기 패턴에 유리하게 추가로 분해하는
    디코딩 방법.
  29. 제 28항에 있어서,
    상기 수신된 RLL (d, k) 인코드된 채널 비트 스트림은 그 내부에 적어도 하나의 재동기 패턴을 갖는 (1, 7) 인코드된 비트 스트림을 포함하고,
    상기 연속된 "0" 비트로 이루어지는 스트링을 갖는 재동기 패턴은 연속된 8개의 "0" 비트를 포함하며,
    상기 검출하는 단계는
    a) "010000.000100.101010.101010";
    b) "001000.000100.101010.101010"; 및
    c) "001000.000010.101010.101010"
    패턴을 상기 재동기 패턴에 유리하게 분해하는
    디코딩 방법.
  30. 실행 길이가 제한된(RLL) 코드의 (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 스트링을 갖는 적어도 하나의 재동기 패턴을 구비한 실행 길이가 제한된 (d, k) 인코드된 채널 비트 스트림을 디코딩하여, 상기 재동기 패턴을 복구하는 디코더에 있어서,
    a) 상기 인코드된 채널 비트 스트림을 수신하는 입력;
    b) 상기 입력에 연결되며, 상기 인코드된 채널 비트 스트림을 디코딩하는 슬라이딩 블록 디코더(sliding block decoder); 및
    c) 상기 입력에 연결되며, 상기 재동기 패턴을 복구하는 재동기 검출기―여기서 재동기 검출기는 상기 연속된 "0" 비트로 이루어지는 스트링 및 연속된 "0" 비트로 이루어지는 하나 또는 두 개 비트가 더 짧은 스트링을 포함하는 수신된 비트 스트림의 패턴을 재동기 패턴에 유리하도록 분해하여, 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링이 나타나는 곳에 인접하며 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트되는 하나 또는 2개의 "1" 비트로 이루어지는 재동기 패턴으로부터 비트 시프트를 조정함―
    를 포함하는 디코더.
  31. 제 30항에 있어서,
    상기 수신된 재동기 패턴은 상기 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 스트링, 및 미리 정해진 길이를 갖는 반복 비트 패턴으로 이루어지는 연속 시퀀스(concatenated sequence)를 포함하는 연속 패턴 양자를 포함하고,
    상기 재동기 검출기는 상기 연속된 "0" 비트로 이루어지는 스트링 및 연속 패턴 양자를 포함하는 상기 수신된 비트 스트림의 비트 패턴을 상기 재동기 패턴에 유리하게 추가로 분해하는
    디코더.
  32. 제 31항에 있어서,
    상기 수신된 RLL (d, k) 인코드된 채널 비트 스트림은 그 내부에 적어도 하나의 재동기 패턴을 갖는 (1, 7) 인코드된 비트 스트림을 포함하고,
    상기 연속된 "0" 비트로 이루어지는 스트링을 갖는 재동기 패턴은 연속된 8개의 "0" 비트를 포함하며,
    상기 재동기 검출기에 의해 재동기 패턴에 유리하게 분해된 수신된 패턴은
    a) "010000.000100.101010.101010";
    b) "001000.000100.101010.101010"; 및
    c) "001000.000010.101010.101010"
    패턴을 포함하는
    디코더.
  33. 로버스트 재동기 패턴(robust Resync pattern)을 실행 길이가 제한된(RLL) (d, k) 비트 신호로 이루어지는 채널 비트 스트림으로 생성하고, 적어도 하나의 재동기 패턴을 갖는 실행 길이가 제한된 (d, k) 인코드된 채널 비트 스트림으로부터 상기 재동기 패턴을 복구하는 인코더/디코더에 있어서,
    a) 상기 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링을 포함하는 상기 재동기 패턴을 상기 채널 비트 스트림으로 생성하는 재동기 발생기;
    b) 제한이 없는 연속된 2진 소스 신호로부터 상기 채널 비트 스트림 내의 상기 RLL (d, k) 2진 비트 신호를 인코딩하고, 상기 RLL (d, k) 채널 비트 스트림으로부터 소정 패턴―여기서 소정 패턴은 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링이 나타나는 곳에 인접한 하나 또는 2개의 "1" 비트로 이루어지는 시프트를 포함하는 재동기 패턴으로부터 한 개의 비트 시프트를 나타내되, 상기 "1" 비트는 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트됨―을 배제하는 RLL 인코더;
    c) 상기 재동기 검출기 및 RLL 인코더에 연결되며, 상기 인코드된 채널 비트 스트림을 전송하고 수신하는 채널:
    d) 상기 채널에 연결되며, 상기 인코드된 채널 비트 스트림을 디코딩하는 데이터 디코더; 및
    e) 상기 채널에 연결되며, 상기 재동기 패턴을 복구하는 재동기 검출기―여기서 재동기 검출기는 상기 연속된 "0" 비트로 이루어지는 스트링 및 연속된 "0" 비트로 이루어지는 하나 또는 두 개 비트가 더 짧은 스트링을 포함하는 수신된 비트 스트림의 패턴을 재동기 패턴에 유리하도록 분해하여, 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링이 나타나는 곳에 인접하며 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트되는 하나 또는 2개의 "1" 비트로 이루어지는 재동기 패턴으로부터 비트 시프트를 조정함―
    를 포함하는 인코더/디코더.
  34. 제 33항에 있어서,
    상기 재동기 발생기에 의해 생성되는 재동기 패턴은 상기 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 스트링, 및 미리 정해진 길이를 갖는 반복 비트 패턴으로 이루어지는 연속 시퀀스를 포함하는 VFO 패턴 양자를 포함하고,
    상기 RLL 인코더는 상기 VFO 패턴을 추가로 배제하며,
    상기 재동기 검출기는 상기 연속된 "0" 비트로 이루어지는 스트링 및 VFO 패턴 양자를 포함하는 상기 수신된 비트 스트림의 비트 패턴을 상기 재동기 패턴에 유리하게 추가로 분해하는
    인코더/디코더.
  35. 제 34항에 있어서,
    상기 RLL 인코더로 인코드된 실행 길이가 제한된 코드는 (1, 7) 코드를 포함하고,
    상기 재동기 발생기에 의해 생성되며, 연속된 "0" 비트로 이루어지는 스트링을 갖는 재동기 패턴은 연속된 8개의 "0" 비트를 포함하며,
    상기 재동기 검출기에 의해 재동기 패턴에 유리하게 분해되는 수신된 패턴은
    a) "010000.000100.101010.101010";
    b) "001000.000100.101010.101010"; 및
    c) "001000.000010.101010.101010"
    패턴을 포함하는
    인코더/디코더.
  36. 로버스트 재동기 패턴(robust Resync pattern)을 실행 길이가 제한된(RLL) (d, k) 비트 신호로 이루어지는 데이터 기록 비트 스트림으로 생성하고, 적어도 하나의 재동기 패턴을 갖는 실행 길이가 제한된 (d, k) 인코드된 채널 비트 스트림으로부터 상기 재동기 패턴을 복구하는 데이터 기록 인코더/디코더에 있어서,
    a) 상기 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링을 포함하는 상기 재동기 패턴을 상기 채널 비트 스트림으로 생성하는 재동기 발생기;
    b) 제한이 없는 연속된 2진 소스 신호로부터 상기 채널 비트 스트림 내의 상기 RLL (d, k) 2진 비트 신호를 인코딩하고, 상기 RLL (d, k) 채널 비트 스트림으로부터 소정 패턴―여기서 소정 패턴은 상기 재동기 패턴, 및 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링이 나타나는 곳에 인접한 하나 또는 2개의 "1" 비트로 이루어지는 시프트를 포함하는 재동기 패턴으로부터 한 개의 비트 시프트를 나타내는 적어도 하나의 패턴을 포함하되, 상기 "1" 비트는 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트됨―을 배제하는 RLL 인코더;
    c) 상기 재동기 발생기 및 RLL 인코더에 연결되며, 상기 인코드된 비트 스트림을 기록하고, 기록된 인코드된 비트 스트림을 검색하는 데이터 저장 디바이스;
    d) 상기 데이터 저장 디바이스에 연결되며, 상기 검색된 인코드된 비트 스트림을 디코딩하는 데이터 디코더; 및
    e) 상기 데이터 저장 디바이스에 연결되며, 상기 재동기 패턴을 복구하는 재동기 검출기―여기서 재동기 검출기는 상기 연속된 "0" 비트로 이루어지는 스트링 및 연속된 "0" 비트로 이루어지는 하나 또는 두 개 비트가 더 짧은 스트링을 포함하는 수신된 비트 스트림의 패턴을 재동기 패턴에 유리하도록 분해하여, 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링이 나타나는 곳에 인접하며 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트되는 하나 또는 2개의 "1" 비트로 이루어지는 재동기 패턴으로부터 비트 시프트를 조정함―
    를 포함하는 데이터 기록 인코더/디코더.
  37. 제 36항에 있어서,
    상기 재동기 발생기에 의해 생성되는 재동기 패턴은 상기 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 스트링, 및 미리 정해진 길이를 갖는 반복 비트 패턴으로 이루어지는 연속 시퀀스를 포함하는 연속 패턴 양자를 포함하고,
    상기 RLL 인코더는 상기 연속 패턴을 추가로 배제하며,
    상기 재동기 검출기는 상기 연속된 "0" 비트로 이루어지는 스트링 및 연속 패턴 양자를 포함하는 상기 수신된 비트 스트림의 비트 패턴을 상기 재동기 패턴에 유리하게 추가로 분해하는
    데이터 기록 인코더/디코더.
  38. 제 37항에 있어서,
    상기 RLL 인코더로 인코드된 실행 길이가 제한된 코드는 (1, 7) 코드를 포함하고,
    상기 재동기 발생기에 의해 생성되며, 연속된 "0" 비트로 이루어지는 스트링을 갖는 재동기 패턴은 연속된 8개의 "0" 비트를 포함하며,
    상기 재동기 검출기에 의해 재동기 패턴에 유리하게 분해되는 수신된 패턴은
    a) "010000.000100.101010.101010";
    b) "001000.000100.101010.101010"; 및
    c) "001000.000010.101010.101010"
    패턴을 포함하는
    데이터 기록 인코더/디코더.
  39. 기록된 2진 신호를 구비한 데이터 기록 매체에 있어서,
    a) 기록 매체;
    b) 실행 길이가 제한된(RLL) (d, k) 제한된 2진 신호의 그룹으로 이루어지고,
    i) 상기 RLL (d) 제한보다 더 적은 수의 "0" 비트를 갖는 패턴;
    ii) 상기 RLL (k) 제한보다 더 많은 수의 "0" 비트를 갖는 패턴;
    iii) 상기 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 적어도 하나의 스트링을 갖는 재동기 패턴; 및
    iv) "0" 비트로 이루어지는 적어도 하나의 스트링이 나타나는 곳에 인접한 하나 또는 2개의 "1" 비트―여기서 "1" 비트는 재동기 패턴을 (k) 제한 범위 내까지 줄이도록 시프트됨―로 이루어지는 시프트를 포함하는 재동기 패턴으로부터 한 개의 비트 시프트를 나타내는 적어도 하나의 패턴
    을 배제하는 비트의 스트림; 및
    c) 상기 2진 신호의 기록된 스트림 내에 분산되는 적어도 하나의 기록된 재동기 패턴
    을 포함하는 데이터 기록 매체.
  40. 제 39항에 있어서,
    상기 RLL 제한된 2진 신호의 기록된 스트림이 미리 정해진 길이를 갖는 반복 비트 패턴으로 이루어지는 연속 시퀀스를 포함하는 연속 패턴을 추가로 배제하고,
    상기 재동기 패턴은 상기 RLL (k) 제한을 초과하는 연속된 "0" 비트로 이루어지는 스트링, 및 상기 연속 패턴 양자를 포함하는
    데이터 기록 매체.
  41. 제 40항에 있어서,
    상기 기록된 재동기 패턴이 재동기 패턴의 바로 앞에 선행하는 RLL 제한된 2진 신호와 관련된 패턴을 나타내는 선행 "xxx010" 비트 패턴을 추가로 포함하는 데이터 기록 매체.
  42. 제 39항에 있어서,
    상기 실행 길이가 제한된 코드는 (1, 7) 코드를 포함하고,
    상기 연속된 "0" 비트로 이루어지는 스트링을 갖는 기록된 재동기 패턴은 길이가 8인
    데이터 기록 매체.
  43. 제 42항에 있어서,
    상기 RLL 제한된 2진 신호의 기록된 스트림은 미리 정해진 길이를 갖는 "10" 비트 쌍으로 이루어지는 반복 패턴의 연속 시퀀스를 포함하는 VFO 패턴을 추가로 배제하고,
    상기 재동기 패턴은 상기 RLL (k) 제한을 초과하는 연속된 8개의 "0" 비트로 이루어지는 스트링, 및 상기 VFO 패턴 양자를 포함하는
    데이터 기록 매체.
  44. 제 43항에 있어서,
    상기 실행 길이가 제한된 (1, 7) 코드는 비트를 4:6 비율로 인코드하고,
    상기 VFO 패턴은 6회보다 더 긴 연속된 "10" 비트 쌍으로 이루어지는 시퀀스를 포함하며,
    상기 기록된 재동기 패턴은 "010000.000010.101010.101010"을 포함하는
    데이터 기록 매체.
  45. 제 44항에 있어서,
    상기 재동기 비트 시프트를 나타내는, RLL 제한된 2진 신호가 배제된 패턴의 기록된 스트림은
    a) "010000.000100.101010.101010";
    b) "001000.000100.101010.101010"; 및
    c) "001000.000010.101010.101010"
    패턴을 포함하는
    데이터 기록 매체.
KR10-1999-0004835A 1998-02-17 1999-02-11 로버스트 재동기를 가진 실행 길이 제한 인코딩/디코딩 방법 및 장치 KR100393386B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/024,991 1998-02-17
US09/024,991 US5969649A (en) 1998-02-17 1998-02-17 Run length limited encoding/decoding with robust resync
US9/024,991 1998-02-17

Publications (2)

Publication Number Publication Date
KR19990072589A true KR19990072589A (ko) 1999-09-27
KR100393386B1 KR100393386B1 (ko) 2003-08-02

Family

ID=21823445

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1999-0004835A KR100393386B1 (ko) 1998-02-17 1999-02-11 로버스트 재동기를 가진 실행 길이 제한 인코딩/디코딩 방법 및 장치

Country Status (4)

Country Link
US (1) US5969649A (ko)
JP (1) JP3141011B2 (ko)
KR (1) KR100393386B1 (ko)
TW (1) TW402848B (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3760963B2 (ja) * 1997-11-07 2006-03-29 ソニー株式会社 変調装置および方法、復調装置および方法、並びに記録媒体
US6177890B1 (en) * 1998-12-04 2001-01-23 Texas Instruments Incorporated Technique for increasing information density in data storage devices by utilizing a high-efficiency encoding scheme
US6297753B1 (en) * 1999-01-29 2001-10-02 Victor Company Of Japan, Ltd. Eight-to-fifteen modulation using no merging bit and optical disc recording or reading systems based thereon
JP3551359B2 (ja) * 1999-05-25 2004-08-04 日本ビクター株式会社 変調装置、復調装置
DE19962971A1 (de) * 1999-12-24 2001-06-28 Bosch Gmbh Robert Verfahren zur Datenübertragung über ein Bussystem
KR100370223B1 (ko) * 2001-02-05 2003-02-05 삼성전자 주식회사 데이터 기록/재생 장치 및 그 방법과 데이터 부호화 방법
US6978414B2 (en) * 2001-07-17 2005-12-20 Hewlett-Packard Development Company, L.P. Method and apparatus for protecting against errors occurring in data storage device buffers
US6958873B2 (en) * 2001-07-31 2005-10-25 Hewlett-Packard Development Company, L.P. Data rewrite control in data transfer and storage apparatus
US7042667B2 (en) * 2001-07-31 2006-05-09 Hewlett-Packard Development Company, L.P. Data storage
US7116736B2 (en) * 2002-01-02 2006-10-03 International Business Machines Corporation Method, system, and program for synchronization and resynchronization of a data stream
US7751312B2 (en) * 2003-06-13 2010-07-06 International Business Machines Corporation System and method for packet switch cards re-synchronization
US6933865B1 (en) * 2004-01-29 2005-08-23 Seagate Technology Llc Method and apparatus for coded symbol stuffing in recording systems
KR20080019729A (ko) * 2004-04-02 2008-03-04 실버브룩 리서치 피티와이 리미티드 모놀리식 집적회로
US7839739B2 (en) * 2006-02-24 2010-11-23 Marvell World Trade Ltd. Circuits, architectures, apparatuses, systems, algorithms and methods and software for optimum power calibration for optical disc recording
CN101657991B (zh) * 2007-04-17 2013-05-22 皇家飞利浦电子股份有限公司 分组报头结构
WO2009038311A2 (en) * 2007-09-17 2009-03-26 Lg Electronics Inc. Data modulation method, modulator, recording method, and recording apparatus
JP5009418B2 (ja) * 2008-06-09 2012-08-22 パイオニア株式会社 検査行列の生成方法及び検査行列、並びに復号装置及び復号方法
US8259405B2 (en) * 2009-01-09 2012-09-04 International Business Machines Corporation Rewriting codeword objects to magnetic data tape upon detection of an error
US8395977B1 (en) 2010-06-30 2013-03-12 Marvell International Ltd. Method and apparatus for calibrating write strategy
US9015165B1 (en) * 2014-03-03 2015-04-21 Michael L. Hamm Text-SQL relational database
CN110417811B (zh) * 2019-08-22 2021-08-10 上海兆芯集成电路有限公司 比特流编码压缩的方法及装置
US11637685B2 (en) * 2021-08-31 2023-04-25 Samsung Display Co., Ltd. System and method for transition encoding with flexible word-size

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0642682B2 (ja) * 1982-09-17 1994-06-01 日本電気株式会社 誤り訂正多値符号化復号化装置
JPH0656958B2 (ja) * 1986-07-03 1994-07-27 キヤノン株式会社 情報デ−タ復元装置
JPH01221918A (ja) * 1988-03-01 1989-09-05 Canon Inc 可変長符号変換装置
US4899340A (en) * 1988-06-28 1990-02-06 Pacific Bell Error correcting code and error correcting circuit using the same
JPH02119434A (ja) * 1988-10-28 1990-05-07 Matsushita Electric Ind Co Ltd 符合化回路及び復合化回路
US5333126A (en) * 1990-01-03 1994-07-26 Hitachi, Ltd. Information recording method and optical disk apparatus using same
JPH0529951A (ja) * 1991-07-19 1993-02-05 Copal Co Ltd リシンクパターン発生方法とそれを用いた符号化回路装置
JP3083011B2 (ja) * 1992-12-28 2000-09-04 キヤノン株式会社 データ記録方法及び装置
JPH0917129A (ja) * 1995-06-30 1997-01-17 Fujitsu Ltd ライトデータの調整ビット決定方法、調整ビット決定回路、ライトデータ作成回路及びディスク装置
JPH09102747A (ja) * 1995-10-06 1997-04-15 Pioneer Electron Corp 情報データのrll符号化方法及び符号化装置

Also Published As

Publication number Publication date
JPH11317670A (ja) 1999-11-16
KR100393386B1 (ko) 2003-08-02
TW402848B (en) 2000-08-21
JP3141011B2 (ja) 2001-03-05
US5969649A (en) 1999-10-19

Similar Documents

Publication Publication Date Title
KR100393386B1 (ko) 로버스트 재동기를 가진 실행 길이 제한 인코딩/디코딩 방법 및 장치
JP3870573B2 (ja) 変調装置および方法、記録媒体、並びに復調装置および方法
JP3083011B2 (ja) データ記録方法及び装置
JP3280335B2 (ja) データ記録媒体及びデータ記録エンコーダ
EP0577402B1 (en) Synchronization signal detector, synchronization signal detecting method and demodulator
JPS6028455B2 (ja) デジタル情報処理装置
KR100633498B1 (ko) 데이터 스트림의 동기화 및 재동기화용 방법, 시스템 및 프로그램을 포함하는 기록매체
EP1431972A2 (en) Code modulating method and code modulating apparatus, demodulating method and demodulating apparatus, and information recording medium
JPH09162857A (ja) ディジタルデータの伝送方法
JP2004507018A (ja) 2次的情報信号のrllコードシーケンスへの付加及びrllコードシーケンスから2次的情報信号を取り出すための装置及び方法
EP1367582A1 (en) Modulation apparatus and method
EP0455267B1 (en) Data demodulation system
JPH11177433A (ja) 復調装置および方法、並びに提供媒体
KR100889149B1 (ko) 데이터 전송 방법, 블록 동기 신호 검출 방법 및 재생장치
JP4207073B2 (ja) 変調装置および方法、記録媒体、並びに復調装置および方法
JPH10511833A (ja) チャネル信号を情報信号に復号する装置及びこの装置を具える再生装置
JPH1049997A (ja) 記録媒体およびその記録装置ならびに再生装置
JP4155312B2 (ja) 変調装置および方法、記録媒体、並びに復調装置および方法
JPH0991885A (ja) 同期情報付加方法及び同期情報付加装置、並びに同期情報検出方法及び同期情報検出装置
KR100191945B1 (ko) 기록 매체 및 기록 매체상에서의 신호 기록 방법
JP2639378B2 (ja) 光ディスク媒体
CA2112452C (en) Enhanced data formats and machine operations for enabling error correction
JP2000068847A (ja) 変調装置および方法、復調装置および方法、並びに提供媒体
JPH05205402A (ja) 記録再生方法
JPS62232769A (ja) デイジタルデ−タ配列方式

Legal Events

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

Payment date: 20130627

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20140627

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20150625

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20160628

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20170628

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 16

EXPY Expiration of term