打印

求教一个简单的VHDL 问题

[复制链接]
1493|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
奋斗1008|  楼主 | 2012-5-8 23:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
VHDL, ev, dc, AN
if( clkin'event and clkin = '1' )then

count<=count+1;

if(count=10) then

count1<=count1+1;

count<=0;

if(count1=10)then

count2<=count2+1;

count1<=0;

if(count2=10)then

count3<=count3+1;

count2<=0;

if(count3=10)then

count4<=count4+1;

count3<=0;

if(count4=10)then

count5<=count5+1;

count4<=0;

if(count5=10)then

count5=0;

end if;

end if;

       end if;

end if;

end if;

end if;
这个能实现要求吗  计数

end if;

相关帖子

沙发
奋斗1008|  楼主 | 2012-5-8 23:08 | 只看该作者
晕 格式全没了  我就实现一个计数器功能 有什么格式上的错误吗

使用特权

评论回复
板凳
奋斗1008|  楼主 | 2012-5-8 23:19 | 只看该作者
没人吗 急求:'(

使用特权

评论回复
地板
kdurant| | 2012-5-9 08:53 | 只看该作者
仿真了吗?

使用特权

评论回复
5
GoldSunMonkey| | 2012-5-9 11:42 | 只看该作者
我觉得语法没问题,
你仿真看下结果。

使用特权

评论回复
6
sunshine123| | 2012-5-12 17:22 | 只看该作者
我的观点也不成熟,只是为了交流一下,活跃一下气氛,希望大家批评指教。
你是不是想让低位计数到9,再过一个时钟就回到0同时向高位进位?如果是这样的话,你写的代码是不行的。
我认为,问题有两个:
1、条件“countx=10”是有问题的,应该改成“countx=9”。
2、你写的代码会出现竞争,比如count=10的下一个状态不确定,一方面会变成0,另一方面会变成11。
我认为代码应该这样写:
if( clkin'event and clkin = '1' )then
if(count=9) then
    count<='0';
    if(count1=9) then
        count1<='0';
        ……
     ……
     --得这么一层层嵌套下去
    else
        count1<=count1+1;
    end if;
else
    count<=count+1;
end if;

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

53

帖子

1

粉丝