Facebook hat eine offene PCIe-Karte mit Atomuhr entwickelt

Facebook hat Entwicklungen im Zusammenhang mit der Entwicklung einer PCIe-Karte veröffentlicht, die die Implementierung einer Miniatur-Atomuhr und eines GNSS-Empfängers umfasst. Mit der Karte kann der Betrieb separater Zeitsynchronisationsserver organisiert werden. Die für die Herstellung der Platine erforderlichen Spezifikationen, Schaltpläne, Stücklisten, Gerber-, PCB- und CAD-Dateien werden auf GitHub veröffentlicht. Das Board ist zunächst als modulares Gerät konzipiert und ermöglicht die Verwendung verschiedener handelsüblicher Atomuhr-Chips und GNSS-Module wie SA5X, mRO-50, SA.45s und u-blox RCB-F9T. Orolia beabsichtigt, mit der Produktion fertiger Platten auf der Grundlage vorbereiteter Spezifikationen zu beginnen.

Facebook hat eine offene PCIe-Karte mit Atomuhr entwickelt

Die Time Card wird im Rahmen eines globaleren Time Appliance-Projekts entwickelt, das darauf abzielt, Komponenten für die Erstellung primärer (Time Master) exakter Zeitserver (Open Time Server) bereitzustellen, die in ihrer Infrastruktur eingesetzt und beispielsweise verwendet werden können Organisieren Sie die Zeitsynchronisation in Rechenzentren. Durch die Verwendung eines separaten Servers sind Sie nicht auf externe Netzwerkdienste angewiesen, um die genaue Zeit zu synchronisieren, und das Vorhandensein einer integrierten Atomuhr bietet ein hohes Maß an Autonomie im Falle von Ausfällen beim Empfang von Daten von Satellitensystemen (z. B. aufgrund von Störungen). aufgrund von Witterungseinflüssen oder Angriffen).

Die Besonderheit des Projekts besteht darin, dass Sie zum Aufbau eines primären Servers für genaue Zeit einen regulären Server auf Basis der x86-Architektur verwenden können, einschließlich einer Standard-Netzwerkkarte und einer Time Card. In einem solchen Server werden Informationen über die genaue Zeit von Satelliten über GNSS empfangen, und die Atomuhr fungiert als äußerst stabiler Oszillator, der es ihr ermöglicht, ein hohes Maß an Genauigkeit aufrechtzuerhalten, wenn der Empfang von Informationen über GNSS ausfällt. Die mögliche Abweichung von der genauen Zeit, wenn es in der vorgeschlagenen Platine nicht möglich ist, Daten über GNSS zu erhalten, wird auf etwa 300 Nanosekunden pro Tag geschätzt.

Facebook hat eine offene PCIe-Karte mit Atomuhr entwickelt

Der ocp_pt-Treiber wurde für Linux vorbereitet und soll in den Hauptkernel von Linux 5.15 integriert werden. Der Treiber implementiert die Schnittstellen PTP POSIX (/dev/ptp2), GNSS über serielle Schnittstelle (/dev/ttyS7), Atomuhr über serielle Schnittstelle (/dev/ttyS8) und zwei i2c-Geräte (/dev/i2c-*), mit denen kann aus der Benutzerumgebung heraus Zugriff auf die Funktionen der Hardware-Uhr (PHC) ermöglichen. Beim Betrieb eines NTP-Servers (Network Time Protocol) wird die Verwendung von Chrony und NTPd empfohlen, bei Betrieb eines PTP-Servers (Precision Time Protocol) ptp4u oder ptp4l in Kombination mit dem phc2sys-Stack, der sicherstellt, dass die Zeitwerte korrekt sind von der Atomuhr auf die Netzwerkkarte kopiert.

Die Koordination des Betriebs des GNSS-Empfängers und der Atomuhren kann sowohl in Hardware als auch in Software erfolgen. Die Hardwarefunktionalität des Matching-Moduls ist auf Basis eines FPGA implementiert und die Softwareversion arbeitet auf der Ebene der direkten Überwachung des Zustands des GNSS-Empfängers und der Atomuhren aus Anwendungen wie ptp4l und chronyd.

Facebook hat eine offene PCIe-Karte mit Atomuhr entwickelt

Der Grund für die Entwicklung eines offenen Boards anstelle der Verwendung vorgefertigter Lösungen auf dem Markt ist der proprietäre Charakter solcher Produkte, der es nicht ermöglicht, die Richtigkeit der Implementierung zu überprüfen, und die Nichteinhaltung der Sicherheitsanforderungen durch die vorgeschlagene Software (In den meisten Fällen werden veraltete Programme bereitgestellt und die Bereitstellung von Schwachstellenkorrekturen kann Monate oder sogar Jahre dauern) sowie eingeschränkte Überwachungsfunktionen (SNMP) und Konfiguration (sie bieten ihre eigene CLI oder Web-Benutzeroberfläche an).

Source: opennet.ru

Kommentar hinzufügen