找回密码
 注册
关于网站域名变更的通知
查看: 214|回复: 1
打印 上一主题 下一主题

流行的FPGA的上电复位

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-5-6 10:22 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
在实际设计中,由于外部阻容复位时间短,可能无法使FPGA内部复位到理想的状态,所以今天介绍一下网上流行的复位逻辑。) h' Y9 [0 Q6 ~7 `: l, z& R" o: ^

0 m3 K2 y8 ?( c# T在基于verilog的FPGA设计中,我们常常可以看到以下形式的进程:! }0 z( \5 o3 h$ a
9 E: e; |9 x+ H/ a8 Z

  _" i- a4 g. B9 E8 N' v  `8 ]% X0 P/ u
信号rst_n用来对进程中所用变量的初始化,这个复位信号是十分重要的,如果没有复位,会导致一些寄存器的初始值变得未知,如果此时FPGA就开始工作的话,极易导致错误。8 f; M6 ?% v0 N5 D& t, B

1 j7 i7 T# |- H% C  O0 B/ I2 Q, Z  n' }那么,这个复位信号来自何处?难道我们做好的系统,每次上电后都要手动按一下reset按钮么?
! s9 r  m  M/ x( Q, T' W3 ?; }3 m- Q& Y  o. Y+ t8 k6 C0 L
答案是否定的!这个复位信号其实是由特定的程序来产生的,系统每次上电,都会由该程序产生一个复位信号,从而避免了手动复位。
4 r( c7 r, _4 }/ D7 _. y2 G( j. ?& R3 b! q+ _: u
复位的方案很多,下面介绍一个简单方案。
8 C3 w: A4 `, V8 H1 {: O
4 ]) o; {% y4 r$ V
9 {4 G& R+ E8 n' f, N5 x. D3 ^: ^- ^: z3 N& a6 z( u

3 z  @& x3 X: J9 H! ]. x, D0 M' Mclk:50M时钟输入. S/ |1 ~# x. o* |; [5 s% Z

4 ?0 f7 x6 U( P: H9 Q$ o* xrst_n:异步复位输入; A3 N7 P; \- @4 d  {. }

" K8 x/ J- e% O0 I4 Fsys_rst_n:系统全局同步复位信号: f: p& S3 q5 ]3 k* p$ T) e
6 p: C4 h) V# S- O3 M# |1 ~
第一个进程用来延时,当上电后,延时100ms,以保证FPGA内部达到稳定状态;此时sys_rst_n始终为0,也就是系统时钟处于复位状态中;2.当100ms延时结束后,sys_rst_n与系统时钟同步释放,即sys_rst_n拉高,复位结束,系统开始正常工作。5 s. I$ h% _+ C* [- U7 r5 N
" ~% B, h  ?2 m2 |! I  g8 q
版权所有权归卿萃科技 杭州FPGA事业部,转载请注明出处
% O5 J7 x) M: s- h. J
# @$ S9 y9 T2 l* M9 x作者:杭州卿萃科技ALIFPGA
+ J3 L7 Q, s( U. t- _, h6 V; o; W& h! J  M9 A' i
原文地址:杭州卿萃科技FPGA极客空间
# e! t) r4 I( l- H  V$ P
1 y5 M" q9 @( \  r3 u& Y: _
$ b. U/ A9 }. M# N9 n8 Z

该用户从未签到

2#
发表于 2019-5-6 17:21 | 只看该作者
很棒的案例 谢谢楼主分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-1 23:34 , Processed in 0.109375 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表