原创 请求帮忙

2009-10-24 11:19 1086 2 3 分类: FPGA/CPLD

这两天想实现一个计数器的功能,能够根据给定的输入值来输出相应宽度的高低电平,但是仿真的结果总是不对,现贴出程序,希望大家帮帮忙!


`timescale 1ns/1ns
module lb_counter(clock,dout,dout1,dout2);


parameter data_width=3;
input wire [data_width:0]din;
input wire enable,load,clock;


output reg[3:0] dout;//输出计数值
output reg dout1,dout2;//希望产生对应高低电平的输出信号端
initial
 begin
  dout="0";//这个地方的设置不知道有没有问题


  dout1=1;
  dout2=0;
 end
always@(posedge clock)
  begin
     if(load)//load//信号来加载输入
       dout<=din;
     else if(enable)//使能信号来开始计数
        dout<=dout+1;
     else if(dout==1111)//输出的计数值为1111时改变另外两个输出端的值,感觉
       begin                    //写的像C语言,不清楚在这里可不可以
       dout1<=0;
       dout2<=1;
       end
  end
endmodule

PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

用户972891 2009-10-30 16:06

你这根本仿真不了,时钟都没建立!
相关推荐阅读
用户230043 2009-10-22 23:39
新人,请多指点
今天刚开通EDN的帐号,源于在Google上搜到了一篇还不错的文章,然后顺藤摸瓜就申请了这个号,主要目的是想跟大家交流学习,因为小弟对这方面的东西还是很感兴趣的,故希望结识大批同道中人,大家共同讨论,...
EE直播间
更多
我要评论
1
2
关闭 站长推荐上一条 /3 下一条