KR100614424B1 - 네트워크 노드 동기 방법 - Google Patents
네트워크 노드 동기 방법 Download PDFInfo
- Publication number
- KR100614424B1 KR100614424B1 KR1019997008718A KR19997008718A KR100614424B1 KR 100614424 B1 KR100614424 B1 KR 100614424B1 KR 1019997008718 A KR1019997008718 A KR 1019997008718A KR 19997008718 A KR19997008718 A KR 19997008718A KR 100614424 B1 KR100614424 B1 KR 100614424B1
- Authority
- KR
- South Korea
- Prior art keywords
- cycle
- timer
- network
- value
- node
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 29
- 230000004044 response Effects 0.000 claims abstract description 4
- 230000001360 synchronised effect Effects 0.000 claims description 13
- 238000012546 transfer Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 4
- 239000013078 crystal Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40058—Isochronous transmission
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/14—Time supervision arrangements, e.g. real time clock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0652—Synchronisation among time division multiple access [TDMA] nodes, e.g. time triggered protocol [TTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40091—Bus bridging
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/4302—Content synchronisation processes, e.g. decoder synchronisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/4363—Adapting the video stream to a specific local network, e.g. a Bluetooth® network
- H04N21/43632—Adapting the video stream to a specific local network, e.g. a Bluetooth® network involving a wired protocol, e.g. IEEE 1394
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Small-Scale Networks (AREA)
- Time-Division Multiplex Systems (AREA)
Abstract
동기 정보를 수신하는 사이클 슬레이브 노드에 응답하여, 사이클 슬레이브 노드 내의 논리 회로를 이용하여 타이머 오프셋 값을 결정하는 단계와, 상기 타이머 오프셋 값을 사이클 마스터 노드에 전송하는 단계와, 타이머 오프셋 값에 기초하여, 사이클 마스터 노드의 논리 회로를 이용하여 사이클 마스터 노드 사이클 타이머의 값을 조정하는 단계를 포함하는, 사이클 마스터 노드를 사이클 슬레이브 노드에 동기시키는 방법. 동기 정보는 양호하게는, 사이클 슬레이브 노드 사이클 타이머 중 1 사이클의 배수인 소정의 속도로 어서트(assert)되는 사이클 리셋 신호이다. 사이클 마스터 노드 및 사이클 슬레이브 노드는 유리하게는 제 1 네트워크 또는 서브 네트워크에 포함될 수 있고, 사이클 리셋 신호는 제 1 네트워크 또는 서브 네트워크의 외부인 제 2 네트워크 또는 서브 네트워크에 의해 제공될 수 있다.
사이클 마스터 노드, 사이클 슬레이브 노드, 네트워크 노드 동기화, 사이클 리셋, 타이머 오프셋 값
Description
본 발명은 일반적으로 하나 이상의 네트워크들 또는 서브 네트워크들에서 사이클 마스터 및 사이클 슬레이브 노드들을 동기시키는 기술에 관한 것이고, 특히, 사이클 슬레이브 노드로 공급되는 외부 네트워크 또는 서브 네트워크로부터의 동기 정보를 사용하여 사이클 슬레이브 노드에 사이클 마스터 노드를 동기시키는 기술에 관한 것이다.
종래의 네트워크들에서, 다양한 전자 구성 요소(예를 들어, 컴퓨터, 소비자 전자 장치, 기구, 사무 자동화 장비 등)가 로컬 버스(통상적으로, "IEEE 1394" 버스로 언급되는 IEEE 1394 표준에 의해 정의된 직렬 버스)를 통해 상호 접속된다. 상기 로컬 버스에 의해 상호 접속된 각 구성 요소들은 상기 버스 상에서 "노드(nodes)"로 언급된다. 통상적으로, 로컬 버스 상의 노드들 중 하나(통상 "로컬 사이클 마스터"로 언급함)는, 공통 사이클 클럭을 생성하여, 상기 버스 상의 나머지 모든 노드들(통상 "사이클 슬레이브 노드"로 언급함)에 분배한다. 일반적으로, 사이클 슬레이브 노드들 각각은 로컬 사이클 마스터에 의해 동기적으로 업데이트되는 사이클 타이머를 갖는다.
일부 네트워크들은 복수의 개별 네트워크들(그 각각은 자신의 로컬 버스를 갖는다)로 구성된다. 상기 전체 네트워크 내의 개별 네트워크들은 통상적으로 "서브 네트워크"로 언급된다. 상기 서브 네트워크는 하나 이상의 "브리지들(bridges)"에 의해 연결되거나 상호 접속된다.
일부 네트워크들은 네트워크 와이드 사이클 클럭(network-wide cycle clock)("사이클") 동기를 사용한다. 네트워크가 서브 네트워크로 세분될 때, 각 서브 네트워크의 로컬 사이클 마스터는, 네트워크 와이드 클럭 동기를 유지하기 위해 네트워크 와이드("글로벌") 사이클 마스터에 동기되어야 한다. 이러한 네트워크들에서, 각각의 로컬 사이클 마스터는 네트워크 내의 하나 이상의 브리지에 위치한다. 통상적으로, 각 로컬 사이클 마스터는 "브리지 포탈(bridge portal)" 내에 포함된다.
예를 들어, 두 서브 네트워크들 중 제 1 서브 네트워크의 로컬 버스에 접속된 제 1 브리지 포탈과, 상기 두 서브 네트워크들 중 제 2 서브 네트워크의 로컬 버스에 접속된 제 2 브리지 포탈을 갖는 브리지에 의해 상호 접속된 두 서브 네트워크들을 갖는 공지된 네트워크에서, 상기 제 1 서브 네트워크에 대한 로컬 사이클 마스터는 제 1 브리지 포탈에 포함되고, 상기 제 2 서브 네트워크에 대한 로컬 사이클 마스터는 제 2 브리지 포탈에 포함된다. 네트워크 와이드 클럭 동기는 로컬 사이클 마스터 사이에서(즉, 제 1 및 제 2 브리지 포탈 사이에서) 클럭 동기 정보를 통과시켜 이루어진다. 그러나, 로컬 사이클 마스터들을 브리지들 내에 위치시키는 것이 항상 바람직하거나 가능한 것도 아니다. 따라서, 네트워크 내의 하나 이상의 브리지를 통해 네트워크 와이드 클럭 동기를 유지하면서 넌 브리지 노드(non-bridge node)가 로컬 사이클 마스터이도록 하는 기술이 필요하다. 보다 넓게는, 하나 이상의 서브 네트워크를 포함하는 네트워크 내에서 사이클 슬레이브 노드들 중 하나에 사이클 마스터를 동기시키는 메카니즘을 필요로 한다. 본 발명은 상기 요구를 충족시킨다.
본 발명은, 하나의 관점에서, 사이클 슬레이브(slave) 노드 내의 사이클 타이머가 사이클 마스터 노드내의 사이클 타이머에 동기되는 네트워크에서 사이클 마스터 노드를 사이클 슬레이브 노드에 동기시키는 방법으로서, 상기 사이클 슬레이브 노드 내의 논리 회로를 이용하여, 외부 네트워크 또는 서브 네트워크로부터 동기 정보를 수신하는 상기 사이클 슬레이브 노드에 응답하여, 타이머 오프셋 값을 결정하는 단계와, 상기 타이머 오프셋 값을 상기 사이클 마스터 노드에 전송하는 단계와, 상기 사이클 마스터 노드 내의 논리 회로를 이용하여, 상기 타이머 오프셋 값에 기초하여 상기 사이클 마스터 노드 사이클 타이머의 값을 조정하는 단계를 포함하는, 방법이다. 상기 동기 정보는, 양호하게는 사이클 슬레이브 노드 사이클 타이머의 1 사이클의 배수인 소정의 속도로 어서트(assert)되는 사이클 리셋 신호이다. 개시된 실시예에서, 상기 사이클 슬레이브 노드는 타이머 오프셋 레지스터를 더 포함하고, 상기 사이클 마스터 노드는 타이머 조정 레지스터를 더 포함한다.
상기 사이클 슬레이브 노드의 상기 논리 회로를 이용하여 상기 타이머 오프셋 값을 결정하는 단계는 양호하게는,
상기 사이클 리셋 신호를 검출하는 서브 단계와,
상기 사이클 슬레이브 노드 사이클 타이머의 값을 판독하는 서브 단계와,
상기 사이클 슬레이브 노드 사이클 타이머에서 판독한 값으로부터 상기 타이머 오프셋 값을 유도하는 서브 단계와,
상기 타이머 오프셋 값을 상기 타이머 오프셋 레지스터에 로딩하는 서브 단계를 포함한다.
상기 타이머 오프셋 값을 상기 사이클 마스터 노드에 전송하는 단계는 양호하게는,
상기 타이머 오프셋 레지스터로부터 상기 타이머 오프셋 값을 판독하는 서브 단계와,
비동기 데이터 전송 프로토콜을 이용하여 상기 타이머 오프셋 값을 상기 사이클 마스터 노드에 보내는 서브 단계를 포함한다.
상기 사이클 마스터 노드의 상기 논리 회로를 이용하여 상기 사이클 마스터 노드 사이클 타이머의 값을 조정하는 단계는 양호하게는,
상기 사이클 슬레이브 노드로부터 수신된 상기 타이머 오프셋 값을 상기 타이머 조정 레지스터에 로딩하는 서브 단계와,
상기 사이클 마스터 노드 사이클 타이머의 값을 판독하는 서브 단계와,
상기 사이클 마스터 노드 사이클 타이머에서 판독된 값으로부터 상기 타이머 오프셋 값을 감산하여, 조정된 사이클 타이머 값을 생성하는 서브 단계와,
상기 조정된 사이클 타이머 값으로부터 최종 조정된 사이클 타이머 값을 유도하는 서브 단계와,
상기 최종 조정된 사이클 타이머 값을 상기 사이클 마스터 노드 사이클 타이머에 로딩하는 서브 단계를 포함한다.
상기 사이클 슬레이브 노드 사이클 타이머에서 판독된 값으로부터 상기 타이머 오프셋 값을 유도하는 서브 단계는 양호하게는,
상기 사이클 타이머 리셋 신호가 검출된 제 1 시간과 상기 값이 상기 사이클 슬레이브 노드 사이클 타이머에서 판독된 시간 사이에 경과된 클럭 사이클들의 수를 계산하는 서브 단계와,
상기 사이클 슬레이브 노드 사이클 타이머에서 판독된 상기 값으로부터 상기 계산 서브 단계의 결과를 감산하는 서브 단계로서, 상기 감산하는 서브 단계의 결과가 상기 타이머 오프셋 값을 구성하는, 상기 감산 서브 단계를 포함한다.
상기 최종 조정된 사이클 타이머 값을 유도하는 서브 단계는,
상기 값이 상기 사이클 마스터 노드 사이클 타이머에서 판독되는 제 1 시간에서 시작하여, 상기 최종 조정된 사이클 타이머 값이 상기 사이클 마스터 노드 사이클 타이머에 로딩되는 제 2 시간에서 종료하는 모든 필요한 처리를 실행하는데 필요한 클럭 사이클들의 수를 계산하는 서브 단계와,
상기 계산 서브 단계의 결과를 상기 조정된 사이클 타이머 값에 가산하는 서브 단계로서, 상기 가산하는 서브 단계의 결과가 상기 최종 조정된 사이클 타이머 값인, 상기 가산 서브 단계를 포함한다.
개시된 실시예에서, 상기 사이클 마스터 노드 및 상기 사이클 슬레이브 노드는 제 1 네트워크 또는 서브 네트워크의 일부이고, 상기 동기 정보는 상기 제 1 네트워크 또는 서브 네트워크의 외부인 제 2 네트워크 또는 서브 네트워크에 의해 공급된다.
양호하게는, 본 발명의 방법은, 상기 사이클 마스터 노드 사이클 타이머의 상기 값을, 상기 제 1 네트워크 또는 서브 네트워크의 상기 사이클 슬레이브 노드들 모두에, 규칙적으로(regularly) 분배하는 단계로서, 상기 제 1 네트워크 또는 서브 네트워크의 사이클 슬레이브 노드들 모두는 사이클 리셋 신호에 동기되는, 상기 분배 단계를 더 포함한다.
본 발명은, 또 다른 관점에서, 본 발명의 상기 방법을 실행하는 네트워크를 포함한다. 또한, 상기 네트워크는,
제 1 로컬 버스에 접속된 복수의 제 1 노드를 포함하는 제 1 서브 네트워크와,
제 1 로컬 버스에 접속된 복수의 제 1 노드를 포함하는 제 1 서브 네트워크와,
제 2 로컬 버스에 접속된 복수의 제 2 노드를 포함하는 제 2 서브 네트워크와,
상기 제 1 및 제 2 서브 네트워크를 상호 접속하는 브리지를 포함하고,
상기 브리지는,
상기 제 1 로컬 버스에 연결되는 제 1 브리지 포탈과,
상기 제 2 로컬 버스에 연결되는 제 2 브리지 포탈과,
상기 제 1 및 제 2 브리지 포탈을 상호 접속하는 상호 접속 시스템을 포함하고,
상기 제 1 서브 네트워크의 로컬 사이클 마스터로 기능하는 상기 제 1 노드들 중 선택된 하나는 넌 브리지 노드이고, 상기 제 2 서브 네트워크의 로컬 사이클 마스터로 기능하는 상기 제 2 노드들 중 선택된 하나는 넌 브리지 노드인, 네트워크이다.
상기 제 1 서브 네트워크의 로컬 사이클 마스터로 기능하는 상기 제 1 노드들 중 선택된 하나는 넌 브리지 노드이고, 상기 제 2 서브 네트워크의 로컬 사이클 마스터로 기능하는 상기 제 2 노드들 중 선택된 하나는 넌 브리지 노드인, 네트워크이다.
개시된 실시예에서, 상기 제 1 및 제 2 브리지 포탈은 각각 본 발명에 따라 구성된 사이클 슬레이브 노드를 포함하고, 상기 제 1 및 제 2 서브 네트워크에 대한 로컬 사이클 마스터는 각각 본 발명에 따라 구성된 사이클 마스터 노드를 포함한다.
본 발명의 상기 및 기타 특징들, 목적들, 이점들은 도면과 함께 이하의 상세한 설명으로부터 더 명확히 이해될 것이다.
도 1은 본 발명의 양호한 실시예의 방법을 실행하는 시스템의 블록도.
도 2는 본 발명의 예시적 실시예에 따라 구성된 네트워크의 블록도.
도 3은 본 발명의 다른 예시적 실시예에 따라 구성된 네트워크의 블록도.
본 발명의 방법을 실행하는 시스템의 블록도를 도시한 도 1을 참고로 설명한다. 특히, 사이클 슬레이브 노드(20)와 사이클 마스터 노드(22)를 상세히 도시하였다. 사이클 슬레이브 노드는, 마이크로제어기(24)와, 타이머 오프셋 레지스터(26)와, 소정의 클럭으로 동작하는 수정(crystal:28)에 의해 클럭킹되는 사이클 타이머(30)를 갖는 사이클 클럭 서브시스템(27)을 포함한다. 사이클 마스터 노드(22)는 마이크로제어기(32)와, 타이머 조정 레지스터(34)와, 소정의 클럭 속도로 동작하는 수정(36)에 의해 클럭킹되는 사이클 타이머(38)를 갖는 사이클 클럭 서브시스템(35)을 포함한다. 각각의 사이클 타이머(30 및 38)는, 현재 타이머 값(즉, 현재 카운트)이 나타나는 현재 사이클의 부분을 나타내는 부분 값(fractional value)을 기억하는 하나의 필드와, 사이클 타이머가 완료된 총 (진행/누계) 사이클 수를 나타내는 총 사이클 카운트를 기억하는 또다른 필드를 포함하는, 각각의 데이터 필드 또는 레지스터를 포함한다.
종래의 네트워크들에서처럼, 사이클 마스터 노드(22)는, 그 사이클 타이머 값을, 네트워크 또는 그 일부분의 로컬 서브 네트워크에서, 나머지 모든 노드(즉, 모든 사이클 슬레이브 노드)에 규칙적으로 분배하고, 따라서, 네트워크나 서브 네트워크 내의 모든 사이클 슬레이브 노드에서의 사이클 타이머들(사이클 슬레이브 노드(20)내의 사이클 타이머(30)를 포함)은 사이클 마스터 노드(22)의 사이클 마스터(38)에 각각 동기된다.
그러나, 본 발명에 따르면, 네트워크 또는 서브 네크워크 내의 사이클 슬레이브 노드들 중 하나는, 도 1의 사이클 슬레이브 노드(20)로 도시된 바와 같이, 외부 네트워크 또는 서브 네트워크로부터 동기 타이머 리셋 신호를, 리셋 라인(40)을 통해 수신한다. 이 리셋 신호는 1 사이클의 배수인 소정의 속도로 규칙적으로 어서트(assert)된다.
본원에서 "사이클(cycle)"이란 용어는, 사이클 타이머가 초기 값부터 최종 값까지 카운트하기에 필요한 시간 주기이며, 타이머 레지스터는 랩어라운드(wrap around)하여 그 초기 값으로 돌아간다. 예를 들어, 사이클 타이머가 모듈로 N 카운터(modulo-N counter)로 실행될 경우, "사이클"은 초기 값(A)으로 돌아가기 전에, 초기 값(A)부터 (A) + N-1까지 카운터가 카운트하기에 필요한 시간 주기이다. 상기 초기 값은 통상 0이다.
본 발명에 따르면, 사이클 슬레이브 노드(20)의 마이크로제어기(24)는 이하의 단계를 포함하는 제어 알고리즘을 실행하도록 프로그래밍된다.
(1) 외부 동기 사이클 리셋 신호를 검출한다.
(2) 사이클 타이머(30)의 부분 값(1 사이클 미만)을 판독한다.
바람직하게는, 상기 부분 값은, 현재 사이클 타이머 값(즉, 현재 카운트)이 N/2와 같거나 그보다 작으면 포지티브이고, N/2 보다 크면 네가티브인 정수로 나타내지만, 본 발명이 이에 제한되는 것은 아니다(예를 들어, 포지티브/네가티브 전이의 임계값은 사이클 타이머(30)의 초기 값과 최대 값 사이의 임의의 적절한 값으로 설정할 수 있다). 예를 들어, 사이클 타이머(30)가 8,000의 계수(N)를 갖는다면, 상기 부분 값(I)은, 현재 카운트가 4,000 이하인 경우, 사이클 타이머(30)의 현재 카운트(X)와 같은 포지티브 정수 값으로 나타내질 수 있고, 현재 카운트(X)가 4,000 보다 큰 경우, 사이클 타이머(30)의 현재 카운트(X)와 계수(N) 사이의 차이와 같은 네가티브 정수 값으로 나타내질 수 있다. 즉, X ≤ N/2 이면, I=X로서, 포지티브 정수 값이고, X > N/2이면, I = (X-N)로서, 네가티브 정수 값이다.
(3) 외부 동기 사이클 리셋 신호가 검출된 시간과 부분 사이클 타이머 값이 판독된 시간 사이에서 얼마나 많은 클럭 사이클이 지났는가를 계산한다.
(4) 단계(2)에서 판독된 부분 사이클 타이머 값으로부터 단계(3)의 결과를 감산한다.
(5) 단계(4)의 결과를 타이머 오프셋 레지스터(26)의 타이머 오프셋 값으로서 로딩한다.
(6) 타이머 오프셋 레지스터(26)로부터 타이머 오프셋 값을 판독하여, 예를 들어, 비동기 데이터 전송 메카니즘을 사용하여, 편리한 시간에 상기 타이머 오프셋 값을 사이클 마스터 노드(22)로 보낸다. 그러나, 타이머 오프셋 값이 0이면, 사이클 마스터 노드(22)로 보내질 필요는 없다(왜냐하면, 그 경우, 사이클 마스터 노드(22)에서 사이클 타이머(38)의 값을 조정할 필요가 없기 때문이다).
본 발명이 전적으로 하드웨어(프로그래밍된 마이크로제어기를 사용하는 대신)에서 실행되거나, 상기 프로세싱 지연을 제거하거나 타이머 오프셋 값의 유도 등에 사용되는 고정된 프로세싱 지연을 내는 다른 편리한 방법으로 실행되면, 단계(3 및 4)는 생략될 수 있다.
또한, 본 발명에 따르면, 사이클 마스터 노드(22)의 마이크로제어기(32)는 다음의 단계를 포함하는 제어 알고리즘을 실행하도록 프로그래밍된다.
(1) 사이클 슬레이브 노드(20)로부터 수신된 타이머 오프셋 값을 타이머 조정 레지스터(34)에 로딩한다.
(2) 사이클 타이머(38)의 부분 값(1 사이클 미만)을 판독한다.
(3) 단계(2)에서 사이클 타이머(38)에서 판독된 부분 사이클 타이머 값으로부터, 단계(1)에서의 타이머 조정 레지스터(34)에서 판독된 타이머 오프셋 값을 감산한다.
(4) 단계(2)에서 부분 사이클 타이머 값이 사이클 타이머(38)에서 판독된 값으로부터 시작하고, 최종(조정된) 사이클 타이머 값이 사이클 타이머(38)에 로딩된 시간으로 종료하는(즉, 단계(6) 이후), 필요한 모든 프로세싱을 실행하기에 얼마나 많은 클럭 사이클이 필요한지 계산한다.
(5) 단계(3)의 결과를 단계(4)의 결과에 가산하고, 임의의 필요한 사이클 타이머(38)의 랩어라운드 프로세싱(wrap-around processing)을 실행한다. 예를 들어, 합이 최대 값보다 크면(즉, 오버플로우 상황이 일어나면), 사이클 타이머(38)의 계수(N)는 상기 합으로부터 감산되어 결과 값이 되어야 하고, 총 사이클 카운트는 1만큼 증가하여야 한다. 또한, 상기 합이 초기 값보다 작으면(즉, 언더플로우 상황이 일어나면), 사이클 타이머(38)의 계수(N)는 상기 합에 가산되어 결과 값이 되어야 하고, 총 사이클 카운트는 1만큼 감소되어야 한다.
(6) 조정된 사이클 타이머 값을 구성하는, 단계(5)의 결과 값을 사이클 타이머(38)에 로딩한다.
본 발명이 전적으로 하드웨어(프로그래밍된 마이크로제어기를 사용하는 대신)에서 실행되거나, 상기 프로세싱 지연을 제거하거나 타이머 오프셋 값의 유도 등에 사용되는 고정된 프로세싱 지연을 내는 다른 편리한 방법으로 실행되면, 단계(4)는 생략될 수 있다.
상기 설명한 본 발명의 방법에 따라, 사이클 마스터 노드(22)의 사이클 타이머 값은 외부 동기 사이클 리셋 신호에 동기되고, 따라서, 외부 동기 사이클 리셋 신호에 동기된 네트워크 또는 서브 네트워크 내의, 모든 사이클 슬레이브 노드(사이클 슬레이브 노드(20) 내의 사이클 타이머(30) 포함)의 사이클 타이머를 유지한다. 당업자라면, 본 발명의 방법(및 시스템)이 간편하고, 신뢰성 있으며, 데이터(예를 들어, 패킷) 손실이나 좀처럼 없는 사이클 슬레이브 노드로부터의 궤환에 비교적 영향을 받지 않는다.
본 발명의 예시적 실시예에 따라 구성된 네트워크(50)가 도 2에 도시된다. 상기 네트워크(50)는 서브 네트워크(A)의 로컬 버스(A)에 접속된 복수의 노드(Na)와 서브 네트워크(B)의 로컬 버스(B)에 접속된 복수의 노드(Nb)를 포함한다. 서브 네트워크(A 및 B)는, 로컬 버스(A)에 연결된 브리지 포탈(A)과 로컬 버스(B)에 연결된 브리지 포탈(B)을 포함하는 브리지(56)를 통해 상호 접속된다. 브리지 포탈(A 및 B)은 유선 또는 무선 상호 접속 시스템(때때로 "내부 구조(internal fabric)"로 언급됨)(55)으로 상호 접속된다.
브리지 포탈(A)은 본 발명에 따른 구성의 사이클 슬레이브 노드(60)(예를 들어, 도 1에 도시된 사이클 슬레이브 노드(20) 등)를 포함하고, 브리지 포탈(B)은 본 발명에 따른 구성의 사이클 슬레이브 노드(62)(예를 들어, 도 1에 도시된 사이클 슬레이브 노드(20) 등)을 포함한다.
서브 네트워크(A)용 로컬 사이클 마스터(도 1에 도시된 사이클 마스터 노드(22) 등)는 서브 네트워크(A)의 로컬 버스(A)에 접속된 노드(Na) 중 임의의 선택된 하나일 수 있고, 서브 네트워크(B)용 로컬 사이클 마스터(도 1에 도시된 사이클 마스터 노드(22) 등)는 서브 네트워크(B)의 로컬 버스(B)에 접속된 노드(Nb) 중 임의의 선택된 하나일 수 있다.
따라서, 상기 예시적 실시예와 같이, 로컬 사이클 마스터로 지정된 것을 제외하고, 서브 네트워크(A)의 모든 노드(Na)는, 종래의 슬레이브 노드로 적절히 실행되고, 또한, 로컬 사이클 마스터로 지정된 것을 제외하고, 서브 네트워크(B)의 모든 노드(Nb)는, 종래의 슬레이브 노드로 적절히 실행된다. 따라서, 각각의 로컬 사이클 마스터는 넌 브리지 노드이다. 물론, 브리지 포탈(A 또는 B) 중 하나가 사이클 슬레이브 노드 대신에 사이클 마스터 노드를 포함할 수 있고, 이 경우, 로컬 사이클 마스터 중 단지 하나만이 넌 브리지 노드이다.
본 발명의 다른 실시예에 따른 구성의 네트워크(66)가 도 3에 도시된다. 네트워크(66)는, 로컬 버스(A, B, C)를 포함하는 복수의 로컬 버스와, 브리지(A, B)를 포함하는 복수의 브리지를 포함한다. 네트워크(66)에서 상호 연쇄(daisy-chained)될 수 있는 브리지 및 버스의 수는 실질적으로 제한되지 않는다.
현재 유용한 기술로는, 두 브리지 중 고정된 하나(A 또는 B)가 로컬 버스(A)에 대한 로컬 사이클 마스터를 포함하여야만 한다. 그러나, 본 발명에서는, 두 브리지 중 선택한 하나(A 또는 B)가 본 발명에 따라 구성된 사이클 마스터 노드를 포함할 수 있고, 상기 두 브리지 중 나머지 하나(B 또는 A)가 본 발명에 따라 구성된 사이클 슬레이브 노드를 포함할 수 있다. 따라서, 네트워크 디자이너는 로컬 버스(A)에 대한 로컬 사이클 마스터를 포함해야 하는 브리지 중 고정된 하나(A 또는 B)에 구속되지 않으므로, 네트워크를 구성 또는 재구성함에 있어 매우 탄력적으로 할 수 있다.
지금까지 본원에서 본 발명을 상세히 설명하였지만, 당업자라면 본원의 청구범위에서 정의된 본 발명의 정신 및 관점을 벗어나지 않는, 본원에서 설명한 기본적인 독창적인 개념의 다양한 변경 및 수정이 가능함을 알 것이다.
예를 들어, 이상에서는 제어 알고리즘을 적절히 프로그래밍된 마이크로제어기(24 및 32)로 실행하였지만, 당업자라면 임의의 간편한 하드 와이어(hard-wired) 또는 프로그래밍 가능한 디지털 신호 처리 또는 논리 회로를 이용할 수 있음은 명백하다.
또한, 상기 본원에서는 타이머 오프셋 레지스터(26) 및 타이머 조정 레지스터(34)를 각각의 레지스터로 설명하였지만, 어드레싱의 관점에서 단일 레지스터로 실행할 수 있고, 본 발명을 하드웨어로 실행한다면, 타이머 오프셋 레지스터(26)는 판독 전용으로, 타이머 조정 레지스터(34)는 기록 전용으로 할 수 있다.
본 발명의 방법을 실행하는 레지스터 및 논리 회로는 현재의 링크층 칩(예를 들어, IEEE 1394 링크층 칩)을 사용하는 소프트웨어로 실행할 수 있고, 현재 개발 하에 있는 미래의 링크층 칩의 하드웨어에서도 실행할 수 있다.
소정의 네트워크 내의 모든 노드(또는 선택한 노드)는, 예를 들어, 타이머 오프셋 레지스터(26) 및 타이머 조정 레지스터(34)(또는 그와 동등한 것)를 모두 포함하는, 필요한 하드웨어 및/또는 소프트웨어 모두에 간단히 포함시켜, 본 발명에 따른 사이클 마스터 노드 또는 사이클 슬레이브 노드로 기능하도록 만들 수 있다.
Claims (16)
- 사이클 슬레이브(slave) 노드 내의 사이클 타이머(30)가 사이클 마스터 노드내의 사이클 타이머(38)에 동기되는 네트워크에서 사이클 마스터 노드(22)를 사이클 슬레이브 노드(20)에 동기시키는 방법으로서,상기 사이클 슬레이브 노드(20) 내의 논리 회로(24)를 이용하여, 외부 네트워크 또는 서브 네트워크로부터 동기 정보를 수신하는 상기 사이클 슬레이브 노드(20)에 응답하여, 타이머 오프셋 값을 결정하는 단계와,상기 타이머 오프셋 값을 상기 사이클 마스터 노드(22)에 전송하는 단계와,상기 사이클 마스터 노드(22) 내의 논리 회로(32)를 이용하여, 상기 타이머 오프셋 값에 기초하여 상기 사이클 마스터 노드 사이클 타이머(38)의 값을 조정하는 단계를 포함하는, 방법.
- 제 1 항에 있어서,상기 동기 정보는 사이클 타이머 리셋 신호를 포함하는, 방법.
- 제 2 항에 있어서,상기 사이클 슬레이브 노드(20) 내의 상기 사이클 타이머(30)는 1 사이클 동안 초기 값부터 최종 값까지 카운트하고,상기 사이클 타이머 리셋 신호는 상기 사이클 슬레이브 노드 사이클 타이머(30)의 1 사이클의 배수인 소정의 속도로 어서트(assert)되는, 방법.
- 제 3 항에 있어서,상기 사이클 슬레이브 노드(20)는 타이머 오프셋 레지스터(26)를 더 포함하고,상기 사이클 마스터 노드(22)는 타이머 조정 레지스터(34)를 더 포함하고,상기 사이클 슬레이브 노드(20) 내의 상기 논리 회로(24)를 이용하여 상기 타이머 오프셋 값을 결정하는 단계는,상기 사이클 타이머 리셋 신호를 검출하는 서브 단계와,상기 사이클 슬레이브 노드 사이클 타이머(30)의 값을 판독하는 서브 단계와,상기 사이클 슬레이브 노드 사이클 타이머(30)에서 판독된 값으로부터 상기 타이머 오프셋 값을 유도하는 서브 단계와,상기 타이머 오프셋 값을 상기 타이머 오프셋 레지스터(26)에 로딩하는 서브 단계를 포함하는, 방법.
- 제 4 항에 있어서,상기 타이머 오프셋 값을 상기 사이클 마스터 노드(22)에 전송하는 단계는,상기 타이머 오프셋 레지스터(26)로부터 상기 타이머 오프셋 값을 판독하는 서브 단계와,비동기 데이터 전송 프로토콜을 사용하여, 상기 타이머 오프셋 값을 상기 사이클 마스터 노드(22)에 보내는 서브 단계를 포함하는, 방법.
- 제 4 항에 있어서,상기 사이클 마스터 노드(22) 내의 상기 논리 회로(32)를 이용하여 상기 사이클 마스터 노드 사이클 타이머(38)의 값을 조정하는 단계는,상기 사이클 슬레이브 노드(20)로부터 수신된 상기 타이머 오프셋 값을 상기 타이머 조정 레지스터(34)에 로딩하는 서브 단계와,상기 사이클 마스터 노드 사이클 타이머(38)의 값을 판독하는 서브 단계와,상기 사이클 마스터 노드 사이클 타이머(38)에서 판독된 값으로부터 상기 타이머 오프셋 값을 감산하여, 조정된 사이클 타이머 값을 생성하는 서브 단계와,상기 조정된 사이클 타이머 값으로부터 최종 조정된 사이클 타이머 값을 유도하는 서브 단계와,상기 최종 조정된 사이클 타이머 값을 상기 사이클 마스터 노드 사이클 타이머(38)에 로딩하는 서브 단계를 포함하는, 방법.
- 제 4 항에 있어서,상기 사이클 슬레이브 노드 사이클 타이머(30)에서 판독된 값으로부터 상기 타이머 오프셋 값을 유도하는 서브 단계는,상기 사이클 타이머 리셋 신호가 검출된 제 1 시간과, 상기 값이 상기 사이클 슬레이브 노드 사이클 타이머(30)에서 판독된 제 2 시간 사이에서 경과된 클럭 사이클들의 수를 계산하는 서브 단계와,상기 사이클 슬레이브 노드 사이클 타이머(30)에서 판독된 값으로부터 상기 계산 단계의 결과를 감산하는 서브 단계로서, 상기 감산하는 서브 단계의 결과가 상기 타이머 오프셋 값을 구성하는, 상기 감산 서브 단계를 포함하는, 방법.
- 제 6 항에 있어서,상기 최종 조정된 사이클 타이머 값을 유도하는 서브 단계는,상기 값이 상기 사이클 마스터 노드 사이클 타이머(38)에서 판독되는 제 1 시간에서 시작하여, 상기 최종 조정된 사이클 타이머 값이 상기 사이클 마스터 노드 사이클 타이머(38)에 로딩되는 제 2 시간에서 종료하는 모든 필요한 처리를 실행하는데 필요한 클럭 사이클들의 수를 계산하는 서브 단계와,상기 계산 서브 단계의 결과를 상기 조정된 사이클 타이머 값에 가산하는 서브 단계로서, 상기 가산하는 서브 단계의 결과가 상기 최종 조정된 사이클 타이머 값인, 상기 가산 서브 단계를 포함하는, 방법.
- 제 1 항에 있어서,상기 사이클 마스터 노드(22) 및 상기 사이클 슬레이브 노드(20)는 제 1 네트워크의 일부이고,상기 동기 정보는 상기 제 1 네트워크의 외부인 제 2 네트워크에 의해 공급되는, 방법.
- 제 1 항에 있어서,상기 사이클 마스터 노드(22) 및 상기 사이클 슬레이브 노드(20)는 제 1 서브 네트워크의 일부이고,상기 동기 정보는 상기 제 1 서브 네트워크의 외부인 제 2 서브 네트워크에 의해 공급되는, 방법.
- 제 3 항에 있어서,상기 사이클 마스터 노드(22) 및 상기 사이클 슬레이브 노드(20)는 복수의 부가적인 사이클 슬레이브 노드들을 또한 포함하는 제 1 서브 네트워크의 일부이고,상기 사이클 타이머 리셋 신호는 상기 제 1 서브 네트워크의 외부인 제 2 서브 네트워크에 의해 동기적으로(synchronously) 공급되는, 방법.
- 제 11 항에 있어서,상기 사이클 마스터 노드 사이클 타이머(38)의 상기 값을, 상기 제 1 서브 네트워크의 상기 사이클 슬레이브 노드들 모두에 규칙적으로(regularly) 분배하는 단계로서, 상기 제 1 서브 네트워크의 상기 사이클 슬레이브 노드들 모두는 상기 사이클 타이머 리셋 신호에 동기되는, 상기 분배 단계를 더 포함하는, 방법.
- 제 3 항에 있어서,상기 사이클 마스터 노드(22) 및 상기 사이클 슬레이브 노드(20)는 복수의 부가적인 사이클 슬레이브 노드들을 또한 포함하는 제 1 네트워크의 일부이고,상기 사이클 타이머 리셋 신호는 상기 제 1 네트워크 외부의 제 2 서브 네트워크에 의해 동기적으로 공급되는, 방법.
- 제 13 항에 있어서,상기 사이클 마스터 노드 사이클 타이머(38)의 상기 값을, 상기 제 1 네트워크의 상기 사이클 슬레이브 노드 모두에 규칙적으로 분배하는 단계로서, 상기 제 1 네트워크의 상기 사이클 슬레이브 노드들 모두의 상기 사이클 타이머들은 상기 사이클 타이머 리셋 신호에 동기된, 상기 분배 단계를 더 포함하는, 방법.
- 사이클 마스터 노드 사이클 타이머(38) 및 사이클 마스터 노드 논리 회로(32)를 포함하는 사이클 마스터 노드(22)와,상기 사이클 마스터 노드 사이클 타이머(38)에 동기된 사이클 슬레이브 노드 사이클 타이머(30) 및 사이클 슬레이브 노드 논리 회로(24)를 포함하는 사이클 슬레이브 노드(20, 60)를 포함하는 네트워크(50)로서,상기 사이클 슬레이브 노드 논리 회로(24)는 외부 네트워크 또는 서브 네트워크로부터의 동기 정보에 응답하여 타이머 오프셋 값을 결정하고, 상기 타이머 오프셋 값을 상기 사이클 마스터 노드(22)에 전송하고,상기 사이클 마스터 노드 논리 회로(32)는 상기 타이머 오프셋 값에 기초하여 상기 사이클 마스터 노드 사이클 타이머(38)의 값을 조정하는, 네트워크(50).
- 제 15 항에 있어서,제 1 로컬 버스에 접속된 복수의 제 1 노드들(Na)을 포함하는 제 1 서브 네트워크와,제 2 로컬 버스에 접속된 복수의 제 2 노드들(Nb)을 포함하는 제 2 서브 네트워크와,상기 제 1 및 제 2 서브 네트워크를 상호 접속하는 브리지를 포함하는 네트워크(50)로서,상기 브리지는,상기 제 1 로컬 버스에 연결되고, 상기 사이클 슬레이브 노드(20)를 포함하는 제 1 브리지 포탈과,상기 제 2 로컬 버스(로컬 버스 B)에 연결되고, 상기 사이클 마스터 노드(22)를 포함하는 제 2 브리지 포탈(포탈 B)과,상기 제 1 및 제 2 브리지 포탈들을 상호 접속하는 상호 접속 시스템(55)을 포함하고,상기 제 1 서브 네트워크(서브 네트워크 A)의 로컬 사이클 마스터로 기능하는 상기 제 1 노드들(Na) 중 선택된 하나는 넌 브리지 노드(non-bridge node)인, 네트워크(50).
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US9/012,321 | 1998-01-23 | ||
US09/012,321 US6128318A (en) | 1998-01-23 | 1998-01-23 | Method for synchronizing a cycle master node to a cycle slave node using synchronization information from an external network or sub-network which is supplied to the cycle slave node |
US09/012,321 | 1998-01-23 | ||
PCT/IB1999/000059 WO1999038287A1 (en) | 1998-01-23 | 1999-01-18 | Method for synchronizing network nodes |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20010005650A KR20010005650A (ko) | 2001-01-15 |
KR100614424B1 true KR100614424B1 (ko) | 2006-08-22 |
Family
ID=21754414
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019997008718A KR100614424B1 (ko) | 1998-01-23 | 1999-01-18 | 네트워크 노드 동기 방법 |
Country Status (6)
Country | Link |
---|---|
US (1) | US6128318A (ko) |
EP (1) | EP0972371B1 (ko) |
JP (1) | JP4355370B2 (ko) |
KR (1) | KR100614424B1 (ko) |
DE (1) | DE69931218T2 (ko) |
WO (1) | WO1999038287A1 (ko) |
Families Citing this family (104)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6418150B1 (en) * | 1998-02-20 | 2002-07-09 | Apple Computer, Inc. | Method and apparatus for calibrating an IEEE-1394 cycle master |
JP3397124B2 (ja) * | 1998-03-12 | 2003-04-14 | ソニー株式会社 | 同期方法及びブリッジ |
DE60023604T2 (de) * | 1999-01-13 | 2006-08-10 | Koninklijke Philips Electronics N.V. | Drahtloses lokales netzwerk (lan) und verfahren zu dessen betrieb |
JP3353824B2 (ja) * | 1999-04-22 | 2002-12-03 | 日本電気株式会社 | ネットワーク同期システム及びネットワーク同期方法 |
DE60041470D1 (de) * | 1999-05-11 | 2009-03-19 | Canon Kk | Verfahren und Vorrichtung zur Synchronisierung zwischen zwei Netzwerken |
US6898211B1 (en) * | 1999-06-16 | 2005-05-24 | Cisco Technology, Inc. | Scheme for maintaining synchronization in an inherently asynchronous system |
US6633943B1 (en) | 1999-09-21 | 2003-10-14 | Sony Corporation | Method and system for the simplification of leaf-limited bridges |
US6801951B1 (en) | 1999-10-08 | 2004-10-05 | Honeywell International Inc. | System and method for fault-tolerant clock synchronization using interactive convergence |
JP2001230821A (ja) * | 2000-02-16 | 2001-08-24 | Sony Corp | データ中継装置および方法、並びに提供媒体 |
US6539489B1 (en) * | 2000-03-31 | 2003-03-25 | Siemens Aktiengesellshaft | Apparatus, method and system for synchronizing slave system operations to master system clocking signals in a master-slave asynchronous communication system |
US6895009B1 (en) * | 2000-04-07 | 2005-05-17 | Omneon Video Networks | Method of generating timestamps for isochronous data |
US6732287B1 (en) * | 2000-06-22 | 2004-05-04 | Rockwell Automation Technologies, Inc. | Method for processing dynamically allocated timers in a real time operating system |
EP1198085B1 (en) * | 2000-10-10 | 2011-06-08 | Sony Deutschland GmbH | Cycle synchronization between interconnected sub-networks |
ATE380422T1 (de) * | 2000-10-19 | 2007-12-15 | Thomson Licensing | Verfahren zur verbindung mehrerer kommunikationsbusse mit drahtlosen verbindungen |
US6898212B1 (en) * | 2000-11-14 | 2005-05-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Systems and methods for controlling audible speech distortion in a GPS-based CDMA wireless network using ATM transport |
JP4097891B2 (ja) * | 2000-11-27 | 2008-06-11 | 三菱電機株式会社 | Ieee1394を用いた同期システム |
EP1370956B1 (de) * | 2001-03-15 | 2005-08-10 | Robert Bosch Gmbh | Bussystem aus wenigstens zwei datenbussen |
US6907472B2 (en) * | 2001-03-30 | 2005-06-14 | Yitran Communications Ltd. | Distributed synchronization mechanism for shared communications media based networks |
JP3698074B2 (ja) * | 2001-06-15 | 2005-09-21 | 日本電気株式会社 | ネットワーク同期方法、lsi、バスブリッジ、ネットワーク機器、およびプログラム |
DE10147422A1 (de) * | 2001-09-26 | 2003-04-24 | Siemens Ag | Kommunikationssystem und Verfahren zur Synchronisation eines Kommunikationszyklus |
EP1303080B1 (de) * | 2001-10-09 | 2005-03-16 | Siemens Aktiengesellschaft | Verfahren zur Kommunikation über einen Bus zwischen einem Prozessdatenserver und mindestens einem Empfänger |
US7221686B1 (en) * | 2001-11-30 | 2007-05-22 | Meshnetworks, Inc. | System and method for computing the signal propagation time and the clock correction for mobile stations in a wireless network |
US20030152110A1 (en) * | 2002-02-08 | 2003-08-14 | Johan Rune | Synchronization of remote network nodes |
WO2004075445A1 (en) * | 2003-02-20 | 2004-09-02 | Zarlink Semiconductor Inc. | Method providing distribution means for reference clocks across packetized networks |
DE10327548B4 (de) * | 2003-06-18 | 2014-05-22 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Austausch von Daten über ein Bussystem |
JP4178552B2 (ja) * | 2003-07-24 | 2008-11-12 | 株式会社安川電機 | マスター・スレーブ同期通信方式 |
US11294618B2 (en) | 2003-07-28 | 2022-04-05 | Sonos, Inc. | Media player system |
US11650784B2 (en) | 2003-07-28 | 2023-05-16 | Sonos, Inc. | Adjusting volume levels |
US8234395B2 (en) | 2003-07-28 | 2012-07-31 | Sonos, Inc. | System and method for synchronizing operations among a plurality of independently clocked digital data processing devices |
US8020023B2 (en) * | 2003-07-28 | 2011-09-13 | Sonos, Inc. | Systems and methods for synchronizing operations among a plurality of independently clocked digital data processing devices without a voltage controlled crystal oscillator |
US8290603B1 (en) | 2004-06-05 | 2012-10-16 | Sonos, Inc. | User interfaces for controlling and manipulating groupings in a multi-zone media system |
US11106425B2 (en) | 2003-07-28 | 2021-08-31 | Sonos, Inc. | Synchronizing operations among a plurality of independently clocked digital data processing devices |
US10613817B2 (en) | 2003-07-28 | 2020-04-07 | Sonos, Inc. | Method and apparatus for displaying a list of tracks scheduled for playback by a synchrony group |
US8086752B2 (en) | 2006-11-22 | 2011-12-27 | Sonos, Inc. | Systems and methods for synchronizing operations among a plurality of independently clocked digital data processing devices that independently source digital data |
US11106424B2 (en) | 2003-07-28 | 2021-08-31 | Sonos, Inc. | Synchronizing operations among a plurality of independently clocked digital data processing devices |
US7668964B2 (en) | 2005-04-23 | 2010-02-23 | Sonos, Inc. | System and method for synchronizing channel handoff as among a plurality of devices |
JP2005094348A (ja) * | 2003-09-17 | 2005-04-07 | Sony Corp | 通信システムおよび方法、情報処理装置および方法、並びにプログラム |
WO2005029853A1 (ja) * | 2003-09-19 | 2005-03-31 | Canopus Co., Ltd. | データ変換システム |
US7237135B1 (en) | 2003-12-29 | 2007-06-26 | Apple Inc. | Cyclemaster synchronization in a distributed bridge |
US7305476B2 (en) * | 2004-02-01 | 2007-12-04 | Phonex Broadband Corporation | Method and system for network synchronization and isolation |
US9977561B2 (en) | 2004-04-01 | 2018-05-22 | Sonos, Inc. | Systems, methods, apparatus, and articles of manufacture to provide guest access |
US9374607B2 (en) | 2012-06-26 | 2016-06-21 | Sonos, Inc. | Media playback system with guest access |
US8326951B1 (en) | 2004-06-05 | 2012-12-04 | Sonos, Inc. | Establishing a secure wireless network with minimum human intervention |
US8868698B2 (en) | 2004-06-05 | 2014-10-21 | Sonos, Inc. | Establishing a secure wireless network with minimum human intervention |
US7840962B2 (en) * | 2004-09-30 | 2010-11-23 | Intel Corporation | System and method for controlling switching between VMM and VM using enabling value of VMM timer indicator and VMM timer value having a specified time |
US8146078B2 (en) * | 2004-10-29 | 2012-03-27 | Intel Corporation | Timer offsetting mechanism in a virtual machine environment |
US7509515B2 (en) * | 2005-09-19 | 2009-03-24 | Ati Technologies, Inc. | Method and system for communicated client phase information during an idle period of a data bus |
US8180384B1 (en) * | 2006-07-13 | 2012-05-15 | Rf Micro Devices, Inc. | Transmit data timing control |
US9202509B2 (en) | 2006-09-12 | 2015-12-01 | Sonos, Inc. | Controlling and grouping in a multi-zone media system |
US8483853B1 (en) | 2006-09-12 | 2013-07-09 | Sonos, Inc. | Controlling and manipulating groupings in a multi-zone media system |
US8788080B1 (en) | 2006-09-12 | 2014-07-22 | Sonos, Inc. | Multi-channel pairing in a media system |
FR2915338A1 (fr) * | 2007-04-17 | 2008-10-24 | Canon Kk | Procede d'emission et de reception de contenus de donnees dans un reseau de communication, produit programme d'ordinateur, moyen de stockage et dispositifs correspondants |
KR101389277B1 (ko) * | 2007-10-16 | 2014-04-28 | 삼성전자주식회사 | 무선 센서 네트워크에서 브로드캐스팅 제어 방법 |
FR2926937A1 (fr) * | 2008-01-24 | 2009-07-31 | Canon Kk | Procedes de synchronisation d'horloges applicatives dans un reseau de communication synchrone, dispositifs d'emission et de reception, produit programme d'ordinateur et moyen de stockage correspondants. |
US8843777B2 (en) * | 2008-02-20 | 2014-09-23 | Infineon Technologies Ag | Modifying periodic signals produced by microcontroller |
US8073976B2 (en) * | 2008-03-27 | 2011-12-06 | Microsoft Corporation | Synchronizing clocks in an asynchronous distributed system |
US7773606B2 (en) * | 2008-09-22 | 2010-08-10 | Telefonaktiebolaget L M Ericsson (Publ) | Timing distribution within a network element while supporting multiple timing domains |
US8416763B1 (en) | 2008-11-14 | 2013-04-09 | Cisco Technology, Inc. | System and method for providing quality inter-domain network time transport |
US8064485B1 (en) * | 2008-11-14 | 2011-11-22 | Cisco Technology, Inc. | System and method for providing quality inter-domain network time transport |
US11429343B2 (en) | 2011-01-25 | 2022-08-30 | Sonos, Inc. | Stereo playback configuration and control |
US11265652B2 (en) | 2011-01-25 | 2022-03-01 | Sonos, Inc. | Playback device pairing |
US9729115B2 (en) | 2012-04-27 | 2017-08-08 | Sonos, Inc. | Intelligently increasing the sound level of player |
US9008330B2 (en) | 2012-09-28 | 2015-04-14 | Sonos, Inc. | Crossover frequency adjustments for audio speakers |
US9510055B2 (en) | 2013-01-23 | 2016-11-29 | Sonos, Inc. | System and method for a media experience social interface |
US9307508B2 (en) | 2013-04-29 | 2016-04-05 | Google Technology Holdings LLC | Systems and methods for syncronizing multiple electronic devices |
US9288596B2 (en) | 2013-09-30 | 2016-03-15 | Sonos, Inc. | Coordinator device for paired or consolidated players |
US9720576B2 (en) | 2013-09-30 | 2017-08-01 | Sonos, Inc. | Controlling and displaying zones in a multi-zone system |
US9654545B2 (en) | 2013-09-30 | 2017-05-16 | Sonos, Inc. | Group coordinator device selection |
US20150095679A1 (en) | 2013-09-30 | 2015-04-02 | Sonos, Inc. | Transitioning A Networked Playback Device Between Operating Modes |
WO2015095082A1 (en) * | 2013-12-16 | 2015-06-25 | Tdg Aerospace, Inc. | Monitoring systems and methods |
US9300647B2 (en) | 2014-01-15 | 2016-03-29 | Sonos, Inc. | Software application and zones |
US9866986B2 (en) | 2014-01-24 | 2018-01-09 | Sony Corporation | Audio speaker system with virtual music performance |
US9313591B2 (en) | 2014-01-27 | 2016-04-12 | Sonos, Inc. | Audio synchronization among playback devices using offset information |
US20150220498A1 (en) | 2014-02-05 | 2015-08-06 | Sonos, Inc. | Remote Creation of a Playback Queue for a Future Event |
US9226087B2 (en) | 2014-02-06 | 2015-12-29 | Sonos, Inc. | Audio output balancing during synchronized playback |
US9226073B2 (en) | 2014-02-06 | 2015-12-29 | Sonos, Inc. | Audio output balancing during synchronized playback |
US9679054B2 (en) | 2014-03-05 | 2017-06-13 | Sonos, Inc. | Webpage media playback |
US9232335B2 (en) | 2014-03-06 | 2016-01-05 | Sony Corporation | Networked speaker system with follow me |
US10587693B2 (en) | 2014-04-01 | 2020-03-10 | Sonos, Inc. | Mirrored queues |
US20150324552A1 (en) | 2014-05-12 | 2015-11-12 | Sonos, Inc. | Share Restriction for Media Items |
US20150356084A1 (en) | 2014-06-05 | 2015-12-10 | Sonos, Inc. | Social Queue |
US9874997B2 (en) | 2014-08-08 | 2018-01-23 | Sonos, Inc. | Social playback queues |
US10645130B2 (en) | 2014-09-24 | 2020-05-05 | Sonos, Inc. | Playback updates |
US9959087B2 (en) | 2014-09-24 | 2018-05-01 | Sonos, Inc. | Media item context from social media |
US9860286B2 (en) | 2014-09-24 | 2018-01-02 | Sonos, Inc. | Associating a captured image with a media item |
EP3114625A1 (en) | 2014-09-24 | 2017-01-11 | Sonos, Inc. | Social media connection recommendations based on playback information |
US9723038B2 (en) | 2014-09-24 | 2017-08-01 | Sonos, Inc. | Social media connection recommendations based on playback information |
US9667679B2 (en) | 2014-09-24 | 2017-05-30 | Sonos, Inc. | Indicating an association between a social-media account and a media playback system |
US9690540B2 (en) | 2014-09-24 | 2017-06-27 | Sonos, Inc. | Social media queue |
US9817635B1 (en) * | 2015-02-24 | 2017-11-14 | Open Invention Netwotk LLC | Processing multiple audio signals on a device |
US10761689B1 (en) | 2015-02-24 | 2020-09-01 | Open Invention Networks LLC | Mobile call enhancement |
US10248376B2 (en) | 2015-06-11 | 2019-04-02 | Sonos, Inc. | Multiple groupings in a playback system |
US10303422B1 (en) | 2016-01-05 | 2019-05-28 | Sonos, Inc. | Multiple-device setup |
US9886234B2 (en) * | 2016-01-28 | 2018-02-06 | Sonos, Inc. | Systems and methods of distributing audio to one or more playback devices |
US9693168B1 (en) | 2016-02-08 | 2017-06-27 | Sony Corporation | Ultrasonic speaker assembly for audio spatial effect |
US9826332B2 (en) * | 2016-02-09 | 2017-11-21 | Sony Corporation | Centralized wireless speaker system |
US9924291B2 (en) * | 2016-02-16 | 2018-03-20 | Sony Corporation | Distributed wireless speaker system |
US9826330B2 (en) | 2016-03-14 | 2017-11-21 | Sony Corporation | Gimbal-mounted linear ultrasonic speaker assembly |
US9693169B1 (en) | 2016-03-16 | 2017-06-27 | Sony Corporation | Ultrasonic speaker assembly with ultrasonic room mapping |
US9794724B1 (en) | 2016-07-20 | 2017-10-17 | Sony Corporation | Ultrasonic speaker assembly using variable carrier frequency to establish third dimension sound locating |
US10712997B2 (en) | 2016-10-17 | 2020-07-14 | Sonos, Inc. | Room association based on name |
KR102431489B1 (ko) * | 2018-06-26 | 2022-08-10 | 현대자동차주식회사 | 차량 네트워크에서 다중 도메인을 활용한 통신 노드의 동기화 방법 및 장치 |
US10698857B2 (en) * | 2018-09-28 | 2020-06-30 | Bristol, Inc | Systems, methods, and apparatus to synchronize data bus access |
US11443737B2 (en) | 2020-01-14 | 2022-09-13 | Sony Corporation | Audio video translation into multiple languages for respective listeners |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4815110A (en) * | 1986-03-07 | 1989-03-21 | U.S. Philips Corporation | Method and a system for synchronizing clocks in a bus type local network |
US5689688A (en) * | 1993-11-16 | 1997-11-18 | International Business Machines Corporation | Probabilistic anonymous clock synchronization method and apparatus for synchronizing a local time scale with a reference time scale |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0253096B1 (en) * | 1986-05-20 | 1995-10-25 | Mitsubishi Denki Kabushiki Kaisha | Time synchronization method in a data transmission system |
US5235597A (en) * | 1991-03-08 | 1993-08-10 | International Business Machines Corp. | Synchronizing asynchronous protocol interactions between peer layers in different nodes of a layered communication network |
US5206857A (en) * | 1991-04-29 | 1993-04-27 | At&T Bell Laboratories | Apparatus and method for timing distribution over an asynchronous ring |
SE468495B (sv) * | 1991-05-29 | 1993-01-25 | Ellemtel Utvecklings Ab | Saett och anordning foer att synkronisera tvaa eller flera kommunikationsnaet av tidsmultiplextyp |
JPH0575635A (ja) * | 1991-09-12 | 1993-03-26 | Hitachi Ltd | ネツトワーク網同期管理システムおよび管理方式 |
GB2271251B (en) * | 1992-10-01 | 1996-08-14 | Digital Equipment Int | Timer synchronisation system |
US5408506A (en) * | 1993-07-09 | 1995-04-18 | Apple Computer, Inc. | Distributed time synchronization system and method |
US5525921A (en) * | 1994-04-07 | 1996-06-11 | Vlsi Technology, Inc. | Logic suppression of input and ground spikes for synchronized inputs |
US5751220A (en) * | 1995-07-14 | 1998-05-12 | Sensormatic Electronics Corporation | Synchronized network of electronic devices including back-up master units |
US5907685A (en) * | 1995-08-04 | 1999-05-25 | Microsoft Corporation | System and method for synchronizing clocks in distributed computer nodes |
-
1998
- 1998-01-23 US US09/012,321 patent/US6128318A/en not_active Expired - Lifetime
-
1999
- 1999-01-18 WO PCT/IB1999/000059 patent/WO1999038287A1/en active IP Right Grant
- 1999-01-18 DE DE69931218T patent/DE69931218T2/de not_active Expired - Lifetime
- 1999-01-18 EP EP99900091A patent/EP0972371B1/en not_active Expired - Lifetime
- 1999-01-18 JP JP53809599A patent/JP4355370B2/ja not_active Expired - Fee Related
- 1999-01-18 KR KR1019997008718A patent/KR100614424B1/ko not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4815110A (en) * | 1986-03-07 | 1989-03-21 | U.S. Philips Corporation | Method and a system for synchronizing clocks in a bus type local network |
US5689688A (en) * | 1993-11-16 | 1997-11-18 | International Business Machines Corporation | Probabilistic anonymous clock synchronization method and apparatus for synchronizing a local time scale with a reference time scale |
Also Published As
Publication number | Publication date |
---|---|
EP0972371B1 (en) | 2006-05-10 |
JP4355370B2 (ja) | 2009-10-28 |
DE69931218D1 (de) | 2006-06-14 |
DE69931218T2 (de) | 2007-03-08 |
EP0972371A1 (en) | 2000-01-19 |
WO1999038287A1 (en) | 1999-07-29 |
KR20010005650A (ko) | 2001-01-15 |
US6128318A (en) | 2000-10-03 |
JP2001516549A (ja) | 2001-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100614424B1 (ko) | 네트워크 노드 동기 방법 | |
KR102652569B1 (ko) | 비용 최적화된 환경들에서 phy 레벨 하드웨어 타임스탬핑 및 시간 동기화의 수행 | |
JP3977044B2 (ja) | 同期方法及び同期装置 | |
JP3698074B2 (ja) | ネットワーク同期方法、lsi、バスブリッジ、ネットワーク機器、およびプログラム | |
US7383458B2 (en) | Method and device for synchronizing the cycle time of a plurality of TTCAN buses based on determined global time deviations and corresponding bus system | |
JP2001024630A (ja) | 2つのネットワーク間での同期方法および装置 | |
JP3353824B2 (ja) | ネットワーク同期システム及びネットワーク同期方法 | |
US9319237B2 (en) | Method and device for controlling a bus system and a corresponding bus system | |
KR100655625B1 (ko) | 무선 네트워크 | |
US9442511B2 (en) | Method and a device for maintaining a synchronized local timer using a periodic signal | |
JP6800390B2 (ja) | 通信装置、通信システム、通信方法および通信プログラム | |
WO1998006194A1 (en) | Method and apparatus for network clock synchronization | |
KR101099782B1 (ko) | 이더넷 시스템에서의 망 동기 및 시간 동기 설정방법 | |
KR100605986B1 (ko) | 엄격한 동기를 위한 프레임 전송 장치 및 그 프레임 전송제어 방법 | |
Nicolau et al. | Clock duplicity for high-precision timestamping in Gigabit Ethernet | |
JPH0537501A (ja) | 受信信号同期回路 | |
JPH04358441A (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: 20120806 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20130814 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20150811 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20160809 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20170801 Year of fee payment: 12 |
|
LAPS | Lapse due to unpaid annual fee |