本帖最后由 zchong 于 2020-4-23 11:13 编辑
最近有一个开发上的需求,使用H7的FMC连接FPGA,FPGA里有多个并行的通信模块,每个模块单次收发数据量约在2K字节,设计的目标是尽量减少CPU访问FMC总线的读写时间,目前可以采用的方法如下:
1、数据总线采用32bit;
2、提高FMC总线接口速度,比如访问周期提高到30MHz以上;
3、采用DMA读写数据。
上述措施的1、2比较好实现,但是采用DMA后就需要考虑内部总线冲突带来的性能下降问题,比如如果采用性能较高的AXI SRAM作为缓冲,那么如果内核频繁访问AXI SRAM的其它数据,应该就会降低性能,如果用其它区块的RAM,比如SRAM1、SRAM2等等,这些RAM本身带宽和速率都不高,虽然应该不影响DMA从FMC、RAM搬数据,但内核访问这些RAM也会稍慢,这方面有没有什么指导性原则?或者有没有兄弟做过类似的项目,给提点建议。
另外有同事提出采用双核的H7,但是我觉得双核无助于解决上面提到的问题。
|