×

双向飞碟射击与设计调试解析

消耗积分:1 | 格式:rar | 大小:0.04 MB | 2017-11-28

hejhe

分享资料个

 纵观历史,电路内仿真 (ICE) 模式是使用硬件仿真器的第一种方式,也是迄今为止最为流行的方法。在这种模式中,需将硬件仿真器插入物理目标系统上的插孔,以此代替待开发的芯片,从而利用实时数据支持运用和调试硬件仿真器内部映射的待测设计(DUT)。
  然而,这种公认的能够引人注目的验证方法却存在一系列问题,其中最严重的问题便是它的随机性。也就是说,当调试DUT时,它缺少确定性或者可重复性。为了更好地理解这一点,我们可以做个形象类比。
  让我们来看看双向飞碟射击。这是一种射击运动,在这项运动中,会将碟靶从靶场上扔出以模拟鸟类的飞行状态。我们可以增加碟靶的扭转方向,增加它的难度。让射手戴副眼镜,以限制他的视野范围,这样射手必须“猜测”碟靶的轨迹,因为碟靶的每一次轨迹都不一样。而验证工程师在 ICE 模式中调试芯片设计时,恰恰也会遇到这样的难题。要在 ICE 模式中找出一个错误就像在狭窄的视野中试图击中碟靶一样困难。
  
  图 1 要在视野受限的情况下进行双向飞碟射击对射手来说是一项巨大的挑战。
  我们不断总结过去的经验,持续改进。这二十多年来,不断有调查发现设计验证消耗的时间大约占了设计周期的 70% 左右。往好的方面看,设计验证是一项活动,它或多或少地可以根据预测事先进行安排。但是设计调试则是一项追击,您无法事先对其进行规划。理由很简单,错误往往会因为未知的原因出其不意地出现,而且您也无法预测它出现的时间和位置。
  可以想象,在利用大量嵌入式软件和硬件进行片上系统 (SoC) 设计时,总有些错误会隐藏在设计的某个未知角落里,无论是在硬件中还是在软件中,而且这些错误可能只有在长期执行后方能被发现。在一个错误被发现之前,很有可能已历经了数十亿的时钟周期。
  更让人沮丧的是,调试具有随机性,这就要求在发现错误之前要不断地重复运行。如果错误不具备确定性,也就是说,其可能不会在后续运行中重复出现,那么寻找错误的过程将会是一场噩梦。
  关键未知因素
  如果将其应用于数亿门级的设计,而这些设计需要经过数十亿个长序列验证周期的调试,那么可能存在三个关键未知因素:地点、时间和事由。这三个因素足以延误整个测试计划的进度,即便该计划已经过深思熟虑。在一个竞争激烈的市场中,若一项新产品延期三个月上市,那么它将造成 33% 的潜在总收益损失。这就足以说明验证解决方案的价值所在了。这时我想到了硬件加速仿真。硬件仿真器凭借其极速性能加快执行和调试的速度。事实上,它们的快速执行速度便是它们的设计初衷。
  这个概念很简单,即对照需要插入待开发芯片的实际物理目标系统来检查 DUT。无需再编写测试矢量或者测试激励。赶紧在实际应用中全面施行这一流程吧。想必,要在模糊的设计区域里寻找令人厌烦的隐匿错误,实际应用比任何软件测试平台都更为有效,对吧?

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !