(文章来源:OFweek) 芯片中整合的电晶体数量不断增加,造成电路设计与验证挑战遽增。面对日益缩短的上市时程压力,芯片设计人员已开始改用运行速度更快且总体拥有成本(Total Cost of Ownership)更低的硬件模拟设备,取代传统电路试验板或软件模拟器,以加速芯片验证与除错速度。 虽然摩尔定律现在规定约两年内使积体电路中的电晶体数目增加一倍,但趋势是设计/器件会继续变得越来越大。如今,平均设计尺寸达到或超过五千万专用积体电路(ASIC)门,并且有些单个模组已超过一千万门。大部分的半导体公司的高端设计通常超过一亿门。处理器/图形公司的最大设计已达到十亿门,或许在不久的将来会超越这一数量级。 驱动设计复杂性急剧上升的因素是在现有产品中,或在全新设计中添加新特性和新功能的旺盛需求,如果说芯片硬件复杂性骤升得还不够,实现产品差异化的嵌入式软件暴涨又使验证更为复杂。工程团队难以承受让产品更快推向市场的压力,迫使工程人员必须不断创新。 虽然工程师拥有丰富的验证选项,但其中大多数存在着固有缺点,在数位电路设计初期,芯片复杂性的范围介于几百门到几千门,设计可透过电路试验板进行原型验证。使用嵌有电晶体-电晶体逻辑电路(TTL)逻辑器件(例如SSI/MSI芯片)的电路试验板,可在芯片量产(Tape Out)前在目标系统环境中验证和调试(Debug)设计。由于是在实际运行条件下测试设计,因此可确保功能正确性。 如果芯片复杂性达到一万门,则电路试验板将会无用武之地,并最终被基于事件驱动演算法的逻辑模拟器取代。这一变化催生了电子设计自动化(EDA)行业,EDA是电脑辅助工程(CAE)早期缩影。事件驱动模拟器支援精确的功能和时序验证,目前仍在寄存器传输级(RTL)使用,不过鲜少在逻辑闸(Gate Level)级使用。 RTL软件模拟器易于使用且经济高效,具有先进的调试功能。不过,当设计尺寸达到一亿门时,由于缓存未命中和记忆体交换,执行速度会迅速下降。虽然通过PC伺服器群与平行化软件模拟器可以缓解执行时间骤降,但无法使用其来测试本质上属于串列流程的嵌入式软件。 硬件辅助验证工具可以缩小工程师目标与传统逻辑验证结果间的差距。以下几种验证工具可协助减少目标与结果的差距:基于FPGA的原型可用于处理嵌入式软件验证。原型基本上都是电路试验板,其中用FPGA取代SSI/MSI部件。 由于可程式设计器件问世,内部开发的FPGA原型也已出现。遗憾的是,随着设计尺寸不断加大,FPGA原型开发也呈指数增长。当所需的FPGA数超过十个左右的FPGA芯片时,FPGA原型将变得不可用。调试基于FPGA的原型比较棘手,这迫使工程师处理复杂的FPGA问题想办法让FPGA可容纳芯片设计,而不是花时间调试芯片设计功能。经常听说,当设计已进入投片阶段时,自制的FPGA原型才可使用。 为解决这些缺点,几年前一种家庭作坊式产业应用而生,其目标是提供可扩展的现成FPGA原型,而且这个趋势正获得青睐。此类产业除去繁琐的内部开发流程,这正是其成功的主要原因。但对于最大配置,他们也只能处理具有约一亿门的设计。具有除芯片外的最快运行速度是FPGA原型验证板的主要卖点。相反,用于将设计映射到原型验证板的漫长布线/合成时间及相当有限的设计可视性是其两个主要缺点。 硬件模拟正成为一种流行的运行时问题解决方案,基于事件的软件模拟器对此类问题却无能为力。与通过RTL软件模拟器实现的执行速度相比,该解决方案要快五至六个数量级。硬件模拟器并不是一直受到青睐。以前,高昂的拥有成本限制工程团队采用硬件模拟器来测试最大的设计,例如微处理器和图形芯片。现在,随着新一代硬件模拟器能够处理高达几十亿或以上的ASIC闸并提供较低的总体拥有成本,这种情况已得到改进。这样,工程团队就可为广泛的设计做出最佳选择,而不用考虑复杂性和拓扑结构。 作为终极错误清除利器,硬件模拟可良好运行。就在芯片量产(Tape Out)前验证SoC中硬件功能和测试硬件/软件整合功能正确来说,硬件模拟具有极大价值。 如果硬件设计人员和软件发展人员都使用硬件模拟,则可共用相同系统和电路设计表示方法。由于组合设计的软件和硬件的对芯片功能的解读,因此他们可一起调试硬件和软件间的互动行为正确性,还可以跨越嵌入式软件与底层硬件间的边界跟踪设计问题,以确定是软件还是硬件出问题。 (责任编辑:admin) |