将reg SCLK2X直接作为if的判断:
wire test2;
assign test2 = SCLK2X;
always @(posedge Clk, negedge Rst_n) begin
if (!Rst_n) DAC_SCLK <= 1'b1;
else if (en) begin
if (SCLK2X) DAC_SCLK <= ~DAC_SCLK;
else DAC_SCLK <= DAC_SCLK;
end else DAC_SCLK <= 1'b1;
end
将与SCLK2X相同的wire信号test2作为if的判断:
wire test2;
assign test2 = SCLK2X;
always @(posedge Clk, negedge Rst_n) begin
if (!Rst_n) DAC_SCLK <= 1'b1;
else if (en) begin
if (test2) DAC_SCLK <= ~DAC_SCLK;
else DAC_SCLK <= DAC_SCLK;
end else DAC_SCLK <= 1'b1;
end
reg直接做判断:
很奇怪的现象,没见过。