KR20080002792A - 멀티-핀 비동기 직렬 인터페이스를 통해 전달된 데이터를동기화하기 위한 방법 및 장치 - Google Patents
멀티-핀 비동기 직렬 인터페이스를 통해 전달된 데이터를동기화하기 위한 방법 및 장치 Download PDFInfo
- Publication number
- KR20080002792A KR20080002792A KR1020077022317A KR20077022317A KR20080002792A KR 20080002792 A KR20080002792 A KR 20080002792A KR 1020077022317 A KR1020077022317 A KR 1020077022317A KR 20077022317 A KR20077022317 A KR 20077022317A KR 20080002792 A KR20080002792 A KR 20080002792A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- bit
- word
- serial
- offset
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 239000000872 buffer Substances 0.000 claims abstract description 96
- 238000009432 framing Methods 0.000 claims abstract description 50
- 238000000605 extraction Methods 0.000 claims description 37
- 230000000694 effects Effects 0.000 claims description 17
- 230000004044 response Effects 0.000 claims description 13
- 230000001360 synchronised effect Effects 0.000 claims description 13
- 230000007704 transition Effects 0.000 claims description 12
- 238000001514 detection method Methods 0.000 claims description 8
- 239000000284 extract Substances 0.000 claims description 6
- 238000012544 monitoring process Methods 0.000 claims description 3
- 230000000875 corresponding effect Effects 0.000 description 21
- 230000008569 process Effects 0.000 description 19
- 238000012545 processing Methods 0.000 description 10
- 240000007320 Pinus strobus Species 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 238000012546 transfer Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 230000007613 environmental effect Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000013075 data extraction Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- -1 oscillator Substances 0.000 description 1
- 230000036316 preload Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0602—Systems characterised by the synchronising information used
- H04J3/0605—Special codes used as synchronising signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/04—Distributors combined with modulators or demodulators
- H04J3/047—Distributors with transistors or integrated circuits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/02—Speed or phase control by the received code signals, the signals containing no special synchronisation information
- H04L7/033—Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
- H04L7/0337—Selecting between two or more discretely delayed clocks or selecting between two or more discretely delayed received code signals
- H04L7/0338—Selecting between two or more discretely delayed clocks or selecting between two or more discretely delayed received code signals the correction of the phase error being performed by a feed forward loop
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Information Transfer Systems (AREA)
- Time-Division Multiplex Systems (AREA)
Abstract
직렬 프레이밍 신호(106A)로 복수의 직렬 데이터 비트스트림(106)을 워드 동기화하기 위한 방법, 디바이스 및 시스템이 제공된다. 오프셋 값(420)은 상관 모드 동안에 데이터 버퍼 내에 저장된 미리 결정된 데이터 상관값(107)의 상태 로케이션으로부터 결정되어(512), 프레이밍 채널과 각 직렬 데이터 채널 사이에서 관찰된 스큐의 양을 나타낸다. 각 데이터 스트림의 후속 동작 동안에 수신된 데이터는 버퍼(402)에 저장되고 프레이밍 신호(106A)가 모니터링되어 데이터 워드간의 경계를 식별한다. 프레임 경계가 발생하는 경우, 병렬 데이터가 이전에 저장된 오프셋 값을 이용하여 버퍼로부터 추출되어 데이터와 프레이밍 채널간의 비트 스큐를 보상한다.
데이터 동기화, 멀티-핀, 비동기 직렬 인터페이스, 직렬 데이터 비트스트림, 프레이밍 신호
Description
본 발명은 일반적으로는 데이터 동기화에 관한 것으로, 특히 멀티-핀 비동기 인터페이스를 통해 수신된 직렬 비트스트림을 동기화하기 위한 방법 및 장치에 관한 것이다.
전기 및 전자 통신은 모든 현대 생활의 양태에 계속해서 침투하고 있다. 예를 들면, 컴퓨터 시스템은 계속해서 점점 이동형 및 상호-네트워킹되고 있고, 휴대 전화는 더욱더 유비쿼터스하게 되고 있으며, 소비자들은 스트리밍 비디오, 오디오, 데이터 및 다른 서비스로의 일정한 액세스를 지속적으로 요구하고 있다. 그러한 서비스에 대한 요구가 계속해서 증가함에 따라, 공간 효율적이면서도 빠른 데이터 처리량을 제공하는 데이터 통신 스킴에 대한 요구가 발생하고 있다.
디지털 데이터에 이용되는 가장 통상적인 데이터 시그널링 스킴은 일반적으로 "직렬(즉, 단일 채널을 통해 순차적 데이터 비트의 스트림을 제공함)" 또는 "병렬(즉, 2개 이상의 데이터 채널을 통해 데이터 비트의 분리된 스트림을 제공함)"로서 분류될 수 있다. 직렬 스킴은 신호 데이터 채널로 인해 병렬 스킴보다 덜 복잡 하고 더욱 공간 효율적이라는 일반적인 장점을 가지고 있다. 특히 단일 직렬 데이터 채널은 통상 마이크로 칩 또는 유사한 모듈 상에 최소 개수의 "핀들"을 이용한다. 병렬 데이터 채널에서 제공되는 복수의 데이터 경로가 추가적인 핀 및 다른 칩 리소스를 소비할 수 있지만, 일반적으로 주어진 전달 레이트에서 대응하는 직렬 채널보다 더 많은 데이터를 제공할 수 있다. 다르게 말하면, 직렬 채널이 일반적으로 공간 및 물리적 오버헤드 측면에서는 효율적이지만, 직렬 스킴이 동일한 양의 데이터를 전달하기 위해서는, 직렬 채널에 대한 데이터 레이트는 복수의 병렬 채널의 각각에 인가되는 것보다는 더 빨라야 한다. 그러므로, 직렬 전달 스킴이 다수의 어플리케이션(예를 들면, 공간이 제한되거나 핀 개수가 고려 중인 경우)에 유리하지만, 직렬 채널을 통해 수락가능한 처리량을 얻는데 이용되는 비트 전달 레이트가 중요할 수 있다.
또한, 실제 직렬 전달 레이트는 고속 클럭 소스의 제한된 가용성, 송신 및 수신 디바이스의 속도 제한, 및/또는 다른 인자들에 의해 제한될 수 있다. 결과적으로, 다수의 데이터 시그널링 스킴은 현재 데이터 메시지를, 복수의 직렬 데이터 채널에 걸쳐 동시에 송신될 수 있는 다른 "워드들"로 서브분할한다. 그러한 하이브리드 스킴은 전체 처리량을 희생시키지 않고, 전통적인 병렬 스킴과 통상적으로 연관된 더 낮은 비트 레이트와 함께, 전통적인 병렬 스킴과 비교할 때, 감소된 핀 카운트의 장점을 제공한다. 그러나, 독립적으로-복원된 직렬 데이터 워드의 수집으로부터 원래의 메시지를 재구성하는데 있어서 어려움이 발생할 수 있다. 이들 어려움들은 복수의 직렬 채널에 의해 나타나는 경로 지연(스큐)을 가변시키는 것으 로부터 기인할 수 있고, 이에 대해 공급 전압의 변동, 온도 및 다른 환경 영향의 변동, 및 다른 요인으로부터 기인할 수 있다.
따라서, 복수-핀 비동기 데이터 인터페이스로 전달된 복수의 직렬 비트스트림을 재동기화하기 위한 기술을 공식화하는 것이 바람직하다. 뿐만 아니라, 직렬 비트스트림을 재동기화하기 위한 디바이스 및 시스템을 생성하는 것이 바람직하다. 또한, 본 발명의 다른 바람직한 특징 및 특성들은 첨부된 도면 및 상기 기술분야 및 배경과 조합한, 이하의 상세한 설명 및 첨부된 청구의 범위로부터 명백하게 될 것이다.
이하에서는, 본 발명은 유사한 참조부호는 유사한 구성요소를 나타내는 이하의 도면을 참조하여 설명될 것이다.
도 1은 복수의 직렬 비트 스트림을 동기화하기 위한 시스템의 예의 블록도이다.
도 2는 예로 든 비트 동기화 모듈의 블록 로직도이다.
도 3은 직렬 비트스트림을 비트 동기화하기 위한 프로세스의 예의 플로우차트이다.
도 4는 예로 든 워드 동기화 모듈의 블록도이다.
도 5는 프레임-대-데이터 채널 오프셋을 결정하기 위한 프로세스의 예의 플로우차트이다.
도 6은 데이터 워드를 프레이밍 신호로 상관하기 위한 프로세스의 예의 플로 우차트이다.
도 7은 데이터 동기화 시스템의 다른 실시예의 블록도이다.
이하의 상세한 설명은 본질적으로 단지 예에 불과하고 본 발명 또는 본 발명의 적용 및 이용을 제한하려는 것이 아니다. 또한, 이전 기술분야, 배경, 요약 또는 이하의 상세한 설명에 제공된 임의의 명시적 또는 함축된 이론에 의해 한정되려는 것은 아니다.
다양한 실시예에 따르면, 복수-핀 비동기 직렬 인터페이스에서 수신된 다양한 직렬 비트 스트림은 서로에게 비트, 워드 및 프레임 동기화되어, 하나 이상의 병렬 데이터 출력을 생성한다. 멀티-핀 비동기 직렬 인터페이스는 통상 적어도 하나의 프레이밍 채널 및 임의의 개수의 직렬 데이터 채널을 포함하고, 프레이밍 채널은 데이터 워드 또는 다른 적절한 프레임들간의 경계 표시를 제공한다. 수신된 직렬 비트스트림 각각은 독립적인 비트 동기화 모듈내에서 서로 비트 동기화되어 복원된 직렬 데이터를 생성한다. 그리고나서, 워드 동기화 모듈은 동기화된 직렬 데이터 스트림을 추가적으로 처리하여 워드-정렬된 병렬 출력 데이터를 생성한다. 워드 동기화 모듈은 각 데이터 채널과 프레이밍 채널간의 오프셋을 트랙킹함으로써 직렬 데이터 스트림간의 스큐를 적절하게 해결한다. 채널간의 상대 타이밍 차이를 결정함으로써, 시스템은 후속 동작 동안에 스큐를 보상할 수 있다. 여기에 제시된 개념은 임의의 통신 인터페이스 어플리케이션(예를 들면, 임의의 무선 주파수(RF) 트랜시버, 베이스대역 모뎀, 등간의 임의의 인터페이스)에 유용하고, 다른 실시예 들이 다른 형태의 집적 회로, 이산 로직, 소프트웨어 및/또는 하드웨어 및 소프트웨어 컴포넌트의 임의의 조합으로 구현될 수 있지만, 상보형 금속 산화물 반도체(CMOS) 또는 다른 집적 회로 기술로 용이하게 구현될 수 있다.
이제, 도면 그림 및 도 1을 참조하면, 복수-핀 비동기 인터페이스(106)에서 수신된 임의의 개수의 직렬 비트스트림(106A-Z)을 동기화하기 위한 시스템(100)의 실시예는 워드 동기화 모듈(105)뿐만 아니라, 각 직렬 비트스트림(106A-Z)에 대한 비트 동기화 모듈(102A-Z)을 적합하게 포함한다. 각 비트 동기화 모듈(102A-Z)은 인터페이스(106)에서 수신된 직렬 비트스트림(106A-Z) 중 하나를 수신하고 고정된 데이터 레이트로 직렬 데이터 스트림(104A-Z)을 복원한다. 워드 동기화 모듈(105)은 각 동기화된 비트 스트림(104A-Z)을 수신하고 하나 이상의 출력 스트림(108)을 적절하게 생성한다. 출력 스트림(108)은 임의의 개수의 병렬 데이터 스트림(108A-Z) 등을 다양하게 포함할 수 있다.
다양한 실시예에서, 각 비트 동기화 모듈(102A-Z) 및 워드 동기화 모듈(106)은 인커밍 직렬 데이터 스트림(106A-Z)에 대해 데이터 레이트의 정수배(N)에 거의 대응하는 주파수로 클럭 신호(116)를 수신한다. 이러한 문맥에서, "거의"는 제조, 설계 및 구현 불완전, 그리고 환경적 변동 및 다른 요인으로 인해 일부 변동이 존재할 수 있다는 것을 인정하려는 것이다. 결과적으로, 신호(116)의 주파수는 여기에 전달되는 개념을 거의 포함하도록 데이터 레이트의 정수배를 정확하게 매칭할 필요가 없다. 클럭 신호(116)는 임의의 크리스털, 오실레이터, 위상 동기 루프(PLL) 또는 다른 클럭 소스(110)를 이용하는 것과 같이 임의의 편리한 방식으로, 또는 적절한 로직(116)을 이용하여 클럭 소스(110)로부터 수신된 임의의 신호(114)를 승산하거나 다르게는 처리함으로써 임의의 클럭 생성 회로 또는 로직으로부터 생성될 수 있다.
비트 동기화 모듈(102A-Z)은 원하는 데이터 레이트로 직렬 데이터 스트림(104)을 생성할 수 있는 임의의 집적, 이산, 소프트웨어, 펌웨어 및/또는 다른 로직으로 구현된다. 다양한 실시예에 따르면, 각 비트 동기화 모듈(102A-Z)은 클럭 신호(116)를 이용하여 연관된 인커밍 비트 스트림(106A-Z)을 오버샘플링한다. 클럭 신호(116)가 인커밍 스트림(106A-Z)에 대한 비트 레이트의 정수배(N)에 적절히 대응하므로, 클럭 신호(116)를 이용한 오버샘플링은 각 인커밍 비트 주기를, 활동이 검출될 수 있는 N개의 다른 위상으로 효율적으로 분리시킨다. 각 위상 내에서 발생하는 비트 변이(예를 들면, 로우에서 하이로 또는 하이에서 로우로 상태가 변경함)를 식별함으로써, 그 위상 내에서 발생하는 활동 레벨에 기초하여 위상들 중 하나가 선택될 수 있다. 즉, 정확한 데이터 값을 가질 것으로 보이는 위상(나머지 위상과 비교할 때)은 각 위상 내에서 발생하는 활동을 모니터링함으로써 용이하게 식별될 수 있다. 특정 선택 알고리즘은 실시예에 따라 가변될 수 있지만, 샘플링 위상은 적절한 개수의 이전 비트 주기내에서 발생하는 비트 변이의 부족에 기초하여 선택될 수 있다. 다르게는, 샘플링 위상은 특정 위상 동안에 발생하는 최소 활동에 기초하여 또는 임의의 다른 적절한 기술에 기초하여 선택될 수 있다. 그리고나서, 데이터는 선택된 위상으로부터 추출되어 입력 데이터 스트림의 정확한 표현을 생성한다. 선택된 위상은 예를 들면, N-탭 지연 라인의 적절한 탭 또는 유 사한 구조로부터 추출될 수 있다. 더구나, 추가적인 지연은 선택된 위상에 응답하여 적용되어, 출력 직렬 데이터 스트림(104A-Z)이 일정한 데이터 레이트로 워드 동기화 모듈(105)에 제공되는 것을 보장한다. 인커밍 데이터 스트림(106A-Z)의 각 위상을 연속적으로 오버샘플링하고 분석함으로써, 직렬 데이터가 효율적이고 지속적인 방식으로 식별되고 추출되어, 정확한 페이징(phasing) 및 비교적 일정한 출력 데이터 레이트를 보장한다.
워드 동기화 모듈(105)은 비트-동기화된 데이터 스트림(104A-Z)을 수신하고 거기에 응답하여 출력 스트림(108A-Z)을 생성할 수 있는 임의의 로직, 회로 또는 다른 모듈이다. 다양한 실시예들에서, 워드 동기화 모듈(105)은 수신된 직렬 스트림(104A-Z) 각각을, 워드 동기화 모듈(105)에 미리 프로그래밍되거나 초기 트레이닝 주기 동안에 적절하게 수신된 주지의 동기화 워드(107)를 상관시킴으로써 비트-동기화된 직렬 스트림(104A-Z)으로부터 병렬 워드(108A-Z)를 복원한다. 후속 동작 동안에, 동기화 워드(107)와 각 스트림(104A-Z)간의 주지의 상관은 데이터 워드 경계를 식별하는데 이용될 수 있다. 다양한 실시예들은 하나 이상의 직렬 채널(예를 들면, 도 1에서 채널(106A))을 송신 프레이밍 정보에 전담시킴으로써 인터페이스(106)를 통해 전달된 워드에 관한 프레이밍 정보를 식별한다. 그러한 정보는 예를 들면 다른 직렬 라인(106B-Z) 상에서 송신된 데이터 워드의 최상위 또는 최하위 비트의 식별을 포함한다. 프레이밍 경계는 임의의 방식으로 표시될 수 있다. 다양한 실시예에서, 프레이밍 채널(106A)은 인터페이스(106)가 액티브한 동안에 미리 정의된 비트 패턴의 전달 워드(들)를 수신한다. 이러한 비트 패턴은, 패턴이 모호 성을 방지하기 위해 워드 경계를 제외하고 반복하지 않는다면, 다수 임의적으로 선택될 수 있다. 8-비트 워드, 예를 들면 "1000000"또는 "0100000"은 수용가능한 프레이밍 패턴이지만, "10001000"또는 "10101010"은 워드 경계를 식별하는데 어려움을 생성할 것이다. 다수의 실시예들은 프레이밍 채널(106A) 상에서 단일-워드 비트 패턴을 계속적으로 반복하지만, 다른 실시예들은 가변 패턴, 복수 패턴, 및 디바이스 동작 동안에 구성가능한 패턴, 및/또는 임의의 다른 특징을 포함할 것이다.
동작시, 수신된 데이터를 오버샘플링하고, 데이터를 추출하기 위한 적절한 위상을 선택하며, 추출된 직렬 비트 스트림을 공통의 데이터 레이트로 워드 동기화 모듈(105)에 제공하는 비트 동기화 모듈(102A-Z)에서 각 직렬 비트스트림(106A-Z)이 수신된다. 그리고나서, 워드 동기화 모듈(105)은 비트-동기화된 데이터 스트림(104A-Z)로부터 병렬 데이터 워드(108A-Z)를 적절하게 조립한다. 다양한 실시예에서, 워드 동기화 모듈(105)은 초기 상관 트레이닝 모드 동안에 각 데이터 채널(106B-Z)과 프레이밍 채널(106A) 간의 오프셋을 결정한다. 이들 오프셋은 후속 동작 동안에 비트-동기화된 직렬 데이터의 워드 경계를 식별하는데 이용될 수 있다.
인터페이스(106)를 통해 수신된 데이터 및 프레이밍 신호는 임의의 적절한 방식으로 적절하게 비트 동기화된다. 이제, 도 2를 참조하면, 예로 든 비트 동기화 모듈(102x, 도 1에서 비트 동기화 모듈(102A-Z) 중 임의의 하나를 나타냄)은 적절하게 활동 검출 모듈(202), 위상 선택 모듈(204), 및 데이터 추출 모듈(206)을 포함한다. 비트 동기화 모듈(102x)은 또한 지연 모듈(208)을 적절하게 포함한다. 각 모듈(202, 204, 206)은 여기에 기재된 특징을 수행할 수 있는 임의의 집적, 이산, 소프트웨어 및/또는 펌웨어 컨스트럭트로 구현된다. 도 2에 명시적으로 도시되어 있지 않지만, 처리 모듈(202, 204, 206, 208)의 일부 또는 모두는 공통 클럭 신호(116, 도 1)를 수신하여 입력 스트림(106A-Z)의 오버샘플링 및 동기화를 제공한다.
활동 검출 모듈(202)은 수신된 직렬 데이터(106)의 비트 변이를 검출할 수 있는 임의의 로직이다. 비트 변이는 예를 들면, 저-대-고 및/또는 고-대-저 변이를 포함하고, 임의의 방식으로 검출될 수 있다. 도 2에 도시된 바와 같이, 활동 검출 모듈(202)의 예로 든 실시예는 펄스 발생기(210), 및 각각이 오버샘플링된 비트 주기의 "N"위상 중 하나에 대응하는 임의의 개수의 병렬 채널을 적합하게 포함한다. 각 채널은 변이 검출기(214A-Z) 및 적절한 지연(212B-Z)을 포함하여 비트주기의 각 위상 내에서 발생하는 펄스를 식별한다. 펄스 발생기(210)는 신호 데이터(106x)에서 관찰되는 비트 변이에 응답하여 펄스 또는 다른 적합한 신호를 생성한다. 그리고나서, 펄스 발생기(210)에 의해 생성된 신호는 신호가 생성되었던 위상에 대응하는 검출기 모듈(214A-Z) 중 하나에 의해 관찰된다. 추가 실시예들에서, 검출기 모듈(214A-Z)은 적절한 개수(P)의 이전 비트 주기 동안에 임의의 변이가 발생했는지(예를 들면, 임의의 펄스/신호가 발생기(210)로부터 수신되는지)를 검출하고, 여기에서 P는 임의의 양의 정수이다. 그러한 실시예들에서, 각 검출기 모듈(214A-Z)은 이전 P 비트 주기 동안에 관심사가 되는 위상 동안에 임의의 활동이 발생했는지 여부를 효율적으로 결정한다. 검출기 모듈(214A-Z)은 각 위상 내에 서 검출된 활동에 응답하여 적절한 데이터 신호 또는 다른 표시자를 위상 선택 모듈(204)에 제공한다.
위상 선택 모듈(204)은 동기화된 직렬 데이터를 추출하는데 적합한 입력 데이터(106x)의 N개의 오버샘플링된 위상 중 하나를 식별할 수 있는 임의의 회로, 로직 또는 다른 모듈이다. 다양한 실시예들에서, 위상 선택 모듈(204)은 그 위상 내에서 발생하는 활동에 기초하여 적절한 위상을 선택하는 로직(216)을 포함한다. 이러한 선택은 임의의 알고리즘 또는 기준에 따라 수행될 수 있다. 예를 들면, 적절한 개수의 이전 비트 주기에 걸쳐 최소 개수의 비트 변이를 가지는 위상이 선택될 수 있다. 다르게는, 선택된 위상은 하나 이상의 비트 변이가 발생한 다른 위상을 선행하거나 뒤따르는 위상이 되도록 채택될 수 있다. 데이터를 캡쳐하는데 적합한 하나 이상의 위상을 식별하는 하나의 기술은 넓은 어레이의 다른 실시예들에 이용될 수 있다.
선택 모듈(204)의 다양한 실시예들은 추가적으로 추출 및/또는 지연 모듈(206, 208)내의 스위칭 및/또는 데이터 추출 탭을 제어하는 하나 이상의 카운터(220, 222)를 조정함으로써 선택된 위상을 식별한다. 예를 들면, 카운터 조정 로직(218)은 위상 선택 로직(216)으로부터 선택된 위상의 표시를 적절하게 수신한다. 다양한 실시예들에서, 표시는 로직(216) 및 로직(218)을 상호접속하는 하나 이상의 신호 라인에 걸쳐 제공된다. 그러한 실시예들에서, 선택된 상태를 나타내는데 이용되는 병렬 신호 라인의 개수는 적절하게 클럭 승산기의 밑-2인 로그(즉, log2N)와 동일하거나 이를 초과할 수 있다. 다르게는, 선택된 위상은 메모리, 레지스터 또는 유사한 컨스트럭트에 저장된 디지털 값으로 표현되거나 임의의 다른 방식으로 표현될 수 있다. 카운터 로직(218)은 카운터(220, 222)를 적절하게 조정하여 입력 스트림(106x)으로부터 선택된 상태를 추출한다. 로직(218)은 예를 들면 카운터(220, 222)를 증가시키거나 감소시켜, 선택된 위상으로부터 데이터를 추출하거나 타이밍을 보상하는 추출 모듈(206) 및/또는 지연 모듈(208) 상의 적절한 탭을 식별한다. 카운터 조정 로직(218) 및 카운터(220, 222)와 관련된 추가적인 세부사항은 이하에 제공된다.
추출 모듈(206)은 입력 스트림(106x)의 선택된 위상으로부터 데이터 값을 캡쳐할 수 있는 임의의 회로, 로직 또는 다른 모듈이다. 다양한 실시예들에서, 추출 모듈(206)은 데이터를 추출하기 위해 적합한 개수의 데이터 "탭"을 포함하는 태핑된 지연 라인 또는 유사한 구조이다. 다양한 실시예들에서, 추출 모듈(206)은 적어도 N개의 데이터 탭을 포함하고, 여기에서 각 탭은 버퍼 또는 유사한 지연 소자에 의해 후속 탭으로부터 분리되어 위상들간에 적합한 시간 도메인 분리를 제공한다. 입력 스트림(106x)은 추출 모듈(206)에 제공되어 위상 선택 모듈(204)로부터 수신된 제어 신호를 이용하여 선택된 위상을 캡쳐한다.
다양한 실시예들에서, 후속 지연 모듈(208)은 추출된 데이터 신호를 수신하고 적절한 시간 도메인 지연을 제공하여 추출 모듈(204)의 위상 선택을 보상한다. 즉, 위상 선택 지연이 추출 모듈(206)에서 감소되므로, 추가적인 지연이 지연 모 듈(208)에 의해 제공되어, 출력 신호(104)의 타이밍 및 페이징이 비교적 일정하게 유지되는 것을 보장한다. 지연 모듈(208)은 추출 모듈(206)에 이용되는 것과 유사한 태핑된 지연 라인으로 구현될 수 있다. 다양한 실시예들에서, 지연 모듈(208)은 그러나, 추출 모듈(206)보다 더 많은 데이터 탭을 포함하여, 위상 조정 타이밍에 대한 정확한 보상을 제공한다.
그러므로, 비트 동기화 모듈(102)로부터 출력된 결과적인 직렬 비트 스트림(104x)은 기준 클럭 신호(116)에 적절하게 클록킹되고, 입력 스트림(106x)의 신뢰가능한 위상으로부터 추출되며, 일정한 위상 동기화를 위해 조정될 수 있다. 동기화된 비트 스트림(104x)은 워드 동기화 모듈(105, 도 1)에 제공되거나 다르게는 적절하게 처리될 수 있다.
이제 도 3을 참조하면, 공통 비동기 인터페이스 상에서 수신된 다른 비트 스트림으로 직렬 비트스트림을 비트 동기화하기 위한 프로세스(300)의 예는 직렬 비트스트림의 각 위상 내에서 발생하는 활동을 검출하는 단계(단계 304), 검출된 활동에 기초하여 위상들 중 하나를 선택하는 단계(단계 308), 및 선택된 위상으로부터 데이터를 추출하는 단계(단계 322)를 포함한다. 도 3은 위상 및 지연 카운터(도 2에서 소자(220, 222))를 이용하여 위상 선택 및 추출을 위한 프로세스(300)의 예를 도시하고 있지만, 등가 실시예들은 넓게 가변되는 구조 및 프로세스를 포함할 수 있다. 그러므로, 도 3의 플로우차트는 추가되거나 다르게는 임의의 방식으로 변형될 수 있는 입력 스트림의 선택된 위상으로부터 데이터를 추출하기 위한 하나의 예로 든 프로세스의 논리적 표현이다.
상기 설명된 바와 같이, 프로세스(300)는 입력 비트스트림(106)의 각 위상을 평가하여 그 위상내에서 발생하는 비트 변이 또는 다른 활동을 식별함으로써 시작한다(단계 302). 각 위상은 공통 클럭 신호(116, 도 1)의 하나의 클럭에 대응하므로, 입력 비트 스트림(106)의 비트 레이트에 대한 신호(116)의 주파수의 비율에 따라 적절한 개수의 위상을 생성한다.
각 위상 내에서 발생하는 활동은 도 2에 기재된 펄스 생성 및 검출 스킴과 같이, 임의의 방식으로 검출될 수 있다(단계 304). 그리고나서, 선택된 위상은 임의의 적합한 기술에 따라 결정된다. 도 3에 도시된 예로 든 실시예에서, 각 위상 내에서 발생하는 변이는 적절한 개수(P)의 이전 비트 주기에 걸쳐 모니터링되고(단계 306), 그 시간 동안에 어떠한 비트 변이도 식별되지 않는 경우에 액티브 위상이 선택된다(단계 308). 이전 비트 주기 동안에 하나 이상의 변이가 식별되는 경우, 후속 위상이 평가된다(단계 310). 그러나, 등가 실시예에서, 선택된 위상은 하나 이상의 변이로 위상을 식별하고 변이성 위상의 이전 또는 이후의 위상을 선택함으로써 결정될 수 있다. 선택된 위상은 다르게는 이전 비트 주기 내에 발생하는 최소 개수의 비트 변이를 가지는 위상으로서 결정되거나, 입력 비트 스트림(106)의 다양한 위상 내에서 발생하는 레벨 활동에 기초하여 임의의 다른 기술에 따라 결정될 수 있다.
도 3은 선택된 위상이 추출 및 지연 모듈(206, 208) 상에서 적절한 데이터 탭을 선택하도록 추가 처리되는 것을 도시하고 있다. 도 3에 도시된 실시예에서, 선택된 위상은 임의의 적절한 값(예를 들면, 중간 위상)으로 초기화되고, 단계 302 내지 310의 후속 반복은 이전에 선택된 위상을 업데이트하는데 이용된다. 단계 312-320에서, 카운터(220, 222, 도 2)는 적절하게 증가 또는 감소되어 추출 모듈(206)에서 선택된 위상으로부터 데이터를 획득하고 모듈(208)에서 대응하는 지연을 제공한다. 따라서, 위상 카운트의 증가는 지연 카운트의 감소에 대응하고, 그 반대로도 적용된다. 도 3에 도시된 예로 든 프로세스(300)는 선택된 위상이 이전에 선택된 위상의 1-위상 "윈도우"의 외부에 있는 경우(단계 312), 또는 선택된 위상이 이전에 선택된 위상의 1-위상만큼 전진해 있는 경우에 위상 카운트를 증가시킨다(단계 318). 다른 실시예는 그 대신에, 선택된 위상이 "윈도우"의 외부에 있거나 윈도우 개념을 전적으로 제거하는 경우에 위상 카운트를 감소시킨다. 프로세스(300)는 유사하게, 선택된 위상이 이전에 선택된 위상보다 이전인 경우(단계 316)에 위상 카운트를 감소시킨다(단계 320). 그리고나서, 카운터(220, 222)내에 배치된 값들은 추출 모듈(206)(단계 322) 및/또는 지연 모듈(208)(단계 324)의 선택된 데이터 탭으로부터 데이터를 추출하는데 적절하게 이용될 수 있다. 또한, 임의의 위상 선택/결정 스킴이 넓은 어레이의 다른 실시예들에 이용될 수 있다.
상기 기재된 실시예는 각 위상으로부터 데이터를 정확하게 추출하는 동안에 직렬 비트 스트림간의 위상 동기화를 제공하는 멀티-핀 비동기 인터페이스와 함께 이용하기에 적합한 비트 동기화 기술을 강조한다. 상기 설명된 개념의 다양한 구현은 종래의 디지털 회로를 이용하여 용이하게 구현됨으로써, 구현하기가 성가신 아날로그 전하 펌프 또는 전압 제어형 오실레이터(VCO) 회로에 대한 필요성을 감소시키거나 제거한다. 또한, 위상 동기화된 직렬 비트스트림은 워드 동기화 모 듈(105)의 다양한 실시예에 이용되는 회로를 크게 단순화시킬 수 있다. 그럼에도 불구하고, 비트 동기화 모듈(102A-Z)의 다른 실시예들은 아날로그 또는 디지털 위상 동기 루프(PLL) 및/또는 임의의 다른 위상 선택 기술을 적절하게 포함할 수 있다.
그리고나서, 비트-동기화된 데이터 및 프레이밍 정보는 워드 동기화 모듈(105)에 인가되어, 각 비트 스트림을 적절한 워드 또는 프레임 경계에 상관시키거나 직렬 데이터로부터 병렬 출력(108A-Z)을 추출한다. 이제 도 4를 참조하면, 예로 든 워드 동기화 모듈은 직렬 입력 스트림(104A-Z) 각각에 대한 버퍼(402) 및 워드 검색 모듈(404) 뿐만 아니라 데이터 스트림(104B-Z) 각각에 대한 병렬 워드 추출 모듈(408)을 포함한다. 각 직렬 라인(104A-Z)에 도달된 비트는 직렬 라인(104A-Z)에 대응하는 버퍼(402)내에 순차적으로 시프트되거나 다르게는 저장된다. 워드 검색 모듈(406A-Z)은 연관된 버퍼(402A-Z) 내에 저장된 미리 결정된 비트 패턴을 식별하고 오프셋 값(410, 420B-Z)을 생성하여 미리-결정된 패턴의 로케이션을 버퍼내에 표시한다. 버퍼(408) 내에서 미리 결정된 패턴의 로케이션을 추적함으로써, 기준 채널에 대한 각 데이터 채널의 스큐가 결정될 수 있다. 그리고나서, 상관/초기화 주기 동안에 식별되는 오프셋 값은 후속 동작 동안에 비트 스큐를 보상하는데 이용될 수 있다. 도 4에 도시된 모듈(402, 404, 406 및 408) 각각은 신호(116, 도 1) 또는 다른 클럭 신호를 이용하여 적절하게 클럭킹될 수 있다.
데이터 버퍼(402A-Z)는 적어도 짧은 기간 동안에 하나 이상의 직렬 비트스트림(104A-Z)의 일부분을 유지할 수 있는 임의의 메모리, 레지스터 또는 다른 구조이 다. 다양한 실시예들에서, 버퍼(402A-Z)는 시프트 레지스터로서 동작되고 유지되며, 버퍼(402A-Z)는 수신된 최종 비트값의 유한 레코드를 홀딩하고, 채널(104A-Z)에 최종적으로 도달한 각 직렬 비트는 이전 비트 사이클에서 수신된 비트로 대체된다. 8비트 시프트 레지스터 구현에서, 예를 들면, 새롭게 도착한 비트는 비트 0(도 4에서 버퍼(402A-Z)의 좌측 에지에 도시됨)을 차지하고, 비트 7(도 4에서 버퍼(402A-Z)에서 우측 에지에 도시됨)을 향하여 시프트된다. 그리고나서, 이러한 예에서, 버퍼(402)는 이전 8비트 사이클 동안에 직렬 채널(104) 상에서 수신된 각 비트값을 저장하고, 비트는 제9 비트 사이클 동안에 버퍼(402)로부터 제거된다. 이하에 더 충분하게 설명된 바와 같이, 직렬 채널(104A-Z)간의 비트 상관은 버퍼(402A-Z) 내에 저장된 주지된 비트스트림의 상대 위치를 평가함으로써 결정될 수 있고, 이들 상관은 각 직렬 비트스트림의 워드 경계를 추적하는데 이용될 수 있다. 버퍼(402)는 프레이밍 채널(104A)뿐만 아니라 각 데이터 채널(104B-Z)에 대해 제공된다.
각 버퍼(402)의 크기는 실시예에 따라 다르지만, 대부분의 실시예는 직렬 채널이 최대 양의 또는 음의 스큐를 겪고 있는 경우라도 완전한 데이터 워드의 존재를 보장하도록 버퍼(402) 내에 충분한 데이터를 유지할 것이다. 46MHz 비트 전달 레이트로 직렬 데이터를 송신하고 +1/35nsec의 최대 예상 핀간 스큐를 가지는 실시예에서, 예를 들면, 버퍼(402)는 수신된 데이터 워드의 양측에서 적어도 2개의 비트(반올림되어, 46MHz * 35nsec에 대응함)를 유지하도록 구성될 수 있다. 워드는 본 예에서 그 길이가 4 비트인 것으로 정의되는 경우, 버퍼(402)는 적어도 전체 8 비트에 대해, 4개의 데이터 비트와 중앙으로-배치된(예를 들면, "제로"스큐) 워드의 양측 상의 2개의 데이터 비트를 유지할 만큼 충분히 커서, 전체 데이터 워드가 버퍼내에 유지된 것을 보장한다. 본 예에 이용된 특정 파라미터는 예로 든 것이고, 실제 실시예들은 여기에 제시된 파라미터와 크게 다를 수 있다. 다른 실시예들은 8 또는 16 비트 워드, 예를 들면 임의의 다른 크기의 데이터 워드에 기초할 수 있다. 유사하게, 최대 스큐에 대한 데이터 송신 레이트 및 값은 환경 조건 및 다른 인자에 따라 크게 가변될 것이다.
프레임 워드 검색 모듈(404) 및 데이터 상관 워드 검색 모듈(406B-Z)은 하나 이상의 버퍼(402A-Z)내의 미리-결정된 비트 시퀀스의 로케이션을 식별할 수 있는 임의의 회로, 소프트웨어 또는 다른 로직이다. 예로 든 실시예에서, 워드 검색 모듈(404, 406B-Z)은 종래의 하드웨어 및/또는 소프트웨어 비교기 로직으로 구현된다.
직렬 비트스트림(104A-Z)내에 존재하는 미리-결정된 시퀀스(들)는 임의의 방식으로 결정될 수 있다. 일부 실시예들에서, 미리 결정된 비트 시퀀스는 단순히 상태를 변경하여, 데이터 워드의 최상위(또는 최하위) 비트의 로케이션을 나타낸다. 다르게는, 비트는 데이터 워드의 지속기간 동안에 주지된(예를 들면, 하이 또는 로우) 상태에 배치되고, 그런 후 데이터 워드의 송신이 완료된 경우에 반대 상태로 놓여진다. 또 다른 실시예들에서, 하이 및 로우 비트의 비트 시퀀스는 워드 또는 프레임 경계를 나타낼 수 있는 임의의 방식으로 공식화될 수 있다. 용어 "미리 결정된"은 본 문맥에서, 비트 시퀀스 또는 스킴이 하나 이상의 워드 검색 모 듈(404, 406) 또는 시스템(100)의 다른 컴포넌트에 의해 적절하게 해석될 수 있는 의미있는 정보를 전달할 수 있다는 것을 단순히 의미한다.
각 워드 검색 모듈(404, 406B-Z)은 버퍼(402A-Z) 내에서 미리 결정된 비트 시퀀스의 실제 위치와 기준 로케이션간의 차이를 나타내는 "오프셋"을 식별할 수 있다. 기준 로케이션은 임의의 방식으로 정의될 수 있고, 데이터 버퍼(402A-Z) 내에서 처음, 마지막, 중앙 또는 임의의 다른 로케이션에 대응할 수 있다. 예를 들면, 버퍼(402A-Z)의 중앙 로케이션은 "제로 스큐"의 포인트로 지정되고, 후속 비트 오프셋은 이러한 다소 임의로-선택된 기준점에 대해 결정된다. 계산된 오프셋은 각 직렬 채널(104) 상에 존재하는 비트 스큐의 양을 나타내고 후속 동작 동안에 스큐를 정정하는데 이용될 수 있다. 일관성을 위해, 이하의 예들은 버퍼(402A-Z)의 중앙 비트(비트 2:5)가 기준 "제로 스큐"포인트이라고 가정하지만, 다른 실시예들은 오프셋 계산 및 상관 결정을 위한 기준으로서 버퍼(402A-Z)내의 임의의 다른 위치를 이용할 수 있다.
도 4에 도시된 실시예에서, 프레임 워드 검색 모듈(404)은 프레이밍 버퍼(402A)내에서 반복하는 비트 시퀀스의 로케이션을 간단히 식별한다. 반복하는 비트 시퀀스는 상기 더 상세하게 기술된 바와 같이, 프레임/워드 경계를 나타낼 수 있는 임의의 패턴일 수 있다. 프레임 시퀀스는 다수의 실시예들에서 단순히 반복하므로, 이러한 특징이 다른 실시예들에 용이하게 포함될 수 있더라도, 프레임 워드 검색 모듈(404)은 가변 패턴을 수용하도록 프로그래밍 가능할 필요는 없다. 도 4에 도시된 예에서, 미리 결정된 4-비트 프레이밍 시퀀스는 "1101"이 되도록 임의 적으로 선택되고, 이는 비트 3:6 상의 프레임 버퍼(402A)상에 존재한다. 이러한 로케이션은 중앙 "제로 스큐"로케이션의 하나의 비트 뒤에 대응하고, 이는 도 4에 도시된 시간에서 하나의 비트 주기의 프레임 오프셋(410)을 나타낸다.
유사하게, 데이터 워드 검색 모듈(406B-Z)은 대응하는 데이터 버퍼(402B-Z)내의 미리 결정된 비트 패턴의 존재를 적절하게 식별한다. 다양한 실시예들에서, 데이터 워드 검색 모듈(406B-Z)은 워드 동기화 모듈(105)이 상관 모드에 있는 경우에 주로 동작 상태에 있고, 이는 시스템 초기화 동안에, 통신 세션 또는 송신의 초기화에, 또는 임의의 다른 적절한 시각에 발생할 수 있다. 상관 모드(인에이블 신호(407) 등으로 표시될 수 있음) 동안에, 상관 워드 검색 모듈(406B-Z)은 상기 간단히 설명된 바와 같이, 하나 이상의 데이터 상관 워드(107)를 구비하고 있다. 이들 데이터 상관 워드는 원격 송신기, 시스템 컨트롤러 또는 임의의 다른 소스로부터 수신될 수 있고, 하나 이상의 직렬 데이터 채널(106B-Z) 상에서 송신되는 반복되는 패턴을 나타낸다. 그리고나서, 데이터 워드 검색 모듈(406B-Z)은 상관 워드 패턴과 매칭하는 연관 버퍼(402B-Z)에 저장된 데이터의 로케이션을 식별한다. 도 4에 도시된 실시예에서, 예를 들면, 상관 워드(107)는 "1000"인 것으로 가정되고, 이는 버퍼(402B)의 비트 2:5 및 버퍼(402Z)의 비트 1:4 상에서 발견된다. 이러한 예에 대해 "제로 스큐"기준으로서 중앙 로케이션 2:5를 이용하는 경우, 버퍼(402B)의 데이터는 데이터 오프셋(402B)에 대한 값을 나타내고, 버퍼(402Z)의 데이터는 상기 관찰된 프레임 오프셋(410)으로서 반대 방향의 1-비트 오프셋(402Z)을 나타낸다. 이러한 정보로부터, 버퍼(402B)의 데이터는 프레임 버퍼(402A)의 데이터로부 터 1비트 주기만큼 지연되고 버퍼(402Z)의 데이터가 프레임 버퍼(402A)의 데이터로부터 2비트 주기만큼 지연된다는 것이 용이하게 결정될 수 있다. 이러한 정보는 워드-정렬된 병렬 데이터의 후속 검색에 이용하기 위해 하나 이상의 병렬 워드 추출 모듈(408B-Z)에 제공될 수 있다. 상관 모드가 완료된 후, 데이터 워드 검색 모듈(406B-Z)은 디스에이블되거나, 이전 값 등에 기초하여 오프셋 값(420B-Z)을 계속해서 제공하는 시퀀서로서 동작할 수 있다. 오프셋 정보를 결정하기 위한 예로 든 프로세스에 관한 추가적인 세부사항은 도 5를 참조하여 이하에 설명된다.
상관 주기 동안에 얻어지는 오프셋 정보는 후속적으로 처리되어 버퍼(402B-Z)로부터 병렬 데이터를 적절하게 추출할 수 있다. 병렬 워드 추출 모듈(408B-Z) 각각은 하나 이상의 연관 버퍼(402B-Z)의 적절한 로케이션으로부터 병렬 데이터를 추출한다. 병렬 워드 추출 모듈(408B-Z)은 종래의 디지털 회로 및/또는 소프트웨어 로직으로 적절하게 구현된다. 다양한 실시예들에서, 각 워드 추출 모듈(408B-Z)은 버퍼(402B-Z)로부터 직렬 또는 병렬로 데이터 비트를 수신하고, 데이터 비트를 병렬 데이터 스트림(108A-Z)으로서 적절하게 제공한다. 워드 추출 모듈(408B-Z)은 프레임 워드 검색 모듈(404, 또는 이하에 더 상세하게 설명되는 바와 같이, 시퀀서 또는 다른 모듈)로부터 프레임 오프셋(410)을 적절하게 수신하여, 수신된 병렬 데이터의 워드 경계를 나타낸다. 이하에 더 상세하게 설명되는 바와 같이, 워드 경계는 프레임 오프셋(410)의 특정 값(예를 들면, 제로)에 의해 표시될 수 있다. 그러한 실시예들에서, 각 병렬 워드 추출 모듈(480B-Z)은 프레임 오프셋(410)의 특정 값이 발생하는 경우에 그 연관 버퍼(402B-Z)로부터 데이터 워드를 획득한 다.
획득된 버퍼(402B-Z)내의 데이터 워드의 적절한 로케이션은 이전에 결정된 오프셋 값(420B-Z)으로부터 유추될 수 있다. 상기로부터 예를 계속하면, 프레임 오프셋(410)의 제로 값은 프레임/워드 경계가 프레이밍 채널(104A) 상에서 만났다는 것을 나타낸다. 채널(104A)과 채널(104B)간의 오프셋이 1비트 사이클인 것으로 이전에 결정되었으므로, 병렬 워드 추출 모듈(408B)은 버퍼(402B)의 비트 1:5가 완전한 데이터 워드를 포함하는 것으로 결정한다. 유사하게, 병렬 워드 추출 모듈(408Z)은 이전에 식별된 2비트 사이클 오프셋에 기초하여 버퍼(402Z)의 비트 0:4가 완전한 데이터 워드를 포함하고 있는 것으로 결정한다. 그리고나서, 이들 추출된 데이터 비트는 병렬 출력 신호(108A-Z)로서 제공될 수 있다.
도 4에 도시되고 상기 설명된 예로 든 워드 동기화 모듈(105)에 다양한 향상물 및/또는 변형이 만들어질 수 있다. 버퍼(402), 워드 검색 모듈(404, 406) 및/또는 병렬 워드 추출 모듈(408)의 각 기능들은 예를 들면, 임의의 방식으로 상호 조합되거나 추가될 수 있다. 다양한 오프셋(410 및/또는 420)이 모듈(408B-Z) 또는 다른 곳에서 추가적으로 변형되어 시스템 지연(예를 들면, 데이터 부하 등에 의해 생성되는 지연)을 보상한다. 유사하게, 도 4에 도시된 논리적 레이아웃은 로직 모듈, 신호 처리 등의 임의의 조합을 이용하여 임의의 워드/프레임 동기화 기술을 구현하도록 크게 변형될 수 있다.
도 5를 참조하면, 프레임-대-데이터 채널 오프셋을 결정하기 위한 예로 든 프로세스(500)는 데이터 채널을 "상관 모드"에 놓는 단계(단계 502), 상관 데이터 를 각 데이터 버퍼에 수신하고 저장하는 단계(단계 504), 비트 스큐 오프셋을 처리하는 단계(단계 505), 및 상관 모드를 종료하여(단계 516) 실제 데이터를 수신하고 처리하기 시작하는 단계를 적절하게 포함한다. 프로세스(500)에 도시된 다양한 단계들은 예로 든 워드 동기화 모듈(105)에 의해 수행되는 다양한 기능들의 논리적 표현을 위한 것이고, 반드시 문자상의 하드웨어 또는 소프트웨어 구현으로서는 아니다. 도 5에 도시된 다양한 기능들은, 예를 들면, 임의의 타입의 집적 회로 로직, 신호 처리 로직, 또는 임의의 다른 하드웨어 및/또는 소프트웨어 데이터 처리 환경에서 수행될 수 있다. 또한, 도 5에 도시된 다양한 단계 및 모듈은 넓은 범주의 다른 실시예들에서 다르게 조합되거나 추가될 수 있다.
워드 동기화 모듈(105)은 임의의 방식으로 상관 모드에 들어간다(단계 502). 다양한 실시예들에서, 상관 모드는 적절한 인에이블 신호(407, 도 4)를 하나 이상의 데이터 워드 검색 모듈(406B-Z)에 적용함으로써 들어간다. 인에이블 신호는 임의의 컨트롤러 또는 다른 디지털 인터페이스로부터 적절하게 제공될 수 있다. 데이터 워드 검색 모듈(406B-Z)을 상관 모드에 둔다는 것은 상관 데이터(107)가 하나 이상의 데이터 채널(102A-Z) 상에 존재한다는 것을 나타낸다. 상기 언급된 바와 같이, 상관 데이터(107)는 워드 동기화 모듈(105) 및/또는 데이터 워드 검색 모듈(406B-Z)에 임의의 직렬 또는 병렬 방식으로 제공될 수 있다. 다르게는, 상관 데이터는 통신 프로토콜의 일부로서 정의되거나 다르게는 임의의 방식으로 정의된 워드 검색 모듈(406B-Z)에 "하드 코딩"될 수 있다. 이러한 데이터는 적절하게 비트 동기화되고, 동기화된 상관 데이터(107)가 수신되어 하나 이상의 버퍼(402A-Z) 내에 저장된다(단계 504).
상관 모드는 또한 하나 이상의 워드 검색 모듈(406B-Z)이 직렬 비트스트림간의 비트 스큐의 양을 결정하도록 버퍼(402B-Z) 내에 저장된 상관 데이터(107)의 로케이션 및/또는 오프셋(420B-Z)을 식별하기 시작한다는 것을 나타낸다(단계 505). 이러한 결정은 임의의 방식으로 발생할 수 있다. 예로 든 실시예에서, 오프셋 값(420)이 특정 주지된 값에 도달될 때까지 수신된 데이터가 버퍼(402)를 시퀀싱하는 동안에(단계 510), 각 데이처 채널에 대한 데이터 버퍼 오프셋(420B-Z)을 모니터링함으로써(단계 506), 각 데이터 채널(102B-Z)과 프레이밍 채널(102A)간의 비트 스큐가 식별된다. 주지된 값은 예를 들면 제로 값으로서, 상관 비트 시퀀스가 버퍼(402B-Z) 내에서 기준 로케이션(예를 들면, 상기 예에서 중앙 비트 2:5)에 배치되는 것을 나타내고, 다른 실시예들은 다른 파라미터를 이용할 수도 있다.
상관 시퀀스(107)가 버퍼(402) 내에서 주지된 위치(예를 들면, 제로 오프셋 위치)에 놓여지는 경우, 버퍼(402)에 대한 데이터 오프셋(410)은 후속 데이터 처리에 이용되는 오프셋 값을 결정할 수 있도록 프레이밍 오프셋(410)에 용이하게 상관된다(단계 512). 데이터 오프셋(420)이 주지된 상태(예를 들면, 제로 오프셋)에 있으므로, 당해 데이터 채널과 프레이밍 채널간의 비트 스큐가 프레임 오프셋(410)으로부터 용이하게 확인될 수 있다. 이러한 오프셋은 워드 추출 모듈(408) 및/또는 워드 동기화 모듈(105)내의 다른 회로에서 처리되거나 저장된다.
각 데이터 채널(106)에 대해 비트 스큐 식별 프로세스가 적절하게 반복된다(단계 514). 다양한 실시예들에서, 데이터-대-프레임 상관은 각 데이터 채 널(106B-Z)에 대해 동시에 발생한다. 모든 데이터 채널에 대한 상관 값이 결정된 후, 상관 모드는 인에이블 신호(407)를 비활성화시키거나 임의의 다른 적절한 액션에 의해 탈출된다(단계 516). 상관 모드는 임의의 적합한 기간 동안에 연장될 수 있다. 다양한 실시예들에서, 데이터 전송자는 상관 모드에 진입하기 이전 및 이후에 상관 데이터 시퀀스를 송신하여, 의도하지 않는 데이터 워드가 상관 프로세스 동안에 드롭되지 않도록 보장한다.
이제, 도 6을 참조하면, 예로 든 워드 동기화 프로세스(600)는 버퍼에 직렬 데이터를 저장하는 단계(단계 602), 프레이밍 신호를 모니터링하여(단계 604) 워드 또는 프레임 경계를 식별하는 단계(단계 606), 및 이전에 결정된 데이터-대-프레임 채널 오프셋 값을 이용하여 프레임 경계가 발생하는 경우에 병렬 데이터를 추출하는 단계(단계 610)를 적합하게 포함한다. 워드/프레임 경계는 프레이밍 오프셋 신호(410)에서 제로 오프셋(또는 다른 주지된 오프셋 값)의 발생을 통하는 것과 같이, 임의의 방식으로 표시될 수 있다. 그러한 경우에, 상관 모드(예를 들면, 프로세스(500)) 동안에 이전에 저장되었던 데이터 채널에 대한 미리 결정된 오프셋 값은 용이하게 적용되어, 버퍼(402)로부터 적절한 비트를 추출함으로써 정확한 병렬 출력 워드(108)를 생성한다. 다양한 실시예들에서, 비트 스큐 오프셋에 대한 추가 처리는 시스템 오프셋 등의 적용을 통해 제공될 수 있다(단계 608). 그러한 추가적인 처리는 워드 추출 모듈(408), 워드 검색 모듈(406) 및/또는 워드 동기화 모듈(105)의 다른 회로내에서 발생할 수 있다. 병렬 데이터는 임의의 개수의 데이터 채널로부터 적절하게 추출될 수 있다(단계 612).
상기 설명된 다양한 프로세스 및 시스템은 광대한 범주의 대체 그러나 등가인 실시예를 생성하도록 용이하게 변형될 수 있다. 예를 들면, 도 7은 비트 및 워드 동기화 특징의 추가적인 통합을 제공하는 멀티-핀 직렬 뎅터를 동기화하기 위한 다른 시스템(700)을 도시하고 있다. 도 7에 도시된 실시예에서, 프레이밍 채널(106A) 및 각 데이터 채널(106x)은 직렬 입력 스트림의 오버클록킹된 사이클 중에서 원하는 샘플링 사이클을 나타내는 위상 스트로브(720)를 생성할 수 있는 디지털 위상 동기 루프(DPLL) 또는 유사한 구조와 비트 동기화된다. 다양한 직렬 채널은 본 실시예에서 서로 반드시 위상 동기화될 필요는 없고, 따라서 위상 스트로브(702)는 원하는 오버클럭킹된 사이클에서 버퍼(402)로부터 데이터를 추출하는데 이용된다. 위상 스트로브(402)는 각 직렬 채널과 연관된 시퀀서(704, 706)에 제공된다. 시퀀서(704, 706)는 버퍼(402)내에 저장된 데이터의 비트 상태를 나타내도록 다수의 유한 상태(통상 하나의 워드 내의 비트 개수와 동일함)를 통해 시퀀싱하는 단순히 카운터이다. 각 시퀀서는 비트 동기화 모듈(102)로부터 수신된 위상 스트로브(702)에 기초하여 업데이트되어, 각 채널(102) 내에서 일관된 페이징을 유지한다. 프레임 시퀀서(704)의 출력(708)은 특정 실시예들에서 프레임 오프셋 신호(410)와 조합되어 상관 모드 동안에 데이터 시퀀서(706)에 로딩될 수 있는 적합한 프리로드 값을 생성한다. 대체하여 또는 추가적으로, 프레임 시퀀서(708)로부터의 출력(708)은 버퍼(402x)내의 데이터 워드의 원하는 로케이션을 나타내는데 이용되는 필드 포인터(714)를 업데이트하는데 이용될 수 있다. 필드 포인터(714)는 시퀀서(704, 706)로부터 생성되므로, 포인터는 위상 스트로브(702A 및 702x)에 응 답하여 적절하게 업데이트됨으로써, 상기 설명된 바와 같이 각 직렬 비트스트림의 위상 동기화를 수행할 필요성을 바이패스시킨다. 또한, 여기에 기재된 시스템 및 기술의 다양한 실시예들은 실시예에 따라 크게 가변될 것이다.
다양한 실시예는 이하를 포함한다.
다양한 실시예들에 따르면, 복수의 직렬 데이터 채널 상에서 수신된 데이터를 프레이밍 채널 상에서 수신된 프레이밍 신호에 워드 동기화하기 위한 방법이 제공된다. 복수의 오프셋 값이 처음으로 결정되고, 각 오프셋 값은 프레이밍 채널과 복수의 직렬 데이터 채널 중 하나 사이에 관찰되는 스큐의 양을 나타내며, 복수의 직렬 데이터 채널 각각에서 수신된 데이터는 적어도 하나의 버퍼에 저장된다. 프레이밍 신호는 프레임 경계를 식별하도록 모니터링되고, 병렬 데이터는 프레임 경계에 응답하여 적어도 하나의 버퍼로부터 추출된다. 적어도 하나의 버퍼 내의 병렬 데이터의 로케이션은 복수의 오프셋 값에 의해 적절하게 식별된다. 다양한 추가 실시예에서, 복수의 오프셋 값을 처음으로 결정하는 단계는 복수의 직렬 데이터 채널 각각에서 상관 데이터를 수신하는 단계, 직렬 데이터 채널 각각에 대한 데이터 오프셋을 결정하는 단계, 및 직렬 데이터 채널 각각에 대한 데이터 오프셋을 프레이밍 채널로부터의 프레임 오프셋에 상관시켜, 각 직렬 데이터 채널에 대한 오프셋 값을 결정하는 단계를 포함한다. 오프셋 값은 데이터 오프셋이 제로와 같이 주지된 값인 경우에 오프셋 값으로서 추가적으로 선택적으로 선택될 수 있다. 상관 데이터 및/또는 프레이밍 데이터는 미리-결정된 값을 가지는 반복된 비트 스트링을 포함하고, 미리 결정된 비트 스트링은 상관 데이터 이전에 수신될 수 있다. 또한, 상관 데이터 및/또는 프레이밍 데이터는 프레임 또는 워드 경계에서만 반복하도록 구성될 수 있다. 상관 모드는 결정 단계 이전에 들어가거나 결정 단계 후에 임의의 포인트에서 나갈 수 있다.
다른 실시예에서, 복수의 직렬 비트스트림은 프레이밍 비트스트림 및 복수의 데이터 비트스트림을 포함하는, 멀티-핀 비동기 인터페이스에서 복수의 직렬 비트스트림을 워드 동기화하기 위한 디바이스가 제공된다. 디바이스는 각 버퍼가 직렬 비트 스트림 중 하나에 대응하는 복수의 버퍼 뿐만 아니라, 복수의 워드 검색 모듈 및 복수의 병렬 워드 추출 모듈을 포함한다. 복수의 워드 검색 모듈 각각은 복수의 버퍼 중 하나에 대응하고, 복수의 워드 검색 모듈의 각각은 대응하는 버퍼 내에서 미리 결정된 비트 패턴의 로케이션을 식별하는 오프셋 신호를 생성하도록 구성된다. 복수의 병렬 워드 추출 모듈 각각은 버퍼 중 연관된 하나에 결합되고, 데이터 비트 스트림 중 하나에 대응하는 워드 검색 모듈의 연관된 하나에 결합된다. 각 병렬 워드 추출 모듈은 프레이밍 비트 스트림에 대응하는 워드 검색 모듈에 의해 생성된 오프셋 신호에 응답하여 연관된 워드 검색 모듈에 의해 생성된 데이터 오프셋 신호를 이용하여 연관된 버퍼로부터 병렬 데이터 워드를 추출하도록 구성된다. 다양한 추가 실시예들에서, 각 데이터 비트스트림에 대응하는 워드 검색 모듈은 인에이블 신호를 수신하고 거기에 응답하여 상관 모드에 들어가도록 더 구성된다. 각 데이터 비트 스트림에 대응하는 워드 검색 모듈은 미리 결정된 비트 패턴으로서 상관 워드를 수신하도록 더 구성되고 복수의 버퍼 각각은 시프트 레지스터로서 유지된다.
다양한 추가 실시예들에서, 복수의 비트 동기화 모듈은 직렬 비트 스트림의 하나와 더 연관되고 위상 스트로브 신호를 프레임 버퍼에 제공하도록 구성될 수 있다. 프레임 상관 기준 시퀀서는 프레이밍 비트스트림과 연관된 비트 동기화 모듈로부터 위상 스트로브를 수신하고 프레이밍 비트 스트림의 상태를 순차적으로 나타내도록 구성된다. 각각이 데이터 비트스트림 중 하나와 연관되고 워드 검색 모듈과 연관된 비트 스트림에 대응하는 병렬 워드 추출 모듈의 사이에 결합되는 복수의 데이터 상관 기준 시퀀서가 제공되고, 각 데이터 상관 기준 시퀀서는 비트 동기화 모듈 중 하나로부터 위상 스트로브 신호를 수신하고 연관된 데이터 비트스트림의 상태를 순차적으로 나타내도록 구성된다.
다른 실시예들에서, 각각이 멀티-핀 비동기 인터페이스에서 수신되는 공통 비트레이트를 구비하는 복수의 직렬 비트스트림을 동기화하기 위한 시스템이 제공된다. 직렬 비트스트림은 프레이밍 비트스트림 및 복수의 데이터 비트스트림을 포함한다. 클럭 발생기는 공통 비트레이트의 정수배와 거의 동일한 주파수를 가지는 공통 클럭 신호를 생성하도록 구성된다. 복수의 비트 동기화 모듈은 각각이 복수의 직렬 비트스트림 중 하나와 연관되고, 공통 클럭 신호를 수신하며 공통 클럭 신호를 이용하여 연관된 비트 스트림을 다른 직렬 비트스트림에 비트 동기화시키도록 구성된다. 워드 동기화 모듈은 복수의 비트 동기화 모듈로부터 비트 동기화된 비트스트림 각각을 수신하고 그로부터 병렬 데이터 워드를 추출하도록 구성된다. 워드 동기화 모듈은 각 버퍼가 동기화된 비트 스트림 중 하나에 대응하는 복수의 버퍼, 각각이 복수의 버퍼 중 하나에 대응하는 복수의 워드 검색 모듈 - 복수의 워드 검색 모듈 각각은 대응하는 버퍼 내에서 미리 결정된 비트 패턴의 로케이션을 식별하는 오프셋 신호를 생성하도록 구성됨 -, 및 각각이 버퍼들 중 연관된 하나에 결합되고, 각각이 데이터 비트스트림 중 하나에 대응하는 워드 검색 모듈의 연관된 하나에 결합되며, 각각이 프레이밍 비트스트림에 대응하는 워드 검색 모듈에 의해 생성된 오프셋 신호에 응답하여 연관된 워드 검색 모듈에 의해 생성된 데이터 오프셋 신호를 이용하여 연관된 버퍼로부터 병렬 데이터 워드를 추출하도록 구성된 복수의 병렬 워드 추출 모듈을 포함한다. 또한, 비트 동기화 모듈의 다양한 실시예들은 연관된 비트스트림의 복수의 위상의 각각 동안에 발생하는 비트 변이를 검출하도록 구성된 활동 검출 모듈 - 각 위상은 공통 클럭 신호의 하나의 사이클에 대응함 -, 활동 검출 모듈에 결합되고, 복수의 위상 각각 내에서 검출된 비트 변이에 기초하여 복수의 위상 중 하나를 선택하도록 구성된 위상 선택 모듈, 및 위상 선택 모듈에 결합되고, 연관된 비트 스트림의 선택된 위상을 추출함으로써 연관된 비트스트림을 다른 직렬 비트스트림에 비트 동기화하도록 구성된 위상 추출 모듈을 포함한다. 시스템은 예를 들면 무선 주파수 트랜시버와 베이스대역 모뎀간의 인터페이스, 및/또는 데이터, 음성, 멀티미디어 또는 다른 통신에 이용되는 임의의 다른 인터페이스일 수 있다.
이들 및 다른 실시예들이 상기 상세한 설명에서 제시되었지만, 엄청난 개수의 대체 실시예 및 등가 변동이 존재한다는 것은 자명하다. 예로 든 실시예 또는 실시예들은 단지 예에 불과하고 본 발명의 범주, 적용가능성, 또는 구성을 어떤 방식으로든 제한하려는 것이 아니라는 것은 자명하다. 오히려, 상기 상세한 설명은 본 기술분야의 숙련자들에게 실시예들을 구현하기 위한 편리한 로드맵을 제공할 것이다. 첨부된 청구의 범위 및 그 법률적 등가물에 제시된 본 발명의 범주에서 벗어나지 않고서도 구성요소의 기능 및 배열에서 다양한 변경이 가해질 수 있다는 것은 자명하다.
Claims (20)
- 복수의 직렬 데이터 채널 상에서 수신된 데이터를 프레이밍 채널 상에서 수신된 프레이밍 신호에 워드 동기화하기 위한 방법에 있어서,복수의 오프셋 값을 처음으로 결정하는 단계 - 상기 각 오프셋 값은 상기 프레이밍 채널과 상기 복수의 직렬 데이터 채널 중 하나 사이에 관찰되는 스큐의 양을 나타냄 -;상기 복수의 직렬 데이터 채널 각각에서 수신된 데이터를 적어도 하나의 버퍼에 저장하는 단계;프레임 경계를 식별하도록 상기 프레이밍 신호를 모니터링하는 단계; 및상기 프레임 경계에 응답하여 상기 적어도 하나의 버퍼로부터 병렬 데이터를 추출하는 단계 - 상기 적어도 하나의 버퍼 내의 병렬 데이터의 로케이션은 상기 복수의 오프셋 값에 의해 식별됨 -를 포함하는 워드 동기화 방법.
- 제1항에 있어서, 상기 복수의 오프셋 값을 처음으로 결정하는 단계는,상기 복수의 직렬 데이터 채널 각각에서 상관 데이터를 수신하는 단계;상기 직렬 데이터 채널 각각에 대한 데이터 오프셋을 결정하는 단계; 및상기 직렬 데이터 채널 각각에 대한 데이터 오프셋을 상기 프레이밍 채널로부터의 프레임 오프렛에 상관시켜, 각 직렬 데이터 채널에 대한 오프셋 값을 결정 하는 단계를 포함하는 워드 동기화 방법.
- 제2항에 있어서, 상기 복수의 오프셋 값을 처음으로 결정하는 단계는 상기 데이터 오프셋이 주지된 값인 경우에 상기 오프셋 값으로서 프레임 오프셋을 선택하는 단계를 더 포함하는 워드 동기화 방법.
- 제3항에 있어서, 상기 주지된 값은 제로의 비트 오프셋에 대응하는 워드 동기화 방법.
- 제2항에 있어서, 상기 상관 데이터는 미리-결정된 값을 가지는 반복된 비트 스트링을 포함하는 워드 동기화 방법.
- 제5항에 있어서, 상기 상관 데이터를 수신하기 이전에 상기 미리 결정된 비트 스트링을 수신하는 단계를 더 포함하는 워드 동기화 방법.
- 제2항에 있어서, 상기 결정 단계 이전에 상관 모드에 들어가는 단계를 더 포함하는 워드 동기화 방법.
- 제7항에 있어서, 상기 결정 단계 이후에 상관 모드를 종료하는 단계를 더 포 함하는 워드 동기화 방법.
- 제1항에 있어서, 상기 프레이밍 신호는 미리 결정된 값을 가지는 반복된 비트 스트링을 포함하는 워드 동기화 방법.
- 제9항에 있어서, 상기 반복된 비트 스트링은 단지 프레임 경계에서만 반복하도록 구성되는 워드 동기화 방법.
- 멀티-핀 비동기 인터페이스에서 복수의 직렬 비트스트림을 워드 동기화하기 위한 디바이스에 있어서 - 상기 복수의 직렬 비트스트림은 프레이밍 비트스트림 및 복수의 데이터 비트스트림을 포함함 -,각 버퍼가 직렬 비트 스트림 중 하나에 대응하는 복수의 버퍼;각각이 상기 복수의 버퍼 중 하나에 대응하는 복수의 워드 검색 모듈 - 상기 복수의 워드 검색 모듈의 각각은 대응하는 버퍼 내에서 미리 결정된 비트 패턴의 로케이션을 식별하는 오프셋 신호를 생성하도록 구성됨 -; 및각각이 버퍼 중 연관된 하나에 결합되고 각각이 데이터 비트 스트림 중 하나에 대응하는 상기 워드 검색 모듈의 연관된 하나에 결합되는 복수의 병렬 워드 추출 모듈 - 각 병렬 워드 추출 모듈은 상기 프레이밍 비트 스트림에 대응하는 상기 워드 검색 모듈에 의해 생성된 오프셋 신호에 응답하여 연관된 워드 검색 모듈에 의해 생성된 데이터 오프셋 신호를 이용하여 연관된 버퍼로부터 병렬 데이터 워드 를 추출하도록 구성됨 -을 포함하는 워드 동기화 디바이스.
- 제11항에 있어서, 상기 각 데이터 비트스트림에 대응하는 상기 워드 검색 모듈은 인에이블 신호를 수신하고 거기에 응답하여 상관 모드에 들어가도록 더 구성되는 워드 동기화 디바이스.
- 제11항에 있어서, 상기 각 데이터 비트 스트림에 대응하는 상기 워드 검색 모듈은 상기 미리 결정된 비트 패턴으로서 상관 워드를 수신하도록 더 구성되는 워드 동기화 디바이스.
- 제11항에 있어서, 상기 복수의 버퍼 각각은 시프트 레지스터로서 유지되는 워드 동기화 디바이스.
- 제14항에 있어서, 각각이 상기 직렬 비트 스트림의 하나와 연관되고 위상 스트로브 신호를 상기 프레임 버퍼에 제공하도록 구성되는 복수의 비트 동기화 모듈을 더 포함하는 워드 동기화 디바이스.
- 제14항에 있어서, 상기 프레이밍 비트스트림과 연관된 상기 비트 동기화 모듈로부터 위상 스트로브를 수신하고 상기 프레이밍 비트 스트림의 상태를 순차적으 로 나타내도록 구성된 프레임 상관 기준 시퀀서를 더 포함하는 워드 동기화 디바이스.
- 제14항에 있어서, 각각이 상기 데이터 비트스트림 중 하나와 연관되고, 상기 워드 검색 모듈과 상기 연관된 데이터 비트 스트림에 대응하는 상기 병렬 워드 추출 모듈의 사이에 결합되며, 각각이 상기 비트 동기화 모듈 중 하나로부터 위상 스트로브 신호를 수신하고 상기 연관된 데이터 비트스트림의 상태를 순차적으로 나타내도록 구성된 복수의 데이터 상관 기준 시퀀서를 더 포함하는 워드 동기화 디바이스.
- 각각이 멀티-핀 비동기 인터페이스에서 수신되는 공통 비트레이트를 구비하는 복수의 직렬 비트스트림을 동기화하기 위한 시스템에 있어서 - 상기 직렬 비트스트림은 프레이밍 비트스트림 및 복수의 데이터 비트스트림을 포함함 -,상기 공통 비트레이트의 정수배와 거의 동일한 주파수를 가지는 공통 클럭 신호를 생성하도록 구성된 클럭 발생기;각각이 상기 복수의 직렬 비트스트림 중 하나와 연관되고, 상기 공통 클럭 신호를 수신하며 상기 공통 클럭 신호를 이용하여 연관된 비트 스트림을 다른 직렬 비트스트림에 비트 동기화시키도록 구성된 복수의 비트 동기화 모듈; 및상기 복수의 비트 동기화 모듈로부터 비트 동기화된 비트스트림 각각을 수신하고 그로부터 병렬 데이터 워드를 추출하도록 구성된 워드 동기화 모듈을 포함하고,상기 워드 동기화 모듈은,각 버퍼가 상기 동기화된 비트 스트림 중 하나에 대응하는 복수의 버퍼,각각이 상기 복수의 버퍼 중 하나에 대응하는 복수의 워드 검색 모듈 - 상기 복수의 워드 검색 모듈 각각은 대응하는 버퍼 내에서 미리 결정된 비트 패턴의 로케이션을 식별하는 오프셋 신호를 생성하도록 구성됨 -, 및각각이 상기 버퍼들 중 연관된 하나에 결합되고, 각각이 상기 데이터 비트스트림 중 하나에 대응하는 워드 검색 모듈의 연관된 하나에 결합되며, 각각이 상기 프레이밍 비트스트림에 대응하는 상기 워드 검색 모듈에 의해 생성된 오프셋 신호에 응답하여 상기 연관된 워드 검색 모듈에 의해 생성된 데이터 오프셋 신호를 이용하여 연관된 버퍼로부터 병렬 데이터 워드를 추출하도록 구성된 복수의 병렬 워드 추출 모듈을 포함하는 동기화 시스템.
- 제18항에 있어서, 상기 각 비트 동기화 모듈은,상기 연관된 비트스트림의 복수의 위상의 각각 동안에 발생하는 비트 변이를 검출하도록 구성된 활동 검출 모듈 - 상기 각 위상은 상기 공통 클럭 신호의 하나의 사이클에 대응함 -;상기 활동 검출 모듈에 결합되고, 상기 복수의 위상 각각 내에서 검출된 비트 변이에 기초하여 상기 복수의 위상 중 하나를 선택하도록 구성된 위상 선택 모듈; 및상기 위상 선택 모듈에 결합되고, 상기 연관된 비트 스트림의 선택된 위상을 추출함으로써 상기 연관된 비트스트림을 상기 다른 직렬 비트스트림에 비트 동기화하도록 구성된 위상 추출 모듈을 포함하는 동기화 시스템.
- 제18항에 있어서, 상기 시스템은 무선 주파수 트랜시버와 베이스대역 모뎀간의 인터페이스인 동기화 시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/097,579 | 2005-04-01 | ||
US11/097,579 US7936793B2 (en) | 2005-04-01 | 2005-04-01 | Methods and apparatus for synchronizing data transferred across a multi-pin asynchronous serial interface |
PCT/US2006/005368 WO2006107412A2 (en) | 2005-04-01 | 2006-02-16 | Methods and apparatus for synchronizing data transferred across a multi-pin asynchronous serial interface |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080002792A true KR20080002792A (ko) | 2008-01-04 |
KR101183297B1 KR101183297B1 (ko) | 2012-09-14 |
Family
ID=37070410
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020077022317A KR101183297B1 (ko) | 2005-04-01 | 2006-02-16 | 멀티-핀 비동기 직렬 인터페이스를 통해 전달된 데이터를동기화하기 위한 방법 및 장치 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7936793B2 (ko) |
JP (1) | JP4808769B2 (ko) |
KR (1) | KR101183297B1 (ko) |
WO (1) | WO2006107412A2 (ko) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7650525B1 (en) * | 2005-10-04 | 2010-01-19 | Force 10 Networks, Inc. | SPI-4.2 dynamic implementation without additional phase locked loops |
US7706312B1 (en) * | 2006-06-09 | 2010-04-27 | Marvell International Ltd. | Digital sub-carrier signal recovery based on pilot zero-crossing |
US7792230B1 (en) * | 2007-01-18 | 2010-09-07 | Lockheed Martin Corporation | Remote synchronization of external majority voting circuits |
JP4934524B2 (ja) * | 2007-06-25 | 2012-05-16 | パナソニック株式会社 | データ通信装置及びデータ通信方法 |
US7876244B2 (en) | 2009-05-29 | 2011-01-25 | Telefonaktiebolaget L M Ericsson (Publ) | Method for aligning a serial bit stream with a parallel output |
US8493963B1 (en) | 2009-11-23 | 2013-07-23 | Marvell International Ltd. | Multiple time accurate strobe (TAS) messaging |
US8537945B1 (en) | 2009-11-23 | 2013-09-17 | Marvell International Ltd. | Synchronization of time accurate strobe (TAS) messages |
US8631265B2 (en) * | 2010-12-13 | 2014-01-14 | Oracle International Corporation | Synchronization circuit that facilitates multiple parallel reads and writes |
US9749253B2 (en) * | 2013-03-14 | 2017-08-29 | Silver Spring Networks, Inc. | Technique for implementing a latency sensitive communication protocol in a wireless mesh network |
US9378174B2 (en) * | 2013-11-04 | 2016-06-28 | Xilinx, Inc. | SERDES receiver oversampling rate |
JP6684731B2 (ja) | 2017-02-16 | 2020-04-22 | 株式会社東芝 | 信号変換装置 |
CN111431533B (zh) * | 2020-04-26 | 2023-06-16 | 杭州电子科技大学富阳电子信息研究院有限公司 | 一种高速lvds接口adc数据与时钟同步的方法 |
KR102604266B1 (ko) | 2021-03-19 | 2023-11-21 | 주식회사 토닥 | 데이터 동기화 장치 및 방법 |
Family Cites Families (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2020094C3 (de) * | 1970-04-24 | 1973-11-22 | Siemens Ag, 1000 Berlin U. 8000 Muenchen | Zeitmultiplexsystem zur Nach nchtenubertragung zwischen mehreren Bodenstationen über wenigstens einen mit einer Relaisstation ausgerüsteten Satelliten |
US3887769A (en) * | 1973-04-04 | 1975-06-03 | Bell Telephone Labor Inc | Frame syncrhonization of elastic data bit stores |
US4071887A (en) * | 1975-10-30 | 1978-01-31 | Motorola, Inc. | Synchronous serial data adaptor |
US4300232A (en) * | 1979-11-09 | 1981-11-10 | Ford Aerospace & Communications Corporation | Self synchronized multiplexer/demultiplexer |
EP0258873B1 (en) * | 1986-09-01 | 1995-11-22 | Nec Corporation | Serial bus interface system for data communication using two-wire line as clock bus and data bus |
US5081654A (en) * | 1989-05-12 | 1992-01-14 | Alcatel Na Network Systems Corp. | Parallel bit detection circuit for detecting frame synchronization information imbedded within a serial bit stream and method for carrying out same |
DE69025311T2 (de) * | 1989-08-25 | 1996-08-22 | Nippon Telegraph & Telephone | Regelungsverfahren eines funkkanalschalters |
US5282196A (en) * | 1991-10-15 | 1994-01-25 | Hughes Aircraft Company | Bursted and non-bursted data router |
US5349611A (en) * | 1992-11-13 | 1994-09-20 | Ampex Systems Corporation | Recovering synchronization in a data stream |
US5485476A (en) * | 1993-06-14 | 1996-01-16 | International Business Machines Corporation | Method and system for error tolerant synchronization character detection in a data storage system |
JP2694807B2 (ja) * | 1993-12-16 | 1997-12-24 | 日本電気株式会社 | データ伝送方式 |
JP2848229B2 (ja) * | 1993-12-28 | 1999-01-20 | 日本電気株式会社 | 受信回路 |
US6282683B1 (en) * | 1994-09-26 | 2001-08-28 | Adc Telecommunications, Inc. | Communication system with multicarrier telephony transport |
US6665308B1 (en) * | 1995-08-25 | 2003-12-16 | Terayon Communication Systems, Inc. | Apparatus and method for equalization in distributed digital data transmission systems |
US5920600A (en) * | 1995-09-18 | 1999-07-06 | Oki Electric Industry Co., Ltd. | Bit phase synchronizing circuitry for controlling phase and frequency, and PLL circuit therefor |
KR100251641B1 (ko) * | 1996-05-13 | 2000-04-15 | 김영환 | 채널 정렬 회로 |
US6208839B1 (en) | 1996-12-19 | 2001-03-27 | Motorola, Inc. | Remote token based information acquistion system |
US6031847A (en) * | 1997-07-01 | 2000-02-29 | Silicon Graphics, Inc | Method and system for deskewing parallel bus channels |
JP3387379B2 (ja) * | 1997-09-01 | 2003-03-17 | 富士通株式会社 | パラレルデータスキュー検出回路 |
JP3337969B2 (ja) * | 1997-09-08 | 2002-10-28 | 沖電気工業株式会社 | データ送信装置及びデータ受信装置 |
US6594275B1 (en) * | 1998-04-03 | 2003-07-15 | Texas Instruments Incorporated | Fibre channel host bus adapter having multi-frequency clock buffer for reduced power consumption |
JP3330555B2 (ja) * | 1999-01-28 | 2002-09-30 | 沖電気工業株式会社 | 同期回路 |
EP1089473A1 (en) * | 1999-09-28 | 2001-04-04 | TELEFONAKTIEBOLAGET L M ERICSSON (publ) | Apparatus and method for time-aligning data frames of a plurality of channels in a telecommunication system |
JP3394013B2 (ja) * | 1999-12-24 | 2003-04-07 | 松下電器産業株式会社 | データ抽出回路およびデータ抽出システム |
WO2001052576A1 (fr) * | 2000-01-12 | 2001-07-19 | Mitsubishi Denki Kabushiki Kaisha | Terminal de communications mobiles |
GB2359706B (en) * | 2000-02-28 | 2004-03-10 | Mitel Corp | Integrated data clock extractor |
GB0006291D0 (en) * | 2000-03-15 | 2000-05-03 | Lucent Technologies Inc | Data communication link |
US6937683B1 (en) * | 2000-03-24 | 2005-08-30 | Cirronet Inc. | Compact digital timing recovery circuits, devices, systems and processes |
US6917366B1 (en) * | 2000-04-04 | 2005-07-12 | Pixelworks, Inc. | System and method for aligning multi-channel coded data over multiple clock periods |
AUPR038000A0 (en) | 2000-09-26 | 2000-10-19 | Hoyle, D.S. | Disposable toothbrush and dentifrice combination unit |
US6819728B2 (en) * | 2000-12-28 | 2004-11-16 | International Business Machines Corporation | Self-correcting multiphase clock recovery |
WO2002075563A1 (de) * | 2001-03-15 | 2002-09-26 | Robert Bosch Gmbh | Bussystem aus wenigstens zwei datenbussen |
US7061939B1 (en) * | 2001-06-13 | 2006-06-13 | Juniper Networs, Inc. | Source synchronous link with clock recovery and bit skew alignment |
US20030043926A1 (en) * | 2001-08-31 | 2003-03-06 | Fujitsu Limited | Circuit and method for generating a timing signal, and signal transmission system performing for high-speed signal transmission and reception between LSIs |
JP3671920B2 (ja) * | 2001-11-15 | 2005-07-13 | セイコーエプソン株式会社 | スキュー調整回路及びスキュー調整方法 |
US6915462B1 (en) * | 2002-07-30 | 2005-07-05 | Adaptec, Inc. | Method and apparatus for a programmable deskew circuit |
US7366268B2 (en) * | 2002-12-02 | 2008-04-29 | Matsushita Electric Industrial Co., Ltd. | Selective data inversion in ultra-wide band communications to eliminate line frequencies |
US6977959B2 (en) * | 2003-01-17 | 2005-12-20 | Xilinx, Inc. | Clock and data recovery phase-locked loop |
US7120813B2 (en) * | 2003-01-28 | 2006-10-10 | Robert Antoine Leydier | Method and apparatus for clock synthesis using universal serial bus downstream received signals |
DE10311395A1 (de) | 2003-03-13 | 2004-09-23 | Robert Bosch Gmbh | Kommunikationsvorrichtung mit asynchroner Datenübertragung über eine symmetrische serielle Schnittstelle |
US7240249B2 (en) * | 2003-06-26 | 2007-07-03 | International Business Machines Corporation | Circuit for bit skew suppression in high speed multichannel data transmission |
US7221725B2 (en) * | 2003-06-27 | 2007-05-22 | Sigmatel, Inc. | Host interface data receiver |
US7430196B2 (en) | 2005-01-14 | 2008-09-30 | Nokia Corporation | Transmission systems |
US7436919B2 (en) * | 2005-04-01 | 2008-10-14 | Freescale Semiconductor, Inc. | Methods and apparatus for bit synchronizing data transferred across a multi-pin asynchronous serial interface |
-
2005
- 2005-04-01 US US11/097,579 patent/US7936793B2/en active Active
-
2006
- 2006-02-16 JP JP2008504041A patent/JP4808769B2/ja not_active Expired - Fee Related
- 2006-02-16 WO PCT/US2006/005368 patent/WO2006107412A2/en active Application Filing
- 2006-02-16 KR KR1020077022317A patent/KR101183297B1/ko active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
US20060222017A1 (en) | 2006-10-05 |
WO2006107412A3 (en) | 2007-05-31 |
JP2008535085A (ja) | 2008-08-28 |
WO2006107412A2 (en) | 2006-10-12 |
KR101183297B1 (ko) | 2012-09-14 |
JP4808769B2 (ja) | 2011-11-02 |
US7936793B2 (en) | 2011-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101183297B1 (ko) | 멀티-핀 비동기 직렬 인터페이스를 통해 전달된 데이터를동기화하기 위한 방법 및 장치 | |
CA3161433A1 (en) | Transvascular diaphragm pacing systems and methods of use | |
CN111512369B (zh) | 多通道数据接收器的时钟数据恢复装置及方法 | |
US8259886B2 (en) | Communication apparatus | |
JP2003218843A (ja) | スキュー調整回路及びスキュー調整方法、並びに、データ同期回路及びデータ同期方法 | |
CN108063661A (zh) | 基于曼彻斯特编码的采样电路和接收电路 | |
US11888586B2 (en) | Low latency network device and method for treating received serial data | |
US7436919B2 (en) | Methods and apparatus for bit synchronizing data transferred across a multi-pin asynchronous serial interface | |
US7194057B2 (en) | System and method of oversampling high speed clock/data recovery | |
US6990615B2 (en) | Data processing device | |
JP2012205204A (ja) | 通信装置及び通信方法 | |
US5825834A (en) | Fast response system implementing a sampling clock for extracting stable clock information from a serial data stream with defined jitter characeristics and method therefor | |
US7298299B1 (en) | Efficient data recovery algorithm for serial data | |
US20070069927A1 (en) | Method of transmitting a serial bit-stream and electronic transmitter for transmitting a serial bit-stream | |
US20040190667A1 (en) | Clock extracting circuit and clock extracting method | |
US10346331B2 (en) | Method and apparatus for data detection and event capture | |
WO2023181257A1 (ja) | 通信装置、通信方法、通信プログラム及び通信システム | |
CN116384299A (zh) | 一种时钟数据恢复的方法、***、设备和存储介质 | |
WO2005099164A1 (en) | Clock recovery in an oversampled serial communications system | |
US7006585B2 (en) | Recovering data encoded in serial communication channels | |
KR20160069093A (ko) | 클럭 데이터 리커버리 회로 및 이를 이용하는 시스템 | |
KR100666126B1 (ko) | 샘플/심볼 공유 상관기 및 이를 이용한 타이밍 복원 회로 | |
JP2007288660A (ja) | データ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラム | |
EP0640261A4 (en) | Data transmission delaying circuit using time-multiplexed latch enable signals. | |
KR20150060516A (ko) | 인덱싱된 i/o 심볼 통신 |
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: 20150824 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20180903 Year of fee payment: 7 |