FPGA最大工作频率教程

1.  Quartus的时序分析

作为编译过程的一部分,Quartus对布局布线的电路做时序分析。在编译报告里,展开“Timing Analyzer”,这里有几种不同模型的时序分析结果。我们参考最慢的一种模型:Slow 1200mV 85C Model。展开这个模型,选择Fmax Summary,这个时钟频率是当前电路在不违背触发器建立时间的前提下的最大工作频率。

2.合理的时序分析的要求

为了使分析起作用,被分析的电路必须包含寄存器和一个驱动寄存器的有效时钟。如果没有实现这些,工具将返回:“No paths to report”。

3. 电路的最大工作频率

虽然第1部分里提到Fmax Summary,但这个名称容易误导。那个频率不一定是电路实际可以达到的频率。打开工程的SDC(Synopsys Design Constraints)文件,将看到类似这样的一行命令:

create_clock -period "50.0 MHz" [get_ports MAX10_CLK1_50]

SDC文件里的命令表明实验板上的晶阵的频率是50MHz,这个时钟作为设计输入。Quartus综合后的电路需要至少工作在50MHz,一旦实现这个目标,Quartus将优化设计的其他方面,占用更少的资源或更低的功耗。

图1描述了4个信号在寄存器里传输时需要的时间接近一个完整的时钟信号的周期,这个时钟信号就是最接近这个电路的最大工作频率。

图1 4个信号的传输需要一个时钟周期来分辨

4. 达到最大工作频率

改变SDC文件里的时钟频率,并不能真的改变实验板上的时钟信号,只是改变了Quartus要实现的频率目标。

通过改变SDC里的时钟频率,可以迫使Quartus优化电路设计,提高电路的速度,直至优化后无法实现,这样也可以逐步尝试得到最大频率。

除非在非常特殊的情况下,如果一个数字设计在某个频率上运行,它也会在任何较低的频率上运行,所以增加时钟的频率不会损害最终设计的功能。反之则不然。就是说综合后能快跑的,当然也能慢跑。

那么尝试若干次,怎么才能知晓已经到达极限了呢?就是当Slow 1200mV 85C Model变成红色的字体时,最近一次能实现的频率就是最大工作频率。

References:

  1. EEC180 Tutorial: FPGA Maximum Operating Frequency EEC180, Digital Systems II

https://www.ece.ucdavis.edu/~bbaas/180/tutorials/fpga.timing.html

Written by YongfengXie

2022/05/25     Written

FPGA最大工作频率教程的更多相关文章

  1. xilinx 赛灵思fpga verilog hdl 教程

    http://www.eefocus.com/article/08-03/37231s.html http://wenku.baidu.com/link?url=5mdkMmm4BGGi7gRdgSk ...

  2. FPGA书籍

    Xilinx FPGA开发实用教程(第2版) 徐文波,田耘 著

  3. 关于FPGA学习路线

    1.参考FPGA厂商的参考资料,将某系列FPGA所有芯片资料下载下来,有针对性的做参考. 2.参考FPGA厂商开发板以及相应的参考设计,在开发板里有众多的外围接口电路,基本涵盖了常用的应用场合.同时也 ...

  4. FPGA中如何实现除法?

    摘自:<xilinx FPGA 开发实用教程> 1)被除数重复的减去除数,直到检测到余数小于除数为止,优点:对于除数与被除数相差较小的情况下合适 2)通过如下图片方式实现+状态机.优点:挺 ...

  5. FPGA加三移位算法:硬件逻辑实现二进制转BCD码

    本文设计方式采用明德扬至简设计法.利用FPGA来完成显示功能不是个很理想的方式,当显示任务比较复杂,要通过各种算法显示波形或者特定图形时,当然要用单片机通过C语言完成这类流程控制复杂,又对时序要求不高 ...

  6. 目标反射回波检测算法及其FPGA实现(准备篇): 用Verilog-HDL状态机控制硬件接口

    基于FPGA的目标反射回波检测算法及其实现(准备篇) :用Verilog-HDL状态机控制硬件接口 前段时间,开发了一个简单的目标反射回波信号识别算法,我会分几篇文章分享这个基于FPGA的回波识别算法 ...

  7. 兼顾FPGA和单片机

    当今,FPGA和单片机的应用非常广泛,在有FPGA知识的基础上,笔者认为可以把FPGA作为主要的学习目标,单片机作为辅助技能.其实二者是相互促进的.不管是FPGA还是单片机的开发其实都是基于较强的逻辑 ...

  8. 【小梅哥SOPC学习笔记】Altera SOPC嵌入式系统设计教程

    Altera SOPC嵌入式系统设计教程 第1章 概述 SOPC(System On Programmable Chip,可编程的片上系统)是Altera公司提出来的一种灵活.高效的SOC解决方案.它 ...

  9. 转 让FPGA替代GPU的6大顾虑,你确定不看看吗?

    最近FPGA又频频被各AI领域的巨头看好,比如微软.百度.科大讯飞都对FPGA应用前景有所期待.那么如果让你选择FPGA作为AI计算系统的主力军,你会有什么样的顾虑? 这几天,已经退役的AlphaGo ...

  10. 计算机组成原理 — FPGA 现场可编程门阵列

    目录 文章目录 目录 FPGA FPGA 的应用场景 FPGA 的技术难点 FPGA 的工作原理 FPGA 的体系结构 FPGA 的开发 FPGA 的使用 FPGA 的优缺点 参考文档 FPGA FP ...

