I am facing one problem using McBSP serial port and DMA ..
My program is :
FPGA interface with McBSP serial port of c54x
Reveive the real time data from FPGA through McBSP into DSP internal
memory. here we are using DMA autobuffer technic to write into
internal memory. After Autobuffer, one more ISR routine writes into
Pipe implemented buffer. here we are checking the data whether it is
correct or not. problem:
The interface is working well with FPGA. So we can receive the data
from FPGA at the rate of 2.04Mbps. But after receiving 1.5Mbps data
from FPGA ( 1000 frames), false data is coming for 20 frames and
later it is receiving correctly and once agian it fials
at frame no; 2000 like this..
1Frame of data from FPGA = 188bytes.
1000 Frames of data = 1.5Mbps
it is consistently receiving false data after step of 1000 frames
correct data false data correct false data
frmae no : .............. 1000 1001 1003 1004 ...... 2000 2001 2003
false data means:
data shifting by one bit or replacing one bit with the wrongbit....
instead of 77 / it is coming FF
If some problem with my program means.. it should fail at
1st frame only. but it is working well till 1000
so we are checking FPGA side also.
But I am looking help from all you friends
I have checked all the debugging tricks. But I can't check how DMA is
writing into buffer.. Is there any different method to handle this
problem to check at frame no.1000 like that. If anybody have standard FPGA - c54x interface program, Please send
me, so that I feel great.
I am waiting for response.
Thanks & regards