RU2738446C1 - Synchronizing network device for wireless communication, in particular network terminal, in wireless network - Google Patents

Synchronizing network device for wireless communication, in particular network terminal, in wireless network Download PDF

Info

Publication number
RU2738446C1
RU2738446C1 RU2020117531A RU2020117531A RU2738446C1 RU 2738446 C1 RU2738446 C1 RU 2738446C1 RU 2020117531 A RU2020117531 A RU 2020117531A RU 2020117531 A RU2020117531 A RU 2020117531A RU 2738446 C1 RU2738446 C1 RU 2738446C1
Authority
RU
Russia
Prior art keywords
synchronization
iwc
sync
event
ccg
Prior art date
Application number
RU2020117531A
Other languages
Russian (ru)
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 RU2020117531A priority Critical patent/RU2738446C1/en
Priority to DE102020118068.3A priority patent/DE102020118068A1/en
Application granted granted Critical
Publication of RU2738446C1 publication Critical patent/RU2738446C1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/001Synchronization between nodes
    • H04W56/0015Synchronization between nodes one node acting as a reference for the others
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

FIELD: electrical communication engineering.
SUBSTANCE: invention relates to communication. To this end, the following steps are provided: receiving a synchronization frame and determining a timestamp TAP; using the IWC clock contained in the IWC, generating a time stamp TB, which determines the time of receiving the synchronization frame; potential change is created on IWC port, which is synchronization event; using IWC clock generates time stamp TSE, determining moment of synchronization event; and the SED determines the synchronization event by analysing the time duration of changing the potential of the IWC port and generates the time mark TS using the synchronized time signal TCCG, where TS determines the same synchronization event time as TSE. TAP, TB, TSE and TS, determined by processing one or more synchronization event frames, are then used to synchronize the synchronized time signal TCCG generated by the CCG system with the time signal of the master device.
EFFECT: technical result is simple synchronization of network nodes in a wireless network, implemented on low-cost hardware, while maintaining accurate synchronization.
21 cl, 7 dwg

Description

Изобретение относится к технологии синхронизации сетевого устройства для беспроводной связи, в частности сетевого терминала, в беспроводной сети, где сетевое устройство имеет интегрированную микросхему беспроводной связи (Integrated Wireless Chip; IWC), детектор событий синхронизации (Synchronization Event Detector; SED) для обнаружения событий синхронизации, управляемый генератор временного сигнала (Controllable Clock Generator; CCG) для генерации синхронизированного сигнала времени TCCG и устройство управления синхронизацией (SCD) для управления процессом синхронизации сетевого устройства. Кроме того, изобретение относится к сетевым устройствам, в которых применяется технология, а также к беспроводной сети с такими сетевыми устройствами.The invention relates to a technology for synchronizing a network device for wireless communication, in particular a network terminal, in a wireless network, where the network device has an Integrated Wireless Chip (IWC), a Synchronization Event Detector (SED) for detecting synchronization events , a Controllable Clock Generator (CCG) for generating a synchronized time signal T CCG, and a clock control device (SCD) for controlling the synchronization process of a network device. In addition, the invention relates to network devices using the technology as well as a wireless network with such network devices.

В настоящее время Time-Sensitive Networking (TSN) представляет собой наиболее перспективный независимый от производителя и детерминированный по времени стандарт связи для промышленного применения. Термин TSN обозначает набор стандартов, над которыми работает целевая группа Time-Sensitive Networking Task Group, которая входит в рабочую группу ТЕЕЕ 802.1. TSN включает в себя два основных компонента: во-первых, протокол синхронизации устройств с точностью в субмикросекундном диапазоне IEEE 1588 и, во-вторых, ряд технологий для обеспечения планирования QoS (качества обслуживания) уведомлений в реальном времени с высоким приоритетом. С учетом его преимуществ стоит ожидать, что TSN заменит большую часть современных промышленных полевых шин в долгосрочной перспективе и предложит унифицированную модель связи для широкого спектра промышленного оборудования. Поскольку чисто проводные сети передачи данных имеют ограничения относительно плотности на единицу площади, соединения подвижных деталей, а также миниатюризации узлов, во внимание принимаются гибридные решения на базе проводных магистралей и нескольких островков с хабами с беспроводной связью.Time-Sensitive Networking (TSN) is currently the most promising vendor-independent and time-dependent communication standard for industrial applications. The term TSN denotes a set of standards that the Time-Sensitive Networking Task Group, which is part of the TEE 802.1 working group, is working on. TSN includes two main components: first, the IEEE 1588 submicrosecond precision device synchronization protocol, and second, a number of technologies to provide high priority QoS (Quality of Service) scheduling of notifications. Given its benefits, TSN can be expected to replace most of today's industrial fieldbuses in the long term and offer a unified communication model for a wide range of industrial equipment. Since purely wired data networks have limitations in terms of density per unit area, connections of moving parts, and miniaturization of nodes, hybrid solutions based on wired backbones and multiple islands with wireless hubs are taken into account.

Исследования и разработки последнего десятилетия показали, что беспроводная связь может применяться в различных сферах промышленной автоматизации, включая робототехнику, умные сети энергоснабжения (Smart Grids), крупноформатные сенсорные сетей и т.д., даже в очень сложных электромагнитных средах. Даже в такой среде беспроводная связь по стандарту IEEE 802.11 может достигать пропускной способности, сопоставимой с проводными сетями Ethernet, в частности, в случае применения стандартов IEEE 802.11 ах (Wi-Fi 6) следующего поколения. Это делает стандарты IEEE 802.11 перспективными кандидатами для беспроводных расширений TSN.Research and development over the past decade has shown that wireless communication can be applied in a variety of industrial automation applications, including robotics, Smart Grids, large-format sensor networks, etc., even in very complex electromagnetic environments. Even in this environment, IEEE 802.11 wireless communication can achieve bandwidth comparable to wired Ethernet networks, particularly when the next generation IEEE 802.11ax (Wi-Fi 6) standards are applied. This makes the IEEE 802.11 standards promising candidates for wireless extensions to TSN.

Тем не менее, во временной синхронизации нескольких устройств и планировании высокоприоритетных сообщений в беспроводной сети могут быть сложности: в проводной сети каждый узел имеет выделенный кабель в качестве собственной среды передачи данных. В противоположность этому устройства в беспроводной сети делят между собой одну и ту же коммуникационную среду и управляют доступом через Distributed Coordination Function (распределенная функция координации) (DCF), механизм стандартов IEEE 802.11, с помощью которого регулируется недетерминированный доступ нескольких абонентов к соответствующей беспроводной сети. Однако такого рода доступ может привести к непредсказуемому времени задержки. Использование менее популярных частотных диапазонов и способов перенастройки каналов может частично решить такие проблемы. Но этот подход, как правило, приводит к высокой стоимости заказного аппаратного обеспечения и плохо масштабируется для более крупных сетей.However, the timing of multiple devices and the scheduling of high-priority messages on a wireless network can be difficult: on a wired network, each node has a dedicated cable as its own transmission medium. In contrast, devices on a wireless network share the same communication medium and control access through the Distributed Coordination Function (DCF), an IEEE 802.11 standards mechanism that regulates non-deterministic access by multiple subscribers to a corresponding wireless network. However, this kind of access can lead to unpredictable latency. The use of less popular frequency bands and channel retuning methods can partially solve such problems. But this approach tends to lead to high custom hardware costs and does not scale well for larger networks.

Массовых коллизий и повторной передачи можно избежать посредством планирования сообщений с помощью особых протоколов передачи данных и прикладного уровня на уровне PHY стандарта IEEE802.11. Такие подходы могут значительно снизить вероятность коллизии и улучшить характеристики в реальном времени. Большая часть методов планирования, за исключением основанных на использовании маркеров, нуждается в отдельных механизмах синхронизации, которые намного чувствительнее реагируют на потерю пакетов, чем другой трафик. Ethernet TSN использует синхронизацию по времени на основе IEEE 1588, точность которой гарантируется точным добавлением метки времени в обоих направлениях кадров, предоставляемых TSN коммутаторами со стабильной задержкой передачи.Mass collisions and retransmissions can be avoided by scheduling messages using specific communication protocols and an application layer at the IEEE802.11 PHY layer. Such approaches can significantly reduce the likelihood of collisions and improve real-time performance. Most scheduling techniques, with the exception of token-based scheduling, require separate timing mechanisms that are much more sensitive to packet loss than other traffic. Ethernet TSN uses IEEE 1588 based time synchronization, the accuracy of which is guaranteed by accurate time stamping in both directions of frames provided by TSN switches with stable transmission delay.

Для промышленных применений часто используются бюджетные IWC, которые могут входить в состав, например, компьютера. Такого рода IWC, как правило, реализованы как система на кристалле (System-on-a-Chip) или SoC и могут включать в себя несколько процессоров, модули аналого-цифрового преобразователя и модули цифро-аналогового преобразователя, модуляторы и демодуляторы, а также усилители для отправки и приема беспроводного сигнала. SoC интегрирует как модули PHY, так и модули MAC в один микрочип. Это обеспечивает экономичную и энергоэффективную реализацию. Но в то же время прямой доступ разработчиков к модулю PHY становится невозможным, что не позволяет получить достаточно точные метки времени для отправленных и полученных кадров, а они необходимы для точной синхронизации. Доступ к модулю PHY для формирования меток времени для заданных кадров через внешние интерфейсы создает такие большие фазовые флуктуации, что такие метки времени вряд ли будут пригодны для синхронизации. При этом влияние на фазовые флуктуации, в частности, оказывает загрузка сети и процессора.For industrial applications, budget IWCs are often used, which can be part of, for example, a computer. This kind of IWC is typically implemented as a System-on-a-Chip or SoC and can include multiple processors, A / D converter modules and D / A converter modules, modulators and demodulators, and amplifiers. to send and receive a wireless signal. The SoC integrates both PHY and MAC modules into one microchip. This ensures economical and energy efficient implementation. But at the same time, direct access of developers to the PHY module becomes impossible, which does not allow obtaining sufficiently accurate time stamps for sent and received frames, which are necessary for accurate synchronization. Accessing the PHY to timestamp given frames via external interfaces creates such large phase fluctuations that such timestamps are unlikely to be suitable for synchronization. In this case, the influence on the phase fluctuations, in particular, is exerted by the load of the network and the processor.

Решение этой проблемы описано в работе [А.М. Romanov et al. "High Precision Synchronization between Commercial WiFi-ICs and External Device", 2019, 16th Workshop on Positioning, Navigation and Communications (WPNC), pp. 1-6]. Здесь указывается специальный способ и соответствующее аппаратное обеспечение, позволяющее синхронизировать часы, содержащиеся в бюджетной, работающей по полудуплексной технологии IEEE 802.11-IWC (Integrated Wireless Chip), с внешними часами, реализованными в специальном внешнем аппаратном обеспечении. Внешнее аппаратное обеспечение может быть реализовано, в частности, (в основном) с помощью ПЛИС (Программируемая Логическая Интегральная Схема). Для синхронизации используется высокоточная выходная функция IWC, которая также доступна извне. Для синхронизации генерируются предельно короткие кадры (Ultra Short Frames, USF). Время начала USF присваивается как метка времени, генерируемая часами IWC, так и метка времени, генерируемая часами внешнего аппаратного обеспечения. Эти пары значений меток времени, каждая из которых идентифицирует один и тот же момент времени (но с использованием двух разных часов), затем используются для синхронизации обоих часов с помощью специального алгоритма.The solution to this problem is described in [A.M. Romanov et al. "High Precision Synchronization between Commercial WiFi- ICs and External Device", 2019 16 th Workshop on Positioning, Navigation and Communications (WPNC), pp. 1-6]. Here, a special method and corresponding hardware are indicated, which allows synchronizing the clock contained in the budget, half-duplex IEEE 802.11-IWC (Integrated Wireless Chip) technology with an external clock implemented in special external hardware. External hardware can be implemented in particular (mostly) with an FPGA (Programmable Logic Integrated Circuit). For synchronization, a high-precision IWC output function is used, which is also externally accessible. For synchronization, extremely short frames (Ultra Short Frames, USF) are generated. The USF start time is assigned both the time stamp generated by the IWC clock and the time stamp generated by the external hardware clock. These pairs of timestamp values, each identifying the same point in time (but using two different clocks), are then used to synchronize both clocks using a special algorithm.

Авторы этой технологии признали, что большинство серийных бюджетных IWC имеют особую характеристику, которая может быть использована для синхронизации: такие IWC предназначены для передачи данных в полудуплексе. Очевидно, что входной порт приемно-регистрирующего узла, где IWC в режиме приема получает аналоговый сигнал приема, в режиме передачи переходит на нулевой потенциал, вероятно для того, чтобы избежать получения собственного сигнала передачи. В режиме приема этот порт имеет потенциал, отличный от нуля, например 600 мВ. Авторы обнаружили, что процессы переключения, запускаемые при переходе из режима приема в режим передачи и наоборот, выполняются с высокой точностью. Таким образом, каждый из этих процессов переключения может быть использован в качестве события синхронизации, которому часами IWC и внешними часами присваивается метка времени. Эта метка времени создается системой IWC с помощью встроенной в нее в качестве аппаратного обеспечения функциональной характеристики, при которой эти метки времени обеспечиваются только для синхронизации систем IWC друг с другом, но не для синхронизации системы IWC с внешним аппаратным обеспечением того же самого устройства. Таким образом, может быть реализована высокоточная синхронизация внешних часов с часами схемы IWC.The authors of this technology recognized that most of the commercial budget IWCs have a special characteristic that can be used for synchronization: such IWCs are designed to transmit data in half duplex. Obviously, the input port of the receiving and recording unit, where the IWC receives an analog receive signal in the receive mode, goes to zero potential in the transmit mode, probably in order to avoid receiving its own transmit signal. In receive mode, this port has a potential other than zero, for example 600 mV. The authors have found that the switching processes triggered when changing from the receive mode to the transmit mode and vice versa are performed with high accuracy. Thus, each of these switching processes can be used as a synchronization event, which is time-stamped by the IWC clock and external clock. This time stamp is generated by the IWC system with a hardware feature built into it, in which these time stamps are provided only to synchronize the IWC systems with each other, but not to synchronize the IWC system with external hardware of the same device. Thus, high-precision synchronization of the external clock with the clock of the IWC circuit can be realized.

Здесь следует отметить, что в данном описании метка времени - это значение времени, которое может, например, соответствовать показаниям счетчика с N знаков. Таким образом, такая метка времени может представлять собой временной период, нулевая точка которого соответствует моменту запуска соответствующего счетчика. Например, значение времени, содержащееся в метке времени, генерируемой устройством, выступающим в качестве ведущего, например, точкой доступа (ТД) беспроводной сети, может быть установлено на ноль в процессе инициализации устройства. В дальнейшем термин "метка времени" в зависимости от контекста понимается либо как соответствующее значение времени, либо как соответствующая последовательность битов, содержащаяся в соответствующем кадре, например, в кадре-маяке (beacon), передаваемом в сети IEEE 802.11.It should be noted here that, in this specification, a time stamp is a time value, which may, for example, correspond to a counter with N digits. Thus, such a time stamp can represent a time period, the zero point of which corresponds to the moment when the corresponding counter is started. For example, a time value contained in a timestamp generated by a master device, such as a wireless access point (AP), may be set to zero during device initialization. Hereinafter, the term "timestamp", depending on the context, is understood either as the corresponding time value, or as the corresponding sequence of bits contained in the corresponding frame, for example, in a beacon frame transmitted in the IEEE 802.11 network.

