首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何让Quartus II更快地编译

如何让Quartus II更快地编译
EN

Stack Overflow用户
提问于 2008-12-10 02:46:29
回答 4查看 14.5K关注 0票数 7

我正在使用Altera Quartus 2做一个定制的8位处理器,在我的笔记本电脑上编译它需要花费很长时间。我只是使用模拟和使我的处理器原理图(方框图)和VHDL。现在它需要大约10分钟来编译,这是一个痛苦,因为我更多的是在项目的调试阶段,在这个阶段,我必须修复内部计时,并进行许多非常小的更改,看看会发生什么。

我实际上并没有把它放在FPGA上,所以我需要"fitter“和"assembler”的编译阶段吗?

我是否可以更改一个lpm_ram_dq的内存文件的内容,并在模拟中对其进行测试,而无需重新编译?

总而言之,有人知道如何让它编译得更快吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2008-12-17 18:42:42

按照重要性递减的顺序。

  • 更多内存。4 GB,适用于32位操作系统。有些设计需要更多的功能,并且需要64位操作系统。
  • 不要过度限制设计。
  • 会更改编译选项,使其不会太费力。这是在assignments> settings> Fitter Settings>Fast Fit (或自动Fit)下的
  • 8.1支持多个cores.
  • Hiearchical编译帮助,特别是当您有同一块的多个实例时。

2分钟真的很短,我同意之前的帖子。一扇门需要很长时间。

票数 3
EN

Stack Overflow用户

发布于 2017-10-27 05:43:15

一些有用的标志可以让Quartus合成更快,如果你不关心完全优化你的结果,只想得到一个悲观的估计或进行比较。

代码语言:javascript
运行
复制
set_global_assignment  -name PHYSICAL_SYNTHESIS_EFFORT  FAST

指定了物理合成应该使用的编译时间的工作量。Fast使用较少的编译时间,但可能会降低物理合成能够实现的性能增益。

代码语言:javascript
运行
复制
set_global_assignment  -name FITTER_EFFORT              FAST_FIT

快速拟合减少了优化工作,以减少编译时间,这可能会降低设计性能。

并且不使用execute_flow -compile,而使用:

代码语言:javascript
运行
复制
execute_flow -implement

选项将编译运行到路由阶段,之后跳过所有时间密集型算法。

在与英特尔/Altera工程师的一次会议上,使用-implement的速度比-compile快了大约20%,并且在迭代定时关闭结果时被推荐使用。

您还可以尝试执行以下操作:

代码语言:javascript
运行
复制
set_global_assignment  -name SYNTHESIS_EFFORT           FAST

注意:这有下面的警告,尽管我倾向于在某些设计中看到整体更快的运行。

当设置为“快速”时,将省略某些步骤以更快地完成合成;但是,可能会有一些性能和资源成本。Altera建议仅在运行提前计时估计时将此选项设置为Fast。运行“快速”合成的会产生一个网表,该网表对于装配者来说稍微更难布线,从而使整个装配过程变得更慢,这否定了“快速”合成所带来的任何性能提升。

编辑:

以下设置将惩罚您的计时,但它们也可以显著缩短编译时间,特别是在较新的Stratix 10/Agilex设计中:

代码语言:javascript
运行
复制
set_global_assignment -name OPTIMIZATION_MODE          "AGGRESSIVE COMPILE TIME"
set_global_assignment -name ALLOW_REGISTER_RETIMING    "OFF"
set_global_assignment -name HYPER_RETIMER_FAST_FORWARD "OFF"

您还可以使用以下命令关闭时序分析:

代码语言:javascript
运行
复制
set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS "OFF"
票数 5
EN

Stack Overflow用户

发布于 2008-12-17 18:11:43

一些事情:

如果你不打算把它放在上,为什么要用

  • 编译呢?只需使用Modelsim或ActiveHDL或任何您拥有的模拟器来模拟它。
  • 2分钟是一个非常短的编译时间。真的:-)
  • 试试Quartus 8,它比7和更早的
  • 快得多要检查你的代码是否正确合成并查看网表,你确实不需要fitter和汇编步骤
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/354962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档