0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

困扰你80%时间的那20%调试问题,可以通过它来解决

芯华章科技 来源:未知 2023-09-15 16:15 次阅读

全文约2000字,阅读全文需要7分钟

wKgaomUEE7SAayLmAAAEWZLn9xg284.jpg

简单讲,一旦拥有了开放的接口,那你拥有的就不仅仅是一款调试工具,而是一个开放的、支持DIY的客制化调试平台,因为它将可以兼容不同家公司EDA工具、透过接口调用底层数据库,实现想看哪就看哪的自定义功能,简直不能更治愈!

众人皆知,验证离不开调试工具。在整个设计验证流程中,验证占了70%的工作量,调试debug就占了其中的40%。

几乎所有验证工具,无论是逻辑仿真硬件仿真还是形式化验证、原型验证等等,本质上都是通过不同的方式去对设计进行各种重新编译、解析,这之后产生的各种类型的数据,都离不开后面调试工具去分析、去解读。

调试工具的本质是生产力工具,它像一个“数据处理中心”,也像一个“指挥中枢”,通过读取、解析以及分析设计验证的结果,让你可以很快地看见问题、解决问题。

但是,这里说的问题映射到日常项目当中,可能是多种多样,仿佛无穷无尽的。

本篇重点和大家分享:

一、开放接口解决什么问题

二、统一、可兼容的接口和标准

01

开放接口解决什么问题

第一个是个性化的需求

调试工具几乎吃下了设计和验证所有的信息。但,其实每家芯片设计的信号组合不一样,我们通过Debug调试系统要检查的内容就不一样。

如果我们不能够对于这样的需求进行处理的话,比如说当设计的波形有两三百个,是不是我要把两三百个每一个批量的全部内容,都肉眼看一遍呢?因此能够直接访问底层数据这方面的需求,其实非常的广。

尤其是,针对不同类型的项目,往往有自己独有的、个性化的调试需求。

在实际应用中,各个芯片的产品调试特征不同,对调试就会产生非常多样化的细分需求。用户因此特别希望能够在国产EDA工具里面看到一些开放的接口,便于自己进行二次开发。

举个例子,比如当我们想快速对某个特定范围下的信号变化做一些统计 (比如变化次数,X/Z的个数,均值统计等等),这些需求太多太零碎了,可能Debug产品使用界面没有直接提供。

但这些数据信息在工具的底层数据库里其实都有,只要提供接口让用户可以自己访问底层数据库,就可以通过写一些小程序来实现希望的功能。真正的“想看哪里就看哪里”。

第二个是兼容性的问题

比如说,在数字验证阶段,EDA工具往往需要解析UPF/CPF文件内容,转换为内部模型并存储到低功耗数据库。然而,因为各家EDA单位底层UPF/CPF的Parser的接口差异性,导致EDA工具需要针对不同的Parser做定制化。而且,不同Parser对UPF/CPF的理解可能是不同的,这会导致EDA工具一旦换了底层UPF/CPF Parser后,可能低功耗的行为就发生了变化。

开放的接口和行为级模型,能够为行业产品的合作提供更好的兼容性和扩展性,提高数据的使用效率,也就能提高我们的生产力。

02

统一、可兼容的新一代接口和标准

从这一具备庞大群众基础的需求出发,芯华章Fusion Debug提供开放的XPI接口让用户可以直接访问、定制自己的小程序,调用存储了包括静态数据和动态数据的底层数据库,让设计和验证更加有效,进行更有针对性的调试。

世上本没有路,走的人多了,也便成了路。

wKgaomUEE7SAfnLqAAKJmNb_8oc006.png

XPI集成了HDL、Netlist、Waveform和Coverage 4种数据模型,并提供了简单统一的API来访问它们

基于芯华章统一的技术底座智V验证平台,HDL设计通过前端编译生成代码数据库XCDB和网表数据库XNDB

各种验证工具如仿真器(Simulation)、硬件仿真器(Emulation), 原型系统(Prototyping)和形式化验证(Formal Verification),则生成波形数据库XEDB和覆盖率数据库XCovDB

XPI提供三种类型的接口来访问底层数据库模型,包括:TCL命令接口、Python接口、C/C++接口,用户可以将这些接口集成到自己的应用程序中

这就好像以前的图书馆可能拥有数亿级别的藏书,但是你找不到自己需要的书。芯华章FusionDebug则像一个用户体验导向的电子图书馆,不仅对庞大数据做了多种分类,并且提供清晰的检索目录、导览、查阅,你甚至可以自己添加标签和偏好,定义你想要的界面,让你直呼“好用”的同时,大大节约你的时间。

这种统一的接口和标准,甚至不局限于芯华章自家产品之间,还可以兼容其他家EDA公司产品。以芯华章低功耗模型以及读写接口标准为例,它具有以下特点:

1

支持IEEE 所有UPF版本标准,并屏蔽底层UPF Parser的差异

2

支持低功耗模型创建

3

支持低功耗模型读写

4

支持丰富的上层应用,如低功耗静态分析能力、Root Cause追踪能力

Fusion Debug的通用低功耗模型,集成了对象化的低功耗网络拓扑结构,给行业低功耗产品提供了统一、高效的追踪行为和接口,屏蔽了各个EDA厂商HDL设计数据模型的差异性。

wKgaomUEE7WACu6pAAOADvJpW5o247.png

这也是国产EDA生态建设非常重要的一环,只有让不同的国产EDA工具之间能够实现低功耗数据的共享,提高数据的使用效率,才能形成完善的国产EDA生态,让用户拥有更高效、更省心的选择。

实在地说一句,芯华章的Debug开发团队有非常热切、希望将产业现在及未来需求落实到位的工作态度和技术能力,自发布以来,Fusion Debug也已经在数十个客户项目中得到部署和打磨。

后续我们将一一与大家分享更多功能与应用,也非常期待听到更多来自debug用户群体(也就是你)的反馈和声音,给予我们继续前进的方向和动力。

关于Fusion Debug,如有你还有更多想了解的,请关注我们这个系列。如果实在等不及了,点击“阅读原文”,申请下载产品单页,里面有我们的联系方式。

9月20日DVCon China上,我们也会携带包括Fusion Debug在内的芯华章数字验证全流程工具亮相,届时欢迎在现场与你进行更深入的交流!


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

    关注

    0

    文章

    157

    浏览量

    11342

原文标题:困扰你80%时间的那20%调试问题,可以通过它来解决

