• IIANews微官网
    扫描二维码 进入微官网
    IIANews微信
    扫描二维码 关注微信
    移动客户端
  • English
2025机器人产业趋势论坛报名
传感器

嵌入式综合技术增强了高密度FPGA工具性能

  2004年05月28日  

当谈及新出现的深亚微米危机时,我们自然会想到它对复杂ASIC的影响。然而,深亚微米危机已经延伸到可编程逻辑领域。不断改进的IC制造技术继续驱使可编程逻辑器件达到新的复杂度和性能水平。现在,可编程逻辑器件能提供比几年前最复杂的ASIC更多的功能和更高的性能。

新型可编程器件的复杂性,再加上其固有的布线延时,这使得FPGA设计者感到综合、布局及布线流程正面临危机。新器件的规模导致了更长的运行时间,并降低了在布局布线之前时序的可预测性。运行时间比FPGA的门数增长得更快,而且每次设计反复都可能出现一条新的关键路径,从而使设计者放弃超越工具的企图。更多的反复及更长的运行时间会拖延完成设计的时间,并抵消可编程逻辑的基本优势,即更快的设计周期。

这些新的设计问题促使业界创造新工具或改进旧工具。我们不能再假设设计流程的各个阶段是彼此独立的。HDL源代码中的高级信息能被用于布局及布线阶段,而来自布局的详细信息能被用来改善逻辑优化。改进设计流程的一种途径是利用嵌入式逻辑综合将实际的指导方针引入到设计工作中,如底层规划和分割等。

面向高复杂度可编程器件的关键设计任务要求转变观念。设计分割、综合、底层规划以及布局布线等都需要新的技术。最近,用于FPGA的综合算法取得了显著进步,正是依靠这些新的算法才有了新一级的设计工具。在今后几年,FPGA行业将转向这类从综合过程内部开始工作的新型工具。如果没有嵌入式综合,设计者将很难从最新的超高密度可编程器件中获得预期的效率和性能。

设计流程概述

FPGA设计工具的抽象水平和自动化水平已经大幅提高,以便与FPGA供应商推出的新型高复杂度、高性能器件保持同步。为了在快节奏的电子市场达到供应产品所需的生产力水平,高级设计语言(HDL)已经成为描述复杂FPGA的首选方法,而逻辑综合成为实现它们的首选途径。基于HDL的综合流程一般分为以下步骤:


