当前位置: 首页 > news >正文

用可观测工具高效定位和查找设计中深度隐藏的bug

软件仿真拥有最佳的信号可见性和调试灵活性,被大多数工程师熟练使用,能够高效捕获很多显而易见的常见错误。

然而,由软件实现的数字仿真过程运行速度有限,很难做到100%代码覆盖。导致那些深度隐藏的设计问题,将不可避免的逃逸,只能以FPGA在线调试方式解决。

01

为什么全局可观测能力如此重要

如果说调试是自动化最后的堡垒,那么数据则是调试的生命线。

在很大程度上,代码是写出来的,更是调试出来的。

走在异构计算、硬件加速最前沿的EDA硬件辅助验证行业,一直代表了FPGA调试验证的最先进水平。

不管是硬件仿真平台(Emulation)、原型验证系统(Prototyping),或是最新将两者功能合二为一的EP1或者P2E,使得FPGA硬件在线调试,像软件调试一样,所见即所得。

能够为用户提供与软件仿真类似的100%信号可见性,用于高效定位和修复设计问题。

如果说数字仿真器是为IC设计画素描,那么用FPGA构建的仿真加速器,则有3D立体克隆效果。但这些昂贵的高端平台,主要服务需要流片的超大规模IC设计。

近四十年来,始终不能惠及众多的FPGA应用开发人员。

出厂状态的FPGA芯片,内部只是空白的门海阵列,用户使用时,是将设计的结果文件,即生成的位流(Bitstream)载入到芯片后,完成硬件电路的配置定制过程,与ASIC芯片的流片生产过程类似。

也被视为价格亲民的“ASIC”芯片。

不同的是,对于ASIC芯片设计,用EDA硬件辅助验证工具进行详尽的硅前验证,工程师拥有充足的武器库,尽可能实现设计的“零缺陷(Zero Bug)”,减少流片失败风险。

而FPGA用户应用开发过程中的硬件电路设计,是在自家作坊完成。

可以是团队,甚至“一人成团”的全栈工程师,完成从设计、调试、验证等全部生产“制造”流程。

全局可观测调试能力Full Visibility & Debugging,对提升设计生产力的重要作用,不言而喻。

在软件行业,如果某个系统是不可观测的,往往意味着距离“崩溃”不远了。

一旦真正出现问题,将额外花费工程师解决问题的时间成本。

但FPGA工程师除外,更像是工作常态。

与以往相比,现在的商用FPGA芯片容量规模更大,大量的功能模块、嵌入式软件、第三方IP核被集成使用,设计更为复杂。

不同于软件行业已经有大量工具和越来越多的APIs,构建整个技术栈,硬件行业还相对保守,也更为封闭。

在有限EDA工具支持下,很大程

http://www.lryc.cn/news/573654.html

相关文章:

  • webpack+vite前端构建工具 -6从loader本质看各种语言处理 7webpack处理html
  • Linux内核中安全创建套接字:为何inet_create未导出及正确替代方案
  • SAP金属行业解决方案:无锡哲讯科技助力企业数字化转型与高效运营
  • Kafka Streams架构深度解析:从并行处理到容错机制的全链路实践
  • 针对数据仓库方向的大数据算法工程师面试经验总结
  • netcore url编码/解码
  • [计算机网络] 局域网内的网络传输
  • SpringBoot+Vue服装商城系统 附带详细运行指导视频
  • 3dgs涉及的基本概念:球谐系数(SH 系数)等
  • Python之数据容器
  • 【JavaScript】代码整理
  • vim学习流程,以及快捷键总结
  • Python 深度学习基础:TensorFlow 入门——从张量到神经网络的实战指南
  • 【2025年软考中级】第三章数据结构3.4 数组与矩阵
  • Flink作业三种部署模式:架构、配置与实战应用
  • rknn优化教程(三)
  • Bytemd@Bytemd/react详解(编辑器实现基础AST、插件、跨框架)
  • 【云原生】Docker 部署 Elasticsearch 9 操作详解
  • Git Worktree:高效开发的秘密武器
  • C# 数组(数组协变和数组继承的有用成员)
  • webpack+vite前端构建工具 - 8 代码分割
  • 【数据结构试题】
  • C#Halcon从零开发_Day13_几种阈值分割方法
  • 《高等数学》(同济大学·第7版)第五章 定积分 第四节反常积分
  • 目标检测neck算法之MPCA和FSA的源码实现
  • python实战项目77:足球运动员数据分析
  • React 18.2.0 源码打包
  • C++智能指针的知识!
  • 无人机表演越来越火,C端市场大爆发
  • Java基础八股文 - 面试者心理历程与标准答案