CN105301480A - Soc芯片的测试方法 - Google Patents
Soc芯片的测试方法 Download PDFInfo
- Publication number
- CN105301480A CN105301480A CN201510800344.5A CN201510800344A CN105301480A CN 105301480 A CN105301480 A CN 105301480A CN 201510800344 A CN201510800344 A CN 201510800344A CN 105301480 A CN105301480 A CN 105301480A
- Authority
- CN
- China
- Prior art keywords
- test
- soc
- testing
- test procedure
- measured
- 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
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种SOC芯片的测试方法,其包括以下步骤:a.编写对应的测试程序,并初始化测试环境;b.加载测试程序至中央处理器;c.测试数据发生器根据加载的测试程序在系统函数库中调用对应的系统函数并生成测试事务列表;d.根据事务列表测试待测SOC芯片;e.判断待测SOC芯片的测试覆盖率。本发明的SOC芯片的测试方法能够很好地帮助验证工程师针对SOC芯片进行测试验证。在本发明实施例中验证工程师并不需要了解底层硬件的具体实施,验证工程师所编写的系统测试程序能够很好地移植到其它项目中,简化了测试过程,通用性强。
Description
技术领域
本发明涉及测试验证领域,更具体地涉及一种SOC芯片的测试方法及测试系统。
背景技术
SOC芯片设计完后最重要的环节在于验证,验证的主要任务是确保SOC芯片符合设计要求,保证设计的正确性。
在小规模SOC芯片的验证方法中,基本上都是先设定固定的场景,再在固定场景中产生激励信号,再将激励信号直接灌入进DUT(待测设备)中,然后通过芯片端口来检查芯片功能是否正确。这种直接向量测试(DirectVectorTest)运用在小的系统的中,能获得不错的覆盖率。
而在中大规模SOC芯片的验证方法中,目前常用的验证方法是VMM(VerificationMethodologyManual)。它是一种事务级(TransactionLevel)的验证方法。VMM验证系统的架构如图1所示,通过配置生成器和驱动器的约束条件来约束生成器产生测试数据,然后将测试数据灌入DUT中,并通过检查器对结果进行自动比较。VMM验证方法可以实现受约束的随机验证(CRV,ConstrainedRandomVerification)。CRV是一种在设定的约束条件下进行随机的方法,它可以覆盖很多测试案例,特别是直接向量测试不能包含的那些意外的测试案例。测试结束的条件是以覆盖率检查器输出的覆盖率来确定的。当功能覆盖率、代码覆盖率均达到测试开始前设定的阈值以后停止随机验证。在自动比较过程中,如果遇到错误,则会在输出测试文件中打印出错误信息并停止仿真。VMM验证方法由于采用了继承基类的方式来扩展事务,所以VMM验证方法具有很好的移植性。而且可以在测试结果文件中实时地查看当前仿真进度。VMM验证方法实现了验证方法从信号级向事务级的转变,这大大简易了中大规模的SOC芯片的验证。
但是,直接向量测试(directvectortest)验证方法要求事先必须设计出芯片的各种工作场景,验证人员需要直接处理非常低层次的信号级信息。采用这种验证方法,验证人员工作量很大,并且一些意外场景、错误处理场景不可能一一考虑和验证到,很容易导致验证不全面。而VMM验证方法的数据交互和控制比较复杂,对多媒体芯片来说,操作待验证SOC芯片的方法相当复杂,不方便控制仿真流程,易用性低,而且因为其无法加入设备驱动,故无法验证复杂的应用场景和升级成系统级验证。
因此,有必要提供一种改进的SOC芯片测试方法来克服上述缺陷。
发明内容
本发明的目的是提供一种SOC芯片的测试方法,本发明的SOC芯片的测试方法能够很好地帮助验证工程师针对SOC芯片进行测试验证。在本发明实施例中验证工程师并不需要了解底层硬件的具体实施,验证工程师所编写的系统测试程序能够很好地移植到其它项目中,简化了测试过程,通用性强。
为实现上述目的,本发明提供了一种SOC芯片的测试方法,其包括以下步骤:a.编写对应的测试程序,并初始化测试环境;b.加载测试程序至中央处理器;c.测试数据发生器根据加载的测试程序在系统函数库中调用对应的系统函数并生成测试事务列表;d.根据事务列表测试待测SOC芯片;e.判断待测SOC芯片的测试覆盖率。
较佳地,所述步骤初始化测试环境具体为,根据设计文档和USB3.0协议初始化待测SOC芯片中的寄存器,且根据设计文档和USB3.0协议配置测试程序的描述符。
较佳地,所述描述符包括系统描述符、设备描述符及中断描述符。
较佳地,所述测试程序内的变量名及函数名的命名规则符合统一的规则。
较佳地,所述统一的规则包括微软命名规则与linux命名规则。
较佳地,所述测试事务列表为能被VMM结构的功能层识别的事务列表。
较佳地,在所述中央处理器内预设有设定阈值,所述步骤判断待测SOC芯片的测试覆盖率具体为:当覆盖率小于设定阈值时重复步骤b-d;当覆盖率大于或等于设定阈值时,结束测试。
较佳地,所述测试程序、系统函数库均预先存储于一固定存储设备中。
与现有技术相比,本发明的SOC芯片的测试方法由于采用了抽象化的事物列表来随机产生测试数据能够很好地帮助验证工程师针对SOC设计系统进行验证,验证工程师可以用灵活的高级语言如C/C++来编写测试程序,且在本发明实施例中验证工程师并不需要了解底层硬件的具体实施,从而验证工程师所编写的测试程序能够很好地移植到其它项目中。
通过以下的描述并结合附图,本发明将变得更加清晰,这些附图用于解释本发明的实施例。
附图说明
图1为本发明SOC芯片的测试方法的流程图。
具体实施方式
现在参考附图描述本发明的实施例,附图中类似的元件标号代表类似的元件。如上所述,本发明提供了一种SOC芯片的测试方法,本发明的SOC芯片的测试方法能够很好地帮助验证工程师针对SOC芯片进行测试验证。在本发明实施例中验证工程师并不需要了解底层硬件的具体实施,验证工程师所编写的系统测试程序能够很好地移植到其它项目中,简化了测试过程,通用性强。
请参考图1,图1为本发明SOC芯片的测试方法的流程图,如图所示,本发明SOC芯片的测试方法具体包括如下步骤:
步骤S101,编写对应的测试程序,并初始化测试环境;在本步骤中,始化测试环境具体为:根据设计文档和USB3.0协议初始化待测SOC芯片中的寄存器,且根据设计文档和USB3.0协议配置测试程序的描述符,以为后续测试步骤做准备。其中,所述描述符包括系统描述符、设备描述符及中断描述符,当然在本发明的具体实施方式中,并不限于这几类描述符,其它可能用到的描述符均需进行配置。另外,所述测试程序内的变量名、函数名的命名规则符合统一的规则,所述统一的规则包括微软命名规则、linux命名规则;也即是,所述测试程序内的变量名、函数名的命名规则均符合微软命名规则,或均符合linux命名规则,以保证系统函数配置器能够准确的调用系统函数;再有,所述设计文档是指对待测SOC芯片进行测试的具体项目,该测试的具体项目在测试之前已编辑好并生成所述设计文档。
步骤S102,加载测试程序至中央处理器;在本步骤中,所述中央处理器根据加载的测试程序而产生相应的测试命令,并将所述测试命令发送至待测SOC芯片,以在后续步骤中对待测SOC进行测试;其中,在所述中央处理器内预设有设定阈值;所述设定阈值的取值可以根据具体的待测SOC芯片而设定,以便于测试不同的SOC芯片。
步骤S103,测试数据发生器根据加载的测试程序在系统函数库中调用对应的系统函数并生成测试事务列表;在本步骤中,将随机组合测试命令,产生事物列表;所述测试事务列表为能被VMM结构的功能层识别的事务列表。且,其中,所述测试程序、系统函数库均预先存储于一固定存储设备中。
步骤S104,根据事务列表测试待测SOC芯片;在本步骤中,所述事务列表中还包括有测试顺序,其中,测试顺序包括:顺序执行、倒序执行及随机执行;在运行动作测试列表时,具体是按顺序执行、倒序执行还是随机执行可由测试人员在测试开始前进行指定。
步骤S105,判断待测SOC芯片的测试覆盖率;在本步骤中,当判断测试覆盖率小于设定阈值时重复执行步骤S102-S104,直到测试覆盖率大于或等于设定阈值;而当判测试断覆盖率大于或等于设定阈值时,结束测试;从而保证了测试的覆盖率达到设定目标,以确保测试的准确性。
本发明的SOC芯片的测试方法由于采用了抽象化的事物列表来随机产生测试数据能够很好地帮助验证工程师针对SOC设计系统进行验证,验证工程师可以用灵活的高级语言如C/C++来编写测试程序,且在本发明实施例中验证工程师并不需要了解底层硬件的具体实施,从而验证工程师所编写的测试程序能够很好地移植到其它项目中,简化了测试过程,通用性强;而且当测试覆盖率达不到设定阈值时,将反复对待测SOC芯片进行测试,保证了测试的准确性。
以上结合最佳实施例对本发明进行了描述,但本发明并不局限于以上揭示的实施例,而应当涵盖各种根据本发明的本质进行的修改、等效组合。
Claims (8)
1.一种SOC芯片的测试方法,其特征在于,包括以下步骤:
a.编写对应的测试程序,并初始化测试环境;
b.加载测试程序至中央处理器;
c.测试数据发生器根据加载的测试程序在系统函数库中调用对应的系统函数并生成测试事务列表;
d.根据事务列表测试待测SOC芯片;
e.判断待测SOC芯片的测试覆盖率。
2.如权利要求1所述的SOC芯片的测试方法,其特征在于,所述步骤初始化测试环境具体为,根据设计文档和USB3.0协议初始化待测SOC芯片中的寄存器,且根据设计文档和USB3.0协议配置测试程序的描述符。
3.如权利要求2所述的SOC芯片的测试方法,其特征在于,所述描述符包括系统描述符、设备描述符及中断描述符。
4.如权利要求1所述的SOC芯片的测试方法,其特征在于,所述测试程序内的变量名及函数名的命名规则符合统一的规则。
5.如权利要求4所述的SOC芯片的测试方法,其特征在于,所述统一的规则包括微软命名规则与linux命名规则。
6.如权利要求1所述的SOC芯片的测试方法,其特征在于,所述测试事务列表为能被VMM结构的功能层识别的事务列表。
7.如权利要求1所述的SOC芯片的测试方法,其特征在于,在所述中央处理器内预设有设定阈值,所述步骤判断待测SOC芯片的测试覆盖率具体为:
当覆盖率小于设定阈值时重复步骤b-d;
当覆盖率大于或等于设定阈值时,结束测试。
8.如权利要求1所述的SOC芯片的测试方法,其特征在于,所述测试程序、系统函数库均预先存储于一固定存储设备中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510800344.5A CN105301480A (zh) | 2015-11-19 | 2015-11-19 | Soc芯片的测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510800344.5A CN105301480A (zh) | 2015-11-19 | 2015-11-19 | Soc芯片的测试方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105301480A true CN105301480A (zh) | 2016-02-03 |
Family
ID=55198974
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510800344.5A Pending CN105301480A (zh) | 2015-11-19 | 2015-11-19 | Soc芯片的测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105301480A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107066637A (zh) * | 2016-08-31 | 2017-08-18 | 西安飞行自动控制研究所 | 一种基于生产验证组件和消费验证组件的验证方法 |
CN108572312A (zh) * | 2018-04-12 | 2018-09-25 | 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) | SoC芯片测试方法、装置、系统和SoC芯片测试验证板 |
CN109270439A (zh) * | 2018-11-05 | 2019-01-25 | 郑州云海信息技术有限公司 | 一种芯片测试方法、装置、设备及介质 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030011396A1 (en) * | 2001-07-12 | 2003-01-16 | Ryoichi Takagi | Semiconductor device and test system therefor |
CN1987821A (zh) * | 2006-11-14 | 2007-06-27 | 无敌科技(西安)有限公司 | 一种实现单元测试的方法及系统 |
CN101196841A (zh) * | 2006-12-07 | 2008-06-11 | 上海华虹Nec电子有限公司 | 实现soc芯片中多任务多flash同时测试的方法 |
CN101196553A (zh) * | 2006-12-04 | 2008-06-11 | 上海华虹Nec电子有限公司 | 提高soc芯片测试效率的方法 |
CN101777507A (zh) * | 2010-01-04 | 2010-07-14 | 浪潮电子信息产业股份有限公司 | 一种对复杂控制类芯片的随机测试方法 |
CN101833606A (zh) * | 2010-03-30 | 2010-09-15 | 连志斌 | 一种集成电路设计验证方法 |
CN102176702A (zh) * | 2011-02-18 | 2011-09-07 | 威盛电子股份有限公司 | 测试系统及测试方法 |
CN102402628A (zh) * | 2010-09-07 | 2012-04-04 | 无锡中星微电子有限公司 | 一种生成SoC验证平台的方法及系统 |
CN102591757A (zh) * | 2011-01-05 | 2012-07-18 | 上海华虹集成电路有限责任公司 | 基于vmm的ic-usb接口模块验证方法及验证环境平台 |
CN102902834A (zh) * | 2011-07-29 | 2013-01-30 | 炬力集成电路设计有限公司 | 一种soc芯片的验证方法及系统 |
CN102955727A (zh) * | 2011-08-31 | 2013-03-06 | 北京中电华大电子设计有限责任公司 | 一种802.11n无线网卡中固件仿真模型的处理方法 |
CN104142876A (zh) * | 2013-05-06 | 2014-11-12 | 上海华虹集成电路有限责任公司 | Usb设备控制器模块功能验证方法及验证环境平台 |
CN104572383A (zh) * | 2014-11-28 | 2015-04-29 | 深圳市芯海科技有限公司 | 一种基于ate的mcu/soc芯片的测试方法 |
-
2015
- 2015-11-19 CN CN201510800344.5A patent/CN105301480A/zh active Pending
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030011396A1 (en) * | 2001-07-12 | 2003-01-16 | Ryoichi Takagi | Semiconductor device and test system therefor |
CN1987821A (zh) * | 2006-11-14 | 2007-06-27 | 无敌科技(西安)有限公司 | 一种实现单元测试的方法及系统 |
CN101196553A (zh) * | 2006-12-04 | 2008-06-11 | 上海华虹Nec电子有限公司 | 提高soc芯片测试效率的方法 |
CN101196841A (zh) * | 2006-12-07 | 2008-06-11 | 上海华虹Nec电子有限公司 | 实现soc芯片中多任务多flash同时测试的方法 |
CN101777507A (zh) * | 2010-01-04 | 2010-07-14 | 浪潮电子信息产业股份有限公司 | 一种对复杂控制类芯片的随机测试方法 |
CN101833606A (zh) * | 2010-03-30 | 2010-09-15 | 连志斌 | 一种集成电路设计验证方法 |
CN102402628A (zh) * | 2010-09-07 | 2012-04-04 | 无锡中星微电子有限公司 | 一种生成SoC验证平台的方法及系统 |
CN102591757A (zh) * | 2011-01-05 | 2012-07-18 | 上海华虹集成电路有限责任公司 | 基于vmm的ic-usb接口模块验证方法及验证环境平台 |
CN102176702A (zh) * | 2011-02-18 | 2011-09-07 | 威盛电子股份有限公司 | 测试系统及测试方法 |
CN102902834A (zh) * | 2011-07-29 | 2013-01-30 | 炬力集成电路设计有限公司 | 一种soc芯片的验证方法及系统 |
CN102955727A (zh) * | 2011-08-31 | 2013-03-06 | 北京中电华大电子设计有限责任公司 | 一种802.11n无线网卡中固件仿真模型的处理方法 |
CN104142876A (zh) * | 2013-05-06 | 2014-11-12 | 上海华虹集成电路有限责任公司 | Usb设备控制器模块功能验证方法及验证环境平台 |
CN104572383A (zh) * | 2014-11-28 | 2015-04-29 | 深圳市芯海科技有限公司 | 一种基于ate的mcu/soc芯片的测试方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107066637A (zh) * | 2016-08-31 | 2017-08-18 | 西安飞行自动控制研究所 | 一种基于生产验证组件和消费验证组件的验证方法 |
CN108572312A (zh) * | 2018-04-12 | 2018-09-25 | 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) | SoC芯片测试方法、装置、系统和SoC芯片测试验证板 |
CN109270439A (zh) * | 2018-11-05 | 2019-01-25 | 郑州云海信息技术有限公司 | 一种芯片测试方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109669873B (zh) | 用户界面自动测试方法及装置、电子设备及存储介质 | |
US10007492B2 (en) | System and method for automatically generating device drivers for run time environments | |
CN109902005B (zh) | 一种自动化测试的方法和系统 | |
CN110532185B (zh) | 测试方法、装置、电子设备和计算机可读存储介质 | |
CN103678067A (zh) | 一种智能卡掉电测试方法、测试设备和被测设备 | |
US20140032969A1 (en) | Post-silicon validation using a partial reference model | |
CN111382077B (zh) | 应用程序崩溃原因定位方法、装置、电子设备及存储介质 | |
CN105301480A (zh) | Soc芯片的测试方法 | |
CN113282492A (zh) | 一种操作系统内核形式化验证方法 | |
CN116069635A (zh) | Soc系统的测试方法、装置、计算机设备及存储介质 | |
CN109471693A (zh) | 将专有组件映射到跨平台开发系统的方法、介质及设备 | |
CN114218882A (zh) | 一种SoC芯片检验方法、装置及相关设备 | |
US20150019852A1 (en) | Verification method for system execution environment | |
CN111176757B (zh) | 基于JTAG的SoC启动方法和装置 | |
CN116719729B (zh) | 通用验证平台、通用验证方法、介质及电子设备 | |
CN117076330A (zh) | 一种访存验证方法、系统、电子设备及可读存储介质 | |
CN113672260B (zh) | 一种处理器cpu初始化方法 | |
CN111324537A (zh) | 基于测试脚本的测试方法、装置及计算机设备 | |
CN109902001A (zh) | 对未初始化变量的检测方法及终端设备 | |
US20220058109A1 (en) | Method for debugging computer program, device employing method, and storage medium | |
CN115562931A (zh) | 处理器调试模块验证方法、装置、电子设备和存储介质 | |
CN110096888B (zh) | 一种加快验证及分析smm安全隐患的方法及系统 | |
CN113986744A (zh) | 一种分库分表组件的测试方法、装置及存储介质 | |
CN114265786A (zh) | 自动化测试方法、装置,计算机设备及可读存储介质 | |
CN116775202A (zh) | 模糊测试方法、装置、介质、电子设备及计算机程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160203 |