KR20010015164A - 데이터 부호화 장치 및 방법 - Google Patents

데이터 부호화 장치 및 방법 Download PDF

Info

Publication number
KR20010015164A
KR20010015164A KR1020000038081A KR20000038081A KR20010015164A KR 20010015164 A KR20010015164 A KR 20010015164A KR 1020000038081 A KR1020000038081 A KR 1020000038081A KR 20000038081 A KR20000038081 A KR 20000038081A KR 20010015164 A KR20010015164 A KR 20010015164A
Authority
KR
South Korea
Prior art keywords
bit
patterns
prohibited
words
code
Prior art date
Application number
KR1020000038081A
Other languages
English (en)
Other versions
KR100403946B1 (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 KR20010015164A publication Critical patent/KR20010015164A/ko
Application granted granted Critical
Publication of KR100403946B1 publication Critical patent/KR100403946B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/42Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory
    • 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
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/31Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining coding for error detection or correction and efficient use of the spectrum
    • 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
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/007Unequal error protection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/49Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
    • H04L25/4906Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes
    • H04L25/4908Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes using mBnB 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
    • G11B2020/14348 to 9 modulation
    • 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
    • G11B2020/144616 to 17 modulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

본 발명에 따른 데이터의 부호화 방법 및 장치는 연속된 m-비트 데이터어를 부호화하여 연속된 n-비트 코드어를 만들고, 이를 자기기록채널에 공급하는 것이다. 여기서, n>m이다. 각 m-비트 데이터어는 복수의 비트블록으로 분할되고, 그 블록들 중 적어도 하나가 블록 코딩 구성에 따라서 부호화되어 m-비트 데이터어로부터 유도된 결과비트시퀀스가 n-비트 시퀀스를 구성한다. 그 다음 적어도 한 번의 위반정정단계를 거쳐 n-비트 코드어가 만들어진다. 상기 하나 또는 각각의 위반정정단계는 상기 n-비트 시퀀스에 있어서 하나 또는 그 이상의 설정된 위치에서 복수의 금지비트패턴의 발생을 검출하고, 상기 검출된 금지비트패턴을 그 각각의 대체비트패턴으로 대체하도록 구성된다. 상기 블록 코딩 구성과 금지 및 대체비트패턴은 연속 n-비트 코드어에 있어서, 한가지 상태값(one value)에 대한 최대연속비트수가 제1설정값 j(j≥2)로 제한되고, 다른 상태값(other value)의 최대연속비트수는 제2설정값 k로 제한되도록 설정된다.

Description

데이터 부호화 장치 및 방법{DATA ENCODING METHOD AND APPARATUS}
본 발명은 데이터의 부호화 시스템에 관한 것으로, 더 상세하게는 MTR(maximum transition run)코드로 알려진 타입의 코드를 구현하는 데이터 부호화 장치 및 방법에 관한 것이다.
입력데이타비트가 부호화처리되어 채널비트로 매핑되는 것에 의하여, 채널 코드는 보통 기록채널로 공급되는 비트스트림(bit-stream)의 특성을 향상시킨다. 이런 코드의 부호율은 보통 m/n 으로 표시되어, 채널비트 n에 대한 데이터비트 m 의 비율로 나타내어 진다. MTR 코드는 자기 기록 채널에 공급되는 데이터의 특성을 향상시키는 특별한 타입의 채널코드로서, 상기 데이터는 자기 디스크 또는 테이프와 같은 자기기록매체상에 기록된다. MTR코드로 기록매체상의 자화패턴에서 발생할 수 있는 연속적인 천이(transitions)수는 "j"로 표시되는 특정 수로 제한된다. 따라서, NRZI(Non-Return-to-Zero-Inversion) 기록 형식(format)과 결합하여 사용될 때, MTR 코드는 채널비트의 시퀀스에 있어서 상태값'1'인 비트의 최대연속횟수를 제한한다. 이러한 j 구속장(constraint)은 데이터복구에 있어서 오류 감소라는 바람직한 결과를 낳는다. 더 구체적으로, 비트오류율은 거리 이득(distance gain), 즉 기록 패턴간의 최소 유클리드거리에 있어서의 증가를 제공하거나 최대빈도오류동작(the most likely error events)을 제거하는 것에 의해 개선될 수 있으며, 그결과 데이터복구측에 있어서 시퀀스 검출기내의 오류 가능성을 감소시킨다. 예를 들어, E2PR4와 같은 부분 응답 채널과 같은 최우시퀀스검출(maximum likelihood sequence detection)과 고차원 부분 응답 형성(higher-order partial response shaping)이 결합되어 사용될 때, j=2인 MTR 코드는 2.2dB의 거리이득을 전달할 수 있다. j=2인 MTR코드는 또한 기록친화적이어서, 사용자 데이타가 매우 높은 데이터율로 디스크에 기록될 수 있다. 따라서 고 부호율 MTR 코드의 설계는, 예를 들어 디스크드라이브에 사용된 고차원 부분 응답 채널을 위하여 특히 큰 관심이 모아지고 있다.
j 구속장 뿐만 아니라, MTR 코드는 또한 일반적으로 0의 최대연속수를 "k"로 제한하여 시간 복원 및 이득 제어를 돕는데, 이러한 코드는 보통 MTR (j,k) 코드로 표현된다. j=2인 MTR (j,k) 코드는 미국특허번호 5,859,601호에서 논의되었다. 부호율 6/7 인 MTR(2,8) 코드는 'IEEE Transactions on Magnetics, Vol. 33, No.5, September 1997, "Design of a Rate 6/7 Maximum Transition Run Code", Brickner and Moon'에서 제안되고 있다. 여기에서 이 코드는 시퀀스 검출기에 있어서 매우 긴 경로의 메모리를 요구한다는 문제점이 있음을 알 수 있다. 이러한 문제 코드는 비트열 1100의 계승을 포함하는 부호화된 비트-시퀀스를 포함하고, 이런 비트-시퀀스는 시퀀스 검출기에 있어서 유클리드 거리를 누적하지 않기 때문에 바람직하지 않으며, 그 결과 상기 부호화된 비트-시퀀스는 부정확하게 인식되기 쉽다. 이러한 재해로 인식될 정도의 오류동작에 대하여 "Turbo-EEPRML; An EEPR4 Channel with an Error-Correction Post-Processor Designed for 16/17 Rate Quasi-MTR code"라는 제목으로 1998년 11월에 GLOBECOM '98 회의에서 Hitachi社의 Takushi에 의해 발행된 논문에서, 비록 상세하게 구현되어있지는 않지만 j=3인 부호율 16/17 MTR 코드로 극복할 수 있다고 논의되었다. 그리고 비록 값비싼 룩업테이블에 의지하지 않고 코드를 구현하는 문제에 대하여 제시하고 있지는 않지만 부호율 16/19 MTR(2,7) 코드가 'IEEE Transactions on Magnetics, Vol. 32, No. 5, September 1996, "Maximum Transition Run Codes for Data Storage Systems", Brickner and Moon'에서 언급된다.
본 발명은 상술한 종래의 문제점을 해결하기 위하여 제안된 것으로, 본 발명의 목적은 연속된 m-비트 데이터어를 부호화하여 연속된 n-비트 코드어를 만들어 -여기에서, n>m- 자기기록채널로 공급하는 데이터어 부호화 방법 및 장치를 제공하는 것이다.
도 1은 구속장 j=2 MTR 코드의 유한 상태 천이도이다.
도 2는 부호율 16/19 MTR 코드를 위해 본 발명에 따라서 구현된 부호기의 블록도이다.
도 3은 본 발명에 따라 구현된 시스템에 있어서 도 2의 부호기를 사용하는 복호기의 블록도이다.
도 4는 구속장 j=3 MTR 코드의 유한상태 천이도이다.
도 5는 부호율 16/17 MTR 코드를 위하여 본 발명에 따라서 구현된 또 다른 부호기의 블록도이다.
도 6은 본 발명에 따라 구현된 시스템에 있어서 도 5의 부호기를 사용한 복호기의 블록도이다.
*도면의 주요 부분에 대한 부호의 설명*
5 : 부호율 6/7 블록부호기
6 : 부호율 6/7 2-상태 부호기
7 : 부호율 4/5 블록 부호기
8 : 좌측대체유니트(left subsititution unit)
9 : 우측대체유니트(right subsititution unit)
상술한 본 발명의 목적을 달성하기 위한 구성수단으로서,
상기 방법은
1) 각 m-비트 데이터어를 복수의 비트 블록으로 분할하는 단계,
2) 유한상태 코딩구성에 따라서, 상기 m-비트 데이터어로부터 유도된 결과비트시퀀스가 n-비트 시퀀스를 구성하도록 상기 비트 블록중 적어도 하나를 부호화하는 단계,
3) n-비트시퀀스에 있어서 하나 또는 그 이상의 미리 정해된 위치에서 복수의 금지비트패턴이 발생하는 것을 검출하고, 상기 검출된 금지비트패턴을 각각 대체비트패턴으로 대체하는 위반정정단계를 적어도 한번 실행함에 의하여 상기 n-비트 코드어를 만드는 단계를 포함하고,
상기 유한상태 코딩구성과, 상기 금지 및 대체 비트패턴은 상기 연속 n-비트 코드어에 있어서, 한가지 상태값(one value)의 최대연속비트수가 제1설정값 j로 제한되며 -여기에서, j≥2-, 다른 상태값(other value)의 최대연속비트수는 제2설정값 k로 제한되도록 설정된다.
본 발명은 상기와 같이, 입력데이타어를 복수의 블록으로 분할한 후, 그 블록중 적어도 하나를 유한상태 코딩구성(finite-state coding scheme)에 따라서 부호화한다. 다음에 상세하게 설명할 예에 명백하게 나타난 바와 같이, 여기에 적용된 유한 상태 부호는 블록 부호이며, 이 블록 부호는 블록 부호가 단일상태부호(a one-state code)인 유한상태부호의 특별한 경우이다. 하나 이상의 블록이 부호화될 때, 다른 유한상태 부호들이 다른 블록들을 위해 사용될 수 있다.
본 발명의 일실시예에 있어서, 금지 및 대체 비트 패턴은 준재해적(quasi-catastrophic)인 오류 전파를 피할 수 있도록 정의된다. 이는 상기 연속된 n-비트 코드어에 있어서, 4-비트 주기를 갖는 어떤 주기적인 비트-스트링에 있어서의 최대 비트수에 구속장을 부과함에 의하여 달성될 수 있고, 이는 상기 다른 상태값의 두 연속비트에 의해 후속되는 상기 한가지 상태값의 두 연속비트의 시퀀스이고, 제3설정값 q로 제한된다. 그래서, 시퀀스검출에 있어서 거리를 누적하지 않는 상기 부호화된 비트-시퀀스의 최대길이는 q로 제한되고, 이는 시퀀스 검출기에 있어서 메모리의 경로 길이를 적절히 제한한다.
인식된 바와 같이, "1"은 자기변환을 하고 "0"은 변환하지 않는 NRZI 기록형식에 따른 일실시예에 있어서, 상기 한 상태값의 비트들은 상태값 "1"인 비트들이며, j와 k는 각각 1과 0의 최대 연속 길이를 나타낸다.
본 발명의 바람직한 실시예는 매우 높은 부호율의 MTR 코드를 효율적으로 구현할 수 있다. 예를 들어, 부호율 16/19 코드와 부호율 16/17 코드는 본 발명과 관련된 분야의 사람들이 여기에 기술된 기술에 근거하여 설계할 수 있을 정도로 다음에 상세하게 기술한다.
본 발명을 구현한 방법에 대하여 그 특징이 인식될 수 있도록 기술되고, 마찬가지로 본 발명을 구현한 장치에 따라서 상응하는 특징들이 제공된다. 특히, 본 발명의 다른 관점에 따르면 연속된 m-비트 데이터어를 부호화하여 연속 n-비트 코드어를 만들고 -여기에서 n>m- 상기 n-비트코드어는 자기기록채널로 공급하는 장치가 제공된다.
이 장치는
1) 각 m-비트 데이터어를 복수의 비트 블록으로 분할하는 분할 수단,
2) 유한상태 코딩구성(finit state coding scheme)에 따라서 상기 m-비트의 데이터어로부터 유도된 결과비트시퀀스가 n-비트시퀀스를 구성하도록 상기 분할된 비트 블록중 적어도 하나를 부호화하는 부호화 수단, 및
3) 상기 n-비트 시퀀스에 있어서 하나 또는 그 이상의 미리 정해진 위치에서 복수의 금지비트패턴이 발생하는 것을 검출하고, 상기 검출된 금지비트패턴을 각각의 대체비트패턴으로 대체하는 위반정정과정을 적어도 한번 실행함에 의하여 상기 n-비트 코드어를 만드는 위반정정수단을 포함하고,
상기 유한상태 코딩구성과, 상기 금지 및 대체 비트패턴은 연속된 상기 n-비트 코드어에 있어서, 한가지 상태값의 최대 연속 비트수가 제1설정값 j로 제한되며(여기서, j≥2), 다른 상태값의 최대 연속비트수는 제2설정값 k로 제한되도록 설정된다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명한다.
도 1은 구속장 j=2 MTR을 만족하는 모든 비트 시퀀스를 만드는 3-상태 우향 분해 유한상태천이도(3-state right-resolving finite state transition diagram(FSTD))를 보인다. 모든 가능한 우향 분해 표시의 최소 상태를 갖는다는 점에서 상기 FSTD는 j=2에서 유일하게 최소상태수를 갖는다. 이런 FSTD는 "샤논커버(Shannon cover)"로 본 기술분야에서 알려져 있다. 그리고 도 1은 j=2인 샤논커버를 보인 것이다. 비트 시퀀스는 상기 샤논커버에서, 1, 2, 3으로 표시된 상태중 임의 한곳에서 시작하여 화살표를 따라 천이를 실행함에 의하여 만들어질 수 있으며, 상기 화살표가 실선인 경우는 비트 값 "0"이고, 점선인 경우에는 비트값 "1"을 나타낸다.
이 다이아그램을 살펴보면 구속장 j=2로서 발생될 수 있는 모든 비트 시퀀스는 연속되는 "1"의 최대비트수는 2를 갖는다는 것을 알 수 있다. 본 발명의 첫 번째 실시예에 의하여 구현된 코드에 대한 설명은 이 다이아그램을 참조하여 이루어질 것이다.
MTR 코드를 사용하는 디스크 드라이브와 같은 일반적인 데이터 저장 시스템에 있어서, 기록채널에 적용될 부호화된 비트 시퀀스를 만들기 위하여 입력데이타를 MTR 코드에 따라서 부호화한다. 상기 기록채널은 일반적으로 유리계수(rational coefficients)를 갖는 부분 응답 채널이다. 기록측면에서, 이런 시스템의 주요 구성요소는 리드-솔로몬(Reed-Solomon) 부호기, MTR 부호기, 프리코더(precoder), 그리고 아날로그 기록 파형을 기록매체상에 기록하기 위하여 자기헤드에 사용되는 기록-전치보상(write-precompensation)회로가 된다. 데이터 복구측면에서, 전치증폭, 자동 이득 조절, 저역통과필터링, 그리고 샘플링과 부분응답 균등화 후에, 상기 샘플링된 스트림(stream)은 비터비(Viterbi) 복호기와 같은 시퀀스 검출기로 공급되어, 부정확한 시퀀스 검출에 있어서의 오류결과에 기인한 일부 불법 코드어를 포함할 수 있는 부호화된 비트-스트림이 추정된다. 반대로 프리코딩한 후에, 추정된 코드어 시퀀스는 원래의 데이터로 복구하기 위하여 MTR 복호기로 공급되고, 그 결과 어떤 오류라도 리드-솔로몬(Reed-Solomon) 복호기에 의하여 정정된다.
도 2는 데이터 저장 시스템에서 이용될 수 있는 MTR 부호기(4)로서 첫 번째 실시예에 따른 부호기를 도시한 블록도이다. 이 실시예에서는 MTR(j,k/q)의 형식에 있어서, MTR(2,9/14) 코드로 표현되는, j=2, k=9, q=14 인 부호율 16/17의 MTR 코드를 구현한다. 설명된 바와 같이, 상기 MTR 부호기(4)는 유한상태 코딩구조(finite-state coding scheme)를 구성하는 세 개의 입력 부호기(5,6,7)의 형태로 된 부호화 수단을 구현한다. 상기 제1부호기(5)는 일반적으로 표시된 6-비트 데이터입력(5a)과 7-비트 데이터출력(5b)을 갖는 부호율 6/7 블록 부호기이다. 상기 제2부호기(6)는 6-비트 데이터입력(6a)과 7-비트 데이타출력(6b)을 갖는 부호율 6/7 2-상태 부호기이다. 제1부호기(5)의 출력(5b)의 마지막 비트-라인은, 이후에 설명되는 바와 같이, 상태 S를 세트하도록 2-상태 부호기(6)의 1-비트 입력(6c)에 연결된다. 제3부호기(7)는 4-비트 데이터입력(7a)과 5-비트 출력(7b)을 갖는 부호율 4/5 블록부호기이다. 상기 장치는 좌측대체유니트(left substitution unit)(8)와 우측대체유니트(right substitution unit)(9)의 형태로 된 위반정정수단을 더 포함한다. 상기 제1부호기 출력(5b)의 우측 4개의 비트-라인과, 상기 제2부호기 출력(6b)의 좌측 3개의 비트-라인은 도시된 바와 같이 상기 좌측대체유니트(8)의 입력을 형성한다. 상기 제2부호기 출력(6b)의 우측 4개의 비트-라인과, 제3부호기 출력(7b)의 5개의 비트-라인은 우측대체유니트(9)의 입력을 형성한다. 상기 제1부호기 출력(5b)의 좌측 3개의 비트-라인과 함께, 상기 좌측대체유니트(8)의 7-비트 출력(8b)과 우측대체유니트(9)의 9-비트 출력(9b)은 상기 장치의 19-비트 출력을 형성한다.
MTR 부호기(4)를 사용하는 기록 시스템의 운용에 있어서, 초기에 직렬 리드-솔로몬(Reed-Solomon) 부호화된 비트-스트림의 형태로 된 기록될 데이터는, 직렬-병렬 변환기(미도시)에 의하여 16-비트 병렬형태로 변환된다. 그리고 나서, 상기 변환된 16-비트 데이터어는 MTR 부호기(4)에 연속적으로 공급되어 부호화된다. 구체적으로 말해서, 각 데이터어의 상기 16 비트는 상기 부호기 입력(5a, 6a, 7a)의 16 비트-라인으로 공급되고, 그리하여 입력어는 각각 6, 6, 4 비트의 세 블록으로 분할된다. 상기 부호기(5,6,7)은 다음에 상세하게 설명될 각각의 코딩구성(coding scheme)에 따라서 입력 블록을 부호화한다. 그 결과, 상기 입력블록은 부호화되어 출력(5b, 6b, 7b)상에 각각 제1,제2,제3 서브코드어(subcode words)로 만들어지고, 그 결과 상기 원래의 16-비트 데이터어는 17-비트 시퀀스로 변환된다. 좌,우측대체유니트(8,9)는 각각 입력된 비트 시퀀스에 있어서 금지비트패턴을 검출하여 부호구속(the coding constraints)의 위반을 체크하고, 각 금지비트패턴을 대체 비트패턴으로 대체한다. 이에 대해서는 이후에 더 상세하게 설명한다. 상기와 같은 위반 정정 단계후 입력데이타어에 대한 19-비트 코드어가 본 장치(4)의 출력을 이루는 19 비트-라인상에 나타난다.
상기 부호기(5)로 구현된 부호율 6/7 블록 부호는 다음과 같이 구성된다. 도 1을 참조하면, 57개의 잠재적(potential) 7-비트 서브코드어는 샤논커버(Shannon cover)의 상태 2에서 시작하여 상태 1 또는 2에서 끝나는 7번의 천이를 실행하여 만들어질 수 있다. 상기 집합(set)에 있어서 상기 57개의 워드는 구속장 j=2를 만족하는 시퀀스를 획득하도록 자유로이 연결될 수 있다. 그리고 나서 상기 워드 집합에 도 1에 있어서 상태 2에서 시작하여 상태 3으로 끝남에 의하여 만들어진 11개의 7-비트 워드가 추가된다. 상기 11개의 워드의 처음 두 비트는 00 또는 01 또는 10 중 하나이고, 마지막 세 비트는 항상 011이다. 이 11개의 워드들은 16진수로 03, 0B, 13, 23, 43, 1B, 2B, 4B, 33, 53, 5B이다. 이것은 총 68개의 잠재적 서브코드어를 제공한다. 즉 부호율 6/7 코드를 구성하기 위하여 4개 이상이 요구된다. 상기 워드 00, 01, 4C, 33을 버려 64개의 서브코드어의 마지막 집합을 얻는다. 그러므로, 상기 부호기(5)에 있어서, 각 6-비트 입력 블록은 7-비트 서브코드어에 매핑된다. 상기 부호기에서 정의된 바와 같이 서브코드어에서 입력블록의 특정한 매핑은 설계적인 선택의 문제이고, 본 시스템의 동작에 결정적인 것은 아니다.
상기 부호기(6)는 부호기(5)로부터의 제1서브코드어의 마지막 비트가 부호기(6)의 현재 상태 S를 결정하는 부호율 6/7 2-상태 코드를 구현한다. 이 코드는 다음과 같이 구현된다. 62개의 상태-독립(state-independent) 서브코드어는 상기 기술된 68개의 워드의 동일한 초기리스트로부터 6개의 워드 00, 4C, 33, 19, 56, 06을 버림에 의하여 획득된다. 바람직하게, 이들 62개의 상태-독립 서브코드어로 할당된 상기 62개의 6-비트 입력블록이 선택되어, 부호기의 로직구현이 최대한 간략해진다. 다시 말해서, 상기 서브코드어에 대한 데이터블록의 특정한 일대일 매핑은 설계상의 문제이다. 상기 두 개의 남겨진 입력블록중 한 출력은 S=0이면 서브코드어 56으로 매핑되고, S=1이면 서브코드어 33으로 매핑된다. 그리고, 상기 마지막 입력블록은 S=0이면 서브코드어 4C로 매핑되고, S=1이면 서브코드어 06으로 매핑된다.
상기 제3부호기(7)에 의해서 구현된 부호율 4/5 블록 부호는 다음과 같이 구축된다. 총 17개의 잠재적 서브코드어가 도 1의 샤논커버에 있어서 상태2에서 시작하여 상태 1 또는 상태 2로 끝나는 5번의 천이를 실행하여 만들어진다. 상기 서브코드어는 00, 01, 02, 04, 05, 06, 08, 09, 0A, 0C, 0D, 10, 11, 12, 14, 15, 그리고 16이다. 이중 00이 제거되어, 부호율 4/5 코드를 위한 17개의 서브코드어가 획득된다. 상기 부호율 4/5 블록 부호는 또한 앞서 참조된 Brickner와 Moon에 의한 1997년 9월의 논문에서 공개되었다.
상기 첫 번째 부호율 6/7 코드의 어떤 서브코드어라도 11로 시작할 수 없고, 부호율 4/5 코드의 어떤 서브코드라도 11로 끝날 수 없다. 그래서, 상기 19-비트 코드어의 경계에 있어서 구속장 j=2의 위반은 가능하지 않다. 그러나, 부호기(5),(6)에 의한 두 7-비트 서브코드어 출력 사이의 경계에서, 또는 부호기(6)의 7-비트 서브코드어와 부호기(7)의 5-비트 출력사이의 경계에서 위반이 발생할 수 있다. 이것은 다음과 같이 상기 대체유니트(8,9)에 의하여 구현된 위반 정정 단계에서 처리된다.
상기 좌측대체유니트(8)에서 대체되는 상기 금지비트패턴과 대체패턴은 아래의 표 1로 정의되는데, 여기에서 부호기(5,6,7)에 의한 상기 19-비트 시퀀스 출력은 y1, y2, y3,...,y18, y19로 표현된다.
유사하게, 상기 우측대체유니트(9)에서 대체되는 금지비트패턴과 대체비트패턴은 다음의 표 2로 정의된다.
상기 표에서, 좌측열에 있어서 진하게 표시된 패턴에 의해서 대체가 이루어져야 될지의 여부가 결정된다.
각 대체유니트(8,9)가 금지비트패턴을 검출하여 대체한 결과, 서브코드어 경계에 존재하는 j 구속장의 위반이 수정된다. 또한, 상기 대체는 k와 q를 각각 9와 14로 감소시키고, 그 결과 시퀀스 검출기에서 요구되는 경로 메모리(the path memory)가 짧아지고, 시간 복원 및 이득제어가 촉진된다.
그래서, 상기 MTR 부호기(4)는 고부호율에 더하여, 효율이 높은 부호율 16/19 MTR(2,9/14) 코드를 구현한다. 상기 코드의 효율은 부호율 대 용량(최대 가능 부호율)의 비로 정의된다. 상기 본 부호화 억제(restraints)와 관련된 용량이 0.877210일때, 본 코드의 효율은 95.99%가 된다. 본 부호화 장치 및 다음에 설명될 대응하는 복호화장치에 있어서, 상기 분할된 블록 구조가 더욱 간단하게 구현된다. 상기 부호화 및 복호화 장치는 오직 369 바이너리 입력 로직게이트로 구현된다. 부차적인 예로서, MTR 부호기(4)를 위하여 특히 더 바람직한 불린(Boolean) 로직 설계를 이 설명의 마지막부분에서 충분히 설명한다. 거리를 누적하지 않은 상기 부호화된 시퀀스의 최대길이는 q=14로 제한되어, 준재해적인 오류 전파를 막을 수 있다. 상기 기록 시스템에서 요구되는 자석(magnet)의 최대길이는 k+1=10이고, 이것은 기록 채널에 있어서의 역 프리코더(inverse precoder)의 출력에서 7비트, 8비트 및 26 비트로 측정된 어떤 오류버스트가 상기 MTR 복호기의 출력 즉, 리드-솔로몬(Reed-Solomon) 복호기의 입력에서 각각 2,3 및 4 바이트에 악영향을 미친다는 것을 보여준다.
도 3은 상술한 MTR 부호기(4)를 사용한 시스템을 위한 MTR 복호기(11)의 형태로 된 복호화 장치의 실시예를 보인 것이다. 상기 MTR 복호기(11)의 동작은 전술한 MTR 부호기의 상세한 설명으로부터 이 분야의 전문가라면 명백하게 알 수 있다. 그러므로, 간략하게 설명하면, 상기 MTR 복호기(11)는 각각 입력(12a,13a)과 출력(12b,13b)를 갖는 좌,우측역대체유니트(left and right inverse substitution units)(12,13)를 구비한다. 상기 출력(12b,13b)의 비트-라인은 도시된 바와 같이 제1,2 부호율 6/7 블록 복호기(14,15)와, 부호율 4/5 블록 복호기(16)의 형태로 된 복호화수단에 연결된다. 상기 입력 19-비트 코드어의 첫 번째 세 비트는 도시된 바와 같이 복호기(14)로 공급되고, 상기 코드어의 마지막 두 비트는 복호기(16)으로 공급된다. 상기 좌측역대체유니트(12)는 표 1의 우측에 보인 비트패턴을 검출하여, 상기 표 1의 좌측에 보인 비트패턴으로 대체한다. 유사하게, 우측역대체유니트(13)는 표 2의 우측에 보인 비트패턴을 검출하여 표 2의 좌측에 보인 비트패턴으로 대체한다. 상기 표들의 우측열에 있어서 진하게 표시된 패턴으로 대체여부를 결정할 수 있다. 상기 복호기(14,15,16)는 각각 부호기(5,6,7)에 의해 실행된 것의 역매핑을 실행하고, 상기 복호기(14,15,16)의 출력(14b, 15b, 16b)들은 원래의 16-비트 데이터어를 출력하는 16개의 비트-라인을 구비한다. 먼저 언급한 바와 같이, 상기 MTR 복호기(11)로의 17-비트 입력이 불법코드어일 경우가 발생될 것이다. 이 경우, 상기 MTR 복호기 출력은 가급적 부호기 로직을 간략화하도록 선택된다. 부차적인 예로서, MTR 복호기(11)를 위하여 특히 더 바람직한 불린 로직 설계를 이 설명의 마지막에 구체적으로 기술한다.
이제, 본 발명의 제2실시예를 도 4 내지 도 6을 참조하여 설명한다. 도 4는 MTR j=3 구속장을 위한 샤논커버(Shannon cover)를 나타낸 것으로, 이 다이아그램으로부터 발생된 어떤 시퀀스라도 3개 이상의 연속된 1을 가지지 않는다. 도 5에 보인 부호화 장치의 동작을 설명하는데 있어 상기 다이아그램을 참조한다.
도 5는 상기 부호화된 출력에 있어서 1의 최대연속수가 4개인 부호율 16/17 MTR 코드를 구현하는 MTR 부호기(20)의 형태로 된 부호화 장치를 도시한 블록도이다. 그러나, 부호화된 비트-시퀀스에 있어서 최대 천이 실행(maximum transition run)이 일어날 수 있는 위치는 제한되며, 모든 다른 위치에서 연속된 1의 최대 비트수는 3이다. 더 구체적으로 설명하면, 상기 코드는 4개의 연속된 '1'의 실행이 코드어 경계, 즉 비트위치 y16,y17,y1,y2에서 뿐만 아니라, 비트위치 y8,y9,y10,y11에서 발생될 수 있도록 구축된다. 그래서, 상기 가능한 17개의 위치중, 두 개의 위치에서는 j=4 이고, 나머지 15개 위치에서는 j=3 이다. 이 코드는 주기 l=17인 MTR(3/4(2))로 표시되어 17개의 가능한 위치중 j=4인 2개를 제외한 15개의 위치에서는 j=3이고, 4개 연속된 1의 최대천이실행은 주기 l=17 마다 일어날 수 있음을 의미한다. 이 구속장 j에 더하여, 상기 장치(20)에 의하여 구현된 상기 코드는 추가된 구속장 k=14 그리고 q=22를 만족한다.
도시된 바와 같이, 상기 MTR 부호기(20)는 8-비트 입력(21a)과 9-비트 출력(21b)을 갖는 부호율 8/9 블록 부호기(21)의 형태로 유한상태 부호화수단을 구성한다. 상기 장치는 사용된 입력 16-비트 코드어의 처음과 마지막 4비트를 각각 수신하는 부호 (22),(23)으로 표시된 두 개의 4-비트 입력을 더 구비한다. 상기 실시예에 있어서 위반 정정 수단은 부호 (24)로 표시되고, 위반 정정의 세 단계를 수행한다. 그 첫 번째 단계는 입력(22)의 4 비트-라인과, 상기 부호기출력(21b)의 9 비트-라인과, 입력(23)의 4 비트-라인으로 구성되는 17-비트 병렬입력(25a)을 구비한 제1대체유니트(25)에 의하여 구현된다. 상기 제1대체유니트(25)는 부호 (25b)로 표시되는 17-비트 출력을 갖는다. 그리고 두 번째 위반정정단계는 제2좌측대체유니트(26)와 제2우측대체유니트(27)에 의해 이루어진다. 상기 제1대체유니트(25)의 출력(25b) 중 처음 8개의 비트-라인은 제2좌측대체유니트(26)의 입력을 형성하고, 출력(25b)의 마지막 8개의 비트-라인은 상기 제2우측대체유니트(27)의 입력을 형성한다. 그리하여, 상기 출력(25b)의 다른 비트-라인 그룹들로의 연결은 17-비트 시퀀스를 각각 8, 1, 8 비트의 세 블록으로 분할하며, 이중 8-비트 블록은 도시된 바와 같이 상기 제2좌,우측대체유니트(26,27)로 공급된다. 상기 좌,우측대체유니트(26, 27)는 상기 제1대체유니트출력(25b)의 9번째 비트-라인과 함께 상기 제3위반 정정 단계로의 17-비트 입력을 형성하는 출력(26b, 27b)을 각각 갖는다. 이 세 번째 단계는 본 부호화 장치의 출력을 형성하는 17-비트 출력(28b)을 갖는 제3대체유니트(28)에 의하여 구현된다.
동작에 있어서, 상기 직렬-병렬 변환기(도시되지 않음)로부터의 상기 16-비트 데이터어는 상기 입력(22, 21a, 23)의 16개 비트-라인으로 공급되어, 입력어가 각각 4비트, 8비트, 4비트의 세블록으로 분할된다. 상기 부호기(21)는 그 출력(21b)상의 9-비트 서브코드어를 만들기 위하여 이하에 기술된 바와 같은 코딩 구성에 따라서 상기 8-비트 입력 블록을 부호화한다. 그리하여 상기 입력 16-비트 데이터어로부터 유도되어 상기 제1대체유니트의 입력(25b)로 공급되는 결과 비트-시퀀스는 17-비트 시퀀스가 된다. 부호화 구속장의 위반은 이하 설명된 바와 같은 위반정정의 세단계를 통해서 검출되고 정정되어, 입력데이타어를 위한 17-비트 코드어가 출력(28b)상에 나타난다.
상기 부호기(21)에 의하여 구현된 부호율 8/9 코드는 아래와 같이 구현된다. 도 4에서, 다이아그램의 상태 3에서 출발하여 상태 1 또는 2에서 끝나는 9번의 천이를 실행함에 의하여 249개의 서브코드어가 획득된다. 이 249개의 워드 집합에 11로 시작하거나 끝나지 않으며 그 중간에 패턴 011110을 갖는 6개의 9-비트 서브코드어가 추가된다. 이 워드들은 16진수로 표현하면 03C, OBC, 13C, 03D, 0BD, 13D이다. 상기 마지막 서브코드어는 1EF 즉, 111101111 로 선택된다. 도 5에서 부호기 출력(21b)상에 각 9-비트 서브코드어가 선행하고, 입력(25a)에서 네 개의 비부호화된 비트가 뒤따라 제1대체유니트로 입력되므로, 정확하게 그 중앙, 즉 비트위치 y5~ y13에 9-비트 서브코드어 1EF를 갖는 256개의 17-비트 시퀀스가 존재한다. 이 모든 시퀀스들은 제1대체유니트(25)에 의해서 금지된 비트 시퀀스로서 검출되어 각각 아래의 표 3에 따른 대체 비트 패턴으로 대체된다. 다시 말해서, 아래의 표 3에 있어서, 진한 패턴으로 대체 또는 역대체를 수행할 지 여부를 결정할 수 있다.
상기 제1대체유니트(25)에 의한 17-비트 시퀀스 출력의 처음 8 비트들은 제2좌측대체유니트(26)에 의해 수신되고, 다음의 표 4에 따라서 금지비트패턴이 검출되고 대체된다.
상기 제1대체유니트(25)로부터 출력된 17-비트 시퀀스중 마지막 8개의 비트들은 제2우측대체유니트(27)로 수신되어, 다음의 표 5에 따라서 금지된 비트패턴이 검출되고 대체된다. 다음의 표 5는 상기 표 4의 미러이미지(mirror image)이다.
상기 제2위반정정단계 이후에, 제3대체유니트(28)가 아래의 표 6에 따라서 그 17-비트 입력중 금지비트패턴을 검출하여 대체시킨다.
어떤 금지비트패턴이 상기 제3위반정정단계를 통하여 검출되어 대체된 후, j 구속장의 위반은 정정된다. 더하여, 상기 대체는 k와 q를 각각 11과 22로 감소시켜, 메모리의 경로를 줄이고, 시간복원 및 이득제어를 촉진시킨다.
따라서, 상기 MTR 부호기(20)는 고효율 뿐만아니라, 고부호율을 갖는 주기 l=17인 부호율 16/17 MTR(3/4(2), 14/22) 코드를 구현한다. 주기 l=17인 구속장 j=3/4(2)를 위한 용량은 0.950352이다. 이 값은 j=3/4(2)이고 주기 l=17, k=14, q=22를 만족하는 상기 구속된(constrained) 시스템의 용량에 대한 상위한계를 나타내며, 본 코드의 효율 연산시 사용될 수 있다. 그래서 상기 효율의 하위한계는 99.03%이다. 상기 분할된 블록 구조는 부호화 장치와 지금부터 설명할 상기에 대응되는 복호화장치가 더욱 간략하게 구현될 수 있게 한다. 상기 부호화 및 복호화 장치는 오직 713개의 2진 입력 로직게이트로 구현될 수 있다. 그 외 부차적인 예로서, 이 설명의 마지막 부분에서 상기 MTR 부호기(20)를 위한 바람직한 불린 로직 설계(Boolean logic design)를 기술한다. 상기 거리를 누적하지 않은 부호화된 시퀀스의 최대길이는 q=22로 제한되고, 그 결과 준재해적인 오류전파가 방지된다. 상기 기록 시스템에서 요구되는 자기의 최대길이는 k+1=15 이고, 상기 역프리코더의 출력에서 18 비트로 대략 측정된 오류 버스트(burst)는 MTR 복호기의 출력에서 최대 4 바이트에 악영향을 미친다.
도 6은 도 5의 MTR 부호기(20)를 사용한 시스템을 위한 MTR 복호기(30)로 된 복호화장치의 실시예를 도시한다. 다시 말해서, 본 기술분야의 전문가가 상기 복호화장치의 동작을 전술한 부호화과정의 상세한 설명으로부터 분명하게 이해할 수 있다. 따라서 간략하게 설명하면, 상기 복호화장치(30)는 상기 부호화장치의 3개의 위반정정단계에 대응하는 3개의 역 대체(inverse sustitute) 단계로 구성된다. 상기 제3역대체유니트(31)는 17-비트 입력(31a)과 도시된 바와 같이 각각 8, 1, 8 비트-라인의 그룹으로 분할된 17-비트 출력(31b)을 구비한다. 이 역대체유니트는 표 6의 우측편에 도시된 비트패턴을 검출하여 이 표의 좌측편에 도시된 패턴으로 대체한다. 상기 역대체의 두 번째 단계는 각각 8-비트 출력(32b, 33b)를 갖는 제2좌,우측역대체유니트(32,33)에 의하여 구현된다. 상기 유니트(32)는 표4의 우측편상에 도시된 비트패턴을 검출하여 상기 표 4의 좌측편에 도시된 패턴으로 대체한다. 유사하게, 상기 유니트(33)은 표 5에 정의된 역대체를 수행한다. 상기 출력(32b, 33b)은 상기 제3역대체유니트의 출력(31b)의 중앙비트 라인과 함께 마지막 역대체 단계로 입력된다. 이는 표 3에 정의된 역 대체를 수행하는 제1역대체유니트(34)에 의하여 구현된다. 상기 유니트(34)의 17-비트출력(34b)는 도시된 바와 같이, 각각 4, 9, 4 비트-라인의 그룹들로 분할된다. 상기 9비트-라인의 그룹은 상기 도 5에서 블록 부호기(21)에 의해 수행된 것들을 위한 역매핑을 수행하는 코드율 8/9 블록 복호기(35)로의 입력을 형성한다. 상기 블록 복호기의 8-비트 출력(35b)은 상기 제1역대체유니트(34)로부터의 두 그룹의 4 비트-라인과 함께 원래의 16-비트 데이터어가 출력되는 장치의 16-비트 출력을 형성한다. 예전처럼, 상기 불법 입력코드어의 경우에 있어서 MTR 복호기 출력은 가능한만큼 상기 복호기를 간략화하도록 선택된다. 부가적인 예로서, 상기 MTR 복호기(30)을 위한 바람직한 불린 로직 설계(Boolean logic design)를 아래와 같이 기술한다.
MTR 부호기(4)와 MTR 복호기(11)를 위한 불린 로직 설계
이 부분에서는 상술한 코드율 16/19 MTR(2,9/14)의 부호기(4)와 복호기(11)를 위한 고효율 불린(Boolean) 구현을 설명한다. 상기 부호기와 복호기는 총 369 2진-입력 로직 게이트들로 구현될 수 있다. 아래 설명에 있어서, 연산기호 ~, &, | 는 각각 불린 연산 NOT, AND 및 OR의 약자이다. 상기 부호기 로직에 있어서, x(1)에서 x(16)은 도 2의 좌측에서 우측으로 MTR 부호기 입력(즉, 5a, 6a, 7a)의 16개 비트-라인으로 공급되는 상기 16 비트를 나타내고, k1은 상기 입력(6c)의 1-비트를 나타낸다. 그리고, y(1)에서 y(19)는 도 2에 있어서 MTR 부호기 출력의 16개 비트라인을 좌측에서 우측방향으로 나타낸다. 상기 복호기 로직에 있어서, y(1)에서 y(19)는 도 3의 열아홉개 비트의 입력어를 좌측에서 우측방향으로 나타내고, yy(1)에서 yy(19)는 도면의 좌측에서 우측방향으로 복호기(14~16)로의 열아홉개 입력비트를 나타내고, z(1)에서 z(16)은 마찬가지로 좌측에서 우측방향으로 MTR 복호기의 열여섯개 출력비트를 나타낸다.
부호기 로직:
복호기 로직:
MTR 부호기(20)와 MTR 복호기(30)를 위한 불린 로직 설계
이 부분에서는 상기 언급된 코드율 16/17 MTR(3/4(2), 14/22) 코드의 부호기(20)와 복호기(30)을 위한 고효율 불린 구현을 설명한다. 상기 부호기와 복호기는 총 713개의 2진-입력 로직게이트로 구현될 수 있다. 한편 아래 설명에 있어서, 연산기호 ~, &, | 는 각각 불린 연산 NOT, AND 및 OR의 약자이다. 부호기 로직에 있어서, x(1)에서 x(16)은 도 5에 있어서 좌측에서 우측방향으로 MTR 부호기 입력(즉, 22, 21a, 23)의 열여섯개 비트-라인으로 공급되는 열여섯개 비트를 나타내고, a1에서 a17은 도 5에서 상기 제1대체유니트의 출력(25b)의 열일곱개의 비트를 좌측에서 우측방향으로 나타낸다. 그리고, y(1)에서 y(17)은 상기 MTR 부호기 출력(28b)의 17개 비트들을 도 5의 좌측에서 우측방향으로 나타낸다. 복호기 로직에 있어서, y(1)에서 y(17)은 도 6에 있어서 입력어의 열입곱개 비트를 좌측에서 우측방향으로 나타내고, d1에서 d17은 상기 제3역대체유니트 출력(31b)의 17개 비트를 좌측에서 우측방향으로 나타내고, e1에서 e17은 상기 제1역대체유니트(34)의 16개 입력비트들을 좌측에서 우측방향을 나타내고, f1에서 f17은 제1역대체유니트(34)의 17개 출력비트를 좌측에서 우측방향을 나타내고, z(1)에서 z(16)은 상기 MTR 복호기의 16개 출력비트를 좌측에서 우측방향으로 나타낸다.
부호기 로직:
복호기 로직:
본 발명의 실시예가 상술한 바와 같이 기술되었으나, 본 발명의 범위를 벗어나지 않는 범위에서 상기 실시예는 다양한 변경 및 수정이 가능하다.
그러므로, 본 발명의 일실시예에 의한 MTR 코드는 j, k 구속장을 만족하도록 입력데이타를 분할하여 부호화와 위반정정단계를 적용하는 방법에 관한 것으로, 상기 분할된 블록 구현으로 부호기를 매우 간략화시킴과 동시에, 높은 부호율코드를 허용하는 매우 효과적인 방법으로 MTR 코드가 얻어진다는 잇점이 생긴다. 또한, 본 발명에 따른 부호화 방법은 대규모의 룩업테이블이 필요없고 상대적으로 작은 로직게이트로 구현될 수 있어, 보다 저렴하고 효율적인 부호화/복호화 시스템을 제공할 수 있다.

