如何从0到1了解FPGA的上电复位

大家好,博主最近有事忙了几天,没有更新,今天正式回来了。那么又到了每日学习的时间了,今天咱们来聊一聊 简谈FPGA的上电复位,欢迎大家一起交流学习。

在基于verilog的FPGA设计中,我们常常可以看到以下形式的进程:

如何从0到1了解FPGA的上电复位

信号rst_n用来对进程中所用变量的初始化,这个复位信号是十分重要的,如果没有复位,会导致一些寄存器的初始值变得未知,如果此时FPGA就开始工作的话,极易导致错误。

那么,这个复位信号来自何处?难道我们做好的系统,每次上电后都要手动按一下reset按钮么?

答案是否定的!这个复位信号其实是由特定的程序来产生的,系统每次上电,都会由该程序产生一个复位信号,从而避免了手动复位。

在网上找了多种方案,觉得只有这个程序比较简单实用,转来如下:

如何从0到1了解FPGA的上电复位
如何从0到1了解FPGA的上电复位

说明:

1.第一个进程用来延时,当上电后,延时100ms,以保证FPGA内部达到稳定状态;此时sys_rst_n始终为0,也就是系统时钟处于复位状态中;

2.当100ms延时结束后,sys_rst_n与系统时钟同步释放,即sys_rst_n拉高,复位结束,系统开始正常工作。

今天就聊到这里,各位,加油。

《2018第四届中国硬件创新大赛华南分赛区(深圳站)决赛》

强强对决!争夺高交会全国总决赛入场券!

活动地点:深圳市福田区名堂·微谷众创社区路演厅

报名请扫描下方二维码↓

如何从0到1了解FPGA的上电复位


分享到:


相關文章: