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

    文章

    178

    浏览量

    11438

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

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

收藏 人收藏

    评论

    相关推荐

    如何调试时间继电器 时间继电器的工作时间设置方法

    1. 了解时间继电器的基本原理 在开始调试之前,了解时间继电器的工作原理是非常重要的。时间继电器通常由一个输入电路、一个计时机构(如气囊、电子计时器等)和一个输出电路组成。当输入信号(
    的头像 发表于 12-09 10:40 344次阅读

    绝缘电阻测试的基础以及为什么如此重要

    可以通过精确的电阻测试确保所有地点的安全绝缘电阻测试的八个技巧 绝缘材料是一种能抵抗试图通过
    发表于 12-09 10:24

    关于峰岹的调试问

    手上有个峰岹6866的程序,将它烧录到芯片中,电机可以运行,但使用keil4进入调试页面,电机就运行不起来(偶尔才能运行一两次,成功率很低),想问问各位大佬这是为啥,会不会是软件驱动的原因
    发表于 11-15 08:54

    【AI技术支持】ESP32-S3 JTAG调试问题处理

    启明云端/01是否曾遇到过?在使用ESP32-S3模块,ESP-IDF版本为idf5.0时,调试JTAG,尝试很久也无法调通,这是为什么呢?启明云端/02这是咋回事呢?这个过程需要安装zadig
    的头像 发表于 10-30 08:01 575次阅读
    【AI技术支持】ESP32-S3 JTAG<b class='flag-5'>调试问</b>题处理

    80的变压器可以带多少个千瓦

    在不同电压等级之间转换的电气设备。由两个或多个绕组组成,通过改变磁通量实现电能的转换。变压器的额定容量(kVA)是其在额定工作条件下能够传输的电能。 变压器的额定容量 变压器的额定容量通常以千伏安(kVA)为单位。
    的头像 发表于 08-25 16:10 3286次阅读

    是否可以使用JLink工具,通过JTAG或SWD引脚在ESP8266上编程和调试代码?

    是否可以使用JLink工具,通过JTAG或SWD引脚在ESP8266上编程和调试代码? 我找不到任何关于这个的文档,似乎没有人关心。请指教。
    发表于 07-22 08:08

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

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

    知道变频器的正反转死区时间吗?的停机方式有几种

    知道变频器的正反转死区时间吗?的停机方式有几种 变频器是一种电气设备,用于控制和调节交流电机的转速和运行方向。在使用变频器时,正反转死区时间是一个重要的参数,
    的头像 发表于 02-18 13:51 2395次阅读

    如何使用linux下gdb调试python程序

    如何使用linux下gdb调试python程序  在Linux下,可以使用GDB(GNU调试器)调试
    的头像 发表于 01-31 10:41 2624次阅读

    80年代的电子示波器,43年后的今天会认识吗?

    现代的数字存储示波器,的历史又了解多少呢?今天带大家欣赏一台80年代生产的示波器,看看当年的示波器,究竟使用哪些结构和元器件。Chrent岩崎SS-5321
    的头像 发表于 01-26 08:30 880次阅读
    <b class='flag-5'>80</b>年代的电子示波器,43年后的今天<b class='flag-5'>你</b>会认识<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

    在Linux上如何通过命令行更改日期和时间

    在Linux上如何通过命令行更改日期和时间? 在Linux上,我们可以使用命令行工具更改日期和时间
    的头像 发表于 01-16 17:10 2836次阅读

    时控开关怎么调时间

    时控开关是一种能够按照预设时间自动开启和关闭电路的装置。广泛应用于各种电器设备中,例如照明灯具,空调等。通过调整时控开关的时间,我们可以
    的头像 发表于 01-10 15:41 1967次阅读