本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正
片上互连网络(On-Chip Network)受到 外越来越多的关注,是多处理器设计的关键技术之一。 本书由西安交通大学教授任鹏举、夏天 引进并翻译。本书内容不仅翻译得专业、规范、通俗易懂,同时还对原著书中不易理解的疑难部分内容提供了注解和拓展。 本书的目标读者是熟悉计算机体系结构基本概念,并且有兴趣了解片上网络的工程师和研究人员。本书旨在对片上网络设计中关键的概念进行梳理,既可用于理解片上互连网络基础知识的学习与参考,也可用于理解当前片上互连网络 进的研究工作。
本书旨在介绍片上路由器网络设计中 重要的概念和技术细节,希望为读者阐明基本概念,并明确片上网络研究的趋势和 进展。本书共9章,首先介绍了多核架构环境下的片上网络,解释了片上网络如何适应多核设计的整体系统架构;然后介绍了各种拓扑成本及性能的权衡、路由算法、网络中使用的流控制机制、路由器微体系结构、建模和评估片上网络的细节;接着介绍了一系列基于片上互连网络技术的计算架构设计案例,并全面分析了前面章节介绍的各种技术是如何在实际部署中进行取舍和融合的; 介绍了未来几年在推动片上网络研究探索中将面临的关键技术和新领域。本书面向熟悉基本计算机体系结构概念,并且对片上互连网络感兴趣的工程师和研究人员,可以作为他们理解片上网络基础知识和了解片上网络 进研究的基础参考资料。同时,本书既可以用于教授基本概念,又可以用于学习 进的设计,对研究生和行业工程师都具有重要价值。
任鹏举,西安交通大学教授、人工智能与机器人研究所副所长, 青年人才计划入选者。分别于2004年和2012年获得西安交通大学学士和博士学位,美国麻省理工学院计算机与人工智能实验室联合培养博士。研究方向为人工智能和计算机体系结构。现任中国人工智能产业发展联盟AI芯片组秘书长。
夏天,毕业于法国国立应用科学学院(INSA de Rennes)并获得博士学位,现任西安交通大学人工智能学院助理教授,多年来一直从事计算机架构和软件系统的研究和教学,并曾参与多个商业操作系统和虚拟化平台的研发。研究兴趣广泛,包括传统和新型计算架构、数据传输网络技术、操作系统技术和虚拟化技术等,对多处理器系统及其相关的片上互连网络技术有着深刻的理解和丰富的工程实践经验。
目 录
第1章 导论1
1.1 多核时代的出现1
1.2 片上网络和片外网络的比较3
1.3 网络基础:快速入门4
1.3.1 片上网络的演变4
1.3.2 片上网络的基本构建模块6
1.3.3 性能和成本7
第2章 片上网络的系统架构接口9
2.1 CMP系统中的共享存储网络10
2.1.1 缓存一致性协议对网络性能的影响12
2.1.2 缓存一致性协议对片上网络的要求15
2.1.3 协议级死锁16
2.1.4 多级缓存实现对网络性能的影响17
2.1.5 目录基节点和内存控制器的设计策略22
2.1.6 未命中/事务状态保持寄存器24
2.1.7 前沿技术概述27
2.2 消息传递机制28
2.3 片上网络接口标准30
2.4 总结33
第3章 拓扑34
3.1 指标34
3.1.1 与网络流量无关的指标35
3.1.2 与网络流量相关的指标36
3.2 直连拓扑:ring、mesh和torus40
3.3 非直连拓扑:交叉开关、蝶形网络、clos网络和fat tree网络42
3.4 不规则拓扑48
3.4.1 分解法与合并法50
3.4.2 拓扑综合算法示例51
3.5 层级拓扑52
3.6 实现53
3.6.1 布局布线53
3.6.2 抽象度量指标的含义55
3.7 前沿技术概述57
第4章 路由59
4.1 路由算法的类型59
4.2 避免死锁61
4.3 确定性维序路由62
4.4 无关路由63
4.5 自适应路由65
4.5.1 自适应路由概述65
4.5.2 自适应转向模型路由67
4.6 多播路由71
4.7 不规则拓扑中的路由72
4.8 实现73
4.8.1 源路由实现74
4.8.2 基于节点查找表的路由实现75
4.8.3 组合电路实现77
4.8.4 自适应路由实现78
4.9 前沿技术概述79
第5章 流控制81
5.1 消息、数据包、flit和phit81
5.2 基于消息的流控制83
5.3 基于数据包的流控制85
5.3.1 存储转发流控制86
5.3.2 虚拟直通流控制87
5.4 基于flit的流控制88
5.5 虚拟通道流控制90
5.6 无死锁流控制94
5.6.1 时间线和虚拟通道划分94
5.6.2 逃生虚拟通道96
5.6.3 气泡流控制97
5.7 缓冲区反压98
5.7.1 基于credit的缓冲区反压机制99
5.7.2 基于开启/关闭信号的缓冲区反压机制99
5.8 流控制协议的实现100
5.8.1 缓冲区大小与周转时间100
5.8.2 反向信号线103
5.9 特定应用的片上网络流控制104
5.10 前沿技术概述105
第6章 路由器微体系结构107
6.1 虚拟通道路由器微体系结构107
6.2 缓冲区和虚拟通道109
6.2.1 缓冲区的组织方式109
6.2.2 输入虚拟通道状态112
6.3 开关设计113
6.3.1 交叉开关设计113
6.3.2 交叉开关加速115
6.3.3 交叉开关切分117
6.4 分配器和仲裁器118
6.4.1 round-robin 仲裁器119
6.4.2 矩阵仲裁器121
6.4.3 分离式分配器122
6.4.4 波前分配器124
6.4.5 分配器的组织方式130
6.5 流水线131
6.5.1 流水线的实现133
6.5.2 流水线的优化136
6.6 低功耗微体系结构143
6.6.1 动态功耗144
6.6.2 漏电功耗145
6.7 物理电路实现147
6.7.1 路由器布局规划147
6.7.2 缓冲区电路实现149
6.8 前沿技术概述149
第7章 建模和评估153
7.1 评价指标153
7.1.1 分析模型153
7.1.2 理想的互连结构156
7.1.3 网络延迟?吞吐量?能耗曲线157
7.2 片上网络建模的基础架构160
7.2.1 RTL和软件模型160
7.2.2 功耗和面积模型161
7.3 网络流量162
7.3.1 消息类、虚拟网络、消息长度和顺序162
7.3.2 应用程序的网络流量163
7.3.3 合成网络流量165
7.4 调试方法166
7.5 片上网络生成器167
7.6 前沿技术概述169
第8章 案例分析171
8.1 MIT Eyeriss(2016)172
8.2 Princeton Piton(2015)175
8.3 Intel Xeon Phi(2015)177
8.4 D E Shaw研究的Anton 2(2014)181
8.5 MIT SCORPIO(2014)182
8.6 Oracle Sparc T5(2013)185
8.7 密歇根大学的 Swizzle Switch(2012)186
8.8 MIT Broadcast NoC(2012)187
8.9 Georgia Tech 3D-MAPS(2012)189
8.10 KAIST Multicast-NoC(2010)190
8.11 Intel Single-chip Cloud(2009)191
8.12 UC Davis AsAP(2009)193
8.13 Tilera TILEPro64(2008)195
8.14 ST MicroElectronics STNoC(2008)198
8.15 Intel TeraFLOPS(2007)201
8.16 IBM Cell(2005)204
8.17 小结205
第9章 结论207
9.1 传统的互连207
9.2 弹性的片上网络210
9.3 作为FPGA内部互连的NoC211
9.4 多加速器的异构SoC中的NoC212
9.5 片上网络的相关会议213
9.6 文献说明213
参考文献214