芯片访存通路的高效分段测试系统、方法与流程

文档序号:19747673发布日期:2020-01-21 18:48阅读:573来源:国知局
芯片访存通路的高效分段测试系统、方法与流程

本发明属于计算机体系结构与处理器微结构设计技术领域,具体涉及一种芯片访存通路的高效分段测试系统、方法。



背景技术:

随着摩尔定律的推动,芯片上集成的晶体管数量急剧增加,芯片逻辑越来越复杂,访存通路也随着越来越长。另一方面,由于ddr存储器的发展,存储器密度越来越高,速率越来越快,ddr存储器技术越来越复杂。这些因素综合在一起使得访存通路的测试越来越复杂。

常规的访存通路测试是利用cpu核心或者维护命令发出访存请求,如先发写请求,然后发读请求,最后比较写入的数据和读出的数据是否相等来判断访存通路是否有问题。然而由于访存通路的深度非常深,在前期调试中,一旦出现比较不一致的问题,要定位出问题原因非常困难。

发明专利申请cn201611122146.9公开了基于自动测试设备的mram存储器的测试方法,并具体公开了方法包括:步骤s1,将自动测试设备与marm存储器电连接;步骤s2,对mram存储器进行全芯片存储单元读写功能验证;步骤s3,根据marm存储器工作参数设定要求,对marm存储器进行直流参数验证和交流参数验证。该发明能够发现marm存储器的故障,但无法定位访存通路的问题。



技术实现要素:

本发明针对现有技术存在的问题,提出了一种芯片访存通路的高效分段测试系统、方法,能定位芯片访存通路问题,加速芯片访存通路调试过程。

本发明是通过以下技术方案得以实现的:

本发明提供一种芯片访存通路的高效分段测试系统,芯片访存通路的高效分段测试系统,包括存储控制器和存储器;所述存储控制器在其内部设有:测试存储器,用于模拟存储器的读、写延迟行为;微操作控制器,用于发送命令给存储器;以及io寄存器,用于控制微操作控制器执行命令;在芯片访存通路能正常访问时,存储控制器被配置为测试模式,存储控制器发送读写请求给测试存储器,测试存储器收到读写命令后,反馈数据给存储控制器;所述微操作控制器和所述io寄存器在芯片访存通路不能正常访问时启动,用于测试并定位访存通路存在的问题。

本发明提出了在存储控制器中增加测试存储器和微操作控制器来辅助芯片的访存通路测试的系统,模拟ddr4行为的片上测试存储器,ddr4微操作控制器。

作为优选,所述存储器为ddr4存储器。

作为优选,所述测试存储器为sram存储器。

本发明还提供一种芯片访存通路的高效分段测试方法,采用在其内部设有测试存储器、微操作控制器和io寄存器的存储控制器测试存储器的访存通路,所述测试存储器用于模拟存储器的读、写延迟行为;方法包括:

步骤s01,存储控制器发送维护访问请求或cpu访问请求给存储器,检测存储器的访存通路是否能够正常访问,若能正常访问,则执行步骤s02,否则执行步骤s03;

步骤s02,存储控制器在测试模式下与测试存储器进行读写数据模式测试;

步骤s03,io寄存器触发微操作控制器工作,微操作控制器发送命令给存储器,用于测试并定位访存通路存在的问题。

本发明方法在存储控制器中设计一些用于辅助访存通路测试的逻辑,进行芯片流片后的访存通路的测试工作。

作为优选,步骤s01包括:

步骤s11,存储控制器发送维护访问请求或cpu访问请求给存储器;

步骤s12,存储控制器依次发送写请求、读请求给存储器,并接收存储器根据写请求和读请求反馈的数据;

步骤s13,存储控制器比较写入的数据与读出的数据是否相等,若相等,则存储器的访存通路能正常访问,执行步骤s02,否则,不能正常访问,执行步骤s03。

作为优选,步骤s02包括:存储控制器在测试模式下向测试存储器依次发送写请求、读请求,并接收测试存储器根据写请求和读请求反馈的数据。

