时间:2025-03-30 来源:FPGA_UCY 关于我们 0
0. 前言
FPGA设计流程,所有的代码其最后都是生成一个个的网表文件,这些网表文件就是FPGA最底层的东西,它反映着整个工程的门电路搭建。
作为一名FPGA程序猿,有时候我们不想把自己辛辛苦苦写的代码给到别人,但是又必须把功能模块给到对方,这时候给一个网表文件是最好的选择,这样对方既能够使用我们的模块,有无法看到我们的代码。典型的就是原厂的IP核,人家就只想给你功能,不想给你代码,怕你偷师~~,另一方面也是基于知识产权的保护。
那说到底,网表文件该如何制作呢?
1. 基于平台的网表制作
的开发平台是 II,网表文件有两种格式,分别是用于创建综合或者PAR之后的网表文件.qxp( )和综合后,PAR前的综合结果.vqm( );一般都是推荐使用.qxp文件。具体操作如下:
(1)、编写完需要的设计文件后,点击“ > Start ”,等待编译结束;
(2)、在软件里点击“ > ”,选择“OK”即可,这样网表文件就生成了;
(3)、建立顶层文件后,把生成的.qxp文件加入到工程里,便可应用了;
这样工程里我们可以看到“led_1”这个模块,但是我们打开的时候发现它会是一片乱码,啥信息都获取不到;
2.基于平台的网表制作
的开发平台有两种,分别是ISE和,现在都是主推,其网表文件格式是.edf。具体操作如下:
(1)、编写完需要的设计文件后,点击“ > ”,在“More ”里输入“-mode ”,这一步是防止软件编译的时候会生成I/O ,点击“OK”;
(2)、在综合选项里点击“Run ”,待编译完后点击“Open ”,这一步是必须的;
(3)、打开界面后,在Tcl 里输入命令“ led_1.edf”,回车后便会获得网表文件及存放路径。
(4)、建立顶层文件后,把生成的.edf文件加入工程里,便可应用了;
在工程里我们可以看到“led_1”这个模块,打开后是一串串网表代码,但是分析不出源代码内容;
3.总结
以上就是两种主流FPGA平台的网表生成方式,其他平台也有对应的方法,感兴趣的读者可以去官网下载开发软件的使用手册,里面基本都有提到如何生成网表文件。有了这种方法,作为弱势群体的我们,起码腰杆也能硬一点了,不会啥都被别人看光光了,一点筹码都没有~~