|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
本帖最后由 petrel87 于 2016-6-8 15:50 编辑
综合前代码,伪代码形态 .......
- b1<=send_grp;
- b2<=b1;
- if rst='0' then
- state<="10";
- send_grp<='0';
- else if 上升沿 then
- case (state )
- when "10"=>
- if link='0' then
- state<="00";
- end if;
- when "00" =>
- 跳到 01状态
- when "01" =>
- 跳到11状态
- when "11" =>
- when others =>
- state<="10";
- send_grp<='0';
- end case; end if;
复制代码
关键性就是测试b2的输出。而b2源于send_grp。
综合以后我仿真了一下,给link有0或者1时,send_data_grp值是St1或St0,然后给me_wr 不定态x时,send_grp为不定态Stx.
貌似是因为语句
if link='0' then
state<="00";
end if; if无法判定link是不是0,所以state就是不定态,然后send_grp就是不定态。
问题: state如果是0x,1x,x1....这些,按默认others都应该会执行
when others =>
state<="10";
send_grp<='0';
|
|