各位专家们,大家好!
我有一个工程,是在EVM6678L上做多核通信开发。核0负责执行BIOS,其主要工作是负责运行网口程序clinet。核1负责计算和数据传递,数据对外传递采用的是SPI&EDMA结构。现在我的工程遇到了如下的问题,希望能得到大家的帮助。
【1】 BIOS/EMAC 网口程序在核0上直接执行,其他核不动,则网口程序能够正常工作,通过PC机能ping成功。
【2】SPI&EDMA传输程序在核1上单独执行,其他核都不动(或者其他核执行,但停在BIOS_start()函数之前),SPI能成功触发传递数据。
【3】两个和同时运行,则不能正常工作,即如果BIOS先运行,则SPI不能正常传输(即使我手动在SPI的发送缓存寄存器SPIDATA0,SPI也没有波形输出);如果先运行SPI,在运行BIOS,则网口程序不能正确设置各种参数,PC显示没有网络连接。
在调试过程中,还有一些莫名其妙的问题,比如在网口程序clinet中有时不能在断点处停下,有时程序下载后直接跑飞。
工程任务很急,现在又出现这种奇葩的BUG,求大神们帮助~!
Kaka
2013/6/5