采用 FPGA 时序模型保证硅片性能

采用 FPGA 时序模型保证硅片性能
采用 FPGA 时序模型保证硅片性能
白皮书
WP-01139-1.0
Altera ®时序模型是验证 FPGA 设计时序简单方便的手段,它不需要进行全面的物理电
信号提取和仿真。 65-nm 和最新 FPGA 三种不同的工作边角涵盖了推荐工作条件下的所
有时序延时。
引言
设计人员怎样才能精确的预测全定制集成电路的时延呢 ? 这一问题的答案是 “不那么
容易”。 在集成电路中,有很多因素限制了对时延进行精确建模,增加了复杂度。 这
些因素包括具有非线性和复杂模型的物理现象,以及各种各样的大批量硅片等,而且
在各种有效工作条件 ( 电压、温度、工艺等 ) 下都会出现这些现象。 Altera 开发了一
种方法,能够精确预测在其 FPGA 中实现的所有设计的时延。
为能够在 FPGA 中精确的建立时延模型,Altera 同时使用了两种工具:Altera
Quartus ® II 开发软件中的静态时序分析工具,名为 TimeQuest 时序分析器,以及专用
电路仿真器,它为每一 FPGA 提供了延时数据库。 仿真器结合延时数据库 ( 含有时延 )
也被简单的称为时序模型。 时序模型用于 FPGA 整个设计编译过程中,包括综合、布局
布线直至时序仿真和分析,因此,它在 FPGA 设计流程中扮演了重要的角色。 本白皮书
简要介绍时序模型的开发,阐述 Altera FPGA 设计流程中时序模型的重要性。
时序模型元件及其特性
每一 FPGA 都有自己独特的时序模型,含有器件中所有物理单元全部的必要延时信息,
例如,组合自适应逻辑模块、存储器模块、互联和寄存器等。 延时涉及到目标 FPGA 工
作条件下的所有有效组合。 而且,取决于单元模式或者配置,每一单元都会有不同的
延时信息。 本质上,时序模型是 FPGA 中物理延时基于软件的表征。 为提高模型精度,
减少运行时间,采用两种方法来产生模型延时信息:延时数据库和专用电路仿真器。
延时数据库
为其他 Quartus II 优化和分析引擎提供时序模型的第一种方法是延时数据库。 这一数
据库常用于存储 FPGA 架构中逻辑和硬核 IP 模块的延时,它是可配置能力有限的 FPGA
体系结构的主要组成。 延时数据库涉及到这些模块所有可能的配置,还与模块之间不
同的性能和延时有关,这些模块的功能相同,但是在芯片上以不同的物理方法实现 (
例如,不同的布板 )。 这一方法的主要优势是较短的延时查找时间,也就意味着
TimeQuest 时序分析器较短的运行时间。
101 Innovation Drive
San Jose, CA 95134
www.altera.com
2010 年 8 月
版权 © 2010 Altera 公司。保留所有权利。 ALTERA、 ARRIA、 CYCLONE、 HARDCOPY、 MAX、
MEGACORE、NIOS、QUARTUS 以及 STRATIX 均在美国专利和商标事务所进行了注册,是 Altera 公司在美
国和其他国家的商标。所有其他商标或者服务标记的所有权属于其各自持有人,
www.altera.com/common/legal.html 对此进行了解释。Altera 保证当前规范下的半导体产品性能与 Altera 标
准质保一致,但是保留对产品和服务在没有事先通知时的升级变更权利。除非与 Altera 公司的书面条款完全一
致,否则 Altera 不承担由此处所述信息、产品或者服务导致的责任。 Altera 建议客户在决定购买产品或者服
务,以及确信任何公开信息之前,阅读 Altera 最新版的器件规范说明。
Altera 公司
反馈
订阅
第2页
对管芯差异和其他不确定性因素进行建模
专用电路仿真器
产生时序模型的第二种方法是专用电路仿真器。 之所以需要电路仿真器是因为很多
FPGA 子元件有很大的配置空间,导致多种传播延时。 例如,无法采用简单静态值或者
数值表对布线互联延时进行建模,这是因为有太多的独立电信号参数,导致太多的配
置。 容性负载及其沿导线的分布,监听位置,导线穿过几个金属层时 RC 的变化,提供
给任一互联导线的输入波形等,都是由布局布线引擎决定的,从而产生了多种电信号
配置。
电路仿真器与 HSPICE 等其他业界标准电路仿真器非常相似,它是基于时域的,能够分
析线性电子元件 ( 例如,电阻、电容 ) 和非线性电子元件 ( 例如,晶体管、旁通闸阀
)。 仿真器在传播延时结果上将 HSPICE 可信度提高了 1%。 它比 HSPICE 快出 10,000
倍,专门针对 FPGA 子元件进行了调整,因此才能获得如此高的效率。
电路仿真器能够提取出所有的电信号数据,例如,电容和电阻,以及所有的非线性和
线性元件,以确定可能的延时。 电路仿真器查找 FPGA 中用户设计被激活的系列子元件
的电信号参数,选择激励 V 时间波形,构建电信号网表,在时域进行仿真以确定实际
的传播延时,以及最终 V 时间波形。 输出波形作为激励进行传播,用于分析下游互联
资源,依此类推。 传播延时来自跨过阈值电压点前后波形的时间差。 图 1 显示了典型
的输入 V 时间波形 ( 上升 ),以及仿真后续互联元件的输出波形。
图 1.Quartus II 内部电信号仿真器使用的 V 时间波形
Vin
vt
t
Vout
vt
t
Vout_next
vt
t
Delay
对管芯差异和其他不确定性因素进行建模
存储在延时数据库中的延时,以及由电路仿真器产生的延时不是固定不变的,合在一
起用于预测 FPGA 中单元的总延时。 相反,延时值取决于配置模式、各种参数、差异
量、温度、工艺、电压和性能等级。 延时数据库采集制造工艺、电压和温度变化导致
的差异。 构建可靠的时序模型时,每一延时数据库对以下差异进行建模:
■
制造工艺管芯差异
■
不相关 N 和 P 沟道晶体管速率的上升和下降偏移
■
时钟不确定性和抖动
■
电源分配网络 (PDN) 上的不均匀电压
■
寿命终了劣化效应
■
等价模块硬件设计微小的变化
采用 FPGA 时序模型保证硅片性能
2010 年 8 月
Altera 公司
对管芯差异和其他不确定性因素进行建模
■
第3页
交叉串扰
硅晶片制造工艺在相同的设计模块上也会有差异,从而导致模块间的延时差。 例如,
位于硅片管芯不同坐标上的两个设计完全相同的组合模块会表现出本地差异。 这种差
异来自于制造设备、掺杂等级、制造模板的光学失真以及建立硅晶片时其他效应导致
的各种细微变化。 对这类变化进行采集,在时序模型中建模为最小和最大延时范围。
时序模型已经为所有元件分别提供了上升和下降传播延时值。 N 沟道和 P 沟道晶体管
与 FPGA 基本构建模块额定参数之间的差异会导致 FPGA 信号通路中上升和下降传播延
时之间的相对差异。 这从而导致时钟信号占空比失真,即,时钟周期上升部分和下降
部分之比,或者增加数据信号的偏移。 Quartus II 时序模型中的固有差异 ( 最小 / 最
大 ) 也会采集这种效应。
时钟不确定性和抖动出现在与 FPGA 相连的外部时钟源上。 专用时钟网络和本地布线时
钟以及其他时钟管理模块中也会有这些问题,这是由这些互联通道上的杂散变化带来
的。 而且,与锁相环 (PLL)、时钟管理模块以及互联通道相关的随机和确定性抖动会
导致时钟信号传播延时随时间变化,因此,在一个管芯的生命周期中,它不会是一个
常量。 Quartus II 时序模型和时序分析考虑了时钟不确定性的静态特性和时域特性。
或者,设计人员如果有很好的理由,可以覆写任何不确定数据 ( 例如,经过大量测试,
知道能够很好的控制工作条件 )。
与很多电子元件一样,FPGA 的特性会随时间劣化。 由于电迁移、阴极偏置温度不稳定
性以及热载流子注入等寿命终了效应,这种劣化会导致构成 FPGA 的晶体管速度越来越
慢。 对这类变化进行采集,在延时数据库中建模。
FPGA 可编程逻辑本地非常集中的开关导致 PDN 输出大电流,在很高的时钟速率下进行
开关时也会导致 PDN 输出大电流。 这从而使得 PDN 上的维持电压或者瞬时电压下降,
传播延时增大。 通过偏置最差电压噪声等级上的传播延时模型,由最小 / 最大时序模
型处理这些效应。
容性交叉串扰是硅片管芯上两个或者多个大型结构 ( 通常是互联导线 ) 之间的耦合,
在一条线路上传输的信号在另一条线路上产生噪声,实际上延时或者加速了一路或者
两路信号的传输。 在 Altera FPGA 中,在芯片布板上进行屏蔽,适当的隔开一定距
离,从而消除了关键结构上的交叉串扰,例如,专用时钟网络等。 一般的互联通路在
时序模型中建立保护带,或者在时序模型中明确的分析交叉串扰导致的延时变化。
需要对差异和不确定性进行建模,以便正确的处理各种物理效应,从而在 Quartus II
软件中精确的预测 FPGA 在最差情况下的性能。 但是,在某些情况下,不确定模型会在
时序模型中引入过渡的描述,对 FPGA 性能产生不利影响,TimeQuest 时序分析器以及
任何其他时序仿真模型会对此进行报告。 好在 Quartus II 软件提供两种高级建模和分
析方法,减小或者消除这种过渡描述:公共时钟通路过渡描述消除法和统计静态时序
分析法。
去除公共时钟通路的过渡描述
很多寄存器至寄存器数据传送都有公共时钟信号,将这些信号连接至所有寄存器会导
致共享公共布线资源。 由于时钟通路的公共部分使用相同的物理资源,因此,这些资
源的任何管芯差异都会以同样的方式影响源和目的寄存器。 因此,可以通过对传送进
行分析来消除部分管芯差异 ( 最小 / 最大延时扩散 ),从而消除了 TimeQuest 报告的某
些过渡描述。 去掉对差异的过渡描述适用于每一硅片管芯特有的差异,这些差异随时
间的变化不大。 还消除了由于时钟抖动等时域差异模型导致的过渡描述,但是在
Quartus II 软件中采用了不同的处理方法。
2010 年 8 月
Altera 公司
采用 FPGA 时序模型保证硅片性能
第4页
工作条件
统计静态时序分析
一些管芯差异完全是随机的,与任何空间位置都没有关系。 和短组合通路相比,长组
合通路在通路的每一点都不容易出现最差情况下的差异。 出于这一原因,Quartus II
软件中的模块使用统计 ( 基于蒙特卡罗仿真和硅片特性 ) 方法以减小较长通路上随机
差异的影响。 通过减小这些通路上的最小 / 最大延时,TimeQuest 报告的 FPGA 性能会
有所提高。
工作条件
Altera FPGA 工作条件应保持一致。 这些条件包括管芯结温,它会随设计要求而有所
变化。 商用型号额定范围是 0°C 至 85°C,工业型号额定范围是 -40°C 至 100°C。 还有
更宽的温度范围,例如,汽车和军用器件。
工作条件的另一要求是电压供电电平。 维持 FPGA 性能最关键的电压是 Vcc 和各种 I/O
供电。 每一供电电压都有额定工作范围。 例如,Altera Stratix ® IV FPGA 某些器件
的有效 Vcc 范围是 0.87 V 至 0.93 V。
工作条件的第三个要求是每一 FPGA 相对于所标识速率等级限制的相对速率。 这一点是
设计人员无法控制的。 应注意的是,即使是一种速率等级的器件在性能上也会稍有不
同,这主要是制造工艺差异造成的。 但是,可以保证所有器件速度都高于限制速率等
级。
考虑到多种参数工作条件下的宽范围连续工作,Altera 怎样保证满足设计人员的时序
约束,从而使可编程器件能够正常工作 ? Altera 提供所需的足够的时序模型,在特定
工作条件边角上产生每一时序模型,用于 Quartus II 编译流程中,在每一边角上单独
运行全面的时序分析。 工作条件边角通常组合了温度、电压和制造工艺变化时的各个
端点。 Altera 确保对所有设定的时序约束进行分析,包括设置、保持、恢复、去除和
偏移分析等。 对此,所有可用时序边角采集最快性能、最慢性能以及中间性能。
Altera 处理少量的时序边角,保证 Quartus II 编译和时序分析运行时间最短,从而在
最佳性能和最短编译时间之间达到平衡。 对于典型的商用 Stratix IV 器件,例如很多
65 nm 或者更小制造节点的其他 FPGA 系列,Altera 为每一器件提供三种不同工作条件
下的时序模型:慢速 85°C、慢速 0°C 和快速 0°C。 每一工作条件用于对温度、电压和
制造工艺条件特定端点的时序延时进行建模。
慢速 85°C 时序模型
慢速 85°C 时序模型为工作在以下条件的 FPGA 提供时序延时:
■
某一速率等级最慢的硅片
■
低电压 ( 用于最慢的用户电压电平,以及 FPGA 内部 PDN 电压降反弹 )
■
85°C 结温
这一工作条件为器件提供了两种可能的最差条件。 由于硅片制造上有差异,因此,从
硅晶片上切割下来的每一管芯都有不同的延时。 慢速硅片针对设定的速率等级,取自
晶片底端。 这样,时序模型能够采集 FPGA 的最差情况和最慢延时。 低电压降低了晶
体管的电子移动能力,从而减小了晶体管开关速度。 较高的温度也会影响晶体管速
度,这是因为温度会改变硅片材料、泄漏电流和电子移动能力等特性。
慢速硅片、低电压和高温相结合,为 FPGA 提供了两种可能的最差条件之一。 这种条件
适用于在静态时序分析中进行设置检查,由 TimeQuest 引擎在此条件下以及每一其他
条件下进行所有的分析 ( 设置、保持、恢复、去除和偏移 )。
采用 FPGA 时序模型保证硅片性能
2010 年 8 月
Altera 公司
TimeQuest 边角命令
第5页
慢速 0°C 时序模型
慢速 0°C 时序模型为工作在以下条件的 FPGA 提供了时序延时:
■
某一速率等级最慢的硅片
■
低电压 ( 用于最慢的用户电压电平,以及 FPGA 内部 PDN 电压降反弹 )
■
0°C 结温
与慢速 85°C 相似,慢速 0°C 模型为器件提供最差条件,由于晶体管逆温现象,最差条
件会在 0°C 出现。 晶体管阈值电压通常随着温度降低而降低,出现逆温现象时,有可
能在低温时克服载流子迁移加速问题,从而导致较慢的延时。 实际上,最差条件出现
在低温,而不是高温状态下。
慢速硅片、低电压和低温相结合,提供了第二种可能最差条件。 在静态时序分析中,
这一条件也适合进行建立和恢复检查。
快速 0°C 时序模型
快速 0°C 时序模型为工作在以下条件的 FPGA 提供了时序延时:
■
快速硅片
■
高电压 ( 在最大允许用户电压供电电平中起作用 )
■
0°C 结温
与慢速 85°C 和 0°C 工作条件不同,快速 0°C 为器件提供最佳工作条件,在器件中实现
最短延时。 在静态时序分析中,这一条件也适合进行保持和去除检查。
在商用级 FPGA 中采用慢速 0°C、慢速 85°C 和快速 0°C 时序模型,可以进行全面的静
态时序分析,覆盖全部有效电压、温度和工艺工作条件下的所有延时。 工业等其他等
级也有相应的时序边角,Altera 在合适的工作条件下对其进行全面的仿真和特性测
量。 用户正确的约束了设计中的所有传送通路后,TimeQuest 结果显示符合要求的所
有约束确保设计能够在实际 FPGA 中正常工作。
时序模型还能够调整编译流程中使用的额定工作温度范围。 可以在特定温度工作范围
内分析工业和其他扩展器件模型。 例如,在 0°C 至 100°C 范围内编译并分析工业器
件,以提高默认工业温度范围内的性能,这是因为当温度扩展到 -40°C 时,某些性能
指标会下降。
TimeQuest 边角命令
在利用各种边角时,可以向 TimeQuest 时序分析器发出简单的命令。 下面的
TimeQuest 边角命令显示很容易对复杂的 FPGA 预测延时进行建模:
#Lists the available operating conditions
get_available_operating_conditions -all
#Specifies a slow process, speed grade 7, industrial grade, voltage
1200mV, 100C #temperature
set_operating_conditions -model slow -speed 7 -grade i -voltage 1200 temperature 100
<reporting commands>
#Specifies a slow process, speed grade 7, industrial grade, voltage
1200mV, -40C #temperature
set_operating_conditions -model slow -speed 7 -grade i -voltage 1200 temperature -40
<reporting commands>
2010 年 8 月
Altera 公司
采用 FPGA 时序模型保证硅片性能
第6页
时序模型产生过程
#Specifies a fast process, speed grade 7, industrial grade, voltage
1200mV, -40C #temperature
set_operating_conditions -model fast -speed 7 -grade i -voltage 1200 temperature -40
<reporting commands>
图 2 所示为商用级 Stratix IV FPGA 的 TimeQuest 对话框。 工作条件对话框用于设定
时序分析的某一边角。
图 2. 工作条件对话框
时序模型产生过程
每个器件时序模型都有涉及到两种状态的过程,每一个都会指明产生流程中时序模型
的状态。 时序模型要经历的两种状态是:
■
初步——在 Quartus II 软件中,完成所有规划特性和相关工作之前,认为器件最初
模型是初步的。 这一状态涉及到为新 FPGA 产生初步时序模型。
■
最终——时序模型与硅片完全相关,不会再修改时序模型。 这一状态将初步时序模
型最终确定下来。
图 3 显示了从 “初步”到 “最终”时序模型的典型流程。
采用 FPGA 时序模型保证硅片性能
2010 年 8 月
Altera 公司
时序模型产生过程
第7页
图 3. 时序模型产生流程
Insufficient
Silicon Data
IC Design Estimations;
Includes Targeted Specifications
Initial Timing Models
(Estimated)
[Preliminary Models]
HSPICE/HSIM Simulations of
Final Design Netlists Annotated
with Accurate Electrical Parameters
Simulated Timing Models
(After FPGA Design is Finalized)
[Preliminary Models]
Measure All Characterization
Patterns on Multiple Units of Silicon
Complete Characterization Plan
with Detailed Description
of Methodology
Correlate All Aspects of Quartus
Timing Models to Measured Results
Update Internal Documentation
and Produce External Datasheet
No
Is Quartus
Model Within
Correlation Limits?
No
Not Within
Correlation
Limits
Perform a Multidepartmental
Formal Review and Complete
the Model Verification Checklist
Yes
Is Verification
Checklist
Completed?
Review Possible Solutions to an
Issue in a Multidepartmental
Timing Task Force
No
Yes
Update Documentation
Datasheet, Release Notes
Perform Necessary
Corrections to the Quartus
Timing Models
High-level Manager Ascertains That
All Fixes Have Been Completed
and Tested, and Documentation
Has Been Updated
Correlated Timing Models
[Production Quality Models]
No
Are All Pending
Issues Fixed?
Yes
Are Models
Marked “Final”?
Final Timing Models
If an
Issue Arises
Yes
Inform Customers of the Change
Through FAEs and Email
2010 年 8 月
Altera 公司
Monitor Customer Requests
and Issues
采用 FPGA 时序模型保证硅片性能
第8页
结论
前硅片时序模型支持
当某一器件系列第一次在 Quartus II 软件中出现时,可能还没有物理器件,这是因为
器件特性在软件中实现时,距离代工线正式发布硅片器件还有一定的时间。 在没有硅
片器件时,利用从 HSPICE 模型和标准单元库等数据源获得的仿真数据来产生时序模
型。 仿真延时包括电信号特性信息,例如所有 FPGA 元件的电流电压表、电阻、电感和
电容等。
对于 FPGA 中的每一单元,所有延时最初都是通过这种方式产生的。 在各种工作条件下
产生模型,从而对整个有效工作范围进行采集。 在初步模型中加入保护带,以应对各
种物理器件效应,包括管芯差异、电迁移和寿命终了劣化等。 此外,保护带进一步保
护了时序模型,确保时序分析结果安全 ( 或者有些保守 )。 如果 TimeQuest 显示满足
了时序约束 ( 正松弛 ),那么,FPGA 在任何有效工作条件下都不会遇到时序失败。
在产生初步时序模型时使用仿真数据为精确的预测 FPGA 物理延时提供了可靠的方法。
使用初步时序模型并不意味着时序模型在不同版本的 Quartus II 之间会保持不变。 例
如,对于相同的器件,在 Quartus II 10.0 中标记为初步的器件时序模型在 Quartus
II 10.0 SP1 中并不会等价为初步时序模型,这是因为初步时序模型经常被更新,以反
映实际的物理延时,以及硅片的特性变化。 通过硅片相关这一工艺获得物理延时特
性,测量相对于仿真延时的实际延时。 时序模型被标记为 “最终”之前,在时序模型
的整个过程中都会有相关阶段。
后硅片时序模型支持
能够提供物理器件后,对硅片延时进行测量,得到其特性。 第二种状态涉及到时序模
型与特性测量的相关。 采用数千种相关模式对硅片延时进行测量。 每一相关模式用于
测量器件中的某些延时。 在相关工作中使用了多种器件,以产生统计测量数据,获得
多种工艺差异时的时序性能。 对初步时序模型进行更新,以匹配物理器件中的实际延
时。 相关工作完成后,测量了所有相关模式,时序模型反映了硅片测量结果,时序模
型被标记为 “最终”。
结论
Altera 时序模型是验证设计时序简单方便的手段,它不需要进行全面的物理电信号提
取和仿真。 65-nm 和最新器件三种不同的工作边角全面涵盖了推荐工作条件下的 FPGA
时序延时。 时序模型包括器件晶体管的所有电信号特性。 与 ASIC 时序验证流程相比,
使用 Altera 时序模型降低了 FPGA 时序验证流程的复杂度。
详细信息
■
Quartus II 手册第 3 卷第 7 章 Quartus II TimeQuest 时序分析器:
www.altera.com/literature/hb/qts/qts_qii53018.pdf
■
Altera 设计软件:
www.altera.com/products/software/sfw-index.jsp
■
Minh Mac,技术组成员,技术服务, Altera 公司。
■
Chris Wysocki,软件工程高级经理, Altera 公司。
致谢
采用 FPGA 时序模型保证硅片性能
2010 年 8 月
Altera 公司
文档修订历史
第9页
文档修订历史
表 1 列出了本文档的修订历史。
表 1. 文档修订历史
日期
2010 年 8 月
2010 年 8 月
进行的修改
版本
Altera 公司
1.0
初次发布。
采用 FPGA 时序模型保证硅片性能
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement