Lattice模块打包成黑盒子的方法——转载

一、黑匣子的产生

1、  在使用的工程中,将需要生成黑匣子(ngo文件)的.v文件设置成顶层(这里以scaler_top.v为例)。

2、  将综合工具设置成“Synplify Pro”,如下图。

image.png

3、在策略中,将“Disable IO Insertion”设置成“True”

image.png

3、  编译,运行Translate Design

image.png

4、  在当前工程目录下,打开文件名根工程名一样的文件夹(这里使用的工程名是machxo2_71lvds_mini),找到一个.ngo文件。将这个文件名改成scaler_top.ngo,

image.png

image.png

5、  新建一个scaler_top_bb.v的文件,文件内容为scaler_top.v文件的端口列表。如下图:

image.png

6、  在策略中,将“Disable IO Insertion”改回来,设置成“false”

image.png

7、  到这里,生成两个文件,scaler_top_bb.v和scaler_top.ngo,成功产生黑匣子!

二、黑匣子的使用

1、将scaler_top_bb.v文件添加到当前工程。

image.png

2、scaler_top.ngo可以放到与当前工程目录下,这样不需要做额外的设置。如果不是,则需要另外指定路径,指定方法如下图:

image.png

3、在顶层文件中,调用scaler_top模块。模块名使用scaler_top,(注意不是scaler_top_bb)如下图。

image.png

4、编译顶层文件。

http://blog.chinaaet.com/justlxy/p/5100051878

posted @ 2017-09-29 15:06  jackywx  阅读(1013)  评论(0编辑  收藏  举报