KR20010096009A - 통신 및 멀티미디어를 위한 변조코드 - Google Patents

통신 및 멀티미디어를 위한 변조코드 Download PDF

Info

Publication number
KR20010096009A
KR20010096009A KR1020000019891A KR20000019891A KR20010096009A KR 20010096009 A KR20010096009 A KR 20010096009A KR 1020000019891 A KR1020000019891 A KR 1020000019891A KR 20000019891 A KR20000019891 A KR 20000019891A KR 20010096009 A KR20010096009 A KR 20010096009A
Authority
KR
South Korea
Prior art keywords
codeword
bit
modulation
code
absolute value
Prior art date
Application number
KR1020000019891A
Other languages
English (en)
Inventor
박순배
Original Assignee
박순배
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 박순배 filed Critical 박순배
Priority to KR1020000019891A priority Critical patent/KR20010096009A/ko
Publication of KR20010096009A publication Critical patent/KR20010096009A/ko

Links

Classifications

    • 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
    • H03M7/48Conversion 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 alternating with other codes during the code conversion process, e.g. run-length coding being performed only as long as sufficientlylong runs of digits of the same kind are present
    • 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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Digital Transmission Methods That Use Modulated Carrier Waves (AREA)

Abstract

본 발명은 run length limited 변조코드로 유선이나 무선통신, 멀티미디어 스토리지 등에 적용될 수 있다.
본 발명의 변조코드는 RLL(1,10,4,6) code로 1과1사이의 최소 0은 1, 1과1사이의 최대 0은 10이고 4 bit data를 6 channel bit로 변조하고 상기코드의 명칭은 이후 SB code 라고 한다.
상기 변조코드의 장점은 변조 복조 회로가 간단하여 고속 data통신에서 속도를 향상시킬 수 있고, DC 억압능력이 우수하여 slice시에 error 발생이 적고, 특정 byte의 error가 인접한 byte에 영향을 미치는 Error propagation 특성이 우수하다.

Description

