一种处理器内部通用接口性能检测与分析方法、系统及介质技术方案

技术编号:25479151 阅读:36 留言:0更新日期:2020-09-01 23:00
本发明专利技术公开了一种处理器内部通用接口性能检测与分析方法、系统及介质,本发明专利技术方法包括数据提取、数据预处理、性能计算等步骤,通过在硅前验证阶段监测处理器内部接口的数据报文,计算得到系统中各接口性能和数据流在各相邻接口之间的延时等性能数据,继而分析得到系统的整体性能和定位系统性能瓶颈,为设计师进行代码优化提供依据和方向。本发明专利技术可在RTL阶段就进行性能分析,不止性能分析时间左移,在硅前进行性能优化,还可以精准定位性能瓶颈,降低性能优化难度,最重要的是可以在流片前对芯片具体性能情况有比较精准的把握。同时本发明专利技术具有广泛地适用性,既可以用于软模拟仿真平台,也可以用于硬件仿真加速器平台和FPGA平台。

【技术实现步骤摘要】
一种处理器内部通用接口性能检测与分析方法、系统及介质
本专利技术涉及集成电路性能验证领域,具体涉及一种处理器内部通用接口性能检测与分析方法、系统及介质,用于芯片流片前处理器内部通用接口性能监测与分析。
技术介绍
随着集成电路的快速发展,集成电路的面积已经不是用户最关注和衡量的性能指标,而是越来越重视集成电路的功耗和性能。功耗的影响更多与电源电压、工艺和物理实现等因素有关,但是前端逻辑设计师可以通过优化时钟门控、电源关断等手段进行功耗方面的优化。而性能的测试,通常是通过在硅后跑benchmark测试题进行分析,这样进行性能测试的方法存在2处弊端,一是性能测试的时间节点比较晚,进行性能优化的人力和时间成本大,性能优化结果只能用于二次流片或者下一代产品,二是通过跑benchmark测试题得到的结果通常只能大致反应系统的性能指标,当芯片规模较大时,不能很好地帮助设计师准确定位系统性能的瓶颈,这也就导致了设计师很难对大型芯片开展有针对性的优化工作。比如LMbench对处理器的缓存(Cache)延时测试,只能大致测试出各级Cache的延时,但是因为存在操作系统延时等干扰因素,可能得到与预期不一致的测试结果,此时很难分析导致测试结果不准确的原因。
技术实现思路
本专利技术要解决的技术问题:针对现有技术的上述问题,提供一种处理器内部通用接口性能检测与分析方法、系统及介质,本专利技术通过在硅前验证阶段监测处理器内部接口的数据报文,并计算得到系统中各接口性能和数据流在各相邻接口之间的延时等性能数据,继而分析得到系统的整体性能和定位系统性能瓶颈,为设计师进行代码优化提供依据和方向。同时,本专利技术具有广泛地适用性,既可以用于软模拟仿真平台,也可以用于硬件仿真加速器平台和FPGA平台。为了解决上述技术问题,本专利技术采用的技术方案为:一种处理器内部通用接口性能检测与分析方法,该方法包括:1)数据提取:提取处理器内部通用接口的全部事务包;2)数据预处理:根据监测数据的协议编号,对提取的事务包进行划分得到不同协议的监测数据;根据协议编号对应的数据格式定义,对每一类协议的监测数据进行数据域的划分;根据采样点编号,对对每一类协议的监测数据进行数据域的划分得到的数据再次进行划分,将各个协议的监测数据分别归属到各个通用接口数据监测器所对应的接口;3)性能计算:根据协议编号确定对应的性能计算算法,针对数据预处理得到的数据计算各个接口的各个协议的性能值;根据环境配置信息中所设定的通路、通路请求相关转换关系以及通路性能计算方法,计算环境配置信息中所设定通路的性能值。可选地,步骤3)之后还包括对各个接口的各个协议的性能值、环境配置信息中所设定通路的性能值生成统计分析图形结果的步骤。可选地,步骤1)之前还包括获取处理器内部通用接口的全部事务包的下述步骤:S1)监测接口上的请求报文和响应报文,若收到接口上的请求报文或响应报文,则按照事务包形式将接收到的请求报文及其对应的时间戳或响应报文及其对应的时间戳、采样点编号和协议编号打包后输出;所述事务包为一个十六进制数据,包含请求报文、请求报文对应的时间戳、响应报文、响应报文对应的时间戳以及采样点编号和协议编号信息;所述采样点编号为通用接口数据监测器的属性并由用户定义,用于软件部分处理数据时区分来自不同通用接口数据监测器接口的事务包,继而进行分类处理,用户需要保证不同通用接口数据监测器接口处的采样点编号不一样;所述协议编号为所述通用接口数据监测器的属性并由用户定义,一种协议对应一个协议编号,具有某种协议编号的所述通用接口数据监测器具备监测该种协议数据的能力;S2)接收打包输出的信息并实时计算接口上的延时信息,对延时进行排序并将最大的前N个延时对应的输出事务包排序后存储在有JTAG接口的存储器中,以便在仿真结束后通过JTAG读取该存储器,作为所述通用接口数据监测器的输出,得到接口上的性能参数。可选地,步骤S1)中收到接口上的请求报文的处理步骤包括:S1.1A)收到接口上的请求报文;S1.2A)将请求报文附加时间戳,按照报文域定义对接收到的请求报文进行拆分,拆分出包含索引id、请求地址在内的有效信息;S1.3A)根据索引id对所述查找表中的非空的查找表项进行比对,如果有相同索引id项,则记下对应查找表项序号A,将请求报文以及所述时间戳生成模块记录的接收到请求报文的时间存入序号A对应的FIFO中;若没有则记下最小的空查找表项序号B,则将请求报文以及所述时间戳生成模块记录的接收到请求报文的时间打包存入序号B对应的FIFO中,并将序号B项的有效位置1。可选地,步骤S1)中收到接口上的响应报文的处理步骤包括:S1.1B)收到接口上的响应报文;S1.2B)按照报文域定义对接收到的响应报文进行拆分,拆分出索引id;根据索引id对所述查找表中的非空的查找表项进行比对,找到相同索引id对应的查找表项序号C;S1.3B)判断表项序号C对应的FIFO内计数器值为1是否成立,若不成立则读取查找表项序号C对应的FIFO中的数据;否则,进一步判断是否没有写表项序号C对应的FIFO的操作,若没有写表项序号C对应的FIFO的操作则将表项序号C项的有效位置0,否则读取查找表项序号C对应的FIFO中的数据。可选地,步骤S1)中将接收到的请求报文及其对应的时间戳或响应报文及其对应的时间戳、采样点编号和协议编号打包后输出的处理步骤包括:将读取查找表项序号C对应的FIFO中的数据作为响应报文对应的请求报文及其时间戳,然后将响应报文对应的请求报文及其时间戳、以及从FIFO中读取的响应报文、响应报文的时间戳、采样点编号和所述协议编号合并后打包;并在预设的打印开关打开的情况下,将输出事务包打印在仿真环境运行Log文件中,作为所述通用接口数据监测器的输出。可选地,步骤S2)中计算接口上的延时信息具体是指将响应报文的时间戳减去其对应请求报文的时间戳。此外,本专利技术还提供一种处理器内部通用接口性能检测与分析系统,包括计算机设备,该计算机设备被编程或配置以执行所述处理器内部通用接口性能检测与分析方法的步骤,或者该计算机设备的存储器中被编程或配置以执行所述处理器内部通用接口性能检测与分析方法的计算机程序。此外,本专利技术还提供一种处理器内部通用接口性能检测与分析系统,包括计算机设备和数据采集装置,该计算机设备被编程或配置以执行所述处理器内部通用接口性能检测与分析方法的步骤,或者该计算机设备的存储器中被编程或配置以执行所述处理器内部通用接口性能检测与分析方法的计算机程序,所述数据采集装置用于获取处理器内部通用接口的全部事务包,所述数据采集装置包括一个可综合的通用接口数据监测器和一个延时计算排序器,所述通用接口数据监测器包含请求存储模块、时间戳生成模块、响应匹配模块、查找表和输出打包模块,所述请求存储模块用于监测和接收接口上的请求报文,所述响应匹配模块用于监测和接收接口上的响应报文,所述时间戳生成模块用于对接口的请求报文和响应报文附加时间戳,所述查找本文档来自技高网...

