本書旨在介紹片上路由器網絡設計中最重要的概念和技術細節(jié),希望為讀者闡明基本概念,并明確片上網絡研究的趨勢和最新進展。本書共9章,首先介紹了多核架構環(huán)境下的片上網絡,解釋了片上網絡如何適應多核設計的整體系統(tǒng)架構;然后介紹了各種拓撲成本及性能的權衡、路由算法、網絡中使用的流控制機制、路由器微體系結構、建模和評估片上網絡的細節(jié);接著介紹了一系列基于片上互連網絡技術的計算架構設計案例,并全面分析了前面章節(jié)介紹的各種技術是如何在實際部署中進行取舍和融合的;最后介紹了未來幾年在推動片上網絡研究探索中將面臨的關鍵技術和新領域。本書面向熟悉基本計算機體系結構概念,并且對片上互連網絡感興趣的工程師和研究人員,可以作為他們理解片上網絡基礎知識和了解片上網絡最先進研究的基礎參考資料。同時,本書既可以用于教授基本概念,又可以用于學習最先進的設計,對研究生和行業(yè)工程師都具有重要價值。
Natalie Enright Jerger多倫多大學電子計算機工程系教授,現任加拿大計算架構領域首席科學家(Research Chair),多倫多大學“珀西-愛德華-哈特”特等教授,ACM杰出會員,IEEE高級會員。研究領域包括片上網絡、多核/眾核計算架構、存儲架構等。Tushar Krishna佐治亞理工大學電子計算機工程系助理教授,在計算機體系結構領域的頂級會議和期刊發(fā)表論文40余篇,他引4000余次,其中多篇論文被選為最佳論文。他所開發(fā)的Garnet 2.0 片上網絡模擬器目前被全球百余個研究機構使用。研究領域包括計算架構、片上網絡、人工智能加速器等。Li-Shiuan Peh新加坡國立大學計算機科學系首席教授,IEEE Fellow,ACM杰出科學家,2011年入選IEEE MICRO名人堂,曾任普林斯頓大學副教授、麻省理工學院教授。研究領域包括片上網絡、多核計算架構、移動無線系統(tǒng)等。<BR>任鵬舉,西安交通大學教授、人工智能與機器人研究所副所長,國家級青年人才計劃入選者。分別于2004年和2012年獲得西安交通大學學士和博士學位,美國麻省理工學院計算機與人工智能實驗室聯合培養(yǎng)博士。研究方向為人工智能和計算機體系結構。現任中國人工智能產業(yè)發(fā)展聯盟AI芯片組秘書長。夏天,畢業(yè)于法國國立應用科學學院(INSA de Rennes)并獲得博士學位,現任西安交通大學人工智能學院助理教授,多年來一直從事計算機架構和軟件系統(tǒng)的研究和教學,并曾參與多個商業(yè)操作系統(tǒng)和虛擬化平臺的研發(fā)。研究興趣廣泛,包括傳統(tǒng)和新型計算架構、數據傳輸網絡技術、操作系統(tǒng)技術和虛擬化技術等,對多處理器系統(tǒng)及其相關的片上互連網絡技術有著深刻的理解和豐富的工程實踐經驗。
目 錄
第1章 導論 1
1.1 多核時代的出現 1
1.2 片上網絡和片外網絡的比較 3
1.3 網絡基礎:快速入門 4
1.3.1 片上網絡的演變 4
1.3.2 片上網絡的基本構建模塊 6
1.3.3 性能和成本 7
第2章 片上網絡的系統(tǒng)架構接口 9
2.1 CMP系統(tǒng)中的共享存儲網絡 10
2.1.1 緩存一致性協(xié)議對網絡性能的影響 12
2.1.2 緩存一致性協(xié)議對片上網絡的要求 15
2.1.3 協(xié)議級死鎖 16
2.1.4 多級緩存實現對網絡性能的影響 17
2.1.5 目錄基節(jié)點和內存控制器的設計策略 22
2.1.6 未命中/事務狀態(tài)保持寄存器 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和torus 40
3.3 非直連拓撲:交叉開關、蝶形網絡、clos網絡和fat tree網絡 42
3.4 不規(guī)則拓撲 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 不規(guī)則拓撲中的路由 72
4.8 實現 73
4.8.1 源路由實現 74
4.8.2 基于節(jié)點查找表的路由實現 75
4.8.3 組合電路實現 77
4.8.4 自適應路由實現 78
4.9 前沿技術概述 79
第5章 流控制 81
5.1 消息、數據包、flit和phit 81
5.2 基于消息的流控制 83
5.3 基于數據包的流控制 85
5.3.1 存儲轉發(fā)流控制 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 緩沖區(qū)反壓 98
5.7.1 基于credit的緩沖區(qū)反壓機制 99
5.7.2 基于開啟/關閉信號的緩沖區(qū)反壓機制 99
5.8 流控制協(xié)議的實現 100
5.8.1 緩沖區(qū)大小與周轉時間 100
5.8.2 反向信號線 103
5.9 特定應用的片上網絡流控制 104
5.10 前沿技術概述 105
第6章 路由器微體系結構 107
6.1 虛擬通道路由器微體系結構 107
6.2 緩沖區(qū)和虛擬通道 109
6.2.1 緩沖區(qū)的組織方式 109
6.2.2 輸入虛擬通道狀態(tài) 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 流水線的優(yōu)化 136
6.6 低功耗微體系結構 143
6.6.1 動態(tài)功耗 144
6.6.2 漏電功耗 145
6.7 物理電路實現 147
6.7.1 路由器布局規(guī)劃 147
6.7.2 緩沖區(qū)電路實現 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 超越傳統(tǒng)的互連 207
9.2 彈性的片上網絡 210
9.3 作為FPGA內部互連的NoC 211
9.4 多加速器的異構SoC中的NoC 212
9.5 片上網絡的相關會議 213
9.6 文獻說明 213
參考文獻 214