第八章SOC设计方法学ok_第1页
第八章SOC设计方法学ok_第2页
第八章SOC设计方法学ok_第3页
第八章SOC设计方法学ok_第4页
第八章SOC设计方法学ok_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第八章SOC设计方法学

片上系统SOC的优势

高性能

低功耗

体积小

重量轻

成本低

SOC对EDA技术的挑战SOC可集成:processors,embeddedmemories,programmablelogic,andvariousapplication-specificcircuitcomponentsdesignedbymultipleteamsformultipleprojects.芯片规模呈指数增长设计复杂性呈指数增长设计领域中挑战与机会并存设计复杂性呈双指数倍增长C1:complexityduetoexponentialincreaseofchipcapacity----Moredevices----Morepower----HeterogeneousintegrationC2:complexityduetoexponentialdecreaseoffeaturesize----Interconnectdelay----Couplingnoise----EMI(ElectroMagneticInterference)DesignComplexityC1xC2ProductivityGap

ChipCapacityandDesignerProductivityLogicTransistors/Chip(K)Transistors/Staff-Month11010010001000010000010000001000000010100100010000100000100000010000000100000000201019821990200058%/Yr.Complexitygrowthrate

21%/Yr.Productivitygrowthrate系统集成芯片的内涵及外延

特性:实现复杂系统功能的超大规模集成电路;采用超深亚微米工艺技术;使用一个或数个嵌入式CPU或数字信号处理器;具有外部对芯片进行编程的功能;主要采用第三方的IP核进行设计。

这样的定义决定了SOC的设计必须采用与现在的集成电路设计十分不同的方法。首先,一个SOC必须是实现复杂功能的超大规模集成电路,它的规模决定了芯片设计不仅需要设计者具备集成电路的知识,更要具备系统的知识,也要对芯片的应用有透彻的了解。其次,深亚微米工艺提出的诸多挑战至今尚未的到彻底解决,互连延迟主导系统性能的问题随着工艺技术的不断进步将变得越来越突出。在人们彻底实现面向逻辑的设计方法向面向互连的设计方法的转变之前,这个问题将一直存在并长期困扰整个集成电路设计业。第三,单个芯片要处理的信息量核信息复杂度要求芯片必须具备强大的数据处理能力,嵌入式CPU或数字信号处理器的使用将是SOC的一个重要标志。第四,既然采用了嵌入式的CPU、微处理器或数字信号处理器芯片就具备了编程能力。最后,采用第三方的IP核是SOC设计的必然。高度复杂的系统功能核愈来愈高的产品进入市场的时间要求不允许芯片设计者一切从零开始,必须借鉴和使用已经成熟的设计为自己的产品开发服务。

IP模块的应用(一)SOC设计方法学的主要内容软/硬件协同设计(Software/HardwareCo-Design)具有知识产权的内核(Intellectual

PropertyCore,简称IP核)及其复用(Reuse)超深亚微米(VeryDeepSub-Micron,简称VDSM)技术(二)SOC设计方法学的内容SOC设计方法学正是围绕SOC的上述内容展开的新一轮理论研究。这一理论根植于过去几十年计算机辅助设计、计算机辅助工程和电子设计自动化理论的土壤之中,将借鉴已有的理论并在其基础上创新。

SOC设计方法学包含的第一个内容

软硬件协同设计方法:在SOC设计当中,设计者必须面对一个新的挑战,那就是他不仅要面对复杂的逻辑设计,而且要考虑软件,特别是那些可以改变芯片功能的外部应用软件的设计。尽管软件的加入在某种程度上加大了系统设计的工作量,但是软件的引入也会对系统代价的减少产生积极的作用。如何在软件和硬件设计中取得平衡,获得最优的设计结果是我们要认真探讨的课题。SOC设计方法学包含的第二个内容

IP核的设计和使用:IP核的使用绝不等同于集成电路设计中的单元库的使用,它所涉及的内容几乎覆盖了集成电路设计中的所有经典课题,包括测试、验证、模拟、低功耗等等。IP核的生成也绝非是简单的设计抽取和整理,它所涉及的设计思路、时序要求、性能要求等均需要重新审视我们已经熟知的设计方法。SOC设计方法学包含的第三个内容

