Vivado綜合屬性系列之八 DIRECT_ENABLE DIRECT_RESET
一、前言
? ? ? ? ?在Vivado 2019之前的版本中,對于設(shè)計中觸發(fā)器的使能端口和復(fù)位端口是會自動接地,如果需要接設(shè)計端口,如果要直連觸發(fā)器對應(yīng)的使能端口和復(fù)位端口,則要通過屬性。
二、DIRECT_ENABLE、DIRECT_RESET
????????2.1 屬性說明
屬性的作用對象為PORT或NETS,使用樣例:
(* DIRECT_ENABLE="YES/NO" *)input ce;
(* DIRECT_RESET="YES/NO" *)input rs;
在XDC文件中使用時:set_property direct_enable yes [get_nets?-of [get_ports ce] ]
????????2.2 工程代碼
module DIRECT_CE_RS( d0,d1,ce,rs,clk,out0,out1? );
input d0,d1,ce,rs,clk;
output out0,out1;
reg out0,out1;
always@(posedge clk)
if(ce)
? ? out0<=d0;
always@(posedge clk)
begin
if(rs)
? out1<=1'b0;
else
? out1<=d1;
end
endmodule
????????2.2 綜合結(jié)果
vivado2019之前的版本中,兩個觸發(fā)的ce和rs端口將接地,直接對應(yīng)的添加屬性DIRECT_ENABLE/DIRECT_RESET將綜合出下圖效果。Vivado 2019及之后的版本,無屬性也將自動連接。

標簽: