3系列FPGA中使用LUT构建分布式RAM(3)

前面简要介绍了Spartan-3系列FPGA中分布式RAM的基本特性。为什么不从更高级的Virtex系列入手呢?我仔细看了一下各个系列的介绍、对比,Spartan系列基本就是Virtex系列的精简版,其基本原理是一样的,所以从简单的入手来融会贯通未尝不是一个好办法。至于各个器件具体的有什么配置,在Xilinx网站上查找它们各自的Datasheet或者User guide即可(这也是资源最近我着重提到的学习资源)。表1给出了Spartan与Virtex系列中分布式RAM的基本对比情况。

 3系列FPGA中使用LUT构建分布式RAM(3)_设计制作_EDA/IC设计

Xilinx库中Spartan3系列FPGA中SRAM和DRAM的原语一共有4个,如表2所示。(不清楚怎么调用原语的同学可以参考和)。这些原语的详细说明都位于Spartan-3 Libraries Guide for HDL Designs,即UG607.pdf之中。

 3系列FPGA中使用LUT构建分布式RAM(3)_设计制作_EDA/IC设计

表2中原语在调用时,其输入和输出都是1位宽的。为了实现更大的内存函数,可以把它们进行并联使用,如表3所示。在调用CoreGenerator时,每个端口的定义都会有详细的说明,在此不再详细描述,请参考原语调用时CoreGenerator的help或者上面的UG607.pdf。

 3系列FPGA中使用LUT构建分布式RAM(3)_设计制作_EDA/IC设计

分布式的RAM在器件初始化之后,其内容为全零。如果要求配置为初始化后非零的情况,需要使用INIT属性。每一个INIT都是以16进制编码的矢量,从MSB到LSB排序。表4给出了每个原语的INIT长度。

 3系列FPGA中使用LUT构建分布式RAM(3)_设计制作_EDA/IC设计

每一个Spartan-3 FPGA的CLB都包含4个slice,它们的位置排列datasheet、user guide或者PlanAhead中都可以看到。相比较而言,PlanAhead中的更为直观,可以参考中的图5。分布式RAM仅仅位于SLICEM类型的SLICE中,其中的“M”即表示这种slice支持与存储器相关的函数;而SLICEL中的L表明这种类型的slice仅支持逻辑。

7
138
0
43

相关资讯

  1. 1、感谢有你《召唤师》线下体验活动圆满结束3552
  2. 2、《灌篮高手》福田吉兆登场超级大前锋带你突破4932
  3. 3、妖神共庆感恩有你《大圣之怒》周年版本盛大开启2304
  4. 4、快意恩仇路《江湖霸图》四月新版本火爆来袭4800
  5. 5、花钱抢首领冰河游戏《古剑绝学》BOSS之家揭秘4065
  6. 6、《疯狂兔子大爆炸》安卓版上线8月20日疯狂来袭1522
  7. 7、《古龙群侠传:决战紫禁之巅》4月1日公测全面到来3521
  8. 8、9377《皇图》新版再出击五大新地图揭秘1773
  9. 9、《猎妖》手游引领仙侠风潮流纷乱尘世与你同行3169
  10. 10、一战决胜负游奇《卧龙吟》成王败寇竞技定成败3741
全部评论(0)
我也有话说
0
收藏
点赞
顶部