芯片激励方法、装置、系统、计算机设备和存储介质与流程

文档序号:15183282发布日期:2018-08-17 07:20阅读:279来源:国知局

本发明涉及集成电路测试技术领域,特别是涉及芯片激励方法、装置、系统、计算机设备和存储介质。



背景技术:

随着集成电路产业的发展,芯片开始走入千家万户。设计和生产出来的芯片在投入使用之前都需要经过测试以过滤不良品。芯片测试的一个重要步骤是对芯片进行激励。传统的芯片激励过程主要包括:将激励数据存储在某个外接存储设备中,测试机读取激励信息后,将激励信息发送给芯片进行芯片激励。在实现本发明过程中,发明人发现现有技术中至少存在如下问题:受接口数据传输速度的影响,存储设备的传输数据速度可能会很慢,甚至可能赶不上激励信息的分析速度,进而引发很多问题。因此,有必要找到一种能快速稳定地对芯片激励信息进行解析进而快速激励芯片的方法。



技术实现要素:

基于此,本发明提供了芯片激励方法、装置、系统、计算机设备和存储介质,能快速稳定地对芯片激励信息进行解析进而快速激励芯片,实现对芯片的质量检测。

本发明实施例的内容如下:

一种芯片激励方法,包括以下步骤:将经过压缩的激励数据分解为多份,得到多份压缩激励子数据;对所述多份压缩激励子数据进行分组,通过多个解压单元对各组压缩激励子数据分别进行解压,得到多份激励子数据;对所述多份激励子数据进行整合,得到所述激励数据;将所述激励数据输入到芯片中进行激励。

在其中一个实施例中,所述将经过压缩的激励数据分解为多份,得到多份压缩激励子数据的步骤之前,还包括:将激励数据分解为多个数据块,并对各个数据块添加对应的标志信息;分别对所述多个数据块进行压缩,得到多份压缩激励子数据;根据所述多份压缩激励子数据得到所述经过压缩的激励数据;所述对所述多份激励子数据进行整合,得到所述激励数据的步骤,包括:根据所述多份激励子数据携带的标志信息对所述多份激励子数据进行整合,得到所述激励数据。

在其中一个实施例中,所述压缩激励子数据中包含有重复数据的指示信息以及所述重复数据对应的数据长度和偏移量;所述通过多个解压单元对各组压缩激励子数据分别进行解压,得到多份激励子数据的步骤,包括:通过解压单元构建解压滑动窗口;所述解压滑动窗口在所述压缩激励子数据中滑动;根据所述指示信息判断当前解压滑动窗口选择的压缩激励子数据是否为重复数据;若是,根据所述数据长度和偏移量从已解压的数据中复制相应的数据,得到与所选择的压缩激励子数据对应的第一解压数据;若否,对当前解压滑动窗口选择的压缩激励子数据进行解压,得到与所选择的压缩激励子数据对应的第二解压数据;根据所述第一解压数据和/或第二解压数据得到所述激励子数据。

在其中一个实施例中,所述标志信息包含有各个数据块对应的排序信息;所述通过多个解压单元对各组压缩激励子数据分别进行解压的步骤,包括:各解压单元根据组内压缩激励子数据的所述排序信息,依次对组内压缩激励子数据进行解压;对所述多份激励子数据进行整合的步骤之前,还包括:根据多份激励子数据携带的标志信息,确定多份压缩激励子数据的长度;判断获得的多份激励子数据的长度与多份压缩激励子数据的长度是否一致;若一致,则执行对所述多份激励子数据进行整合的步骤。

在其中一个实施例中,所述将经过压缩的激励数据分解为多份,得到多份压缩激励子数据的步骤之前,还包括:将经过压缩的激励数据保存于sd卡中;从所述sd卡中读取所述经过压缩的激励数据并存入环形缓冲区,从所述环形缓冲区中获取所述经过压缩的激励数据。

在其中一个实施例中,所述解压单元使用的存储器为双口ram,所述多个解压单元并行。

在其中一个实施例中,所述通过多个解压单元对各组压缩激励子数据分别进行解压,得到多份激励子数据的步骤之后,还包括:将解压出来的激励子数据存入与解压单元对应的内存中;所述对所述多份激励子数据进行整合的步骤,包括:分别从对应的内存中获取激励子数据,根据所述标志信息对获取到的多份激励子数据进行整合。

相应的,本发明实施例提供一种芯片激励装置,包括:分解模块,用于将经过压缩的激励数据分解为多份,得到多份压缩激励子数据;解压模块,用于对所述多份压缩激励子数据进行分组,通过多个解压单元对各组压缩激励子数据分别进行解压,得到多份激励子数据;以及,激励模块,用于对所述多份激励子数据进行整合,得到所述激励数据;将所述激励数据输入到芯片中进行激励。

本发明实施例还提供一种芯片激励系统,包括:数据分配单元、向量解析单元以及多个解压单元;所述数据分配单元,用于将经过压缩的激励数据分解为多份,得到多份压缩激励子数据;对所述多份压缩激励子数据进行分组;所述多个解压单元,分别用于对各组压缩激励子数据分别进行解压,得到多份激励子数据;所述向量解析单元,用于对所述多份激励子数据进行整合,得到所述激励数据;将所述激励数据输入到芯片中进行激励。

上述抗干扰传输方法、装置及系统,对激励数据进行压缩,将经过压缩的激励数据分解为多份;将分解得到的多份压缩激励子数据进行分组,通过多个解压单元对各组压缩激励子数据分别进行解压,得到多份激励子数据;对所述多份激励子数据进行整合,得到所述激励数据;将所述激励数据输入到芯片中进行激励。通过设置多个解压单元来对经过压缩的激励数据分别进行解压,极大地提高了对经过压缩的激励数据的解压速度,也进一步提高了对芯片进行激励的速度。

一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:将经过压缩的激励数据分解为多份,得到多份压缩激励子数据;对所述多份压缩激励子数据进行分组,通过多个解压单元对各组压缩激励子数据分别进行解压,得到多份激励子数据;对所述多份激励子数据进行整合,得到所述激励数据;将所述激励数据输入到芯片中进行激励。

上述计算机设备,通过设置多个解压单元来对经过压缩的激励数据分别进行解压,极大地提高了对经过压缩的激励数据的解压速度,也进一步提高了对芯片进行激励的速度。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:将经过压缩的激励数据分解为多份,得到多份压缩激励子数据;对所述多份压缩激励子数据进行分组,通过多个解压单元对各组压缩激励子数据分别进行解压,得到多份激励子数据;对所述多份激励子数据进行整合,得到所述激励数据;将所述激励数据输入到芯片中进行激励。

上述计算机可读存储介质,通过设置多个解压单元来对经过压缩的激励数据分别进行解压,极大地提高了对经过压缩的激励数据的解压速度,也进一步提高了对芯片进行激励的速度。

附图说明

图1为一个实施例中芯片激励方法的应用环境图;

图2为一个实施例中芯片激励方法的流程示意图;

图3为另一个实施例中芯片激励方法的流程示意图;

图4为一实施例中芯片激励装置的结构框图;

图5为一实施例中芯片激励系统的结构框图;

图6为一个实施例中芯片激励系统的具体应用实例图;

图7为一个实施例中计算机设备的内部结构。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

随着集成电路产业的发展,芯片开始走入千家万户。设计和生产的芯片在投入使用之前都需要经过测试来过滤不良品。主流的集成电路测试遵照以下流程:

1、将测试向量存储在某个设备中,测试机读取测试向量后将测试向量中包含的激励数据以及预期的芯片响应信息解析出来,并且按照测试要求的时序将激励信号发送给待测芯片。

2、待测芯片根据激励数据产生相应的响应,然后测试机采集芯片的响应信息。

3、测试机将测试向量中预期的芯片响应信息与实际采集到的待测芯片的响应对比;如果两者一致,判断该待测芯片为良品;如果不一致,则判断该待测芯片为不良品。

上述集成电路测试的过程中存在以下几个问题:

1、若将测试向量存储在ram/rom中,再从ram/rom中读取测试向量,则成本高,且测试向量大小本身是无法预估的,对于占用空间太大的向量,测试机可能无法存储。

2、若外接usb、sd等存储设备存储测试向量,再读入解析模块,受到接口数据传输速度的影响,当测试向量的数据量较大时,存储设备传输数据的速度可能会赶不上测试机解析测试向量的速度。在这种情况下,测试机会暂停解析等待数据读取,造成测试机无法给待测芯片提供均匀的时钟,从而引发很多问题。例如,对于一些异步时钟模块,如果在测试过程中需要以测试向量的时钟作为参考,那么不均匀的时钟会造成误测。

