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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2615|回复: 10

[求助] 请教一个很低级的问题

[复制链接]
发表于 2021-4-7 17:33:06 | 显示全部楼层 |阅读模式

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

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

x
always @(posedge clk or negedge rst)
begin

if(rst==1'b0)
  xx_reg<=0;
end

end

前面当clk的上升沿,如果rst==1'b0  这是同步复位,这个没疑问

or后面,在rst的下降沿 判断rst自己的状态,这里有很大的疑问啊



问题.png
发表于 2021-4-7 18:04:30 | 显示全部楼层
貌似是异步复位
发表于 2021-4-7 18:18:15 | 显示全部楼层
这是异步复位的标准描述,不管有没有CLK沿,只要rst下降,就清零;
发表于 2021-4-7 19:25:51 | 显示全部楼层
三楼说的对
 楼主| 发表于 2021-4-8 10:08:53 | 显示全部楼层


hzhou 发表于 2021-4-7 18:18
这是异步复位的标准描述,不管有没有CLK沿,只要rst下降,就清零;


知道这是异步复位,但在某个信号的边沿变化驱动下,检测这个信号自身的状态总感觉不严谨,或者说存在不确定性。
发表于 2021-4-8 10:25:09 | 显示全部楼层


chen3ten 发表于 2021-4-8 10:08
知道这是异步复位,但在某个信号的边沿变化驱动下,检测这个信号自身的状态总感觉不严谨,或者说存在不确 ...


这只是Verilog仿真器相对实际硬件电路的一种等效处理方式,得区分硬件电路和HDL仿真的不同。
 楼主| 发表于 2021-4-8 13:47:39 | 显示全部楼层
本帖最后由 chen3ten 于 2021-4-8 14:03 编辑

always@(posedge clk or negedge rst_n)
begin
        if (rst_n == 1'b0)
                xx_reg <= 1'd0;
        else
                xx_reg <= 1'd1;
end


这段代码通过看RTL图,实际是不存在,在rst下降沿判断rst自身状态的不确定性

实际也不存在“同步复位”,完全是“异步复位”

verilog.png
发表于 2021-5-22 14:43:31 | 显示全部楼层
请不要使用软件设计的思维来考虑硬件描述语言,也不要自己臆想代码的实现,设计者应该直接观察综合后的硬件电路图来把实际的硬件实现和自己代码联系起来。
发表于 2021-5-24 16:11:12 | 显示全部楼层
HDL是硬件描述语言不是硬件设计语言,先有物理可实现的电路,然后为了(相对于画图)能更方便开展设计和数据交互才有了用文本字符描述已有设计的方式。你就认为这是一种规定吧。
发表于 2021-5-24 21:00:03 | 显示全部楼层


chen3ten 发表于 2021-4-8 10:08
知道这是异步复位,但在某个信号的边沿变化驱动下,检测这个信号自身的状态总感觉不严谨,或者说存在不确 ...


最简单的可以直接去看一个D触发器的门电路,异步复位端口一旦使能,直接就清零了,这是门电路决定的,不存在所谓的“检测下降沿状态”这一说。硬件描述语言只是在描述这一现象而已,最终要回归到电路上!不要使用软件设计的思维来考虑硬件描述语言。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

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

GMT+8, 2024-5-5 08:07 , Processed in 0.029860 second(s), 7 queries , Gzip On, Redis On.

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