Časování slotů
Druh scénáře slot-timing odpovídá na tři otázky pro hodiny, které mezi synchronizacemi běží volně a musí udržet provoz uvnitř časově indexovaného slotu: směrovacího, úkolovacího nebo kontaktního slotu, jehož guard je největší absolutní časová chyba, na kteroukoli stranu, při níž slot ještě funguje.
- Kdy guard selže? Sekundy od poslední korekce do okamžiku, kdy predikovaná časová chyba dosáhne guardu, s rozepsaným každým přispívajícím členem a pojmenovaným dominantním.
- Kolik času zbývá nyní? Tatáž hodnota minus čas, který již od korekce uplynul.
- Jak často musí hodiny provést korekci? Největší interval mezi korekcemi, který drží chybu uvnitř guardu, po odečtení latence, než se korekce projeví.
Nepovinná sekce spoofing přidává ochrannou úroveň časování (TPL) pro přijímač na oběžné dráze; viz Spoofing přijímače na oběžné dráze.
Přibalený příklad spusťte pomocí kshana example slot-timing-ocxo-leo.
Zkratky: GNSS, globální družicový navigační systém; TCXO, teplotně kompenzovaný krystalový oscilátor; OCXO, termostatovaný krystalový oscilátor; RAFS, rubidiový atomový frekvenční etalon; CSAC, čipové atomové hodiny; USO, ultra stabilní oscilátor; DSAC, atomové hodiny pro hluboký vesmír; ADEV, Allanova odchylka; FM, frekvenční modulace (zde šum na frekvenci hodin); PM, fázová modulace (šum na jejich fázi); IEEE, Institute of Electrical and Electronics Engineers; ITU-T, sektor telekomunikační standardizace Mezinárodní telekomunikační unie; TIE, chyba časového intervalu; MTIE, maximální chyba časového intervalu; TDEV, časová odchylka; max|TE|, maximální absolutní časová chyba; CUSUM, detektor změny na bázi kumulativního součtu; TPL, ochranná úroveň časování; LEO, nízká oběžná dráha Země; NIST SP, zvláštní publikace Národního institutu standardů a technologie; UFFC, Ultrasonics, Ferroelectrics, and Frequency Control (časopis IEEE Transactions); IGS, International GNSS Service; GPS, Global Positioning System; Block IIF, družice GPS Block II Follow-on; SHA-256, 256bitový Secure Hash Algorithm; PPS, impuls za sekundu.
Model chyby#
Predikovaná časová chyba po setrvání t sekund od korekce je
E(t) = k·√(σ₀² + (σ_f·t)² + σ_x²(t)) + (|y₀| + |c_T·ΔT|)·t + ½·|D|·t²
σ_x²(t) = σ_PM² + q_wf·t + h_F·t² + q_rw·t³/3 + q_rr·t⁵/20
| Symbol | Význam |
|---|---|
k |
koeficient pokrytí (3 odpovídá asi 99,7 % gaussovské chyby) |
σ₀ |
jednosigmová časová chyba korekce |
σ_f |
jednosigmová chyba frekvence známé při korekci; frekvence odhadnutá v okně W nese asi σ_y(W) |
σ_PM² |
rozptyl bílého fázového šumu: chvění časové chyby, konstantní podlaha |
q_wf, q_rw, q_rr |
hustoty bílého FM, FM náhodné procházky a FM náhodného běhu (členy van Loana z holdover::coast_phase_variance) |
h_F |
podlaha flicker FM Allanova rozptylu |
y₀ |
zbytkový relativní frekvenční posun zbylý po korekci |
c_T·ΔT |
frekvenční posun ze změny teploty ΔT prostřednictvím teplotního koeficientu c_T |
D |
lineární rychlost stárnutí |
Každý člen FM se rovná t²·σ_y²(t) pro svůj vlastní typ šumu, s σ_y²(τ) = 3σ_PM²/τ² + q_wf/τ + h_F + q_rw·τ/3 + q_rr·τ³/20 (Zucca a Tavella, IEEE Trans. UFFC 52(2), 2005). Pro bílý FM, FM náhodné procházky a FM náhodného běhu je tento vztah přesný. Pro flicker FM jde o konvenční odhad chyby predikce času (Riley, NIST SP 1065): flicker FM nemá bez nízkofrekvenčního omezení uzavřený tvar. Frekvenční posuny se sčítají v absolutní hodnotě, protože jejich znaménka nejsou známa, takže deterministická část je nejhorší případ. Každý člen je nezáporný a v t neklesající, takže E(t) = guard má jediný kořen, nalezený uzavřením do intervalu a půlením.
Odkud se hodiny berou#
| Zdroj | Klíč scénáře | Co to je | Úroveň |
|---|---|---|---|
| Výchozí hodnota třídy | oscillator.class |
jedna citovaná jednosekundová ADEV a syntetizovaná podlaha červeného šumu o dvě a čtyři dekády níže | MODELLED: odpověď pro stabilní hodiny určuje předpokládaná podlaha |
| Předvolba z datasheetu | oscillator.preset |
předvolby telekomunikačního časování (ocxo, rubidium, caesium, csac), každá pojmenovaný datasheet firmy Microchip |
MODELLED: obálka maxim z datasheetu |
| Vložený datasheet | oscillator.datasheet |
vlastní tabulka ADEV zákazníka, stárnutí a teplotní koeficient | MODELLED: obálka uvedených maxim |
| Změřený záznam | oscillator.record |
fázový záznam; jeho překrývající se ADEV se proloží váženou metodou nejmenších čtverců | inverze je VALIDATED na zadrženém skutečném záznamu (níže) |
Tři třídy přidané ve verzi 0.28.0 citují každá jeden veřejný datasheet:
| Třída | Jednosekundová ADEV | Zdroj |
|---|---|---|
tcxo |
2.0e-10 | EndRun Technologies, Disciplined Oscillator Options, sloupec základního TCXO |
ocxo |
5e-12 | Datasheet Microchip OX-208, Rev 12-1-2021 |
rafs |
3e-11 | Datasheet rubidiového frekvenčního etalonu Microchip 8040C, DS00003047A |
Řádky EndRun s dlouhými středovacími dobami se napříč touto tabulkou sbíhají (4e-13 u každého oscilátoru kromě TCXO, 8e-13, při 10 000 s a 6e-14 u všech při 100 000 s), což naznačuje, že popisují disciplinovaný produkt, nikoli volně běžící oscilátor, a proto se nepoužívají.
Proložení záznamu je vážené. Odhad Allanova rozptylu s edf ekvivalentními stupni volnosti má rozptyl asi 2σ⁴/edf, takže každý bod vstupuje s rezidui √(edf/2)·(model/σ² − 1). Neváženým proložením rozhodovaly krátké středovací doby o členech pro dlouhé středovací doby: na testovacím záznamu s bílým FM vzniklo falešné flicker minimum, které zkrátilo 2 000 s dlouhé překročení o 30 %. Datasheet nebo záznam podporuje středovací doby pouze do svého nejdelšího bodu; překročení za touto hranicí se označuje extrapolated.
Validace: inverze na zadržených skutečných hodinách#
tests/slot_timing_cs5071a_holdout.rs používá záznam o 556 990 vzorcích cesiového etalonu 5071A měřeného proti vodíkovému maseru (A. Wallin, distribuováno s allantools; tentýž záznam používá odhadové orákulum tests/cs5071a_reference.rs). S maserem jako referencí jde o 6,4denní volný běh.
- Model šumu se proloží pouze na první třetině záznamu.
- Z tohoto modelu se předpoví doba setrvání, při níž jednosigmová časová chyba dosáhne 0,5, 0,75, 1, 1,5, 2 a 2,5 ns.
- Na zbývajících dvou třetinách se vždy po 997 s od synchronizačního bodu setrvává s frekvencí odhadnutou z předchozí třetiny a měří se, kde efektivní hodnota chyby setrvání dosáhne každého prahu.
Práh splnění, stanovený před prvním spuštěním testu, je každé predikované překročení v rozmezí faktoru 1,5 od naměřeného. Kontrola, jednosekundová ADEV čtená jako bílý FM, tento práh musí nesplnit, aby práh dokázal rozlišit dobrý model od špatného. Test vypisuje svou tabulku; mutace, která sníží úroveň bílého FM na polovinu, jej nesplní. Surový záznam jsou data třetí strany ignorovaná gitem: stahuje je scripts/fetch_cs5071a.sh a workflow realdata-clock spouští test s KSHANA_REQUIRE_REALDATA=1, takže chybějící soubor tam selže, místo aby se přeskočil.
Co to ověřuje: cestu proložení a inverze, na atomovém etalonu s dominantním bílým FM, při setrvání do asi 50 000 s. Co ne: zdroje datasheetů a tříd, deterministické členy a krystalový oscilátor (další oddíl).
Totéž předpovídání na skutečném krystalovém oscilátoru: konzervativní, nevalidované#
tests/slot_timing_ocxo_holdout.rs používá změřený OCXO: 19 982 jednosekundových odečtů frekvence oscilátoru 10 MHz v impedančním analyzátoru HP, proti vodíkovému maseru (A. Wallin, 2015, distribuováno s allantools; scripts/fetch_ocxo.sh). Model šumu a lineární drift se prokládají na první třetině; každé setrvání na zbývajících dvou třetinách začíná od frekvence odhadnuté z předchozích 100 s a model nese nejistotu tohoto odhadu (fix_frequency_sigma, vlastní Allanova odchylka modelu při 100 s).
| Proloženo na | Predikované ÷ změřené překročení, 0,2 až 10 ns | Výklad |
|---|---|---|
| první třetina (zadržená) | 0,59 až 0,70 | konzervativní: nikdy později než změřeno, většinou mimo práh 1,5 |
| samotný hodnocený úsek (diagnostika) | 0,98 až 1,17 | inverze je správná; mezera u zadržených dat je změna oscilátoru |
Šumová podlaha oscilátoru se během záznamu snížila na polovinu: Allanova odchylka první třetiny se plochí poblíž 7.5e-12, zbytek poblíž 3.5e-12. Model proložený brzy šum nadhodnocuje, což je bezpečný směr. Případ krystalu proto není validován a zůstává MODELLED. U krystalu proložte ustálený záznam a znovu proložte, jak součástka stárne.
Jak byl protokol zvolen, uvedeno proto, že to nebylo naslepo. První průzkumný běh převzal protokol pro cesium (frekvence z předchozí třetiny, žádný frekvenční člen) a předpověděl překročení 1,4 až 2,5krát později, než se naměřilo: optimisticky, v nebezpečném směru. Frekvence krystalu putuje, takže frekvence odhadnutá hodiny před korekcí je zastaralá a model neměl člen pro to, jak dobře je frekvence při korekci známa. Člen fix_frequency_sigma byl přidán z tohoto důvodu a tento protokol byl stanoven před napsáním testu; práh splnění nebyl posunut. Test také kontroluje, že bez tohoto členu je predikce na vzorku optimistická při každém prahu, takže člen je nosný.
Totéž předpovídání na atomových hodinách na oběžné dráze: 8 z 10, nevalidované#
tests/slot_timing_igs_holdout.rs používá finální kombinované hodiny IGS po 30 s po dobu 14 dnů (17 až 30 srpna 2025; scripts/fetch_igs_clocks.sh, každý soubor zafixován pomocí SHA-256): hodiny každé družice GPS Block IIF proti časové škále IGS. Protokol (sada družic, pravidlo mezer, okno proložení, synchronizace každých 3 570 s s frekvencí z předchozí hodiny, prahy 1 až 20 ns, práh 1,5 a pravidlo, že třída projde jen tehdy, když projde každá družice) byl sepsán dříve, než byla stažena jakákoli data.
| Družice | Predikované ÷ změřené překročení | Verdikt |
|---|---|---|
| G06, G08, G09, G10, G24, G26, G27, G32 | 0,76 až 1,46 | v rámci prahu |
| G25 | 1,51 až 1,99 | optimistické |
| G30 | 1,20 až 1,61 | optimistické |
| G03 | nehodnoceno | vyloučeno pravidlem mezer (chybějící den) |
Osm z deseti je užitečný důkaz, ale u dvou družic se předpovídá, že vydrží déle, než vydržely, což je nebezpečný směr, a protokol vyžaduje, aby prošla každá družice. Orbitální případ proto zůstává MODELLED. Družice Block IIF nesou rubidiové i cesiové etalony a soubory IGS neříkají, který je aktivní, takže výsledek je uveden pro družice, nikoli pro jeden typ hodin. Proč se G25 a G30 liší, nebylo zkoumáno.
Běh na testovacím zařízení pro součástku reprezentativní pro let (vymezeno, neprovedeno)#
Veřejný záznam OCXO je dlouhý 5,5 hodiny, z jednoho laboratorního přístroje, s oscilátorem, který se ještě ustaloval. Případ krystalu by ověřil delší změřený volný běh OCXO nebo CSAC reprezentativního pro let proti referenci:
- čítač časových intervalů porovnávající 1 PPS oscilátoru s referencí disciplinovanou GNSS nebo maserem, nejméně 10 dnů při jednom vzorku za sekundu, se zaznamenávanou teplotou;
- tentýž protokol se zadržením dat: proložit na první třetině, předpovědět překročení, měřit na zbytku, se stejným prahem a kontrolou;
- záznam a jeho hash zveřejněné vedle testu, aby byl řádek reprodukovatelný.
Závisí na přístupu k referenčnímu hardwaru a neslibuje se.
Vůči které metrice kolísání má být slot přijímán?#
Časovací normy nabízejí tři rodiny metrik. Pro časově indexovaný slot z nich jen jedna měří to, co slot ničí.
- MTIE (ITU-T G.810) je největší rozkmit TIE od vrcholu k vrcholu uvnitř libovolného okna dané délky. Konstantní posun nevidí: hodiny, které jsou o 1 µs vedle, ale dokonale stálé, mají MTIE blízko nule a míjejí každý slot. Měří, o kolik se chyba mění, nikoli kde je.
- TDEV (ITU-T G.810) je sestavena z druhých diferencí středované fáze. Odstraňuje konstantní posun a konstantní chybu frekvence, což jsou právě členy, které při setrvání dominují. Charakterizuje typ šumu; není to metrika přijetí pro absolutní časování.
- max|TE| (ITU-T G.8260; rozpočtová metrika G.8271) je největší absolutní časová chyba vůči referenční časové škále. Lze ji přímo porovnat s guardem.
Závěr. Slot přijímejte podle max|TE| vzhledem k referenční časové škále sítě, vyhodnocené jako predikovaná obálka od poslední korekce při uvedeném koeficientu pokrytí. To je to, čím E(t) je: protože každý člen roste s t, maximum přes setrvání o délce T je E(T). MTIE a TDEV zůstávají užitečné jako diagnostika: TDEV k určení, na který šumový člen zaútočit, MTIE(L) k omezení, o kolik se chyba pohne během slotu o délce L.
Dvě upřesnění, která volba metriky přináší:
- Guard platí pro relativní chybu mezi dvěma uzly. Pokud vysílač i přijímač setrvávají nezávisle, jejich stochastické chyby se sčítají kvadraticky a deterministické v absolutní hodnotě. Když dominuje stochastická část, lze každému uzlu dát
guard/√2; když dominuje stárnutí nebo teplota,guard/2. - Koeficient pokrytí je návrhová volba, nikoli vlastnost hodin.
k = 3pokrývá asi 99,7 % gaussovských chyb v jednom okamžiku, nikoli přes každý slot za den; plán směrování s mnoha sloty za den potřebuje riziko na slot, které snese.
Spoofing přijímače na oběžné dráze#
Sekce spoofing vyhodnocuje orbital_timing::orbital_timing pro tytéž hodiny:
- Geometrie. Pozemní spoofer dosáhne na družici LEO jen tehdy, je-li družice nad jeho horizontem: ve výšce 550 km nejvýše asi dvanáct minut na jeden přelet nad hlavou. Spoofer s nárůstem rychlostí
ρtak může hodiny odtáhnout nejvýše oρnásobek tohoto okna nebo násobek mezery do další nezávislé kontroly, je-li kratší (ramp_limited_pull_ns). - Dynamika. Souhlasný časový posun posune všechny pseudovzdálenosti stejně a je pohlcen do odchylky hodin, nikoli do polohy, takže kontrola polohy orbitálním propagátorem se za křížovou kontrolu časování nepočítá.
- Křížové kontroly. Družice má málokdy druhý nezávislý časovací přijímač. Má setrvání vlastních hodin (monitor z
tpl), obousměrný přenos času s pozemní stanicí během kontaktů a porovnání času přes mezidružicové spoje. Křížový spoj je nezávislý na jednom pozemním spooferu jen tehdy, je-li soused ve stejném okamžiku mimo dosah tohoto spooferu, což zpráva kontroluje z počtu družic na rovinu. - Podmíněná mez. Podlaha monitoru plus setrvání hodin během latence detekce CUSUM, která se přesně redukuje na
tpl::timing_protection_level_ns, když hodiny nemají žádný člen flicker, bílé fáze ani náhodného běhu. Jako ta mez platí jen za předpokladu detekce.
Vše je MODELLED: sférická, nerotující Země, přelet nad hlavou, jeden pozemní spoofer s uvedenou maximální rychlostí nárůstu. Směr příchodu signálů na anténě mířící do zenitu je skutečná křížová kontrola, která potřebuje směrovou charakteristiku antény a není modelována. DECEIVED-TIME.md vysvětluje, proč podepsaná řídicí zpráva tuto hrozbu neodstraní.
Nemodelováno#
Skoky frekvence, radiační vlivy a relativistické frekvenční posuny; tepelný model (změna teploty je skok při korekci); samotný synchronizační protokol (korekce nastaví chybu na fix_sigma_ns).