因此,本发明实施例提供一种芯片激励方法,以期对芯片测试过程进行简化,提高芯片测试过程的效率。

本发明实施例提供的芯片激励方法,可以应用于如图1所示的应用环境中。其中,存储设备110通过数据线与测试机120进行交互。存储设备110也可以设置在测试机120内。其中,存储设备110包括但不限于sd卡、随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom);此外,存储设备110也可以是各种可以用于存储数据的个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备等。测试机120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。测试机120从存储设备110中读取激励数据,对激励数据进行相应的处理以后,输入到芯片中对芯片进行激励。

在一实施例中,如图2所示,提供了一种芯片激励方法,以该方法以应用于图1中的测试机端为例进行说明(本实施例中该测试机实现的是对芯片进行激励的过程),包括以下步骤:

s210、将经过压缩的激励数据分解为多份,得到多份压缩激励子数据。

在本步骤中,测试机获取经过压缩的激励数据,将这些激励数据分解为多份,得到压缩激励子数据。

其中,激励数据是用于对芯片进行激励的数据,将该激励数据输入到芯片中,芯片对该激励数据进行相应以后即可得到相应的响应数据。

s220、对所述多份压缩激励子数据进行分组,通过多个解压单元对各组压缩激励子数据分别进行解压,得到多份激励子数据。

可选地,压缩激励子数据与激励子数据可以一一对应,也可以不是一一对应。

具体地,压缩激励子数据与激励子数据一一对应,即对某一压缩激励子数据进行解压得到对应的激励子数据。

在本步骤中,测试机通过解压单元对分解得到的多份压缩激励子数据进行并行解压,得到对应的多份激励子数据。

s230、对所述多份激励子数据进行整合,得到所述激励数据;将所述激励数据输入到芯片中进行激励。

在本步骤中,测试机根据预设的各个激励子数据对应的顺序对多份激励子数据进行排序,整合成一个完整的可以用于激励芯片的激励数据,并将得到的激励数据输入到芯片中进行激励。

可选地,芯片可以为各种类型的芯片,本发明实施例对芯片的类型不做限制。

可选地,本实施例的芯片激励方法可以在fpga(现场可编程门阵列)上实现,也可以在其他集成电路上实现。

具体地,本实施例的芯片激励方法在fpga(现场可编程门阵列)上实现。fpga是一种半定制的电路,可以将硬件描述语言所完成的电路设计,经过简单的布线布局快速地烧录到fpga中实现对应的功能。这样的方式不需要投片生产就可以得到合用的芯片,且fpga可以反复使用,多次修改。由于本发明实施例的测试机主要用于内部调试,因此相对于投片生产,采用fpga是比较经济、高效的方式。

本实施例通过设置多个解压单元来对经过压缩的激励数据分别进行解压,极大地提高了对经过压缩的激励数据的解压速度,也进一步提高了对芯片进行激励的速度。

在一个实施例中,所述将经过压缩的激励数据分解为多份,得到多份压缩激励子数据的步骤之前,还包括:将激励数据分解为多个数据块,并对各个数据块添加对应的标志信息;分别对所述多个数据块进行压缩,得到多份压缩激励子数据;根据所述多份压缩激励子数据得到所述经过压缩的激励数据;所述对所述多份激励子数据进行整合,得到所述激励数据的步骤,包括:根据所述多份激励子数据携带的标志信息对所述多份激励子数据进行整合,得到所述激励数据。

可选地,在本发明实施例中所述标志信息为用于标识各个数据块的信息。压缩激励子数据、激励子数据可以与所述数据块对应一致,因此,这些标志信息还可以用于标识对应的压缩激励子数据和激励子数据。

可选地,各个压缩激励子数据的长度可以一样(除最后一个标志对应的压缩激励子数据以外),也可以不一样。

可选地,激励子数据携带的标志信息可以指解压单元对各组压缩激励子数据进行解压的顺序。基于此,所述根据所述多份激励子数据携带的标志信息对所述多份激励子数据进行整合,得到所述激励数据的步骤,可以是:根据各组压缩激励子数据被解压的顺序对所述多份激励子数据进行整合,得到所述激励数据。

可选地,对数据解压、整合以及芯片激励的过程可以并行进行,而并非要等到一个步骤结束再进行下一个步骤。

由于激励数据是周期性的,且记录了芯片io的“0”“1”“h”“l”“x”这五种状态,一个激励数据可以看作是这五种状态的组合,因此重复的数据较多。这使得对激励数据进行压缩是可行且有意义的。本实施例对lz77算法进行了改良,并将其引入测试机中。在测试机读取激励数据之前,先对激励数据进行分段压缩,这样的方式从源头上很大程度地减小了解压过程的数据量,削弱了存储设备速度受限的影响。

本实施例对激励数据进行压缩之前,先将其切割成若干个数据块,并在每个数据块之前加上标志位,以适应并行解压的需求。对这些数据块分别进行压缩并整合在一起,得到经过压缩的激励数据。在通过lz77算法对每个数据块进行压缩时,需要表示字符偏移量的偏移量数据并需要将该偏移量数据存储在压缩数据中,通过将激励数据分段并分别进行压缩,可以大幅度地减少用于存储偏移量数据的存储空间。同时,也可以提高对数据进行解压的速度。

在一个实施例中,所述压缩激励子数据中包含有重复数据的指示信息以及所述重复数据对应的数据长度和偏移量;所述通过多个解压单元对各组压缩激励子数据分别进行解压,得到多份激励子数据的步骤,包括:通过解压单元构建解压滑动窗口;所述解压滑动窗口在所述压缩激励子数据中滑动;根据所述指示信息判断当前解压滑动窗口选择的压缩激励子数据是否为重复数据;若是,根据所述数据长度和偏移量从已解压的数据中复制相应的数据,得到与所选择的压缩激励子数据对应的第一解压数据;若否,对当前解压滑动窗口选择的压缩激励子数据进行解压,得到与所选择的压缩激励子数据对应的第二解压数据;根据所述第一解压数据和/或第二解压数据得到所述激励子数据。

可选地,解压单元的个数可以少于或等于分解得到的压缩激励子数据的份数,即每一个解压单元需要对多份或一份压缩激励子数据进行解压;解压单元的个数也可以多于分解得到的压缩激励子数据的份数,在这种情况下,从这些解压单元中选择相应数量的解压单元对压缩激励子数据进行即可。

可选地,对经过压缩的激励数据进行分解的过程可以为对经过压缩的激励数据进行均分,可以按照某种算法进行分解,还可以是随机分解。具体地,根据经过压缩的激励数据中包含的标志信息对经过压缩的激励数据进行分解。

可选地,解压滑动窗口为lz77算法中用于实现压缩解压过程的动态窗口。

重复数据可以为字符、文本、数字等,本实施例对重复数据的数据类型不做限制,只要这些数据能实现对芯片的激励即可。

可选地,对激励数据进行压缩时应用到了数据的重复性,在对激励数据进行解压时,也可以根据这些数据的重复性来解压。对于重复的数据,lz77算法的解压过程实际上是由压缩数据提供一个数据偏移量以及数据长度实现的。根据lz77算法的三元符号组(off,len,c)中的信息判断解压滑动窗口选择的压缩激励子数据是否为重复数据。当判定解压滑动窗口选择的压缩激励子数据为重复数据时,根据所述数据偏移量向已解压的数据移动对应个数据,并根据该数据长度复制对应长度的数据,作为当前解压滑动窗口选择的压缩激励子数据对应的解压数据。当判定解压滑动窗口选择的压缩激励子数据不是重复数据时,对选择的压缩激励子数据进行解压。

本实施例限定了对经过压缩的激励数据的解压过程。通过设置多个解压单元分解对压缩激励子数据进行解压以及整合,对于与已经解压的数据存在重复数据的压缩激励子数据则直接复制对应的已经解压的数据,对于没有重复数据的压缩激励子数据则对其进行解压,将解压以后的数据进行整合,即得到激励子数据。极大地提高了解压效率,采用了多个解压单元并行工作的方式,这更是成倍地提高了解压速度。

