在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2283|回复: 4

新手求助这个verilog程序哪一段代码最消耗电路资源

[复制链接]
发表于 2006-11-7 08:42:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
这个程序主要功能是输入一个16MHz的信号,输出不同频率的波形:先是5个周期为A占空比为437/512的波形,然后是个周期为A占空比为38/512的波形,最后是20个周期为B占空比为75/1024的波形。
module test4(clkin,clkout);
parameter M=512;
parameter L=1024;
parameter N=2**16;
input clkin;
output clkout;
reg clkout;
integer count;
integer hcount;
integer i=0,j=0,k;
//***********************************//
always @(posedge clkin)begin
  begin
      if (i==N-1)
         i=0;
       else
         i=i + 1;
  end
begin
for (j=0;j<5;j=j+1)
begin
  count=i-M*j;
if (i<=2560)   
  begin
        if (count==(M-1))
           count=0;
         else
              count=count + 1;
    if (count==437)
        clkout<=1;
    else if (count==511)
     clkout<=0;
  end   
else if(i<=5120)
  begin
         if (count==2560+(M-1))
          count=2560;
           else
           count=count + 1;
     if (count==2598)
       clkout<=1;
     else if (count==3071)
    clkout<=0;
  end
end  
end
begin
for (k=0;k<20;k=k+1)
begin
hcount=i-L*k;
if(i>5120)  
  begin
         if (hcount==5120+(L-1))
          hcount=5120;
           else
           hcount=hcount + 1;
     if (hcount==5195)
       clkout<=1;
     else if (hcount==6143)
    clkout<=0;
  end  
end
end
end
endmodule
发表于 2006-11-7 09:55:15 | 显示全部楼层
上面的程序能跑吗?好像有问题呢,不能用for语句吧。
 楼主| 发表于 2006-11-7 13:53:42 | 显示全部楼层
可以跑得
但是超级的慢
发表于 2006-11-7 14:28:07 | 显示全部楼层
都快看晕了,怎么不用case语句呢,应该好点吧
发表于 2006-11-7 14:51:44 | 显示全部楼层
可以作一下Power Analysis。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-17 19:40 , Processed in 0.017080 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表