用Verilog 设计的同步复位,综合出来的结果却是异步复位的?

李锐博恩
嵌入式领域优质创作者
博客专家认证
2018-12-04 07:24:08
我用Verilog HDL描述的同步复位电路,为什么综合出来的电路确是异步复位的呢?
代码为:
module syn_reset(
input rst_n,
input clk,
input data_in,
output out
);

reg out;
always@(posedge clk)
begin
if(!rst_n)
out <= 1'b0;
else
out <= data_in;
end
endmodule
综合出来的电路为:

多谢大佬能够给出合理解释?使用ISE综合出来的电路为什么和我想的不一样?
...全文
845 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
小轩天尊 2020-05-01
  • 打赏
  • 举报
回复
引用 12 楼 李锐博恩的回复:
[quote=引用 10 楼 小轩天尊的回复:][quote=引用 9 楼 李锐博恩 的回复:] [quote=引用 8 楼 小轩天尊的回复:]应该搞成异步复位,同步释放吧。
上楼说的有道理,和异步复位,同步释放没关系[/quote] 我的意思是,不太支持使用同步复位这种风格的代码,更推荐使用异步复位同步释放的代码,这样更容易满足时序要求。[/quote] 各位说的都对,就是没针对原问题,一个简单的寄存器复位例子而已[/quote] 除了原问题,咱还可以做点扩展嘛
jgj58 2020-04-27
  • 打赏
  • 举报
回复
1、这个简单的verilog同步复位描述是正确的。 2、Quartus综合的RTL图也是正确的。 3、编译后出来的chip p'lanner图的寄存器就是带异步复位管脚的。但是不应该认为同步复位到这个管脚。 这里有一篇文章介绍的比较详细: https://blog.csdn.net/huan09900990/article/details/79419686
小轩天尊 2020-04-27
  • 打赏
  • 举报
回复
引用 9 楼 李锐博恩 的回复:
[quote=引用 8 楼 小轩天尊的回复:]应该搞成异步复位,同步释放吧。
上楼说的有道理,和异步复位,同步释放没关系[/quote] 我的意思是,不太支持使用同步复位这种风格的代码,更推荐使用异步复位同步释放的代码,这样更容易满足时序要求。
李锐博恩 2020-04-27
  • 打赏
  • 举报
回复
引用 10 楼 小轩天尊的回复:
[quote=引用 9 楼 李锐博恩 的回复:] [quote=引用 8 楼 小轩天尊的回复:]应该搞成异步复位,同步释放吧。
上楼说的有道理,和异步复位,同步释放没关系[/quote] 我的意思是,不太支持使用同步复位这种风格的代码,更推荐使用异步复位同步释放的代码,这样更容易满足时序要求。[/quote] 各位说的都对,就是没针对原问题,一个简单的寄存器复位例子而已
李锐博恩 2020-04-26
  • 打赏
  • 举报
回复
引用 8 楼 小轩天尊的回复:
应该搞成异步复位,同步释放吧。
上楼说的有道理,和异步复位,同步释放没关系
小轩天尊 2020-04-26
  • 打赏
  • 举报
回复
应该搞成异步复位,同步释放吧。
少了一颗门牙 2020-04-21
  • 打赏
  • 举报
回复
是因为ISE某些器件的D触发器自带了同步复位,所以看上去像异步复位。今天我们老师刚刚讲过哈哈
weixin_44302059 2019-06-21
  • 打赏
  • 举报
回复
楼主有联系方式吗?
李锐博恩 2018-12-18
  • 打赏
  • 举报
回复
引用 4 楼 迷雾绿洲 的回复:
把rst_n 与到数据上去,不然rstn 就是要慢一拍的

这个Verilog描述是没问题的,用Quartus综合出来的电路是对的:
fly 100% 2018-12-18
  • 打赏
  • 举报
回复
把rst_n 与到数据上去,不然rstn 就是要慢一拍的
李锐博恩 2018-12-04
  • 打赏
  • 举报
回复
引用 1 楼 zgl7903 的回复:
把 rst_n 也加到敏感信号中试试看
always@(negedge rst_n or posedge clk)
多谢回复,将复位信号加入敏感列表中就不是我设计同步复位的目的了,按理说,综合出来的电路图应该没有用到寄存器的复位端
李锐博恩 2018-12-04
  • 打赏
  • 举报
回复
多谢回复,如果rst_n放到敏感目录里面就不是我测试的目的了,那样综合出来的电路肯定是异步的,我想要的是同步复位,就是不用寄存器的专用复位端口clr。
zgl7903 2018-12-04
  • 打赏
  • 举报
回复
把 rst_n 也加到敏感信号中试试看
always@(negedge rst_n or posedge clk)


5,315

社区成员

发帖
与我相关
我的任务
社区描述
硬件使用专区,欢迎大家讨论硬件相关内容 宝藏!数字IC精品文章收录(CSDN近500篇) http://t.csdn.cn/QbivO
社区管理员
  • 硬件使用社区
  • 张江打工人
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