Claims (20)

  1. 연속된 복수의 m-비트 데이터어(a succession of m-bit data words)를 부호화하여 연속된 복수의 n-비트 코드어(a succession of n-bit code words)를 만들어 - 여기서, n>m - 자기기록채널에 공급하기 위한 데이터 부호화 방법에 있어서,
    1) 각 m-비트 데이터어(m-bit data words)를 복수의 비트 블록(a plurality of blocks of bits)으로 분할하는 단계,
    2) 유한상태 코딩구성(finite-state coding scheme)에 따라서 상기 m-비트 데이터어로부터 유도된 결과비트 시퀀스(resulting bit sequence)가 n-비트 시퀀스를 갖도록 상기 비트블록중 적어도 하나를 부호화하는 단계, 및
    3) 상기 n-비트 시퀀스에 있어서 하나 또는 그 이상의 미리 정해진 위치에서 복수의 금지비트패턴이 발생하는 것을 검출하고, 상기 검출된 금지비트패턴을 각각의 대체비트패턴으로 대체하는 위반정정과정을 적어도 한번 실행함에 의하여 상기 n-비트 코드어를 만드는 단계
    를 포함하고,
    상기 유한상태 코딩구성과, 금지 및 대체 비트 패턴은 상기 연속된 복수의 n-비트 코드어에 있어서, 한 상태값(one value)의 최대 연속 비트수는 제1 설정값 j로 제한되고 - 여기서, j≥2 - 다른 상태값(other value)의 최대연속비트수는 제2 설정값 k로 제한되도록 설정되는
    데이터 부호화 방법.
  2. 제 1 항에 있어서, 상기 금지 및 대체 비트 패턴은 연속된 상기 n-비트 코드어에 있어서 상기 다른 상태값(other value)의 두 연속비트에 의해서 후속되는 상기 한가지 상태값(one value)의 두 연속 비트의 시퀀스인 4-비트 주기를 갖는 어떤 주기적인 비트열에 있어서 최대 비트수가 제3 설정값 q로 제한되도록 설정되는
    데이터 부호화 방법.
  3. 제 1 항 또는 제 2 항에 있어서, 상기 한가지 상태값(one value)의 비트는 상태값 "1"인
    데이터 부호화 방법.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    m=16, n=19일 때, 상기 방법은
    1) 각 16-비트 데이터어를 각각 6, 6, 4 비트의 제1, 제2, 제3블록으로 분할하는 단계,
    2) 부호율 6/7 블록코드에 따라서 제1블록을 부호화하여 제1서브코드어를 만들고, 부호율 6/7 2-상태 코드 -여기서, 상기 제1서브코드어의 마지막 비트가 상기 2-상태 코드의 상태를 결정함- 에 따라서 상기 제2블록을 부호화하여 제2서브코드어를 만들고, 부호율 4/5 블록코드에 따라서 상기 제3블록을 부호화하여 제3서브코드어를 만들어, 상기 결과 비트 시퀀스가 19-비트 시퀀스를 포함하도록 부호화하는 단계, 및
    3) 하나의 위반정정과정에 의하여 -여기서, 하나의 위반정정과정은 상기 19-비트 시퀀스에 있어서 제1,2서브코드어 사이에 있는 복수의 제1금지비트패턴의 발생을 검출하고, 상기 19-비트시퀀스에 있어서 제2,3서브코드어 사이에 있는 복수의 제2금지비트패턴의 발생을 검출하여, 상기 검출된 금지비트패턴을 각각 대체비트패턴으로 대체하는 단계를 갖음- 19-비트 코드어를 만드는 단계를 포함하는
    데이터 부호화 방법
  5. 제 3항 또는 제 4 항에 있어서,
    1) 상기 제1서브코드어는, j=2인 샤논커버(Shannon cover)의 상태 2로부터 시작하여 샤논커버의 상태 1 또는 2로 끝나는 7번의 천이를 실행하고 16진수 00, 01, 4C로 표현되는 워드를 버림(discarding)에 의하여 샤논커버(Shannon cover)로부터 만들어진 54개의 7-비트 워드와, 16진수 03, 0B, 13, 23, 43, 1B, 2B, 4B, 53, 5B로 표현되는 10개의 7-비트 워드로 이루어진 64개의 서브코드어의 집합으로부터 선택되고,
    2) 상기 제2서브코드어는, j=2인 샤논커버의 상태 2로부터 시작하여 샤논커버의 상태 1 또는 2로 끝나는 7번의 천이를 실행하고 16진수 00, 19로 표현되는 워드를 버림에 의하여 샤논커버로부터 만들어진 55개의 7-비트 워드와, 16진수 03, 0B, 13, 23, 43, 1B, 2B, 4B, 33, 53, 5B로 표현되는 11개의 7-비트 워드로 이루어진 66개의 서브코드어의 집합으로부터 선택되고,
    여기에서, 제2블록의 제1 설정값을 위하여 제2서브코드어는 상기 제1서브코드어의 마지막비트가 0인지 1인지에 따라서 각각 56 또는 33으로 선택되고, 상기 제2블록의 제2설정값을 위하여 제2서브코드어는 상기 제1서브코드어의 마지막비트가 0인지 1인지에 따라서 각각 4C 또는 06으로 선택되고,
    3) 상기 제3서브코드어는 16진수 01, 02, 04, 05, 06, 08, 09, 0A, 0C, 0D, 10, 11, 12, 14, 15, 16로 표현되는 16개의 5-비트 서브코드어의 집합으로부터 선택되는
    데이터 부호화 방법.
  6. 제 2 항 또는 제 5 항에 있어서,
    j=2, k=9, q=14일 때,
    1) 상기 복수의 제1금지비트패턴이 상기 19-비트 시퀀스중 4번째에서 10번째 비트까지의 비트패턴을 갖고, 상기 복수의 제1금지비트패턴과 그 각각에 대응하는 대체비트패턴은 다음의 표 1와 같이 정의되며,
    표 1
    2) 상기 복수의 제2금지비트패턴은 상기 19-비트 시퀀스중 17번째에서 19번째 비트까지의 비트패턴을 갖고, 상기 복수의 제2금지비트패턴과 그 각각에 대응하는 대체비트패턴은 다음의 표 2와 같이 정의되는
    표 2
    데이터 부호화 방법
  7. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    m=16, n=17일 때, 상기 방법은
    1) 각 16-비트 데이터어를 각각 4, 8, 4 비트인 제1,제2,제3블록으로 분할하는 단계,
    2) 부호율 8/9 블록코드에 따라서, 결과비트시퀀스가 17-비트 시퀀스를 구성하도록 상기 제2블록을 부호화하여 서브코드어를 만드는 단계, 및
    3) ⓐ상기 17-비트 시퀀스에 있어서 복수의 제1 금지 17-비트 패턴의 발생을 검출하고, 검출된 금지비트패턴을 각각의 대체비트패턴으로 대체한 후, 상기 17-비트 시퀀스를 각각 8, 1, 8 비트인 제4, 제5, 제6 블록으로 분할하는 제1과정과, ⓑ상기 제4블록에 있어서 복수의 제2 금지 8-비트 패턴과, 상기 제6블록에 있어서 복수의 제3 금지 8-비트 패턴의 발생을 검출하고, 상기 검출된 금지비트패턴을 각각의 대체비트패턴으로 대체하는 제2과정과, ⓒ상기 제2과정으로부터 발생된 17-비트 시퀀스에 있어서 복수의 제4 금지 17-비트 패턴의 발생을 검출하고, 상기 검출된 금지비트패턴을 각각의 대체비트패턴으로 대체하는 제3과정으로 이루어진 위반정정과정에 의하여 17-비트 코드어를 만드는 위반정정단계를 포함하는
    데이터 부호화 방법.
  8. 제 3 항 또는 제 7 항에 있어서,
    상기 서브코드어는, j=3인 샤논커버의 상태3에서 시작하여 그 샤논커버의 상태 1 또는 2로 끝나는 9번의 천이를 실행하여 만들어진 249개의 9-비트 워드와, 16진수 03C, 0BC, 13C, 03D, 0BD, 13D, 1EF로 표현되는 7개의 9-비트 워드로 이루어진 256개의 서브코드어의 집합으로부터 선택되는
    데이터 부호화 방법.
  9. 제 2 항 또는 제 8 항에 있어서,
    j=4, k=14, q=22일 때,
    상기 복수의 제1금지비트패턴과 그 각각의 대체비트패턴이 아래의 표 3와 같이 정의되고,
    표 3
    상기 복수의 제2 및 제3 금지비트패턴과 그 각각의 대체비트패턴은 다음의 표 4 및 표 5와 같이 정의되고,
    표 4
    표 5
    상기 복수의 제4 금지비트패턴과 그 각각의 대체비트패턴은 다음의 표 6과 같이 정의되어,
    표 6
    상기 연속된 17-비트 코드어에 있어서, 상태값 "1"인 비트가 4번 연속되는 것은 오직 상기 코드어의 8번째 또는 16번째 비트가 시작하는 위치에서 발생할 수 있고, 나머지 위치에서 상태값 "1"의 최대연속비트수는 3 인
    데이터 부호화 방법.
  10. 제 1 항 내지 제 9 항 중 어느 한 항에 있어서,
    상기 방법에
    상기 연속된 n-비트 코드어를 자기 기록 채널로 공급하고, 상기 코드어를 자기기록매체상에 기록하고 자기기록매체로부터 재생하는 단계,
    상기 연속된 m-비트 데이터어를 복원하기 위하여 상기 자기기록매체로부터 재생된 상기 연속 코드어를 복호화하는 단계를 포함하는
    데이타 부호화 방법.
  11. 연속된 복수의 m-비트 데이터어를 부호화하여 연속된 복수의 n-비트 코드어를 만들어 -여기서, n>m- 자기기록채널에 공급하기 위한 데이터 부호화 장치(4,20)에 있어서,
    상기 부호화 장치(4,20)는
    1) 각 m-비트 데이터어를 복수의 비트 블록으로 분할하는 분할 수단(5a,6a,7a;21a,22,23),
    2) 유한상태 코딩구성에 따라서, 상기 m-비트의 데이터어로부터 유도된 결과비트시퀀스가 n-비트 시퀀스를 갖도록 상기 비트블록중 적어도 하나를 부호화하는 부호화수단(5,6,7;21), 및
    3) 상기 n-비트 시퀀스에 있어서 하나 또는 그 이상의 미리 정해진 위치에서 복수의 금지비트패턴이 발생하는 것을 검출하고, 상기 검출된 금지비트패턴을 각각의 대체비트패턴으로 대체하는 위반정정과정을 적어도 한번 실행함에 의하여 상기 n-비트 코드어를 만드는 위반 정정 수단(8,9;25,26,27,28)을 포함하고,
    상기 유한상태 코딩구성과, 금지 및 대체 비트 패턴은 상기 연속된 n-비트 코드어에 있어서, 한가지 상태값(one value)의 최대 연속 비트수는 제1 설정값 j로 제한되고 -여기서, j≥2- 다른 상태값(other value)의 최대 연속 비트수는 제2 설정값 k로 제한되도록 설정되는
    데이터 부호화 장치.
  12. 제 11 항에 있어서,
    상기 위반 정정 수단(8,9;25,26,27,28)은
    금지 및 대체 비트 패턴이 상기 연속된 n-비트 코드어에 있어서 상기 다른 상태값(other value)의 두 연속비트에 의해서 후속되는 상기 한가지 상태값(one value)의 두 연속 비트의 시퀀스인 4-비트 주기를 갖는 어떤 주기적인 비트열에 있어서 최대 비트수가 제3 설정값 q로 제한되도록 설정되는
    데이터 부호화 장치.
  13. 제 11 항 또는 제 12 항에 있어서,
    상기 한가지 상태값의 비트는 상태값 "1"인
    데이터 부호화 장치.
  14. 제 11 항 내지 제 13 항 중 어느 한 항에 있어서,
    m=16, n=19일 때,
    1) 상기 분할 수단(5a, 6a, 7a)은 각 16-비트 데이터어를 각각 6, 6, 4 비트의 제1, 제2, 제3블록으로 분할하도록 배열되고,
    2) 상기 부호화 수단은 상기 제1블록을 부호화하여 제1서브코드어를 만드는 부호율 6/7 블록 부호기(5)와, 상기 제2블록을 부호화하여 제2서브코드어를 만들고 상기 제1서브코드어의 마지막 비트가 2진상태 부호기의 입력으로 공급되어 그 상태를 결정하는 부호율 6/7 2-상태 부호기(6)와, 상기 제3블록을 부호화하여 제3서브코드어를 만들고 그에 따른 결과비트시퀀스가 19-비트 시퀀스를 구성하는 부호율 4/5 블록부호기(7)를 구비하고,
    3) 상기 위반 정정 수단(8,9)은 상기 19-비트 시퀀스에 있어서 제1,제2서브코드어 사이에 있는 복수의 제1 금지비트패턴의 발생을 검출하고, 상기 19-비트시퀀스에 있어서 제2,제3서브코드어 사이에 있는 복수의 제2금지비트패턴의 발생을 검출하고, 상기 검출된 금지비트패턴을 각각 대체비트패턴으로 대체하도록 구성된 하나의 위반정정과정을 통해 19-비트 코드어를 만들도록 배열되는
    데이터의 부호화 장치.
  15. 제 13 항 또는 제 14 항에 있어서,
    1) 상기 부호율 6/7 블록 부호기(5)는 j=2인 샤논커버의 상태 2로부터 시작하여 상태 1 또는 2로 끝나는 7번의 천이를 실행하고, 16진수 00, 01, 4C로 표현되는 워드를 버림에 의하여 만들어진 54개의 7-비트 워드와, 16진수 03, 0B, 13, 23, 43, 1B, 2B, 4B, 53, 5B로 표현되는 10개의 7-비트 워드로 이루어진 64개의 서브코드어의 집합으로부터 제1서브코드어를 선택하도록 구성되고,
    2) 상기 부호율 6/7 2-상태 부호기(6)는 j=2인 샤논커버의 상태 2로부터 시작하여 샤논커버의 상태 1 또는 2로 끝나는 7번의 천이를 실행하고, 16진수 00, 19로 표현되는 워드를 버림에 의하여 샤논커버로부터 만들어진 55개의 7-비트 워드와, 16진수 03, 0B, 13, 23, 43, 1B, 2B, 4B, 33, 53, 5B로 표현되는 11개의 7-비트 워드로 이루어진 66개의 서브코드어의 집합에서 제2서브코드어를 선택하도록 구성되고,
    여기서, 상기 제2블록의 제1설정값을 위하여 상기 2-상태부호기(6)는 각각 상기 제1서브코드어의 마지막 비트가 0인지 1인지에 따라서 각각 56 또는 33으로 제2서브코드어를 선택하고, 상기 제2블록의 제2설정값을 위하여 각각 제1서브코드어의 마지막 비트가 0인지 1인지에 따라서 4C 또는 06로서 제2서브코드어를 선택하도록 구성되고,
    3) 상기 부호율 4/5 블록 부호기(7)는 16진수 01, 02, 04, 05, 06, 08, 09, 0A, 0C, 0D, 10, 11, 12, 14, 15, 16으로 표현되는 16개의 5-비트 서브코드어의 집합으로부터 제3서브코드어를 선택하도록 구성되는
    데이터의 부호화 장치.
  16. 제 12 항 또는 제 15 항에 있어서,
    j=2, k=9, q=14일 때
    상기 위반 정정 수단(8,9)은
    1) 복수의 제1금지비트패턴이 상기 19-비트 시퀀스의 4번째에서 10번째까지의 비트패턴을 갖고, 상기 복수의 제1금지비트패턴과 그 각각에 대응하는 대체비트패턴은 다음 표1과 같이 정의되며,
    표 1
    2) 상기 복수의 제2금지비트패턴은 19-비트 시퀀스의 11번째에서 19번째 비트까지의 비트패턴을 갖고, 상기 복수의 제2금지비트패턴과 그 각각에 대응하는 대체비트패턴은 다음의 표 2와 같이 정의되는
    표 2
    데이터의 부호화 장치.
  17. 제 11 항 내지 제 13 항 중 어느 한 항에 있어서,
    m=16, n=17이면,
    1) 상기 분할 수단(21a,22,23)은 각 16-비트 데이터어를 각각 4, 8, 4비트인 제1, 제2, 제3블록으로 분할하도록 구성되고,
    2) 상기 부호화수단은 그 결과비트 시퀀스가 17-비트 시퀀스를 갖도록 상기 제2블록을 부호화하여 서브코드어를 만드는 부호율 8/9 블록 부호기(21)로 구성되고,
    3) 상기 위반정정수단(25,26,27,28)은 ⓐ상기 17-비트 시퀀스에 있어서 복수의 제1 금지 17-비트 패턴의 발생을 검출하고, 상기 검출된 금지비트패턴을 각각의 대체비트패턴으로 대체한 후 상기 17-비트 시퀀스를 각각 8, 1, 8 비트인 제4, 제5, 제6블록으로 분할하는 제1과정과, ⓑ상기 제4블록에 있어서 복수의 제2 금지 8-비트 패턴과, 상기 제6블록에 있어서의 복수의 제3 금지 8-비트 패턴의 발생을 검출하고 상기 검출된 금지비트패턴을 각각의 대체비트패턴으로 대체하는 제2과정과, ⓒ상기 제2과정으로부터 발생된 17-비트 시퀀스에 있어서 복수의 제4 금지 17-비트 패턴의 발생을 검출하고, 상기 검출된 금지비트패턴을 각각의 대체비트패턴으로 대체하는 제3과정으로 이루어진 위반정정과정에 의해서 17-비트 코드어를 만들도록 구성되는
    데이터의 부호화 장치.
  18. 제 13 항 또는 제 17 항에 있어서,
    상기 부호율 8/9 블록부호기(21)는 j=3인 샤논커버의 상태 3에서 시작하여 상태 1 또는 2로 끝나는 9번의 천이를 실행하여 만들어진 249개의 9-비트 워드와, 16진수 03C, 0BC, 03D, 0BD, 13D, 1EF로 표현되는 7개의 9-비트 워드로 이루어진 256개의 서브코드어 집합으로부터 상기 서브코드어를 선택하도록 구성되는
    데이터의 부호화 장치.
  19. 제 12 항 또는 제 18항에 있어서,
    j=4, k=14, q=22일 때,
    상기 위반 정정 수단(25,26,27,28)은
    상기 복수의 제1금지비트패턴과 그 각각의 대체비트패턴이 표 3과 같이 정의되고,
    표 3
    상기 복수의 제2 및 제3 금지비트패턴과 그 각각의 대체비트패턴은 각각 표 4 및 표5와 같이 정의되고,
    표 4
    표 5
    상기 복수의 제4금지비트패턴과 그 각각의 대체비트패턴은 다음의 표6과 같이 정의되고,
    표 6
    상기 연속된 17-비트 코드어에 있어서, 상태값 "1"인 비트가 4번 연속되는 것은 오직 상기 코드어의 8번째 또는 16번째 비트가 시작하는 위치에서 발생할 수 있고, 그 나머지 위치에서는 상태값 "1"의 최대연속비트수는 3 인
    데이터 부호화 장치.
  20. 제 11 항 내지 제 19 항 중 어느 한 항에 기재된 부호화 장치(4,20),
    기록매체상에 상기 연속된 n-비트 코드어를 기록하고, 상기 기록매체로부터 상기 코드어를 재생하는 기록채널구성수단, 및
    상기 기록매체로부터 재생된 상기 연속된 n-비트 코드어를 복호화하여 상기 연속된 m-비트 데이터어를 복원하는 복호화 장치(11,30)를 포함하는
    데이터 저장 시스템.
