好的。
第一个16位的计数器如下,将其注销与否对程序资源占用率没有太大影响
always @(posedge SYSCLK or negedge RST_B)
if (!RST_B) Half_period_CNT<=`UD 16'h0;
else Half_period_CNT<=`UD Half_period_CNT_N;
always @(*)
begin
if (TX_finish_sin)
Half_period_CNT_N=Half_period_CNT+1'h1;
else if(TX_finish_sin==0)
Half_period_CNT_N=16'h0;
else Half_period_CNT_N=Half_period_CNT;
end
我上面问题中的计数器,就是从13位到14位资源占用率变化很大的那个计数器如下:
always @(posedge SYSCLK or negedge RST_B)
if (!RST_B) Data_pack_cnt<=`UD 13'h1fff;
else Data_pack_cnt<=`UD Data_pack_cnt_N;
我明白您的意思,但是我在同一个程序里还有另外一个计数的寄存器,16位的,它注销与否资源占用却不会变化多少,不知道这是什么原因呢。谢谢您的回答
好的。
第一个16位的计数器如下,将其注销与否对程序资源占用率没有太大影响
always @(posedge SYSCLK or negedge RST_B)
if (!RST_B) Half_period_CNT<=`UD 16'h0;
else Half_period_CNT<=`UD Half_period_CNT_N;
always @(*)
begin
if (TX_finish_sin)
Half_period_CNT_N=Half_period_CNT+1'h1;
else if(TX_finish_sin==0)
Half_period_CNT_N=16'h0;
else Half_period_CNT_N=Half_period_CNT;
end
我上面问题中的计数器,就是从13位到14位资源占用率变化很大的那个计数器如下:
always @(posedge SYSCLK or negedge RST_B)
if (!RST_B) Data_pack_cnt<=`UD 13'h1fff;
else Data_pack_cnt<=`UD Data_pack_cnt_N;
always @(*)
if(TR_CONTROL_CS==RX_FINISH)
Data_pack_cnt_N= 13'h1fff;
else if(TR_CONTROL_CS==RX_HEAD)
Data_pack_cnt_N= 13'h0;
else if(HEAD_ERR_internal)
Data_pack_cnt_N=Data_pack_cnt+1'h1;
else Data_pack_cnt_N=Data_pack_cnt;
谢谢各位了!!
一周热门 更多>