CN116225932A - 一种芯片自动化验证方法、系统、设备及介质 - Google Patents

一种芯片自动化验证方法、系统、设备及介质 Download PDF

Info

Publication number
CN116225932A
CN116225932A CN202310168055.2A CN202310168055A CN116225932A CN 116225932 A CN116225932 A CN 116225932A CN 202310168055 A CN202310168055 A CN 202310168055A CN 116225932 A CN116225932 A CN 116225932A
Authority
CN
China
Prior art keywords
chip
test case
host
verification
shared memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310168055.2A
Other languages
English (en)
Inventor
张亮
杨亮
刘文涛
沈欣舞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Original Assignee
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd filed Critical Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Priority to CN202310168055.2A priority Critical patent/CN116225932A/zh
Publication of CN116225932A publication Critical patent/CN116225932A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明涉及芯片验证领域,尤其涉及一种芯片自动化验证方法、系统、设备及介质。所述方法包括:从主机的内存或芯片的内存中申请预设大小地址段作为共享内存;响应于主机与芯片需要相互传输测试用例,则由发送端对测试用例进行第一次校验操作以生成第一校验值,并发起与接收端握手操作、以及在握手操作完成后将测试用例和第一校验值写入共享内存中;由接收端从共享内存中读取测试用例和第一校验值,对测试用例进行第二次校验操作以生成第二校验值,并将第二校验值和第一校验值进行比对;响应于比较结果相同,则允许接收端执行测试用例。本发明的方案通过引入共享内存达到自动化验证的目的,通过传输的校验以及握手机制让测试用例执行更可靠。

Description

一种芯片自动化验证方法、系统、设备及介质
技术领域
本发明涉及芯片验证领域,尤其涉及一种芯片自动化验证方法、系统、设备及介质。
背景技术
在芯片验证过程中,需要主机(即host)传输数据和配置指令到芯片,或者芯片配置完成通知host发起读写,当前常见技术会在主机侧和芯片侧分别进行手动配置,这种方式会导致验证效率低下,而且手动配置容易出错,验证结果可靠性低。
发明内容
有鉴于此,有必要针对以上技术问题,提供一种芯片自动化验证方法、系统、设备及介质。
根据本发明的第一方面,提供了一种芯片自动化验证方法,所述方法包括:
从主机的内存或芯片的内存中申请预设大小地址段作为共享内存;
响应于主机与芯片需要相互传输测试用例,则由发送端对测试用例进行第一次校验操作以生成第一校验值,并发起与接收端握手操作、以及在握手操作完成后将所述测试用例和所述第一校验值写入所述共享内存中;
由接收端从所述共享内存中读取所述测试用例和所述第一校验值,对所述测试用例进行第二次校验操作以生成第二校验值,并将所述第二校验值和所述第一校验值进行比对;
响应于所述第二校验值和所述第一校验值相同,则允许接收端执行所述测试用例。
在一些实施例中,主机与芯片根据如下规则进行握手操作:
响应于发送端完成第一次校验操作,则由发送端将valid信号拉高;
响应于接收端检测到valid信号被拉高,则由接收端将ready信号拉高;
响应于发送端检测到ready信号被拉高,则发送端和接收端完成握手操作。
在一些实施例中,由发送端对测试用例进行第一次校验操作以生成第一校验值,包括:
由发送端对测试用例进行哈希运算以生成所述第一校验值;
对所述测试用例进行第二次校验操作以生成第二校验值,包括:
由接收端对从所述共享内存中读取的测试用例进行哈希运算以生成所述第二校验值。
在一些实施例中,所述方法还包括:
由主机和/或芯片收集测试用例在所述接收端的执行结果,并对所述执行结果进行分析以判定测试用例是否正确执行。
在一些实施例中于,所述方法还包括:
响应于判定用例执行错误,则由主机和/或芯片将接收端执行测试用例时的日志进行存储。
在一些实施例中,所述测试用例包括测试命令和测试数据。
在一些实施例中,发送端向共享内存写入数据时、以及接收端读取共享数据时遵循如下规则使用共享内存:
响应于所述共享内存属于主机、且发送端为主机,则通过iATU的Outbound寄存器组将共享内存的空间地址转换为PCI总线地址供芯片使用;
响应于所述共享内存属于芯片、且发送端为芯片,则通过iATU的Inbound寄存器组将PCI总线地址转换成主机可访问的总线地址供主机使用。
根据本发明的第二方面,提供了一种芯片自动化验证系统,所述系统包括:
申请模块,配置用于从主机的内存或芯片的内存中申请预设大小地址段作为共享内存;
第一校验模块,配置用于响应于主机与芯片需要相互传输测试用例,则由发送端对测试用例进行第一次校验操作以生成第一校验值,并发起与接收端握手操作,以及在握手操作完成后将所述测试用例和所述第一校验值写入所述共享内存中;
第二校验模块,配置用于由接收端从所述共享内存中读取所述测试用例和所述第一校验值,对所述测试用例进行第二次校验操作以生成第二校验值,并将所述第二校验值和所述第一校验值进行比对;
执行模块,配置用于响应于所述第二校验值和所述第一校验值相同,则允许接收端执行所述测试用例。
根据本发明的第三方面,还提供了一种计算机设备,该计算机设备包括:
至少一个处理器;以及
存储器,存储器存储有可在处理器上运行的计算机程序,处理器执行程序时执行前述的芯片自动化验证方法。
根据本发明的第四方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时执行前述的芯片自动化验证方法。
上述一种芯片自动化验证方法,通过共享内存的引入可以实现主机和芯片双向通信,达到自动化验证的目的,通过传输的加密校验以及握手机制,让测试用例执行和测试数据输入更可靠,显著提升传输速率和传输可信度。
此外,本发明还提供了一种芯片自动化验证系统、一种计算机设备和一种计算机可读存储介质,同样能实现上述技术效果,这里不再赘述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为本发明一个实施例提供的一种芯片自动化验证方法的流程图;
图2A为本发明一个实施例提供的在芯片侧设置共享内存的示意图;
图2B为本发明一个实施例提供的在主机侧设置共享内存的示意图;
图3为本发明一个实施例提供的主机向芯片发起握手操作的流程示意图;
图4为本发明一个实施例提供的编码加密流程示意图;
图5为本发明一个实施例提供的解码校验流程示意图;
图6为本发明一个实施例提供的共享内存存储格式示意图;
图7为本发明一个实施例提供的主机发送测试用例发送芯片接收的处理流程示意图;
图8为本发明另一个实施例提供的一种芯片自动化验证系统的结构示意图;
图9为本发明另一个实施例中计算机设备的内部结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
在一个实施例中,请参照图1所示,本发明提供了一种芯片自动化验证方法100,具体来说,所述方法包括以下步骤:
步骤101,从主机的内存或芯片的内存中申请预设大小地址段作为共享内存;
在具体实施过程中,请参照图2A所示共享内存可以从芯片侧的DDR中申请,请参照图2B所示共享内存也可以从主机侧的DDR中申请。
步骤102,响应于主机与芯片需要相互传输测试用例,则由发送端对测试用例进行第一次校验操作以生成第一校验值,并发起与接收端握手操作、以及在握手操作完成后将所述测试用例和所述第一校验值写入所述共享内存中;
在本实施例中,主机和芯片都可以作为发送端和接收端,具体来说当主机作为发送端时芯片作为接收端,当芯片作为发送端时主机作为接收端。
步骤103,由接收端从所述共享内存中读取所述测试用例和所述第一校验值,对所述测试用例进行第二次校验操作以生成第二校验值,并将所述第二校验值和所述第一校验值进行比对;
步骤104,响应于所述第二校验值和所述第一校验值相同,则允许接收端执行所述测试用例。
上述一种芯片自动化验证方法,通过共享内存的引入可以实现主机和芯片双向通信,达到自动化验证的目的,通过传输的加密校验以及握手机制,让测试用例执行和测试数据输入更可靠,显著提升传输速率和传输可信度。
在一些实施例中,主机与芯片根据如下规则进行握手操作:
响应于发送端完成第一次校验操作,则由发送端将valid信号拉高;
响应于接收端检测到valid信号被拉高,则由接收端将ready信号拉高;
响应于发送端检测到ready信号被拉高,则发送端和接收端完成握手操作。
在一些实施例中,前述步骤102中的由发送端对测试用例进行第一次校验操作以生成第一校验值,包括:
由发送端对测试用例进行哈希运算以生成所述第一校验值;其中,哈希运算采用设定好的算法(MD5、SHA1、SHA256)对输入的数据进行计算得到一串字符串输出结果的方法,哈希算法的特点之一是高灵敏性,也就是说输入数据的微小变化,哈希算法输出结果就会完全不同。
前述步骤103中的对所述测试用例进行第二次校验操作以生成第二校验值,包括:
由接收端对从所述共享内存中读取的测试用例进行哈希运算以生成所述第二校验值。
在一些实施例中,所述方法还包括:
由主机和/或芯片收集测试用例在所述接收端的执行结果,并对所述执行结果进行分析以判定测试用例是否正确执行。
在一些实施例中,所述方法还包括:
响应于判定用例执行错误,则由主机和/或芯片将接收端执行测试用例时的日志进行存储。
在一些实施例中,所述测试用例包括测试命令和测试数据。
在一些实施例中,发送端向共享内存写入数据时、以及接收端读取共享数据时遵循如下规则使用共享内存:
响应于所述共享内存属于主机、且发送端为主机,则通过iATU(Internal AddressTranslation Unit,内部地址转换单元)的Outbound寄存器组将共享内存的空间地址转换为PCI总线地址供芯片使用;
响应于所述共享内存属于芯片、且发送端为芯片,则通过iATU的Inbound寄存器组将PCI总线地址转换成主机可访问的总线地址供主机使用。
在又一个实施例中为了便于理解本发明的方案,下面以主机作为发送端,芯片作为接收端详细说明本发明的方案,本实施例提供了又一种芯片自动化验证方法,具体包括在主机侧和芯片侧均设置以下功能模块:发送、接收、编码加密、解码校验、结果判断、日志收集,并在主机侧的内存或者芯片侧的内存中申请一块存储空间作为共享内存,下面将结合以上各功能模块进行详细说明:
一、发送和接收
请参照图3所示,发送和接收模块在主机侧和芯片侧实现一致,收发采用握手机制,将要传输的指令数据或地址数据写到共享内存进行通信。发送模块控制valid信号,接收模块控制ready信号,当主机向芯片发送数据(此处的数据是编码加密模块准备好的数据)时,芯片接收模块持续检测valid信号,主机发送模块将valid信号拉高,芯片如果可以接收数据,接收模块会将ready信号拉高,主机发送模块检测到ready信号高电平后把数据写到共享内存,芯片接收模块读取数据并进行校验(此处校验解码模块进行工作),校验成功回ack消息给主机。此外需要说明的是,芯片发送数据主机接收数据流程与之相同,在此不做赘述。
二、编码加密
请参照图4所示,作为测试用例传输的数据可包括指令数据和地址数据,都需要对数据进行编码加密,加密算法采用hash。下面将针对以上两种传输数据分别进行详细说明:
指令数据编码加密,发送端准备好指令后,编码加密模块会通过hash算法算出一组校验值,将原始指令和校验数据一起写入共享内存并返回交给发送模块。
地址数据编码加密,发送端应提前把需要传输的数据写到共享内存中,将地址和大小发送到编码加密模块,编码加密模块会通过hash算法算出一组校验值,并将原始数据和校验数据一起返回交给发送模块。
三、解码校验
请参照图5所示,当数据传输到对端时,接收模块会把数据发送到解码校验模块,该模块解析出原始数据,对原始数据做hash计算,并与接收到hash值进行比较,如果相同则执行对应指令或者读取对应地址数据。需要说明书的主机侧和芯片侧预先编码实现不同指令的执行步骤,当接收到指令后,选择对应代码进行执行。
四、结果判断
当测试用例执行完成后,在主机侧或芯片侧或两侧进行结果判断,判断标准可灵活编码,最后将结果返回。
五、日志收集
根据结果判断模块的返回值,进行日志收集工作,可在主机侧或芯片侧或两侧收集,收集标准以及类型可灵活编码,将收集的日志进行保存。
六、共享内存
共享内存是一段主机或芯片都可以访问的内存空间,可以是主机侧的外设内存如DDR,也可以是芯片里的一段内存地址。对于主机侧的DDR内存,主机可以直接访问,芯片访问时可以通过使用iATU模块,iATU模块有Inbound和Outbound寄存器组,Outbound寄存器组把DDR空间地址转换为PCI总线地址供芯片访问;对于芯片侧的内存,芯片可以直接访问,主机访问时通过Inbound寄存器组把PCI总线地址转换成主机可访问的总线地址。
共享内存空间的规划如图6所示,芯片或主机按照规定格式存储和读取数据。如果两侧传输大量数据,可将数据放到图6的地址对应数据段,并将该数据段的地址和大小写入对应位置,对端只需拿到地址和大小就可读取数据,这种方式可减少两侧传输等待的时间,提高传输效率。
请结合图7所示,不妨假设主机作为发送端、芯片作为接收端传输一测试用例,具体数据传输过程如下:
步骤一,首先主机准备测试用例数据;
步骤二,由主机的编码加密模块对准备的数据进行哈希运算生成校验值;
步骤三,由主机的发送模块将valid信号拉高;
步骤四,芯片接收模块检测到valid信号后将ready信号拉高;
步骤五,主机的接收模块检测到将ready信号后将原始数据和校验值一起写入到共享内存中;
步骤六,芯片接收模块发起读取共享内存,将原始数据和校验值读出,由芯片的解码校验模块对读取的原始数据再次进行哈希运算生成新校验值,比对读取的校验值和新计算的校验值,如果相同允许芯片执行测试用例;
步骤七,由主机和/或芯片的结果判断模块根据预置条件判断测试用例执行结果;
步骤八,由主机和/或芯片的日志收集模块根据测试用例的执行结果将执行错误的测试用例对应的日志收集起来进行存储。
需要说明的是,芯片作为发送端,主机作为接收端的数据传输过程与上述相同,再此不作赘述。
本实施例的一种芯片自动化验证方法至少具备以下有益技术效果:主机和芯片之间可自主双向传输通信,通过对主机和芯片之间传输测试指令和测试数据的加密校验,达到安全可靠的验证目的,测试用例执行结束之后对测试结果比较、测试日志收集,可自动化完成芯片验证任务。
在一些实施例中,请参照图8所示,本发明还提供了一种芯片自动化验证系统200,所述系统包括:
申请模块201,配置用于从主机的内存或芯片的内存中申请预设大小地址段作为共享内存;
第一校验模块202,配置用于响应于主机与芯片需要相互传输测试用例,则由发送端对测试用例进行第一次校验操作以生成第一校验值,并发起与接收端握手操作,以及在握手操作完成后将所述测试用例和所述第一校验值写入所述共享内存中;
第二校验模块203,配置用于由接收端从所述共享内存中读取所述测试用例和所述第一校验值,对所述测试用例进行第二次校验操作以生成第二校验值,并将所述第二校验值和所述第一校验值进行比对;
执行模块204,配置用于响应于所述第二校验值和所述第一校验值相同,则允许接收端执行所述测试用例。
上述一种芯片自动化验证系统,通过共享内存的引入可以实现主机和芯片双向通信,达到自动化验证的目的,通过传输的加密校验以及握手机制,让测试用例执行和测试数据输入更可靠,显著提升传输速率和传输可信度。
在一些实施例中,主机与芯片根据如下规则进行握手操作:
响应于发送端完成第一次校验操作,则由发送端将valid信号拉高;
响应于接收端检测到valid信号被拉高,则由接收端将ready信号拉高;
响应于发送端检测到ready信号被拉高,则发送端和接收端完成握手操作。
在一些实施例中,所述第一校验模块202进一步配置用于:
由发送端对测试用例进行哈希运算以生成所述第一校验值;
所述第二校验模块203进一步配置用于:
由接收端对从所述共享内存中读取的测试用例进行哈希运算以生成所述第二校验值。
在一些实施例中,所述系统还包括配置用于执行以下步骤的模块:
由主机和/或芯片收集测试用例在所述接收端的执行结果,并对所述执行结果进行分析以判定测试用例是否正确执行。
在一些实施例中,所述系统还包括配置用于执行以下步骤的模块:
响应于判定用例执行错误,则由主机和/或芯片将接收端执行测试用例时的日志进行存储。
在一些实施例中,所述测试用例包括测试命令和测试数据。
在一些实施例中,发送端向共享内存写入数据时、以及接收端读取共享数据时遵循如下规则使用共享内存:
响应于所述共享内存属于主机、且发送端为主机,则通过iATU的Outbound寄存器组将共享内存的空间地址转换为PCI总线地址供芯片使用;
响应于所述共享内存属于芯片、且发送端为芯片,则通过iATU的Inbound寄存器组将PCI总线地址转换成主机可访问的总线地址供主机使用。
需要说明的是,关于芯片自动化验证系统的具体限定可以参见上文中对芯片自动化验证方法的限定,在此不再赘述。上述芯片自动化验证系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
根据本发明的另一方面,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图请参照图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时实现以上所述的芯片自动化验证方法,具体来说,所述方法包括以下步骤:
从主机的内存或芯片的内存中申请预设大小地址段作为共享内存;
响应于主机与芯片需要相互传输测试用例,则由发送端对测试用例进行第一次校验操作以生成第一校验值,并发起与接收端握手操作、以及在握手操作完成后将所述测试用例和所述第一校验值写入所述共享内存中;
由接收端从所述共享内存中读取所述测试用例和所述第一校验值,对所述测试用例进行第二次校验操作以生成第二校验值,并将所述第二校验值和所述第一校验值进行比对;
响应于所述第二校验值和所述第一校验值相同,则允许接收端执行所述测试用例。
根据本发明的又一方面,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以上所述的芯片自动化验证方法,具体来说,包括执行以下步骤:
从主机的内存或芯片的内存中申请预设大小地址段作为共享内存;
响应于主机与芯片需要相互传输测试用例,则由发送端对测试用例进行第一次校验操作以生成第一校验值,并发起与接收端握手操作、以及在握手操作完成后将所述测试用例和所述第一校验值写入所述共享内存中;
由接收端从所述共享内存中读取所述测试用例和所述第一校验值,对所述测试用例进行第二次校验操作以生成第二校验值,并将所述第二校验值和所述第一校验值进行比对;
响应于所述第二校验值和所述第一校验值相同,则允许接收端执行所述测试用例。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种芯片自动化验证方法,其特征在于,所述方法包括:
从主机的内存或芯片的内存中申请预设大小地址段作为共享内存;
响应于主机与芯片需要相互传输测试用例,则由发送端对测试用例进行第一次校验操作以生成第一校验值,并发起与接收端握手操作、以及在握手操作完成后将所述测试用例和所述第一校验值写入所述共享内存中;
由接收端从所述共享内存中读取所述测试用例和所述第一校验值,对所述测试用例进行第二次校验操作以生成第二校验值,并将所述第二校验值和所述第一校验值进行比对;
响应于所述第二校验值和所述第一校验值相同,则允许接收端执行所述测试用例。
2.根据权利要求1所述的芯片自动化验证方法,其特征在于,主机与芯片根据如下规则进行握手操作:
响应于发送端完成第一次校验操作,则由发送端将valid信号拉高;
响应于接收端检测到valid信号被拉高,则由接收端将ready信号拉高;
响应于发送端检测到ready信号被拉高,则发送端和接收端完成握手操作。
3.根据权利要求1所述的芯片自动化验证方法,其特征在于,由发送端对测试用例进行第一次校验操作以生成第一校验值,包括:
由发送端对测试用例进行哈希运算以生成所述第一校验值;
对所述测试用例进行第二次校验操作以生成第二校验值,包括:
由接收端对从所述共享内存中读取的测试用例进行哈希运算以生成所述第二校验值。
4.根据权利要求1所述的芯片自动化验证方法,其特征在于,所述方法还包括:
由主机和/或芯片收集测试用例在所述接收端的执行结果,并对所述执行结果进行分析以判定测试用例是否正确执行。
5.根据权利要求4所述的芯片自动化验证方法,其特征在于,所述方法还包括:
响应于判定用例执行错误,则由主机和/或芯片将接收端执行测试用例时的日志进行存储。
6.根据权利要求1所述的芯片自动化验证方法,其特征在于,所述测试用例包括测试命令和测试数据。
7.根据权利要求1所述的芯片自动化验证方法,其特征在于,发送端向共享内存写入数据时、以及接收端读取共享数据时遵循如下规则使用共享内存:
响应于所述共享内存属于主机、且发送端为主机,则通过iATU的Outbound寄存器组将共享内存的空间地址转换为PCI总线地址供芯片使用;
响应于所述共享内存属于芯片、且发送端为芯片,则通过iATU的Inbound寄存器组将PCI总线地址转换成主机可访问的总线地址供主机使用。
8.一种芯片自动化验证系统,其特征在于,所述系统包括:
申请模块,所述申请模块配置用于从主机的内存或芯片的内存中申请预设大小地址段作为共享内存;
第一校验模块,所述第一校验模块配置用于响应于主机与芯片需要相互传输测试用例,则由发送端对测试用例进行第一次校验操作以生成第一校验值,并发起与接收端握手操作,以及在握手操作完成后将所述测试用例和所述第一校验值写入所述共享内存中;
第二校验模块,所述第二校验模块配置用于由接收端从所述共享内存中读取所述测试用例和所述第一校验值,对所述测试用例进行第二次校验操作以生成第二校验值,并将所述第二校验值和所述第一校验值进行比对;
执行模块,所述执行模块配置用于响应于所述第二校验值和所述第一校验值相同,则允许接收端执行所述测试用例。
9.一种计算机设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器中运行的计算机程序,所述处理器执行所述程序时执行权利要求1-7任意一项所述的芯片自动化验证方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时执行权利要求1-7任意一项所述的芯片自动化验证方法。
CN202310168055.2A 2023-02-24 2023-02-24 一种芯片自动化验证方法、系统、设备及介质 Pending CN116225932A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310168055.2A CN116225932A (zh) 2023-02-24 2023-02-24 一种芯片自动化验证方法、系统、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310168055.2A CN116225932A (zh) 2023-02-24 2023-02-24 一种芯片自动化验证方法、系统、设备及介质

Publications (1)

Publication Number Publication Date
CN116225932A true CN116225932A (zh) 2023-06-06

Family

ID=86580180

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310168055.2A Pending CN116225932A (zh) 2023-02-24 2023-02-24 一种芯片自动化验证方法、系统、设备及介质

Country Status (1)

Country Link
CN (1) CN116225932A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116386711A (zh) * 2023-06-07 2023-07-04 合肥康芯威存储技术有限公司 一种存储器件数据传输的测试装置及测试方法
CN117806892A (zh) * 2024-02-29 2024-04-02 山东云海国创云计算装备产业创新中心有限公司 存储芯片模型测试方法、装置、通信设备及存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116386711A (zh) * 2023-06-07 2023-07-04 合肥康芯威存储技术有限公司 一种存储器件数据传输的测试装置及测试方法
CN116386711B (zh) * 2023-06-07 2023-09-05 合肥康芯威存储技术有限公司 一种存储器件数据传输的测试装置及测试方法
CN117806892A (zh) * 2024-02-29 2024-04-02 山东云海国创云计算装备产业创新中心有限公司 存储芯片模型测试方法、装置、通信设备及存储介质

Similar Documents

Publication Publication Date Title
CN116225932A (zh) 一种芯片自动化验证方法、系统、设备及介质
CN111880740B (zh) 数据处理方法、装置、计算机系统及可读存储介质
CN110727597B (zh) 一种基于日志排查无效代码补全用例的方法
CN108363588B (zh) 实现web与原生功能交互的方法、电子装置及可读存储介质
CN110647415B (zh) 数据库检测方法、装置、设备及计算机可读存储介质
CN110716843B (zh) 系统故障分析处理方法、装置、存储介质及电子设备
CN113485881A (zh) 一种临时限速服务器的测试方法、装置、电子设备及介质
US20110004817A1 (en) Crc management method performed in sata interface and data storage device using crc management method
CN105721568A (zh) 一种远程调试系统、方法及装置
CN112911024B (zh) 一种物联网数据采集的方法、系统、电子装置和存储介质
EP3125251A1 (en) Hamming code-based data access method and integrated random access memory
CN111464267B (zh) 通信数据校验方法、装置、计算机设备和存储介质
CN115543755B (zh) 一种性能监管方法、装置、系统、设备和介质
CN111414299B (zh) 基于hdparm的SSD扩展信息获取方法和装置
CN103823731B (zh) 一种基于安卓系统的sd协议栈调试方法
CN112101849B (zh) 核电站数据自动校验方法、装置、设备及介质
CN116431082B (zh) 数据存储的方法、装置、计算机设备和存储介质
CN117201603B (zh) 基于二维码的煤矿井下数据交接方法及系统
CN114594752B (zh) 一种拖拉机控制单元软件刷写方法及存储介质
CN110247896B (zh) 基于开启防火墙的信息处理方法、装置和计算机设备
CN115102941B (zh) 一种基于web的服务器远程调试方法、系统、装置及介质
CN111857664B (zh) 一种应用开发的方法、装置、设备及存储介质
CN115938101A (zh) 一种遥控码匹配方法、系统、电子设备和存储介质
CN116383153A (zh) 文件处理方法、装置及服务器
CN116107785A (zh) 嵌入式设备自动化测试方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination