这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 通讯及无线技术 » 芯片设计技术的再升级

共1条 1/1 1 跳转至

芯片设计技术的再升级

菜鸟
2002-11-27 20:48:04     打赏
未来十年将是芯片设计产业蓬勃发展的时代。不过目前国内大多数芯片设计业者碍于资本小,所以仍然无法吸引众多优秀的技术人才参与。国内OEM业者的研发模式迟早必须转型为真正的ODM模式,而且必须提供能让工程师们发挥创意的良好研发环境,否则其优秀人才迟早会被SOC设计业者所吸纳。 系统单芯片(SOC)已经是芯片设计业者的下一波成长动力。可是随着芯片设计尺寸的不断缩小,对实体和逻辑设计的管理变得越来越困难。一个分层的、基于模块的设计流程有助于设计管理,并可使需求规划和模块层的协同设计成为可能,本文介绍一种使ASIC设计人员和半导体厂商间可以密切合作,从而加速SOC开发的设计方法。 为了满足时序要求,系统单芯片的设计人员需要利用多种设计方法、流程和工具。现在的实体合成工具能够处理从RTL到GDSII的模块级时序收敛问题。不过,IC设计人员面临的新挑战出现在芯片级(chip level),包括多供电电压支持、多个软模块的分层整合、分层信号与设计完整性,还有时间延迟预估问题。由于许多功能模块和内核都是在芯片级整合的,因此板级(board level)问题会遗留给芯片级,这是不可避免的。下一代工具必须处理这些芯片级的问题,以确保SOC设计能经过最少的重复设计循环,以快速完成。   芯片开发程序 芯片开发的程序可区分为六个阶段: 阶段一:需求规划 针对客户需求提出解决方案和规格计划书,这包含:功能方块图、接脚数量和脚位、以及其它特殊需求,这规格计划书一旦被客户认可后,即成为设计合约的一部份。另依据此规格就可开出估价单。 阶段二:设计与验证 在交付晶圆厂生产前,必须先完成原型(prototype)设计。透过模拟和实际环境的测试,可以确保未来量产出来的芯片能完全符合客户的需求。在此阶段时,为了要验证系统的性能,可能要为软件和韧体设计执行平台,因此需要主机板、数个FPGA和其它组件。这些验证工作可以使用VHDL RTL工具,将数据合成至FPGA或硅片上。当客户满意原型设计之后,双方签署设计同意书,芯片设计商就再将数据合成一次,并整合至选定的制程技术中,产生网表(netlist)提供下一阶段使用。 这个阶段产生的模拟式合成数据将会和未来的真实式晶圆合成数据相比较,以确保仿真出来的芯片功能和生产出来的芯片功能都一样。 阶段三:芯片电路布局(layout) 在此阶段,任何特殊的输出入储存格(IO cells)将被生产出来。有时为了节省时间,输出入储存格的生产可以并到第二阶段时实施。当第二阶段产生网表后,就可以转成电路布局,这电路布局是定义每个硅层的电路模式。电路布局完成后,开始计算时序(timing)。这是依据不同的制程、温度、和电压参数,以虚拟方法计算出芯片的最佳时序。 如果此最佳时序符合需求规格的条件,此电路布局即可交由客户签署认可(signed-off)。GDSII数据依此产生,交给下一阶段处理。如果最佳时序不符合需求规格的条件,就必须检查电路布局或网表是否有误、甚至回至第一或第二阶段重新开始。 阶段四:产生光罩(mask) 光罩是晶圆厂在生产硅芯片时,所使用的感光板。依照不同的感光特性,可以在不同的硅晶层上产生不同的电路。一般的CMOS制程需要16到18片光罩,每片光罩的模式或图样(pattern)是依照GDSII数据得出的。 如果ASIC(Application Specific Integrated Circuits)全部采用硬件来实现(亦即完全客制ASIC),其成本是很高的,所以有许多客户要求以韧体来取代硬件,以降低成本;亦即加入闸门数组(Gate Array),这种ASIC通称为「半客制ASIC」。使用韧体取代硬件时,只须针对特定的光罩重新制造,不需更换其它光罩和硬件电路,所以可以减少晶圆制造成本。 阶段五:样品生产 晶圆厂使用光罩生产出少量的原型硅晶圆(wafer),一般约为6到12片。其中一些将交由专业的测试厂做量产前的抽样测试。其余切成小芯片(die),经由封装厂组装,以塑料封包(plastic package)。封装好的芯片交由客户,在其真实的应用环境下进行验证和测试。 阶段六:正式量产 样品一旦经客户验证、测试无误后,即可签订量产合约。同时,芯片设计商必须负责设计测试工具(tooling)和准备测试向量(test vectors),并制作应用开发工具和必要的韧体和软件供客户使用。   分层设计的重要性 虽然扁平设计(Flat design)是实现设计任务的一种有效途径,但是当设计规模超过500万闸电路时,它就变得几乎不可行了。对于复杂度达到或超过这一规模的设计,尤其是由多个设计小组合作完成一个大型设计任务时,必须采用一种分层的(Hierarchical)、基于模块的设计方法。 内建有布局算法的综合工具可以提供更为精确的布局和布线时序预测,从而减少在设计流程前后阶段之间,进行重复循环的次数。只要将设计中的所有模块相邻布置,就可较为容易地对时序信息进行估计。但是这种做法没有为全局布线预留任何空间。故布局算法必须考虑到全局布线的要求。 因为金属层的选择可能对时序产生重大的影响,负责全局布线的人员也必须了解模块的具体布线。内层上的细信号线会相互耦合,还会与基底耦合,因此,考虑到这些越来越严重的信号线耦合,具体布线人员需要对寄生信号的提取和分析有所了解。所有这些都意味着设计过程中,前面和后面的步骤已不再是相互孤立的了。同时也显示下一代工具必须是紧密整合的,以使设计的每个阶段间能够进行重复循环和数据交换。 [img]http://www.eedesign.com.tw/forum/images/fo521.1.gif[/img]     图一:外壳/内核的划分   设计人员们一般是在孤立的情况下,对模块进行综合,然后将已经综合的模块交给一个实体设计小组进行封装设计。但是,芯片的封装会对设计产生一些附加的限制,因此常常需要重新对模块进行综合。一个整合的、分层的综合/布局和布线方法,允许前后阶段的设计人员在设计过程中更早地分享数据,从而使得只需要一次或很少次的设计,就能满足时序的要求。 向前期设计小组提供有关全局约束(包括信号线总长度、全局缓冲器、电源布线、对电池布设的影响、以及模块内布线)的信息,将可减少设计重复循环。另外,分层设计方法允许设计人员在需求规格设计时,使用从RTL描述中获得的信息执行电源规划与布线、全局缓冲,以及具体布线。   外壳/内核的划分 外壳/内核划分是一种分层的时序分析方法(图一)。它藉由从内部(内核)逻辑中划分出接口(外壳)逻辑,建立一个关于模块间时序的精确总体信息。外壳/内核划分的第一步包括区别实体区域中的外壳逻辑和内核逻辑。外壳逻辑是指位于实体区域边界与第一个输入缓存器之间的设计部份。而在输出端,最后一个缓存器与实体区域边界之间的逻辑也是外壳逻辑。在输入和输出缓存器之间的设计部份是内核逻辑。如果模块中没有缓存器,或者该逻辑并不通过一个缓存器,则将整个模块标记为外壳逻辑。 具体效能 这种外壳/内核的划分显著提高了芯片级时序分析与规划的效能。时序分析只读取外壳模块的网络表,而让内核模块中的实体处于黑箱状态。在典型设计中,一般的大型实体模块包含20%的接口逻辑和80%的内部逻辑,因此时序分析可使容量提高5倍,执行速度也会相对加快。 动态时序提取 在分层设计中还用到了「动态时序提取」技术,通常它能使芯片级时序分析的效能提高2倍,还能提高容量。藉由只分析芯片级的路径,「动态时序提取」自动避免了对任何包含在模块中的路径进行分析所带来的额外开销。设计人员只需指定设计中应当提取的模块,然后执行时序分析即可。   底层规划 RTL底层规划是植基于对设计尺寸的估计,估计中的任何不准确性都将使底层规划和用来创建它的大部份设计工作无效。比较之下,藉由开展软模块(或P&R单元)的协同设计,动态底层规划可确保模块严格依照约束条件来实现。藉由将实体影响纳入考虑,动态底层规划避免了估计的不准确性。实体综合技术构成了对实体限制进行估计的基础,并提高了尺寸估计的准确性。   信号的完整性 就像时序收敛问题一样,信号完整性的问题也随着特征尺寸的缩小而加剧。例如,对于0.25μm制程,只需要考虑几千个网络(net)的寄生影响,这些网络可以透过手工进行处理。在0.18μm制程中,这一数字变成了几百万个。在0.13μm制程中,大多数的网络都有问题,电源电压的降低也会使串扰和基底耦合问题变得更加严重。此时,以分析和校正为核心的方法也不管用了。 解决的办法是修正构造,这可支持整体式及分层的信号,并确保设计的完整性。影响信号完整性的因素包括串扰噪声、串扰对时延的影响、以及IR压降。影响设计完整性的主要因素包括电气迁移、导线自热(有时称作信号线电气迁移)和热电效应。在下一代的设计方法中,必须具有能在P&R过程中,避免将这些影响因素引入设计的试探算法。而其后的一个独立的分析和修正步骤,必须能验证先前的预防步骤,并改正任何遗留的问题。 [img]http://www.eedesign.com.tw/forum/images/fo521.2.gif[/img]   图二:与设计流程紧密结合的应用程序   供电分配问题 为了将功耗降到最低,设计人员通常会采用不同的供电电压,他们为设计中速度最快的部份保留较高的电压,或者在模拟/混合信号部份采用特定的电压。因此功耗分配问题的复杂程度也进一步加剧了。 功耗最小化包括在实体设计中将电源和接地连接进行交互式的自动分配。但是,逻辑网络表中并未指明电源连接,电压区域也不需要与分层模块的边界相一致。为了对此进行补偿,自动化工具采用几种不同的方法来为新增加的闸电路确定供电连接。供电连接可从与上游闸电路和下游闸电路的连接中获得,或者从面积推断得知。网络和管脚名称之间的一致性可以帮助建立供电连接。 闸电路的实体隔离也可暗示与一个普通供电电压的连接。在底层规划过程中,供电区域的可视化有助于布局和布线工作,它要报告每一个区域的利用情况和功耗情况。 此外,在设计中时序特性可能会随各模块所用的供电电压的不同而异。这意味着工具必须能将时序分析和多种电压区域分配间的选择达到最佳化。 此外,必须将有关多种供电电压的信息传递给实体验证工具。 具体功效 单芯片系统设计的一项主要技术是采用一个支持从RTL描述直到布局布线设计的分层数据的统一数据库。保持设计的分层性也缩短了设计周期。除了此处叙述的分层的布局布线流程之外,这个统一的数据库以及整合化的设计工具必须支持现有的扁平设计和分层设计的用途。为了提高设计流程中的可预测性,这个数据库还必须支持统一的时序、功耗分析以及信号完整性引擎。对于一个完善的芯片,增量引擎是综合过程所必需的。再加上一个公共域应用程序接口(API),设计人员就可以设计出与设计流程紧密结合的应用程序(图二)。 超越传统 传统的设计流程常常包括一系列来自不同厂家或是内部开发的各不兼容工具,维护这些工具可能会给设计小组带来很大的麻烦。若能将这些自前端到后端的工具整合起来,在输入、输出和转换数据等设计过程中,所消耗的时间就会大幅减少。 把所有设计工具都纳入到一个通用的用户界面之下,也很有帮助。这将为设计小组中的每一位成员,提供一个可以存取到整个流程中所有设计数据的环境。采用类似Tcl(功能比SNMP强的网络管理通讯协议)这样的工业标准语言也很有帮助。   结语 未来十年将是芯片设计产业蓬勃发展的时代。不过目前国内大多数芯片设计业者碍于资本小,所以仍然无法吸引众多优秀的技术人才参与。而拥有使用VHDL或Verilog技术直接设计电路(IP技术),完成芯片产品的国内业者并不多,大多数仍采用EDA或CAD软件,将电路图转成VHDL或Verilog程序代码和数据,因此如何取得电路图反而成为业者走快捷方式的方法。 因为SOC需要系统整合技术,诸如:与数字、模拟、射频、混合信号等有关的硬件设计,与通讯协议、侦除错、系统启动、算法、输出入控制等有关的韧体,与操作系统、驱动程序、通讯协议、应用程序等有关的软件,这些技术需要许多专家参与,所以要发展SOC就必须延揽各种领域的人才方能成功。 国内OEM业者已经投置太多资产在工厂制造上,造成管理上的难题和包袱,相对地也降低了对研发工作的投资。依据先进国家的经验,国内OEM业者的研发模式迟早必须转型为真正的ODM模式,而且必须提供能让工程师们发挥创意的良好研发环境,否则其优秀人才迟早会被SOC设计业者所吸纳。



关键词: 芯片     设计     技术     升级     业者     必须     实体     一个         

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]