FPGA时序分析与约束(0)——目录与传送门

2023-12-12 18:30

本文主要是介绍FPGA时序分析与约束(0)——目录与传送门,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、简介

        关于时序分析和约束的学习似乎是学习FPGA的一道分水岭,似乎只有理解了时序约束才能算是真正入门了FPGA,对于FPGA从业者或者未来想要从事FPGA开发的工程师来说,时序约束可以说是一道躲不过去的坎,所以这个系列我们会详细介绍FPGA时序分析与约束的相关内容。

        我们在设计FPGA的时候往往是进行多方面性能的权衡来实现设计的最优化,在可实现的情况下,我们一般会期望处理速率越快越好,但是与理论不同,在实际的硬件设计的时候,一个逻辑上正确的设计仍然会因为现实世界中的实现问题而失败!

二、基础知识

        你总得知道点什么,我们才能继续聊下去。

2.1 组合电路时序

FPGA时序分析与约束(1)——组合电路时序-CSDN博客文章浏览阅读773次,点赞11次,收藏12次。在可实现的情况下,我们一般会期望fpga处理速率越快越好,但是与理论不同,在实际的硬件设计的时候,一个逻辑上正确的设计仍然会因为现实世界中的实现问题而失败!本文中我们介绍了组合电路的时序问题,定义了tcd和tpd两个重要参数,明确了如何寻找一个组合逻辑电路的最短路径Shortest Path和最长路径LongestPath(更常规的叫法是关键路径Critical Path),然后我们分析了组合逻辑毛刺产生的原因及影响https://blog.csdn.net/apple_53311083/article/details/132368941

2.2 时序电路时序

FPGA时序分析与约束(2)——时序电路时序-CSDN博客文章浏览阅读3.5k次,点赞41次,收藏44次。本文我们介绍了时序电路中的时序问题,这是我们进行进一步时序分析内容学习的重要理论基础,首先我们介绍了D触发器相关内容,着重说明了建立时间和保持时间的含义和产生原因,然后引入了触发器的输出时序,最后介绍了时序电路系统的设计约束。https://blog.csdn.net/apple_53311083/article/details/132626131

2.3 时钟不确定性

FPGA时序分析与约束(3)——时钟不确定性_clock uncertainty包括什么-CSDN博客文章浏览阅读1.2k次,点赞12次,收藏13次。本文主要介绍了FPGA中时钟的不确定性问题,FPGA中的时钟不确定性由2部分组成,时钟抖动和时钟偏移,时钟抖动由时钟内部产生,是时钟的固有参数,时钟偏移是由于时钟到达不同部分的时间不一致导致的,与FPGA的设计结构,布局布线等有关。_clock uncertainty包括什么https://blog.csdn.net/apple_53311083/article/details/132631389

2.4 时序分析,时序约束,时序收敛

FPGA时序分析与约束(4)——时序分析,时序约束,时序收敛-CSDN博客文章浏览阅读361次,点赞10次,收藏10次。本文中我们学习了时序分析,时序约束,时序收敛的含义,我们主要采用的时序分析方法是静态时序分析法,在后文中,我们将正式开始介绍如何进行时序分析。https://blog.csdn.net/apple_53311083/article/details/132629963

2.5 时序路径

FPGA时序分析与约束(5)——时序路径-CSDN博客文章浏览阅读3.6k次,点赞49次,收藏55次。介绍了时序分析过程中时序路径的基本概念,分别介绍了FPGA中常见的4种时序路径:(1)引脚到寄存器(从FPGA的输入端口到目的寄存器的数据输入端口)(2)寄存器到寄存器(从源寄存器的时钟端口到目的寄存器的数据输入端口)(3)寄存器到引脚(从源寄存器的时钟端口到FPGA的输出端口)(4)引脚到引脚(从FPGA的输入端口到FPGA的输出端口)。这部分的内容是我们进行后续时序分析及时序约束的重要基础。https://blog.csdn.net/apple_53311083/article/details/132641522

2.6 综合基础知识

FPGA时序分析与约束(6)——综合的基础知识-CSDN博客文章浏览阅读1.9k次,点赞62次,收藏46次。与综合相关的一些问题的性质和约束的必要性。随着设计复杂性的不断提高,为了能够正确地表示的要求和关系,约束自身也变得越来越复杂https://blog.csdn.net/apple_53311083/article/details/133965507

2.7 通过Tcl扩展SDC

FPGA时序分析与约束(7)——通过Tcl扩展SDC-CSDN博客文章浏览阅读879次,点赞13次,收藏8次。通过使SDC 扩展到Tcl,特定于工具的命令可以与原生的Tcl结构,如变量、表达式、语句和子程序相混合,使其成为实现工具非常强大的语言。术语“Synopsys公司设计约束”(又名SDC,Synopsys Design Constraints)用于描述对时序、功率和面积的设计要求,是EDA工具中用于综合、STA和布局布线最常用的格式。该类别包括帮助设计人员放宽要求地命令,此命令是由其他命令所规定的,从而提供了约束放宽的适用范围,下表给出了此类约束,表格中标有星号的命令也可提供额外的收紧(而不是放宽)。https://blog.csdn.net/apple_53311083/article/details/133979334

2.8 时序引擎

​​​​​​FPGA时序分析与约束(8)——时序引擎-CSDN博客文章浏览阅读2.4k次,点赞60次,收藏31次。FPGA时序分析,时序引擎如何实现建立分析(setup),保持分析(hold),恢复时间分析(recovery)和移除时间分析(removal)。https://blog.csdn.net/apple_53311083/article/details/134095643

三、时钟约束

        对于时序分析和时序约束来说,最重要的就是时钟,这是一切的开始。

3.1 主时钟约束

FPGA时序分析与约束(9)——主时钟约束-CSDN博客文章浏览阅读590次,点赞18次,收藏12次。fpga时钟约束,create_clock详细解读,主时钟约束https://blog.csdn.net/apple_53311083/article/details/134102984

3.2 生成时钟

FPGA时序分析与约束(10)——生成时钟-CSDN博客文章浏览阅读1.3k次,点赞29次,收藏15次。如今的Soc在同一个芯片内包含多种异构设备。同一个芯片内可能包含高速的处理器和低速的存储器。这些工作在不同频率下的器件通常由不同的时钟触发。每个部分的运行是基于各自时钟的,这些会带来异步性的设计问题。这可能导致几个时钟都源于同一个主时钟,这些时钟称为生成时钟(衍生时钟、派生时钟)。https://blog.csdn.net/apple_53311083/article/details/134129986

3.3 时钟组

        还没写呢,有空一定

3.4 其他时钟特性

        别急

四、端口约束

FPGA时序分析与约束(13)——I/O接口约束-CSDN博客文章浏览阅读2.5k次,点赞68次,收藏29次。在应用了时钟约束后,所有寄存器到寄存器的路径都能定时。为了获得更加精准的FPGA外部时序信息,设计者需要为FPGA的I/O接口指定时序信息,一般时序工具只能获取FPGA器件内部的时序信息,对于FPGA器件引脚之外的时序信息,必须由设计者约束定义。如果没有指定的输入输出的,时序分析工具会假设在接口上使用最优时序要求并假设电路单元的组合逻辑本身具有整个周期,电路单元外部没有信号https://blog.csdn.net/apple_53311083/article/details/134335666

五、时序异常

5.1 虚拟路径

