KR0145587B1 - 전송데이타의 천이 조절과 dc-균형이 가능한 코딩방법 및 시스템 - Google Patents

전송데이타의 천이 조절과 dc-균형이 가능한 코딩방법 및 시스템

Info

Publication number
KR0145587B1
KR0145587B1 KR1019950015401A KR19950015401A KR0145587B1 KR 0145587 B1 KR0145587 B1 KR 0145587B1 KR 1019950015401 A KR1019950015401 A KR 1019950015401A KR 19950015401 A KR19950015401 A KR 19950015401A KR 0145587 B1 KR0145587 B1 KR 0145587B1
Authority
KR
South Korea
Prior art keywords
data
transition
encoding
balance
bits
Prior art date
Application number
KR1019950015401A
Other languages
English (en)
Other versions
KR970004522A (ko
Inventor
정덕균
신예식
Original Assignee
정덕균
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 정덕균 filed Critical 정덕균
Priority to KR1019950015401A priority Critical patent/KR0145587B1/ko
Publication of KR970004522A publication Critical patent/KR970004522A/ko
Application granted granted Critical
Publication of KR0145587B1 publication Critical patent/KR0145587B1/ko

Links

Classifications

    • 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

Landscapes

  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Dc Digital Transmission (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

1. 청구 범위에 기재된 발명이 속한 기술분야:
특히 전송데이타 코딩에 있어 독립적으로 천이 조절과 DC-균형(DC-Balance)의 2단계로 인코딩을 하되, 비트간의 천이율 및 인코딩 심볼간의 DC-균형율에 따라 부호화하는 전송데이타의 코딩방법 및 시스템에 관한 것이다.
2. 발명이 해결하려고 하는 기술적 과제:
데이타 전체를 하나의 그룹으로 보고 데이타내에 일정한 천이를 갖게 하면서 시간적으로 전송되는 비트-스트림에서 '1'과 '0'이 같은 비율이 되도록 2n 비트의 데이타를 2n + 2 비트의 심볼로 인코딩하되, 간단한 수식적 알고리즘에 의해 적은 로직으로 구현이 용이하여 코딩시간을 단축시키고, 인코딩에 있어 천이 조절과 DC-균형(DC-Balance)을 2단계로 독립적으로 적용하여 이를 파이프라인 방식으로 구현할 수 있으며, 인밴드(Inband)와 아웃 없의 밴드의 신호구분을 쉽게 할 수 있는 방법 및 시스템을 제공함.
3. 발명의 해결방법의 요지:
상기 전송 데이타내 천이를 검출하여 이를 계수하여 출력하는 데이타내 천이 검출 출력부와 상기 데이타내 천이 검출부의 출력과 천이수 조절모드의 선택신호의 입력을 비교하여 천이 조절 인코딩 여부를 결정하는 인코딩 여부결정부와, 상기 인코딩 여부결정부의 출력에 의해 상기 전송데이타의 천이수를 조절하는 천이수 조절부와, 상기 천이수 조절부의 출력으로부터 데이타내의 연속 '0'과 '1'의 개수를 계수하는 계수부와, 상기 계수부의 연속 '0'과 '1'과의 계수한 결과 값을 과거 전송데이타의 DC균형정도 값과의 비교에 의해 현재 보낼 데이타의 DC-균형 보상방향 검출하는 비교부와, 상기 비교부에서 검출된 DC-균형 보상 방향값에 따라 상기 천이 조절 인코딩을 거친 출력을 반대부호화 시키는 데이타 반대부호화 조절부로 구성됨을 특징으로 함.
4.발명의 중요한 용도:
코딩시스템 및 방법

Description

전송데이타의 천이 조절과 DC-균형이 가능한 코딩방법 및 시스템
제1도는 데이타 전송을 위한 시스템도
제2도는 본 발명에 따른 코딩의 데이타내 천이 조절 흐름도
제3도는 본 발명에 따른 코딩의 DC-균형 처리 흐름도
제4도는 본 발명의 따른 비트간 천이 조절 여부 결정 회로도
제5도는 본 발명의 따른 천이수 조절 회로도
제6도는 본 발명에 따른 심볼간 DC-균형 보상 방향 결정 회로도
제7도는 본 발명에 따른 DC-균형 처리 회로도
제8도는 본 발명에 따른 디코딩 회로도
본 발명은 데이타 전송시스템의 전송데이타 코딩방법에 관한 것으로, 특히 전송데이타 코딩에 있어 독립적으로 천이 조절과 DC-균형(DC-Balance)을 2단계에 거쳐 인코딩을 하되, 비트간의 천이율 및 심볼간의 DC-균형율에 따라 부호화하는 전송데이타의 코딩방법 및 시스템에 관한 것이다.
본 발명의 코딩방법은 고속으로 데이타를 전송하고자 하는 시스템을 구현할 시 필요한 기술로 응용분야를 크게 세분야로 분류할 때,
첫째, 컴퓨터 산업계에서 MPP(Massively Parallel Processor), RAID(Redundant Array of Independent Disk), 메모리, 고속 I/O 채널, 그래픽 수퍼 멀티미디어 분야에 사용될 수 있으며,
둘째, 통신 산업계에서 초고속 LANs, MANs, WANs이나 ATM망을 구현하시 사용될 수 있으며,
셋째, 가전분야에서 HDTV등에 응용 가능하다.
본 발명이 제시하는 기술은 위 응용분야에서 상호연결망(Interconnection Network)을 형성하여 데이타를 전송할 때 기본적으로 사용되는 기술로써, 상기 응용분야의 단말기에서 발생시킨 병렬데이타를 수신받아 이를 직렬화시켜 광(optical) 혹은 동축(coxial) 케이블로 연결된 전송라인(transmission line)을 통해 이를 효율적으로 보내기 위한 코딩방법을 제시함에 있다.
데이타 전송을 위한 코딩방법의 적용에 있어 문제가 되는 것은 두 시스템을 연결하는 전송라인을 통해 송신단의 클럭정보가 데이타에 함축되어야 한다는 것이다.
응용분야에서 발생시킨 병렬데이타는 클럭에 대한 고려없이 데이타를 이진수를 이용해 표현한 것이므로 이를 인코딩 없이 전송하기에는 부적절하다. 따라서 적절한 방법에 의해 인코딩 되어야 한다.
코딩방법의 적용에 있어 중요한 것은, 얼마나 간단한 방법으로 데이타를 효율적으로 인코딩 및 디코딩 하느냐에 있으며 그 코딩의 적용이 시스템 구현시 얼마나 용이하게 적용될 수 있는가에 있다.
데이타 전송에 있어, 송신단으로 보낸 데이타는 이 데이타의 전기적 신호레벨을 수신단의 클럭으로 표본화 함으로써 복원할 수 있다.
메시지를 전달하고자 하는 송신단과의 그것을 받게 되는 수신단이 동일 보드(board)내에 있게 되는 경우, 데이타는 병렬적으로 전달되고, 이를 표본화하기 위한 시스템 클럭은 따로 배분된다. 이 경우에 있어 시스템 클럭을 서로 공유하는 송수신간에 배분된 클럭 타이밍이 서로 일치하지 않게 되는 문제가 있는데 이를 클럭스큐(clock skew) 문제라 하며, 고속 시스템에서는 저속에 비해 이의 문제가 크게 대두된다.
반면 좀더 멀리 떨어진 시스템간을 연결할 경우 클럭라인을 따로 사용할 수 있으나 이 방법은 가격면에서 불리하며, 거리에 따른 클럭 스큐문제가 커진다.
이런 환경에서는 데이타를 동기화시키기 위한 글로발(global) 클럭을 사용하지 않고, 전체 시스템이 공인하는 주파수의 로컬(local) 클럭을 사용하여 수신되는 데이타로부터 클럭을 복원한다. 즉, 송신단의 클럭에 동기되어 보내진 데이타는 수신단에서 송신클럭의 3∼4배, 혹은 그 이상의 빠른 클럭으로 과표본화를 하고, 이들 데이타의 변화경계로부터 송신 클럭을 복원한다.
점차 시스템이 고속화가 되면서 클럭을 하나의 소스에서 배분하는 것보다는 각 수신단에서 PLL(Phase Locked Loop) 회로기술을 통해 송신단의 클럭을 복원하는 방법이 보편화되고 있다.
따라서 두 송수신간의 메시지 전달은 상대측이 보낸 데이타의 변화경계로부터 클럭정보를 알려 줄 수 있는 형태이어야 한다.
또한 전송시스템은 거리적으로 많이 떨어진 공간을 통과할 때 약해진 신호를 강화시키기 위해 중간중간 리피터(repeator)를 사용한다. 이때 상기 리피터는 대부분는 트랜스포머(transformer)를 사용하기 때문에 교류성분에는 강하지만 직류성분에는 약한 특성을 나타낸다. 이를 위해 인코딩된 데이타의 비트-스트림은 '1'과 '0'이 최대로 같아지게 전송되도록 DC-균형을 이룬 형태가 되어 AC-커플링(coupling)이 되어야 한다.
데이타의 전송시스템에서는 상기한 조건을 만족시키기 위해 컴퓨터 내부에서 발생된 데이타를 그대로 사용하지 않는다. 상기한 클럭복원의 편의를 위해 부가적인 데이타 표현방법으로 반드시 인코딩한다. 가령, 컴퓨터 시스템내에서 데이타를 표현하는 방법에 있어서는 현재 미국의 표준 ASCII코드가 가장 널리 사용된다. 상기 ASCII의 8비트는 부가적으로 인코딩이 되어 전송라인을 통해 보내지며, 수신단에서는 디코딩을 통해 원래 ASCII코드를 복원하여 다시 수신쪽의 컴퓨터내에서 사용된다.
상기 클럭복원을 위한 인코딩방법은 이미 통신 산업계에서 사용되는 기존의 코더들에 의해 다양한 방법으로 처리되고 있다. 상기 다양한 방법중의 한예는 FDDI에서 사용되는 4B5B인코딩 방법으로 이는 4비트의 데이타의 천이를 보장하는 5비트의 심볼로 대응시킨다.
상기 표1의 코드는 데이타 심볼내에서 '0'이 연속해서 3개 이상 나오지 않는다. 이것은 후에 '1'이 나오면 신호가 변화를 하고, '0'이 나오면 신호가 변화하지 않는 NRZI를 통과시켜 두 비트 만이 항상 천이가 있다는 것을 보장해준다. 위의 표1에서 제어심볼은 데이타와는 별도로 명령어로 사용되며, 이는 수신단에서 데이타와는 달리 취급된다. 상기에서 통상, 데이타는 인밴드(in-band)에 속한다고 말하며, 명령어는 아웃-오브-밴드(out-of-band)에 속한다고 말한다.
상기한 NRZI(혹은 Manchester 코드라고도 일컬어짐) 코드방식은 비트대 비트로 데이타를 코딩하는 것이다. 이밖에 미국특허 4,486,739호에 게시하고 있듯이 이미 상용화되고 있는 IBM-코더의 경우는 3B4B와 5B6B가 혼용된 구조이다. 간단한 수학적 알고리즘이 없기 때문에 구현시 ROM 방식으로 구현되기 때문에 랜덤로직(random logic)으로 구현했을 때보다 느려지는게 상례이다.
따라서 본 발명의 목적은 간단한 수학적 알고리즘에 의해 입력된 데이타 전체를 하나의 그룹으로 보고 데이타내에 충분한 천이를 갖게 하면서 시간적으로 전송되는 비트-스트림에서 '1'과 '0'이 같은 비율이 되도록, 어느 일정 비트의 데이타에 제한된 코딩 방법이 아닌 일반적인 2n(n은 양수) 비트의 데이타를 2개의 추가 인코딩 비트를 붙여 2n + 2비트의 심볼로 인코딩하되, 그 구현 원리가 간단하여 칩으로 구현할 때 코딩시간을 단축시키는 방법 및 시스템을 제공함에 있다. 본 발명의 다른 목적은 인코딩에 있어 천이 조절과 DC-균형(DC-Blance)을 2단계로 독립적으로 적용하여 이를 파이프라인 방식으로 구현할 수 있는 방법 및 시스템을 제공함에 있다.
본 발명의 다른 목적은 인-밴드(in-band)와 아웃-오브-밴드(out-fo-band)의 신호 구분을 쉽게 하여 수신단의 제어를 바꿀 수 있는 명령어를 쉽게 검출 및 처리할 수 있는 방법 및 시스템을 제공함에 있다.
상기 목적을 수행하기 위한 본 발명은 입력된 데이타내 천이를 검출한 후 이를 계수하여 출력하는 데이타내 천이수 검출 및 계수부와,
상기 데이타내 천이 검출 계수의 출력과 천이수 조절모드의 선택 신호의 입력을 비교하여 천이 조절(제 1단계)을 위한 짝수 인텍스 비트의 반대부호와 여부 결정부와,
상기 인코딩 여부 결정부의 출력에 의해 전송데이타내 일정 천이수를 보장하는 천이수 조절부와,
상기 천이수 조절부의 출력으로부터 데이타내의 '1'과 '0'의 개수를 계수하고 이 둘의 차를 구하여 현재 전송할 데이타의 DC-균형 정도를 알아내는 연산부와,
상기 연산부의 결과 값을 과거 전송된 데이타의 DC-균형 정도 값과 비교하여 현재 데이타의 DC-균형 보상 방향값을 알아내어 천이수 조절의 1단계 코딩이 완료된 데이타의 출력 전체를 반대 부호화 시키는 여부 결정부와,
상기 인코딩 여부 결정부의 출력에 의해 전송데이타의 DC-균형을 보장하는 DC-균형부로 구성됨을 특징으로 한다.
이하 본 발명을 첨부된 도면을 참조하여 상세히 설명한다.
제 1도는 본 발명의 실시예를 설명하기 위한 시스템도로서,
제 1시스템(100)에서 제2시스템(200)으로 전송라인(110)을 통해 직렬로 데이타를 전송함에 있어 제 1시스템(100)이 송신측일 경우, 송신데이타 입력측 단말기(101)와, 상기 단말기(101)의 출력신호를 부호화하는 인코딩부(102)와, 상기 인코딩부(102)의 출력을 전송라인(110)으로 직렬로 전송토록 다중화(serializer)하는 다중화부(103)로 구성된다.
제 2시스템(200)의 수신측일 경우 상기 제 1시스템(100)의 다중화부(103)로부터 전송된 데이타를 역다중화(deserializer)하는 역다중화부(105)와, 상기 역다중화부(105)에서 복호화하는 디코딩부(107)와, 상기 디코딩부(107)의 출력을 수신하는, 단말기(109)로 구성된다.
상기 단말기(101)는 컴퓨터, 통신장비 및 HDTV등이 될 수 있다.
그리고 본 발명의 코딩 및 디코딩은 상기 인코딩(102)과 디코딩(107) 블록에서 이루어진다.
상기 송수신 시스템에서 데이타 전송을 위한 전송라인은 동축 케이블, 광케이블이 될 수 있으며 시스템 구성의 편이를 위해 데이타 라인과 클럭라인을 따로 분배하는 것이 아니라 하나의 라인만 사용한다. 따라서 데이타를 전송하는 라인을 통해 클럭정보를 보내야 하므로 송신단의 클럭정보가 데이타에 함축되어야 한다. 단말기(101, 109)에서 발생시킨 병렬 데이타는 클럭을 고려하지 않은 ASCII 데이타이므로 클럭정보가 함축된 심볼로 인코딩을 해야 한다.
송신시 제 1시스템(100)의 단말기(101)에서 발생시킨 데이타를 인코딩부(102)에서 인코딩단계를 거쳐 클럭정보가 들어간 데이타 심볼로 만들고, 이를 다중화부(103)에서 다중화시켜 직렬로 계속된 비트열(bit-stream)로 전송라인(110)을 통해 보낸다.
상기에서 수신단이 클럭을 복원하는 방법은 데이타의 변화 경계로부터 클럭 복원을 하되, 그 구현방법에 따라 요구되는 데이타 패턴이 달라질 수 있다. 즉, 인접 비트들간에 천이가 많아 비트들간의 경계가 뚜렷한 패턴이 있을 수 있고, 천이가 거의 없이 한 레벨('0' 혹은 '1'을 표현하는 전기적 신호레벨)의 신호지속 시간이 오래되는 패턴이 있을 수 있다.
전자적인 방법은 아날로그적으로 클럭을 복원할 때 편리하다. 이 방법은 천이가 많아 전류의 방향이 매 비트마다 반대로 되기 때문에 전력소모가 많아지는 단점이 있다.
반면 디지털적으로 클럭을 복원하는 방법에 있어서는 일정한 천이만 보장이 되면 되기 때문에 데이타 패턴에 크게 의존하지 않는다. 따라서 천이를 되도록 적게 하는 것이 저전력 시스템을 구현할 때 유리하게 적용할 수 있다.
본 발명은 선택적으로 천이수가 많게, 혹은 적게 인코딩 할 수 있는 방법을 제시한다. 또한 본 발명의 알고리즘으로 처리될 수 있는 데이타는 8비트의 ASCII 데이타에만 국한되는 것이 아니라 일반적으로 짝수 개의 비트로 표현된 코드에 적용될 수 있으며 인코딩 결과 2개의 비트가 추가된다. 따라서 인코딩으로 파생되는 순수데이타의 전송효율 저하는 데이타의 비트수가 커질수록 감소된다.
본 발명이 제시하는 인코딩 방법을 8비트의 ASCII 경우를 예로 들어 수식으로 나타낸 것이 테이블1에 명시되어 있다.
이를 보다 일반적인 2n 비트수를 갖는 데이타의 인코딩 알고리즘으로 확대할 때, 천이수를 계수하는 T는 2n-1개의 EXOR 게이트의 출력의 모든 합으로부터 구할 수 있으며, 다수천이 인코딩인 ①의 경우, T는 4가 아닌 n가 비교되며, 소수천이 인코딩인 ②의 경우, T는 3이 아닌 n-1과 비교된다.
테이블1. 제 1단계 천이 조절 코딩 알고리즘
위의 인코딩은 앞서 언급한 2단계의 독립적인 인코딩 과정에서 제1단계에 상응한다. 입력된 데이타에서 인접한 비트간의 천이수를 계수하여 이를 T로 대응한다. 그 후, 천이수 조절 모드에 따라 두 가지 경우로 분기하여 인코딩을 한다.
첫째, 다수천이 조절 모드인 경우, 천이수를 계수한 T가 4보다 작은 경우는 데이타내에 천이수가 많게 하려는 취지에 어긋나므로 짝수 인덱스를 가진 비트들을 반대부호화 시킨다. 이렇게 하면 결과적으로 7-T개의 천이수가 생긴다. 만약 입력된 데이타내에 이미 충분한 천이가 있기 때문에 천이수를 계수한 T가 4이상인 경우는 제 1단계의 인코딩을 가하지 않게 된다.
둘째, 소수천이 조절 모드의 경우, 천이수를 계수한 T가 4보다 큰 경우는 데이타내에 천이수가 적게 하려는 취지에 어긋나므로 짝수 인덱스를 가진 비트들을 반대부호화 시킨다. 이렇게 하면 결과적으로 7-T개의 천이수가 생긴다. 만약 입력된 데이타내에 이미 거의 천이가 없기 때문에 천이수를 계수한 T가 3이하인 경우는 제 1단계의 인코딩을 가하지 않게 된다.
위의 제 1단계의 코딩 적용 방법을 종합할 때, 이 결과 1비트가 추가되는데 이는 짝수 인덱스를 가진 비트들을 반대부호화 했는지의 여부를 나타내는 비트로 이를 ABI(Alternative Bit Inversion) 비트라고 칭한다.
표2는 8비트의 ASCII 데이타 256개를 천이수대로 분류하고, 이를 다수 천이수 조절모드로 본 발명이 제시한 코딩방법에 의해 인코딩을 하였을 때 결과적으로 나타나는 천이수를 비교한 것이다. 아무런 코딩을 가하지 않은 ASCII 데이타는 평균 3.5개의 천이를 가지며, 본 발명이 제시하는 코딩 방법으로 다수 천이를 갖도록 코딩하였을 때는 평균 4.6개의 천이를 갖는다.
표3은 8비트의 ASCII 데이타 256개를 천이수대로 분류하고, 이를 소수 천이수 조절모드로 본 발명이 제시한 코딩방법에 의해 인코딩을 하였을 때 결과적으로 나타나는 천이수를 비교한 것이다. 아무런 코딩을 가하지 않은 ASCII 데이타는 평균 3.5개의 천이를 가지며, 본 발명이 제시하는 코딩 방법으로 소수 천이를 갖도록 코딩하였을 때는 평균 1.75개의 천이를 갖는다.
상기한 제 1단계의 천이수 조절 모드 코딩 알고리즘에 입각하여 천이수에 따라 신호밴드를 구분하면 표4, 5와 같다.
첫째, 다수천이 조절 모드의 경우, 데이타는 되도록 많은 천이를 갖도록 코딩하기 때문에 표4와 같이, 천이수에 의해 신호밴드를 구분하였을 때 고주파를 갖는 신호대역으로 대응된다. 반면, 명령어는 천이수가 적은 신호밴드에 대응되므로 둘간은 천이수에 의해 명확히 구분된다.
둘째, 소수천이 조절 모드의 경우, 데이타는 되도록 적은 천이를 갖도록 코딩하기 때문에 표5와 같이, 천이수에 의해 신호밴드를 구분하였을 때 저주파를 갖는 신호대역으로 대응된다. 반면, 명령어는 천이수가 많은 신호밴드에 대응되므로 둘간은 천이수에 의해 명확히 구분된다.
따라서 본 발명이 제시하는 코딩 방법은 천이수에 의해 신호밴드 구분을 명확히 한다. 앞서 언급한 신호밴드 구분의 단순성은 전송라인을 통해 데이타외에 링크의 유지, 보수를 위해 사용되는 명령어를 검출, 처리하는 과정에서 중요한 역할을 한다.
일례로 앞서 제 1도의 수신단은 송신단이 보낸 비트열을 일정 개수만큼 역다중화부(105)에서 끊어 병렬데이타를 만들고, 다시 이를 디코딩부(107)에서 디코딩한다. 이때, 문제가 되는 것은 어디서 비트열을 끊을 것인가이다. 이를 character(혹은 byte)동기화 문제라고 한다. 이를 해결하기 위해 송신단은 수신단이 알기 쉬운 특정 패턴의 심볼을 보내주어 character의 시작점을 알려주어야 한다. 이런 목적으로 사용되는 심볼은 명령어 그룹(out-of-band)에 속하며 데이타와는 구별이 쉬워야 한다. 또한 순수 데이타를 인코딩하여 늘어놓은 비트열에서는 나타나지 않아야 한다.
본 발명은 앞서 기술되었듯이 천이수에 의해 신호밴드를 구분하므로 명령어와 데이타의 구분이 명확하며 명령어 심볼 패턴은 데이타 심볼 패턴에 나타날 수 없으며 그 역도 성립한다. 또한 데이타를 위치시킬 수 있는 가능한 코드 집합 셋의 개수와 명령어를 위치시킬 수 있는 가능한 집합 셋의 개수가 같은 특징이 있다. 따라서 사용자의 목적에 따라 명령어를 데이타의 개수만큼 만들 수 있다.
본 발명이 제시한 두단계의 인코딩 과정중 천이 조절 알고리즘을 플로우 차트로 표현한 것이 첨부한 제 2도에 명시되어 있다. 이는 처리되는 데이타 단위가 바이트인 경우를 예시함으로써 그 원리를 설명할 수 있다.
즉, 제2도의 (2a)과정에서 데이타를 입력받고, 천이수를 게수하는 T의 초기값으로 0을 지정하고, 천이수 검출을 위한 루프 카운트 값을 6로 지정한다.
(2b)과정에서 인접한 두 비트간에 배타적 논리합을 취함으로서 천이수를 누적한다. 즉, 이웃하는 비트의 값이 같을 때 '0'을 발생하고, 다를 때 '1'을 발생하는 XOR 게이트를 사용하여 천이를 검출한다.
(2c)와 (2d)의 과정은 데이타내에서 전체 천이수 검출을 위해 루프를 몇 번 반복할 것인지를 제어하는 블록이다.
(2e)과정에서는 다수천이 조절 모드인지, 아니면 소수천이 조절 모드인지의 선택에 따라 조건 분기를 하는 블록이다.
상기 바이트내 천이갯수를 최대로 하는 즉, 다수천이 조절 모드일 때 (2f)로 분기하며 소수천이 조절 모드일 때 (2g)로 분기한다.
다수 천이수 조절 모드로 분기한 (2f)의 과정에서 천이수를 계수한 T의 값이 4개 이상일 때 바이트내 천이수를 많게 하는 취지에 맞으므로 (2h)과정으로 분기하고, T가 4개 이하일 때 바이트내 천이수를 많게 하려는 취지에 어긋나므로 (2i)과정으로 분기해 짝수 인덱스를 가진 비트들을 반대부호화 시킨다.
소수 천이수 조절 모드로 분기한 (2e)과정에서 천이수를 계수한 T의 값이 4개 이상일 때 바이트내 천이수를 적게 하려는 취지에 어긋나므로 (2i)과정으로 분기해 짝수 인덱스를 가진 비트들을 반대부호화 시켰고, T가 4개 미만일 때 (2h)의 과정으로 분기한다.
이제까지는 제 1단계의 코딩과정에 대한 설명으로 이 과정을 요약하면 전송되는 데이타내에 천이수를 최대로, 혹은 최소로 갖도록 인코딩하는 과정이었다.
다음은 DC-균형을 위한 코딩방법에 대한 설명으로 본 발명이 제시하는 2단계에 걸친 인코딩의 적용에 있어 제2단계에 해당이 된다.
DC-균형은 상기에서 언급하였듯이 전송되는 비트-스트림에서 직류성분을 차단하기 위해 최대한 '1'과 '0'이 같은 비율로 전송되도록 데이타와 데이타간의 관계에 의해 코딩을 적용하는 것이다.
DC-균형을 얻기 위한 코딩 방법의 기본 원리는 현재 전송해야 할 데이타, 즉 1단계의 천이 조절 코딩과정을 거친 데이타내를 가지고 일련의 과정을 처리함에 있어, 데이타에서 DC-불균형 정도를 알아내고, 과거 전송되었던 심볼들의 DC-균형정도를 기록하는 값과 앞서 언급한 현재 심볼의 DC-불균형과를 비교하여 현재 보낼 데이타를 그냥 보낼지 반대부호화하여 전송할지를 결정하여 과거에 대한 DC-불균형을 보상하는 방향으로 현재의 데이타를 극성(polarity)을 변경하는 것이다.
본 발명이 제시하는 제2단계의 DC-균형 인코딩 방법을 8비트의 ASCII 경우를 예로 들어 수식으로 나타내면 다음과 같다. 이를 보다 일반적인 2n 비트수를 갖는 데이타의 DC-균형 인코딩 알고리즘으로 확대할 때, 제 1단계의 코딩과정을 거친 데이타내에서 불균형의 정도를 기록하는 V의 값, 혹은 과거의 전송된 데이타 심볼의 불균형을 누적한 DP(Disparity)의 값은, 다수천이 인코딩인 ①의 경우, -n/2에서 n/2의 범위의 값을 가지며, 소수천이 인코딩인 ②의 경우, -n에서 n의 범위의 값을 가진다.
테이블 2. 제2단계 DC-균형 코딩 알고리즘
데이타의 비트수가 바이트인 경우에 대해 설명한 위의 코딩 알고리즘에서 현재 데이타의 DC-불균형값을 V의 값에 대응된다. 또한 과거의 불균형을 나타내는 DP값은 두가지의 천이수 조절 모드에 따라 두가지로 나뉜다.
첫째, 다수천이 조절 모드의 경우, 과거 불균형 정도를 기록하는 DP값의 범위는 -2에서 2이다. 이 DP값이 의미하는 바는 현재까지 보낸 비트-스트림에서 '1'을 기준으로 바라본 '1'의 총 개수와 '0'의 총 갯수의 상대적인 차이값을 지칭하는 것으로 DP값을 2배한 것이 실제적인 불균형 값이다. 예로 DP가 -1일때는 이제까지 보낸 심볼의 비트-스트림에서 '1'의 갯수가 '0'의 갯수에 비해 2개 적다는 뜻이며, DP가 1일 때는 '1'의 개수가 '0'의 개수에 비해 2개 많게 보내졌다는 것을 뜻한다. 다수 천이수 조절 모드의 경우 제 1단계의 코딩 과정을 거치면서 데이타에 많은 천이가 있기 때문에 DP가 위치하는 값의 범위가 작다.
둘째, 소수천이 조절 모드의 경우, 과거 불균형 정도를 기록하는 DP(Disparity)값의 범위는 -4에서 4이다. 이는 제 1단계의 코딩 과정에서 천이가 거의 없도록 인코딩을 하였기 때문에 심볼내에서 DC-불균형정도의 값은 오히려 커졌기 때문이다. 따라서 다수천이의 경우보다 DP가 위치하는 값의 범위가 넓다.
DC-균형을 얻기 위해 가해지는 일련의 수행과정은 다음의 예로 설명이 가능하다. 예로, DP가 0이었다면, 과거에 보낸 데이타가 '1'과 '0'이 똑같은 수로 전송되어 있는 상태이므로 이때는 과거의 불균형이 새로운 데이타 전송에 아무런 규제를 가하지 않는 상태이다. 따라서 새로운 데이타는 아무쪽으로나 전송할 수 있다.
또한, 만약 과거의 불균형을 기록하는 DP가 음수였다면, 이것은 '1'이 적게 보내졌으므로 '1'이 많게 보내려는 쪽으로 움직이려 하는 것이고, 만약 DP가 양수였다면, 이것은 '1'이 그동안 많이 보내졌으므로 적게 보내려는 쪽으로 작용하여 이전 불균형을 보상하려 할 것이다.
상기 언급한 DP의 행위와 비슷하게 V가 0이라면 현재 보낼 데이타가 균형이 이루어진 상태이므로, 새로운 데이타는 전체를 반대부호화하여도 현재 데이타 내에서의 DC-불균형정도는 같다. 따라서 어느 쪽으로나 보낼 수가 있다.
위에서 언급한 원리에 의해 각각 DP와 V의 상태에 따라 조건 분기하여 각 분기에서 처리해야 하는 일이 위의 알고리즘에 명시되어 있다.
첫째, 1: ∼ 7: 라인까지는 DP가 0이거나 V가 0일 때로, 이 분기에서는 제1단계에서 얻어지는 ABI 비트에 따라 TBI의 값을 ABI의 반대부호로 취한다. 즉 2:에서 E8의 값에 따라 두가지 경우로 재분기한다. 즉, E8이 '0'인 경우는 3: ∼ 4: 라인을 통해서 처리되며 그 반대의 경우는 6: ∼ 7: 라인을 통해서 처리된다.
둘째, 8: 라인은 DP와 V의 부호값을 서로 비교한 것으로 두 부호가 같은 경우는 9: ∼ 10: 라인을 통해서 처리되며 그 반대의 경우는 12: ∼ 13: 라인을 통해 처리된다.
위에서 제시한 알고리즘을 플로우 차트로 표현한 것이 첨부한 제3도의 그림에 명시되어 있다. 이는 처리되는 데이타 단위가 바이트인 경우를 예시한다.
(3a)과정에서 제 1단계의 코딩을 거친 데이타를 입력으로 받고, DC-균형 정도를 알아내기 위해 11의 비트열을 계수하는 V1의 값과 0의 비트열을 계수하는 V2의 값을 0으로 초기화한다. 또한 루프 카운트 값을 세팅한다.
(3b)과정에서는 제 1단계의 인코딩을 거친, 천이수가 조절된 바이트내에서 '1'과 '0'의 불균형 정도를 알아내기 위해 것으로 다음의 예로 그 행위의 설명하면 다음과 같다.
예를 들어, 11010011의 패턴내에서는 '1'이 5번 나오고, '0'이 3번 나온다.
따라서 균형이 맞지 않는 패턴이다. 이때 '1'이 '0'보다 2개 많은데, 어느 정도로 불균형이 되어 있는지를 알아내는 방법은 다음과 같다. 8개의 비트를 두 개씩 네 묶음으로 묶어 놓는다. 그후, 두 비트씩 묶은 네 개의 묶음중 11의 묶음수를 계수하고, 동시에 0의 묶음수 알아본다. 앞선 예에서, 11은 2번 나왔고, 0은 1번 나왔다. 따라서 11의 총 개수에서 0의 총 개수를 빼면 2-1=1이 된다. 즉, 나온 결과를 두배하면 불균형 정도를 알 수 있다.
(3b)과정에서 2비트씩 묶인 이웃하는 비트열이 11일 때는 이를 검출하기 위한 V0:=V1+(e2n+1∩ e2n) 구문을 통해 V1값이 증가된다.
또한 2비트씩 묶인 이웃하는 비트열이 0일 때는 이를 검출하기 위한구문을 통해 V0값이 증가한다. 나머지 1과 10은 두 비트열내에서 이미 DC-균형이 있는 상태이므로 아무값도 변경시키지 않는다.
(3c)와 (3d)의 과정은 데이타내에서 전체 천이수 검출을 위해 루프를 몇 번 반복할 것인지를 제어하는 블록이다.
(3e)의 과정은 V1과 V0의 차를 구하여 이를 V로 대응시키는 과정으로 '1'을 기준으로 DC-불균형 정도를 계산하기 위한 것이다.
다음 상기 (3f)과정에서 이제까지 이전 보낸 데이타의 불균형 정도를 기록하고 있는 DP값이 0이거나 (0이라는 것은 1과 0이 똑같은 개수만큼 전송되었다는 의미), 현재 보낼 데이타가 균형이 맞는 패턴이어서 V값이 0인지를 검색한다. 상기 (3f)과정의 검출결과에 따라 양쪽으로 갈라진다. 맞으면 (3g)과정으로 가고 틀리면 (3h)과정으로 간다.
상기 (3g)과정에서 DP 또는 V가 0일 때 E8(천이수 조절 여부에 의해 생긴 추가 인코딩 비트)이 '0'인지 '1'인지를 검색한다. E8이 '1'이라면 (3j)로 분기해 E9는 '0'으로 해서 보내고, E8이 '0'이라면 (3i)로 분기해 E9는 '1'으로 해서 보낸다. (3j)의 블록에서 E9가 '1'이므로 데이타 부분인 E[7:0]이 전부 뒤집어 보냈으므로 DP값에다 -V값을 더해준다. (3i)의 블록에서 E9가 '0'이므로 데이타 부분인 E[7:0]을 그냥 전송되므로 이전 DP값에다 그냥 V값을 더해준다.
상기 (3f)과정에서 DP또는 V가 '0'이 아닐 때 (3h)로 분기하며, 여기서 다시 DP의 부호화 V의 부호가 같은지 다른지를 검색한다. 상기 (3h)과정에서 두 부호가 같은 경우는 (3k)로 분기해 데이타 부분인 E[7:0]을 뒤집어 보내고, 다른 경우는 (3l)로 분기해 그냥 보낸다.
상기(3k)의 처리과정에서 데이타를 전체 인버전해서 보낸다는 인코딩 비트인 E9가 '1'로 확정된 상태에서 E8이 '1'인 경우는 인코딩 비트에 의해 11이 하나 더 생긴 것이므로 DP의 값에 -V를 더해 주고 추가로 1을 더해준다. 만약 E8이 '0'인 경우는 인코딩에 의해 생기는 DC-불균형으로 추가되는 것이 0이므로 결국 이를 종합할 때, 새롭게 갱신되는 DP의 값은 이전 DP값에 -V와 E8의 값을 더해주는 것이 된다.
상기(3l)의 처리과정에서 데이타 전체는 그냥 보내지므로 E9는 '0'으로 학정된 상태에서 E8이 '0'인 경우는 인코딩 비트에 의해 0이 하나 더 생긴 것이므로 새롭게 갱신되는 DP의 값은 이전 DP 값에 V를 더해주고 1을 빼준다. 만약 E8이 '1'인 경우는 인코딩에 의해 생기는 DC-불균형으로 추가되는 것이 0이므로 결국 이를 종합할 때, 새롭게 갱신되는 DP의 값은 이전 DP값에 V와을 빼주면 된다.
위의 제 2단계의 코딩 적용 방법을 종합할 때, 이 결과 상기 제 1단계의 ABI 비트외에 1비트가 더 추가되는데 이는 데이타 비트가 전체 반대부호하 되었는지 여부를 나타내는 비트로 이를 TBI(Total Byte Inversion)이라 칭힌다.
본 발명이 제시하는 디코딩 로직은 인코딩 과정의 단순성으로 인해 쉽게 구현이 가능하다. 즉 인코딩 정보를 담고 있는 두 개의 추가 비트로부터 데이타가 어떻게 인코딩되었는지를 쉽게 알 수 있기 때문이다.
테이블 3. 디코딩 알고리즘
제 2∼8도는 본 발명의 다른 실시예로서, 제 2, 3도가 소프트웨어적인 실시예라면 제 4∼8도는 하드웨어적인 실시예이다.
제 4도는 데이타내 천이수를 검출하는 출력부와, 이를 계수하는 계수기 및 천이수 조절 모드에 의해 천이수 조절을 가하는 구체 회로도로서,
입력데이타단(D7∼D0)의 상호 인접하는 천이상태를 XOR 게이트(401∼407)에서 배타적으로 논리합하여 검출한다. 상기 비트간 천이를 검출한 결과는 계수기(411∼414)에서 계수한다.
상기 계수기(411∼414)의 구체적인 구성은 전가산기(FA1∼FA4)의 4개로 구성되어지되, XOR 게이트(401∼403)에서 발생되는 천이검출 출력이 전가산기(411)에서 가산되고, XOR게이트(404∼406)에서 발생되는 출력이 전산기(412)에서 가산되며, 상기 가산기(411, 412)의 출력(S)과 상기 XOR 게이트(407)의 출력을 전가산기(413)에서 가산되며, 상기 전가산기(411∼413)의 케리출력(C0)을 전가산기(414)에서 가산하여 바이트내 천이수를 카운트하여 출력한다.
상기 천이수 카운트값(C2)과 천이수 조절모드(V가 '1'이면 다수천이 조절모드이며 '0'일 때는 소수천이 조절모드)의 신호에 따라 XOR 게이트(421)에서 인코딩 여부결정 신호(ABI)를 발생한다. 즉, ABI신호가 '1'일 때는 ABI 비트가 '1'로 짝수 인덱스를 갖는 비트를 반대부호하 시키라는 뜻이며 '0'일 때는 버퍼링을 하게 된다.
상기 제5도는 상기 제4도에서 발생시킨 ABI의 출력에 따라 홀수 인덱스를 갖는 비트는 본 발명이 제시하는 제 1단계의 코딩에 아무런 적용을 받지 않기 때문에 인버터(501∼510) 체인으로 단순히 버퍼링을 하고, 짝수 인덱스를 갖는 비트열은 XOR 게이트(521∼524)에 연결하여 ABI의 값에 따라 반대부호화, 혹은 버퍼링을 하게 된다.
상기 제 6도는 제 4도와 제 5도에 의해 본 발명이 제시하는 제 1단계의 코딩을 적용한 출력(E8∼E0)을 받아 DC-균형을 처리하기 위한 하드웨어 처리 로직을 보여준다. 데이타 부분인 E[7:0]은 각각 AND 게이트(601∼604)와 NOR 게이트(605∼608)에 같이 입력되어 그 출력이 제 1, 2카운터(610, 612)에서 입력되어 계수된다. 이때 제 1카운터의 출력값은 앞서 제 3도에서 설명한 V1에 해당이 되며 제 2카운터에서 출력한 값은 앞서 제 3도에서 설명한 V0에 해당이 된다.
상기 제 1, 2카운터에서 발생시킨 계수값은 각기 4개의 블록으로 입력되어 각각 산술 연산을 한다. (621) 블록은 V1-V0를 계산하는 로직으로 이의 출력값은 상기 제 3도에서 설명한 V의 값에 해당된다. (622) 블록은 V0-V1을 계산하는 로직으로 이의 출력값은 상기 제 3도에서 (3i) 블록의 처리에 사용될 -V값을 계산하는 로직이다. (623) 블록은 V0-V1+E8을 계산하는 로직으로 상기 제3도에서 (3k) 블록의 처리에 사용될 Q의 값을 계산하는 로직이다. (624) 블록은 V1-V0-을 계산하는 로직으로 상기 제 3도에서 (31) 블록의 처리에 사용될 P의 값을 계산하는 로직이다.
(631∼632)의 NOR 게이트는 각기 제 3도에서 설명한 V값과 DP값이 0인지를 검색하는 로직이며 (634)의 OR게이트의 a신호는 상기 제 2단계 DC-균형 코딩 알고리즘의 1: 라인의 처리에 해당하는 로직이다. (633)의 XOR 게이트는 상기 제 2단계 DC-균형 코딩 알고리즘의 8: 라인의 처리를 위해 사용하는 로직으로 DP의 부호(DP의 MSB)와 V의 부호(V의 MSB)를 비교하는 로직이다. (635)의 멀티플렉서 로직의 출력 b의 신호는 TBI의 값을 구하기 위한 로직이다. 즉, 상기 제 3도의 플로우차트를 설명하는 과정에서 언급하였듯이 DP가 0이거나 V가 0일 때는 TBI의 인코딩 비트는 ABI인코딩 비트의 반대값이 된다. 만약 DP가 0이 아니고 V도 0이 아닐 때는 V의 부호화 DP의 부호를 XOR한 값의 반대값이 TBI의 인코딩 비트가 된다. (641)의 멀티플렉서의 출력은 선택신호인 a가 s1에 전달되고 b는 s0에 전달되는데 s[1:0]의 값이 0일 때 P를 출력하며, 1일 때 Q를 출력하며, 2일 때 -V를 출력하며 3일 때 V를 출력한다. 이는 상기 제 3도에서 설명한 (3j) ~ (31)까지의 처리 불록에 해당되는 값을 선택하기 위함이다. (651)의 로직은 이전 DP의 값에 상기 (641)에서 선택한 값을 더해 새로운 DP를 갱신하기 위한 로직이다. (661)은 DP값을 저장하고 있는 레지스터로 시스템 초기화시 0으로 세팅된다.
제 7도는 제 6도에서 발생시킨 TBI 비트에 의해 데이타 전체를 반대부호하 시키거나 버퍼링하는 로직이다.
제 9도에서 본 발명이 제공하는 디코딩 로직의 구체적 회로도이다.
상술한 바와 같이 본 발명이 제시하는 코딩 방법은 데이타 전체를 하나의 그룹으로 보고 데이타내에의 비트간의 천이 조절을 선택적으로 할 수 있어 아날로그적으로 클럭을 복원하기 쉽도록 다수천이를 갖도록 인코딩 하거나, 저적력 시스템의 구현시 천이를 되도록 적게하여 파워 소모를 줄이도록 소수천이를 갖도록 인코딩 할 수 있다. 또한 시간적으로 전송되는 비트-스트림에서 '1'과 '0'이 같은 비율로 되도록 DC-균형이 보장되도록 인코딩한다. 이의 구현에 있어 천이 조절을 위한 인코딩과 DC-균형(DC-Balance)을 인코딩을 독립적으로 2단계에 걸쳐 적용하여 이를 파이프라인 방식으로 구현할 시 고속 구현이 가능하며, 인-밴드(in-band)와 아웃-오브-밴드(out-fo-band)의 신호구분을 쉽게 할 수 있는 이점이 있다.

Claims (5)

  1. 데이타 전송시스템의 코딩방법에 있어서, 전송데이타 데이타내 천이를 검출하여 이를 계수하여 출력하는 제 1과정과, 상기 제 1과정의 천이 검출 출력과 천이수 조절모드의 선택신호의 입력을 비교하여 천이수 조절 여부를 결정하는 제 2과정과, 상기 제 2과정의 출력에 의해 상기 전송데이타의 천이수를 조절하는 제 3과정과, 상기 제 3과정의 출력으로부터 천이 조절 인코딩된 데이타내 '0'과 '1'의 개수를 계수하는 제 4과정과, 상기 제 4과정의 '0'과 '1'의 계수한 결과 값을 과거 전송된 데이타의 균형정도 값과 비교에 의해 현재 보낼 데이타의 DC-균형 보상 방향을 검출하는 제 5과정과, 상기 제 5과정에서 검출된 DC-균형 보상 방향 검출값에 따라 천이 조절 인코딩 출력을 반대부호 시키는 방법에 의해 DC-균형을 맞추는 제 6과정과, 송신단에서 보낸 데이타를 수신단에서 디코딩하는 제 7과정으로 구성됨을 특징으로 하는 전송데이타의 코딩방법.
  2. 제 1항에 있어서, 제 1, 2과정을 통해 데이타내 천이를 검출하여 천이수 조절 모드에 따라 천이를 조절함 특징으로 하는 전송데이타의 코딩방법.
  3. 제 1항에 있어서, 제 3과정을 통해 다수천이, 혹은 소수천이를 하는 데이타 패턴을 만들기 위해 짝수 인덱스를 가진 비트들만 반대부호화 시켜 천이수를 조절을 획득함을 특징으로 하는 전송데이타의 코딩방법.
  4. 제 1항에 있어서, 제 4과정을 통해 데이타내 DC-불균형 정도를 알아내기 위해 2비트씩 묶는 제 1단계와, 상기 제 1단계에서 2비트씩 묶는 값에서 0과 11의 개수를 계수하는 제 2단계와, 상기 제 2단계의 0과 11의 계수값에서 오프세트을 산출하여 DC-균형 보상 방향을 검출하는 제 3단계와, 상기 제 3단계에서 검출한 DC-균형 보상 방향값과 이전 누적된 DC-균형 보상 방향값과의 비교에 의해 전송될 데이타의 DC-균형 보상방향을 조절하는 제 4단계와, 상기 제 4단계에서 결정된 출력값에 의해 추가의 인코딩 비트를 제외한 데이타 부분의 전체 비트들 반대부화하여 혹은 버퍼링하여 전송함으로써 DC-균형을 획득하는 제 5단계로 이루어짐을 특징으로 하는 전송데이타의 코딩방법.
  5. 제 1항에 있어서, 송신단이 보낸 인코딩 데이타를 천이 조절과 DC-균형을 획득하기 위해 가해진 일련의 인코딩 정보를 담고 있는 추가의 두 비트를 이용해 거꾸로 원래 데이타를 복원함을 특징으로 하는 전송데이타의 코딩방법.
KR1019950015401A 1995-06-12 1995-06-12 전송데이타의 천이 조절과 dc-균형이 가능한 코딩방법 및 시스템 KR0145587B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019950015401A KR0145587B1 (ko) 1995-06-12 1995-06-12 전송데이타의 천이 조절과 dc-균형이 가능한 코딩방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950015401A KR0145587B1 (ko) 1995-06-12 1995-06-12 전송데이타의 천이 조절과 dc-균형이 가능한 코딩방법 및 시스템

Publications (2)

Publication Number Publication Date
KR970004522A KR970004522A (ko) 1997-01-29
KR0145587B1 true KR0145587B1 (ko) 1998-08-17

Family

ID=19416882

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950015401A KR0145587B1 (ko) 1995-06-12 1995-06-12 전송데이타의 천이 조절과 dc-균형이 가능한 코딩방법 및 시스템

Country Status (1)

Country Link
KR (1) KR0145587B1 (ko)

Also Published As

Publication number Publication date
KR970004522A (ko) 1997-01-29

Similar Documents

Publication Publication Date Title
US5200979A (en) High speed telecommunication system using a novel line code
JP3542809B2 (ja) 遷移制御された平衡エンコード体系
US7180958B2 (en) Technique for utilizing spare bandwidth resulting from the use of a transition-limiting code in a multi-level signaling system
US5022051A (en) DC-free line code for arbitrary data transmission
EP0097763B1 (en) A method and apparatus for producing a dc balanced (0,4) run length limited rate 8b/10b code from an input data stream
KR100318031B1 (ko) 변환 제어 디지탈 신호 전송 시스템
US20060126751A1 (en) Technique for disparity bounding coding in a multi-level signaling system
KR100336496B1 (ko) 무직류, 최소대역폭특성을 갖는 선로부호의 설계방법 및 부호화/복호화 장치
US8446978B2 (en) Communication system
KR100279752B1 (ko) 고속 광 전송 시스템을 위한 비트 삽입/조작 선로 부호의 부/복호화 장치
JPH0273738A (ja) 直列コードの文字境界検出装置
EP0977411A1 (en) Block code with limited disparity
EP0537407B1 (en) Flexible encoding method and architecture for high-speed data transmission and storage
JP2001508972A (ja) エンコーダ及びデコーダ
US4524462A (en) System for jointly transmitting high-frequency and low-frequency digital signals over a fiber-optical carrier
KR100281738B1 (ko) 니블 반전 및 블록 반전 부호의 부호화 및 복호화 방법, 그 부호 및 복호장치
GB1489177A (en) Digital data signalling systems and apparatus therefor
US6346895B1 (en) Apparatus and method for using nibble inversion code
KR0145587B1 (ko) 전송데이타의 천이 조절과 dc-균형이 가능한 코딩방법 및 시스템
US7302631B2 (en) Low overhead coding techniques
US6912008B2 (en) Method of adding data to a data communication link while retaining backward compatibility
CA2120697C (en) Pair division multiplexer for digital communications
US6806817B2 (en) Means and method of data encoding and communication at rates above the channel bandwidth
JPH0936823A (ja) mBnB符号を用いた並列データ伝送装置
RU2206181C1 (ru) Устройство для кодирования - декодирования данных

Legal Events

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

Payment date: 20120502

Year of fee payment: 15

LAPS Lapse due to unpaid annual fee