KR20010026377A - 고속 직렬 버스 인터페이스를 위한 디코더 - Google Patents

고속 직렬 버스 인터페이스를 위한 디코더 Download PDF

Info

Publication number
KR20010026377A
KR20010026377A KR1019990037667A KR19990037667A KR20010026377A KR 20010026377 A KR20010026377 A KR 20010026377A KR 1019990037667 A KR1019990037667 A KR 1019990037667A KR 19990037667 A KR19990037667 A KR 19990037667A KR 20010026377 A KR20010026377 A KR 20010026377A
Authority
KR
South Korea
Prior art keywords
signal
data
response
clock signal
channel
Prior art date
Application number
KR1019990037667A
Other languages
English (en)
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 KR1019990037667A priority Critical patent/KR20010026377A/ko
Publication of KR20010026377A publication Critical patent/KR20010026377A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4247Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
    • G06F13/426Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus using an embedded synchronisation, e.g. Firewire bus, Fibre Channel bus, SSA bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0012High speed serial bus, e.g. IEEE P1394

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Systems (AREA)

Abstract

고속 직렬 버스 인터페이스를 위한 디코더가 개시된다. 본 발명에 따른 고속 직렬 버스 인터페이스를 위한 디코더는, 직렬의 우수/기수 데이타를 버스 클럭 신호에 응답하여 쉬프트하며, 쉬프트된 결과를 각각 조합하여 수신 속도 제어 신호에 응답하여 멀티플렉싱하고, 멀티플렉싱된 결과를 각 비트의 비동기 병렬 데이타로서 출력하는 병렬화부, 버스 클럭 신호를 속도 제어 신호에 응답하여 쉬프트하고, 쉬프트된 결과에 의해서 서로 다른 시점에 순차적으로 인에이블되는 채널 로드 신호들을 생성하는 쉬프트 레지스터, 순차적으로 인가되는 소정의 채널 클리어 신호들에 응답하여 순차적으로 리셋되는 다수의 채널 버퍼를 포함하며, 채널 로드 신호에 응답하여 비동기 병렬 데이타를 해당 버퍼에서 버퍼링하고, 버퍼링된 결과에 응답하여 채널별 비동기 병렬 데이타 및 비동기 데이타 준비 신호를 출력하는 원형 버퍼 및 채널 클리어 신호들을 발생시키며, 원형 버퍼에서 버퍼링된 각 채널별 비동기 병렬 데이타 및 비동기 데이타 준비 신호를 로컬 클럭 신호에 응답하여 재동기시키고, 재동기된 병렬 데이타 및 데이타 준비 신호를 출력하는 재동기부를 구비하는 것을 특징으로 한다.

Description

