CN113836825A - 神经网络处理器关键标准与验证芯片的应用方法 - Google Patents

神经网络处理器关键标准与验证芯片的应用方法 Download PDF

Info

Publication number
CN113836825A
CN113836825A CN202111309570.5A CN202111309570A CN113836825A CN 113836825 A CN113836825 A CN 113836825A CN 202111309570 A CN202111309570 A CN 202111309570A CN 113836825 A CN113836825 A CN 113836825A
Authority
CN
China
Prior art keywords
chip
model
verification
neural network
standard
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
CN202111309570.5A
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.)
Hangzhou Xiangyi Technology Co Ltd
Original Assignee
Hangzhou Xiangyi Technology 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 Hangzhou Xiangyi Technology Co Ltd filed Critical Hangzhou Xiangyi Technology Co Ltd
Priority to CN202111309570.5A priority Critical patent/CN113836825A/zh
Publication of CN113836825A publication Critical patent/CN113836825A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供神经网络处理器关键标准与验证芯片的应用方法,涉及芯片开发技术领域。该方法,包括以下步骤:建立用于模拟验证芯片的芯片功能的参考模型;根据验证芯片的参考模型建立芯片模型;将随机测试用的神经网络模型在参考模型中运行;将芯片的实际运行值从芯片中扫描出来;将从芯片中扫描出来的实际运行值与参考模型的标准参考值进行比较,通过确定参考模型与芯片模型的指令与数据的格式,获得对芯片模型的验证结果。通过获取验证芯片参考模型的神经网络功能的正确性,通过按任务形成对被验证芯片模型的激励数据,获得对芯片模型的验证结果,缩短了验证的开发时间和调试时间,提高验证芯片的测试效果。

Description

