【技术实现步骤摘要】
一种基于用户需求的芯片代码优化方法
[0001]本专利技术涉及芯片代码检查
,尤其涉及一种基于用户需求的芯片代码优化方法。
技术介绍
[0002]芯片代码一般指提高芯片智能性的可编程程序,是一种专门在工业环境下而设计的数字运算操作、逻辑循环判断类的代码。相比于传统元件来说,集成了代码的芯片智能性更高,通过运行代码实现通信、识别、报警等功能。
[0003]目前基于芯片代码的运行代码主要基于抽象语法树结构分析法,即将芯片代码的运行代码按照特定方式层次化生成多个代码分支,通过遍历多个代码分支之间的依存关系从而确定芯片代码的运行代码的异常。
[0004]基于抽象语法树结构分析法的代码检测确实具有很高的实用性,但当芯片代码的运行代码的代码量变高时,分化为多个代码分支的分化耗时高,会造成过多的资源浪费问题。
技术实现思路
[0005]本专利技术提供一种基于用户需求的芯片代码优化方法其主要目的在于克服传统方法测试芯片代码的运行代码需要调用过多测试资源,进而造成测试时间与资源消耗高的问题。
[0006]为实现上述目的,本专利技术提供的一种基于用户需求的芯片代码优化方法,包括:接收芯片代码的质量检测指令,根据所述质量检测指令对芯片代码的质量执行静态检测和动态检测。
[0007]其中对芯片代码的静态检测包括:根据所述质量检测指令获取芯片代码的运行代码,其中运行代码以指令表格式构建。
[0008]对所述运行代码执行代码切割,得到多个子代码,将每个子代码作为检测对象,生成检测节点 ...
【技术保护点】
【技术特征摘要】
1.一种基于用户需求的芯片代码优化方法,其特征在于,所述方法包括:接收芯片代码的质量检测指令,根据所述质量检测指令对芯片代码的质量执行静态检测和动态检测,其中对芯片代码的静态检测包括:根据所述质量检测指令获取芯片代码的运行代码,其中运行代码以指令表格式构建;对所述运行代码执行代码切割,得到多个子代码,将每个子代码作为检测对象,生成检测节点;按照检测节点对应的子代码在运行代码的顺序,对所有的检测节点执行首尾相连,得到运行代码的检测链表,其中检测链表由具有先后顺序的多个检测节点组成;基于抽象语法树结构分析法对所述检测链表执行语法语义检测,得到运行代码的语法语义检测结果,完成对芯片代码的静态检测;其中对芯片代码的动态检测包括:根据所述检测链表获取测试数据集,其中所述测试数据集的数据类型及数据值均来源于与检测链表预先绑定的测试数据库中;利用所述测试数据集依次测试检测链表,得到运行代码的动态测试结果;将所述语法语义检测结果和动态测试结果反馈至质量检测指令的发起人,完成对芯片代码的质量检测。2.如权利要求1所述的基于用户需求的芯片代码优化方法,其特征在于,所述质量检测指令的构建包括:接收芯片代码的检测人员发出的检测生成指令;根据所述检测生成指令触发芯片信息询问指令,并将芯片信息询问指令发送至检测人员;当芯片信息询问指令成功发送至检测人员后,接收检测人员填写的芯片代码信息,其中芯片代码信息包括芯片编号、芯片的运行代码的存储地址;将芯片代码信息封装至检测生成指令,得到所述质量检测指令。3.如权利要求2所述的基于用户需求的芯片代码优化方法,其特征在于,所述对所述运行代码执行代码切割,得到多个子代码,包括:获取所述运行代码的代码类型,其中代码类型包括JAVA、C语言、Python;获取与所述代码类型对应的切割表,其中切割表由标识符组成;根据所述切割表的标识符对运行代码执行切割,得到多个子代码。4.如权利要求3所述的基于用户需求的芯片代码优化方法,其特征在于,所述标识符包括:数据存储类标识符、逻辑运算类标识符、算术运算类标识符、跳转与返回标识符、置位与复位标识符、数据输出类标识符、数据调用类标识符。5.如权利要求4所述的基于用户需求的芯片代码优化方法,其特征在于,所述将每个子代码作为检测对象,生成检测节点,包括:获取封装代码,其中封装代码预先与测试数据库执行绑定,且测试数据库可根据封装代码的需求提供各种类型的测试数据;将每个子代码作为封装代码的对象执行封装,得到所述检测节点。6.如权利要求5所述的基于用户需求的芯片代码优化方法,其特征在于,所述按照检测节点对应的子代码在运行代码的顺序,对所有的检测节点执行首尾相连,得到运行代码的
检测链表,包括:获取每个检测节点对应的子代码在运行代码的位置,得到节点位置;根据每个检测节点的节点位置,对多个检测节点执行排序,得到排序链表;获取每个检测节点对应的子代码的注释信息,其中子...
【专利技术属性】
技术研发人员:张侠,
申请(专利权)人:青岛青软晶尊微电子科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。