KR10-2000-0038081A 1999-07-12 2000-07-04 데이터 부호화 장치 및 방법 KR100403946B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP99113399 1999-07-12
EP99113399.2 1999-07-12

Publications (2)

Publication Number Publication Date
KR20010015164A true KR20010015164A (ko) 2001-02-26
KR100403946B1 KR100403946B1 (ko) 2003-11-01

Family

ID=8238567

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2000-0038081A KR100403946B1 (ko) 1999-07-12 2000-07-04 데이터 부호화 장치 및 방법

Country Status (5)

Country Link
US (1) US6557124B1 (ko)
JP (1) JP3363432B2 (ko)
KR (1) KR100403946B1 (ko)
GB (1) GB2355165B (ko)
SG (1) SG87129A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009022874A1 (en) * 2007-08-14 2009-02-19 Lg Electronics Inc. Method of transmitting data

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020025239A (ko) * 2000-06-27 2002-04-03 추후 연결된 에러 정정 코드를 구비하는 자기 기록 채널에서비동일 보호를 가지는 인코딩 방법 및 장치
WO2003028326A1 (en) * 2001-09-24 2003-04-03 Koninklijke Philips Electronics N.V. Infrared communications systems comprising a coding function to reduce the maximum number of consecutive spaces in the signal sent
US7228480B1 (en) * 2001-12-11 2007-06-05 Maxtor Corporation Rate-1 coding for increasing timing information in recording data
US7320094B2 (en) * 2003-07-22 2008-01-15 Intel Corporation Retraining derived clock receivers
US7395482B2 (en) 2003-12-18 2008-07-01 International Business Machines Corporation Data storage systems
FR2868895B1 (fr) * 2004-04-09 2006-06-16 Thales Sa Procede de transmission serie de donnees entre un emetteur et un recepteur
US7030789B1 (en) 2004-12-01 2006-04-18 Hitachi Global Storage Technologies Netherlands B.V. Techniques for applying modulation constraints to data using periodically changing symbol mappings
US7064687B1 (en) 2005-01-31 2006-06-20 Hitachi Global Storage Technologies Netherlands B.V. Techniques for modulating data using short block encoders
US7071851B1 (en) 2005-01-31 2006-07-04 Hitachi Global Storage Technologies Netherlands B.V. Techniques for implementing non-uniform constraints in modulation encoded data
US7126502B2 (en) * 2005-02-01 2006-10-24 Hitachi Global Storage Technologies Netherlands B.V. Techniques for using interleaved encoders to obtain modulation constraints
US7142134B2 (en) * 2005-02-01 2006-11-28 Hitachi Global Storage Technologies Netherlands B.V. Techniques for generating modulation codes using running substitutions
JP2006277903A (ja) * 2005-03-30 2006-10-12 Hitachi Global Storage Technologies Netherlands Bv 符号化装置、及び復号装置
US7714748B1 (en) * 2005-07-22 2010-05-11 Marvell International Ltd. Systems and methods for constructing high-rate constrained codes
JP4765964B2 (ja) * 2007-03-05 2011-09-07 ソニー株式会社 符号化方法および符号化装置、並びに復号方法および復号装置
US7777652B2 (en) * 2008-10-29 2010-08-17 Silicon Image, Inc. Coding system for memory systems employing high-speed serial links
US20130325883A1 (en) * 2012-06-01 2013-12-05 Kelsey L. Bruso Preserving data integrity across incompatible computer architectures
US9027147B2 (en) * 2013-05-13 2015-05-05 Hewlett-Packard Development Company, L.P. Verification of serialization codes
GB2514165B (en) * 2013-05-16 2015-06-24 Canon Kk Transmission errors management in a communication system
US20230254108A1 (en) * 2022-02-08 2023-08-10 Samsung Display Co., Ltd. System and method for efficient transition encoding

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4486739A (en) * 1982-06-30 1984-12-04 International Business Machines Corporation Byte oriented DC balanced (0,4) 8B/10B partitioned block transmission code
JPH06197024A (ja) * 1992-11-09 1994-07-15 Sony Corp 変調方法、変調装置及び復調装置
KR0165441B1 (ko) * 1995-09-18 1999-03-20 김광호 디지털 데이터 채널 부호화 및 복호화방법과 그 장치
US5731768A (en) * 1996-01-31 1998-03-24 Seagate Technology, Inc. Method and apparatus for implementing codes with maximum transition run length
US5859601A (en) 1996-04-05 1999-01-12 Regents Of The University Of Minnesota Method and apparatus for implementing maximum transition run codes
KR100219608B1 (ko) * 1996-07-23 1999-10-01 윤종용 디지탈 기록 미디어와 디지탈 통신등의 디지탈 채널에 채택되는 신호변조방법
JP3207123B2 (ja) 1996-08-07 2001-09-10 富士通株式会社 最尤検出方法及び情報記録再生装置
US5968199A (en) 1996-12-18 1999-10-19 Ericsson Inc. High performance error control decoder
US6097320A (en) * 1998-01-20 2000-08-01 Silicon Systems, Inc. Encoder/decoder system with suppressed error propagation
JP4058153B2 (ja) * 1998-02-25 2008-03-05 株式会社日立グローバルストレージテクノロジーズ 符号化方法およびそれを用いた記録再生装置
US6241778B1 (en) * 1999-06-18 2001-06-05 Lucent Technologies Inc. Methods and apparatus for implementing run-length limited and maximum transition run codes

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009022874A1 (en) * 2007-08-14 2009-02-19 Lg Electronics Inc. Method of transmitting data
US8219877B2 (en) 2007-08-14 2012-07-10 Lg Electronics Inc. Method and apparatus for transmitting uplink data in a wireless access system
US9154162B2 (en) 2007-08-14 2015-10-06 Lg Electronics Inc. Method and apparatus for transmitting uplink data in a wireless access system
US9246513B2 (en) 2007-08-14 2016-01-26 Lg Electronics Inc. Method and apparatus for transmitting uplink data in a wireless access system
US9912444B2 (en) 2007-08-14 2018-03-06 Lg Electronics Inc. Method and apparatus for transmitting uplink data in a wireless access system

