广告

波形系统三大关键点解析

时间:2021-07-23 作者:David Hwang 阅读:
优秀的性能可以保证工具的流畅度,而调试的效率也有助于提升工具的用户体验。波形系统只是仿真调试工具中的一个部分,调试工具还有很多很多其他的核心技术,比如代码和电路图调试等。但是观测波形是验证工程师最常用的一种手段,作者希望通过介绍波形系统中的一些基本技术让用户将来选择工具时更加有针对性。同时也希望验证工程师能利用好工具,提升工作效率。
广告

在芯片功能验证中,仿真波形一直是调试的重要手段。通过观测分析波形,工程师可以推断代码是否正常运行,电路的功能是否正确,设计是否满足预期。波形解决了芯片验证调试中可观测性的问题,虽然单独依赖观测波形不足以解决调试的所有问题,但是波形是一个最基本的手段。很多FPGA和硬件设计工程师都将仿真波形看作是硬件调试的示波器或者逻辑分析仪。

数字电路中的波形通常由四值逻辑表示,包括:1 - 高电平,0 - 低电平, X - 不定态,Z - 高阻态。

当然,为了降低复杂度,有些仿真系统简单地忽略不定态和高阻态,仅使用二值逻辑表示。波形系统就是将仿真数据通过可视化的方式显示出来。高级波形系统需要更多功能,包括对协议事务级(protocol transaction),混合信号(mixed signals),文本输入输出(File I/O)等功能的显示。目前的大部分EDA厂商工具,都将波形系统都嵌入在各个仿真器和调试工具中,成为紧密结合的一部分。

业界的有多种波形格式,除了VCD是一个公开的标准格式之外,其他商业性质的各具特点,在性能和功能上各有优缺点。目前业界最普遍使用的是C2工具,它具有非常高效的数据压缩率,用户界面也非常友好,但是在大型设计上数据加载还是稍慢,底层优化有待进一步改进。C1工具操作性稍显复杂,人机界面的易用性还有很大的提升空间。B工具中规中矩,它和A工具在数据压缩率上都不能和C2工具相比。下列表格列出各自的一些特性。

波形系统在芯片验证中至关重要,设计验证工程师在使用波形调试的时候,对EDA工具有很高的期待,也提出了很多具体的要求。本文将探讨波形系统的三个关键技术,通过这些具体的技术细节理解,工程师可以深入的了解波形系统的性能和易用性,以便将来选择工具时做出更好的判断。

性能指标:良好的压缩率和内存管理

一个IP可能包含着数千万个的信号,这些信号随时间产生的数据量是巨大的。如果在波形系统中不对数据进行有效的压缩,而只是简单的随时间来记录波形数据,这样最终的数据量将是巨大的。即便在目前磁盘价格日益下降的今天,这样的数据量对于一个复杂IP或者SOC的调试来说,这种大量的磁盘空间积聚也是无法接受的。一个巨大的波形不仅仅对磁盘空间产生各种挑战,最大的问题还在于当调试器调用这些数据的效率。

业界比较通用的波形开放标准是基于VCD (Value Change Dump)格式的,这个格式是基于IEEE1364标准的,也就是VerilogHDL标准中定义的一个用文本方式存储波形的数据格式。这种格式主要是记录波形的名称,对应数值变化的时间点,和数值变化量。他的最核心的思想是只在Value change(VC)的时候做数据和时间点记录,而在没有VC时候不做任何记录。

由于它不用记录每个时间点的波形数值,从某种意义上来说也有一定的数据压缩效果。但即便如此,在一个复杂IP中产生的VCD文件尺寸也可能超过几百GB,由于是文本数据格式,工具在读取文件索引数据上效率也不高,因此,在大型设计中利用VCD做波形调试,会遇到很多性能瓶颈。

