首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
FPGA/CPLD可编程逻辑
» 认识FPGA触发器的亚稳态
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
认识FPGA触发器的亚稳态
发短消息
加为好友
yuyang911220
当前离线
UID
1029342
帖子
9914
精华
0
积分
4959
阅读权限
90
在线时间
286 小时
注册时间
2014-5-22
最后登录
2017-7-24
论坛元老
UID
1029342
性别
男
1
#
打印
字体大小:
t
T
yuyang911220
发表于 2016-8-4 17:03
|
只看该作者
认识FPGA触发器的亚稳态
触发器
,
高电平
边沿型触发器的输出有两个稳定状态: 高电平或者低电平。为保证可靠操作,必须要满足触发器的时序要求,也就是我们熟知的建立时间和保持时间。如果输入信号违反了触发器的时序要求,那么触发器的输出信号就有可能会出现非法状态---亚稳态。亚稳态是一种不稳定状态,在一定时间后,最终返回到两个稳定状态之一。亚稳态输出的信号是什么样子的? 对于系统有什么危害? 如果降低亚稳态带来的危害?这是下面要探讨的问题。[文中有几张图片对于了解本文很关键,如果不能显示,请参考博客相册中topic2.png]
亚稳态的特点
:
1.
增加触发器进入稳定状态的时间。
亚稳态的坏处之一是会导致触发器的TCO时间比正常情况要大。多出来的时间tR (resolution time)就是亚稳态持续的时间,参考图1。如果触发器的时序要求tSU(建立时间)和tH(保持时间)被满足,那么触发器的延时TCO=tCO_norm;否则如果违反了触发器的时序要求,那么触发器在经过tCO_norm时间后,进入亚稳态,亚稳态持续的时间叫做resolutiontime,标识为tR。tR过后,亚稳态返回到两个稳定状态之一。
数据的跳变距离触发器的采样时刻越近,tR就越大。这种关系参见图2.
器件制造商给出的
tSU
和
tH
指标都是有余量的。轻微的违反
tSU
或者
tH
并不会发生亚稳态,只是导致触发器的
tCO
超出器件的规范
(spec)
。只有当数据的跳变出现在亚稳态捕捉窗口
W(
见图
2
中的
W
,
fs
级别的时间窗口
)
,才会发生亚稳态。总的来说,数据的跳变越靠近
W
窗口
,
触发器进入稳定态的时间就越长。
在同步设计中,源触发器
(Source FlipFlop)
的输出必须在一个时钟周期内稳定下来,才能够被目的触发器
(DestinationFlipFlop)
准确采样。如果
tR
过大,可能让目的寄存器采样到亚稳态,会导致亚稳态的传播。
2.
输出毛刺、振荡、或中间电平
经过一段时间之后,亚稳态返回到稳定状态。有可能返回到高电平,也有可能返回到低电平,这和输入的数据无关。且在亚稳态的过程中,触发器的输出可能在震荡,也可能徘徊在一个固定的中间电平上。我们来看一个真实案例。见图3.
在这个案例中,我们测试一个FPGA逻辑单元中的亚稳态现象。在测试中,我们让sel信号固定在0,那么逻辑关系为 F1<= local_2m输入,F0 <=local_2m输入,local_2m和cdr_2m都是2MHz的方波信号,被一个50MHz的异步时钟作同步化处理。Verilog代码为:
always @(posedge clk_50m)
if(sel==1)begin
clk2m_oa<= cdr_2m ;
clk2m_ob<= cdr_2m ;
end
else begin
clk2m_oa<= local_2m ;
clk2m_ob<= local_2m ;
end
测试中我们发现触发器的输出clk2m_ob上偶尔有毛刺出现,但是触发器的输入F1和F0上并没有毛刺。而且这个毛刺和下一个clk2m_ob跳变沿的间隔刚好是50MHz的一个周期20nS。参考图4,红色为F1,黄色为clk2m_ob。
我们来分析下这个毛刺。由于
2MHz
输入信号
local_2m
和
50MHz
时钟
clk_50m
是异步的,因此毫无疑问会有亚稳态的出现。当亚稳态出现的时候,触发器的输出一开始随机震荡到高电平,但很快亚稳态结束,并返回到
”
错误的
”
低电平状态。于是就表现为毛刺。如果想从门电路角度解释为什么会出现毛刺,可以参考文献
[5].
在测试中,每大约一小时,
clk2m_ob
就会出现一次这样的毛刺。可以看出亚稳态的捕捉窗口是非常小的。这个实验中大约发生了
60 minutes * 60seconds/20nS = 180*10^9
次采样。因此捕捉窗口的大致范围为
20nS * (2/25) /(180*10^9) ~= 9 *10^(-12) s = 9 fs.
这么高的精度,没有任何仪器可以精确模拟,这也是为什么亚稳态现象只能用统计的方法去研究的原因。
另一方面,同样的电路功能,
clk2m_oa
却从来没有出现过这样的毛刺。这说明亚稳态掉表现形式不是固定的。猜测
clk2m_oa
的亚稳态表现为中间电平的形式,并最终返回到
”
正确
”
的状态。由于
tR
时间非常短,并且亚稳态和信号的边沿混和在一起,无法和正常情况进行区分。根据
XAPP094
的解释,亚稳态的表现是和器件的
PVT(
制作工艺
Process
,电压
Voltage
,温度
Temperature)
相关的,并且和具体电路的增益,噪声相关。如果是这样,
clk2m_oa
和
clk2m_ob
的各自触发器的或增益或噪声是有差异的,所以表现不一致。
3.
亚稳态返回到哪一个稳定态是不可预测的,而且和输入数据无关。
亚稳态返回到哪一个稳定态是不可预测的,和输入数据无关。因此假设亚稳态较快的返回,目的寄存器(destinationFF)能够采样到稳态电平,也可能采样到错误的电平,导致系统功能错误。
收藏
分享
评分
继承事业,薪火相传
回复
引用
订阅
TOP
返回列表
MCU 单片机技术
资料共享
数字电路
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议