Hi All ,
I am starting off using the C6713 DSK (latest rev D). I am having some problems sampling and doing some signal processing in the ISR. If I add 1) two multipliers 2) 2 FIR filters( both 31 taps) 3) downconverter into the ISR, then it looks like the DSP is not having enough time between sample and hence missing out a lot of samples. The ISR I am trying out is from a DSP book for doing BPSK carrier recovery -
interrupt void serialPortRcvISR() {
input_signal=((short)input_sample()); #ifdef DEMOD
// output_sample(input_signal);
mixer_out = input_signal*input_signal; //output_sample(mixer_out);
dly[0] = mixer_out; //add band pass filter for 16Khz (2*Fc) yn = 0; for (i = 0 ;i < N ;i++) { yn += (h[i] * dly[i]);
}filter_output= (yn >> 15); //output of 16 kHz BP filter
//output_sample(filter_output);
x = 0; //init downsampled value if (flag == 0) //discard input sample value flag = 1; //don't discard at next sampling else { x = filter_output; //downsampled value is input value flag = 0; } pd = x * input_signal; //product detector //output_sample(pd); dly1[0] = ((short)pd); //for 4 kHz LP filter
//add low pass filter for 4Khz (Fc/2) yn2 = 0; for (i = 0 ;i < G ;i++) { yn2 += (l[i] * dly1[i]);
} // output_sample(yn2); m = (yn2 >> 15); //output of LP filter m *= 100; output_sample(m);
#else
output_sample(input_signal);
#endif
return;
}Also I cannot get profilling going on the DSK , when profiler is enabled a message appears that the emulator on the DSK doesnt support profiling. Can any one provide some info on profiling on DSK? By any means by estimation I dont think a DSP running at 225 Mhz should have any problem doing this processing between samples (sampling rate 48 Khz), is my assumption correct ?
Any help would be appreciated.
BR Rate