各大EDA商业公司都有自己的波形格式。虽然具体的标准都是私有的,但大致都是基于数据库的方式来存储和管理波形数据。这些数据不仅仅是存储,还会进一步地压缩和优化,以便减少磁盘开销,并让工具更有效地读取和管理数据。由于波形是调试的重要工具,各大EDA厂家都有针对波形的压缩技术,对调试器的图形波形界面都做了优化,方便用户的使用,最大程度提高调试的效率。然而,除了关键的压缩技术之外,对工具来说还有一个重要的特性就是内存管理技术。

一个调试工具的内存管理技术决定了这个工具的可用性和易用性。在当下大量数据交互的仿真技术领域,优秀的内存管理技术对工具而言至关重要。简单的来说,内存管理就是工具需要数据放置在磁盘或者内存中寻求一个平衡点,或最优化的比率。

过多的数据放在磁盘,每次工具在加载波形时候会非常缓慢;过量的数据加载到内存,会造成内存爆炸,让整个服务器运行缓慢,从而也导致效率和用户体验下降。

有个笑话,说某工程经理特别要求工程师必须在中午12点开始加载波形调试,加载过程中内存基本耗尽,服务器无法做其他事情,吃完午饭午休后,工具完成波形加载,工程师就可以看波形开始调试工作了,这样就可避免时间浪费。这个笑话虽然经不起仔细推敲,但是它反映了某些工具在内存管理上的缺陷和不足,会导致严重的性能问题和降低用户体验。无论如何,一款好的调试工具都要解决或者避免这些问题。

调试的有效性

除了上述提到的底层核心技术以外,对于波形工具技术本身来说,它必须具备几个关键应用层面技术:仿真器的高效配合,以及场景级(scenario)和事务级(transaction) 操作类型的表示。虽然波形非常直观地反映了设计内部的信号变化,但是设计本身是RTL,而且是信号间有相互关联,因此调试不能仅仅依赖于观测波形,很多时候工程师需要仿真器的配合让调试变得更加有效。

RTL和测试平台(testbenches)在运行后,其实本身很类似通用软件代码运行过程,很多工程师在观测波形变化的时候也希望能了解代码的执行情况;同样在代码调试的过程中,很多时候需要理解代码的执行过程和相对应的信号变化。这个时候对仿真器的单步动态调试可以配合波形变化,工程师可以直观的了解某段代码的执行过程和信号变化。这种类似软件单步调试的方式也是芯片验证中常用的手段之一。

信号驱动追踪(signal driver tracing)是一种常用的调试技术,它通过某个信号查询它的驱动源头。当用户在波形界面上发现信号在某个时刻出现问题后,用户可以追踪这个信号的驱动源,这样调试类似结果到原因(effect and cause)推导过程,大大加强了调试的有效性。通常信号的源头可能不是单一而是多个,用户可以选择在波形界面来观测多个源头,也可以通过仿真器和调试器的配合来选择使用代码或者电路图(schematic)方式进行观测。这种信号溯源技术需要仿真器和调试工具的有机结合,底层也需要高效数据库的支持。

事务级视图(Transaction Viewer)。在复杂设计中大量的信号里厘清数据真实含义是非常困难的,用户往往需要参考几十个信号的量的变化来确定数据类型和操作。例如,一个AXI协议的读写操作涉及到的信号可能有20多个。完成一次读写需要用户在一段时间内观测大量信号的变化,这种操作效率低下,不利于长时间的调试过程。Transaction viewer可在图形界面提供更高层次的视角,让用户直观地了解这些transaction的数据类型和定义,而不需要再从底层信号分析数据。有了这个工具,用户可以快速分析调试数据,包括enum type, class based transaction, sequence item等等。当然,要实现一个transaction可视化,还是需要仿真器配合,以及代码的一些额外工作,比如使用验证IP (VIP),或者使用SystemVerilog等高级建模语言描述。

交互界面的流畅度和易用性

