网站重新上线,多谢朋友们的关心
May 14

BlackBox 不指定

RickySu , 20:53 , 技术经验 , 评论(3) , 引用(0) , 阅读(1956) , Via 本站原创
BlackBox是FPGA设计中一个重要的技巧,不过觉得Xilinx的文档没有很好地将它讲清楚。

BlackBox的主要想法就是把设计的某一个子模块单独综合,综合的结果作为一个黑盒子子模块,上层设计不再对这个模块进行优化,只能看到它的端口。

要让XST实现BlackBox,其实非常简单,将一个子模块单独综合后,会得到ngc文件或者edif文件。在使用这个网表时,在子模块的描述文件中只要包含端口信息而不要实现的信息(这个文件通常称为wrapper),这样XST就会自动寻找project目录下的网表文件了。不过HDL文件和网表文件的文件名得相同。
如果网表文件不在project目录中,就要在Translate的Search Macro Path属性中填写寻找的路径,多条路径可以以|分割。

写个简单的示例:
顶层文件top.v/vhd,子模块是ngc格式的网表module.ngc,子模块有一个仅描述了端口的wrapper文件module.v/vhd.
HDL中不用包括任何blackbox属性。综合器会自动加上的。

在Reference的页面中有for vhdl和verilog的详细例子。敬请参阅。

注1:
说到wrapper,因为综合工具综合时其实是不读ngc/edif网表的(分析时序除外),子模块的端口完全是靠wrapper告诉综合器的。而ngc/edif的网表是在translate(NgdBuild)的时候才将所有的网表组合为一个ngd文件的。

注2:
生成用于子模块的ngc网表时,要在XST属性中选择不添加IO Buffer。否则最后使用的时候由于这些不该有的buffer会在Translate的时候报错。

Reference:
Black Box support
Tags: , ,
Jan 17
1、用buffer_type约束。具体使用方法在XST User Guide
2、手动插入BUFG,然后设置允许使用BUFG的数量,那么手动插入的将拥有高优先级而先占用了BUFG。
Tags: , , ,
Jan 17
要更改所有IO Pin的IO Standard,可以打开PACE,选择所有管脚(通过shift或ctrl键多选),按右键,Create Constraints,然后自己选需要的吧:)
Tags: ,
Dec 8
不需要改动设计,就可以把内部信号引到管脚上观察。这种调试方法可以与ChipScope互补。

方法是:当Implementation完成,打开FPGA Editor,点Tools -> Probe...

Probe可以将内部信号引出,有Filter可以方便地选择信号net。

选好net可以直接计算出内部延时,并可以直接生成bit文件和进行下载。
Dec 8
ISE中的Warning或INFO信息都可以通过Message Filter过滤掉。
方法是选择ISE中Edit -> Message Filter。
具体步骤参见Message Filter中的帮助。
Tags: ,
分页: 2/3 第一页 上页 1 2 3 下页 最后页 [ 显示模式: 摘要 | 列表 ]