[发明专利]一种同步多线程验证方法及装置有效
申请号: | 201710841123.1 | 申请日: | 2017-09-18 |
公开(公告)号: | CN109522047B | 公开(公告)日: | 2022-10-28 |
发明(设计)人: | 徐冉冉;熊涛;胡一凡;余红斌 | 申请(专利权)人: | 展讯通信(上海)有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/38 |
代理公司: | 北京兰亭信通知识产权代理有限公司 11667 | 代理人: | 赵永刚 |
地址: | 201203 上海市浦东新区浦东*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 同步 多线程 验证 方法 装置 | ||
1.一种同步多线程验证方法,其特征在于,包括:
构造面向多种竞争场景的指令库;
根据所述指令库生成一主线程激励和至少一干扰线程激励;
将所述主线程激励和所述干扰线程激励生成同步多线程用例,并灌入待测器件内进行验证。
2.根据权利要求1所述的方法,其特征在于,所述面向多种竞争场景的指令库包括至少两个分别占用特定执行单元的指令集;其中,所述指令集包括分别面向特定场景的序列。
3.根据权利要求1或2所述的方法,其特征在于,所述指令库包括面向定点运算的指令集、面向浮点运算的指令集、面向内存定点读取的指令集、面向内存定点存储的指令集、面向内存浮点读取的指令集、面向内存浮点存储的指令集、面向算术标志位的指令集和面向除所述多种竞争场景之外的其他场景的指令集中一种或者任意组合。
4.根据权利要求3所述的方法,其特征在于,所述根据所述指令库生成一主线程激励和至少一干扰线程激励包括:
获取同步多线程的用例信息;
根据所述用例信息配置主线程的随机参数和干扰线程的随机参数;
根据所述主线程的随机参数生成主线程激励;
根据所述干扰线程的随机参数生成干扰线程激励。
5.根据权利要求4所述的方法,其特征在于,所述根据所述主线程的随机参数生成主线程激励包括:
根据所述主线程的随机参数配置主线程随机序列总长度;
按所述主线程随机序列总长度从指令库中随机提取序列并将序列进行拼接生成主线程激励。
6.根据权利要求5所述的方法,其特征在于,所述根据所述干扰线程的随机参数生成干扰线程激励包括:
根据所述干扰线程的随机参数配置干扰线程序列个数;
按所述干扰线程序列个数从指令库中随机提取序列并将序列进行拼接生成干扰线程激励。
7.根据权利要求6所述的方法,其特征在于,所述将所述主线程激励和所述干扰线程激励生成同步多线程用例包括:
提取启动文件;
结合所述启动文件将所述主线程激励和所述干扰线程激励进行编译,并对应依次执行各线程的寄存器初始化、页表分配、以及根据各线程的ID调用对应线程的程序;
生成同步多线程用例。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
将所述同步多线程用例灌入被测器件;
检测验证场景;
根据所述验证场景判断预期场景是否发生,如果是,则结束验证,如果否,则继续检测验证场景。
9.一种同步多线程验证装置,其特征在于,包括:
指令库构造单元,用于构造面向多种竞争场景的指令库;
单线程激励生成单元,用于根据所述指令库生成一主线程激励和至少一干扰线程激励;
同步多线程用例生成单元,用于将所述主线程激励和所述干扰线程激励生成同步多线程用例;
验证单元,用于将所述同步多线程用例灌入待测器件内进行验证。
10.根据权利要求9所述的装置,其特征在于,所述单线程激励生成单元包括:
获取模块,用于获取同步多线程的用例信息;
配置模块,用于根据所述用例信息配置主线程的随机参数和干扰线程的随机参数;
第一激励生成模块,用于根据所述主线程的随机参数生成主线程激励;
第二激励生成模块,用于根据所述干扰线程的随机参数生成干扰线程激励。
11.根据权利要求10所述的装置,其特征在于,所述第一激励生成模块包括:
第一配置子模块,用于根据所述主线程的随机参数配置主线程随机序列总长度;
第一拼接子模块,用于按所述主线程随机序列总长度从指令库中随机提取序列并将序列进行拼接生成主线程激励。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于展讯通信(上海)有限公司,未经展讯通信(上海)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710841123.1/1.html,转载请声明来源钻瓜专利网。