( 编写HDL源代码


( 编译成RTL结构


( 逻辑优化


( 映射至一种特定技术


( 时序优化


( 布局


( 布线

HDL源代码用于描述器件的功能。编译步骤将HDL解释成寄存器、逻辑和算法操作以及控制电路等。逻辑优化旨在利用成熟的算法来降低实现的复杂性。为此,设计需要保持相对于实现器件架构(ASIC库或FPGA器件系列)的独立性。技术映射是指在特定器件架构中表现设计。

时序优化旨在改进设计以满足你的时序要求。布局将每个技术单元布置在芯片内,最后,布线通过分配走线资源来提供所需的互连。

如果假设每个步骤都是彼此独立的,就会导致前面所描述的非收敛性反复循环。在每个阶段,工具将预测余下流程将发生什么,并据此作出实现决策。每一后续阶段都受制于前面各个阶段所作出的决策。在独立模型中,布局阶段不能改变逻辑,以使布局变得更容易。这种流程的限制在于:前期阶段所作的改动具有最大的影响,但这些阶段的预测能力是最弱的;后期阶段拥有最佳的信息,但已经丧失进行重大改动的能力。

为了克服这种流程的局限性,我们必须提高前期阶段的预测能力,同时保留后期阶段的高级信息。如果非得改进时序预测才能终结无止境的反复周期,那么我们首先必须了解时序的构成,以及优化工具能够做些什么来改变时序。对于10万门以上的FPGA,我们要了解器件的底层架构,才能作出良好的预测。

FPGA设计的速度取决于许多因素:


( 在最简单的可编程逻辑单元中的延时;


( 由可编程布线导致的延时


( 构成电路中关键路径的逻辑互连


( 外部电路的时序要求等

时序预测问题

一旦设计被映射到特定的器件架构上,我们就很容易预测在最简单的可编程逻辑单元中的延时,但在映射之前却很难对其进行预测。通常,单元都具有丰富的能力来表现逻辑功能,但不同FPGA供应商提供的不同系列产品往往拥有不同的能力。所以,良好的预测要求映射到所选的器件架构上。

在典型的FPGA中,沿关键路径的布线延时总和占了整个延时的一半以上。在所映射的设计中,布线延时是最重要的预测项目。由特定互连导致的延时取决于互连的电容和电阻,而它们又取决于互连的物理位置、可编程器件的布线架构以及特定器件的尺寸。对布线延时的良好预测取决于对物理布局的良好预测以及对器件架构的充分了解。

用于发现最关键路径的静态时序分析算法以及用于考虑外部时序要求的技术等虽然复杂但易于理解。假设一个映射设计具有良好的预测,那么静态时序分析将能够可靠地识别出最关键的路径。

时序优化工具只有几种选择可以改善时序:

改变关键路径的电路拓扑,使新的关键路径具有更小的延时;改变布局,使它更容易使用更少的电阻和电容来进行布线;或者改变布线以减小电阻和电容等。

如果在综合与物理实现技术之间没有链接,那么就不能指望用可靠且可预测的方法来设计高密度器件。

底层规划

底层规划将位置约束施加到设计的逻辑上,以改进布线预测,并加快布局布线的运行时间。

典型的底层规划将电路区域划分成若干矩形区域(称为块),然后把逻辑安排到这些块中。分割产生两种效果,即单元位置的预测误差可以从芯片规模降低到模块规模,而且布局布线运行得更快了,因为这已经将一个非常大的问题分解成一系列更简单的问题。

如果我们将底层规划置于综合之后(即映射之后),那么我们能改善布局及布线的阶段,但无法进行逻辑优化。此外,你对设计的理解将遭到破坏,因为来自HDL的大多数关联信息已经被隐含在设计的可编程逻辑单元中,而且详细水平已经急剧提高。你无法轻易决定哪些单元是属于一类的。

如果将底层规划置于综合之前(在HDL源代码层),那么我们能了解设计折衷,而且布局信息能被综合工具用来制定有关逻辑优化的决策。不幸的是,你无法轻易获悉你是否已经超出块的容量或者哪些逻辑具有最关键的时序影响等。此外,设计粒度要与你的分层结构相匹配,这妨碍了你操作更低层次的功能,如计数器、加法器及状态机等。

最好的方法是将底层规划置于编译之后、综合流程的中间,这样你仍能从HDL源代码理解设计,然后在底层规划中嵌入高性能逻辑综合算法,以提供有关块容量及关键路径的反馈。

嵌入式综合意味着可以在逻辑捕获、优化和布局布线等传统的设计步骤中共享基础的优化及映射技术。嵌入式综合允许根据物理约束来重构逻辑,如那些在底层规划期间或在其它会影响器件实际布局的设计任务中产生的物理约束。

即使在处理HDL中的大型模块时,嵌入式综合算法也必须足够快,否则它将不适合在实际设计中使用。目标是提供实时反馈。在嵌入式综合能支持新一级工具之前,传统综合技术的性能与容量是难以克服的主要障碍。如果要等几个小时才能获得综合结果,那么就无法实现交互式的设计过程。综合必须在几十秒或最多几分钟内让你看到结果,修改设计,然后立刻看到新的结果。

克服复杂性问题

今天的大多数综合工具都不能在数分钟内提供结果,因为它们是基于已有12年历史的技术,尽管这些技术一直随着时间逐步改进,以获得更好的优化和芯片性能。随着业界超越10万门的复杂度,这些综合工具所采用的基础算法已经开始落伍。

目前,你可以通过创建分层并将设计分成若干可综合块来管理复杂性。对于大型设计,我们建议你采用一定数量的分层,因为这可以使设计变得更易管理和理解。但如果为了适应传统综合工具的限制而引入过多的分层,这将对设计周期产生不利影响。此外,许多传统综合算法的运行时间都随设计规模的增大而呈指数式增长。

这个特性使得采用传统技术进行嵌入式综合变得不切实际,尤其是当布局布线的运行时间已经很长时。克服复杂性挑战的一种技术是将你的RTL抽象为更高级的行为表述,并在整个综合过程(语言编译、逻辑优化和技术映射)中保留该抽象信息,直至最终的映射阶段。

这种方法与传统综合工具的区别是:在完成语言编译之后立即将设计细分成低层次(门)的表述。

通过保留更高级的行为抽象,综合工具能在更高的全局水平上执行优化(因为它更容易跨越分层的边界进行优化),并最终提供更好的结果。通过操作抽象数据,工具能运行得更快并处理更大的设计。

综合工具还应能分析初始的设计层次,并通过创建新层次或取消现有层次来做进一步的优化。从逻辑综合的角度看,这样做是有益的。这种技术的优势在于:每个模块沿关键路径的时序预算可以自动生成,使你更容易看到哪些地方可能需要进一步的改善。

器件分割嵌入式综合技术增强了高密度FPGA工具性能 - 1ALT="图1:分割是在HDL编译与技术映射之间的点上进行的。在编译之前或技术映射之后进行分割都不是最佳的选择。">

在更深入地研究底层规划以前,让我们先看看器件分割——一种与嵌入式综合有关的应用。当一项设计需要跨越多个FPGA或者在为一个比可用FPGA大得多的ASIC构建原型时,器件分割非常有用。今天,经验丰富的设计师一般用手工方法将他们的设计分割到多个器件中。

自动化分割工具还没有被人们接受,因为它们不能有效产生好的分割,以满足真实设计的时序目标。通常,以前的尝试主要在映射后的网表上进行操作,而没有触及HDL的高层次内容。

针对分割的嵌入式综合方法将用户交互性与快速、精确的预测以及HDL模块处理整合在一起,允许你交互地执行“假设分析”,并迅速决定器件的最佳分割。随着更短的系统设计时间变成许多电子市场的驱动因素,高质量且灵活的分割也变得越来越重要。

分割中的嵌入式综合使你能决定一项跨越多个器件的设计的最佳实现方式。通过执行优化并把设计映射到目标技术上,你能够对性能和利用率进行精确的预测。这种实时信息可被用于显示所选的逻辑将如何适应各种不同的器件组合。

分割是在HDL编译与技术映射之间的点上进行的。如果分割在编译(寄存器传输级)之前进行,那么分割器必须与完整的模块一道工作,而完整模块的较大规模将降低分割的灵活性。如果分割在技术映射之后进行,那么由于已经做出太多不可撤销的决策,因而不允许有效的分割及底层规划,而且许多关联信息会因此丢失。所以,你很难控制分割。在技术映射以前,有关设计的高级信息仍然可用,所以分割器可以与模块而不是大量逻辑门一起工作,这些门代表了技术映射之后的设计。

HDL编译与技术映射之间的性能分割可以实现一种良好的平衡。

更佳性能

在技术映射之前分割设计还有可能通过使用对象复制等高级优化技术来获得更佳的性能。

假设一项设计包含一个驱动两个时间关键逻辑块的寄存器,而你想把这两个逻辑块放置在不同的芯片上。如果你将寄存器置于其中一个芯片内,那么将导致另一个芯片出现性能问题,因为芯片到芯片的关键路径实在太长。但分割器能为你提供一种选择,即同时在两个芯片上复制寄存器,从而确保良好的时序结果。

因为当分割改变时设计会被再映射(即完成一次快速的预测综合),所以分割图能准确显示每次分割是如何执行的。然后,分割图能将时序目标与每个芯片中逻辑的实际速度进行比较,并显示间隙差异。每个芯片上的彩色条形图提供了可用间隙数量的一个快速视觉指示。值得强调的是,这种分割法仅在综合速度足够快、能提供交互式性能时才有意义。

当映射可以在一分钟之内完成时,你能够随时改变分割,并几乎立即从屏幕显示图上看到结果。

除了获得更好的设计分割外,嵌入式综合还能简化将ASIC设计分割到FPGA中的工作。

根据ASIC设计的原始HDL代码创建FPGA分割通常并不方便。先编译HDL然后创建合适的分割可以解决这个问题,并使你更容易让ASIC及FPGA遵循相同的HDL代码。

底层规划比分割能更好地利用嵌入式综合。尽管这两种任务都涉及设计的物理分层,但分割偏硬,因为其涉及到目标FPGA的固定资源(逻辑单元及I/O等)。底层规划则更加灵活,尤其是Xilinx公司的产品。Altera公司1万门器件的列结构使得对这些FPGA进行底层规划更类似于分割。

但无论你计划采用哪一种类型FPGA,嵌入式综合的底层规划可以很好地使用HDL编译与技术映射之间的设计表述。

底层规划器能根据单个寄存器进行操作,但不会受制于技术映射之后的门级细节。如果设计包含16位寄存器,技术映射可以将寄存器扩展成16个对象加上其它一些相关逻辑。结果,产成的复杂映射对于底层规划而言是不切实际的。

与分割的情况类似,在技术映射之前进行的底层规划能提供复制逻辑的机会,以提高性能。这种能力有助于纠正布线问题,因为通过复制拥有少量输入、大量输出的对象可以减少全局布线。

假设一个解码器带有4路输入及16路输出,它要驱动经底层规划后被分配到芯片中不同区域的3个模块。将解码器复制到这3个区域中可以极大地减少全局布线的数量,并允许你在时序与布线能力之间进行折衷。

在HDL编译之后才做出这样的决策是非常重要的,因为在HDL层次,解码器是更大模块的一部分,但现在只有解码器需要被复制。

通过进行更好的底层规划,嵌入式综合将有助于减少满足时序预算所需的反复次数。另一个好处是可以显著减少布局布线运行时间,而这是目前反复循环中的瓶颈。

主要FPGA供应商的布局布线工具都有一种机制,允许输入底层规划信息以用于网表级的布局。正如前面所述,在这个层次,布局是单调的而且不能有效处理大型RTL块。因此,布局布线工具需要一种能够在更高层次上接收底层规划信息的途径。

增量布局布线还有助于打破这个瓶颈。一旦设计被分割到模块中,如果你需要进行只影响其中一个模块的改动,它应能只重新布线这个模块,并将所有模块重新组合在一起。这种能力是FPGA布局布线工具迈向更有效操作的一个自然结果。

专为深亚微米高复杂度可编程器件开发的新一级工具正在出现,从而使10万门以上的FPGA成为主流选择。

为了维持复杂可编程器件的生产效率,并提供领先的器件性能和利用率,我们必须采用新方法和新工具。推动新一级工具发展的技术将是嵌入式综合。嵌入式综合将提供逻辑优化、技术映射与后端布局布线工具之间所需的衔接,而这正是目前高端GPGA设计者面临的瓶颈。

作者:Ken McElvain


首席技术官


Synplicity公司


最新视频
伊顿Bussmann:百年品牌 以创新驱动发展   
欧姆龙光电传感器E3AS | 角度特性演示:高反光不锈钢工件稳定检出   
研祥金码
专题报道
《我们的回答》ABB电气客户故事
《我们的回答》ABB电气客户故事 ABB以电气问题解决专家之志,回答未来之问。讲述与中国用户携手开拓创新、引领行业发展、推动绿色转型的合作故事,共同谱写安全、智慧和可持续的电气化未来。
企业通讯
优傲机器人新品巡展 NVITATION 邀请函
优傲机器人新品巡展 NVITATION 邀请函

优傲机器人将于2025年6月5日在北京亦庄举办新品巡展活动。届时,您将有机会近距离品鉴优傲新品成为首批见证 UR15 中

2025中国智能制造发展论坛报名邀请函
2025中国智能制造发展论坛报名邀请函

6月4日,2025中国智能制造发展论坛聚焦“数智创新赋能产业升级”与“绿色低碳构建可持续生态”双核议题,汇聚政府机构、全

在线会议
热门标签

社区