深亚微米集成电路设计:尽管这个课题的提出已经有了相当长的时间,但是研究的思路和方法仍然在面向逻辑的设计思路中徘徊。深亚微米集成电路设计方法的根本性突破显然是SOC设计方法学当中最具挑战性的。

SOC设计方法学的研究所影响的不仅仅是集成电路领域,事实上由于集成电路的基础作用,它还会对集成电路以外的领域产生深远的影响。它改变的也不仅仅是集成电路的设计方法和设计思路,同时也会对电子整机和系统的发展带来革命性的变化。随着整机与芯片的日益融合,SOC设计方法也必然深入到整机的设计当中去,对电子整机的设计产生积极的影响,同时电子整机的发展也必然会对SOC设计方法学的丰富和完善作出贡献。

(三)软/硬件协同设计早期的软/硬件协同设计针对一个特定的硬件进行的软件开发问题——经典的软件开发问题。根据一个已有的软件实现具体的硬件结构——软件固化的问题。

早期的软硬件协同设计方法研究还是一种面向目标的(ObjectOriented)软硬件设计方法,研究的内容和结果与所要实现的目标和已具备的条件密切相关,形不成具有普遍适用性的理论体系。

面向SOC的软/硬件协同设计方法

面向SOC的软硬件协同设计理论应该是从一个给定的系统任务描述着手,通过有效地分析系统任务和所需的资源,采用一系列变换方法并遵循特定的准则自动生成符合系统功能要求的,符合实现代价约束的硬件和软件架构。软/硬件协同设计方法需要解决的问题

首先,是系统的描述方法。目前广泛采用的硬件描述语言是否仍然有效?如何来定义一个系统级的软件功能描述或硬件功能描述?等等。到今天为止,尚没有一个大家公认的且可以使用的系统功能描述语言可供设计者使用。

其次,是这一全新的设计理论与已有的集成电路设计理论之间的接口。可以预见,这种全新的设计理论应该是现有集成电路设计理论的完善,是建筑在现有理论之上的一个更高层次的设计理论,它与现有理论一起组成了更为完善的理论体系。在这种假设下,这种设计理论的输出就应该是现有理论的输入。第三,这种全新的软硬件协同设计理论将如何确定最优性原则。显然,延用以往的最优性准则是不够的。除了芯片设计师们已经熟知的速度、面积等硬件优化指标外,与软件相关的如代码长度、资源利用率、稳定性等指标也必须由设计者认真地加以考虑。第四,如何对这样的一个包含软件和硬件的系统功能进行验证。除了验证所必须的环境之外,确认设计错误发生的地方和机理将是一个不得不面对的课题。最后,功耗问题。传统的集成电路在功耗的分析和估计方面已有一套理论和方法。但是,要用这些现成的理论来分析和估计含有软件和硬件两部分的SOC将是远远不够的。简单地对一个硬件设计进行功耗分析是可以的,但是由于软件运行引起的动态功耗则只能通过软硬件的联合运行才能知道。

(四)IP核的生成及复用在单个芯片上已经可以集成上千万乃至上亿只晶体管。芯片变得如此复杂,它实现了以前需要许多块印刷电路板甚至机架才能完成的功能。在这样高的集成度下,设计的难度已变得非常高,设计代价事实上主导了芯片的代价。这不仅要求设计者必须具备系统和芯片两方面的知识,同时必须充分考虑市场竞争的压力,最大限度地缩短设计周期。凡事从零做起的思路显然不能适应这种新情况,而采用前人成功的设计经验和设计资料是解决这个问题的明智选择。所谓设计重用实际上包含两个方面的内容:设计资料的重用和如何生成可被他人重用的设计资料。IP核:IP核具备比较复杂的功能,且经过验证。设计资料内不仅仅包含一些物理功能和技术特性,更重要的是包含了设计者的创造性思维,具有很强的知识内涵。这些资料因而也被称为具有知识产权的内核(IntellectualPropertyCore),简称IP核。IP核的种类

IP核实际上是一个经过验证的集成电路设计,从其实现的形式和应用层次上看,IP核可以有三种不同的表现形式:软核(Soft-Core)、固核(Firm-Core)和硬核(Hard-Core)。

