ANDOTHER FORMATS)
PLL FOR INTERNAL CLOCK AND FOR OUT-
PUTPCM CLOCK GENERATION
CRC CHECK AND SYNCHRONISATION ER-
ROR DETECTION WITH SOFTWARE INDICATORS
2
I
C CONTROL BUS
LOW POWER2.4VCMOS TECHNOLOGY
WIDE RANGE OF EXTERNAL CRYSTALS
FREQUENCIES SUPPORTED
2
WITH ADPCM CAPABILITY
PRODUCT PREVIEW
ORDERING NUMBERS: STA015 (SO28)
APPLICATIONS
PC SOUNDCARDS
MULTIMEDIA PLAYERS
VOICERECORDERED
DESCRIPTION
The STA015 is a fully integrated high flexibility
MPEG Layer III Audio Decoder, capable of decoding Layer III compressedelementary streams,
as specified in MPEG 1 and MPEG 2 ISO standards. The device decodesalsoelementarystreams
STA015 receives the input data through a Serial
Input Interface. The decoded signal is a stereo,
mono, or dual channel digital output that can be
sent directly to a D/Aconverter, by the PCM Output Interface.This interface is software programmable to adapt the STA015 digital output to the
most common DACs architectures used on the
market.
The functional STA015 chip partitioning is described in Fig.1 and Fig.2.
STA015T (TQFP44)
STA015B (LFBGA 64)
February 2000
This is preliminary informationon a new product now in development or undergoing evaluation. Details are subject to changewithout notice.
1/44
STA015-STA015B-STA015T
Figure1a. BLOCK DIAGRAM for TQFP44 and LFBGA64 package
The MP3 decoder engine is able to decode any
Layer III compliant bitstream: MPEG1, MPEG2
and MPEG2.5 streams are supported. Besides
audio data decoding the MP3 engine also performs ANCILLARY data extraction: these data
can be retrieved via I2C bus by the application
microcontroller in order to implement specific
functions.
Decodedaudio data goesthrough a software volume control and a two-band equalizer blocks before feeding the output I2S interface. This results
in no need for an external audio processor.
MP3 bitstream is sent to the decoderusing a simple serial input interface (see pins SDI, SCKR,
BIT_EN and DATA_REQ), supporting input rate
up to 20 Mbit/s. Received data are stored in a
256 bytes long input buffer which provides a
ABSOLUTE MAXIMUM RATINGS
feedback line (see DATA_REQ pin) to the bitstreamsource (tipicallyan MCU).
1.2 - ADPCMencoder/decoder engine
This device also embeds a multistandardADPCM
encoder/decoder supporting different sample
rates (from 8 KHz up to 32 KHz) and different
sample sizes (from 8 bit to 32 bits). During encoding process two different interfaces can be
used to feeddata: theserial input interface (same
interface used also to feed MP3 bitstream) or the
ADC input interface, which provides a seamless
connection with an external A/D converter. The
currentlyused interface is selected via I2Cbus.
Also to retrieve encoded data two different interfaces are available: the I2C bus or the faster
GPSOoutput interface. GPSO interface is able to
output data with a bitrate up to 5 Mbit/s and its
control pins (GPSO_SCKR, GPSO_DATA and
GPSO_REQ)can be configuredin order to easily
fit thetarget application.
SymbolParameterValueUnit
V
DD
V
i
V
O
T
stg
T
oper
Power Supply-0.3 to 4V
Voltageon Input pins-0.3 to VDD+0.3V
Voltageon output pins-0.3 to VDD+0.3V
Storage Temperature-40 to +150°C
Operative ambient temp-20 to +85°C
129B5VDD_1Supply Voltage
230B4VSS_1Ground
331A4SDAI/Oi
432B3SCLII
534A1SDIIReceiver Serial DataCMOS Input Pad Buffer
636B2SCKRIReceiverSerial ClockCMOS Input Pad Buffer
738D4BIT_ENIBit EnableCMOSInput Pad Bufferwith
840D1SRC_INT/SCK_ADCIInterrupt Line/ADC Serial
942E2SDOOTransmitterSerialData(PCMData) CMOS 4mA Output Drive
1044F2SCKTOTransmitter Serial ClockCMOS 4mA Output Drive
112H1LRCLKTOTransmitter Left/Right ClockCMOS 4mA Output Drive
123H3OCLKI/OOversampling Clock for DACCMOS Input Pad Buffer
135F3VSS_2Ground
146E4VDD_2Supply Voltage
157G4VSS_3Ground
168G5VDD_3Supply Voltage
1710F5PVDDPLL Power
1811G6PVSSPLL Ground
1912G7FILTOPLL Filter Ext. Capacitor
2219E7VSS_4Ground
2321C8VDD_4Supply Voltage
2422D7TESTENITest EnableCMOSInputPad Bufferwith
2524A7SDI_ADCIADC Data InputCMOS Input Pad Buffer
2625B6RESETISystem ResetCMOSInputPad Bufferwith
2726A5LRCK_ADCIADC Left/Right ClockCMOS Output Pad Buffer
2827C5OUT_CLK/
DATA_REQ
20C7IODATA[0]I/OGPIO Data LineCMOS 4mA Schmitt Trigger
18E6IODATA[1]I/OGPIO DataLine
16F6IODATA[2]I/OGPIO Data Line
14F8IODATA[3]I/OGPIO Data Line
37C3IODATA[4]I/OGPIO Data Line
39E3IODATA[5]I/OGPIO DataLine
41D2IODATA[6]I/OGPIO Data Line
43F1IODATA[7]I/OGPIO Data Line
35C2GPIO_STROBEI/OGPIO Strobe Signal
4G3GPSO_REQOGPSO Request SignalCMOS Output Pad Buffer
28C6GPSO_SCKRIGPSO Serial ClockCMOS Input Pad Buffer
33A2GPSO_DATAOGPSO Serial DataCMOS Output Pad Buffer
Note: In functional mode TESTEN must be connectedto VDD.
The STA015 input clock is derivated from an external source or from a industry standard crystal
oscillator, generating input frequencies of 10,
V
REF
D98AU967
Other frequencies may be supported upon request to STMicroelectronics. Each frequency is
supported by downloading a specific configuration file, provided by STM
XTI is an input Pad with specificlevels.
14.31818 or14.7456 MHz.
SymbolParameterTest ConditionMin.Typ.Max.Unit
V
IL
V
IH
Low LevelInput VoltageVDD-1.8V
High Level Input VoltageVDD-0.8V
CMOScompatibility
The XTI pad low and high levels are CMOS compatible; XTI pad noise margin is better than typical
CMOSpads.
TTL compatibility
The XTI pad low level is compatible with TTL while the high level is not compatible(for example if V
DD =
3V TTL min high level = 2.0V while XTI min high level = 2.2V)
7/44
STA015-STA015B-STA015T
Figure5. PLL and Clocks GenerationSystem
XTI
N
PFDCP
M
FRAC
Update FRAC
Switching
Circuit
2.4 - PCM Output Interface
The decodedaudio data are output in serial PCM
format.The interface consists of the followingsignals:
SDOPCM Serial Data Output
SCKTPCM SerialClock Output
LRCLKLeft/RightChannel SelectionClock
The output samples precision is selectable from
Figure6. PCM OutputFormats
16 SCLK Cycles
LRCKT
16 SCLK Cycles
R
CC
VCO
Disable PLL
OCLK
X
XTI2OCLK
DCLK
S
XTI2DSPCLK
16 to 24 bits/word, by setting the outputprecision
with PCMCONF (16, 18, 20 and 24 bits mode)
register. Data can be output either with the most
significant bit first (MS) or least significant bit first
(LS), selected by writing into a flag of the
PCMCONFregister.
Figure 8 gives a description of the several
STA015PCM OutputFormats.
The sample rates set decoded by STA015 is described in Table 1.
16SCLK Cycles
16 SCLK Cycles
16 SCLK Cycles
Table 1:
SDO
SDO
LRCKT
SDO
SDO
SDO
SDO
M
S
L
S
32 SCLK Cycles
M
L
S
S
M
0
S
L
M
0
S
S
M
S
M
L
S
S
L
M
S
S
32 SCLK Cycles
M
S
L
S
M
00
00
S
L
MSBMSB
S
L
M
S
S
L
M
S
S
32SCLK Cycles
L
S
M
S
M
S
MSL
00
L
S
L
S
L
S
S
M
00
S
MSL
S
MSL
MSBMSB
M
L
S
S
M
L
S
S
32 SCLK Cycles
M
0
L
S
00
S
L
S
S
M
0
S
L
M
0
S
S
M
S
PCM_ORD = 0
L
S
PCM_PRECis 16 bit mode
PCM_ORD = 1
M
S
PCM_PRECis 16 bit mode
32 SCLK Cycles
PCM_FORMAT = 1
0
PCM_DIFF = 1
PCM_FORMAT = 0
L
S
PCM_DIFF = 0
PCM_FORMAT = 0
PCM_DIFF = 1
PCM_FORMAT = 1
L
S
PCM_DIFF = 1
MPEGSampling Rates (KHz)
MPEG 1MPEG 2MPEG 2.5
482412
44.122.0511.025
32168
8/44
STA015-STA015B-STA015T
2.5 - STA015Operation Mode
The STA015 can work in two different modes,
calledMultimediaMode and BroadcastMode.
In
Multimedia Mode
(default mode) STA015 decodes the incoming bitstream, acting as a master
of the data communication from the source to itself.
This control is done by a specific buffer management,controlledbySTA015 embedded software.
The data source, by monitoring the DATA_REQ
line, send to STA015 the input data, when the
signalis high (defaultconfiguration).
Thecommunicationisstoppedwhenthe
DATA_REQline is low.
In this mode the fractional part of the PLL is disabled and the audio clocks are generated at
nominal rates. Fig. 7 describes the default
DATA_REQsignalbehaviour. Programming
STA015 it is possible to invert the polarity of the
DATA_REQline (register REQ_POL).
Figure7.
SOURCE STOPS TRANSMITTING DATASOURCE STOPS TRANSMITTING DATA
DATA_REQ
SOURCE SEND DATA TO STA015
D00AU1144
In Broadcast Mode, STA015 works receiving a
bitstream with the input speed regulated by the
source. In this configuration the source has to
guarantee that the bitrate is equivalent to the
nominalbitrateof the decodedstream.
To compensate the difference between the nominal and the real sampling rates, the STA015 embedded software controls the fractional PLL operation. Portable or Mobile applications need
normally to operate in Broadcast Mode. In both
modes the MPEG Synchronisation is automatic
and transparentto the user.
2.6 - STA015Decoding States
There are three different decoder states: Idle,
Init, and Decode. Commands to change the de-
coding states are described in the STA015 I
2
C
registersdescription.
Idle Mode
In this mode the decoder is waiting for the RUN
command. This mode shouldbe used to initialise
the configuration registers of the device. The
DAC connected to STA015 can be initialised during this mode (set MUTE to 1).
PLAYMUTEClock StatePCM Output
X0Not Running0
X1Running0
Init Mode
”PLAY” and ”MUTE” changes are ignored in this
mode. The internal state of the decoder will be
updatedonly when the decoder changes from the
state ”init” to the state ”decode”.The ”init” phase
ends when the first decoded samples are at the
output stage of the device.
Decode Mode
This mode is completely described by the follow-
ing table:
PLAYMUTEClock State
00Not Running0No
01Running0No
10RunningDecoded
11Running0Yes
PCM
Output
Samples
Decoding
Yes
9/44
STA015-STA015B-STA015T
Figure8.
MPEGDecoder Interfaces.
DATA_REQ
SDI
DATA
SOURCE
D98AU912
SCKR
BIT_EN
Figure9. Serial Input Interface Clocks
SDI
XTO
XTIFILT
PLL
MPEG
DECODER
SERIAL AUDIO INTERFACE
RXTX
µP
IIC
SCLSDA
IIC
DATA IGNORED
SDO
SCKT
LRCKT
DAC
OCLK
SCKR
SCKR
BIT_EN
D98AU968A
2.2 - SerialInput Interface
STA015 receives the input data (MSB first)
thought the Serial Input Interface (Fig.5). It is a
serial communication interface connected to the
SDI (Serial Data Input) and SCKR (Receiver Serial Clock).
The interface can be configured to receive data
sampled on both rising and falling edge of the
SCKR clock. The BIT_EN pin, when set to low,
forces the bitstream input interface to ignore the
incoming data. For proper operation Bit_E
N line
should be toggled only when SCRK is stable low
(for both SCLK_POL configuration) The possible
configurationsare describedin Fig. 9.
2.3 - PLL & Clock Generator System
When STA015 receives the input clock, as described in Section 2.1, and a valid layer III input
bitstream, the internal PLL locks, providing to the
DSP Core the master clock (DCLK), and to the
SCLK_POL=0
SCLK_POL=4
DATA IGNOREDDATA VALID
Audio Output Interface the nominal frequenciesof
the incomingcompressedbit stream. The STA015
PLLblockdiagramisdescribedin Figure5.
The audio sample rates are obtained dividing the
oversampl i ng clock(OCLK)by softwareprogramm able factors. The operation is done by STA015 embeddedsoftwar eand it istrans parenttotheuser.
TheSTA015PLLcandrivedirectlymost of thecommercial DACs families, providing an over sampling
clock, OCLK, obtaineddividing the VCO frequency
witha softwareprogrammabledividers.
2.4 - GPSOOutput Interface
In order to retrieveADPCM encoded data a General Purpose Serial Output interface is available
(in TQFP44 and LFBGA64 packages only). The
maximumfrequencyforclockisthe
GPSO_SCKR DSP system clock frequency divided by 3 (i.e. 8.192 MHz @ 24.58MHz).The interface is based on a simple and configurable 3lines protocol, as described by figure10.
10/44
Figure10.
GPSO_SCKR
GPSO_REQ
GPSO_SCKR
STA015MCU
GPSO_DATA
GPSO_REQ
STA015-STA015B-STA015T
GPSO_DATA
To enable the GPSO interface bit GEN of
GPSO_ENABLE register must be set. Using the
GPSO_CONFregister the protocol can be configured in order to provide outcoming data on ris-
ADPCM to provide an interrupt; the use of the
other bits is still to be defined. The related configurationregisteris GPIO_CONF.Seethe following summary for related pin usage:
D00AU1145
ing/falling edge of GPSO_SCKR input clock; the
GPSO_REQ request signal polarity (usually connected to an MCU interrupt line) can be configuredas well.
ADC Inteface
NameDescriptionDir
I/ODATA [0]
GPIO data lineI/O
....................
I/ODATA [7]
GPIO_STROBEGPIO strobe lineI/O
Beside the serial input interface based on SDI
and SCKR lines a 3 wire flexible and user configurable input interface is also available, suitable to
interface with most A/D converters. To configure
this interface 4 specificI
2
C registersare available
(ADC_ENABLE, ADC_CONF, ADC_WLEN and
ADC_WPOS). Refer to registers description for
more details.
2.5 ADPCM Encoding: Overview
According to the previously described interfaces
there are 4 ways to manage ADPCM data stream
while encoding. Input interface can be either the
serial receiver block (SDI + SCKR + DATA_REQ
lines) or the ADC specific interface.
Output interfaces can be either the I
General PurposeI/O Interface
A new general purpose I/O interface has been
added to this device (TQFP44 and LFBGA64
only). Actually only the strobe line is used in
SERIAL I/F (SCKR+ SDI + DATA_REQ)GPSO I/F (GPSO_REQ + GPSO_DATA +
SERIAL I/F (SCKR+ SDI + DATA_REQ) (*)I
(*) STA013 Compatible mode
GPSO_SCKR)
2
C + Interrupt (SCL + SDA + DATA_REQ)SO28/TQFP44
GPSO_SCKR)
2
C (polling) (SCL + SDA)SO28/TQFP44
or without interrupt line) or the GPSO high-speed
serial interface (GPSO_REQ + GPSO_ DATA +
GPSO_SCKRlines). This result in the following 4
methodsto handle encoding flow:
Figure.11
....
I/O
2
C bus (with
Available on
package
TQFP44
LFBGA64
LFBGA64
TQFP44
LFBGA64
LFBGA64
LRCK_ADC
SDI_ADC
SCK_ADC
SDI
SCKR
DATA_REQ
ADC I/F
SERIAL
RECEIVER
ENCOD
ENGINE
GPSOMUX
I2C
D99AU1064
GPSO_REQ
GPSO_DATA
GPSO_SCKR
SDA
SCL
DATA_REQ
11/44
STA015-STA015B-STA015T
The following 4 figures (fig. 12, 13, 14, 15) show
the available connection diagrams as for as
ADPCM encoding function. As shown in the figures some configuration is not available in SO28
package.
Figure13. Input fromADC, Output from I2C +
IRQ
2
I
C
DATA_REQ
MCU
SDI_ADC
ADC
SLAVE
LRCKT
SCKT
STA015
SO28
TQFP44
LFBGA64
SDO
DAC
OCLK
Figure 12. Input from BITSTREAM,Outputfrom
I2C
SDI
SCKR
DATA_REQ
MCUDAC
BIT_EN
2
C
I
Figure 14.
Input from BITSTREAM,Outputfrom
STA015
SO28
TQFP44
LFBGA64
LRCKT
SCKT
SDO
OCLK
D99AU1121A
GPSO
GPSO_DATA
GPSO_SCKR
GPSO_REQ
MCUDACSTA015
Figure 15.
SDI
SCKR
DATA_REQ
BIT_EN
I2C
TQFP44
LFBGA64
Input from ADC, Output from GPSO
LRCKT
SCKT
SDO
OCLK
D99AU1122A
2
I
MCU
ADC
MASTER
C
DATA_REQ
LRCK_ADC
SCK_ADC
SDI_ADC
STA015
SO28
TQFP44
LFBGA64
LRCKT
SCKT
SDO
OCLK
DAC
D99AU1123A
3-I2C BUS SPECIFICATION
2
The STA015 supports the I
C protocol. This protocoldefines any device that sends data on to the
bus as a transmitter and any device that reads
the data as a receiver. The device that controls
the data transfer is known as the master and the
others as the slave. The master always starts the
transfer and provides the serial clock for synchronisation. The STA015 is always a slave device in
all its communications.
12/44
GPSO_DATA
MCU
ADC
MASTER
GPSO_SCKR
GPSO_REQ
LRCK_ADC
SCK_ADC
SDI_ADC
STA015
TQFP44
LFBGA64
LRCKT
SCKT
SDO
OCLK
DAC
D99AU1124A
3. 1 - COMMUNICATION PROTOCOL
3.1.0 - Datatransition or change
Data changes on the SDA line must only occur
when the SCL clock is low. SDA transition while
the clock is high are used to identify START or
STOP condition.
3.1.1 - Start condition
START is identified by a high to low transition of
the data bus SDA signal while the clock signal
SCL is stable in the high state.
A START condition must precede any command
fordata transfer.
STA015-STA015B-STA015T
3.1.2 - Stopcondition
STOP is identified by low to high transition of the
data bus SDA signal while the clocksignal SCL is
stable in the high state. A STOP condition terminates communications between STA015 and the
busmaster.
3.1.3 - Acknowledgebit
An acknowledgebit is used to indicate a successful data transfer. The bus transmitter, either master or slave, releases the SDA bus after sending
8 bit of data.
During the 9th clock pulse the receiver pulls the
SDA bus low to acknowledge the receipt of 8 bits
of data.
3.1.4 - Datainput
During the data input the STA015 samples the
SDA signalon the rising edgeof the clock SCL.
For correct device operation the SDA signal has
to be stable during the rising edge of the clock
and the data can changeonly when the SCL line
is low.
3.2 - DEVICEADDRESSING
To start communication between the master and
the STA015, the master must initiate with a start
condition. Following this, the master sends onto
the SDA line 8 bits (MSB first) corresponding to
the device select address and read or write
mode.
Figure16. Write Mode Sequence
The 7 most significant bits are the deviceaddress
identifier, corresponding to the I
2
C bus definition.
For the STA015 these are fixed as 1000011.
The 8th bit (LSB) is the read or write operation
RW, this bit is set to 1 in read mode and 0 for
write mode. After a START condition the STA015
identifies on the bus the device address and, if a
match is found, it acknowledges the identification
on SDA bus duringthe 9th bit time. The following
byte after the device identification byte is the internalspace address.
3.3 - WRITE OPERATION(see fig. 16)
Following a START condition the master sends a
deviceselectcode with the RW bit set to 0.
The STA015 acknowledges this and waits for the
byte of internaladdress.
After receiving the internal bytes address the
STA015againrespondswith an acknowledge.
3.3.1 - Bytewrite
In thebyte write mode the master sends one data
byte, this is acknowledged by STA015. The master then terminates the transfer by generating a
STOP condition.
3.3.2 - Multibytewrite
The multibyte write mode can start from any internal address. The transfer is terminated by the
mastergenerating a STOPcondition.
BYTE
WRITE
MULTIBYTE
WRITE
START
STARTRW
DEV-ADDR
DEV-ADDR
Figure17. Read Mode Sequence
ACK
CURRENT
ADDRESS
READ
RANDOM
ADDRESS
READ
SEQUENTIAL
CURRENT
READ
SEQUENTIAL
RANDOM
READ
DEV-ADDR
START
DEV-ADDR
STARTRW
START
STARTRW
DEV-ADDR
DEV-ADDR
RW=
HIGH
DATA
RW
ACK
SUB-ADDR
ACK
DATA
ACK
SUB-ADDR
ACK
RW
ACK
NO ACK
ACK
STARTRW
ACK
ACK
STARTRW
SUB-ADDR
SUB-ADDR
STOP
DATA
DEV-ADDR
DEV-ADDR
ACK
ACK
ACK
ACK
ACK
DATA IN
DATA IN
DATA
DATA
DATA
ACK
ACK
STOP
NO ACK
NO ACK
ACK
D98AU825B
STOP
STOP
DATA
DATA IN
ACK
ACKNO ACK
D98AU826A
STOP
DATA
STOP
13/44
STA015-STA015B-STA015T
3.4 - READOPERATION (see Fig. 17)
3.4.1 - Currentbyte address read
The STA015 has an internal byte address
counter. Each time a byte is written or read, this
counteris incremented.
For the current byte address read mode, following a START condition the master sends the deviceaddresswith the RW bit set to 1.
The STA015 acknowledges this and outputs the
byte addressed by the internal byte address
counter. The master does not acknowledge the
received byte, but terminates the transfer with a
STOPcondition.
3.4.2 - Sequential address read
This mode can be initiated with either a current
address read or a random address read. However in this case the master does acknowledge
the data byteoutputand the STA015 continues to
outputthe nextbyte in sequence.
To terminate the streams of bytes the master
does not acknowledge the last received byte, but
2
I
C REGISTERS
terminatesthe transfer with a STOP condition.
The output data stream is from consecutive byte
addresses,with the internal byte address counter
automaticallyincrementedafter one byte output.
2
C REGISTERS
4- I
The following table gives a description of the
MPEGSource Decoder (STA015)register list.
The first column (HEX_COD) is the hexadecimal
code for the sub-address.
The second column (DEC_COD) is the decimal
code.
The third column (DESCRIPTION) is the description of theinformationcontainedin the register.
The fourth column (RESET) inidicate the reset
value if any. When no reset value is specifyed,
the defaultis ”undefined”.
The fifth column (R/W) is the flag to distinguish
register ”read only” and ”read and write”, and the
useful size of the register itself.
Each register is 8 bit wide. The master shall operate reading or writing on 8 bits only.
1) The HEX_COD is the hexadecimal adress thatthe microcontroller has to generate to access the information.
2) RESERVED: register used for production test only, or for future use.
15/44
STA015-STA015B-STA015T
4.1 - STA015REGISTERSDESCRIPTION
The STA015 device includes 256 I
2
C registers. In
this document, only the user-oriented registers
are described. The undocumented registers are
reserved. These registers must never be accessed (in Read or in Write mode). The ReadOnly registersmustneverbe written.
The following table describes the meaning of the
abbreviations used in the I
2
C registers descrip-
tion:
SymbolComment
NANot Applicable
UNDUndefined
NCNo Charge
RORead Only
WOWrite Only
R/WRead and Write
R/WSRead, Write in specific mode
VERSION
Address:0x00 (00)
Type:RO
MSBLSB
b7b6b5b4b3b2b1b0
V8V7V6V5V4V3V2V1
The VERSION register is read-only and it is used
to identify the IC on the applicationboard.
PLLCTL
Address:0x05 (05)
Type:R/W
SoftwareReset: 0xA1
HardwareReset: 0xA1
MSBLSB
b7b6b5b4b3b2b1b0
XTO_
XTODISOCLKENSYS2O
BUF
PPLDISXTI2DS
CLK
PCLK
XTI2O
CLK
UPD_F
RAC
UPD_FRAC: when is set to 1, update FRAC in
the switching circuit. It isset to 1 after autoboot.
XTI2OCLK:when is set to 1, use the XTI as input
of the divider X instead of VCO output. It is set to
0 on HW reset.
XTI2DSPCLK:when is to 1, set use the XTI as input of the divider S instead of VCO output. It is
set to 0 onHW reset.
PLLDIS: when set to 1, the VCO output is disabled. It is set to 0 onHW reset.
SYS2OCLK: when is set to 1, the OCLK frequency is equal to the system frequency. It is
useful for testing. It is set to 0 on HW reset.
OCLKEN: when is set to 1, the OCLK pad is enable as outputpad. It is set to 1 on HW reset.
XTODIS: when is set to 1, the XTO pad is disable. It is set to0 on HW reset.
XTO_BUF: when this bit is set, the pin nr. 28
(OUT_CLOCK/DATA_REQ) is enabled. It is set
to 0 after autoboot.
IDENT
Address:0x01 (01)
Type:RO
SoftwareReset: 0xAC
HardwareReset: 0xAC
MSBLSB
b7b6b5b4b3b2b1b0
10101100
IDENT is a read-onlyregister and is used to identify the IC onan applicationboard. IDENT always
hasthe value ”0xAC”
16/44
PLLCTL (M)
Address:0x06 (06)
Type:R/W
SoftwareReset: 0x0C
HardwareReset: 0x0C
PLLCTL (N)
Address:0x07 (07)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
The M and N registers are used to configure the
STA015PLL by DSP embeddedsoftware.
M and N registers are R/W type but they are
completely controlled, on STA015, by DSP software.
STA015-STA015B-STA015T
REQ_POL
Address:0x0C (12)
Type:R/W
SoftwareReset: 0x01
HardwareReset: 0x00
The REQ_POL registers is used to program the
polarityof the DATA_REQ line.
MSBLSB
b7b6b5b4b3b2b1b0
00000001
Default polarity (the source sends data when the
DATA_REQline is high)
MSBLSB
b7b6b5b4b3b2b1b0
00000101
Invertedpolarity (the source sends data when the
DATA_REQline is low)
SCKL_POL
Address:0x0D (13)
Type:R/W
SoftwareReset: 0x04
HardwareReset: 0x04
MSBLSB
b7b6b5b4b3b2b1b0
XXXXX000(1)
100(2)
X = don’t care
SCKL_POL is used to select the working polarity
of the Input Serial Clock (SCKR).
(1) If SCKL_POL is set to 0x00, the data (SDI)
are sent with thefalling edge of SCKR
and sampled on the risingedge.
(2) If SCKL_POL is set to 0x04, the data (SDI)
are sent with therising edge of SCKRand
sampledon the falling edge.
ERROR_CODE
Address:0x0F (15)
Type:RO
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
XXEC5EC4EC3EC2EC1EC0
X = don’t care
ERROR_CODE register contains the last error
occourredif any. The codes can be as follows:
CodeDescription
0x00No error since the last SW or HW Reset
0x01CRC Failure
0x02DATA not available
0x04Ancillary data not read
0x10Audio synch word not found
0x2XMPEG Header error
0x3XMPEG Decoding errors
SOFT_RESET
Address:0x10 (16)
Type:WO
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
XXXXXXX0
1
X = don’t care; 0 = normal operation; 1 = reset
When this registeris written, a soft reset occours.
The STA015 core command register and the interrupt register are cleared. The decoder goes in
to idle mode.
PLAY
Address:0x13 (19)
Type:R/W
SoftwareReset: 0x01
HardwareReset: 0x01
MSBLSB
b7b6b5b4b3b2b1b0
XXXXXXX0
1
X = don’t care; 0 = normal operation; 1 = play
The PLAY command is handled according to the
state of the decoder,as described in section 2.5.
PLAY only becomes active when the decoder is
in DECODE mode.
17/44
STA015-STA015B-STA015T
MUTE
Address:0x14 (20)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
XXXXXXX0
1
X = don’t care; 0 = normaloperation; 1 = mute
The MUTE command is handled according to the
stateof the decoder,as described in section 2.5.
MUTEsetsthe clock running.
DATA_REQ_ENABLE
Address:0x18 (24)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
CMD_INTERRUPT
Address:0x16 (22)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
XXXXXXX0
1
X = don’t care;
0 = normaloperation;
1 = write into I
2
C/AncillaryData
The INTERRUPT is used to give STA015 the
command to write into the I2C/Ancillary Data
Buffer (Registers: 0x7E ... 0xB5). Every time the
Master has to extract the new buffer content it
writes into this register, setting it to a non-zero
value.
MSBLSB
b7b6b5b4b3b2b1b0Description
XXXXX0XXbuffered output clock
XXXXX1XXrequest signal
The DATA_REQ_ENABLE register is used to
configure Pin n. 28 working as buffered output
clock or data request signal, used for multimedia
mode.
The buffered Output Clock has the same fre-
quencythan the input clock (XTI)
SYNCSTATUS
Address:0x40 (64)
Type:RO
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0Description
XXXXXXSS1SS0
00Research of sync word
01Wait for Confirmation
10Synchronised
The HEAD registers can be viewed as logically
concatenatedtostore the MPEG Layer III Header
content. The set of three registers is updated
every time the synchronisationto the new MPEG
frame is achieved
The meaning of the flags are shown in the following tables:
MPEGIDs
IDexID
00MPEG2.5
01reserved
10MPEG2
11MPEG1
Layer
in Layer III these two flags must be set always to
”01”.
HEAD_M[15:8]
MSBLSB
b7b6b5b4b3b2b1b0
H15H14H13H12H1‘1H10H9H8
Protection_bit
It equals ”1” if no redundancy has been added
and ”0” if redundancyhas beenadded.
19/44
STA015-STA015B-STA015T
Bitrate_index
indicates the bitrate (Kbit/sec) depending on the
Mode extension
These bits are used in joint stereo mode. They indicates which type of joint stereo coding method
is applied. The frequency ranges, over which the
intensity_stereo and ms_stereo modes are applied, are implicit in the algorithm.
Copyright
If this bit is equal to ’0’, there is no copyright on
the bitstream, ’1’ means copyright protected.
Original/Copy
This bit equals ’0’ if the bitstream is a copy, ’1’ if it
is original.
Emphasis
Indicates the type of de-emphasis that shall be
used.
Paddingbit
if this bit equals ’1’, the frame contains an addi-
tional slot to adjust the mean bitrate to the samplingfrequency,otherwise thisbit is set to ’0’.
DRB register is used to re-direct the Right Channel on the Left, or to mix both the Channels.
CHIP_MODE
Address:0x4D (77)
Type:R/W
HardwareReset: 0x00
Using this registerit’s possibleto selectwhich op-
eration will be performed by the DSP.
Possible valuesare:
0x00- MP3decoding
0x01- Reserved
0x02- ADPCMEncoder
0x03- ADPCMDecoder
The DSP will check for the value of this register
right after the RUN command ha s been issued
(refer to RUN register). After that no more checks
will be performed: therefore a SOFT_RESET
must be generated in order to change the device
mode.
CRCR
Address:0x4E (78)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
XXXXXXXCRCEN
Default value is 0x00, corresponding at the maximum attenuationin there-direction channel.
curs, the current frame is skipped and the decoder is muted. The ERROR_CODE register is
affectedwith the value 0x01.
If CRC_EN bit is set, the result of the CRC check
is ignored, but the ERROR_CODE register is
neverthelessaffected with the value0x01 if a discrepancehas occurred.
MFSDF_441
Address:0x50 (80)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
XXXM4M3M2M1M0
This register contains the value for the PLL X
driverfor the 44.1KHz reference frequency.
The VCO output frequency, when decoding
44.1KHzbitstream,isdividedby (MFSDF_441 +1)
PLLFRAC_441_L
Address:0x51 (81)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
The CRC register is used to enable/disable the
CRC check. If CRC_EN bit is cleared, the CRC
value encoded in the bitstream is checked
against the hardware one. If a discrepance oc-
22/44
MSBLSB
b7b6b5b4b3b2b1b0
PF7PF6PF5PF4PF3PF2PF1PF0
STA015-STA015B-STA015T
ADPCM_DATA_READY
Address:0x52 (82)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
XXXXXXXADR
ADR: AdpcmData Ready
This bit signal (ADPCM encoded data ready)
PLLFRAC_441_H
Address:0x52 (82)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
PF15 PF14 PF13 PF12 PF11 PF10 PF9PF8
The registers are considered logically concatenated and contain the fractional values for the
PLL,for 44.1KHzreference frequency.
(see also PLLFRAC_L and PLLFRAC_H registers)
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
XXXADPCM_SF
ADPCM_SF:Adpcm Sample Frequency
0x028KHz
0x0A16KHz
0x0E32KHz
PCMDIVIDER
Address:0x54 (84)
Type:RW
SoftwareReset: 0x03
HardwareReset: 0x03
76543210
PD7PD6PD5PD4PD3PD2PD1PD0
PCMDIVIDER is used to set the frequency ratio
between the OCLK (Oversampling Clock for
DACs), and the SCKT (Serial Audio Transmitter
Clock).
The relation is thefollowing:
ADPCM_SAMPLE_FREQ
Address:0x53 (83)
Type:R/W
SCKT_freq =
OCLK_freq
2(1+PCM_DIV
)
23/44
STA015-STA015B-STA015T
The OversamplingFactor (O_FAC) is related to OCLK and SCKT by the following expression:
1) OCLK_freq= O_FAC * LRCKT_ Freq
(DACrelation)
2) OCLK_Freq = 2 * (1+PCM_DIV) * 32*
LRCKT_Freq(when 16 bit PCM mode is used)
3) OCLK_Freq = 2 * (1+PCM_DIV) * 64*
LRCKT_Freq(when 32 bit PCM mode is used)
4) PCM_DIV= (O_FAC/64)- 1 in 16 bit mode
5) PCM_DIV= (O_FAC/128)- 1 in 32 bit mode
Examplefor setting:
MSBLSB
b7b6b5b4b3b2b1b0Description
PD7PD6PD5PD4PD3PD2PD1PD0
0000011116bitmode512 x Fs
0000010116bitmode384 x Fs
0000001116bitmode256 x Fs
0000001132bitmode512 x Fs
0000001032bitmode384 x Fs
0000000132bitmode256 x Fs
for 32 bit PCM Mode
O_FAC= 512; PCM_DIV= 3
O_FAC= 256; PCM_DIV= 1
O_FAC= 384; PCM_DIV= 2
24/44
STA015-STA015B-STA015T
PCMCONF
Address:0x55 (85)
Type:R/W
SoftwareReset: 0x21
HardwareReset: 0x21
MSBLSB
b7b6b5b4b3b2b1b0Description
XORDDIFINVFORSCLPREC(1) PREC(1)
X1PCM order the LS bit is transmitted First
X0PCM order the MS bit is transmitted First
X0The word is right padded
X1The word is left padded
X1LRCKT Polarity compliant to I2S format
X0LRCKT Polarity inverted
X0I2S format
X1Different formats
X1Data are sent on the rising edge of SCKT
X0Dataare sent on thefalling edge of SCKT
X0016 bit mode (16 slots transmitted)
X0118 bit mode (18 slots transmitted)
X1020 bit mode (20 slots transmitted)
X1124 bit mode (24 slots transmitted)
PCMCONF is used to set the PCM Output Interface configuration:
ORD: PCM order. If this bit is set to’1’, the LS Bit
is transmittedfirst,otherwiseMS Bit is transmiited
first.
DIF: PCM_DIFF. It is used to select the position
of the valid data into the transmitted word. This
setting is significant only in 18/20/24 bit/word
mode.If it is set to ’0’ the word is right-padded,
otherwiseit is left-padded.
INV (fig.13): It is used to select the LRCKT clock
polarity.Ifit is setto ’1’ the polarity is compliantto
I2S format (low -> left , high -> right), otherwise
the LRCKT is inverted. The default value is ’0’. (if
I2S have to be selected, must be set to ’1’ in the
STA015configurationphase).
Figure19. LRCKT PolaritySelection
LRCKT
LRCKT
left
left
right
right
left
left
INV_LRCLK=0
INV_LRCLK=1
FOR: FORMAT is used to select the PCM Output
Interfaceformat.
After hw and sw reset the value is set to 0 correspondingto I
2
S format.
SCL (fig.14): used to select the Transmitter Serial
Clockpolarity.If set to ’1’ the dataare senton the
rising edge of SCKT and sampled on the falling. If
set to ’0’ , the data are sent on the falling edge
and sampled on the rising. This last option is the
most commonly used by the commercial DACs.
The default configurationfor this flagis ’0’.
Figure 20.
SCKT PolaritySelection
SCKT
SDO
INV_SCLK=0
SCKT
SDO
INV_SCLK=1
PREC [1:0]: PCM PRECISION
It is used to select the PCM samples precision,as
follows:
’00’: 16 bit mode(16 slotstransmitted)
’01’: 18 bit mode(32 slotstransmitted)
’10’: 20 bit mode(32 slotstransmitted)
’11’: 24 bit mode(32 slotstransmitted)
The PCM samples precision in STA015 can be
16 or 18-20-24 bits.
When STA015 operates in 16 (18-20-24) bits
mode, the number of bits transmitted during a
LRCLT period is 32 (64).
25/44
STA015-STA015B-STA015T
PCMCROSS
Address:0x56 (86)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0Description
XXXXXX00Left channel is mapped on the left output.
XXXXXX01Left channel is duplicated on bothOutput channels.
XXXXXX10Right channel is duplicated on both Output channels
XXXXXX11Right and Left channels are toggled
The default configurationfor this register is ’0x00’.
MFSDF(X)
Address:0x61 (97)
Type:R/W
SoftwareReset: 0x07
HardwareReset: 0x07
MSBLSB
b7b6b5b4b3b2b1b0
X X X M4M3M2M1M0
The register containsthe values for PLL X divider
(see Fig. 7).
The value is changed by the internal STA015
Core, to set the clocks frequencies, according to
the incoming bitstream. This value can be even
set by the user to select the PCM interface configuration.
The VCOoutput frequency is divided by (X+1).
This registeris a referencefor 32KHz and 48 KHz
inputbitstream.
Right channel is mapped on the Right output
Fs. When this mode is selected, the default
OCLKfrequencyis 12.288MHz.
This register is used to select the operating mode
for OCLK clock signal. If it is set to ’1’, the OCLK
frequency is fixed, and it is mantained to the
value fixed by the user even if the sampling frequency of the incoming bitstream changes. It the
MODE flag is set to ’0’, the OCLK frequency
changes, and can be set to (512, 384, 256) * Fs.
The default configuration for this mode is 256 *
26/44
The registers are considered logically concatenated and contain the fractional values for the
PLL, used to select the internalconfiguration.
After Reset, the values are NA, and the operational setting are done when the MPEG synchronisationis achieved.
The following formula describes the relationships
among all theSTA015 fractional PLL parameters:
OCLK_Freq =
X+ 1
1
⋅
N + 1
⋅
M + 1 +
FRAC
65536
MCLK_freq
where:
FRAC=256x FRAC_H + FRAC_L(decimal)
These registers are a reference for 48 / 24 / 12 /
32 / 16 / 8KHz audio.
STA015-STA015B-STA015T
FRAME_CNT_L
MSBLSB
b7b6b5b4b3b2b1b0
FC7FC6FC5FC4FC3FC2FC1FC0
FRAME_CNT_M
MSBLSB
b7b6b5b4b3b2b1b0
FC15 FC14 FC13 FC12 FC11 FC10 FC9FC8
FRAME_CNT_H
MSBLSB
b7b6b5b4b3b2b1b0
FC23 FC22 FC21 FC20 FC19 FC18 FC17 FC016
Address:0x67, 0x68,0x69 (103 - 104 - 105)
Type:RO
SoftwareReset: 0x00
HardwareReset: 0x00
The three registers are considered logically concatenated and compose the Global Frame
Counter as describedin the table.
It is updated at every decoded MPEG Frame.
The registers are reset on both hardware and
software reset.
MSBLSB
b7b6b5b4b3b2b1b0
SV7SV6SV5SV4SV3SV2SV1SV0
After the STA015 boot, this register contains the
version code of theembedded software.
RUN
Address:0x72 (114)
Type:RW
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
XXXXXXXRUN
Setting this register to 1, STA015leaves the idle
state, startingthedecodingprocess.
The Microcontroller is allowed to set the RUN
flag, once all the control registers have been initialized.
TREBLE_FREQUENCY_LOW
Address:0x77 (119)
Type:RW
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
TF7TF6TF5TF4TF3TF2TF1TF0
AVERAGE_BITRATE
Address:0x6A (106)
Type:RO
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
AB7AB6AB5AB4AB3AB2AB1AB0
AVERAGE_BITRATEis a read-only register and
it contains the average bitrate of the incoming bitstream. The value is rounded with an accuracy of
1 Kbit/sec.
SOFTVERSION
Address:0x71 (113)
Type:RO
TREBLE_FREQUENCY_HIGH
Address:0x78 (120)
Type:RW
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
TF15 TF14 TF13 TF12 TF11 TF10TF9TF8
The registers TREBLE_FREQUENCY-HIGH and
TREBLE_FREQUENCY-LOW, logically concatenated as a 16 bit wideregister, are used to select
the frequency, in Hz, where the selected frequencyis +12dB respectto the stop band.
By setting these registers, the following rule must
be kept:
Treble_Freq< Fs/2
27/44
STA015-STA015B-STA015T
BASS_FREQUENCY_LOW
Address:0x79 (121)
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
BF7BF6BF5BF4BF3BF2BF1BF0
BASS_FREQUENCY_HIGH
Address:0x7A (122)
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
BF15 BF14 BF13 BF12 BF11 BF10 BF9BF8
The registers BASS_FREQUENCY_HIGH and
BASS_FREQUENCY_LOW, logicallyconcatenatedas a 16 bit wide register,are usedto select
the frequency, in Hz, where the selected frequency is -12dB respect to the pass-band. By
setting the BASS_FREQUENCY registers, the
followingrules must be kept:
Signednumber(2 complement)
This register is used to select the enhancement
or attenuation STA015 has to perform on Treble
Frequencyrange at the digitalsignal.
A decrement (increment) of a decimal unit corresponds to a step of attenuation(enhancement)of
1.5dB.
The allowed Attenuation/Enhancementrange is
[-18dB, +18dB].
son, before applying Bass & Treble Control, the
user has to set the TONE_ATTEN register to the
maximum value of enhancement is going to perform.
For example, in case of a 0 dB signal (max. level)
only attenuation would be possible. If enhancement is desired, the signal has to be attenuated
accordinglybeforeinordertoreserveamargin indB.
Anincremen tof a decimalunitcorres pondstoa Tone
Attenuati onstepof1.5d B.
In the digital outputaudio, the full signal is
achieved with 0 dB of attenuation. For this rea-
STA015 can extract max 56 bytes/MPEG frame.
To know the number of A.D. bits available every
MPEG frame, the ANCCOUNT_L and ANCCOUNT_H registers (0x41 and 0x42) have to be
read.
The buffer dimension is 5 bytes, written by
STA015 core in sequential order. So the whole
set of ancillary data may be accessed in one
shot. The timing information to read the buffer
can be obtained by reading the FRAME_CNT
registers(0x67 - 0x69).
ISR
Address:0xB6 (182)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
XXXXXXX0
1
X = don’t care;
0 = no ancillary data
1 = Ancillary Data Available
The ISR is used by the microcontroller to understand when a new ancillary data block is available.
ADPCM_CONFIG
Address:0xB8 (184)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
XXXXAA1 AA0 ASM_EN AFM_EN
This register controls ADPCM engine and how
data must be compressed.
AFM_EN ADPCM Frame Mode Enable
0 =no frames (rawformed)
1 =select theframed output formate for
ADPCM encoded data
ASM_EN: ADPCM Stereo Mode Enable
0 =Disable stereo mode
1 =Enable stereo mode
AA0,AA1: ADPCM Algorithm selection
The ADPCM encoding/decoding algorithm
can be selected according to the following
table:
This register enable/disable the GPSO interface.
Settingthe GENbit will enable the serial interface
for ADPCM data retrieving. Reset GEN bit to disable GPSOinterface.
31/44
STA015-STA015B-STA015T
GPSO_CONF
Address:0xBA (186)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
XXXXXXGRPGSP
GSP:GPSO Sclk polarity
Using this bit the GPSO_SCLK polarity can
be controlled. ClearingGSP bit data on
GPSO_DATA line will be provided on the
rising edge of GPSO_SCLK (sampling on
falling edge). Setting GSP bit data are
provided on falling edge of GPSO_SCLK
(sampling on rising edge)
GRP:GPSO Request Polarity
This bit isused to determine the polarity of
GPSO_REQ signal. If GRP bit is cleared
data are valid on GPSO_REQ signal high. If
this bit is set data are valid on GPSO_REQ
signal low
ADC_ENABLE
Address:0xBB (187)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
XXXXXXXADCEN
This register controls if the ADPCM data to be
encoded comes from AD interface or from MP3
bitstreaminput interface.
If ADCEN bit is set data to be encoded comes
from ADC interface, otherwise data comes from
MP3stream interface
ADC_CONF
Address:0xBC (188)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
XXXALRCS ALRCP ASCP ADC AIIS
Using this register the ADC input interface can be
configuredas follow:
AIIS:ADC I2S mode
0 =sample word must be aligned with
LRCK (no I
1 =sample word not aligned with LRCK
ADC:ADC Data Config.
0 =sample word is LSB first
1 =sample word is MSB first
ASCP:ADC Serial Clock Polarity
0 =Data is sampled on rising edge
1 =Data is sampled an falling edge
ALRCP: ADC Left/Right Clock Polarity
ALRCS: ADC Left/Right Clock Start value this two
The ADPCM frame size may be adjusted to
match a trade-off between the bitrate overhead
and the frame length. The frame size (in bytes)is
calculatedas follow:
FRAME size = (ADPCM_FRAME_SIZE * 90)
+108
The frame starts with a 5 bytes sync word
(0x5354445649)and, after that,a frame header:
- 13 bytesfor DVI algorithm
- 103 bytesfor G726 pack algorithms
ADPCM_INT_CFG
Address:0xBE (190)
Type:R/W
SoftwareReset: 0x0B
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
INTL6INTL5INTL4INTL3INTL2INTL1INTL0X
GPIO_CONF
Address:0xBF (191)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
XXXXXXGOSPGISP
This register controlshow dataare strobedon the
GPIOinterface.
GISP:GPIO StrobePolarity in INPUT mode
0 =data strobed an falling edge
1 =data strobed on rising edge
GOSP: GPIO Strobe Polarity in OUTPUT mode
0 =non inverted
1 =inverted
ADC_WLEN
Address:0xC0 (192)
Type:R/W
SoftwareReset: 0x0F
HardwareReset: 0x0F
MSBLSB
b7b6b5b4b3b2b1b0
XXXAWL4 AWL3 AWL2 AWL1 AWL0
To select ADC word length AWL4 through AWL0
bits can be used. This 5 bit value must contain
the size of the significant data bits minus one.
Using this register the ADPCM interrupt capability
canbe properlyconfigured.
INTL0 -
INTL6
Interrupt Length
The interrupt length can be programmed,
using this bits, from 0 up to 128 system
clock cycles
ADC_WPOS
Address:0xC1 (193)
Type:R/W
SoftwareReset: 0x00
HardwareReset: 0x00
MSBLSB
b7b6b5b4b3b2b1b0
XXXAWL4 AWL3 AWL2 AWL1 AWL0
These bits specify the position of the sample
word referred to the LRCK slot boundary. Bit
AWP0 thru AWP4 must be programmed with the
numberof bits to ignore after the sample word.
33/44
STA015-STA015B-STA015T
The STA015 contains 56 consecutive 8-bit registers corresponding to the maximum number of
ancillary data that may be contained in MPEG
frame. The ANCCOUNT_L and ANCOUNT_H
registerscontain the number of ancillary data bits
availablewithin the current MPEG frame.
To perform ancillary data reading a status regis-
0x7EANC_DATA_1
-------------
-------------
-------------
-------------
0xB5ANC_DATA_56
ter (0xB6 - INTERRUPT_STATUS_REGISTER)
is available: bit 0 of this register should be polled
by the microcontroller in order to understand
0xB6ISR
when new data are available.
5.3. I/O CELL DESCRIPTION(pinout relative to TQFP44package)
C_stop_cond;/*generate I2C stopcondition*/
fp++;/* update pointer to new file row*/
}
while
(!EDF)/* repeatuntilEndof File*/
}/*Endroutine*/
Note:1
STA015is a device based onan integrated DSP core. Someof theI2C registersdefaultvaluesare loadedafteran internalDSPbootoperation.
The bootstrap time is 60 micro second.Only after thistime lenght,thedata in the registercan be considered stable.
Note 2:
Refer also to the applicationnote AN1250
40/44
STA015-STA015B-STA015T
DIM.
MIN.TYP.MAX.MIN.TYP.MAX.
A2.650.104
a10.10.30.0040.012
b0.350.490.0140.019
b10.230.320.0090.013
C0.50.020
c145° (typ.)
D17.718.10.6970.713
E1010.650.3940.419
e1.270.050
e316.510.65
F7.47.60.2910.299
L0.41.270.0160.050
S8°(max.)
mminch
OUTLINE AND
MECHANICAL DATA
SO28
41/44
STA015-STA015B-STA015T
DIM.
mminch
MIN.TYP.MAX.MIN.TYP.MAX.
A1.600.063
A10.050.150.002
0.006
A21.351.401.450.053 0.055 0.057
B0.300.370.450.012 0.014 0.018
C0.090.200.004
0.008
D12.000.472
D110.000.394
D38.000.315
e0.800.031
E12.000.472
E110.000.394
E38.000.315
L0.450.600.750.018 0.024 0.030
L11.000.039
K0°(min.), 3.5°(typ.), 7°(max.)
OUTLINE AND
MECHANICAL DATA
TQFP44 (10 x 10)
D
D1
A1
2333
34
B
44
1
e
11
TQFP4410
22
E
E1
12
L
0.10mm
.004
Seating Plane
B
K
A
A2
C
42/44
STA015-STA015B-STA015T
mminch
DIM.
MIN.TYP.MAX.MIN.TYP.MAX.
A1.7000.067
A10.350 0.400 0.450 0.014 0.0160.018
A21.1000.043
b0.5000.20
D8.0000.315
D15.6000.220
e0.8000.031
E8.0000.315
E15.6000.220
f1.2000.047
OUTLINE AND
MECHANICAL DATA
Body: 8 x 8 x 1.7mm
LFBGA64
BALL 1 IDENTIFICATION
D1D
A
B
C
D
E
F
G
H
φ b (64 PLACES)
f
12345678
f
E1
A2e
0.15
A
A1
E
LFBGA64M
43/44
STA015-STA015B-STA015T
Information furnished is believed to be accurate and reliable. However, STMicroelectronics assumes no responsibility for the consequences
of use of such information nor for any infringement of patents or other rights of third parties which may result from its use. No license is
granted by implication or otherwise under any patent or patent rights of STMicroelectronics. Specification mentioned in this publication are
subject to change without notice. This publication supersedes and replaces all information previously supplied. STMicroelectronics products
are not authorized for use as critical components in life support devices or systems without express writtenapproval ofSTMicroelectronics.
The STlogois a registered trademark ofSTMicroelectronics
2000 STMicroelectronics– Printed in Italy – All Rights Reserved
STMicroelectronics GROUP OF COMPANIES
Australia - Brazil - China - Finland- France - Germany - Hong Kong - India- Italy - Japan - Malaysia - Malta - Morocco -
Singapore- Spain - Sweden - Switzerland - UnitedKingdom- U.S.A.
http://www.st.com
44/44
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.