目前想做的是,c66芯片通过SRIO接口连接FPGA,FPGA有SRIO的IP,
初看SRIO协议,不是很了解,有几个问题,谢谢:
1. 因为交互数据量比较大,考虑用DirectIO的模式,那么FPGA得有双口RAM或者FIFO,
在DSP端的地址映射是什么,地址自己定义吗? 具体就是SRIO 的socket编程里面,的目标结构体里面的目的地址,
如果DSP一次send一块ram的数据,那么这个地址是ram的起始地址吗?
2. DSP使用SRIO的socket发送数据到FPGA,如果一次send的数据量比较大,硬件会自动分成若干256byte的packet吗?
那么这些packet里面的目的address,是在前面的起始地址上自己增加的了?
3. 因为FPGA没有srio_socket这个东西,那么在FPGA接收到这些个packet后,直接按照packet中的address将数据写到ram里面?
4. 如果send一次数据完成后,希望发送一个doorbell,那么是不是要重新配置socket为另外的模式?什么模式?
5. DSP的SRIO的DirectIO 的DMA工作大概流程是什么样的?配置好SRIO后由DMA自动将source地址的数据发送到SRIO模块,
以及从SRIO模块接收到DSP内部destination地址吗? 看文档好像DMA只能在L2 mem和SRIO接口之间传输数据?
如果设置数据在DDR怎么办?
6. 针对这个架构,DSP这边是不是使用提供的socket驱动模型就OK了?会不会有什么问题?
或者需要绕开socket这个模型进行SRIO的编程?
初看了论坛上的SRIO编程范例,不是太明白,其作用和功能是什么?直接利用CSL配置SRIO的寄存器进行收发?
目前没考虑好DSP与FPGA之间的数据交互的过程,希望各位提示! 3X!