第1章 绪论 1
1.1 研究背景 1
1.2 研究现状 3
1.2.1 神经网络算法的发展历程 3
1.2.2 神经网络加速器的研究现状 7
1.3 研究动机 10
1.4 研究思路与研究内容 11
1.4.1 研究思路 11
1.4.2 研究内容 12
第2章 面向通用神经网络近似的神经网络计算架构RNA 14
2.1 引言 14
2.2 问题背景 17
2.2.1 神经网络近似与加速 17
2.2.2 通用架构模型 17
2.3 计算模式 19
2.3.1 RNA 架构概览 19
2.3.2 FP 计算模式 20
2.3.3 NE 计算模式 21
2.3.4 CE 计算模式 23
2.3.5 调度框架 24
2.4 RNA 架构设计 31
2.4.1 RNA 架构的PE 设计 31
2.4.2 RNA 架构的互连设计 31
2.4.3 RNA 架构的控制器设计 34
2.5 实验结果 37
2.5.1 实验设置 37
2.5.2 RNA 架构的版图和硬件指标 38
2.5.3 RNA 架构的性能分析 39
2.5.4 RNA 架构的参数探索 47
2.6 小结 50
第3章 面向专用人工智能领域的神经网络计算架构DNA 51
3.1 引言 51
3.2 问题背景 53
3.2.1 CNN 模型 53
3.2.2 以CNN 加速器为中心的计算系统架构 55
3.2.3 CNN 加速的两大执行目标和挑战 56
3.3 计算模式 57
3.3.1 计算模式概览 57
3.3.2 数据复用模式 57
3.3.3 卷积映射方法 66
3.3.4 对全连接层的支持 70
3.4 DNA 架构设计 71
3.4.1 可重构数据通路设计 71
3.4.2 可重构卷积引擎设计 73
3.4.3 DNA 架构的工作流程和调度框架 77
3.5 实验结果 79
3.5.1 实验设置 79
3.5.2 DNA 架构的版图和硬件指标 79
3.5.3 DNA 架构的访存和整体能耗分析 80
3.5.4 DNA 架构的性能分析 84
3.5.5 DNA 架构与国际工作的比较 85
3.5.6 基于DNA 架构的人工智能计算芯片Thinker 88
3.6 小结 90
第4章 基于数据保持时间的神经网络存储优化框架RANA 92
4.1 引言 92
4.2 问题背景 95
4.2.1 CNN 模型 95
4.2.2 CNN 加速器 96
4.2.3 CNN 加速器的缓存容量问题 97
4.2.4 eDRAM 及数据保持问题 98
4.3 研究动机 99
4.3.1 实验平台 99
4.3.2 问题分析 100
4.3.3 优化机会 102
4.4 RANA 框架 102
4.4.1 RANA 框架概览 102
4.4.2 基于数据保持时间的训练方法 104
4.4.3 混合计算模式 107
4.4.4 刷新优化的eDRAM 控制器 113
4.5 实验结果 114
4.5.1 实验设置 114
4.5.2 对RANA 框架的评估 115
4.5.3 在DaDianNao 上的扩展性分析 120
4.6 小结 121
第5章 总结与展望 123
5.1 工作总结 123
5.2 未来工作展望 124
参考文献 126
在学期间发表的学术论文与研究成果 137
致谢 139