0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用TimeQuest

工程师 来源:网络整理 作者:h1654155205.5246 2019-03-08 14:52 次阅读

如何使用TimeQuest

Altera的话来说,TimeQuest Timing Analyzer是一个功能强大的,ASIC-style的时序分析工具。采用工业标准--SDC(synopsys design contraints)--的约束、分析和报告方法来验证你的设计是否满足时序设计的要求。

TimeQuest的基本操作流程

做为altera FPGA开发流程中的一个组成部分,TimeQuest执行从验证约束到时序仿真的所有工作。Altera推荐使用下面的流程来完成TimeQuest的操作。

1、建立项目并加入相关设计文件

不管做什么事情,都需要有一个目标或者说对象。我们用TimeQuest做时序分析,当然也需要一个对象,这个对象实际上就是我们的设计。所以首先是建立一个Quartus II的项目,并把所有需要的设计文件都加入到项目中去。需要注意的一点是,这里的设计文件,不仅仅包含逻辑设计相关的文件,也包含已经存在的时序约束文件,当然,需要以synopsys Design Constraints(.sdc)的格式存在的。关于 sdc文件,可以使用Quartus的向导来建立,在生成sdc文件后,你可以再在此sdc文件上进行自己的修改,如下图所示,Assignments-》TimeQuest Timing Analyzer Wizard.。。

2、对项目进行预编译(initial compilation)

项目建立以后,如果从来没有对项目进行过编译的话,就需要对项目进行预编译。这里的预编译是对应于全编译(full compilation)来讲的,我们可以理解为预编译是对项目进行部分的编译,而全编译是对项目进行完整的编译。做预编译的目的是为了生成一个initial design database,然后我们可以根据这个database用Timequest采用交互的模式生成时序约束。实际上,对于小的设计,编译时间并不是很长的话,完全可以不去区分预编译和全编译,需要编译的时候,直接做全编译就可以了,做全编译的话,可以生成一个post-fit的database,完全可以给TimeQuest使用。

3、向设计中添加时序约束

在用TimeQuest做时序分析之前,必须要指定出对时序的要求,也就是我们通常所说的时序约束。这些约束包括时钟,时序例外(timing exceptions)和输入/输出延时等。

默认情况下,Quartus II 软件会给所有没有被下约束的时钟都设定为1GHz。没有任何的时序例外,也就是说所有的timing path都按1T去check。所有的输入/输出的延迟都按0来计算。这显然不符合绝大多数设计的时序要求,所以有必要根据设计的特性,添加必要的时序约束。

如上所述,时序约束主要包括三类:时钟,时序例外和输入/输出延迟。其中时钟和输入/输出延迟可以认为是在某种程度上增强时序设计的要求。而时序例外可以认为是在某种程度上降低时序设计的要求。比如说,仅仅设定一个时钟的频率为100MHz的话,这个时钟域里所有timing path都需要能工作在100MHz下。这显然是增强了时序设计的要求。可是如果在这个时钟域下面,有部分timing path是不需要做1T的check的,那么就可以通过添加时序例外来避免对这些timing path做1T的check,即降低了时序设计的要求。

在用TimeQuest做时序分析时,如果非常熟悉设计的构架和对时序的要求,又比较熟悉sdc的相关命令,那么可以直接在sdc文件里输入时序约束的命令。而通常情况下,可以利用TimeQuest GUI提供的设定时序约束的向导添加时序约束。不过要注意的是,用向导生成的时序约束,并不会被直接写到sdc文件里,所以如果要保存这些时序约束,必须在TimeQuest用write sdc的命令来保存所生成的时序约束。

4. 执行完整的编译

在设定好时序约束以后,就需要对整个设计进行完整的编译。在编译过程中,软件会优化设计的逻辑、布局布线等来尽可能满足所有的时序约束。

如果没有添加时序约束,那么软件在编译的时候,会按照默认的时序约束对设计进行优化,对于绝大多数的设计,都会报出来时序的问题,但因为默认的时序约束与设计本身的要求在绝大多数情况下,都是不同的,所以这些时序的问题也并不是设计本身的问题,并没有太多的参考价值,而且很多初学者也不会注意到这个问题。这样就把设计中很多潜在的时序问题给隐藏起来了,最终带来的可能就是系统运行的不稳定,甚至是完全不能运行。

5. 验证时序

当完成编译以后,我们就可以用TimeQuest来验证时序了。在时序分析的过程中,TimeQuest会分析设计中所有的timing path,计算每一条timing path的延时,检查每一条timing path是否满足时序约束,最后按照positive slack或negative slack来报告时序分析的结果。其中negative slack就表示对应的timing path不满足时序约束的要求(timing violation)。

