同步复位及异步复位设计
出处:lai832 发布于:2008-09-12 14:28:03
关于复位设计,有多种不同的观点和方案。到底是采用同步复位还是异步复位,全局复位还是局部复位,是由多方面的因素决定的。但良好的复位设计既可以提高系统的可靠性,又可以节省大量的逻辑资源。在实际应用中,笔者也看到过很多因为设计问题而导致的系统可靠性问题。本节针对这几个问题加以说明,希望读者能够找到适合自己设计的复位设计方案。
复位要解决的问题就是让电路在上电之后有一个确定的初始状态,而很多时候我们设计的复位电路没有能够达到这个效果。
(1)同步复位的优点是同步的。
对于非时钟沿的毛刺不敏感。
对于软件进行的时序分析有好处,可以保证设计在复位的设计上没有时序问题。
(2)同步复位的缺点需要一个时钟。
在某些AS和FPGA的设计中要在datapath上插入复位逻辑。
(3)异步复位的优点
不需要在datapath上插入复位逻辑。
(4)异步复位的缺点是异步的。
因为是异步的,所以工具不自动对路径进行时序约束和检查,可能会有时序问题而导致功能不正常。
针对以上同步和异步复位的分析,不同的设计者针对自己的应用有如下两个观点。
(1)坚持同步复位,而忽略其对逻辑资源造成的影响,保证功能。笔者以为在FPGA设计中,同步复位的是较为优化的方案。它的一个缺点是需要在datapath上增加额外的逻辑,这点对FPGA来说没有问题。因为FPGA的都可以选择成同步复位或异步复位,所以不需要在datapath上增加额外的逻辑。也许有人以为,同步复位的时序很难满足,因为复位信号的扇出及延时会很大,我们将在后面详细阐述如何避免这个问题。
(2)异步复位,对于因此可能造成的寄存器复位的初值不对的问题,采用将同步化了的异步复位信号连到寄存器的异步复位端的这种办法来避免,如图所示。
图 异步复位的同步化设计
笔者认为,如果能够约束好reset路径的时延,避开reset撤销沿和时钟的沿,这是一个很好的方案,可以有效去除reset release时导致的寄存器复位状态的错误。但是这个方案的一个问题就是reset路径的延时和skew需要约束,因为是异步复位,约束工具不会自动地来进行约束处理。
上一篇:系统时钟的设计
版权与免责声明
凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,//tgdrjb.cn,违反者本网将追究相关法律责任。
本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。
如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
- 什么是树莓派?一文快速了解树莓派基础知识2025/6/18 16:30:52
- 什么是有机液分析与有机液知识介绍2025/6/7 16:31:44
- FPGA中的双线性插值算法2025/5/29 17:16:30
- keil4和keil5的区别,哪个好?2025/5/22 17:03:33
- MOLEX 441331000高密度板对板连接器技术解析2025/4/24 11:24:50