통신 및 멀티미디어를 위한 변조코드{ Modulation code for communication and multimedia }
본 변조코드 발명의 목적은 고속 고밀도를 추구하는 현재의 유선 무선 통신과 하드디스크 광디스크 등의 데이터 스토리지에 적합한 코드를 제안하는데 있다.
상기 변조코드의 장점은 변조 복조 회로가 간단하여 고속 data통신에서 속도를 향상시킬 수 있고, DC 억압능력이 우수하여 slice시에 error 발생이 적고, 특정 byte의 error가 인접한 byte에 영향을 미치는 Error propagation 특성이 우수하다. 또한 변조코드의 mapping table의 가짓수가 많고 table이 간단하므로 암호화 수단으로도 사용 할 수 있다.
본 발명은 유선 무선 통신과 하드디스크 광디스크 등의 데이터 스토리지에 사용되는 변조코드이다.
이 분야의 종래 기술로는 RLL(1,3), RLL(1,7), EFM, EFM+code 등이 있다.
본 발명에서는 통신이나 멀티미디어 스토리지 분야의 고속, 고밀도 디지털화에 적용하기 위해 기존의 RLL code보다 하드웨어 사이즈가 작고, 변조 복조 회로가 단순하여 속도가 빠르며, d=1을 적용하여 jitter 대응력을 높이고 DC 억압능력과 Error propagation을 개선한 변조코드를 제안한다.
도1. - 변조를 위한 회로의 블록도
도2. - 복조를 위한 회로의 블록도
본 발명의 code는 RLL(1,10,4,6)code로 4 bit의 data를 6 channel bit로 변조하는 최소 run length d=1, 최대 run length k=10 인 run length limited code이다. 상기 code는 최소 run length d=1을 만족하는 6 bit codeword 21개 중 000000를 제외한 20로 두개의 state(state0, state1)을 가지는 주변환 table을 만든다. 상기 code의 state0는 첫번째 bit가 0인 12개의 codeword중에서 010100 과 010101를 제외한 10개의 codeword로 구성한다. 상기 code의 state1은 000000를 제외하고 남은 codeword, 즉 첫번째 bit가 1인 8개의 codeword와 state0에서 제외된 010100 과 010101를 이용하여 구성한다. 상기 각 state의 10개의 codeword로 16개의 4bit data에 mapping 시키는 방법은 마지막 bit가 1로 끝나는 4개의 codeword는 next state를 0로 두어 다음에 오는 codeword의 첫번째 bit가 언제나 0가 되도록 하고, 마지막 bit가 0로 끝나는 6개의 codeword는 next state가 state0인 경우와 next state가 state1인 두 경우를 모두 각각의 4bit data에 mapping 하면 10개의 codeword가 16진수 0에서 F까지 16 개의 data에 각각 mapping 된다.
표1에 있는 main table state 0의 16개 codeword에 4 bit 0000부터 1111까지16개의 data symbol을 중복되지 않도록 일대일로 mapping하고, 표1에 있는 main table state 1의 16개 codeword에 대하여도 4 bit 0000부터 1111까지 16개의 data symbol을 중복되지 않도록 일대일로 mapping 한다.
이때 state0의 010000_nextstate0와 010000_nextstate1는 16진수 0~F중에 가장 빈번히 발생하는 두 수 (예를 들면 0와 F)에 mapping 하는 것이 codeword stream의 디지털 합 DSV(Digital Sum Value)을 제어하기에 좋다.
상기 codeword stream의 DSV(Digital Sum Value)을 제어하는 방법은 main table에서 사용되지 않은 000000 codeword를 sub table state0로 이용하여 010000_next state0 와 000000_next state0, 010000_next state1 와 000000_next state1중 상기 DSV(Digital Sum Value)의 절대값이 작은 쪽을 선택한다. 즉 next state는 바뀌지 않고 main table의 010000가 sub table의 000000로 바뀐다. 그러나 sub code인 000000가 DSV의 절대값이 작더라도 변경후 연속된 code의 최대 run length k가 10을 초과하면 main table의 codeword인 010000로 유지해야 한다.
상기 중복되지 않도록 일 대 일로 mapping 하는 방법의 가짓수는 symbol 0000를 16개의 codeword중 하나로 변환하고 0001을 나머지 15개중 하나로 변환하고 0010을 나머지 14개중 하나로 변환하고 ...... 1110을 나머지 2개중 하나로 변환하고 1111을 마지막 하나로 변환하고 등등 main state0와 0000부터 1111까지 매핑하는 방법만 16의 계승(16x15x14x13x12x11x10x9x8x7x6x5x4x3x2) 즉 20922789888000 만큼의 방법이 있고, 마찬가지로 main state1와 0000부터 1111까지 매핑하는 방법도 20922789888000 만큼의 가짓 수가 있다. 즉 16의 계승 곱하기 16의 계승 만큼의변조 code table이 있을 수 있다. 상기 변조코드의 변조와 복조회로가 대단히 간단하며 변조코드의 가짓수가 4 곱하기 10의 26승 이상으로 많은 것을 이용하여 암호가 code table을 결정하도록 하면 정확한 암호를 모르고서는 변조된 데이터의 복조가 불가능하다.
4bit 데이터의 입력 stream을 6 channel bit의 codeword stream으로 변조하는 회로는 main state0 와 main state1의 변조table을 기억하고, 4 bit의 입력 symbol과 이전 codeword의 next state 1bit, 즉 D filpflop의 출력(도1.1)을 address로 6bit의 변조된 code와 next state 1bit를 출력하는 ROM memory(도1.2)와, ROM memory에서의 출력 code가 010000인지 확인하는 조건부(도1.3)와, 010000를 000000로 변경하여도 {{이전 codeword의 trailing 0 개수} + 6 + {다음 codeword의 leading 0 개수}} 즉 최대 run length k가 10을 초과하지 않는지 검사하는 k 검사부(도1.4)와, ROM memory에서의 출력 code가 010000이고 상기 k가 10을 초과하지 않는 경우 현재까지 running DSV의 절대값과 010000를 000000로 변경한 경우의 running DSV의 절대값을 계산 하여 비교하는 DSV 절대값 비교부(도1.5)와, ROM memory에서의 출력 code가 010000이고, 상기 최대 run length k가 10을 초과하지 않고, 010000를 000000로 변경한 경우의 running DSV의 절대값이 작으면 codeword 010000를 codeword 000000로 변경하는 MUX(도1.6)로 구성되고 이 MUX의 출력이 변조회로의 출력이다.
상기 Running DAV 절대값 비교부(도1.5)는 codeword 010000 바로 이전 codeword의 다섯번째 bit 까지의 절대값보다, 상기 codeword 010000 바로 이전codeword의 마지막 여섯번째 codeword의 절대값이 더 작으면, 다음 codeword로 010000보다 000000가 오는 것이 DSV의 절대값이 더 작아지는 알고리즘을 이용하여 구성한다.
상기 6 channel bit로 변조된 codeword를 다시 4bit의 data로 복조하는 회로는 입력된 6bit codeword가 첫번째 bit가 1 이거나, 두 번째와 네 번째 bit가 모두 1인 경우 state1에 포함된 codeword라고 알려주는 state 확인부(도2.1)와, 현재 codeword의 state와 이전 codeword,즉 D flipflop의 출력(도2.2)을 입력으로 원래의 4bit data symbol을 복조 해주는 finite state machine(도2.3)으로 구성되어 있다.
본 발명의 효과는 상기 변조코드를 사용하면 변조 복조 회로가 간단하여 고속 data통신에서 속도를 향상시킬 수 있고, DC 억압능력이 우수하여 slice시에 error 발생이 적고, 특정 byte의 error가 인접한 byte에 영향을 미치는 Error propagation 특성이 우수하다. 또한 변조코드의 mapping table의 가짓수가 많고 table이 간단하므로 암호화 수단으로도 사용 할 수 있다.

