大型PLD需要建立自己的物理模型


先进的PLD使设计技术面临新的挑战。PLD加工工艺已经达到极深亚微米,在极深亚微米工艺中,互连比逻辑单元对时序延迟的影响要大。传统的工具和设计流程以逻辑单元来描述时序延迟,因而不能在设计初期描述互连效应(interconnect effect),尽管它们能执行物理模型的自动设计,但是PLD的互连架构非常独特,对PLD来说,即使采用经过验证的ASIC设计技术仍然不能解决问题。工程师需要的是面向PLD的全新自动化设计技术,特别要求PLD物理综合工具能将高生产率的高级设计工具与物理设计工具结合起来,从而实现复杂的PLD设计。

现在,PLD的结构已经达到6层以上,逻辑门超过百万,时钟频率接近200MHz,片上内存以及IP核是当今最复杂可编程逻辑的核心技术,但是生产如此高密度、高速度器件的精细加工技术带来了前所未有的问题,其特征与ASIC设计遇到的问题类似。

互连引发的问题

过去,逻辑单元决定时序延迟,现在逻辑单元之间的互连决定时序延迟。在0.25微米以下的加工工艺中,70%甚至80%的延迟是起因于布线互连。像综合这样的高效设计方法不能解决布线延迟效应问题,因而在布局布线之前,由互连决定的时序性能仍然无法确定。

因此,设计工程师为了满足严格的时序要求,综合和布局布线过程不得不反复多次,由于综合和布局布线往往在门级进行,因而修改时序的效果并不显著。

有些设计工程师尝试在PLD设计中采用ASIC设计技术来解决时序延迟问题,但是ASIC设计工具并不适用于PLD架构,因为PLD的物理互连、制造规则以及互连的电气特性都与ASIC差异很大。此外,对制造商而言,PLD架构及其互连特性也有很大差异,所以ASIC设计工具中的标准物理模型不适用于PLD设计。

另外一类工程师倾向于采用门级底层规划,在底层规划中综合电路的HDL代码可以得到网表。通过底层规划工具,设计工程师在布局之前提出约束条件,该条件能够确保关键门电路组彼此相邻,从而在布局布线阶段中能确保重要的时序路径尽可能短。

但是,门级底层规划费时费力,因为工程师要用HDL语言对电路编码,在寄存器传输级(RTL)描述功能模块,并在门级确定模块中哪个门存在问题,这就是意味着:设计工程师必须管理成百倍增加的设计对象,而且,很难将门级对象与生成门级对象的HDL编码关联起来,此外,设计中的微小变更常迫使工程师重新进行门级底层规划,因而可能浪费过去几周的设计工作。

在PLD设计中不能采用门级底层规划的重要原因在于,该方法不能满足快速设计的需要。例如底层规划设计工程师完成关键模块的布局之后,任何设计的变更都需要重建底层规划,这样又要花费数周时间修改RTL代码,重新综合并获得网表,然后再次做门级底层规划以实现设计要求的时序参数。

最重要的是,门级的底层规划工具不能改变实际的电路实现形式以提高电路性能,例如逻辑迁移(logic tunnel)和逻辑复制(自动地将寄存器转移到不同的物理区域)的改进能够明显的增强性能,因而,采用传统的门级设计方法很困难且很费时。

如果能在设计流程的初期,在综合开始之前,获取设计的物理布线信息,那么就可以用复杂综合算法同时执行布局和网表优化。

PLD设计自动化技术的发展方便了PLD设计工程师的工作。物理综合技术已经能在复杂的PLD中简化并改进实现时序快速收敛的过程。采用物理综合方法,设计工程师可以在HDL源代码编译之后快捷地按照标准时序约束来建立物理约束,但是,这个过程必须在电路优化和映射为特定型号的PLD之前完成。

表面上,这些物理约束与RTL底层规划类似,这样,物理综合实际上重构基于其物理特性的设计逻辑并创建布局。重构减少或者消除了在综合与布局布线之间的设计反复,且提高了生产率和设计性能。此外,RTL设计比在门级设计更快、更直观地创建约束条件。

在RTL上进行物理综合的主要优点在于,即使设计工程师修改功能模块,比如扩展总线带宽,但是模块器件业已建立的物理约束仍然有效。而门级底层规划设计工程师如果修改模块,就不得不重新进行底层规划。