随机推荐

  1. R语言数据质量分析

    数据质量分析是数据预处理的前提,也是数据分析结论有效性和准确性的基础. 数据质量分析的主要任务是检查原始数据中是否存在脏数据. 脏数据一般包括: 缺失值分析 缺失值产生的原因.影响 原因: 部分信息难 ...

  2. 可能是迄今为止最好用的WPF加载动画功能(没有之一)

    前言 当我们在开发应用程序时,用户体验往往是至关重要的一环.在应用程序加载大量数据或执行复杂操作时,为用户提供一个良好的加载体验变得至关重要.加载动画是其中一个有效的方式,它不仅能够告知用户应用程序正 ...

  3. 绚烂之境:Python Rich,让终端输出更炫酷!

    转载请注明出处️ 作者:测试蔡坨坨 原文链接:caituotuo.top/c8c7bd95.html 初识rich 你好,我是测试蔡坨坨. 在代码的世界里,每一行都是一个故事,每一个变量都是一个角色, ...

  4. Android将数据导入到已有的excel表格_0

    用到的jxl2.6.12 jar 包下载地址: https://mvnrepository.com/artifact/net.sourceforge.jexcelapi/jxl/2.6.12

  5. 动图演示步骤 Vmware安装Centos-7 最小安装/图形化界面及常见错误参考,基础配置推荐

    程序软件工具安装篇 --[Linux](Vmware/Centos-7) 目录 程序软件工具安装篇 --[Linux](Vmware/Centos-7) ①:文件准备工作 虚拟机工具安装文件 系统镜像 ...

  6. #线段树,二分#洛谷 2824 [HEOI2016/TJOI2016]排序

    题目 分析 这排序就很难实现,考虑定一个基准,小于该基准的视为0,否则视为1, 那排序可以看作将0和1分开,这就很好用线段树实现了 如果该位置是0,说明这个基准太高,显然可以用二分答案(基准),那么时 ...

  7. Mac 使用 Nginx 在本地部署静态网站

    安装 安装 Brew /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/i ...

  8. .NET 8使用日志功能以及自定义日志提供程序

    .NET 8使用日志功能以及自定义日志提供程序 日志级别 下表列出了 LogLevel 值.方便的 Log{LogLevel} 扩展方法以及建议的用法: 展开表 LogLevel "值&qu ...

  9. OpenHarmony 3.2 Beta源码分析之MediaLibrary

    1.MediaLibrary介绍 OpenAtom OpenHarmony(以下简称"OpenHarmony")MediaLibrary媒体库提供了一系列易用的接口用于获取媒体文件 ...

  10. Go 编程语言详解:用途、特性、与 Python 和 C++ 的比较

    什么是Go? Go是一个跨平台.开源的编程语言 Go可用于创建高性能应用程序 Go是一种快速.静态类型.编译型语言,感觉上像动态类型.解释型语言 Go由Robert Griesemer.Rob Pik ...