Современные беспроводные сети или сетевые устройства беспроводной связи имеют недостаток, который заключается в том, что при использовании недорогих IWC, которые не позволяют получить внешний доступ к таймерам или часам, содержащимся в них, невозможно достичь достаточной точности при синхронизации с сигналом времени, генерируемым центральными часами.Modern wireless networks or wireless networking devices have the disadvantage that when using inexpensive IWCs that do not allow external access to the timers or clocks contained in them, it is impossible to achieve sufficient accuracy when synchronized with the time signal generated by the central clock. ...

Исходя из этого уровня техники, в основе изобретение лежит задача создания технологии синхронизации устройств, действующих в качестве сетевых узлов в беспроводной сети, который будет прост и сможет быть реализован на экономичных аппаратных средствах и обеспечивает достаточную точность синхронизации. Кроме того, в основе изобретения лежит задача создания простого и экономичного механизма в виде сетевого устройства, позволяющего реализовать данный метод, а также беспроводной сети с такими сетевыми устройствами.Based on this prior art, the invention is based on the problem of providing a synchronization technology for devices acting as network nodes in a wireless network, which is simple and can be implemented on economical hardware and provides sufficient synchronization accuracy. In addition, the invention is based on the problem of providing a simple and economical mechanism in the form of a network device, allowing to implement this method, as well as a wireless network with such network devices.

Изобретение решает эти задачи с признаками формул изобретения 1 и 14, а также 17.The invention solves these problems with the features of claims 1 and 14, as well as 17.

Изобретение основано на том факте, что многие недорогие IWC, особенно те, которые работают в полудуплексе, имеют порт, который после получения кадра синхронизации может создавать изменение потенциала, которое может быть использовано в качестве события синхронизации или представлять собой событие синхронизации. Изменение потенциала, представляющее собой событие синхронизации, может быть начальным или конечным фронтом импульса, генерируемого на соответствующем порту в ответ на прием кадра синхронизации. Разумеется, это может быть положительный импульс, т.е. импульс с положительным (восходящим) передним фронтом и отрицательным (нисходящим) задним фронтом.The invention is based on the fact that many inexpensive IWCs, especially those that operate in half duplex, have a port that, upon receipt of a sync frame, can create a potential change that can be used as a sync event or a sync event. The potential change, which is a sync event, can be the start or end edge of a pulse generated on the corresponding port in response to receiving a sync frame. Of course, this can be a positive impulse, i.e. pulse with a positive (rising) leading edge and a negative (falling) falling edge.

Соответствующим портом, на котором генерируются события синхронизации, может быть порт IWC, специально предусмотренный для этой цели. В этом случае, в частности, каждое изменение потенциала, т.е. каждый восходящий или нисходящий фронт, может также представлять собой событие синхронизации, при котором изменение потенциала происходит в ответ на прием кадра синхронизации без возврата к исходному потенциалу по истечении заданного времени.The corresponding port on which synchronization events are generated may be an IWC port specially provided for this purpose. In this case, in particular, each change in potential, i.e. each rising or falling edge can also be a synchronization event in which a potential change occurs in response to receiving a synchronization frame without returning to its original potential after a predetermined time.

Однако, подходящий порт IWC, который уже доступен для других целей, также может быть использован в качестве порта, на котором генерируются события синхронизации. В этом случае, событие синхронизации может быть сгенерировано путем генерации сигнала на этом порту, который отличается от всех других сигналов, генерируемых на этом порту для соответствующих других целей. В частности, в этом случае в ответ на получение кадра синхронизации может быть сгенерирован импульс заданной длительности, длительность которого отличается от длительности всех остальных импульсов, генерируемых в качестве сигналов на этом порту. Начальный или конечный фронт импульса снова может быть использован в качестве события синхронизации.However, a suitable IWC port that is already available for other purposes can also be used as the port on which synchronization events are generated. In this case, a sync event can be generated by generating a signal on this port that is different from all other signals generated on this port for other corresponding purposes. In particular, in this case, in response to the receipt of the synchronization frame, a pulse of a predetermined duration can be generated, the duration of which is different from the duration of all other pulses generated as signals on this port. The start or end edge of a pulse can again be used as a sync event.

Например, во многих недорогих полудуплексных IWC изменение потенциала происходит при переходе из режима передачи в режим приема (и наоборот) на входном порту приемного тракта, на которую подается аналоговый, возможно, усиленный беспроводной входной сигнал. Например, если в режиме приема порт имеет потенциал 600 мВ, то в режиме передачи потенциал порта изменится примерно до 0 В, чтобы избежать приема сигнала передаваемого самой IWC.For example, in many low-cost half-duplex IWCs, the potential change occurs when changing from transmit to receive mode (and vice versa) at the input port of the receive path, which is fed an analog, possibly amplified wireless input signal. For example, if in receive mode the port has a potential of 600 mV, then in transmit mode the potential of the port will change to about 0 V to avoid receiving the signal transmitted by the IWC itself.

Вместо этого порта приема сигнала, например, порт coexistence интерфейса IWC может также использоваться для генерации событий синхронизации. Этот порт coexistence интерфейса может быть портом, который имеет первый потенциал (например, высокий), когда IWC активна (т.е. передает или принимает), и второй потенциал, когда IWC неактивна. Сигнал с этого порта coexistence интерфейса подается на другое беспроводное передающее и принимающее устройство, например, на устройство связи Bluetooth, и этот сигнал используется для определения того, какое из двух устройств связи может обмениваться данными (используя одну и ту же частотную полосу).Instead of this signal receiving port, for example, the coexistence port of the IWC interface can also be used to generate synchronization events. This interface coexistence port may be a port that has a first potential (eg, high) when the IWC is active (ie, transmitting or receiving) and a second potential when the IWC is inactive. The signal from this port of the coexistence interface is fed to another wireless transmitting and receiving device, such as a Bluetooth communication device, and this signal is used to determine which of the two communication devices can communicate (using the same frequency band).

Во всех таких случаях изменение потенциала, в частности, импульс, может быть сгенерирован на соответствующем порту в ответ на прием кадра синхронизации, изменение потенциала или предопределенный фронт импульса, интерпретируется как событие синхронизации. Как объяснялось выше, в тех случаях, когда данный порт также используется для других целей, импульс может быть сгенерирован с такой временной длительностью, которая отличается от временной длительности всех других импульсов, генерируемых или выводимых в этом порту.In all such cases, a change in potential, in particular a pulse, can be generated at the corresponding port in response to the reception of a synchronization frame, a change in potential or a predetermined edge of the pulse, is interpreted as a synchronization event. As explained above, in cases where this port is also used for other purposes, a pulse can be generated with a time duration that is different from the time duration of all other pulses generated or output in this port.

Изменения потенциала, каждое из которых представляет собой событие синхронизации, может генерироваться высокоуровневым или низкоуровневым программным обеспечением, либо подходящим аппаратным обеспечением IWC в ответ на получение кадра синхронизации, либо соответствующим внешним управлением IWC. В любом случае необходимо убедиться в том, что изменения потенциала, представляющие собой события синхронизации, имеют достаточно короткое время переключения, т.е. соответственно крутой фронт переключения. Кроме того, необходимо обеспечить, чтобы эти потенциальные изменения генерировались с достаточно низким джиггером. Таким образом, можно определить изменение потенциала порта и использовать его как событие синхронизации, позволяющее синхронизировать внешние часы, соотнесенные с IWC, с сигналом времени ведущего устройства, который подается на сетевое устройство посредством передачи кадров синхронизации.Potential changes, each of which is a synchronization event, can be generated by high-level or low-level software, either by the appropriate IWC hardware in response to receiving the synchronization frame, or by an appropriate external IWC control. In any case, it must be ensured that the potential changes, which are synchronization events, have a sufficiently short switching time, i.e. correspondingly steep switching edge. In addition, it must be ensured that these potential changes are generated with a sufficiently low jigger. In this way, a change in port potential can be detected and used as a synchronization event to synchronize the external clock associated with the IWC with the time signal of the master, which is fed to the network device by transmitting synchronization frames.

Сигнал времени ведущего устройства может, например, генерироваться основными часами, содержащимися в точке доступа беспроводной сети. При этом передача сигнала времени ведущего устройства на синхронизируемое сетевое устройство осуществляется с помощью меток времени ТАР, которые содержатся в кадрах синхронизации. Метка времени ТАР может быть сгенерирована, например, для определения момента передачи начала или конца кадра синхронизации.The master time signal can, for example, be generated by a master clock contained in a wireless access point. In this case, the transmission of the time signal of the master device to the synchronized network device is carried out using the time stamps TAP , which are contained in the synchronization frames. The time stamp TAP can be generated, for example, to determine when the start or end of the synchronization frame is transmitted.

При получении кадра синхронизации IWC создает метку времени ТB с использованием часов, содержащихся в IWC, причем метка времени ТB определяет тот же момент времени внутри кадра синхронизации, что и метка времени ТAP, то есть, к примеру, конец кадра синхронизации (в данном случае момент приема конца кадра синхронизации). Если известно время прохождения сигнала между устройством, например, точкой доступа, отправляющей кадр синхронизации, и синхронизируемым сетевым устройством, две метки времени ТAP и ТB могут использоваться для синхронизации внутренних часов IWC и часов ведущего устройства. Поскольку в беспроводной сети удаленность сетевых устройств от соответствующей точки доступа обычно невелика, временем прохождения сигнала при синхронизации можно пренебречь, так как время прохождения сигнала на порядок меньше допустимой погрешности синхронизации. Поскольку передача сигнала происходит со скоростью света, даже на расстоянии 100 м между точкой доступа и соответствующим сетевым устройством время прохождения составит всего 333 нс, что значительно меньше обычно требуемой максимальной погрешности синхронизации, например, составляющей 2 мкс. Тем не менее, цель настоящего изобретения состоит не в синхронизации часов ведущего устройства с внутренними часами системы IWC, а в синхронизации часов ведущего устройства с CCG, поскольку, как минимум недорогие TWC не имеют интерфейса, через который можно было бы получить доступ к внутренним часам системы IWC (т.е. доступ, который в основном может осуществляться без джиггера и без существенной задержки). По этой причине, согласно изобретению, с помощью IWC создается событие синхронизации, которому присваивается как метка времени TSE, сгенерированная с помощью внутренних часов IWC, так и метка времени TS, сгенерированная с помощью CCG. Таким образом, для синхронизации CCG с часами ведущего устройства, согласно изобретению, можно использовать временные метки ТАP, ТB, TSE и TS.Upon receipt of the sync frame, the IWC creates a time stamp T B using the clock contained in the IWC, where the time stamp T B defines the same time within the sync frame as the time stamp T AP , that is, for example, the end of the sync frame (in in this case, the moment of receiving the end of the synchronization frame). If the travel time between the device, such as the access point sending the synchronization frame, and the synchronized network device is known, the two time stamps T AP and T B can be used to synchronize the IWC's internal clock and the master clock. Since the distance of network devices from the corresponding access point in a wireless network is usually small, the signal transit time during synchronization can be neglected, since the signal transit time is an order of magnitude less than the admissible synchronization error. Since the signal is transmitted at the speed of light, even at a distance of 100 m between the access point and the corresponding network device, the transit time will be only 333 ns, which is much less than the usually required maximum synchronization error, for example, 2 μs. However, the purpose of the present invention is not to synchronize the master clock with the internal clock of the IWC system, but to synchronize the master clock with the CCG, since at least inexpensive TWCs do not have an interface through which the internal clock of the system can be accessed. IWC (i.e. an access that can basically be done without a jigger and without significant delay). For this reason, according to the invention, a synchronization event is generated by the IWC, which is assigned both the time stamp T SE generated by the IWC's internal clock and the time stamp T S generated by the CCG. Thus, the time stamps T AP , T B , T SE and T S can be used to synchronize the CCG with the master clock according to the invention.

Событие синхронизации создается посредством перевода IWC в режим передачи и отправки кадра события синхронизации с характерной временной длительностью, при этом на порт IWC на время кадра события синхронизации создается изменение потенциала. Само событие синхронизации может быть начальным или конечным фронтом изменения потенциала определяющего порта. При этом событию синхронизации IWC присваивает метка времени TSE. В то же время событие синхронизации обнаруживается SED, и SED присваивает событию синхронизации метку времени TS с использованием сигнала времени CCG. Это позволяет после каждого получения кадра синхронизации определить набор из 4 меток времени ТАP, ТB, TSE и TS, которые будут использоваться для синхронизации сгенерированного CCG синхронизированного сигнала времени TCCG по основному сигналу времени.A synchronization event is generated by switching the IWC to transmit mode and sending a synchronization event frame with a characteristic time duration, while a potential change is created on the IWC port for the duration of the synchronization event frame. The synchronization event itself can be the start or end edge of the potential change of the determining port. In this case, the IWC timestamp assigns the time stamp T SE to the synchronization event. At the same time, the synchronization event is detected by the SED and the SED assigns the time stamp T S to the synchronization event using the CCG time signal. This allows, after each acquisition of a synchronization frame, to define a set of 4 time stamps T AP , T B , T SE and T S that will be used to synchronize the CCG-generated synchronized time signal T CCG to the main time signal.

Таким образом, изобретение обеспечивает высокую точность синхронизации сетевых устройств с сигналом времени, генерируемым центральными часами, даже если сетевые устройства содержат недорогие IWC, которые не допускают внешнего доступа к таймерам или часам, содержащимся в них.Thus, the invention provides high accuracy in synchronizing network devices with the time signal generated by the central clock, even if the network devices contain inexpensive IWCs that do not allow external access to the timers or clocks contained therein.

Согласно одной из форм выполнения изобретения характерная временная длительность кадра события синхронизации выбрана таким образом, чтобы отличаться от всех обычных временных длительностей кадров передачи, которые могут возникать при коммуникации между сетевым устройством и последующим сетевым устройством, и что с помощью SED посредством анализа временной длительности изменения потенциала порта IWC определяется событие синхронизации, когда временная длительность изменения потенциала находится в заданном диапазоне. Это дает относительно простой способ создания уникальных событий синхронизации. Такие события синхронизации могут определяться посредством оценки промежутка времени между двумя изменениями потенциала соответствующего порта IWC, происходящими при переключении из режима приема в режим передачи и обратно. Только если этот промежуток времени соответствует заданному промежутку времени для кадра события синхронизации, начальный или конечный фронт распознается как событие синхронизации.According to one embodiment of the invention, the characteristic frame timing of the synchronization event is chosen to be different from all the usual transmission frame timing that can occur during communication between a network device and a subsequent network device, and that by means of an SED analysis of the potential change timing the IWC port detects a synchronization event when the time duration of the potential change is within the specified range. This provides a relatively easy way to create unique sync events. Such timing events can be determined by estimating the time interval between two changes in the potential of the corresponding IWC port that occur when switching from receive mode to transmit mode and vice versa. Only if this time interval matches the specified time interval for a sync event frame, the start or end edge is recognized as a sync event.

Согласно следующей форме выполнения кадр события синхронизации генерируется сразу после получения кадра синхронизации или по истечении заданного времени ожидания, которое меньше или равно минимальному времени ожидания, которое может возникнуть при коммуникации между сетевым устройством и следующим, сетевым устройством между приемом и отправкой кадров, причем создание кадра события синхронизации преимущественно вызывается функцией, реализованной с помощью аппаратного и/или программного обеспечения в IWC.According to the following embodiment, a synchronization event frame is generated immediately after receiving a synchronization frame or after a predetermined latency time, which is less than or equal to the minimum latency that can occur during communication between the network device and the next network device between receiving and sending frames, and the creation of the frame Synchronization events are primarily triggered by a function implemented in hardware and / or software in IWC.