软核:以硬件描述语言的方式提交,其性能通过时序模拟进行验证。由于软核不依赖于任何实现工艺或实现技术具有很大的灵活性。使用者可以方便地将其映射到自己所使用地工艺上去,可复用性很强。软核地另一个重要地优点是使用者拥有全部源代码。使用者可以通过修改源代码,方便地生成同样功能且有版权的新软核,从而避免向原有软核地作者支付版税。同时聪明的软核使用者还可以通过增加自己的知识和经验,产生出远比原始软核广泛得多的新软核。但是软核也有自身的弱点。由于软核的载体是硬件描述语言且与实际的工艺无关,使用者在最终将其嵌入自己的设计时就要对从描述语言到版图的转换的全过程负责。显然这要涉及经典的集成电路设计的全部内容,集成电路设计人员必须具备相当的风险意识。另外,工艺映射和系统的性能有着一定的内在关系,是否可以不加修改地将一个软核映射到任何一个工艺上仍然是需要探讨的一个问题。优点:可复用性很强。使用者拥有全部源代码。缺点:对从描述语言到版图的转换的全过程负责。工艺映射和系统的性能的一致性。价格不菲。

硬核:以集成电路版图(Layout)的形式提交,并经过实际工艺流片验证。显然,硬核强烈地依赖于某一个特定地实现工艺,而且在具体的物理尺寸,物理形态及性能上具有不可更改性。这些特点对使用者来说有喜有忧。喜的是硬核已经经过验证并具有最优的面积代价和性能设计,使用者不需要考虑与此相关的优化问题。

忧的是硬核与工艺的强相关性迫使使用者也只能使用该工艺完成电路其它部分的设计,而且要在布局布线(PlaceRoute)遵守注意硬核的物理限制。显然,硬核的特点决定了使用者进行电路设计时的灵活性很小,希望通过获得硬核以生成其它硬核的可能基本上没有。特点:硬核强烈地依赖于某一个特定地实现工艺,而且在具体的物理尺寸,物理形态及性能上具有不可更改性。

优点:不需优化工作、价格便宜

缺点:灵活性小、不能更改。固核:以电路网表(Netlist)的形式提交并通常采用硬件进行验证。固核往往对应于某一个特定的实现工艺,在该实现工艺的条件下固核具有最优的面积和性能的特性。对于使用者来说不需要对固核的功能给于过多的关注,可以减少许多相关的设计工作,同时由于固核的时序特性是经过严格检验的,设计者只要保证在布局布线过程中关键路径的分布参数不会引起时序混乱就可以保证芯片的设计成功。

但是固核也有其自身的缺点,那就是它与实现工艺的相关性及网表的难读性。与实现工艺的相关性限制了固核的使用范围,网表的难读性则使得布局、布线后发生时序违反的排除变得比较困难。由于固核在使用的方便程度上和开放程度上均介于软核和硬核之间,其价格也处于它们的价格之间。优点:固核往往对应于某一个特定的实现工艺,在该实现工艺的条件下固核具有最优的面积和性能的特性。

缺点:与实现工艺的相关性及网表的难读性。IP核的生成

IP核的生成具有与常规的集成电路设计不同的特点。例如时序、测试和低功耗等虽然是集成电路设计中的经典问题,但是直接将已有的设计方法应用到IP核

的设计中就会出现许多意想不到的困难。

IP核的复用

IP核的使用也面临许多新问题。由于IP核的特殊性和集成电路开发的高风险性,IP核的使用决不是这些IP核的简单堆砌,使用过程中不仅仅要考虑它们的功能,更要使它们“溶入”芯片。以为有了IP核就可以进行SOC设计的想法过于天真。

可测性设计的例子

(五)超深亚微米集成电路设计超深亚微米集成电路设计技术又称纳米级电路设计技术。超深亚微米集成电路设计技术是深亚微米集成电路设计技术的延伸。除了传统的连线延迟问题之外,集成电路设计人员还要考虑信号的完整性等其它问题。人们在跨入超深亚微米时代的时候,实际上尚未解决深亚微米阶段的关键课题。连线延迟大于单元延迟引起的一系列问题仍然在困扰着设计人员。所以要探讨超深亚微米集成电路的设计,就有必要对这个经典问题作一个仔细分析。

连线延迟以布尔代数为基本理论的现代数字集成电路设计技术面向的是系统的功能设计(LogicOriented)。理论工作的贡献在布尔代数上得到了巨大的体现。如果没有布尔代数,今天我们赖以生存的集成电路工业也就失去了它的理论基础。但是这一高度抽象并在过去几十年中为集成电路技术的发展作出关键作用的理论,在集成电路工艺跨入深亚微米之后显出明显的不足,因为它无法描述连线延迟对电路功能的影响。

