Principles and Practices of Interconnection Networks (Hardcover)
暫譯: 互連網路的原則與實務 (精裝版)

William James Dally, Brian Patrick Towles

  • 出版商: Morgan Kaufmann
  • 出版日期: 2003-12-18
  • 售價: $1,029
  • 語言: 英文
  • 頁數: 550
  • 裝訂: Hardcover
  • ISBN: 0122007514
  • ISBN-13: 9780122007514
  • 已絕版

買這商品的人也買了...

商品描述

Description:

One of the greatest challenges faced by designers of digital systems is optimizing the communication and interconnection between system components. Interconnection networks offer an attractive and economical solution to this communication crisis and are fast becoming pervasive in digital systems. Current trends suggest that this communication bottleneck will be even more problematic when designing future generations of machines. Consequently, the anatomy of an interconnection network router and science of interconnection network design will only grow in importance in the coming years.

This book offers a detailed and comprehensive presentation of the basic principles of interconnection network design, clearly illustrating them with numerous examples, chapter exercises, and case studies. It incorporates hardware-level descriptions of concepts, allowing a designer to see all the steps of the process from abstract design to concrete implementation.

 

Table of Contents:

Chapter 1 Introduction to Interconnection Networks
1.1 Three Questions About Interconnection Networks
1.2 Uses of Interconnection Networks
1.3 Network Basics
1.4 History
1.5 Organization of this Book

Chapter 2 A Simple Interconnection Network
2.1 Network Specifications and Constraints
2.2 Topology
2.3 Routing
2.4 Flow Control
2.5 Router Design
2.6 Performance Analysis
2.7 Exercises

Chapter 3 Topology Basics
3.1 Nomenclature
3.2 Traffic Patterns
3.3 Performance
3.4 Packaging Cost
3.5 Case Study: The SGI Origin 2000
3.6 Bibliographic Notes
3.7 Exercises

Chapter 4 Butterfly Networks
4.1 The Structure of Butterfly Networks
4.2 Isomorphic Butterflies
4.3 Performance and Packaging Cost
4.4 Path Diversity and Extra Stages
4.5 Case Study: The BBN Butterfly
4.6 Bibliographic Notes
4.7 Exercises

Chapter 5 Torus Networks
5.1 The Structure of Torus Networks
5.2 Performance
5.3 Building Mesh and Torus Networks
5.4 Express Cubes
5.5 Case Study: The MIT J-Machine
5.6 Bibliographic Notes
5.7 Exercises
Chapter 6 Non-Blocking Networks
6.1 Non-Blocking vs. Non-Interfering Networks
6.2 Crossbar Networks
6.3 Clos Networks
6.4 Benes Networks
6.5 Sorting Networks
6.6 Case Study: The Velio VC2002 (Zeus) Grooming Switch
6.7 Bibliographic Notes
6.8 Exercises

Chapter 7 Slicing and Dicing
7.1 Concentrators and Distributors
7.2 Slicing and Dicing
7.3 Slicing Multistage Networks
7.4 Case Study: Bit Slicing in the Tiny Tera
7.5 Bibliographic Notes
7.6 Exercises

Chapter 8 Routing Basics
8.1 A Routing Example
8.2 Taxonomy of Routing Algorithms
8.3 The Routing Relation
8.4 Deterministic Routing
8.5 Case Study: Dimension-Order Routing in the Cray T3D
8.6 Bibliographic Notes
8.7 Exercises

Chapter 9 Oblivious Routing
9.1 Valiant's Randomized Routing Algorithm
9.2 Minimal Oblivious Routing
9.3 Load-Balanced Oblivious Routing
9.4 Analysis of Oblivious Routing
9.5 Case Study: Oblivious Routing in the
Avici Terabit Switch Router(TSR)
9.6 Bibliographic Notes
9.7 Exercises

Chapter 10 Adaptive Routing
10.1 Adaptive Routing Basics
10.2 Minimal Adaptive Routing
10.3 Fully Adaptive Routing
10.4 Load-Balanced Adaptive Routing
10.5 Search-Based Routing
10.6 Case Study: Adaptive Routing in the
Thinking Machines CM-5
10.7 Bibliographic Notes
10.8 Exercises

Chapter 11 Routing Mechanics
11.1 Table-Based Routing
11.2 Algorithmic Routing
11.3 Case Study: Oblivious Source Routing in the
IBM Vulcan Network
11.4 Bibliographic Notes
11.5 Exercises

Chapter 12 Flow Control Basics
12.1 Resources and Allocation Units
12.2 Bufferless Flow Control
12.3 Circuit Switching
12.4 Bibliographic Notes
12.5 Exercises

Chapter 13 Buffered Flow Control
13.1 Packet-Buffer Flow Control
13.2 Flit-Buffer Flow Control
13.3 Buffer Management and Backpressure
13.4 Flit-Reservation Flow Control
13.5 Bibliographic Notes
13.6 Exercises