【技术保护点】
1.一种处理器内部通用接口性能检测与分析方法,其特征在于,该方法包括:/n1)数据提取:提取处理器内部通用接口的全部事务包;/n2)数据预处理:根据监测数据的协议编号,对提取的事务包进行划分得到不同协议的监测数据;根据协议编号对应的数据格式定义,对每一类协议的监测数据进行数据域的划分;根据采样点编号,对对每一类协议的监测数据进行数据域的划分得到的数据再次进行划分,将各个协议的监测数据分别归属到各个通用接口数据监测器所对应的接口;/n3)性能计算:根据协议编号确定对应的性能计算算法,针对数据预处理得到的数据计算各个接口的各个协议的性能值;根据环境配置信息中所设定的通路、通路请求相关转换关系以及通路性能计算方法,计算环境配置信息中所设定通路的性能值。/n

【技术特征摘要】
1.一种处理器内部通用接口性能检测与分析方法,其特征在于,该方法包括:
1)数据提取:提取处理器内部通用接口的全部事务包;
2)数据预处理:根据监测数据的协议编号,对提取的事务包进行划分得到不同协议的监测数据;根据协议编号对应的数据格式定义,对每一类协议的监测数据进行数据域的划分;根据采样点编号,对对每一类协议的监测数据进行数据域的划分得到的数据再次进行划分,将各个协议的监测数据分别归属到各个通用接口数据监测器所对应的接口;
3)性能计算:根据协议编号确定对应的性能计算算法,针对数据预处理得到的数据计算各个接口的各个协议的性能值;根据环境配置信息中所设定的通路、通路请求相关转换关系以及通路性能计算方法,计算环境配置信息中所设定通路的性能值。


