已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、时序分析术语1.时序分析的基本模型时序分析是fpga 的重中之重。开始之前请记住时序分析的基本模型dqcombdqclock pathdata pathtsetuptcor1r2tclk1tclk2tpdasync clear pathrst为经过寄存器r1 的传输延时为经过组合逻辑的传输延时 为 r2 本身的建立时间;( clock slew) 为时钟到 r1 和 r2 的偏差2.launch edge 和 latch edgelaunch edge 和 latch edge 分别是时序分析的起点和终点。需要指出的是latch edge时间 =launch edge 时间+ 期望系统周期时间3.data arrival time 和 data required time这两项时间是timequest 时序分析的基础,所有的建立时间余量和保持时间余量tdelay都是根据这两项时间来决定的。-可编辑修改 -需要注意的是data arrival time 和 data required time 在分析不同的时序节点时,计算的公式有所差别。4. 建立时间余量 clock setup slack建立关系是指寄存器r1 发送的数据在下一次更新(更换)之前,寄存器r2 可用最短时间去锁存数据建立时间余量是指从launch edge 经过一些列延迟数据输出稳定后到latch edge 的长度。internal register-to-register pathsdata arrivaltime=launch edge +clock networkdelay tosource registertco + register-to-register delaydata required time = latch edge + clock network delay to destination registert su setup uncertaintyinput port to internal registerdata arrival time = launch edge + clock network delayinput maximum delay + port-to-register delaydata required time = latch edge + clock network delay to destination registert su setup uncertaintyinternal register to output portdata arrivaltime =launch edge +clock networkdelay to source registert co +register-to-port delaydata required time = latch edge + clock network delay to output port output maximum delaytco 指寄存器r1 的自身特性tsu 指寄存器r2 的自身特性如上图所示:data arrival time=启动沿时间+ tclk1 + tco + tdata= 0ns + 3.2ns + 0.2ns + 0.6ns= 4nsdata required time=锁存沿时间+ tclk2 - tsu= 10ns + 2ns - 1.4ns= 10.6ns所以: setup slack = data required time - data arrival time= 10.6ns - 4ns= 6.6ns5. 保持时间余量 clock hold slack保持时间余量是在两个节点(寄存器)之间, 在分析保持关系的过程中“ 到底有多少剩时间可以提供给寄存器用来确保已存数据的稳定”。由于保持时间余量是指当前latch edge和下一个launch edge的距离。所以上面公式可以写成:数据周期时间internal register-to-register pathsdata arrivaltime=launch edge +clock networkdelay tosource registertco + register-to-register delaydata required time = latch edge + clock network delay to destination register + th + hold uncertaintyinput port to internal registerdata arrival time = launch edge + clock network delayinput maximum delay + port-to-register delaydata required time = latch edge + clock network delay to destination register + t hinternal register to output portdata arrivaltime =launch edge +clock networkdelay to source registert co +register-to-port delaydata required time = latch edge + clock network delay output maximum delaydata arrival time=启动沿+ tclk1 + tco+ tdata +数据周期时间= 0ns + 3.2ns + 0.2ns + 0.6ns + 10ns= 14nsdata required time=锁存沿+ tclk2 + th= 10ns + 2ns + 1.4ns= 13.4ns所以,hold slack=数据保持时间- 数据锁存(获取| 读取)时间= 14ns - 13.4ns= 0.6ns6. recovery and removal time7. 多周期路径 multicycle paths8. 亚稳态 metastability二、时序约束类型1. 时钟为了确保精确的静态时序计算结果,必须指定设计中所有使用到的时钟。a. base clock 基准时钟设计中最主要的输入时钟。不同于从pll 中生成的时钟,基准时钟是由片外osc 或者其他器件生成的。example100 mhz shifted by 90 degrees clock creationcreate_clock -period 10 -waveform 2.5 7.5 get_ports clk_sysb. virtual clock虚拟时钟虚拟时钟在设计中不存在真实的时钟源或者对设计没有直接影响的一个时钟。例如,如果一个时钟不是设计中的时钟,而仅仅作为一个外部器件的时钟源,并且外部器件和该设计有输入或者输出的管脚,那么就认为这个时钟是虚拟时钟。主要方便timequest 正确的分析外部寄存器和内部寄存器的时序关系。example create virtual clockcreate_clock -period 10 -name my_virt_clkc. multifrequency clocks 多频率时钟某些情况下, 设计中会有很多个时钟源向一个时钟节点提供信号。增加的时钟也许扮演一个低频率低功耗时钟的角色。d. generated clocks 派生时钟派生时钟是指在设计中修改了相位、频率、偏移、占空比的基准时钟。如分频时钟。在 sdc 文件中, pll 输出或者寄存器分配的generated clocks 在所有的基准时钟之后约束。e. deriving pll clocks锁相环时钟使用derive_pll_clocks命令直接让timequest自动搜索未约束的pll输出时钟。derive_pll_clocks 命令自动调用create_generated_clock 命令给每个pll 输出 创建 generatedclocksclock groups 时钟组如果两个或者多个时钟具有相同的source 和固定的相位差, 那么这些时钟是同步时钟。如果两个或者多个时钟之间没有任何关系,则称之为异步时钟。如果两个时钟不会相互作用,那么称这两个时钟为互斥时钟。如果在约束中没有特别说明,timequest假设所有的时钟都是相关的。使用set_clock_groups 命令指定 设计中指出那些时钟是互斥的或者异步的。令将不同时钟组时序分开分析,并且执行同样的分析,不管有没有指定-asynchronous 选项。set_clock_groups 命-exclusive 或者做时序分析时, 在创建好所有的时钟后,需要定义这些时钟之间的关系。我们可以f.把同步时钟放到一个group 中,然后在定义时钟之间的关系时,可以使用group 来定义。如果设计中有异步时钟,就需要用命令把异步时钟分组并定义出来。2. 输入约束input constrants外部器件发送数据到fpga 系统模型如下图所示。对 fpga 的 io 口进行输入最大最小延时约束是为了让fpga 设计工具能够尽可能的优化从输入端口到第一级寄存器之间的路径延迟,使其能够保证系统时钟可靠的采到从外部芯片到fpga 的信号。3. 输出约束output constrantsfpga 输出数据给外部器件模型如下图所示。对 fpga 的 io 口进行输出最大最小延时约束是为了让fpga 设计工具能够尽可能的优化从第一级寄存器到输出端口之间的路径延迟,使其能够保证让外部器件能准确的采集到 fpga 的输出数据4. 时序例外 timing exceptionsa. falsh paths从逻辑上考虑, 与电路正常工作不相关的那些路径,比如测试逻辑, 静态或准静态逻辑。 从时序上考虑, 我们在综合时不需要分析的那些路径,比如跨越异步时钟域的路径。clock latency:时钟延迟clock 源到时序器件的clk 脚的延迟叫做clock latency。有两种形式的clock latency,时钟源延迟clock source latency和时钟网络延迟clock network latency。时钟源延迟指从初始时钟到定义点时钟的传播延迟。时钟网络延迟指时钟定义点到寄存器的时钟引脚。clock uncertainty: clock 在时序器件clk 脚上的不确定性。有三种类型的时钟到时钟转移:intraclock transfers interclock transfersi/o interface clock transfers.altera 对于 fmax 的计算公式。fmax : 电路能跑的最大频率tclk:电路能跑的最短周期tco: register 本身的clk 输出 delay(clk to output) tdata:组合逻辑本身所造成的data delay tsu: register 本身的 setup timetclk_skew: clock skewpin to pin delay(tpd)tpd 指输入管脚 通过纯组合逻辑到达输出管脚 这段路径的延时,特别需要说明的是,要求输入到输出之间只有组合逻辑,才是tpd 延时同步设计基本模型图tdelaydqcombdqclock pathdata pathtsetuptcot1dclksclktpdasync clear pathrstt2launch edge,是源寄存器发送数据的时钟沿,是时序分析的起点。latch edge,是目的寄存器捕获数据的时钟沿,是时序分析的终点。dataarrival time:从 launch edge开始, data 实际到达reg2 d 端的时间。data arrival time = launch edge + source clock delay + t co + register-to-register delay data required timedata required time = latch edg
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 土方保证金合同(2篇)
- 婚姻服务合同(2篇)
- 秋季学期丰收节庆祝活动计划
- 煤矿开采课程设计摘要
- 简单R语言课课程设计
- 磨切机设计课程设计
- 四年级语文下册 第七单元过关测评卷(部编版)
- 成都中医药大学《自然辩证法概论》2021-2022学年第一学期期末试卷
- 教务年终总结(3篇)
- 管理会计实习报告
- 在NandFlash上构建FAT文件系统
- 首件检验作业指导书
- 本科教学工作审核评估学院汇报PPT课件
- 泛光照明专项施工组织方案内容
- 常用挖机型号及斗容量
- 论述马克思主义的实践观
- 灌溉渠道混凝土固脚施工技术综述
- 小学二年级上册美术课件-5.14变形金刚-岭南版(15张)ppt课件
- 新建液化气站申请报告 (3)
- 食品工厂如何进行虫害控制以满足国际食品安全认证审核标准
- 食品工厂虫鼠害综合防治方案
评论
0/150
提交评论