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 {
482 double maxeng; /* sync max energy */
483 double noieng; /* sync noise energy */
488 double amp; /* sync signal */
489 double syneng; /* sync signal max */
490 double synmax; /* sync signal max latched at 0 s */
491 double synsnr; /* sync signal SNR */
504 struct sync wwv; /* wwv station */
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;
942 static int jptr; /* sync channel pointer */
967 static double epobuf[WWV_SEC]; /* second sync comb filter */
968 static double epomax, nxtmax; /* second sync amplitude buffer */
969 static int epopos; /* epoch second sync position buffer */
1000 * the 1000/1200-Hz sync signals, as well as the 440-Hz and
1047 * Baseband sync demodulation. The 1000/1200 sync signals are
1075 * The 1000/1200 sync signals are demodulated using a pair of
1079 * sync signals are produced by multiplying the filtered signal
1083 * minute sync signal and detect which one (or both) the WWV or
1086 * produce the second sync signal. The signals are scaled to
1164 * If minute sync has not been acquired before
1191 * sync epoch is zero. Watch out for the first second; if
1192 * already synchronized to the second, the buffered sync epoch
1220 * The second sync pulse is extracted using 5-ms (40 sample) FIR
1236 * Enhance the seconds sync pulse using a 1-s (8000-sample) comb
1239 * propagation delay. Once each second look for second sync. If
1240 * not in minute sync, fiddle the codec gain. Note the SNR is
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 */
1325 * sync pulse, as well as the difference between the current and
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
1431 * second sync pulse. The median sample becomes the candidate
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
1757 struct sync *sp, *rp;
1800 * sync pulse is contained in second 0. At the end of second 58
1803 * sync pulse. At the end of second 1 measure the data pulse and
1807 * At the end of second 0 save the minute sync amplitude latched
1817 * At the end of second 1 use the minute sync amplitude latched
1819 * sync pulse and SNR are above thresholds and the data pulse
2005 * the timescale and the minute sync repeats the second. Once
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;
2434 * we are beneath the waves, so squelch the second sync and
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 */
2597 * s sync indicator ('?' or ' ')
2622 struct sync *sp;