KR20050122514A - 전송 데이터의 스큐를 감소시키는 데이터 코딩 방법과이를 이용한 인코딩 장치 및 디코딩 장치와 이들을구비하는 송수신 장치 및 그 송수신 방법 - Google Patents

전송 데이터의 스큐를 감소시키는 데이터 코딩 방법과이를 이용한 인코딩 장치 및 디코딩 장치와 이들을구비하는 송수신 장치 및 그 송수신 방법 Download PDF

Info

Publication number
KR20050122514A
KR20050122514A KR1020040047638A KR20040047638A KR20050122514A KR 20050122514 A KR20050122514 A KR 20050122514A KR 1020040047638 A KR1020040047638 A KR 1020040047638A KR 20040047638 A KR20040047638 A KR 20040047638A KR 20050122514 A KR20050122514 A KR 20050122514A
Authority
KR
South Korea
Prior art keywords
data signal
voltage levels
set number
bits
parallel
Prior art date
Application number
KR1020040047638A
Other languages
English (en)
Other versions
KR100630686B1 (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 KR1020040047638A priority Critical patent/KR100630686B1/ko
Priority to US11/066,831 priority patent/US7355532B2/en
Priority to JP2005182360A priority patent/JP5106757B2/ja
Priority to CN2005100813347A priority patent/CN1713626B/zh
Publication of KR20050122514A publication Critical patent/KR20050122514A/ko
Application granted granted Critical
Publication of KR100630686B1 publication Critical patent/KR100630686B1/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
    • 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/4917Transmitting 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 multilevel 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/02Conversion to or from weighted codes, i.e. the weight given to a digit depending on the position of the digit within the block or code word
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B14/00Transmission systems not characterised by the medium used for transmission
    • H04B14/02Transmission systems not characterised by the medium used for transmission characterised by the use of pulse modulation
    • H04B14/04Transmission systems not characterised by the medium used for transmission characterised by the use of pulse modulation using pulse code modulation

Abstract

전송 데이터의 스큐를 감소시키는 데이터 코딩 방법과 이를 이용한 인코딩 장치 및 디코딩 장치와 이들을 구비하는 송수신 장치 및 그 송수신 방법이 개시된다. 본 발명에 따른 데이터 코딩 방법은 전압 영역에서의 송수신을 위한 데이터의 코딩 방법에 있어서, (a) 제1 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제1 직렬 데이터 신호를 상기 제1 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제1 병렬 데이터 신호로 변환하는 단계; (b) 상기 제1 병렬 데이터 신호를 함수 맵핑(functional mapping)을 통해 코딩하여 상기 제1 병렬 데이터 신호에 포함되는 비트들이 나타내는 전압 레벨의 수를 변경하고, 제2 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제2 병렬 데이터 신호를 출력하는 단계; 및 (c) 상기 제2 병렬 데이터 신호를 상기 제2 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제2 직렬 데이터 신호로 변환하는 단계를 포함하는 것을 특징으로 한다. 본 발명에 따른 데이터 코딩 방법과 이를 이용한 인코딩 장치 및 디코딩 장치와 이들을 구비하는 송수신 장치 및 그 송수신 방법은 전송 데이터의 스큐를 감소시키고, 전력 소모를 줄일 수 있는 장점이 있다.

Description

전송 데이터의 스큐를 감소시키는 데이터 코딩 방법과 이를 이용한 인코딩 장치 및 디코딩 장치와 이들을 구비하는 송수신 장치 및 그 송수신 방법{Data coding method for reducing skew of transmission data, encoding device and decoding device using the method, and transceiver with the encoding device and the decoding device and transmission and reception method}
본 발명은 데이터 전송 분야에 관한 것으로서, 특히, 전송 데이터의 인코딩 및 디코딩 방법에 관한 것이다.
일반적으로 전송될 데이터는 전송 장치에 의해 인코딩 된 후 신호 라인을 통하여 수신 장치에 전달되고, 수신 장치가 상기 인코딩 된 데이터를 다시 디코딩하여 원래의 데이터로 복원한다. 그 결과 데이터가 전송될 때 에러의 발생 비율이 감소될 수 있다. 이러한 종래의 데이터 송수신 장치 및 방법의 일례가 미국 특허 제5,387,911호에 기재되어 있다. 한편, 데이터 전송 방식으로는 시간 영역(time domain)에서의 데이터 전송과 전압 영역(voltage domain)에서의 데이터 전송이 있다. 시간 영역에서의 데이터 전송 방식은 예를 들어, 9비트의 디지털 데이터 신호들을 9클럭 사이클 동안 1비트씩 연속적으로 전송하는 것이다. 이에 반해, 전압 영역에서의 데이터 전송 방식은 예를 들어, 복수의 디지털 데이터 신호들을 그 비트 값에 따라 각기 다른 전압 레벨을 가지는 아날로그 데이터 신호들로 변환하고, 상기 아날로그 데이터 신호들을 동시에 전송하는 방식이다. 상술한 것과 같이, 시간 영역에서의 데이터 전송 방식은 복수의 디지털 데이터들을 연속적으로 전송하므로, 전압 영역에서의 데이터 전송 방식에 비하여 데이터의 전송 속도가 더 느리다. 또, 시간 영역에서의 데이터 전송 방식이 전압 영역에서의 데이터 전송 방식과 동일한 데이터 전송 속도를 갖기 위해서는 전송 클럭 신호의 주파수가 더 증가되어야 한다. 그러나 전송 클럭 신호의 주파수가 증가되면 데이터 복원시 에러 발생 비율이 증가되므로, 최근에는 전압 영역에서의 데이터 전송 방식이 주로 사용되고 있다.
도 1은 종래의 데이터 송수신 장치(10)를 나타내는 블록도로서, 전압 영역에서의 데이터 송수신 장치를 나타낸다. 도 1을 참고하면, 상기 데이터 송수신 장치(10)는 DA 컨버터(11)와 AD 컨버터(12)를 포함한다. 상기 DA 컨버터(11)는 내부 회로(미도시)로부터 수신되는 3K(K는 정수)비트의 디지털 데이터 신호(D_IN)를 2K개의 전압 레벨을 가지는 아날로그 데이터 신호(AG_S)로 변환하여 출력한다. 상기 AD 컨버터(12)는 신호 라인(13)을 통하여 수신되는 상기 아날로그 데이터 신호(AG_S)를 다시 3K비트의 디지털 데이터 신호(D_OUT)로 변환하여 출력한다.
도 2는 도 1에 도시된 신호 라인(13)을 통하여 전송되는 아날로그 데이터 신호(AG_S)의 파형을 나타내는 도면이다. 도 2에 도시된 것과 같이, 상기 아날로그 데이터 신호(AG_S)가 인접한 전압 레벨들 사이에서 천이 하는 경우(파형 G1참고)에 비하여, 상기 아날로그 데이터 신호(AG_S)가 최하위의 전압 레벨에서 최상위의 전압 레벨로 천이 하는 경우(파형 G2참고), 전송 데이터의 스큐(skew)가 더 크게 발생된다. 그 결과 수신 장치가 데이터를 복원할 때 에러 발생 비율이 증가하게 된다. 이러한 전송 데이터의 스큐는 데이터의 전송 속도를 증가시키는데 제한적인 요소로 작용할 수 있고, 데이터의 전송 특성을 악화시킨다. 또한, 전송되는 데이터의 전압 레벨의 변화가 클 수록 송신 장치와 수신 장치에서의 소모 전류가 증가되고, 이러한 현상은 전송되는 데이터의 비트 수가 증가함에 따라 더욱 심각하게 발생된다. 따라서 전압 영역에서의 데이터 전송 방식에서 전송 데이터의 스큐를 감소시키기 위한 방안이 절실히 요구되고 있다.
본 발명이 이루고자하는 기술적 과제는, 전송 데이터의 스큐를 감소시키는 데이터 코딩 방법을 제공하는데 있다.
본 발명이 이루고자하는 다른 기술적 과제는, 전송 데이터의 스큐를 감소시키는 데이터 코딩 방법을 이용한 인코딩 장치를 제공하는데 있다.
본 발명이 이루고자하는 또 다른 기술적 과제는, 전송 데이터의 스큐를 감소시키는 데이터 코딩 방법을 이용한 디코딩 장치를 제공하는데 있다.
본 발명이 이루고자하는 또 다른 기술적 과제는, 전송 데이터의 스큐를 감소시키는 데이터 코딩 방법을 이용한 인코딩 장치 및 디코딩 장치를 구비하는 송수신 장치를 제공하는데 있다.
본 발명이 이루고자하는 또 다른 기술적 과제는, 전송 데이터의 스큐를 감소시키는 데이터 코딩 방법을 이용한 인코딩 장치 및 디코딩 장치를 구비하는 송수신 장치의 데이터 송수신 방법을 제공하는데 있다.
상기 기술적 과제를 달성하기 위한 본 발명에 따른 데이터 코딩 방법은 전압 영역에서의 송수신을 위한 데이터의 코딩 방법에 있어서, (a) 제1 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제1 직렬 데이터 신호를 상기 제1 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제1 병렬 데이터 신호로 변환하는 단계; (b) 상기 제1 병렬 데이터 신호를 함수 맵핑(functional mapping)을 통해 코딩하여 상기 제1 병렬 데이터 신호에 포함되는 비트들이 나타내는 전압 레벨의 수를 변경하고, 제2 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제2 병렬 데이터 신호를 출력하는 단계; 및 (c) 상기 제2 병렬 데이터 신호를 상기 제2 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제2 직렬 데이터 신호로 변환하는 단계를 포함하는 것을 특징으로 한다.
상기 다른 기술적 과제를 달성하기 위한 본 발명에 따른 인코딩 장치는, 전압 영역에서의 전송을 위한 데이터를 인코딩하는 인코딩 장치에 있어서, 직렬 대 병렬 변환기, 함수 맵핑부, 및 병렬 대 직렬 변환기를 포함하는 것을 특징으로 한다. 직렬 대 병렬 변환기는 제1 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제1 직렬 데이터 신호를 제1 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제1 병렬 데이터 신호로 변환하여 출력한다. 함수 맵핑부는 제1 병렬 데이터 신호를 함수 맵핑을 통해 인코딩하여 제1 병렬 데이터 신호에 포함되는 비트들이 나타내는 전압 레벨의 수를 증가시키고, 제2 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제2 병렬 데이터 신호를 출력한다. 병렬 대 직렬 변환기는 제2 병렬 데이터 신호를 제2 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제2 직렬 데이터 신호로 변환하여 출력한다.
상기 또 다른 기술적 과제를 달성하기 위한 본 발명에 따른 디코딩 장치는, 전압 영역에서의 수신 데이터를 디코딩하는 디코딩 장치에 있어서, 직렬 대 병렬 변환기, 함수 맵핑부, 및 병렬 대 직렬 변환기를 포함하는 것을 특징으로 한다. 직렬 대 병렬 변환기는 제1 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제1 직렬 데이터 신호를 제1 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제1 병렬 데이터 신호로 변환하여 출력한다. 함수 맵핑부는 제1 병렬 데이터 신호를 함수 맵핑을 통해 디코딩하여 제1 병렬 데이터 신호에 포함되는 비트들이 나타내는 전압 레벨의 수를 감소시키고, 제2 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제2 병렬 데이터 신호를 출력한다. 병렬 대 직렬 변환기는 제2 병렬 데이터 신호를 제2 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제2 직렬 데이터 신호로 변환하여 출력한다.
상기 또 다른 기술적 과제를 달성하기 위한 본 발명에 따른 송수신 장치는, 전압 영역에서 데이터를 송수신하는 장치에 있어서, 인코딩 장치, DA 컨버터, AD 컨버터, 및 디코딩 장치를 포함하는 것을 특징으로 한다. 인코딩 장치는 그 비트 값에 따라 제1 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제1 디지털 데이터 신호를 인코딩하여 그 비트 값에 따라 제2 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제2 디지털 데이터 신호를 출력한다. DA 컨버터는 제2 디지털 데이터 신호를 제2 설정된 수의 전압 레벨들을 포함하는 아날로그 데이터 신호로 변환하여, 신호 라인에 출력한다. AD 컨버터는 신호 라인을 통하여 수신되는 아날로그 데이터 신호를 그 전압 레벨에 따라 제2 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제3 디지털 데이터 신호로 변환한다. 디코딩 장치는 제3 디지털 데이터 신호를 디코딩하여 그 비트 값에 따라 제1 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제4 디지털 데이터 신호를 출력한다.
상기 또 다른 기술적 과제를 달성하기 위한 본 발명에 따른 데이터 송수신 방법은, 전압 영역에서 데이터를 송수신하는 방법에 있어서, (a) 그 비트 값에 따라 제1 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제1 디지털 데이터 신호를 인코딩하여 그 비트 값에 따라 제2 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제2 디지털 데이터 신호를 출력하는 단계; (b) 상기 제2 디지털 데이터 신호를 상기 제2 설정된 수의 전압 레벨들을 포함하는 아날로그 데이터 신호로 변환하는 단계; (c) 상기 아날로그 데이터 신호를 그 비트 값에 따라 상기 제2 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제3 디지털 데이터 신호로 변환하는 단계; 및 (d) 상기 제3 디지털 데이터 신호를 디코딩하여 그 비트 값에 따라 상기 제1 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제4 디지털 데이터 신호를 출력하는 단계를 포함하는 것을 특징으로 한다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 도면에 기재된 내용을 참조하여야 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 3은 본 발명에 따른 인코딩 장치(100)를 개략적으로 나타내는 도면이다. 먼저, 도 3을 참고하면, 상기 인코딩 장치(100)는 그 비트 값에 따라 2K(K는 정수)개의 전압 레벨들을 나타내는 3K(K는 정수) 비트의 데이터 신호(SR_D)를 수신하여 인코딩하고, 2K+J(K와 J는 정수)개의 전압 레벨들을 나타내는 3K 비트의 데이터 신호(SR_ED)를 출력한다. 여기에서, 상기 데이터 신호들(SR_D, SR_ED)은 디지털 신호들이다. 도 3에서는 상기 데이터 신호들(SR_D, SR_ED)이 6비트의 데이터들(ABCDEF, UVWXYZ)을 각각 포함하는 경우가 일례로서 도시된다. 여기에서, 상기 데이터들(ABCDEF)은 각각 "1" 또는 "0"의 비트 값을 가지며, 상기 데이터들(UVWXYZ)은 각각 "1" 또는 "0" 또는 "S"의 비트 값을 가진다. 상기 S는 2K개의 전압 레벨들 이외에 추가의 전압 레벨을 나타낸다. 상기 인코딩 장치(100)의 구체적인 구성 및 동작은 도 5 내지 도 7을 참고하여 좀 더 상세히 후술된다.
도 4는 본 발명에 따른 디코딩 장치(200)를 개략적으로 나타내는 도면이다. 도 4를 참고하면, 상기 디코딩 장치(200)는 상기 인코딩 장치(100)에 의해 인코딩 된 데이터 신호(SR_ED)를 수신하여 디코딩하고, 그 비트 값에 따라 2K개의 전압 레벨들을 나타내는 3K 비트의 데이터 신호(SR_D)를 출력한다. 상기 디코딩 장치(200)의 구체적인 구성 및 동작은 도 5, 도 8, 및 도 9를 참고하여 좀 더 상세히 후술된다.
도 5는 도 3에 도시된 인코딩 장치(100)와 도 4에 도시된 디코딩 장치(200)의 동작을 설명하기 위한 도면이다. 도 5에서는 상기 인코딩 장치(100)와 상기 디코딩 장치(200)가 6(3K, K=2)비트의 데이터들(ABCDEF, UVWXYZ)을 각각 포함하는 데이터 신호들(SR_D, SR_ED)을 각각 수신하는 경우를 예를 들어 설명한다. 먼저, 상기 인코딩 장치(100)의 동작을 설명하면 다음과 같다. 상기 인코딩 장치(100)는 6비트의 데이터들(ABCDEF)을 포함하는 상기 데이터 신호(SR_D)를 수신하고, 상기 데이터들(ABCDEF)을 인코딩하여 6비트의 데이터들(UVWXYZ)을 포함하는 상기 데이터 신호(SR_ED)를 출력한다. 여기에서, 상기 데이터들(AB, CD, EF) 각각은 그 값들에 따라 복수의 전압 레벨들을 나타낼 수 있다. 예를 들어, 도 5의 왼쪽 그림에 도시된 것과 같이, 상기 데이터들(AB, CD, EF) 각각의 값이 "10", "11", "01", "00"일 때, 각각 "Vs0", "Vs1", "Vs2", "Vs3"의 전압들을 나타낼 수 있다. 여기에서, 상기 전압들(Vs0, Vs1, Vs2, Vs3)은 내부 전압(VDD)과 그라운드 전압(VSS) 사이에 존재하고, Vs0 〉Vs1 〉Vs2 〉Vs3의 관계를 갖는다. 이와 유사하게, 도 5의 오른쪽 그림에 도시된 것과 같이, 상기 데이터들(UV, WX, YZ) 각각의 값이 "10", "11", "01", "00", "SS" 일 때, 각각 "Vs0", "Vs1", "Vs2", "Vs3", "Vs4"의 전압들을 나타낼 수 있고, Vs3 〉Vs4의 관계를 갖는다.
한편, 상기 데이터 신호(SR_D)에 포함되는 비트들의 값에 따라 (2K)3가지의 데이터 패턴들이 존재할 수 있다. 도 5에서는 상기 데이터 신호(SR_D)가 6비트의 데이터들(ABCDEF)을 포함하므로, 64가지의 데이터 패턴들이 존재한다. 이들 데이터 패턴들 중에는, 상기 데이터 신호(SR_D)가 아날로그 신호로 변환되어 전송될 때 스큐를 증가시키는 나쁜 데이터 패턴들이 존재한다. 상기 나쁜 데이터 패턴들은 상기 데이터들(AB, CD, EF)의 값들에 각각 대응하는 전압 레벨들 사이의 전압 차가 큰 경우이고, 예를 들면 아래의 표로 나타낼 수 있다.
A B C D E F
1 0 0 0 1 0
1 0 0 0 1 1
1 0 0 0 0 1
1 0 0 0 1 0
1 0 1 0 0 0
1 1 0 0 1 0
1 1 1 0 0 0
0 0 1 0 1 0
0 0 1 0 1 1
0 0 1 0 0 1
0 0 1 0 0 0
0 0 0 0 1 0
0 1 0 0 1 0
0 1 1 0 0 0
상기 [표 1]을 참고하면, 예를 들어, 상기 데이터들(AB, CD, EF)의 값들이 각각 '10, 00, 10'일 때, 이에 대응하는 전압들은 각각 Vs0, Vs3, Vs0이고, 이 때의 전압 차는 최대 값을 갖는다. 이처럼 상기 데이터들(AB, CD, EF)에 대응하는 전압들의 차가 클 경우, 전송 데이터의 스큐가 증가된다.
한편, 도 5에서 참조되는 것과 같이, 상기 전압(Vs3)과 상기 그라운드 전압(VSS) 사이에는 전압 마진(margin)(M1)이 존재하고, 상기 전압(Vs0)과 상기 내부 전압(VDD) 사이에도 전압 마진(M2)이 존재한다. 따라서 상기 나쁜 데이터 패턴들이 상기 전압 마진들(M1, M2) 내에 존재하는 특정 전압 레벨들을 나타내는 데이터 패턴들로 대체될 경우, 상기 데이터 신호(SR_D)가 아날로그 신호로 변환되어 전송될 때, 스큐의 발생이 감소될 수 있다.
상기 인코딩 장치(100)는 상기 [표 1]에 나타낸 것과 같은 나쁜 데이터 패턴을 포함하는 상기 데이터 신호(SR_D)를 수신하면, 이를 상기 전압 마진(M1) 내에 존재하는 추가의 전압 레벨을 나타내는 비트 값(S)을 이용하여 인코딩하고, 스큐를 감소시키는 상기 데이터 신호(SR_ED)를 출력한다.
예를 들어, 도 5에서 P로 표시된 것과 같이, 상기 데이터들(ABCDEF)의 값들이 "100010"일 때, 상기 인코딩 장치(100)는 상기 데이터들(ABCDEF)을 인코딩하여, P'로 표시된 것과 같이, "101110"의 값을 가지는 데이터들(UVWXYZ)을 포함하는 데이터 신호(SR_ED)를 출력한다. 이 경우, 상기 인코딩 장치(100)가 상기 전압 마진(M2) 내에 존재하는 특정 전압 레벨을 나타내는 추가의 비트 값(G, 미도시)을 이용하여 인코딩 동작을 수행할 수도 있다. 좀 더 상세하게는, 상기 데이터들(ABCDEF)의 값들이 "100010"일 때, 상기 인코딩 장치(100)가 "10GG10"의 값을 가지는 데이터들(UVWXYZ)을 포함하는 데이터 신호(SR_ED)를 출력할 수도 있다. 또, 상기 인코딩 장치(100)는 상기 전압 마진(M2) 내에 존재하는 복수의 서로 다른 전압 레벨들을 각각 나타내는 추가의 비트 값들을 이용하여 인코딩 동작을 수행할 수도 있다.
또, 도 5에서 R로 표시된 것과 같이, 상기 데이터들(ABCDEF)의 값이 "001000"일 때, 상기 인코딩 장치(100)는 상기 데이터들(ABCDEF)을 인코딩하여 R'로 표시된 것과 같이, "00SS00"의 값을 가지는 비트들(UVWXYZ)을 포함하는 데이터 신호(SR_ED)를 출력하다. 여기에서, 상기 S는 상기 전압 마진(M1) 내에 존재하는 상기 전압(Vs4) 레벨을 나타낸다. 상기 인코딩 장치(100)는 상기 전압 마진(M1) 내에 존재하는 복수의 서로 다른 전압 레벨들을 각각 나타내는 추가의 비트 값들을 이용하여 인코딩 동작을 수행할 수도 있다.
상기 디코딩 장치(200)는 상술한 상기 인코딩 장치(100)의 동작에 역으로 동작한다. 즉, 상기 디코딩 장치(200)는 상기 인코딩 장치(100)에 의해 인코딩 된 상기 데이터들(UVWXYZ)을 포함하는 상기 데이터 신호(SR_ED)를 수신하여 이를 디코딩하고, 상기 데이터 신호(SR_D)를 출력한다.
도 6은 도 3에 도시된 인코딩 장치(100)를 상세히 나타내는 도면이다. 도 6을 참고하면, 상기 인코딩 장치(100)는 직렬 대 병렬(serial-to-parallel) 변환기(110), 입력 레지스터부(120), 함수 맵핑부(functional mapping unit)(130), 출력 레지스터부(140), 및 병렬 대 직렬(parallel-to-serial) 변환기(150)를 포함한다. 상기 직렬 대 병렬 변환기(110)는 직렬로 수신되는 상기 데이터 신호(SR_D)의 데이터들(ABCDEF)을 병렬로 변환하여 출력한다. 상기 입력 레지스터부(120)는 병렬로 수신되는 상기 데이터들(ABCDEF)을 일시적으로 저장하고, 저장된 상기 데이터들(ABCDEF)을 병렬로 출력한다. 여기에서, 상기 데이터들(ABCDEF)은 각각 "1" 또는 "0"의 비트 값을 가지며, 비트 값에 따라 4(2K, K=2)개의 전압 레벨들을 나타낸다.
상기 함수 맵핑부(130)는 상기 입력 레지스터부(120)로부터 수신되는 상기 데이터들(ABCDEF)을 함수 맵핑을 통해 인코딩하고, 그 결과로서 데이터들(UVWXYZ)을 병렬로 출력한다. 여기에서, 상기 함수 맵핑부(130)는 도 5를 참고하여 상술한 것과 동일하게 인코딩 동작을 수행한다. 상기 함수 맵핑부(130)는 복수의 로직 회로들로 구현될 수 있다. 상기 함수 맵핑부(130)의 상기 복수의 로직 회로들은 베릴로그 하드웨어 기술 언어(Verilog Hardware Description Language, Verilog-HDL)와 같은 응용 주문형 집적회로(application-specific IC, ASIC) 설계용 프로그램에 의해 설계될 수 있다. 이와 관련된 기술은 본 발명의 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있으므로 생략된다. 상기 함수 맵핑부(130)의 구체적인 구성 및 동작은 도 7을 참고하여 좀 더 상세히 후술된다. 상기 출력 레지스터부(140)는 상기 데이터들(UVWXYZ)을 일시적으로 저장하고, 저장된 상기 데이터들(UVWXYZ)을 병렬로 출력한다. 여기에서, 상기 데이터들(UVWXYZ)은 "1" 또는 "0" 또는 "S"의 비트 값을 가지며, 비트 값에 따라 5(2K+J, K=2, J=1)개의 전압 레벨들을 나타낸다. 상기 병렬 대 직렬 변환기(150)는 병렬로 수신되는 상기 데이터들(UVWXYZ)을 직렬로 변환하여 상기 데이터 신호(SR_ED)로서 출력한다.
도 7은 도 6에 도시된 함수 맵핑부(130)의 일부를 상세히 나타내는 도면이다. 도 7에서는 수신되는 데이터들(ABCDEF)의 값들이 "100010", "001000", "110010", "011000" 중 하나이고, 추가의 전압 레벨을 나타내는 비트(S)를 이용하여 상기 데이터들(ABCDEF)을 맵핑하는 로직 회로들만이 도시된다. 상기 함수 맵핑부(130)는 상기 데이터들(ABCDEF)의 값들에 따라 구분되는 64((2K)3, K=2)가지의 데이터 패턴들을 125((2K+J)3, K=2, J=1)가지의 데이터 패턴들로 맵핑하도록 구성되는 많은 양의 복잡한 논리 회로들을 더 구비하지만 도면의 간략화를 위해 생략된다.
도 7을 참고하면, 상기 함수 맵핑부(130)는 인버터들(31∼41), AND 게이트들(131∼133), OR 게이트들(134, 135), 및 멀티플렉서들(136, 137)을 포함한다. 상기 인버터들(31∼35)은 상기 데이터들(ABDEF)을 반전시켜 출력하고, 상기 인버터들(36, 37)은 상기 데이터들(CD)을 반전시켜 출력한다. 상기 인버터들(38∼41)은 상기 데이터들(BCDF)을 반전시켜 출력한다. 상기 AND 게이트(131)는 상기 인버터들(31∼35)의 출력 신호들과 상기 데이터(C)에 응답하여 논리 신호(LOG1)를 출력한다. 상기 AND 게이트(132)는 상기 인버터들(36, 37)의 출력 신호들과 상기 데이터들(ABEF)에 응답하여 논리 신호(LOG2)를 출력한다. 상기 AND 게이트(133)는 상기 인버터들(38∼41)의 출력 신호들과 상기 데이터들(AE)에 응답하여 논리 신호(LOG3)를 출력한다. 상기 OR 게이트(134)는 상기 논리 신호들(LOG1∼LOG3)에 응답하여 논리 신호(LOG4)를 출력하고, 상기 OR 게이트(135)는 상기 논리 신호들(LOG2, LOG3)에 응답하여 논리 신호(LOG5)를 출력한다. 상기 멀티플렉서(136)는 상기 논리 신호(LOG1)에 응답하여 데이터(S)와 상기 논리 신호(LOG4) 중 하나를 선택하여 데이터(W)로서 출력한다. 좀 더 상세하게는, 상기 논리 신호(LOG1)가 논리 하이 상태일 때 상기 멀티플렉서(136)가 상기 데이터(S)를 상기 데이터(W)로서 출력하고, 상기 논리 신호(LOG1)가 논리 로우 상태일 때 상기 멀티플렉서(136)가 상기 논리 신호(LOG4)를 상기 데이터(W)로서 출력한다. 상기 멀티플렉서(137)는 상기 논리 신호(LOG1)에 응답하여 상기 데이터(S)와 상기 논리 신호(LOG5) 중 하나를 선택하여 데이터(X)로서 출력한다. 좀 더 상세하게는, 상기 논리 신호(LOG1)가 논리 하이 상태일 때 상기 멀티플렉서(137)가 상기 데이터(S)를 상기 데이터(X)로서 출력하고, 상기 논리 신호(LOG1)가 논리 로우 상태일 때 상기 멀티플렉서(137)가 상기 논리 신호(LOG5)를 상기 데이터(W)로서 출력한다. 이 때, 상기 데이터들(ABEF)은 데이터들(UVYZ)로서 각각 출력된다.
다음으로, 예를 들어, 상기 데이터들(ABCDEF)이 "001000"일 때, 상기 함수 맵핑부(130)의 동작을 설명한다. 먼저, 상기 AND 게이트(131)는 상기 인버터들(31∼35)의 출력 신호들과 상기 데이터(C)에 응답하여, 하이 레벨의 상기 논리 신호(LOG1)를 출력한다. 상기 AND 게이트(132)는 상기 인버터들(36, 37)의 출력 신호들과 상기 데이터들(ABEF)에 응답하여, 로우 레벨의 상기 논리 신호(LOG2)를 출력한다. 상기 AND 게이트(133)는 상기 인버터들(38∼41)의 출력 신호들과 상기 데이터들(AE)에 응답하여, 로우 레벨의 상기 논리 신호(LOG3)를 출력한다. 상기 OR 게이트(134)는 상기 논리 신호들(LOG1∼LOG3)에 응답하여 하이 레벨의 논리 신호(LOG4)를 출력한다. 상기 OR 게이트(135)는 상기 논리 신호들(LOG2, LOG3)에 응답하여 로우 레벨의 논리 신호(LOG5)를 출력한다.
상기 멀티플렉서(136)는 하이 상태의 상기 논리 신호(LOG1)에 응답하여 상기 데이터(S)를 선택하여 상기 데이터(W)로서 출력한다. 또, 상기 멀티플렉서(137) 역시 하이 상태의 상기 논리 신호(LOG1)에 응답하여 상기 데이터(S)를 선택하여 상기 데이터(X)로서 출력한다. 또, 상기 데이터들(ABEF)은 논리 회로들을 통과하지 않고, 그대로 상기 데이터들(UVYZ)로서 출력된다. 그 결과 상기 함수 맵핑부(130)로부터 "00SS00"의 상기 데이터들(UVWXYZ)이 출력된다.
도 8은 도 4에 도시된 디코딩 장치(200)를 상세히 나타내는 도면이다. 도 8을 참고하면, 상기 디코딩 장치(200)는 직렬 대 병렬 변환기(210), 입력 레지스터부(220), 함수 맵핑부(230), 출력 레지스터부(240), 및 병렬 대 직렬 변환기(250)를 포함한다. 상기 직렬 대 병렬 변환기(210)는 직렬로 수신되는 데이터 신호(SR_ED)의 데이터들(UVWXYZ)을 병렬로 변환하여 출력한다. 상기 입력 레지스터부(220)는 병렬로 수신되는 상기 데이터들(UVWXYZ)을 일시적으로 저장하고, 저장된 상기 데이터들(UVWXYZ)을 병렬로 출력한다. 여기에서, 상기 데이터들(UVWXYZ)은 "1" 또는 "0" 또는 "S"의 비트 값을 가지며, 비트 값에 따라 5(2K +J, K=2, J=1)개의 전압 레벨들을 나타낸다.
상기 함수 맵핑부(230)는 상기 입력 레지스터부(220)로부터 수신되는 상기 데이터들(UVWXYZ)을 상기 인코딩 장치(100)의 함수 맵핑부(130)의 역함수로 함수 맵핑을 하여 디코딩하고, 그 결과로서 데이터들(ABCDEF)을 병렬로 출력한다. 여기에서, 상기 함수 맵핑부(230)는 도 5를 참고하여 상술한 것과 동일하게 디코딩 동작을 수행한다. 상기 함수 맵핑부(230)는 복수의 로직 회로들로 구현될 수 있다. 상기 함수 맵핑부(230)의 상기 복수의 로직 회로들은 Verilog-HDL과 ASIC 설계용 프로그램에 의해 설계될 수 있다. 상기 함수 맵핑부(230)의 구체적인 구성 및 동작은 도 9를 참고하여 좀 더 상세히 후술된다. 상기 출력 레지스터부(240)는 상기 데이터들(ABCDEF)을 일시적으로 저장하고, 저장된 상기 데이터들(ABCDEF)을 병렬로 출력한다. 여기에서, 상기 데이터들(ABCDEF)은 각각 "1" 또는 "0"의 비트 값을 가지며, 비트 값에 따라 4(2K, K=2)개의 전압 레벨들을 나타낸다. 상기 병렬 대 직렬 변환기(250)는 병렬로 수신되는 상기 데이터들(ABCDEF)을 직렬로 변환하여 데이터 신호(SR_D)로서 출력한다.
도 9는 도 8에 도시된 함수 맵핑부(230)의 일부를 상세히 나타내는 도면이다. 도 9에서는 수신되는 데이터들(UVWXYZ)의 값들이 "101110", "00SS00", "111010", "010000" 중 하나이고, 추가의 전압 레벨을 나타내는 비트(S)를 이용하여 상기 데이터들(UVWXYZ)을 맵핑하는 로직 회로들만이 도시된다. 상기 함수 맵핑부(230)는 상기 데이터들(UVWXYZ)의 값들에 따라 구분되는 125((2K+J)3, K=2, J=1)가지의 데이터 패턴들을 64((2K)3, K=2)가지의 데이터 패턴들로 맵핑하도록 구성되는 많은 양의 복잡한 논리 회로들을 더 구비하지만 도면의 간략화를 위해 생략된다.
도 9를 참고하면, 상기 함수 맵핑부(230)는 인버터들(51∼58), AND 게이트들(231, 232), 및 OR 게이트(233)를 포함한다. 상기 인버터들(51∼54)은 상기 데이터들(UVYZ)을 반전시켜 출력한다. 상기 인버터들(55∼58)은 상기 데이터들(UWXY)을 반전시켜 출력한다. 상기 AND 게이트(231)는 상기 인버터들(51∼54)의 출력 신호들과 상기 데이터들(WX)에 응답하여 논리 신호(L1)를 출력한다. 상기 AND 게이트(232)는 상기 인버터들(55∼58)의 출력 신호들과 상기 데이터들(VZ)에 응답하여 논리 신호(L2)를 출력한다. 상기 OR 게이트(233)는 상기 논리 신호들(L1, L2)에 응답하여 데이터(C)를 출력한다. 이 때, 상기 데이터들(UVYZ)이 데이터들(ABEF)로서 각각 출력되고, 데이터(D)는 로우 레벨로 유지된다.
다음으로, 예를 들어, 상기 데이터들(UVWXYZ)이 "00SS00"일 때, 상기 함수 맵핑부(230)의 동작을 설명한다. 먼저, 상기 AND 게이트(231)는 상기 인버터들(51∼54)의 출력 신호들과 상기 데이터들(WX)에 응답하여, 하이 레벨의 상기 논리 신호(LOG1)를 출력한다. 여기에서, 상기 데이터들(WX)의 값들인 "SS"는 논리 "1"과 논리 "0" 사이의 특정 값이므로, 상기 AND 게이트(231)는 상기 S를 논리 "1"로서 판단한다. 상기 AND 게이트(232)는 상기 인버터들(55∼58)의 출력 신호들과 상기 데이터들(VZ)에 응답하여, 로우 레벨의 상기 논리 신호(L2)를 출력한다. 상기 OR 게이트(233)는 상기 논리 신호들(L1, L2)에 응답하여 상기 데이터(C)를 논리 하이 상태로 출력한다. 또, 상기 데이터들(UVYZ)은 논리 회로들을 통과하지 않고, 그대로 상기 데이터들(ABEF)로서 출력되고, 상기 데이터(D)는 로우 레벨로 유지된다. 그 결과 상기 함수 맵핑부(230)로부터 "001000"의 상기 데이터들(ABCDEF)이 출력된다.
도 10은 전송 데이터의 비트 수가 증가될 때 본 발명에 따른 인코딩 장치와 디코딩 장치의 동작을 설명하기 위한 도면이다. 도 10에 도시된 인코딩 및 디코딩 동작 설명은 도 3의 인코딩 장치(100)와 도 4의 디코딩 장치(200)를 함께 참고하여 설명하기로 한다. 도 10에서 상기 인코딩 장치(100)와 상기 디코딩 장치(200)는 도 5를 참고하여 상술한 인코딩 및 디코딩 동작과 유사하게 동작한다.
도 10에서는 상기 인코딩 장치(100)와 상기 디코딩 장치(200)가 9(3K, K=3)비트의 데이터들(B9∼B1, C9∼C1)을 각각 포함하는 데이터 신호들(SR_D, SR_ED)을 각각 수신하는 경우를 예를 들어 설명한다. 먼저, 상기 인코딩 장치(100)의 동작을 설명하면 다음과 같다. 상기 인코딩 장치(100)는 9비트의 데이터들(B9∼B1)을 포함하는 상기 데이터 신호(SR_D)를 수신하고, 상기 데이터들(B9∼B1)을 인코딩하여 9비트의 데이터들(C9∼C1)을 포함하는 상기 데이터 신호(SR_ED)를 출력한다. 여기에서, 상기 데이터들(B9B8B7, B6B5B4, B3B2B1) 각각은 그 값들에 따라 8(2K, K=3)개의 전압 레벨들을 나타낼 수 있고, 이를 표로 나타내면 다음과 같다.
데이터(B9B8B7 또는 B6B5B4 또는 B3B2B1)의 비트 값 전압
111 Vp0
110 Vp1
100 Vp2
101 Vp3
001 Vp4
011 Vp5
010 Vp6
000 Vp7
상기 [표 2]에서 상기 전압들(Vp0∼Vp7)은 내부 전압(VDD)과 그라운드 전압(VSS) 사이에 존재하고, Vp0 〉Vp1 〉Vp2 〉Vp3 〉Vp4 〉Vp5 〉Vp6 〉Vp7의 관계를 갖는다. 이와 유사하게, 도 10의 오른쪽 그림의 데이터들(C9C8C7, C6C5C4, C3C2C1) 역시 그 값들에 따라 상기 [표 2]에 나타낸 것과 동일한 전압 레벨들을 나타낸다. 다만, 상기 데이터들(C9C8C7, C6C5C4, C3C2C1)은 두 개의 추가의 전압 레벨들(Vp8, Vp9)을 나타내는 추가의 비트 값들(SSS, TTT)을 더 포함한다. 상기 전압 레벨들(Vp8, Vp9)은 상기 전압(Vp7)과 상기 그라운드 전압(VSS) 사이에 존재하는 특정 전압들이고, Vp7 〉Vp8 〉Vp9의 관계를 갖는다. 결국, 상기 데이터들(C9C8C7, C6C5C4, C3C2C1) 각각은 그 값들에 따라 10(2K+J, K=3, J=2)개의 전압 레벨들을 나타낼 수 있다.
한편, 상기 데이터 신호(SR_D)는 그 비트들의 값에 따라 512((2K)3, K=2)가지의 데이터 패턴들이 존재할 수 있고, 상기 데이터 신호(SR_ED)는 그 비트들의 값에 따라 1000((2K+J)3, K=3, J=2)가지의 데이터 패턴들이 존재할 수 있다. 상기 데이터 신호(SR_ED)의 데이터 패턴 수가 상기 데이터 신호(SR_D)의 데이터 패턴 수 보다 488(103-83) 만큼 더 크기 때문에, 상기 데이터 신호(SR_ED)가 상기 데이터 신호(SR_D)의 나쁜 데이터 패턴을 충분히 제거할 수 있다.
또, 도 10에서 참조되는 것과 같이, 상기 전압(Vp7)과 상기 그라운드 전압(VSS) 사이에는 전압 마진(M1)이 존재하고, 상기 전압(Vp0)과 상기 내부 전압(VDD) 사이에도 전압 마진(M2)이 존재한다. 따라서 상기 나쁜 데이터 패턴들이 상기 전압 마진들(M1, M2) 내에 존재하는 특정 전압 레벨들을 나타내는 데이터 패턴들로 대체될 경우, 상기 데이터 신호(SR_D)가 아날로그 신호로 변환되어 전송될 때, 스큐의 발생이 감소될 수 있다.
상기 디코딩 장치(200)는 상술한 상기 인코딩 장치(100)의 동작에 역으로 동작한다. 즉, 상기 디코딩 장치(200)는 상기 인코딩 장치(100)에 의해 인코딩 된 상기 데이터들(C9∼C1)을 포함하는 상기 데이터 신호(SR_ED)를 수신하여 이를 디코딩하고, 상기 데이터 신호(SR_D)를 출력한다.
도 11은 본 발명에 따른 인코딩 장치와 디코딩 장치를 포함하는 데이터 송수신 장치(300)를 나타내는 도면이다. 도 11을 참고하면, 상기 데이터 송수신 장치(300)는 인코딩 장치(310), DA 컨버터(320), AD 컨버터(330), 및 디코딩 장치(340)를 포함한다. 상기 인코딩 장치(310)는 내부 회로(미도시)로부터 수신되는 디지털 데이터 신호(D_IN)를 인코딩하고, 인코딩된 디지털 데이터 신호(D_EN1)를 출력한다. 여기에서, 상기 디지털 데이터 신호(D_IN)는 그 비트 값에 따라 2K(K는 정수)개의 전압 레벨들을 나타내는 3K(K는 정수) 비트의 데이터들을 포함한다. 또, 상기 디지털 데이터 신호(D_EN1)는 그 비트 값에 따라 2K+J(K와 J는 정수)개의 전압 레벨들을 나타내는 3K 비트의 데이터들을 포함한다. 상기 인코딩 장치(310)의 구성 및 구체적인 동작은 앞서 설명한 것과 실질적으로 동일하므로 설명의 중복을 피하기 위해 그 상세한 설명은 생략된다.
상기 DA 컨버터(320)는 상기 디지털 데이터 신호(D_EN1)를 상기 2K+J개의 전압 레벨들을 포함하는 아날로그 데이터 신호(AG_S)로 변환하여, 신호 라인(350)에 출력한다. 상기 AD 컨버터(330)는 상기 신호 라인(350)을 통하여 수신되는 상기 아날로그 데이터 신호(AG_S)를 디지털 데이터 신호(D_EN2)로 변환하여 출력한다. 상시 디지털 데이터 신호(D_EN2)는 그 비트 값에 따라 상기 2K+J개의 전압 레벨들을 나타내는 3K 비트의 데이터들을 포함한다. 상기 디코딩 장치(340)는 상기 디지털 데이터 신호(D_EN2)를 디코딩하여, 그 비트 값에 따라 2K개의 전압 레벨들을 나타내는 비트들을 포함하는 디지털 데이터 신호(D_OUT)를 상기 내부 회로에 출력한다. 여기에서, 상기 디지털 데이터 신호들(D_IN, D_OUT)의 값은 실질적으로 동일하다. 상기 디코딩 장치(340)의 구성 및 구체적인 동작은 앞서 설명한 것과 실질적으로 동일하므로 설명의 중복을 피하기 위해 그 상세한 설명은 생략된다.
도 12는 도 11에 도시된 DA 컨버터(320)를 상세히 나타내는 도면이다. 도 12를 참고하면, 상기 DA 컨버터(320)는 프리-드라이버(321)와 메인 드라이버(322)를 포함한다. 상기 프리-드라이버(321)는 상기 인코딩 장치(310)로부터 수신되는 상기 디지털 데이터 신호(D_EN1)에 응답하여 복수의 제어 신호들(V1∼V5)을 출력한다. 상기 메인 드라이버(322)는 터미네이션 저항(Rt), 구동 트랜지스터(NM), 전류원들(CS1∼CS4), 및 스위치들(SW1∼SW4)을 포함한다. 상기 터미네이션 저항(Rt)은 상기 내부 전압(VDD)과 출력 노드(OUT) 사이에 연결된다. 상기 구동 트랜지스터(NM)는 NMOS 트랜지스터로 구현될 수 있다. 상기 구동 트랜지스터(NM)의 드레인은 상기 출력 노드(OUT)에 연결되고, 게이트에는 상기 제어 신호(V1)가 입력된다. 상기 구동 트랜지스터(NM)는 상기 제어 신호(V1)에 응답하여 턴 온되거나 또는 턴 오프된다. 상기 스위치들(SW1∼SW4)은 상기 구동 트랜지스터(NM)의 소스와 상기 전류원들(CS1∼CS4) 사이에 각각 연결된다. 상기 스위치들(SW1∼SW4)은 상기 제어 신호들(V2∼V5)에 응답하여 턴 온되거나 또는 턴 오프된다. 여기에서, 상기 구동 트랜지스터(NM)가 NMOS 트랜지스터이고, 상기 제어 신호들(V2∼V5)이 하이 상태일 때 상기 스위치들(SW1∼SW4)이 턴 온되는 것으로 가정하자. 이 경우, 상기 디지털 데이터 신호(D_EN1), 상기 복수의 제어 신호들(V1∼V5)의 값들에 따른 상기 구동 트랜지스터(NM)와 상기 스위치들(SW1∼SW4)의 동작을 표로 나타내면 다음과 같다.
D_EN1 V1 V2 V3 V4 V5 NM SW1 SW2 SW3 SW4
10 0 0 0 0 0 OFF OFF OFF OFF OFF
11 1 1 0 0 0 ON ON OFF OFF OFF
01 1 0 1 0 0 ON OFF ON OFF OFF
00 1 0 0 1 0 ON OFF OFF ON OFF
SS 1 0 0 0 1 ON OFF OFF OFF ON
상기 [표 3]에서 참조되는 것과 같이, 상기 스위치들(SW1∼SW4) 중 하나가 턴 온될 때 나머지들은 모두 턴 오프된다.
상기 전류원들(CS1∼CS4)은 상기 스위치들(SW1∼SW4)과 그라운드 사이에 각각 연결되고, 서로 다른 크기의 전류들(I1∼I4)을 각각 발생한다. 여기에서, 상기 전류들(I2∼I4)의 크기는 상기 전류(I1) 크기의 소정 배수이고, 상기 전류들(I1∼I4)의 관계는 아래의 수학식으로 표현될 수 있다.
상기 메인 드라이버(322)에 포함되는 전류원과 스위치의 수는 상기 디지털 데이터 신호(D_EN1)의 비트 수의 증감에 비례하게 증가되거나 또는 감소될 수 있다. 상기 메인 드라이버(322)는 상기 복수의 제어 신호들(V1∼V5)에 응답하여 출력 노드(OUT)에 상기 아날로그 데이터 신호(AG_S)를 출력한다. 상기 아날로그 데이터 신호(AG_S)의 전압 레벨은 상기 터미네이션 저항(Rt)의 저항 값과 전류(It)의 값에 의해 결정된다. 또, 상기 전류(It)가 감소할 수록 상기 아날로그 데이터 신호(AG_S)의 전압이 증가한다. 상기 전류(It)는 상기 스위치들(SW1∼SW4) 중 하나가 턴 온될 때 대응하는 전류원(CS1∼CS4 중 하나)에 의해 발생되는 전류이다.
도 13은 도 11에 도시된 AD 컨버터(330)를 상세히 나타내는 도면이다. 도 13을 참고하면, 상기 AD 컨버터(330)는 비교 회로(331)와 인코더(332)를 포함한다. 상기 비교 회로(331)는 저항들(R1∼R5), 비교기들(CM1∼CM4), 및 인코더(332)를 포함한다. 상기 비교 회로(331)에 포함되는 저항과 비교기의 수는 상기 디지털 데이터 신호(D_EN1)의 비트 수의 증감에 비례하게 증가되거나 또는 감소될 수 있다. 상기 저항들(R1∼R5)은 상호 직렬로 연결되고, 상기 저항(R1)의 한 쪽 단자는 상기 내부 전압(VDD)에 연결되고, 상기 저항(R5)의 한 쪽 단자는 상기 그라운드 전압(VSS)에 연결된다. 상기 내부 전압(VDD)이 상기 저항들(R1∼R5)에 의해 각각 분배되어, 상기 저항들(R1∼R5) 사이의 노드들(N1∼N4)에서 기준 전압들(Vref1∼Vref4)이 각각 발생된다.
상기 비교기들(CM1∼CM4)은 상기 아날로그 데이터 신호(AG_S)의 전압 레벨과 상기 기준 전압들(Vref1∼Vref4)을 각각 비교하고, 그 비교 결과로서 비교 신호들(VD1∼VD4)을 각각 출력한다. 좀 더 상세하게는, 상기 아날로그 데이터 신호(AG_S)의 전압(Vin)이 상기 기준 전압들(Vref1∼Vref4) 보다 클 때, 상기 비교기들(CM1∼CM4)이 상기 비교 신호들(VD1∼VD4)을 하이 레벨로 출력한다. 또, 상기 아날로그 데이터 신호(AG_S)의 전압(Vin)이 상기 기준 전압들(Vref1∼Vref4) 보다 작을 때, 상기 비교기들(CM1∼CM4)이 상기 비교 신호들(VD1∼VD4)을 로우 레벨로 출력한다. 상기 인코더(332)는 상기 비교 신호들(VD1∼VD4)에 응답하여 상기 디지털 데이터 신호(D_EN2)를 출력한다. 여기에서, 상기 전압(Vin)의 레벨에 따른 상기 비교 신호들(VD1∼VD4)과 상기 디지털 데이터 신호(D_EN2)는 아래의 표로 나타낼 수 있다.
Vin의 크기 VD1 VD2 VD3 VD4 D_EN2
Vin 〉Vref1 1 1 1 1 10
Vref1 〉Vin 〉Vref2 0 1 1 1 11
Vref2 〉Vin 〉Vref3 0 0 1 1 01
Vref3 〉Vin 〉Vref4 0 0 0 1 00
Vref4 〉Vin 0 0 0 0 SS
상기 [표 4]에서 참조되는 것과 같이, 상기 AD 컨버터(330)는 상기 아날로그 데이터 신호(AG_S)의 전압(Vin)에 대응하는 비트 값을 갖는 상기 디지털 데이터 신호(D_EN2)를 출력한다.
도 14는 본 발명에 따른 인코딩 장치와 디코딩 장치가 메모리 장치(400)에 적용된 경우를 나타내는 도면이다. 도 14를 참고하면, 상기 메모리 장치(400)는 메모리(410)와 메모리 컨트롤러(420)를 포함한다. 상기 메모리(410)는 인코딩 장치(411), 송신기(412), 수신기(413), 및 디코딩 장치(414)를 포함한다. 상기 인코딩 장치(411)는 내부 회로(미도시)로부터 수신되는 디지털 데이터 신호(D_IN1)를 인코딩하고, 인코딩된 디지털 데이터 신호(D_EN1)를 출력한다. 상기 디지털 데이터 신호(D_IN)는 그 비트 값에 따라 2K(K는 정수)개의 전압 레벨들을 나타내는 3K(K는 정수) 비트의 데이터들을 포함하고, 상기 디지털 데이터 신호(D_EN1)는 그 비트 값에 따라 2K+J(K와 J는 정수)개의 전압 레벨들을 나타내는 3K 비트의 데이터들을 포함한다. 상기 인코딩 장치(411)의 구체적인 구성 및 동작 설명은 앞서 설명한 것과 실질적으로 동일하므로 생략된다.
상기 송신기(412)는 상기 디지털 데이터 신호(D_EN1)를 아날로그 데이터 신호(AG_S1)로 변환하고, 상기 아날로그 데이터 신호(AG_S1)를 전송 채널(430)을 통하여 상기 메모리 컨트롤러(420)에 출력한다. 상기 송신기(412)의 구체적인 구성 및 동작은 도 12의 DA 컨버터(320)와 실질적으로 동일하므로 그 상세한 설명은 생략된다. 상기 수신기(413)는 상기 전송 채널(430)을 통하여 상기 메모리 컨트롤러(420)로부터 수신되는 아날로그 데이터 신호(AG_S2)를 디지털 데이터 신호(D_EN4)로 변환한다. 상기 수신기(413)의 구체적인 구성 및 동작은 도 13의 AD 컨버터(330)와 실질적으로 동일하므로 그 상세한 설명은 생략된다.
상기 디코딩 장치(414)는 상기 디지털 데이터 신호(D_EN4)를 디코딩하고, 디코딩된 디지털 데이터 신호(D_OUT2)를 출력한다. 상기 디지털 데이터 신호(D_EN4)는 그 비트 값에 따라 2K+J개의 전압 레벨들을 나타내는 3K 비트의 데이터들을 포함하고, 상기 디지털 데이터 신호(D_OUT2)는 그 비트 값에 따라 2K개의 전압 레벨들을 나타내는 3K 비트의 데이터들을 포함한다. 상기 디코딩 장치(414)의 구체적인 구성 및 동작 설명은 앞서 설명한 것과 실질적으로 동일하므로 생략된다.
상기 메모리(410)와 유사하게, 상기 메모리 컨트롤러(420) 역시 인코딩 장치(421), 송신기(422), 수신기(423), 및 디코딩 장치(424)를 포함한다. 상기 인코딩 장치(421)는 내부 회로(미도시)로부터 수신되는 디지털 데이터 신호(D_IN2)를 인코딩하고, 인코딩된 디지털 데이터 신호(D_EN3)를 출력한다. 상기 디지털 데이터 신호(D_IN2)는 그 비트 값에 따라 2K(K는 정수)개의 전압 레벨들을 나타내는 3K(K는 정수) 비트의 데이터들을 포함하고, 상기 디지털 데이터 신호(D_EN3)는 그 비트 값에 따라 2K+J(K와 J는 정수)개의 전압 레벨들을 나타내는 3K 비트의 데이터들을 포함한다. 상기 인코딩 장치(421)의 구체적인 구성 및 동작 설명은 앞서 설명한 것과 실질적으로 동일하므로 생략된다.
상기 송신기(422)는 상기 디지털 데이터 신호(D_EN3)를 아날로그 데이터 신호(AG_S2)로 변환하고, 상기 아날로그 데이터 신호(AG_S2)를 상기 전송 채널(430)을 통하여 상기 메모리(410)에 출력한다. 상기 송신기(422)의 구체적인 구성 및 동작은 도 12의 DA 컨버터(320)와 실질적으로 동일하므로 그 상세한 설명은 생략된다. 상기 수신기(423)는 상기 전송 채널(430)을 통하여 상기 메모리(410)로부터 수신되는 상기 아날로그 데이터 신호(AG_S1)를 디지털 데이터 신호(D_EN2)로 변환한다. 상기 수신기(423)의 구체적인 구성 및 동작은 도 13의 AD 컨버터(330)와 실질적으로 동일하므로 그 상세한 설명은 생략된다.
상기 디코딩 장치(424)는 상기 디지털 데이터 신호(D_EN2)를 디코딩하고, 디코딩된 디지털 데이터 신호(D_OUT1)를 출력한다. 상기 디지털 데이터 신호(D_EN2)는 그 비트 값에 따라 2K+J개의 전압 레벨들을 나타내는 3K 비트의 데이터들을 포함하고, 상기 디지털 데이터 신호(D_OUT1)는 그 비트 값에 따라 2K개의 전압 레벨들을 나타내는 3K 비트의 데이터들을 포함한다. 상기 디코딩 장치(424)의 구체적인 구성 및 동작 설명은 앞서 설명한 것과 실질적으로 동일하므로 생략된다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
상기한 것과 같이, 본 발명에 따른 데이터 코딩 방법과 이를 이용한 인코딩 장치 및 디코딩 장치와 이들을 구비하는 송수신 장치 및 그 송수신 방법은 전송 데이터의 스큐를 감소시키고, 전력 소모를 줄일 수 있는 효과가 있다.
도 1은 종래의 데이터 송수신 장치를 나타내는 블록도이다.
도 2는 도 1에 도시된 신호 라인을 통하여 전송되는 아날로그 데이터 신호의 파형을 나타내는 도면이다.
도 3은 본 발명에 따른 인코딩 장치를 개략적으로 나타내는 도면이다.
도 4는 본 발명에 따른 디코딩 장치를 개략적으로 나타내는 도면이다.
도 5는 도 3에 도시된 인코딩 장치와 도 4에 도시된 디코딩 장치의 동작을 설명하기 위한 도면이다.
도 6은 도 3에 도시된 인코딩 장치를 상세히 나타내는 도면이다.
도 7은 도 6에 도시된 함수 맵핑부의 일부를 상세히 나타내는 도면이다.
도 8은 도 4에 도시된 디코딩 장치를 상세히 나타내는 도면이다.
도 9는 도 8에 도시된 함수 맵핑부의 일부를 상세히 나타내는 도면이다.
도 10은 전송 데이터의 비트 수가 증가될 때 본 발명에 따른 인코딩 장치와 디코딩 장치의 동작을 설명하기 위한 도면이다.
도 11은 본 발명에 따른 인코딩 장치와 디코딩 장치를 포함하는 데이터 송수신 장치를 나타내는 도면이다.
도 12는 도 11에 도시된 DA 컨버터를 상세히 나타내는 도면이다.
도 13은 도 11에 도시된 AD 컨버터를 상세히 나타내는 도면이다.
도 14는 본 발명에 따른 인코딩 장치와 디코딩 장치가 메모리 장치에 적용된 경우를 나타내는 도면이다.

Claims (35)

  1. 전압 영역에서의 송수신을 위한 데이터의 코딩 방법에 있어서,
    (a) 제1 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제1 직렬 데이터 신호를 상기 제1 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제1 병렬 데이터 신호로 변환하는 단계;
    (b) 상기 제1 병렬 데이터 신호를 함수 맵핑(functional mapping)을 통해 코딩하여 상기 제1 병렬 데이터 신호에 포함되는 비트들이 나타내는 전압 레벨의 수를 변경하고, 제2 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제2 병렬 데이터 신호를 출력하는 단계; 및
    (c) 상기 제2 병렬 데이터 신호를 상기 제2 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제2 직렬 데이터 신호로 변환하는 단계를 포함하는 것을 특징으로 하는 데이터 코딩 방법.
  2. 제1항에 있어서,
    상기 제1 및 제2 직렬 데이터 신호들과 상기 제1 및 제2 병렬 데이터 신호들은 각각 3K 비트를 포함하고,
    상기 제1 설정된 수는 2K이고, 상기 제2 설정된 수는 2K+J(J는 정수)인 것을 특징으로 하는 데이터 코딩 방법.
  3. 제2항에 있어서, 상기 (b)단계는,
    (b1) 상기 제1 병렬 데이터 신호에 포함되는 비트들이 나타내는 상기 제1 설정된 수의 전압 레벨들 중 적어도 두 개의 전압 레벨들간의 차가 설정된 값 보다 클 때, 상기 두 개의 전압 레벨들 중 하나를 나타내는 비트를 상기 2K+J번째 전압 레벨을 나타내는 비트로 코딩하는 단계를 포함하는 것을 특징으로 하는 데이터 코딩 방법.
  4. 제3항에 있어서,
    상기 적어도 두 개의 전압 레벨들 중 하나는 최상위 전압 레벨이고, 나머지 하나는 최하위 전압 레벨인 것을 특징으로 하는 데이터 코딩 방법.
  5. 제1항에 있어서,
    상기 제1 및 제2 직렬 데이터 신호들과 상기 제1 및 제2 병렬 데이터 신호들은 각각 3K 비트를 포함하고,
    상기 제1 설정된 수는 2K+J(J는 정수)이고, 상기 제2 설정된 수는 2K인 것을 특징으로 하는 데이터 코딩 방법.
  6. 제5항에 있어서, 상기 (b)단계는,
    (b1) 상기 제1 병렬 데이터 신호가 상기 2K+J번째 전압 레벨을 나타내는 비트들을 포함할 때, 상기 2K+J번째 전압 레벨을 나타내는 비트들을 상기 2K개의 전압 레벨들 중 하나를 나타내는 비트들로 코딩하는 단계를 포함하는 것을 특징으로 하는 데이터 코딩 방법.
  7. 전압 영역에서의 전송을 위한 데이터를 인코딩하는 인코딩 장치에 있어서,
    제1 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제1 직렬 데이터 신호를 상기 제1 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제1 병렬 데이터 신호로 변환하여 출력하는 직렬 대 병렬 변환기;
    상기 제1 병렬 데이터 신호를 함수 맵핑을 통해 인코딩하여 상기 제1 병렬 데이터 신호에 포함되는 비트들이 나타내는 전압 레벨의 수를 증가시키고, 제2 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제2 병렬 데이터 신호를 출력하는 함수 맵핑부; 및
    상기 제2 병렬 데이터 신호를 상기 제2 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제2 직렬 데이터 신호로 변환하여 출력하는 병렬 대 직렬 변환기를 구비하는 것을 특징으로 하는 인코딩 장치.
  8. 제7항에 있어서,
    상기 제1 및 제2 직렬 데이터 신호들과 상기 제1 및 제2 병렬 데이터 신호들은 각각 3K 비트를 포함하고,
    상기 제1 설정된 수는 2K이고, 상기 제2 설정된 수는 2K+J(J는 정수)인 것을 특징으로 하는 인코딩 장치.
  9. 제8항에 있어서,
    상기 함수 맵핑부는, 상기 제1 병렬 데이터 신호에 포함되는 비트들이 나타내는 상기 제1 설정된 수의 전압 레벨들 중 적어도 두 개의 전압 레벨들간의 차가 설정된 값 보다 클 때, 상기 두 개의 전압 레벨들 중 하나를 나타내는 비트를 상기 2K+J번째 전압 레벨을 나타내는 비트로 인코딩하는 것을 특징으로 하는 인코딩 장치.
  10. 제9항에 있어서,
    상기 적어도 두 개의 전압 레벨들 중 하나는 최상위 전압 레벨이고, 나머지 하나는 최하위 전압 레벨인 것을 특징으로 하는 인코딩 장치.
  11. 제7항에 있어서,
    상기 제1 병렬 데이터 신호를 저장하고, 저장된 상기 제1 병렬 데이터 신호를 상기 함수 맵핑부에 출력하는 입력 레지스터부; 및
    상기 제2 병렬 데이터 신호를 저장하고, 저장된 상기 제2 병렬 데이터 신호를 상기 병렬 대 직렬 변환기에 출력하는 출력 레지스터부를 더 구비하는 것을 특징으로 하는 인코딩 장치.
  12. 전압 영역에서의 수신 데이터를 디코딩하는 디코딩 장치에 있어서,
    제1 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제1 직렬 데이터 신호를 상기 제1 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제1 병렬 데이터 신호로 변환하여 출력하는 직렬 대 병렬 변환기;
    상기 제1 병렬 데이터 신호를 함수 맵핑을 통해 디코딩하여 상기 제1 병렬 데이터 신호에 포함되는 비트들이 나타내는 전압 레벨의 수를 감소시키고, 제2 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제2 병렬 데이터 신호를 출력하는 함수 맵핑부; 및
    상기 제2 병렬 데이터 신호를 상기 제2 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제2 직렬 데이터 신호로 변환하여 출력하는 병렬 대 직렬 변환기를 구비하는 것을 특징으로 하는 디코딩 장치.
  13. 제12항에 있어서,
    상기 제1 및 제2 직렬 데이터 신호들과 상기 제1 및 제2 병렬 데이터 신호들은 각각 3K 비트를 포함하고,
    상기 제1 설정된 수는 2K+J(J는 정수)이고, 상기 제2 설정된 수는 2K인 것을 특징으로 하는 디코딩 장치.
  14. 제13항에 있어서,
    상기 함수 맵핑부는, 상기 제1 병렬 데이터 신호가 상기 2K+J번째 전압 레벨을 나타내는 비트들을 포함할 때, 상기 2K+J번째 전압 레벨을 나타내는 비트들을 상기 2K개의 전압 레벨들 중 하나를 나타내는 비트들로 디코딩하는 것을 특징으로 하는 디코딩 장치.
  15. 제12항에 있어서,
    상기 제1 병렬 데이터 신호를 저장하고, 저장된 상기 제1 병렬 데이터 신호를 상기 함수 맵핑부에 출력하는 입력 레지스터부; 및
    상기 제2 병렬 데이터 신호를 저장하고, 저장된 상기 제2 병렬 데이터 신호를 상기 병렬 대 직렬 변환기에 출력하는 출력 레지스터부를 더 구비하는 것을 특징으로 하는 디코딩 장치.
  16. 전압 영역에서 데이터를 송수신하는 장치에 있어서,
    그 비트 값에 따라 제1 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제1 디지털 데이터 신호를 인코딩하여 그 비트 값에 따라 제2 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제2 디지털 데이터 신호를 출력하는 인코딩 장치;
    상기 제2 디지털 데이터 신호를 상기 제2 설정된 수의 전압 레벨들을 포함하는 아날로그 데이터 신호로 변환하여, 신호 라인에 출력하는 DA 컨버터;
    상기 신호 라인을 통하여 수신되는 상기 아날로그 데이터 신호를 그 전압 레벨에 따라 상기 제2 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제3 디지털 데이터 신호로 변환하는 AD 컨버터; 및
    상기 제3 디지털 데이터 신호를 디코딩하여 그 비트 값에 따라 상기 제1 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제4 디지털 데이터 신호를 출력하는 디코딩 장치를 구비하는 것을 특징으로 하는 송수신 장치.
  17. 제16항에 있어서,
    상기 제1 내지 제4 디지털 데이터 신호들은 각각 3K 비트를 포함하고,
    상기 제1 설정된 수는 2K이고, 상기 제2 설정된 수는 2K+J(J는 정수)인 것을 특징으로 하는 송수신 장치.
  18. 제17항에 있어서, 상기 인코딩 장치는,
    직렬로 수신되는 상기 제1 디지털 데이터 신호를 제1 병렬 데이터 신호로 변환하여 출력하는 직렬 대 병렬 변환기;
    상기 제1 병렬 데이터 신호를 함수 맵핑을 통해 인코딩하여 상기 제1 병렬 데이터 신호에 포함되는 비트들이 나타내는 전압 레벨의 수를 증가시키고, 상기 제2 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제2 병렬 데이터 신호를 출력하는 함수 맵핑부; 및
    상기 제2 병렬 데이터 신호를 직렬의 상기 제2 디지털 데이터 신호로 변환하여 출력하는 병렬 대 직렬 변환기를 구비하는 것을 특징으로 하는 송수신 장치.
  19. 제18항에 있어서,
    상기 함수 맵핑부는, 상기 제1 병렬 데이터 신호에 포함되는 비트들이 나타내는 상기 제1 설정된 수의 전압 레벨들 중 적어도 두 개의 전압 레벨들간의 차가 설정된 값 보다 클 때, 상기 두 개의 전압 레벨들 중 하나를 나타내는 비트들을 상기 2K+J번째 전압 레벨을 나타내는 비트들로 인코딩하는 것을 특징으로 하는 송수신 장치.
  20. 제19항에 있어서,
    상기 적어도 두 개의 전압 레벨들 중 하나는 최상위 전압 레벨이고, 나머지 하나는 최하위 전압 레벨인 것을 특징으로 하는 인코딩 장치.
  21. 제17항에 있어서, 상기 디코딩 장치는,
    직렬로 수신되는 상기 제3 디지털 데이터 신호를 제1 병렬 데이터 신호로 변환하여 출력하는 직렬 대 병렬 변환기;
    상기 제1 병렬 데이터 신호를 함수 맵핑을 통해 디코딩하여 상기 제1 병렬 데이터 신호에 포함되는 비트들이 나타내는 전압 레벨의 수를 감소시키고, 상기 제1 설정된 수의 전압 레벨을 나타내는 비트들을 포함하는 제2 병렬 데이터 신호를 출력하는 함수 맵핑부; 및
    상기 제2 병렬 데이터 신호를 직렬의 상기 제4 디지털 데이터 신호로 변환하여 출력하는 병렬 대 직렬 변환기를 구비하는 것을 특징으로 하는 송수신 장치.
  22. 제21항에 있어서,
    상기 함수 맵핑부는, 상기 제1 병렬 데이터 신호가 상기 2K+J번째 전압 레벨을 나타내는 비트들을 포함할 때, 상기 2K+J번째 전압 레벨을 나타내는 비트들을 상기 2K개의 전압 레벨들 중 하나를 나타내는 비트들로 디코딩하는 것을 특징으로 하는 송수신 장치.
  23. 제17항에 있어서, 상기 DA 컨버터는,
    상기 제2 디지털 데이터 신호에 응답하여 복수의 제어 신호들을 출력하는 프리 드라이버; 및
    상기 복수의 제어 신호들에 응답하여 상기 아날로그 데이터 신호를 출력하는 메인 드라이버를 구비하는 것을 특징으로 하는 송수신 장치.
  24. 제23항에 있어서, 상기 메인 드라이버는,
    상기 복수의 제어 신호들 중 하나에 응답하여 출력 노드에 소정 전압 레벨을 가지는 상기 아날로그 데이터 신호를 출력하는 구동 트랜지스터;
    상기 구동 트랜지스터에 내부 전압을 공급하는 패스(path)를 형성하는 터미네이션 저항;
    상기 구동 트랜지스터와 그라운드 사이에서 상호 병렬로 연결되어 서로 다른 크기의 전류들을 각각 발생하는 복수의 전류원들; 및
    상기 복수의 전류원들과 상기 구동 트랜지스터 사이에 각각 연결되고, 상기 복수의 제어 신호들에 응답하여 턴 온되거나 또는 턴 오프되는 복수의 스위치들을 구비하는 것을 특징으로 하는 송수신 장치.
  25. 제24항에 있어서,
    상기 복수의 전류원들의 수는 (2K+J)-1인 것을 특징으로 하는 송수신 장치.
  26. 제24항에 있어서,
    상기 복수의 전류원들에 의해 각각 발생되는 상기 전류들의 크기는 상기 복수의 전류원들 중 어느 하나에 의해 발생되는 전류의 크기의 소정 배수인 것을 특징으로 하는 송수신 장치.
  27. 제24항에 있어서,
    상기 스위치들 중 어느 하나가 턴 온될 때 나머지 스위치들은 모두 턴 오프되는 것을 특징으로 하는 송수신 장치.
  28. 제17항에 있어서, 상기 AD 컨버터는,
    상기 아날로그 데이터 신호의 전압을 복수의 기준 전압들에 각각 비교하고, 그 비교 결과에 따라 복수의 비교 신호들을 출력하는 비교 회로; 및
    상기 복수의 비교 신호들을 인코딩하여 상기 제3 디지털 데이터 신호를 출력하는 인코더를 구비하는 것을 특징으로 하는 송수신 장치
  29. 제28항에 있어서, 상기 비교 회로는,
    내부 전압과 그라운드 전압 사이에서 직렬로 연결되는 복수의 저항들; 및
    상기 복수의 저항들 사이에 각각 존재하는 복수의 출력 노드들에서 각각 발생되는 상기 복수의 기준 전압들과 상기 아날로그 데이터 신호의 전압을 각각 비교하고, 그 비교 결과로서 상기 복수의 비교 신호들을 각각 출력하는 복수의 비교기들을 구비하는 것을 특징으로 하는 송수신 장치.
  30. 제29항에 있어서,
    상기 복수의 저항들의 수는 2K+J이고, 상기 복수의 비교기들의 수는 (2K+J)-1인 것을 특징으로 하는 송수신 장치.
  31. 제28항에 있어서,
    상기 인코더는 상기 복수의 비교 신호들의 논리 상태에 따라 대응하는 전압 레벨을 나타내는 비트 값을 포함하는 상기 제3 디지털 데이터 신호를 출력하는 것을 특징으로 하는 송수신 장치.
  32. 제28항에 있어서,
    상기 인코더는 상기 복수의 비교 신호들이 모두 논리 하이 상태일 때 최상위 전압 레벨을 나타내는 비트 값을 포함하는 상기 제3 디지털 데이터 신호를 출력하고, 상기 복수의 비교 신호들이 모두 논리 로우 상태일 때 최하위 전압 레벨을 나타내는 비트 값을 포함하는 상기 제3 디지털 데이터 신호를 출력하는 것을 특징으로 하는 송수신 장치.
  33. 그 비트 값에 따라 제1 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제1 디지털 데이터 신호를 인코딩하여 그 비트 값에 따라 제2 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제2 디지털 데이터 신호를 출력하는 인코딩 장치;
    상기 제2 디지털 데이터 신호를 상기 제2 설정된 수의 전압 레벨들을 포함하는 아날로그 데이터 신호로 변환하여, 전송 채널을 통하여 외부의 장치에 출력하는 DA 컨버터;
    상기 전송 채널을 통하여 상기 외부의 장치로부터 수신되는 상기 아날로그 데이터 신호를 그 비트 값에 따라 상기 제2 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제3 디지털 데이터 신호로 변환하는 AD 컨버터; 및
    상기 제3 디지털 데이터 신호를 디코딩하여 그 비트 값에 따라 상기 제1 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제4 디지털 데이터 신호를 출력하는 디코딩 장치를 포함하는 송수신 장치를 구비하는 것을 특징으로 하는 반도체 메모리 장치.
  34. 그 비트 값에 따라 제1 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제1 디지털 데이터 신호를 인코딩하여 그 비트 값에 따라 제2 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제2 디지털 데이터 신호를 출력하는 인코딩 장치;
    상기 제2 디지털 데이터 신호를 상기 제2 설정된 수의 전압 레벨들을 포함하는 아날로그 데이터 신호로 변환하여, 전송 채널을 통하여 외부의 장치에 출력하는 DA 컨버터;
    상기 전송 채널을 통하여 상기 외부의 장치로부터 수신되는 상기 아날로그 데이터 신호를 그 비트 값에 따라 상기 제2 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제3 디지털 데이터 신호로 변환하는 AD 컨버터; 및
    상기 제3 디지털 데이터 신호를 디코딩하여 그 비트 값에 따라 상기 제1 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제4 디지털 데이터 신호를 출력하는 디코딩 장치를 포함하는 송수신 장치를 구비하는 것을 특징으로 하는 메모리 컨트롤러.
  35. 전압 영역에서 데이터를 송수신하는 방법에 있어서,
    (a) 그 비트 값에 따라 제1 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제1 디지털 데이터 신호를 인코딩하여 그 비트 값에 따라 제2 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제2 디지털 데이터 신호를 출력하는 단계;
    (b) 상기 제2 디지털 데이터 신호를 상기 제2 설정된 수의 전압 레벨들을 포함하는 아날로그 데이터 신호로 변환하는 단계;
    (c) 상기 아날로그 데이터 신호를 그 비트 값에 따라 상기 제2 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제3 디지털 데이터 신호로 변환하는 단계; 및
    (d) 상기 제3 디지털 데이터 신호를 디코딩하여 그 비트 값에 따라 상기 제1 설정된 수의 전압 레벨들을 나타내는 비트들을 포함하는 제4 디지털 데이터 신호를 출력하는 단계를 포함하는 것을 특징으로 하는 송수신 방법.
KR1020040047638A 2004-06-24 2004-06-24 전송 데이터의 스큐를 감소시키는 데이터 코딩 방법과이를 이용한 인코딩 장치 및 디코딩 장치와 이들을구비하는 송수신 장치 및 그 송수신 방법 KR100630686B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020040047638A KR100630686B1 (ko) 2004-06-24 2004-06-24 전송 데이터의 스큐를 감소시키는 데이터 코딩 방법과이를 이용한 인코딩 장치 및 디코딩 장치와 이들을구비하는 송수신 장치 및 그 송수신 방법
US11/066,831 US7355532B2 (en) 2004-06-24 2005-02-24 voltage level coding system and method
JP2005182360A JP5106757B2 (ja) 2004-06-24 2005-06-22 電圧レベルコーディングシステム及び方法
CN2005100813347A CN1713626B (zh) 2004-06-24 2005-06-24 电压电平编码系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040047638A KR100630686B1 (ko) 2004-06-24 2004-06-24 전송 데이터의 스큐를 감소시키는 데이터 코딩 방법과이를 이용한 인코딩 장치 및 디코딩 장치와 이들을구비하는 송수신 장치 및 그 송수신 방법

Publications (2)

Publication Number Publication Date
KR20050122514A true KR20050122514A (ko) 2005-12-29
KR100630686B1 KR100630686B1 (ko) 2006-10-02

Family

ID=35505713

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040047638A KR100630686B1 (ko) 2004-06-24 2004-06-24 전송 데이터의 스큐를 감소시키는 데이터 코딩 방법과이를 이용한 인코딩 장치 및 디코딩 장치와 이들을구비하는 송수신 장치 및 그 송수신 방법

Country Status (3)

Country Link
US (1) US7355532B2 (ko)
KR (1) KR100630686B1 (ko)
CN (1) CN1713626B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101899247B1 (ko) * 2017-05-31 2018-09-14 한양대학교 산학협력단 동시 스위칭 잡음을 제거하는 송신기 및 이에 있어서 데이터 전송 방법

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007534105A (ja) * 2004-04-22 2007-11-22 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 電子回路、データ読み出し方法、符号化回路、データワード符号化方法
US8237466B2 (en) * 2006-08-21 2012-08-07 Cooper Benjamin J Device and method for enabling multi-value digital computation and control
US8064535B2 (en) * 2007-03-02 2011-11-22 Qualcomm Incorporated Three phase and polarity encoded serial interface
US9711041B2 (en) 2012-03-16 2017-07-18 Qualcomm Incorporated N-phase polarity data transfer
US9231790B2 (en) * 2007-03-02 2016-01-05 Qualcomm Incorporated N-phase phase and polarity encoded serial interface
US20090080233A1 (en) * 2007-09-21 2009-03-26 Motorola, Inc. Method and apparatus for printed resistive read only memory
US7786904B1 (en) * 2008-11-05 2010-08-31 Mingchih Hsieh Voltage level digital system
JP6008215B2 (ja) 2012-04-19 2016-10-19 パナソニックIpマネジメント株式会社 多値信号伝送システム
US8854236B2 (en) * 2012-05-18 2014-10-07 Micron Technology, Inc. Methods and apparatuses for low-power multi-level encoded signals
US9112550B1 (en) * 2014-06-25 2015-08-18 Kandou Labs, SA Multilevel driver for high speed chip-to-chip communications
US9143171B1 (en) * 2014-07-14 2015-09-22 Ncku Research And Development Foundation Duobinary voltage-mode transmitter
CN105306100B (zh) * 2014-07-22 2017-10-20 财团法人成大研究发展基金会 双二元电压模式传送器
CN107707258B (zh) * 2017-10-31 2022-06-10 上海兆芯集成电路有限公司 眼图产生器
US11088878B2 (en) 2020-01-03 2021-08-10 Korea University Research And Business Foundation Transceiver using multi-level braid signaling and method of operating the same

Family Cites Families (15)

* 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
US5387911A (en) * 1992-02-21 1995-02-07 Gleichert; Marc C. Method and apparatus for transmitting and receiving both 8B/10B code and 10B/12B code in a switchable 8B/10B transmitter and receiver
US6278740B1 (en) * 1998-11-19 2001-08-21 Gates Technology Multi-bit (2i+2)-wire differential coding of digital signals using differential comparators and majority logic
US6538584B2 (en) * 2000-12-28 2003-03-25 Intel Corporation Transition reduction encoder using current and last bit sets
US7260155B2 (en) * 2001-08-17 2007-08-21 Synopsys, Inc. Method and apparatus for encoding and decoding digital communications data
US6999516B1 (en) * 2001-10-24 2006-02-14 Rambus Inc. Technique for emulating differential signaling
US7142612B2 (en) * 2001-11-16 2006-11-28 Rambus, Inc. Method and apparatus for multi-level signaling
US6624763B2 (en) * 2002-02-28 2003-09-23 Teknovus, Inc. Multiplexing an additional bit stream with a primary bit stream
JP4000564B2 (ja) * 2002-08-15 2007-10-31 富士ゼロックス株式会社 符号化装置およびその方法
US7113550B2 (en) * 2002-12-10 2006-09-26 Rambus Inc. Technique for improving the quality of digital signals in a multi-level signaling system
CN1507160A (zh) * 2002-12-11 2004-06-23 上海科鸣机械设备有限公司 直流平衡码编码器
US6859154B2 (en) * 2003-02-12 2005-02-22 Broadcom Corporation Method to overlay a secondary communication channel onto an encoded primary communication channel
JP4254492B2 (ja) * 2003-11-07 2009-04-15 ソニー株式会社 データ伝送システム、データ送信装置、データ受信装置、データ伝送方法、データ送信方法及びデータ受信方法
US6917312B2 (en) * 2003-11-10 2005-07-12 Rambus Inc. Technique for improving the quality of digital signals in a multi-level signaling system
US7081838B2 (en) * 2004-12-29 2006-07-25 Enigma Semiconductor, Inc. 16b/10s coding apparatus and method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101899247B1 (ko) * 2017-05-31 2018-09-14 한양대학교 산학협력단 동시 스위칭 잡음을 제거하는 송신기 및 이에 있어서 데이터 전송 방법
US10992412B2 (en) 2017-05-31 2021-04-27 Industry-University Cooperation Foundation Hanyang University Transmitter for cancelling simultaneous switching noise and data transmission method in the same

Also Published As

Publication number Publication date
CN1713626A (zh) 2005-12-28
CN1713626B (zh) 2011-09-14
US7355532B2 (en) 2008-04-08
KR100630686B1 (ko) 2006-10-02
US20050286642A1 (en) 2005-12-29

Similar Documents

Publication Publication Date Title
KR100630686B1 (ko) 전송 데이터의 스큐를 감소시키는 데이터 코딩 방법과이를 이용한 인코딩 장치 및 디코딩 장치와 이들을구비하는 송수신 장치 및 그 송수신 방법
JP5575237B2 (ja) 組み合わせデータマスクおよびデータバス反転を用いたデータ符号化
US8330503B2 (en) Equalizing transceiver with reduced parasitic capacitance
US5931927A (en) Device for reducing the fluctuation of power supply voltage due to inductance by inverting bits in groups of data lines
US8223042B2 (en) Encoding data with minimum hamming weight variation
JP4816077B2 (ja) レベルシフト回路及びそれを用いたドライバ回路
US7961121B2 (en) Transmitting/receiving methods and systems with simultaneous switching noise reducing preambles
US20060192590A1 (en) Differential switching circuit and digital-to-analog converter
US20080122671A1 (en) Digital-to-analog converter
JP4721763B2 (ja) D/a変換回路、ディスプレイドライバ、及び表示装置
US6937173B2 (en) Serializer and method of serializing parallel data into serial data stream
US20240007122A1 (en) Configurable voltage regulator circuit and transmitter circuit
JP3814275B2 (ja) 小さいスキュー及びグリッチを有するデジタル/アナログ変換装置
CN112532236A (zh) 时钟数据恢复电路
JP2001136069A (ja) デジタルアナログ変換回路
US7564392B2 (en) Decoder circuit
US20030080889A1 (en) Current cell driving circuit in digital-to-analog converter
US7508241B2 (en) Data transfer method, data transfer circuit, output circuit, input circuit, semiconductor device, and electronic apparatus
JP2009014971A (ja) 表示ドライバ回路
US6346906B1 (en) Thermometric-binary code conversion method, conversion circuit therefor and encoder element circuits used therefor
JP2008301287A (ja) D/aコンバータ回路および液晶駆動装置
US7321628B2 (en) Data transmission system with reduced power consumption
CN112233618B (zh) 一种三级格雷码源驱动电路
US20230291415A1 (en) Data register unit, sar adc and electronic device
JP5385579B2 (ja) 送信装置

Legal Events

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

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130902

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140901

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150831

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20180831

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20190830

Year of fee payment: 14