一种基于神经元网络设计的功能验证方法

文档序号:10594240阅读:229来源:国知局
一种基于神经元网络设计的功能验证方法
【专利摘要】本发明公开一种基于神经元网络设计的功能验证方法,涉及IC设计验证领域,针对被测设计的内部突触和ram模块信息文档以及芯片初始化控制文档,使用多种自动化脚本完成验证测试向量的生产、运行和控制;使用神经元算法软件实现完成测试数据的参考数值的实时获取,对基于神经元网络设计的内部突触和ram模块内容进行实时对比。该方法实施方便,流程简单,高效稳定,可以大幅缩短为运行不同的神经元算法的基于神经元网络的设计搭建功能验证平台的开发周期,提高功能验证效率。
【专利说明】
一种基于神经元网络设计的功能验证方法
技术领域
[0001]本发明涉及IC设计验证领域,具体的说就是一种基于神经元网络设计的功能验证方法。
【背景技术】
[0002]目前,集成电路制造技术迅速进步,使神经元算法的硬件实现成为现实。基于神经元网络的芯片的设计规模大,复杂度高。随着集成电路复杂度的增加,验证难度也与日倶增。因此,提高验证工作的实现能力,已经成为基于神经元网络的集成电路开发的重点和难点。
[0003]另一方面,因为基于神经元网络的设计的特点,它的突触即ram模块的数目巨大,根据运行的神经元算法的不同,输入的不同,神经元网络突触的数值变化规律复杂,使用传统验证平台难以实现突触参考数值的确定,而且每一个基于神经元网络的设计都需要开发一个验证平台,来对其设计内部的突触和ram模块进行仿真测试,极大增加了验证设计成本。

【发明内容】

[0004]本发明针对现有技术存在的不足之处,提供了一种基于神经元网络设计的功能验证方法。
[0005]本发明所述一种基于神经元网络设计的功能验证方法,解决上述技术问题采用的技术方案如下:所述基于神经元网络设计的功能验证方法,针对被测(基于神经元网络)设计的内部突触和ram模块信息文档以及芯片初始化控制文档,使用多种自动化脚本完成验证测试向量的生产、运行和控制;使用神经元算法软件实现完成测试数据的参考数值的实时获取,对基于神经元网络设计的内部突触和ram模块内容进行实时对比。
[0006]优选的,所述基于神经元网络设计的功能验证方法,首先,根据被测设计内部ram模块的参数建立突触信息文档;然后,设计自动化脚本,用该自动化脚本根据突触信息文档生成测试向量;并根据使用的神经元算法,使用高级语言或脚步语言编写对应的神经元算法的软件实现模型;同时,设计功能验证时的输出信息控制脚本和运行脚本;最后,调试运行测试向量,完成验证过程。
[0007]优选的,所述被测设计内部ram模块通过使用神经元网络设计中预留的用于测试的后门程序进行直接访问。
[0008]优选的,所述自动化脚本,通过读取内部突触和ram模块信息文档生成针对各ram模块的特定的测试向量。
[0009]优选的,所述输出信息控制脚本通过预留控制端口,在测试过程中根据实际需要进行输出信息的分类控制。
[0010]优选的,所述运行脚本根据芯片初始化控制文档,自动生成针对基于神经元网络设计的初始环境配置命令并执行,之后执行测试向量,完成测试过程并生成测试报告。[0011 ]本发明的一种基于神经元网络设计的功能验证方法与现有技术相比具有的有益效果是:本发明使用脚本语言、高级语言或脚步语言和硬件描述语言进行验证方法的搭建,对神经元算法软件实现进行封装,一方面,对于设计人员理解验证平台没有语言门槛,便于设计人员和验证人员进行交流,另一方面,验证工程师和设计工程师分别使用各自领域的语言描述设计说明中的神经元算法,防止对设计说明理解的错误。通过该方法可以完成基于神经元网络的设计中的ram模块的测试,具有开发周期短、通用性强、自动化程度高、实施方便、高效稳定等优点,可以大幅度提高芯片验证效率。
【具体实施方式】
[0012]为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,对本发明所述一种基于神经元网络设计的功能验证方法进一步详细说明。
[0013]本发明针对神经元网络芯片的特点,通过对神经元网络芯片参数的配置,使芯片运行不同的神经元算法,提供了一种针对基于神经元网络设计的功能验证方法。该功能验证方法主要用于对基于神经元网络设计的内部突触及ram模块的读写功能进行测试;针对被测(基于神经元网络)设计的内部突触和ram模块信息文档以及芯片初始化控制文档,使用多种自动化脚本完成验证测试向量的生产、运行和控制;使用神经元算法软件实现完成测试数据的参考数值的实时获取,实现对基于神经元网络设计的内部突触和ram模块内容的实时对比。
[0014]这里,所述内部突触和ram模块信息文档根据基于神经元网络设计完成编写;所述芯片初始化控制文档根据基于神经元网络设计的初始化工作流程完成编写;所述多种自动化脚本包含测试向量生成脚本、输出信息控制脚本和运行脚本等。
[0015]实施例:
本实施例所述一种基于神经元网络设计的功能验证方法,首先,根据被测设计内部ram模块的参数建立突触信息文档;然后,设计自动化脚本,用该自动化脚本根据突触信息文档生成测试向量,若相关突触有特殊的数据处理过程,在测试向量中进行相应的调整;并根据使用的神经元算法,使用高级语言或脚步语言编写对应的神经元算法的软件实现模型;同时,设计功能验证时的输出信息控制脚本和运行脚本;最后,调试运行测试向量,完成验证过程。
[0016]所述基于神经元网络设计的功能验证方法中,所述被测设计内部ram模块能够通过使用神经元网络设计中预留的用于测试的后门程序进行直接访问;所述突触信息文档包含内部ram模块的地址、数据宽度、深度、读写特征、读写命令延迟以及读写相关顺序等信息。
[0017]所述自动化脚本使用perl/tcl/c-shell等各种脚本语言编写,使得本发明所述方法具有高度的通用性;所述自动化脚本(测试向量生成脚本),通过读取内部突触和ram模块信息文档生成针对各ram模块的特定的测试向量。所述输出信息控制脚本通过预留控制端口,在测试过程中根据实际需要进行输出信息的分类控制。所述运行脚本根据芯片初始化控制文档,自动生成针对基于神经元网络设计的初始环境配置命令并执行,之后执行测试向量,完成测试过程并生成测试报告。
[0018]在该基于神经元网络设计的功能验证方法中,所述神经元算法的软件实现由验证人员使用高级语言或脚步语言,根据其对使用的神经元算法编写;根据基于神经元网络设计中运行的神经元算法,更换神经元算法软件实现即可实现对不同运行状态的基于神经元网络设计的验证。
[0019]采用该基于神经元网络设计的功能验证方法,具体操作步骤如下:
第一,根据基于神经元网络设计的初始化工作过程,包括时钟信号稳定时间、reset信号使能时间、内部各特殊控制信号列表及时序等信息,设计神经元网络芯片初始化控制文档;
第二,根据基于神经元网络设计的内部ram模块的地址、数据宽度、深度、读写特征、读写命令延迟以及读写相关顺序信息,编写突触信息文档;
第三,根据使用的神经元算法,使用高级语言或脚步语言编写对应的神经元算法软件实现模型;
第四,编写自动化脚本,包括测试向量生成脚本,输出信息控制脚本和运行脚本;同时需要根据设计中预留的用于测试的后门程序编写符合相应时序要求的读写命令模板库;上述自动化脚本和命令模块库都是可以在不同基于神经元网络的设计中进行复用;
第五,使用测试向量生成脚本针对基于神经元网络的设计内部ram模块的信息文档,生成选定的要测试的突触或ram模块的测试向量;
第六,使用输出信息控制脚本预留的控制端口,设置当前测试需要输出到log文件的信息类别;
第七,使用运行脚本根据设计的芯片初始化控制文档生成对应的初始化命令序列,执行,之后运行测试向量,生成测试报告,完成本次测试过程。
[0020]本实施例所述基于神经元网络设计的功能验证方法,通过使用自动化脚本,实现自动化完成验证平台的搭建和运行工作;通过使用设计中预留的用于测试的后门程序进行直接访问命令,实现对各基于神经元网络的设计的突触和ram模块的读写测试;通过使用神经元算法的软件实现完成测试数据的参考数值的实时获取;通过使用内部突触和ram模块信息文档实现针对特定存储模块的正确测试;通过使用芯片初始化控制文档实现对不同设计的初始验证环境的配置。该方法可以大幅缩短为不同的基于神经元网络的设计搭建功能验证平台的开发周期,提高功能验证效率。
[0021]上述【具体实施方式】仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述【具体实施方式】,任何符合本发明的权利要求书的且任何所属技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。
【主权项】
1.一种基于神经元网络设计的功能验证方法,其特征在于,针对被测设计的内部突触和ram模块信息文档以及芯片初始化控制文档,使用多种自动化脚本完成验证测试向量的生产、运行和控制;使用神经元算法软件实现完成测试数据的参考数值的实时获取,对基于神经元网络设计的内部突触和ram模块内容进行实时对比。2.根据权利要求1所述一种基于神经元网络设计的功能验证方法,其特征在于,所述基于神经元网络设计的功能验证方法,首先,根据被测设计内部ram模块的参数建立突触信息文档;然后,设计自动化脚本,用该自动化脚本根据突触信息文档生成测试向量;并根据使用的神经元算法,使用高级语言或脚步语言编写对应的神经元算法的软件实现模型;同时,设计功能验证时的输出信息控制脚本和运行脚本;最后,调试运行测试向量,完成验证过程。3.根据权利要求2所述一种基于神经元网络设计的功能验证方法,其特征在于,所述被测设计内部ram模块通过使用神经元网络设计中预留的用于测试的后门程序进行直接访问。4.根据权利要求3所述一种基于神经元网络设计的功能验证方法,其特征在于,所述自动化脚本,通过读取内部突触和ram模块信息文档生成针对各ram模块的特定的测试向量。5.根据权利要求4所述一种基于神经元网络设计的功能验证方法,其特征在于,所述输出信息控制脚本通过预留控制端口,在测试过程中根据实际需要进行输出信息的分类控制。6.根据权利要求1所述一种基于神经元网络设计的功能验证方法,其特征在于,所述运行脚本根据芯片初始化控制文档,自动生成针对基于神经元网络设计的初始环境配置命令并执行,之后执行测试向量,完成测试过程并生成测试报告。
【文档编号】G06F17/50GK105956219SQ201610238885
【公开日】2016年9月21日
【申请日】2016年4月18日
【发明人】赵鑫鑫, 姜凯, 李朋
【申请人】浪潮集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1