如果遇到有不满足时序要求的情况,则可以根据对应的时序报告分析设计,确定如何优化设计使之满足时序约束。时序约束有任何变化的话,都需要重新编译设计。这个反复的过程可以让我们解决设计中的时序问题。

DAC7512控制器

DAC7512是一个具有三线串行接口的DAC。我们基于FPGA用Verilog语言实现了一个简单的DAC7512的控制器。下面是控制器的结构图

DAC7512控制器由三个模块组成,PLL用来生成控制器所要的时钟C0(25MHz)和C1(50MHz),其lock信号用来做为控制器的异步reset。da_data模块生成要送往DAC7512的数据,其中DA_DATA为数据,DA_DATA_EN为数据有效信号,该模块使用C0时钟,整个属于C0时钟域。DAC7512模块用于将DA_DATA转换成符合DAC7512接口标准的串行数据并送给DAC7512,要用到C1(50MHz)和DA_SCLK(C1二分频,25MHz)两个时钟。

DAC7512控制器一共有四个输入输出端口。CLK_IN为PLL的基准时钟,为25MHz。DA_DIN,DA_SCLK和DA_SYNC为三线串口,都为输出端口。由于C0,C1是由同一个PLL输出的,DA_SCLK是由C1经二分频得到的,三者之间是同步的,处于同一个clock group中。不过要注意一点的是,在串行总线上,DA_DIN是在DA_SCLK的下降沿有效的。把DA_DIN设计为C1时钟域的信号,并控制其值只在DA_SCLK为高电平的时候发生变化。这样可以把DA_DIN与DA_SCLK之间的时序要求转换为DA_DIN在C1时钟域的时序要求,具体的使用方法我们跟着视频一起来学习一下。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • TimeQuest
    +关注

    关注

    0

    文章

    11

    浏览量

    11371
收藏 人收藏

    评论

    相关推荐

    浅谈剩余电流继电器的工作原理及应用场景

    摘要:剩余电流动作继电器,作为主保护或者后备保护应用在低压配电系统中,主要对于消除对人体的伤害或火灾的隐患起着重要的作用,正确使用剩余电流动作继电器和对其原理的了解,对保障电气系统安全可靠运行具有重大意义。对于 TT 系统,采用剩余电流动作继电器对接地故障进行保护;而在 TN 系统中,速断和漏电保护已满足对接地故障保护的灵敏度要求。 关键词:剩余电流;接地故障;触、漏电保护;用电安全 概述 随着我国低压电气系统及
    的头像 发表于 12-22 20:04 43次阅读
    浅谈剩余电流继电器的工作原理及应用场景

    2024世界智能制造大会火热进行中!寻迹智行4D04,诚邀莅临~

    2024世界智能制造博览会在南京国际博览中心盛大开幕,寻迹智行展示了紧凑型托盘堆垛车BR-F12SL,协作式机械臂AMR-BR-D001A在智能搬运领域的强大实力和创新能力,诚邀各位参观交流。
    的头像 发表于 12-22 20:01 47次阅读
    2024世界智能制造大会火热进行中!寻迹智行4D04,诚邀莅临~

    MOS管FHP230N06V型号参数

    一般来说,工频逆变器是选用IGBT单管来应用的。但对于低压工频逆变器而言,选择MOS管似乎是更具有性价比的选择。毕竟市场中也有很多款是非常成熟的MOS管是可以直接用于低压工频逆变器的电路中的。 比如,目前市场中常见的会有CS160N06、HY3906P、IRFB7537PBF等型号MOS管是可以用于低压工频逆变器中的。但今天飞虹半导体是想给大家推荐另外一款纯国产的低耐压、大电流、低导通电阻的功率 MOSFET。 它就是FHP230N06V型号MOS管,能够代换CS160N06、HY3906P、IRFB7
    的头像 发表于 12-22 17:17 58次阅读
    MOS管FHP230N06V型号参数

    智能吉他的内部结构

    智能吉他的内部结构是怎么样的?我的电话是13316312382,谢谢
    发表于 12-22 17:15

    1000A交直流真有效值数字钳形表DT-3369T-BT四大功能

    当前工业环境下,越来越多的变频、整流器、逆变器等设备被使用,实际的电气波形越来越多样化。传统钳形表在这种趋势下局限性逐渐凸显,如读数不准确、密集排线难以钳入、功能单一安全性不足等。 DT-3369T-BT是华盛昌设计、研发和生产的一款1000A交直流真有效值数字钳形表,功能强大,性能优良,可以测试1000A交直流电流、600V交直流电压、电阻,电容、频率、占空比、温度,具备浪涌电流测试、连续性测量、二极管测试和带NCV非接触式电压感应,
    的头像 发表于 12-22 16:06 45次阅读

    玻璃基板面临的四大核心技术攻关难点

    人工智能的发展对高性能计算、可持续技术和网络硅片的需求激增,这推动了研发投资的增加,加速了半导体技术的创新进程。然而,随着摩尔定律在单个芯片层面逐渐放缓,业界开始探索在ASIC封装中集成更多芯片的可能性,以期在封装层面延续摩尔定律带来的性能提升。 ASIC封装,这一用于承载多个芯片的构造,传统上主要由有机基板构成。这些有机基板大多由树脂(特别是玻璃增强的环氧层压板)或塑料材料制成。根据具体的封装技术,芯片可能直
    的头像 发表于 12-22 15:27 113次阅读
    玻璃基板面临的四大核心技术攻关难点

    烙铁焊,回流焊,波峰焊和激光锡焊四种工艺的比较

    在现如今精密电子行业自动化生产电子元器零部件时,一般会用到的焊接工艺有烙铁焊,回流焊,波峰焊和激光锡焊这四种。下面将聊下这四种工艺的比较。 烙铁焊接工艺原理特性 烙铁焊工艺图示 采用电烙铁作为加热工具,将焊料熔化在被焊接物上。焊料的熔点一般低于被焊接物的熔点,因此在加热过程中,焊料会先于被焊接物熔化,从而形成熔池。传统焊接工艺因其工艺相对简单,常用于连接简单的金属和塑料零件。 焊锡是熔点比较低的焊料,在
    的头像 发表于 12-22 15:04 123次阅读
    烙铁焊,回流焊,波峰焊和激光锡焊四种工艺的比较

    运放电路中电容的常见身影

    一、引言 运放电路中电容的常见身影 在运放电路里,我们常常能看到电容出现在一些特定的位置,比如电源 VCC 到地之间,反馈输入输出引脚之间,以及正负两输入端之间。即便电路中没有这些电容,似乎也能够正常工作,可在实际的电路设计中,一般都会添加上它们。那这些不同位置的电容究竟有着怎样的作用呢?这值得我们深入去探讨一番,接下来就为大家详细介绍各个位置电容所发挥的重要作用。 二、电源 VCC 上电容的作用 (一)滤波功能解析
    的头像 发表于 12-22 15:00 56次阅读
    运放电路中电容的常见身影

    如何使用开关浪涌抑制器替代传统的线性浪涌抑制器

    在工业电子设备中,过压保护是确保设备可靠运行的重要环节。本文将探讨如何使用开关浪涌抑制器替代传统的线性浪涌抑制器,以应对长时间的过压情况。与传统线性浪涌抑制器不同,开关浪涌抑制器能够在持续浪涌的情况下保持负载正常运行,而传统线性浪涌抑制器则需要在电源路径中的MOSFET 散热超过其处理能力时切断电流。 可靠的工业电子设备通常配备保护电路,以防止电源线路出现过压,从而保护电子设备免受损坏。过压现象可能在电源线路
    的头像 发表于 12-22 14:42 39次阅读
    如何使用开关浪涌抑制器替代传统的线性浪涌抑制器

    单相全桥逆变电路分享

    单相全桥逆变电路 单相全桥逆变电路也称“H 桥”电路,其电路拓朴结构如图1所示,由两个半桥 图1单相全桥电路拓朴结构 电路组成,以1800 方波为例说明单相全桥电路的工作原理,功率开关元件Q1 与Q4 互补,Q2 与Q3 互补,当Q1 与Q3 同时导通时,负载电压U0= +Ud;当Q2 与Q4 同时悼通时,负载两端U0= -Ud,Q1 Q3 和Q2 Q4 轮流导通,负载两端就得到交流电能。 图2全桥输出电压、电流波形 假设负载具有一定电感,即负载电流落后与电压 角度,在Q1Q3 功率管栅极
    的头像 发表于 12-22 14:31 54次阅读
    单相全桥逆变电路分享

    LED驱动板是如何工作的

      市面上LED产品百花齐放,应用场景非常多样化。很多LED产品需要一个核心部件,就是LED驱动板,本期主要讲解它是如何工作的。 LED驱动板主要是对LED实现驱动和控制,包括色温、亮度、开关控制等,它通常包括整流滤波电路、高频转换电路、副边整流滤波和控制电路组成,这几个电路通常需要用到桥堆、二极管、三极管、MOS和电阻、电容、电感等元器件产品。 LED驱动板的工作原理是将交流电转换为直流电,并通过电子元器件调整电流和电压,以满足
    的头像 发表于 12-22 14:23 112次阅读
    LED驱动板是如何工作的

    【RA-Eco-RA4E2-64PIN-V1.0开发板试用】+小白折腾瑞萨RA系列全过程02

    0 说在前面 经过上次一顿东碰西撞,现在初步理清板子的编程思路了。站在前人的肩膀上果然会容易很多,十分感谢很多大佬的无私分享,让我这个后来者能顺利完成RA的编译与下载。 1 所需软件 因为我工作和学习使用的是KEIL 5 ,所以本篇教程为KEIL编程以及下载过程,通过E2 S官方程序也可以完成编译和下载,可以自行查阅相关资料。 1.1KEIL 5 KEIL5编译器以及激活程序,可以参考下方链接进行下载和激活KEIL5下载以及激活 1.2 适用KEIL5 的RA PACK包 PACK包内附带RA芯片的基本信息和支持库文件,没有PACK包无法完成编译过程。可以参考下方链接进行下载RA的PACK包。[RA_DFP_PACK包](Arm Keil | Renesas RA_DFP) 1.3 可以生成KEIL5文件的官方FSP软件 经过1.1和1.2之后,我们编写与编译的环境就搞好了,现在需要生成基本框架的软件,这个软件可以图形化设定引脚模式以及一键生成项目框架,生成的项目可以直接使用KEIL5来进行新增代码和删减代码。RA 可扩展性强的配置软件包 (FSP) | Renesas 瑞萨电子 1.4 USB下载程序 前面三部完成后,我们已经可以设置引脚模式并生成程序框架(1.3),编译环境KEIL5(1.1),让编译环境支持编译RA系列芯片(1.2),现在我们需要将编译好的文件下载到板子内。 如果有J-link的话,可以直接进入Debug中进行配置,若没有J-link,也不需要担心,RA测试板上有板载USART转USB,我们可以通过USB下载程序。USB下载的官方软件在下方链接中,注意要下载支持WINDOWS的软件!RA串口下载软件 2 使用注意 以上四步不分先后,均可同时进行下载,之后可以依次进行安装。 引脚配置请使用官方软件进行配置,在KEIL5中修改再进行编译会被强制修改回原样。 进行USB下载时,请将板载引脚跳针修改为指定样式,点击START之后按一下复位按钮
    发表于 12-22 13:08

    什么是滞回比较器,及滞回阈值参数计算

    当 VIN(+) > VIN(-),输出高电平;VIN(+) < VIN(-),则输出低电平,这就是单限比较器的功能。但当两个输入端信号极为接近时,由于输入电压的毛刺或者电压波动,就会导致输出产生高低电平连续跳变。滞回比较器可以很好解决这个问题,具有很强的抗干扰能力。 滞回比较器可分为上行滞回比较器(同相输入)和下行滞回比较器(反相输入)。
    的头像 发表于 12-22 12:04 46次阅读
    什么是滞回比较器,及滞回阈值参数计算

    GitHub Copilot 可以免费使用了!

    “  这个标题有点标题党,虽然 Github Copilot 确实是可以免费使用,但这个免费是有限制的,聊天互动每月限制50次,代码补全(或者建议)每月2000次。不过这个 Copiot 真的是很好用!建议大家都先去试一下,再决定要不要花每个月10美金订阅!   ” 不管是 Github Copilot 还是 Cursor,最大的优点是可以在 IDE 里面直接修改或审核代码,而且可以几个文件一起看,非常高效。如果您还是在网页浏览器里复制、粘贴代码,让 gpt 或者 kimi 干活,那就太 out 了;虽然
    的头像 发表于 12-22 11:19 41次阅读
    GitHub Copilot 可以免费使用了!

    关于proteus仿真、LM311过零检测电路出现波形不正确的问题

    先放一张波形图,对正弦波的过零检测波形如绿色图所示。 我有疑问的是,关于正弦波的上升沿过零检测,为什么绿色的矩形波会提前感知到过零点了呢?这就导致了矩形波的占空比不对应了。下面是电路图,希望有哪位老哥帮忙看一下。 其中输入的正弦波频率85Hz,幅值10V。相当于输入LM311电压为2V。 LM311的VCC接入的为5V,输入的另一端接地。输入范围:0-3.5V。范围符合要求。
    发表于 12-22 10:06