2/24/2008 9T6WP
Preliminary Hardware Data Module
BCM7405
06/29/07
Functional Description
Bro a d c o m Co rp o r a ti o n
Document
7405-1HDM00-R
Data Transport Processor Page 1-19
1
PSUB0 High priority
2
PSUB1 High priority
3
PSUB2 High priority
4
PSUB3 High priority
5
PSUB4 High priority
6
PSUB5 High priority
7
PSUB0 Low priority
8
PSUB1 Low priority
9
PSUB2 Low priority
10
PSUB3 Low priority
11
PSUB4 Low priority
12
PSUB5 Low priority
There is a hardware timer per module, allowing automatic repeat of the entire insertion for each module. This timer
determines the packet-to-packet interval. This interval will have range from 14 us up to 0.9 second. This timer also allows
time borrowing. This means that if the last insertion buffer took longer than the programmed interval, the current insertion
will start immediately, and the current interval is shortened by the same amount. The timer in fact ticks at a constant rate,
without restarting after each insertion.
Each DMA channel has a start, stop, pause, and resume control to allow interruptions by the host CPU.
Status and an optional interrupt will inform the host CPU that the insertion has occurred, and the host CPU can then load
new data into the insertion buffer, and re-enable the packet generation. At any time, the host CPU can read the link list DMA
control to find out the address of the current buffer read pointer for each channel. A repeat bit allows using the previous link
list. The DMA rate will sustain insertion of every packet being adjacent, except at link list read times.
The insertion modes and rates can be configured dynamically, when the module is already enabled, the new modes and
rates take effect at the beginning of every packet arrival.
Each group of inserted packets is given a PID channel number, which can be the same or different between insertions. This
PID channel number is used in the stream selection process of all output modules—record, A/V channels, remux, and
Message filters.
Multistream CableCard Interface
The interface is an implementation of the OpenCable Advanced Multistream POD Interface Specification (OC-SP-CCIF2.0-
D01-040831). When Multistream CableCard function is enabled, transport data from the input buffer can be routed out of
the data transport module for processing by an external AMS-CableCard module via MPOD interface.
Transport packets (both DIRECTV and MPEG) are put into a 200-byte packet format defined in the AMS-CableCard
specification. DIRECTV packets are packetized within dummy MPEG packets before being sent to the AMS-CableCard
module, and de-packetized after returning from AMS-CableCard module.
Packet band, null packet, and timestamp information transmitted in the AMS-CableCard header is recovered from the
header when the data is received back into data transport. The extracted DIRECTV and MPEG packets recovered from the
AMS-CableCard input stream are processed through a secondary PID parser to recalculate PID match and channel
information. The recovered steam is then routed into Conditional Access Descramblers.