以下都是我在编程时发现的问题,总结一下,怕以后忘了,以我目前的水平不明白类似关键路径,组合数目什么高深理论,这都是我从实际中学到的,比看书学的印象深刻得多.慢慢来吧,我想我以后也会明白那些高级的东西了!
一....尽量不要使用"大于""小于"这样的判断语句, 这样会明显增加使用的逻辑单元数量 .看一下报告,资源使用差别很大.
例程:always@(posedge clk)
begin
count1=count1+1;
if(count1==10000000)
feng=1; //no_ring
else if(count1==90000000)
begin
feng=0; //ring
count1=0;
end
end //这么写会用107个逻辑单元
// 如果把这句话if(count1==10000000)改成大于小于,报告中用了135个逻辑单元
二.....一定要想尽办法减少reg寄存器的长度
上次把[30:0]改到[50:0],报告里逻辑单元从100多直升到2000多!!!太吓人了,至于为什么我就不知道了哈!
|