고속 직렬 버스 인터페이스를 위한 디코더{Decoder for High Speed Serial Bus Interface}
본 발명은 고속 직렬 버스 인터페이스에 관한 것으로서, 특히, 고속 직렬 버스 인터페이스를 위한 디코더에 관한 것이다.
최근에는 동영상등을 기록/재생하는 멀티미디어 제품들이 증가하고 있으며, 멀티미디어 제품들 간의 데이타 전송 시에 한번에 전송하고자 하는 데이타 량이 점점 늘어나고 있다. 따라서, 고속으로 많은 양의 데이타를 전송할 수 있는 직렬 데이타 버스를 필요로하게 됨에 따라 IEEE1394 직렬 데이타 버스가 대두되었다. 즉, IEEE1394는 IEEE(Institute of Electrical and Electronics Engineers)에 의해 표준화된 고속 직렬 버스 인터페이스로서, 비디오, 캠코더, 전자 스틸 카메라, 컴퓨터, 디지탈 오디오/비디오 장비 등과 같은 멀티미디어 제품 사이에서 고속의 데이타 통신을 가능하게 한다. 최근에는 멀티미디어 제품 간에 전송되는 데이타량 이 더욱 더 증가함에 따라서 일반 가정에서도 많은 양의 데이타를 빠른 시간에 전송할 수 있는 시스템을 필요로하고 있기 때문에 IEEE1394 고속 직렬 버스 인터페이스가 널리 이용되고 있다.
또한, 멀티미디어 제품들 사이의 일반적인 데이타 송수신 시에, 송신부에서는 전송하고자하는 데이타를 소정 프로토콜에 따라서 인코딩하고, 수신부에서는 인코딩된 데이타를 상기의 프로토콜에 따라서 디코딩한다. 마찬가지로, 많은 양의 데이타를 고속으로 송수신하기 위한 IEEE1394직렬 버스 인터페이스를 통하여 데이타를 전송하는 경우에도 인코더와 디코더를 필요로 한다. 최근에는 전송되는 데이타 량이 더욱 증가함에 따라 가정에서도 많은 양의 데이타를 빠른 시간에 전송하는 시스템을 요구하기 때문에, IEEE1394의 필요성이 점점 더 증가하고 있다. 이와 같이 고속으로 데이타를 전송하기 위해서, IEEE1394는 400MHz의 속도를 지향하지만, 400MHz에서 디지탈 방식으로 데이타를 인코디하거나 디코딩하는 것은 매우 어려운 일이다. 예를 들어, 인코더에서는 병렬 데이타를 직렬화하여 직렬 데이타로 만들어야 하고, 디코더에서는 직렬 데이타를 병렬화하여 병렬 데이타로 만들어야 하는 등의 블럭들이 고속으로 처리되기에는 다소 속도의 제약을 받기 때문이다.
게다가, IEEE1394에 적용되는 디코더는 위상 동기 루프에서 생성되는 서로 다른 주파수의 클럭 신호들과, 인코더에서 데이타와 스트로브 신호를 배타적 논리합하여 생성한 클럭 신호 등 서로 다른 소스를 갖는 클럭 신호들이 존재한다. 따라서, IEEE1394에 적용되는 종래의 디코더는 병렬화를 수행할 뿐 아니라, 서로 다른 클럭 발생원들이 존재하는 상태에서 로컬 신호에 의한 재동기화를 수행해야 하기 때문에, 속도에 관련된 많은 문제들이 발생될 수 있다.
본 발명이 이루고자하는 기술적 과제는, 400MHz의 속도를 지향하는 고속 직렬 버스 인터페이스에서 400MHz의 클럭 신호를 사용하지 않고도 인코딩된 신호를 정상적으로 디코딩하여 로컬 클럭 신호에 재동기시킬 수 있는 고속 직렬 버스 인터페이스를 위한 디코더를 제공하는데 있다.
도 1은 본 발명에 적용되는 고속 직렬 버스 인터페이스를 위한 디코더에 관한 것이다.
도 2는 본 발명의 실시예에 따른 디코더의 병렬화부를 설명하기 위한 블럭도이다.
도 3은 본 발명의 실시예에 따른 디코더의 원형 버퍼를 설명하기 위한 블럭도이다.
도 4는 본 발명의 실시예에 따른 디코더의 재동기부를 설명하기 위한 블럭도이다 .
상기 과제를 이루기위해, 본 발명에 따른 고속 직렬 버스 인터페이스를 위한 디코더는, 외부에서 인가되는 직렬 데이타와 스트로브 신호를 배타적 논리합한 버스 클럭 신호와, 상기 버스 클럭 신호에 의해 상기 직렬 데이타를 래치하여 생성한 우수 및 기수 데이타를 수신 속도 제어 신호와 함께 입력하고, 상기 버스 클럭 신호 및 상기 수신 속도 제어 신호에 응답하여 상기 직렬 우수/기수 데이타를 병렬화하여 로컬 클럭 신호에 재동기시키는 고속 직렬 버스 인터페이스를 위한 디코더에 있어서, 직렬의 우수/기수 데이타를 버스 클럭 신호에 응답하여 쉬프트하며, 쉬프트된 결과를 각각 조합하여 수신 속도 제어 신호에 응답하여 멀티플렉싱하고, 멀티플렉싱된 결과를 각 비트의 비동기 병렬 데이타로서 출력하는 병렬화부, 버스 클럭 신호를 속도 제어 신호에 응답하여 쉬프트하고, 쉬프트된 결과에 의해서 서로 다른 시점에 순차적으로 인에이블되는 채널 로드 신호들을 생성하는 쉬프트 레지스터, 순차적으로 인가되는 소정의 채널 클리어 신호들에 응답하여 순차적으로 리셋되는 다수의 채널 버퍼를 포함하며, 채널 로드 신호에 응답하여 비동기 병렬 데이타를 해당 버퍼에서 버퍼링하고, 버퍼링된 결과에 응답하여 채널별 비동기 병렬 데이타 및 비동기 데이타 준비 신호를 출력하는 원형 버퍼 및 채널 클리어 신호들을 발생시키며, 원형 버퍼에서 버퍼링된 각 채널별 비동기 병렬 데이타 및 비동기 데이타 준비 신호를 로컬 클럭 신호에 응답하여 재동기시키고, 재동기된 병렬 데이타 및 데이타 준비 신호를 출력하는 재동기부로 구성되는 것이 바람직하다.
이하, 본 발명에 따른 고속 직렬 버스 인터페이스를 위한 디코더에 관하여 첨부된 도면을 참조하여 다음과 같이 설명한다.
도 1은 본 발명에 적용되는 고속 직렬 버스 인터페이스를 위한 디코더를 설명하기 위한 개략적인 블럭도로서, 디코딩 클럭 발생부(10), 병렬화부(12), 원형 버퍼(14), 멀티플렉서(20), 쉬프트 레지스터(18) 및 재동기부(16)를 포함한다. 각각의 구성 블럭들에 관해서는 도 2~도 4를 참조하여 상세히 설명되어진다.
디코딩 클럭 발생부(10)는 입력 단자 PO, P1, P2를 통하여 인가되는 직렬의 데이타와 스트로브 신호를 배타적 논리합하여 버스 클럭 신호(rcv_clk)를 생성하고, 생성된 버스 클럭 신호에 의해서 직렬 데이타를 래치하여 우수/기수 데이타(DEVEN, DODD)를 생성한다. 따라서, 디코딩 클럭 발생부(10)는 디코딩 인에이블 신호(DEC_EN)에 응답하여 우수/기수 데이타(DEVEN, DODD)와, 버스 클럭 신호(rcv_clk) 및 수신 속도 제어 신호(rx_speed)를 출력한다. 즉, 디코딩 클럭 발생부(10)는 버스 클럭 신호(rcv_clk)의 구동 능력을 키워준다.
멀티플렉서(20)는 버스 점유를 제어하는 아비터 블럭(미도시)에서 출력되는 제1디코딩 인에이블 신호(DEC_EN1)와 제2디코딩 인에이블 신호(DEC_EN2)를 입력하고, 선택 신호(SEL)에 응답하여 선택적으로 출력한다. 상기 출력된 신호는 디코딩 클럭 발생부(10)를 인에이블하기 위한 디코딩 인에이블 신호(DEC_EN)로서 이용된다.
쉬프트 레지스터(18)는 버스 클럭 신호(rcv_clk)를 상기 수신 속도 제어 신호(rx_speed)에 응답하여 쉬프트하고, 쉬프트된 결과에 의해서 서로 다른 시점에 순차적으로 인에이블되는 채널 로드 신호들(CH0_LD~CH4_LD)을 생성한다. 즉, 도 1에 도시된 디코더에서 쉬프트 레지스터(18)는 병렬화부(12)에서 병렬화된 데이타를원형 버퍼(14)에 순차적으로 저장하기 위해, 순차적인 클럭 신호를 발생시켜주는 카운터라 할 수 있다.
병렬화부(12)는 외부에서 인가되는 비동기 클리어 신호(AS_CLR)에 응답하여 초기화되며, 직렬의 우수/기수 데이타를 버스 클럭 신호(rcv_clk)에 응답하여 쉬프트하며, 쉬프트된 결과를 각각 조합하여 수신 속도 제어 신호(rx_speed)에 응답하여 멀티플렉싱하고, 멀티플렉싱된 결과를 각 비트의 비동기 병렬 데이타(AS_PD)로서 출력한다. 여기에서, 병렬 데이타(AS_PD)는 8비트로 구현될 수 있다.
원형 버퍼(14)는 외부에서 인가되는 비동기 클리어 신호(asy_clr_in)에 응답하여 초기에 리셋되고, 재동기부(16)에서 순차적으로 인가되는 소정의 채널 클리어 신호들(CHO_CLR~CH4_CLR)에 응답하여 순차적으로 리셋되는 다수의 채널 버퍼들로 구성된다. 즉, 원형 버퍼(14)는 쉬트르 레지스터(18)에서 순차적으로 인가되는 채널 로드 신호(CH0_LD~CH4_LD)에 응답하여 비동기 병렬 데이타(AS_PD)를 각 채널 버퍼에 버퍼링하고, 상기 버퍼링된 결과에 의해 각 채널별 비동기 병렬 데이타(CH0_ASPD~CH4_ASPD)와 비동기 데이타 준비 신호(AS_DROUT)를 생성한다.
재동기부(16)는 상기 채널 클리어 신호들을 발생시키며, 원형 버퍼(14)에서 버퍼링된 각 채널별 비동기 병렬 데이타 및 비동기 데이타 준비 신호를 로컬 클럭 신호(SCLK)에 응답하여 재동기시키고, 재동기된 병렬 데이타(DEC_PDOUT) 및 데이타 준비 신호(DEC_DROUT)를 출력한다.
이와 같이, 도 1에 도시된 디코더는 외부의 인코더(미도시)에서 인가된 직렬 데이타와 스트로브 신호를 이용하여 버스 클럭 신호(rcv_clk)를 생성하고, 상기 클럭 신호에 의해 직렬 데이타를 디코딩함으로써 원하는 병렬 데이타를 생성한다.
도 2는 도 1에 도시된 디코더의 병렬화부(12)를 설명하기 위한 실시예의 블럭도이다. 도 2를 참조하면, 병렬화부(12)는 버스 클럭 신호(rcv_clk)에 응답하여 우수 데이타(DEVEN)를 래치하는, 직렬 연결된 플립플롭들(220, 230 및 240), 버스 클럭 신호(rcv_clk)에 응답하여 기수 데이타를 래치하는 직렬 연결된 플립플롭들(250, 260, 270), 상기 각 플립플롭들(220~240, 250~270)의 출력 중 일부를 각각 입력으로 받아들이고, 수신 속도 제어 신호(rx_speed)에 응답하여 비동기 병렬 데이타(AS_PD)를 출력하는 멀티플렉서들(280a~280h)을 포함한다.
도 2의 병렬화부(12)에 관하여 구체적으로 설명하면 다음과 같다. 즉, 플립플롭들(220~240)은 버스 클럭 신호(rcv_clk)에 응답하여 우수 데이타(DEVEN) 또는 이전 플립플롭의 출력을 래치하고, 래치된 결과를 출력한다. 또한, 플립플롭(250~270)은 버스 클럭 신호(rcv_clk)에 응답하여 기수 데이타(DODD) 또는 이전 플립플롭의 출력을 래치하고, 래치된 결과를 출력한다. 구체적으로 도시되지는 않았으나, 버스 클럭 신호(rcv_clk)의 상승 엣지와 하강 엣지에서 직렬 데이타를 래치한 신호가 각각 우수 데이타(DEVEV)와 기수 데이타(DODD)가 된다. 멀티플렉서(280a)는 플립플롭들(220,230,240)의 출력 신호를 입력하고, 수신 속도 제어 신호(rx_speed)에 응답하여 상기 입력된 신호들 중 하나를 선택적으로 출력하며, 이 때 출력 신호는 비동기 병렬 데이타(AS_PD0)라 명명한다. 또한, 멀티플렉서(280b)는 플립플롭들(250, 260, 270)의 출력 신호를 입력하고, 상기 수신 속도 제어 신호(rx_speed)에 응답하여 상기 입력된 신호들 중 하나를 선택적으로 출력하며, 이 때의 출력 신호는 비동기 병렬 데이타(AS_PD1)라 명명한다. 이러한 과정을 통하여 8비트 각각의 비동기 병렬 데이타 (AS_PD3~AS_PD7)가 생성된다.
여기에서, 수신 속도 제어 신호(rx_speed)는 속도 정보를 나타내는 신호로서, 100MHz, 200MHz 또는 400MHz의 속도를 나타낸다. 이러한 각각의 경우에 데이타 패킷을 구성하는 비트 사이즈는 각각 2비트, 4비트, 8비트가 되며, 이는 각 속도에 따라 병렬 데이타를 50MHz의 클럭에 동기시키기 위한 비트 사이즈라 할 수 있다. 이러한 병렬 데이타 패킷을 구성하기 위해서는, 도 2에 도시된 바와 같이 6개의 플립플롭과 8개의 멀티플렉서들이 요구된다.
도 3은 도 1에 도시된 원형 버퍼(14)를 설명하기 위한 실시예의 블럭도로서, 채널0~채널4 버퍼들(30~34)과 오아 게이트(36)를 포함한다. 또한, 원형 버퍼(14)는 병렬화부(12)에서 출력된 비동기 병렬 데이타(AS_PD)를 각 채널 별로 버퍼링한 후, 재동기부(16)에서 로컬 클럭 신호에 의해 재동기될 때, 해당 채널의 데이타를 출력으로 전송할 수 있도록 한다. 여기에서, 병렬 데이타는 8비트인 것으로 가정된다.
원형 버퍼(14)에 관하여 구체적으로 설명하면 다음과 같다. 채널 0버퍼(30)는 외부에서 인가되는 비동기 클리어 신호 (asy_clr_in)에 의해서 초기에 리셋된다. 또한, 채널0 버퍼(30)는 쉬프트 레지스터(18)에서 인가되는 채널 4 로드 신호(CH0_LD)에 응답하여 비동기 병렬 데이타(AS_PD[0:7])를 버퍼링하고, 버퍼링된 결과를 채널 0의 비동기 병렬 데이타(CH0_ASPD)로서 출력한다. 또한, 재동기부(16)에서 인가되는 채널 0클리어 신호(CH_0_CLR)에 응답하여 채널 0버퍼 (30) 내부의 플립플롭들이 초기화된다. 마찬가지로, 채널1 버퍼(31)는 외부에서 인가되는 비동기 클리어 신호(asy_clr_in)에 의해서 초기에 리셋된다. 또한 채널 1버퍼(31)는 쉬프트 레지스터(18)에서 인가되는 채널 3 로드 신호(CH0_LD)에 응답하여 비동기 병렬 데이타(AS_PD)를 버퍼링하고, 버퍼링된 결과를 채널 1의 비동기 병렬 데이타(CH1_ASPD)로서 출력한다. 채널2 버퍼(32)~채널 4버퍼(34)의 경우도 유사한 방식으로 동작하며, 단지, 각각의 채널 로드 신호 및 채널 클리어 신호가 달라진다. 원형 버퍼(14)의 각 채널 버퍼들은 각 버퍼 내부에 현재 유효한 데이타가 버퍼링되어 있음을 나타내는 준비 신호를 오아 게이트(36)로 출력한다. 오아 게이트(36)는 각각의 채널 버퍼(30~34)에서 출력되는 준비 신호들을 논리합하고, 논리합된 결과에 응답하여 비동기 데이타 준비 신호(AS_DROUT)를 생성한다. 따라서, 하나의 채널 버퍼에라도 유효한 데이타가 있으면 비동기 데이타 준비 신호(AS_DROUT)는 하이 레벨이 된다. 또한, 재동기부(16)에서 인가되는 각각의 채널 클리어 신호(CH0_CLR~CH4_CLR)는 원형 버퍼 내부의 모든 플립플롭을 리셋시켜 주는 역할을 하며, 각각의 채널 버퍼(30~34)에서 출력되는 준비 신호들을 로우 레벨로 설정해줌으로써 데이타 패킷이 종료되는 시점을 알려준다. 따라서, 상기 준비 신호들과 클리어 신호들(CH0_CLR ~ CH4_CLR)에 의해서 유효한 데이타 패킷 구간이 확인될 수 있다.
도 4는 도 1에 도시된 재동기부(16)를 설명하기 위한 실시예의 회로도로서, 멀티플렉서(40), 플립플롭(44), 카운터(42), 초기화 신호 발생부(45), 플립플롭들 (46,47, 49) 및 앤드 게이트(48)를 포함한다.
멀티플렉서(40)는 카운터(42)에서 출력되는 카운팅 값을 선택 신호로 받아들이고, 원형 버퍼(14)의 각 채널 버퍼(30~34)에서 버퍼링된 데이타들을 선택 신호에 응답하여 출력한다. 이 때, 멀티플렉서(40)에서 출력되는 신호는 비동기 병렬 출력 데이타(AS_PDOUT)로 명명된다. 플립플롭(44)은 멀티플렉서(40)에서 출력되는 비동기 병렬 출력 데이타(AS_PDOUT)를 로컬 클럭 신호(SCLK)에 의해서 래치하고, 래치된 결과를 출력한다. 여기에서, 로컬 클럭 신호(SCLK)는 일반적으로 50MHz의 클럭 신호라 할 수 있다. 이 때, 플립플롭(44)에서 상기 로컬 클럭 신호(SCLK)에 응답하여 출력되는 신호는 디코딩된 병렬 출력 데이타(DEC_PDOUT)로 정의되며, 로컬 클럭에 의해 재동기된 신호라 할 수 있다. 또한, 플립플롭(46)은 로컬 클럭(SCLK)을 클럭 입력하고, 원형 버퍼(14)에서 출력되는 비동기 데이타 준비 신호(AS_DROUT)를 데이타 입력하여 그에 상응하는 출력 신호(Q)를 생성한다. 이 때, 출력 신호는 다음 플립플롭(47)의 데이타 입력으로 인가되어 출력 신호를 생성한다. 또한, 앤드 게이트(48)는 비동기 데이타 준비 신호(AS_DROUT)와 플립플롭(47)의 출력 신호를 논리곱하고, 논리곱된 결과를 카운터(42)의 인에이블 신호로서 인가한다. 즉, 비동기 데이타 준비 신호(AS_DROUT)와 플립플롭(47)의 출력 신호가 하이 레벨이 될 때, 앤드 게이트(48)의 출력 신호도 하이 레벨이 된다. 여기에서, 앤드 게이트(47)의 출력 신호는 초기화 신호 발생부(45)의 데이타 입력으로도 인가된다. 카운터(42)는 앤드 게이트(48)의 출력 신호에 응답하여 인에이블되고, 50MHz의 로컬 클럭 신호를 카운팅한다. 이 때, 카운팅된 결과는 비동기 병렬 데이타를 선택하기 위한 멀티플렉서(40)의 선택 신호로서 인가된다. 또한, 도 4의 실시예에서 카운터(42)는 3비트로 구현되며, 카운팅된 3비트의 출력은 초기화 신호 발생부(45)의 인에이블 신호로도 인가된다. 즉, 초기화 신호 발생부(45)는 카운터(42)의 출력 값에 의해 인에이블되고, 앤드 게이트(48)의 출력 신호에 응답하여, 원형 버퍼(14)에 인가되는 각 채널 버퍼 클리어 신호 (CH0_CLR~CH4_CLR)들을 순차적으로 생성한다.
또한, 앤드 게이트(48)의 출력 신호는 플립플롭(49)의 데이타 입력으로 인가되어 로컬 클럭에 상응하는 출력 신호(Q)를 생성한다. 이 때, 플립플로(49)의 출력 신호(Q)는 디코딩된 데이타 준비 신호(DEC_DROUT)로 정의된다. 이와 같이, 원형 버퍼(14)에서 버퍼링된 병렬 데이타와, 데이타 준비 신호는 각각 플립플롭(44)과 플립플롭(49)에서 한번 더 래치됨으로써 동기화된 병렬 데이타(DEC_PDOUT) 및 데이타 준비 신호(DEC_DROUT)를 얻을 수 있다. 이로 인해, 재동기부(16)에서는 완전하게 동기화된 병렬 데이타를 얻을 수 있다. 여기에서, 데이타의 재동기 과정에서 시작 시점을 알려주는 신호는 비동기 데이타 준비 신호(AS_DROUT)라 할 수 있고, 종료되는 시점을 알려주는 신호는 초기화 신호 발생부(45)에서 생성되는 각 채널 클리어 신호(CH0_CLR~CH4_CLR)라 할 수 있다.
이와 같이, 본 발명의 디코더에서는 400MHz와 같은 고속의 클럭 신호를 사용하지 않고도, 새로운 방식으로 구현된 병렬화부와 원형 버퍼 및 재동기부를 이용하여 비동기 병렬 데이타를 50MHz의 로컬 클럭 신호에 응답하여 동기시킴으로써 동기화된 병렬 데이타를 생성할 수 있다.
본 발명에 따르면, 고속을 요구하는 직렬 버스 인터페이스를 구현함에 있어서 고속 클럭 신호를 사용하지 않고도 재동기화를 효율적으로 수행함으로써 이로 인한 처리 속도를 향상시킬 수 있다는 효과가 있다.