文章出处:【微信号:X-EPIC,微信公众号:芯华章科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    开关电源调试问题及预防炸机

    EMI问题:开关电源的电磁干扰问题也是调试过程中常见的挑战,需要采取适当的滤波和屏蔽措施来降低EMI。
    的头像 发表于 04-27 05:30 458次阅读
    开关电源<b class='flag-5'>调试问</b>题及预防炸机

    使用MTB3.1调试XMC7200 BSP样本,多核示例无法进入调试模式怎么解决?

    我正在使用MTB3.1调试 XMC7200 BSP样本。 我发现单核示例可以成功调试,但是多核示例无法进入调试模式,错误提示是"
    发表于 01-26 07:08

    TLE9869QXA20可以使用ULINK2/ME Cortex调试器进行调试吗?

    我正在使用TLE9869QXA20定制板,没有针对我的应用程序的内部调试器,我可以使用 ULINK2/ME Cortex 调试器进行
    发表于 01-23 07:34

    想使用T32进行调试并使用miniwiggler进行闪存下载程序,能否只使用auto-20连接器执行这两个功能?

    我想为调试和固件下载设置引脚设置 AURIX™ 我听说如果你想使用 T32,应该 MULTICH_CONNECT_PCB auto-20 连接器。 但是没有关于 DAP 的描述。 问题 1:如果我
    发表于 01-19 06:06

    ADI-视频应用调试入门指南

    ?在如此重压之下,很难有逻辑又有条理地调试一个问题。而逻辑条理地调试问题却恰恰是及时找到解决方案的关键所在。 显然,完整的调试框架可以大量节省工程师的
    发表于 11-28 14:19 0次下载
    ADI-视频应用<b class='flag-5'>调试</b>入门指南

    困扰80%时间的那20%调试问题,可以通过它来解决

    简单讲,一旦拥有了开放的接口,那你拥有的就不仅仅是一款调试工具,而是一个开放的、支持DIY的客制化调试平台,因为它将可以兼容不同家公司EDA工具、透过接口调用底层数据库,实现想看哪就看哪的自定义功能
    发表于 09-19 09:25 378次阅读
    <b class='flag-5'>困扰</b>你<b class='flag-5'>80</b>%<b class='flag-5'>时间</b>的那<b class='flag-5'>20</b>%<b class='flag-5'>调试问</b>题,<b class='flag-5'>可以</b><b class='flag-5'>通过</b>它来解决

    如何使用Nano100读DS18B20

    应用: 本代码使用 Nano100 读 DS18B20 。 BSP 版本: Nano100B系列 BSP CMSIS v3.03.000 硬件
    发表于 08-30 08:07

    如何使用Mini51读DS18B20

    MCU与DS18B20至P5.2进行通信,读DS18B20,然后通过串端输出温度,作为浮体类型。 DS18B20温度分辨率为12比特。 港口的轮渡费用为115200美元。 您
    发表于 08-29 07:08

    如何使用Nano100读DS18B20

    应用: 本代码使用 Nano100 读 DS18B20 。 BSP 版本: Nano100B系列 BSP CMSIS v3.03.000 硬件
    发表于 08-22 07:54

    使用Mini51读DS18B20

    MCU与DS18B20至P5.2进行通信,读DS18B20,然后通过串端输出温度,作为浮体类型。 DS18B20温度分辨率为12比特。 港口的轮渡费用为115200美元。 您
    发表于 08-22 06:08

    M32C FoUSB/UART调试器V.1.02用户手册(适用于M32C/80、M16C/80系列)

    M32C FoUSB/UART调试器V.1.02用户手册(适用于M32C/80、M16C/80系列)
    发表于 06-26 20:17 2次下载
    M32C FoUSB/UART<b class='flag-5'>调试</b>器V.1.02用户手册(适用于M32C/<b class='flag-5'>80</b>、M16C/<b class='flag-5'>80</b>系列)

    使用像gdb这样的调试分析在esp8266上运行的程序?

    使用像 gdb 这样的调试分析在 esp8266 上运行的程序?直接使用 gdb 或像eclipse 这样的多个前端之一,可以 我问这个是因为在讨论
    发表于 06-12 07:44

    sonoff s20 wifi无法正常工作的原因?

    使用屏幕截图中的设置。 有谁知道我可以尝试进一步调试问题。就我所见,这个装置坏了。(虽然我在刷入之前从未用原厂固件测试过) 捕捉3.JPG 或者,我尝试通过从工作单元获取备份并将其传输来恢复库存固件
    发表于 05-23 08:08

    M32C FoUSB/UART调试器V.1.02用户手册(适用于M32C/80、M16C/80系列)

    M32C FoUSB/UART调试器V.1.02用户手册(适用于M32C/80、M16C/80系列)
    发表于 05-06 18:31 0次下载
    M32C FoUSB/UART<b class='flag-5'>调试</b>器V.1.02用户手册(适用于M32C/<b class='flag-5'>80</b>、M16C/<b class='flag-5'>80</b>系列)

    是否可以为自定义开发板构建我们自己的板载调试器?

    我正在为 S32K144 MCU 制作定制开发板,它与我的项目开发兼容。我需要外部调试编程/调试 MCU 上的固件。他们是否提供任何便宜的外部调试器,比如在
    发表于 05-06 07:48