问题1)用ISE的Core generator 生成的SRAM一般情况下比自己用VHDL或者原理图生成的SRAM优化吗?
优化指:
1。所用到的SelectBlockRAM 的数目 少;
2。访问速度快。
问题2)用多个SelectBlockRAM组成(或者说cascade成)的大的RAM的访问速度 由哪些方面决定?用的SelectBlockRAM越多越慢吗?
谢谢~
[此贴子已经被作者于2007-4-3 20:43:46编辑过]
谢谢斑竹,
1。如果对“速度快”的要求高,应该首选coregen还是自己做呢?依照斑竹的经验看呢?
2。在使用Corgen的时候吧,有个primitive selection 选项,可以选择是optimize for area 或者是自己定制深度、宽度的 blockRAM。这两者有什么区别吗?对于满足快速的要求,哪个更好点?
[此贴子已经被作者于2007-4-4 12:34:44编辑过]
谢谢斑竹。
1。明白了,谢谢。
2,不知道 如果我选择使用 1 X 16K 和 2 X 8K两个不同的选项,结果会有什么区别呢?能举个例子说明“怎么方便怎么来”吗?存储器的速度主要是有什么决定的呢?
3。举个例子再问一下,如果我有两组数据要保存到RAM里面,假设这两组数据的宽度,深度都一样,就是内容不一样。 并且,访问也“同步”,也就是每次都是同时访问这两组数据,并且索引也一致。 那么, 这个时候,
是不是有两种存储方式可以选择:
1)两组数据存在一个RAM里面,然后用宽度的[0:N-1]位来表示数据1,[N:2N-1]位来表示数据2,这样一组地址线访问出来一组数据之后,再把数据走线从中间分开,分别处理;
2)两组数据存在两个RAM里面,这样,就需要扇出两组地址线分别对两个RAM进行访问,但是访问出来的数据可以不做分开处理,直接使用。
不知道解释清楚没有,斑竹看看,这两种方法哪个更节省资源,速度更快点?
4。还有一个问题,在Coregen生成RAM的时候,最后一页,有几个参数,Address width, Block used and Read pipeline latency。 最后一个Read pipeline latency 中的数值指的是什么,单位是纳秒吗?
万分感谢!
[此贴子已经被作者于2007-4-5 10:56:04编辑过]
斑竹,万分感谢!
1)如果在保证速度的前提下,尽量节约内存的使用量是目的,那么使用了第二种,那就多用了1个block RAM,其实每组数据都不是很大,可以做在一个block RAM里,第二种是不是有点浪费了?对于FPGA,第一种方案比第二种方案慢吗?
2)Xilinx里面,不是很大的存储器还可以用什么来实现?速度也和block RAM 一样吗?
3)用coregenerator生成RAM的时候统计的所用到的selectedblock RAM的个数和最终布线之后用到的blockRAM的数目一致吗?会有多大的出入?
[此贴子已经被作者于2007-4-9 10:09:34编辑过]
谢谢~~
1。没什么浪费的吧,你放到一个里面和放到两个里面对FPGA都是一样的。
为什么这么说呢?如果放到一个里面,就能节省下一个去存储别的数据了。
我感觉blockRAM只要是被用了,哪怕只用了1bit,也要占用整个block了,不是吗?
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |