您的位置 首页 知识

将片外调试的长处融入FPGA片上调试之中

FPGA片上调试已出现了很多年,成为传统复杂FPGA设计调试方法的一种常用替代方式,将虚拟测试夹具放于FPGA设计任何地方而不是采用昂贵的通用I/O引脚是可编程逻辑器件才有的性能。但片上调试也有一些不

FPGA片上调试已呈现了许多年,成为传统杂乱FPGA规划调试办法的一种常用代替办法,将虚拟测验夹具放于FPGA规划任何当地而不是选用贵重的通用I/O引脚是可编程逻辑器件才有的功用。但片上调试也有一些不足之处,本文将评论片上调试的约束,并介绍怎么把片上调试与片外深采样存储特性结合起来。

跟着FPGA密度不断添加,工程师们需求常常运用新办法对FPGA完结的规划进行测验和验证。规划人员传统上运用逻辑剖析仪、示波器和总线剖析仪经过测验夹具来探查信号,这些测验夹具和衔接器与FPGA上用户界说的I/O引脚相连,部分引脚(最常见的是64个)被分配给调试和验证,因而关于引脚分配,规划人员不得不在全面调试与规划完结之间进行和谐。工程师常常还要组织时刻给引脚加上片上逻辑以便挑选信号或信号组,驱动I/O和后边的衔接部分以供调试。虽然该计划可削减分配给调试的I/O引脚数量,但这项作业单调乏味,并且一般不能供给正确调试规划所需的可见性,此外测验夹具和衔接器占用了名贵的电路板空间,并会引进信号完整性和时钟问题(特别是在高速电路板规划上),一起本钱也很高。

测验杂乱FPGA规划的另一个办法是把部分FPGA逻辑资源专用于“逻辑剖析”内核,这些内核的功用类似于传统的逻辑剖析仪,包含触发、数据收集和采样存储,但却坐落FPGA中,可直接触摸到规划的信号和节点。逻辑剖析内核的数据存储在FPGA本地存储器中,经由JTAG端口能够读出,这样就不必占用名贵的通用I/O引脚。由于逻辑剖析内核坐落FPGA内部,可运用高速互连总线、快速存储器和体系时钟,而无须把这些信号引出芯片,因而可供给传统调试和验证办法中没有的可见度和精确性。

抢先的FPGA供货商能供给方便的东西,把逻辑剖析和总线剖析内核直接插入到FPGA规划中,并带有先进的接口,支撑测验和丈量供货商干流逻辑剖析仪的多种特性和功用。

片上调试的约束

这种片上调试的首要约束在于逻辑内核自身运用了FPGA资源,更重要的是还用到了采样存储器。完结逻辑或总线剖析内核所需的逻辑十分少(一般少于FPGA逻辑单元的3%),由于这些内核很小,所以它们能够放在被测逻辑邻近不必的逻辑里。但与之相反,片上采样存储会占用许多片上存储资源。片上逻辑与总线剖析内核运用FPGA内部RAM,依据用户界说的触发条件存储收集到的样品数据,只是32K采样数据就需求用到FPGA的悉数RAM单元。

除此以外,时刻也是调试多个体系问题的关键因素之一,长时刻采样需求更多片上存储器。处理这个问题的一个常用办法是一旦完结调试和验证就把逻辑剖析内核去除,虽然这释放了FPGA规划的逻辑和存储器资源,但也意味着逻辑剖析内核不能用在今后的规划中。

采样存储器的数量由FPGA里的RAM数量决议,在某些状况下,它约束了对发生在较长时刻里的杂乱事情进行调试。片上调试处理计划期望经过供给先进的支撑,答应用户界说杂乱触发状况来战胜这个约束,根据多事情的触发条件让用户只能捕捉与特定事情相关的数据,然后节省片上存储器资源。虽然该办法能够更好地运用有限的片上存储器,但它需求知道过错发生在逻辑中的什么当地,而这常常是一个不断演进的迭代进程,要细心研讨引起过错的具体规划问题。因而虽然该办法能够用于调试,但它太费时,且需求许多考虑和对规划的深化知道,然后大大影响了验证才能,并且一般无法把规划“分化”成多个小部分塞入受限片上资源进行验证。

传统测验和丈量设备制造商环绕这个问题,供给了带有很深采样存储和杂乱触发才能的测验设备。当规划呈现问题时,用户要尽量多收集数据,常常要好几秒,然后运用供给的东西检查数据,发现规划中的问题,这样能保证工程师抓到事情,但在检查数据发现问题时需求有耐性。

将两者长处结合起来

抱负的处理计划是把传统片外调试设备的扩展采样存储器与片上调试的长处结合在一起。这种办法能运用户把虚拟测验夹具放在FPGA规划恣意方位,触摸内部信号和节点,并运用传统逻辑和总线剖析仪设备的片外深采样存储器。它没有运用片上存储资源,相反,存储器都在片外。

该处理计划带来了许多长处。用户能够调试现在许多FPGA规划中常见的杂乱数据交换事情,调试杂乱的操控逻辑、存储器和I/O接口、处理器体系以及具体的状态机等,这些都要求在较长时刻内捕捉样品数据。杂乱数据交换事情需求用户捕捉一切活动以全面剖析事情,当采样存储约束取消后,还能够再加上时刻符号。

这种新办法最有用的当地在于完结了片上验证。彻底调试一个FPGA规划既费时又需求许多的核算,新的组合式计划可让用户运用实际国际简直无量的测验向量在片上调试FPGA。在软件仿真环境里即便仿真10秒的功用也要用多达100天的时刻,而在实际条件下仿真规划功用还能提醒软件仿真环境下无法看到的异步和信号完整性等异常状况。

片上逻辑和总线剖析内核一般把采样数据写入片上存储单元,也可对这些内核进行修正而把数据写到片外,但需求一个新接口。现在大都片上调试东西运用JTAG接口与安顿在FPGA里的逻辑和总线剖析内核进行通讯,这是一个相对较慢的串行衔接(10MHz),但对确认逻辑和总线剖析内核参数如触发条件来说正好,乃至对存储在片上存储器里的空载采样也满足,可是它不能支撑结合片内、片外处理计划所需求的快速片外数据传输率,需求一个专用高速端口,就是说要为调试分配I/O引脚,这样就抵消了片上调试办法的一个重要长处。有一个办法是运用比如时分复用技能把数据压缩到少数I/O引脚中,然后在片外将数据传给外部采样存储器。剖析标明,这样只需分配20个I/O引脚就能够捕捉高达79个数据信道,并以与片上办法适当的速率在片外传输。

本文定论

片上调试作为调试杂乱FPGA规划的一个可行办法而呈现,现在正在开发的新技能以及现在已呈现的技能则经过交融片外逻辑剖析设备存储单元对该计划进行改善。这样不只发挥了片上调试的效果,如片上实时验证,并且供给了一种经济的办法能够替代现在贵重的逻辑和数据剖析设备。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/192828.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部