ICS2008B
4
ICS2008B
Functional Description
The following is a functional description of the hardware regis-
ters in the ICS2008B chip. It also describes how those
registers can be utilized by the software to facilitate specific
application services.
Hardware Environments
The ICS2008B operates as a peripheral to a processor such as
a PC or a single chip microprocessor. Many of the real time
requirements are satisfied by double buffering both incoming
and outgoing time codes.
LTC Input
LTCIN is a differential analog input feeding a comparator
with hysteresis. It requires capacitive coupling to the LTC
source. The output of the comparator goes to the LTC re-
ceiver, which is capable of receiving LTC in a forward or
backward direction at a rate from 1/30
th
to 80X nominal
frame rates. The incoming LTC data is sampled with a phase-
locked clock and loaded into the receive buffer following the
receipt of a valid LTC SYNC pattern. When a complete frame
has been received, an interrupt is generated.
LTC Output
The LTC output can be analog or digital. When set up as an
analog output, it can drive a high impedance load.
The LTC generator outputs a LTC frame at the selected frame
rate, such as 24 Hz, 25 Hz, 29.97 Hz or 30 Hz, and starts the
frame based on a start time generated by the selected LTC
SYNC source.
The output edge rate is programmable for SMPTE code (25
µsec) and EBU code (50 µsec) rise and fall times.
Video Inputs
There are two sets of video inputs. In a composite NTSC or
PAL system, the Y input is the only one used. It is capacitively
coupled to the source. In S-Video systems, capacitively couple
Y and C to their respective sources. Proper termination of the
source should be observed. Unused inputs may be left open.
One of the two video sources is selected by the VIDSEL bit in
the SMPTE control registers as the video SYNC source. Inter-
nal timers are synchronized with the incoming video to extract
timing information used to receive and generate VITC.
The VITC receiver samples the incoming video looking for a
valid VITC code on selected scan lines. When a valid code is
received it is written to a VITC receive buffer. More than one
line can contain VITC code, and the codes can be different. For
this reason, VITC codes from selected lines of a frame are writ-
ten to separate VITC buffers.
Video Output
The video output combines the selected video input with the
outputs from the VITC generator and the character generator.
It can be a composite or an S-Video output as selected by the
SVID bit in the SMPTE control registers.
VITC code is generated from data in the VITC generator
buffer and output during the selected line time(s). The CRC
and synchronizing bits are automatically generated by the
VITC generator, but all of the data fields are sent directly from
the buffer with no modification.
A character generator is provided to insert the time code in a
burn-in window which overlays the incoming video. The ver-
tical and horizontal position of the burn-in window is
programmable.
SMPTE SYNC Sources
A time code generator must have a SYNC input from a stable
source in order to position the LTC code properly on a audio
track of video tape or film. Three SYNC sources, video, click
input, and free running, are available. In the case of a video
tape, LTC code must start within plus or minus one line of the
beginning of line 5. This requires “Genlocking” to the incom-
ing video. The video timing section locks to the video’s
horizontal and vertical SYNC signal and generates a SMPTE
SYNC. If some external SYNC source is available it can be
input on the CLICK input. Otherwise, a free running SMPTE
SYNC is generated from the oscillator at the selected frame
rate.
Video Timing Generator
The video timing generator is “Genlocked” to the video
input’s SYNC separator. It extracts NTSC or PAL timing in-
formation from the video input and generates line and pixel
rate timing for the VITC receiver, VITC generator, LTC gen-
erator and character generator. If no video input is present, it
generates free running timing.
Overlay Character Generator
It is sometimes desirable to display the time code on a video
display along with the picture. A character generator is pro-
vided for that purpose. The time code display, or burn-in
window, can be positioned anywhere on the screen. It can be
displayed in two sizes with white or black characters on a
black, white or live video background.
5
ICS2008B
ICS2008B
UART
A general purpose UART is provided for MIDI, video trans-
port control, etc. Most serial interface transport controls use
9600 and 38.4K BAUD. The CTS and RTS modem controls are
needed in these applications. MIDI ports use 31.25K BAUD,
but they do not require modem controls. The receiver includes
a four byte FIFO to reduce the real time interrupt servicing re-
quirements. This is particularly important in MIDI applications
because of the high data rate and the fact that many MIDI mes-
sages are three bytes long. The transmitter is doubled
buffered. Interrupts can be generated on both
receiver data available and/or transmit buffer empty.
Interrupt Timer
The interrupt timer is a general purpose 10 bit timer with three
clock sources (100 kHz, the LTC receive clock and the LTC
transmit clock). Although the timer is general purpose in
nature, its main purpose is to facilitate the timed generation of
MIDI time code messages.
Processor Interface
The ICS2008B supports standard microprocessor interfaces
and busses, such as the PC bus, to allow access to six control/
status and data registers. These six registers are organized into
two groups, one set of four for SMPTE control and the other
set of two for direct UART port control. Each set of registers is
selected with its own chip select, SMPTECS* and UARTCS.*
SMPTE Registers
The SMPTE register set allows access to four direct and
64 indirect registers. The first two direct access registers
addressed at locations 0 and 1 are for status and interrupt con-
trol. The 64 indirect registers are accessed by writing an
indirect address into SMPTE2 and reading from or writing to
SMPTE3. If the AUTOINC bit in SMPTE2 is set to 1, the
indirect register address is automatically incremented after an
access to SMPTE3. This eases the task of reading or writing
sequential indirect locations.
*SCETPMS*SCETPMS
*SCETPMS
*SCETPMS*SCETPMS1A1A
1A
1A1A0A0A
0A
0A0ARETSIGERRETSIGER
RETSIGER
RETSIGERRETSIGER
000 sutatS/lortn
oCtpurretnI-0ETPMS
001 sutatSETPMS-1ETPMS
010 retsigeRsserddAtceridnI-2ETPMS
011 ataDretsigeRtceridnI-3ETPMS
The SMPTE0 Register contains the SMPTE interrupt controls
and status and the VITC read status. The four interrupt bits,
LRI, LXI, VLI and TMI reflect the status of the potential
interrupt sources to the processor. When a bit is set to one and
the corresponding enable bit, LRIEN, LXIEN or VLIEN, is also
set, the INTR output will be activated. Interrupts are cleared by
reading SMPTE0.
LRI — This bit indicates that a LTC receive interrupt has
occurred. In order for an actual processor interrupt to occur,
the LRIEN bit must also be set. An LRI interrupt occurs upon
reception of the last byte of LTC receive data which was pre-
ceded by a valid LTC SYNC pattern. That is after the 64
th
LTC receive bit time in the forward direction. At normal
frame rates, if the LTC transmitter is synchronized with the
LTC receiver, there is about 3 milliseconds after this interrupt
before the LTC transmit data for the next output frame is
transferred to the output buffer.
LXI — This bit indicates that a LTC transmit interrupt has
occurred. When this bit is set, and the corresponding LXIEN
bit has been set, the INTR output will be activated. The LTC
transmit interrupt is activated after the transfer of LTC trans-
mit data to the output buffer. This occurs after LTXEN is set to
one and after the 72
nd
LTC transmits bit time of the current
frame, “N.” Data loaded after this interrupt will appear in out-
put frame “N+2” since the transmitter is double buffered.
VLI — This is a status bit that indicates that the video line
selected via the Video Interrupt Line Register, VR9, has
passed. When the VLIEN bit is also set, the processor will be
interrupted. This interrupt can be used by the processor to
determine when to sample the VITC time code when time
locked to a video source. It will also be used to facilitate
detection of LTC time code dropout and off speed LTC code,
e.g. shuttling operations.
TMI — This bit indicates that a timer interrupt has occurred.
When the TMIEN bit is also set to a one, the INTR output will
be activated. This interrupt is intended to facilitate timing
MIDI clocks and MIDI Quarter Frame messages.
Interrupt Control/Status
LRI (LTC RCV Interrupt)
LXI (LTC XMT Interrupt)
VLI (Video Line Interrupt)
LRIEN (1-enable, 0-disable)
LXIEN (1-enable, 0-disable)
VLIEN (1-enable, 0-disable)
TMI (Timer Interrupt)
TMIEN (1-enable, 0-disable)
7 6 5 4 3 2 1 0
SMPTE0
ICS2008B
6
ICS2008B
The SMPTE Status Register is a read only register which
contains video and LTC status.
FRAMEIN — This bit indicates the state of the FRAME
input pin. It is used as an alternate source for B/A frame
status. This is useful when the quality of the video signal is
not good enough to extract the B/A frame status.
CLICK — This bit indicates the state of the CLICK input
pin. It can be used as a synchronization source for the LTC
transmitter.
LTCLOCK — When a valid forward or backward LTC sync
pattern is detected, this bit is set to one. It is reset to zero when
an expected LTC sync pattern is missed or an invalid LTC bit
is detected.
CODEDIR — The code direction bit works in conjunction
with the LTCLOCK bit. When the LTCLOCK bit is set to one,
the CODEDIR bit is valid. Otherwise, it is not. See the table
below.
VLOCK — This is a hardware driven bit which indicates that
genlock has been achieved with the selected video SYNC
source.
FRAME & FIELD — The hardware SYNC separator detects
the field and frame from the selected video input. The even/
odd fields are identified by a 1/0 in bit 6. Bit 7, FRAME, is valid
for PAL video after line 6. Bit 6, FIELD, is valid after line 5 in
NTSC mode or line 2 in PAL mode.
The SMPTE2 register is the register which points to the 57
indirect registers. When reading or writing an indirect register,
the value in the ADDRESS pointer, SMPTE2 bits 5 to 0, is the
address of the register accessed through SMPTE3. If the
AUTOINC bit is set to one, at the end of an access cycle to
SMPTE3, ADDRESS will automatically increment. Otherwise,
ADDRESS holds its value.
SMPTE3 is the data register through which all of the indirect
registers are accessed. The address for a given register must
first be set in SMPTE2 before accessing that register.
Indirect Registers
The following describes the functions controlled by the
indirect registers. A map of the indirect registers follows this
section, on page 11.
LTC Read Registers IR0-IR7 (read-only)
These read only registers contain the LTC data as received.
Both forward and backward frames are stored with LTC bit 0
in the LSB of IR0 and LTC bit 63 in the MSB of IR7.
LTC Write Registers IR8-IRF
These registers contain the data to be sent by the LTC trans-
mitter. The LSB of IR8 is sent as LTC bit 0, and the MSB of
IRF is sent as LTC bit 63. The data is transmitted as it is stored
in IR8-IRF.
LTCLOCKCODEDIR LTC RECEIVER STATUS
0 X Looking for SYNC pattern
1 0 Receiving LTC (FORWARD)
1 1 Receiving LTC (BACKWARD)
SMPTE Status Register
FRAMEIN (input = 1-high, 0-low)
CLICK (input = 1-high, 0-low)
LTCLOCK (1-locked, 0-not locked)
CODEDIR (1-bkwd, 0-fwd)
Reserved
VLOCK (1-locked, 0-not locked)
FIELD
FRAME (PAL only)
7 6 5 4 3 2 1 0
SMPTE1
Indirect Address Register
ADDRESS
Reserved
AUTOINC (1-increment, 0-hold)
SMPTE2
7 6 5 4 3 2 1 0
Indirect Address Register
SMPTE3
7 6 5 4 3 2 1 0

ICS2008BY-10LFT

Mfr. #:
Manufacturer:
Description:
IC TIME CODE RCVR/GEN 44-TQFP
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union

Products related to this Datasheet