硬件架构的艺术(三)时钟域

单时钟设计(同步设计),同多时钟设计相比,这样的设计容易实现,并且更少产生于亚稳态、建立与保持时间违背方面的问题。
多时钟域:(在多时钟域情况下,很容易出现一个时钟域的输出在另一个时钟域的时钟上升沿到来发生改变的情况,导致亚稳态的产生)
(1)时钟的频率不同
(2)时钟频率相同,但相位不同

多时钟设计的处理技术:
(1)时钟命名规则
例如:系统时钟可以命名为sys_clk,发送时钟可以命名为tx_clk,接收时钟可以命名为rx_clk,这样可以在脚本中使用通配符来对所有时钟进行操作。同样,属于同一个时钟域的信号,在命名时使用同样的前缀。
(2)分模块设计
1、每个模块在单个时钟下工作
2、在信号跨时钟域传输时,使用同步器模块,使进入某个时钟域内的模块信号,与该模块时钟保持同步
3、同步器模块规模尽可能小
在这里插入图片描述
跨时钟域:
(1)控制信号的传输
为减少亚稳态的影响,设计者最常用的方式是使用多级同步器,即两个或多个触发器串联起来组成的同步电路(使用两级同步电路就足以避免亚稳态的出现,只有在时钟频率非常高的设计中才要求使用三级同步器电路)
在这里插入图片描述
(2)数据信号的传输
数据经常从一个时钟域传输到另一个时钟域,保证数据正常地在不同时钟域间传输的两种方法:
1、使用握手信号的方式
2、使用异步FIFO

一、同频零相位差时钟
唯一要求:保证STA(静态时序分析)通过,如果这一条件满足,就不会出现亚稳态问题和数据丢失或不一致问题。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值