This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

  • Resolved

RTOS/EVMK2G: K2GEVM + CMB using Processor SDK RTOS demo

Tool/software: TI-RTOS

We are using the development board EVMK2G.
The Microphone Board we are using is designed under the reference of PCM1864-Based Circular Microphone Board (CMB) Reference Design. We designed 13 channels,but only used 8 for now.
The SDK we are using is ti-processor-sdk-rtos-k2g-evm- and the DEMO is realtime_demo_bios.
During debugging, we can activate the DSP normally and the current is 0.56A, but when the Main program run to mcaspAudioConfig(), there is an error
/* Initialize McASP module */
status = mcaspAudioConfig();
if(status != Cmb_EOK)
cmb_write("McASP Configuration Failed!\n");
UART_printf("McASP Configuration Failed!\n");

/* Start BIOS execution */

Step into status = mcaspAudioConfig(), we find that the error occured in

status = mcaspCreateChan(&hMcaspRxChan, hMcaspDevRx,MCASP_INPUT, &mcaspRxChanParam, mcaspAppCallback, &rxChanMode)

and the error information is :

Static information:
tword: 1
tint: 2
tlong: 4
Max #mics: 7
Max #vmics: 12
Fs: 16000 [Hz]
Frame duration: 10 [ms]
Frame length: 160 samples
Frame size: 320 bytes
Input buffer length: 2240 samples
Frame buffer size: 4480 bytes

Dynamic information:
#mics: 7
#vmics: 12
...Initializing beamformers
Done with beamformers
...Initializing ASNR's
Done with ASNR's
...Initializing MSS
Done with MSS
...Initializing DRC
Done with DRC

Audio Preprocessing Demo

This Demo Takes the Audio Input from 8 Mics from CMB
Runs the BF+ASNR+MSS+DRC Signal Processing Chain on Mic1 through Mic7
The Processed Audio Output will be Sent to Left Channels of K2G EVM On-Board Line-Out
The Mic8 will be Sent to Right Channels of K2G EVM On-Board Line-Out
Please Plug a Headphone to K2G EVM On-Board Line-Out
McASP Configuration Failed!

Audio DC Analog Interface Test Completed!
A0=0x0 A1=0x1
A2=0x1 A3=0xc0e0108
A4=0x1 A5=0x42a
A6=0x8949c4 A7=0x1
A8=0x894778 A9=0x894780
A10=0x10 A11=0x0
A12=0x8fe5b0 A13=0x0
A14=0x1f63ef81 A15=0x8fff00
A16=0x0 A17=0xf6f2bc63
A18=0x10 A19=0x0
A20=0x0 A21=0x879498
A22=0x0 A23=0x879498
A24=0x8fff00 A25=0x888740
A26=0x8949f8 A27=0x825e10
A28=0x832344 A29=0x1a
A30=0x1 A31=0x1
B0=0x1 B1=0x833dc8
B2=0x894930 B3=0x894a00
B4=0x1 B5=0xf6f2bc64
B6=0x8fe5b0 B7=0x0
B8=0x8887bf B9=0x8793f4
B10=0x830c9c B11=0xf6f2bc63
B12=0xc9bae6de B13=0x1f63ef81
B14=0x890000 B15=0x894980
B16=0x0 B17=0x894980
B18=0xffffffff B19=0xffffffff
B20=0xfffffff7 B21=0x0
B22=0x66666666 B23=0x30666666
B24=0x1 B25=0x0
B26=0xffffffef B27=0x888879
B28=0x894930 B29=0x0
B30=0x82f890 B31=0x80b580
Exception at 0xdfb87370
EFR=0x2 NRP=0xdfb87370
Internal exception: IERR=0x8
Opcode exception line 256: E_exceptionMax: pc = 0x0080b580, sp = 0x00000008.
xdc.runtime.Error.raise: terminating execution

The program goes into CODE_ACCESS void abort(void) in exit.c and stopped.

We have been stopped here for 2 days, it already blockied our progress. Thank for anynone who can help us.

  • Hi,

    I've notified the RTOS team. They will post their feedback directly here.

    Best Regards,


     Please make sure you read the forum guidelines first.

  • In reply to Yordan Kovachev:

    thank you for your help!
  • In reply to Wujun He:


    For the 8 channel setup that you are using, do you have the same wiring as in the TI design (TIDEP-008)?
    On the CMB, the blue LEDs (connected to MICBIAS) indicate a successful initialization of the PCM1864 devices, in your case are you seeing the codecs initialize properly?

  • In reply to Lalindra Jayatilleke:


    The board we designed is not same as the TI design (TIDEP-0088). I find the failture of output MICBIAS PCM1864 devices, because output is low .we have ordered the CMB board but we have not get it at present . I have another problem , the address of PCM1864 devices from file (TIDA-01454B-PCB) is 0x94 or 0x96 , but I find address of PCM1864 devices in c code of realtime_demo_bios demo is 0x4A or 0x4B (#define CMB_AUDIO_ADC0_ADDR (0x4A) ), I am confused which is right . Thank you for your help .

  • In reply to Wujun He:


    The values to use are 0x4A or 0x4B.
    These are 1 bit shifted left compared to 0x94 and 0x96. The slave address register is 7-bits wide.


This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.