神经网络处理器关键标准与验证芯片的应用方法
技术领域
本发明涉及芯片开发技术领域,具体为神经网络处理器关键标准与验证芯片的应用方法。
背景技术
近年来,随着人工智能领域的兴起,越来越多的AI芯片公司出现在了人们的视野之中,AI芯片被广泛应用于金融、购物、安防、早教以及无人驾驶等领域,在人工智能领域,卷积神经网络尤其在图像处理领域有着非常广泛的应用,其具有训练方法简单、计算结构统一的特点,但是神经网络存储计算量都很大,而模拟验证是对模拟电路、混合信号电路、射频集成电路以及系统芯片功能进行验证的工作流程,人们逐渐意识到模拟验证的重要程度,关于模拟验证的技术讨论于2005年开始,当时,大型混合信号集成电路中的模拟部分变得十分复杂,以至于在模拟部分中尚大量存在功能错误的芯片被设计出来,这些问题都阻碍了集成电路正确工作。
传统仿真验证将仿真模型集成到环境中,通过编写测试激励对被测设计进行仿真验证,导致缺乏对兼容性的验证,其测试效果不佳。
发明内容
(一)解决的技术问题
针对现有技术的不足,本发明提供了神经网络处理器关键标准与验证芯片的应用方法,解决了验证芯片的测试效果不佳的问题。
(二)技术方案
为实现以上目的,本发明通过以下技术方案予以实现:神经网络处理器关键标准与验证芯片的应用方法,包括以下步骤:
S1:模型建立
建立用于模拟验证芯片的芯片功能的参考模型;
根据验证芯片的参考模型建立芯片模型;
建立神经网络模型与随机检测模型;
S2:芯片测试
将随机测试用的神经网络模型在参考模型中运行;
将芯片的实际运行值从芯片中扫描出来;
将从芯片中扫描出来的实际运行值与参考模型的标准参考值进行比较,从而获取验证芯片参考模型的神经网络功能的正确性;
S3:问题检测
通过确定参考模型与芯片模型的指令与数据的格式,针对指令或数据的格式,进而确定对指令或数据内容的修改方式;
通过随机检测模型建立检测点,按任务形成对被验证芯片模型的激励数据;
S4:获取验证结果
芯片模型根据接收的激励数据与参考模型响应,对S3中建立的检测点进行判读,获得对芯片模型的验证结果。
优选的,所述实际运行值和标准参考值相同时,则判断芯片功能正确;所述实际运行值和标准参考值不相同时,则判断芯片功能不正确。
优选的,所述修改方式包括更改、增加或缩短指令或数据格式中字段的内容。
优选的,所述检测点包括接口协议断言检测点、总线协议断言检测点、DUT功能点断言检测点。
优选的,所述实际运行值与标准参考值的获取方法包括以下步骤:(1)将神经网络模型的运行轨迹利用MD5算法进行压缩,以便得到一个标准参考值,(2)使芯片模型运行MD5算法程序,从而把随机测试激励的运行轨迹压缩成实际运行值。
优选的,所述MD5算法包括标准的MD5算法以及精简MD5算法。
优选的,所述运行轨迹是指激励在芯片或参考模型中运行结束时保存在所有可见寄存器和内置存储器的内容。
优选的,所述神经网络模型包括功能覆盖率和代码覆盖率。
优选的,所述指令包括由芯片模型向参考模型发送的命令和由参考模型向芯片模型发送的响应。
优选的,所述芯片模型为带有时序特性的仿真模型。
(三)有益效果
本发明提供了神经网络处理器关键标准与验证芯片的应用方法。具备以下有益效果:
本发明通过建立用于模拟验证芯片的芯片功能的参考模型,根据验证芯片的参考模型建立芯片模型,建立神经网络模型与随机检测模型,将从芯片中扫描出来的实际运行值与参考模型的标准参考值进行比较,从而获取验证芯片参考模型的神经网络功能的正确性,可以显著提升芯片测试的覆盖率和效率,通过确定参考模型与芯片模型的指令与数据的格式,针对指令或数据的格式修改,通过按任务形成对被验证芯片模型的激励数据,芯片模型根据接收的激励数据与参考模型响应,对检测点进行判读,获得对芯片模型的验证结果,缩短了验证的开发时间和调试时间,提高验证芯片的测试效果,实现支持上述指令集、算法库、标准及开发接口的验证芯片。
附图说明
图1为本发明的方法流程图;
图2为本发明的方法流程简图;
图3为本发明的验证平台结构简图;
图4为本发明的验证平台结构图;
图5为本发明的MD5算法运行流程图;
图6为本发明的MD5算法结构图;
图7为本发明的芯片模型结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例:
如图1-图7所示,本发明实施例提供神经网络处理器关键标准与验证芯片的应用方法,包括以下步骤:
S1:模型建立
建立用于模拟验证芯片的芯片功能的参考模型;
根据验证芯片的参考模型建立芯片模型,芯片模型为带有时序特性的仿真模型;
建立神经网络模型与随机检测模型;
S2:芯片测试
将随机测试用的神经网络模型在参考模型中运行;
将芯片的实际运行值从芯片中扫描出来;
将从芯片中扫描出来的实际运行值与参考模型的标准参考值进行比较,从而获取验证芯片参考模型的神经网络功能的正确性,可以显著提升芯片测试的覆盖率和效率;
实际运行值和标准参考值相同时,则判断芯片功能正确;实际运行值和标准参考值不相同时,则判断芯片功能不正确;
将神经网络模型的运行轨迹利用标准的MD5算法或精简MD5算法进行压缩,以便得到一个数据量较小的标准参考值,使芯片模型运行标准的MD5算法或精简MD5算法程序,从而把随机测试激励的运行轨迹压缩成实际运行值,不用MD5算法进行结果的压缩,这样结果数据量很大,从芯片扫描出来会花很长的时间,测试成本很大,MD5即Message-DigestAlgorithm 5(信息-摘要算法5),用于确保信息传输完整一致,是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现;
S3:问题检测
通过确定参考模型与芯片模型的指令与数据的格式,针对指令或数据的格式,进而确定对指令或数据内容的修改方式;
通过随机检测模型建立检测点,按任务形成对被验证芯片模型的激励数据,将断言检测点加入到验证环境中,通过使用兼容性产生机制将芯片模型快速的集成到验证环境中,缩短了验证的开发时间和调试时间;
其中,修改方式包括更改、增加或缩短指令或数据格式中字段的内容;
检测点包括接口协议断言检测点、总线协议断言检测点、DUT功能点断言检测点,编写代码时,我们总是会做出一些假设,断言就是用于在代码中捕捉这些假设,在某个特定点该表达式值为真,可以在任何时候启用和禁用断言验证,因此可以在测试时启用断言而在部署时禁用断言,同样,模型投入运行后,最终用户在遇到问题时可以重新启用断言,向DUT的外部接口部分加入的断言检测点,用于检查DUT的接口总线时序,同时可以对DUT的接口协议传输的事务进行检查时是否符合协议规范和自定义的要求,并且还可以对传输事务归纳为功能点对功能覆盖率进行统计,DUT(Design Under Test)微型架构是实现功能的划分,微型结构的关键组成部分之一是将其划分为数据和控制功能,一个非常简单的设计视图是将其视为传输功能,数据路径实现数据转换功能,控制路径控制实现配置数据转换的数据路径。
S4:获取验证结果
芯片模型根据接收的激励数据与参考模型响应,对S3中建立的检测点进行判读,获得对芯片模型的验证结果。
其中,运行轨迹是指激励在芯片或参考模型中运行结束时保存在所有可见寄存器和内置存储器的内容。
神经网络模型包括功能覆盖率和代码覆盖率,代码覆盖是软件测试中的一种度量,描述程序中源代码被测试的比例和程度,所得比例称为代码覆盖率,功能验证是电子设计自动化中验证数字电路是否与预定规范功能相符的一个验证过程,通常所说的功能验证、功能仿真是指不考虑实际器件的延迟时间,只考虑逻辑功能的一个流程。
指令包括由芯片模型向参考模型发送的命令和由参考模型向芯片模型发送的响应。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

Claims (10)

1.神经网络处理器关键标准与验证芯片的应用方法,其特征在于:包括以下步骤:
S1:模型建立
建立用于模拟验证芯片的芯片功能的参考模型;
根据验证芯片的参考模型建立芯片模型;
建立神经网络模型与随机检测模型;
S2:芯片测试
将随机测试用的神经网络模型在参考模型中运行;
将芯片的实际运行值从芯片中扫描出来;
将从芯片中扫描出来的实际运行值与参考模型的标准参考值进行比较,从而获取验证芯片参考模型的神经网络功能的正确性;
S3:问题检测
通过确定参考模型与芯片模型的指令与数据的格式,针对指令或数据的格式,进而确定对指令或数据内容的修改方式;
通过随机检测模型建立检测点,按任务形成对被验证芯片模型的激励数据;
S4:获取验证结果
芯片模型根据接收的激励数据与参考模型响应,对S3中建立的检测点进行判读,获得对芯片模型的验证结果。
2.根据权利要求1所述的神经网络处理器关键标准与验证芯片的应用方法,其特征在于:所述实际运行值和标准参考值相同时,则判断芯片功能正确;所述实际运行值和标准参考值不相同时,则判断芯片功能不正确。
3.根据权利要求1所述的神经网络处理器关键标准与验证芯片的应用方法,其特征在于:所述修改方式包括更改、增加或缩短指令或数据格式中字段的内容。
4.根据权利要求1所述的神经网络处理器关键标准与验证芯片的应用方法,其特征在于:所述检测点包括接口协议断言检测点、总线协议断言检测点、DUT功能点断言检测点。
5.根据权利要求1所述的神经网络处理器关键标准与验证芯片的应用方法,其特征在于:所述实际运行值与标准参考值的获取方法包括以下步骤:(1)将神经网络模型的运行轨迹利用MD5算法进行压缩,以便得到一个标准参考值,(2)使芯片模型运行MD5算法程序,从而把随机测试激励的运行轨迹压缩成实际运行值。
6.根据权利要求5所述的神经网络处理器关键标准与验证芯片的应用方法,其特征在于:所述MD5算法包括标准的MD5算法以及精简MD5算法。
7.根据权利要求5所述的神经网络处理器关键标准与验证芯片的应用方法,其特征在于:所述运行轨迹是指激励在芯片或参考模型中运行结束时保存在所有可见寄存器和内置存储器的内容。
8.根据权利要求1所述的神经网络处理器关键标准与验证芯片的应用方法,其特征在于:所述神经网络模型包括功能覆盖率和代码覆盖率。
9.根据权利要求1所述的神经网络处理器关键标准与验证芯片的应用方法,其特征在于:所述指令包括由芯片模型向参考模型发送的命令和由参考模型向芯片模型发送的响应。
10.根据权利要求1所述的神经网络处理器关键标准与验证芯片的应用方法,其特征在于:所述芯片模型为带有时序特性的仿真模型。
CN202111309570.5A 2021-11-06 2021-11-06 神经网络处理器关键标准与验证芯片的应用方法 Pending CN113836825A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111309570.5A CN113836825A (zh) 2021-11-06 2021-11-06 神经网络处理器关键标准与验证芯片的应用方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111309570.5A CN113836825A (zh) 2021-11-06 2021-11-06 神经网络处理器关键标准与验证芯片的应用方法

