FPGA 我在做个简单的DFT 需要存储旋转因子,请问怎么存储大量数据 ,想的是用寄存器存储块编译 ALUT 不够
我在用FPGAVerilog语言实现做个简单的DFT,由于需要存储旋转因子,请问怎么存储大量数据,想的是用寄存器存储块类型存放64个128位宽的数据(real.imag)...
我在用FPGA Verilog语言实现做个简单的DFT,由于 需要存储旋转因子,请问怎么存储大量数据 ,想的是用寄存器存储块类型存放64个128位宽的数据(real.imag),但是在编译的时候提示 ALUT 不够...我该怎么办?急求回答....
展开
1个回答
展开全部
像这种存大数据的情况要用RAM,而不能用寄存器的。你看看里边有M9K的资源,要用到那部分。你用mega wizard例化一个128位宽的RAM,有64个地址空间就好。
更多追问追答
追问
您好,你说的用mega wizard例化一个128位宽的RAM,有64个地址空间...由于我说错了,更正下,每个k对应128*2个旋转因子,每个旋转因子乘以1000倍,用在FPGA里查值计算,每个以16位表示。,那我每个k点是不是需要例化一个ROM.那么多点是不是得要好多存储空间?麻烦你能否重新看看我补充的再指导一下,谢谢了!如果可以的话邮箱3086七69371秋秋点com联系也好。
追答
你是说DFT,用FPGA做离散傅立叶变换?我对这些理论性的东西都忘光了,呵呵。总之呢,如果要存大量的数,就要用到RAM,就是FPGA里的M9K,M16K的资源,用mega wizard去例化。如果要求速度快,就要加大位宽。你做好映射关系就好。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询