当前位置:首页 > EDA > 电子设计自动化
[导读]随着系统芯片(SoC)设计的体积与复杂度持续升高,验证作业变成了瓶颈:占了整个SoC研发过程中70% 的时间。因此,任何能够降低验证成本并能更早实现验证sign-off的方法都是众人的注目焦点。台湾工业技术研究院 (工研院

随着系统芯片(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技术的优势。

 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