芯片设计方法学和工具
设计人员和设计管理人员总是有很多有关面对挑战的热门话题。本文中,针对用来开发网络芯片的工具和方法学,设计人员讨论了哪些是可取的,哪些是不可取的。此外还论述了所面临的最大问题和解决办法。
设计人员面临的第一个重大决定是从ASIC技术还是FPGA技术着手。Network Elements的2百万门多协议处理器,能提供10Gb Ethernet、SONET上的分组传输,(PoS)、以及SONET功能。它采用ASIC技术,“即便是最高密度的FPGA也实现不了我们需要的功能。而且FPGA器件的成本也过高,不可能批量地应用。”公司的Claude Denton透露,Network Elements的ASIC将安装在未来的光网络模块化产品中。ASIC的功能可简化光路设计、自动控制光路的工作、实现模块化环境化接口。Amber Networks的网络服务处理器具有630万个可用门,芯片尺寸为15 mm×15mm。这种ASIC可提供6.5Mpps的传输速率,用作Amber Networks的聚合服务路由器中的网络处理器
。
“我们采用ASIC是因为它能以最低的成本实现最高的集成度,这两者都是我们的用户所追求的。”Ishoni Networks公司的John Ren指出。Ishoni最近研制了上百万门级的SoC,片上有针对宽带应用的多个处理器、网络接口、以及多种外设功能。Avici Systems在其千兆位交换路由器中使用了ASIC和FPGA两种器件。该公司的Jeff Deutch明确说明了两者的不同,“就我们产品的水平而言,FPGA根本不可能提供所需的容量和速度。Avici只是将FPGA作为扩充其原始设计的器件。”为了支持公司的分布式可扩充结构,目前的产品范围涉及系统控制器用15万门ASIC以及交换机用6路、位片式90万门ASIC。
FPGA技术也有可取之处,它可以显著缩短上市时间。White Rock Networks最初将ASIC设计用于最近研发的OC-48 SONET分插复用器上,但由于发布日期的变化不得不改用FPGA。当然,该公司也表示,为了降低成本,长期目标还是ASIC。ASIC密度约有150万门(500000 kbps存储器)。对FPGA而言,White Rock看好Xilinx的VirtexⅡ器件。Stuart Barratt是Marconi plc的资深技术顾问。他考虑在整个公司部署通用设计方案。他着眼于带嵌入式处理器的FPGA。他认为:“采用FPGA的决定是以设计的并行执行能力为依据的,而该设计的算法非常适合FPGA结构。”
在选定了设计载体后,下一个选择是设计语言。多数被采访过的设计人员并不准备从HDL直接跳跃至C或System C ,或Superlog 一类的超级HDL 。
Avici是采用Verilog 完成设计工作的。Deutch透露:“我们也曾试图用C和人工翻译来设计,但由于C不善长表达我们为什么要做某些事情,因此很难保持设计的整体灵活性。”
Network Elements也是采用Verilog来设计ASIC的。 Denton透露:“我们已对C做了一些评估,确信这种设计语言有希望缩短设计周期、简化硬/软件协同设计。然而,冒然地改用仍不成熟的工具,在应用上并不具有明显的优势。至少在下一个设计周期之前。我们认为混合语言环境是可行的途径。”
即便是630万门级的ASIC,Amber Networks仍采用Verilog来设计寄存器传输级(RTL)。公司的Tom McLaughlin表示:“在设计阶段改用C/C++,对我们来说并不是件容易的事。这里的设计人员大多用惯了Verilog,不想追赶C的学习潮流,除非这种投入能得到巨大的回报。Superlog支持某些有用的结构,但不清楚是否以及何时能详细地了解这种语言。”
Marconi公司的Barrat在刚一接触Celoxica的DKI C——硬件综合工具时便使用Handel C编程语言。DKI旨在用高级C语言设计FPGA,没有中间的HDL过程。Barrat 指出,Celoxica 的DKI工具的最大优越性是设计环境的完整性和语言句法的简明性,从而能创建清晰的高级设计。
他进一步透露,DKI工具最受欢迎的扩展功能是“有助于将串行设计分类成并行设计。”Celoxica的Will Golby 也提到,DKI中有一个代码配置文件,能指出设计中发现的最长逻辑深度在什么地方。这有助于表明在什么地方并行设计是有用的。
IP集成是要面对的又一个障碍。Ishoni Networks采用平台基设计概念,来研发硬件和软件两种产品。Ren解释道:“IP集成的策略是,最初研发一个“模块化”的IP结构,然后再考虑可扩充性和可伸缩性,IP复用是 Ishoni策略的基本要素。”
Amber Networks的IP集成策略是让每个设计人员了解IP模块的功能和它的应用界面。 Mclaughlin 指出:“这样,每个设计人员都可以从IP模块库中选择相应的IP模块。只要有可能,我们将实施IP复用。”
有时也会被迫放弃IP复用。Avici 公司的Deutch 指出:“市场上可以拿来就用的IP非常少。我们甚至发现,由于技术不断地在变化 ,存在两年的代码已不适用于来年的芯片技术。”
“在设计过程中集成IP并不是件容易的工作,”Barratt 认为:“IP供应商要多下功夫,让用户使用起来更方便。”
被采访过的设计人员证实,验证是巨大的挑战。White Rock 使用Forte Design System开发的QuickBench验证套件。“Quick Bench为我们的工程师提供了一个选择的机会,即哪部分测试基准程序最适合用RAVE一类的高级语言来实现。”Keefer解释道:“百分之六、七十的设计过程涉及验证,验证在编代码阶段就已经开始。”
Texas Instruments的Warner指出:“我需要面向对象的硬件验证语言(HVL),”他认为:一种有效的HVL应能解决设计验证问题和大量的软件开发问题。如他自己所说,他参与“TI一项最紧迫的SoC工作。”其应用目标是IP电话。
Avici 则用Synopsys的Vera 来编写测试基准程序。“我们未采用HDL,其主要原因是为了减少测试基准的规模,”Deutch说。对大多数语言来说,任何程序员的每行代码的出错概率是一样的。“要是我能用半数的代码行编写出相同的概念,在着手寻找设计的错误之前,测试基准中出现的错误就只有原来的一半。”他说:“此外,Vera代码的运行速度比Verilog快,还能获得某些真正的程序结构,如阵列、类、以及标志”。
Avici仍在执行完整的门级仿真流程。在这个基础上,他们采用一种等效检验工具来验证RTL描述到门级、综合后门级到最终门级功能的一致性,同时,他们也使用Synopsys的PrimeTime进行静态时序检验。
Deutch说:“我们优先考虑无需博士一类高级人才就能操作的验证引擎。”Avici目前正在考虑几种验证引擎。“在这些工具上,我们的代码显得非常粗糙,我们期望投入能有明显的回报。购买一个真正的新型工具所付出的最大代价不是特许使用费,而是工作人员将它融入工具流中所花的时间。”Deutch披露。
静态验证也优先列在Ishoni Networks的清单上。“静态时序分析和形式验证对我们是极端重要的,”Ren说:“没有它们就无法实现成功的设计。” Ishoni在完整的验证中仍然使用传统的门级仿真。
随着几何尺寸的缩小和密度的增加,时序收敛性成为令设计人员头痛的一个问题,并影响他们在用户自有的工具(COT)与ASIC厂商之间作出选择。“最大的难题是时序收敛性,”据Avici 的Deutch说:“我们已选用了COT,来完成内部的布局。我们尝试过使用各种工具来完成任务,不管是LSI、 Synopsys、 Avant,还是其它公司的,对于LSI的G12,我们发现50%的时延是走线产生的,而不是门产生的。综合工具不能获得正确的线负载模型,而该模型对数据流芯片特别重要。目前,我们正在使用Synopsys的物理编译器,它试图将综合与布局集成在一起。我们初步取得了令人满意的结果,正在努力解决真正的难题。”
COT模型也受到Ishoni Networks 的欢迎。“对工程师来说,最大的难题是一次即可以设计出功能完整的硅产品。”Ren说:“我们的设计规划采用了Silicon Perspective的First Encounter,因为它能迅速地完成平面规划/布局,给出有用的线负载信息,工程师们可用它来细调综合过程。
Ishoni喜欢First Encounter的众多因素之一,是它的执行速度十分快。“它可让我们进行迭代,取得最佳的结果,在比其它工具更短的时间内让时序收敛。” Ren说,但First Encounter 不是十全十美的。“在完整的芯片级设计中也存在某些缺陷。例如,创建时序模型流程不理想,常常需要人为的干预。”
SPC公司的Ping Chao赞同Ren的评价,并对此作出了反应:“如John所说,尽管First Encounter 是非常有效的,但仍有改进的余地。我们的首要任务是改进完整芯片的设计流程。我们已对创建时序模型的过程作了几项改进,减少了人为的干预。”
Amber Networks则选择和ASIC厂商合作。“就ASIC来说,在分层设计流程中便完成时序收敛是最大的设计难题,” McLaughlin认为:“为了实现几百万门级的设计,必须采用分层布局布线的策略。”由于Amber的ASIC厂商使用了Cadence的Silicon Ensemble工具来实现其布局布线流程,因此Amber的设计人员也采用了Cadence的工具。
为了更好地预测时序收敛的路径,Amber采用了物理综合,时至今日,按此方法学产生的ASIC还未出现需要重新设计的情况。Mclaughlin表示:“物理综合是大势所趋。我们不打算用不同的工具来完成基于线负载模型的综合、单独布局、和基于布局的优化。”
Amber使用Cadence的PKS(物理知识综合工具)。该工具的优点是:Silicon Ensemble的时序结果与后布局结果相关;集成的扫描链重新排序和时钟树综合;以及易用的tcl基命令行界面。
NEC Electronics的Roethig使用的是Tera System最新推出的设计规划工具。该工具的独到之处是可在综合成网表之前确定物理设计。Roethig在解决最佳分类工具(best-in-class)与集成化成套工具的关系方面处于有利位置。“没有一个供应商能够同时提供卓越的设计规划工具和布局布线工具。”
Avici的Deutch的观点是“最简单的仍然是最必要的。要编写好计划任务的文件,并在交给软件人员之前将其修改好,确定已表达出真正想要完成的任务。不要让人们只埋头钻研于自己的设计部分,而忘记整个系统的要求。
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。