|
发表于 2022-11-16 23:13:57
|
显示全部楼层
本帖最后由 thjan65 于 2022-11-16 23:34 编辑
RTL 出現某些地方用 @(posedge clock) 某些地方用 @(negedge clock). 這是可以的.
如果DFT compiler時, 使用MIX EDGE 選項, 則 tool 會自動處理.
但某些人偏好要求Scan chain pre/post sim時, D-FF 輸出都是 posedge.
這就需要一些技巧了, 個人看過以下二種做法.
(1)
assign CLK = dft_mode ? dft_clk : CLK_in;
assign CLK_n = dft_mode ? dft_clk : ~CLK_in;
原來的always @(negedge CLK) 此時改寫成 always @(posedge CLK_n)
(2)
assign CLK1 = dft_mode ? ~dft_clk : CLK_in;
原先的always @(negedge CLK) 此時改寫為always @(negedge CLK1)
|
|