设计复用是加快设计进程和降低成本的有效方法,但设计工程师同时还必须注意设计复用的易用性、可配置性以及第三方所能提供的技术支持和相关技术配套,如设计文档、设计验证和测试工具等。本文分析了设计复用所面临的多种挑战因素,并提出了相关的设计复用策略。
芯片制造商之间的竞争日趋激烈,为了抢占市场先机都以最快速度推出符合新标准的芯片,这些新标准包括IEEE802.11g、10Gbps以太网、USB2.0、USB On-The-Go、蓝牙和PCI Express。研究显示产品寿命周期在不断缩短,而由于设计复杂性的增加,设计周期却加长了。
更高的设计复杂度和项目进程的缩短使芯片设计工程师面临更大挑战。随着门数量不断倍增,设计团队的工作负荷达到了饱和点,在无法再增加设计人员的情况下,设计工程师越来越不能满足市场的要求。为能及时满足市场需求,芯片设计工程师必需通过设计复用来利用重要的IP。IP复用可以使工程师能在短的时间内实现高性价比的产品设计。
IP复用的挑战和策略
随着新产品的投放时间减为三个月甚至更少,缩短面市时间对于系统级芯片设计具有很大的挑战。为加快产品面市,设计工程师必需通过复用重要的IP来避免重复劳动。复用IP的优点是降低了进行再设计的成本,并减少了在设计中出现错误的风险。IP复用存在的挑战是要确保经过硅验证IP的易用性和可配置性,易用性在很大程度上决定于IP设计是如何实现的。在需要IP复用的设计中可能需要一个不同大小的FIFO、另外的寄存器、不同的数据/地址宽度,以及不同系统总线接口和不同的工艺技术等,在大多数情况下需要对IP作一定程度的修改。
为使一个设计能为将来复用,需要设计工程师遵循标准的复用方法,以保证设计的一致性。其中一个考虑因素是RTL编码指南,它列出了设计工程师应遵循的编码规则,像使用简单结构、时钟方案、分割方案、命名惯例、参数使用、工艺和状态机的标准结构等。这样的目的是得到一个规则的、便于理解和可配置的设计。
除了RTL编码指南外,还有用于综合和验证的编码指南。综合指南提供用于创建综合脚本的规则,目标是使之符合设计工程师技术库时序规范要求。综合指南包括综合策略,像设计分割、至上而下和至下而上的综合、 扫描插入、时序预算、输出负载预算和输入驱动单元,以及温度和电压这类工作条件、时钟树的处理、数据通路等。
验证指南的目标是创建一组可复用、鲁棒的和全面的测试平台来实现零缺陷,这种测试平台应该可以配置以用于不同设计实现的参数。仿真脚本和测试平台也应能与在整个系统测试过程中使用的其他验证工具兼容。验证策略应按不同类型的验证以及所用验证平台的类型来进行编制。测试类型包括标准一致性测试、边界测试(Corner testing)和回归测试(regression testing)等,而验证平台包括测试平台自动化工具、代码覆盖工具和仿真等。
当一个公司进行设计复用时,一般会有一个中央数据库管理系统,用来控制IP的不同版本。随着内部和第三方IP的增加,能够管理、分配、控制和提供基于知识分享系统的基础设施变得越来越重要,因为它将影响到设计周期的长短。根据多个像VSIA和OpenMore之类的业界标准来评价一个设计的工具也有助于减少评估过程。通过一个灵活的设计过程控制系统,IP管理系统还应该能建立一个设计环境,将IP与设计以及验证工具集成起来,建立一个完整的可伸缩的SoC设计方案。
设计复用的成本问题
在实现设计复用时要做出大量的工作,这些工作直接转换成工程成本。决定是使用已经采用了设计复用方法的第三方IP来实现设计复用,还是在内部再创建一次性设计或内部实现可复用设计,这样的决策对最终的成本有很大的影响。以图1为例,设计一个用于将来可复用的USB内核的开发成本大约是36万美元(假设需要一个工程师,年薪为12万美元,三年的设计时间),比仅用一次的设计成本超出80%,比从第三方购买现成的IP要贵260%以上。当设计被多次复用,复用的成本(图中蓝色)也就增加,但不会比多次设计的成本(图中红色)高。该图清晰地说明从第三方IP供应商处购买要比多次设计更为经济。在本例中,如果设计复用不超过三次,每次使用的模型(图中黄色)更为经济。为了认真评估每一种选择的成本问题,工程师必须了解设计的复杂性。
设计复用和使用第三方IP的问题可以通过一个以太网系统的实现来说明。在一个以太网系统中有三个基本的构建模块,即为开放式系统互连(OSI)3-7层、以太网媒体存取控制(MAC)控制器、物理收发器和物理层(PHY),如图2所示。OSI层通常由软件单元组成,MAC控制器是一个数字器件,PHY是一个模拟器件。实现MAC控制器有三种选择:使用市场现成的分立元件、自行设计控制器,或者从一个可靠的供应商购买第三方IP。
使用一个标准的以太网分立元件似乎是最简单的方案,具有最低的风险,但当对产品进行批量生产时,这并不是最经济的方案。此外,在进行选择时还有其它考虑因素,如器件的定制和可配制性等。具体决定时可能要求一个单芯片方案,将收发器、PHY与MAC控制器集成在一起,或者鉴于CPU的原因,系统总线可以不同。在大多数情况下,成本是最主要的决定因素。而在内部自行设计这个系统需要许多工程资源,如果从零开始则要求更多。此外,必须考虑产品的面市,按目前以太网新产品投放的速度,任何的延迟都有造成产品过时的危险。
任何新设计都有机会在功能上进行大改变,特别是像以太网这样的行业标准,其中互操作性是一个主要的要求,实现兼容性问题也有很高的风险性。每一个以太网设备都必需获得UNH认证来保证UNH的互操作性,设计在提交正式制版前必需得到认证。认证过程将识别新开发软件堆中任何未检查的边界状况,或发现一些在MAC层中的任何协议实现问题,还能检查PHY中的电气问题,如可能产生浪涌电流影响到物理层的正常运行。
根据业务的性质,采用第三方IP是一个较好的解决方法。采用第三方IP时需要注意是否具有现成的完整验证套件、一个全面设计文档,以及供应商能否提供技术支持和能否长期存在。对于以太网设计来说,它的通信主要依赖于协议,IP需要经过广泛的协议测试和严格的内核测试。供应商还应提供系统测试套件用于最后的SoC系统级测试。IP应该已获得所有的认证和兼容性测试。供应商还必需能在系统实现中支持设计工程师,并提供一个有关技术的规范文档、用户指南和编程人员指南的全面文件。此外,这些IP还应该具有一定的可配置性,因为大多数第三方IP设计并没有针对特定应用进行优化。当采用第三方IP案时,IP是否得到硅片验证很重要,经过验证的IP能增强用户的信心。像以太网这样的标准产品需要大量工作来进行设计和验证,采用第三方IP是一个更行之有效的解决方案。
本文小结
按照目前的设计规模,很多公司已经实现了某种形式的设计复用。虽然实际的复用方法各公司之间并不一样,但本文的思想方法对于RTL编码、综合和验证方面有共同的指导意义。为保证设计的成功实现,设计工程师必须遵循公司采用的指导方针。当决定如何实现系统时,系统实现人员还必须考虑产品的体积、成本、工程资源以及面市时间等因素。
作者:Desmond Kwek
高级应用工程师
Mentor Graphics公司