在一些情况下,物理综合的同步优化和布局算法可以把设计的时序性能提高40%。这样就可以选用速度比较慢的器件,根据产量的不同,每个设计节约成本可达上万美元。

Synplicity公司的Amplify物理优化器工具是面向可编程逻辑设计的物理综合工具。Amplify软件把新的物理优化技术与Synplicity公司的Synplify综合环境中的逻辑综合算法相结合,它是一个分层优化引擎,能在物理优化之后应用电路拓扑和布局知识对网表进行重大改进。

Amplify工具利用PLD架构和用户定义的物理设计约束,在给定的物理范围内(例如Altera公司Flex 10K、Apex和Acex器件中的某些行或者MegaLAB)生成可预测的时序估计。借助这些物理信息,该工具可以导出更精确的时序估计并将其用于综合过程执行额外的设计优化。

关键路径优化技术的基础是已知的物理信息,其中有两项技术分别是自动迁移和逻辑复制。自动迁移采用边界优化技术在PLD的物理区域内自动地移动逻辑单元,减少互连延迟并提高速度,所以综合工具可以执行布局以改进关键路径的时序。为了改进关键路径的时序,逻辑复制自动地拷贝逻辑单元,当某些通向多个区域的路径中存在关键路径时,就可以采用逻辑复制技术。逻辑复制为每一条关键路径建立独立的模块拷贝,从而减少扇出,改进逻辑封装或布线延迟的可预测性。

由Altera和Synplicity共同验证的参考设计证明,与传统的综合方法相比,Amplify物理综合工具可以明显改进网表的性能。然而,物理综合的好处并不仅仅局限于提前给出待综合的布局约束。与不具备物理优化的综合工具生成的网表相比,Amplify生成的网表结构不同。理论上,功能分组逻辑可以改进设计性能,但是它无法防止关键路径穿越某些或者所有功能模块,从而降低了功能分组的功效,物理综合结合了经过改善的基于物理约束的延迟估计算法与关键通路优化技术。

高度可预测

因为物理综合依赖基于器件架构的设计结构优化,所以当器件结构高度规则而且可预测时,它将工作得很好。Apex器件的MultiCore嵌入式架构包括三种不同类型的PLD结构:类似Flex 10K和Flex 6000器件的查找表;类似MAX 7000器件的乘积项(product-term)模块;还有类似Flex 10KE器件中的增强型嵌入式内存模块。这些结构加在一起,可以使复杂功能的综合更加简便高效。MultiCore架构由逻辑阵列模块(LAB)构成,每一个模块包含10个Flex 6000逻辑单元(LE),两者结合构成MegaLAB分层结构,MegaLAB实际上是一个LAB的阵列,每一个阵列包括16个LAB和一个嵌入式系统模块(ESB),其作用是实现内存。

通过建立四层布线结构,MultiCore架构增强了Apex器件的连续金属布线结构。除了全局行列互连,MegaLAB互连还在MegaLAB结构中连接了所有的LAB和ESB。MegaLAB互连允许利用局部布线资源而不是全局布线资源来提高性能。局部互连还在同一LAB中将LE和相邻的LAB连接,就象Flex 6000中LAB的交叉连接那样。

Altera器件中逻辑和互连的分层结构适用于物理综合,因为用户可以将关键路径引入到若干定义明确的模块中,比如MegaLAB和ESB模块。这些布局约束可以在布局布线之前提前标注到Quartus底层规划工具之中。Altera器件的物理综合获得了真实的性能改善,为了研究Amplify工具的性能优点,可以利用Altera提供的10个经过测试的设计演示方案。测试数据表明,与仅采用Synplify工具的设计相比,Amplify工具性能平均提高16%,达到的频率可以比设计高5到10倍。

Altera公司和Synplicity公司紧密合作,在物理综合方法解决时序收敛问题上迈出了第一步。

COPYRIGHT(C) 2011 厦门永宏亚得机电科技有限公司版权所有(闽ICP备05025945号) ALL RIGHTS RESERVED?

电话: 0592-5190891 传真: 0592-5190720 E-Mail: E-mail:yade8895@163.com
地址: 厦门市海沧区兴港六里17号2607室 邮编:361009 联系人:翟先生