在一个实施例中,所述标志信息包含有各个数据块对应的排序信息;所述通过多个解压单元对各组压缩激励子数据分别进行解压的步骤,包括:各解压单元根据组内压缩激励子数据的所述排序信息,依次对组内压缩激励子数据进行解压;对所述多份激励子数据进行整合的步骤之前,还包括:根据多份激励子数据携带的标志信息,确定多份压缩激励子数据的长度;判断获得的多份激励子数据的长度与多份压缩激励子数据的长度是否一致;若一致,则执行对所述多份激励子数据进行整合的步骤。

可选地,各解压单元还可以根据所述排序信息确定其解压的压缩激励子数据是否为排序在最后的压缩激励子数据。

本实施例,解压单元根据标志信息中的排序信息按顺序对压缩激励子数据进行解压,并在对解压得到的激励子数据进行整合之前,对该激励子数据进行校验。通过与压缩激励子数据的长度进行比对,能有效地判断解压过程是否对所有的压缩激励子数据都进行了完整的解压,若是,对得到的激励子数据进行整合,若否,则重新对数据进行解压或者检查测试机是否存在问题。此外,本实施例的测试机还可以实现自动化识别激励数据的长度的功能。

在一个实施例中,所述将经过压缩的激励数据分解为多份,得到多份压缩激励子数据的步骤之前,还包括:将经过压缩的激励数据保存于sd卡中;从所述sd卡中读取所述经过压缩的激励数据并存入环形缓冲区,从所述环形缓冲区中获取所述经过压缩的激励数据。

可选地,sd卡可以是属于测试机的部件,可以不是测试机的部件。具体地,sd卡不属于测试机的部件(如图1所示),在需要对芯片进行激励时,将sd卡与测试机连接,测试机从sd卡中读取相应的经过压缩的激励数据,并将这些经过压缩的激励数据存储在环形缓冲区中进行存储。

可选地,所述环形缓冲区还可以替换为其他可以存储数据的存储区。

本实施例,sd卡中存储的是经过压缩的激励数据,这样的方式极大地减少了sd卡的数据传输量,可以有效地减少从sd卡向测试机传输数据所需的时间。同时,本实施例将经过压缩的数据存储于sd卡中,可以大大节省内存的容量,节约成本。

在一个实施例中,所述解压单元使用的存储器为双口ram,所述多个解压单元并行。

为了适应lz77算法解压过程中的特性,本实施例给解压单元配备16byte宽的双口ram,因此解压单元可一次读取16byte的数据,且这些解压单元可以并行地对数据进行解压,这在很大程度上加快了解压的速度,提高了解压的效率。

在一个实施例中,所述通过多个解压单元对各组压缩激励子数据分别进行解压,得到多份激励子数据的步骤之后,还包括:将解压出来的激励子数据存入与解压单元对应的内存中;所述对所述多份激励子数据进行整合的步骤,包括:分别从对应的内存中获取激励子数据,根据所述标志信息对获取到的多份激励子数据进行整合。

可选地,并行解压出来的数据并不直接送入芯片中进行记激励,而是将这些数据存储于与解压单元相连接的后置内存中,这些后置内存相当于蓄水池,起到了很好的缓冲作用。在需要对芯片进行激励时,从后置内存中获取解压以后的数据并输入芯片中进行激励即可。

可选地,当从sd卡中读取激励数据时,如果激励数据比较大,且要求的时钟比较快时,由于受到读卡速度的限制,激励数据的读取速度会赶不上解析的速度,则测试时钟不均匀导致给出激励数据的时刻可能不准确。本实施例预先在后置内存中存储一部分数据,当某些时刻数据的读取速度赶不上解析速度时,可以起到缓冲的作用,这样可以缓解激励芯片的时间不准的问题,也是可以在很大程度上解决解析速度与读卡速度的矛盾,保证对芯片的激励速度的稳定性。

在一个实施例中,图3为芯片激励方法的具体流程示意图,如图3所示,芯片激励方法包括以下步骤:

s310、将激励数据分解为多个数据块,并对各个数据块添加对应的标志信息;分别对所述多个数据块进行压缩,得到多份压缩激励子数据;根据所述多份压缩激励子数据得到所述经过压缩的激励数据。

s320、将经过压缩的激励数据保存于sd卡中;从所述sd卡中读取所述经过压缩的激励数据并存入环形缓冲区,从所述环形缓冲区中获取所述经过压缩的激励数据。

s330、将经过压缩的激励数据分解为多份,得到多份压缩激励子数据。