Chapter 14 Deadlock and Livelock
14.1 Deadlock
14.2 Deadlock Avoidance
14.3 Adaptive Routing
14.4 Deadlock Recovery
14.5 Livelock
14.6 Case Study: Deadlock Avoidance in the Cray T3E
14.7 Bibliographic Notes
14.8 Exercises

Chapter 15 Quality of Service
15.1 Service Classes and Service Contracts
15.2 Burstiness and Network Delays
15.3 Implementation of Guaranteed Services
15.4 Implementation of Best-Effort Services
15.5 Separation of Resources
15.6 Case Study: ATM Service Classes
15.7 Case Study: Virtual Networks in the Avici TSR
15.8 Bibliographic Notes
15.9 Exercises

Chapter 16 Router Architecture
16.1 Basic Router Architecture
16.2 Stalls
16.3 Closing the Loop with Credits
16.4 Reallocating a Channel
16.5 Speculation and Lookahead
16.6 Flit and Credit Encoding
16.7 Case Study: The Alpha 21364 Router
16.8 Bibliographic Notes
16.9 Exercises

Chapter 17 Router Datapath Components
17.1 Input Buffer Organization
17.2 Switches
17.3 Output Organization
17.4 Case Study: The Datapath of the IBM Colony
Router
17.5 Bibliographic Notes
17.6 Exercises

Chapter 18 Arbitration
18.1 Arbitration Timing
18.2 Fairness
18.3 Fixed Priority Arbiter
18.4 Variable Priority Iterative Arbiters
18.5 Matrix Arbiter
18.6 Queuing Arbiter
18.7 Exercises

Chapter 19 Allocation
19.1 Representations
19.2 Exact Algorithms
19.3 Separable Allocators
19.4 Wavefront Allocator
19.5 Incremental vs. Batch Allocation
19.6 Multistage Allocation
19.7 Performance of Allocators
19.8 Case Study: The Tiny Tera Allocator
19.9 Bibliographic Notes
19.10 Exercises

Chapter 20 Network Interfaces
20.1 Processor-Network Interface
20.2 Shared-Memory Interface
20.3 Line-Fabric Interface
20.4 Case Study: The MIT M-Machine Network Interface
20.5 Bibliographic Notes
20.6 Exercises

Chapter 21 Error Control 411
21.1 Know Thy Enemy: Failure Modes and Fault Models
21.2 The Error Control Process: Detection, Containment,
and Recovery
21.3 Link Level Error Control
21.4 Router Error Control
21.5 Network-Level Error Control
21.6 End-to-end Error Control
21.7 Bibliographic Notes
21.8 Exercises

Chapter 22 Buses
22.1 Bus Basics
22.2 Bus Arbitration
22.3 High Performance Bus Protocol
22.4 From Buses to Networks
22.5 Case Study: The PCI Bus
22.6 Bibliographic Notes
22.7 Exercises

Chapter 23 Performance Analysis
23.1 Measures of Interconnection Network Performance
23.2 Analysis
23.3 Validation
23.4 Case Study: Efficiency and Loss in the
BBN Monarch Network
23.5 Bibliographic Notes
23.6 Exercises

Chapter 24 Simulation
24.1 Levels of Detail
24.2 Network Workloads
24.3 Simulation Measurements
24.4 Simulator Design
24.5 Bibliographic Notes
24.6 Exercises

Chapter 25 Simulation Examples 495
25.1 Routing
25.2 Flow Control Performance
25.3 Fault Tolerance

Appendix A Nomenclature
Appendix B Glossary
Appendix C Network Simulator

商品描述(中文翻譯)

描述:
數位系統設計師面臨的最大挑戰之一是優化系統元件之間的通信和互連。互連網路提供了一個吸引人且經濟的解決方案來應對這一通信危機,並且在數位系統中迅速變得普遍。當前的趨勢顯示,未來幾代機器的設計將使這一通信瓶頸變得更加棘手。因此,互連網路路由器的結構和互連網路設計的科學在未來幾年中將變得越來越重要。

本書詳細而全面地介紹了互連網路設計的基本原則,並通過大量示例、章節練習和案例研究清晰地說明這些原則。它包含了硬體層級的概念描述,使設計師能夠看到從抽象設計到具體實現的所有過程步驟。

目錄:
第1章 互連網路簡介
1.1 互連網路的三個問題
1.2 互連網路的用途
1.3 網路基礎
1.4 歷史
1.5 本書的組織

第2章 簡單的互連網路
2.1 網路規格和約束
2.2 拓撲
2.3 路由
2.4 流量控制
2.5 路由器設計
2.6 性能分析
2.7 練習

第3章 拓撲基礎
3.1 命名法
3.2 流量模式
3.3 性能
3.4 包裝成本
3.5 案例研究:SGI Origin 2000
3.6 參考文獻
3.7 練習

第4章 蝴蝶網路
4.1 蝴蝶網路的結構
4.2 同構蝴蝶
4.3 性能和包裝成本
4.4 路徑多樣性和額外階段
4.5 案例研究:BBN 蝴蝶
4.6 參考文獻
4.7 練習

第5章 圈網
5.1 圈網的結構
5.2 性能
5.3 建立網格和圈網
5.4 快速立方體
5.5 案例研究:MIT J-Machine
5.6 參考文獻
5.7 練習

