| 【中文题名】 | 微处理器体系结构级测试程序自动生成关键技术研究 |
| 【英文题名】 | On Microprocessor Architecture-level Test Program Automatic Generation |
| 【学科专业】 | 电子科学与技术 |
| 【论文级别】 | 硕士论文 |
| 【投稿时间】 | 2005-11-7 |
| 【中关键词】 | 体系结构描述语言,约束满足问题,体系结构特征配置文件,指令模板库,, |
| 【英关键词】 | Architecture Description Language,Constraint Satisfaction Problem,Architecture Feature Configuration File,Instruction Template Library, |
| 【分类导航】 | 工业技术>自动化技术、计算机技术>计算技术、计算机技术>电子数字计算机(不连续作用电子计算机)>运算器和控制器(CPU)> |
| 【论文摘要】 | 功能验证是微处理器设计的瓶颈。体系结构级功能验证能够及早发现微处理器设计错误,减小错误对设计的影响。目前,模拟验证仍然是体系结构级验证的主要手段,但是完全手工生成用于模拟验证的测试程序效率低,错误率高。因此,测试程序的自动生成在现代微处理器设计中扮演着重要角色。
现有的微处理器体系结构级测试程序生成系统采用的体系结构建模方法复杂,处理问题规模有限,而且大多数系统本质上仍然采用随机生成方法,导致生成的测试程序验证效率不高。
本文基于我们提出的微处理器体系结构级测试程序自动生成框架,重点研究了测试程序自动生成的约束满足问题,设计实现了一种由描述驱动、基于约束求解的测试程序自动生成系统。本文的主要工作和贡献如下:
1.提出了约束编译器为测试程序建立约束网络的方法,设计了测试程序自动生成系统的核心部件——约束编译器。由于这种方法独立于目标微处理器体系结构,通过配置不同的体系结构信息,该编译器可以为具有不同体系结构的微处理器生成测试程序。该编译器已由课题组其他成员实现,并取得了良好的试用效果。
2.针对测试程序生成的体系结构建模,设计提出了一种新的面向验证的体系结... |
| 【论文题纲】 |
|
目录 |
4-7 |
|
插图索引 |
7-8 |
|
表格索引 |
8-9 |
|
摘要 |
9-10 |
|
ABSTRACT |
10-12 |
|
第一章 绪论 |
12-21 |
|
§1.1 研究背景 |
12-13 |
|
§1.2 相关研究 |
13-18 |
|
1.2.1 测试程序自动生成方法 |
13-14 |
|
1.2.2 体系结构描述语言 |
14-16 |
|
1.2.3 约束满足问题 |
16-18 |
|
§1.3 研究目标 |
18-19 |
|
§1.4 主要工作与研究成果 |
19-20 |
|
§1.5 论文结构 |
20-21 |
|
第二章 MA~2TG系统的总体设计 |
21-28 |
|
§2.1 系统的特点分析 |
21 |
|
§2.2 测试程序生成框架及流程 |
21-22 |
|
§2.3 VADL描述 |
22-23 |
|
§2.4 体系结构特征配置文件(ACF) |
23-24 |
|
§2.5 指令模板库(ITL) |
24 |
|
§2.6 约束描述语言及实例 |
24-26 |
|
§2.7 约束编译器 |
26-27 |
|
§2.8 本章小结 |
27-28 |
|
第三章 约束编译器的设计 |
28-36 |
|
§3.1 测试程序生成约束满足问题 |
28-29 |
|
§3.2 约束建模策略 |
29-31 |
|
§3.3 约束编译流程 |
31-33 |
|
§3.4 特殊指令预处理 |
33-35 |
|
§3.5 本章小结 |
35-36 |
|
第四章 VADL语言 |
36-49 |
|
§4.1 EXPRESSION ADL建模分析 |
36-37 |
|
§4.2 VADL概述 |
37-39 |
|
§4.3 语言的组织结构 |
39-47 |
|
4.3.1 指令描述 |
39-42 |
|
4.3.2 初始化操作数的指令组合描述 |
42 |
|
4.3.3 指令映射 |
42-43 |
|
4.3.4 存储器子系统 |
43-46 |
|
4.3.5 数据冲突描述 |
46-47 |
|
§4.4 对异常的支持 |
47 |
|
§4.5 对功能验证需求的支持 |
47-48 |
|
§4.6 本章小结 |
48-49 |
|
第五章 VADL编译器的设计与实现 |
49-59 |
|
§5.1 VADL编译器的实现 |
49-52 |
|
§5.2 中间代码的组织 |
52 |
|
§5.3 体系结构特征配置文件 |
52-55 |
|
5.3.1 ACF的设计 |
53-55 |
|
5.3.2 ACF的组织 |
55 |
|
§5.4 指令模板库 |
55-58 |
|
5.4.1 指令类 |
56-57 |
|
5.4.2 指令组合类 |
57 |
|
5.4.3 验证问题类 |
57-58 |
|
§5.5 本章小结 |
58-59 |
|
第六章 MA~2TG系统应用实例 |
59-66 |
|
§6.1 DLX测试程序生成实例 |
59-61 |
|
§6.2 验证框架 |
61-62 |
|
§6.3 实验结果 |
62-64 |
|
§6.4 实例研究 |
64-65 |
|
§6.5 本章小结 |
65-66 |
|
第七章 结束语 |
66-67 |
|
§7.1 全文工作总结 |
66 |
|
§7.2 工作展望 |
66-67 |
|
致谢 |
67-68 |
|
附录A: VADL的BNF范式 |
68-73 |
|
A.1 指令描述部分 |
68-70 |
|
A.2 初始化寄存器操作数的指令组合描述部分 |
70 |
|
A.3 指令映射部分 |
70 |
|
A.4 存储子系统描述部分 |
70-71 |
|
A.5 数据冲突描述部分 |
71-73 |
|
附录B: 攻读硕士期间发表的论文 |
73-74 |
|
附录C: 攻读硕士期间参加的科研项目 |
74-75 |
|
参考文献 |
75-78 |
|
| 【DOI】 | LunWen.ID:2.2008.363441 |