SOCppt课件 第四章 IP核的设计选择与验证

上传人:494895****12427 文档编号:241039202 上传时间:2024-05-26 格式:PPT 页数:83 大小:1.07MB
返回 下载 相关 举报
SOCppt课件 第四章 IP核的设计选择与验证_第1页
第1页 / 共83页
SOCppt课件 第四章 IP核的设计选择与验证_第2页
第2页 / 共83页
SOCppt课件 第四章 IP核的设计选择与验证_第3页
第3页 / 共83页
点击查看更多>>
资源描述
SoC技术原理与应用主讲:郭兵单位:四川大学计算机学院电话:028-81228076E-mail:2007年4月SoC技术原理与应用主讲:郭 兵 1第四章 IP核的设计、选择与验证 引言主要内容 IP核的应用现状 IP核的应用分类 IP核的设计方法 IP核的选择方法 第四章 IP核的设计、选择与验证 引言主要内容 IP核2 IP核验证环境主要内容 IP核验证过程 可综合性测试 Synopsys DesignWare Library简介 一个基于DW8051的税控机51核芯开 实例 IP核验证环境主要内容 IP核验证过程 可综合性测试 S3美国ICE主编的“ASICStatus99”中对IP和SoC的关系有这样一段精彩的描述:“YesterdayschipsaretodaysreusableIPblocks,andcanbecombinedwithotherfunctions,likevideo,audio,analog,andI/O,toformulatewhatwenowknowassystemonchip(SoC).”(昨天的芯片就是今天可复用的IP核,并能够同其它的功能模块相组合,如视频、音频、模拟和I/O模块,形成我们今天称之为SoC的东西)这个描述比较清楚地说明了一般的ASIC设计与可复用的IP核之间的演变关系,以及IP核对于SoC设计的重要性。由于IP核模块需要完成行为4.1、引言 美国ICE主编的“ASIC Status94(Behavior)、结 构(Structure)和 物 理(Physics)三个设计域的设计,因此,IP模块也就在 三 个 层 级 上 分 别 成 为 软(Soft)IP核、固(Firm)IP核和硬(Hard)IP核。由于目前IP核的规范尚不统一,如何根据系统功能划分、选择合适的IP核,并进行验证,集成到自己的SoC设计中,满足设计应用的需要是关键。目前,许多IC设计都采用基于IP的ASIC设计方法,这些IP要么自行设计和积累,要么选择向第三方专业IP公司外购,IP在整个IC及SoC设计行业中处于愈来愈重要的位置,因此,下面对IP的设计、选择和验证做一些简要的介绍。(Behavior)、结构(Structure)和物理(Ph54.2、IP核的应用现状在IC设计中,IP核复用可以有效地缩短产品开发周期并降低成本,然而目前整个IP核产业尚不成熟,行业规范和交流渠道的缺乏限制了IP核产业的发展。IP核是满足特定规范,并能在设计中复用的功能模块。根据功能不同,IP核可进行参数化,但IP核供应商必须提供相关的文档以及IP核功能验证方法。令人遗憾的是,目前还没有业界普遍接受的规范,不同公司的IP核需要满足的规范也不尽相同,这是在设计中很难融合不同厂商所提供IP核的一个主要原因。尽管一些组织提出了IP核应满足的标准,但迄今没有一个能够成为业界所广泛接受的规范,因此,IP核集成仍面临诸多问题。IP核可以在不同的硬件描述级实现,由此产生了三类IP核:软核、固核和硬核,这种分类主要依4.2、IP核的应用现状 在IC设计中,IP核复用可以有6据产品交付的方式,而这三种IP核的实现方法也各具特色。软核通常以可综合的HDL形式(RTL或门级网表)提供,可以供使用者进行前端的逻辑仿真和时序验证使用,因此,具有较高的灵活性,并与具体的实现工艺无关,其主要缺点是缺乏对时序、面积和功耗的预见性。由于软核是以源代码的形式提供,尽管源代码可以采用加密方法,但其知识产权保护问题不容忽视。硬核则经过完全的布局布线、以GDSII文件形式提供的IP核,一般都要经过物理设计和特定的制造工艺的实际验证,并且其结果要与仿真的结果相比较是吻合的后才能向市场提供。这种硬核既具有可预见性,同时还可以针对特定工艺或购买商进行功耗和尺寸上的优化。尽管硬核由于缺乏灵活性而可移植性差,但由于无须提供寄存器传输级(RTL)文件,因而更易于实现IP核保护。据产品交付的方式,而这三种IP核的实现方法也各具特色。7 固核则是软核和硬核的折衷。大多数应用于FPGA的IP核均为固核,固核有助于用户调节参数并增强可复用性。固核通常以加密形式提供,这样实际的RTL对用户是不可见的,但布局和布线灵活。在这些加密的固核中,如果对固核进行了参数化,那么用户就可通过头文件或图形用户接口(GUI)方便地对参数进行操作。对于那些对时序要求严格的固核(如PCI接口IP核),可预布线特定信号或分配特定的布线资源,以满足时序要求。由于固核是预先设计的代码模块,因此,这有可能影响包含该固核的整体设计。由于固核的建立(Setup)、保持(Hold)时间和握手(Hand-shake)信号都可能是固定的,因此其它电路的设计时都必须考虑与该固核进行正确的接口。如果固核具有固定布局或部分固定的布局,那么这还将影响其它电路的布局。固核则是软核和硬核的折衷。大多数应用于FPGA的IP核均8对IP核产业感兴趣的人可分为3类:第三方IP核供应商、第三方IP核用户及专门的IP核设计人员和用户。第三方IP核供应商是那些只对IP核开发感兴趣并以此作为最终产品销售或附属硅产品的公司,这些公司并不关心如何将IP核产品与整体产品设计进行接口。第三方IP核用户为那些开展大型设计项目的公司服务的企业,他们希望通过利用来自外部的IP核加速产品的上市时间。IP核用户正致力于开发针对特定应用的产品,而对自己开发专用IP核没有兴趣,因为自己重复利用这些IP核的机会很小。最后,专门IP核设计人员和用户则服务于那些针对特定市场进行大规模内部专用产品设计的公司。这些公司设计复用的机会很多,因为他们的设计主要针对某个特定市场。虽然这些公司在内部专用IP核的设计中 对IP核产业感兴趣的人可分为3类:第三方IP核供应商9形成了设计复用理念,但也购买一些外部开发的IP核,以作为内部开发产品的有益补充。由于IP核已成为芯片设计的一项重要内容,因此业界成立了一些组织以推动设计复用标准的发展,目标是开发一套业界标准,协调并制订IP核复用所需的参数、文档、检验方式等形式化规范,以及IP核标准接口、片内总线等技术性的标准,促进IP核使用,并简化外部IP核与内部设计之间的接口。下面介绍这些标准开发组织及其作用:(1)VSIA协会1996年9月虚拟接口联盟(VSIA:VirtualSocketInterfaceAlliance)成立,该联盟的成立是为了推动不同来源的IP核之间的“混合搭配”而制订开放标准,从而加速SoC开发。该联盟的会员由业界各系统公司、半导体公司、IP公司和EDA公司组成,目前有200家成员。VSIA希望通过发布开放的接口标准创建一个环境,形成了设计复用理念,但也购买一些外部开发的IP核,以作为内部10这样VC(VirtualComponent虚拟器件)就能以最少(甚至不需要)的“胶合”逻辑电路轻松地满足“虚拟接口”需求,而且是基于功能和物理层面的。VSIA标准包括业界已有的标准、公开或专有的数据格式,目标是创建可交付使用的IP核标准格式,这样IP核就完全独立于各个用户的独特设计流程。到目前为止,VSIA陆续已成立11个开发工作组,制定和发表的规范已被工业界广泛使用,应用于片上总线、IP核的接口以及IP核的使用、交换、测试、质量和保护等环节,这些标准和规范也是进行IP核电子商务的基础。(2)OpenMORESynopsys公司和MentorGraphics公司合作开展了著名的OpenMORE(OpenMeasureofReuseExcellence复用模块的开放方法)计划,这是建立在两家公司共同发起的“复用方法指南”(RMM)基础上的一项评估计划。OpenMORE将IP核设计视为完整SoC设计一部分的独立这样VC(Virtual Component虚拟器件)就能以11设计,此外,RMM还定义软核为软宏(SoftMacroCell)或以集成RTL代码形式交付的IP核,而硬核则定义为硬宏或以GDSII文件形式交付的IP核,硬核可以是完整的设计、布局和布线。当设计人员决定为他们的设计购买IP核时,IP核评估将成为设计流程的重要环节,OpenMORE方案有望通过为IP核复用质量提供合理的评估模式而简化IP核评估流程。IP核开发人员在一个工作表中填写有关硬核和软核的规则描述和应用指南,用户利用该过程得到的最后分数来评估IP核设计方法。工作表评估旨在改进IP核的可复用性,进而改善IP核集成至最终SoC设计的速度和可预测性。需要注意的是,在各个公司独立开发IP核设计标准的过程中,他们通常并不保证预想的IP核同实际IP核在功能上完全匹配,因为无法保证其他公司也具有与那些既购买第三方IP又自行设计IP的公司相同的设计复用风格。设计,此外,RMM还定义软核为软宏(Soft MacroCe12大部分OpenMORE用户是那些通常在使用公司内部开发的IP核和第三方IP核的公司,IP核提供商也可采用OpenMORE以使用户更方便地使用IP核,从而减少客户支持。(3)RAPID和VCX组织一些开发和销售IP核的公司于1996年成立了RAPID(ReusableAPplication-specificIntellectual-propertyDevelopers可复用特定应用知识产权开发者)协会,该协会致力于促进使用并接受外部IP核产品,其目标是通过建立相关的准则,鼓励协会成员在电子行业内或与产业标准组织合作时采用良好的商业和设计惯例,使设计人员更轻松地使用IP核。VCX(VirtualComponenteXchange虚拟器件交换)组织的任务是创建一个高效、开放的国际市场架构,以推进虚拟器件(VC)业务。该组织成立了一个“交易中心”,采用了股票和商品市场的最佳特性、服务和结构进 大部分OpenMORE用户是那些通常在使用公13行VC交易,这两个组织成立了合资公司以加速开发并使VCX成为全球IP核商务架构。在过去几年,业界和研究机构对于IP核在设计过程的影响进行了一些探讨,从理论和实践两方面论述了IP核对SoC设计的影响。尽管市场上很早就出现了IP核,但IP核的市场地位仍未确立,因此在向成熟市场发展过程中,IP核产品的用户和供应商仍然面临着严峻的考验。下面分别从用户和供应商的角度对IP核做进一步的分析。(1)用户的观点从事IP核设计的开发人员一直对缺乏基础架构忧心忡忡,采用第三方IP核时,最大的问题在于文档编制。文档编制之后,还需要能提供100%覆盖范围的测试平台,以验证IP核设计。购买IP核的设计人员不仅需要RTL文件,还需要保障设计性能。由于存在IP核产品许可证和设计集成工艺的问题,尤其是当设计中采用多家供应商的IP核时,融合难度的行VC交易,这两个组织成立了合资公司以加速开发并使VCX成为14增加使得采用第三方IP核是否还有意义值得商榷。这些问题通常会推迟产品的上市时间,进一步抵消了设计采用外部IP核的优势。在设计工艺中严格遵循IP核使用规范的公司通常需要耗费相当多的资源开发内部IP核,不仅内部开发的IP核需要遵循设计方法,而且在购买外部IP核之前更需要仔细地评估IP核。评估IP核的过程比较漫长,一般持续数周甚至数月,而评估IP核的成本也相当惊人,这不利于IP核融入小公司的开发流程。(2)供应商的观点IP核用户首次从IP核供应商购买IP核获取的经验非常重要。由于IP核产业相对而言仍处于成长期,因此IP核在工程师之间的口碑相当关键。实际上,某些IP核供应商甚至宣称80%的销售是“口碑相传”的结果。显然,与客户之间良好的关系至关重要,但IP核业界也开始寻求互联网的帮助,供应商不仅利用互联网展示产品,还将其作为一种交货方式。FPGA和CPLD等可编程逻辑器件公司也在IP核开发增加使得采用第三方IP核是否还有意义值得商榷。这些问题通常会15中投入了大量的人力和物力,如Xilinx和Altera这些公司已将IP核产品的成功开发视为百万门级新器件产品获得成功的关键因素。这些公司不但开发了自己的IP核和设计工具,并通过与第三方IP核供应商的合作,协助客户理解新设计方法以及为用户提供的IP核。尽管这些公司也经销IP核,但他们的目标是缩短FPGA设计时间以出售更多的硅片,可以通过出售IP核许可在一年的时间里将IP核进行节点锁定(node-locked),允许用户在一年时间内在其设计中随时地采用该IP核。一些硅片销售商允许在特定的设计中使用其IP核,而只在其他设计中收取微不足道的IP核复用费,而另外一些硅片销售商则对IP核复用完全不加任何限制。以出售IP核为其主营业务的第三方IP核供应商可选择不同的销售策略,他们既可以出售IP核以收取相关费用,用户可以将该IP核用于特定设计或未来任何设计,也可以选择按件计费的方式购买IP核,从而降低用户购买IP核的风险。此外,还可以采取综合上述两种方式的混合模式。中投入了大量的人力和物力,如Xilinx和Altera这些公16虽然IP核在实际应用中存在着许多问题,但是由于其巨大的发展潜力,目前许多公司都仍投入极大的人力、物力,开发相关的技术和产品,如很多EDA软件提供商,像Synopsys、Cadence、Mentor、Xilinx、Altera等,都提供了丰富的IP库与自己的EDA工具软件密切配合销售。更多的第三方IP(DesignlessorChipless)提供商,如CAST、ARM、xylon、ModelWare、TurboConcept、PaxonetCommunicationsInc、Artisan、DCD(DigitalCoreDesign)和Eureka技术(EurekaTechnology,Inc.)公司等,对外销售各种功能、各种层次、各种形式的IP核供IC设计公司使用,甚至许多Foundry厂商也提供了与生产工艺紧密相关的硬IP核,称为“FoundryIP”。据Dataquest公司的调查结果显示,作为在半导体工业中增长最快的一部分,1998年IP核的销售额为3.6亿美元,1999年全球IP核市场规模为4.2亿美元。前三家企业分别是英国ARM公司、美国MIPSTechnologies公司和美国Rambus公司,3家公司合计占有市场的50.6%的份额,虽然IP核在实际应用中存在着许多问题,但是由17而ARM公司以21.2%的市场占有率,位居首位。2000年,这一数字为6.2亿美元,到了2004年,销售总额预计将急增到29.4亿美元。其中以ARM公司为代表,只卖ARM处理器系列IP核的License,不加工、生产和销售芯片,2003年年销售额达到2.4亿美元。最近,半导体工业协会(SIA)2004年5月13日在韩国釜山举行全球半导体会议(WSC:WorldSemiconductorCouncil)年会,在会议中包括欧、美、日及台湾、韩国等半导体业者决定成立一个保护半导体知识产权的团体知识产权任务小组(IntellectualPropertyTaskForce)。WSC在本次会议上就IP核、保护环境以及交易等多种公共政策问题达成协议,并公布了多份有利于全球半导体业长期发展的政策劝告。除了呼吁各国政府和当局制定保护IP核的法规外,WSC也劝告各国政府禁止对数字设备和空白记录介质征税,以及在关税进行分类时,对配备多个芯片的IC与普通IC予以同等对待。而ARM公司以21.2%的市场占有率,位居首位。2000年,18目前国内IP核的发展特点呈现“应用为主、开发为辅、应用拉动开发”的态势,Fabless芯片设计公司通过自身设计复用的尝试和MPW计划的验证机会使内部使用的设计模块不断成熟,并成为可向外界提供的IP核。尽管中国现在还没有能够与国际半导体巨头相比的设计企业,但是随着一大批具有自主知识产权的集成电路设计产品不断推向市场,中国的半导体设计业近年来的确取得了一定的进步,市场销售额2003年翻了一番,从2002年的21.6亿元增长到了2003年的44.9亿元,同比增长108%。中国集成电路设计业的迅猛增长主要得益于中国电子信息市场的巨大需求、中国政府优先发展集成电路设计的政策方针以及产业各方对设计业龙头地位的认识程度的不断加深,同时,集成电路制造水平的不断提升也为集成电路设计业的迅速发展提供了坚实的基础。目前,中国集成电路设计业在整个集成电路产业链中所占比重也得到了跳跃式提升,从2002年的8.0%跃升到了2003年的13.2%。目前国内IP核的发展特点呈现“应用为主、开发19在有利发展的大环境推动下,中国集成电路设计业近几年一直保持着高速增长的态势,20002003年均复合增长率达到了61.3%,“方舟”、“龙芯”、“北大众志”等CPU芯片以及DSP、移动通信芯片已开发成功,国内集成电路IP核标准化工作也已开展,预计2004年6月将发布第一批行业标准。IP核产业的发展符合“系统集成”和“可复用功能模块设计”相分离的趋势,这是一个逐步积累的过程,国内绝大多数国内设计公司刚刚起步,仍处在探索阶段,以低价位、高性能的信息家电产品应用拉动SoC平台及其IP核的开发顺应了这一态势,将使产品和设计的附加值大大提高。在有利发展的大环境推动下,中国集成电路设计业近几年一直保持着204.3、IP核的应用分类众多的IP核可以按其应用范围的不同进行分类:(1)嵌入式CPU类与Intel和AMD的通用CPU不同,SoC芯片设计应用中,较多的会用到嵌入式CPU(处理器),从CISC到RISC、从4位到64位处理器及其不同的系列。对于不同的IP核厂商,其所提供的CPU的性能和价格也会不同,如8051,有的厂商是免费提供的,有的厂商却是收费的,且价格不尽相同,并且与不同的商业模式有关,一般会有一次性购买、分次购买和Royalty的方式,其价格也不同,并且同一IP厂商的同一IP对于不同的客户,也会有不同的收费方式和价格。一般信誉较好和会有较大量产的客户会得到较低的价格,这主要与IP使用的特性及IP厂商自身的知识产权和利益保护有关。4.3、IP核的应用分类 众多的IP核可以按其2132位嵌入式CPU IP核使用最多的厂商是ARM和MIPS公司。ARM的嵌入式CPU应用较广,几大Foundry,如TSMC、UMC等都支持,目前国内有的Foundry也在和ARM洽谈在其工艺上的支持,并有望取得实际的进展。MIPS的CPU应用也非常广泛,且最近和益芯科技(CMSC,专门致力于设计服务的公司)结成同盟,并由CMSC作为在亚太地区唯一的代理商向亚太地区大力推广应用,而且有的设计服务公司也提供ARM和MIPS处理器的外围接口,如Atmel公司,使得其在SoC芯片设计中更能方便可靠的应用。(2)DSP类DSP核在SoC设计中也被广范使用,许多IP公司(如DSPGroup公司提供了在TSMC的0.25um上实现的OakCore)提供了DSP的IP核或某些更小的DSP单元,如 Multiplyer(乘 法 器)、DCT(Discrete CosineTransform离散余弦变换器)或DWT(DiscreteWaveletTransform离散小波变换器),只是其DSP核的性能可 32位嵌入式CPU IP核使用最多的厂商是ARM和MIP22能不如TI公司的DSP芯片优越。在选择CPU和DSP核时最好选用硬IP核,这是由于CPU和DSP的结构决定的。为了使CPU或DSP核达到最优,CPU或DSP的许多内部单元是要专门设计实现的。(3)通信类各种通信协议相关的IP核,包括基带、调制/解调、编/解码、压缩/解压缩、加密/解密、RF等,如通信芯片中的WirelessLan、Bluetooth、SONET(SynchronousOpticalNETwork同步光网络)、MPEG、Ethernet和TD-SCDMAIP核。(4)通用接口类通常,IP提供商都会提供一些通用接口IP核,包括计算机外围接口、串行通信接口、总线等,如PCI、USB1.1/2.0等,芯片设计者更多的可以从IP的性能参数、应用指标的范围、IP的接口、IP提供商的信誉,以及在特定工艺的验证结果和价格进行考虑。国内的一些Foundry也在和一些IP厂商协作或自己开发一些在其工艺能不如TI公司的DSP芯片优越。在选择CPU和DSP核时最好23上的通用接口IP核。(5)混合信号IP类由于混合信号(MixedSignal)IC的发展和市场应用的推动,一些混合信号IP也被SoC设计者广泛采用,如DAC、ADC、PLL、OSC等。但是,同样的一种IP由于性能、厂商或客户的不同,其价格也会差别很大,如有的厂商对PLL是免费使用的,而有的却要几万美元。由于该种IP中含有模拟器件,器件的特性非常依赖工艺,因此该IP必须是硬IP核。(6)其他类还有众多的其他类IP的应用,IP提供商也都基本上能提供,如Bit-sliceprocessors、Memory。另外,对于有些较少使用或有特别性能要求的IP,一些设计服务公司也可以特别为这些客户的需求设计相应的IP核。上的通用接口IP核。244.4、IP核的设计方法由于IP核作为独立的、可复用的部件,其可复用设计至关重要。可复用设计需要完整的功能描述文档、良好的编码习惯、仔细设计的验证环境、完备的测试图形(TestPattern,即TestVector测试矢量)和通用性强的EDA工具脚本(Script),硬核还需要不同工艺库之间的可移植性。如果IP核及验证的测试平台(TestBench)只面向单一的HDL语言和仿真器,那么它在各种工艺技术和设计环境之间就失去了可移植性。可复用的IP核应具有几种主要HDL语言(如Verilog和VHDL)编写的、可验证的仿真模型和测试包,同时,必须具有独立的、可用于验证的测试平台,可以进行完全的仿真。为保证IP核设计的可复用性,需要遵循一些具有普遍意义的原则,包括:4.4、IP核的设计方法 由于IP核作为独立的、可复用25(1)同步设计在同步设计中,数据只在时钟沿变化,因此,指令和数据很容易管理。在随机逻辑中使用寄存器(Register),并在每个IP核的输入/输出都进行寄存,这对IP核的互连非常有用。这些寄存器本质上在IP核的周围形成一个外壳,除了在IP核的边界提供同步外,还可以提高IP核的可移植性和用于生产测试等好处。另一方面,基于锁存器(Latch)的设计不易管理,因为数据的采样不是根据时钟沿;相反,它要求信号能保持较长的时间,因此,在随机逻辑中应避免使用锁存器,而只在如FIFO、存储器和堆栈这类模块中使用。一般情况下,应避免在IP核设计中使用异步环路和内部脉冲发生电路,以及避免使用模块的输入和输出端口的多周期通路和直接组合逻辑通路。如果有任何异步的清零和置位信号,那么这些信号的清除应该恢复同步。此外,存储器的边界,也就是读、写和使能信号接口处,也应该同步并采用基于寄存器的电路。(1)同步设计26(2)存储器设计由于存储器的设计与工艺相关的,且一些基本规则在SoC级集成时非常有用,因此,SoC中大多数嵌入式寄存器是用存储器编译器工具自动设计的,小部分采用集成存储器IP核的方式。在大规模存储器IP核中,边界上的存储单元寄生参数与处在阵列中心的存储单元寄生参数差别很大。为了减少这种不匹配的情况,比较有效的方法是在存储器周围加上行和列虚拟(Dummy)单元。为了减少虚拟单元所占的面积,它们应该作为存储器内建自修复BISR(Built-InSelf-Repair)机制的一部分。BISR能使存储器中失效单元得到替换,提高产品成品率。通常大规模存储器IP核放在芯片的边或角上,小的存储器IP核分散放置,但如果不仔细规划,在整个芯片布线时这些小存储器也会带来很大的麻烦,因此,通常在实现小存储器IP核时要保证用到的金属层比工艺允许的布线层数少12层,留出的金属层可以在存储器上面进行芯片 (2)存储器设计27级布线。(3)混合信号设计现在的SoC设计中,通常存储器占芯片面积的60%以上,混合信号电路几乎占不到芯片面积的5%。在SoC中最常使用的模拟/混合信号电路是PLL、DAC、ADC和温度传感器等,这些电路提供专门的功能,如片内时钟发生、同步、彩色显示器的RGB输出和芯片的对外通信等。由于这些模拟/混合信号电路对噪声和工艺参数非常敏感,因此,应将这些IP核放置在SoC芯片的角上,有助于简化芯片的布局,同时,在这些IP核电路的周围加上保护环和虚拟单元可以降低对噪声的敏感度。(4)片上总线设计片上总线在SoC设计中起着非常重要的作用,基于总线的设计有利于系统管理,主要原因是片上总线提供了各种IP核互连的通用接口,因此,片上总线的设计和数据传输协议的制定应该在设计IP核之前考虑。否则,将导致SoC中数据传输机制的混乱,使SoC的集成复杂化,并导级布线。28致硬件成本增加和性能下降。由于IP核的提供者无法满足所有的总线接口,因此,在IP核的设计中应该使用参数化、可配置的总线接口。一些公司和组织(如VSI)正在积极开发可满足要求的片上总线和IP核接口的标准/规范,这类标准一般支持多宿主、数据和控制信号的分开标识、全同步和多周期传输机制及总线的请求和允许协议等。(5)时钟分配时钟分配的规则是IP核与SoC设计的最重要规则之一,对时钟分配规则的任何违反都会对整个SoC性能产生影响,甚至可能导致整个设计的时序错误,因此,SoC设计要求建立一个高度鲁棒性的时钟分配规则,包括时钟区域分析、时钟树类型、时钟信号缓冲、时钟偏斜分析和时钟外部特性(如建立/保持时间、输出端口时序波形)等。目前,大多数SoC芯片都有多个时钟域,但最好使时钟域的数量最少,并且每个时钟都有独立的区域,并在时钟的边界使用缓冲器,避免时钟域之间的接口出现亚稳态。致硬件成本增加和性能下降。29当IP核中有局部PLL时,应该在总线上分配一个低频芯片级同步时钟,同时,每个IP核的局部PLL应该与芯片级的同步时钟锁定,并产生IP核所需的频率。同时,SoC设计中一定要控制时钟的偏斜,避免数据失配,减少时钟偏斜的简单方法是使主时钟和衍生时钟的边沿同步,常用方法是使用时钟树将单一时钟分配到片上。(6)清零/置位/复位信号在IP核文档中,详细说明整个设计中所有的复位方案是非常重要的,包括同步/异步复位、内部/外部上电复位、使用多少复位信号、是否使用软复位机制、是否所有的功能模块都有内部产生的复位信号、复位信号是否与局部时钟同步等。只要有可能,就应该使用同步复位,因为这样可以避免复位时的竞争现象。如果使用异步复位,静态时序分析会很困难,而且必须仔细考虑每个触发器的复位脉冲宽度,以确保复位结束与时钟同步,因此,只要复位/清零是异步的,复位的结束就应该恢复同步。当IP核中有局部PLL时,应该在总线上分配一个30(7)物理设计从复用的观点看,许多物理设计上的问题是极为重要的。在硬核的开发中,物理设计是硬核成功的关键。虽然软核和固核不以版图的形式交付,但也需要考虑在物理设计方面的一些问题,主要包括:l版图规划:在IP核设计之初,就应考虑版图问题,这有助于估算芯片的大小和确定是否能达到面积、时序、性能和成本的目标。l综合:在IP核设计之初,同样应该考虑综合问题,并对面积、时序和功耗制定明确的目标。l时序:在版图设计之前,对版图规划后的块进行静态时序分析,最后的时序验证应在块的版图设计完成后进行。l输入/输出端口:IP核每个I/O端口的配置,无论是时钟输入,还是测试I/O,都应清楚地进行说明,包括I/O端口种类(输入/输出/双向信号端口、时钟端口、电源/地线、与测试有关的I/O以及虚I/O端口等)、双向使能信号 (7)物理设计31时序说明、输出负载限制(扇出和连线负载)、所有输入信号的斜率(Slewrate)范围以及关于输出端的与容性负载相关的噪声容限降低(Degradation)。l确认与测试:IP核设计确认与测试对于设计复用非常关键,最终保证设计能否满足规格定义。(8)可交付模型设计复用在很大程度上依赖于可交付模型的质量,这些模型包括行为或者指令集结构模型(ISA:InstructionSetArchitecture)、用于系统集成及验证的总线功能模型、用于时序仿真和基于周期的逻辑仿真的全功能模型以及包含版图规划、时序和面积的物理设计模型等。表4-1总结了每种模型的需要及用途。(9)知识产权保护IP核交付时面临的一个关键问题是IP核的知识产权保护问题。对未加保护的模型,很容易施行逆向工程、改进原有设计、窃取商业秘密,甚至盗版整个设计。为防止侵权和逆向工程,很多模型都是以加密形式交付的。时序说明、输出负载限制(扇出和连线负载)、所有输入信号的斜率32最常用的方法是创建一个顶层的模块,在它的内部具体是IP核的加密模型,只有使用厂家提供的配置工具才能对其进行动态解密和操作。这样,顶层模块的作用就像一个包装(外壳),将IP核的整个网表、版图规划和时序隐藏起来。外壳使用仿真模型的编译版本,而不是源代码。因此,它提供了安全保护,以防止对仿真模型施行逆向工程。另外,对于不同类型的IP核,如逻辑核、存储器核和模拟核等,以及不同形式的IP核,如软核、固核和硬核,针对其特殊结构和物理设计,分别具有一些特殊的指导原则,如软核一般使用HDL语言进行RTL设计,需要进一步确定RTL设计规则和代码风格,它决定了IP核的可移植性和可复用性,还决定了综合后的芯片面积、时序和功耗等性能指标;与软核和固核相比,硬核需要进行可测性设计,而软核和固核则没有这方面的要求,同时,硬核需要更加严谨的文档,需要增加的内容包括引脚排列、指定工艺下IP核的面积、详细的时序数据表、布线和最常用的方法是创建一个顶层的模块,在它的内部具体是IP核的加33通道疏松度方面的约束、Vdd/GND、互连规则、时钟和复位分配规则及时序说明等。通道疏松度方面的约束、Vdd/GND、互连规则、时钟和复位分344.5、IP核的选择方法在向第三方选择和购买IP核时,除了拥有经验丰富的设计团队,成功的SoC芯片设计还需要如下三个方面的准备和整合:l先进的设计工具及可靠的设计方法。l适当的IP核(包括IP核提供商及其IP核的选择)和可靠的Library(包括Library提供商的选择)lFoundry及其工艺的考虑和选择其中设计工具和方法决定了SoC设计效率和芯片性能的基础,对于在进行具体的SoC设计的同时,也希望能锻炼和培养芯片前端或后端设计(物理实现)队伍的单位,高效和及时的EDA厂商的设计工具本地化支持以及先进设计方法的交流也是一个SoC芯片设计成功及持续提高的重要保证。SoC芯片设计过程中,设计工具和方法与Foundry以及IP/Library提供商的互动关系如图4-1所示。4.5、IP核的选择方法 在向第三方选择和购买35对于SoC芯片设计,除了重视EDA设计工具和方法的确定,整个芯片Tape-out供应链的管理也非常重要,尤其是深亚微米的设计,其中包括Foundry及其制造工艺的确定,和与该工艺相对应的IP核和Library的选择。先进的EDA设计工具和方法、适当的工艺、IP核和Library的确定可以降低芯片设计和制造中不必要的风险、时间延误和费用支出,并提高芯片设计一次成功的可能。在国内业界,芯片设计者和项目决策者对EDA设计工具和方法的确定,相对而言,普遍比较重视。SoC芯片设计过程中,在前端的功能和逻辑设计时,系统设计工程师就需要对系统芯片中要嵌入的IP核进行选择和确定。这是由于制造工艺的提升、芯片上器件数量的急剧增大和设计方法的演进,以及设计者对芯片设计过程中的高效及高可靠性的需求共同决定的。满足设计性能需求,并经过硅片物理验证的IP核可以很好的保证SoC芯片Tape-out成功的同时,缩短设计的时间周期和减少设计的反复,这就需要在自有的IP库中进行精心的选择,或与 对于SoC芯片设计,除了重视EDA设计工具和36第三方的IP核提供商中进行充分的交流并做出选择。工艺的改变,同时会影响到现有IP模块的复用。要实现IP复用,需要实现多层次的设计与仿真,在较高的抽象层次上的设计可以避免受到工艺、Foundry等因素的影响。目前,众多的IP核提供商包括纯IP核提供商、设计服务公司等都能向设计者提供各种各样的IP核。但是,由于目前应用市场的多样性和不断的细分化,还没有任何单独的一家IP核提供商能拥有所有的IP核,尤其在考虑到同一IP核的具有不同的提供和使用形式的情况下更是如此,这就需要设计者在芯片设计过程中对IP核进行细心和全面的考虑。第三方的IP核提供商中进行充分的交流并做出选择。37SOCppt课件 第四章 IP核的设计选择与验证38所以需要特别注意的是,在IP核的选用上,尤其对于刚准备从SoC系统设计开始到实际硅片生产的设计者而言,考虑到软IP核和硬IP核在使用中的区别尤为重要。软IP核可以让使用者在设计过程中以及未来的产品升级或系列化时,提供一定的灵活性。但是,这样的灵活性是以设计队伍丰富的后端物理设计经验为基础和相当的设计风险为代价的。如果系统设计者没有拥有从系统设计到后端物理实现以及硅片Tape-out丰富的经验积累,采用软IP核的风险就很大,尤其是有的软IP核提供商自己本身都没有对其所提供的IP核进行硅片验证。硬IP核由于经过实际的物理设计和硅片验证,可以大大的降低使用者的风险,帮助设计者获得从SoC芯片设计到生产的成功,并且有能力提供硬IP核的厂商总会同时拥有该IP的软/硬核。因此,对于刚开始从事SoC芯片设计的使用者来说,选择有硬IP核提供能力的IP核厂商的硬IP核或软IP核是比较关键的。同时,需要IP核提供厂家具有SoC设计经 所以需要特别注意的是,在IP核的选用上,尤其39验,能帮助客户正确、有效的使用IP核。另外,只有IP核的仿真模型而没有经过硅片验证的软IP核的采用,可能还会导致由于最终更换到其他IP核厂商的软/硬IP核而延误时间。IP核有没有经过硅片验证,可以从相关的信息中进行判断,以有代表性的Foundry和IP核商公开的信息为例,在全球最大的FoundryTSMC的网页上,第三方的IP核被列为Pre-Silicon、Verification和Production三种。Pre-Silicon指的是该IP核在特定的工艺上只处在仿真阶段,Verification是指该IP核正在进行硅片验证,而Production则是已经完成验证并可以量产了。在最大的设计服务公司Tality的网页上,其所提供的IP核可以看到是针对具体某个Foundry,如TSMC或UMC的某个工艺如0.25um或0.18um的IP核。在IP核选择时,通常以下三个问题也需要考虑:(1)Library的支持在芯片设计中,Library的支持也显得非常重要。在验,能帮助客户正确、有效的使用IP核。另外,只有IP核的仿真40芯片设计过程中,不论是前端的逻辑设计还是后端的物理设计,都需要用到Library中的模型和数据,可靠的Library是设计能得到成功芯片的有力保证,模型的偏差会使得最终的芯片物理特性与仿真的结果相差很远。一般的Library都会提供基于特定工艺上的StandardCell、I/OCell、MemoryCompiler,以及工艺技术文件,大部分的Library都可以免费获得。值得一提的是,对于SoC芯片设计中存储器的嵌入,通常Foundry会和Library的提供商协作共同为客户提供存储器的模型供前端和后端设计使用。一般会以Memorycompiler的方式让客户自己可以很方便的确定存储器(RAM和ROM)的大小,基本是以免费的方式提供给客户,如Artisan公司为TSMC的工艺开发的Library中就包含有SP-RAM和DP-RAM,不过一些Library其中有的部分的使用是收费的,这主要取决于Library和Foundry厂商的具体合作方式。对于混合信号(mixed-signal)、模拟或射频(RF)芯片设计过程中,不论是前端的逻辑设计还是后端的物理设计,都需41的芯片设计来说,Foundry所提供的PDK(ProcessDesignKits)也是非常重要的,尤其是Time-to-Market和设计效率比较关键的设计。PDK库是Foundry针对自己的工艺和相关EDA软件厂商开发,包括TechnologyFiles、DeviceSymbols、CDF、Pcells、PVrulefiles等,拥有了经验证的Pcell结构、符号及规则等优化集合的PDK,IC设计者的工作就能从繁琐易错的任务中解脱出来而变得高质量且富有效率。(2)Foundry及其制造工艺的确定SoC芯片的设计最终还是要具体落实到某个Foundry的某个工艺的芯片制造上,Foundry工艺的确定在芯片设计供应链管理中起着举足轻重的地位,因为其同时还确定了IP核的实现和Library的选择。确定适当的工艺需要考虑以下几个方面的要素:l工艺的性能指标是否满足设计的需要。l工艺上的IP/Library是否具有相应的支持。l工艺的成品率和可靠性。的芯片设计来说,Foundry 所提供的PDK(Proces42lFoundry的市场美誉度。lMPWShuttle的时间表及价格。l量产的时间周期和价格。大陆以外的Foundry主要有TSMC(台积电)、UMC(台联电)和Chartered(特许)。TSMC工艺已经从0.35um以上一直拓展到目前正要风险生产(RiskProduction)的90nm,0.18um和0.13um是其主流的生产工艺,UMC(联电)和Chartered的工艺也已经从0.35um、0.25um、0.18um发展到0.13um。国内的Foundry主要有中芯国际(SMIC)、华虹NEC、首钢NEC、华晶上华(CSMC)、贝岭、先进半导体等。中芯国际其工艺从0.35um、0.25um到0.18um,不久前,其0.18um的工艺通过了国际的生产认证,这三种工艺都有相应的Library支持,并且都支持主要的EDA设计工具,如Synopsys和Cadence。华虹NEC主流的工艺包括0.35um和0.25um,以及0.35umE2PROM。国内能提供0.5um的6英寸工艺生产的Foundry主要有华晶上 l Foundry的市场美誉度。43华和首钢NEC,首钢NEC也有0.35um工艺,贝岭目前可以提供1.2um的4英寸CMOS和BiCMOS工艺。另外,两家正在建设的Foundry是宏力半导体和贝岭合资企业,宏力半导体准备生产的工艺是0.25um和0.18um,贝岭合资企业的工艺是0.35um和0.25um。(3)芯片设计供应链的管理和整合由于设计和生产的复杂度的大大提高,芯片从设计到生产的完全成功需要芯片设计供应链中多方面的配合和协作。对SoC芯片设计者来说,选择合适和有力的合作者将是芯片成功的基础和保证,其中涉及到设计工具和设计方法、嵌入IP核的选择、Library的支持和Foundry工艺的确定,还与设计环境、设计经验及对未来技术发展的判断有关。为了建立确保时序吻合且功能正确的先进设计方法,将EDA应用与设计数据的表示分隔开来是很重要的。在SoC设计中,我们常常受现有的模块、特殊的I/O要求等限制,由于预先存在的模块是使用不同的工具设计和验华和首钢NEC,首钢NEC也有0.35um工艺,贝岭目前可以44证的,所以很难构建一个“工具链”容纳不同的设计数据和IP核。在SoC设计方法中,存在不一致的设计表示以及由于不一致的库表示所引起的时序不精确两个重要问题。ASICCouncil提出了OLA(OpenLibraryAPI),允许EDA供应商不断推出新的技术和工具,同时具有更大的灵活性和精确性以使用最新的工艺技术。Sematech提出了层次化的设计表示CHDStd,通过标准化的访问方法,使完整的设计信息和相互关系在内存中集中管理,统一维护和与应用程序接口。证的,所以很难构建一个“工具链”容纳不同的设计数据和IP核。454.6、IP核验证环境IP核的验证环境涉及多方面的因素,下面以EthernetMACIP核为例,说明IP核验证环境的各组成部分及验证过程。EthernetMACIP核的验证环境(如图4-2所示),包括ARM核、AHB总线、ENET_TX、ENET_RX、SRAM、FlashROM等模块,这些模块都是相应的功能仿真模型。图中ARM7TDMI、ENET_TX、ENET_RX、AHB_MSTR、SRAM、FlashROM等模块是Synopsys提供的FlexMode,SRAM模块采用SynopsysDesignWarememorymodelCY7C007-12,该仿真模型在功能、接口和时序上兼容Cyress公司的32Kx8双端口(DualPort)SRAM,FlashROM模块采用SynopsysDesignWarememorymodel28F001BXB-120,该仿真模型在功能、接口和时序上兼容Intel公司的128Kx8BootBlockFlashMemory。4.6、IP核验证环境 IP核的验证环境涉及多46SOCppt课件 第四章 IP核的设计选择与验证47FlexModel(结构和接口如图4-3所示)是二进制行为仿真模型,用于描述微处理器、IP核、数字信号处理器和总线接口的总线功能,本质上,FlexModel是具有SWIFT接口(一种连接仿真模型和设计工具的有效方式)的高级SmartModel。FlexModels使用SWIFT接口完成与仿真器的事件通信,同时使用一个中心命令核(CommandCore),为多个FlexModels完成模型命令排队。为提供高性能的模型控制能力,该命令核不采用SWIFT接口。FlexModels具有以下特性:(1)由于具有一个时钟精确级的核和一个可控制的时序外壳(Shell),因此,你能够以功能模式运行该模型,以获得更高性能,或为了检查时延,以时序模式运行模型。在仿真过程中,你也可以在TestBench中采用简单命令动态地切换时序模式。(2)能够描述多种不同的控制机制。你可以采用一个简单的命令流,协调模型行为与仿真事件之间的关系,同步不同命令的处理过程,或同时控制几个 FlexModel(结构和接口如图4-3所示48FlexModel。(3)允许使用不同的命令源。你可以在一个Verilog/VHDL/VERATestBench或C程序中,采用过程(Processes)向FlexModel发送命令,也可以在作为命令源的HDL/VERATestBench和编译后的C程序之间进行切换。FlexModel。49SmartModel(SWIFTLogicModel)分为functionalmodel、timingmodel和layoutmodel。SmartModellibrary属于DesignWarelibrary,包括3000多个标准集成电路的二进制行为仿真模型,这些模型能够支持12000多个不同的器件。库中描述了来自世界领先的半导体制造商(包括microprocessors,controllers、peripherals、FPGAs、CPLDs、memoriesandgeneral-purposelogic)的器件模型。SmartModel能够通过SWIFT接口同多个硬件仿真器相连,包括VCS、Verilog-Xl等。SmartModel不但能够仿真RTL或门级器件,而且能够在TestBench中采用“BlackBox”方式表示IC和系统总线。简而言之,SmartModel是一个IP核器件的仿真版本和事件驱动模型,将其插入到原始设计验证TestBench中使用。以太网端口的输入激励由ENET_TXFlexModel产生,输出的包由ENET_RXFlexModel接收,被测试的EthernetMACIP核ENET0端口的发送和接收部分分别外 SmartModel(SWIFT Logic50接U3(ENET_TXFlexModel)和U6(ENET_RXFlexModel)。ENET_TXFlexModel是IEEE802.3以太网MAC发送部分的总线功能模型(Bus-FunctionalModel),支持的功能有:(1)帧生成(Framegeneration)。(2)介质存取管理功能(Mediaaccessmanagementfunction)。ENET_RXFlexModel是IEEE802.3以太网MAC接收部分的总线功能模型(Bus-FunctionalModel),支持的功能有:(1)接收数据的解包(Datadecapsulation)。l地址识别(Addressrecognition)。l帧校验序列的确认。l帧分解(Framedisassembly)(2)接收介质管理l成帧(Framing)。接U3(ENET_TX FlexModel)和U6(ENET51 l冲突过滤(Collisionfiltering)。l层管理(Layermanagement)虚拟CPU端口用软件模拟,主要完成以下功能:从源数据文件中读取包数据,填入CPURX队列的缓冲区并维护CPURX队列的描述符;从CPUTX队列的缓冲区中读取数据并维护CPUTX队列的描述符,读取出的数据存入指定的文本文件中。l冲突过滤(Collision filtering)。524.7、IP核验证过程EthernetMACIP核的初始化及工作流程如下:(1)ENET0初始化 按以下三步初始化ENET0:l接收和发送队列初始化。l配置寄存器初始化。l通过置位模式寄存器中的ENABLE位,启动 ENET0。实际填入描述符和寄存器中的值很大程度上依赖于应用。(2)包操作CPU维护ENET0端口的队列指针,相应于ENET0端口各有2个指向当前接收描述符的指针(高、低优先级接收队列各一个)和2个指向当前发送描述符的指针(高、低优先级发送队列各一个)。在初始化时,它们4.7、IP核验证过程 Ethernet MAC IP53指向各自队列的第一个描述符,而当每次当前描述符的ownership给了ENET0后,指针递增,指向下一个描述符的位置,在到达队列末尾后的回转由软件管理,与在ENET0中的实现一样。(3)包发送包必须填入发送队列,CPU首先要检查ownership以确保描述符为自己拥有。在任何时候,被ENET0拥有的描述符不能被软件操作。在操作当前包所包含的每个描述符时,要正确设置FIF位、LIF位及CRC_PAD位。TX中断的触发,可以编程为在每个描述符释放后或者在最后一个描述符释放后。在一个包的所有描述符被填入队列后,或者一个描述符被填入队列后,描述符的ownership应立刻设置为被ENET0拥有。在后一种情况下,软件要负责在每次ENET0请求发送下一个描述符之前按时把描述符的ownership设为归ENET0拥有,如果不能确保及时性,则会导致欠载错误(underrun)。指向各自队列的第一个描述符,而当每次当前描述符的owners54每次一个描述符被关闭后,软件都要递增当前发送描述符指针,使其指向下一个描述符。当描述符由ENET0返还给软件后(可以由检测发送中断或者轮询ENET0状态位来实现),统计信息的收集,可以通过查看描述符的状态位和系统错误状态标志来实现。(4)包接收包接收可以通过中断控制下的等待循环实现,如果接收中断被使能为每个接收描述符触发一次,或者通过轮询当前接收描述符的ownership位来确定。当描述符的ownership归软件所有时,表示有包(或者包的一个片段)可以读取。所有描述符必须按次序读取直到检测到LIF位,并且每个描述符都要循环轮询等到ownership归软件所有时才能读取。当数据被读取后,ownership要归还给ENET0,可以有两种归还方式:一种是单个描述符地归还,另一种是等所有包信息都被读取后才一次性全部归还。然而,为使描述符能够用于ENET0的后续接收操作并减小发生过 每次一个描述符被关闭后,软件都要递增当前发送55载(overrun)的风险,最好是读完一个描述符后马上归还。当读取描述符时,可以通过查看描述符的状态位和系统错误状态标志来实现统计信息的收集。(5)验证过程的自动化EthernetMACIP核的验证需要对大量的数据进行比较,以人工方式完成这一工作既费时又易出错。为节约验证时间,提高验证精确度,以软件(以TestBench的
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!