CN113127019B - 验证方法及相关设备 - Google Patents
验证方法及相关设备 Download PDFInfo
- Publication number
- CN113127019B CN113127019B CN201911399702.0A CN201911399702A CN113127019B CN 113127019 B CN113127019 B CN 113127019B CN 201911399702 A CN201911399702 A CN 201911399702A CN 113127019 B CN113127019 B CN 113127019B
- Authority
- CN
- China
- Prior art keywords
- chip
- code
- configuration
- source data
- result
- 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.)
- Active
Links
- 238000012795 verification Methods 0.000 title claims abstract description 123
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000004088 simulation Methods 0.000 claims description 19
- 238000012544 monitoring process Methods 0.000 claims description 10
- 230000005284 excitation Effects 0.000 claims description 7
- 230000006870 function Effects 0.000 description 21
- 238000004590 computer program Methods 0.000 description 12
- 230000003993 interaction Effects 0.000 description 10
- 238000013507 mapping Methods 0.000 description 10
- 230000009286 beneficial effect Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000013461 design Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012356 Product development Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000008093 supporting effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例公开了一种验证方法及相关设备,应用于电子设备,所述电子设备包括:系统级芯片,所述方法包括:接收芯片更新请求,依据所述芯片更新请求对所述系统级芯片执行更新操作,得到待验证系统级芯片;接收源数据,依据所述源数据生成配置代码,所述配置代码包括:软件配置代码和硬件配置代码;依据所述配置代码运行所述待验证系统级芯片得到第一结果,获取所述预设的参考模型运行所述源数据得到的第二结果;比对所述第一结果与所述第二结果得到验证结果。实施本申请实施例具有提高系统级芯片验证效率的优点。
Description
技术领域
本申请涉及芯片技术领域,具体涉及一种验证方法及相关设备。
背景技术
系统级芯片(System-on-a-Chip,SOC)是一种集成电路的芯片,可以有效地降低电子产品或信息系统产品的开发成本,缩短开发周期,提高产品的竞争力,是目前最主要的产品开发方式。
随着科技的发展,对系统级芯片的验证要求也越来越高,目前的系统级芯片设计软硬件的联合仿真,在验证的过程中系统级芯片的仿真速度慢,因此整个验证过程效率较低。并且,目前在同一系统级芯片上对不同模块进行验证时,需要通过设计不同的验证方法进行验证,因此无法适应用户的多元化需求,整个验证流程复杂,用户体验度不高。
发明内容
本申请实施例提供了一种验证方法及相关设备,能够提高系统级芯片的验证效率以及用户体验度。
本申请实施例第一方面提供了一种验证方法,应用于电子设备,所述电子设备包括:系统级芯片,所述方法包括:
接收芯片更新请求,依据所述芯片更新请求对所述系统级芯片执行更新操作,得到待验证系统级芯片;
接收源数据,依据所述源数据生成配置代码,所述配置代码包括:软件配置代码和硬件配置代码;
依据所述配置代码运行所述待验证系统级芯片得到第一结果,获取所述预设的参考模型运行所述源数据得到的第二结果;
比对所述第一结果与所述第二结果得到验证结果。
本申请实施例第二方面提供了一种验证装置,应用于电子设备,所述电子设备包括:系统级芯片,所述验证装置包括:更新单元、随机激励单元、代码配置单元、监控单元、参考模型单元、结果比对单元,其中:
所述更新单元,用于接收芯片更新请求,依据所述芯片更新请求对所述系统级芯片执行更新操作,得到待验证系统级芯片;
所述随机激励单元,用于接收源数据;
所述代码配置单元,用于依据所述源数据生成配置代码,所述配置代码包括:软件配置代码和硬件配置代码;
所述控制单元,用于依据所述配置代码运行所述待验证系统级芯片得到第一结果;
所述监控单元,用于对所述待验证系统级芯片执行监控操作,接收所述待验证系统级芯片依据所述配置代码执行运算得到的第一结果;
所述参考模型单元,用于获取所述预设的参考模型运行所述源数据得到的第二结果;
所述结果比对单元,用于比对所述第一结果与所述第二结果得到验证结果。
第三方面,本申请实施例提供一种电子设备,包括控制器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述控制器执行,上述程序包括用于执行本申请实施例第一方面任一方法中的步骤的指令。
第四方面,本申请实施例提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第一方面任一方法中所描述的部分或全部步骤。
第五方面,本申请实施例提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面任一方法中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
实施本申请实施例,具有如下有益效果:
可以看出,通过本申请实施例所描述的验证方法及相关装置,电子设备接收芯片更新请求,依据所述芯片更新请求对所述系统级芯片执行更新操作,得到待验证系统级芯片;接收源数据,依据所述源数据生成配置代码,所述配置代码包括:软件配置代码和硬件配置代码;比对所述第一结果与所述第二结果得到验证结果。如此,依据芯片更新请求对系统级芯片进行更新,有利于通过更改芯片更新请求以实现多种验证方案,从而能够满足多元化的验证需求,进而提高了提高用户体验度;依据源数据生成软件配置代码和硬件配置代码,有利于保持软硬件配置的一致性,实现系统级芯片验证的软件硬件交互,通过源数据生成软件配置代码和硬件配置代码对系统级芯片进行配置,可以减少系统级芯片的代码量,有利于提高验证的效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种验证方法的流程示意图;
图2是本申请实施例提供的另一种验证方法的流程示意图;
图3是本申请实施例提供的另一种验证方法的流程示意图;
图4是本申请实施例提供的一种电子设备的结构示意图;
图5是本申请实施例提供的一种验证装置的功能单元组成框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结果或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
电子设备可以包括各种具有无线通信功能的手持设备、车载设备、可穿戴设备(例如智能手表、智能手环、计步器等)、计算设备或连接到无线调制解调器的其他处理设备,以及各种形式的用户设备(User Equipment,UE),移动台(Mobile Station,MS),终端设备(terminal device)等等。为方便描述,上面提到的设备统称为电子设备。
下面对本申请实施例进行详细介绍。
请参阅图1,图1是本申请实施例提供的一种验证方法的流程示意图,如图1所示,本申请实施例所描述的验证方法包括以下步骤:
步骤101、接收芯片更新请求,依据所述芯片更新请求对所述系统级芯片执行更新操作,得到待验证系统级芯片;
可选的,该芯片更新请求包括:目标功能模块和配置脚本,该系统级芯片可以包括多个功能模块,该目标功能模块可以为该多个功能模块中的一个或一个以上功能模块。
其中,依据该目标功能模块在该多个功能模块中确定非目标功能模块,获取配置脚本,从配置脚本中获取该非目标功能模块对应的替换脚本,将该非目标功能模块替换为该替换脚本对应的仿真模型,该仿真模型用于接收非目标功能模块的仿真请求、依据该仿真请求生成背景流并将该背景流返回至该目标功能模块,该背景流用于为目标功能模块模拟验证场景。
进一步地,该待验证系统级芯片包括:目标功能模块和多个仿真模型。
结合上述实施例,下面以一个例子进行说明:假设一个系统级芯片中包含:第一功能模块、第二功能模块、第三功能模块、第四功能模块,接收到芯片更新请求,从该芯片更新请求中获取目标功能模块为第三功能模块,则确定非目标功能模块为:第一功能模块、第二功能模块和第四功能模块,从该芯片更新请求中获取配置脚本,该配置脚本包括模块与替换脚本的映射关系,依据该模块与替换脚本的映射关系确定该第一模块对应的替换脚本为第一替换脚本,依据该模块与替换脚本的映射关系确定该第二模块对应的替换脚本为第二替换脚本,依据该模块与替换脚本的映射关系确定该第四模块对应的替换脚本为第四替换脚本,则依据第一替换脚本将该第一模块替换为该第一替换脚本对应的第一仿真模型,依据第二替换脚本将该第二模块替换为该第二替换脚本对应的第二仿真模型,依据该第四替换脚本将该第四模块替换为该第四替换脚本对应的第四仿真模型,得到该待验证系统级芯片,该待验证系统级芯片包括:第一仿真模型、第二仿真模型、第三功能模块和第四仿真模型。
步骤102、接收源数据,依据所述源数据生成配置代码,所述配置代码包括:软件配置代码和硬件配置代码;
可选的,该源数据可以包括随机源数据,该随机源数据可以包括通过随机约束产生的随机源数据,进一步地,该随机源数据可以包括:SystemVerilog约束源数据、Verilog约束源数据等等,在此不作限定。
其中,该SystemVerilog约束源数据为用SystemVerilog语言功能构建的一种带约束随机激励产生方法产生的源数据,其中,该SystemVerilog简称为SV语言,是一种编程语言,SV语言建立在Verilog语言的基础上将硬件描述语言(Hardware DescriptionLanguage,HDL)与硬件级验证语言(Hardware Verification Language,HVL)结合,因此,SV语言在抽象层次上提高了设计建模的能力,同时,SV语言集成了面向对象编程、动态线程和线程间通信等特性,全面综合了寄存器转换级电路(Real Time Logistics,RTL)设计、测试平台、断言和覆盖率,为系统级芯片的设计及验证提供强大的支持作用。
可选的,该软件配置代码用于启动该待验证系统级芯片的运行功能和终止该待验证系统级芯片的运行功能;该硬件配置代码用于控制待验证系统级芯片与仿真系统的数据交互。
步骤103、依据所述配置代码运行所述待验证系统级芯片得到第一结果,获取所述预设的参考模型运行所述源数据得到的第二结果;
可选的,依据该软件配置代码启动该待验证系统级芯片,依据该硬件配置代码实现该待验证系统级芯片内部数据交互,依据该硬件配置代码实现该待验证系统级芯片与外部设备的数据交互,其中,该数据交互可以包括:后门访问、信号监控等等,在此不作限定。
可选的,该参考模型的功能与该待验证系统级芯片的功能一致。
步骤104、比对所述第一结果与所述第二结果得到验证结果。
可选的,以该第二结果为基准对该第一结果进行比对,计算该第一结果与第二结果的相似度,确定该相似度为该验证结果。
进一步地,获取相似度范围与结论的映射关系,确定该相似度对应的目标相似度范围,依据该相似度范围与结论的映射关系确定该目标相似度范围对应的目标结论,将该目标结论发送至预设终端。
可选的,在依据所述第一结果与所述第二结果进行比对得到验证结果之后,依据该目标功能模块生成覆盖率获取请求,该覆盖率获取请求用于请求该目标功能模块返回目标覆盖率,其中,目标该覆盖率用于评测该待验证系统级芯片的验证完全度;依据该源数据和芯片更新请求确定验证类型,从预设数据库中获取该验证类型对应的历史覆盖率数据,合并该历史覆盖率与该目标覆盖率,得到合并后的覆盖率,建立该源数据与该验证类型的映射关系,建立该验证类型与该合并后的覆盖率的映射关系,将该源数据与该验证类型的映射关系、源数据、该验证类型与该合并后的覆盖率的映射关系、该验证类型、该合并后的覆盖率上传至该预设数据库。
在一个可能的示例中,所述依据所述源数据生成配置代码,包括:将所述源数据输入预设的源数据解析器,所述源数据解析器用于对所述源数据执行文本解析操作,得到所述源数据对应的软件配置文本和硬件配置文本;依据所述软件配置文本与所述硬件配置文本生成所述配置代码。
可选的,该源数据可以包括:芯片配置模式、数据激励等等,在此不作限定,该源数据可以以约定的文本方式存储,该文本方式可以包括:txt、xml、json等,在此不作限定。
其中,txt是微软在操作系统上附带的一种文本格式,是最常见的一种文件格式;xml是一种用于标记电子文件使其具有结构性的标记语言;json(JavaScriptObjectNotation,对象简谱)是一种轻量级的数据交换格式。
在一个可能的示例中,所述依据所述软件配置文本与所述硬件配置文本生成所述配置代码,包括:获取预设的代码脚本;将所述代码脚本和所述软件配置文本输入预设的代码产生器,以生成所述软件配置代码,并将所述代码脚本和所述硬件配置文本输入所述代码产生器,以生成所述硬件配置代码。
其中,该编程语言可以包括:python、perl等等,在此不作限定;Python是一种计算机程序设计语言。是一种面向对象的动态类型语言,perl是一种内部集成了正则表达式以及第三方代码库的计算机程序语言。
在一个可能的示例中,所述依据所述配置代码运行所述待验证系统级芯片,包括:对所述配置代码执行编译操作,得到所述配置代码对应的验证数据;将所述验证数据作为所述待验证系统级芯片的输入,启动所述待验证系统级芯片;依据所述验证数据运行所述待验证系统级芯片。
可选的,将该配置代码输入预设的代码编译器,得到该验证数据,该验证数据用于对该待验证系统级芯片进行验证。
在一个可能的示例中,所述系统级芯片包括:多个功能模块,所述芯片更新请求包括:目标功能模块和配置脚本,所述依据所述芯片更新请求对所述系统级芯片执行更新操作,包括:依据所述目标功能模块在所述多个功能模块中确定非目标功能模块;依据所述配置脚本将所述非目标功能模块更新为所述配置脚本对应的仿真模型。
可以看出,通过本申请实施例所描述的验证方法及相关装置,电子设备接收芯片更新请求,依据所述芯片更新请求对所述系统级芯片执行更新操作,得到待验证系统级芯片;接收源数据,依据所述源数据生成配置代码,所述配置代码包括:软件配置代码和硬件配置代码;比对所述第一结果与所述第二结果得到验证结果。如此,依据芯片更新请求对系统级芯片进行更新,有利于通过更改芯片更新请求以实现多种验证方案,从而能够满足多元化的验证需求,进而提高了提高用户体验度;依据源数据生成软件配置代码和硬件配置代码,有利于保持软硬件配置的一致性,实现系统级芯片验证的软件硬件交互,通过源数据生成软件配置代码和硬件配置代码对系统级芯片进行配置,可以减少系统级芯片的代码量,有利于提高验证的效率;通过将系统级芯片验证的第一结果与参考模型的第二结果进行比对生成验证结果,有利于提高验证结果的准确性。
请参阅图2,图2是本申请实施例提供的另一种验证方法的流程示意图,应用于电子设备,所述电子设备包括:系统级芯片,如图所示,本验证方法包括:
步骤201、接收芯片更新请求,依据所述芯片更新请求对所述系统级芯片执行更新操作,得到待验证系统级芯片;
步骤202、将源数据输入预设的源数据解析器,所述源数据解析器用于对所述源数据执行文本解析操作,得到所述源数据对应的软件配置文本和硬件配置文本;
步骤203、依据所述软件配置文本与所述硬件配置文本生成所述配置代码,所述配置代码包括:软件配置代码和硬件配置代码;
步骤204、依据所述配置代码运行所述待验证系统级芯片得到第一结果,获取所述预设的参考模型运行所述源数据得到的第二结果;
步骤205、比对所述第一结果与所述第二结果得到验证结果。
其中,上述步骤201-步骤205的具体描述可以参照上述图1所描述的验证方法的相应步骤,在此不再赘述。
可以看出,在本申请实施例中,电子设备接收芯片更新请求,依据所述芯片更新请求对所述系统级芯片执行更新操作,得到待验证系统级芯片;接收源数据,依据所述源数据生成配置代码,所述配置代码包括:软件配置代码和硬件配置代码;比对所述第一结果与所述第二结果得到验证结果。如此,依据芯片更新请求对系统级芯片进行更新,有利于通过更改芯片更新请求以实现多种验证方案,从而能够满足多元化的验证需求,进而提高了提高用户体验度;依据源数据生成软件配置代码和硬件配置代码,有利于保持软硬件配置的一致性,实现系统级芯片验证的软件硬件交互,通过源数据生成软件配置代码和硬件配置代码对系统级芯片进行配置,可以减少系统级芯片的代码量,有利于提高验证的效率;通过将系统级芯片验证的第一结果与参考模型的第二结果进行比对生成验证结果,有利于提高验证结果的准确性。
请参阅图3,图3是本申请实施例提供的另一种验证方法的流程示意图,应用于电子设备,所述电子设备包括:系统级芯片,如图所示,本验证方法包括:
步骤301、接收芯片更新请求,依据所述芯片更新请求对所述系统级芯片执行更新操作,得到待验证系统级芯片;
步骤302、接收源数据,依据所述源数据生成配置代码,所述配置代码包括:软件配置代码和硬件配置代码;
步骤303、对所述配置代码执行编译操作,得到所述配置代码对应的验证数据;
步骤304、将所述验证数据作为所述待验证系统级芯片的输入,启动所述待验证系统级芯片,依据所述验证数据运行所述待验证系统级芯片,得到第一结果;
步骤305、获取所述预设的参考模型运行所述源数据得到的第二结果;
步骤306、比对所述第一结果与所述第二结果得到验证结果。
其中,上述步骤301-步骤306的具体描述可以参照上述图1所描述的验证方法的相应步骤,在此不再赘述。
可以看出,在本申请实施例中,电子设备接收芯片更新请求,依据所述芯片更新请求对所述系统级芯片执行更新操作,得到待验证系统级芯片;接收源数据,依据所述源数据生成配置代码,所述配置代码包括:软件配置代码和硬件配置代码;比对所述第一结果与所述第二结果得到验证结果。如此,依据芯片更新请求对系统级芯片进行更新,有利于通过更改芯片更新请求以实现多种验证方案,从而能够满足多元化的验证需求,进而提高了提高用户体验度;依据源数据生成软件配置代码和硬件配置代码,有利于保持软硬件配置的一致性,实现系统级芯片验证的软件硬件交互,通过源数据生成软件配置代码和硬件配置代码对系统级芯片进行配置,可以减少系统级芯片的代码量,有利于提高验证的效率;通过将系统级芯片验证的第一结果与参考模型的第二结果进行比对生成验证结果,有利于提高验证结果的准确性。
请参阅图4,图4是本申请实施例提供的一种电子设备400的结构示意图,如图所示,所述电子设备400包括:应用处理器410、存储器420、通信接口430以及一个或多个程序421,其中,所述一个或多个程序421被存储在上述存储器420中,并且被配置由上述应用处理器410执行,所述一个或多个程序421包括用于执行以下步骤的指令:
接收芯片更新请求,依据所述芯片更新请求对所述系统级芯片执行更新操作,得到待验证系统级芯片;
接收源数据,依据所述源数据生成配置代码,所述配置代码包括:软件配置代码和硬件配置代码;
依据所述配置代码运行所述待验证系统级芯片得到第一结果,获取所述预设的参考模型运行所述源数据得到的第二结果;
比对所述第一结果与所述第二结果得到验证结果。
可以看出,通过本申请实施例所描述的验证方法及相关装置,电子设备接收芯片更新请求,依据所述芯片更新请求对所述系统级芯片执行更新操作,得到待验证系统级芯片;接收源数据,依据所述源数据生成配置代码,所述配置代码包括:软件配置代码和硬件配置代码;比对所述第一结果与所述第二结果得到验证结果。如此,依据芯片更新请求对系统级芯片进行更新,有利于通过更改芯片更新请求以实现多种验证方案,从而能够满足多元化的验证需求,进而提高了提高用户体验度;依据源数据生成软件配置代码和硬件配置代码,有利于保持软硬件配置的一致性,实现系统级芯片验证的软件硬件交互,通过源数据生成软件配置代码和硬件配置代码对系统级芯片进行配置,可以减少系统级芯片的代码量,有利于提高验证的效率;通过将系统级芯片验证的第一结果与参考模型的第二结果进行比对生成验证结果,有利于提高验证结果的准确性。
在一个可能的示例中,在所述依据所述源数据生成配置代码方面,所述程序中的指令具体用于执行以下操作:将所述源数据作为预设的源数据解析器的输入,所述源数据解析器用于对所述源数据执行文本解析操作,得到所述源数据对应的软件配置文本和硬件配置文本;依据所述软件配置文本与所述硬件配置文本生成所述配置代码。
在一个可能的示例中,在所述依据所述软件配置代码与所述硬件配置代码生成所述配置代码方面,所述程序中的指令具体用于执行以下操作:获取预设的代码脚本;获取预设的代码产生器,依据所述代码产生器、所述代码脚本和所述软件配置文本生成所述软件配置代码,依据所述代码产生器、所述代码脚本和所述硬件配置文本生成所述硬件配置代码。
在一个可能的示例中,在所述依据所述配置代码运行所述待验证系统级芯片方面,所述程序中的指令具体用于执行以下操作:对所述配置代码执行编译操作,得到所述配置代码对应的验证数据;将所述验证数据作为所述待验证系统级芯片的输入,启动所述待验证系统级芯片;依据所述验证数据运行所述待验证系统级芯片。
在一个可能的示例中,所述系统级芯片包括:多个功能模块,所述芯片更新请求包括:目标功能模块和配置脚本,在所述依据所述芯片更新请求对所述系统级芯片执行更新操作方面,所述程序中的指令具体用于执行以下操作:依据所述目标功能模块在所述多个功能模块中确定非目标功能模块;依据所述配置脚本将所述非目标功能模块更新为所述配置脚本对应的仿真模型。
上述主要从方法侧执行过程的角度对本申请实施例的方案进行了介绍。可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对电子设备进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个控制单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
图5是本申请实施例中所涉及的验证装置500的功能单元组成框图。该验证装置500,应用于电子设备,所述电子设备包括:系统级芯片,所述验证装置包括:更新单元501、随机激励单元502、代码配置单元503、控制单元504、监控单元505、参考模型单元506、结果比对单元507,其中:
所述更新单元501,用于接收芯片更新请求,依据所述芯片更新请求对所述系统级芯片执行更新操作,得到待验证系统级芯片;
所述随机激励单元502,用于接收源数据;
所述代码配置单元503,用于依据所述源数据生成配置代码,所述配置代码包括:软件配置代码和硬件配置代码;
所述控制单元504,用于依据所述配置代码运行所述待验证系统级芯片得到第一结果;
所述监控单元505,用于对所述待验证系统级芯片执行监控操作,接收所述待验证系统级芯片依据所述配置代码执行运算得到的第一结果;
所述参考模型单元506,用于获取所述预设的参考模型运行所述源数据得到的第二结果;
所述结果比对单元507,用于比对所述第一结果与所述第二结果得到验证结果。
在一可能的示例中,在所述依据所述源数据生成配置代码方面,所述代码配置单元503,具体用于:将所述源数据作为预设的源数据解析器的输入,所述源数据解析器用于对所述源数据执行文本解析操作,得到所述源数据对应的软件配置文本和硬件配置文本;依据所述软件配置文本与所述硬件配置文本生成所述配置代码。
在一可能的示例中,在所述依据所述软件配置代码与所述硬件配置代码生成所述配置代码方面,所述代码配置单元503,具体用于:获取预设的代码脚本;获取预设的代码产生器,依据所述代码产生器、所述代码脚本和所述软件配置文本生成所述软件配置代码,依据所述代码产生器、所述代码脚本和所述硬件配置文本生成所述硬件配置代码。
在一可能的示例中,在所述依据所述配置代码运行所述待验证系统级芯片方面,所述控制单元504,具体用于:对所述配置代码执行编译操作,得到所述配置代码对应的验证数据;将所述验证数据作为所述待验证系统级芯片的输入,启动所述待验证系统级芯片;依据所述验证数据运行所述待验证系统级芯片。
在一可能的示例中,所述系统级芯片包括:多个功能模块,所述芯片更新请求包括:目标功能模块和配置脚本,在所述依据所述芯片更新请求对所述系统级芯片执行更新操作方面,所述更新单元501,具体用于:依据所述目标功能模块在所述多个功能模块中确定非目标功能模块;所述配置脚本将所述非目标功能模块更新为所述配置脚本对应的仿真模型。
可以看出,通过本申请实施例所描述的验证方法及相关装置,电子设备接收芯片更新请求,依据所述芯片更新请求对所述系统级芯片执行更新操作,得到待验证系统级芯片;接收源数据,依据所述源数据生成配置代码,所述配置代码包括:软件配置代码和硬件配置代码;比对所述第一结果与所述第二结果得到验证结果。如此,依据芯片更新请求对系统级芯片进行更新,有利于通过更改芯片更新请求以实现多种验证方案,从而能够满足多元化的验证需求,进而提高了提高用户体验度;依据源数据生成软件配置代码和硬件配置代码,有利于保持软硬件配置的一致性,实现系统级芯片验证的软件硬件交互,通过源数据生成软件配置代码和硬件配置代码对系统级芯片进行配置,可以减少系统级芯片的代码量,有利于提高验证的效率;通过将系统级芯片验证的第一结果与参考模型的第二结果进行比对生成验证结果,有利于提高验证结果的准确性。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤,上述计算机包括电子设备。
本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括电子设备。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (6)
1.一种验证方法,其特征在于,应用于电子设备,所述电子设备包括:系统级芯片,所述方法包括:
接收芯片更新请求,依据所述芯片更新请求对所述系统级芯片执行更新操作,得到待验证系统级芯片;
接收源数据,依据所述源数据生成配置代码,所述配置代码包括:软件配置代码和硬件配置代码;
依据所述配置代码运行所述待验证系统级芯片得到第一结果,获取预设的参考模型运行所述源数据得到的第二结果;
比对所述第一结果与所述第二结果得到验证结果;
所述依据所述源数据生成配置代码,包括:将所述源数据输入预设的源数据解析器,所述源数据解析器用于对所述源数据执行文本解析操作,得到所述源数据对应的软件配置文本和硬件配置文本,依据所述软件配置文本与所述硬件配置文本生成所述配置代码;
所述依据所述软件配置文本与所述硬件配置文本生成所述配置代码,包括:获取预设的代码脚本,将所述代码脚本和所述软件配置文本输入预设的代码产生器,以生成所述软件配置代码,并将所述代码脚本和所述硬件配置文本输入所述代码产生器,以生成所述硬件配置代码。
2.根据权利要求1所述的方法,其特征在于,所述依据所述配置代码运行所述待验证系统级芯片,包括:
对所述配置代码执行编译操作,得到所述配置代码对应的验证数据;
将所述验证数据作为所述待验证系统级芯片的输入,启动所述待验证系统级芯片;
依据所述验证数据运行所述待验证系统级芯片。
3.根据权利要求1所述的方法,其特征在于,所述系统级芯片包括:多个功能模块,所述芯片更新请求包括:目标功能模块和配置脚本,所述依据所述芯片更新请求对所述系统级芯片执行更新操作,包括:
依据所述目标功能模块在所述多个功能模块中确定非目标功能模块;
依据所述配置脚本将所述非目标功能模块更新为所述配置脚本对应的仿真模型。
4.一种验证装置,其特征在于,应用于电子设备,所述电子设备包括:系统级芯片,所述验证装置包括:更新单元、随机激励单元、代码配置单元、控制单元、监控单元、参考模型单元、结果比对单元,其中:
所述更新单元,用于接收芯片更新请求,依据所述芯片更新请求对所述系统级芯片执行更新操作,得到待验证系统级芯片;
所述随机激励单元,用于接收源数据;
所述代码配置单元,用于依据所述源数据生成配置代码,所述配置代码包括:软件配置代码和硬件配置代码;
所述控制单元,用于依据所述配置代码运行所述待验证系统级芯片得到第一结果;
所述监控单元,用于对所述待验证系统级芯片执行监控操作,接收所述待验证系统级芯片依据所述配置代码执行运算得到的第一结果;
所述参考模型单元,用于获取预设的参考模型运行所述源数据得到的第二结果;
所述结果比对单元,用于比对所述第一结果与所述第二结果得到验证结果;
所述随机激励单元还用于:将所述源数据输入预设的源数据解析器,所述源数据解析器用于对所述源数据执行文本解析操作,得到所述源数据对应的软件配置文本和硬件配置文本,依据所述软件配置文本与所述硬件配置文本生成所述配置代码;
在所述依据所述软件配置文本与所述硬件配置文本生成所述配置代码方面,所述代码配置单元包括:获取预设的代码脚本,将所述代码脚本和所述软件配置文本输入预设的代码产生器,以生成所述软件配置代码,并将所述代码脚本和所述硬件配置文本输入所述代码产生器,以生成所述硬件配置代码。
5.根据权利要求4所述的装置,其特征在于,在所述依据所述配置代码运行所述待验证系统级芯片方面,所述控制单元具体用于:
对所述配置代码执行编译操作,得到所述配置代码对应的验证数据;
将所述验证数据作为所述待验证系统级芯片的输入,启动所述待验证系统级芯片;
依据所述验证数据运行所述待验证系统级芯片。
6.根据权利要求4所述的装置,其特征在于,所述系统级芯片包括:多个功能模块,所述芯片更新请求包括:目标功能模块和配置脚本,在所述依据所述芯片更新请求对所述系统级芯片执行更新操作方面,所述更新单元具体用于:
依据所述目标功能模块在所述多个功能模块中确定非目标功能模块;
依据所述配置脚本将所述非目标功能模块更新为所述配置脚本对应的仿真模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911399702.0A CN113127019B (zh) | 2019-12-30 | 2019-12-30 | 验证方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911399702.0A CN113127019B (zh) | 2019-12-30 | 2019-12-30 | 验证方法及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113127019A CN113127019A (zh) | 2021-07-16 |
CN113127019B true CN113127019B (zh) | 2024-05-03 |
Family
ID=76768148
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911399702.0A Active CN113127019B (zh) | 2019-12-30 | 2019-12-30 | 验证方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113127019B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116991355B (zh) * | 2023-08-09 | 2024-01-30 | 北京小鸟科技股份有限公司 | 修改和迭代脚本支持led驱动芯片的方法、系统及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016197768A1 (zh) * | 2016-01-04 | 2016-12-15 | 中兴通讯股份有限公司 | 芯片验证方法、装置及系统 |
CN110460617A (zh) * | 2019-08-23 | 2019-11-15 | 深圳市元征科技股份有限公司 | 机考考试系统及相关产品 |
-
2019
- 2019-12-30 CN CN201911399702.0A patent/CN113127019B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016197768A1 (zh) * | 2016-01-04 | 2016-12-15 | 中兴通讯股份有限公司 | 芯片验证方法、装置及系统 |
CN110460617A (zh) * | 2019-08-23 | 2019-11-15 | 深圳市元征科技股份有限公司 | 机考考试系统及相关产品 |
Non-Patent Citations (1)
Title |
---|
基于固件的系统芯片协同验证平台;李皓;李险峰;庞九凤;黄侃;郑衍松;佟冬;程旭;;计算机辅助设计与图形学学报(09);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113127019A (zh) | 2021-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10565442B2 (en) | Picture recognition method and apparatus, computer device and computer- readable medium | |
US9892223B1 (en) | System and method for designing system on chip (SoC) circuits by synchronizing a hierarchy of SMDPs | |
CN110390387A (zh) | 对深度学习应用所用资源进行评估 | |
Callou et al. | Energy consumption and execution time estimation of embedded system applications | |
CN107797913A (zh) | 一种实时系统的软件分析系统与方法 | |
CN105335875A (zh) | 购买力预测方法和装置 | |
CN110166276A (zh) | 一种帧同步异常的定位方法、装置、终端设备和介质 | |
CN112749081A (zh) | 用户界面测试方法及相关装置 | |
CN110532185A (zh) | 测试方法、装置、电子设备和计算机可读存储介质 | |
Muttillo et al. | Hepsycode-RT: A real-time extension for an ESL HW/SW co-design methodology | |
CN112241330A (zh) | 结合rpa和ai的流程处理方法、装置、设备及存储介质 | |
CN107909141A (zh) | 一种基于灰狼优化算法的数据分析方法及装置 | |
CN113127019B (zh) | 验证方法及相关设备 | |
CN114600111A (zh) | 机器学习增强型编译器 | |
CN108549654B (zh) | 一种基于图像处理的大数据分析方法 | |
CN109191078A (zh) | 一种流程业务建模方法、装置及设备 | |
CN104808982A (zh) | 应用的功能模拟开发方法和装置 | |
US8984457B2 (en) | System and method for a hybrid clock domain crossing verification | |
CN109032850A (zh) | 现场装置调试系统和现场装置调试方法 | |
KR20090065742A (ko) | 소프트웨어 개발 장치 및 그 방법 | |
CN116168403A (zh) | 医疗数据分类模型训练方法、分类方法、装置及相关介质 | |
CN113272813A (zh) | 定制数据流硬件模拟仿真方法、装置、设备及存储介质 | |
CN112667202A (zh) | Mda与bpmn相结合的软件设计方法和装置 | |
GB2365178A (en) | Reducing skew in signal distribution using balanced wire widths | |
Herrera et al. | An efficient joint analytical and simulation-based design space exploration flow for predictable multi-core systems |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |