芯片验证方法、装置、电子设备及存储介质与流程

    专利查询2022-08-15  112



    1.本公开涉及集成电路技术领域,尤其涉及一种芯片验证方法、装置、电子设备及存储介质。


    背景技术:

    2.soc(system-on-a-chip,片上系统)芯片是一种集成电路的芯片,可以有效地降低电子/信息系统产品的开发成本,缩短开发周期,提高产品的竞争力,是未来工业界将采用的最主要的产品开发方式。在soc芯片的设计过程中,性能指标是否满足设计需求是非常关键的设计任务,如何快速准确的建模仿真出芯片的性能特性是非常重要的设计挑战。
    3.相关技术,通常是在soc芯片的各子系统以及顶层系统集成完成之后,通过eda(electronic design automation,电子设计自动化)验证仿真soc芯片的性能,然而,由于soc芯片的系统复杂度很高,因此通过eda验证仿真大规模soc芯片的速度很慢,并且,这种验证方式需要等待soc芯片集成完成后才可以进行,影响了soc芯片的开发迭代速度。


    技术实现要素:

    4.本公开旨在至少在一定程度上解决相关技术中的技术问题之一。
    5.本公开提出一种芯片验证方法,以解决相关技术中的芯片验证速度慢,且影响芯片的开发迭代速度的问题。
    6.根据本公开的第一方面,提供了一种芯片验证方法,包括:在芯片中的多个待验证模块正常工作的情况下,获取各所述待验证模块的传输日志;其中,所述传输日志中,包括所述待验证模块中的至少一个第一主设备的传输命令信息;将各所述第一主设备替换为芯片验证环境中验证组件的各第二主设备;在所述芯片验证环境中,控制各所述第二主设备按照所述传输日志进行激励驱动,并获取各所述第二主设备与各所述待验证模块中对应从设备之间的传输行为信息;基于所述传输行为信息,确定所述待验证模块的性能指标。
    7.作为本公开实施例的第一种可能的情况,各所述第一主设备分别通过接口与检测器连接;所述获取各所述待验证模块的传输日志,包括:在芯片中的多个待验证模块正常工作的情况下,采用所述检测器监测各所述待验证模块中的至少一个第一主设备的传输信号;对各所述第一主设备的传输信号进行解析,以获取各所述第一主设备的传输命令信息;将所述传输命令信息写入日志文件,以得到所述传输日志。
    8.作为本公开实施例的第二种可能的情况,各所述第二主设备分别对应一个序列生成器;所述在所述芯片验证环境中,控制各所述第二主设备按照所述传输日志进行激励驱动,包括:在所述芯片验证环境中,采用各所述第二主设备对应的序列生成器,控制各所述第二主设备按照所述传输日志进行激励驱动。
    9.作为本公开实施例的第三种可能的情况,所述在所述芯片验证环境中,采用各所述第二主设备对应的序列生成器,控制各所述第二主设备按照所述传输日志进行激励驱动,包括:采用各所述序列生成器,对所述传输日志进行文本解析,以获取对应的所述第一
    主设备的每一笔传输的详细命令信息;将所述每一笔传输的详细命令信息下发至对应的所述第二主设备,以控制对应的所述第二主设备按照所述详细命令信息进行激励驱动。
    10.作为本公开实施例的第四种可能的情况,所述详细命令信息中包括各所述第一主设备的初始读写地址,各所述序列生成器具有偏移地址参数;所述将所述每一笔传输的详细命令信息下发至对应的所述第二主设备,以控制对应的所述第二主设备按照所述详细命令信息进行激励驱动之前,还包括:将各所述初始读写地址替换为预设的读写地址偏移量,并根据预设的所述读写地址偏移量,对各所述序列生成器的所述偏移地址参数进行赋值;所述将所述每一笔传输的详细命令信息下发至对应的所述第二主设备,以控制对应的所述第二主设备按照所述详细命令信息进行激励驱动,包括:采用各所述序列生成器,将赋值后的所述偏移地址参数的数值下发至对应的所述第二主设备,以控制对应的所述第二主设备的读写地址,其中,各所述第二主设备之间的读写地址不冲突,且各所述第二主设备的读地址与写地址之间不冲突。
    11.作为本公开实施例的第五种可能的情况,所述详细命令信息中包括各所述第一主设备的每一笔传输的传输时间点;所述将所述每一笔传输的详细命令信息下发至对应的所述第二主设备,以控制对应的所述第二主设备按照所述详细命令信息进行激励驱动之前,还包括:根据每一笔传输与相邻的上一笔传输的传输时间点,确定所述每一笔传输与相邻的上一笔传输的发送间隔;所述将所述每一笔传输的详细命令信息下发至对应的所述第二主设备,以控制对应的所述第二主设备按照所述详细命令信息进行激励驱动,包括:按照所述发送间隔,将所述每一笔传输的详细命令信息下发至对应的所述第二主设备,以控制对应的所述第二主设备按照所述详细命令信息进行激励驱动。
    12.根据本公开实施例的第二方面,提供了一种芯片验证装置,包括:获取模块,用于在芯片中的多个待验证模块正常工作的情况下,获取各所述待验证模块的传输日志;其中,所述传输日志中,包括所述待验证模块中的至少一个第一主设备的传输命令信息;替换模块,用于将各所述第一主设备替换为芯片验证环境中验证组件的各第二主设备;处理模块,用于在所述芯片验证环境中,控制各所述第二主设备按照所述传输日志进行激励驱动,并获取各所述第二主设备与各所述待验证模块中对应从设备之间的传输行为信息;确定模块,用于基于所述传输行为信息,确定所述待验证模块的性能指标。
    13.作为本公开实施例的第一种可能的情况,各所述第一主设备分别通过接口与检测器连接;所述获取模块,包括:监测单元,用于在芯片中的多个待验证模块正常工作的情况下,采用所述检测器监测各所述待验证模块中的至少一个第一主设备的传输信号;解析单元,用于对各所述第一主设备的传输信号进行解析,以获取各所述第一主设备的传输命令信息;写入单元,用于将所述传输命令信息写入日志文件,以得到所述传输日志。
    14.作为本公开实施例的第二种可能的情况,各所述第二主设备分别对应一个序列生成器;所述处理模块,包括:控制单元,用于在所述芯片验证环境中,采用各所述第二主设备对应的序列生成器,控制各所述第二主设备按照所述传输日志进行激励驱动。
    15.作为本公开实施例的第三种可能的情况,所述控制单元,具体用于:采用各所述序列生成器,对所述传输日志进行文本解析,以获取对应的所述第一主设备的每一笔传输的详细命令信息;将所述每一笔传输的详细命令信息下发至对应的所述第二主设备,以控制对应的所述第二主设备按照所述详细命令信息进行激励驱动。
    16.作为本公开实施例的第四种可能的情况,所述详细命令信息中包括各所述第一主设备的初始读写地址,各所述序列生成器具有偏移地址参数;所述控制单元,具体用于:将各所述初始读写地址替换为预设的读写地址偏移量,并根据预设的所述读写地址偏移量,对各所述序列生成器的所述偏移地址参数进行赋值;采用各所述序列生成器,将赋值后的所述偏移地址参数的数值下发至对应的所述第二主设备,以控制对应的所述第二主设备的读写地址,其中,各所述第二主设备之间的读写地址不冲突,且各所述第二主设备的读地址与写地址之间不冲突。
    17.作为本公开实施例的第五种可能的情况,所述详细命令信息中包括各所述第一主设备的每一笔传输的传输时间点;所述控制单元,具体用于:根据每一笔传输与相邻的上一笔传输的传输时间点,确定所述每一笔传输与相邻的上一笔传输的发送间隔;按照所述发送间隔,将所述每一笔传输的详细命令信息下发至对应的所述第二主设备,以控制对应的所述第二主设备按照所述详细命令信息进行激励驱动。
    18.根据本公开的第三方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开第一方面实施例提出的芯片验证方法。
    19.根据本公开的第四方面,提供了一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行本公开第一方面实施例提出的芯片验证方法。
    20.根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,当所述计算机程序由电子设备的处理器执行时,使得所述电子设备能够执行第一方面实施例提出的芯片验证方法。
    21.本公开附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本公开的实践了解到。
    附图说明
    22.本公开上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
    23.图1是根据一示例性实施例所示出的一种芯片验证方法的流程示意图;
    24.图2是根据另一示例性实施例所示出的一种芯片验证方法的流程示意图;
    25.图3是根据一示例性实施例所示出的一种传输日志的示例图;
    26.图4是根据一示例性实施例所示出的一种芯片验证装置的结构示意图;
    27.图5是根据一示例性实施例示出的一种芯片验证方法的电子设备的框图。
    具体实施方式
    28.下面详细描述本公开的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本公开,而不能理解为对本公开的限制。
    29.相关技术,通常是在soc芯片的各子系统以及顶层系统集成完成之后,通过eda验
    architecture,一种开放性的片上总线标准)协议的验证组件,第二主设备,即amba vip的master。
    42.步骤103,在芯片验证环境中,控制各第二主设备按照传输日志进行激励驱动,并获取各第二主设备与各待验证模块中对应从设备之间的传输行为信息。
    43.步骤104,基于传输行为信息,确定待验证模块的性能指标。
    44.本公开的实施例中,可以使用amba vip master来替换各第一主设备,以利用amba vip master在芯片验证环境中实现传输过程的激励驱动,并且,在利用amba vip master实现激励驱动时,可以通过回放机制,抓取传输日志中记录的各第一主设备的传输命令信息,并按照各第一主设备的传输命令信息进行激励驱动,以将各个子系统的传输行为复现到芯片验证环境中,从而模拟出芯片的整体工作过程,并且在微观上是非常真实的模拟各子系统的传输行为。进一步的,即可在芯片验证环境中,基于复现的各子系统的传输过程,获取各第二主设备与各待验证模块中对应从设备之间的传输行为信息,进而基于传输行为信息,确定待验证模块的性能指标。
    45.其中,传输行为信息,为进行芯片验证时所需的任意信息,比如可以包括各第二主设备的地址、id值、burst_len、burst_size、burst_type、传输时间点以及从设备的响应时间点等信息。
    46.由此,通过录制及回放各第一主设备在ip级(或称为模块级)的测试用例的传输日志,来实现在芯片验证环境中在芯片上完整的复现各第一主设备的传输行为,可以实现大规模芯片的快速简化建模,比真实芯片仿真速度快,且建模真实度高,通过录制回放的方式复现的场景与真实应用的拟合程度高,通过复现的场景进行芯片验证,在芯片设计的早期阶段即可准确的评估芯片全局的性能指标,不必等到芯片集成完成后才能进行芯片验证,提高了芯片的开发迭代速度。
    47.综上,本公开实施例提供的芯片验证方法,通过在芯片中的多个待验证模块正常工作的情况下,获取各待验证模块的传输日志,其中,传输日志中,包括待验证模块中的至少一个第一主设备的传输命令信息,再将各第一主设备替换为芯片验证环境中验证组件的各第二主设备,再在芯片验证环境中,控制各第二主设备按照传输日志进行激励驱动,并获取各第二主设备与各待验证模块中对应从设备之间的传输行为信息,进而基于传输行为信息,确定待验证模块的性能指标,提高了芯片验证速度,且在芯片设计的早期阶段即可准确的评估芯片的性能指标,不必等到芯片集成完成后才能进行芯片验证,提高了芯片的开发迭代速度。
    48.为了说明本公开实施例提供的芯片验证方法是如何获取各待验证模块的传输日志,以及如何在芯片验证环境中,控制各第二主设备按照传输日志进行激励驱动的,下面结合图2,对本公开实施例提供的芯片验证方法进行进一步说明。
    49.图2是根据另一示例性实施例所示出的一种芯片验证方法的流程示意图。如图2所示,芯片验证方法包括如下步骤:
    50.步骤201,在芯片中的多个待验证模块正常工作的情况下,采用检测器监测各待验证模块中的至少一个第一主设备的传输信号。
    51.其中,各第一主设备分别通过接口与检测器连接。
    52.在本公开的实施例中,检测器可以挂接在所需要进行录制的子系统的ip级(或称
    为模块级)验证环境中,挂接到对应需要录制传输命令信息的第一主设备的接口上。在芯片中的多个待验证模块正常工作的情况下,检测器的输入信号为与检测器连接的第一主设备的标准axi协议(advanced extensible interface,一种总线协议)的传输信号。
    53.步骤202,对各第一主设备的传输信号进行解析,以获取各第一主设备的传输命令信息。
    54.步骤203,将传输命令信息写入日志文件,以得到传输日志。
    55.其中,传输日志中,包括待验证模块中的至少一个第一主设备的传输命令信息。
    56.传输命令信息,可以包括一段时间内,各第一主设备的每一笔传输的详细命令信息。其中,一段时间,可以为任意的一段时间,且该段时间的时长可以根据需要任意设置,比如一段时间,可以为芯片正常工作情况下的任意100微秒或200微秒。每一笔传输,指第一主设备发起一个传输命令至从设备回复响应的过程,包括读传输与写传输。详细命令信息,可以包括地址、id值、burst_len、burst_size、burst_type、传输时间点等信息。
    57.在本公开的实施例中,检测器可以对连接的各第一主设备的传输信号进行解析,提取出各第一主设备的传输命令信息,然后将传输命令信息写入日志文件,以得到传输日志。其中,如图3所示,传输日志中的每一行可以对应一笔传输,每一行的信息,即为每一笔传输的详细命令信息。
    58.步骤204,将各第一主设备替换为芯片验证环境中验证组件的各第二主设备。
    59.其中,验证组件可以为amba vip,即amba协议的验证组件,第二主设备,即amba vip的master。
    60.步骤205,在芯片验证环境中,采用各第二主设备对应的序列生成器,控制各第二主设备按照传输日志进行激励驱动。
    61.在本公开的实施例中,可以为每个第二主设备实例化一个序列生成器,进而在芯片验证环境中,可以采用各第二主设备对应的序列生成器,控制各第二主设备按照传输日志进行激励驱动。
    62.其中,序列生成器的一个作用是对传输日志进行解析,另一个作用是将解析后得到的信息,控制发送至芯片验证环境中的第二主设备,以实现传输过程的激励驱动。即,本公开的实施例中,采用各第二主设备对应的序列生成器,控制各第二主设备按照传输日志进行激励驱动,具体可以包括:采用各序列生成器,对传输日志进行文本解析,以获取对应的第一主设备的每一笔传输的详细命令信息;将每一笔传输的详细命令信息下发至对应的第二主设备,以控制对应的第二主设备按照详细命令信息进行激励驱动。
    63.其中,详细命令信息,为从传输日志中提取出的,一段时间内各第一主设备的每一笔传输的详细命令信息,比如,地址、id值、burst_len、burst_size、burst_type、传输时间点等信息。
    64.具体的,对于传输日志中的每个第一主设备的传输命令信息,可以采用对应的序列生成器,对该第一主设备对应的每一行信息进行文本解析,以获取每一行对应的一笔axi传输的详细命令信息。进而,可以采用各序列生成器将解析出的对应第一主设备的每一笔传输的详细命令信息,控制发送至替换该第一主设备的第二主设备,以控制对应的第二主设备按照该第一主设备的每一笔传输的详细命令信息进行激励驱动。
    65.其中,可以定义一个axi传输的类send trans,通过利用解析出的每一笔传输的详
    细命令信息,对该send trans的参数进行配置,来实现控制第二主设备按照详细命令信息进行激励驱动。
    66.需要注意的是,传输日志包括的每一笔传输的详细命令信息中,可以包括各第一主设备的初始读写地址。由于在录制得到各待验证模块的传输日志时,是基于模块级的环境,在该环境中,模块与模块之间是互相独立的,因此,不存在各第一主设备的读写地址冲突的情况。而在芯片验证环境中,若直接利用传输日志中解析出的初始读写地址,在芯片上完整的复现各第一主设备的传输行为,可能出现各第二主设备的读地址与写地址冲突或者各第二主设备之间的读写地址冲突的情况。那么,为了避免各第二主设备按照传输日志进行激励驱动时,各第二主设备之间的读写地址冲突,或者各第二主设备的读地址与写地址之间冲突,需要对传输日志中解析出的读写地址进行修改。
    67.在本公开的实施例中,各序列生成器具有偏移地址参数,在将每一笔传输的详细命令信息下发至对应的第二主设备,以控制对应的第二主设备按照详细命令信息进行激励驱动之前,可以将各初始读写地址替换为预设的读写地址偏移量,并根据预设的读写地址偏移量,对各序列生成器的偏移地址参数进行赋值,进而在控制各第二主设备的读写地址时,可以采用各序列生成器,将赋值后的偏移地址参数的数值下发至对应的第二主设备,以控制对应的第二主设备的读写地址,其中,各第二主设备之间的读写地址不冲突,且各第二主设备的读地址与写地址之间不冲突。
    68.其中,预设的读写地址偏移量,可以预先根据使各第二主设备的读写地址不冲突,且各第二主设备的读地址与写地址之间不冲突为准则进行设置。
    69.另外,需要注意的是,传输日志中的每一笔传输的详细命令信息中,还包括各第一主设备的每一笔传输的传输时间点。由于在模块级环境中,各第一主设备不存在总线和ddr sdram(double data rate synchronous dynamic random access memory,双倍速率同步动态随机存储器)的资源争夺,在芯片验证环境中在芯片上复现各第一主设备的传输行为时,各第二主设备的传输特性与模块级环境中各第一主设备的传输特性是不同的,因此在芯片验证环境中在芯片上复现各第一主设备的传输行为时,各第二主设备的每一笔传输的传输时间点与第一主设备的每一笔传输的传输时间点可以不同,但是,为了保证在芯片上完整的复现各第一主设备的传输行为,各第二主设备的各笔传输之间的发送间隔,需要与各第一主设备的各笔传输之间的发送间隔相同。
    70.即,本公开实施例中,采用各序列生成器,将每一笔传输的详细命令信息下发至对应的第二主设备,以控制第二主设备按照详细命令信息进行激励驱动之前,还可以根据每一笔传输与相邻的上一笔传输的传输时间点,确定每一笔传输与相邻的上一笔传输的发送间隔,其中,每一笔传输与相邻的上一笔传输的发送间隔,为每一笔传输与相邻的上一笔传输的传输时间点的差值。进而可以采用序列生成器,按照确定的发送间隔,将每一笔传输的详细命令信息下发至对应的第二主设备,以控制第二主设备按照详细命令信息进行激励驱动。即,各序列生成器向对应的第二主设备下发每一笔传输的详细命令信息时,各笔传输之间的发送间隔与对应的第一主设备的各笔传输之间的发送间隔相同,从而对应的第二主设备向从设备发送传输的发送间隔,与对应的第一主设备向从设备发送传输的发送间隔相同,以保证在芯片上完整的复现各第一主设备的传输行为。
    71.步骤206,获取各第二主设备与各待验证模块中对应从设备之间的传输行为信息。
    72.步骤207,基于传输行为信息,确定待验证模块的性能指标。
    73.其中,步骤206-207的具体实现过程及原理,可以参考上述实施例的描述,此处不再赘述。
    74.综上,通过在芯片中的多个待验证模块正常工作的情况下,采用检测器监测各待验证模块中的至少一个第一主设备的传输信号,对各第一主设备的传输信号进行解析,以获取各第一主设备的传输命令信息,将传输命令信息写入日志文件,以得到传输日志,将各第一主设备替换为芯片验证环境中验证组件的各第二主设备,在芯片验证环境中,采用各第二主设备对应的序列生成器,控制各第二主设备按照传输日志进行激励驱动,获取各第二主设备与各待验证模块中对应从设备之间的传输行为信息,基于传输行为信息,确定待验证模块的性能指标,提高了芯片验证速度,且在芯片设计的早期阶段即可准确的评估芯片的性能指标,不必等到芯片集成完成后才能进行芯片验证,提高了芯片的开发迭代速度。
    75.图4是根据一示例性实施例所示出的一种芯片验证装置的结构示意图。
    76.如图4所示,该芯片验证装置400包括:获取模块410、替换模块420、处理模块430、确定模块440。
    77.其中,获取模块410,用于在芯片中的多个待验证模块正常工作的情况下,获取各待验证模块的传输日志;其中,传输日志中,包括待验证模块中的至少一个第一主设备的传输命令信息;
    78.替换模块420,用于将各第一主设备替换为芯片验证环境中验证组件的各第二主设备;
    79.处理模块430,用于在芯片验证环境中,控制各第二主设备按照传输日志进行激励驱动,并获取各第二主设备与各待验证模块中对应从设备之间的传输行为信息;
    80.确定模块440,用于基于传输行为信息,确定待验证模块的性能指标。
    81.作为本公开实施例的一种可能实现方式,各第一主设备分别通过接口与检测器连接;获取模块410,包括:
    82.监测单元,用于在芯片中的多个待验证模块正常工作的情况下,采用检测器监测各待验证模块中的至少一个第一主设备的传输信号;
    83.解析单元,用于对各第一主设备的传输信号进行解析,以获取各第一主设备的传输命令信息;
    84.写入单元,用于将传输命令信息写入日志文件,以得到传输日志。
    85.作为本公开实施例的一种可能实现方式,各第二主设备分别对应一个序列生成器;处理模块430,包括:
    86.控制单元,用于在芯片验证环境中,采用各第二主设备对应的序列生成器,控制各第二主设备按照传输日志进行激励驱动。
    87.作为本公开实施例的一种可能实现方式,控制单元,具体用于:
    88.采用各序列生成器,对传输日志进行文本解析,以获取对应的第一主设备的每一笔传输的详细命令信息;
    89.将每一笔传输的详细命令信息下发至对应的第二主设备,以控制对应的第二主设备按照详细命令信息进行激励驱动。
    90.作为本公开实施例的一种可能实现方式,详细命令信息中包括各第一主设备的初
    始读写地址,各序列生成器具有偏移地址参数;
    91.控制单元,具体用于:
    92.将各初始读写地址替换为预设的读写地址偏移量,并根据预设的读写地址偏移量,对各序列生成器的偏移地址参数进行赋值;
    93.采用各序列生成器,将赋值后的偏移地址参数的数值下发至对应的第二主设备,以控制对应的第二主设备的读写地址,其中,各第二主设备之间的读写地址不冲突,且各第二主设备的读地址与写地址之间不冲突。
    94.作为本公开实施例的一种可能实现方式,详细命令信息中包括各第一主设备的每一笔传输的传输时间点;控制单元,具体用于:
    95.根据每一笔传输与相邻的上一笔传输的传输时间点,确定每一笔传输与相邻的上一笔传输的发送间隔;
    96.按照发送间隔,将每一笔传输的详细命令信息下发至对应的第二主设备,以控制对应的第二主设备按照详细命令信息进行激励驱动。
    97.本公开实施例的芯片验证装置,通过在芯片中的多个待验证模块正常工作的情况下,获取各待验证模块的传输日志,其中,传输日志中,包括待验证模块中的至少一个第一主设备的传输命令信息,再将各第一主设备替换为芯片验证环境中验证组件的各第二主设备,再在芯片验证环境中,控制各第二主设备按照传输日志进行激励驱动,并获取各第二主设备与各待验证模块中对应从设备之间的传输行为信息,进而基于传输行为信息,确定待验证模块的性能指标,提高了芯片验证速度,且在芯片设计的早期阶段即可准确的评估芯片的性能指标,不必等到芯片集成完成后才能进行芯片验证,提高了芯片的开发迭代速度。
    98.为了实现上述实施例,本公开还提出一种电子设备,如图5所示,图5是根据一示例性实施例示出的一种芯片验证方法的电子设备的框图。如图5所示,上述电子设备500,可以包括:
    99.存储器510及处理器520,连接不同组件(包括存储器510和处理器520)的总线530,存储器510存储有计算机程序,当处理器520执行所述程序时实现本公开实施例所述的芯片验证方法。
    100.总线530表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。
    101.电子设备500典型地包括多种计算机可读介质。这些介质可以是任何能够被电子设备500访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
    102.存储器510还可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)540和/或高速缓存存储器550。电子设备500可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统560可以用于读写不可移动的、非易失性磁介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线530相连。存储器510可以包括至少一个程序
    产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本公开各实施例的功能。
    103.具有一组(至少一个)程序模块570的程序/实用工具580,可以存储在例如存储器510中,这样的程序模块570包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块570通常执行本公开所描述的实施例中的功能和/或方法。
    104.电子设备500也可以与一个或多个外部设备590(例如键盘、指向设备、显示器591等)通信,还可与一个或者多个使得用户能与该电子设备500交互的设备通信,和/或与使得该电子设备500能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口592进行。并且,电子设备500还可以通过网络适配器593与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图5所示,网络适配器593通过总线530与电子设备500的其它模块通信。应当明白,尽管图5中未示出,可以结合电子设备500使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
    105.处理器520通过运行存储在存储器510中的程序,从而执行各种功能应用以及数据处理。
    106.需要说明的是,本实施例的电子设备的实施过程和技术原理参见前述对本公开实施例的芯片验证方法的解释说明,此处不再赘述。
    107.本公开实施例提供的电子设备,通过在芯片中的多个待验证模块正常工作的情况下,获取各待验证模块的传输日志,其中,传输日志中,包括待验证模块中的至少一个第一主设备的传输命令信息,再将各第一主设备替换为芯片验证环境中验证组件的各第二主设备,再在芯片验证环境中,控制各第二主设备按照传输日志进行激励驱动,并获取各第二主设备与各待验证模块中对应从设备之间的传输行为信息,进而基于传输行为信息,确定待验证模块的性能指标,提高了芯片验证速度,且在芯片设计的早期阶段即可准确的评估芯片的性能指标,不必等到芯片集成完成后才能进行芯片验证,提高了芯片的开发迭代速度。
    108.为了实现上述实施例,本公开实施例还提出了一种计算机可读存储介质。
    109.其中,当计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如前所述的芯片验证方法。
    110.为了实现上述实施例,本公开还提供一种计算机程序产品,该计算机程序由电子设备的处理器执行时,使得电子设备能够执行如前所述的芯片验证方法。
    111.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
    112.应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

    技术特征:
    1.一种芯片验证方法,其特征在于,包括:在芯片中的多个待验证模块正常工作的情况下,获取各所述待验证模块的传输日志;其中,所述传输日志中,包括所述待验证模块中的至少一个第一主设备的传输命令信息;将各所述第一主设备替换为芯片验证环境中验证组件的各第二主设备;在所述芯片验证环境中,控制各所述第二主设备按照所述传输日志进行激励驱动,并获取各所述第二主设备与各所述待验证模块中对应从设备之间的传输行为信息;基于所述传输行为信息,确定所述待验证模块的性能指标。2.根据权利要求1所述的方法,其特征在于,各所述第一主设备分别通过接口与检测器连接;所述获取各所述待验证模块的传输日志,包括:在芯片中的多个待验证模块正常工作的情况下,采用所述检测器监测各所述待验证模块中的至少一个第一主设备的传输信号;对各所述第一主设备的传输信号进行解析,以获取各所述第一主设备的传输命令信息;将所述传输命令信息写入日志文件,以得到所述传输日志。3.根据权利要求1所述的方法,其特征在于,各所述第二主设备分别对应一个序列生成器;所述在所述芯片验证环境中,控制各所述第二主设备按照所述传输日志进行激励驱动,包括:在所述芯片验证环境中,采用各所述第二主设备对应的序列生成器,控制各所述第二主设备按照所述传输日志进行激励驱动。4.根据权利要求3所述的方法,其特征在于,所述在所述芯片验证环境中,采用各所述第二主设备对应的序列生成器,控制各所述第二主设备按照所述传输日志进行激励驱动,包括:采用各所述序列生成器,对所述传输日志进行文本解析,以获取对应的所述第一主设备的每一笔传输的详细命令信息;将所述每一笔传输的详细命令信息下发至对应的所述第二主设备,以控制对应的所述第二主设备按照所述详细命令信息进行激励驱动。5.根据权利要求4所述的方法,其特征在于,所述详细命令信息中包括各所述第一主设备的初始读写地址,各所述序列生成器具有偏移地址参数;所述将所述每一笔传输的详细命令信息下发至对应的所述第二主设备,以控制对应的所述第二主设备按照所述详细命令信息进行激励驱动之前,还包括:将各所述初始读写地址替换为预设的读写地址偏移量,并根据预设的所述读写地址偏移量,对各所述序列生成器的所述偏移地址参数进行赋值;所述将所述每一笔传输的详细命令信息下发至对应的所述第二主设备,以控制对应的所述第二主设备按照所述详细命令信息进行激励驱动,包括:采用各所述序列生成器,将赋值后的所述偏移地址参数的数值下发至对应的所述第二主设备,以控制对应的所述第二主设备的读写地址,其中,各所述第二主设备之间的读写地址不冲突,且各所述第二主设备的读地址与写地址之间不冲突。6.根据权利要求4或5所述的方法,其特征在于,所述详细命令信息中包括各所述第一主设备的每一笔传输的传输时间点;
    所述将所述每一笔传输的详细命令信息下发至对应的所述第二主设备,以控制对应的所述第二主设备按照所述详细命令信息进行激励驱动之前,还包括:根据每一笔传输与相邻的上一笔传输的传输时间点,确定所述每一笔传输与相邻的上一笔传输的发送间隔;所述将所述每一笔传输的详细命令信息下发至对应的所述第二主设备,以控制对应的所述第二主设备按照所述详细命令信息进行激励驱动,包括:按照所述发送间隔,将所述每一笔传输的详细命令信息下发至对应的所述第二主设备,以控制对应的所述第二主设备按照所述详细命令信息进行激励驱动。7.一种芯片验证装置,其特征在于,包括:获取模块,用于在芯片中的多个待验证模块正常工作的情况下,获取各所述待验证模块的传输日志;其中,所述传输日志中,包括所述待验证模块中的至少一个第一主设备的传输命令信息;替换模块,用于将各所述第一主设备替换为芯片验证环境中验证组件的各第二主设备;处理模块,用于在所述芯片验证环境中,控制各所述第二主设备按照所述传输日志进行激励驱动,并获取各所述第二主设备与各所述待验证模块中对应从设备之间的传输行为信息;确定模块,用于基于所述传输行为信息,确定所述待验证模块的性能指标。8.根据权利要求7所述的装置,其特征在于,各所述第一主设备分别通过接口与检测器连接;所述获取模块,包括:监测单元,用于在芯片中的多个待验证模块正常工作的情况下,采用所述检测器监测各所述待验证模块中的至少一个第一主设备的传输信号;解析单元,用于对各所述第一主设备的传输信号进行解析,以获取各所述第一主设备的传输命令信息;写入单元,用于将所述传输命令信息写入日志文件,以得到所述传输日志。9.根据权利要求7所述的装置,其特征在于,各所述第二主设备分别对应一个序列生成器;所述处理模块,包括:控制单元,用于在所述芯片验证环境中,采用各所述第二主设备对应的序列生成器,控制各所述第二主设备按照所述传输日志进行激励驱动。10.根据权利要求9所述的装置,其特征在于,所述控制单元,具体用于:采用各所述序列生成器,对所述传输日志进行文本解析,以获取对应的所述第一主设备的每一笔传输的详细命令信息;将所述每一笔传输的详细命令信息下发至对应的所述第二主设备,以控制对应的所述第二主设备按照所述详细命令信息进行激励驱动。11.根据权利要求10所述的装置,其特征在于,所述详细命令信息中包括各所述第一主设备的初始读写地址,各所述序列生成器具有偏移地址参数;所述控制单元,具体用于:将各所述初始读写地址替换为预设的读写地址偏移量,并根据预设的所述读写地址偏移量,对各所述序列生成器的所述偏移地址参数进行赋值;
    采用各所述序列生成器,将赋值后的所述偏移地址参数的数值下发至对应的所述第二主设备,以控制对应的所述第二主设备的读写地址,其中,各所述第二主设备之间的读写地址不冲突,且各所述第二主设备的读地址与写地址之间不冲突。12.根据权利要求10或11所述的装置,其特征在于,所述详细命令信息中包括各所述第一主设备的每一笔传输的传输时间点;所述控制单元,具体用于:根据每一笔传输与相邻的上一笔传输的传输时间点,确定所述每一笔传输与相邻的上一笔传输的发送间隔;按照所述发送间隔,将所述每一笔传输的详细命令信息下发至对应的所述第二主设备,以控制对应的所述第二主设备按照所述详细命令信息进行激励驱动。13.一种电子设备,其特征在于,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6中任一项所述的芯片验证方法。14.一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1-6中任一项所述的芯片验证方法。15.一种计算机程序产品,包括计算机程序,当所述计算机程序由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1-6中任一项所述的芯片验证方法。

    技术总结
    本公开提出一种芯片验证方法、装置、电子设备及存储介质,其中方法包括:在芯片中的多个待验证模块正常工作的情况下,获取各待验证模块的传输日志;其中,传输日志中,包括待验证模块中的至少一个第一主设备的传输命令信息;将各第一主设备替换为芯片验证环境中验证组件的各第二主设备;在芯片验证环境中,控制各第二主设备按照传输日志进行激励驱动,并获取各第二主设备与各待验证模块中对应从设备之间的传输行为信息;基于传输行为信息,确定待验证模块的性能指标,提高了芯片验证速度,且在芯片设计的早期阶段即可准确的评估芯片的性能指标,不必等到芯片集成完成后才能进行芯片验证,提高了芯片的开发迭代速度。提高了芯片的开发迭代速度。提高了芯片的开发迭代速度。


    技术研发人员:崔昭华
    受保护的技术使用者:杭州爱芯元智科技有限公司
    技术研发日:2022.02.18
    技术公布日:2022/5/25
    转载请注明原文地址:https://tc.8miu.com/read-7906.html

    最新回复(0)