FPGA中光纤,ddr3,srio数据传输速率、带宽分析
需求分析:FPGA通过光纤接收数据,将接受的数据写入ddr中,再通过srio将数据传递给dsp。光纤传输的数据量为17万个32bit数据。
(图片来源网络,侵删)
光纤速率分析:由于在光纤IP核中设置的速率为3.125G,单位bit。数据位宽为16bit。又由于光纤传输数据会进行8b/10b编码。因此单根光纤本地的传输速率为 3.125*0.8/16=156.25Mbit/s(即ip核的时钟为156.25M),因此总速率为156.25*16bit
DDR速率分析:由于ddr输入的实际物理宽度,即input进来的数据宽度为32bit。在ddr3的IP核中设置的clock period为800M(由于DDR在时钟上升都传输数据),所以实际传输速率为1600Mbit/s。所以总速率为1600*32=51200Mbit/s=6400Mbyte/s=6.25Gbyte/s。(由于ddr的axi接口时钟位宽为256bit,因此uiclk=1600*32/256=200M)。
srio速率分析:由于srio的ip核中设置速率为3.125G,由于是X4,因此算上效率后,srio传输速率为1GB/s。
经分析ddr3的传输速率大于光纤与srio的传输速率。因此需要考虑在一个驻留内,按光纤速率计数数据量是否能够完全存入ddr中,以及在开始读ddr到驻留结束,数据是否能按照srio传递速率转发。
还需注意的是如果在读ddr的时候同时还有数据写入ddr的话,ddr的读写速率会慢很多。此时光纤传递的数据可能会丢失。
(图片来源网络,侵删)
(图片来源网络,侵删)
文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。
还没有评论,来说两句吧...