首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

FPGA综合结果与优化值之间存在巨大差异

FPGA综合结果与优化值之间存在巨大差异

所有认为FPGA综合问题已获得解决的人,在近日于美国加州举行的FPGA 2006研讨会上都遭遇了当头一棒。一位知名CAD研究人士在会议中表明,与综合基准程序中已知的优化解决方案相比,当前综合工具所生成的电路规模可能要大70到500倍。 这位知名人士就是来自加州大学洛杉矶分校(UCLA)计算机科学系的系主任Jason Cong教授,他和他的学生Kirill Minkovich在会议中提交了一篇论文,标题为:对基于LUT的FPGA逻辑综合的最优性研究。该文描述了UCLA如何利用已知的优化解决方案生成基于查找表(LUT)的电路,并且将该方案与两个理论综合程序以及两个商业工具所产生的实际结果进行了比较。 “即使我们在该领域的工作时间超过20年,但是看到这个巨大差异仍感到惊讶。”Cong称,“这表明深入研究这个课题绝对是有必要的。我希望业界能加大该领域的投资力度。” 尽管这篇论文显示FPGA映射算法能够产生近似优化的结果,但是逻辑优化(综合过程的另一部分)的情形却截然不同。就这个问题文章指出,与基准程序中已知的优化解决方案相比,最好的工业和理论FPGA综合流程所生成电路的平均占用面积大概高70倍,某些情况下甚至高达500倍。 不过,Cong随即指出,这些结果并不是说商业综合工具在实际应用中就如此不尽如人意。“以基准电路为衡量标准会出现70倍的差距,但是这并不意味着每种类型的电路都会出现70倍的差距。”他表示,“不过,这到是揭示了现有工具和方法仍存在许多需要改进的空间。” 与会的FPGA综合工具供应商代表们普遍对该研究表示欢迎,但是他们也指出,Cong的综合基准程序并不能完全代表实际设计。实际FPGA所包含的内容远不止复制LUT这么简单,他们强调,门级的逻辑优化仅仅是从RTL到硅片设计流程中的一小部分。 Cong在EDA行业享有盛誉,他曾在2003年发表过类似一篇有关IC布局最优化的文章。除了在大学进行研究之外,他还创立了APlus Design Technologies公司。该公司主要从事FPGA物理综合业务,于2003年被Magma Design Automation公司收购。 “Jason是业内的顶尖学术研究人员之一,”Gartner Dataquest公司的首席EDA分析师Gary Smith表示,“他的研究一直在引领设计技术取得突破,同时他也是FPGA设计领域领先的专家之一。以这种资历,他所提出的70到500倍差异我们不能等闲视之。” 研究情况 正如Cong在其文章中所强调的那样,许多研究人员一直都认为FPGA综合是一个早已解决的问题,所以近年来也鲜有文章涉及该领域。而事实上,当该论文的另一作者Minkovich准备就FPGA映射进行研究的时候,UCLA才开始展开FPGA综合研究,而当时Cong并不确信是否真的需要进行此类工作。
图2: 比例系数显示电路规模较优化解决方案大70到500倍
这并不是Cong第一次撼动设计自动化领域。早在2003年,Cong就曾发表了一篇会议论文,阐述当时的IC布局算法产生了过多无用导线,致使芯片设计技术与其原本应该达到的水平相差了数代。据他介绍,那篇文章后来被广泛引用,并引发学术界进行了新一轮研究,将IC布局的最优化间隙降低到原有水平的20%左右。 Cong指出,考虑到逻辑网络经历了很多转换,因此找到用于综合的已知优化基准比布局要困难得多。但是他表示,FPGA有一个优点,它们依赖4或5个输入LUT。这样,UCLA研究人员针对一类单元就只需要给出已知的优化基准。 4种综合程序接受了测试,它们分别是:UCLA开发的理论程序DAOmap、加州大学伯克利分校开发的综合程序ABC、Altera公司Quartus 5.0工具组中的综合工具,以及赛灵思公司ISE 7.1i工具组中的综合工具。 为了测试映射,研究人员生成了带优化的逻辑综合样例(LEKO)电路基准。在LUT基础上,LEKO的逻辑门范围在305到 15,875之间。综合工具的技术映射结果与优化结果相差5%到20%,显示出可改进的余地不大,Cong提到。 为了测试逻辑最优化,研究人员生成了带上限的逻辑综合样例(LEKU)基准。这些基准在功能上等效于LEKO电路,但由于将进行综合,所以重新拆分了逻辑部分。这样做之后就可以获知优化解决方案的上限,但是并非优化解决方案本身。这意味着与实际优化解决方案相比,上限差距可能远不止70倍。 对逻辑部分的重新拆分大大增加了电路面积。“从理论上讲,如果你有一个很好的综合工具,你就应该能够重新发现原始电路。”Cong表示,“但我们尝试过的所有方法都无法找到原始结构,这就是我们得到70倍结果的原因。” 重新分解逻辑部分后,大多数的结果都集中在超过100万门以上规模的LEKU电路。由于赛灵思的映射器无法处理这种规模的电路,因此它被分割成一组功能上等效的非重叠小型电路。在这组电路上,优化的上限是70 LUT。综合工具返回的结果从Quartus的5,005 LUT(超过上限72倍)到ABC 的35,271 LUT(超过上限504倍)不等。 如果对一个更小的LEKU电路使用一种不同的分解方法,那么综合工具的结果只是优化上限的2.73到4.6倍。所以,前面给出的70倍是一个总体平均值。 然而,这些基准电路又有多少现实性呢?Cong承认,尤其是对较大的FPGA而言,有两种方法的综合基准与实际设计不相匹配。一种方法里,基准是组合性的,而实际FPGA设计包含了序列元件;另一种方法中,实际设计可能具有更低的逻辑级。 供应商反应 Altera公司首席工程师Mike Hutton认为,Cong的基准电路只能代表一个实际FPGA设计的一小部分。“他规划了一个完整却不合理的设计,正常情况下我们考虑的设计片断不进行优化综合。”他指出,“虽然Cong的文章重要且具有价值,但是它并不会使FPGA综合能力整体提高100倍。” 赛灵思公司FPGA实现工具高级主管Rajeev Jayaraman也赞同上述说法,他表示,“综合基准只代表实际电路的部分结构。利用这类结构,综合工具很有可能会被取代,但我们现在是在对照一个不同的标准进行优化。”Jayaraman认为,FPGA综合工具只能优化面积来适合选定器件,然后才会进行时序优化。” 对于那些赛灵思的综合工具无法编译的电路,Jayaraman认为实际的FPGA设计没有大的逻辑锥体。但是他强调,“我们非常想观察逻辑锥体,为什么不能够映射进去。” Mentor Graphics公司的FPGA综合产品线主管Daniel Platzker提到,实际的设计流程从寄存器传输级开始一直延伸到布局布线。此外他指出,实际的FPGA不仅包含LUT,还具有逻辑运算符、触发器、存储器和其它组件。“我们相信这篇论文是FPGA发展的重要一步,也认为它应该继续进行下去,但它和商业领域还没有什么关联。”Platzker称。 “论文的价值在于向我们提供了能够与之比较的已知优化设计,但我认为在实际设计方面我们并没有偏差到数百倍之多。”Synplicity公司的市场副总裁 Andy Haines表示。
返回列表