(19)国家知识产权局
(12)发明 专利
(10)授权公告 号
(45)授权公告日
(21)申请 号 202210941533.4
(22)申请日 2022.08.08
(65)同一申请的已公布的文献号
申请公布号 CN 114996077 A
(43)申请公布日 2022.09.02
(73)专利权人 济南新语软件科技有限公司
地址 250000 山东省济南市中国 (山 东) 自
由贸易试验区济南片区新泺大街 1166
号奥盛大厦3号楼 2534-53
(72)发明人 易敏 张挺
(74)专利代理 机构 成都行之智 信知识产权代理
有限公司 5125 6
专利代理师 宋海霞
(51)Int.Cl.
G06F 11/26(2006.01)G06F 9/455(2006.01)
G06F 9/50(2006.01)
(56)对比文件
CN 113822004 A,2021.12.21
CN 102183759 A,201 1.09.14
CN 113630280 A,2021.1 1.09
CN 112861468 A,2021.0 5.28
CN 113032963 A,2021.0 6.25
CN 106528061 A,2017.0 3.22
CN 112580295 A,2021.0 3.30
CN 112257362 A,2021.01.2 2
US 2008306721 A1,20 08.12.11
沈英哲.可重构计算系统中软硬件代码划分
技术研究. 《中国博士学位 论文全文数据库信息
科技辑(月刊)》 .20 07,
审查员 王文武
(54)发明名称
一种多核并行仿真方法及实现多核并行仿
真的平台架构
(57)摘要
本发明公开了一种多核并行仿真方法及实
现多核并行仿真的平台架构, 涉及芯片仿真技术
领域。 该仿真方法包括: 根据设计代码和验证代
码, 将芯片仿真任务一分为二, 得到设计代码仿
真任务和验证代码仿真任务; 将设计代码仿真任
务和验证代码仿真任务分别在不同的CPU核上执
行; 同时, 将验证代码仿真任务进一步分配到多
个CPU核上执行; 各个CP U核间采用多线 程并行方
式执行仿真任务。 该仿真方法还包括: 将设计代
码仿真任务中设计代码转换成验证代码, 得到转
换后的验证代码; 将转换后的验证代码分配到新
的CPU核上执行。 该平台架构包括设计仿真模块
和验证仿真模块。 本发明实现多核并行验证, 进
行软件仿真加速, 提升芯片仿真验证速度和效
率。
权利要求书2页 说明书8页 附图2页
CN 114996077 B
2022.11.01
CN 114996077 B
1.一种多 核并行仿真方法, 其特 征在于, 该仿真方法包括:
根据设计代码和验证代码, 将芯片仿真任务一分为二, 得到设计代码仿真任务和验证
代码仿真任务;
将所述设计代码仿真任务和验证代码仿真任务分别在不同的CPU 核上执行;
同时, 将所述验证代码仿真任务进一 步分配到多个CPU 核上多线程并行 执行;
该仿真方法还 包括:
将所述设计代码仿真任务中设计代码转换成验证代码, 得到转换后的验证代码;
将所述转换后的验证代码分配到新的CPU 核上执行;
所述设计代码仿真任务和多个验证代码仿真子任务的仿真执行是通过将不同的验证
组件分别执 行在不同的线程中来实现, 且各验证组件之间通过通信管道进行异步 通信;
所述线程包括8种类型的线程, 分别为仿真主线程、 验证平台主线程、 参考模型线程、 存
储模型线程、 驱动软件线程、 激励线程、 结果比较线程和仿真模型线程;
所述验证组件包括12种类型的验证组件, 分别为系统模型组件、 行为级参考模型组件、
IP仿真模型组件、 寄存器组件、 软件引擎组件、 记分牌组件、 功能覆盖率组件、 随机激励组
件、 流量调度组件、 比较 器组件、 总线功能模型组件和故障注入组件;
所述验证组件与线程的分配关系为:
所述总线功能模型组件执 行在仿真主 线程中;
所述系统模型组件、 行为级参考模型组件、 记分牌组件和功能覆盖率组件执行在参考
模型线程中;
所述寄存器组件和功能覆盖率组件执 行在存储模型线程中;
所述软件引擎组件执 行在驱动软件线程中;
所述功能覆盖率组件、 随机激励组件、 流量调度组件和故障注入组件执行在激励线程
中;
所述功能覆盖率组件和比较 器组件执 行在结果比较线程中;
所述IP仿真模型组件和功能覆盖率组件执 行在仿真模型线程中。
2.根据权利要求1所述的一种 多核并行仿真方法, 其特征在于, 将所述验证代码仿真任
务进一步分配到多个CPU 核上多线程并行 执行, 包括:
将所述验证代码仿真任务划分为多个验证代码仿真子任务;
将多个验证代码仿真子任务分配到对应的多个CPU核上, 采用多CPU核、 多线程并行方
式执行多个验证代码仿真子任务;
其中, 所述多CPU 核、 多线程并行 方式指的是在多个CPU 核间采用多 线程并行 执行。
3.使用如权利要求1至2中任一所述的一种多核并行仿真方法实现多核并行仿真的平
台架构, 其特 征在于, 该平台架构包括设计仿真模块和验证仿真模块;
所述设计仿真模块, 用于运行Veri log设计代码, 执 行设计代码仿真任务;
所述验证仿真模块, 用于将验证代码仿真任务分配到多个CPU核上, 采用多CPU核、 多线
程并行方式执行验证代码仿真任务;
该平台架构还包括转换代码模块, 用于将所述设计代码仿真任务中设计代码转换成验
证代码, 得到转换后的验证代码;
所述验证仿真模块, 还用于将转换后的验证代码分配到新的CPU 核上执行;权 利 要 求 书 1/2 页
2
CN 114996077 B
2所述设计代码仿真任务和多个验证代码仿真子任务的仿真执行是通过将不同的验证
组件分别执 行在不同的线程中来实现, 且各验证组件之间通过通信管道进行异步 通信;
所述线程包括8种类型的线程, 分别为仿真主线程、 验证平台主线程、 参考模型线程、 存
储模型线程、 驱动软件线程、 激励线程、 结果比较线程和仿真模型线程;
所述验证组件包括12种类型的验证组件, 分别为系统模型组件、 行为级参考模型组件、
IP仿真模型组件、 寄存器组件、 软件引擎组件、 记分牌组件、 功能覆盖率组件、 随机激励组
件、 流量调度组件、 比较 器组件、 总线功能模型组件和故障注入组件;
所述验证组件与线程的分配关系为:
所述总线功能模型组件执 行在仿真主 线程中;
所述系统模型组件、 行为级参考模型组件、 记分牌组件和功能覆盖率组件执行在参考
模型线程中;
所述寄存器组件和功能覆盖率组件执 行在存储模型线程中;
所述软件引擎组件执 行在驱动软件线程中;
所述功能覆盖率组件、 随机激励组件、 流量调度组件和故障注入组件执行在激励线程
中;
所述功能覆盖率组件和比较 器组件执 行在结果比较线程中;
所述IP仿真模型组件和功能覆盖率组件执 行在仿真模型线程中。
4.根据权利要求3所述的实现多核 并行仿真的平台架构, 其特征在于, 该平台架构还包
括验证平台监控模块, 用于验证平台架构的管理和监控各不同CPU核上各线程的仿真任务
执行情况。
5.根据权利要求3所述的实现多核 并行仿真的平台架构, 其特征在于, 所述验证仿真模
块包括:
子任务划分单 元, 用于将所述验证代码仿真任务划分为多个验证代码仿真子任务;
任务仿真运行单元, 用于将多个所述验证代码仿真子任务分配到对应的多个CPU核上,
采用多CPU 核、 多线程并行 方式执行多个所述验证代码仿真子任务;
其中, 所述多CPU 核、 多线程并行 方式指的是在多个CPU 核间采用多 线程并行 执行。
6.根据权利要求3所述的实现多核 并行仿真的平台架构, 其特征在于, 所述通信管道包
括随机激励组件与总线功能模型组件之 间的第一通信通道、 随机激励组件与行为级参考模
型组件之间的第二通信通道、 比较器组件与总线功 能模型组件之间的第三通信通道、 比较
器组件与行为级参考模型组件 之间的第四通信通道、 软件引擎组件与总线功能模型组件之
间的第五通信通道、 软件引擎组件与寄存器组件之间的第六通信通道、 行为级参考模型组
件与寄存器组件之 间的第七通信通道、 寄存器组件与总线功能模型组件之 间的第八通信通
道、 IP仿真模型组件与总线功能模型组件之间的第九通信通道。
7.根据权利要求6所述的实现多核 并行仿真的平台架构, 其特征在于, 所述通信管道的
数据交换采用数据包的形式。权 利 要 求 书 2/2 页
3
CN 114996077 B
3
专利 一种多核并行仿真方法及实现多核并行仿真的平台架构
文档预览
中文文档
13 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共13页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 13:09:05上传分享