Claims (1)

  1. 외부에서 인가되는 직렬 데이타와 스트로브 신호를 배타적 논리합한 버스 클럭 신호와, 상기 버스 클럭 신호에 의해 상기 직렬 데이타를 래치하여 생성한 우수 및 기수 데이타를 수신 속도 제어 신호와 함께 입력하고, 상기 버스 클럭 신호 및 상기 수신 속도 제어 신호에 응답하여 상기 직렬 우수/기수 데이타를 병렬화하여 로컬 클럭 신호에 재동기시키는 고속 직렬 버스 인터페이스를 위한 디코더에 있어서,
    상기 직렬의 우수/기수 데이타를 상기 버스 클럭 신호에 응답하여 쉬프트하며, 상기 쉬프트된 결과를 각각 조합하여 상기 수신 속도 제어 신호에 응답하여 멀티플렉싱하고, 상기 멀티플렉싱된 결과를 각 비트의 비동기 병렬 데이타로서 출력하는 병렬화부;
    상기 버스 클럭 신호를 상기 속도 제어 신호에 응답하여 쉬프트하고, 상기 쉬프트된 결과에 의해서 서로 다른 시점에 순차적으로 인에이블되는 채널 로드 신호들을 생성하는 쉬프트 레지스터;
    순차적으로 인가되는 소정의 채널 클리어 신호들에 응답하여 순차적으로 리셋되는 다수의 채널 버퍼를 포함하며, 상기 채널 로드 신호에 응답하여 상기 비동기 병렬 데이타를 해당 버퍼에서 버퍼링하고, 상기 버퍼링된 결과에 응답하여 채널별 비동기 병렬 데이타 및 비동기 데이타 준비 신호를 출력하는 원형 버퍼; 및
    상기 채널 클리어 신호들을 발생시키며, 상기 원형 버퍼에서 버퍼링된 각 채널별 비동기 병렬 데이타 및 상기 비동기 데이타 준비 신호를 상기 로컬 클럭 신호에 응답하여 재동기시키고, 상기 재동기된 병렬 데이타 및 데이타 준비 신호를 출력하는 재동기부를 포함하는 것을 특징으로 하는 디코더.
