KR101298567B1 - 데이터 전송 방법, 데이터 전송 장치 및 데이터 송수신시스템 - Google Patents

데이터 전송 방법, 데이터 전송 장치 및 데이터 송수신시스템 Download PDF

Info

Publication number
KR101298567B1
KR101298567B1 KR1020070112941A KR20070112941A KR101298567B1 KR 101298567 B1 KR101298567 B1 KR 101298567B1 KR 1020070112941 A KR1020070112941 A KR 1020070112941A KR 20070112941 A KR20070112941 A KR 20070112941A KR 101298567 B1 KR101298567 B1 KR 101298567B1
Authority
KR
South Korea
Prior art keywords
data
serial
clock
transmission
bit
Prior art date
Application number
KR1020070112941A
Other languages
English (en)
Other versions
KR20090046996A (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 KR1020070112941A priority Critical patent/KR101298567B1/ko
Priority to US12/289,889 priority patent/US7796063B2/en
Publication of KR20090046996A publication Critical patent/KR20090046996A/ko
Application granted granted Critical
Publication of KR101298567B1 publication Critical patent/KR101298567B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M9/00Parallel/series conversion or vice versa
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/13Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals
    • H03K5/135Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals by the use of time reference signals, e.g. clock signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Nonlinear Science (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Information Transfer Systems (AREA)
  • Dc Digital Transmission (AREA)

Abstract

데이터 전송 장치는 시리얼 클럭 생성기, 직렬화기 및 전송 클럭 생성기를 포함한다. 상기 시리얼 클럭 생성기는 시리얼 클럭을 생성한다. 직렬화기는 시리얼 클럭에 동기되어 입력된 N(N은 2이상의 자연수) 비트의 병렬 데이터를 N 비트의 직렬 데이터로 변환한다. 전송 클럭 생성기는 시리얼 클럭을 제공받아 상기 N 비트의 직렬 데이터와 동일한 지연 시간을 갖는 전송 클럭을 생성한다. 데이터 전송 장치는 N비트의 직렬 데이터와 전송 클럭을 동시에 전송한다.

Description

데이터 전송 방법, 데이터 전송 장치 및 데이터 송수신 시스템{Method of transferring data, data transfer device and system of transferring and receiving data}
본 발명은 병렬 데이터를 직렬 데이터로 변환하는 장치 및 방법에 관한 것으로, 보다 상세하게는 병렬 데이터를 직렬 데이터로 변환하는 데이터 전송 방법 및 데이터 전송 장치에 관한 것이다.
일반적으로 직렬화기(serializer)와 병렬화기(deserializer)는 많은 데이터 통신 장치에서 두 개의 회로사이를 연결할 때 인터페이스의 핀 수를 줄이기 위하여 많이 사용되고 있다.
최근 미디어 분야에서는 디스플레이 데이터와 같은 미디어 데이터의 증가로 인하여 버스 구조에서 데이터를 전송할 때, 병렬 데이터를 직렬 데이터로 변환한 후 고속 전송을 위해 small swing 폭을 갖는 신호로 변환하여 칩 외부로 전송하는 기술이 개발되고 있다. 이러한 고속 데이터 전송시에 데이터와 클럭을 동시에 전송하여 수신단에서는 클럭으로부터 데이터를 쉽게 복원할 수 있다. 하지만 전송되는 데이터와 클럭 사이의 스큐가 커질 경우에는 수신단에서 클럭으로부터 데이터를 복 원하는데 어려움이 발생한다. 데이터와 클럭 사이에 스큐가 발생하는 이유는 송신단 자체나 전송선 등에서 지연이 발생하기 때문이다. 따라서 데이터와 클럭 사이에서 발생하는 스큐를 줄일 수 있는 기술의 필요성이 대두되었다.
이에 따라, 본 발명의 일 목적은 데이터의 고속 전송시에 데이터와 클럭 사이에서 발생하는 스큐를 줄일 수 있는 데이터 전송 방법을 제공하는 데 있다.
본 발명의 다른 목적은 데이터의 고속 전송시에 데이터와 클럭 사이에서 발생하는 스큐를 줄일 수 있는 데이터 전송 장치를 제공하는데 있다.
본 발명의 또 다른 목적은 데이터의 고속 송수신시에 데이터와 클럭 사이에서 발생할 수 있는 스큐를 줄일 수 있는 데이터 송수신 시스템을 제공하는데 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 데이터 전송 방법에 있어서, 시리얼 클럭이 생성된다. 상기 시리얼 클럭에 동기되어 N (N은 2이상의 자연수)비트의 병렬 데이터가 N 비트의 직렬 데이터로 변환된다. 상기 시리얼 클럭을 지연시켜 상기 N 비트의 직렬 데이터와 동일한 지연 시간을 갖는 전송 클럭을 생성된다. 상기 N 비트의 직렬 데이터와 상기 전송 클럭이 동시에 전송된다.
실시예에 따라, 상기 데이터 전송방법 있어서, 상기 N 비트의 직렬 데이터가 작은 스윙폭을 갖는 제1 및 제2 데이터 신호로 변환될 수 있다. 상기 전송 클럭이 작은 스윙폭을 갖는 제1 및 제2 클럭 신호로 변환될 수 있다. 상기 제1 및 제2 데이터 신호와 상기 제1 및 제2 클럭 신호가 동시에 전송될 수 있다. 상기 제1 및 제2 데이터 신호는 차동 신호쌍을 이룰 수 있다. 상기 제1 및 제2 클럭 신호는 차동 신호쌍을 이룰 수 있다. 상기 전송 클럭의 주기는 상기 시리얼 클럭의 주기의 두 배일 수 있다.
상기 목적을 달성하기 위한 본 발명의 다른 실시예에 따른 데이터 전송 장치는 시리얼 클럭 생성기, 직렬화기 및 전송 클럭 생성기를 포함한다. 상기 시리얼 클럭 생성기는 시리얼 클럭을 생성한다. 상기 직렬화기는 상기 시리얼 클럭에 동기되어 입력된 N(N은 2이상의 자연수) 비트의 병렬 데이터를 N 비트의 직렬 데이터로 변환한다. 상기 전송 클럭 생성기는 상기 시리얼 클럭을 제공받아 상기 N 비트의 직렬 데이터와 동일한 지연 시간을 갖는 전송 클럭을 생성한다. 상기 데이터 전송 장치는 상기 N비트의 직렬 데이터와 상기 전송 클럭을 동시에 전송한다.
실시예에 있어서, 상기 전송 클럭 생성기는 상기 직렬화기와 동일한 구조를 갖을 수 있다.
실시예에 있어서, 상기 데이터 전송 장치는 상기 N 비트의 직렬 데이터를 제공받아 작은 스윙폭을 갖는 제1 및 제2 데이터 신호로 변환하는 로우 스윙 데이터 버퍼와 상기 전송 클럭을 제공받아 작은 스윙폭을 갖는 제1 및 제2 클럭 신호로 변환하는 로우 스윙 클럭 버퍼를 더 포함할 수 있다. 상기 제1 및 제2 데이터 신호는 차동 신호쌍을 이룰 수 있다. 상기 제1 및 제2 클럭 신호는 차동 신호쌍을 이룰 수 있다.
실시예에 있어서, 상기 직렬화기는 N 개의 멀티플렉서들과 N 개의 플립플롭들을 포함할 수 있다. 상기 N 개의 멀티플렉서들은 제1 입력 단자로 상기 N 비트 병렬 데이터를 한 비트씩 입력받고, 제2 입력 단자로 상기 N 비트 병렬 데이터의 이전 비트의 쉬프트 값을 입력받아 출력할 수 있다. 상기 N 개의 플립플롭들은 상 기 N 개의 멀티플렉서들과 체인식으로 연결되고, 상기 시리얼 클럭에 동기되어 상기 N 개의 멀티플렉서의 출력값을 입력받아 지연시켜 출력할 수 있다. 상기 직렬화기는 상기 N 개의 멀티플렉서들에 입력되는 제어 신호가 활성화 되면 상기 N 개의 멀티플렉서들에 입력되는 상기 N 비트의 병렬 데이터가 한 비트씩 쉬프트되어 상기 N 비트의 직렬 데이터로 출력될 수 있다.
실시예에 있어서, 상기 전송 클럭 생성기는 N 개의 멀티플렉서들과 N 개의 플립플롭들을 포함할 수 있다. 상기 N 개의 멀티플렉서들은 제1 입력 단자로 서로 다른 논리값을 각각 교번적으로 입력받고 제2 입력 단자로 상기 교번적으로 입력되는 논리값의 이전 논리값을 입력받을 수 있다. 상기 N 개의 플립플롭들은 상기 N 개의 멀티플렉서들과 체인식으로 연결되고, 상기 시리얼 클럭에 동기되어 상기 N 개의 멀티플렉서들의 출력값을 입력받아 지연시켜 출력할 수 있다. 상기 전송 클럭 생성기는 상기 N 개의 멀티플렉서들에 입력되는 제어 신호가 활성화 되면 상기 N 개의 멀티플렉서들에 교번적으로 입력되는 상기 서로 다른 논리값들이 쉬프트되어 상기 전송 클럭으로 출력될 수 있다. 상기 전송 클럭의 주기는 상기 시리얼 클럭의 주기의 두 배일 수 있다.
상기 목적을 달성하기 위한 본 발명의 다른 실시예에 따른 데이터 송수신 시스템은 직렬화기, 전송 클럭 생성기 및 병렬화기를 포함한다. 상기 직렬화기는 시리얼 클럭 생성기에서 생성된 시리얼 클럭에 동기되어 N 비트의 병렬 데이터를 N 비트의 직렬 데이터로 변환한다. 상기 전송 클럭 생성기는 상기 시리얼 클럭을 입력받아 상기 N 비트 직렬 데이터와 동일한 지연시간을 갖는 전송 클럭을 생성한다. 상기 병렬화기는 동시에 전송된 상기 N 비트의 직렬 데이터와 상기 전송 클럭을 입력받아 상기 전송 클럭에 동기되어 상기 N 비트의 직렬 데이터를 상기 N 비트의 병렬 데이터로 변환한다.
실시예에 있어서, 상기 병렬화기는 상기 직렬 화기와 대칭되는 회로구조를 가지고, 상기 N 비트 직렬 데이터를 상기 N 비트 병렬 데이터로 변환할 수 있다.
본 발명에 따르면, 데이터의 고속 전송시에 데이터와 클럭 사이에서 발생하는 스큐를 감소시켜 수신단에서 데이터를 쉽게 복원할 수 있다.
본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나 의 구성요소를 다른 구성요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 일 실시예에 따른 데이터 전송 시스템을 나타내는 블록도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 데이터 전송 시스템(100)은 시리얼 클럭 생성기(10), 직렬화기(20) 및 전송 클럭 생성기(30)를 포함한다. 상기 데이터 전송 시스템은 로우 스윙 데이터 버퍼(40) 및 로우 스윙 클럭 버퍼(50)를 더 포함할 수도 있다.
상기 시리얼 클럭 생성기(20)는 시리얼 클럭(SCLK)을 생성한다. 시리얼 클럭 생성기(20)는 일반적인 위상 고정 루프(PLL)로 구현될 수 있다.
상기 직렬화기(20)는 N (N은 2이상의 정수)비트의 병렬 데이터를 입력받아 직렬화하여 N 비트의 직렬 데이터(SD)로 제공한다. 상기 전송 클럭 생성기(30)는 시리얼 클럭(SCLK)을 제공받아 상기 직렬화기(20)와 동일한 지연 시간을 갖는 전송 클럭(DCLK)을 생성한다. 실시예에서 상기 전송 클럭 생성기(30)는 상기 직렬화기(20)와 동일한 회로 구조를 가질 수 있다.
상기 로우 스윙 데이터 버퍼는 직렬 데이터(SD)를 입력받아, 작은 스윙폭을 갖는 제1 데이터 신호(SD_P)와 제2 데이터 신호(SD_N)를 제공한다. 제1 데이터 신호(SD_P)와 제2 데이터 신호(SD_N)는 서로 차동 쌍을 이룬다. 직렬 데이터(SD)를 제1 데이터 신호(SD_P)와 제2 데이터 신호(SD_N)로 변환하는 이유는 고속으로 데이터를 전송하기 위해서이다.
상기 로우 스윙 클럭 버퍼(50)는 전송 클럭(DCLK)을 입력받아, 작은 스윙폭을 갖는 제1 클럭 신호(DCLK_P)와 제2 클럭 신호(DCLK_N)를 제공한다. 상기 데이터 전송 장치(100)는 상기 직렬 데이터(SD)와 상기 전송 클럭(DCLK)를 동시에 전송하거나 상기 제1 데이터 신호(SD_P)와 제2 데이터 신호(SD_N)와 상기 제1 클럭 신호(DCLK_P)와 제2 클럭 신호(DCLK_N)를 동시에 전송할 수 있다.
도 2는 본 발명의 일 실시예에 따른 도 1의 직렬화기(20)의 구성을 구체적으로 나타내는 회로도이다. 도 2에서는 N(n) 값이 8인 경우를 가정한 것이다. 즉 도 2의 직렬화기(20)는 8 비트 병렬 데이터를 8 비트 직렬 데이터로 변환한다.
도 2를 참조하면, 직렬화기(20)는 멀티플렉서들(211,212,...,218)과 플립플롭들(221,222,...,228)을 포함한다.
상기 멀티플렉서들(211,212,...,218)들의 제1 입력 단자(1 단자)들에는 8 비트 데이터(D7 ~ D0) 가 한 비트씩 입력된다. 상기 상기 멀티플렉서들(211,212,...,218)의 제2 입력 단자(0 단자)에는 8비트 병렬 데이터의 이전 비트가 쉬프트 된 값을 입력받는다. 여기서 멀티플렉서(211)의 제2 입력단자에는 이전 비트의 쉬프트 값이 입력되지 않고 데이터(D7)가 입력된다. 상기 플립플롭 들(221,222,...,228)은 각각 입력 단자로 상기 멀티플렉서들(211,212,...,218)의 각각의 출력값을 입력받는다. 상기 플립플롭들(221,222,...,228)의 클럭 단자로는 시리얼 클럭(SCLK)이 입력된다.
즉, 상기 멀티플렉서들(211,212,...,218)과 상기 플립플롭들(221,222,...,228)은 체인 형태로 연결되어 입력되는 8 비트 병렬 데이터들(D7 ~ D0)을 제어신호(CNT)가 활성화되면 시리얼 클럭(SCLK)의 한 주기 만큼 지연시켜 플립플롭(228)에서 직렬 데이터(SD)로 출력한다. 플립플롭(228)에서 최종적으로 출력되는 직렬데이터(SD)는 D0에서부터 D7의 순서로 출력된다.
도 3은 본 발명의 일 실시예에 따른 도 1의 전송 클럭 생성기의 구체적인 구성을 나타내는 회로도이다. 도 3의 전송 클럭 생성기(30)도 도 2의 직렬화기(10)와 마찬가지로 N 이 8인 경우를 예로 든 것이다.
도 3을 참조하면, 전송 클럭 생성기(30)는 멀티플렉서들(311,312,..,318)과 플립플롭들(321,322,..., 328)을 포함한다.
상기 멀티플렉서들(311,312,..,318)의 제1 입력단자(1 단자)에는 논리 '하이'레벨과 논리 '로우'레벨이 교번적으로 입력된다. 즉 멀티플렉서들(311, 313, 315, 317)의 제1 입력 단자(1 단자)에는 논리 '하이'레벨(즉 1)이 입력되고, 멀티플렉서들(312, 314, 316, 318)의 제1 입력 단자(1 단자)에는 논리 '로우'레벨(즉 0)이 입력된다. 멀티플렉서(311)의 제2 입력단자(0 단자)에는 논리 '하이'레벨(즉 1)이 입력된다. 나머지 멀티플렉서들(322,..., 328)의 제2 입력단자(0 단자)에는 각각 플립플롭들(3321,...,327)의 출력이 입력된다. 플립플롭들(321,322,..., 328) 의 입력단자에는 각각 멀티플렉서들(311,312,..,318)의 출력이 각각 입력되고, 플립플롭들(321,322,..., 328)의 입력단자에는 시리얼 클럭(SCLK)이 입력된다. 플립플롭(328)에서는 멀티플렉서들(311,312,..,318)의 제1 단자들(1 단자)에 입력되는 논리값들이 멀티플렉서(318)로부터 멀티플렉서(311)의 순서로 시리얼 클럭(SCLK)의 한 주기 만큼 지연되어 시리얼 클럭(SCLK)의 하강 에지에서 순서대로 전송클럭(DCLK)으로 출력된다. 물론 멀티플렉서들(311,312,..,318)에도 제어 신호(CNT)가 입력된다. 상기 전송 클럭(DCLK)의 주기는 상기 시리얼 클럭(SCLK)의 주기의 두 배이다.
도 2의 직렬화기(20)와 도 3의 전송 클럭 생성기(30)가 동일한 구조를 가지고 있어 직렬 데이터(SD)와 전송 클럭(DCLK)은 동일한 지연시간을 가지게 된다. 도 1의 데이터 전송장치(100)는 직렬 데이터(SD)와 전송 클럭(DCLK)을 동시에 전송하게 되므로 수신단에서는 클럭으로부터 데이터를 쉽게 복원할 수 있다.
도 4는 도 1 내지 도3에서 N 이 8인 경우에 병렬 데이터(TxDATA), 제어신호(CNT), 시리얼 클럭(SCLK), 전송 클럭(DCLK) 및 직렬 데이터(SDATA)를 나타내는 다이어그램이다. 도 4에서는 직렬화기(20)에 입력되는 8 비트 병렬 데이터가 10111000인 경우를 가정한 것이다. 즉 도 2에서 멀티플렉서들(311,312,..,318)의 제1 단자들(1 단자)에 입력되는 데이터들(D7,..., D0)의 값이 각각 10111000인 경우를 가정한 것이다.
도 4를 참조하면, 전송 클럭(DCLK)은 시리얼 클럭(SCLK)보다 지연되고(직렬화기(20)와 동일한 지연시간을 가지고) 전송 클럭(DCLK)의 주기는 시리얼 클 럭(SCLK)의 주기의 두 배인 것을 알 수 있다. 전송클럭(DCLK)의 상승에지와 하강 에지는 직렬화기(30)에서 출력되는 직렬데이터(SD)의 각 데이터값의 중앙에 위치하게 된다. 수신단측에서는 전송클럭(DCLK)의 상승에지와 하강에지에서의 직렬데이터(SD)값을 복원하면 되므로 정확한 데이터 값을 복원할 수 있다.
도 1의 데이터 전송 장치는 N 비트의 병렬 데이터를 동시에 M (M은 2이상의 자연수)개 직렬화하는데 사용할 수도 있다.
도 5는 본 발명의 다른 실시예에 따른 데이터 전송 장치를 나타내는 블록도이다.
도 5를 참조하면, 본 발명의 다른 실시예에 따른 데이터 전송 장치(400)는 시리얼 클럭 생성기(410), 전송 클럭 생성기(420), M개의 직렬화기(430 , 440, 450)를 포함한다. 상기 데이터 전송 장치(400)는 M개의 로우 스윙 데이터 버퍼(460, 470, 480) 및 로우 스윙 클럭 버퍼(490)를 더 포함할 수도 있다.
M 개의 직렬화기들(430, 440, 450) 각각에는 N 비트의 제1 내지 제m 병렬 데이터들(DATA1, DATA2, DATAm)이 입력된다. 전송 클럭 생성기(420)는 시리얼 클럭(SCLK)을 제공받아 전송 클럭(DCLK)을 생성한다. 도 5의 직렬화기들(430, 440, 450)의 구조와 동작은 도 1 및 도 2의 직렬화기(30)의 구조 및 동작과 유사하므로 이에 대한 자세한 설명은 생략한다. 도 5의 전송 클럭 생성기(420)의 구조와 동작은 도 1 및 도 3의 전송 클럭 생성기(20)의 구조와 동작과 유사하므로 이에 대한 자세한 설명은 생략한다. 도 5의 로우 스윙 데이터 버퍼들(460, 470, 480)과 로우 스윙 클럭 버퍼(490)의 구조와 동작은 도 1의 로우 스윙 데이터 버퍼(40) 및 로우 스윙 클럭 버퍼(50)의 구조 및 동작과 유사하므로 이에 대한 자세한 설명은 생략한다.
도 6은 본 발명의 다른 실시예에 따른 데이터 송수신 시스템을 나타내는 블록도이다.
도 6을 참조하면, 본 발명의 다른 실시예에 따른 데이터 송수신 시스템(500)은 시리얼 클럭 생성기(510), 전송 클럭 생성기(520), 직렬화기(530) 및 병렬화기(540)를 포함한다.
시리얼 클럭 생성기(510)는 시리얼 클럭(SCLK)을 생성한다. 직렬화기(530)는 N 비트 병렬 데이터(DATA)를 입력받아 시리얼 클럭(SCLK)에 동기되어 N 비트 직렬 데이터(SDATA)를 제공한다. 전송 클럭 생성기(520)는 시리얼 클럭(SCLK)을 입력받아 N 비트 직렬 데이터(SDATA)와 동일한 지연 시간을 갖는 전송 클럭(DCLK)을 생성한다. 시리얼 클럭 생성기(510), 직렬화기(530) 및 전송 클럭 생성기(520)의 구조와 동작은 도 1의 시리얼 클럭 생성기(10), 직렬화기(20) 및 전송 클럭 생성기(30)의 구조 및 동작과 유사하므로 이에 대한 자세한 설명은 생략한다.
상기 병렬화기(540)는 동시에 전송된 상기 N 비트의 직렬 데이터(SD)와 상기 전송 클럭(DCLK)을 입력받아, 상기 전송 클럭(DCLK)에 동기되어 N 비트의 직렬 데이터(SD)를 N 비트의 병렬 데이터로 변환한다.
병렬화기(540)는 직렬화기(530)와 대칭되는 회로구조를 가지고 N 비트의 병렬데이터를 N 비트의 직렬 데이터로 변환한다. 병렬화기(540)는 직렬화기(530)와 대칭되는 회로 구조를 가지고 있으므로 이에 대한 자세한 설명은 생략한다.
도 1을 다시 참조하여 본 발명의 다른 실시예에 따른 데이터 전송 방법을 설명한다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 데이터 전송 방법에서는 먼저 시리얼 클럭(SCLK)이 생성된다. 시리얼 클럭(SCLK)에 동기되어 N (N은 2이상의 자연수)비트의 병렬 데이터가 N 비트의 직렬 데이터(SD)로 변환된다. 상기 시리얼 클럭(SCLK)을 지연시켜 상기 N 비트의 직렬 데이터(SD)와 동일한 지연 시간을 갖는 전송 클럭(DCLK)을 생성한다. N 비트의 직렬 데이터(SD)와 전송 클럭(DCLK)을 동시에 전송한다. 본 발명의 일 실시예에 따른 데이터 전송 방법에서는 N 비트의 직렬 데이터(SD)를 작은 스윙폭을 갖는 제1 및 제2 데이터 신호(SD_P, SD_N)로 변환하고, 상기 전송 클럭(DCLK)을 작은 스윙폭을 갖는 제1 및 제2 클럭 신호(DCLK_P, DCLK_N)로 변환하여 제1 및 제2 데이터 신호와 상기 제1 및 제2 클럭 신호를 동시에 전송할 수 있다. 본 발명의 일 실시예에 따른 데이터 전송 방법은 도 1 내지 도 3의 데이터 전송 장치와 그 작용이 유사하므로 이에 대한 자세한 설명은 생략한다.
본 발명에 따르면, 데이터의 고속 전송시나 고속 송수신시에 병렬 데이터를 직렬 데이터로 변환 할 때 발생하는 직렬화기의 시간 지연과 전송 클럭의 시간 지연을 동일하게 하여 직렬 데이터와 전송 클럭을 동시에 전송함으로써 클럭과 데이터 사이에서 발생하는 스큐를 줄여 수신단에서 데이터 복원을 쉽게 할 수 있다.
상술한 바와 같이, 본 발명의 바람직한 실시예를 참조하여 설명하였지만 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허청구범위에 기재된 본 발 명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 데이터 전송 시스템을 나타내는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 도 1의 직렬화기의 구성을 구체적으로 나타내는 회로도이다.
도 3은 본 발명의 일 실시예에 따른 도 1의 전송 클럭 생성기의 구체적인 구성을 나타내는 회로도이다.
도 4는 도 1 내지 도3에서 N 이 8인 경우에 병렬 데이터(TxDATA), 제어신호(CNT), 시리얼 클럭(SCLK), 전송 클럭(DCLK) 및 직렬 데이터(SDATA)를 나타내는 다이어그램이다.
도 5는 본 발명의 다른 실시예에 따른 데이터 전송 장치를 나타내는 블록도이다.
도 6은 본 발명의 다른 실시예에 따른 데이터 송수신 시스템을 나타내는 블록도이다.

Claims (20)

  1. 시리얼 클럭을 생성하는 단계;
    상기 시리얼 클럭에 동기되어 N (N은 2이상의 자연수)비트의 병렬 데이터를 N 비트의 직렬 데이터로 변환하는 단계;
    상기 시리얼 클럭을 지연시켜 상기 N 비트의 직렬 데이터와 동일한 지연 시간을 갖는 전송 클럭을 생성하는 단계; 및
    상기 N 비트의 직렬 데이터와 상기 전송 클럭을 동시에 전송하는 단계를 포함하고,
    상기 직렬 데이터는 직렬화기에 의하여 상기 병렬 데이터로부터 변환되고, 상기 시리얼 클럭은 상기 직렬화기와 동일한 구조를 갖는 전송 클럭 생성기에 의하여 생성되는 데이터 전송 방법.
  2. 제1항에 있어서,
    상기 N 비트의 직렬 데이터를 작은 스윙폭을 갖는 제1 및 제2 데이터 신호로 변환하는 단계;
    상기 전송 클럭을 작은 스윙폭을 갖는 제1 및 제2 클럭 신호로 변환하는 단계; 및
    상기 제1 및 제2 데이터 신호와 상기 제1 및 제2 클럭 신호를 동시에 전송하는 단계를 더 포함하는 것을 특징으로 하는 데이터 전송 방법.
  3. 삭제
  4. 삭제
  5. 삭제
  6. 시리얼 클럭을 생성하는 시리얼 클럭 생성기;
    상기 시리얼 클럭에 동기되어 입력된 N(N은 2이상의 자연수) 비트의 병렬 데이터를 N 비트의 직렬 데이터로 변환하는 직렬화기; 및
    상기 시리얼 클럭을 제공받아 상기 N 비트의 직렬 데이터와 동일한 지연 시간을 갖는 전송 클럭을 생성하는 전송 클럭 생성기를 포함하고,
    상기 N비트의 직렬 데이터와 상기 전송 클럭을 동시에 전송하고,
    상기 전송 클럭 생성기는 상기 직렬화기와 동일한 구조를 갖는 데이터 전송 장치.
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 제6항에 있어서, 상기 직렬화기는,
    제1 입력 단자로 상기 N 비트 병렬 데이터를 한 비트씩 입력받고, 제2 입력 단자로 상기 N 비트 병렬 데이터의 이전 비트의 쉬프트 값을 입력받아 출력하는 N 개의 멀티플렉서들; 및
    상기 N 개의 멀티플렉서들과 체인식으로 연결되고, 상기 시리얼 클럭에 동기되어 상기 N 개의 멀티플렉서의 출력값을 입력받아 지연시켜 출력하는 N 개의 플립플롭들을 포함하는 것을 특징으로 하는 데이터 전송 장치.
  12. 제11항에 있어서, 상기 직렬화기는 상기 N 개의 멀티플렉서들에 입력되는 제어 신호가 활성화 되면 상기 N 개의 멀티플렉서들에 입력되는 상기 N 비트의 병렬 데이터가 한 비트씩 쉬프트되어 상기 N 비트의 직렬 데이터로 출력되는 것을 특징으로 하는 데이터 전송 장치.
  13. 제6항에 있어서, 상기 전송 클럭 생성기는,
    제1 입력 단자로 서로 다른 논리값을 각각 교번적으로 입력받고 제2 입력 단자로 상기 교번적으로 입력되는 논리값의 이전 논리값을 입력받는 N 개의 멀티플렉서들; 및
    상기 N 개의 멀티플렉서들과 체인식으로 연결되고, 상기 시리얼 클럭에 동기되어 상기 N 개의 멀티플렉서들의 출력값을 입력받아 지연시켜 출력하는 N 개의 플립플롭들을 포함하는 것을 특징으로 하는 데이터 전송 장치.
  14. 제13항에 있어서, 상기 전송 클럭 생성기는 상기 N 개의 멀티플렉서들에 입력되는 제어 신호가 활성화 되면 상기 N 개의 멀티플렉서들에 교번적으로 입력되는 상기 서로 다른 논리값들이 쉬프트되어 상기 전송 클럭으로 출력되는 것을 특징으로 하는 데이터 전송 장치.
  15. 삭제
  16. 시리얼 클럭 생성기에서 생성된 시리얼 클럭에 동기되어 N 비트의 병렬 데이터를 N 비트의 직렬 데이터로 변환화는 직렬화기;
    상기 시리얼 클럭을 입력받아 상기 N 비트 직렬 데이터와 동일한 지연시간을 갖는 전송 클럭을 생성하는 전송 클럭 생성기; 및
    동시에 전송된 상기 N 비트의 직렬 데이터와 상기 전송 클럭을 입력받아 상기 전송 클럭에 동기되어 상기 N 비트의 직렬 데이터를 상기 N 비트의 병렬 데이터로 변환하는 병렬화기를 포함하고,
    상기 전송 클럭 생성기는 상기 직렬화기와 동일한 구조를 갖는 데이터 송수신 시스템.
  17. 제16항에 있어서, 상기 병렬화기는,
    상기 직렬화기와 반대의 회로 구조를 포함하여 상기 N 비트 병렬 데이터를 상기 N 비트의 병렬 데이터로 변환하는 것을 특징으로 하는 데이터 송수신 시스템.
  18. 삭제
  19. 삭제
  20. 삭제
KR1020070112941A 2007-11-07 2007-11-07 데이터 전송 방법, 데이터 전송 장치 및 데이터 송수신시스템 KR101298567B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070112941A KR101298567B1 (ko) 2007-11-07 2007-11-07 데이터 전송 방법, 데이터 전송 장치 및 데이터 송수신시스템
US12/289,889 US7796063B2 (en) 2007-11-07 2008-11-06 Data transmission circuits and data transceiver systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070112941A KR101298567B1 (ko) 2007-11-07 2007-11-07 데이터 전송 방법, 데이터 전송 장치 및 데이터 송수신시스템

Publications (2)

Publication Number Publication Date
KR20090046996A KR20090046996A (ko) 2009-05-12
KR101298567B1 true KR101298567B1 (ko) 2013-08-22

Family

ID=40797564

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070112941A KR101298567B1 (ko) 2007-11-07 2007-11-07 데이터 전송 방법, 데이터 전송 장치 및 데이터 송수신시스템

Country Status (2)

Country Link
US (1) US7796063B2 (ko)
KR (1) KR101298567B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5272926B2 (ja) * 2009-06-29 2013-08-28 富士通株式会社 データ送信回路
US7990296B1 (en) * 2010-03-10 2011-08-02 Smsc Holdings S.A.R.L. High speed low power cell providing serial differential signals
US20120191388A1 (en) * 2011-01-25 2012-07-26 Analog Devices, Inc. Diagnostic method to check for stuck bits in storage registers of safety-critical systems
US9261568B2 (en) 2011-02-07 2016-02-16 Analog Devices, Inc. Diagnostic method to monitor battery cells of safety-critical systems
US10141949B1 (en) * 2017-11-07 2018-11-27 Cavium, Llc Modular serializer and deserializer
US11695400B1 (en) * 2022-08-12 2023-07-04 Qualcomm Incorporated Low-power inter-die communication using delay lines

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4450572A (en) 1982-05-07 1984-05-22 Digital Equipment Corporation Interface for serial data communications link
KR200155943Y1 (ko) 1995-05-18 1999-09-01 서평원 고위데이터 링크제어에서의 제로삽입 및 제거장치
KR20000073905A (ko) * 1999-05-15 2000-12-05 윤종용 에이티엠시스템에서 에이티엠스위치 보드와 에이티엠 입출력 카드간을 접속하는 장치 및 그 장치에서의 데이터 송수신 방법
KR20060095159A (ko) * 2005-02-28 2006-08-31 삼성전자주식회사 독립적인 클럭 소스를 기준으로 직렬 클럭을 생성하는 직렬변환기와 데이터의 직렬 전송 방법

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6628679B1 (en) * 1999-12-29 2003-09-30 Intel Corporation SERDES (serializer/deserializer) time domain multiplexing/demultiplexing technique
US7450616B2 (en) 2003-01-10 2008-11-11 Texas Instruments Incorporated Area efficient serializer implementation for small functional-to-serial clock ratios
US7015838B1 (en) * 2003-09-11 2006-03-21 Xilinx, Inc. Programmable serializing data path
US7146284B2 (en) * 2003-11-07 2006-12-05 Texas Instruments Incorporated Method of testing phase lock loop status during a Serializer/Deserializer internal loopback built-in self-test
US7064690B2 (en) * 2004-04-15 2006-06-20 Fairchild Semiconductor Corporation Sending and/or receiving serial data with bit timing and parallel data conversion
US20070121711A1 (en) 2005-11-30 2007-05-31 Offord Glen E PLL with programmable jitter for loopback serdes testing and the like

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4450572A (en) 1982-05-07 1984-05-22 Digital Equipment Corporation Interface for serial data communications link
US4450572B1 (ko) 1982-05-07 1994-01-25 Digital Equipment Corporation
KR200155943Y1 (ko) 1995-05-18 1999-09-01 서평원 고위데이터 링크제어에서의 제로삽입 및 제거장치
KR20000073905A (ko) * 1999-05-15 2000-12-05 윤종용 에이티엠시스템에서 에이티엠스위치 보드와 에이티엠 입출력 카드간을 접속하는 장치 및 그 장치에서의 데이터 송수신 방법
KR20060095159A (ko) * 2005-02-28 2006-08-31 삼성전자주식회사 독립적인 클럭 소스를 기준으로 직렬 클럭을 생성하는 직렬변환기와 데이터의 직렬 전송 방법

Also Published As

Publication number Publication date
US20090167573A1 (en) 2009-07-02
KR20090046996A (ko) 2009-05-12
US7796063B2 (en) 2010-09-14

Similar Documents

Publication Publication Date Title
EP1670199B1 (en) Design of channel alignment, error handling, and clock routing using hard-wired blocks for data transmission within programmable logic integrated circuits
KR101298567B1 (ko) 데이터 전송 방법, 데이터 전송 장치 및 데이터 송수신시스템
US20090182912A1 (en) High Speed Serializing-Deserializing System and Method
US6593863B2 (en) Serializer
KR100868299B1 (ko) 클록 정보와 함께 데이터를 전송하는 방법 및 장치
CN102340316A (zh) 基于fpga的微型空间过采样直流平衡串行解串器
EP1958404A2 (en) Alignment and deskew for multiple lanes of serial interconnect
US8837467B2 (en) Multi-rate serializer/deserializer circuit with broad operating frequency range
US20090190690A1 (en) Communication system
CN108736897B (zh) 应用于高速接口物理层芯片的并串转换电路及装置
US20230195663A1 (en) Integrated circuit having lanes interchangeable between clock and data lanes in clock forward interface receiver
US11169952B2 (en) Data transmission code and interface
JP2013055502A (ja) シリアル通信回路
US8923440B1 (en) Circuitry for padded communication protocols
KR100833604B1 (ko) 패리티 에러 검출 회로
JP2005078523A (ja) シリアル転送装置
KR101272886B1 (ko) 클록 정보와 함께 데이터를 전송하는 방법 및 장치
KR100684328B1 (ko) 저전압 차동 신호를 이용한 링크 장치
CN111124982B (zh) 一种异步时钟数据同步电路
KR101346293B1 (ko) 디시리얼라이저 및 데이터 복원 방법
KR100300865B1 (ko) 고속 동기식 직렬 통신 시스템
Jose et al. 24‐3: 10Gbps Low‐Power Transceiver PHY for Next Generation Display Interface
KR101563772B1 (ko) 고속 인터페이스용 서데스
JP6221603B2 (ja) シリアル−パラレル変換回路、パラレル−シリアル変換回路、シリアライザ/デシリアライザおよび半導体装置
TWI544753B (zh) 非對稱雙向傳輸裝置及其切換系統

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180731

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190731

Year of fee payment: 7