2.根据权利要求1所述的处理器内部通用接口性能检测与分析方法,其特征在于,步骤3)之后还包括对各个接口的各个协议的性能值、环境配置信息中所设定通路的性能值生成统计分析图形结果的步骤。


3.根据权利要求1所述的处理器内部通用接口性能检测与分析方法,其特征在于,步骤1)之前还包括获取处理器内部通用接口的全部事务包的下述步骤:
S1)监测接口上的请求报文和响应报文,若收到接口上的请求报文或响应报文,则按照事务包形式将接收到的请求报文及其对应的时间戳或响应报文及其对应的时间戳、采样点编号和协议编号打包后输出;所述事务包为一个十六进制数据,包含请求报文、请求报文对应的时间戳、响应报文、响应报文对应的时间戳以及采样点编号和协议编号信息;所述采样点编号为通用接口数据监测器的属性并由用户定义,用于软件部分处理数据时区分来自不同通用接口数据监测器接口的事务包,继而进行分类处理,用户需要保证不同通用接口数据监测器接口处的采样点编号不一样;所述协议编号为所述通用接口数据监测器的属性并由用户定义,一种协议对应一个协议编号,具有某种协议编号的所述通用接口数据监测器具备监测该种协议数据的能力;
S2)接收打包输出的信息并实时计算接口上的延时信息,对延时进行排序并将最大的前N个延时对应的输出事务包排序后存储在有JTAG接口的存储器中,以便在仿真结束后通过JTAG读取该存储器,作为所述通用接口数据监测器的输出,得到接口上的性能参数。


4.根据权利要求3所述的处理器内部通用接口性能检测与分析方法,其特征在于,步骤S1)中收到接口上的请求报文的处理步骤包括:
S1.1A)收到接口上的请求报文;
S1.2A)将请求报文附加时间戳,按照报文域定义对接收到的请求报文进行拆分,拆分出包含索引id、请求地址在内的有效信息;
S1.3A)根据索引id对所述查找表中的非空的查找表项进行比对,如果有相同索引id项,则记下对应查找表项序号A,将请求报文以及所述时间戳生成模块记录的接收到请求报文的时间存入序号A对应的FIFO中;若没有则记下最小的空查找表项序号B,则将请求报文以及所述时间戳生成模块记录的接收到请求报文的时间打包存入序号B对应的FIFO中,并将序号B项的有效位置1。


5.根据权利要求3所述的处理器内部通用接口性能检测与分析方法,其特征在于,步骤S1)中收到接口上的响应报文的处理步骤包括:
S1.1B)收到接口上的响应报文;
S1.2B)按照报文域定义对接收到的响应报文进行拆分,拆分出索引id;根据索引id对所述查找表中的非空的查找表项进行比对,找到...

【专利技术属性】
技术研发人员:潘国腾罗莉欧国东周海亮荀长庆周理铁俊波王蕾龚锐石伟刘威王永文
申请(专利权)人:中国人民解放军国防科技大学
类型:发明
国别省市:湖南;43

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

1