s340、对所述多份压缩激励子数据进行分组,通过多个解压单元对各组压缩激励子数据分别进行解压,得到多份激励子数据。

s350、将解压出来的激励子数据存入与解压单元对应的内存中。

s360、对所述多份激励子数据进行整合,得到所述激励数据;将所述激励数据输入到芯片中进行激励。

本实施例通过设置多个解压单元来对经过压缩的激励数据进行并行解压,极大地提高了对经过压缩的激励数据进行解压的解压速度,也进一步提高了对芯片进行激励的速度。同时,将解压以后的数据存储于内存中,也能有效地解决sd卡的读取速度与测试机的解析速度之间的矛盾。

需要说明的是,对于前述的各方法实施例,为了简便描述,将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。

基于与上述实施例中的芯片激励方法相同的思想,本发明还提供芯片激励装置,该装置可用于执行上述芯片激励方法。为了便于说明,芯片激励装置实施例的结构示意图中,仅仅示出了与本发明实施例相关的部分,本领域技术人员可以理解,图示结构并不构成对装置的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图4所述,芯片激励装置包括分解模块410、解压模块420和激励模块430。

分解模块410,用于将经过压缩的激励数据分解为多份,得到多份压缩激励子数据。

解压模块420,用于对所述多份压缩激励子数据进行分组,通过多个解压单元对各组压缩激励子数据分别进行解压,得到多份激励子数据。

以及,激励模块430,用于对所述多份激励子数据进行整合,得到所述激励数据;将所述激励数据输入到芯片中进行激励。

在一个实施例中,所述芯片激励装置还包括激励数据分解模块,用于将激励数据分解为多个数据块,并对各个数据块添加对应的标志信息;数据块压缩模块,用于分别对所述多个数据块进行压缩,得到多份压缩激励子数据;以及,整合模块,用于根据所述多份压缩激励子数据得到所述经过压缩的激励数据;所述激励模块,还用于根据所述多份激励子数据携带的标志信息对所述多份激励子数据进行整合,得到所述激励数据。

在一个实施例中,所述压缩激励子数据中包含有重复数据的指示信息以及所述重复数据对应的数据长度和偏移量;所述解压模块420,包括:滑动窗口构建子模块,用于通过解压单元构建解压滑动窗口;所述解压滑动窗口在所述压缩激励子数据中滑动;判断子模块,用于根据所述指示信息判断当前解压滑动窗口选择的压缩激励子数据是否为重复数据;解压子模块,用于若是,根据所述数据长度和偏移量从已解压的数据中复制相应的数据,得到与所选择的压缩激励子数据对应的第一解压数据;若否,对当前解压滑动窗口选择的压缩激励子数据进行解压,得到与所选择的压缩激励子数据对应的第二解压数据;以及,数据获取子模块,用于根据所述第一解压数据和/或第二解压数据得到所述激励子数据。

在一个实施例中,所述标志信息包含有各个数据块对应的排序信息;所述解压模块420,还用于各解压单元根据组内压缩激励子数据的所述排序信息,依次对组内压缩激励子数据进行解压;所述芯片激励装置还包括长度判断模块,用于根据多份激励子数据携带的标志信息,确定多份压缩激励子数据的长度;判断获得的多份激励子数据的长度与多份压缩激励子数据的长度是否一致;若一致,则执行对所述多份激励子数据进行整合的步骤。

在一个实施例中,所述芯片激励装置还包括:第一存储模块,用于将经过压缩的激励数据保存于sd卡中;以及,读取模块,用于从所述sd卡中读取所述经过压缩的激励数据并存入环形缓冲区,从所述环形缓冲区中获取所述经过压缩的激励数据。

在一个实施例中,所述解压单元使用的存储器为双口ram,所述多个解压单元并行。

在一个实施例中,所述芯片激励装置还包括:第二存储模块,用于将解压出来的激励子数据存入与解压单元对应的内存中;所述激励模块,还用于分别从对应的内存中获取激励子数据,根据所述标志信息对获取到的多份激励子数据进行整合。

需要说明的是,本发明的芯片激励装置与本发明的芯片激励方法一一对应,在上述芯片激励方法的实施例阐述的技术特征及其有益效果均适用于芯片激励装置的实施例中,具体内容可参见本发明方法实施例中的叙述,此处不再赘述,特此声明。