Claims (4)

  1. 표1에 있는 main table state 0의 16개 codeword에 4 bit 0000부터 1111까지 16개의 data symbol을 중복되지 않도록 일대일로 mapping하고, 표1에 있는 main table state 1의 16개 codeword에 대하여도 4 bit 0000부터 1111까지 16개의 data symbol을 중복되지 않도록 일대일로 mapping하여 변조하고, 변조된 codeword가 010000인 경우 표2. Sub table에서 상기 010000의 codeword를 000000로 변환하여도 최대 run length k가 10을 초과하지 않을 때 010000 와 000000 두 codeword중 running DSV의 절대값이 작은 codeword를 선택하는 RLL(1,10,4,6) 변조 code.
  2. 청구항 1의 변조 code table의 가짓수가 16의 계승의 제곱(약 4.3 곱하기 10의 26승) 만큼 많으면서 변조 table이 간단한 것을 이용하여 암호가 변조코드 table을 결정하도록 하여 변조와 암호화를 동시에 수행하는 암호화 변조 시스템.
  3. 청구항 1의 변조 code table로 4bit 입력 데이터를 6 channel bit의 codeword로 변조하는 회로
    4bit 데이터의 입력 stream을 6 channel bit의 codeword stream으로 변조하는 회로는 main state0 와 main state1의 변조table을 기억하고, 4 bit의 입력 symbol과 이전 codeword의 next state 1bit, 즉 D filpflop의 출력(도1.1)을 address로 6bit의 변조된 code와 next state 1bit를 출력하는 R0M memory(도1.2)와, R0M memory에서의 출력 code가 010000인지 확인하는 조건부(도1.3)와, 010000를 000000로 변경하여도 {{이전 codeword의 trailing 0 개수} + 6 + {다음 codeword의 leading 0 개수}} 즉 최대 run length k가 10을 초과하지 않는지 검사하는 k 검사부(도1.4)와, ROM memory에서의 출력 code가 010000이고 상기 k가 10을 초과하지 않는 경우 현재까지 running DSV의 절대값과 010000를 000000로 변경한 경우의 running DSV의 절대값을 계산 하여 비교하는 DSV 절대값 비교부(도1.5)와, ROM memory에서의 출력 code가 010000이고, 상기 최대 run length k가 10을 초과하지 않고, 010000를 000000로 변경한 경우의 running DSV의 절대값이 작으면 codeword 010000를 codeword 000000로 변경하는 MUX(도1.6)로 구성되고 이 MUX의 출력이 변조회로의 출력이다.
  4. 청구항 1의 변조 code table로 상기 6 channel bit로 변조된 codeword를 다시 4bit의 data로 복조하는 회로.
    상기 6 channel bit로 변조된 codeword를 다시 4bit의 data로 복조하는 회로는 입력된 6 bit codeword가 첫번째 bit가 1 이거나, 두 번째와 네 번째 bit가 모두 1인 경우 state1에 포함된 codeword라고 알려주는 state 확인부(도2.1)와, 현재 codeword의 state와 이전 codeword 즉 D flipflop의 출력(도2.2)을 입력으로 원래의 4bit data symbol을 복조 해주는 finite state machine(도2.3)으로 구성되어 있다.
KR1020000019891A 2000-04-15 2000-04-15 통신 및 멀티미디어를 위한 변조코드 KR20010096009A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000019891A KR20010096009A (ko) 2000-04-15 2000-04-15 통신 및 멀티미디어를 위한 변조코드

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000019891A KR20010096009A (ko) 2000-04-15 2000-04-15 통신 및 멀티미디어를 위한 변조코드

Publications (1)

Publication Number Publication Date
KR20010096009A true KR20010096009A (ko) 2001-11-07

Family

ID=19664598

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000019891A KR20010096009A (ko) 2000-04-15 2000-04-15 통신 및 멀티미디어를 위한 변조코드

Country Status (1)