波形工具和其他的验证工具不一样,它是一个频繁和用户交互的图形界面,这些交互体现在用户的鼠标键盘操作和对图形长时间的肉眼观测;和大多商业软件或者移动App一样,这个工具需要用户长时间操作和交互,用户体验成为了波形工具至关重要的一个因素。用户体验通俗来说就是工具的流畅度和易用性。加载波形的速度,波形窗口缩放的响应,代码和波形相互对应(cross-probing),波形比较与合并等,都可以看成是工具的流畅度的体现。

工具的流畅度,除了工具自身的优化,主要还取决于上面谈到的数据压缩和内存管理的优化。一个好的波形工具应该能让工程师很快上手操作,而不需要花费时间学习或培训。简单的功能可以快速地通过菜单选项实现,复杂的功能也可以开放数据接口,让用户编程操作。

总结

上述谈到的几点其实都是相互关联的。优秀的性能可以保证工具的流畅度,而调试的效率也有助于提升工具的用户体验。波形系统只是仿真调试工具中的一个部分,调试工具还有很多很多其他的核心技术,比如代码和电路图调试等。但是观测波形是验证工程师最常用的一种手段,作者希望通过介绍波形系统中的一些基本技术让用户将来选择工具时更加有针对性。同时也希望验证工程师能利用好工具,提升工作效率。

作者:David Hwang,芯华章科技产品市场总监

责编:Amy Guan

