FPGA系统复位问题探讨
1.同步复位和异步复位的写法:
//======同步复位=======
always@(posedgeclk)
if(rst)
..........
elseif(....)
//======异步复位=======
always@(posedgeclkorposedgerst)
if(rst)
.........
elseif(......)
2.应该选哪个?
就实时性而言,异步复位较同步复位慢。就稳定性而言,个人感觉同步复位相对而言比较稳定。但是具体跟电路设计就我个人比较偏向于同步复位,FPGA内的一切逻辑都在统一的时钟下动作,系统比较稳定。而异步复位,个人感觉会破坏整个系统的时钟同步机制。但是好多xilinx官方文档采用的也是异步复位。所以,系统能否稳定工作关键还在于整个系统的设计架构。
3.为什么?
在异步复位的情况下,复位信号与时钟信号的相位不能确定,会造成亚稳态。
说简单点,寄存器是在时钟的上升沿变化的,这就要求输入寄存器的信号在时钟沿之后必须稳定一段时间,否则时钟沿也在变,输入数据也在变,就不清楚到底输出会变成什么了。
复位信号也会造成一连串信号的变化,因为复位信号的不确定,所以会造成这个问题。
4.推荐的做法
推荐的做法,并不是直接使用Reset,而是异步复位-同步释放。
这种电路比较复杂,实际情况中有简化。
如果你的系统时钟是连续的话,你可以使用将Reset信号打两拍,然后上BUFG的方式。
你如果这样做了,Xilinx的工具会去分析Reset信号的时序,从而防止亚稳态的产生;你如果使用异步复位,工具是没法分析的!!
华为/中兴这样的公司,因为设计很大,加上写代码的人风格不统一,所以他们实际是在顶层里面专门建立一个复位模块,然后把异步复位时序化,这个就比较复杂了。但是总的来说,是同步的,所以不管你的子模块是写的异步复位还是同步复位,全部都变成同步的。
关于坤驰科技:
坤驰科技是专注于高速数据采集与信号处理、高速数据存储与记录的高科技公司。坤驰科技为用户提供成熟的标准高速数据采集产品与技术,也可为用户提供定制化的高速信号采集解决方案。目前坤驰科技服务过的研究所、科研单位已达近百家。高速数据采集产品线涵盖PCIExpress、cPCI、PXIe、VPX、USB等总线,包含高速AD、DA平台、FPGA、DSP处理平台,SATA/SSD、Flash存储平台等。
全国咨询电话:400-000-4026
公司官方网站:http://www.queentest.cn
官方微博:http://e.weibo.com/queentest
官方微信:queentest或扫描:
相关资讯
同类文章排行
- Spectrum数字化仪新增SCAPP选项以加速和简化信号处理
- 高速ADC板卡QT1125在飞行时间质谱中的应用
- 高速数字化仪的信号处理功能简介
- 高速数据采集卡之PCI总线驱动
- 高速数据采集卡软件架构
- 基于FPGA高速数据采集的IODELAY调整探讨
- 基于光纤接口高速数据采集卡
- 高速数据采集系统中FPGA复位讨论
- 硬件研发部门采购小谈
- 芯片选型心得
最新资讯文章
- Spectrum仪器为危险火山预警系统提供ADC卡
- 坤驰科技应邀参加第九届国际新型光电探测技术及应用研讨会
- 数字化仪现在通过 GPU 提供连续的数字下变频
- 信号测试测量类产品手册
- 新型 PCIe 数字化仪结合了超快的速度、高分辨率和市场领先的流媒体
- ADC&TDC 模拟&时间/数字转换器的应用
- 高速信号同步采集系统
- 国际妇女节-愿你无惧时光,优雅到老
- 2023年度计划启动会
- 元宵佳节|阖家团圆