此外,上述示例的芯片激励装置的实施方式中,各程序模块的逻辑划分仅是举例说明,实际应用中可以根据需要,例如出于相应硬件的配置要求或者软件的实现的便利考虑,将上述功能分配由不同的程序模块完成,即将所述芯片激励装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分功能。

如图5所述,芯片激励系统包括数据分配单元510、多个解压单元520和向量解析单元530,以下进行详细描述:

所述数据分配单元510,用于将经过压缩的激励数据分解为多份,得到多份压缩激励子数据;对所述多份压缩激励子数据进行分组;所述多个解压单元520,分别用于对各组压缩激励子数据分别进行解压,得到多份激励子数据;所述向量解析单元530,用于对所述多份激励子数据进行整合,得到所述激励数据;将所述激励数据输入到芯片中进行激励。

在一个实施例中,所述向量解析单元530,还用于获取所述芯片根据所述激励数据得到的响应数据,根据所述响应数据对所述芯片的质量进行判断。

本实施例的向量解析单元在对芯片进行激励以后,还获取芯片的响应数据,并将得到的响应数据与预期的响应数据进行比对。若两个响应数据一致,则判定芯片质量良好;若不一致,则芯片质量可能存在问题。

在一个实施例中,所述解压单元520使用的存储器为双口ram,所述多个解压单元并行。

本实施例为解压单元520配备了16byte宽的双口ram,解压模块在一次可以读取最多16byte的数据,这在很大程度上加快了解压的速度,提高了解压的效率。

在一个实施例中,所述芯片激励系统还包括前置内存和后置内存;所述前置内存连接于所述数据分配单元和所述解压单元的一端,所述后置内存连接于所述解压单元的另一端和所述向量解析单元。

可选地,所述内存(环形缓存区、前置内存、后置内存等)的数量可以为多个,也可以多于或少于解压单元的个数,可以根据自有的资源以及对测试速度及稳定性的需求合理地配置数据缓冲的部分,是系统测试速度的可扩展。

本实施例设置前置内存和后置内存,可以有效地存储解压前和解压后的数据,只要能提供足够大的存储设备,向量的大小是不受限制的,实现系统的自适应。

为了更好地理解上述方法、装置及系统,以下详细阐述一个本发明芯片激励系统的应用实例。图6为芯片激励系统的具体应用实例图,如图6所示,本发明实施例的芯片激励系统包括:环形缓冲区、数据分配单元、数据选择单元、向量解析单元、多个解压单元(假定有3个并行的解压单元1/2/3)以及各个解压单元对应的前置内存和后置内存,具体说明如下:

1、将测试向量转化为文本之后进行压缩;该测试向量中包含有激励数据以及预期的芯片响应信息。

2、将压缩后的测试向量(包括压缩激励数据和压缩后的芯片响应信息)存进sd卡。

3、通过软件配置好测试机,预先设定对测试时钟的快慢、测试脚的时序等信息。

4、测试机将sd卡中的压缩激励数据读取出来,存入环形缓冲区中。

5、将环形缓冲区的压缩激励数据输入数据分配单元,数据分配单元根据前述标志信息对压缩激励数据进行分解,得到n份压缩激励子数据,并确定各个压缩激励子数据对应的标志信息(即排序信息)。

6、数据分配单元判断各个解压单元是否空闲。若发现解压单元1空闲,则将排序在前的第一份压缩激励子数据分配到解压单元1的前置内存1中;若未发现空闲的解压单元,则重新判断各个解压单元是否空闲,直到空闲解压单元出现。数据分配单元将随后的压缩激励子数据分配给其他空闲的解压单元,以此类推。

7、当前置内存1写满以后,前置内存1将对应的压缩激励子数据发送至解压单元1,解压开始,解压得到的激励子数据被存入后置内存1中。

8、数据选择单元记录解压单元被选中的顺序,并等待选中的解压单元完成解压。

9、当数据选择单元选中的解压单元中的数据解压完成后,由数据选择单元按照前述顺序从后置内存中将解压后的激励子数据复制到向量解析单元,进行解析。当前的激励子数据复制完后,将对应的解压单元标志为空闲,被标记为空闲的解压单元可以重新被数据分配单元选择,即可以再次被sd卡写入。

10、测试机的向量解析单元对解压出来的激励数据进行解析,按照测试向量要求的时序给芯片激励数据、接收芯片的响应信号。

11、测试机获取芯片响应信息,并将接收的响应信号和芯片响应信息比对,判断芯片是否为良品。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种芯片激励方法。

本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:将经过压缩的激励数据分解为多份,得到多份压缩激励子数据;对所述多份压缩激励子数据进行分组,通过多个解压单元对各组压缩激励子数据分别进行解压,得到多份激励子数据;对所述多份激励子数据进行整合,得到所述激励数据;将所述激励数据输入到芯片中进行激励。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:将激励数据分解为多个数据块,并对各个数据块添加对应的标志信息;分别对所述多个数据块进行压缩,得到多份压缩激励子数据;根据所述多份压缩激励子数据得到所述经过压缩的激励数据。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据所述多份激励子数据携带的标志信息对所述多份激励子数据进行整合,得到所述激励数据。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:通过解压单元构建解压滑动窗口;所述解压滑动窗口在所述压缩激励子数据中滑动;根据所述指示信息判断当前解压滑动窗口选择的压缩激励子数据是否为重复数据;若是,根据所述数据长度和偏移量从已解压的数据中复制相应的数据,得到与所选择的压缩激励子数据对应的第一解压数据;若否,对当前解压滑动窗口选择的压缩激励子数据进行解压,得到与所选择的压缩激励子数据对应的第二解压数据;根据所述第一解压数据和/或第二解压数据得到所述激励子数据。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:各解压单元根据组内压缩激励子数据的所述排序信息,依次对组内压缩激励子数据进行解压。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据多份激励子数据携带的标志信息,确定多份压缩激励子数据的长度;判断获得的多份激励子数据的长度与多份压缩激励子数据的长度是否一致;若一致,则执行对所述多份激励子数据进行整合的步骤。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:将经过压缩的激励数据保存于sd卡中;从所述sd卡中读取所述经过压缩的激励数据并存入环形缓冲区,从所述环形缓冲区中获取所述经过压缩的激励数据。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:将解压出来的激励子数据存入与解压单元对应的内存中。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:分别从对应的内存中获取激励子数据,根据所述标志信息对获取到的多份激励子数据进行整合。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:将经过压缩的激励数据分解为多份,得到多份压缩激励子数据;对所述多份压缩激励子数据进行分组,通过多个解压单元对各组压缩激励子数据分别进行解压,得到多份激励子数据;对所述多份激励子数据进行整合,得到所述激励数据;将所述激励数据输入到芯片中进行激励。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:将激励数据分解为多个数据块,并对各个数据块添加对应的标志信息;分别对所述多个数据块进行压缩,得到多份压缩激励子数据;根据所述多份压缩激励子数据得到所述经过压缩的激励数据。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据所述多份激励子数据携带的标志信息对所述多份激励子数据进行整合,得到所述激励数据。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:通过解压单元构建解压滑动窗口;所述解压滑动窗口在所述压缩激励子数据中滑动;根据所述指示信息判断当前解压滑动窗口选择的压缩激励子数据是否为重复数据;若是,根据所述数据长度和偏移量从已解压的数据中复制相应的数据,得到与所选择的压缩激励子数据对应的第一解压数据;若否,对当前解压滑动窗口选择的压缩激励子数据进行解压,得到与所选择的压缩激励子数据对应的第二解压数据;根据所述第一解压数据和/或第二解压数据得到所述激励子数据。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:各解压单元根据组内压缩激励子数据的所述排序信息,依次对组内压缩激励子数据进行解压。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据多份激励子数据携带的标志信息,确定多份压缩激励子数据的长度;判断获得的多份激励子数据的长度与多份压缩激励子数据的长度是否一致;若一致,则执行对所述多份激励子数据进行整合的步骤。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:将经过压缩的激励数据保存于sd卡中;从所述sd卡中读取所述经过压缩的激励数据并存入环形缓冲区,从所述环形缓冲区中获取所述经过压缩的激励数据。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:将解压出来的激励子数据存入与解压单元对应的内存中。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:分别从对应的内存中获取激励子数据,根据所述标志信息对获取到的多份激励子数据进行整合。

本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,作为独立的产品销售或使用。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

本发明实施例的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或(模块)单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,不能理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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