CN111953354A - 校验算法的测试方法、芯片、存储介质和家用电器 - Google Patents
校验算法的测试方法、芯片、存储介质和家用电器 Download PDFInfo
- Publication number
- CN111953354A CN111953354A CN202010621761.4A CN202010621761A CN111953354A CN 111953354 A CN111953354 A CN 111953354A CN 202010621761 A CN202010621761 A CN 202010621761A CN 111953354 A CN111953354 A CN 111953354A
- Authority
- CN
- China
- Prior art keywords
- verification
- result
- input data
- standard
- check
- 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
Links
- 238000012795 verification Methods 0.000 title claims abstract description 207
- 238000012360 testing method Methods 0.000 title claims abstract description 128
- 238000000034 method Methods 0.000 claims description 42
- 125000004122 cyclic group Chemical group 0.000 claims description 18
- 238000010276 construction Methods 0.000 claims description 4
- 238000007689 inspection Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 description 27
- 238000010586 diagram Methods 0.000 description 12
- 230000005540 biological transmission Effects 0.000 description 6
- 238000010998 test method Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000004378 air conditioning Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/09—Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本申请公开了一种校验算法的测试方法、测试装置、存储介质和家用电器,该校验算法的测试方法包括:获取校验参数和输入数据;输入输入数据和校验参数至校验单元,得到校验结果;比对校验结果与标准结果,检测并确认校验结果与标准结果一致,输出测试通过;其中,标准结果基于输入数据和校验参数产生。通过上述方式,能够提高校验算法的测试效率。
Description
技术领域
本申请涉及校验测试技术领域,特别是涉及一种校验算法的测试方法、芯片、存储介质和家用电器。
背景技术
数据校验是为保证数据的完整性进行的一种验证操作。通常用一种指定的算法对原始数据计算出的一个校验值,接收方用同样的算法计算一次校验值,如果两次计算得到的检验值相同,则说明数据是完整的。常用的校验包括循环冗余校验(Cyclic RedundancyCheck,CRC)、纵向冗余校验(Longitudinal Redundancy Check,LRC)、奇偶校验和校验和等。
在测试阶段,一般会通过编写测试用例的方式来对校验算法进行测试,由于校验算法的种类较多,且每一种校验算法对于不同的校验模式下具有不同的校验参数,因此,对于每一种情况单独编写一个测试用例较为繁琐。
发明内容
为解决上述问题,本申请提供了一种校验算法的测试方法、芯片、存储介质和家用电器,能够提高校验算法的测试效率。
本申请采用的一个技术方案是:提供一种校验算法的测试方法,该方法包括:获取校验参数和输入数据;输入输入数据和校验参数至校验单元,得到校验结果;比对校验结果与标准结果,检测并确认校验结果与标准结果一致,输出测试通过;其中,标准结果基于输入数据和校验参数产生。
其中,获取校验参数和输入数据,包括:获取测试任务;获取与测试任务对应的校验参数,基于测试任务生成对应的输入数据。
其中,获取测试任务以及对应的校验参数,包括:构建参数结构体和校验类;其中,参数结构体包含校验算法所需要的校验参数,校验类用于定义测试任务;基于测试任务确定检验模式;将参数结构体中与校验模式相对应的校验参数,例化至校验类中。
其中,构建参数结构体和校验类,包括:基于UVM框架构建参数结构体和校验类。
其中,该方法还包括:基于UVM框架构建标准校验函数;利用标准校验函数对输入数据和检验参数进行校验运算,得到标准结果。
其中,检测并确认校验结果与标准结果一致之前,还包括:预存标准结果。
其中,输入输入数据和校验参数至校验单元,得到校验结果,包括:写入输入数据至校验单元的数据寄存器,写入校验参数至校验单元的参数寄存器,写入校验单元输出的校验结果至校验单元的结果寄存器。
其中,校验算法为循环冗余校验算法。
其中,基于测试任务生成对应的输入数据,包括:获取初始输入数据;检测并确认初始输入数据为ASC II码,将预设的ASC II标准码作为校验单元的输入数据;或检测并确认初始输入数据为二进制数,生成随机数作为校验单元的输入数据。
本申请采用的另一个技术方案是:提供一种校验算法的测试方法,该方法包括:运行测试用例,输入校验参数和输入数据至测试用例,得到校验结果与标准结果;比对校验结果与标准结果,检测并确认校验结果与标准结果一致,输出测试通过。
本申请采用的另一个技术方案是:提供一种芯片,该芯片被配置为执行如上述方法的步骤。
本申请采用的另一个技术方案是:提供一种计算机可读存储介质,其中,该存储有程序数据,程序数据能够被处理器执行以实现如上述方法的步骤。
本申请采用的另一个技术方案是:提供一种家用电器,其特征在于,家用电器包括如上述的芯片或者计算机可读存储介质。
本申请提供的校验算法的测试方法包括:获取校验参数和输入数据;输入输入数据和校验参数至校验单元,得到校验结果;比对校验结果与标准结果,检测并确认校验结果与标准结果一致,输出测试通过;其中,标准结果基于输入数据和校验参数产生。通过上述方式,可以采用创建测试任务的形式,根据测试任务自动进行校验算法并生成校验结果和标准结果,并对两者进行比较以判断校验结果的准确性,在进行大量测试时,只需要更调整测试任务和校验参数即可,无需对于每一次测试编写一个测试用例,从而提高了测试效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
图1是本申请提供的校验算法的测试方法第一实施例的流程示意图;
图2是本申请提供的校验算法的测试方法第二实施例的流程示意图;
图3是本申请提供的校验算法的测试方法第三实施例的流程示意图;
图4是本申请提供的校验算法的测试方法第三实施例的数据流示意图;
图5是本申请提供的校验算法的测试方法第四实施例的数据流示意图;
图6是本申请提供的芯片一实施例的结构示意图;
图7是本申请提供的计算机可读存储介质一实施例的结构示意图;
图8是本申请提供的家用电器一实施例的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。可以理解的是,此处所描述的具体实施例仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
参阅图1,图1是本申请提供的校验算法的测试方法第一实施例的流程示意图,该方法包括:
步骤11:获取校验参数和输入数据。
校验算法可以包括循环冗余校验、纵向冗余校验、奇偶校验和校验和等,这里以循环冗余校验为例。
循环冗余校验是一种根据网络数据包或计算机文件等数据产生简短固定位数校验码的一种信道编码技术,主要用来检测或校验数据传输或者保存后可能出现的错误。它是利用除法及余数的原理来作错误侦测的。在数据传输过程中,无论传输***的设计再怎么完美,差错总会存在,这种差错可能会导致在链路上传输的一个或者多个帧被破坏(例如(出现比特差错,0变为1,或者1变为0),从而接受方接收到错误的数据。为尽量提高接受方收到数据的正确率,在接收方接收数据之前需要对数据进行差错检测,当且仅当检测的结果为正确时接收方才真正收下数据。循环冗余校验是一种用于校验通信链路上数字传输准确性的计算方法(通过某种数学运算来建立数据位和校验位的约定关系的)。发送方计算机使用某公式计算出被传送数据所含信息的一个值,并将此值附在被传送数据后,接收方计算机则对同一数据进行相同的计算,应该得到相同的结果。如果这两个CRC结果一致,则接收该数据,若不一致,则说明发送中出现了差错,接收方计算机可要求发送方计算机重新发送该数据。
其中,循环冗余校验可以包括CRC-8、CRC-12、CRC-16、CRC-CCITT、CRC-32、CRC-32C等多种模式,CRC-12码通常用来传送6-bit字符串,CRC-16及CRC-CCITT码则用是来传送8-bit字符,CRC-32则用于硬盘数据的传输或者实现网络传输等。
可以理解地,每一种校验模式对应的校验参数和输入数据有所不同。
步骤12:输入输入数据和校验参数至校验单元,得到校验结果。
可选地,该校验单元由硬件实现,具体地,可以采用相应的电路来实现。
以CRC算法为例,校验单元可以采用一数字电路来实现。一般,CRC校验码产生电路可以分为两种:串行CRC校验码产生电路和并行CRC校验码产生电路。
以串行CRC校验码产生电路为例,CRC校验码的值可以通过线性移位寄存器和异或门求得,线性移位寄存器一次移一位,完成除法功能,异或门完成不带进位的减法功能。如果商数为“1”,则从被除数的高阶位数减去除数,同时移位寄存器右移一位,准备为被除数的较低位进行运算。如果商数为“0”,则移位寄存器直接右移一位。
在并行CRC校验码产生电路中,可以采用串行CRC校验电路的思想,用线性移位寄存器的方法产生并行CRC校验码,与串行CRC校验码产生电路不同的是,并行CRC校验码产生电路的N位(例如16位)CRC同时输出,所以要求在一个时钟周期内,移位寄存器一次需要移N位,可以采用组合逻辑电路来实现。
步骤13:检测并确认校验结果与标准结果一致,输出测试通过;其中,标准结果基于输入数据和校验参数产生。
可以理解地,在上述步骤12中,校验结果由硬件产生,在本步骤13中,标准结果可以根据输入数据和校验参数,通过软件的方式产生。由于软件产生方式可以采用标准的函数进行运算,所以可以确定结果的准确性,进而用于作为校验结果的参考。
在本步骤中,若校验结果与标准结果一致,则确定测试通过,若校验结果与标准结果不一致,则确定测试不通过。可选地,在测试不通过时,可以采用报错的方式进行提醒。
可选地,本实施例中的标准结果可以是预先进行存储的。例如,可以通过其他的设备获取到标准结果,或者接收用户的输入得到标准结果,然后在步骤13之间,将获取的标准结果进行预存。
区别于现有技术,本实施例提供的校验算法的测试方法包括:获取校验参数和输入数据;输入输入数据和校验参数至校验单元,得到校验结果;比对校验结果与标准结果,检测并确认校验结果与标准结果一致,输出测试通过;其中,标准结果基于输入数据和校验参数产生。通过上述方式,可以采用创建测试任务的形式,根据测试任务自动进行校验算法并生成校验结果和标准结果,并对两者进行比较以判断校验结果的准确性,在进行大量测试时,只需要更调整测试任务和校验参数即可,无需对于每一次测试编写一个测试用例,从而提高了测试效率。
参阅图2,图2是本申请提供的校验算法的测试方法第二实施例的流程示意图,该方法包括:
步骤21:创建测试任务。
其中,测试任务至少包括校验算法的类型。可选地,校验算法可以包括循环冗余校验、纵向冗余校验、奇偶校验和校验和等,这里以循环冗余校验为例。
可选地,在一实施例中,测试任务可以是通过获取用户的输入产生,在另一实施例中,测试任务可以是通过获取用户的输入产生,然后基于用户输入的测试任务中校验算法的类型,从数据库中获取相对应的校验参数(所有校验参数提前预存至服务器)。
步骤22:获取与测试任务对应的校验参数,以及基于测试任务生成对应的输入数据。
可以理解地,对于不同的测试任务,所需要的校验参数和输入数据的类型可能不同。这里依然以循环冗余校验为例,在CRC中,校验参数可以包括多项式大小、输入数据反转控制、输出数据反转控制、CRC初始值、CRC多项式等。循环冗余校验的输入数据可以是ASCII码或者二进制数。
可选地,在一实施例中,该校验参数可以通过用户输入得到,具体地,在创建测试任务之后,用户输入与该测试任务相关的校验参数。在另一实施例中,可以从参数库中自动获取相对应的校验参数,例如,参数库中预先存储了所有的校验参数,在创建测试任务之后,自动从参数库中获取相对应的校验参数。
可选地,在一实施例中,对于循环冗余校验,步骤12可以具体包括:获取初始输入数据,确定初始输入数据的类型,检测并确认初始输入数据为ASC II码,则将预设的ASC II标准码作为新的输入数据,作为校验单元的输入数据,或检测并确认初始输入数据为二进制数,则生成随机数作为新的输入数据,作为校验单元的输入数据。
ASCII码使用指定的7位或8位二进制数组合来表示128或256种可能的字符。标准ASCII码也叫基础ASCII码,使用7位二进制数(剩下的1位二进制为0)来表示所有的大写和小写字母,数字0到9、标点符号、以及在美式英语中使用的特殊控制字符。
可选地,可以采用ASC II码判定位来判断初始输入数据是ASC II码还是普通的二进制数。
步骤23:输入输入数据和校验参数至校验单元,得到校验结果。
步骤24:检测并确认校验结果与标准结果一致,输出测试通过;其中,标准结果基于输入数据和校验参数产生。
参阅图3,图3是本申请提供的校验算法的测试方法第三实施例的流程示意图,该方法包括:
步骤31:获取测试任务。
其中,测试任务至少包括校验算法的类型。可选地,校验算法可以包括循环冗余校验、纵向冗余校验、奇偶校验和校验和等,这里以循环冗余校验为例。
可选地,在一实施例中,测试任务可以是通过获取用户的输入产生,同时,该对应的校验参数也有用户输入,在另一实施例中,测试任务可以是通过获取用户的输入产生。
步骤32:获取与测试任务对应的校验参数,以及基于测试任务生成对应的输入数据。
可选地,校验参数可以是基于用户输入的测试任务中校验算法的类型,从数据库中获取相对应的校验参数(所有校验参数提前预存至服务器)。
可以理解地,对于不同的测试任务,所需要的输入数据的类型可能不同,这里依然以循环冗余校验为例,循环冗余校验的输入数据可以是ASC II码或者二进制数,
可选地,在一实施例中,对于循环冗余校验,步骤12可以具体包括:获取初始输入数据,确定初始输入数据的类型,检测并确认初始输入数据为ASC II码,则将预设的ASC II标准码作为新的输入数据,或检测并确认初始输入数据为二进制数,则生成随机数作为新的输入数据。
步骤33:输入输入数据和校验参数至校验单元,得到校验结果。
可选地,该校验单元由硬件实现,具体地,可以采用相应的电路来实现。
上述步骤21-步骤23与上述实施例类似,这里不再赘述。
步骤34:利用标准函数对输入数据和校验参数进行校验运算,得到标准结果。
可选地,可以预先构建一标准函数,将输入数据和校验参数输入至该标准函数进行运算,并得到标准结果。
其中,以CRC为例,函数的构建可以基于CRC的基本原理:任意一个由二进制位串组成的代码都可以和一个系数为“1”或“0”取值的多项式一一对应。例如,代码1010111对应的多项式为X6+X4+X2+X+1,而多项式X5+X4+X2+X+1对应的代码为101111。
进一步,若设码字长度为N,信息字段为K位,校验字段为R位(N=K+R),则对于CRC码集中的任一码字,存在且仅存在一个R次多项式g(x),使得:
V(x)=A(x)g(x)=xRm(x)+r(x);
其中,m(x)为K次信息多项式,r(x)为R-1次校验多项式,g(x)为生成多项式:
g(x)=g0+g1x+g2x2+…+g(n-1)xn-1+gnxn。
因此,标准函数可以基于上述的原理来设计。
可以理解地,本实施例中不限定步骤33和步骤34的执行顺序,步骤33和步骤34可以按照设定顺序先后执行,也可以同时执行。
步骤35:检测并确认校验结果与标准结果一致,输出测试通过;其中,标准结果基于输入数据和校验参数产生。
在本步骤中,若校验结果与标准结果一致,则确定测试通过,若校验结果与标准结果不一致,则确定测试不通过。可选地,在测试不通过时,可以采用报错的方式进行提醒。
下面结合图4,图4是本申请提供的校验算法的测试方法第三实施例的数据流示意图,对上述实施例进行说明:
1、根据测试任务分别确定校验参数和输入数据;
2、将校验参数和输入数据分别输入至校验单元和标准函数模块;
其中,校验参数写入校验单元的参数寄存器,输入数据写入校验单元的数据寄存器,标准函数模块中封装有标准函数;
3、校验单元采用硬件方式对校验参数和输入数据进行校验运算,以得到校验结果,并把校验结果写入结果寄存器;以及,标准函数模块利用封装的标准函数对校验参数和输入数据进行校验运算,以得到标准结果;
4、将校验结果和标准结果进行对比。
区别于现有技术,本实施例设置一标准函数,采用软件的方式对校验参数和输入数据进行校验运算,以得到标准结果,确保了标准结果的准确性,进一步,根据测试任务自动进行校验算法并生成校验结果,并对两者进行比较以判断校验结果的准确性,在进行大量测试时,只需要更调整测试任务和校验参数即可,无需对于每一次测试编写一个测试用例,从而提高了测试效率。
可选地,在一具体的实施例中,上述实施例中的方法可以基于UVM(UniversalVerification Methodology,通用验证方法学)框架实现。UVM框架是一个以SystemVerilog类库为主体的验证平台开发框架,具备面向对象编程的思想和功能,同时融入了众多验证方法学的优点,验证工程师可以利用其可重用组件构建具有标准化层次结构和接口的功能验证环境。是微电子行业中实现高效开发和重用的验证环境的一种标准。基于UVM的验证环境和验证方法可以创建坚实、可重用、自动化、易维护、具互操作性的测试流程组件,正在被业界普遍的接受和采用。
下面以CRC为例,并基于UVM框架对上述实施例进行说明:
首先,基于UVM框架构建CRC验证平台,CRC验证平台基于phase执行机制,phase执行机制介绍如下:
具体地,利用System Verilog及UVM类库构建CRC验证平台,该CRC验证平台包括:CRC参数结构体、CRC类、new函数、connect_phase、run_phase、CRC标准函数、CRC测试任务run_crc等。
其中,CRC参数结构体内封装有CRC算法必要的参数;CRC标准函数封装了CRC算法;run_crc包含了测试数据的生成、CRC寄存器参数配置,CRC标准结果以及软硬件结果自动比较的过程。
1、构建CRC参数结构体
CRC参数结构体中包含了所有CRC算法中所需要的参数:包括多项式大小、输入数据反转控制、输出数据反转控制、CRC初始值、CRC多项式等。
2、构建CRC类
声明了CRC标准函数,run_crc、run_phase等,最关键的是要例化所有CRC模式的参数结构体,例如:需要测试CRC-8-maxim模式,就要将CRC-8-maxim模式的参数从CRC参数结构体中例化在这个CRC类中。
3、构建new函数
构建1个new函数,主要用于UVM中分配内存,初始化参数的作用。
4、构建connect phase
connect phase用于使能DUT(Device Under Test,被测件,即图3中的校验单元)和UVC间可能用到的连接,如AHB(Advanced High Performance Bus,高级高性能总线)、AXI(Advanced eXtensible Interface,高级可扩展接口)、APB(Advanced Peripheral Bus,***总线)等。
5、定义CRC标准函数
标准函数要实现CRC算法的标准软件程序,可运算出CRC算法的标准结果,该结果用于与硬件输出的结果相比较,判定硬件结果的正确性。
6、构建CRC配置任务run_crc
该任务主要有以下几个部分:
初始数据输入:包括CRC参数、ASCII码判定位,CRC参数即为CRC算法中必要的参数;ASCII码判定位用于判定验证的输入数据为ASCII码还是普通的二进制数。
生成输入数据:若初始数据为ASCII码验证,则将固定的ASCII标准码作为新的输入数据;若初始数据为普通二进制数验证,则生成随机数作为新的输入数据。
配置数据:通过UVM的寄存器读写功能将CRC算法的参数写入对应的寄存器中。
等待结果:轮询状态寄存器,等待硬件的CRC运算结束。
读取结果:读取结果寄存器获得硬件的运算结果。
软件生成标准结果:将参数和生成的输入数据输入给标准函数,通过软件运算获取标准结果。
自动比较运算结果:将软件生成的标准结果和硬件的结果进行比较,若一致,则验证通过;若不一致则报出错误信息。
7、构建运行任务run_phase
基于每一次测试,通过在run_phase中例化run_crc并输入CRC不同模式的参数、ASCII码判定位,即可完成该本次校验模式的验证。
参阅图5,图5是本申请提供的校验算法的测试方法第四实施例的流程示意图,该方法包括:
步骤51:运行测试用例,输入校验参数和输入数据至测试用例,得到校验结果与标准结果。
步骤52:检测并确认校验结果与标准结果一致,输出测试通过。
可以理解地,本实施例中的测试用例可以根据上述多个实施例中提供的方式进行构建。一方面,可以直接通过输入校验参数和输入数据至测试用例,以使测试用例进行上述实施例中的处理得到校验结果与标准结果,并比对校验结果与标准结果,检测并确认校验结果与标准结果一致,输出测试通过。另一方面,还可以直接构建一测试任务,该测试任务中包含了待测试校验模式,测试用例可以根据该测试任务获取对应的校验参数和输入数据,并进行上述实施例中的处理得到校验结果与标准结果,比对校验结果与标准结果,检测并确认校验结果与标准结果一致,输出测试通过。
参阅图6,图6是本申请提供的芯片一实施例的结构示意图,该芯片60被配置为执行程序数据以实现如下方法的步骤:
获取校验参数和输入数据;输入输入数据和校验参数至校验单元,得到校验结果;比对校验结果与标准结果,检测并确认校验结果与标准结果一致,输出测试通过;其中,标准结果基于输入数据和校验参数产生。或运行测试用例,输入校验参数和输入数据至测试用例,得到校验结果与标准结果;比对校验结果与标准结果,检测并确认校验结果与标准结果一致,输出测试通过。
参阅图7,图7是本申请提供的计算机可读存储介质一实施例的结构示意图,该计算机可读存储介质70中存储有程序数据71,程序数据71能够被处理器执行以实现如下方法的步骤:
获取校验参数和输入数据;输入输入数据和校验参数至校验单元,得到校验结果;比对校验结果与标准结果,检测并确认校验结果与标准结果一致,输出测试通过;其中,标准结果基于输入数据和校验参数产生。或运行测试用例,输入校验参数和输入数据至测试用例,得到校验结果与标准结果;比对校验结果与标准结果,检测并确认校验结果与标准结果一致,输出测试通过。
参阅图8,图8是本申请提供的家用电器一实施例的结构示意图,该家用电器80包括一芯片81,该芯片81是如上述实施例中提供的芯片,其中,该芯片81可运行软件以实现如下的方法:
获取校验参数和输入数据;输入输入数据和校验参数至校验单元,得到校验结果;比对校验结果与标准结果,检测并确认校验结果与标准结果一致,输出测试通过;其中,标准结果基于输入数据和校验参数产生。或运行测试用例,输入校验参数和输入数据至测试用例,得到校验结果与标准结果;比对校验结果与标准结果,检测并确认校验结果与标准结果一致,输出测试通过。
其中,该家用电器80可以是空调、空气净化器、加湿器等空气调节设备,也可以是微波炉、电磁炉等厨具设备,还可以是路由器、电视机等多媒体网络设备。
在本申请所提供的几个实施方式中,应该理解到,所揭露的方法以及设备,可以通过其它的方式实现。例如,以上所描述的设备实施方式仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是根据本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (13)
1.一种校验算法的测试方法,其特征在于,所述方法包括:
获取校验参数和输入数据;
输入所述输入数据和所述校验参数至校验单元,得到校验结果;
检测并确认所述校验结果与标准结果一致,输出测试通过;其中,所述标准结果基于所述输入数据和所述校验参数产生。
2.根据权利要求1所述的方法,其特征在于,
所述获取校验参数和输入数据,包括:
获取测试任务;
获取与所述测试任务对应的校验参数,基于所述测试任务生成对应的输入数据。
3.根据权利要求2所述的方法,其特征在于,
所述获取测试任务以及对应的校验参数,包括:
构建参数结构体和校验类;其中,所述参数结构体包含所述校验算法所需要的校验参数,所述校验类用于定义所述测试任务;
基于所述测试任务确定检验模式;
将所述参数结构体中与所述校验模式相对应的校验参数,例化至所述校验类中。
4.根据权利要求3所述的方法,其特征在于,
所述构建参数结构体和校验类,包括:
基于UVM框架构建所述参数结构体和所述校验类。
5.根据权利要求4所述的方法,其特征在于,
所述方法还包括:
基于所述UVM框架构建标准校验函数;
利用所述标准校验函数对所述输入数据和所述检验参数进行校验运算,得到所述标准结果。
6.根据权利要求1所述的方法,其特征在于,
所述检测并确认所述校验结果与标准结果一致之前,还包括:
预存所述标准结果。
7.根据权利要求1所述的方法,其特征在于,
所述输入所述输入数据和所述校验参数至校验单元,得到校验结果,包括:
写入所述输入数据至所述所述校验单元的数据寄存器,写入所述校验参数至所述校验单元的参数寄存器,写入所述校验单元输出的校验结果至所述校验单元的结果寄存器。
8.根据权利要求1-7任一项所述的方法,其特征在于,
所述校验算法为循环冗余校验算法。
9.根据权利要求8所述的方法,其特征在于,
所述基于所述测试任务生成对应的输入数据,包括:
获取初始输入数据;
检测并确认所述初始输入数据为ASC II码,将预设的ASC II标准码作为所述校验单元的输入数据;或
检测并确认所述初始输入数据为二进制数,生成随机数作为所述校验单元的输入数据。
10.一种校验算法的测试方法,其特征在于,所述方法包括:
运行测试用例,输入校验参数和输入数据至所述测试用例,得到校验结果与标准结果;
检测并确认所述校验结果与所述标准结果一致,输出测试通过。
11.一种芯片,其特征在于,所述芯片被配置为执行如权利要求1-10任一项所述方法的步骤。
12.一种计算机可读存储介质,其特征在于,存储有程序数据,所述程序数据能够被处理器执行以实现如权利要求1-10任一项所述方法的步骤。
13.一种家用电器,其特征在于,所述家用电器包括如权利要求11所述的芯片,或所述家用电器包括如权利要求12所述的计算机可读存储介质。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010621761.4A CN111953354A (zh) | 2020-06-30 | 2020-06-30 | 校验算法的测试方法、芯片、存储介质和家用电器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010621761.4A CN111953354A (zh) | 2020-06-30 | 2020-06-30 | 校验算法的测试方法、芯片、存储介质和家用电器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111953354A true CN111953354A (zh) | 2020-11-17 |
Family
ID=73337817
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010621761.4A Pending CN111953354A (zh) | 2020-06-30 | 2020-06-30 | 校验算法的测试方法、芯片、存储介质和家用电器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111953354A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112345869A (zh) * | 2020-11-25 | 2021-02-09 | 武汉光庭信息技术股份有限公司 | 一种汽车电子设备测试方法、***、电子设备及存储介质 |
CN112418678A (zh) * | 2020-11-24 | 2021-02-26 | 深圳集智数字科技有限公司 | 一种工程质量测量方法、服务器和客户端 |
CN113566869A (zh) * | 2021-06-29 | 2021-10-29 | 东风电驱动***有限公司 | 一种车载仪表的外发信号自动校验方法及*** |
CN114328003A (zh) * | 2022-03-16 | 2022-04-12 | 宜科(天津)电子有限公司 | 通过crc硬件模块实现数据倒序处理的方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000348076A (ja) * | 1999-06-03 | 2000-12-15 | Sharp Corp | シミュレーション方法、シミュレーション装置および記録媒体 |
CN104111885A (zh) * | 2013-04-22 | 2014-10-22 | 腾讯科技(深圳)有限公司 | 接口测试结果的校验方法和装置 |
CN108427632A (zh) * | 2017-02-14 | 2018-08-21 | 腾讯科技(深圳)有限公司 | 自动测试方法及装置 |
CN108763981A (zh) * | 2018-05-15 | 2018-11-06 | 佛山市顺德区中山大学研究院 | 一种基于uvm的rfid阅读器验证平台及验证方法 |
CN110309052A (zh) * | 2019-05-22 | 2019-10-08 | 梁俊杰 | 一种数据校验方法以及相关设备 |
-
2020
- 2020-06-30 CN CN202010621761.4A patent/CN111953354A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000348076A (ja) * | 1999-06-03 | 2000-12-15 | Sharp Corp | シミュレーション方法、シミュレーション装置および記録媒体 |
CN104111885A (zh) * | 2013-04-22 | 2014-10-22 | 腾讯科技(深圳)有限公司 | 接口测试结果的校验方法和装置 |
CN108427632A (zh) * | 2017-02-14 | 2018-08-21 | 腾讯科技(深圳)有限公司 | 自动测试方法及装置 |
CN108763981A (zh) * | 2018-05-15 | 2018-11-06 | 佛山市顺德区中山大学研究院 | 一种基于uvm的rfid阅读器验证平台及验证方法 |
CN110309052A (zh) * | 2019-05-22 | 2019-10-08 | 梁俊杰 | 一种数据校验方法以及相关设备 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112418678A (zh) * | 2020-11-24 | 2021-02-26 | 深圳集智数字科技有限公司 | 一种工程质量测量方法、服务器和客户端 |
CN112345869A (zh) * | 2020-11-25 | 2021-02-09 | 武汉光庭信息技术股份有限公司 | 一种汽车电子设备测试方法、***、电子设备及存储介质 |
CN113566869A (zh) * | 2021-06-29 | 2021-10-29 | 东风电驱动***有限公司 | 一种车载仪表的外发信号自动校验方法及*** |
CN114328003A (zh) * | 2022-03-16 | 2022-04-12 | 宜科(天津)电子有限公司 | 通过crc硬件模块实现数据倒序处理的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111953354A (zh) | 校验算法的测试方法、芯片、存储介质和家用电器 | |
CN112380046B (zh) | 计算结果校验方法、***、装置、设备及存储介质 | |
US20140040841A1 (en) | Apparatus and method thereof for hybrid timing exception verification of an integrated circuit design | |
CN112947371B (zh) | 测试报文的仿真测试方法、装置及仿真测试设备 | |
US8453082B2 (en) | Soft error verification in hardware designs | |
US8438000B2 (en) | Dynamic generation of tests | |
CN114356683A (zh) | 覆盖率融合方法、装置、计算机设备及存储介质 | |
US9646252B2 (en) | Template clauses based SAT techniques | |
US20080244484A1 (en) | Circuit design verification system, method and medium | |
CN117435483A (zh) | 基于Formal工具的仿真验证激励生成方法、装置、介质及终端 | |
CN107678967B (zh) | 单元测试覆盖率生成方法、装置、可读存储介质及设备 | |
CN113706131B (zh) | 一种基于加密卡的区块链交易方法、装置和设备 | |
CN112631852B (zh) | 宏检查方法、装置、电子设备和计算机可读存储介质 | |
JP4899927B2 (ja) | テストパターン自動生成方法およびテストパターン自動生成プログラム | |
US7627842B1 (en) | Method and system for verification of circuits with encoded signals | |
Raik et al. | Automated design error debug using high-level decision diagrams and mutation operators | |
US7155378B2 (en) | Method for providing cycle-by-cycle ad HOC verification in a hardware-accelerated environment | |
JP3169930B2 (ja) | テストパタン自動生成装置及びテストパタン自動生成方法 | |
US7735035B1 (en) | Method and system for creating a boolean model of multi-path and multi-strength signals for verification | |
CN110763984A (zh) | 逻辑电路失效率确定方法、装置、设备及存储介质 | |
El-Medany | Reconfigurable CRC IP core design on xilinx spartan 3AN FPGA | |
JP4564689B2 (ja) | ハードウェア機能検証方法及びハードウェア機能検証装置 | |
El-Medany et al. | VHDL implmentation of a BCH minimum weight decoder for double error | |
US20230325570A1 (en) | Determining the location of safety mechanism within a circuit design | |
CN117369875A (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 |