第6章 非阻塞網路
6.1 非阻塞與非干擾網路
6.2 交叉開關網路
6.3 Clos 網路
6.4 Benes 網路
6.5 排序網路
6.6 案例研究:Velio VC2002 (Zeus) 整理交換機
6.7 參考文獻
6.8 練習

第7章 切片與切丁
7.1 集中器和分配器
7.2 切片與切丁
7.3 切片多階段網路
7.4 案例研究:Tiny Tera 的位元切片
7.5 參考文獻
7.6 練習

第8章 路由基礎
8.1 路由示例
8.2 路由演算法的分類
8.3 路由關係
8.4 確定性路由
8.5 案例研究:Cray T3D 的維度順序路由
8.6 參考文獻
8.7 練習

第9章 忘卻路由
9.1 Valiant 的隨機路由演算法
9.2 最小忘卻路由
9.3 負載平衡的忘卻路由
9.4 忘卻路由的分析
9.5 案例研究:Avici Terabit 交換路由器 (TSR) 的忘卻路由
9.6 參考文獻
9.7 練習

第10章 自適應路由
10.1 自適應路由基礎
10.2 最小自適應路由
10.3 完全自適應路由
10.4 負載平衡的自適應路由
10.5 基於搜索的路由
10.6 案例研究:Thinking Machines CM-5 的自適應路由
10.7 參考文獻
10.8 練習

第11章 路由機制
11.1 基於表的路由
11.2 演算法路由
11.3 案例研究:IBM Vulcan 網路中的忘卻源路由
11.4 參考文獻
11.5 練習

第12章 流量控制基礎
12.1 資源和分配單位
12.2 無緩衝流量控制
12.3 電路交換
12.4 參考文獻
12.5 練習

第13章 有緩衝流量控制
13.1 封包緩衝流量控制
13.2 Flit 緩衝流量控制
13.3 緩衝管理和反壓
13.4 Flit 預留流量控制
13.5 參考文獻
13.6 練習

第14章 死鎖與活鎖
14.1 死鎖
14.2 死鎖避免
14.3 自適應路由
14.4 死鎖恢復
14.5 活鎖
14.6 案例研究:Cray T3E 中的死鎖避免
14.7 參考文獻
14.8 練習

第15章 服務品質
15.1 服務類別和服務合約
15.2 突發性和網路延遲
15.3 保證服務的實現
15.4 最佳努力服務的實現
15.5 資源的分離
15.6 案例研究:ATM 服務類別
15.7 案例研究:Avici TSR 中的虛擬網路
15.8 參考文獻
15.9 練習

第16章 路由器架構
16.1 基本路由器架構
16.2 停頓
16.3 使用信用關閉迴路
16.4 重新分配通道
16.5 推測和預測
16.6 Flit 和信用編碼
16.7 案例研究:Alpha 21364 路由器
16.8 參考文獻
16.9 練習

第17章 路由器數據通路元件
17.1 輸入緩衝區組織
17.2 開關
17.3 輸出組織
17.4 案例研究:IBM Colony 路由器的數據通路
17.5 參考文獻
17.6 練習

第18章 仲裁
18.1 仲裁時序
18.2 公平性
18.3 固定優先級仲裁器
18.4 可變優先級迭代仲裁器
18.5 矩陣仲裁器
18.6 排隊仲裁器
18.7 練習

第19章 分配
19.1 表示法
19.2 精確演算法
19.3 可分離分配器
19.4 波前分配器
19.5 增量與批次分配
19.6 多階段分配
19.7 分配器的性能
19.8 案例研究:Tiny Tera 分配器
19.9 參考文獻
19.10 練習

第20章 網路介面
20.1 處理器-網路介面
20.2 共享記憶體介面
20.3 線-布料介面
20.4 案例研究:MIT M-Machine 網路介面
20.5 參考文獻
20.6 練習

第21章 錯誤控制
21.1 知己知彼:故障模式和故障模型
21.2 錯誤控制過程:檢測、遏制和恢復
21.3 連結層錯誤控制
21.4 路由器錯誤控制
21.5 網路層錯誤控制
21.6 端到端錯誤控制
21.7 參考文獻
21.8 練習

第22章 匯流排
22.1 匯流排基礎
22.2 匯流排仲裁
22.3 高性能匯流排協定
22.4 從匯流排到網路
22.5 案例研究:PCI 匯流排
22.6 參考文獻
22.7 練習

第23章 性能分析
23.1 互連網路性能的衡量
23.2 分析
23.3 驗證
23.4 案例研究:BBN Monarch 網路中的效率和損失
23.5 參考文獻
23.6 練習

第24章 模擬
24.1 詳細程度
24.2 網路工作負載
24.3 模擬測量
24.4 模擬器設計
24.5 參考文獻
24.6 練習

第25章 模擬示例
25.1 路由
25.2 流量控制性能
25.3 故障容忍

附錄A 命名法
附錄B 詞彙表
附錄C 網路模擬器

最後瀏覽商品 (20)