1. 原型验证的调试挑战
随着大规模集成电路设计复杂性的增加,芯片开发面临着巨大的资金和时间挑战,合适的验证手段就极为重要。当前有多种验证方法可供选择,如软件仿真、硬件仿真和原型验证。三者在芯片前端设计的功能验证阶段发挥着重要作用。与软件仿真和硬件仿真相比,原型验证的最大优势在于其高性能。相比之下,软件仿真操作简便,但速度较慢,适合小型设计和模块级验证;硬件仿真容量大,扩展性好,调试能力强,适合大型设计的模块、芯片级和系统级验证;而原型验证则运行速度快,但调试能力相对较弱。如今许多用户依赖FPGA芯片供应商提供的调试工具,但这些调试手段相对单一且有限。
2. 设计调试有哪些手段?
在原型验证中,调试的核心任务是定位和解决设计中的故障,以确保系统功能的正确性。特别是在大规模复杂的SoC设计原型验证过程中,工程师需要确保设计中的问题是可调试的,最大程度地减少开发过程中花费在调试上的时间。通常,用户将设计下载到原型验证系统后,第一次运行时总会遇到各种失败情况。这些失败可能源自多个方面:设计本身的缺陷、编译过程中引入的错误(如由于设计分割和引脚复用引起的时序错误),以及外部环境配置的不完善(如子卡接口故障)。因此,开发人员需要有效的软件调试和观测工具,来确认硬件是否正常运行,所有功能模块是否按照预期工作,以快速定位和解决问题。这就需要借助外部逻辑分析仪或内嵌逻辑分析仪来探测故障的根源。
目前,常见的设计调试手段包括:基本I/O、AXI总线事务、信号级调试以及基于协议的连接等。多数用户还习惯于使用FPGA厂商提供的内嵌逻辑分析仪,进行原型验证系统上板测试阶段的调试。然而,这些工具在面对复杂的多FPGA设计,即大规模复杂设计时,可能会面临资源消耗过大以及管理难度较高的问题。
在调试与观测工具方面,思尔芯的芯神瞳 Prodigy原型验证解决方案就提供了全面且灵活的调试手段,配备了实时控制软件(Player Pro-RunTime)、设计调试软件(Player Pro-DebugTime)、深度调试套件 Multi-Debug Module(MDM)、协同仿真软件ProtoBridge等完整工具链,极大提升了用户效率。这些功能的增加主要是由于思尔芯面向广泛的客户需求,而这是其他厂商可能未能提供的。
在下次的视频中,我们将详解思尔芯芯神瞳Prodigy原型验证解决方案中的这些调试工具如何协同工作,以及它们如何帮助开发人员更高效地进行原型验证和设计调试。敬请期待!
点赞、关注加转发,为你带来更多EDA硬核科普。