我有一个设置,其中FPGA充当PC和微控制器之间共享的双端口RAM。有fpga信号量可以保护ram免受同时访问,因此我可以避免在更新过程中读取数据。到目前为止,我一直在使用具有固定顺序的字节缓冲区,我正在读取一些结构以在每个方向上传递数据,以100 Hz更新。这运作良好。
我将扩展两个处理器之间的ram窗口的大小,并希望能够在它们之间传递大文件。是否有一套标准的技术以这种方式使用双端口ram?
答案 0 :(得分:1)
如果你有一个FPGA为两者之间的每个通信方向实现一个FIFO。这意味着文件大小和同步不再是与硬件相关的问题。当您的结构或文件被打包时,有一个DMA或中断处理程序将其转移,反之亦然。这将使您的代码更简单,更可靠。
如果存在高速率数据,将被大文件传输阻止,您将需要高优先级和低优先级FIFO。