Lines Matching full:sync
120 * on signal loss. SSYNC is set when the second sync pulse has been
122 * sync pulse has been acquired. DSYNC is set when the units digit has
131 * and the minute sync slips a second.
133 #define MSYNC 0x0001 /* minute epoch sync */
134 #define SSYNC 0x0002 /* second epoch sync */
135 #define DSYNC 0x0004 /* minute units sync */
161 #define SYNERR 0x8 /* not tracking second sync */
172 #define SYNCH 40 /* station sync timeout */
181 #define MTHR 13. /* minute sync gate (percent) */
182 #define TTHR 50. /* minute sync threshold (percent) */
183 #define AWND 20 /* minute sync jitter threshold (ms) */
184 #define ATHR 2500. /* QRZ minute sync threshold */
185 #define ASNR 20. /* QRZ minute sync SNR threshold (dB) */
186 #define QTHR 2500. /* QSY minute sync threshold */
187 #define QSNR 20. /* QSY minute sync SNR threshold (dB) */
188 #define STHR 2500. /* second sync threshold */
189 #define SSNR 15. /* second sync SNR threshold (dB) */
190 #define SCMP 10 /* second sync compare threshold */
303 #define SYNC2 13 /* latch minute sync pulse */
315 {SYNC2, 0}, /* 0 latch minute sync pulse */
477 * used for the second and minute sync pulses, 1000 Hz for WWV and 1200
480 struct sync { struct
482 double maxeng; /* sync max energy */ argument
483 double noieng; /* sync noise energy */ argument
488 double amp; /* sync signal */ argument
489 double syneng; /* sync signal max */ argument
490 double synmax; /* sync signal max latched at 0 s */ argument
491 double synsnr; /* sync signal SNR */ argument
504 struct sync wwv; /* wwv station */ argument
505 struct sync wwvh; /* wwvh station */
536 int yepoch; /* sync epoch */
537 int repoch; /* buffered sync epoch */
538 double epomax; /* second sync amplitude */
539 double eposnr; /* second sync SNR */
551 struct sync *sptr; /* station pointer */
594 static void wwv_qrz (struct peer *, struct sync *, int);
604 static double wwv_metric (struct sync *);
902 * counts the samples starting at the 5-ms second sync pulse found
908 * the minute starting at the 800-ms minute sync pulse found during the
913 * sinusoids: 100 Hz for the data signal, 1000 Hz for the WWV sync
914 * signal and 1200 Hz for the WWVH sync signal. These drive synchronous
916 * sync signal (800 ms at 1000 Hz) and WWVH minute sync signal (800 ms
918 * as required for the WWV second sync signal (5 cycles at 1000 Hz) and
919 * WWVH second sync signal (6 cycles at 1200 Hz).
929 struct sync *sp, *rp; in wwv_rf()
942 static int jptr; /* sync channel pointer */ in wwv_rf()
967 static double epobuf[WWV_SEC]; /* second sync comb filter */ in wwv_rf()
968 static double epomax, nxtmax; /* second sync amplitude buffer */ in wwv_rf()
969 static int epopos; /* epoch second sync position buffer */ in wwv_rf()
1000 * the 1000/1200-Hz sync signals, as well as the 440-Hz and in wwv_rf()
1047 * Baseband sync demodulation. The 1000/1200 sync signals are in wwv_rf()
1075 * The 1000/1200 sync signals are demodulated using a pair of in wwv_rf()
1079 * sync signals are produced by multiplying the filtered signal in wwv_rf()
1083 * minute sync signal and detect which one (or both) the WWV or in wwv_rf()
1086 * produce the second sync signal. The signals are scaled to in wwv_rf()
1164 * If minute sync has not been acquired before in wwv_rf()
1191 * sync epoch is zero. Watch out for the first second; if in wwv_rf()
1192 * already synchronized to the second, the buffered sync epoch in wwv_rf()
1220 * The second sync pulse is extracted using 5-ms (40 sample) FIR in wwv_rf()
1236 * Enhance the seconds sync pulse using a 1-s (8000-sample) comb in wwv_rf()
1239 * propagation delay. Once each second look for second sync. If in wwv_rf()
1240 * not in minute sync, fiddle the codec gain. Note the SNR is in wwv_rf()
1275 * wwv_qrz - identify and acquire WWV/WWVH minute sync pulse
1278 * minute sync and to mitigate among the ten frequency and station
1279 * combinations. During minute sync acquisition the process probes each
1297 struct sync *sp, /* sync channel structure */ in wwv_qrz()
1325 * sync pulse, as well as the difference between the current and in wwv_qrz()
1371 * wwv_endpoc - identify and acquire second sync pulse
1373 * This routine is called at the end of the second sync interval. It
1374 * determines the second sync epoch position within the second and
1377 * Second sync is determined in the RF input routine as the maximum
1416 * second sync lamp and wait for hotter ions. If no stations are in wwv_endpoc()
1431 * second sync pulse. The median sample becomes the candidate in wwv_endpoc()
1600 * minute sync pulse detected in the wwv_rf() routine and the second
1601 * sync pulse detected in the wwv_epoch() routine. The transmitted
1608 * sync pulses. Therefore, the data subcarrier reference phase is
1627 * Find the maximum minute sync pulse energy for both the in wwv_epoch()
1757 struct sync *sp, *rp; in wwv_rsec()
1800 * sync pulse is contained in second 0. At the end of second 58 in wwv_rsec()
1803 * sync pulse. At the end of second 1 measure the data pulse and in wwv_rsec()
1807 * At the end of second 0 save the minute sync amplitude latched in wwv_rsec()
1817 * At the end of second 1 use the minute sync amplitude latched in wwv_rsec()
1819 * sync pulse and SNR are above thresholds and the data pulse in wwv_rsec()
2005 * the timescale and the minute sync repeats the second. Once in wwv_rsec()
2039 * the time is considered valid if the second sync bit is lit. It should
2043 * loss, the minute sync epoch will be in the same second. This requires
2373 * probe frequency in order to search for minute sync pulse and data
2377 * sync pulse at 1000 Hz and WWVH at 1200 Hz. The probe frequency
2385 * of ties, the award goes to the channel with the highest minute sync
2391 * bits are cleared so the second sync is disabled and the data bit
2401 struct sync *sp, *rp; in wwv_newchan()
2434 * we are beneath the waves, so squelch the second sync and in wwv_newchan()
2482 * (SYNCH) without finding station sync (INSYNC lit).
2484 * 3 After finding station sync (INSYNC lit), going more than 2 days
2539 * the minute sync pulse amplitude. The combined value is scaled 0-100.
2543 struct sync *sp /* station pointer */ in wwv_metric()
2597 * s sync indicator ('?' or ' ')
2622 struct sync *sp; in timecode()