Это делает возможной одновременную синхронизацию всех сетевых устройств в соответствующей беспроводной по метке времени синхронизации ТАP, если метка времени синхронизации ТАP передается в кадре сетевой синхронизации, например, Beacon в протоколе передачи IEEE 802.11. В этом случае все сетевые устройства будут одновременно переключаться в режим передачи для создания соответствующего события синхронизации. Хотя в течение времени передачи соответствующих кадров событий синхронизации происходит соответствующее наложение соответствующих передаваемых сигналов сетевых устройств, это не играет никакой роли, поскольку кадры событий синхронизации не используются для коммуникации. С этой целью можно реализовать создание кадра события синхронизации с помощью аппаратного и/или программного обеспечения внутри IWC, а не в результате программной команды, которую SCD передает в IWC. Ведь для этого требуется обработка соответствующих команд в SCD в режиме реального времени и их передача системе IWC. Хотя это и было бы возможно в принципе, это потребовало бы соответствующих характеристик SCD в реальном времени, что противоречило бы принципу экономичности в реализации SCD.This makes it possible for all network devices to synchronize simultaneously on the corresponding wireless on the TAP sync timestamp if the TAP sync timestamp is transmitted in a network sync frame, for example Beacon in the IEEE 802.11 transmission protocol. In this case, all network devices will simultaneously switch to transmit mode to generate the corresponding synchronization event. Although a corresponding overlap of the corresponding transmitted signals from the network devices occurs during the transmission time of the respective synchronization event frames, this is irrelevant since the synchronization event frames are not used for communication. To this end, it is possible to implement the creation of a synchronization event frame by hardware and / or software within the IWC, rather than as a result of a software command that the SCD sends to the IWC. Indeed, this requires the processing of the corresponding commands in the SCD in real time and their transmission to the IWC system. While this would be possible in principle, it would require appropriate real-time SCD performance, which would be contrary to the principle of economy in implementing SCD.

Согласно одной из форм выполнения изобретения синхронизированный сигнал времени, генерируемый CCG, TCCG генерируется с применением отношенияAccording to one embodiment of the invention, a synchronized time signal generated by the CCG, T CCG is generated using the ratio

Figure 00000001
Figure 00000001

где TSRC - выходной сигнал таймера CCG, k - коэффициент синхронизации, а Тmd - сдвиг фаз, а коэффициент синхронизации k и сдвиг фаз Тmd определяются SCD из меток времени ТAP, ТB, TSE и TS.where T SRC is the CCG timer output signal, k is the synchronization factor, and T md is the phase shift, and the synchronization factor k and the phase shift T md are determined by SCD from the time stamps T AP , T B , T SE and T S.

В соответствии с предпочтительной формой выполнения изобретения новое значение для сдвига фаз TSRC может определяться циклически, при этом в текущем цикле новое значение для сдвига фаз Tmd определяется сложением с учетом знака предыдущего значения сдвига фаз Tmd и погрешности синхронизации ε, определяемой в текущем цикле, которая определяется в соответствии с соотношениемIn accordance with a preferred embodiment of the invention, the new value for the phase shift T SRC can be determined cyclically, while in the current cycle the new value for the phase shift T md is determined by addition, taking into account the sign of the previous value of the phase shift T md and the synchronization error ε determined in the current cycle , which is determined in accordance with the relation

Figure 00000002
Figure 00000002

Коэффициент синхронизации k может быть постоянным в течение фазы синхронизации. Коэффициент синхронизации k может быть определен в ранее выполненной фазе запуска, как описано ниже, а также может быть сохранен в ПЗУ. ПЗУ может быть предусмотрено для этой цели как в CCG, так и в SCD.The sync factor k can be constant during the sync phase. The sync factor k can be determined in a previously performed startup phase, as described below, and can also be stored in ROM. ROM can be provided for this purpose in both the CCG and SCD.

Это означает, что в фазе синхронизации для каждого кадра синхронизации можно определить кортеж из 4 элементов меток времени ТАP, ТB, TSE и TS,, по которым можно определить сдвиг фаз Tmd и загрузить его в CCG.This means that in the synchronization phase, for each synchronization frame, a tuple of 4 timestamp elements T AP , T B , T SE and T S can be determined, from which the phase shift T md can be determined and loaded into the CCG.

Согласно следующей форме выполнения фильтрация ложных срабатываний может быть выполнена для обнаруженных событий синхронизации, предпочтительно с использованием меток времени ТB и TSE, или ТBSE=TSEB и погрешности синхронизации ε, при этом метки времени ТАP, ТB, TSE и TS, присвоенные событию синхронизации, используются для синхронизации только в том случае, если данное событие синхронизации не определено как ложное срабатывание. Например, для погрешности синхронизации ε и/или разности во времени TBSE (т.е. времени между получением кадра синхронизации и событием синхронизации (измеренным с помощью часов IWC), верхняя и нижняя границы могут быть указаны соответственно, при этом событие синхронизации и соответствующий набор из 4 элементов меток времени используются для синхронизации только в том случае, если эти границы соблюдены.According to a further embodiment, false alarm filtering can be performed on detected timing events, preferably using time stamps T B and T SE , or T BSE = T SE -T B and timing error ε, where time stamps T AP , T B , The T SE and T S assigned to a sync event are used for sync only if the sync event is not defined as a false trigger. For example, for the timing error ε and / or the time difference T BSE (i.e., the time between the receipt of the synchronization frame and the synchronization event (measured with the IWC clock), upper and lower bounds can be specified, respectively, with the synchronization event and the corresponding a set of 4 elements of time stamps are used for synchronization only if these boundaries are met.

Согласно одной из форм выполнения изобретения фаза синхронизации сохраняется (т.е. выполняются описанные выше этапы фазы синхронизации) до тех пор, пока не будет выполнен положительный критерий завершения. После выполнения критерия завершения фаза синхронизации может быть изменена на фазу предварительной синхронизации. Для этого погрешность синхронизации ε может быть определена для последовательных событий синхронизации (и, возможно, признана действительной посредством фильтрации) и загружена в CCG как значение для Tmd до тех пор, пока число Nps последовательных значений погрешности синхронизации ε не превысит пороговое значение εlim. При достижении числа Nps последовательных значений погрешности синхронизации ε, превышающего пороговое значение εlim, запускается фаза предварительной синхронизации.According to one embodiment of the invention, the synchronization phase is maintained (ie, the synchronization phase steps described above are performed) until a positive termination criterion is met. Once the termination criterion is met, the synchronization phase can be changed to a pre-synchronization phase. To this end, the synchronization error ε can be determined for successive synchronization events (and possibly recognized as valid through filtering) and loaded into the CCG as a value for T md until the number N ps of consecutive values of the synchronization error ε exceeds the threshold value ε lim ... When the number N ps of consecutive values of the synchronization error ε exceeds the threshold value ε lim , the preliminary synchronization phase starts.

Если положительный критерий завершения не будет достигнут в течение заданного времени или с помощью заданного числа попыток достижения числа Nsync, то фаза предварительной синхронизации может быть перенесена на фазу запуска после следующей формы выполнения.If a positive termination criterion is not reached within a given time or by a given number of attempts to reach the number N sync , then the pre-sync phase can be moved to the start phase after the next form of execution.

В соответствии с предпочтительной формой выполнения изобретения коэффициент синхронизации k определяется на этапе запуска, на котором для множества кадров синхронизации выполняются этапы (а), (с) и (е) по формуле 1. Разумеется, здесь также может быть выполнена фильтрация ложных срабатываний обнаруженных событий синхронизации, для чего могут потребоваться этапы (b) и (d) формулы 1, т.е. этапы для определения меток времени ТB и TSE, если эти параметры используются для фильтрации. Для определения коэффициента синхронизации k можно определить одно или несколько индивидуальных значений ki коэффициента синхронизации в соответствии с отношениемIn accordance with a preferred embodiment of the invention, the synchronization factor k is determined at the start-up stage, in which steps (a), (c) and (e) are performed for a plurality of synchronization frames according to Formula 1. Of course, false alarm filtering of detected events can also be performed here. synchronization, which may require steps (b) and (d) of Formula 1, i.e. steps for determining the time stamps T B and T SE , if these parameters are used for filtering. To determine the synchronization coefficient k, one or more individual values k i of the synchronization coefficient can be determined in accordance with the ratio

Figure 00000003
Figure 00000003

где индексы [i] и [j] соответственно обозначают различные события синхронизации и соответствующие метки времени ТАP и TS, предпочтительно действует j=i-1, т.е. для событий синхронизации, которые запускаются в ответ на последовательные кадры синхронизации, предпочтительно определять разности во времени

Figure 00000004
и
Figure 00000005
where the subscripts [i] and [j] respectively denote different synchronization events and the corresponding time stamps T AP and T S , preferably j = i-1, i.e. for synchronization events that are triggered in response to successive synchronization frames, it is preferable to determine time differences
Figure 00000004
and
Figure 00000005

Здесь следует отметить, что нет необходимости использовать каждый кадр синхронизации, полученный от IWC, для генерации кадра события синхронизации и, следовательно, для генерации события синхронизации. Скорее, только выбранные кадры синхронизации, например, только каждый n-й кадр синхронизации, могут быть использованы для генерации или повторного использования кадра события синхронизации или события синхронизации. В качестве альтернативы, хотя кадр события синхронизации может быть сгенерирован в ответ на каждый полученный кадр синхронизации, однако только выбранные кадры события синхронизации, например, только каждый n-й кадр события синхронизации, могут быть использованы для генерации или повторного использования события синхронизации.It should be noted here that it is not necessary to use every sync frame received from the IWC to generate a sync event frame, and therefore to generate a sync event. Rather, only selected sync frames, eg, only every n-th sync frame, can be used to generate or reuse a sync event or sync event frame. Alternatively, although a sync event frame may be generated in response to each sync frame received, only selected sync event frames, eg, only every nth sync event frame, can be used to generate or reuse a sync event.

Для определения коэффициента синхронизации k можно усреднить число Nk индивидуальных значений ki. При этом подлежащие усреднению индивидуальные значения ki могут быть отобраны с помощью одного или нескольких условий фильтрации.To determine the synchronization coefficient k, the number N k of individual values of k i can be averaged. In this case, the individual values of k i to be averaged can be selected using one or more filtering conditions.

Согласно форме выполнения определяются индивидуальные значения ki по меткам времени для пар последовательных событий синхронизации в первую очередь для числа Ns событий синхронизации, предпочтительно последовательных событий синхронизации или событий синхронизации, которые распределены соответственно по постоянному числу промежуточных событий синхронизации. Индивидуальные значения ki используются для дальнейшего вычисления только в том случае, если они были отобраны с использованием одного или нескольких условий фильтрации, а коэффициент синхронизации к вычисляется только в том случае, если достигнуто заданное по умолчанию минимальное количество выбранных индивидуальных значений ki. В ином случае лучше отклонить общее число Ns событий синхронизации и связанных с ними меток времени ТАР и TS для определения коэффициента синхронизации k.According to an embodiment, individual values k i are determined from time stamps for pairs of consecutive synchronization events, primarily for a number N s of synchronization events, preferably successive synchronization events or synchronization events, which are respectively distributed over a constant number of intermediate synchronization events. Individual k i values are used for further computation only if they were selected using one or more filter conditions, and the sync factor k is only computed if the default minimum number of selected individual k i values is reached. Otherwise, it is better to reject the total number N s of synchronization events and their associated time stamps T AP and T S to determine the synchronization factor k.

Значение коэффициента синхронизации k, определенное на этапе запуска, может быть сохранено и загружено в CCG при активировании или сбросе сетевого устройства. Благодаря этому относительно сложное определение коэффициента синхронизации к не требует повторного определения при каждом активировании или сбросе сетевого устройства.The value of the sync factor k determined during the startup phase can be saved and loaded into the CCG when the network device is activated or reset. Due to this, the relatively complex determination of the sync factor k does not require redetermination each time the network device is activated or reset.

Сетевое устройство, согласно изобретению, может быть реализовано с пощью ПЛИС и компьютера с IWC, например, одноплатного компьютера, на котором работает не ОС реального времени. ПЛИС может реализовать как CCG, так и SED. Может также потребоваться согласование потенциала между соответствующим портом IWC и портом ПЛИС, реализующим порт ввода SED. Разумеется, согласование потенциала может быть реализовано с помощью соответствующего дополнительного аппаратного обеспечения.The network device according to the invention can be implemented with an FPGA and an IWC computer, for example a single board computer running a non-real-time OS. FPGA can implement both CCG and SED. Potential matching may also be required between the corresponding IWC port and the FPGA port implementing the SED input port. Of course, potential matching can be realized with the appropriate additional hardware.

Следует четко отметить, что аппаратное обеспечение для реализации функциональных возможностей IWC, SED, SCD и CCG, а также других функциональных возможностей могут быть распределены или даже объединены любым способом. Например, аппаратное обеспечение для реализации SED также может быть объединено с аппаратным обеспечением для IWC в интегральной схеме, например, в виде SoC. Порт IWC, на котором выводится кадр события синхронизации, в данном случае будет реализован как внутренний порт соответствующей интегральной схемы.It should be clearly noted that the hardware to implement the IWC, SED, SCD and CCG functionality as well as other functionality can be distributed or even combined in any way. For example, the hardware for implementing the SED can also be combined with the hardware for the IWC in an integrated circuit, such as a SoC. The IWC port on which the sync event frame is output will in this case be implemented as an internal port of the corresponding IC.

Последующие формы выполнения изобретения вытекают из зависимых пунктов формулы.Further embodiments of the invention follow from the dependent claims.

Изобретение более подробно описывается ниже на примере выполнения, представленном на чертеже. На чертеже представлено следующее:The invention is described in more detail below with reference to the exemplary embodiment shown in the drawing. The drawing shows the following:

Фиг. 1 блок-схема необходимых для понимания изобретения основных компонентов сетевого устройства, реализующего способ синхронизации в соответствии с изобретением;FIG. 1 is a block diagram of the main components of a network device that implements the synchronization method in accordance with the invention, necessary for understanding the invention;

Фиг. 2 диаграмма, показывающая общую последовательность различных фаз способа синхронизации;FIG. 2 is a diagram showing the general sequence of the various phases of the synchronization method;

Фиг. 3 блок-схема фазы запуска реализации способа в соответствии с изобретением;FIG. 3 is a block diagram of the start-up phase of the implementation of the method in accordance with the invention;

Фиг. 4 блок-схема фазы предварительной синхронизации формы выполнения способа в соответствии с изобретением;FIG. 4 is a block diagram of a pre-synchronization phase of an embodiment of a method according to the invention;

Фиг. 5 блок-схема фазы синхронизации формы выполнения способа в соответствии с изобретением; иFIG. 5 is a block diagram of a synchronization phase of an embodiment of a method according to the invention; and

Фиг. 6 гистограмма ошибки синхронизации 6, измеренной в ходе эксперимента в сети, состоящей из точки доступа и двух синхронизируемых сетевых устройств, где на Фиг. 6а показана гистограмма для первого устройства и Фиг. 6b гистограмма для второго устройства.FIG. 6 is a histogram of the synchronization error 6, measured during the experiment in a network consisting of an access point and two synchronized network devices, where in FIG. 6a shows a histogram for the first device and FIG. 6b is a histogram for the second device.

На Фиг. 1 показана блок-схема компонентов сетевого устройства 100, которая далее подробно не описывается, и с помощью которой может быть реализован способ синхронизации в соответствии с настоящим изобретением. Сетевое устройство 100 включает в себя систему IWC 102, с помощью которой сетевое устройство беспроводным способом подключается к точке доступа, которая далее подробно не описывается. В качестве беспроводного протокола передачи принимаются в расчет, например, стандарты согласно IEEE 802.11. Поскольку определенные приложения, работающие на сетевых устройствах, требуют синхронизации с центральными часами или центральным временем, определенным центральными часами, точка доступа может посылать кадры синхронизации в определенные интервалы времени для реализации синхронизации сетевых устройств в определенной ею беспроводной сети, и в каждом кадре будет содержаться метка времени ТAP, генерируемая центральными часами. Например, центральные часы могут быть предусмотрены в самой точке доступа или в любом другом сетевом устройстве, которое не обязательно должно находиться в соответствующей беспроводной сети. В рамках протоколов IEEE 802.11 кадры синхронизации называются маяками (Beacon).FIG. 1 is a block diagram of the components of a network device 100, which will not be described in further detail below, and with which the synchronization method in accordance with the present invention may be implemented. The network device 100 includes an IWC system 102 by which the network device wirelessly connects to an access point, which will not be described in further detail below. As a wireless transmission protocol, for example, standards according to IEEE 802.11 are taken into account. Since certain applications running on network devices require synchronization with the central clock or central time determined by the central clock, the access point may send synchronization frames at specific intervals to synchronize network devices on the wireless network it defines, and each frame will contain a tag time T AP , generated by the central clock. For example, a central clock can be provided at the access point itself, or at any other network device that does not need to be on a corresponding wireless network. Within the IEEE 802.11 protocols, synchronization frames are called Beacons.

Кроме того, сетевое устройство 100 включает в себя SED 104 для обнаружения событий синхронизации, а также CCG 106 для генерирования синхронизированного сигнала времени TCCG и SCD 108, который управляет способом синхронизации. Как показано на фиг. 1, SED 104 и CCG 106 могут быть интегрированы, например, в виде ПЛИС 110.In addition, the network device 100 includes an SED 104 for detecting synchronization events as well as a CCG 106 for generating a synchronized time signal T CCG and an SCD 108 that controls the synchronization method. As shown in FIG. 1, SED 104 and CCG 106 can be integrated, for example, as FPGA 110.

Принятый сигнал, который генерируется точкой доступа, подается на IWC 102 с помощью антенны, подробно не показанной. Точно так же IWC 102 генерирует передаваемый сигнал, содержащий данные, которые генерируются локально в сетевом устройстве 100. Система IWC также содержит встроенные часы IWC, которые генерируют сигнал времени, но не доступны напрямую через интерфейс IWC 102 для других компонентов внутри сетевого устройства. Внутренние часы IWC, в частности, служат для генерации меток времени при беспроводной коммуникации с другими сетевыми устройствами. В частности, у экономичных систем IWC 102 нет выделенного порта, на который поступает сигнал, содержащий события синхронизации, которые в достаточной степени и без фазовых флуктуаций соответствуют назначенным меткам времени, генерируемыми внутренними часами IWC.The received signal, which is generated by the access point, is supplied to the IWC 102 using an antenna, not shown in detail. Likewise, the IWC 102 generates a transmit signal containing data that is generated locally in the network device 100. The IWC system also contains an internal IWC clock that generates a time signal but is not directly accessible via the IWC 102 interface to other components within the network device. The IWC's internal clock, in particular, is used to generate time stamps when communicating wirelessly with other network devices. In particular, the economical IWC 102 systems do not have a dedicated port that receives a signal containing timing events that match the assigned time stamps generated by the IWC's internal clock sufficiently and without phase fluctuations.

Однако авторы изобретения обнаружили, что даже экономичные IWC 102, работающие в полудуплексе, также дают возможность генерировать сигнал синхронизации Ssync, который содержит события синхронизации, которые могут быть использованы для синхронизации внешних часов, а именно в виде CCG 106. Речь идет о порте IWC 102, на который подается аналоговый сигнал приема непосредственно от антенны или через соответствующий усилитель. Установлено, что при переключении из режима приема IWC в режим передачи этот порт переходит с первого потенциала, который может составлять, например, 600 мВ, на второй, который может быть, в частности, нулевым потенциалом. Эти процессы переключения выполняются с высокой точностью и могут быть снабжены метками времени таких IWC, т.е. такая система IWC 102 способна генерировать метку времени, которая определяет соответствующее время переключения, где используется сигнал времени внутренних часов IWC.However, the inventors have found that even an economical IWC 102 operating in half duplex also provides the ability to generate an S sync signal that contains synchronization events that can be used to synchronize an external clock, namely in the form of CCG 106. This is an IWC port 102, which is fed with an analogue receive signal directly from an antenna or through a suitable amplifier. It was found that when switching from the IWC reception mode to the transmission mode, this port switches from the first potential, which can be, for example, 600 mV, to the second, which can be, in particular, zero potential. These switching processes are carried out with high precision and can be time-stamped by such IWCs, i.e. such an IWC 102 system is capable of generating a time stamp that identifies the corresponding switching time where the time signal of the IWC's internal clock is used.

Для генерации событий синхронизации в виде соответствующих изменений потенциала можно также использовать порт coexistence интерфейса IWC 102, который имеет первый потенциал, если IWC активна (т.е. разрешена передача и/или прием), и второй потенциал, если МКК неактивна и, следовательно, разрешена работа другого устройства беспроводной связи.To generate synchronization events in the form of corresponding potential changes, you can also use the coexistence port of the IWC 102 interface, which has the first potential if the IWC is active (i.e., transmission and / or reception is allowed), and the second potential if the IWC is inactive and, therefore, another wireless device is allowed.

Следует отметить, что изобретение не ограничивается такими вариантами IWC, в которых порт для аналогового входного сигнала "используется не по назначению". Также могут использоваться IWC, где предусмотрен соответствующий отдельный порт, на который выводится сигнал, содержащий события синхронизации, каждое из которых генерируется в ответ на получение кадра синхронизации.It should be noted that the invention is not limited to such IWC embodiments in which the port for the analog input signal is “misused”. IWCs can also be used, where a corresponding separate port is provided to which a signal is output containing synchronization events, each of which is generated in response to the receipt of a synchronization frame.

В форме выполнения, представленной на фиг. 1, этот порт IWC 102 обозначен контрольным символом 102а и подключен к порту ввода SED 104. Также может быть предусмотрено аппаратное обеспечение, которое детально не рассматривается, для согласования или разделения потенциалов. Структура SED 104 позволяет обнаруживать события синхронизации, содержащиеся в подаваемом на него сигнале синхронизации Ssync, т.е., в частности, процессы переключения, генерируемые в результате переключения IWC 102 из режима приема на режим передачи и наоборот.In the embodiment shown in FIG. 1, this port of the IWC 102 is denoted with a reference symbol 102a and is connected to the input port of the SED 104. Hardware, not covered in detail, may also be provided for potential matching or potential separation. The structure of the SED 104 makes it possible to detect synchronization events contained in the synchronization signal S sync supplied to it, ie, in particular, the switching processes generated as a result of switching the IWC 102 from the receive mode to the transmit mode and vice versa.

Сигнал времени TCCG, генерируемый CCG 106, подается на SED 104. Как уже упоминалось выше, SED 104 и CCG 106 могут быть реализованы в одной интегральной схеме 110, например, ПЛИС, за исключением аппаратного обеспечения для регулировки потенциала, если это необходимо. SED может использовать сигнал TCCG, поставляемый ему для генерации соответствующей метки времени при обнаружении события синхронизации.The time signal T CCG generated by CCG 106 is provided to SED 104. As mentioned above, SED 104 and CCG 106 can be implemented in the same integrated circuit 110, such as an FPGA, excluding the potential adjustment hardware if necessary. The SED can use the T CCG signal supplied to it to generate an appropriate time stamp when a sync event is detected.

SCD 108 получает соответствующие метки времени от SED 104 и предназначен для управления и выполнения всех действий описанного ниже способа синхронизации. SCD 108 может иметь структуру как у обычного компьютера и, в частности, как у простого одноплатного компьютера. Эта система управляет CCG 106 таким образом, что генерируемый синхронизированный сигнал времени TCCG соответствует заданным значениям, определенным SCD 108. Для этого SCD 108 загружает в CCG 106 соответствующие параметры синхронизации (см. ниже). SCD 108 может также подавать сигнал синхронизации TCCG, чтобы он также мог использовать синхронизированный сигнал времени и, при необходимости, сделать его доступным для соответствующих приложений, в частности, для программного обеспечения. Кроме того, система SCD 108 также подключена к IWC 102 и может запрашивать из нее метки времени, генерируемые IWC 102, используя внутренние часы IWC или данные, полученные из IWC 102, в частности, метки времени, содержащиеся в кадрах синхронизации, генерируемых с помощью сигнала времени ведущего устройства. Система также может соответствующим образом управлять IWC 102, например, для того чтобы побудить IWC к генерированию кадра события синхронизации с характерной длительностью.The SCD 108 receives the corresponding time stamps from the SED 104 and is designed to control and perform all actions of the synchronization method described below. The SCD 108 can be structured like a conventional computer, and in particular like a simple single board computer. This system controls the CCG 106 so that the generated synchronized time signal T CCG matches the setpoints determined by the SCD 108. For this, the SCD 108 loads the appropriate timing parameters into the CCG 106 (see below). The SCD 108 can also provide a T CCG sync signal so that it can also use the synchronized time signal and, if necessary, make it available to appropriate applications, in particular software. In addition, the SCD system 108 is also connected to the IWC 102 and can request from it the time stamps generated by the IWC 102 using the internal clock of the IWC or data received from the IWC 102, in particular the time stamps contained in the synchronization frames generated by the signal time of the master. The system can also control the IWC 102 appropriately, for example, to cause the IWC to generate a timing event frame with a specific duration.

Далее разъясняются различные варианты способа синхронизации в соответствии с изобретением. В частности, этот способ позволяет снизить требования к возможностям SCD 108 в режиме реального времени. Это достигается путем переноса всех критически важных операций в микропрограммное обеспечение IWC 102 или в аппаратное обеспечение или микропрограммное обеспечение SED 104 или CCG 106, при этом SED и CCG также могут быть реализованы в качестве экономичных ПЛИС.The following explains various variants of the synchronization method according to the invention. In particular, this method can reduce the requirements for the capabilities of the SCD 108 in real time. This is achieved by porting all critical operations to the IWC 102 firmware or to the SED 104 or CCG 106 hardware or firmware, while the SED and CCG can also be implemented as cost-effective FPGAs.

Например, сигнал времени ведущего устройства или соответствующие метки времени ТАР могут передаваться с помощью функции синхронизации времени, определенной в IEEE 802.11 как источник синхронизации времени ведущего устройства. В этом случае метки времени ТAP передаются кадрами синхронизации, называемыми маяками (Beacon). Однако изобретение также позволяет использовать отдельно сгенерированные кадры синхронизации с использованием любого протокола передачи.For example, the time signal of the master or corresponding time stamps TAP may be transmitted using the time synchronization function defined in IEEE 802.11 as the time synchronization source of the master. In this case, the time stamps T AP are transmitted in synchronization frames called Beacons. However, the invention also allows the use of separately generated sync frames using any transmission protocol.

Целью способа является синхронизация нескольких беспроводных узлов, т.е. нескольких беспроводных сетевых устройств 100, соединенных с точкой доступа. Для этого каждое сетевое устройство 110 должно включать аппаратную инфраструктуру, представленную на фиг. 1.The purpose of the method is to synchronize several wireless nodes, i.e. multiple wireless network devices 100 connected to the access point. To do this, each network device 110 must include the hardware infrastructure shown in FIG. one.

Каждый раз, когда IWC 102 получает действительный кадр синхронизации, например, кадр-маяк, он генерирует событие синхронизации на порте 102а. При этом сохраняется метка времени синхронизации ТАР, содержащаяся в кадре синхронизации. Кроме того, IWC 102 генерирует и сохраняет метку времени ТB, которая определяет прием кадра синхронизации, и метку времени TSE, которая определяет время события синхронизации. Метки времени ТB и TSE соответственно генерируются с помощью сигнала времени внутренних часов IWC.Every time the IWC 102 receives a valid sync frame, such as a beacon frame, it generates a sync event on port 102a. In this case, the synchronization time stamp TAP , contained in the synchronization frame, is preserved. In addition, the IWC 102 generates and stores a time stamp T B , which determines the reception of the synchronization frame, and a time stamp T SE , which determines the timing of the synchronization event. The time stamps T B and T SE are respectively generated by the time signal of the IWC's internal clock.

Как уже разъяснялось выше, событие синхронизации может заключаться во фронте сигнала (например, напряжения), который подается на SED 104 через порт 102а. SED 104 обнаруживает каждое событие синхронизации. Оно может состоять из синхронизирующего фронта сигнала синхронизации Ssync, который генерируется при отправке кадра синхронизации на порт 102а. Событие синхронизации может быть сформировано либо (отрицательным) синхронизирующим фронтом, генерируемым переходом IWC 102 из режима приема в режим передачи (т.е. началом кадра события синхронизации, переданного IWC 102), либо (положительным синхронизирующим фронтом, генерируемым переходом IWC 102 из режима передачи в режим приема (т.е. концом кадра события синхронизации, переданного IWC 102).As explained above, the synchronization event may occur on the edge of a signal (eg, voltage) that is supplied to the SED 104 via port 102a. SED 104 detects every synchronization event. It may consist of the sync edge of the sync signal, S sync , which is generated when the sync frame is sent to port 102a. A sync event can be generated either by a (negative) sync edge generated by the IWC 102 transition from receive mode to transmit mode (i.e., the start of a sync event frame sent by IWC 102), or (a positive sync edge generated by the IWC 102 transition from transmit mode to receive mode (i.e., by the end of the frame of the sync event sent by the IWC 102).

Однако, событие синхронизации может быть сгенерировано любым другим способом на соответствующем порту IWC (см. объяснения выше).However, a sync event can be generated in any other way on the appropriate IWC port (see explanations above).

Тем не менее, SED 104 должен не только определить наличие соответствующего синхронизирующего фронта в сигнале синхронизации Ssync, но и то, действительно ли это - синхронизирующий фронт, генерируемый кадром события синхронизации. Для этой цели, как уже объяснялось выше, каждый кадр события синхронизации имеет характерную длительность, которой обычно не бывает, или, по крайней мере, которая крайне редко бывает при стандартной передаче данных с учетом соответствующего протокола передачи. Например, длительность кадра события синхронизации может быть короче, чем длительность всех обычных кадров. Следовательно, SED 104 должен также иметь способность определять интервалы между синхронизирующими фронтами, которые генерируются соответствующими кадрами (будь то кадры во время стандартной передачи данных или кадры событий синхронизации). Так как передающий кадр в сигнале синхронизации Ssync инициируется, например, падающим синхронизирующим фронтом и завершается нарастающим синхронизирующим фронтом, SED 104 может определять передающие кадры, которые, в силу своей характерной длительности, могут быть только кадрами событий синхронизации. По кадру события синхронизации, обнаруженному таким образом, SED 104 может определить соответствующее событие синхронизации, например, падающий или нарастающий фронт (т.е. начальный или конечный фронт) в сигнале синхронизации Ssync как событие синхронизации.However, the SED 104 must not only determine if there is a corresponding sync edge in the S sync signal, but also whether it is actually a sync edge generated by the sync event frame. For this purpose, as already explained above, each frame of the synchronization event has a characteristic duration, which usually does not exist, or, at least, which is extremely rare in standard data transmission, taking into account the corresponding transmission protocol. For example, the duration of a sync event frame may be shorter than the duration of all regular frames. Therefore, the SED 104 must also have the ability to determine the intervals between the sync edges that are generated by the corresponding frames (whether they are frames during standard data transmission or frames of sync events). Since a transmitting frame in the sync signal S sync is initiated, for example, by a falling sync edge and terminated by a rising sync edge, the SED 104 can determine transmit frames, which, due to their inherent duration, can only be sync event frames. From a sync event frame detected in this way, the SED 104 can determine a corresponding sync event, such as a falling or rising edge (ie, a start or end edge) in the sync signal S sync as a sync event.

Кадр события синхронизации для генерации события синхронизации может быть сгенерирован IWC 102 в любое время после получения кадра синхронизации. Этим можно управлять либо автономно с помощью аппаратных средств и/или микропрограммного обеспечения IWC 102, либо по запросу соответствующей команды SCD 108 после того, как система IWC 102 сообщит SCD 108 о том, что она получила кадр синхронизации. В частности, передача кадра события синхронизации может быть выполнена так же, как и передача любого обычного кадра, например, кадра данных, с учетом заданных значений соответствующего протокола передачи. В случае использования протоколов в соответствии с различными стандартами IEEE 802.11 IWC 102 будет, в частности, проверять, свободен ли соответствующий канал и может ли он, таким образом, передавать кадр, не вызывая коллизии.A sync event frame for generating a sync event may be generated by the IWC 102 at any time after the sync frame is received. This can be controlled either autonomously by the hardware and / or firmware of the IWC 102, or upon request of the appropriate SCD 108 command after the IWC 102 informs the SCD 108 that it has received a sync frame. In particular, the transmission of a synchronization event frame can be performed in the same way as the transmission of any conventional frame, for example a data frame, subject to the set values of the corresponding transmission protocol. In the case of using protocols according to various IEEE 802.11 standards, IWC 102 will in particular check whether the corresponding channel is free and can thus transmit a frame without causing collisions.

Однако этот способ генерирует дополнительный трафик, который не требуется для передачи данных как таковой. Это связано с тем, что кадр события синхронизации в основном служит только для генерации соответствующего события синхронизации в сигнале синхронизации Ssync. Поэтому кадр события синхронизации обычно не содержит никаких полезных данных. Правда, это тоже не исключено. Но в этом случае для кадра события синхронизации должна быть выбрана длительность, в которую можно разумным образом интегрировать полезные данные. В то же время длительность кадров событий синхронизации все равно должна быть характерной. Хотя это и не исключается, на практике, в зависимости от используемого протокола, это может быть реализовано только с увеличением сложности при определении длительности кадра.However, this method generates additional traffic that is not required for data transmission as such. This is because the sync event frame is mainly only used to generate the corresponding sync event in the sync signal S sync . Therefore, the sync event frame usually does not contain any payload. True, this is also possible. But in this case, a duration must be chosen for the sync event frame into which the payload can be intelligently integrated. At the same time, the duration of frames of synchronization events should still be characteristic. Although not excluded, in practice, depending on the protocol used, this can only be realized with increasing complexity in determining the frame length.

По этой причине для кадров события синхронизации проще определить величину, которая будет меньше длительности всех остальных кадров соответствующего протокола. Соответственно, в таких кадрах вряд ли будет достаточно места для полноценной передачи данных. Например, при использовании стандартных протоколов по стандарту IEEE 802.11 для кадров событий синхронизации при скорости передачи данных в 6 Мбит/ сек можно выбрать величину в 12 байт. Это дает временную длительность около 16 мкс для кадра события синхронизации, который должен быть определен системой SED 104.For this reason, it is easier to determine a value for frames of a synchronization event that will be less than the duration of all other frames of the corresponding protocol. Accordingly, such frames are unlikely to have enough space for a full-fledged data transfer. For example, if you are using the IEEE 802.11 standard protocols, you can choose 12 bytes for sync event frames at a data rate of 6 Mbps. This gives a time duration of about 16 μs for a sync event frame, which must be determined by the SED 104.

Согласно другому варианту, сетевое устройство может генерировать кадр события синхронизации сразу или через предварительно заданный короткий промежуток времени после получения кадра синхронизации. Генерация может быть выполнена аппаратным или программным обеспечением IWC, так что время запуска кадра события синхронизации может быть зафиксировано с достаточной точностью. Время начала предпочтительно определять таким образом, чтобы интервал между концом полученного кадра синхронизации и началом кадра события синхронизации было меньше или равно минимальному времени ожидания между приемом и передачей кадра сетевым устройством, в зависимости от используемого протокола передачи. Таким образом, можно добиться того, что после приема кадра синхронизации, который передается как широковещательный кадр и, следовательно, принимается и обрабатывается всеми сетевыми устройствами, все сетевые устройства реагируют передачей кадра события синхронизации. Хотя это приводит к наложению соответствующих кадров события синхронизации в соответствующем канале передачи, это не является недостатком, так как в этом случае кадры события синхронизации не содержат никаких полезных данных, а служат только для генерации события синхронизации на порт 102а системы IWC 102. Таким образом, трафик, генерируемый требуемой отправкой кадров событий синхронизации, или соответствующая загрузка канала передачи могут быть сведены к минимуму.In another embodiment, the network device may generate a sync event frame immediately or after a predetermined short period of time after receiving the sync frame. The generation can be done by IWC hardware or software so that the timing of the frame triggering event can be captured with sufficient accuracy. The start time is preferably determined so that the interval between the end of the received synchronization frame and the beginning of the synchronization event frame is less than or equal to the minimum waiting time between the reception and transmission of the frame by the network device, depending on the used transmission protocol. In this way, it can be ensured that after receiving a synchronization frame, which is transmitted as a broadcast frame and therefore received and processed by all network devices, all network devices respond by transmitting a synchronization event frame. Although this results in an overlap of the corresponding sync event frames on the corresponding transmission channel, this is not a disadvantage, since in this case the sync event frames do not contain any payload, but only serve to generate a sync event on port 102a of the IWC 102. Thus, the traffic generated by the required sending of frames of synchronization events, or the corresponding loading of the transmission channel, can be minimized.

Здесь же следует еще раз отметить, что события синхронизации могут генерироваться и на других портах IWC 102 в виде соответствующих изменений потенциала. Следует убедиться только в том, что изменение потенциала, которое может быть интерпретировано как событие синхронизации, может быть сгенерировано с достаточно низким джиттером как реакция на получение кадра синхронизации или что момент времени генерации события синхронизации может быть зафиксирован достаточно точной меткой времени TSE.It should be noted here again that synchronization events can be generated on other ports of the IWC 102 in the form of corresponding potential changes. You only need to make sure that the potential change, which can be interpreted as a sync event, can be generated with sufficiently low jitter in response to a sync frame, or that the timing of the sync event can be captured with a sufficiently accurate time stamp T SE .

Во всех вариантах SED 104 генерирует метку времени TS после обнаружения события синхронизации с помощью синхронизированного или подлежащего синхронизации сигнала времени TCCG, который генерируется CCG.In all embodiments, the SED 104 generates a time stamp T S upon detection of a synchronization event using a synchronized or synchronized time signal T CCG that is generated by the CCG.

SCD периодически считывает все метки времени ТАP, ТB, TSE, TS из IWC 102 и SED 104 и, используя алгоритм синхронизации по умолчанию, определяет параметры синхронизации, которые затем передаются в CCG 106 и которые CCG использует для синхронизации сигнала времени TCCG. При этом можно определить сигнал времени ТСCG, используя следующее отношение:The SCD periodically reads all time stamps T AP , T B , T SE , T S from the IWC 102 and SED 104 and, using the default timing algorithm, determines the timing parameters, which are then transmitted to the CCG 106 and which the CCG uses to synchronize the time signal T CCG . In this case, the time signal T CCG can be determined using the following ratio:

Figure 00000006
Figure 00000006

Здесь k - фактор синхронизации, a Tmd - сдвиг фаз. TSRC обозначает расход прецизионного таймера, содержащегося в CCG 104. Срабатывание прецизионного таймера, т.е. срабатывание TSRC, может быть, например, составлять 1/256 мкс, что примерно на два десятичных порядка меньше погрешности синхронизации, желаемой на практике.Here k is the synchronization factor and T md is the phase shift. T SRC denotes the flow rate of the precision timer contained in CCG 104. Precision timer actuation, i.e. the triggering of the T SRC can be, for example, 1/256 µs, which is about two decimal orders of magnitude less than the synchronization error desired in practice.

Как показано на фиг. 2, алгоритм синхронизации, реализованный в SCD, может состоять из трех фаз: фазы запуска, фазы предварительной синхронизации и фазы синхронизации.As shown in FIG. 2, the synchronization algorithm implemented in SCD can be composed of three phases: a trigger phase, a pre-synchronization phase, and a synchronization phase.

На этапе запуска изначально определяется только значение коэффициента синхронизации k, на которое необходимо умножить значение прецизионного таймера в CCG 104, чтобы без учета сдвига фаз Tmd вычислить синхронизированный или синхронизируемый сигнал времени TCCG. Если не удается определить коэффициент синхронизации k с помощью подходящего алгоритма, то определение можно повторять так часто, как это требуется. Разумеется, здесь также может быть предусмотрен критерий завершения, так что после заданного количества попыток определения коэффициента k генерируется сообщение об ошибке, и фаза запуска прерывается. Если значение коэффициента синхронизации k было успешно определено, то система переходит к фазе предварительной синхронизации.At the start-up stage, only the value of the synchronization factor k is initially determined, by which it is necessary to multiply the value of the precision timer in the CCG 104 in order to calculate the synchronized or synchronized time signal T CCG without taking into account the phase shift T md . If it is not possible to determine the synchronization factor k using a suitable algorithm, then the determination can be repeated as often as required. Of course, a termination criterion can also be provided here, so that after a predetermined number of attempts to determine the coefficient k, an error message is generated and the starting phase is interrupted. If the value of the synchronization coefficient k has been successfully determined, then the system goes to the preliminary synchronization phase.

Фазу запуска можно пропустить, если в памяти, предпочтительно в ПЗУ, было сохранено действительное значение коэффициента синхронизации k, определенного на раннее выполненной фазе запуска. При запуске сначала можно проверить, имеется ли действительное значение коэффициента синхронизации k. В этом случае его можно извлечь из памяти и загрузить в CCG 106. После этого можно сразу же приступать к фазе предварительной синхронизации.The starting phase can be skipped if the actual value of the synchronization factor k determined in the earlier executed starting phase has been stored in memory, preferably in ROM. When starting up, you can first check if there is a valid value for the synchronization factor k. In this case, it can be retrieved from memory and loaded into CCG 106. The pre-synchronization phase can then proceed immediately.

На этапе предварительной синхронизации сдвиг фаз Tmd можно определить с помощью подходящего алгоритма. Сдвиг фаз Tmd может быть определяться рекурсивно до тех пор, пока погрешность синхронизации ε для заданного числа Nsn циклов не опустится ниже предельного значения εlim. При этом в фазе предварительной синхронизации для определения сдвига фаз Tmd может быть использована частичная фильтрация (или определенный первичный алгоритм фильтра). При достижении указанного выше условия завершения фазы предварительной синхронизации происходит переход в фазу синхронизации.In the pre-synchronization step, the phase shift T md can be determined using a suitable algorithm. The phase shift T md can be determined recursively until the synchronization error ε for a given number of N sn cycles falls below the limit value ε lim . In this case, in the pre-synchronization phase, partial filtering (or a specific primary filter algorithm) can be used to determine the phase shift T md . When the above condition for the completion of the pre-synchronization phase is reached, a transition to the synchronization phase occurs.

В фазе синхронизации значение для сдвига фаз Тmd также определяется циклически. При этом может быть применена полная фильтрация (или определенный второй алгоритм фильтрации). При выполнении критерия завершения происходит переход из фазы синхронизации в фазу предварительной синхронизации. Например, в качестве критерия завершения может выполняться фильтрация ложных срабатываний для определенных значений по сдвигу фаз Tmd. При обнаружении числа Nps ложноположительных значений система переходит в фазу предварительной синхронизации. Также перейти от фазы предварительной синхронизации к фазе запуска, если критерий перехода к фазе синхронизации не достигнут по истечении заданного количества циклов или заданного периода времени.In the synchronization phase, the value for the phase shift T md is also determined cyclically. In this case, full filtering (or a specific second filtering algorithm) can be applied. When the termination criterion is met, a transition occurs from the synchronization phase to the pre-synchronization phase. For example, filtering of false alarms for certain values by phase shift T md can be performed as termination criterion. When N ps false positives are detected, the system enters the pre-synchronization phase. Also move from the pre-sync phase to the start phase if the criterion for transition to the sync phase is not met after a specified number of cycles or a specified period of time.

Отдельные этапы способа в фазе запуска разъясняются ниже с помощью примерной технологической схемы, представленной на фиг. 3. В начале фазы запуска сначала проверяется, доступны ли полезные значения коэффициента синхронизации k и сдвига фаз Tmd из предыдущих процессов синхронизации. Они могут быть сохранены в соответствующем ПЗУ, в SCD 108 или CCG 106. При наличии таких полезных значений фаза предварительной синхронизации может быть запущена немедленно. Полезные значения для k и Tmd загружаются из ПЗУ, в CCG 106. Если ПЗУ находится в CCG 106, то нужно только проверить, существует ли такая действительная пара значений, которая может быть использована для фазы предварительной синхронизации.The individual process steps in the start-up phase are explained below using the exemplary flow chart shown in FIG. 3. At the beginning of the start-up phase, it is first checked whether useful values of the synchronization factor k and the phase shift T md are available from previous synchronization processes. They can be stored in the corresponding ROM, in SCD 108 or CCG 106. With such useful values, the pre-synchronization phase can be started immediately. The useful values for k and T md are loaded from ROM, into CCG 106. If the ROM is in CCG 106, then you only need to check if there is such a valid pair of values that can be used for the pre-synchronization phase.

В начале фазы запуска сначала устанавливается коэффициент синхронизации k=1 (одновременно может быть установлен сдвиг фаз Tmd=0, чтобы использовать это начальное значение при переходе к фазе предварительной синхронизации; однако, эта установка начального значения для Tmd может быть выполнена и в фазе предварительной синхронизации). Каждый раз, когда SCD 108 получает новую метку времени TS от SED 104, SCD 108 также считывает последний набор (связанных) меток времени ТAP, ТB и TSE из IWC 102. Значения для ТB и TSE, которые непосредственно не требуются для расчета коэффициента синхронизации k, могут использоваться для фильтрации ложных срабатываний, чтобы исключить недействительные или неприемлемые события синхронизации. Для фильтрации ложных срабатываний, например, задается условие разности во времениAt the beginning of the start-up phase, the synchronization factor is first set to k = 1 (at the same time, the phase shift T md = 0 can be set to use this initial value during the transition to the pre-synchronization phase; however, this initial value setting for T md can be performed in the phase pre-synchronization). Every time the SCD 108 receives a new time stamp T S from the SED 104, the SCD 108 also reads the latest set of (associated) time stamps T AP , T B, and T SE from the IWC 102. Values for T B and T SE that are not directly are required to calculate the sync factor k, can be used to filter out false positives to eliminate invalid or unacceptable sync events. To filter false alarms, for example, a time difference condition is set

Figure 00000007
Figure 00000007

которое должно выполняться для действительного события синхронизации. Эта разность времени равна интервалу времени между приемом кадра синхронизации (например, конец кадра синхронизации можно определить как определяющий момент времени) и временем, в которое генерируется соответствующее событие синхронизации (например, конец переданного кадра события синхронизации). Этот интервал времени равен временной длительности кадра события синхронизации плюс время ожидания между приемом кадра синхронизации и передачей кадра события синхронизации. Учитывая коммутационные характеристики системы IWC или обусловленную ими конечную крутизну синхронизирующих фронтов в сигнале синхронизации Ssync, для TBSE можно определить нижнее и верхнее предельные значения TBSE,low, TBSE,high which should run for a valid sync event. This time difference is equal to the time interval between the reception of the synchronization frame (for example, the end of the synchronization frame can be defined as the defining moment) and the time at which the corresponding synchronization event is generated (for example, the end of the transmitted synchronization event frame). This time interval is equal to the duration of the sync event frame plus the waiting time between the reception of the sync frame and the transmission of the sync event frame. Taking into account the switching characteristics of the IWC system or the resulting finite slope of the synchronization edges in the synchronization signal S sync , the lower and upper limit values of T BSE, low , T BSE, high can be determined for T BSE

Figure 00000008
Figure 00000008

Если длительность кадров события синхронизации составляет, например, 40 мкс, а время ожидания - 10 мкс, то, включая время переключения IWC из режима передачи в режим приема, составляющее, например, 2-3 мкс для действительного события синхронизации или действительных кортежей из 4 элементов меток времени ТАP, ТB, TSE и TS может быть определено следующее условие частичной фильтрации,: 52 мкс≤TBSE≤53 мкс Вышеупомянутые верхний и нижний пределы TBSE, конечно же, должны быть адаптированы в зависимости от соответствующих характеристик переключения IWC, заданного времени ожидания и временной продолжительности кадров синхронизации.If the frame duration of a sync event is, for example, 40 μs and the latency is 10 μs, then, including the time to switch the IWC from transmit to receive mode, for example 2-3 μs for a valid sync event or valid 4-tuples timestamps T AP , T B , T SE and T S the following partial filtering condition can be defined: 52 μs≤T BSE ≤53 μs The above upper and lower limits T BSE must of course be adapted depending on the respective switching characteristics IWC, specified latency and timing of synchronization frames.

В соответствии с этим способом для определения коэффициента синхронизации k в фазе запуска сначала определяется и сохраняется заданное количество Ns действительных кадров синхронизации. При этом нет необходимости использовать кадры синхронизации, которые следуют непосредственно друг за другом. Вместо этого SCD 108 может указать, что обрабатываются только выбранные кадры синхронизации. Например, можно использовать только каждый n-ый кадр синхронизации. Это может снизить скорость обработки в SCD 108, поэтому можно использовать и менее дорогое аппаратное обеспечение.In accordance with this method, in order to determine the synchronization factor k in the start-up phase, a predetermined number N s of valid synchronization frames are first determined and stored. In this case, there is no need to use synchronization frames that follow directly one after the other. Instead, SCD 108 may indicate that only selected sync frames are processed. For example, only every n-th sync frame can be used. This can reduce the processing speed of the SCD 108, so less expensive hardware can be used.

На следующем этапе SCD 108 определяет множество значений ki для коэффициента синхронизации k из числа Ns пар значений временных меток TS[i] и TАP[i] (1≤i≤NS) в соответствии со следующим отношением:In the next step, SCD 108 determines a set of k i values for the synchronization coefficient k from among N s pairs of time stamp values T S [i] and T AP [i] (1≤i≤N S ) in accordance with the following relationship:

Figure 00000009
Figure 00000009

Здесь индексы i и j в основном обозначают любые подлежащие оценке события синхронизации или связанные с ними метки времени TS[i], TS[j] и TAP[i], TAP[j]. Однако, желательно использовать последовательные пары событий синхронизации или метки времени, чтобы действовало j=i-1. Значения ki, определенные таким образом для коэффициента синхронизации k, могут быть отфильтрованы еще раз для повышения точности способа. Например, можно не принимать во внимание все значения ki, для которых разница между соответствующим коэффициентом синхронизации ki и средним значением всех коэффициентов синхронизации ki составляет менее 50% от максимального значения всех разниц, образованных коэффициентом синхронизации ki и средним значением всех коэффициентов синхронизации ki. Это - эмпирический способ уменьшения числа пиков по числовой дифференциации в соответствии с уравнением (2), приведенным выше. Окончательное значение коэффициента синхронизации k может быть вычислено как среднее значение по всем коэффициентам синхронизации ki, которые определяются как применимые после эмпирической фильтрации, описанной выше.Here, the indices i and j generally denote any timing events to be evaluated or their associated time stamps T S [i], T S [j] and T AP [i], T AP [j]. However, it is desirable to use consecutive pairs of sync events or timestamps so that j = i-1 is effective. The k i values thus determined for the synchronization factor k can be filtered again to improve the accuracy of the method. For example, it is possible to disregard all values of k i for which the difference between the corresponding synchronization ratio k i and the average value of all synchronization coefficients k i is less than 50% of the maximum value of all differences formed by the synchronization ratio k i and the average value of all synchronization coefficients k i . This is an empirical way to reduce the number of peaks by numerical differentiation according to equation (2) above. The final value of the synchronization factor k can be calculated as the average of all the synchronization factors k i , which are determined to be applicable after the empirical filtering described above.

В случае, если число значений ki для коэффициента синхронизации, оставшихся после данного способа фильтрации, меньше заданного минимального числа Nk,lim, форма выполнения согласно фиг. 3 предусматривает, что должен быть определен совершенно новый набор кадров синхронизации Ns, т.е. способ определения коэффициента синхронизации k будет перезапущен.If the number of values k i for the synchronization coefficient remaining after this filtering method is less than a predetermined minimum number N k, lim , the embodiment according to FIG. 3 stipulates that a completely new set of synchronization frames N s must be defined, i. E. the method for determining the synchronization coefficient k will be restarted.

Разумеется, для повышения точности можно использовать любой другой метод фильтрации. Можно также полностью отказаться от такой фильтрации. Конечно, это относится и к частичной фильтрации меток времени с применением уравнений (2) и (3).Of course, any other filtering method can be used to improve accuracy. You can also completely eliminate this filtering. Of course, this also applies to partial filtering of time stamps using equations (2) and (3).

После определения значения коэффициента синхронизации k он загружается в CCG 106 и может быть дополнительно сохранен в ПЗУ, так что значение коэффициента синхронизации k уже будет доступно в начале следующей фазы запуска, которая запускается, например, при включении или инициализации сетевого устройства 100 или его сбросе. Затем происходит переход к фазе предварительной синхронизации.After determining the value of the sync factor k, it is loaded into CCG 106 and can be additionally stored in ROM, so that the value of the sync factor k will already be available at the beginning of the next startup phase, which is started, for example, when the network device 100 is turned on or initialized or reset. Then there is a transition to the pre-synchronization phase.

Здесь следует отметить, что коэффициент синхронизации k, конечно же, может быть определен и любым другим методом линейной интерполяции между TSRC и ТAP.It should be noted here that the sync factor k can of course be determined by any other linear interpolation method between T SRC and T AP .

Затем необходимо определить сдвиг фаз Tmd в фазе предварительной синхронизации. На фиг. 4 показана форма выполнения способа предварительной синхронизации. В этой форме исполнения циклически определяется соответствующий набор из 4 элементов меток времени ТAP, ТB, TSE и TS, для последовательных или выбранных полученных кадров синхронизации. При этом частичную фильтрацию (фильтрацию ложных срабатываний), разумеется, можно выполнить с помощью уравнений (2) и (3). На следующем этапе вычисляется погрешность синхронизации ε в соответствии с отношениемThen it is necessary to determine the phase shift T md in the pre-synchronization phase. FIG. 4 shows an embodiment of the pre-synchronization method. In this embodiment, a corresponding set of 4 time stamp elements T AP , T B , T SE and T S is cyclically determined for the consecutive or selected received synchronization frames. In this case, partial filtering (filtering of false positives), of course, can be performed using equations (2) and (3). At the next stage, the synchronization error ε is calculated in accordance with the ratio

Figure 00000010
Figure 00000010

Затем ранее действовавшее значение сдвига фаз Tmd корректируется по погрешности синхронизации ε, т.е. к ранее действовавшему значению для сдвига фаз Tmd прибавляется (с учетом знака) определенная погрешность синхронизации ε. Для этого в CCG 106 загружается значение сдвига фаз Tms. Разумеется, SCD 108 также может вычислить новое значение сдвига фаз Tmd, а затем загрузить новое вычисленное значение в CCG 106, если CCG не может выполнить такой расчет самостоятельно.Then, the previously valid phase shift value T md is corrected for the timing error ε, i.e. a certain synchronization error ε is added to the previously valid value for the phase shift T md (taking into account the sign). For this, the phase shift value T ms is loaded into CCG 106. Of course, the SCD 108 can also calculate a new value for the phase shift T md and then load the new calculated value into the CCG 106 if the CCG cannot do such a calculation on its own.

Затем на следующем этапе проверяется, не оказалось ли действующее расчетное значение погрешности синхронизации ε меньше порогового значения εlim. В этом случае соответствующий счетчик увеличивается на единицу. В ином случае счетчик сбрасывается (т.е. устанавливается на ноль). Если показания счетчика после инкремента превышают заданное пороговое значение Nsync, то происходит выход из фазы предварительной синхронизации и переход в фазу синхронизации. Если счетчик сбрасывается в результате превышения допустимого порогового значения εlim для погрешности синхронизации, то в рамках критерия завершения можно проверить необходимость перехода от фазы предварительной синхронизации к фазе запуска, так как применимое значение для сдвига фаз Tmd определить невозможно. Для этого можно проверить, например, насколько часто сброс счетчика происходит в последовательных циклах. При превышении соответствующего заданного максимального значения можно перейти к фазе запуска.Then, at the next stage, it is checked whether the current calculated value of the synchronization error ε is less than the threshold value ε lim . In this case, the corresponding counter is incremented by one. Otherwise, the counter is reset (i.e., set to zero). If the counter after the increment exceeds the specified N sync threshold, the pre-sync phase is exited and transitioned to the sync phase. If the counter is reset as a result of exceeding the permissible threshold value ε lim for the synchronization error, then within the termination criterion it is possible to check the necessity of transition from the pre-synchronization phase to the start phase, since the applicable value for the phase shift T md cannot be determined. To do this, you can check, for example, how often the counter is reset in successive cycles. If the corresponding set maximum value is exceeded, you can proceed to the start-up phase.

В фазе синхронизации, которая описывается далее на основе формы выполнения согласно фиг. 5, значение сдвига фазы Tmd также определяется циклически для последовательных или выбранных полученных кадров синхронизации. Для этого определяется соответствующий кортеж из 4 элементов меток времени ТAP, TB, TSE и TS. При этом частичную фильтрацию (фильтрацию ложных срабатываний) можно выполнить с помощью уравнений (2) и (3) для исключения недействительных событий синхронизации. На следующем этапе вычисляется погрешность синхронизации ε в соответствии с уравнением (3). На следующем этапе проверяется, не оказалось ли вновь определенное значение погрешности синхронизации ε меньше порогового значения εlim. В этом случае соответствующий счетчик увеличивается на единицу. Если это условие выполнено, то в CCG 106 загружается погрешность синхронизации ε или соответствующее ей новое значение для сдвига фаз Tmd (см. выше описание фазы предварительной синхронизации), и сбрасывается счетчик (разумеется, установленный на ноль в начале способа в фазе синхронизации). Затем выполняется еще один цикл. Если погрешность синхронизации ε не меньше предварительно определенного порогового значения εlim, счетчик будет инкрементировать, и будет выполнен следующий цикл, если значение счетчика инкремента Т не больше предварительно определенного порогового значения Nlim. В ином случае производится переход к фазе предварительной синхронизации.In the synchronization phase, which is described below based on the embodiment of FIG. 5, the phase shift value T md is also determined cyclically for consecutive or selected received sync frames. For this, a corresponding 4-tuple of timestamps T AP , T B , T SE and T S is determined. In this case, partial filtering (filtering of false positives) can be performed using equations (2) and (3) to exclude invalid synchronization events. In the next step, the synchronization error ε is calculated in accordance with equation (3). At the next stage, it is checked whether the newly determined value of the synchronization error ε is less than the threshold value ε lim . In this case, the corresponding counter is incremented by one. If this condition is met, then the synchronization error ε or its corresponding new value for the phase shift T md (see the description of the preliminary synchronization phase) is loaded into the CCG 106, and the counter is reset (of course, set to zero at the beginning of the method in the synchronization phase). Then another loop is executed. If the synchronization error ε is not less than the predetermined threshold value ε lim , the counter will increment and the next cycle will be executed if the value of the increment counter T is not greater than the predetermined threshold value N lim . Otherwise, it goes to the preliminary synchronization phase.

В фазе синхронизации, в дополнение к описанной выше частичной фильтрации, уравнения (2) и (3) также могут использоваться для фильтрации значений, определенных для погрешности синхронизации ε. Для фильтрации, например, можно задать верхнее и нижнее предельное значение εhigh, εlow для погрешности синхронизации ε. Затем используются только те события синхронизации или связанные с ними метки времени ТAP, ТB, TSE, TS, для которых применяется погрешность синхронизации ε, отвечающая следующим условиям:In the synchronization phase, in addition to the partial filtering described above, equations (2) and (3) can also be used to filter the values determined for the synchronization error ε. For filtering, for example, you can set the upper and lower limit values ε high , ε low for the timing error ε. Then only those synchronization events or associated time stamps T AP , T B , T SE , T S are used for which the synchronization error ε is applied, which meets the following conditions:

Figure 00000011
Figure 00000011

Предельные значения могут быть выбраны в соответствии с длительностью передаваемых кадров событий синхронизации. На практике было установлено, что хорошие результаты достигаются в том случае, если значение погрешности синхронизации ε меньше или равно длительности кадра события синхронизации, т.е.The limits can be selected according to the duration of the transmitted synchronization event frames. In practice, it was found that good results are achieved if the value of the synchronization error ε is less than or equal to the frame duration of the synchronization event, i.e.

Figure 00000012
Figure 00000012

где ΔtSEF - длительность кадра события синхронизации. Это условие может быть использовано, в частности, для исключения тех кадров, которые неправильно распознаны как кадры события синхронизации и имеют длительность, аналогичную длительности кадров события синхронизации, и передаются после кадра события синхронизации. С помощью частичной фильтрации ложных срабатываний по уравнениям (2) и (3) и дополнительной фильтрации ложных срабатываний по уравнению (7) можно достичь достаточно высокой точности синхронизации и на аппаратном обеспечении с относительно низкой вычислительной мощностью, которое, соответственно, будет экономичным.where Δt SEF is the duration of the synchronization event frame. This condition can be used, in particular, to exclude those frames that are incorrectly recognized as synchronization event frames and have a duration similar to the duration of the synchronization event frames, and are transmitted after the synchronization event frame. By using partial filtering of false alarms according to equations (2) and (3) and additional filtering of false alarms according to equation (7), it is possible to achieve sufficiently high synchronization accuracy on hardware with relatively low computing power, which, accordingly, will be economical.

Так как уравнение (5) с уравнением (2) записывается какSince equation (5) with equation (2) is written as

Figure 00000013
Figure 00000013

при расчете погрешности синхронизации ε для TBSE может также использоваться постоянное значение, в частности, значение, полученное, например, посредством усреднения значений TBSE за несколько циклов (например, 100). Это, конечно, не зависит от того, что значение TBSE, определенное в каждом цикле, может быть использовано для частичной фильтрации в соответствии с уравнениями (2) и (3). Так как метка времени IWC 102 является относительно неточной или генерируется с небольшим временем срабатывания, составляющим, например, 1 мкс, точность может быть значительно повышена.when calculating the timing error ε for T BSE , a constant value can also be used, in particular the value obtained, for example, by averaging the T BSE values over several cycles (eg 100). This is, of course, independent of the fact that the T BSE value determined in each cycle can be used for partial filtering according to equations (2) and (3). Since the time stamp of the IWC 102 is relatively inaccurate or generated with a short response time of, for example, 1 µs, the accuracy can be significantly improved.

Для реализации и проверки способа, описанного выше, изобретатели провели следующий эксперимент: Были изготовлены два беспроводных узла или сетевые устройства, каждый из которых состоял из встраиваемого компьютера Raspberry PI 3В со встроенным IWC Cypress CYW43438. Каждая IWC была подключена к плате на базе ПЛИС через высокоскоростной компаратор. Первое из двух сетевых устройств использовало отладочную плату Digilent Nexys 4 DDR для реализации SED и CCG. Эта плата была оснащена FPGA Xilinx Artyx-7, работающей на частоте 50 МГц. Второе из сетевых устройств для тех же целей включало в себя отладочную плату Lattice iCEstick. В на этой отладочной плате установлена бюджетная ПЛИС iCE40HXl, работающая на частоте 48 МГц. Использование различных ПЛИС с разными генераторами тактовых импульсов показывает, что хорошие результаты достигаются с помощью описанного выше метода синхронизации, а не с помощью различных тактовых частот или фазовых сдвигов. В качестве точки доступа использовалась бюджетная точка NETGEAR N150, которая также генерировал кадры-маяки для синхронизации. Ошибка синхронизации была зафиксирована на обоих сетевых устройствах. Тестирование проводилось с в условиях вычислительной нагрузки на процессорах компьютеров Raspberry PI 3В и под нагруженным (частично занятым) каналом связи.To implement and test the method described above, the inventors conducted the following experiment: Two wireless nodes or network devices were manufactured, each of which consisted of a Raspberry PI 3B embedded computer with an integrated IWC Cypress CYW43438. Each IWC was connected to an FPGA board through a high speed comparator. The first of the two networking devices used the Digilent Nexys 4 DDR development board to implement SED and CCG. This board was equipped with a Xilinx Artyx-7 FPGA operating at 50 MHz. The second of the network devices included the Lattice iCEstick debug board for the same purpose. In this debug board, a budget FPGA iCE40HXl is installed, operating at a frequency of 48 MHz. Using different FPGAs with different clock generators shows that good results are achieved using the synchronization method described above, rather than using different clock frequencies or phase shifts. As an access point, we used a budget NETGEAR N150 point, which also generated beacon frames for synchronization. A sync error was recorded on both network devices. The tests were carried out under computational load conditions on Raspberry PI 3B computer processors and under a loaded (partly occupied) communication channel.

На фиг. 6 показаны гистограммы ошибки синхронизации ε (уравнение 8) для обоих сетевых устройств (фиг. 6а - Сетевое устройство 1; фиг. 6b - Сетевое устройство 2), полученные при данной настройке и способа, описанного выше. Измерения проводились с загрузкой центрального процессора 90% на каждом сетевом устройстве. Для тестирования сеть была загружена дополнительными данными, передаваемыми со скоростью 15 Мбит/с (UDP-передача) от первого к второму сетевому устройству. Для параметра TBSE из уравнения (8) использовалось значение 53 мкс, которое ранее было определено с использованием соответствующих измерений и усреднения. Тест проводился в течение более 12 часов. Среднеквадратическое отклонение распределения на фиг. 6 составило менее 500 нс. Таким образом, можно показать, что с помощью метода, соответствующего изобретению, можно достичь высокой точности синхронизации даже на очень дешевом оборудовании и без использования операционной системы реального времени.FIG. 6 shows histograms of synchronization error ε (equation 8) for both network devices (FIG. 6a - Network device 1; FIG. 6b - Network device 2) obtained with this setting and the method described above. The measurements were taken with a CPU load of 90% on each network device. For testing, the network was loaded with additional data transmitted at a rate of 15 Mbps (UDP transmission) from the first to the second network device. For the parameter T BSE from equation (8), a value of 53 µs was used, which was previously determined using appropriate measurements and averaging. The test took more than 12 hours. The standard deviation of the distribution in FIG. 6 was less than 500 ns. Thus, it can be shown that with the method according to the invention it is possible to achieve high synchronization accuracy even with very cheap hardware and without using a real-time operating system.

Список условных обозначений 100 сетевое устройствоLegend List 100 Network Device

102 IWC (Integrated Wirless Circuit: интегрированная микросхема беспроводной связи)102 IWC (Integrated Wirless Circuit: integrated wireless communication chip)

102а порт102a port

104 SEC (Synchronisationsevent-Detektoreinrichtung: детектор событий синхронизации)104 SEC (Synchronizationsevent-Detektoreinrichtung: synchronization event detector)

106 CCG (steuerbarer Clock-Generator; Controllable Clock Generator: управляемый генератор временного сигнала)106 CCG (steuerbarer Clock-Generator; Controllable Clock Generator: controlled time signal generator)

108 SCD (Synchronisationssteuereinrichtung; Synchronization Control Device: устройство управления синхронизацией)108 SCD (Synchronizationssteuereinrichtung; Synchronization Control Device: synchronization control device)

110 ПЛИС (программируемая логическая интегральная схема)110 FPGA (Programmable Logic Integrated Circuit)

ε погрешность синхронизацииε synchronization error

εlim пороговое значение для погрешности синхронизацииε lim threshold value for synchronization error

εhigh верхняя граница значения εε high is the upper limit of ε

εlow нижняя граница значения εε low the lower bound of the value ε

k коэффициент синхронизацииk sync factor

ТAP метка времени синхронизацииT AP sync time stamp

ТB метка времени (получение кадра синхронизации)T B timestamp (receive sync frame)

TSE метка времени (создание кадра синхронизации)T SE time stamp (create sync frame)

TS метка времени (обнаружение кадра синхронизации)T S time stamp (sync frame detection)

TSRC значение прецизионного таймера в CCG 104T SRC precision timer value in CCG 104

TCCG время (сигнал времени) CCG доT CCG time (time signal) CCG to

Tmd сдвиг фазT md phase shift

ΔtSEF временная длительность кадра синхронизацииΔt SEF time duration of synchronization frame

NS число кадров синхронизации для определения kN S number of synchronization frames to determine k

Nk,lim минимальная число кадров синхронизации для определения kN k, lim is the minimum number of synchronization frames for determining k

Nsync число циклов в фазе предварительной синхронизацииN sync number of cycles in the pre-sync phase

Nps число циклов в фазе синхронизации.N ps is the number of cycles in the synchronization phase.

Claims (44)

1. Способ синхронизации сетевого устройства для беспроводной связи, в частности сетевого терминала, в беспроводной сети, где сетевое устройство имеет интегрированную микросхему беспроводной связи (IWC), детектор событий синхронизации (SED) для обнаружения событий синхронизации, управляемый генератор временного сигнала (CCG) для генерации синхронизированного сигнала времени TCCG и устройство управления синхронизацией (SCD) для управления процессом синхронизации сетевого устройства, при этом в фазе синхронизации в сетевом устройстве выполняются следующие этапы способа:1. A method of synchronizing a network device for wireless communication, in particular a network terminal, in a wireless network, where the network device has an integrated wireless communication chip (IWC), a synchronization event detector (SED) for detecting synchronization events, a controlled time signal generator (CCG) for generating a synchronized time signal T CCG and a synchronization control device (SCD) for controlling the synchronization process of the network device, while in the synchronization phase in the network device, the following method steps are performed: (а) получение кадра синхронизации и обнаружение метки времени синхронизации TAP, которая содержится в кадре синхронизации и которая была сгенерирована другим сетевым устройством, в частности точкой доступа, с применением сигнала времени от ведущего устройства,(a) receiving the synchronization frame and detecting the synchronization timestamp T AP , which is contained in the synchronization frame and which was generated by another network device, in particular an access point, using the time signal from the master, (b) генерация метки времени TB с использованием часов IWC, содержащихся в схеме TWC, которая определяет время приема кадра синхронизации,(b) generating a time stamp T B using the IWC clock contained in the TWC scheme, which determines the time of reception of the synchronization frame, (c) генерирование события синхронизации посредством IWC, при котором изменение потенциала на порту IWC, представляющее событие синхронизации, генерируется в ответ на получение кадра синхронизации,(c) generating a synchronization event by the IWC in which a potential change at the IWC port representing a synchronization event is generated in response to the receipt of a synchronization frame, (d) генерация метки времени TSE с использованием часов IWC, которая определяет время события синхронизации,(d) generating a time stamp T SE using the IWC clock that determines the timing of the synchronization event, (e) обнаружение события синхронизации с помощью SED посредством оценки временной длительности изменения потенциала порта IWC и генерирование системой SED метки времени TS с использованием синхронизированного сигнала времени TCCG, причем метка времени TS определяет тот же момент события синхронизации, что и метка времени TSE, и(e) detecting a synchronization event by the SED by estimating the duration of the change in potential of the IWC port and generating a time stamp T S by the SED using the synchronized time signal T CCG , the time stamp T S identifying the same instant of the synchronization event as the time stamp T SE , and (f) использование временных меток TAP, TB, TSE и TS, полученных путем обработки одного или нескольких кадров событий синхронизации в соответствии с этапами (a)-(d) для синхронизации синхронизированного сигнала времени TCCG, генерируемого системой CCG, с сигналом времени ведущего устройства.(f) using the time stamps T AP , T B , T SE and T S obtained by processing one or more frames of synchronization events in accordance with steps (a) - (d) to synchronize the synchronized time signal T CCG generated by the CCG system, with the time signal of the master. 2. Способ согласно п. 1, отличающийся тем, что2. The method according to claim 1, characterized in that (a) порт IWC, на котором генерируется изменение потенциала, представляющее событие синхронизации, является входным портом приемной части IWC, на которую подается аналоговый, возможно усиленный, беспроводной входной сигнал,(a) the IWC port on which the potential change is generated, representing the synchronization event, is the input port of the IWC receiving part, to which an analog, possibly amplified, wireless input signal is applied, (b) в которой этот порт IWC имеет первый потенциал в режиме передачи IWC и второй потенциал в режиме приема IWC и(b) in which the IWC port has a first potential in the IWC transmit mode and a second potential in the IWC receive mode, and (с) в которой IWC управляется так, чтобы генерировать событие синхронизации после получения кадра события синхронизации в режиме приема так, чтобы генерировать импульс с длительностью определенного характерного периода времени на порте IWC, начальный или конечный фронт которого определяется как событие синхронизации.(c) in which the IWC is controlled to generate a sync event after receiving a sync event frame in receive mode so as to generate a pulse with a duration of a specific characteristic time period on the IWC port, the start or end edge of which is defined as a sync event. 3. Способ согласно п. 1, отличающийся тем, что3. The method according to claim 1, characterized in that (a) порт IWC, на котором генерируется изменение потенциала, представляющее событие синхронизации, является портом coexistance интерфейса IWC, который предусмотрен для подключения к соответствующему порту другого устройства беспроводной связи,(a) the IWC port on which the potential change representing the synchronization event is generated is the coexistance port of the IWC interface, which is provided to connect to the corresponding port of another wireless communication device, (b) этот порт IWC в активном режиме IWC, в котором IWC может отправлять и/или принимать первый потенциал, и в пассивном режиме IWC, в котором IWC не может отправлять и/или принимать один, имеет второй потенциал и(b) this IWC port in IWC active mode, in which the IWC can send and / or receive the first potential, and in the IWC passive mode, in which the IWC cannot send and / or receive one, has a second potential, and (c) в котором IWC управляется так, чтобы при помощи перехода из активного режима в пассивный режим генерировать событие синхронизации после получения кадра события синхронизации в режиме приема так, чтобы генерировать импульс с длительностью определенного характерного периода времени на порте IWC, начальный или конечный фронт которого определяется как событие синхронизации.(c) in which the IWC is controlled to generate a synchronization event by transitioning from active mode to passive mode after receiving a synchronization event frame in receive mode so as to generate a pulse with a duration of a specific characteristic time period on the IWC port, the start or stop edge of which defined as a sync event. 4. Способ согласно одному из пп. 2 или 3, отличающийся тем, что характерный период времени выбирают таким образом, чтобы он отличался от длительности импульса всех других импульсов, которые могут возникать в рассматриваемом порту, и что посредством SED начальный или конечный фронт одного на сгенерированный портом импульс затем детектируется как событие синхронизации, если длительность импульса соответствует характерному периоду времени или находится в пределах предварительно определенного допуска.4. The method according to one of paragraphs. 2 or 3, characterized in that the characteristic time period is chosen so that it differs from the pulse width of all other pulses that may occur in the port in question, and that by the SED, the start or end edge of one pulse generated by the port is then detected as a synchronization event if the pulse width matches a representative time period or is within a predefined tolerance. 5. Способ согласно одному из пп. 1, 2 или 4, характеризующийся тем, что кадр события синхронизации генерируется сразу после получения кадра синхронизации или по истечении заданного времени ожидания, которое меньше или равно минимальному времени ожидания, которое может возникнуть при коммуникации между сетевым устройством и следующим сетевым устройством между приемом и отправкой кадров, причем создание кадра события синхронизации преимущественно вызывается функцией, реализованной с помощью аппаратного и/или программного обеспечения в IWC.5. The method according to one of paragraphs. 1, 2, or 4, characterized in that a synchronization event frame is generated immediately after receiving a synchronization frame or after a specified timeout that is less than or equal to the minimum timeout that can occur during communication between a network device and the next network device between receiving and sending frames, with the creation of a sync event frame primarily triggered by a function implemented in hardware and / or software in the IWC. 6. Способ в соответствии с одним из предшествующих пунктов, характеризующийся тем, что синхронизированный сигнал времени TCCG, генерируемый CCG, генерируется с использованием отношения6. A method according to one of the preceding claims, characterized in that the synchronized time signal T CCG generated by the CCG is generated using the ratio
Figure 00000014
Figure 00000014
где TSRC - выходной сигнал таймера CCG, k - коэффициент синхронизации, a Tmd - сдвиг фаз, а коэффициент синхронизации k и сдвиг фаз Tmd определяются SCD из меток времени TAP, TB, TSE и TS.where T SRC is the CCG timer output, k is the timing factor, a T md is the phase shift, and the timing factor k and the phase shift T md are determined by SCD from the time stamps T AP , T B , T SE, and T S. 7. Способ согласно п. 6, характеризующийся тем, что новое значение для сдвига фаз Tmd может определяться циклически, при этом в текущем цикле новое значение для сдвига фаз Tmd определяется сложением с учетом знака предыдущего значения сдвига фаз Tmd и погрешности синхронизации ε, определяемой в текущем цикле, которая определяется в соответствии с соотношением7. The method according to claim 6, characterized in that the new value for the phase shift T md can be determined cyclically, while in the current cycle the new value for the phase shift T md is determined by addition, taking into account the sign of the previous value of the phase shift T md and the synchronization error ε defined in the current cycle, which is determined in accordance with the ratio
Figure 00000015
Figure 00000015
8. Способ согласно п. 7, характеризующийся тем, что фильтрация ложных срабатываний может быть выполнена для обнаруженных событий синхронизации, предпочтительно с использованием меток времени TB и TSE, при этом метки времени TAP, TB, TSE и TS, присвоенные событию синхронизации, используются для синхронизации только в том случае, если данное событие синхронизации не определено как ложное срабатывание.8. A method according to claim 7, characterized in that false alarm filtering can be performed on detected synchronization events, preferably using time stamps T B and T SE , wherein the time stamps T AP , T B , T SE and T S , assigned to a sync event are used for sync only if the sync event is not defined as a false trigger. 9. Способ согласно одному из пп. 7 или 8, характеризующийся тем, что фаза синхронизации сохраняется, а определенные значения для Tmd загружаются в CCG до тех пор, пока не будет выполнен отрицательный критерий завершения, и что после достижения первого отрицательного критерия завершения фазы синхронизации происходит переход в фазу предварительной синхронизации, причем погрешность синхронизации ε определяется для последовательных и, при необходимости, выбранных событий синхронизации и загружается в CCG как значение для Tmd до тех пор, пока число последовательных значений погрешности синхронизации ε превышающих пороговое значение εlim не превысит Nps.9. The method according to one of paragraphs. 7 or 8, characterized in that the synchronization phase is retained and certain values for T md are loaded into the CCG until a negative termination criterion is met, and that after the first negative termination criterion for the synchronization phase is reached, a transition to the preliminary synchronization phase occurs, moreover, the synchronization error ε is determined for successive and, if necessary, selected synchronization events and is loaded into the CCG as a value for T md until the number of consecutive values of the synchronization error ε exceeding the threshold value ε lim exceeds N ps . 10. Способ согласно п. 9, характеризующийся тем, что фаза предварительной синхронизации сохраняется до тех пор, пока не будет выполнен положительный критерий завершения, и что после достижения критерия завершения может быть произведен для перехода в фазу синхронизации, причем в качестве положительного критерия завершения погрешность синхронизации ε предпочтительно определяется и загружается в CCG как значение для Tmd до тех пор, пока число последовательных значений погрешности синхронизации ε, превышающих пороговое значение εlim, не превысит Nsync.10. A method according to claim 9, characterized in that the preliminary synchronization phase is maintained until a positive termination criterion is met, and that after the termination criterion is reached, it can be performed to enter the synchronization phase, and as a positive termination criterion, the error The timing ε is preferably determined and loaded into the CCG as a value for T md until the number of consecutive ε timing error values exceeding the threshold ε lim exceeds N sync . 11. Способ согласно п. 10, характеризующийся тем, что происходит переход от фазы предварительной синхронизации в фазу запуска, если положительный критерий завершения не достигается в рамках заданного времени или с помощью заданного числа попыток достижения числа Nsync.11. The method according to claim 10, characterized in that there is a transition from the pre-synchronization phase to the start phase if the positive termination criterion is not reached within a predetermined time or by a predetermined number of attempts to reach the number N sync . 12. Способ согласно одному из пп. от 6 до 11, характеризующийся тем, что коэффициент синхронизации k определяется на этапе запуска, на котором для множества кадров синхронизации выполняются этапы (а), (с) и (е) по формуле 1, причем для определения коэффициента синхронизации k можно определить одно или несколько индивидуальных значений ki коэффициента синхронизации в соответствии с отношением12. The method according to one of paragraphs. from 6 to 11, characterized in that the synchronization factor k is determined at the start-up stage, at which steps (a), (c) and (e) are performed for a plurality of synchronization frames according to formula 1, and to determine the synchronization factor k, one or several individual values k i of the synchronization factor in accordance with the ratio
Figure 00000016
Figure 00000016
где индексы [i] и [j] соответственно обозначают различные события синхронизации и соответствующие метки времени TAP и TS, предпочтительно действует j=i-1.where the subscripts [i] and [j] respectively denote different synchronization events and the corresponding time stamps T AP and T S , preferably j = i-1. 13. Способ согласно п. 12, характеризующийся тем, что для определения коэффициента синхронизации k определяется число Nk индивидуальных значений ki коэффициента синхронизации.13. The method according to claim 12, characterized in that to determine the synchronization coefficient k, the number N k of individual values of the synchronization coefficient k i is determined. 14. Способ согласно пункту 13, характеризующийся тем, что определяемые индивидуальные значения ki коэффициента синхронизации выбираются с применением одного или нескольких условий фильтрации.14. The method according to claim 13, characterized in that the determined individual values of the synchronization coefficient k i are selected using one or more filtering conditions. 15. Способ согласно одному из пп. 12, 13 или 14, характеризующийся тем, что индивидуальные значения ki определяются по меткам времени для пар последовательных событий синхронизации, в первую очередь для числа Ns событий синхронизации, предпочтительно последовательных событий синхронизации или событий синхронизации, которые распределены соответственно по постоянному числу промежуточных событий синхронизации. Индивидуальные значения ki используются для дальнейшего вычисления только в том случае, если они были отобраны с использованием одного или нескольких условий фильтрации, а коэффициент синхронизации k вычисляется только в том случае, если достигнуто заданное по умолчанию минимальное количество выбранных индивидуальных значений ki, в ином случае лучше отклонить общее число Ns событий синхронизации и связанных с ними меток времени TAP и TS для определения коэффициента синхронизации k.15. The method according to one of paragraphs. 12, 13 or 14, characterized in that the individual values of k i are determined from time stamps for pairs of successive synchronization events, primarily for the number N s of synchronization events, preferably successive synchronization events or synchronization events, which are respectively distributed over a constant number of intermediate events synchronization. Individual k i values are used for further computation only if they were selected using one or more filtering conditions, and the synchronization coefficient k is computed only if the default minimum number of selected individual k i values is reached, otherwise case, it is better to reject the total number N s of synchronization events and their associated time stamps T AP and T S to determine the synchronization factor k. 16. Способ согласно одному из предыдущих пунктов, характеризующийся тем, что значение коэффициента синхронизации сохраняется и загружается в CCG при активировании и сбросе сетевого устройства.16. A method according to one of the preceding claims, characterized in that the value of the synchronization factor is stored and loaded into the CCG upon activation and reset of the network device. 17. Сетевое устройство, в частности сетевой терминал, для беспроводной связи в беспроводной сети17. A network device, in particular a network terminal, for wireless communication in a wireless network (a) с интегрированной микросхемой беспроводной связи (IWC), которая имеет порт, на котором может быть сгенерировано потенциальное изменение в ответ на прием кадра синхронизации, который представляет событие синхронизации, и который включает в себя внутренние часы IWC,(a) with an integrated wireless communication chip (IWC) that has a port on which a potential change can be generated in response to receiving a sync frame that represents a sync event and that includes the IWC's internal clock, (b) с управляемым генератором синхронизирующих импульсов (CCG) для генерирования синхронизированного сигнала времени TCCG, который может быть использован для дальнейшего функционирования сетевого устройства(b) with a controlled clock generator (CCG) to generate a synchronized time signal T CCG , which can be used for further operation of the network device (c) с детектором событий синхронизации (SED) для определения событий синхронизации, которое имеет входной порт, к которому подводится потенциал порта IWC, на котором генерируются события синхронизации, или зависимого от него потенциала, и к которому подводится сигнал времени управляемого генератора синхронизирующих импульсов, и(c) with a sync event detector (SED) for detecting sync events, which has an input port to which the potential of the IWC port where sync events are generated, or a potential dependent therefrom, is applied, and to which the time signal of a controlled sync generator is applied, and (d) с устройством управления синхронизацией (SCD) для управления работой по синхронизации сетевого устройства, которое соединено с SED, с IWC, подключенным к CCG,(d) with a timing control device (SCD) to control the timing operation of a network device that is connected to the SED, with an IWC connected to the CCG, характеризуется тем,characterized by е) что SED, IWC, CCG имеют структуру, позволяющую осуществлять способ в соответствии с любыми из вышеуказанных формул.f) that SED, IWC, CCG have a structure that allows the method to be carried out in accordance with any of the above formulas. 18. Сетевое устройство по п. 17, характеризующееся тем, что порт IWC, на котором генерируется изменение потенциала, представляющее события синхронизации, является входным портом IWC для подачи аналогового беспроводного сигнала приема.18. The network device of claim 17, wherein the IWC port on which the potential change representing timing events is generated is an IWC input port for providing an analog wireless receive signal. 19. Сетевое устройство по п. 17, отличающееся тем, что порт IWC, на котором генерируется изменение потенциала, представляющее события синхронизации, является портом coexistence интерфейса IWC, который, находясь в активном режиме IWC, в котором IWC отправляет и/или принимает, имеет первый потенциал, а в пассивном режиме IWC, в котором IWC не может отправлять и/или принимать, имеет второй потенциал.19. The network device of claim 17, wherein the IWC port on which the potential change representing synchronization events is generated is a coexistence port of the IWC interface, which, while in IWC active mode, in which the IWC sends and / or receives, has the first potential, and in passive IWC mode, in which the IWC cannot send and / or receive, has a second potential. 20. Сетевое устройство по одному из пп. от 17 до 19, характеризующееся тем, что SED и CCG реализуются с помощью ПИЛС, и SCD - с помощью компьютера, на котором, в частности, запущена неоперационная система реального времени.20. Network device according to one of paragraphs. from 17 to 19, characterized by the fact that SED and CCG are implemented using PILS, and SCD - using a computer on which, in particular, a non-operating real-time system is running. 21. Беспроводная сеть с точкой доступа и двумя или более сетевыми устройствами в соответствии с любым из пп. от 17 до 20, в которой точка доступа передает кадры синхронизации в качестве широковещательных кадров.21. Wireless network with an access point and two or more network devices in accordance with any of paragraphs. 17 to 20, in which the access point transmits sync frames as broadcast frames.
RU2020117531A 2020-05-18 2020-05-18 Synchronizing network device for wireless communication, in particular network terminal, in wireless network RU2738446C1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
RU2020117531A RU2738446C1 (en) 2020-05-18 2020-05-18 Synchronizing network device for wireless communication, in particular network terminal, in wireless network
DE102020118068.3A DE102020118068A1 (en) 2020-05-18 2020-07-08 SYNCHRONIZATION OF A NETWORK DEVICE FOR WIRELESS COMMUNICATION, IN PARTICULAR A NETWORK TERMINAL DEVICE, IN A WIRELESS NETWORK

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2020117531A RU2738446C1 (en) 2020-05-18 2020-05-18 Synchronizing network device for wireless communication, in particular network terminal, in wireless network

Publications (1)

Publication Number Publication Date
RU2738446C1 true RU2738446C1 (en) 2020-12-14

Family

ID=73835177

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2020117531A RU2738446C1 (en) 2020-05-18 2020-05-18 Synchronizing network device for wireless communication, in particular network terminal, in wireless network

Country Status (2)

Country Link
DE (1) DE102020118068A1 (en)
RU (1) RU2738446C1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113194528A (en) * 2021-03-18 2021-07-30 深圳市汇顶科技股份有限公司 Synchronization control method, chip, electronic device, and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8340010B2 (en) * 2009-12-16 2012-12-25 Broadcom Corporation Method and system for energy efficient synchronization in packet based networks
RU2660458C1 (en) * 2014-12-16 2018-07-06 Роберт Бош Гмбх Method for synchronization of clock generators of network devices
CN110784275A (en) * 2018-07-29 2020-02-11 华为技术有限公司 Time synchronization deviation adjusting method, device, terminal and access stratum equipment
US10575270B2 (en) * 2015-12-16 2020-02-25 Sonos, Inc. Synchronization of content between networked devices

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11082141B2 (en) 2017-06-02 2021-08-03 Sony Corporation Wireless apparatus and wireless apparatus processing method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8340010B2 (en) * 2009-12-16 2012-12-25 Broadcom Corporation Method and system for energy efficient synchronization in packet based networks
RU2660458C1 (en) * 2014-12-16 2018-07-06 Роберт Бош Гмбх Method for synchronization of clock generators of network devices
US10575270B2 (en) * 2015-12-16 2020-02-25 Sonos, Inc. Synchronization of content between networked devices
CN110784275A (en) * 2018-07-29 2020-02-11 华为技术有限公司 Time synchronization deviation adjusting method, device, terminal and access stratum equipment

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113194528A (en) * 2021-03-18 2021-07-30 深圳市汇顶科技股份有限公司 Synchronization control method, chip, electronic device, and storage medium
CN113194528B (en) * 2021-03-18 2023-01-31 深圳市汇顶科技股份有限公司 Synchronization control method, chip, electronic device, and storage medium
US11853242B2 (en) 2021-03-18 2023-12-26 Shenzhen GOODIX Technology Co., Ltd. Synchronization control method, chip, electronic device and storage medium

Also Published As

Publication number Publication date
DE102020118068A1 (en) 2021-11-18

Similar Documents

Publication Publication Date Title
Romanov et al. A precise synchronization method for future wireless TSN networks
CN109074723B (en) Time synchronization method, sensor embedded terminal and sensor network system
US11050501B2 (en) Performing PHY-level hardware timestamping and time synchronization in cost-sensitive environments
WO2008044193A2 (en) Method and system for time synchronization in a sensor network
US20220029724A1 (en) A tsn enabled controller
CN107736059B (en) Signal detection method in system with sparse synchronization signal rate
WO2015196685A1 (en) Clock synchronization method and apparatus
Chen et al. An implementation of IEEE 1588 protocol for IEEE 802.11 WLAN
RU2738446C1 (en) Synchronizing network device for wireless communication, in particular network terminal, in wireless network
Mahmood et al. Clock synchronization in wireless LANs without hardware support
Mahmood et al. Software support for clock synchronization over IEEE 802.11 wireless LAN with open source drivers
Bauer et al. A wireless gateway approach enabling industrial real-time communication on the field level of factory automation
CN1813434A (en) Method for clock synchronization of wireless 1394 buses for nodes connected via ieee 802.11 lan
CN114980322A (en) Improved window widening
Bertocco et al. Estimation of the delay of network devices in hybrid wired/wireless real-time industrial communication systems
Ageev Time synchronization and energy efficiency in wireless sensor networks
CN214480655U (en) Embedded equipment compatible with definable deterministic communication Ethernet
CN107959968B (en) High-precision low-overhead wireless sensor network clock synchronization method
Ageev et al. Synchronization uncertainty contributions in wireless sensor networks
Zou et al. A time synchronization method for wireless sensor networks
EP3968562A1 (en) Communication control device and communication control method
US20220361126A1 (en) Providing a clock value to a client device
CN116321402A (en) 4G/5G-oriented lightweight PTP time synchronization system and method
Zhang et al. Precision Time Synchronization Consistency Algorithm for Multi-Node Dynamic Time-Frequency Synchronization Networks
Rinaldi et al. Exploiting Accurate Ultra Wide Band Time Synchronization at the Application Level in Embedded Systems