TOSHIBA TC94A48FG

TC94A48FG
TOSHIBA CMOS Digital Integrated Circuit Silicon Monolithic
TC94A48FG
Single-chip Audio Digital Signal Processor
The TC94A48FG is a single-chip audio Digital Signal
Processor, incorporating two channels AD converter and
six channels DA converter.
It can realize many applications, including sound field
control, such as hall simulation, digital filters, such as
equalizers, surround sound, base boost and more.
Features
P-LQFP64-1010-0.50E
•
Incorporates a 1-bit Σ-∆ AD converter (2 channels).
•
THD+N: -78 dB (typ.), S/N ratio: 92 dB (typ.)
Incorporates a multi-bit Σ-∆ DA converter (6 channels).
•
THD+N: -88 dB (typ.), S/N ratio: 98 dB (typ.)
Digital input/output ports
•
Four input ports (8 channels)
Four output ports (8 channels)
The DSP block specifications are as follows:
•
Data bus
: 24 bits
Multiplier/adder
: 24 bits × 24 bits + 51 bits → 51 bits
Accumulator
: 51 bits (sign extension: 4 bits)
Program ROM
: 3072 words × 16 bits
Program RAM
: 1024 words × 16 bits
XRAM
: 4096 words × 24 bits
YRAM
: 1024 words × 24 bits
CROM
: 1024 words × 24 bits
The microcontroller interface can be selected between serial mode and I2C bus mode.
•
Operating supply voltage: 3.3 V (some pins accept 5 V)
•
CMOS silicon structure supports high speed.
•
The package is a 64-pin LQFP (0.5-mm pitch) package.
1
Weight: 0.4 g (typ.)
2005-09-28
TC94A48FG
Block Diagram
PLLC
/MIACK
MILP
/MIDIO
/MICK
/MICS
GPI0
GPI1
MIMD
Microcontroller
interface
Generalperpose port
Timing
PLL
GPO0
GPO1
MCKO
BCKO
XI
XO
LRCKO
11.2896MHz(256fs)
LRCKI0
/RST
BTMD
SDO0
LRCKI1
BCKI0
SI
SDI0
SDO1
SO
(8ch)
BCKI1
SDO2
(8ch)
SDI1
SDO3
16bit Instruction
DSP
SDI2
SDI3
ADC
Lch
VREF
ADVR
VREF
(4fs rate
×2ch)
DAO1
ΣΔ
DAC
2ch
DAO2
ΣΔ
DAC
3ch
DAO3
VREF
(4fs rate
×6ch)
(4fs rate
×2ch)
ADC
Rch
RIN
DAC
1ch
REG Buffer
(64w ×21b)
MUX
ADVL
(4fs rate
×6ch)
MAF(→4fs)
LIN
ΣΔ
VRI
ΣΔ
DAC
4ch
DAO4
ΣΔ
DAC
5ch
DAO5
ΣΔ
DAC
6ch
DAO6
BCKO
MCKO
GPO1
GPO0
GND
VDD
GPI1
GPI0
/MICS
/MICK
/MIDIO
/MIACK
MILP
GNDP
PLLC
VDDP
Pin Layout
48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33
BTMD
49
32
LRCKO
MIMD
50
31
SDO0
/RST
51
30
SDO1
VDD
52
29
SDO2
GND
53
28
SDO3
TEST1
54
27
BCKI0
TEST0
55
26
BCKI1
GNDL
56
25
LRCKI0
LIN
57
24
LRCKI1
ADVL
58
23
SDI0
VDDA
59
22
SDI1
ADVR
60
21
SDI2
RIN
61
20
SDI3
GNDR
62
19
GND
GNDX
63
18
VDD
XI
64
17
VDD6
XO
VDD1
DAO1
GND12
DAO2
VDD23
DAO3
9 10 11 12 13 14 15 16
2
DAO6
8
GND56
7
DAO5
6
VDD45
5
DAO4
4
GND4
3
VRI
2
GND3
1
VDDX
TC94A48FG
2005-09-28
TC94A48FG
Pin Function
Pin
No.
Symbol
I/O
1
XO
O
Crystal oscillator connecting or clock output pin
2
VDDX
-
Power pin for oscillator circuit
3
VDD1
-
Analog power pin for DAC1
4
DAO1
O
DAC1 signal output pin
5
GND12
-
Analog ground pin for DAC1/2
6
DAO2
O
DAC2 signal output pin
7
VDD23
-
Analog power pin for DAC2/3
8
DAO3
O
DAC3 signal output pin
9
GND3
-
Analog power pin for DAC3
10
VRI
I
11
GND4
-
Analog ground pin for DAC4
12
DAO4
O
DAC4 signal output pin
13
VDD45
-
Analog power pin for DAC4/5
14
DAO5
O
DAC5 signal output pin
15
GND56
-
Analog ground pin for DAC5/6
16
DAO6
O
DAC6 signal output pin
17
VDD6
-
Analog power pin for DAC6
18
VDD
-
Digital power pin
19
GND
-
Function
Remarks
Reference voltage pin for DAC
Digital ground pin
20
SDI3
I
Audio serial data input pin 3
It connects to GND or VDD pins when if it is unused this pin.
21
SDI2
I
Audio serial data input pin 2
It connects to GND or VDD pins when if it is unused this pin.
Schmitt input
5V tolerant
22
SDI1
I
Audio serial data input pin 1
It connects to GND or VDD pins when if it is unused this pin.
Schmitt input
5V tolerant
23
SDI0
I
Audio serial data input pin 0
It connects to GND or VDD pins when if it is unused this pin.
Schmitt input
5V tolerant
24
LRCKI1
I
LR clock input pin 1
It connects to GND or VDD pins when if it is unused this pin.
Schmitt input
5V tolerant
25
LRCKI0
I
LR clock input pin 0
It connects to GND or VDD pins when if it is unused this pin.
Schmitt input
5V tolerant
26
BCKI1
I
Bit clock input pin 1
It connects to GND or VDD pins when if it is unused this pin.
Schmitt input
5V tolerant
27
BCKI0
I
Bit clock input pin 0
It connects to GND or VDD pins when if it is unused this pin.
Schmitt input
5V tolerant
28
SDO3
O
Audio serial data output pin 3
It leaves to open when if it is unused.
Push-pull output
29
SDO2
O
Audio serial data output pin 2
It leaves to open when if it is unused.
Push-pull output
30
SDO1
O
Audio serial data output pin 1
It leaves to open when if it is unused.
Push-pull output
31
SDO0
O
Audio serial data output pin 0
It leaves to open when if it is unused.
Push-pull output
32
LRCKO
O
LR clock output pin
It leaves to open when if it is unused.
Push-pull output
33
BCKO
O
Bit clock output pin
It leaves to open when if it is unused.
Push-pull output
3
Schmitt input
5V tolerant
2005-09-28
TC94A48FG
Pin
No.
Symbol
I/O
Function
34
MCKO
O
System clock output pin
It leaves to open when if it is unused.
Push-pull output
35
GPO1
O
General-purpose output pin 1
It leaves to open when if it is unused.
Open-drain output
5V tolerant
36
GPO0
O
General-purpose output pin 0
It leaves to open when if it is unused.
Open-drain output
5V tolerant
37
GND
-
Digital ground pin
38
VDD
-
Remarks
Digital power pin
39
GPI1
I
General-purpose input pin 1
It connects to GND or VDD pins when if it is unused this pin.
40
GPI0
I
General-purpose input pin 0
It connects to GND or VDD pins when if it is unused this pin.
Schmitt input
5V tolerant
41
/MICS
I
Microcontroller interface: Chip select signal input pin
Schmitt input
5V tolerant
42
/MICK
I
43
/MIDIO
I/O Microcontroller interface: Data input/output pin
Schmitt input / Open-drain
output, 5V tolerant
44
/MIACK
O
Microcontroller interface: Acknowledge signal output pin
Open-drain output
5V tolerant
45
MILP
I
Microcontroller interface: Latch pulse input pin
Schmitt input
5V tolerant
46
GNDP
-
47
PLLC
I
48
VDDP
-
Microcontroller interface: Clock input pin
Schmitt input
5V tolerant
Schmitt input
5V tolerant
Ground pin for PLL
Charge pump for PLL
Power pin for PLL
49
BTMD
I
Boot mode setting pin
Schmitt input
It is set to “L” when if software specification does not indicate 5V tolerant
since there is deference by each program ROMs.
50
MIMD
I
Microcontroller interface: Mode select input pin
Schmitt input
5V tolerant
51
/RST
I
Reset input pin
Schmitt input
5V tolerant
52
VDD
-
53
GND
-
Digital power pin
Digital ground pin
54
TEST1
I
Test setting pin 1
Usually it connects to GND pins.
55
TEST0
I
Test setting pin 0
Usually it connects to GND pins.
56
GNDL
-
Ground pin for ADC-Lch
57
LIN
I
ADC-Lch signal input pin
58
AVDL
I
Reference voltage pin for ADC-Lch
59
VDDA
-
60
ADVR
I
Schmitt input
5V intolerant
Schmitt input
5V intolerant
Analog power pin for ADC
Reference voltage pin for ADC-Rch
61
RIN
I
ADC-Rch signal input pin
62
GNDR
-
Ground pin for ADC-Rch
63
GNDX
-
Ground pin for oscillator circuit
64
XI
I
Crystal oscillator connecting or clock input pin
5V intolerant
Note 1: 5V tolerant pins can have voltage applied even when the power to the device is turned off.
4
2005-09-28
TC94A48FG
Description of Operation
1. Timing System
The TC94A48FG uses pulses from the XI-XO pins as the reference clock. The system is divided into blocks
that use the reference clock directly or by dividing its frequency and blocks that operate on a clock the PLL
generates based on the crystal resonation clock. The analog and microcontroller interface blocks operate on
the crystal resonation clock while the DSP block operates on the PLL-generated clock.
Dividing
PLL
Crystal
Clock for DSP
PLL-generated
Clock for Analog Block (256fs)
Input=
256fs
Clock for Analog Block (256fs or 512fs)
Timing output to pins
(LRCKO,BCKO,MCKO)
Divider
Crystal precision
Figure 1 Timing System
MCKO Clock
LRCKO
BCKO
MCKO
The system can divide the clock from the crystal and provide three types of clock from output pins.
LRCKO, BCKO Clock
ADC, DAC
Xi
×1/2 ~ ×1/512
fs256
fs128~fs0.5
MAF, ΣΔ
Xo
fxi = 11.2896MHz
(44.1kHz×256)
Audio I/F
MCU I/F
×1/M
REFCK
VARCK
Phase
Comp.
VCO
×1/J
DSP
×1/N
PLL
Figure 2 Block diagram of clock generator circuit
5
2005-09-28
TC94A48FG
1.1
Timing register setting
[AIFA]
Bit
15-14
Contents
Default
*
13-12
*
11
*
10
*
9
*
8
*
7-6
*
5-4
*
3-2
*
1-0
*
BCKi-1 clock frequency
00
32fs
01
48fs
10
64fs
11
64fs
BCKi-0 clock frequency
00
32fs
01
48fs
10
64fs
11
64fs
LRCKi-1 polarity
Lch=Low (interrupt by fall edge)
0
Lch=High (interrupt by rise edge)
1
LRCKi-0 polarity
Lch=Low (interrupt by fall edge)
0
Lch=High (interrupt by rise edge)
1
SDi clock select
LRCKi-0/BCKi-0
0
LRCKi-1/BCKi-1
1
SDo clock select
0
LRCKi-0/BCKi-0
1
LRCKi-1/BCKi-1
SDi input format
00
LSB justified
01
MSB justified
10
I2S
11
I2 S
SDi input bit clock
00
16bit
01
18bit
10
20bit
11
24bit
SDo output format
00
LSB justified
01
MSB justified
10
I2 S
11
I2 S
SDo output bit clock
00
16bit
01
18bit
10
20bit
11
24bit
Note 2: In 48fs frequency setup of BCKi-1 and BCKi-0, LRCKi/BCKi coresponds only an input, and LRCKo / BCKo
does not correspond.
6
2005-09-28
TC94A48FG
[MOD_O]
Bit
15-12
Default
11
*
10
*
9
*
8
*
7
6
5
*
4
*
3
*
2
*
1
*
0
*
Contents
Reserved
Fixed to “0”
SDo3 is used as a general-purpose output Po5.
0
Disable
1
Enable
SDo2 is used as a general-purpose output Po4.
0
Disable
1
Enable
SDo1 is used as a general-purpose output Po3.
0
Disable
1
Enable
SDo0 is used as a general-purpose output Po2.
0
Disable
1
Enable
Reserved
Fixed to “0”
Reserved
Fixed to “1”
Synchronization of LRCKi and LRCKo
0
Disable
1
Enable
BCCMP/BCJMP Enable
0
Disable
1
Enable
DAC Enable
0
Disable
1
Enable
ADC Enable
0
Disable
1
Enable
LRCKo is connected to LRCKi1.
0
It does not connect.
1
It connects.
LRCKo is connected to LRCKi0.
0
It does not connect.
1
It connects.
7
2005-09-28
TC94A48FG
[TMGA]
Bit
15-14
Default
13
*
12-7
6
*
5-3
2-0
*
Contents
Reserved
Fixed to “0”
DSP clock output select
0
Disable
1
Enable
Reserved
Fixed to “0”
MCKO clock output select
1/1 Xi clock
0
1
1/2 Xi clock
Reserved
Fixed to “0”
DSP clock divider setting (1/J)
000
1/1
001
1/2
010
1/4
011
1/8
100
1/16
101
1/3
110
1/6
111
Prohibit
[TMGB]
Bit
15-14
Default
*
13
*
12-8
*
7-0
*
Contents
LRCKo/BCKo clock select
00
FS1/FS32(BCK=fs32)
01
FS1/FS64(BCK=fs64)
10
FS2/FS64(BCK=fs32)
11
FS2/FS128(BCK=fs64)
LRCKo/BCKo output clock select
0
Disable
1
Enable
Reference clock divider setting (1/M)
00h
1/1
01h
1/2
・
・
09h
1/10
・
1Fh
1/32
Variable clock divider setting (1/N)
00h
1/1
01h
1/2
・
・
3Fh
1/64
・
FFh
1/256
8
2005-09-28
TC94A48FG
1.2
Timing Output
LRCKO / BCKO Pin Output Settings
Mode
0
1
2
3
4
LRCKO Pin Output
Fixed to GND
1fs
1fs
2fs
2fs
BCKO Pin Output
Fixed to ground
32fs
64fs
64fs
128fs
Remarks
Initial Value
MCKO Pin Output Settings
Mode
0
1
2
Note 3:
1.3
MCKO Pin Output
Fixed to GND
XCKI (=XI)
0.5 × XCKI
Remarks
It can be initialized by reset.
Undefined until set by microcontroller or
built-in DSP program
A setup of a timing output is performed by the built-in firmware.
Example of oscillator circuit
The example of a circuit at the time of the crystal oscillator use in an oscillation part is shown in
figure 3.
Crystal oscillator connection
XI
64
1 XO
11.2896MHz
1MΩ
22pF
22pF
Figure 3 Example of oscillator circuit
Example of PLL circuit
A PLL circuit can consist of connecting LPF to a PLLC terminal easily. The example of a circuit is
shown in figure 4.
Phase Comp.
PLLC
VDDP
VCO
GNDP
1.4
46 47 48
0.1uF
220Ω
47uF
0.01uF
VDD
Figure 4
Example of PLL circuit
The above-mentioned external constant is a reference value. It may change with application.
9
2005-09-28
TC94A48FG
1.5
Audio Input/Output Format
1.5.1
Audio Serial Data Input Format
The TC94A48FG supports MSB-first input only. In slave mode, it supports all setting formats for
the number of bit clock slots. In master mode, it does not support 24 slots.
M
= MSB
Number Data Word
MO
Length
of
DE
(bit)
Slots
0
16
16
L
don't care(invalid data, padded with "0" when read by DSP
= LSB
internal firmware)
Timing Chart
Format
MSBjustified
(LSBjustified)
Remarks
M
Initial
Value
L
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
14
13
12
11
10
9
8
7
6
5
4
3
2
1
I2S
1
M
15
MSBjustified
2
M
4
16
0
L
1
5
3
L
1
4
1
3
1
2
1
1
1
0
9
LSBjustified
8
7
6
5
4
3
2
1
0
M
L
15
0
Unavailable
in master
mode(Note)
I2S
24
5
24
MSBjustified
(LSBjustified)
M
L
15
0
M
L
23
0
I2S
6
M
L
23
MSBjustified
7
0
M
L
15
8
16
0
LSBjustified
M
L
15
I2S
9
M
L
15
32
MSBjustified
10
0
M
L
23
11
0
24
0
LSBjustified
M
L
23
12
0
I2S
M
L
23
0
Note 4: These formats cannot be used in master mode (when LRCK and BCK are supplied to external devices).
10
2005-09-28
TC94A48FG
1.5.2
Audio Serial Data Output Format
The valid part of data is the same as that for the input format. The TC94A48FG supports MSB-first
output only. In slave mode, it supports all setting formats for the number of bit clock slots. In master
mode, it does not support 24 slots.
M
MO
DE
=MSB
L
Number Data Word
Length
of
(bits)
SLOT
=LSB
=fixed to “0” (data sent from DSP is ignored)
Format
Timing Chart
Remarks
Initial
value
0
M
16
L
15
16
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
14
13
12
11
10
9
8
7
6
5
4
3
2
1
I2S
1
M
15
L
0
2
M
L
1
5
3
4
1
4
1
3
1
2
1
1
1
0
9
8
7
6
5
4
3
2
1
0
16
M
L
15
0
Unavailable
in master
mode(Note)
I2S
24
M
L
15
0
5
24
M
L
23
0
I2S
6
M
L
23
0
7
M
L
15
8
0
16
M
L
15
0
I2S
9
M
L
15
32
0
10
M
L
23
11
0
24
M
L
23
12
0
I2S
M
L
23
0
Note 5: These formats cannot be used in master mode (when LRCK and BCK are supplied to external devices).
11
2005-09-28
TC94A48FG
The audio input block and output block support different clock settings. Input and output port
settings are, however, shared as follows:
LR Clock Setting for Input Block
Mode
Master Mode
Slave Mode
Signal
Signal delivered to LRCKO pin (crystal resonation clock divided)
LRCKI0 pin input
LRCKI1 pin input
Bit Clock Setting for Input Block
Mode
Master Mode
Slave Mode
Signal
Signal delivered to BCKO pin (crystal resonation clock divided)
BCKI0 pin input
BCKI1 pin input
LR Clock Setting for Output Block
Mode
Master Mode
Slave Mode
Signal
Signal delivered to LRCKO pin (crystal resonation clock divided)
LRCKI0 pin input
LRCKI1 pin input
Bit Clock Setting for Input Block
Mode
Master Mode
Slave Mode
Signal
Signal delivered to BCKO pin (crystal resonation clock divided)
BCKI0 pin input
BCKI1 pin input
12
2005-09-28
TC94A48FG
2. Microcontroller Interface
The TC94A48FG can exchange data with a microcontroller in either normal transmission mode or I2C
mode. It uses the MIMD pin to select the mode and inputs/outputs data in MSB-first format.
Table 1 shows the features supported and the pins used in each mode.
Table 2 shows the bit composition of a 24-bit command.
Note 6: This data sheet shows general control methods. Refer to the separate program explanation data sheet for a
complete command list or detailed description of control methods.
Pins Used and Features Supported in Normal Transmission Mode and I2C Mode
Table 1
Transmission Mode
Pin
Normal Transmission Mode (MIMD=L)
I2C Mode (MIMD=H)
Function
Function
Input/Output
/MICS
Input
Chip select Input
Not used (fixed to “L”)
MILP
Input
Latch pulse input
Not used (fixed to “L”)
Data input / output
Data input / output (SDA)
Input
/MIDIO
Output (open-drain)
/MICK
Input, Input / Output (I2C mode)
Clock input
Clock input (SCL)
/MIACK
Output (open-drain)
Acknowledge output
Not used
Note 7: The input High voltage for these pins should be VDD-0.2 V to 5.5V.
Note 8: The open-drain /MIDIO and /MIACK pins require external pull-up resistors.
2
In I C mode, the /MICK pin also requires a pull-up resistor.
The pulled-up voltage for these pins should be VDD-0.2V to 5.5V.
2
Note9: The I C bus write address is 30 h and read address is 31h.
Table 2 Bit Composition of a 24-bit Command
Bit
23-8
Function
Remarks
Refer to the command list in the
program explanation data sheet.
16-bit address
7
Not used
6
Start program RAM boot
"1" starts program RAM boot.
5
Specify soft reset
"1" triggers a soft reset.
4
Specify read or write (R/W)
"1" specifies a read.
―
0h” ; 1word
3-0
Set the number of words to be
transmitted
↓
“7h” ; 8words
13
2005-09-28
TC94A48FG
2.1
2.1.1
Normal Transmission Mode
Data Transfer Format in Normal Transmission Mode
Figure 1 shows the data transfer format in normal transmission mode.
In normal transmission mode, the system first drives /MICS low and then checks that /MIACK is low
before transferring a 24-bit command MSB first. It cannot transfer data if /MIACK is high.
The system then reads or writes as many 24-bit data words (one to eight) as specified with the 24-bit
command and finally drives /MICS high. For a read, it should also make sure that /MIACK is low
after transferring a 24-bit command because /MIACK becomes high temporarily after the command is
transferred.
24bit DATA(1~8word)
/MICS
/MIACK
/MILP
/MICK
/MIDIO
COMMAND(24bit)
DATA(24bit)
DATA(24bit)
Figure 5(a) Data Transfer Format in Normal Transmission Mode
2.1.2
(1)
Data Transfer Method in Normal Transmission Mode
Program boot and program start
The TC94A48FG has 1k-word RAM assigned to program addresses 000h to 3FFh, in which 000h to
003h are interrupt vector addresses. To enable the TC94A48FG to operate, a program must be booted
to an interrupt vector address. If you want to store a program in the area from 004h to 3FFh, a
program loading process must follow the interrupt vector address. For a program boot, the 24-bit
command transferred upon a reset must have the program RAM boot start bit and soft reset bit set to
"1" (command = xxxx60h).
The command must be followed by 16-bit program data, set in lower bits in 24-bit data.
The write address is automatically incremented (by one) from the command (000h). The program boot
completes once /MICS is driven high upon transferring the required number of words.
The write address for a program boot always starts from the command (000h). To start the program,
transfer a 24-bit command with the soft reset bit cleared and then drive /MICS high without
transferring data.
Figure 6 shows the program boot and program start procedure.
14
2005-09-28
TC94A48FG
Hard reset
(or soft reset)
/MICS= ”L ”
Check MIACK= =”L ”
If MIACK= ”H ” , wait until MIACK= ”L ”
Write 24-bit command
(program boot = 000060h)
Set the program boot and soft reset
bits to “H”
Write program data
(16bits at address 000h)
Program data stored in lower 16bits
Bootable for address of up to 3FFh
Write program data
(16bits at address 001h)
Write program data
(Address 3FEh)
Write program data
(Address 3FFh)
/MICS= ”H ”
Program boot finished
/MICS= ”L ”
Check MIACK= =”L ”
If MIACK= ”H ” , wait until MIACK= ”L ”
Write 24-bit command
(soft reset off = 000000h)
/MICS= ”H ”
Start program
Figure 6
Program Boot and Program Start Procedure
15
2005-09-28
TC94A48FG
(2)
Writing 24-bit data
When the host microcontroller writes data to the TC94A48FG during the execution of a program, it
sets a 16-bit address in a 24-bit command as well as sets its R/W bit to "0" and sets the number of
words to be written. Then, it transfers the 24-bit command, followed by a required number of 24-bit
data words.
Figure 7 shows the 24 bit data write procedure.
/MICS=“L”
Check MIACK = “L”
(If MIACK = “H” , wait until MIACK = “L”)
Write 24-bit command
(data write = xxxx0xh)
Set 16-bit address and the number of
words to be transferred.
Write 24-bit data (1)
Can write up to eight 24-bit data words
Write 24-bit data (2)
Write 24-bit data (n)
/MICS=“H”
Data write finished
Figure 7 shows the 24-bit data write procedure.
16
2005-09-28
TC94A48FG
(3)
Reading 24-bit data
When the host microcontroller reads data from the TC94A48FG during the execution of a program, it
sets a 16-bit address in a 24-bit command as well as sets its R/W bit to "1" and sets the number of
words to be read. Then, it transfers the 24-bit command, check that /MIACK = "L", and read a
required number of 24-bit data words.
The host microcontroller should check that /MIACK = "L" because it has to wait until the data to be
read is set in the data buffer.
Figure 8 shows the 24 bit data read procedure.
/MICS=“L”
Check MIACK=“L”
(If MIACK=“H” , wait until MIACK = “L”)
Transfer 24-bit command
(data read = xxxx1xh)
Set 16 bit address and the number of
words to be transferred.
Check MIACK=“L”
(If MIACK=“H” , wait until MIACK = “L”)
Can read up to eight 24-bit data word
Read 24-bit data (1)
Read 24-bit data (2)
Read 24-bit data (n)
/MICS=“H”
Data read finished
Figure 8 shows the 24-bit data read procedure.
17
2005-09-28
TC94A48FG
(4)
Triggering and terminating a soft reset
A soft reset is required before the system can start a program after program boot or restart a
program.
A 24-bit command with its soft reset bit set to "1" triggers a soft reset and a command with the bit
cleared terminates a soft reset.
When trigging or terminating a soft reset, drive /MICS high after transferring the 24-bit command
because no data needs to follow the command.
Figure 9 shows the procedure for trigging or terminating a soft reset.
/MICS=“L”
Check MIACK = “L”
(If MIACK = “H” , wait until MIACK = “L”)
If a malfunction occurs, perform a
hard reset prior to a soft reset.
“1” triggers a reset
“0” terminates a reset
Transfer 24-bit command
(soft reset ON/OFF = 0000x0h)
/MICS=“H”
Soft reset triggered or terminated
Figure 9
Procedure for Trigging or Terminating a Soft Reset
18
2005-09-28
TC94A48FG
2
2.2
I C Bus Mode
2
2.2.1
Data Transfer Format in I C Bus Mode
Figure 10 shows the data transfer format in I2C bus mode.
In I2C bus mode, the host microcontroller first transfers an I2C address (write = 30h) and then checks
that the ACK bit is low. If the ACK bit is high, it retransmits a start condition (without transmitting a
stop condition) and then transfers an I2C address of 30h. After transferring an I2C address, the host
microcontroller transfers a 24-bit command. When the host microcontroller writes data to the
TC94A48FG, it writes as many 24-bit data words as specified with the 24-bit command (1 to 8 words)
and then transfers an end condition.
When the host microcontroller reads data from the TC94A48FG, it transfers a 24-bit command and
then, without transmitting an end condition, transfers an I2C address (read =31h) and check that the
ACK bit is low. If the ACK bit is high, the host microcontroller retransmits a start condition (without
transmitting a stop condition) and then transfers an I2C address of 31h. After checking that the ACK
bit is low, the host microcontroller reads as many 24-bit data words as specified with the 24-bit
command (1 to 8 words). During a read, the host microcontroller sets the ACK bit to low after reading
every eight bits. The ACK bit accompanying the last eight bits must be set to high, after which the
host microcontroller transmits a stop condition. When transferring only a 24-bit command without
reading or writing data, transmit an end condition after transferring the command.
Figures 11 to 13 show the data transfer formats for writing, reading, and transferring a command
only.
SDA
I2C Address(30h)
DATA Hi(8bit)
R/W ACK
ACK
DATA Mid(8bit)
DATA Low(8bit)
ACK
SCL
I2C Address
24bit Command and 24bit DATA (1~8word)
Start Condition
Stop Condition
Figure 10 Data Transmission Format in I2C Mode
(30h)
24bit Write DATA(1word~ 8word)
24bit COMMAND
START I2C Address W A COMMAND(H) A
COMMAND(M) A
COMMAND(L) A
DATA(H)
A
DATA(M)
A
DATA(L)
A
STOP
Each ACK signal sent from TC94A48FG to Host
An interval of at least 1fs(32μs@1fs=32kHz) is required before next START
Figure 11 Format for Writing
(30h)
START
I2C Address
24bit COMMAND
W A
COMMAND(H)
A
COMMAND(M)
A
24bit Read DATA(1word~ 8word)
(31h)
COMMAND(L)
A
START
I2C Address
R A
RD(H)
A
RD(M)
A
RD(L)
A
STOP
Each ACK signal sent from TC94A48FG to Host
An interval of at least 1fs(32μs@1fs=32kHz)
is required before next START
These ACK signals are sent from host to TC94A48FG
This ACK signal is set to “H” by the Host
Figure 12
Format for Reading
(30h)
24bit COMMAND
START I2 C Address W A COMMAND(H) A
COMMAND(M) A COMMAND(L) A
STOP
Each ACK signal sent from
TC94A48FG to Host
Figure 13 Format for Transferring a Command Only
19
2005-09-28
TC94A48FG
2.2.2
(1)
2
Data Transfer Method in I C Mode
Program boot and program start
The TC94A48FG has 1k-word RAM assigned to program addresses 000h to 3FFh, in which 000h to
003h are interrupt vector addresses. To enable the TC94A48FG to operate, a program must be booted
to an interrupt vector address. If you want to store a program in the area from 004h to 3FFh, a
program loading process must follow the interrupt vector address. For a program boot, the 24-bit
command transferred upon a reset must have the program RAM boot start bit and soft reset bit set to
"1" (command = xxxx60h).
The command must be followed by 16-bit program data, set in lower bits in 24-bit data.
The write address is automatically incremented (by one) from the command (000h). The program boot
completes once an end condition is transmitted upon transferring the required number of words. The
write address for a program boot always starts from the command (000h). To start the program,
transfer a 24-bit command with the soft reset bit cleared and then transmit an end condition without
transferring data.
Figure 14 shows the program boot and program start procedure.
20
2005-09-28
TC94A48FG
Hard reset
(or soft reset)
START Condition
If ACK = “H” , restart from
START condition.
Transfer I2C Address(30h)
Check ACK bit = “L”
Set the program boot and soft reset
bits to “H”
Write 24-bit command
(program boot = 000060h)
Write program data
(16 bits at address 0000h)
Program data stored in lower 16bits
Bootable for address of up to 3FFh
Write program data
(16 bits at address 0001h)
Write program data
(16bits at address 3FEh)
Write program data
(16bits at address 3FFh)
Program boot finished
STOP Condition
START Condition
If ACK = “H” , restart from
START condition.
Transfer I2C Address(30h)
Check ACK bit = “L”
Write 24-bit command
(soft reset OFF = 000000h)
STOP Condition
Start program
Figure 14
Program Boot and Program Start Procedure
21
2005-09-28
TC94A48FG
(2)
Writing 24-bit data
When the host microcontroller writes data to the TC94A48FG during the execution of a program, it
sets a 16-bit address in a 24-bit command as well as sets its R/W bit to "0" and sets the number of
words to be written. Then, it transfers the 24-bit command, followed by a required number of 24-bit
data words.
An interval of at least 1fs(32μs@1fs=32kHz) is required before next started.
Figure 15 shows the 24 bit data write procedure.
START Condition
If ACK = “H” , restart from
START condition.
Transfer I2C Address(30h)
Check ACK bit = “L”
Set 16-bit address and the number of
words to be transferred.
Write 24-bit command
(data write = xxxx0xh)
Write 24-bit data (1)
Can write up to eight 24-bit data words
Write 24-bit data (2)
Write 24-bit data (n)
STOP Condition
Data write finished
Figure 15 shows the 24-bit Data Write Procedure.
22
2005-09-28
TC94A48FG
(3)
Reading 24-bit data
When the host microcontroller reads data from the TC94A48FG during the execution of a program, it
sets a 16-bit address in a 24-bit command as well as sets its R/W bit to "1" and sets the number of
words to be read. Then, it transfers the 24-bit command, waits about 1fs, and then transfers an I2C
address of 31h, followed by a start condition. Finally, it reads a required number of 24-bit data words.
During a read, the host microcontroller should set the ACK bits to low but the ACK bit accompanying
the last eight bits of data must be high, thus causing the TC94A48FG to relinquish the SDA bus line
so that the host microcontroller can transmit a stop condition.
The host microcontroller should wait about 1fs after transferring a command because it has to wait
until the data to be read is set in the data buffer of the TC94A48FG.
Figure 16 shows the 24-bit data read procedure.
START Condition
If ACK = “H” , restart from
START condition.
Transfer I2C Address (30h)
Check ACK bit = “L”
Set a 16-bit address and the number
of words to be transferred.
Transfer 24-bit command
(data read = xxxx1xh)
Wait about 1fs
START Condition
If ACK = “H” , restart from
START condition.
Transfer I2C Address (31h)
Check ACK bit = “L”
Read 24-bit data (1)
Can read up to eight 24-bit
data words
Read 24-bit data (2)
Read 24-bit data (n)
Set the last ACK bit to “H”
STOP Condition
Data read finished
Figure 16 shows the 24-bit Data Read Procedure
23
2005-09-28
TC94A48FG
(4)
Triggering and terminating a soft reset
A soft reset is required before the system can start a program after program boot or restart a
program.
A 24-bit command with its soft reset bit set to "1" triggers a soft reset and a command with the bit
cleared terminates a soft reset.
When trigging or terminating a soft reset, transmit a stop condition after transferring the 24-bit
command because no data needs to follow the command.
Figure 17 shows the procedure for triggering or terminating a soft reset.
START Condition
If ACK = “H” , restart from
START Condition.
If a system crash(malfunction)
occurs, perform a hard reset
prior to a soft reset.
Transfer I2C Address(30h)
Check ACK bit = “L”
Transfer 24-bit command
(soft reset ON/OFF = 0000x0h)
“1” triggers a reset
“0” terminates a reset
STOP Condition
Soft reset triggered or terminated
Figure 17
Procedure for Triggering or Terminating a Soft Reset
3. Write and Read Commands
The specifications of write and read commands depend on the built-in program. For details, refer to the
program explanation data sheet.
24
2005-09-28
TC94A48FG
Maximum Ratings (Ta = 25°C)
Characteristics
Symbol
Rating
Unit
Supply Voltage
VDD
−0.3~4.0
V
Input voltage 1
Vin1
−0.3~VDD + 0.1
V
Input voltage 2 (Note10)
Vin2
−0.3~+ 5.5
V
Power dissipation
PD
400
mW
Operating temperature
Topr
−40~+85
°C
Storage temperature
Tstg
−55~+150
°C
Note10: SDI0~3, LRCKI0~1, BCKI0~1, GPI0~1, /MICS, /MICK, /MIDIO, MILP, BTMD, MIMD, /RST
Electrical Characteristics
(unless otherwise specified,
Ta = 25°C, VDD = VDDX = VDD12 = VDD3 = VDD45 = VDD6 = VDDP = VDDA = 3.3V)
DC Characteristics
Symbol
Test
circuit
Operating supply voltage
VDD
⎯
Operating frequency range
fopr
⎯
PLL clock frequency range
fplo
⎯
Operating supply current
IDD
⎯
Symbol
Test
circuit
Characteristics
Test Condition
Min.
Typ.
Max.
Unit
Ta = −40~85°C
3.0
3.3
3.6
V
Using PLL for DSP clock
30
⎯
75
MHz
fopr =75MHz (75MIPS)
90
⎯
225
MHz
⎯
90
100
mA
Min.
Typ.
Max.
Unit
2.8
⎯
⎯
⎯
⎯
0.5
Clock pins (XI,XO)
Characteristics
Input voltage(1)
Output voltage(1)
“H” level
VIH1
“L” level
VIL1
“H” level
IOH1
“L” level
IOL1
⎯
⎯
Test Condition
XI pin
VOH = 2.8 V
VOL = 0.5 V
XO pin
⎯
⎯
−2.5
3.0
⎯
⎯
Min.
Typ.
Max.
2.8
⎯
⎯
⎯
⎯
0.5
V
mA
Input pins
Characteristics
Symbol
“H” level
VIH2
“L” level
VIL2
Input leakage
“H” level
IIH2
current
“L” level
IIL2
Input voltage(2)
Test
circuit
⎯
⎯
Test Condition
(Note 11)
VIN = VDD
(Note 11),
⎯
⎯
10
VIN = 0 V
(Note 12)
−10
⎯
⎯
Unit
V
µA
Note 11: SDI0~3, LRCKI0~1, BCKI0~1, GPI0~1, /MICS, /MICK, /MIDIO, MILP, BTMD, MIMD, /RST, TEST0~1, PLLC
Note 12 : XI
25
2005-09-28
TC94A48FG
Output pins
Characteristics
Output current(2)
Output current(3)
Output current(4)
Symbol
“H” level
IOH2
“L” level
IOL2
“H” level
IOH3
Test
circuit
Test Condition
⎯
⎯
Min.
Typ.
Max.
VOH = 2.8 V
(Note 13)
⎯
⎯
−5
VOL = 0.5 V
(Note 13)
5
⎯
⎯
VOH = 2.8 V
(Note 14)
⎯
⎯
−3
“L” level
IOL3
VOL = 0.5 V
(Note 14)
3
⎯
⎯
“L” level
IOL4
⎯
VOL = 0.5 V
(Note 15)
5
⎯
⎯
IOZ5
⎯
VOH = VDD
(Note 15)
⎯
⎯
±10
Output-off leakage current
Unit
mA
µA
Note 13: SDO0~3, LRCKO, BCKO (push-pull output)
Note 14: MCKO (push-pull output)
Note 15: GPO0~1, /MIDIO, /MIACK (open-drain output)
26
2005-09-28
TC94A48FG
AC Characteristics
<Common test conditions unless otherwise specified>
•
The gain through the firmware is 0 dB (pass-through), except for +2 dB for DC-cut-HPF.
•
VDD (for all power supplies) = 3.3V, Ta = 25°C
•
Test circuit
MCU
Digital SG/Analyzer I/F
10kΩ
10kΩ
10kΩ
10kΩ
0.01uF
/MICS
GPI0
GPI1
38
37
36
35
34
65
33
BCKO
39
GPO1
40
MCKO
41
GPO0
42
VDD
43
GND
44
/MICK
PLLC
BTMD
50 MIMD
45
/MIDIO
46
MILP
47
/MIACK
48
GNDP
39
49
VDDP
220Ω
39
32
LRCKO
SDO0 31
51 /RST
SDO1 30
52 VDD
SDO2 29
53 GND
SDO3 28
54 TEST1
BCKI0 27
BCKI1 26
55 TEST0
Lch
AGND
1kΩ
4.7μF
47μF
47μF
1kΩ
2200pF
4.7μF
LRCKI0 25
TC94A48FG
57 LIN
2200pF
Rch
56 GNDL
LRCKI1 24
58 ADVL
SDI0 23
59 VDDA
SDI1 22
60 ADVR
SDI2 21
61 RIN
SDI3 20
62 GNDR
GND 19
VDD1
DAO1
GND12
DAO2
VDD23
DAO3
GND3
VRI
GND4
DAO4
VDD45
DAO5
GND56
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
64 XI
VDD6 17
DAO6
VDDX
VDD 18
XO
63 GNDX
16
47uF
1MΩ
22pF
Analog
VDD
Analog
GND
22pF
Digital Digital
VDD
GND
270Ω
2200pF
10μF
10kΩ
270Ω
270Ω
270Ω
270Ω
270Ω
2200pF 2200pF
10μF
10μF
2200pF 2200pF
10μF
10μF
2200pF
10μF
10kΩ
10kΩ
10kΩ
DAC1 DAC2
27
10kΩ
DAC3 DAC4
10kΩ
DAC5 DAC6
2005-09-28
TC94A48FG
AD Converter: LIN and RIN pin input, Vin_ref: 1 kHz, 800 mVrms (unless otherwise
specified), SDO0 pin output monitored
Characteristics
Symbol
Test Condition
Min.
Typ.
Max.
Unit
Maximum input signal
Vin
Input level that drives ADC output to
digital full scale.
⎯
⎯
800
mVrms
Input impedance
Zin
Each of LIN and RIN pins
20
27
34
kΩ
S/N ratio
S/Na
A-Weight, Input AC shorted,
Crystal: 11.2896 MHz
87
93
⎯
THD + N
THDa
20 kHz LPF,
Crystal: 11.2896 MHz
⎯
−83
−77
Crosstalk
CTa
20 kHz LPF, Lch to Rch/ Rch to Lch,
Crystal: 11.2896 MHz
⎯
−85
−78
Dynamic range
DRa
A-Weight, -60dB for Vin_ref input,
Crystal: 11.2896 MHz
87
93
⎯
L to R gain error
Vdlr
−0.5
0
0.5
dB
DA Converter: SDO0 to SDO3 pin input, SDI0_ref = 0 dBFS, 1 kHz (unless otherwise
specified), DAO1 to DAO6 pin output monitored.
Characteristics
Output signal level
Symbol
Test Condition
Min.
Typ.
Max.
Unit
Ao
Output voltage at digital full-scale input
790
830
870
mVrms
S/N ratio
S/Nd
A-Weight,
Crystal: 11.2896 MHz
90
98
⎯
THD + N
THDd
20 kHz LPF
Crystal: 11.2896 MHz
⎯
−88
−75
Crosstalk
CTd
20 kHz LPF,
Crystal: 11.2896 MHz
⎯
−90
−83
Dynamic range
DRd
A-Weight
Crystal: 11.2896 MHz
88
95
⎯
Channel-to-channel gain error
Vddo
DAO1~DAO6 pin output monitored.
−0.5
0
0.5
28
dB
2005-09-28
TC94A48FG
Timing
Clock input pin (XI)
Characteristics
Clock cycle
Symbol
tXI
Test Condition
fs=32kHz~48kHz, 256fs input
Min.
Typ.
Max.
80.0
88.6
124.0
Unit
Clock “H” duration
tXIH
⎯
40.0
44.3
62.0
Clock “L” duration
tXIL
⎯
40.0
44.3
62.0
Symbol
Test Condition
Min.
Typ.
Max.
Unit
ns
Reset pin (/RST)
Characteristics
Standby time
tRRS
⎯
10
⎯
⎯
ms
Reset pulse width
tWRS
⎯
1.0
⎯
⎯
µs
Max.
Unit
Note 16: The /RST pin must be driven low at power-on.
Audio Serial Interface (BCKI0~1, BCKO, LRCKI0~1, LRCKO, SDI0~3, SDO0~3)
Characteristics
Symbol
Test Condition
Min.
Typ.
LRCKIx setup time
tLBS
CL = 30 pF
75
⎯
⎯
LRCKIx hold time
tLBH
−75
⎯
75
SDIx setup time
tSDI
fs = 48 kHz or lower
BCKI0 and BCKI1 input: 64 fs or lower
50
⎯
⎯
SDIx hold time
tHDI
50
⎯
⎯
BCKIx clock cycle
tBCK
300
⎯
⎯
BCKIx clock “H” duration
tBCH
150
⎯
⎯
BCKIx clock “L” duration
tBCL
150
⎯
⎯
SDOx output delay(1)
tDO1
CL = 30 pF
⎯
⎯
60
SDOx output delay(2)
tDO2
CL = 30 pF
⎯
⎯
60
LRCKO output delay
tDCLR
CL = 30 pF
⎯
⎯
40
29
ns
2005-09-28
TC94A48FG
Microcontroller Interface
Normal Transmission Mode (/MICS, /MICK, /MIDIO, MILP, /MIACK)
Characteristics
Symbol
Test Condition
Min.
Typ.
Max.
Unit
tSTB
⎯
20
⎯
⎯
ms
/MICS fall to /MICK rise setup time
t1
⎯
0.5
⎯
⎯
/MIACK fall to /MICK rise setup time
t2
⎯
0.5
⎯
⎯
/MICK clock cycle
t3
⎯
1.0
/MICK “L” duration
t4
⎯
0.5
⎯
⎯
/MICK “H” duration
t5
⎯
0.5
⎯
⎯
/MICK rise to /MILP fall setup time
t6
⎯
0.5
⎯
⎯
MILP “L” duration
t7
⎯
0.5
⎯
⎯
/MIDIO input data setup time
t8
⎯
0.5
⎯
⎯
/MIDIO input data hold time
t9
⎯
0.5
⎯
⎯
/MIDIO output data delay
t10
⎯
⎯
⎯
0.5
/MICS “H” duration
t11
⎯
0.5
⎯
⎯
/MIACK output delay
t12
⎯
⎯
⎯
1.0
MILP rise to /MICS rise setup time
t13
⎯
0.5
⎯
⎯
Min.
Typ.
Max.
Unit
kHz
Standby time
µs
Note 17: The /MIACK output timing and /MIACK "H" duration vary with the firmware.
I2C Mode (/MICK, /MIDIO)
Characteristics
/MICK clock frequency
/MICK “H” duration
Symbol
Test Condition
fIFCK
CL = 400 pF
0
⎯
400
tH
CL = 400 pF
0.6
⎯
⎯
tL
CL = 400 pF
1.3
⎯
⎯
Data setup time
tDS
CL = 400 pF
0.2
⎯
⎯
Data hold time
tDH
CL = 400 pF
0
⎯
0.9
Transmission start condition hold time
tSCH
CL = 400 pF
0.6
⎯
⎯
Repeated transmission start condition
setup time
tSCS
CL = 400 pF
0.6
⎯
⎯
Transmission end condition setup
time
tECS
CL = 400 pF
0.6
⎯
⎯
Data transmission interval
/MICK “L” duration
tBUF
CL = 400 pF
1.3
⎯
⎯
2
tR
CL = 400 pF
⎯
⎯
0.3
2
tF
CL = 400 pF
⎯
⎯
0.3
I C rise time
I C fall time
30
µs
2005-09-28
TC94A48FG
AC Characteristics Measurement Points
1.
Clock Pin (XI)
XI
50%
tXIH
tXIL
tXI
2.
Reset Pin (/RST)
100%
VDD
90%
0%
50%
/RST
tRRS
3.
tWRS
Audio Serial Interface (LRCKIx, BCKIx, SDIx, LRCKO, BCKO, SDOx, MCKO)
XI
50%
tDCLR
100%
LRCKO
50%
0%
tBCK
tBCL
tBCH
LRCKIx/
LRCKO
tLBH
tLBS
BCKIx/
BCKO
SDIx
tSDI
tHDI
SDOx
tDO1
31
tDO2
2005-09-28
TC94A48FG
4. Microcontroller Interface
4-1.
Serial Mode (/MICS, /MICK, /MIDIO, MILP, /MIACK)
/RST
/MICS
tSTB
t1
/MICS
t2
/MIACK
t3
t12
t4
t5
t6
/MICK
t7
MILP
t8
/MIDIO
t9
DATA IN
/MIDIO
DATA OUT
t10
t13
t11
/MICS
/MIACK
/MICK
t7
MILP
/MIDIO
/MIDIO
t6
DATA IN
DATA OUT
32
2005-09-28
TC94A48FG
4-2.
2
I C Mode (/MICK, /MIDIO)
/RST
/MIDIO
(SDA)
tSTB
tBUF
/MIDIO
(SDA)
/MICK
(SCL)
tSCH
tR
tL
tH
33
tDS
tDH
tSCS
tF
tECS
2005-09-28
TC94A48FG
Equivalent Circuit Diagrams
Type
Equivalent Circuit Diagram
Description
Schmitt Input
A
Schmitt Input.
5V tolerant.
B
A voltage can be applied to this pin even when the power
supply pin of the TC94A48FG is driven to 0V.
Push-pull output.
The amplitude is 3.3 V. If external devices require 5V
amplitude, perform a level conversion.
C
Open-drain output
This pin must be pulled up to VDD or 5V externally.
D
Schmitt input and open-drain output
This pin must be pulled up to VDD or 5V externally. A
voltage can be applied to this pin even when the power
supply pin of the TC94A48FG is driven to 0V.
E
[Caution] When using the pin for input, connect it to an
open-drain output pin of an external device.
Type A: TEST0, TEST1
Type B: SDI0~3, LRCKI0~1, BCKI0~1, GPI0~1, BTMD, MILP, /MICK, /MICS, MIMD, /RST
Type C: SDO0~3, MCKO, BCKO, LRCKO
Type D: GPO0~1, /MIACK
Type E: /MIDIO
34
2005-09-28
TC94A48FG
Package Dimensions
L Q F P 6 4 - P- 1 0 1 0 - 0 . 5 0 E
U n it: m m
(Note) Palladium plate
Weight : 0.4g (typ.)
35
2005-09-28
TC94A48FG
36
2005-09-28