Also Published As

Publication number Publication date
GB0016683D0 (en) 2000-08-23
SG87129A1 (en) 2002-03-19
JP2001060872A (ja) 2001-03-06
KR100403946B1 (ko) 2003-11-01
US6557124B1 (en) 2003-04-29
GB2355165B (en) 2003-10-22
GB2355165A (en) 2001-04-11
JP3363432B2 (ja) 2003-01-08

Similar Documents

Publication Publication Date Title
KR100403946B1 (ko) 데이터 부호화 장치 및 방법
JP3590209B2 (ja) 変調符号化方法
Brickner et al. Design of a rate 6/7 maximum transition run code
KR101332142B1 (ko) Lto-5 테이프용 rll 인코딩
US5739779A (en) Encoding circuit and decoding circuit
US5781130A (en) M-ary (d,k) runlength limited coding for multi-level data
US6188335B1 (en) Method and apparatus having cascaded decoding for multiple runlength-limited channel codes
EP1076932B1 (en) ENCODING/DECODING n-BIT SOURCE WORDS INTO CORRESPONDING m-BIT CHANNEL WORDS, AND VICE VERSA, SUCH THAT THE CONVERSION IS PARITY INVERTING
KR19980031982A (ko) 데이타 저장기기의 prml 코드 생성방법
US5757293A (en) M=8 (1,2) runlength limited code for multi-level data
JP2003536315A (ja) バイナリのソース信号のデータビットのストリームをバイナリのチャネル信号のデータビットのストリームに符号化するデバイス、メモリ手段、情報を記録するデバイス、記録担体、符号化するデバイス、および再生するデバイス
US6774825B2 (en) Modulation coding based on an ECC interleave structure
US20030123173A1 (en) Method and apparatus for encoding data to guarantee isolated transitions in a magnetic recording system
US5682154A (en) M=4 (1,2) runlength limited code for multi-level data
JP4095440B2 (ja) 情報の符号化のための装置及び方法、その符号化された情報を復号するための装置及び方法、変調信号及び記録媒体の製造方法
US5668546A (en) M=6 (3,6) runlength limited code for multi-level data
US5682155A (en) M=6(4,11) runlength limited code for multi-level data
US5748118A (en) M=7 (3,8) runlength limited code for multi-level data
US5748117A (en) M=8 (1,3) runlength limited code for multi-level data
US5659310A (en) M=5 (0,2) runlength limited code for multi-level data
US5663723A (en) M=7 (1,3) runlength limited code for multi-level data
US5675330A (en) M=5(4,11)runlength limited code for multi-level data
US5659311A (en) M=6 (2,4) runlength limited code for multi-level data
US5663722A (en) M=10 (3,6) runlength limited code for multi-level data
US5670956A (en) M=5 (3,7) runlength limited code for multi-level data

Legal Events

Date Code Title Description
A201 Request for examination
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: 20091019

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee