一种在FPGA平台上片外抓取调试信号的方法技术

技术编号:17031874 阅读:36 留言:0更新日期:2018-01-13 18:48
本发明专利技术涉及服务器信号采集领域,具体涉及一种在FPGA平台上片外抓取调试信号的方法。本发明专利技术利用一个片外的RAM,通过高速接口,将要采集的信号传送到片外,最大可能地存储所选信号,达到采集信号目的,最大程度节约了FPGA内部有限的资源,提高了效率。

【技术实现步骤摘要】
一种在FPGA平台上片外抓取调试信号的方法
本专利技术涉及服务器信号采集领域,具体涉及一种在FPGA平台上片外抓取调试信号的方法。本专利技术利用一个片外的RAM,通过高速接口,将要采集的信号传送到片外,最大可能地存储所选信号,达到采集信号目的,最大程度节约了FPGA内部有限的资源,提高了效率。
技术介绍
FPGA(Field-ProgrammableGateArray现场可编程门阵列)它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。在线调试是芯片设计和FPGA设计中必不可少的一部分。当前FPGA在线调试抓取信号的方式基本是利用片内的存储空间,将相关信号存储下来,当满足存储要求之后,通过JTAG(JointTestActionGroup联合测试行为组织)接口上传至上位机。JTAG也是一种国际标准测试协议(IEEE1149.1兼容),主要用于芯片内部测试。现有的在线调试抓取信号的方式需要占用FPGA片上的存储空间,变相地增加了FPGA的逻辑量进而容易导致FPGA时序不满足,而且片上的存储空间是有限的,会出现无法满足需求,无法采集存储所需信号的问题。针对在FPGA平台验证调试过程中遇到的这种问题,本申请专利技术一种在FPGA平台上片外抓取调试信号的方法,利用一个片外的RAM,通过高速接口将其连接,然后将要采集的信号传送到片外,最大可能地存储所选信号,达到采集信号目的。
技术实现思路
本专利技术主要考虑到在FPGA平台上调试多处理器之间大量数据传输时候,抓取信号数量众多,且所需有时候对采样深度也有很高要求,但由于FPGA软件采集缓存空间较小,在这种情况下对所需信号进行采集时候无法满足需求,针对在FPGA平台验证调试过程中,遇到的这种无法采集存储所需信号的情况,本专利技术利用其他FPGA构建一个片外的FIFO(Firstinfirstout的缩写,是一种先进先出的数据缓存器),通过两片FPGA之间高速接口存储将信号在片外存储并进行上位机多种途径传输。具体地,本申请请求保护一种在FPGA平台上片外抓取调试信号的方法,其特征在于,该方法具体包括如下步骤:在片外构建一个片外存储模块;该片外存储模块与片上信号接口为高速接口;该片外存储模块具有一个控制模块,用于控制片外存储模块的存储,只有当满足触发条件的时候才真正存储数据;该片外存储模块具有一个输出模块,用于把片外存储模块中存储的数据输出到上位机。如上所述的在FPGA平台上片外抓取调试信号的方法,其特征还在于,该片外存储模块是一个大存储深度的FIFO。如上所述的在FPGA平台上片外抓取调试信号的方法,其特征还在于,该FIFO为一个异步FIFO,且FIFO的主体为一个RAM。如上所述的在FPGA平台上片外抓取调试信号的方法,其特征还在于,在片上设置一个输入模块,在该输入模块中加入MUX模块,用于对信号进行筛选。如上所述的在FPGA平台上片外抓取调试信号的方法,其特征还在于,该输入模块还可以对采样数据进行打包,在同一时刻对所有被采样数据采集打包。如上所述的在FPGA平台上片外抓取调试信号的方法,其特征还在于,该输入模块还包括设置的采样时钟和触发信号。如上所述的在FPGA平台上片外抓取调试信号的方法,其特征还在于,输出模块可以是USB口、以太网接口或者是PCIe接口。附图说明图1、现有技术在FPGA平台上片外抓取调试信号的工作示意图图2、本专利技术所述的在FPGA平台上片外抓取调试信号的工作示意图具体实施方式下面通过一个实施例对本专利技术所述的在FPGA平台上片外抓取调试信号的方法的实现步骤进行具体说明:首先需要设置所需采集抓取信号。因为两片FPGA之间传输是有总传输带宽限制的,也就是说如果抓取太多的信号就会导致采样时钟降低,会出现抓不到所需信号的情况。由于FPGA每次编译产生位流时间较长,所以在实际应用中经常出现每次做位流的时候尽可能多设置一些信号去采集,但是在调试的时候并不是每次都要查看所有的设置信号。所以这里在输入控制模块中,加入了一个复用器MUX,以便对采样信号有个筛选,每次仅仅选择本次所需信号进入传输通道。采样信号进入传输通道后,进行打包处理。把对应的信号和采样时钟、触发信号一起通过高速接口传输到片外存储FIFO内部。FIFO是循环存储的,当信号存满了之后要覆盖先前所存储的信号。因为这个时候是没有到达触发条件的,所存储的信息都不一定是最终所需要的信息,只是用来保存最新的信息。当FIFO的控制模块检测到满足所设置的触发条件时候,就会按照设置停止存储。当整个FIFO存满后,通过输出模块向上位机存储,具体接口可以通过pcie接口、以太网或者USB接口来实现,最终结果可以由上位机存储或者在界面上显示。下面参照附图2,对本专利技术的内容的实施方式进行一个简单的说明。从附图2中可以看出,本专利技术与现有技术相比,主要是在片外构建一个异步FIFO,该异步FIFO的主体为一个RAM。该FIFO的特点之一是片外FIFO,即该FIFO不是与逻辑在同一个FPGA内部,而是板级上另外一个存储体。一般这个存储体是用另外一片FPGA来构造。该FIFO的另外一个特点就是深度大,正是用了其深度大的特点弥补了原来片上存储空间不足的缺点。而对该FIFO的输入输出控制需要一些逻辑控制模块。具体逻辑控制模块如下:1、输入模块输入模块的主要作用是用于把设置需要采样的信号从原来的代码中抓取出来。如前面所提到的,在输入模块中加入了一个复用器MUX(多路复用器)。该复用器MUX的功能是对采样信号有个筛选,每次仅选择本次所需信号进入传输通道,进而减少了带宽要求。输入模块还有一个功能就是对采样数据进行打包,要在同一时刻用高速时钟对所有被采样数据采集打包,输入模块的功能也包括设置的采样时钟和触发信号。2、高速接口模块高速接口模块的目的是用于片外输出。本专利技术的核心构思就是不占用片上资源,把被采样信号数据送至片外存储。因此必需有一个稳定可靠的高速接口保证数据有效无误地传输。这个高速接口的传输速率也决定信号可被采集的信号数量多少。传输协议没有固定要求,可以是利用FPGA公司的传输协议,也可以是使用自有的传输协议。3、片外存储模块片外存储模块是一个大存储深度的FIFO,具体的存储深度可以根据自己的需求设置。构造模式也不限制,同样可以用FPGA来构造,既可以灵活地配置高速接口,也可以灵活地设置内部控制和输出接口。针对这个存储模块还有一个控制模块,该控制模块的主要功能就是控制FIFO的存储。虽然前端不停地数据输入,对FIFO进行循环存储,只有当满足触发条件的时候才做到真正存储数据。并根据FIFO的满空状态确定是否继续存储。4、输出模块输出模块的功能就是把FIFO中存储的数据输出到上位机,这里提供了多种接口,如USB口、以太网接口或者是PCIe接口等。显而易见地,上面所示的仅仅是本专利技术的一个具体实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据该实施方式获得其他的技术方案,都属于本专利技术保护的范围。本专利技术能够解决在FPGA平台进行多数据量传输的时候,由于FPGA软件存储资源较小的原因无法本文档来自技高网...
一种在FPGA平台上片外抓取调试信号的方法

【技术保护点】
一种在FPGA平台上片外抓取调试信号的方法,其特征在于,该方法具体包括如下步骤:在片外构建一个片外存储模块;该片外存储模块与片上信号接口为高速接口;该片外存储模块具有一个控制模块,用于控制片外存储模块的存储,只有当满足触发条件的时候才真正存储数据;该片外存储模块具有一个输出模块,用于把片外存储模块中存储的数据输出到上位机。

【技术特征摘要】
1.一种在FPGA平台上片外抓取调试信号的方法,其特征在于,该方法具体包括如下步骤:在片外构建一个片外存储模块;该片外存储模块与片上信号接口为高速接口;该片外存储模块具有一个控制模块,用于控制片外存储模块的存储,只有当满足触发条件的时候才真正存储数据;该片外存储模块具有一个输出模块,用于把片外存储模块中存储的数据输出到上位机。2.如权利要求1所述的在FPGA平台上片外抓取调试信号的方法,其特征还在于,该片外存储模块是一个大存储深度的FIFO。3.如权利要求2所述的在FPGA平台上片外抓取调试信号的方法,其特征还在于,该FIFO为一个异步FIFO,且FIFO的...

【专利技术属性】
技术研发人员:刘凯
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1