导入灵活的FPGA验证方法
摘要: 台湾工业技术研究院 (工研院, ITRI) 在今年的设计自动化大会(2011 DAC)提出的案例研究,提出一种能够显著提升客制化FPGA 原型板验证效率的创新方法,自动化现有的电路仿真(in-circuit emulation)侦错功能,并提供更高的 FPGA 能见度。这个以 FPGA 为基础的 SoC 验证平台对工研院而言是前景看好的崭新领域,对其支持台湾IC设计产业新技术领域的研发工作助益良多。(请参考 DAC 2011 user track 2U.7 )
随着系统芯片 (SoC) 设计的体积与复杂度持续升高,验证作业变成了瓶颈:占了整个 SoC 研发过程中 70% 的时间。因此,任何能够降低验证成本并能更早实现验证 sign-off 的方法都是众人的注目焦点。
台湾工业技术研究院 (工研院, ITRI) 在今年的设计自动化大会(2011 DAC)提出的案例研究,提出一种能够显著提升客制化FPGA 原型板验证效率的创新方法,自动化现有的电路仿真(in-circuit emulation)侦错功能,并提供更高的FPGA 能见度。这个以 FPGA 为基础的 SoC 验证平台对工研院而言是前景看好的崭新领域,对其支持台湾IC设计产业新技术领域的研发工作助益良多。(请参考 DAC 2011 user track 2U.7 )
案例研究:高效能的多媒体SoC平台
这款 SoC 设计是高效能的 Android 兼容多媒体 SoC 平台。配置了 AXI、AHB 与 APB 总线,供通讯使用;由工研院(PACDSPs、EMDMA 与 DDR2 控制器) 设计的高效能客制化 IP 组件连结至 AXI 总线,加速 H.264 视讯编译码器 (video codec) 等多媒体应用软件的执行。包括 ARM、SDRAM、DMA、SRAM、Ethernet 与 LCD 在内的标准 IP 组件连结至 AHB 总线,适合于一般应用。最后,UART、Timer、I2S、I2C 与 Watchdog 等低频率的 IP 区块 (block) 则连结至 APB 总线。
下列案例研究说明了工研院与思源科技工程师如何合作,使用思源科技Proto
与众不同的作法
要简化侦错作业,就需要更高效率的验证方法。Proto
工研院起初担心其客制化原型板可能无法符合思源科技Proto
工研院团队透过思源科技Verdi自动侦错系统的进阶观察、追踪与分析功能,来使用储存的探测资料进行侦错作业。在经过多次重复侦错之后,发现了两个问题:1) USB 中断 (USB interrupt) 长时间锁住 ARM,因此 I2S 内的 FIFO 是空的,因而造成问题; 2) 定时中断 (Timer interrupt) 的优先级高于 DMA 中断,因此再一次造成 I2S 内的 FIFO 是空的。工研院工程师使用思源科技软件的侦错功能,进一步分析设计行为,仅管表现出来是共通的错误征兆,工程师还是能够迅速发现这些错误的根本成因是源于两种不同的情况。
此外,观察额外的关键讯号是侦错时必需的,但这些讯号多半不在原始探测清单中。工研院工程师透过Probe Visualizer迅速的探测 ECO 流程,在 10 分钟内就可新增 10 个新讯号,而且不用重新编译整个设计。相对传统的侦错方法需要在 RTL 拖曳新讯号,并且针对这个特定的设计重新执行合成 (synthesis ) 以及布局与绕线作业,约需花上 2 至 3 个小时,因此这方面的革新省下了大量的时间。
工程师能够轻松地将 所需额外的RTL探测讯号由 Verdi 侦错环境拖曳至 Probe Visualizer。这套系统会自动建立RTL 至逻辑闸层 (RTL-to-gate level ) 的讯号对应关系,,所以可直接在 FPGA 布局与绕线档案上迅速执行部份绕线作业来看到新增的探测讯号,大幅缩短侦错作业时间,所以能在短时间内处理多重侦错工作阶段 (debug session)。而对设计中使用的「黑盒子」IP 区块,也只需 EDIF 名称,就可以进行探测 ECO 流程。
评估结果
工研院工程师在修正问题并成功试产设计之后,检讨了项目实际耗费的时间,并评估了这个新的 FPGA SoC 原型验证方法的成果。
进行 RTL 设计、仿真、通讯协议验证与 FPGA 设计实现的时间约为 2 个月。在驱动程序移植 (driver porting )上所花费的时间则短了许多,大约只有 2 个星期。工程师随后又花了 2 个月的时间进行验证作业,试图透过硬件逻辑分析器检查 FPGA 内部讯号解决音效问题,同时也在音效驱动程序中增加观察点,以连结并企图找出问题。这种传统的 FPGA 侦错方法,需要的时间和设计研发的时间一样长,然而对工研院团队而言,相当令人沮丧的是结果仍然一无所获。不过,在经过思源科技提供的应用软件教育训练/支持课程及一星期的实作经验后,工研院工程师使用 Proto
对工研院而言,Proto
总合来说,思源科技Probe Visualizer 透过以软件为基础的创新方法,改变了原型板验证的方法,实现丰富、实时的设计能见度,并且让原型板能使用 Verdi 的侦错威力,使原型板侦错时间比传统的方法大幅缩短一半。这种侦错作业生产力与整体验证效率的提升,不仅能协助工研院在更早期的 SoC 研发流程中配置 FPGA 原型,并且能迅速移转至搭载最新 FPGA 技术的新一代原型板上,充分运用最新 FPGA 技术的优势。
暂无评论