Xilinx FPGA开发工具 Vivado中的Elaborate是做什么的?-Xilinx-AMD社区-FPGA CPLD-ChipDebug

Xilinx FPGA开发工具 Vivado中的Elaborate是做什么的?

在Vivado的界面中,有个RTL ANALYSIS->Open Elaborated Design的选项,可能很多工程师都没有使用过。因为大家基本都是从Run Synthesis开始的。

图片[1]-Xilinx FPGA开发工具 Vivado中的Elaborate是做什么的?-Xilinx-AMD社区-FPGA CPLD-ChipDebug

elaborate可以翻译为“详尽解析”,就是将RTL源代码翻译转换成对应的电路。

有同学会问,这不是Synthesis做的工作吗?

我们可以来比较一下Elaborate和Synthesis后的Schematic就很直观了:

Elaborated Design:

图片[2]-Xilinx FPGA开发工具 Vivado中的Elaborate是做什么的?-Xilinx-AMD社区-FPGA CPLD-ChipDebug
image-20221023165430449

Synthesisd Design:

图片[3]-Xilinx FPGA开发工具 Vivado中的Elaborate是做什么的?-Xilinx-AMD社区-FPGA CPLD-ChipDebug
image-20221023165346017

可以看出,Elaborated Design里面的电路是单纯的对RTL源代码的解析,到了Synthesisd Design,则可以看到Xilinx的具体的库单元,比如LUT3、FDRE等,都是在Xilinx FPGA中真实存在的。

其实在综合的log文件,看到Elaborate的存在,综合的第一步就是先进行Elaborate:

图片[4]-Xilinx FPGA开发工具 Vivado中的Elaborate是做什么的?-Xilinx-AMD社区-FPGA CPLD-ChipDebug

 

 

请登录后发表评论

    没有回复内容