顶一下16楼的方案,顺便提一下自己的建议
1、内存条可以用2片16位的DDR2芯片替代
2、使用spartan3的芯片估计核的运行频率不会超过166M, 这个是芯片以及厂家工具的限制,如果有牛人不用mig的话估计可以跑的高点
3、按166M计算,32bit的位宽,带宽利用率50%,实际带宽不到700MB,读写同时进行,不能满足要求;这个带宽的前提是使用突发读写,使用单字节更新的话还要慢很多;可以参考一下xilinx mpmc中的测试数据
Spartan-3 Generation Reads
[email=DDR2@133]DDR2@133[/email] MHz 32 bits 371(MBytes/sec)
Spartan-3 Generation Writes
[email=DDR2@133]DDR2@133[/email] MHz 32 bits 237(MBytes/sec)
4、如果当做全功能的fifo来用的话,涉及到一些控制信号的更新,这个有些麻烦;尤其是单个数据的读写,控制信号更新有的做了
5、单纯从带宽角度考虑,可以用spartan6, 连接2片[email=DDR3@800]DDR3@800[/email], 成本要超出 |