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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

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

[求助] Verilog请教

[复制链接]
发表于 2011-6-3 21:18:36 | 显示全部楼层 |阅读模式
10资产
是状态机的一个状态,仿真时状态也跳到这个了,我主要想从端口si接收数据存入state,然后再处理。si位宽1,state位宽3,接收连着的三个数据,可仿真时i一直为0,没有往下运行,请指导下,谢谢。
SHIFT:
              begin
                //shift_error<=0;
                if(capture_signal)
                  begin
                      if(i<command_length)
                        begin
                          state[i]<=si;
                          i<=i+1;
                        end
                      else
                        shift_error<=0;
                  end
                else
                  capture_error<=1;
             end

发表于 2011-6-4 08:26:59 | 显示全部楼层
本帖最后由 A1985 于 2011-6-4 11:47 编辑

可以吗?条件太少。
发表于 2011-6-4 09:43:51 | 显示全部楼层
可能的问题是:
1. capture_signal根本就没=1过。
2. command_length =0
3. 你在其它地方复位了或者锁定了i.


SHIFT:
              begin
                //shift_error<=0;
                if(capture_signal)
                  begin
                      if(i<command_length)
                        begin
                          state[i]<=si;
                          i<=i+1;
                        end
                      else
                        shift_error<=0;
                  end
                else
                  capture_error<=1;
             end
发表于 2011-6-4 14:48:50 | 显示全部楼层
本帖最后由 alexander21th 于 2011-6-4 14:52 编辑

问题如下:
    一般不建议这样写状态机,大多数都是采用三段式来写状态机,不建议在状态机中直接处理逻辑。if条件不是这样实现的,首先要确保两边的变量第一是一致的。
   这段代码觉得是以软件的方式写的。建议看看verilog语法书。

   还有退一步讲,就是 i 总是为0,要想动(采用软件方式)也得加for循环吧
发表于 2011-6-4 21:38:25 | 显示全部楼层
楼上的好好看看人家的描述!
第一:人家的逻辑部分没有状态迁移部分,这种写法还是很常规的;
第二:什么叫做"if条件不是这样实现的,首先要确保两边的变量第一是一致的。"啥意思!!!确实要建议你"看看verilog语法书";
最不理解的就是"退一步讲,就是 i 总是为0,要想动(采用软件方式)也得加for循环吧",无语!!!
我是觉得只是仿真,如果结果都不对除了判断条件不满足,很有可能是缺敏感信号,always @(....,i)
搂主得代码不全,的确很难诊断!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-12-23 01:53 , Processed in 0.026754 second(s), 8 queries , Gzip On, Redis On.

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