论文部分内容阅读
从事多时钟ASIC设计首先需要了解信号在传输中的稳定性。数据的跨时钟域传输对于长期仅接触同步时序设计的设计者而言是一个巨大的挑战。如果对其中出现的特殊问题估计不足,将对设计造成灾难性后果。数据跨时钟域传输时如何保持系统的稳定,顺利完成数据的传输是每个设计者都需要关注的问题。同时随着近年来SOC的流行,异步电路设计的兴起和异步电路设计方法的完善,使得数据异步传输的方法也成为研究的重点。在这样的背景下,本文就实际应用中所遇到的异步时钟域数据同步问题进行了研究,主要探讨了以下几个方面:1、单一信号跨时钟域传输的问题跨时钟域的信号传输不可避免的会遇到亚稳态。本文讨论了亚稳态的形成,分析了针对单一信号的解决方案。随后从电路系统的角度介绍了实现异步时钟电路之间信号握手的方式,阐述了普通数据路径设计的思想。最后给出了两种针对特殊情况使用的数据同步设计。2、总线信号跨时钟域传输的问题首先介绍了高级数据路径设计的思想。随后以异步FIFO(First In First Out)缓冲存储器(以下简称异步FIFO)为例来讨论总线信号的跨时钟域传递的问题。对于两个数据接口不匹配的系统间总线数据传输的问题,异步FIFO是一种优秀而有效的解决方案。但是除了亚稳态的问题以外,异步FIFO的设计还存在很多颇具挑战性的问题。文中共采用了四种设计方案来实现通用异步FIFO的RTL级设计,并进行了功能仿真和门级综合实现。最后讨论了各自的优缺点,为设计者选择合适的方案提供了重要的参考。3、成功设计了“CF卡控制器”IP核中的数据缓冲模块在本设计中使用了以两个协同对称的异步FIFO为基础构成的数据缓冲模块来实现CFHC(Compact Flash card Host Controller)IP核的数据位宽转换、缓冲存储及传输等任务。其中所设计的异步FIFO较好地达到了设计指标。综上所述,本文对异步时钟域的数据同步进行了较深入的研究,讨论了亚稳态,地址毛刺,空/满标志产生等常见问题的解决方案,并以之为理论基础成功实现了项目的设计指标。