作为优选,步骤s03包括:io寄存器触发微操作控制器工作,微操作控制器依次发送读功能命令、写功能命令给存储器,若微操作控制器能成功访问存储器,则访存通路的问题存在于存储控制器上游,否则,访存通路的问题存在于存储控制器下游。

作为优选,步骤s03还包括:当微操作控制器不能成功访问存储器,则对存储控制器下游发送不同数据模式,确定访存通路存在的问题。

作为优选,步骤s03还包括:对存储控制器上游进行访存通路的问题进行检测,存储控制器在测试模式下向测试存储器发送读写请求,测试存储器收到读写命令后,反馈数据给存储控制器,进行读写数据模式测试。

作为优选,对存储控制器上游进行访存通路的问题进行检测的过程还包括:当比较写入的数据与读出的数据不相等时,存储控制器发送不同数据模式给测试存储器,确定访存通路存在的问题。

本发明具有以下有益效果:

本发明一种芯片访存通路的高效分段测试系统、方法,能够便于芯片访存通路问题的定位,有效加速芯片的访存通路调试过程,利用本发明中的微操作控制器还可以实现多种ddr4流程的调试工作。

附图说明

图1为本发明芯片访存通路的高效分段测试系统的结构框图;

图2为本发明芯片访存通路的高效分段测试方法的流程图。

具体实施方式

以下是本发明的具体实施例并结合附图,对本发明的技术方案作进一步的描述,但本发明并不限于这些实施例。

如图1,芯片访存通路的高效分段测试系统包括存储控制器和存储器。所述存储控制器在其内部设有测试存储器、微操作控制器、io寄存器。所述测试存储器模拟存储器的读、写延迟行为,所述测试存储器可以为sram存储器。所述存储器可以为ddr4存储器。在芯片访存通路能正常访问时,存储控制器被配置为测试模式,存储控制器发送读写请求给测试存储器,测试存储器收到读写命令后,反馈数据给存储控制器。

所述微操作控制器用于发送命令给存储器,例如,所述微操作控制器向ddr4存储器发送ddr4的读写请求命令。所述io寄存器用于控制微操作控制器执行命令,具体包括触发微操作控制器以及控制微操作控制器执行命令的内容和时序;另外,读写的数据也由io寄存器交互,微操作控制器一次能够发送一组4条命令。所述微操作控制器和所述io寄存器在芯片访存通路不能正常访问时启动,用于测试并定位访存通路存在的问题。

为了便于芯片流片后的访存通路的测试工作,在存储控制器内设计用于测试的片上测试存储器、微操作控制器和io寄存器,通过辅助访存通路测试的逻辑,完成有效访存通路测试,定位出问题存在于访存通路的位置以及问题的具体类型。

如图2,本发明提出一种芯片访存通路的高效分段测试方法,利用图1所示系统,进行访存通路测试。方法包括:

步骤s01,存储控制器发送维护访问请求或cpu访问请求给存储器,检测存储器的访存通路是否能够正常访问,若能正常访问,则执行步骤s02,否则执行步骤s03;

步骤s02,存储控制器在测试模式下与测试存储器进行读写数据模式测试;

步骤s03,io寄存器触发微操作控制器工作,微操作控制器发送命令给存储器,用于测试并定位访存通路存在的问题。

具体地,步骤s01包括:

步骤s11,存储控制器发送维护访问请求或cpu访问请求给存储器;

步骤s12,存储控制器依次发送写请求、读请求给存储器,并接收存储器根据写请求和读请求反馈的数据;

步骤s13,存储控制器比较写入的数据与读出的数据是否相等,若相等,则存储器的访存通路能正常访问,执行步骤s02,否则,不能正常访问,执行步骤s03。

例如,存储控制器发送维护访问请求或cpu访问请求给ddr4存储器,存储控制器先发送写请求给ddr4存储器,然后发送读请求给ddr4存储器。ddr4存储器接收到读写命令后,等待给定时间后,再向存储控制器的数据通路返回数据。当存储控制器比较写入的数据与读出数据相等,则ddr4存储器的访存通路能正常访问,否则不能。

具体地,步骤s02包括:存储控制器在测试模式下向测试存储器依次发送写请求、读请求,并接收测试存储器根据写请求和读请求反馈的数据。

在进行上述读写数据模式测试时,需先将存储控制器配置在测试模式下;并且,由测试存储器来模拟存储器的读、写延迟行为,存储控制器不向存储器发送读写请求,而向测试存储器发送读写请求,继而进行读写数据模式测试。例如,存储控制器先发送写请求给ddr4测试存储器,如sram存储器,然后发送读请求给ddr4测试存储器。ddr4测试存储器,接收到读写命令后,等待给定时间后,再向存储控制器的数据通路返回数据。需要注意的是,测试存储器的空间是非常小的,在测试的时候,需要让请求的地址满足测试存储器的地址范围。

具体地,步骤s03包括:io寄存器触发微操作控制器工作,微操作控制器依次发送读功能命令、写功能命令给存储器,若微操作控制器能成功访问存储器,则访存通路的问题存在于存储控制器上游,否则,访存通路的问题存在于存储控制器下游。

例如,利用存储控制器的微操作控制器,直接发送ddr4命令,要实现读功能,可发送一组激活-读取-预充电(act-rd-pre)命令,要实现写功能,发送一组激活-写入-预充电(act-wr-pre)命令。微操作控制器接收到反馈数据,则认为能成功访问ddr4存储器,并说明问题在存储控制器上游的地方。微操作控制器未接收到反馈数据,则认为不能成功访问ddr4存储器,并说明存储控制器下游位置有问题。

步骤s03还包括:当微操作控制器不能成功访问存储器,则对存储控制器下游发送不同数据模式,确定访存通路存在的问题。

例如,发送数据给存储器,第一拍数据全为1,第二拍数据全为2,第三拍数据全为3,第四拍数据全为4。反馈的数据为:第一拍数据全为1,第二拍数据全为1,第三拍数据全为2,第四排数据全为3。则可确定访存通路存在时序问题。

例如,发送数据给存储器,第一拍数据全为1,第二拍数据全为2,第三拍数据全为3,第四拍数据全为4。反馈的数据中如果都是某个固定位置出错,则确定访存通路存在颗粒问题。

步骤s03还包括:对存储控制器上游进行访存通路的问题进行检测,存储控制器在测试模式下向测试存储器发送读写请求,测试存储器收到读写命令后,反馈数据给存储控制器,进行读写数据模式测试。该步骤可与上述下游检测过程并行实施,也可以在检测下游问题后,对上游问题进行检测。

例如,存储控制器先配置为测试模式,向测试存储器,如sram存储器,依次发送写请求和读请求。测试存储器收到读写命令后,等待给定时间后,再向存储控制器的数据通路返回数据。当比较写入的数据与读出的数据相等时,则认为上游不存在问题;当比较写入的数据与读出的数据不相等时,存储控制器发送不同数据模式给测试存储器,确定访存通路存在的问题。

例如,发送数据给测试存储器,如sram存储器,第一拍数据全为1,第二拍数据全为2,第三拍数据全为3,第四拍数据全为4。反馈的数据为:第一拍数据全为1,第二拍数据全为1,第三拍数据全为2,第四排数据全为3。则可确定访存通路存在时序问题。

例如,发送数据给测试存储器,如sram存储器,第一拍数据全为1,第二拍数据全为2,第三拍数据全为3,第四拍数据全为4。反馈的数据中如果都是某个固定位置出错,则确定访存通路存在颗粒问题。

本领域的技术人员应理解,上述描述及附图中所示的本发明的实施例只作为举例而并不限制本发明。本发明的目的已经完整有效地实现。本发明的功能及结构原理已在实施例中展示和说明,在没有背离所述原理下,本发明的实施方式可以有任何变形或修改。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1