Country Link
KR (1) KR20010096009A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100421004B1 (ko) * 2001-04-20 2004-03-03 삼성전자주식회사 코드 생성 및 배치 방법
KR100513328B1 (ko) * 2001-12-21 2005-09-07 엘지전자 주식회사 일련의 데이터 워드를 변조신호로 변환하는 장치 및 방법
KR100657259B1 (ko) * 2002-09-27 2006-12-14 삼성전자주식회사 데이터 변조 방법 및 코드 배치 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970014342A (ko) * 1995-08-09 1997-03-29 김광호 Rll코드 데이터를 위한 부호화 및 복호화장치
KR970077959A (ko) * 1996-05-21 1997-12-12 김광호 신호변조/복조방법 및 그에 적합한 장치
JPH1079675A (ja) * 1996-07-23 1998-03-24 Samsung Electron Co Ltd 多段階rll符号化による信号変調方法
KR19990041225A (ko) * 1997-11-21 1999-06-15 윤종용 Rll(2,25)변조코드 및 이를 이용한 디지털데이터의 부호화/복호화 방법
JP2000332613A (ja) * 1999-05-25 2000-11-30 Victor Co Of Japan Ltd 変調装置、復調装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970014342A (ko) * 1995-08-09 1997-03-29 김광호 Rll코드 데이터를 위한 부호화 및 복호화장치
KR970077959A (ko) * 1996-05-21 1997-12-12 김광호 신호변조/복조방법 및 그에 적합한 장치
JPH1079675A (ja) * 1996-07-23 1998-03-24 Samsung Electron Co Ltd 多段階rll符号化による信号変調方法
KR19990041225A (ko) * 1997-11-21 1999-06-15 윤종용 Rll(2,25)변조코드 및 이를 이용한 디지털데이터의 부호화/복호화 방법
JP2000332613A (ja) * 1999-05-25 2000-11-30 Victor Co Of Japan Ltd 変調装置、復調装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100421004B1 (ko) * 2001-04-20 2004-03-03 삼성전자주식회사 코드 생성 및 배치 방법
KR100513328B1 (ko) * 2001-12-21 2005-09-07 엘지전자 주식회사 일련의 데이터 워드를 변조신호로 변환하는 장치 및 방법
KR100657259B1 (ko) * 2002-09-27 2006-12-14 삼성전자주식회사 데이터 변조 방법 및 코드 배치 방법

Similar Documents

Publication Publication Date Title
KR100446878B1 (ko) 입력심볼인코딩방법및장치와채널코드워드생성방법및장치
EP0771078B1 (en) Method and apparatus for generating runlength-limited coding with DC control
KR100488634B1 (ko) m-비트정보워드들의계열을변조신호로변환하는방법,기록캐리어를제조하는방법,부호화장치,장치,기록장치,신호,및기록캐리어
KR940007546B1 (ko) 2진수 데이타를 코드워드로 엔코딩하는 방법 및 장치와 9비트 입력 코드워드를 8비트 출력 데이타 블럭으로 변환하는 디코더 장치
US7518534B2 (en) 8-bit to 10-bit encoding method and apparatus
CA2345237A1 (en) Information additive code generator and decoder for communication systems
EP0406507A1 (en) Block coding scheme for fractional-bit transmission
US6639525B2 (en) 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, and device for decoding
Van Wijngaarden et al. Maximum runlength-limited codes with error control capabilities
Mansuripur Enumerative modulation coding with arbitrary constraints and post-modulation error correction coding for data storage systems
US5703580A (en) Apparatus for encoding and decoding run length limited code data
US7683810B2 (en) Code design with decreased transition density and reduced running digital sum
JPH09501283A (ja) フレーム・マッピングを用いてゼロ・パディング・コンステレーション切り替えを利用するための装置および方法
KR20010096009A (ko) 통신 및 멀티미디어를 위한 변조코드
JP2004312779A (ja) コードワード配置方法
KR100274213B1 (ko) Rll(2,25)코드를 이용한 7/13 채널코딩 및 채널디코딩방법
JP4559112B2 (ja) データ変調装置及びデータ復調装置
JP3848163B2 (ja) 情報をコーディングする装置及びその方法、そのコーディングされせた情報をデコーディングする装置及びその方法、記録媒体への変調信号の記録方法、記録媒体並びに変調信号の変換方法
US5034741A (en) Variable length bit patterns for data representation
JP4004801B2 (ja) コードレートを増加させるためのブロック符号化/復号化方法及び装置
JP3658395B2 (ja) 信号復調装置及び方法
KR20090085257A (ko) Dsv 제어 방법, 이에 적합한 기록매체 및 장치
WO1996032780A1 (fr) Dispositif et procede de conversion-decodage de codes et support d'enregistrement
JP2001523070A (ja) 改良されたデータ伝送のための方法および回路構成
KR960019244A (ko) (4, 20) 런렝쓰 리미티트(rll) 코드 생성방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application