Publications (1)

Publication Number Publication Date
CN113836825A true CN113836825A (zh) 2021-12-24

Family

ID=78971149

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111309570.5A Pending CN113836825A (zh) 2021-11-06 2021-11-06 神经网络处理器关键标准与验证芯片的应用方法

Country Status (1)

Country Link
CN (1) CN113836825A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115879409A (zh) * 2022-12-02 2023-03-31 南京金阵微电子技术有限公司 验证方法、验证装置、介质及电子设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115879409A (zh) * 2022-12-02 2023-03-31 南京金阵微电子技术有限公司 验证方法、验证装置、介质及电子设备
CN115879409B (zh) * 2022-12-02 2023-09-19 南京金阵微电子技术有限公司 验证方法、验证装置、介质及电子设备

Similar Documents

Publication Publication Date Title
US5022028A (en) Software verification apparatus
US20190034318A1 (en) Hardware-Software Co-Verification for Debugging Firmware on a Hardware Simulator
CN101706750B (zh) 一种基于嵌入式模拟器的测试桩获取方法
US10203371B2 (en) Methods and systems for generating functional test patterns for manufacture test
CN113297073A (zh) 芯片中算法模块的验证方法、装置、设备及可读存储介质
CN114036013A (zh) 一种基于uvm的应答器芯片多模块同步验证平台和验证方法
CN110532182A (zh) 一种虚拟化平台的自动化测试方法及装置
CN113407393A (zh) 芯片验证方法、终端设备、验证平台以及存储介质
CN113836825A (zh) 神经网络处理器关键标准与验证芯片的应用方法
CN112860587B (zh) Ui自动测试方法和装置
CN117076330B (zh) 一种访存验证方法、系统、电子设备及可读存储介质
US20020072889A1 (en) Efficient array tracing in a logic simulator machine
US10929584B1 (en) Environmental modification testing for design correctness with formal verification
CN116663490A (zh) 一种异步存储芯片的验证方法、平台、装置及介质
CN116629173A (zh) 网络芯片的验证方法、装置、计算机设备及存储介质
CN116306479A (zh) 基于uvm的以太网phy通用验证平台及验证方法
US20230055523A1 (en) Method, apparatus, and storage medium for generating test cases
CN114661615B (zh) 一种fpga软件测试方法和设备
CN109656804A (zh) 自动化测试方法、设备、存储介质及装置
CN111338761B (zh) 一种51单片机虚拟中断控制器及实现方法
CN117112447B (zh) 一种数据传输方法、装置、电子设备及可读存储介质
US11397662B2 (en) Method for debugging computer program, device employing method, and storage medium
US20220066911A1 (en) Virtual machine for developing and testing target code for hardware designs
CN115373771A (zh) 一种ui界面字段数据的调试方法、系统及相关装置
CN115510782A (zh) 定位验证错误的方法、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication