KR102063790B1 - 데이터 전송을 위한 도선의 수를 감소시키기 위한 데이터 전송 장치 및 그 방법 - Google Patents

데이터 전송을 위한 도선의 수를 감소시키기 위한 데이터 전송 장치 및 그 방법 Download PDF

Info

Publication number
KR102063790B1
KR102063790B1 KR1020140127830A KR20140127830A KR102063790B1 KR 102063790 B1 KR102063790 B1 KR 102063790B1 KR 1020140127830 A KR1020140127830 A KR 1020140127830A KR 20140127830 A KR20140127830 A KR 20140127830A KR 102063790 B1 KR102063790 B1 KR 102063790B1
Authority
KR
South Korea
Prior art keywords
logic
multivalued
input
signal
logic signal
Prior art date
Application number
KR1020140127830A
Other languages
English (en)
Other versions
KR20160035898A (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 KR1020140127830A priority Critical patent/KR102063790B1/ko
Priority to US14/748,844 priority patent/US9521016B2/en
Publication of KR20160035898A publication Critical patent/KR20160035898A/ko
Application granted granted Critical
Publication of KR102063790B1 publication Critical patent/KR102063790B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • 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

Abstract

데이터 전송 장치가 개시된다. 이 데이터 전송 장치는 이진 논리 기반의 이진 논리 신호를 출력하는 센더 및 입력 도선을 통해 입력 받은 상기 이진 논리 신호를 다치 논리 기반의 다치 논리 신호로 인코딩하고, 상기 인코딩된 다치 논리 신호를 출력 도선을 통해 디코더로 전송하는 인코더를 포함한다. 여기서, 상기 인코더는 상기 입력 도선의 개수 및 상기 입력 도선의 개수보다 작은 상기 출력 도선의 개수를 포함하는 입력 변수와 상기 입력 변수에 대응하는 상기 다치 논리 신호를 저장한 맵핑 테이블을 포함하고, 상기 맵핑 테이블을 참조하여 상기 이진 논리 신호를 상기 다치 논리 신호로 인코딩함을 특징으로 한다.

Description

데이터 전송을 위한 도선의 수를 감소시키기 위한 데이터 전송 장치 및 그 방법{DATA TRANSMISSION DEVICE AND METHOD FOR REDUCING THE NUMBER OF WIRES}
본 발명은 데이터 전송을 위한 도선 수를 감소시키기 위한 데이터 전송 장치 및 그 방법에 관한 것으로서, 더욱 상세하게는 GALS(Globally Asynchronous Locally Synchronous) 시스템과 같은 대규모 SoC(System on Chip) 설계에서, 많은 도선 수로 인해 발생할 수 있는 전력 소모와 설계 복잡성을 줄일 수 있는 데이터 전송 장치 및 그 방법에 관한 것이다.
현재, 집적 회로 시스템은 반도체 공정 기술과 집적 회로 설계 기술의 발전으로 인하여 하나의 칩 단위로 구현되는 시스템-온-칩(System-on-Chip: SoC) 방식으로 주로 설계되고 있다.
최근에는 반도체 공정 기술과 집적 회로 설계 기술이 더욱 발달하여 하나의 칩에 집적할 수 있는 소자의 수가 점차 증가하는 추세이다. 이로 인해 하나의 칩에 설계되는 전송 선로의 배선 구조가 더욱 복잡해지고 있다. 따라서, 집적회로 시스템이 SoC 설계 방식을 구현되는 경우, 도선(wire)의 수, 도선의 길이 및 각 도선들 간의 간섭에 의한 신호 지연 등은 칩 전체의 올바른 동작을 위하여 매우 중요하게 고려되어야 하는 설계변수들이다.
한편, SoC 방식을 구현되는 집적 회로 시스템에 전역 클록(global clock)을 이용한 동기식 설계 방식이 적용되는 경우, 클록 속도 증가에 따른 클록 스큐(skew)와 지터(jitter) 및 전송 선로 수와 길이 증가에 따른 데이터의 전송 지연 등이 발생한다. 이러한 문제점들은 SoC 방식으로 구현되는 집적 회로 시스템에 비동기식 설계 방식을 적용함으로써 해결될 수 있다.
비동기식 설계 방식은 전역 클록을 사용하지 않고, 지연 시간(delay time)에 무관한 핸드셰이크 프로토콜(handshake protocol)을 지원하는 지연 무관 (DI: Delay Insensitive) 데이터 전송 방식에 의해 데이터 전송이 수행되는 방식이다.
이러한 비동기식 설계 방식을 동기식 설계 방식에 적용하면, 동기식 설계 방식에 따른 문제점을 해결할 수 있지만, 이러한 비동기식 설계방식을 구현하기 위해서는 전체 회로의 설계가 복잡해질 뿐만 아니라 비동기식 설계를 위한 CAD툴이 부족하다.
이에, 동기식 설계 방식과 비동기식 설계방식의 문제점을 동시에 해결하기 위해, GALS(globally asynchronous locally synchronous) 시스템이 제안된 바 있다.
GALS 시스템은 기본적으로 전역 클록을 사용하지 않고, 서로 독립적인 클록에 의해 동작하는 다수의 LS(locally synchronous)모듈로 구성되는데, 각 LS 모듈 간의 데이터 전송은 비동기 핸드셰이크 프로토콜에 의해 수행된다.
이러한 GALS 시스템은 전역 클록을 사용하지 않으므로, 클록 스큐, 지터 등의 문제가 해결되며, DI 데이터 전송 방식에 의해 서로 다른 타이밍으로 동작하는 LS 모듈 간의 데이터 전송이 이루어짐으로써, 안정된 데이터 전송이 확보된다.
DI 데이터 전송방식에서는, dual-rail, 1-of-4와 같은 인코딩 방식에 의해 데이터가 표현되며, 기존의 동기식 설계방식과 유사한 4-위상 핸드 세이킹 프로토콜이 사용된다.
4-위상 핸드세이킹 프로토콜에서는, 데이터가 기본적으로 제로 복귀(Return to Zero: RZ) 타입의 이진값으로 표현된다. 즉, 4-위상 핸드세이킹 프로토콜에는, 연속된 데이터를 구분하기 위한 스페이스(space) 상태가 존재한다. 상기 스페이스 상태는 데이터와 동일한 레이턴시(latency)를 가지므로, 데이터의 전송이 빈번한 GALS 시스템에서는 4-위상 핸드세이킹 프로토콜 방식보다는 스페이스 상태가 없는 2-위상 핸드세이킹 프로토콜 방식이 더 효율적이다.
Level-Encoded 2-phase Dual-Rail(LEDR)로 알려진 듀얼 레일(dual-rail) 기반의 2-위상 핸드셰이킹 프로토콜은 두 개의 도선에서 '0'과 '1'의 데이터 전송을 각각 도선의 상태 변환으로 인코딩하는 전통적인 dual-rail 기반 2-위상 프로토콜과는 달리, 한 도선은 데이터, 다른 도선은 위상 변화로 인코딩한다. 즉, 한 도선에서는 '0'과 '1'의 데이터를 상태 변환이 아닌 레벨로 인코딩하고, 데이터와 데이터 사이의 구분은 다른 도선의 변화로 구분한다.
결과적으로 두 도선의 XOR 값은 데이터 전송마다 변하게 되며 이를 감지하여 데이터의 유효성을 판별한다. 데이터의 디코딩이 필요 없으므로 전통적인 dual-rail 기반 2-위상 프로토콜에 비해서 성능이 높고 설계 복잡도를 줄일 수 있다. 그러나 N 비트 데이터 전송에 2N+1개의 도선이 필요하므로, 늘어난 도선의 수만큼 성능, 전력 소모, 설계 복잡성 측면에서 불리하다.
현재, 도선의 수를 줄이기 위한 다양한 기술들이 개발되고 있으며, 그 대표적으로 아래와 같은 선행 문헌들이 공개된바 있다.
(1) "새로운 배선시스템용 신호전송 및 수신장치" (대한민국 출원번호 10-1997-018460)
상기 선행문헌은, 집적 회로 내의 다수의 기능 블록 간에서 하나의 도선을 통해 여러 개의 다른 종류의 신호를 동시에 전송함으로써, 도선이 점유하는 면적을 감소시킬 수 있는 방안을 제안하고 있다.
이 선행 문헌에서는 이론적으로 N 비트의 데이터 전송 시, 송신 회로에서 도선 1개에 2N 개의 삼각 펄스 형태의 전압치를 인코딩한 데이터를 전송하고, 수신회로에서 상기 데이터를 수신하여 이를 복원함으로써, 배선에 필요한 도선의 수를 감소시켜 집적회로의 면적을 줄일 수 있다.
그러나, 도선에 인코딩할 수 있는 전압치의 수가 늘어날수록 복호화 해야 하는 논리의 수가 증가하여 수신 회로의 복잡도가 크게 증가할 수 있으므로 줄일 수 있는 도선의 수가 한정된다.
또한 집적 회로 내에 공급되는 공급전압이 낮아지고 있는 추세에서, 상기 선행 문헌에서 사용하는 전압을 이용하여 다수의 상태를 표현하는 전압 모드 방식의 다치 논리(Multi-valued logic) 회로 기술을 적용하게 되면, 수신 회로에서 전압의 노이즈 마진 특성이 악화될 수 있다.
또한, 상기 선행 문헌은 지연 무관(Delay Insensitive: DI) 데이터 전송에 필요한 핸드세이크 프로토콜을 지원하지 않기 때문에 GALS 시스템에 적용할 수 없다.
(2) " 전류모드 다치 논리를 이용한 지연무관 데이터 전송회로(대한민국 출원번호 10-2004-0011299)"와 "낮은 정전기 전력을 소모하는 지연 무관 데이터 전송 장치(대한민국 출원번호 10-2006-0119056)"
상기 선행문헌(대한민국 출원번호 10-2004-0011299)은 앞서 제시된 선행문헌(대한민국 특허출원번호 1997-018460))과는 달리 핸드세이크 프로토콜을 지원하고, 도선의 수를 줄이기 위해 ternary 인코딩 방식을 적용한 프로토콜을 제안하고 있다.
상기 선행문헌(대한민국 출원번호 10-2004-0011299)은 전류 모드 다치 논리 회로를 사용하여 공급 전압의 노이즈 마진에 영향을 받지 않으면서, 하나의 도선에 3개의 논리를 표현할 수 있으므로 N 비트 데이터 전송에 N+1개의 도선으로 회로 설계가 가능하다.
또한, 상기 선행문헌(대한민국 출원번호 10-2006-0119056)는 기존의 전류 모드 DI 전송 방식의 높은 static 전류 소모 특성을 보완하여 대기 상태에서의 전력 소모를 획기적으로 줄였다.
그러나, 위의 2가지 전류 모드 회로를 이용한 데이터 전송 방식(대한민국 출원번호 10-2004-0011299 및 대한민국 출원번호 10-2006-0119056)은 N개의 입력에 대해 N+1개의 도선 수로 인코딩을 수행하기 때문에, 도선의 수를 감소시키고자 하는 측면에서 만족할만한 수준에 이르지는 못한다.
(3) "데이터 송신 장치, 데이터 수신 장치, 데이터 전송 시스템 및 데이터 전송 방법(대한민국 출원번호 10-2008-0119279)"
상기 선행 문헌은 전류 모드 DI 전송 방식의 2-phase signaling 기법을 제안하고 있는데, 상기 선행문헌에서는, 인코더가 현재 입력되는 데이터와 그 다음 데이터를 비교하기 위해, 입력되는 요구 신호와 데이터 신호간의 동기화를 가정하고 데이터 신호에 지연 소자를 삽입하여 그 다음 요구 신호에서 지연된 현재 데이터를 추출한다.
그러나, 비동기식 신호 환경에서 요구 신호보다 데이터 신호가 먼저 안정화되어야 한다는 동기화 가정만을 가지고 인코더를 설계하는 경우, 설계자가 지연 소자의 지연 시간을 정하기 위해 입력 요구 신호와 데이터 신호의 가장 큰 시간 차와 요구 신호의 가장 짧은 주기 시간을 알아야 한다.
이는 지연 소자의 지연 시간을 결정하는 것이 매우 어렵거나, 어떤 경우(입력 요구 신호와 데이터 신호의 가장 큰 시간 차 > 요구 신호의 가장 짧은 주기 시간)에는 만족하는 지연 소자의 지연 시간을 찾지 못할 수도 있다. 이것은 인코더의 functionality를 보장할 수 없음을 의미한다.
또한, 상기 선행문헌(대한민국 출원번호 10-2008-0119279)에서, 디코더는 데이터 신호를 복원하기 위해 D-플립플롭을 사용하는데, 이 소자의 데이터 캡쳐 시점, 즉, 이 소자의 클록 신호를 만들어 주는 부가 로직이 필요하다.
또한, 상기 선행문헌(대한민국 출원번호 10-2008-0119279)에서는, 전압 모드 기반의 이진 데이터의 전송에서 사용하는 버퍼 삽입과 같은 긴 도선을 통해 데이터 전송 시의 latency에 대한 감소 방법을 제시하고 있지 않다. 즉, 구현 시 복잡하다.
또한, 상기 선행문헌(대한민국 출원번호 10-2008-0119279)에서는, 앞서 기술한 선행문헌들과 동일하게 N개의 입력에 대해 N+1개의 도선으로 데이터를 인코딩하기 때문에, 여전히 도선의 수를 감소시키고자 하는 측면에서 만족할만한 수준에 이르지는 못한다.
따라서, 본 발명의 목적은 GALS 시스템과 같은 SoC 설계에서, 도선 수를 주일 수 있는 데이터 전송을 위한 도선의 수를 감소시키기 위한 장치 및 그 방법을 제공하는 데 있다.
상술한 목적을 달성하기 위한 본 발명의 일면에 따른 데이터 전송 장치는, 핸드셰이크 프로토콜(handshake protocol)을 지원하는 지연 무관(Delay Insensitive) 데이터 전송 방식으로 데이터를 전송하는 데이터 전송 장치로서, 이진 논리 기반의 이진 논리 신호를 출력하는 센더 및 입력 도선을 통해 입력 받은 상기 이진 논리 신호를 다치 논리 기반의 다치 논리 신호로 인코딩하고, 상기 인코딩된 다치 논리 신호를 출력 도선을 통해 디코더로 전송하는 인코더를 포함한다. 여기서, 상기 인코더는 상기 입력 도선의 개수 및 상기 입력 도선의 개수보다 작은 상기 출력 도선의 개수를 포함하는 입력 변수와 상기 입력 변수에 대응하는 상기 다치 논리 신호를 저장한 맵핑 테이블을 포함하고, 상기 맵핑 테이블을 참조하여 상기 이진 논리 신호를 상기 다치 논리 신호로 인코딩함을 특징으로 한다.
본 발명의 다른 일면에 따른 데이터 전송 방법은, 입력 도선의 개수 및 상기 입력 도선의 개수보다 작은 출력 도선의 개수를 포함하는 입력 변수와 상기 입력 변수에 대응하는 다치 논리 신호를 저장한 맵핑 테이블을 구성하는 단계와, 상기 맵핑 테이블을 참조하여 입력 도선을 통해 입력받은 이진 논리 신호를 다치 논리 기반의 다치 논리 신호로 인코딩하는 단계 및 상기 인코딩된 다치 논리 신호를 상기 출력 도선을 통해 디코더로 전송하는 단계를 포함한다.
본 발명에 따르면, 입력 도선의 개수 및 상기 입력 도선의 개수보다 작은 상기 출력 도선의 개수를 포함하는 입력 변수와 상기 입력 변수에 대응하는 상기 다치 논리 신호를 저장한 맵핑 테이블을 참조하여 이진 논리 신호를 다치 논리 신호로 인코딩함으로써, 상기 출력 도선의 개수를 줄일 수 있다.
도 1은 본 발명의 일 실시 예에 따른 N-비트 데이터 전송 환경을 보여주는 전체 시스템 블록도이다.
도 2는 도 1에 도시된 인코더의 내부 구성을 개략적으로 보여주는 블록도이다.
도 5는 본 발명의 다른 실시 예에 따른 전류 모드 기반의 다치 논리에 따른 데이터 전송 환경에서 사용되는 인코더와 디코더의 각 구성을 보여주는 블록도이다.
도 6은 도 5에 도시된 데이터 전송 환경에서 사용되는 매핑 테이블이다.
도 7은 SOP 형태에 따른 2개의 출력 변수의 불 함수를 보여주는 테이블이다.
도 8은 본 발명의 일 실시 예에 따른 라인 디코딩 회로의 카노맵을 보여주는 테이블이고,
도 9는 도 8에 도시된 카노맵에 따라 도출된 불 함수를 보여주는 테이블이다.
도 10은 본 발명의 일 실시 예에 따른 데이터 전송 방법을 보여주는 순서도이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시 예에 대해 상세히 기술한다.
도 1은 본 발명의 일 실시 예에 따른 데이터의 전송 환경을 보여주는 데이터 전송 장치의 블록도이다.
도 1을 참조하면, 본 발명의 일 실시 예에 따른 데이터 전송 장치(100)는 4-phase signaling 방식의 핸드세이크 신호를 통해 외부와의 데이터를 주고 받는 센더(110, Sender)와 리시버(170, Receiver)를 포함한다. 또한, 본 발명의 일 실시 예에 따른 데이터 전송 장치(100)는 상기 센더(110)와 상기 리시버(170) 간의 인터페이스를 위한 인코더(130)와 디코더(150)를 각각 포함한다. 상기 인코더(130)와 상기 디코더(150)는 도선(Wire)의 수(M)를 줄이기 위해 다치 논리(Multi-valued logic)에 따른 도선 연결(140, Wire Interconnect)로 연결되고, 이에, 인코더(130)와 디코더(150) 사이에는, 도 1에 도시된 바와 같이, 다치 논리 도메인(Multi-valued logic Domain, MD)이 정의된다.
상세히 설명하면, 센더(110)는 상기 인코더(130)와 N개의 도선(wire)으로 연결되어, 2진 논리(Binary-valued logic) 기반의 요구 신호(req_in)와 N-비트의 데이터 신호(data_in)를 상기 인코더(130)(encoder)로 전송한다. 여기서, 상기 요구 신호(req_in)는 상기 데이터 신호(data_in)를 표현하는 이진값 '1' 또는 '0'을 추출하기 위한 신호로서, 상기 데이터 신호(data_in)를 샘플링한다.
상기 인코더(130)는 1개의 도선을 통해 전송 받은 요구 신호(req_in)와 N개의 도선을 통해 전송받은 N-비트의 데이터 신호(data_in)를 다치 논리(Multi-valued logic)에 따라 다치 논리 신호(W_in)(Multi-valued logic data)로 인코딩한다. 여기서, 다치 논리 신호는 서로 다른 적어도 3개의 전압 레벨(예컨대, 0, V, 2V) 또는 서로 다른 적어도 3개의 전류 레벨(예컨대, 0, I, 2I)로 표현될 수 있다.
특별히 한정하는 것은 아니며, 본 실시 예에서는 다치 논리 신호가 서로 다른 다수의 전류 레벨로 표현되는 것으로 가정하며, 이를 전류 모드의 다치 논리로 일컫는다.
서로 다른 적어도 3개의 전류 레벨로 인코딩된 다치 논리 신호(W_in)는 N+1개 보다 작은 M개의 도선(140)을 통해 다치 논리 데이터(W_out)로서 상기 디코더(150)로 전달된다.
상기 디코더(150)는 상기 전달받은 서로 다른 전류 레벨로 인코딩된 다치 논리 신호(W_out)를 이진 논리값으로 표현되는 요구 신호(req_out)와 N-비트의 데이터 신호(data_ out)로 디코딩하고, 디코딩된 요구 신호(req_out)를 1개의 도선을 통해 상기 리시버(170)로 전달하고, 디코딩된 N-비트의 데이터 신호(data_ out)를 N개의 도선을 통해 상기 리시버(170)로 전달한다.
상기 리시버(170)는 이진 논리값으로 디코딩된 요구 신호(req_out)와 N-비트의 데이터 신호(data_ out)에 대한 수신이 완료되면, 수신 완료를 알리는 이진 논리값의 응답 신호(ack_out)를 생성하고, 생성된 응답 신호(ack_out)를 응답 신호(ack_in)로서 도선(140)을 통해 상기 센더(110)로 전송한다. 이로서, 하나의 데이터 전송에 대한 한 사이클이 종료된다.
한편, 본 발명의 일 실시 예에 따른 데이터 전송 환경에서는 센더와 인코더 사이의 데이터 전송, 디코더와 리시버 간의 데이터 전송 및 센더와 리시버 간의 데이터 전송은 인코더와 디코더 간에서 수행되는 다치 논리 기반의 데이터 전송과는 달리 이진 논리 기반에서 수행된다. 따라서, 본 발명의 일 실시 예에 따른 데이터 전송 환경에서는 도 1에 도시된 바와 같이 앞서 기술한 다치 논리 도메인(MD)과 구분되는 이진 논리 도메인(Binary-valued logic Domain: BD)이 생성된다.
이하, 본 발명의 일 실시 예에 따라 인코더(130)와 디코더(150)를 연결하는 도선의 수(M)를 줄이기 위한 인코딩 방법에 대해 도 2를 참조하여 상세히 기술한다.
도 2는 도 1에 도시된 인코더의 구성을 개략적으로 보여주는 블록도이다.
도 2를 참조하면, 본 발명의 일 실시 예에 따른 데이터 전송 장치(100)의 인코더(130)는 다치 논리(Mutli-valued logic)를 기반으로 데이터를 인코딩하기 위해, 다치 논리 소스 생성기(132), 먹스(134, MUX) 및 매핑 테이블(136)를 포함한다.
다치 논리 소스 생성기(132)는 서로 다른 전류 레벨을 갖는 X개의 다치 논리 소스(V1 ~ VX)를 생성한다.
먹스(134)는 상기 생성된 X개의 다치 논리 소스(V1 ~ VX)를 입력받고, 매핑 테이블(136)로부터의 제어 신호(SE)에 따라 상기 X개의 다치 논리 소스(V1 ~ VX) 중 M개의 다치 논리 소스를 선택하고, 선택된 M개의 다치 논리 소스를 M개의 도선에 각각 할당한다.
M개의 각 도선에 어떠한 다치 논리 소스를 할당할지는 매핑 테이블(136)에서 전달되는 제어 신호(SE)에 의해 결정될 수 있다.
매핑 테이블(136)에는 상기 먹스(134)의 출력단에 연결되는 도선의 수(M: W1~WM)와 이진값 기반의 요구 신호(req_in)와 N 비트의 데이터 신호(data_in)의 조합에 매핑되는 다치 논리 조합이 저장된다.
도 3에서는 상기 먹스(134)의 출력단에 연결되는 도선의 수(M: W1, W2, W3, ... , WM)에 따라 가능한 입력 조합(req_in, data_in)에 대한 다치 논리 조합을 저장한 매핑 테이블이 도시된다.
매핑 테이블(136)은 상기 먹스(134)의 출력단에 연결되는 현재의 도선의 수(M)와 센더(110)로부터 전달되는 현재의 요구 신호(req_in)와 N-비트의 데이터 신호(data_in)를 변수로서 입력받아서, 이들 변수에 매핑되는 다치 논리 조합을 추출하고, 추출된 다치 논리 조합을 포함하는 상기 제어 신호(SE)로서 출력한다.
먹스(134)는 상기 제어 신호(SE)에 포함된 다치 논리 조합에 응답하여 M개의 각 도선에 어떠한 다치 논리 값을 할당할지를 결정하게 된다.
결국, 상기와 같은 매핑 테이블(136)이 사전에 구축됨으로써, 인코더(또는 먹스)의 입력단에 연결되는 도선 수(N+1)와 출력단에 연결되는 도선 수(M: W1, W2, W3, ... , WM)가 결정되면, 상기 매핑 테이블(136)을 참조하여 결정된 각 도선의 수에 맵핑되는 다치 논리 조합이 결정될 수 있다.
그러므로, 상기 매핑 테이블(136)에서는 인코더(또는 먹스)의 입력단에 연결되는 도선 수(N+1)와 인코더(또는 먹스)의 출력단에 연결되는 도선 수(M)가 변수가 된다.
도선의 수를 줄이고자 하는 본 발명의 목적을 위해서는, 변수 결정에 있어서, 인코더(또는 먹스)의 입력단에 연결되는 도선 수(N+1)가 출력단에 연결되는 도선 수(M)보다 작아야된다는 가정이 전제되어야 한다. 아래의 인코딩 방법에 대한 설명에서 각 도선 수를 결정하는 방법이 기술된다.
이하, 도 2에 도시된 인코더를 이용한 인코딩 방법에 대해 상세 기술한다.
매핑 테이블(136)에 입력되는 4-phase signaling 기반의 입력 신호는 요구신호(req_in 이하, req)와 N-비트의 데이터 신호(data_in, 이하, D1~DN)를 포함한다.
다치 논리 소스 생성기(132)로부터 X개의 다치 논리 소스가 생성되고, N-비트의 데이터 신호(D1~DN)가 상기 X개의 다치 논리 소스(V1~Vx) 중 상기 매핑 테이블(136)에 의해 선택된 M개의 다치 논리 소스로 인코딩된다.
따라서, 출력 도선(W1~WM) 각각은 상기 X개의 다치 논리 소스(V1~Vx) 중에서 선택된 하나 다치 논리 소스를 할당받는다.
각 출력 도선(W1~WM)에 어떤 다치 논리 소스가 할당될지는 상기 매핑 테이블(136)에 입력되는 입력 신호(req, D1~DN)로 결정한다.
이진값 논리에서 입력 신호(req, D1~DN)에 의해 표현이 가능한 데이터의 수는 요구 신호(req)가 1인 경우, N-비트의 데이터 신호(D1 ~ DN)에 의해 표현되는 2N개와 2N개에 요구 신호(req)가 0인 경우를 표현하는 1개를 더해 2N+1개가 된다. 여기서, 요구 신호가 1은 유효 데이터의 전송 시작을 의미하고, 요구 신호 0은 비 유효 데이터의 전송 시작을 의미한다.
다치 논리에 의해 인코딩된 데이터에서 표현 가능한 데이터의 수는 인코더(130)의 출력단에 연결되는 M개의 도선 각각에 다치 논리 신호를 독립적으로 할당할 수 있기 때문에, XM개이다.
기본적으로 인코딩 하기 전의 데이터에서 표현할 수 있는 데이터 수는 인코딩한 이후의 인코딩된 데이터에서 표현할 수 있는 데이터 수보다 작거나 같아야 한다. 따라서, 인코더(130)의 출력단에서 커버(cover)할 수 있는 표현 가능한 데이터 수는 2N+1 ≤ XM 와 같은 조건을 만족해야 한다.
또한, 전송에 필요한 도선의 수를 줄이기 위해서, 인코더(130)의 출력단에 연결되는 도선의 수(M)(이하, 출력 도선의 수)가 인코더(130)의 입력단에 연결되는 도선 수(N+1)보다 작아야 한다.
일반적으로, 인코더(160)의 입력 도선의 수는 정해져 있기 때문에, 인코더(130)의 최소 출력 도선의 수와 다치 논리 소스의 수를 결정해야 한다.
우선, 입력 도선의 수(N+1)와 다치 논리 소스의 수(X)가 정해졌을 때 최소의 출력 도선의 수(M)는 아래의 [수학식 1]로 구할 수 있다.
Figure 112014090946311-pat00001
여기서,
Figure 112014090946311-pat00002
은 M보다 큰 정수 중 가장 작은 정수를 의미한다. 예를들어, N이 4이고 X가 3인 경우, 상기 수학식 [1]에 따르면, log3 24+1은 대략 2.5789이다. 따라서, M은 2보다 큰 정수 중 가장 작은 정수인 3이 된다.
반대로 출력 도선의 수(M)가 결정되어 있다면 필요한 최소 다치 논리 소스의 수(X)는 아래의 수학식 [2]를 통해 구해질 수 있다.
Figure 112014090946311-pat00003
도 3에서는, 인코더(130)의 입력단에 연결되는 입력 도선의 수가 N일때, 인코더(130)의 출력단에 연결되는 출력 도선 수(M)에 따라서 입력 조합에 대한 다치 논리 기반의 인코딩 값을 저정한 매핑 테이블(136)의 예가 도시된다.
도 3의 매핑 테이블(136)은 N+1 개의 입력 변수(D1~DN, req) 와 M 개의 출력 변수(W1~WM)를 포함한다.
입력 변수는 '0 '과 '1'을 사용하는 2치 논리를 사용하며 req 신호는 단지 데이터의 유효성을 표시하는 일종의 활성화 신호이기 때문에 모든 가능한 입력 변수의 조합 수는 2N+1이 된다.
또한, 출력 변수는 상기 수학식 [2]에 의해, V1에서
Figure 112014090946311-pat00004
까지의다치 논리가 사용될 수 있다.
도 4는 도 2에 도시된 디코더의 구성을 개략적으로 보여주는 블록도이다.
도 4를 참조하면, 본 발명의 일 실시 예에 따른 데이터 전송 장치(100)의 디코더(150)는 비교기(152), 다치 논리 생성기(154) 및 매핑 테이블(156)을 포함한다.
비교기(152)는 도선(도 1의 140)을 통해 다치 논리 신호(W_out)를 수신하고, 이를 다치 논리 생성기(154)로부터 제공되는 기준 다치 논리 신호와 비교하여 다치 논리 기반의 요구 신호(req_in)와 데이터 신호(data_in)를 해석한다.
매핑 테이블(156)은 인코더(130)에 구비된 매핑 테이블(136)과 동일한 테이블로 구성되어, 상기 비교기(152)에 의해 해석된 다치 논리 기반의 입력 신호에 맵핑되는 이진 기반의 입력 신호(req_out 및 data_out)로 디코딩한다.
도 5는 본 발명의 다른 실시 예에 따른 전류 모드 기반의 다치 논리에 따른 데이터 전송 환경에서 사용되는 인코더와 디코더의 각 구성을 보여주는 블록도이다.
도 5를 참조하면, 본 발명의 다른 실시 예에 따른 인코더(130')와 디코더(150')는 조합 논리 회로 (combinational logic circuit)를 포함하는 일종의 N-to-M 라인 인코더 및 M-to-N 라인 디코더로서 각각 동작할 수 있다.
다른 실시 예에 따른 인코더(130')와 디코더(150')는 2진 논리(Binary-valued logic)가 아닌 다치 논리(Mutli-valued logic)를 기반으로 데이터를 인코딩 및 디코딩하는 점에서 기존의 라인 인코더와 라인 디코더와 차이가 있다.
이를 위해, 본 발명의 다른 실시 예에 따른 인코더(130')와 디코더(150') 각각은 다치 논리 회로(Multiple-Valued Logic: MVL)를 포함하며, 이 회로에 의해 인코더(130')와 디코더(150') 간의 도선(140)의 수는 줄어들 수 있다.
설명의 이해를 돕기 위해, 이 실시 예에서의 데이터 전송 환경은 3-입력 2-출력으로 구현된 데이터 전송 환경으로서, 다치 논리(Multi-Valued Logic: MVL) 중 가장 작은 3 치 논리(3-valued logic)를 사용한다.
이 실시 예에서는, 입력 데이터가 도선의 감소를 확인할 수 있는 최소 데이터 크기인 3-비트가 사용된다. 따라서 인코딩에 필요한 도선의 수 M은 조건(3M ≥ 23+1)에 의해 2개가 된다.
이 실시 예에 따른 인코더(130')와 디코더(150')각각에 포함된 다치 논리 회로는 표현 방법에 따라 전압 모드(Voltage-Mode)와 전류 모드 (Current-Mode)로 나뉘며, 이 실시 예에서는 전류 모드의 다치 논리 회로를 예로 들어 설명하기로 한다.
이 실시 예에서 적용되는 전류 모드의 다치 논리 회로는 3개의 전류량(2I, I, 0)으로 표현되는 3치 논리가 사용된다.
2진 기반의 요구신호(req_in)와 3-비트 데이터(a_in, b_in, c_in)는 인코더(130')를 통해 전류량으로 인코딩 되며, 디코더(150')에서는 전류량으로 인코딩된 요구 신호와 3-비트 데이터를 원래의 이진 기반의 요구 신호와 3-b비트 데이터(req_out, a_out, b_out, c_out)로 디코딩한다. 복원된 이진 기반의 요구 신호와 3-b비트 데이터는 디코더의 출력단에 연결된 래치(latch)에 저장된다.
구체적으로, 도 5에 도시된 바와 같이, 본 발명의 다른 실시 예에 따른 인코더(130')는 라인 인코딩 회로(131, Line encoding circuit)와 제1 및 제2 CMMVL(Current-Mode Multi Valued Logic) 인코딩 회로(133, 135)를 포함한다.
라인 인코딩 회로(131)는 요구 신호(req_in)와 3-비트 데이터(a_in, b_ in, c_ in)의 입력 조합에 따라, 3가지 전류 레벨(2I, I, 0)을 선택하기 위한 제1 및 제2 제어 신호(2I_en1, I_en1/2I_en2, I_en2)를 각각 제1 및 제2 CMMVL 인코딩 회로(133, 135)에 전달한다.
제1 및 제2 CMMVL 인코딩 회로(133, 135) 각각은 전달된 제어 신호(2I_en1, I_en1/2I_en2, I_en2)에 따라 3개의 전류 레벨(2I, I, 0) 중 하나를 선택하여 제1 및 제2 도선(141, 143)으로 출력한다.
실질적으로 본 실시예에서 설계된 CMMVL 인코딩 회로는 2I와 I 가 아닌 경우 출력을 자동적으로 0으로 할당하기 하기 때문에 2I와 I에 대한 두 개의 상태 신호만을 출력한다.
인코딩에 필요한 도선의 수(M)가 2이므로, 각 도선별로 2개의 CMMVL 인코딩 회로(133, 135)가 사용된다. 제어 신호는 두 개씩 총 4개 (2I_en1, I_en1, 2I_en2, I_en2)가 사용된다.
인코딩된 데이터는 도선(141, 143)을 통해 디코더(150')로 전달된다.
디코더(150')는 인코더(130')에 대응하는 제1 및 제2 CMMVL 디코딩 회로(151, 153)와 라인 디코딩 회로(155)를 포함한다.
제1 및 제2 CMMVL 디코딩 회로(151, 153)는 전달된 전류량을 디코딩하여 디코딩된 제어 신호(2I_dec1, I_dec1/2I2_dec2, I_dec2)를 생성한다.
라인 디코딩 회로(155)는 제어 신호(2I_dec1, I_dec1/2I2_dec2, I_dec2)를 전달 받아 원래의 요구 신호(req_out)와 데이터 신호(a_out, b_ out, c_ out)로 디코딩하여 디코딩된 요구 신호(req_out)와 데이터 신호(a_out, b_ out, c_ out)를 래치(160)에 저장한다.
본 발명의 다른 실시 예에 따른 라인 인코딩 및 라인 디코딩 회로는 조합 논리 회로로서, N개의 입력 비트를 M개의 출력 비트로 표현한다. 이러한 조합 논리 회로의 설계 위해, 먼저 원하는 회로 동작에 대한 진리표가 작성되어야 한다.
도 3에서는 전체 다치 논리 수에 따른 매핑 테이블이 예시되었으며, 이 매핑 테이블에 기초해 다양한 다치 논리 수에 따른 매핑 테이블이 구성될 수 있다.
도 6은 도 5에 도시된 데이터 전송 환경에서 사용되는 매핑 테이블이다.
도 6을 참조하면, 상기 매핑 테이블에서는 1 비트의 요구 신호(r) 및 3-비트 데이터(a, b, c)에 따라 조합되는 입력 변수를 2개의 출력 변수(W1, W2)에 할당한다.
입력 변수는 요구 신호(r)가 1인 경우, 3-비트 데이터(a, b, c)에 의해 표현되는 모든 경우의 수는 8(=23)개이고, 요구 신호가 0인 경우, 3-비트 데이터(a, b, c)에 의해 표현되는 모든 경우의 수는 1개이다. 따라서, 입력 변수는 총 9개의 데이터 심볼을 가진다.
출력 변수는 '0', 'I', '2I'의 3치 논리를 사용하기 때문에 9개의 데이터 심볼을 표현하기 위해서는 2(3M=9)개의 출력 변수가 필요하다.
주어진 진리표를 통해 각 출력 변수는 곱의 합 (Sum-Of-Prodcut, SOP), 또는 합의 곱 (Product-Of-Sum, POS) 형태의 불 함수를 도출 할 수 있다. 일반적으로 곱의 합 형태가 전달지연 시간이 짧고, 적은 수의 트랜지스터를 사용하기 때문에 회로 구현 시 더 유리하다. 도 7에서는 SOP 형태에 따른 2개의 출력 변수(W1, W2)의 불 함수를 보여주는 테이블이 도시된다. 앞서 설명한 것처럼 CMMVL 인코딩 회로에서, 2I와 I가 아닌 경우, 0을 출력하기 때문에 0에 대한 불 함수는 도출할 필요가 없다.
간략화된 불 함수는 기본 로직 게이트를 통해 실제 회로로 구현된다. 이에 따라, 도선 W1과 W2에서 각각 2I, I, 0을 출력할 수 있는 조건이 입력 신호로부터 추출될 수 있다.
라인 디코딩 회로의 경우 CMMVL 디코딩 회로에서 전류량을 디코딩한 제어 신호 (2I_dec1, I_dec1/2I_dec2, I_dec2)를 입력으로 받으며, 이는 카노맵을 통해 더 쉽게 곱의 합에 대한 불 함수를 구할 수 있다.
도 8은 본 발명의 일 실시 예에 따른 라인 디코딩 회로의 카노맵을 보여주는 테이블이고, 도 9는 도 8에 도시된 카노맵에 따라 도출된 불 함수를 보여주는 테이블이다.
도 8에 도시된 바와 같이, 카노맵을 구성하는 과정에서, 직관성을 위하여 2I_dec1, I_dec1, 2I_dec2, I_dec2는 각각 Z1, Z2, Z3, Z4로 변경된다. 도 9에서는, 변경된 Z1, Z2, Z3, Z4에 따른 불 함수가 도시된다.
CMMVL 디코딩 회로에서는 각각 (Z1, Z2), (Z3, Z4) 쌍에 대해, 2I 가 입력된 경우, 00, I가 입력된 경우, 01, 0이 입력된 경우, 11을 출력하므로, 입력되는 전류 레벨에 따라 카놉맵 기반 진리표가 구현될 수 있다.
도 10은 본 발명의 일 실시 예에 따른 데이터 전송 방법을 보여주는 순서도이다.
도 10을 참조하면, 먼저, 입력 도선을 통해 입력받은 상기 이진 논리 신호를 다치 논리 기반의 다치 논리 신호로 인코딩하는 데 이용되는 매핑 테이블을 구성하는 단계가 수행된다(S1010).
구체적으로, 이 단계(S1010)에서는, 먼저, 상기 출력 도선의 개수 및 상기 다치 논리 신호를 구성하기 위한 다치 논리 소스의 개수 중 어느 하나를 결정하는 단계가 수행된다. 상기 출력 도선의 개수는 앞서 기술한 수학식 1을 통해 결정될 수 있고, 다치 논리 소스의 개수의 결정은 앞서 기술한 수학식 2를 통해 결정될 수 있다. 이어, 상기 입력 도선의 개수, 상기 출력 도선의 개수 및 다치 논리 소스의 개수를 변수로 구성하고, 상기 구성된 입력 변수와 상기 구성된 입력 변수에 대응하는 다수의 다치 논리 신호(또는 다치 논리 조합)을 맵핑시켜, 도 3에 도시된 바와 같은 테이블 형태로 구성하는 단계가 수행된다.
이어, 상기 구성된 맵핑 테이블을 참조하여 입력 도선을 통해 입력받은 이진 논리 신호를 다치 논리 기반의 다치 논리 신호로 인코딩하는 단계가 수행되고(S1020), 상기 인코딩된 다치 논리 신호를 상기 입력 도선의 개수보다 작은 개수의 상기 출력 도선을 통해 디코더로 전송하는 단계가 수행된다(S1030).
이상 설명한 바와 같이, 본 발명의 실시예에 따르면, GALS 시스템과 같은 대규모 SoC 설계 시에 많은 도선 수로 인해 발생할 수 있는 전력 소모와 설계 복잡성을 줄일 수 있다.
또한 본 발명의 실시예에서는, 기존의 2치 논리(binary logic) 대신 다치 논리 (Multi-valued logic)를 이용한다.
기존의 2치 논리에서는 N-비트의 데이터는 2N개의 데이터 심볼을 표현할 수 있으며, 다치 논리를 이용하면 그와 동등한 크기를 가지는 지수 형태로 표현 할 수 있다. 즉, M은 출력 도선의 수이고, X가 하나의 도선에 표현 가능한 다치 논리의 수라면, 다치 논리의 수는 XM로 표현할 수 있다. 그리고, N개의 입력 도선의 수(요구 신호를 전송하는 도선을 제외한 수)에 대해서 표현 가능한 모든 조합은 2N로 표현할 수 있고, 요구 신호가 0인 경우에서의 표현을 포함하면, 모든 조합은 2N+1로 표현할 수 있다.
결국, 본 발명의 인코딩 방법에서는, 조건 2N+1 ≥ XM에 따라 구성된 매핑 테이블을 참조하여 데이터를 인코딩하기 때문에, 입력 도선의 수보다 작게 구현된 출력 도선의 수를 갖는 데이터 전송 환경을 구축할 수 있다.
나아가, 출력 도선의 수(M)는 다치 논리의 수가 커질수록 작아지기 때문에 N보다 더 적은 출력 도선 수(M)로 동일한 크기의 데이터를 전송할 수 있다.

Claims (12)

  1. 핸드셰이크 프로토콜(handshake protocol)을 지원하는 지연 무관(Delay Insensitive) 데이터 전송 방식으로 데이터를 전송하는 데이터 전송 장치에 있어서,
    이진 논리 기반의 이진 논리 신호를 출력하는 센더; 및
    입력 도선을 통해 입력받은 상기 이진 논리 신호를 다치 논리 기반의 다치 논리 신호로 인코딩하고, 상기 인코딩된 다치 논리 신호를 출력 도선을 통해 디코더로 전송하는 인코더를 포함하고,
    상기 인코더는,
    상기 입력 도선의 개수 및 상기 입력 도선의 개수보다 작은 상기 출력 도선의 개수를 포함하는 입력 변수와 상기 입력 변수에 대응하는 상기 다치 논리 신호를 저장한 맵핑 테이블을 포함하고, 상기 맵핑 테이블로부터의 제어 신호로서, 상기 입력 도선의 개수에 따라 표현되는 상기 이진 논리 신호의 논리 조합 및 상기 출력 도선의 개수에 맵핑되는 다치 논리 조합을 포함하는 상기 제어 신호에 따라, 다수의 다치 논리 소스를 먹싱하여 상기 제어 신호에 대응하는 다치 논리 소스를 상기 인코딩된 다치 논리 신호로서 선택적으로 생성함을 특징으로 하는 데이터 전송 장치.
  2. 삭제
  3. 제1항에 있어서, 상기 인코더는,
    다치 논리 소스의 개수를 더 포함하는 상기 입력 변수와 상기 입력 변수에 대응하는 상기 다치 논리 신호를 저장한 맵핑 테이블을 참조하여, 상기 이진 논리 신호를 상기 다치 논리 신호로 인코딩함을 특징으로 하는 데이터 전송 장치.
  4. 제3항에 있어서, 상기 인코더는,
    상기 맵핑 테이블을 참조하여, 상기 입력 도선의 개수에 따라 표현되는 상기 이진 논리 신호의 논리 조합, 상기 출력 도선의 개수 및 상기 다치 논리 소스의 개수에 맵핑되는 상기 다치 논리 신호를 추출하여, 상기 이진 논리 신호를 상기 추출된 다치 논리 신호로 인코딩함을 특징으로 하는 데이터 전송 장치.
  5. 제4항에 있어서, 상기 인코더는,
    서로 다른 다수의 전압 레벨 또는 서로 다른 다수의 전류 레벨을 갖는 다수의 다치 논리 소스를 생성하는 다치 논리 소스 생성기; 및
    상기 맵핑 테이블로부터 상기 입력 도선의 개수에 따라 표현되는 상기 이진 논리 신호의 논리 조합, 상기 출력 도선의 개수 및 상기 다치 논리 소스의 개수에 맵핑되는 다치 논리 조합을 제어 신호로서 입력받고, 상기 다수의 다치 논리 소스 중 상기 입력받은 제어 신호에 대응하는 다치 논리 소스를 상기 인코딩된 다치 논리 신호로서 선택적으로 출력하여 상기 출력 도선을 통해 디코더로 전송하는 먹스
    를 포함함을 특징으로 하는 데이터 전송 장치.
  6. 핸드셰이크 프로토콜(handshake protocol)을 지원하는 지연 무관(Delay Insensitive) 데이터 전송 방식으로 데이터를 전송하는 데이터 전송 방법에 있어서,
    입력 도선의 개수 및 상기 입력 도선의 개수보다 작은 출력 도선의 개수를 포함하는 입력 변수와 상기 입력 변수에 대응하는 다치 논리 신호를 저장한 맵핑 테이블을 구성하는 단계;
    상기 맵핑 테이블로부터의 제어 신호로서, 상기 입력 도선의 개수에 따라 표현되는 이진 논리 신호의 논리 조합 및 상기 출력 도선의 개수에 맵핑되는 다치 논리 조합을 포함하는 상기 제어 신호에 따라, 다수의 다치 논리 소스를 먹싱하여, 상기 제어 신호에 대응하는 다치 논리 소스를 다치 논리 기반의 다치 논리 신호로 인코딩하는 단계; 및
    상기 인코딩된 다치 논리 신호를 상기 출력 도선을 통해 디코더로 전송하는 단계
    를 포함하는 데이터 전송 방법.
  7. 제6항에 있어서, 상기 맵핑 테이블을 구성하는 단계는,
    상기 출력 도선의 개수 및 상기 다치 논리 신호를 구성하기 위한 다치 논리 소스의 개수 중 어느 하나를 결정하는 단계;
    상기 입력 도선의 개수와 상기 결정된 어느 하나를 입력 변수로 구성하는 단계; 및
    상기 구성된 입력 변수와 상기 구성된 입력 변수에 대응하는 다수의 다치 논리 신호를 테이블 형태로 구성하는 단계;
    를 포함하는 데이터 전송 방법.
  8. 제7항에 있어서, 상기 출력 도선의 개수를 결정하는 단계는,
    아래의 수학식 1에 의해 결정되고,
    상기 수학식 1은,
    Figure 112014090946311-pat00005
    이고,
    여기서, 상기 M은 상기 출력 도선의 개수이고, 상기
    Figure 112014090946311-pat00006
    은 M보다 큰 정수 중 가장 작은 정수이고, 상기 X는 상기 다치 논리 소스의 개수이고, 2N+1은 상기 입력 도선의 개수임을 특징으로 하는 데이터 전송 방법.
  9. 제7항에 있어서, 상기 다치 논리 소스의 개수를 결정하는 단계는,
    아래의 수학식 2에 의해 결정되고,
    상기 수학식 2는,
    Figure 112014090946311-pat00007
    이고,
    상기 X는 상기 다치 논리 소스의 개수이고, 상기 M은 상기 출력 도선의 개수이고, 2N+1은 상기 입력 도선의 개수임을 특징으로 하는 데이터 전송 방법.
  10. 삭제
  11. 제6항에 있어서, 상기 인코딩하는 단계는,
    다치 논리 소스의 개수를 더 포함하는 상기 입력 변수와 상기 입력 변수에 대응하는 상기 다치 논리 신호를 저장한 맵핑 테이블을 참조하여, 상기 이진 논리 신호를 상기 다치 논리 신호로 인코딩하는 단계임을 특징으로 하는 데이터 전송 방법.
  12. 제11항에 있어서, 상기 인코딩하는 단계는,
    상기 맵핑 테이블을 참조하여, 상기 입력 도선의 개수에 따라 표현되는 상기 이진 논리 신호의 논리 조합, 상기 출력 도선의 개수 및 상기 다치 논리 소스의 개수에 맵핑되는 상기 다치 논리 신호를 추출하는 단계; 및
    상기 이진 논리 신호를 상기 추출된 다치 논리 신호로 인코딩하는 단계
    를 포함함을 특징으로 하는 데이터 전송 방법.
KR1020140127830A 2014-09-24 2014-09-24 데이터 전송을 위한 도선의 수를 감소시키기 위한 데이터 전송 장치 및 그 방법 KR102063790B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140127830A KR102063790B1 (ko) 2014-09-24 2014-09-24 데이터 전송을 위한 도선의 수를 감소시키기 위한 데이터 전송 장치 및 그 방법
US14/748,844 US9521016B2 (en) 2014-09-24 2015-06-24 Data transmission apparatus and method for transmitting data in delay-insensitive data transmission method supporting handshake protocol

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140127830A KR102063790B1 (ko) 2014-09-24 2014-09-24 데이터 전송을 위한 도선의 수를 감소시키기 위한 데이터 전송 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20160035898A KR20160035898A (ko) 2016-04-01
KR102063790B1 true KR102063790B1 (ko) 2020-01-09

Family

ID=55526779

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140127830A KR102063790B1 (ko) 2014-09-24 2014-09-24 데이터 전송을 위한 도선의 수를 감소시키기 위한 데이터 전송 장치 및 그 방법

Country Status (2)

Country Link
US (1) US9521016B2 (ko)
KR (1) KR102063790B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102034368B1 (ko) * 2018-01-03 2019-10-18 한양대학교 산학협력단 동시 스위칭 잡음이 없고 높은 신호선 효율을 가지는 송신기 및 이에 있어서 데이터 전송 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080123765A1 (en) * 2006-11-29 2008-05-29 Myeong-Hoon Oh Delay insensitive data transfer apparatus with low power consumption
JP5311597B2 (ja) * 2004-04-05 2013-10-09 コーニンクレッカ フィリップス エヌ ヴェ マルチチャンネル・エンコーダ

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100447217B1 (ko) 1997-05-10 2005-04-06 주식회사 하이닉스반도체 새로운배선시스템용신호전송및수신장치
KR100609368B1 (ko) 2004-02-20 2006-08-08 광주과학기술원 전류모드 다치논리를 이용한 지연무관 데이터 전송회로
KR101173942B1 (ko) 2008-11-28 2012-08-14 한국전자통신연구원 데이터 송신 장치, 데이터 수신 장치, 데이터 전송 시스템 및 데이터 전송 방법
CN103874968B (zh) * 2011-08-03 2016-10-26 康奈尔大学 用于高性能异步电路的节能流水线电路模板
US8644318B2 (en) * 2011-09-21 2014-02-04 Qualcomm, Incorporated Systems and methods for asynchronous handshake-based interconnects
KR101502759B1 (ko) 2012-03-30 2015-03-24 한국전자통신연구원 데이터 송신 장치, 데이터 수신 장치 및 데이터 전송 방법
US9100315B2 (en) * 2012-09-04 2015-08-04 Granite Mountain Technologies Source asynchronous signaling

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5311597B2 (ja) * 2004-04-05 2013-10-09 コーニンクレッカ フィリップス エヌ ヴェ マルチチャンネル・エンコーダ
US20080123765A1 (en) * 2006-11-29 2008-05-29 Myeong-Hoon Oh Delay insensitive data transfer apparatus with low power consumption

Also Published As

Publication number Publication date
US20160087763A1 (en) 2016-03-24
KR20160035898A (ko) 2016-04-01
US9521016B2 (en) 2016-12-13

Similar Documents

Publication Publication Date Title
KR101173942B1 (ko) 데이터 송신 장치, 데이터 수신 장치, 데이터 전송 시스템 및 데이터 전송 방법
KR101800157B1 (ko) 데이터 심볼 트랜지션 기반 클록킹에 의한 멀티-와이어 싱글 엔드 푸시-풀 링크
CN108463977B (zh) 带内嵌时钟的正交差分向量信令码
US9673969B2 (en) Transcoding method for multi-wire signaling that embeds clock information in transition of signal state
KR101502759B1 (ko) 데이터 송신 장치, 데이터 수신 장치 및 데이터 전송 방법
US20060061494A1 (en) Encoder apparatus and decoder apparatus
US9426082B2 (en) Low-voltage differential signaling or 2-wire differential link with symbol transition clocking
KR100609368B1 (ko) 전류모드 다치논리를 이용한 지연무관 데이터 전송회로
JP4829962B2 (ja) 通信チャネルを介したデータ転送速度を向上させるための方法及び装置
KR102063790B1 (ko) 데이터 전송을 위한 도선의 수를 감소시키기 위한 데이터 전송 장치 및 그 방법
KR100574767B1 (ko) 차분값 데이터 인코딩 기반의 데이터 전송 회로 및 방법
KR101370606B1 (ko) 스위칭 횟수 및 크로스톡 지연을 최소화한 버스 인코딩 장치
TWI250729B (en) Receivers for cycle encoded signals
Choi et al. New data encoding method with a multi-value logic for low power asynchronous circuit design
EP1890385A1 (en) Method and apparatus for transferring signals between devices
KR100873159B1 (ko) 전송선과 스위칭수를 줄이는 하이브리드 터너리 인코딩전송 방법 및 이 방법을 이용하는 래퍼 회로
Nigussie et al. Boosting performance of self-timed delay-insensitive bit parallel on-chip interconnects
Oh et al. Asynchronous 2‐Phase Protocol Based on Ternary Encoding for On‐Chip Interconnect
KR20160100363A (ko) 오직 수신기 클록에 의한 CCIe 수신기 로직 레지스터 기입
KR100314675B1 (ko) 디지털 텔레비전의 양위상 디코더
Oh et al. Low static powered asynchronous data transfer for GALS system
Song et al. A new data encoding scheme using multi-valued logic for an asynchronous handshake protocol
Takahashi et al. Asynchronous Peer-to-Peer Simplex/Duplex-Compatible Communication System Using a One-Phase Signaling Scheme

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