public class TimeCode
extends java.lang.Object
Reference implementation of various timecode modes processed by ICE cards.
These are not optimized for speed.
They are primarily used to test the ICE library functions.
SMS/SDN/DTL Timecode formats
Time code is the time at the sample ONE BIT PRIOR to the Barker code [SDN],
at the start of the first Barker bit [SMS], or at the midpoint (high-to-low
edge of clock) of the first Barker bit [Datolite].
Bit(s) Data
------ -------------------------------
< 1 Fill bits: SMS = 0, SDN = 1
1-7 7 bit Barker code, 1110010 = 114
8-14 BCD seconds, LSB first
15-21 BCD minutes
22-27 BCD hours
28-37 BCD days
For SDN only:
38-49 BCD milliseconds
50-60 Binary VFT (very fine time), MSB first, units = 5 nsec
VFT Extended Precision/Range:
61-63 Bits -1,-2,-3 of VFT; inverted polarity
64 Spare
65-67 Bits 13,12,11 of VFT; inverted polarity
NOTE - this scheme can only address 81us above a 1ms hack, min sample rate = 12345 Hz
NOTE - barker can easily reappear in timecode string, require 4 bits of fill for SDN/DTL
NOTE - with 4 bit fill, minimum supported rate is 71kHz
IRIG-B Timecode format
Time code is once per second. Format is pairs of BCD numbers
Bit(s) Data
------ -------------------------------
02-08 BCD seconds, LSBit first, LSDigit first
11-18 BCD minutes
21-28 BCD hours
31-38 BCD days
41-44 BCD days*100
SDDS Timecode format
Time code is once per packet. Format is binary numbers
Bit(s) Data Big Endian
------ -------------------------------
00-04 status bits
05-15
16-31 # (250psec) hacks from 1ms ptr to SSC
32-96 # (250psec) time increments
IOC tvalid bits: 7=val 6=cyc 5=hit 4=nclk 3=den 2=ply 1=enb 0=ena
- Author:
- Jeff Schoen