FPGA时序分析与约束(14)——虚拟路径-CSDN博客文章浏览阅读319次。到目前为止,我们已经看到了如何约束时钟和端口来指定设计中的时序要求,我们可以通过这些基础的约束命令来进行时序约束,但是时序分析工具默认的时序检查方式可能和我们实际工程实现的情况不同,通常来说是约束过紧,可能导致时序失败。此时,设计者就需要额外增加一下啊约束命令,用于调整既有的时序检查方式,以保证达到我们的设计预期。设计者额外增加的这部分约束,我们称之为时序异常(也有地方称之为时序例外约束)。本文中,我们重点关注虚拟路径。https://blog.csdn.net/apple_53311083/article/details/134365891

5.2 多周期路径

        会写的

5.3 最小延迟和最大延迟

        未完待续

这篇关于FPGA时序分析与约束(0)——目录与传送门的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/485551

相关文章

Python中的Walrus运算符分析示例详解

《Python中的Walrus运算符分析示例详解》Python中的Walrus运算符(:=)是Python3.8引入的一个新特性,允许在表达式中同时赋值和返回值,它的核心作用是减少重复计算,提升代码简... 目录1. 在循环中避免重复计算2. 在条件判断中同时赋值变量3. 在列表推导式或字典推导式中简化逻辑

C# Where 泛型约束的实现

《C#Where泛型约束的实现》本文主要介绍了C#Where泛型约束的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录使用的对象约束分类where T : structwhere T : classwhere T : ne

SpringBoot内嵌Tomcat临时目录问题及解决

《SpringBoot内嵌Tomcat临时目录问题及解决》:本文主要介绍SpringBoot内嵌Tomcat临时目录问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录SprinjavascriptgBoot内嵌Tomcat临时目录问题1.背景2.方案3.代码中配置t

Java程序进程起来了但是不打印日志的原因分析

《Java程序进程起来了但是不打印日志的原因分析》:本文主要介绍Java程序进程起来了但是不打印日志的原因分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java程序进程起来了但是不打印日志的原因1、日志配置问题2、日志文件权限问题3、日志文件路径问题4、程序

springboot上传zip包并解压至服务器nginx目录方式

《springboot上传zip包并解压至服务器nginx目录方式》:本文主要介绍springboot上传zip包并解压至服务器nginx目录方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录springboot上传zip包并解压至服务器nginx目录1.首先需要引入zip相关jar包2.然

Java字符串操作技巧之语法、示例与应用场景分析

《Java字符串操作技巧之语法、示例与应用场景分析》在Java算法题和日常开发中,字符串处理是必备的核心技能,本文全面梳理Java中字符串的常用操作语法,结合代码示例、应用场景和避坑指南,可快速掌握字... 目录引言1. 基础操作1.1 创建字符串1.2 获取长度1.3 访问字符2. 字符串处理2.1 子字

SpringValidation数据校验之约束注解与分组校验方式

《SpringValidation数据校验之约束注解与分组校验方式》本文将深入探讨SpringValidation的核心功能,帮助开发者掌握约束注解的使用技巧和分组校验的高级应用,从而构建更加健壮和可... 目录引言一、Spring Validation基础架构1.1 jsR-380标准与Spring整合1

Spring LDAP目录服务的使用示例

《SpringLDAP目录服务的使用示例》本文主要介绍了SpringLDAP目录服务的使用示例... 目录引言一、Spring LDAP基础二、LdapTemplate详解三、LDAP对象映射四、基本LDAP操作4.1 查询操作4.2 添加操作4.3 修改操作4.4 删除操作五、认证与授权六、高级特性与最佳

Python 迭代器和生成器概念及场景分析

《Python迭代器和生成器概念及场景分析》yield是Python中实现惰性计算和协程的核心工具,结合send()、throw()、close()等方法,能够构建高效、灵活的数据流和控制流模型,这... 目录迭代器的介绍自定义迭代器省略的迭代器生产器的介绍yield的普通用法yield的高级用法yidle

C++ Sort函数使用场景分析

《C++Sort函数使用场景分析》sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变,如果某些场景需要保持相同元素间的相对顺序,可使... 目录C++ Sort函数详解一、sort函数调用的两种方式二、sort函数使用场景三、sort函数排序