简单讲,一旦拥有了开放的接口,那你拥有的就不仅仅是一款调试工具,而是一个开放的、支持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接口让用户可以直接访问、定制自己的小程序,调用存储了包括静态数据和动态数据的底层数据库,让设计和验证更加有效,进行更有针对性的调试。
世上本没有路,走的人多了,也便成了路。
- XPI集成了HDL、Netlist、Waveform和Coverage 4种数据模型,并提供了简单统一的API来访问它们
- 基于芯华章统一的技术底座智V验证平台,HDL设计通过前端编译生成代码数据库XCDB和网表数据库XNDB
- 各种验证工具如仿真器(Simulation)、硬件仿真器(Emulation), 原型系统(Prototyping)和形式化验证(Formal Verification),则生成波形数据库XEDB和覆盖率数据库XCovDB
- XPI提供三种类型的接口来访问底层数据库模型,包括:TCL命令接口、Python接口、C/C++接口,用户可以将这些接口集成到自己的应用程序中
这就好像以前的图书馆可能拥有数亿级别的藏书,但是你找不到自己需要的书。芯华章Fusion Debug则像一个用户体验导向的电子图书馆,不仅对庞大数据做了多种分类,并且提供清晰的检索目录、导览、查阅,你甚至可以自己添加标签和偏好,定义你想要的界面,让你直呼“好用”的同时,大大节约你的时间。
这种统一的接口和标准,甚至不局限于芯华章自家产品之间,还可以兼容其他家EDA公司产品。以芯华章低功耗模型以及读写接口标准为例,它具有以下特点:
1 支持IEEE 所有UPF版本标准,并屏蔽底层UPF Parser的差异
2 支持低功耗模型创建
3 支持低功耗模型读写
4 支持丰富的上层应用,如低功耗静态分析能力、Root Cause追踪能力
Fusion Debug的通用低功耗模型,集成了对象化的低功耗网络拓扑结构,给行业低功耗产品提供了统一、高效的追踪行为和接口,屏蔽了各个EDA厂商HDL设计数据模型的差异性。
这也是国产EDA生态建设非常重要的一环,只有让不同的国产EDA工具之间能够实现低功耗数据的共享,提高数据的使用效率,才能形成完善的国产EDA生态,让用户拥有更高效、更省心的选择。
实在地说一句,芯华章的Debug开发团队有非常热切、希望将产业现在及未来需求落实到位的工作态度和技术能力,自发布以来,Fusion Debug也已经在数十个客户项目中得到部署和打磨。