KR20090077414A - 데이터 송수신 장치 및 방법 - Google Patents

데이터 송수신 장치 및 방법 Download PDF

Info

Publication number
KR20090077414A
KR20090077414A KR1020080003364A KR20080003364A KR20090077414A KR 20090077414 A KR20090077414 A KR 20090077414A KR 1020080003364 A KR1020080003364 A KR 1020080003364A KR 20080003364 A KR20080003364 A KR 20080003364A KR 20090077414 A KR20090077414 A KR 20090077414A
Authority
KR
South Korea
Prior art keywords
data
msb
coded
coding
parallel
Prior art date
Application number
KR1020080003364A
Other languages
English (en)
Other versions
KR100946177B1 (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 KR1020080003364A priority Critical patent/KR100946177B1/ko
Publication of KR20090077414A publication Critical patent/KR20090077414A/ko
Application granted granted Critical
Publication of KR100946177B1 publication Critical patent/KR100946177B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M9/00Parallel/series conversion or vice versa
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Dc Digital Transmission (AREA)

Abstract

본 발명은 데이터 송수신장치 및 방법에 관한 것으로서, 트랜스미터는 병렬 데이터의 MSB가 0인 경우에는 LSB로부터 병렬 데이터의 값만큼 1을 가지도록 하고, MSB가 1인 경우에는 LSB로부터 MSB를 제외한 병렬 데이터의 값만큼 0을 가지도록 함으로써 트랜지션수를 0이나 1이 되도록 트랜지션 코딩하는 인코딩부를 포함하고, 리시버는 상기 트랜지션 코딩된 데이터의 MSB가 0인 경우는 코딩된 데이터에서 1의 개수를 더하고, MSB가 1인 경우는 코딩된 데이터에서 1의 개수를 더한 수를 2의 보수에서 마이너스(-)를 취함으로써 디코딩하는 디코딩부를 포함하여, N비트의 병렬 데이터를 직렬화하여 전송할 때 데이터 트랜지션(transition)이 한 번만 일어 일어나도록 코딩하여줌으로써, 데이터 전송 시 발생하는 데이터 트랜지션의 수를 줄여 저전력 데이터 전송을 가능하게 하며, 데이터 직렬화 효과로 데이터 전송에 필요한 링크의 개수를 줄이는 효과가 있다.
트랜스미터, 리시버, 버스 코딩, OST 코딩

Description

데이터 송수신 장치 및 방법 {APPARATUS AND METHOD TRANSMITTING - RECEIVERING DATA}
본 발명은 데이터 송수신장치 및 방법에 관한 것으로서, 특히 병렬 데이터를 직렬전송 시에 데이터 트랜지션(transition)이 한 번만 일어 일어나도록 코딩하여 데이터 전송 시 발생하는 데이터 트랜지션의 수를 줄여 저전력 데이터 전송을 가능하게 하며, 데이터 전송에 필요한 링크의 개수를 줄일 수 있는 데이터 송수신 장치에 관한 것이다.
기존의 온-칩, 혹은 오프-칩 병렬통신은 도선의 수를 많이 필요로 하며, 도선사이의 혼선, 지연차등의 문제 때문에, 전기 제품간의 유선통신, 혹은 컴퓨터간의 인터넷 통신 그리고 칩 내부 기능 블록간의 통신등에 직렬통신을 널리 사용해오고 있다.
한편, 최근 공정이 발달하면서 트랜지스터의 성능이 좋아지는 것에 비하여 링크 와이어의 성능이 좋아지는 정도가 작아 상대적으로 링크 와이어의 가격은 점 점 높아지고 있다.
또한, SoC 내의 집적도가 높아지면서 집적되는 모듈의 개수가 늘어 모듈 사이의 통신이 중요해지고 있으며, 또 그에 필요한 링크가 점점 복잡해지고 있다. 따라서 링크에서 소모되는 자원과 소모되는 전력이 문제가 되고 있다.
그 대책의 한가지로, 예전부터 많은 비트 수를 가지는 병렬 데이터를 전송을 효율적으로 보내기 위하여, 데이터의 트랜지션(transition) 수를 줄이는 버스 인버트 코딩(bus invert coding), 그레이 코딩(gray coding), T0 코딩 등과 같은 버스 코딩 방법이 많이 사용되어져 왔다.
또 다른 관점으로, 많은 비트 수를 가지는 병렬 데이터를 전송하는데 있어서 소모되는 와이어 링크 자원을 줄이기 위하여 병렬 데이터를 시분할하여 직렬 데이터로 변환하여 보내는 버스 직렬화 기법 역시 쓰여지고 있다.
따라서 본 발명은 상기와 같은 문제점을 해결하기 위하여, 병렬 데이터를 직렬화하는 과정에서의 트랜지션 수를 줄이는 코딩 방법을 포함한 데이터 송수신 장치를 제안하여, 직렬화와 저전력 소모를 동시에 실현하여 효율적인 데이터 전송을 가능하게 하는 데이터 송수신 장치 및 방법을 제공하는 것을 목적으로 한다.
이러한 기술적 과제를 달성하기 위하여 본 발명에 병렬데이터를 직렬화하여 전송하는 트랜스미터와, 직렬화된 데이터를 전송하는 직렬링크부와, 직렬화된 데이터를 병렬데이터로 변환하는 리시버로 이루어진 데이터 송수신장치에 있어서, 상기 트랜스미터는 병렬 데이터의 MSB가 0인 경우에는 LSB()로부터 병렬 데이터의 값만큼 1을 가지도록 하고, MSB가 1인 경우에는 LSB로부터 MSB를 제외한 병렬 데이터의 값만큼 0을 가지도록 함으로써 데이터 트랜지션 수를 0이나 1이 되도록 트랜지션 코딩하는 인코딩부를 포함하고, 상기 리시버는 상기 트랜지션 코딩된 데이터의 MSB가 0인 경우는 코딩된 데이터에서 1의 개수를 더하고, MSB가 1인 경우는 코딩된 데이터에서 1의 개수를 더한 수를 2의 보수에서 마이너스(-)를 취함으로써 디코딩하는 디코딩부를 포함할 수 있다.
상기 트랜스미터는 상기 인코딩부에 의하여 코딩된 데이터가 0에서 1로 변할 때 상기 코딩된 데이터가 입력되어 직렬변환되는 NMOS 다이내믹 로직과, 코딩된 데 이터가 1에서 0으로 변할 때 상기 코딩된 데이터가 입력되어 직렬변환되는 PMOS 다이내믹 로직을 더 포함할 수 있다.
상기 디코딩부는 코딩된 직렬데이터의 1의 개수를 계산하기 위하여 복수의 전가산기(FULL ADDER) 및 반가산기(HALF ADDER)로 구성된 CSA(CARRY SAVE ADDER)를 포함할 수 있다.
또한, 병렬데이터를 직렬데이터로 변환하여 송수신하는 데이터 송수신 방법에 있어서, 직렬화하기 전에 병렬 데이터의 MSB가 0인 경우에는 LSB로부터 병렬 데이터의 값만큼 1을 가지도록 하고, MSB가 1인 경우에는 LSB로부터 MSB를 제외한 병렬 데이터의 값만큼 0을 가지도록 함으로써 트랜지션수를 0이나 1이 되도록 트랜지션 코딩하여 전송하고, 직렬데이터를 수신하여 병렬화한 후에 상기 트랜지션 코딩된 데이터의 MSB가 0인 경우는 코딩된 데이터에서 1의 개수를 더하고, MSB가 1인 경우는 코딩된 데이터에서 1의 개수를 더한 수를 2의 보수에서 마이너스(-)를 취함으로써 디코딩하는 것이 바람직하다.
상기와 같이 본 발명에 따른 데이터 송수신장치 및 방법에 의하면, N비트의 병렬 데이터를 직렬화하여 전송할 때 데이터 트랜지션(transistion)이 한 번만 일어 일어나도록 코딩하여줌으로써, 데이터 전송 시 발생하는 데이터 트랜지션의 수를 줄여 저전력 데이터 전송을 가능하게 하며, 데이터 직렬화 효과로 데이터 전송에 필요한 링크의 개수를 줄이는 효과가 있다.
이하, 상기와 같이 구성된 데이터 송수신 장치 및 방법에 대하여 도면을 참조하여 상세히 설명하기로 한다.
도 1은 본 발명에 따른 데이터 송수신장치의 전체구성을 나타낸 블록도이고, 도 2는 본 발명의 일 실시예에 따른 N비트 데이터에 대한 OST 코딩 테이블을 나타낸 표이며, 도 3은 본 발명에 따른 데이터 송수신장치의 트랜스미터를 구성하는 NMOS 다이내믹 로직을 나타낸 회로도이고, 도 4는 본 발명에 따른 데이터 송수신장치의 트랜스미터를 구성하는 PMOS 다이내믹 로직을 나타낸 회로도이며, 도 5는 본 발명에 따른 데이터 송수신장치의 트랜스미터의 구성을 나타낸 블록도이고, 도6은 본 발명에 따른 데이터 송수신장치의 디코딩부의 구성을 나타낸 도이다.
도 1에 나타난 바와 같이, 본 발명에 따른 데이터 송수신장치는 병렬 데이터를 보내는 트랜스미터(100)의 인코딩부(110)와 직렬화된 데이터를 싣는 직렬 링크 부(200) 그리고 직렬화된 데이터를 다시 병렬화 시키는 리시버(300)의 디코딩 부(310)로 이루어져 있다.
여기서, 상기 트랜스미터(100)는 상기 인코딩부(110)에 의하여 코딩된 데이터가 0에서 1로 변할 때 상기 코딩된 데이터가 입력되어 직렬변환되는 NMOS 다이내믹 로직과, 코딩된 데이터가 1에서 0으로 변할 때 상기 코딩된 데이터가 입력되어 직렬변환되는 PMOS 다이내믹 로직을 더 포함하여 구성된다(도 3 및 도 4 참조).
또한, 상기 리시버(300)를 구성하는 디코딩 부(310)는 코딩된 직렬데이터의 1의 개수를 계산하기 위하여 복수의 전가산기(Full Adder) 및 반가산기(Half Adder)로 구성된 CSA(Carry Save Adder)를 포함하여 직렬데이터를 병렬데이터로 변환하여 주게 된다(도 6 참조).
한편, N개의 병렬 데이터를 직렬화 시킨다고 했을 때 가능한 0과 1의 조합은 모두 2N경우가 있으며, 이 때 직렬화된 데이터의 트랜지션 수의 기댓값은 0.5*N 이 된다.(어떤 데이터 비트가 직렬화 된 후 그 다음 비트가 직렬화 되었을 때 그 값이 유지될 확률이 0.5, 변할 확률이 0.5이므로 기댓값이 0.5*N이 됨을 쉽게 알 수 있다.)
따라서, 직렬화 된 데이터에서의 트랜지션 수를 줄이기 위하여 본 발명에서는 트랜지션 수가 0이거나 1이 되도록 하는 코딩하며, 이하 이를 OST(Only Single Transition) 코딩이라 명명하기로 한다.
도 2에 나타난 바와 같이, 본 발명의 일 실시예에 따른 N비트 데이터에 대한 OST 코딩 테이블을 설명하자면, 트랜지션의 숫자가 0이거나 1이 되기 위해서는, 만약 0으로 직렬화가 시작된 경우에 단 한 번 1로 트랜지션 할 수 있는 기회가 있는 것이다. 즉, 0000, 0001, 0011, 0111 와 같이 한 번 1로 트랜지션 하면, 다음은 계속 1을 유지한다.
이와 반대로, 직렬화가 1로 시작되었을 경우는 1111, 1110, 1100, 1000 과 같이 한 번 0으로 트랜지션 하게 된다. 따라서 도 2의 테이블대로 코딩을 진행한 결과로 얻은 OST 코딩 값은 어느 경우에서나 0번 또는 1번 트랜지션 하게 된다.
N 비트 데이터 MSB(Most Significant Bit) 값이 0인 경우에는, OST 코딩을 거친 후 얻은 값은 0으로 시작해서 1로 끝나게 되고(입력이 00...00인 경우는 00..00로 시작 끝이 0으로 동일), LSB(Least Significant Bit)로부터 1의 개수가 N 비트 데이터의 값과 같게 된다.
반대로, N 비트 데이터 MSB 값이 1인 경우는 OST 코딩 된 값은 1로 시작해서 0으로 끝나게 되고 (입력이 10...00인 경우는 11...11 시작, 끝이 1로 동일) LSB로부터 0의 개수가 N 비트에서 싸인 비트인 MSB를 제외한 N-1 비트의 값과 같아진다.(또는 MSB로부터 1의 개수가 2의 보수에서의 N비트 데이터 절대값과 같다.)
이러한 방식으로 OST 코딩을 진행하면, OST 코딩 된 수의 비트수가 M이라고 하였을 때, 가능한 조합의 수는 모두 2*M개가 된다. 따라서 N비트의 수가 나타낼 수 있는 모든 조합의 가지수인 2N개를 모두 표현하기 위해서는 N과 M 사이에 다음과 같은 식(1), (2)가 성립되어야 한다.
2N = 2*M (1)
M = 2N-1 (2)
즉, OST 코딩을 거치면 비트 수가 늘어나게 된다. 즉, N=3일 때 M=4가 되고, N=4일 때는 M=8이 된다.
상기의 설명을 더욱 자세히 설명하기 위하여, N 비트의 데이터를 그냥 보낼 때와 OST 코딩을 거친 후 보낼 때 평균 트랜지션 횟수를 구해보도록 한다.
우선 위에서도 언급하였듯 N 비트 데이터를 그냥 보낼 때 트랜지션 횟수의 기댓값은 0.5*N이 된다.
OST 코딩의 경우는 N:1 코딩하였을 때, 트랜지션이 0번인 경우가 2번, 1번인 경우가 2N-2 번이 된다. 즉, 기댓값은 0*(2/2N) + 1*(2N-2)/2N = 1 - 1/2N-1 이 된다. 이 상태에서 다음 N:1 OST 코딩까지 고려하면, 다음 코딩 값이 0인지 1인지는 이번 코딩과 독립된 것이기 때문에 0*0.5 + 1*0.5 = 0.5의 트랜지션 기댓값을 가진다. 따라서 OST 코딩의 기댓값은(3/2 - 1/2N-1) 가 된다.
보통 전송과 OST 코딩 후 전송의 트랜지션 수의 비를 구하면, 아래 식 (3)
Figure 112008002410009-PAT00001
(3)
과 같이 주어진다. 즉, N이 충분히 커지면 OST 코딩을 거친 후 트랜지션의 기댓값은 1.5로 수렴되는 반면, 보통의 경우는 0.5*N으로 돼서 그 비율은 0에 가까워지게 된다.
하지만, OST 코딩을 거치면, 비트수가 2N- 1으로 커지기 때문에 큰 N에 대해 사용하기는 힘들다. 다음 표[1]은 주요 N에 대하여 OST 코딩을 적용하였을 때 결과 의 비트수 M과 트랜지션 감소 정도를 %로 정리한 표이다.
[표1]
N (직렬화할 데이터 길이) M(OST 코딩 후 데이터 길이) 트랜지션 감소 (%)
3 4 -16.7 %
4 8 -31.25 %
5 16 -42.5 %
N이 커질수록 M의 값이 2배로 커지기 때문에 N=6이상은 실제 구현이 어려운 것을 알 수 있다. 하지만 N=4 정도일 때에도 트랜지션의 숫자가 31.25% 감소하는 것을 알 수 있고, 이것은 4:1 직렬화를 진행하여 사용되는 와이어 자원을 1/4로 줄이면서, 동시에 데이터 전송 시 링크에서 소모되는 파워 역시 31.25% 감소시킬 수 있는 획기적인 효과가 있게 된다.
이하에서는, 위와 같이 링크 자원의 수와 소모되는 전력을 동시에 줄일 수 있는 OST 코딩을 구현하기 위한 트랜스미터와 리시버를 구성하는 구현회로에 대해 설명하기로 한다.
일반적으로 주로 전송하는 병렬 데이터의 비트 위드스(bit width)는 8, 16, 32 등이므로, 이 수들을 나누기 좋은 N=4인 경우에 대한 실시 예를 고려하기로 한다.
일단 상기에서 설명한 도 2를 참조하여, N이 4인 경우에서 OST 코딩 테이블은 다음 표[2]와 같다.
[표2]
N([D3:D0]) OST 코딩([O7:O0]
0000 00000000
0001 00000001
0010 00000011
0011 00000111
0100 00001111
0101 00011111
0110 00111111
0111 01111111
1000 11111111
1001 11111110
1010 11111100
1011 11111000
1100 11110000
1101 11100000
1110 11000000
1111 10000000
따라서 OST 코딩 데이터의 각 비트는 입력 데이터로부터 간단한 조합회로로 얻을 수 있으며, 그것은 다음과 같다. (입력 데이터 D3, D2, D1, D0 -> OST 데이터 O7, O6, O5, O4, O3, O2, O1, O0 / D3,O7-MSB / D0,O0-LSB)
O7 = D3
O6 = D3
Figure 112008002410009-PAT00002
(D2 · D1 · D0)
O5 = D3
Figure 112008002410009-PAT00003
(D2 · D1)
O4 = D3
Figure 112008002410009-PAT00004
(D2 · (D1 + D0))
O3 = D3
Figure 112008002410009-PAT00005
D2
O2 = D3
Figure 112008002410009-PAT00006
(D2 + D1 · D0)
O1 = D3
Figure 112008002410009-PAT00007
(D2 + D1)
O0 = D3
Figure 112008002410009-PAT00008
(D2 + D1 + D0)
OST 코딩 후에는 이것을 직렬화된 데이터로 바꾸어야 한다. OST 코딩이 한 번의 트랜지션만 일어나는 것에 착안하여, 빠른 동작이 가능한 다이내믹 회로를 이용할 수 있다.
도 3은 본 발명에 따른 데이터 송수신장치의 트랜스미터를 구성하는 NMOS 다이내믹 로직을 나타낸 회로로서, MSB가 0인 경우, 즉, OST 코딩된 데이터가 0->1로 한 번 변하는 경우에 대한 직렬 변환 회로를 보여주고 있다.
각 OST 코딩 데이터 비트는 일정 시간 간격으로 0->1로 활성화되는 STR 신호들에 의해, MSB부터 LSB로 일정 시간 간격으로 다이내믹 회로의 NOR 연결된 트랜지스터(120)로 들어간다. 즉, 어떤 OST 코딩 비트가 1이면, 프리차지(pre-charge)된 노드는 0으로 떨어지게 되고, 그 이후에 들어오는 입력에는 상관없이 계속 0이다.
예를 들면, OST 코딩 입력이 STR 신호와 AND 게이트(130)를 거쳐 일정시간 간격으로 0,0,1,1 으로 들어왔다면, 프리차지 되었던 노드는 처음으로 1이 입력된 시점부터 0이 되어, 1->1->0->0으로 변하게 된다.
이 신호를 인버팅하여 직렬 변환 된 출력은 시간에 따라 0->0->1->1이 될 것이고, 이것은 원하는 출력 신호가 된다. 즉, 1로 프리챠지된 노드를 한 번만 0으로 잡아당길 수 있는 다이내믹 로직을 이용하여, 0->1로 한번만 변하는 OST 코딩을 구현한 것이다.
만약 OST 코딩이 되지 않아 입력이 0,1,0,1 과 같이 변한다면, 이것은 다이내믹 회로로 구현할 수가 없게 된다.
그러나, MSB가 1인 경우는 처음으로 0이 나오는 OST 코딩 비트 시점을 찾아야 하기 때문에 회로가 도 3과는 보수(Complementary)적으로 이루어 져야 한다.
이는 도 4에 나타난 바와 같이, 상기 도 3이 1로 프리챠지 되고, OST 코딩 비트 중 첫 번 째 1이 0으로 출력을 당기는 NMOS 다이내믹 로직인 반면, 도 4는 0으로 프리챠지 되고, OST 코딩 비트 중 첫 번 째 0이 1로 출력을 당기는 PMOS 다이내믹 로직으로 구성된 것을 알 수 있다.
도 5에 나타난 바와 같이, 본 발명에 따른 데이터 송수신장치의 트랜스미터 전체를 구성하기 위해서는 위의 도 3, 도 4 회로 모두가 필요로 되며, MSB 비트에 의해 최종 출력이 결정된다.
여기서, 트랜스미터는 도3 및 도4에 나타난 NMOS 다이내믹 로직(160) 또는 PMOS 다이내믹 로직(170)의 출력값을 MSB신호에 의하여 동작이 제어되는 멀티플렉서(MUX., 180)에 의하여 선택하여주게 된다.
또한, 상기 선택된 출력값을 시분할하고 프리차지 구간에서의 트랜지션을 막기 위하여 래치(Latch)회로(190)를 이용하여 직렬데이터를 전송하여주게 된다.
한편, 상기 트랜스미터에서 전송된 직렬 데이터는 리시버(receiver, 300)에서 다시 병렬 변환 된다.
병렬 변환은 직렬화 데이터와 같이 전송된 스트로브 신호 STR를 이용하는 것으로서, 직렬 변환 회로에서 STR 신호를 기준으로 STR1, STR2, ..., STR7, STR8 신 호가 차례로 활성화되고, 이에 맞추어 OST 코딩된 O7, O6, ..., O1, O0 신호가 전송이 되기 때문에, 병렬 변환 회로에서 역시 전송된 STR 신호만 있으면, O7, O6, ..., O1, O0 신호의 타이밍 정보를 알려 주는 STR1, STR2, ..., STR7, STR8 신호를 얻어낼 수 있다.
이 스트로브 신호들을 이용하여 직렬화된 데이터에서 병렬 데이터 O7, O6, ..., O1, O0를 얻어낼 수 있다. 병렬화된 OST 코딩 신호는 다시 원래 신호로 디코딩되어야 하며, 이 과정은 OST 코딩 신호가 가지는 1의 개수를 이용한다.
상기의 코딩 과정에서 보았듯, MSB가 0일 때 원 데이터는 OST 코딩 데이터에서 1의 개수와 같다. 반대로 MSB가 1일 때는 원 데이터는 OST 코딩 데이터에서 1의 개수에 (2의 보수 숫자 체계에서) - 를 붙인 것과 같다. 즉, OST 코딩 데이터 1의 개수를 나타내는 숫자를 인버팅 한 후 1을 더한 것과 같게 된다.
도 6은 본 발명에 따른 데이터 송수신장치의 디코딩부의 구성을 나타내는 것으로서, OST 코딩 데이터가 가지는 1의 개수를 세기 위해 전가산기(Full adder, 320)와 반가산기(Half adder, 330)가 CSA(Carry Save Adder, 340)형태로 이용된다.
즉, CSA(340)를 통해서 세어진 1의 개수를 이용하여 트랜지션 코딩된 데이터의 MSB가 0인 경우는 코딩된 데이터에서 1의 개수를 더하고, MSB가 1인 경우는 코딩된 데이터에서 1의 개수를 더한 수를 2의 보수에서 마이너스(-)를 취함으로써, 원 데이터인 병렬데이터로 변환하여 출력하여주게 되는 것이다.
또한, 상기와 같이 구성된 데이터 송수신 장치에 의하여 데이터를 송수신하 는 방법은 우선, 직렬화하기 전에 병렬 데이터의 MSB가 0인 경우에는 LSB로부터 병렬 데이터의 값만큼 1을 가지도록 하고, MSB가 1인 경우에는 LSB로부터 MSB를 제외한 병렬 데이터의 값만큼 0을 가지도록 함으로써 트랜지션수를 0이나 1이 되도록 트랜지션 코딩하여 전송하여준다.
그리고, 직렬데이터를 수신하여 병렬화한 후에 상기 트랜지션 코딩된 데이터의 MSB가 0인 경우는 코딩된 데이터에서 1의 개수를 더하고, MSB가 1인 경우는 코딩된 데이터에서 1의 개수를 더한 수를 2의 보수에서 마이너스(-)를 취함으로써 디코딩하여준다.
따라서, 이와 같이 병렬 데이터를 직렬화하는 과정에서의 트랜지션 수를 줄이는 코딩 방법을 제안하여, 직렬화와 저전력 소모를 동시에 실현하여 효율적인 데이터 전송을 가능하게 할 수 있다.
이상에서 보는 바와 같이, 본 발명이 속하는 기술 분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 하고, 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
도 1은 본 발명에 따른 데이터 송수신장치의 전체구성을 나타낸 블록도,
도 2는 본 발명의 일 실시예에 따른 N비트 데이터에 대한 OST 코딩 테이블을 나타낸 표,
도 3은 본 발명에 따른 데이터 송수신장치의 트랜스미터를 구성하는 NMOS 다이내믹 로직을 나타낸 회로도,
도 4는 본 발명에 따른 데이터 송수신장치의 트랜스미터를 구성하는 PMOS 다이내믹 로직을 나타낸 회로도,
도 5는 본 발명에 따른 데이터 송수신장치의 트랜스미터의 구성을 나타낸 블록도,
도 6은 본 발명에 따른 데이터 송수신장치의 디코딩부의 구성을 나타낸 도이다.

Claims (4)

  1. 병렬데이터를 직렬화하여 전송하는 트랜스미터와, 직렬화된 데이터를 전송하는 직렬링크부와, 직렬화된 데이터를 병렬데이터로 변환하는 리시버로 이루어진 데이터 송수신장치에 있어서,
    상기 트랜스미터는 병렬 데이터의 MSB가 0인 경우에는 LSB로부터 병렬 데이터의 값만큼 1을 가지도록 하고, MSB가 1인 경우에는 LSB로부터 MSB를 제외한 병렬 데이터의 값만큼 0을 가지도록 함으로써 데이터 트랜지션수를 0이나 1이 되도록 트랜지션 코딩하는 인코딩부를 포함하고,
    상기 리시버는 상기 트랜지션 코딩된 데이터의 MSB가 0인 경우는 코딩된 데이터에서 1의 개수를 더하고, MSB가 1인 경우는 코딩된 데이터에서 1의 개수를 더한 수를 2의 보수에서 마이너스(-)를 취함으로써 디코딩하는 디코딩부를 포함하는, 데이터 송수신 장치.
  2. 제1항에 있어서,
    상기 트랜스미터는 상기 인코딩부에 의하여 코딩된 데이터가 0에서 1로 변할 때 상기 코딩된 데이터가 입력되어 직렬변환되는 NMOS 다이내믹 로직과, 코딩된 데이터가 1에서 0으로 변할 때 상기 코딩된 데이터가 입력되어 직렬변환되는 PMOS 다이내믹 로직을 더 포함하는, 데이터 송수신 장치.
  3. 제1항에 있어서,
    상기 디코딩부는 코딩된 직렬데이터의 1의 개수 또는 그 보수를 계산하기 위하여 복수의 전가산기 및 반가산기로 구성된 CSA를 포함하는, 데이터 송수신장치.
  4. 병렬데이터를 직렬데이터로 변환하여 송수신하는 데이터 송수신 방법에 있어서,
    직렬화하기 전에 병렬 데이터의 MSB가 0인 경우에는 LSB로부터 병렬 데이터의 값만큼 1을 가지도록 하고, MSB가 1인 경우에는 LSB로부터 MSB를 제외한 병렬 데이터의 값만큼 0을 가지도록 함으로써 트랜지션수를 0이나 1이 되도록 트랜지션 코딩하여 전송하고,
    직렬데이터를 수신하여 병렬화한 후에 상기 트랜지션 코딩된 데이터의 MSB가 0인 경우는 코딩된 데이터에서 1의 개수를 더하고, MSB가 1인 경우는 코딩된 데이터에서 1의 개수를 더한 수를 2의 보수에서 마이너스(-)를 취함으로써 디코딩하는, 데이터 송수신 방법.
KR1020080003364A 2008-01-11 2008-01-11 데이터 송수신 장치 및 방법 KR100946177B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080003364A KR100946177B1 (ko) 2008-01-11 2008-01-11 데이터 송수신 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080003364A KR100946177B1 (ko) 2008-01-11 2008-01-11 데이터 송수신 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20090077414A true KR20090077414A (ko) 2009-07-15
KR100946177B1 KR100946177B1 (ko) 2010-03-08

Family

ID=41335916

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080003364A KR100946177B1 (ko) 2008-01-11 2008-01-11 데이터 송수신 장치 및 방법

Country Status (1)

Country Link
KR (1) KR100946177B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9658643B2 (en) 2014-10-24 2017-05-23 Samsung Electronics Co., Ltd. Data interface and data transmission method
KR102651127B1 (ko) 2016-12-15 2024-03-26 삼성전자주식회사 처리 장치 및 데이터를 처리하는 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100969748B1 (ko) * 2007-01-29 2010-07-13 삼성전자주식회사 직렬 통신 시스템에서 직렬 데이터의 송수신 방법 및 장치와 이를 위한 직렬 통신 시스템

Also Published As

Publication number Publication date
KR100946177B1 (ko) 2010-03-08

Similar Documents

Publication Publication Date Title
US8581755B2 (en) Multiple word data bus inversion
KR100936445B1 (ko) 고속 직렬-병렬 변환시스템 및 방법
JP2012533264A (ja) 組み合わせデータマスクおよびデータバス反転を用いたデータ符号化
US6741193B2 (en) Parallel in serial out circuit having flip-flop latching at multiple clock rates
US8274311B2 (en) Data transmission system and method
KR100969748B1 (ko) 직렬 통신 시스템에서 직렬 데이터의 송수신 방법 및 장치와 이를 위한 직렬 통신 시스템
US6606328B1 (en) Look ahead encoder/decoder architecture
KR100946177B1 (ko) 데이터 송수신 장치 및 방법
US7817068B2 (en) Low power serial link bus architecture
JP4956295B2 (ja) 半導体記憶装置
CN216119513U (zh) 发光二极管驱动器以及发光二极管驱动设备
JP2008191792A (ja) データ送信装置及びデータ転送装置
JP2009527141A (ja) データ通信方法、データ送信および受信装置ならびにシステム
US9264155B2 (en) Apparatus and system for tracking data speed automatically
US8166219B2 (en) Method and apparatus for encoding/decoding bus signal
KR101370606B1 (ko) 스위칭 횟수 및 크로스톡 지연을 최소화한 버스 인코딩 장치
KR100574359B1 (ko) 직렬데이터의 송수신 장치 및 그 방법
JP2005286662A (ja) データ送信装置、データ送受信システム、データ伝送方法
KR100873159B1 (ko) 전송선과 스위칭수를 줄이는 하이브리드 터너리 인코딩전송 방법 및 이 방법을 이용하는 래퍼 회로
US20080222390A1 (en) Low Noise Coding for Digital Data Interface
KR101101595B1 (ko) 신호 인터페이스 방식 변환 송신 장치, 신호 인터페이스 방식 변환 수신 장치 및 신호 인터페이스 방식 변환 송수신 장치
KR101311617B1 (ko) 저전력 대규모 집적 회로 시스템을 위한 어드레스 버스코딩/디코딩 방법 및 장치
US9832010B1 (en) Signal processing device and signal processing method
US8717065B2 (en) Data tranmission driver, system and method
KR20000013044A (ko) 고속 직렬 버스 인터페이스를 위한 인코더

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: 20130304

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140303

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee