首页 | 供应信息 | 求购信息  | 下载系统 | 技术资讯 | 企业信息 | 产品信息 | 论文信息 | 展会信息 | 在线工具
作者: 发布时间:2017-01-03 来源: 繁体版
通常如果你的设计在较低时钟频率时通过了仿真,但是在较高时钟频率时却失败了,你的第一个问题应该是你的设计在某个较高时钟频率时是否达到了时序约束的要求。 然而这里我们将举这样一个例子,就是对于某个较高时钟频

通常如果你的设计在较低时钟频率时通过了仿真,但是在较高时钟频率时却失败了,你的第一个问题应该是你的设计在某个较高时钟频率时是否达到了时序约束的要求。If6自动化在线网

然而这里我们将举这样一个例子,就是对于某个较高时钟频率你已经检查了静态时序分析(STA),而且时序约束也是正确的。If6自动化在线网

这种情况是什么引起的较高时钟频率仿真失败呢?If6自动化在线网

可能的原因就是仿真方式、设计本身或者testbench设置方式有问题。If6自动化在线网

然而在较低时钟频率通过了仿真这个事实就排除了设计/testbench/仿真在设置上的问题。If6自动化在线网

排除了上面两项,下一个可能就是脉冲拒绝(reject)或者脉冲错误。If6自动化在线网

“脉冲拒绝(reject)”和“脉冲错误”是Verilog仿真中的概念。If6自动化在线网

这些概念说的是脉冲的持续时间小于某个值(pulse_r)就不会通过某个电路元件。If6自动化在线网

当然脉冲持续时间大于pulse_r,但是如果小于另一个值pulse_e尽管会通过,但是在仿真中显示的是“x”。If6自动化在线网

这个持续时间是以通过某元器件延迟的百分比来表示的。If6自动化在线网

比如通过某元件的延迟是1ns。If6自动化在线网

0.5ns的脉冲表示为50%的持续时间。If6自动化在线网

现在假设设计采用的频率是200MHz。If6自动化在线网

对应的周期就是5ns。If6自动化在线网

那么一半就是2.5ns。If6自动化在线网

在仿真中时钟每隔2.5ns变化一次,也就是时钟脉冲的宽度是2.5ns。If6自动化在线网

让我们假设内部时钟网络某一脉冲宽度是2.8ns(也就是大于2.5ns)。If6自动化在线网

分析结果,pulse-duraTIon(脉冲持续时间)《100%。If6自动化在线网

这个脉冲可能就会被“拒绝(rejected)”,也就是说尽管时钟信号能够到达某个具体网络的输入端,但是却不能从这个网络输出。If6自动化在线网

因此尽管STA分析显示200MHz很合适,但是仿真却不能通过。If6自动化在线网

设计其他模块将不能获得时钟脉冲。If6自动化在线网

解决这个仿真问题的方法是在仿真设置中修改脉冲拒绝和错误(reject/error)限制。If6自动化在线网

例如在ModelSim中我们可以设置:If6自动化在线网

+transport_path_delays +transport_int_delays +pulse_r/0 +pulse_e/0If6自动化在线网

后续操作还有:If6自动化在线网

1.将pulse-rejecTIon限制修改为0。(不会拒绝任何一个脉冲)If6自动化在线网

2.将pulse-error限制修改为0。(脉冲宽度低于某个值时不会显示输出为“x”)If6自动化在线网

同时要将interconnect延迟模式修改为transport,其实是修改了脉冲滤波选项。If6自动化在线网

最后的问题是我们做这么多的修改就是为了能通过仿真测试吗?If6自动化在线网

在真正的硅片中的实际情况是怎样的?If6自动化在线网

在硅片中大部分内部互连线在每隔几皮秒后就会设置一个repeater(中继器)。If6自动化在线网

因此几纳秒的脉冲会顺利通过(合适的延迟),这不会存在问题。If6自动化在线网

具体出现问题的情形可能是这样的:If6自动化在线网

1.频率增加(脉冲宽度更小了)If6自动化在线网

2.器件尺寸增加(某个路径的内部延迟可能变大了,导致内部延迟时间大于脉冲达到的传输时间)If6自动化在线网


引起的较高时钟频率仿真失败原因
评论】【加入收藏夹】【 】【关闭
※ 相关信息
无相关信息
※ 其他信息
访问数: | 共有条评论
发表评论
用户名:
密码:
验证码: 看不清楚,点击刷新
匿名发表

 搜索新闻
[提交投稿]  [管理投稿]
 最新新闻
 热点新闻
数据加载中..

网站地图
Autooo.Net 版权所有
Copyright © 2007--2017 All rights reserved