一种用于节点互连芯片验证的全局检测模块方法

文档序号:9750673阅读:467来源:国知局
一种用于节点互连芯片验证的全局检测模块方法
【技术领域】
[0001]本发明涉及一种节点互连芯片模块检测方法,具体地说是一种用于节点互连芯片验证的全局检测模块方法。
【背景技术】
[0002]随着FPGA验证工作的深入,出现了一些验证工作上瓶颈,主要是随着多CPU多线程正常工作后,数据包大量并发,而限于软件采样频率和数据量的缘由,无法简单的使用Chipscope抓取相应信号。这种情况下会出现CPU宕机后,无法利用传统简单方法进行查询消息报文,无法对FPGA代码进行实时调试。所以现阶段迫切需要一种更好的NC平台调试手段,能够做到监测由CPU发出以及由NC返回的各种消息报文。鉴于Xi I inx FPGA软件I SE自带的调试工具Chipscope存储资源有限且采样频率的限制,以及逻辑分析仪虽然可以保存远超Chipscope保存数据量的数据,但是相比于复杂的试验环境,仍然捉襟见肘,且无法从存储的的大量数据中简单快速的查找到关键信息,加之采买价格颇贵。
[0003]

【发明内容】

本发明的技术任务是提供一种用于节点互连芯片验证的全局检测模块方法,来解决逻辑分析仪价格昂贵,且由于逻辑分析仪针脚有限,无法抓取太多信号,存储的数据也无法快速简单的查找定位关键信息的问题。
[0004]本发明解决其技术问题所采用的技术方案是:一种用于节点互连芯片验证的全局检测模块方法,步骤如下:
(1)以独立模块的形式嵌入节点互连芯片逻辑,随节点互连逻辑同时运行,监听各个信道交互的报文信息,按照相应协议规则进行错误检测,报出超时和报文错误信息,全自动运行;
(2)将CPU发出的主动QPI报文存储,当有QPI报文从NC端返回时,与相对应的已经存储下来的源QPI报文进行比较,确定是否为所期望的报文;同时每个CPU发出的报文都会加一时间戳(Timestamp)用来判断是否超时。
[0005]作为优选,所述步骤(I)中的模块包括一下模块:
(1)存储模块设计:该模块负责存储所有由CPU发起的主动QPI报文,以方便对由NC返回的QPI报文进行检测;在应用中,所有的发送和回复报文都是乱序传输的,而RAM存储器又具有随机读写的功能,故采用RAM作为存储介质;
(2)存储器控制信号产生模块:在有CPU发送请求报文头抵达时,根据报文头的messageclass位区分六个信道的报文类型,按照优先级分别存储,即优先级高的先存储,优先级低的延后存储,以报头的RTID为Addr,写使能置位,将报头写入输入端口 ;在没有CPU发送请求报文的空闲状态,将读使能置位,以RTID为地址将报文头读出,这样既不会出现覆盖写入的问题,同时也可以针对返回的包RTID快速查找到对应的存储报文头包;
(3)超时处理模块:当在CPU收取回复报文的时间阈值之内没有对应的协议报文回复,本模块进行这种情况判定,并产生Timeout报警信号;具体行为如下:使用循环计算的计数器作为local时钟,当CPU的请求报文到达时,将当时的local时钟的数值作为时间戳,写入到报文头包的相应位置,并将处理过的报文头包写入存储器中;当存储器没有被动的写入和读出的时候,要对存储器中各个报文头包的时间戳遍历;与local时钟比较,若超过设定阈值则报警;
(4)错误处理模块:本模块的功能是判定NC返回的响应报文是否为CPU锁期望的正确回复类型,即宽松判定;具体行为如下:
每当NC返回一个QPI响应报文的时,根据报文中的RTID[5:0],即可提取出存储器中对应的源QPI报文头包。依据从QPI协议提取的判定算法,判定NC所返回的报文是否为满足协议要求的正确报文,如果满足要求则擦除存储的报文头包,反之即可产生Error信号报警。
[0006]本发明的一种用于节点互连芯片验证的全局检测模块方法和现有技术相比,具有以下有益效果:
(I)本发明具有实现简单,效果优秀的特点,可以方便的移植到需要大量报文交互的FPGA验证平台。根据验证平台交互报文的宽度定义存储位宽,根据报文格式定义分类和存储算法。检测算法需要依据相关的节点互连协议,本发明基于Intel公司的QPI协议开发,但可根据具体环境少量修改代码实现其他互连协议的支持,其主旨思想不变,符合自动化检测的思想,可大大提高验证人员工作效率。
[0007](2)本发明中设置有独立模块,需要验证人员将其集成到需要进行相应验证的主体工作模块中,将需要验证的数据接口接入。本发明设计的检测模块较精炼,占用FPGA芯片资源较小,在资源允许的情况下可升级检测算法,支持更复杂的错误检测。
[0008](3)本发明实现的全自动化的可潜入NC逻辑的全局检测模块,可用来实时对NC平台QPI报文进行监听检测并遇错报警。本发明已模块化,可以方便地嵌入到NC平台的各个部分中,可轻松移植到类似的FPGA验证平台,提高验证人员效率。
[0009]本发明具有设计合理、结构简单、使用方便、一物多用等特点,因而,具有很好的推广使用价值。
【附图说明】
[0010]下面结合附图对本发明进一步说明。
[0011]附图1为一种用于节点互连芯片验证的全局检测模块方法的工作流程框图。
【具体实施方式】
[0012]下面结合附图和具体实施例对本发明作进一步说明。
[0013]本发明的一种用于节点互连芯片验证的全局检测模块方法,步骤如下:
(1)以独立模块的形式嵌入节点互连芯片逻辑,随节点互连逻辑同时运行,监听各个信道交互的报文信息,按照相应协议规则进行错误检测,报出超时和报文错误信息,全自动运行;
(2)将CPU发出的主动QPI报文存储,当有QPI报文从NC端返回时,与相对应的已经存储下来的源QPI报文进行比较,确定是否为所期望的报文;同时每个CPU发出的报文都会加一时间戳(Timestamp)用来判断是否超时。
[0014]作为优选,所述步骤(I)中的模块包括一下模块: (1)存储模块设计:该模块负责存储所有由CPU发起的主动QPI报文,以方便对由NC返回的QPI报文进行检测;在应用中,所有的发送和回复报文都是乱序传输的,而RAM存储器又具有随机读写的功能,故采用RAM作为存储介质;
(2)存储器控制信号产生模块:在有CPU发送请求报文头抵达时,根据报文头的messageclass位区分六个信道的报文类型,按照优先级分别存储,即优先级高的先存储,优先级低的延后存储,以报头的RTID为Addr,写使能置位,将报头写入输入端口 ;在没有CPU发送请求报文的空闲状态,将读使能置位,以RTID为地址将报文头读出,这样既不会出现覆盖写
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1