本文为EET电子工程专辑 原创文章,禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 奈雪的茶关联公司经营范围新增集成电路设计等 奈雪的茶关联公司深圳市品道餐饮管理有限公司发生工商变更,公司经营范围新增酒类经营;出版物互联网销售;集成电路设计;外卖递送服务;单用途商业预付卡代理销售等。
  • HBM3:没有最快,只有更快! Rambus日前宣布推出支持HBM3的内存接口子系统,内含完全集成的PHY和数字控制器,数据传输速率高达8.4Gbps,可提供超过1TB/s的带宽。
  • 创意电子发布业界带宽最大、功耗最低的晶粒对晶粒 (GL GLink 2.0 IP 采用台积电 5 纳米制程与 2.5D 先进封装技术,并成功完成硅验证
  • 汇顶科技发布2021上半年财报,向综合型IC设计公司持续转 “不要把鸡蛋放在同一个篮子里”,这是此前一些上游原厂从苹果处得到的教训。仅仅依靠单一产品线的强势,不能长久地维持企业在市场中的地位,需要在研发上持续投入布局新市场;但由此带来的问题就是研发费用提高、新业务尚未盈利,会给公司的净利率带来明显影响。在近日举行的2021上半年财报披露投资者交流会上,汇顶科技阐述了他们将如何在顶住转型过程中的市场压力和业绩阵痛,努力成为一家多元化、综合型半导体企业……
  • Intel GPU的野望:从游戏到数据中心 今年的Intel Architecture Day上,更多有关Intel GPU的产品信息揭开面纱。这次Intel主要谈到了面向游戏玩家的Xe-HPG架构Alchemist GPU;以及面向数据中心的Xe-HPC架构GPU芯片Ponte Vecchio。后者被Intel形容为技术难度“堪比登月”的芯片,这也是我们第一次见到MCM(Multi-chip Module)/chiplet形态的GPU芯片……
  • 180W年薪招ISP芯片总监后,vivo上海芯片研发总部又曝光 这两天,不断有关于蓝厂(Vivo)造芯的料被曝出。8月23日,“Vivo百万年薪招聘工程师”突然冲上热搜,信息显示Vivo正在招聘芯片方面的人才,总监级别年薪可达180W。8月24日,微博大V @数码闲聊站 又曝出了一组Vivo上海研发中心、芯片实验室的图片……
  • 新款iPad Pro 2021成最受欢迎的 由于采用性能相对强大的M1处理器和mini-LED屏幕以及更多的创新,新款iPad Pro 2021已经成为消费者心目中最受欢迎。然而,iPad 2却已经在全球范围内被列入“复古和过时”的名单中。
  • 三星折叠屏手机Galaxy Z Fold 3 目前来看,折叠屏新机作为一种新的生产力工具,逐渐成为高端/平板的一种趋势,有报料称三星的Galaxy Z Fold 3发布时间或为7月,并且会引入新手势操控。

  • EMC对策产品: TDK推出用于移动设备 TDK株式会社(TSE:6762)推出用于移动设备的TCM0403M系列小型薄膜共模滤波器
  • 比科奇ORANIC板卡获行业大奖,5G小基 比科奇(Picocom)日前宣布:该公司荣获全球小基站论坛(SCF)一项大奖,其全新的ORANIC板卡赢得了全球小基站论坛(SCF)2021年度“小基站芯片及组件杰出创新金奖”。
  • 【世说芯品】芯讯通5G模组赋能智能重卡 推动车联网建设 全球5G行业正蓬勃发展,5G商用已成为“兵家必争之地”。5G就如同一把“黄金钥匙”,能以超高可靠性、超低时延和万物互联的特性,实现工业环境中海量数据接入与关键数据实时传输的多种应用需求,实现人、机、物
  • 华为:即使打尽最后一颗子弹,也要建立起芯片产业链! “美国给华为制造了不少困难,但这些困难可解决。目前阶段性为华为造成了最大困难的是手机业务,手机芯片需要先进工艺,体积小、功耗小。华为能设计出来,但没有人能帮华为制造出来,卡住了。我们和产业链的伙伴还在
  • 采样电阻选型详析 电流检测电阻的基本原理根据欧姆定律,当被测电流流过电阻时,电阻两端的电压与电流成正比.当1W的电阻通过的电流为几百毫安时,这种设计是没有问题的.然而如果电流达到10-20A,情况就完全不同,因为在电阻
  • 国产替代之痛,这款超高性价比的MCU堪称“翘楚”! MCU涨价缺货是埋在工程师心头的一根刺,从晶圆产能告急再到疫情天灾不断,MCU市场命途多舛。而究其市场国外产品占据超过70%,加之地缘政治摩擦加剧,国产化和国产替代成为当代电子必谈之需。记者获悉,从去
  • 增速最快!中芯国际Q2晶圆代工表现抢眼 快科技消息,8月31日,集邦资讯公布Q2季度全球晶圆代工市场最新排名,总产值达到了244.07亿美元,环比增长6.2%,创下了2019年Q3季度以来连续8个季度增长的新高。在TOP10厂商中,台积电一
  • 【数据】2021年vivo占稳中国手机市场第一 关注国产手机最新消息:今日,知名市调机构Counterpoint Research发文称,vivo是中国智能手机市场的低调之王。但从数据来看,vivo自2021年第一季度以来一直占据着中国智能手机市场
  • 基站中的无源交调(PIM)----挑战和解决方案 电子万花筒平台核心服务 中国最活跃的射频微波天线雷达微信技术群电子猎头:帮助电子工程师实现人生价值! 电子元器件:价格比您现有供应商最少降低10%射频微波天线新产品新技术发布平台:
  • 光刻与键合:超越摩尔器件制造设备成了香饽饽 文︱立厷图︱网络近日,“国产光刻机取得关键性进展,ASML始料未及”的报道,由于没有过多细节,振奋还是为时过早。如果国产光刻机能达到国际水平,国内科技水平的提升将是突飞猛进的,相关行业会得到快速发展,
  • 半导体产业之污染控制(一) 这几节小编将为大家解释污染对器件工艺、器件性能和器件可靠性的影响,以及芯片生产区域存在的污染类型和主要的污染源。同时,也将对净化间规划、主要的污染控制方法和晶片表面的清洗工艺进行讨论。首先来看看什么是
  • 惊艳!大佬用200个LED做了一个智能手表(附PCB) 最近在hackaday上逛的时候,看到一个还在制作中的非常炫酷的手表项目,分享给大家。背景作者正在造的这个ESP32 Pico Watch有WIFI、BT、Mesh、一个振动马达、一个RTC、4个按钮
广告
热门推荐
广告
广告
广告
EE直播间
在线研讨会
广告
广告
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了