KR100855968B1 - 트라이 스테이트 양방향 버스의 전달지연을 보상하는 방법및 이를 이용하는 반도체 장치 - Google Patents

트라이 스테이트 양방향 버스의 전달지연을 보상하는 방법및 이를 이용하는 반도체 장치 Download PDF

Info

Publication number
KR100855968B1
KR100855968B1 KR1020070001691A KR20070001691A KR100855968B1 KR 100855968 B1 KR100855968 B1 KR 100855968B1 KR 1020070001691 A KR1020070001691 A KR 1020070001691A KR 20070001691 A KR20070001691 A KR 20070001691A KR 100855968 B1 KR100855968 B1 KR 100855968B1
Authority
KR
South Korea
Prior art keywords
block
slave
master block
master
blocks
Prior art date
Application number
KR1020070001691A
Other languages
English (en)
Other versions
KR20080064601A (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 KR1020070001691A priority Critical patent/KR100855968B1/ko
Priority to US11/949,176 priority patent/US8015336B2/en
Publication of KR20080064601A publication Critical patent/KR20080064601A/ko
Application granted granted Critical
Publication of KR100855968B1 publication Critical patent/KR100855968B1/ko

Links

Images

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/14Handling requests for interconnection or transfer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0008Synchronisation information channels, e.g. clock distribution lines
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals

Abstract

블록들 간에 연결되는 트라이 스테이트 양방향 버스의 전달지연을 검출하여 검출된 전달지연을 보상하는 방법 및 이를 이용하는 반도체 장치가 개시된다. 상기 반도체 장치는, 복수개의 슬레이브 블록들, 상기 슬레이브 블록들을 제어하는 마스터 블록, 상기 마스터 블록과 상기 슬레이브 블록들 사이에 연결되고 상기 마스터 블록과 상기 슬레이브 블록들 사이에서 데이터를 전달하는 트라이 스테이트 양방향 버스, 및 상기 마스터 블록과 상기 슬레이브 블록들 사이에 연결되고 상기 마스터 블록으로부터 발생되는 제어신호들을 상기 슬레이브 블록들로 전달하는 단방향 버스를 구비한다. 특히 상기 마스터 블록은 선택된 슬레이브 블록이 할당된 심볼을 전송하는 시점으로부터 상기 할당된 심볼이 상기 마스터 블록에 도착하는 시점까지의 클럭 수를 카운트하여 상기 마스터 블록과 상기 선택된 슬레이브 블록 간의 전달지연시간(propagation delay time)을 검출하여 저장하는 것을 특징으로 한다.

Description

트라이 스테이트 양방향 버스의 전달지연을 보상하는 방법 및 이를 이용하는 반도체 장치{Method for compensating propagation delay of tri-state bidirectional bus and semiconductor device using the same}
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 종래기술에 따른 반도체 장치에서 블록들 간에 신호선들의 연결을 나타내는 도면이다.
도 2는 본 발명의 일실시예에 따른 반도체 장치의 개략적인 블록도이다.
도 3은 도 2에 도시된 반도체 장치에서 마스터 블록이 전달지연 시간을 검출하는 방법 및 동작을 나타내는 타이밍도이다.
도 4는 도 2에 도시된 반도체 장치에서 마스터 블록과 모든 슬레이브 블록들 간의 전달지연 시간을 검출하는 방법 및 동작을 나타내는 타이밍도이다.
도 5는 도 2에 도시된 반도체 장치에서 검출된 전달지연 시간을 보상하는 방법 및 동작을 나타내는 타이밍도이다.
도 6은 도 2에 도시된 마스터 블록 및 슬레이브 블록의 좀더 구체적인 블록을 나타내는 도면이다.
본 발명은 반도체 장치에 관한 것으로, 특히 블록들 간에 연결되는 트라이 스테이트 양방향 버스의 전달지연을 검출하여 검출된 전달지연을 보상하는 방법 및 이를 이용하는 반도체 장치에 관한 것이다.
반도체 칩이 고속으로 동작할수록 반도체 칩과 외부와의 동기화 문제가 중요해 지고 있으며 또한 반도체 칩 내의 신호선(signal line)들 간의 동기화 및 블록들 간의 동기화 문제도 중요해지고 있다. 이와 더불어 반도체 칩이 복잡해짐에 따라 신호선들의 갯수를 줄여 라우팅(routing)이나 크로스 토크(cross-talk) 문제를 해결하는 것도 중요한 과제로 대두되고 있다.
그리고, 반도체 칩 내에서 블록들 간에 신호선들을 연결하는 경우, 일반적으로 버퍼링(buffering)과 트리(tree)를 사용하여 전달 지연(propagation delay)이나 스큐(skew)를 줄이는 방법이 사용된다. 신호들의 스큐를 최소하는 방법들중 하나가 미국특허 5,987,576에 개시되어 있다.
도 1은 종래기술에 따른 반도체 장치에서 블록들 간에 신호선들의 연결을 나타내는 도면이다.
도 1에 도시된 바와 같이, 종래에는 마스터 블록(11)과 슬레이브 블록들(12-13) 간에 신호선들을 연결하는 경우 독출(read)을 위한 신호선들(LR1-LR4)과 기입(write)을 위한 신호선들(LW1-LW4)이 별도로 사용된다. 그리고 기입을 위한 신호선들(LW1-LW4)을 트리(tree) 형태로 구성하거나 또는 버퍼들(BR1-BR6,BW1-BW8)을 이용하여, 신호선들의 전달 지연(propagation delay)이나 스큐(skew)를 최소화하도록 설계된다.
그러나 상기와 같은 종래의 방법은 반도체 칩의 레이아웃(layout) 및 라우팅(routing)의 복잡도를 증가시키는 단점이 있다. 또한 종래의 방법에서는 일반적으로 고정된 시간인 전달 지연이나 스큐를 가변적인 시간인 클럭 주기(clock period)에 맞추게 되는 데 이로 인하여 동작 주파수의 제한을 가져오거나 공정(process)의 변화 및 동작 환경의 변화에 대해 취약한 단점이 있다.
한편, 반도체 칩 내의 여러 블록들 간에 신호선들을 연결할 때 트라이 스테이트 양방향 버스(tri-state bidirectional bus)를 사용하면 독출을 위한 신호선들과 기입을 위한 신호선들이 공통으로 사용될 수 있으므로 신호선들의 개수가 대폭 감소될 수 있다. 그러나 트라이 스테이트 양방향 버스를 사용하는 경우에는 버퍼링(buffering)을 통한 신호의 증폭이 불가능하다.
따라서 서로 가까운 위치에 있는 블록들 간에는 트라이 스테이트 양방향 버스가 사용될 수 있으나, 서로 거리가 먼 블록들 간에는 전달 지연이나 천이 시간(transition time)이 길어지는 단점으로 인하여 트라이 스테이트 양방향 버스의 사용이 제한되어 진다. 특히 단방향(unidirectional) 버스와 양방향 버스가 혼재하는 경우에는, 단방향 버스 상의 신호와 양방향 버스 상의 신호 간의 동기화가 어려워지는 문제점이 있다.
따라서 본 발명이 이루고자하는 기술적 과제는, 트라이 스테이트 양방향 버 스의 사용이 제한되지 않으며 단방향 버스와 양방향 버스가 혼재하는 경우에도 단방향 버스 상의 신호와 양방향 버스 상의 신호 간의 동기화가 용이하게 이루어질 수 있는 반도체 장치를 제공하는 데 있다.
본 발명이 이루고자하는 다른 기술적 과제는, 단방향 버스 상의 신호와 양방향 버스 상의 신호 간의 동기화를 용이하게 시키기 위해, 블록들 간에 연결되는 트라이 스테이트 양방향 버스의 전달지연을 검출하여 검출된 전달지연을 보상하는 방법을 제공하는 데 있다.
상기 기술적 과제를 달성하기 위한 본 발명에 따른 반도체 장치는, 복수개의 슬레이브 블록들, 상기 슬레이브 블록들을 제어하는 마스터 블록, 상기 마스터 블록과 상기 슬레이브 블록들 사이에 연결되고 상기 마스터 블록과 상기 슬레이브 블록들 사이에서 데이터를 전달하는 트라이 스테이트 양방향 버스, 및 상기 마스터 블록과 상기 슬레이브 블록들 사이에 연결되고 상기 마스터 블록으로부터 발생되는 제어신호들을 상기 슬레이브 블록들로 전달하는 단방향 버스를 구비하고, 상기 마스터 블록이 상기 마스터 블록과 상기 슬레이브 블록들 간의 전달지연시간(propagation delay time)을 검출하는 것을 특징으로 한다.
바람직한 실시예에 따르면, 상기 마스터 블록으로부터 발생되어 상기 단방향 버스를 통해 전달되는 상기 제어신호들중 하나인 초기신호에 의해 상기 복수개의 슬레이브 블록들중 하나가 선택된다. 상기 선택된 슬레이브 블록은 할당된 심볼을 상기 양방향 버스를 통해 상기 마스터 블록에 전송한다.
상기 마스터 블록은, 상기 선택된 슬레이브 블록이 상기 할당된 심볼을 전송하는 시점으로부터 상기 할당된 심볼이 상기 마스터 블록에 도착하는 시점까지의 클럭 수를 카운트하여 상기 마스터 블록과 상기 선택된 슬레이브 블록 간의 전달지연시간(propagation delay time)을 검출하여 저장한다.
그리고 검출된 전달지연을 보상하기 위하여, 상기 마스터 블록은 상기 양방향 버스를 통해 상기 선택된 슬레이브 블록에 데이터를 전송한 후, 상기 데이터를 전송하는 시점보다 상기 검출된 전달지연 시간 만큼 늦게 인에이블 신호를 발생하여 상기 단방향 버스를 통해 상기 선택된 슬레이브 블록에 전송한다. 상기 선택된 슬레이브 블록은 상기 인에이블 신호에 응답하여 상기 데이터를 래치한다.
상기 다른 기술적 과제를 달성하기 위한 본 발명에 따른 전달지연 보상방법은, 마스터 블록과 슬레이브 블록 사이에 연결되는 트라이 스테이트 양방향 버스의 전달지연을 보상하는 방법에 있어서, 상기 마스터 블록에서 초기신호를 발생하여 단방향 버스를 통해 상기 슬레이브 블록에 전송하는 단계; 상기 단방향 버스를 통해 전송되어 온 상기 초기신호에 의해 상기 슬레이브 블록을 선택하는 단계; 상기 선택된 슬레이브 블록에서, 할당된 심볼을 발생하여 상기 양방향 버스를 통해 상기 마스터 블록에 전송하는 단계; 상기 선택된 슬레이브 블록이 상기 할당된 심볼을 전송하는 시점으로부터 상기 할당된 심볼이 상기 마스터 블록에 도착하는 시점까지의 클럭 수를 상기 마스터 블록에서 카운트하는 단계; 상기 카운트된 클럭 수를 상기 트라이 스테이트 양방향 버스의 전달지연으로서 검출하는 단계; 상기 마스터 블록에서 상기 양방향 버스를 통해 데이터를 상기 선택된 슬레이브 블록에 전송하는 단계; 상기 마스터 블록에서 상기 데이터를 전송하는 시점보다 상기 검출된 전달지연 만큼 늦게 인에이블 신호를 발생하는 단계; 상기 인에이블 신호를 상기 단방향 버스를 통해 상기 선택된 슬레이브 블록에 전송하는 단계; 및 상기 선택된 슬레이브 블록에서 상기 인에이블 신호에 응답하여 상기 데이터를 래치하는 단계를 구비하는 것을 특징으로 한다.
본 발명과 본 발명의 동작 상의 잇점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 2는 본 발명의 일실시예에 따른 반도체 장치의 개략적인 블록도이다.
도 2를 참조하면, 본 발명의 일실시예에 따른 반도체 장치는 복수개의 슬레이브 블록들(22-25), 슬레이브 블록들(22-25)을 제어하는 마스터 블록(21), 마스터 블록(21)과 슬레이브 블록들(22-25) 사이에 연결되는 트라이 스테이트 양방향 버스(L1), 마스터 블록(21)과 슬레이브 블록들(22-25) 사이에 연결되는 단방향 버스(L2,L3)를 구비한다.
슬레이브 블록들(22-25) 및 마스터 블록(21)은 클럭(CLK)에 동기되어 동작한다. 특히, 마스터 블록(21)은 마스터 블록(21)과 각각의 슬레이브 블록(22-25) 간의 트라이 스테이트 양방향 버스(L1)의 전달지연 시간(propagation delay time)을 검출하는 기능을 갖는다.
양방향 버스(L1)는 마스터 블록(21)과 슬레이브 블록들(22-25) 사이에서 데이터를 전달하기 위한 것이다. 즉, 마스터 블록(21)의 데이터는 양방향 버스(L1)를 통해 슬레이브 블록들(22-25)로 전달되고, 슬레이브 블록들(22-25)의 데이터는 양방향 버스(L1)를 통해 마스터 블록(21)으로 전달된다. 그리고 단방향 버스(L2,L3)는 마스터 블록(21)에서 발생되는 제어신호들, 즉 인에이블 신호(EN), 초기신호(INIT), 및 승인신호(ACK)를 슬레이브 블록들(22-25)로 전달하기 위한 것이다.
초기신호(INIT) 및 승인신호(ACK)는 마스터 블록(21)과 각각의 슬레이브 블록(22-25) 간의 트라이 스테이트 양방향 버스(L1)의 전달지연 시간을 검출하기 위해 사용되는 신호들이다. 인에이블 신호(EN)는 슬레이브 블록들(22-25)을 인에이블시키기 위해 사용되는 신호이다.
도 3은 도 2에 도시된 반도체 장치에서 마스터 블록(21)이 전달지연 시간을 검출하는 방법 및 동작을 나타내는 타이밍도이다.
이하 도 3의 타이밍도를 참조하여 마스터 블록(21)이 전달지연 시간을 검출하는 방법 및 동작을 상세히 설명한다. 도 3의 타이밍도에서 SB는 슬레이브 블록을 나타내고 MB는 마스터 블록을 나타낸다.
먼저, 마스터 블록(21)이 초기신호(INIT)를 발생하여 단방향 버스(L3)를 통해 슬레이브 블록들(22-25)로 전송하고, 초기신호(INIT)에 의해 슬레이브 블록들(22-25)중 하나가 선택된다. 슬레이브 블록들(22-25)중 하나가 선택되면, 선택 된 슬레이브 블록(SB)은 할당된 심볼(SYM)을 양방향 버스(L1)를 통해 마스터 블록(21,MB)에 전송한다.
마스터 블록(21,MB)은 양방향 버스(L1)를 통해 전달되어 온 심볼(SYM)을 수신한다. 그리고 마스터 블록(21,MB)은 선택된 슬레이브 블록(SB)이 심볼(SYM)을 전송하는 시점으로부터 심볼(SYM)이 마스터 블록(21,MB)에 도착하는 시점까지의 클럭(CLK) 수를 카운트하여 마스터 블록(21,MB)과 선택된 슬레이브 블록(SB) 간의 전달지연 시간을 검출하여 저장한다.
이때 검출되는 전달지연 시간은 클럭(CLK) 수로 계산되며 실제의 전달지연 보다 큰 최소의 클럭 수로 표시된다. 예컨대 도 3에서 실제의 전달지연 시간(TPD), 즉 슬레이브 블록(SB)이 심볼(SYM)을 전송하는 시점으로부터 심볼(SYM)이 마스터 블록(21,MB)에 도착하는 시점까지의 클럭(CLK) 수는 약 1.5이다. 그러나 마스터 블록(21,MB) 내의 카운터는 상기 클럭 수를 2로 카운트하고 검출되는 전달지연 시간(CNT)은 2로 간주된다.
다음에, 마스터 블록(21,MB)은 수신된 심볼(SYM)을 모두 인식한 후 승인(acknowledge) 신호(ACK)를 발생하여 단방향 버스(L3)를 통해 선택된 슬레이브 블록(SB)에 전송한다. 선택된 슬레이브 블록(SB)은 승인 신호(ACK)에 응답하여 홀드(hold) 상태를 유지한다. 이와 같은 과정에 의해 마스터 블록(21,MB)과 선택된 슬레이브 블록(SB) 간의 전달지연 시간이 검출되어 검출된 전달지연 시간이 마스터 블록(21,MB) 내의 레지스터에 저장된다.
도 4는 도 2에 도시된 반도체 장치에서 마스터 블록(21)과 모든 슬레이브 블 록들(22-25) 간의 전달지연 시간을 검출하는 방법 및 동작을 나타내는 타이밍도이다.
먼저, 마스터 블록(21,MB)에서 발생되는 초기신호(INIT[1])에 의해 도 2에 도시된 슬레이브 블록(22,SB_1)이 선택된다. 슬레이브 블록(22,SB_1)이 선택되면, 상술한 과정에 의해 마스터 블록(21,MB)과 슬레이브 블록(22,SB_1) 간의 전달지연 시간(TPD1)에 대응하는 클럭 수(CNT=2)가 카운트되고 이 값이 마스터 블록(21,MB)과 슬레이브 블록(22,SB_1) 간의 검출된 전달지연 시간으로서 마스터 블록(21,MB) 내의 레지스터에 저장된다.
다음에, 마스터 블록(21,MB)에서 발생되는 초기신호(INIT[2])에 의해 도 2에 도시된 슬레이브 블록(23,SB_2)이 선택된다. 슬레이브 블록(23,SB_2)이 선택되면, 상술한 과정에 의해 마스터 블록(21,MB)과 슬레이브 블록(23,SB_2) 간의 전달지연 시간(TPD2)에 대응하는 클럭 수(CNT=3)가 카운트되고 이 값이 마스터 블록(21,MB)과 슬레이브 블록(23,SB_2) 간의 검출된 전달지연 시간으로서 마스터 블록(21,MB) 내의 레지스터에 저장된다.
다음에, 마스터 블록(21,MB)에서 발생되는 초기신호(INIT[3])에 의해 도 2에 도시된 슬레이브 블록(24,SB_3)이 선택된다. 슬레이브 블록(24,SB_3)이 선택되면, 상술한 과정에 의해 마스터 블록(21,MB)과 슬레이브 블록(24,SB_3) 간의 전달지연 시간(TPD3)에 대응하는 클럭 수(CNT=4)가 카운트되고 이 값이 마스터 블록(21,MB)과 슬레이브 블록(24,SB_3) 간의 검출된 전달지연 시간으로서 마스터 블록(21,MB) 내의 레지스터에 저장된다.
마지막으로, 마스터 블록(21,MB)에서 발생되는 초기신호(INIT[n])에 의해 도 2에 도시된 슬레이브 블록(25,SB_n)이 선택된다. 슬레이브 블록(25,SB_n)이 선택되면, 상술한 과정에 의해 마스터 블록(21,MB)과 슬레이브 블록(25,SB_n) 간의 전달지연 시간(TPDn)에 대응하는 클럭 수(CNT=6)가 카운트되고 이 값이 마스터 블록(21,MB)과 슬레이브 블록(25,SB_n) 간의 검출된 전달지연 시간으로서 마스터 블록(21,MB) 내의 레지스터에 저장된다.
도 5는 도 2에 도시된 반도체 장치에서 상술한 검출방법에 따라 검출된 전달지연 시간을 보상하는 방법 및 동작을 나타내는 타이밍도이다.
마스터 블록(21,MB)은 양방향 버스(L1)를 통해 첫번째로 선택된 슬레이브 블록(22,SB_1)에 데이터(DATA1)를 전송한다. 그러면, 데이터(DATA1)는 마스터 블록(21,MB)과 슬레이브 블록(22,SB_1) 간의 전달지연 시간(TPD1) 만큼 지연된 후 슬레이브 블록(22,SB_1)에 도착된다.
그리고 전달지연 시간(TPD1)을 보상하기 위해, 마스터 블록(21,MB)은 상술한 검출방법에 따라 검출되어 레지스터에 저장되어 있는 클럭 수(CNT=2) 만큼 늦게(데이터(DATA1)를 전송하는 시점에 비하여) 인에이블 신호(EN)를 발생하여 단방향 버스(L2)를 통해 첫번째로 선택된 슬레이브 블록(22,SB_1)에 인에이블 신호(EN)를 전송한다. 여기에서 단방향 버스(L2)의 전달지연은 거의 없는 것으로 가정한다. 실제로 단방향 버스에는 버퍼를 사용하여 전달지연을 매우 작게 할 수 있다.
상기와 같이 함으로써 양방향 버스(L1)를 통해 전달되는 데이터(DATA1)와 단방향 버스(L2)를 통해 전달되는 인에이블 신호(EN)가 서로 동기화될 수 있다. 따 라서 인에이블 신호(EN)는 슬레이브 블록(22,SB_1)에 도착되는 데이터(DATA1)의 거의 중앙(center)에 위치하게 된다. 이에 따라 슬레이브 블록(22,SB_1)은 인에이블 신호(EN)에 응답하여 데이터(DATA1)를 안정적으로 래치할 수 있게 된다.
다음에, 마스터 블록(21,MB)은 양방향 버스(L1)를 통해 두번째로 선택된 슬레이브 블록(23,SB_2)에 데이터(DATA2)를 전송한다. 그러면, 데이터(DATA2)는 마스터 블록(21,MB)과 슬레이브 블록(23,SB_2) 간의 전달지연 시간(TPD2) 만큼 지연된 후 슬레이브 블록(23,SB_2)에 도착된다.
그리고 전달지연 시간(TPD2)을 보상하기 위해, 마스터 블록(21,MB)은 상술한 검출방법에 따라 검출되어 레지스터에 저장되어 있는 클럭 수(CNT=3) 만큼 늦게 인에이블 신호(EN)를 발생하여 단방향 버스(L2)를 통해 두번째로 선택된 슬레이브 블록(23,SB_2)에 인에이블 신호(EN)를 전송한다.
상기와 같이 함으로써 양방향 버스(L1)를 통해 전달되는 데이터(DATA2)와 단방향 버스(L2)를 통해 전달되는 인에이블 신호(EN)가 서로 동기화될 수 있다. 따라서 인에이블 신호(EN)는 슬레이브 블록(23,SB_2)에 도착되는 데이터(DATA2)의 거의 중앙에 위치하게 된다. 이에 따라 슬레이브 블록(23,SB_2)은 인에이블 신호(EN)에 응답하여 데이터(DATA2)를 안정적으로 래치할 수 있게 된다.
다음에, 마스터 블록(21,MB)은 양방향 버스(L1)를 통해 세번째로 선택된 슬레이브 블록(24,SB_3)에 데이터(DATA3)를 전송한다. 그러면, 데이터(DATA3)는 마스터 블록(21,MB)과 슬레이브 블록(24,SB_3) 간의 전달지연 시간(TPD3) 만큼 지연된 후 슬레이브 블록(24,SB_3)에 도착된다.
그리고 전달지연 시간(TPD3)을 보상하기 위해, 마스터 블록(21,MB)은 상술한 검출방법에 따라 검출되어 레지스터에 저장되어 있는 클럭 수(CNT=4) 만큼 늦게 인에이블 신호(EN)를 발생하여 단방향 버스(L2)를 통해 세번째로 선택된 슬레이브 블록(24,SB_3)에 인에이블 신호(EN)를 전송한다.
상기와 같이 함으로써 양방향 버스(L1)를 통해 전달되는 데이터(DATA3)와 단방향 버스(L2)를 통해 전달되는 인에이블 신호(EN)가 서로 동기화될 수 있다. 따라서 인에이블 신호(EN)는 슬레이브 블록(24,SB_3)에 도착되는 데이터(DATA3)의 거의 중앙에 위치하게 된다. 이에 따라 슬레이브 블록(24,SB_3)은 인에이블 신호(EN)에 응답하여 데이터(DATA3)를 안정적으로 래치할 수 있게 된다.
다음에, 마스터 블록(21,MB)은 양방향 버스(L1)를 통해 네번째로 선택된 슬레이브 블록(25,SB_n)에 데이터(DATAn)를 전송한다. 그러면, 데이터(DATAn)는 마스터 블록(21,MB)과 슬레이브 블록(25,SB_n) 간의 전달지연 시간(TPDn) 만큼 지연된 후 슬레이브 블록(25,SB_n)에 도착된다.
그리고 전달지연 시간(TPDn)을 보상하기 위해, 마스터 블록(21,MB)은 상술한 검출방법에 따라 검출되어 레지스터에 저장되어 있는 클럭 수(CNT=6) 만큼 늦게 인에이블 신호(EN)를 발생하여 단방향 버스(L2)를 통해 마지막으로 선택된 슬레이브 블록(25,SB_n)에 인에이블 신호(EN)를 전송한다.
상기와 같이 함으로써 양방향 버스(L1)를 통해 전달되는 데이터(DATAn)와 단방향 버스(L2)를 통해 전달되는 인에이블 신호(EN)가 서로 동기화될 수 있다. 따라서 인에이블 신호(EN)는 슬레이브 블록(25,SB_n)에 도착되는 데이터(DATAn)의 거의 중앙에 위치하게 된다. 이에 따라 슬레이브 블록(25,SB_n)은 인에이블 신호(EN)에 응답하여 데이터(DATAn)를 안정적으로 래치할 수 있게 된다.
도 6은 도 2에 도시된 마스터 블록 및 슬레이브 블록의 좀더 구체적인 블록을 나타내는 도면이다.
도 6을 참조하면, 마스터 블록(MB)은 제어기(211), 심볼 검출기(212), 카운터(213), 레지스터(214), 출력버퍼(215), 및 입력버퍼(216)를 포함한다.
제어기(211)는 초기신호(INIT), 승인신호(ACK), 및 인에이블 신호(EN)를 발생한다. 심볼 검출기(212)는 방향 버스(L1) 및 입력버퍼(216)를 통해 전달되어 온 심볼(SYM)을 수신하여 검출한다. 카운터(213)는 심볼 검출기(212)의 출력에 응답하여, 선택된 슬레이브 블록(SB)이 할당된 심볼(SYM)을 전송하는 시점으로부터 할당된 심볼(SYM)이 마스터 블록(MB)에 도착하는 시점까지의 클럭 수(N)를 카운트한다. 레지스터(214)는 제어기(211)에서 발생되는 레지스터 인에이블 신호(REN)에 응답하여 상기 클럭 수(N)를 저장하고 저장된 클럭 수(N)를 제어기(211)에 제공한다.
출력버퍼(215)는 마스터 블록(MB) 내부에서 발생되는 데이터(DOUT)를 받아 양방향 버스(L1)로 출력한다. 입력버퍼(216)는 양방향 버스(L1)를 통해 슬레이브 블록(SB)으로부터 전달되어 오는 데이터(DIN) 또는 심볼(SYM)을 수신한다.
슬레이브 블록(SB)은 심볼 발생기(221), 선택기(222), 출력버퍼(223), 및 입력버퍼(224)를 포함한다.
심볼 발생기(221)는 초기신호(INIT), 승인신호(ACK), 및 인에이블 신호(EN)에 의해 제어되며, 초기신호(INIT)에 응답하여 할당된 심볼(SYM)을 발생한다. 선택 기(222)는 심볼(SYM) 및 슬레이브 블록(SB) 내부에서 발생되는 데이터(DOUT) 중 하나를 선택하여 출력한다. 출력버퍼(223)는 선택기(222)의 출력을 받아 양방향 버스(L1)로 출력한다. 입력버퍼(224)는 양방향 버스(L1)를 통해 마스터 블록(MB)으로부터 전달되어 오는 데이터를 수신한다.
또한 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
상술한 바와 같이 본 발명에 따른 반도체 장치에서는, 트라이 스테이트 양방향 버스의 사용이 제한되지 않으며 단방향 버스와 양방향 버스가 혼재하는 경우에도 단방향 버스 상의 신호와 양방향 버스 상의 신호 간의 동기화가 용이하게 이루어질 수 있는 장점이 있다.

Claims (16)

  1. 복수개의 슬레이브 블록들;
    상기 슬레이브 블록들을 제어하는 마스터 블록;
    상기 마스터 블록과 상기 슬레이브 블록들 사이에 연결되고 상기 마스터 블록과 상기 슬레이브 블록들 사이에서 데이터를 전달하는 양방향 버스; 및
    상기 마스터 블록과 상기 슬레이브 블록들 사이에 연결되고 상기 마스터 블록으로부터 발생되는 제어신호들을 상기 슬레이브 블록들로 전달하는 단방향 버스를 구비하고,
    상기 슬레이브 블록들은 할당된 심볼을 상기 양방향 버스를 통해 상기 마스터 블록으로 전송하며,
    상기 마스터 블록은 상기 할당된 심볼을 이용하여 상기 마스터 블록과 상기 슬레이브 블록들 간의 전달지연시간(propagation delay time)을 검출하는 것을 특징으로 하는 반도체 장치.
  2. 제1항에 있어서, 상기 양방향 버스는 트라이 스테이트 양방향 버스인 것을 특징으로 하는 반도체 장치.
  3. 제1항에 있어서, 상기 마스터 블록으로부터 발생되어 상기 단방향 버스를 통해 전달되는 상기 제어신호들중 하나인 초기신호에 의해 상기 복수개의 슬레이브 블록들중 하나가 선택되는 것을 특징으로 하는 반도체 장치.
  4. 제3항에 있어서, 상기 선택된 슬레이브 블록은 상기 할당된 심볼을 상기 양방향 버스를 통해 상기 마스터 블록에 전송하는 것을 특징으로 하는 반도체 장치.
  5. 제4항에 있어서, 상기 마스터 블록은, 상기 선택된 슬레이브 블록이 상기 할당된 심볼을 전송하는 시점으로부터 상기 할당된 심볼이 상기 마스터 블록에 도착하는 시점까지의 클럭 수를 카운트하여 상기 마스터 블록과 상기 선택된 슬레이브 블록 간의 전달지연시간(propagation delay time)을 검출하여 저장하는 것을 특징으로 하는 반도체 장치.
  6. 제5항에 있어서, 상기 마스터 블록은 상기 할당된 심볼을 모두 인식한 후 승인(acknowledge) 신호를 상기 선택된 슬레이브 블록에 전송하는 것을 특징으로 하는 반도체 장치.
  7. 제6항에 있어서, 상기 선택된 슬레이브 블록은 상기 승인(acknowledge) 신호에 응답하여 홀드 상태를 유지하는 것을 특징으로 하는 반도체 장치.
  8. 제6항에 있어서, 상기 마스터 블록은 상기 양방향 버스를 통해 상기 선택된 슬레이브 블록에 데이터를 전송하고, 상기 마스터 블록은 상기 데이터를 전송하는 시점보다 상기 마스터 블록과 상기 선택된 슬레이브 블록 간의 전달지연시간 만큼 늦게 인에이블 신호를 발생하여 상기 단방향 버스를 통해 상기 선택된 슬레이브 블록에 전송하는 것을 특징으로 하는 반도체 장치.
  9. 제8항에 있어서, 상기 선택된 슬레이브 블록은 상기 인에이블 신호에 응답하여 상기 데이터를 래치하는 것을 특징으로 하는 반도체 장치.
  10. 제8항에 있어서, 상기 마스터 블록은,
    상기 초기신호, 상기 승인신호, 및 상기 인에이블 신호를 발생하는 제어기;
    상기 할당된 심볼을 받아 검출하는 심볼 검출기;
    상기 심볼 검출기의 출력에 응답하여, 상기 선택된 슬레이브 블록이 상기 할당된 심볼을 전송하는 시점으로부터 상기 할당된 심볼이 상기 마스터 블록에 도착하는 시점까지의 클럭 수를 카운트하는 카운터; 및
    상기 클럭 수를 저장하고 저장된 상기 클럭 수를 상기 제어기에 제공하는 레지스터를 구비하는 것을 특징으로 하는 반도체 장치.
  11. 제10항에 있어서, 상기 마스터 블록은,
    상기 마스터 블록 내부에서 발생되는 데이터를 받아 상기 양방향 버스로 출력하는 출력버퍼; 및
    상기 양방향 버스를 통해 상기 선택된 슬레이브 블록으로부터 전달되어 오는 데이터 또는 상기 심볼을 수신하는 입력버퍼를 더 구비하는 것을 특징으로 하는 반도체 장치.
  12. 제10항에 있어서, 상기 슬레이브 블록은,
    상기 초기신호에 응답하여 상기 심볼을 발생하는 심볼 발생기;
    상기 심볼 및 상기 슬레이브 블록 내부에서 발생되는 데이터 중 하나를 선택하는 선택기;
    상기 선택기의 출력을 받아 상기 양방향 버스로 출력하는 출력버퍼; 및
    상기 양방향 버스를 통해 상기 마스터 블록으로부터 전달되어 오는 데이터를 수신하는 입력버퍼를 구비하는 것을 특징으로 하는 반도체 장치.
  13. 마스터 블록과 슬레이브 블록 사이에 연결되는 트라이 스테이트 양방향 버스의 전달지연을 검출하는 방법에 있어서,
    상기 마스터 블록에서 초기신호를 발생하여 단방향 버스를 통해 상기 슬레이브 블록에 전송하는 단계;
    상기 단방향 버스를 통해 전송되어 온 상기 초기신호에 의해 상기 슬레이브 블록을 선택하는 단계;
    상기 선택된 슬레이브 블록에서, 할당된 심볼을 발생하여 상기 양방향 버스를 통해 상기 마스터 블록에 전송하는 단계;
    상기 선택된 슬레이브 블록이 상기 할당된 심볼을 전송하는 시점으로부터 상기 할당된 심볼이 상기 마스터 블록에 도착하는 시점까지의 클럭 수를 상기 마스터 블록에서 카운트하는 단계; 및
    상기 카운트된 클럭 수를 상기 트라이 스테이트 양방향 버스의 전달지연으로 서 검출하는 단계를 구비하는 것을 특징으로 하는 전달지연 검출방법.
  14. 제13항에 있어서,
    상기 마스터 블록에서 상기 할당된 심볼을 모두 인식한 후 승인신호를 발생하는 단계;
    상기 승인신호를 상기 단방향 버스를 통해 상기 슬레이브 블록에 전송하는 단계; 및
    상기 단방향 버스를 통해 전송되어 온 상기 승인신호에 의해 상기 슬레이브 볼록을 홀드(hold)시키는 단계를 더 구비하는 것을 특징으로 하는 전달지연 검출방법.
  15. 마스터 블록과 슬레이브 블록 사이에 연결되는 트라이 스테이트 양방향 버스의 전달지연을 보상하는 방법에 있어서,
    상기 마스터 블록에서 초기신호를 발생하여 단방향 버스를 통해 상기 슬레이브 블록에 전송하는 단계;
    상기 단방향 버스를 통해 전송되어 온 상기 초기신호에 의해 상기 슬레이브 블록을 선택하는 단계;
    상기 선택된 슬레이브 블록에서, 할당된 심볼을 발생하여 상기 양방향 버스를 통해 상기 마스터 블록에 전송하는 단계;
    상기 선택된 슬레이브 블록이 상기 할당된 심볼을 전송하는 시점으로부터 상 기 할당된 심볼이 상기 마스터 블록에 도착하는 시점까지의 클럭 수를 상기 마스터 블록에서 카운트하는 단계;
    상기 카운트된 클럭 수를 상기 트라이 스테이트 양방향 버스의 전달지연으로서 검출하는 단계;
    상기 마스터 블록에서 상기 양방향 버스를 통해 데이터를 상기 선택된 슬레이브 블록에 전송하는 단계;
    상기 마스터 블록에서 상기 데이터를 전송하는 시점보다 상기 검출된 전달지연 만큼 늦게 인에이블 신호를 발생하는 단계;
    상기 인에이블 신호를 상기 단방향 버스를 통해 상기 선택된 슬레이브 블록에 전송하는 단계; 및
    상기 선택된 슬레이브 블록에서 상기 인에이블 신호에 응답하여 상기 데이터를 래치하는 단계를 구비하는 것을 특징으로 하는 전달지연 보상방법.
  16. 제15항에 있어서,
    상기 마스터 블록에서 상기 할당된 심볼을 모두 인식한 후 승인신호를 발생하는 단계;
    상기 승인신호를 상기 단방향 버스를 통해 상기 슬레이브 블록에 전송하는 단계; 및
    상기 단방향 버스를 통해 전송되어 온 상기 승인신호에 의해 상기 슬레이브 볼록을 홀드(hold)시키는 단계를 더 구비하는 것을 특징으로 하는 전달지연 보상방법.
KR1020070001691A 2007-01-05 2007-01-05 트라이 스테이트 양방향 버스의 전달지연을 보상하는 방법및 이를 이용하는 반도체 장치 KR100855968B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070001691A KR100855968B1 (ko) 2007-01-05 2007-01-05 트라이 스테이트 양방향 버스의 전달지연을 보상하는 방법및 이를 이용하는 반도체 장치
US11/949,176 US8015336B2 (en) 2007-01-05 2007-12-03 Method of compensating for propagation delay of tri-state bidirectional bus in a semiconductor device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070001691A KR100855968B1 (ko) 2007-01-05 2007-01-05 트라이 스테이트 양방향 버스의 전달지연을 보상하는 방법및 이를 이용하는 반도체 장치

Publications (2)

Publication Number Publication Date
KR20080064601A KR20080064601A (ko) 2008-07-09
KR100855968B1 true KR100855968B1 (ko) 2008-09-02

Family

ID=39595241

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070001691A KR100855968B1 (ko) 2007-01-05 2007-01-05 트라이 스테이트 양방향 버스의 전달지연을 보상하는 방법및 이를 이용하는 반도체 장치

Country Status (2)

Country Link
US (1) US8015336B2 (ko)
KR (1) KR100855968B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2538246B (en) 2015-05-11 2018-06-20 Cirrus Logic Int Semiconductor Ltd Digital accessory interface calibration
KR102368600B1 (ko) * 2017-05-31 2022-03-02 현대자동차주식회사 이종망 데이터 전송이 가능한 i2c 통신 고속화 시스템
CN107480016B (zh) * 2017-07-27 2020-06-12 珠海高凌信息科技股份有限公司 一种传输设备接口电路自检方法及其电路自检系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0752876B2 (ja) * 1985-07-20 1995-06-05 ソニー株式会社 内部バス式デイジタル装置
KR20050062842A (ko) * 2003-12-18 2005-06-28 삼성전자주식회사 멀티비트 데이터의 지연 시간 보상이 가능한 반도체메모리 장치
KR20050100987A (ko) * 2004-04-16 2005-10-20 재단법인서울대학교산학협력재단 통신장치 및 그 방법
KR100656658B1 (ko) 2005-09-01 2006-12-11 주식회사 팬택앤큐리텔 데이터 송수신 장치

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3083536B2 (ja) * 1990-06-05 2000-09-04 株式会社東芝 不揮発性半導体記憶装置の書込み回路
US5572722A (en) * 1992-05-28 1996-11-05 Texas Instruments Incorporated Time skewing arrangement for operating random access memory in synchronism with a data processor
US5524107A (en) * 1992-08-21 1996-06-04 General Datacomm, Inc. Multiport multidrop digital system
US5692165A (en) * 1995-09-12 1997-11-25 Micron Electronics Inc. Memory controller with low skew control signal
KR100242591B1 (ko) 1996-10-22 2000-02-01 김영환 스큐 보상회로를 가지는 장치 및 그 제어방법
US5987576A (en) 1997-02-27 1999-11-16 Hewlett-Packard Company Method and apparatus for generating and distributing clock signals with minimal skew
JPH1185667A (ja) 1997-09-12 1999-03-30 Toshiba Corp 高速バスシステム
KR100278284B1 (ko) 1997-12-30 2001-01-15 김영환 동기 버스 클록 및 프로그래머블 인터페이스를 이용한 클록 스큐 최소화 방법 및 장치
US6505281B1 (en) * 1998-06-02 2003-01-07 Raymond C. Sherry Hard disk drives employing high speed distribution bus
US6363086B1 (en) * 1998-12-03 2002-03-26 Telefonaktiebolaget L M Ericsson (Publ) Method for combining signals on a digital interface
US7225286B2 (en) * 2002-06-24 2007-05-29 Koninklijke Philips Electronics N.V. Method to measure transmission delay between 1394 bridges
US6731134B1 (en) * 2003-03-31 2004-05-04 International Business Machines Corporation Tri-state delay boost
JP4390568B2 (ja) * 2004-01-19 2009-12-24 富士通株式会社 遅延測定システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0752876B2 (ja) * 1985-07-20 1995-06-05 ソニー株式会社 内部バス式デイジタル装置
KR20050062842A (ko) * 2003-12-18 2005-06-28 삼성전자주식회사 멀티비트 데이터의 지연 시간 보상이 가능한 반도체메모리 장치
KR20050100987A (ko) * 2004-04-16 2005-10-20 재단법인서울대학교산학협력재단 통신장치 및 그 방법
KR100656658B1 (ko) 2005-09-01 2006-12-11 주식회사 팬택앤큐리텔 데이터 송수신 장치

Also Published As

Publication number Publication date
KR20080064601A (ko) 2008-07-09
US20080168200A1 (en) 2008-07-10
US8015336B2 (en) 2011-09-06

Similar Documents

Publication Publication Date Title
US8352774B2 (en) Inter-clock domain data transfer FIFO circuit
TWI411956B (zh) 以位元時脈與平行資料轉換發送及/或接收序列資料的方法與系統
US8686754B2 (en) Configurable lane architecture in source synchronous systems
KR100758983B1 (ko) Gals 기반 네트워크 온 칩 및 그 데이터 전송방법
CN101599053B (zh) 支持多种传输协议的串行接口控制器及控制方法
US20060020843A1 (en) Technique to create link determinism
US7783911B2 (en) Programmable bus driver launch delay/cycle delay to reduce elastic interface elasticity requirements
US6249875B1 (en) Interface circuit using plurality of synchronizers for synchronizing respective control signals over a multi-clock environment
KR20080000249A (ko) Fifo 장치를 구비하는 데이터 처리장치와 데이터처리방법
US7646668B2 (en) Maintaining dynamic count of FIFO contents in multiple clock domains
US7568118B2 (en) Deterministic operation of an input/output interface
KR100855968B1 (ko) 트라이 스테이트 양방향 버스의 전달지연을 보상하는 방법및 이를 이용하는 반도체 장치
CN101300773A (zh) 数据接口及寻求同步的方法
KR100817270B1 (ko) 인터페이스 장치 및 데이터 동기화 방법
US8510485B2 (en) Low power digital interface
US8689218B1 (en) Method for sharing a resource and circuit making use of same
US10680963B2 (en) Circuit and method for credit-based flow control
US6067629A (en) Apparatus and method for pseudo-synchronous communication between clocks of different frequencies
US9692672B2 (en) Communication system, and corresponding integrated circuit and method
US7173877B2 (en) Memory system with two clock lines and a memory device
KR101987304B1 (ko) 반도체 메모리 장치
US7526017B2 (en) Transmitting device, receiving device, transmission system, and transmission method
JP3147842B2 (ja) データ転送システム及びデータ転送方法
JP2010141703A (ja) 並列データ伝送回路及び並列データ伝送方法
JP2007531064A (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: 20120802

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20130731

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140731

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20160801

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee