Data Sheet
June 2001
DSP16410B Digital Signal Processor
Agere Systems Inc.
Agere Systems—Proprietary
Use pursuant to Company instructions
167
4 Hardware Architecture
(continued)
4.16 Serial Interface Unit (SIU)
(continued)
4.16.10 Frame Error Detection and Reporting
The SIU supports back-to-back frame processing.
However, when a frame has completed, the SIU stops
processing until the beginning of another frame is
detected by sampling a new frame sync. If the new
frame sync is detected before a frame has completed,
the following actions are taken by the SIU:
1. An interrupt request is generated, if enabled. Specif-
ically, if the occurrence of SIFS is detected before
the end of the input frame, an input error has
occurred. If enabled via the IINTSEL[1:0] field
(
SCON10
[12:11]—see
Table 111 on page 188
), the
SIINT interrupt is asserted to the DSP cores. If the
occurrence of SOFS is detected before the end of
the output frame, an output error has occurred. If
enabled via the OINTSEL[1:0] field
(
SCON10
[14:13]), the SOINT interrupt is asserted to
the cores.
2. The IFERR flag (input frame error) or OFERR flag
(output frame error) is set in the
STAT
register
(
Table 116 on page 194
), as appropriate. All sub-
frame, channel, and bit counters are reinitialized and
a new input or output frame transaction is initiated.
The data from the incomplete frame can be errone-
ous and the core software should perform error
recovery in response to the setting of IFERR or
OFERR.
3. If the SIU is in passive mode (clocks and frame sync
are externally generated) or in active mode with the
AGSYNC field (
SCON12
[14]) cleared, the new frame
transaction begins immediately after the new frame
sync is detected. If the SIU is in active mode with
AGSYNC set and an externally generated clock is
applied to SCK, the new frame transaction begins
after the detection of the first frame sync that does
not cause resynchronization of the bit clocks. See
Section 4.16.6 on page 163
for details on resynchro-
nizing bit clocks in active mode.
4.16.11 Frame Mode
Frame mode allows for a high channel capacity, but
sacrifices channel selectivity. A program selects frame
mode by setting the IFRAME field (
SCON1
[7]—
Table 102 on page 183
) for input and the OFRAME
field (
SCON2
[7]—see
Table 103 on page 184
) for
output. In this mode, the SIU processes all channels in
the frame. A maximum of 128 consecutive channels in
the frame can be accessed. The IFLIM[6:0] field
(
SCON1
[6:0]) and OFLIM[6:0] field (
SCON2
[6:0])
define the number of channels in each input and output
frame.
If using frame mode, the user performs the following
steps in software:
1. Configure the number of channels in the frame
structure (1 to 128) by programming the IFLIM[6:0]
field with the input frame size, and the OFLIM[6:0]
field with the output frame size. The input and out-
put frame size is the number of channels minus
one. For simple serial communications (one channel
per frame), these fields should be programmed to
zero.
2. Configure the channel size (4, 8, 12, or 16 bits) by
writing the ISIZE[1:0] and OSIZE[1:0] fields
(
SCON0
[4:3] and
SCON0
[12:11]—see
Table 101 on
page 182
). Select LSB-first or MSB-first by pro-
gramming the IMSB and OMSB fields (
SCON0
[2]
and
SCON0
[10]). Configure the data format by pro-
gramming the IFORMAT[1:0] and OFORMAT[1:0]
fields (
SCON0
[1:0] and
SCON0
[9:8]).
3. Program
ICIX
0—1
and
OCIX
0—1
(the 16-bit
channel index registers, see
Table 118 on page 195
)
to assign specific SIU input and output channels to
be routed to one of two DMAU SWT channels
(SWT0 or SWT1 for SIU0; SWT2 or SWT3 for
SIU1). The maximum number of channels that
ICIX
0—1
or
OCIX
0—1
can specify is 32 (two
16-bit registers). If the number of channels is
greater than 32, the DMAU routing specified for
channels 0—31 is applied to channels 32—63,
channels 64—95, etc., as shown in
Table 120 on
page 196
and
Table 119 on page 195
. For the spe-
cial case of simple serial communications (one
channel per frame), program channels 0 and 1 to the
same value, i.e., program
ICIX
0—1
[1:0] to the
same value for input and
OCIX
0—1
[1:0] to the
same value for output.
4. Enable frame mode by setting IFRAME (
SCON1
[7])
and OFRAME (
SCON2
[7]).
5. Disable channel mode by clearing the ISFIDV_E
field (
SCON3
[2]—see
Table 104 on page 185
),
ISFIDV_O field (
SCON3
[5]), OSFIDV_E field
(
SCON3
[10]), and OSFIDV_O field (
SCON3
[13]).
6. Select passive vs. active bit clocks and frame syncs
(see
Section 4.16.5 on page 158
for details).
7. Program the IINTSEL[1:0] field (
SCON10
[12:11])
OINTSEL[1:0] field (
SCON10
[14:13]) as required by
the application.
8. Begin input and output processing by clearing the
IRESET field (
SCON1
[10]) and the ORESET field
(
SCON2
[10]).