[Vivado IP综合选项Global和Out-Of-Context区别(FPGA不积跬步101)] - Vivado IP综合选项——全局(Global)与上下文外(Out-Of-Context)的异同点,本文将进行详细说明。
当我们在使用 Vivado 进行 IP 综合时,通常需要选择适合当前设计的综合选项。其中,全局综合和上下文外综合是两个常用选项,但它们之间有哪些差别呢?
首先,全局综合会将整个设计代码一起综合成为一个顶层模块。这种综合方式可以提高设计的时序分析和优化效率,同时也能避免时间浪费在综合子模块上。但是,全局综合的缺点在于其综合时间较长,因为整个设计都需要被编译、优化和综合。下面是一个示例代码:
module top_module(
input clk,
input rst,
input [31:0] data_in,
output reg [31:0] data_out
);
sub_module_1 u_sub_module_1 (
.clk(clk),
.rst(rst),
.data(data_in),
.out(temp)
);
sub_module_2 u_sub_module_2 (
.clk(clk),
.rst(rst),
.data(temp),
.out(data_out)
);
reg [31:0] temp;
endmodule
相对而言,上下文外综合只综合设计中的子模块,而不包括顶层模块。尽管上下文外综合所需的时间较短,但其时序分析和优化的效率可能会受到影响。