KR1019990037667A 1999-09-06 1999-09-06 고속 직렬 버스 인터페이스를 위한 디코더 KR20010026377A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990037667A KR20010026377A (ko) 1999-09-06 1999-09-06 고속 직렬 버스 인터페이스를 위한 디코더

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990037667A KR20010026377A (ko) 1999-09-06 1999-09-06 고속 직렬 버스 인터페이스를 위한 디코더

Publications (1)

Publication Number Publication Date
KR20010026377A true KR20010026377A (ko) 2001-04-06

Family

ID=19610226

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990037667A KR20010026377A (ko) 1999-09-06 1999-09-06 고속 직렬 버스 인터페이스를 위한 디코더

Country Status (1)

Country Link
KR (1) KR20010026377A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100657411B1 (ko) * 2005-09-09 2006-12-14 한국과학기술원 천이 수를 유지하는 내로우 버스 인코딩/디코딩 장치
KR101015237B1 (ko) * 2009-06-18 2011-02-18 김승열 다용도 패

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100657411B1 (ko) * 2005-09-09 2006-12-14 한국과학기술원 천이 수를 유지하는 내로우 버스 인코딩/디코딩 장치
KR101015237B1 (ko) * 2009-06-18 2011-02-18 김승열 다용도 패

Similar Documents

Publication Publication Date Title
US6628679B1 (en) SERDES (serializer/deserializer) time domain multiplexing/demultiplexing technique
US7787499B2 (en) Maintaining synchronization of multiple data channels with a common clock signal
US6512804B1 (en) Apparatus and method for multiple serial data synchronization using channel-lock FIFO buffers optimized for jitter
US7199732B1 (en) Data converter with reduced component count for padded-protocol interface
JPS5940747A (ja) 直列デ−タ通信リンク用のインタ−フエイス
US6741193B2 (en) Parallel in serial out circuit having flip-flop latching at multiple clock rates
US5550874A (en) Clock synchronizing circuit of data transmission system
EP0334357B1 (en) Pulse insertion circuit
JP2001508972A (ja) エンコーダ及びデコーダ
JP2008508834A (ja) データ伝送同期
US7134038B2 (en) Communication clocking conversion techniques
US20150063516A1 (en) Communication circuit and information processing device
US5748123A (en) Decoding apparatus for Manchester code
US8923440B1 (en) Circuitry for padded communication protocols
US11888586B2 (en) Low latency network device and method for treating received serial data
KR20010026377A (ko) 고속 직렬 버스 인터페이스를 위한 디코더
US5805088A (en) High speed asynchronous serial to parallel data converter
JPS63167496A (ja) 半導体メモリ装置
US7161986B2 (en) Data transmission system and data transmitter/receiver for use therein, and method thereof
US4107468A (en) Digital train processing device
KR100300865B1 (ko) 고속 동기식 직렬 통신 시스템
KR0165198B1 (ko) 상이한 동기 클럭에서의 직렬데이타 변환회로
JP3044096B2 (ja) データ乗換回路
JPH0750634A (ja) 光伝送装置
KR20000013044A (ko) 고속 직렬 버스 인터페이스를 위한 인코더

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination