很久没有写blog了,半年过去了,新学了一些东西,还是写写比较好。
关于VTR-to-Bitstream这个项目,我现在是自己一个人在摸索,所能获取到的资源都是来自英文论文,以及做过相关项目教授的个人网站。孤军奋战~,以下的内容都是基于我的思考与实践,望有相关了解的人一起讨论。
首先讲下VTR-to-Bitstream的概念吧,VTR(verilog to routing)是一种toolchain(工具链),目的是将要烧到FPGA板子上的verilog文件转化为xdl(xilinx description language)文件,该文件能够在Xilinx ISE 的工具下,打开ISE的command输入(我是win7的系统): xdl -xdl2ncd filename.xdl ,能将我们通过VTR工具链生成的xdl文件转化为网表文件ncd,之后再输入 -bitgen filename.ncd, 就能生成我们所要的bit文件,再烧到板子里即可,这是整体的流程,但是在VTR这个工具链中,要研究的东西实在是太多。
VTR有这么一篇发表在FCCM上的论文:http://www.ece.ubc.ca/~eddieh/hung_fccm13.pdf
里面描述了整个流程,我就稍稍提炼一下,VTR事实上是ODIN II, ABC, VPR 和RapidSmith 工具的结合。
ODIN II 工具是Front-end Synthesis, 旨在Description of Heterogeneous Blocks on FPGA,经过这个工具后会产生.blif文件,即BLIF format Netlist of Logic and blackboxes for Heterogeneous Blocks.
ABC工具是Logic Optimization, Technology Map to LUTs, it can generate .blif Format Netlist of LUTs and Flip-Flops and blackboxes for Heterogeneous