连线延迟在深亚微米集成电路中对信号的传输起主导作用,这意味着一个逻辑概念上正确的电子器件网络会由于连线延迟的影响而变得不正确了。在实际工作中,这种连线延迟主导系统延迟的现象导致了设计迭代的出现。所谓设计迭代(DesignIteration)就是指集成电路的逻辑设计完成之后由于布局布线带来的连线延迟导致逻辑功能失常,从而需要对电路的逻辑功能重新进行设计的活动。设计迭代会引起设计工作的不收敛,导致设计周期长,所设计的产品错过市场窗口,丧失市场机遇,从而使整个工作失败。

希望在设计的初期或尽可能早的时候就设法获得有关互连线的信息。由于现行的设计方法所依赖的理论基础是布尔代数,而布尔代数又无法描述有关互连线的特性,所以设计者只能在现行的逻辑设计之外去寻找其它的方法。一个典型的作法就是采用所谓布图规划(Floorplanning)。

布图规划技术的核心是“先定系统布局,再做逻辑设计”,显然布图规划在理论上与现行的逻辑设计思路不是一个统一体,是一种补救的措施。尽管如此,在集成电路尚未进入超深亚微米之前,它是一个有效的方法。采用布图规划很大程度上降低了出现设计迭代的风险,减少了设计迭代的次数。

弱点:首先,系统设计的优化程度有赖于系统划分。在系统设计的初期缺乏足够的可用信息的条件下要进行系统划分,所依赖的只能是设计人员对系统功能的有限了解和在以前工作中积累的经验。影响系统划分质量好坏的主观因素将大于客观因素。

其次,子系统的设计由于受到了具体的物理限制,等于设计过程多了一些约束。当约束的选取不那麽合理的时候,要找到一个符合约束条件的优化设计结果是费力的且不容易的。这也意味着设计迭代仍然存在于设计活动当中,只不过表现在比较高的层次、表现形式不同罢了。第三,布图规划要涉及的内容虽然是一些矩形几何图形在一个有限空间的排列组合,但实际上,在考虑了众多的边界参数后,可以被归结成为一个“NP完全”(NP-Complete)的数学难题。这意味着获得一个最优结果所需付出的代价将以指数方式增长。

最后,布图规划虽然在深亚微米集成电路设计中被广泛采用,但是在理论上是先天不足、有缺陷的。既然基本理论有缺陷和不完善的地方,那麽就不应该期望按照现行的思路会取得突破性或革命性的进展。也可以这样认为:在基本理论没有重大突破或出现新的相关数学理论之前,深亚微米集成电路设计将一直是设计人员必须面对的挑战。

信号完整性

在超深亚微米集成电路设计技术的研究中,除了要克服由于连线延迟引起的设计迭代之外,设计人员还要克服由于特征尺寸缩小后,信号延迟变小,工作频率提高带来的所谓信号完整性的问题。

特征尺寸与芯片内部工作频率

在芯片内部工作频率提高的同时,由于集成度的大幅度上升,单个芯片中连线长度也随之大幅度升高。当连线长度达到波长的几倍时,连线将成为向外界发射电磁波的天线,同样这些连线也会成为接收电磁波的天线。信号的完整性将成为设计者面对的另外一个严重的挑战。所以传统的基于布尔代数的数字集成电路设计理论必须要从简单的面向逻辑,转向吸引其它相关领域的理论,形成新的理论体系。

(六)SOC设计中的低功耗设计问题

SOC的低功耗设计包含两方面的内容:硬件的低功耗和软件的低功耗设计。

硬件低功耗设计两条途径:对一个已有的电路系统进行功耗分析,找出功耗的分布情况并采取必要的手段,如关断时钟(ClockGating)等,以降低系统的开关功耗。在电路系统的设计过程中避免生成高功耗的电路架构。

软件的低功耗设计:是SOC设计的一个重要的新课题,由于软件的运行要依赖于硬件系统。软件的无效运行将导致硬件的无效动作,从而引起功耗的无谓增加。虽然可以通过在硬件系统中根据需要设计必要的休眠(Standby)装置并由软件加以控制以减少这些功耗,但是如

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论