“我现在有一个 Arria 10 的设计,应该升级到 Quartus 17.0 吗?”(微信公众号Plunify_FPGA) 为了回答这个问题,我们使用 InTime 工具运行了60种不同的综合和布局布线的参数设置,每一种都是我们的 Default 配方生成的。 对比方法 InTime 的 Default 配方可以从过去的结果中学习然后生成优化设计时序和资源占用率的参数。我们运行两轮是为了利用 InTime 的学习能力来得到更好的优化结果。而且这样一来,我们也可以确定InTime是不是有能力生成同时适合 Quartus 16.0 和 Quartus 17.0 的编译参数。 结果 运行结果如下图所示,包括总负余量 (TNS),最差余量 (WS) 以及其他的编译结果。第一眼看上去,Quartus 16.1 和 Quartus 17.0 的结果十分相似。 然而,如果您仔细观察优良的结果,您会从总负余量和最差余量中发现更多的变化。 并且如果您数一下每个工具比较优良的结果,Quartus 17.0 在优良结果的数量比重方面确实占有优势。 针对同一个设计,两个工具链都达到了0ns的总负余量和0.01ns的最差余量。Quarus 17.0 的总负余量有着更大的分布和差异,但是它最差余量的分布较小。 那么,默认编译设置的表现如何呢? 最后一个大家都关心的问题是默认的设置表现如何呢?如果我们仅仅使用 Quartus 16.1 和 Quartus 17.0 的默认设置,那么,Quartus 17.0 将毫无疑问地胜出! (羞羞的提示: 不用担心使用 Quartus 17.0 不能让您达到40倍总负余量的提升,您还可以使用 InTime 来找到更好的设置!) 结论 总而言之,我们用生成的60种参数设置来让 Quartus 16.1 和 Quartus 17.0 便宜,结果显示 Quartus 17.0 的表现要好于 Quartus 16.1。 所以,升级您的工具吧! 免责声明:因为搜索空间十分巨大,60种参数设置在一个设计上组成了一个单一的,非典型的数据集。把编译分成多轮可以注入反馈并加强学习过程。为了方便起见,我们的实验只是为您提供一个不同工具版本之间差异的概览。
|