Presentation is loading. Please wait.

Presentation is loading. Please wait.

0 - 1 © 2007 Texas Instruments Inc, Content developed in partnership with Tel-Aviv University From MATLAB ® and Simulink ® to Real Time with TI DSPs Audio.

Similar presentations


Presentation on theme: "0 - 1 © 2007 Texas Instruments Inc, Content developed in partnership with Tel-Aviv University From MATLAB ® and Simulink ® to Real Time with TI DSPs Audio."— Presentation transcript:

1 0 - 1 © 2007 Texas Instruments Inc, Content developed in partnership with Tel-Aviv University From MATLAB ® and Simulink ® to Real Time with TI DSPs Audio Conference Bridge

2 Slide 2 © 2007 Texas Instruments Inc, Outline Introduction The Hardware Platform The AIC24 Driver Creating a Simulink ® block for the AIC24 The Audio Conference Application

3 Slide 3 © 2007 Texas Instruments Inc, The Audio Conference Bridge Phone call with n participants (n > 2)

4 Slide 4 © 2007 Texas Instruments Inc, Limitations of the DSK6713 Hardware The DSK6713 supports 2 analog audio interfaces Only audio 2 I/O

5 Slide 5 © 2007 Texas Instruments Inc, The Hardware Platform TLV320AIC24EVM DSK6713 TLV320AIC24 TMS320C6713 McBSP 1 Headsets CODEC #2 CODEC #3 CODEC #1 CODEC #0

6 Slide 6 © 2007 Texas Instruments Inc, The TLV320AIC24

7 Slide 7 © 2007 Texas Instruments Inc, The DSP Interface to the CODEC DSK6713 TLV320AIC24KEVM

8 Slide 8 © 2007 Texas Instruments Inc, The AIC24 Driver Layer Interface is based on a user supplied callback function Double-Buffering –EDMA based –Configurable buffer sizes –Channel Sorting

9 Slide 9 © 2007 Texas Instruments Inc, TMS320C6713 TLV320AIC24 Receiving Samples EDMA McBSP1 Ch. 0Ch. 1Ch. 2Ch. 3 Ch. 0Ch. 1Ch. 2Ch. 3Ch. 0Ch. 1Ch. 2Ch. 3 DSP Memory N samples from each channel { { { { CODEC 0 CODEC 1 TLV320AIC24 CODEC 2CODEC 3 Audio Ch. 0 Audio Ch. 1 Audio Ch. 2 Audio Ch. 3

10 Slide 10 © 2007 Texas Instruments Inc, TMS320C6713 TLV320AIC24 Transmitting Samples EDMA McBSP1 Ch. 0Ch. 1Ch. 2Ch. 3 Ch. 0Ch. 1Ch. 2Ch. 3Ch. 0Ch. 1Ch. 2Ch. 3 DSP Memory N samples from each channel { { { { CODEC 0 CODEC 1 TLV320AIC24 CODEC 2CODEC 3 Audio Ch. 0 Audio Ch. 1 Audio Ch. 2 Audio Ch. 3

11 Slide 11 © 2007 Texas Instruments Inc, Double Buffering (frame #n+1) Reading & Writing Samples DRR1 EDMA DXR1 EDMA Processing Samples CPU RcvBuf2 SndBuf2 RcvBuf1SndBuf1

12 Slide 12 © 2007 Texas Instruments Inc, Processing Samples Reading & Writing Samples Double Buffering (frame #n) DRR1 EDMA DXR1 EDMA CPU RcvBuf2SndBuf2 RcvBuf1 SndBuf1

13 Slide 13 © 2007 Texas Instruments Inc, McBSP1 EDMA DSP Memory The Driver Structure CPU SndBuf1SndBuf2RcvBuf1RcvBuf2 RcvDMA SndDMA DRR1 DXR1 AIC24 Interrupt upon receiving/transmitting a frame Processing McBSP1XmtEventMcBSP1RcvEvent

14 Slide 14 © 2007 Texas Instruments Inc, McBSP1 EDMA DSP Memory The Driver Structure CPU SndBuf1SndBuf2RcvBuf1RcvBuf2 RcvDMA SndDMA DRR1 DXR1 AIC24 Interrupt upon receiving/transmitting a frame Processing McBSP1XmtEve nt McBSP1RcvEve nt

15 Slide 15 © 2007 Texas Instruments Inc, The Driver Interface The user callback function header: Process(Int16 *InBuf, Int16 *OutBuf) InBuf a buffer containing the last buffer of samples read from the CODECs OutBuf a buffer containing the samples that will be written to CODECs For example: copy channel0 to channel2 memcpy(InBuf, OutBuf+2*BufSize, BufSize)

16 Slide 16 © 2007 Texas Instruments Inc, Sample Code

17 Slide 17 © 2007 Texas Instruments Inc, Migration to Simulink A new Simulink model, containing the driver is created This block can be integrated with an “Algorithm” block. For example: Switching channels

18 Slide 18 © 2007 Texas Instruments Inc, The Simulink Interface Simulink creates a task for the processing The task waits for a signal when the new buffer of the data is ready The callback processing function signals (using a semaphore) to the Simulink task when the data is ready

19 Slide 19 © 2007 Texas Instruments Inc, Running the Application TLV320AIC24EVM Headsets J10 J5 Mic Phone J4 J20 Mic Phone J1 J16 Mic Phone #1 #2 #3

20 Slide 20 © 2007 Texas Instruments Inc, The Algorithm Conference INP0 INP1 INP2 OUT0 OUT1 OUT2 Selection Block Inputs (from CODECs) Outputs (to CODECs) Power Level 0 Level 1 Level 2

21 Slide 21 © 2007 Texas Instruments Inc, Output Signal Selection 1.Find Maximum Input Level 2.Increment Counter correspondent to the “loudest” channel 3.If the Counter value =10 THEN: Broadcast correspondent input channel to all outputs Reset Counter For Each 64 samples frame the following algorithm is implemented:

22 Slide 22 © 2007 Texas Instruments Inc, Simulink Model

23 Slide 23 © 2007 Texas Instruments Inc, Signal Routing

24 Slide 24 © 2007 Texas Instruments Inc, Algorithm Model Level Meas. Channel Selection Conference

25 Slide 25 © 2007 Texas Instruments Inc, Finding Maximum Input Level

26 Slide 26 © 2007 Texas Instruments Inc, Index Selection


Download ppt "0 - 1 © 2007 Texas Instruments Inc, Content developed in partnership with Tel-Aviv University From MATLAB ® and Simulink ® to Real Time with TI DSPs Audio."

Similar presentations


Ads by Google