跟着体系芯片(SoC)规划的体积与复杂度继续升高,验证作业变成了瓶颈:占了整个SoC研制过程中70% 的时刻。因而,任何可以下降验证本钱并能更早完成验证sign-off的办法都是世人的注视焦点。
台湾工业技能研讨院 (工研院, ITRI) 在本年的规划主动化大会(2011 DAC)提出的事例研讨,提出一种可以明显提高客制化FPGA原型板验证功率的立异办法,主动化现有的电路仿真(in-circuit emulation)侦错功用,并供给更高的FPGA能见度。这个以FPGA为根底的SoC验证渠道对工研院而言是远景看好的簇新范畴,对其支撑台湾IC规划工业新技能范畴的研制作业助益良多。
事例研讨:高效能的多媒体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总线。
下列事例研讨说明晰工研院与思源科技工程师怎么协作,运用思源科技ProtoLink Probe Visualizer,战胜工研院SoC规划中呈现的验证应战。这个与音效功用相关的问题是:在 FPGA原型板未激活OS的状况下,功用正常运作 (可录音与播映);但如果在原型板上启用Linux,功用就无法正常运作。在FPGA原型环境中,要运用传统的侦错办法扫除这类问题是适当困难的。FPGA的能见度仅限制在少量的信号与时脉周期内,无法供给满足的信息找出过错地点。而因为激活OS(例如 Linux)消耗的时刻适当长,想透过缓存器转化阶级(RTL) 仿真来处理问题也行不通。因为问题的成因或许在于软件、硬件或驱动程序,因而要的确找出问题的底子原因是一项检测。
异乎寻常的作法
要简化侦错作业,就需求更高功率的验证办法。ProtoLink Probe Visualizer是新的原型验证环境,采用以软件为根底的办法,可以从RTL规划阶段开端到终究的规划完成阶段,都供给高水平的规划能见度,可全面加快侦错作业的进行。
工研院起先忧虑其客制化原型板或许无法契合思源科技ProtoLink Probe Visualizer的接口需求,而思源科技工程师在进行几项快速测验之后,证明工研院客制化原型板上的规范 J连接器可顺畅地与履行Probe Visualizer软件的作业站连接。只需在原型板上新增锁相回路(PLL),供给所需的取样时脉(sampling clock)即可。FPGA的设置流程适当简略,可轻松整合至现有的程序(script) 中,主动选取大约100个勘探信号(probed signal),就能见度来说,已比曩昔的办法提高6倍之多。此外,一切的勘探材料都可贮存在外接的2GB勘探信号内存中而不占用FPGA资源,真实额定需求的勘探逻辑(probe logic)也仅占用FPGA的2%,可说适当的少。外接内存的材料容量可贮存足够长度的时脉周期,让工程师可以的确把握软件、硬件与驱动程序间的联系。
工研院团队透过思源科技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侦错办法,需求的时刻和规划研制的时刻相同长,然而对工研院团队而言,适当令人懊丧的是效果依然一无所得。不过,在通过思源科技供给的运用软件教育练习/支撑课程及一星期的实作经历后,工研院工程师运用ProtoLink Probe Visualizer,在短短一星期的时刻内就厘清了两大问题!
对工研院而言,ProtoLink Probe Visualizer是一种适当有用的FPGA原型板侦错办法。工程师再也不用限制在传统的侦错办法,而且在实时运用软件中添加调查点也或许会形成其它问题。透过保持原有软件并监测更多FPGA信号在数百万时脉周期内的实时RTL行为,运用者可以获得所需的能见度,更完美的把握、更轻松地侦错规划的问题。
总合来说,思源科技Probe Visualizer透过以软件为根底的立异办法,改变了原型板验证的办法,完成丰厚、实时的规划能见度,而且让原型板能运用Verdi的侦错威力,使原型板侦错时刻比传统的办法大幅缩短一半。这种侦错作业生产力与全体验证功率的提高,不仅能帮忙工研院在更前期的SoC研制流程中装备FPGA原型,而且能敏捷移转至搭载最新FPGA技能的新一代原型板上,充分运用最新FPGA技能的优势。