《計算機組成與設計:硬體/軟體接口(原書第5版)》是2018年4月機械工業出版社出版的圖書,作者是[美]戴維A.帕特森。
基本介紹
- 書名:計算機組成與設計:硬體/軟體接口(原書第5版)
- 作者:[美]戴維A.帕特森
- ISBN:978-7-111-50482-5
- 定價:99.0
- 出版時間:2018-04-08
- 開本:16開
內容簡介
目錄
3.5.5 算術精確性145
3.5.6 小結146
3.6 並行性和計算機算術:子字並行148
3.7 實例:x86中流處理SIMD擴展和高級向量擴展149
3.8 加速:子字並行和矩陣乘法150
3.9 謬誤與陷阱153
3.10 本章小結155
3.11 歷史觀點和拓展閱讀158
3.12 練習題159
第4章 處理器162
4.1 引言162
4.2 邏輯設計的一般方法165
4.3 建立數據通路167
4.4 一個簡單的實現機制173
4.4.1 ALU控制173
4.4.2 主控制單元的設計175
4.4.3 為什麼不使用單周期實現方式181
4.5 流水線概述182
4.5.1 面向流水線的指令集設計186
4.5.2 流水線冒險186
4.5.3 對流水線概述的小結191
4.6 流水線數據通路及其控制192
4.6.1 圖形化表示的流水線200
4.6.2 流水線控制203
4.7 數據冒險:旁路與阻塞206
4.8 控制冒險214
4.8.1 假定分支不發生215
4.8.2 縮短分支的延遲215
4.8.3 動態分支預測216
4.8.4 流水線小結220
4.9.1 MIPS體系結構中的異常處理221
4.9.2 在流水線實現中的異常222
4.10 指令級並行226
4.10.1 推測的概念227
4.10.2 靜態多發射處理器227
4.10.3 動態多發射處理器231
4.10.4 能耗效率與高級流水線233
4.11 實例:ARM Cortex-A8和Intel Core i7流水線234
4.11.1 ARM Cortex-A8235
4.11.2 Intel Core i7 920236
4.11.3 Intel Core i7 920的性能238
4.12 運行更快:指令級並行和矩陣乘法240
4.13 高級主題:通過硬體設計語言描述和建模流水線來介紹數字設計以及更多流水線示例242
4.14 謬誤與陷阱242
4.15 本章小結243
4.16 歷史觀點和拓展閱讀243
4.17 練習題243
第5章 大容量和高速度:開發存儲器層次結構252
5.1 引言252
5.2 存儲器技術255
5.2.1 SRAM技術256
5.2.2 DRAM技術256
5.2.3 快閃記憶體258
5.2.4 磁碟存儲器258
5.3 cache的基本原理259
5.3.1 cache訪問261
5.3.2 cache缺失處理265
5.3.3 寫操作處理266
5.3.4 一個cache的例子:內置FastMATH處理器267
5.3.5 小結269
5.4 cache性能的評估和改進270
5.4.1 通過更靈活地放置塊來減少cache缺失272
5.4.2 在cache中查找一個塊275
5.4.3 替換塊的選擇276
5.4.4 使用多級cache結構減少缺失代價277
5.4.5 通過分塊進行軟體最佳化280
5.4.6 小結283
5.5 可信存儲器層次283
5.5.1 失效的定義283
5.5.2 糾正一位錯、檢測兩位錯的漢明編碼(SEC/DED)284
5.6 虛擬機287
5.6.1 虛擬機監視器的必備條件289
5.6.2 指令集系統結構(缺乏)對虛擬機的支持289
5.6.3 保護和指令集系統結構289
5.7 虛擬存儲器290
5.7.1 頁的存放和查找293
5.7.2 缺頁故障294
5.7.3 關於寫297
5.7.4 加快地址轉換:TLB297
5.7.5 集成虛擬存儲器、TLB和cache 300
5.7.6 虛擬存儲器中的保護302
5.7.7 處理TLB缺失和缺頁303
5.7.8 小結307
5.8 存儲器層次結構的一般框架309
5.8.1 問題1:一個塊可以被放在何處309
5.8.2 問題2:如何找到一個塊310
5.8.3 問題3:當cache缺失時替換哪一塊311
5.8.4 問題4:寫操作如何處理311
5.8.5 3C:一種理解存儲器層次結構行為的直觀模型312
5.9 使用有限狀態機來控制簡單的cache314
5.9.1 一個簡單的cache314
5.9.2 有限狀態機315
5.9.3 一個簡單的cache控制器的有限狀態機316
5.10 並行與存儲器層次結構:cache一致性317
5.10.1 實現一致性的基本方案318
5.10.2 監聽協定319
5.11 並行與存儲器層次結構:冗餘廉價磁碟陣列320
5.12 高級內容:實現cache控制器320
5.13 實例:ARM Cortex-A8和Intel Core i7的存儲器層次結構320
5.14 運行更快:cache分塊和矩陣乘法324
5.15 謬誤和陷阱326
5.16 本章小結329
5.17 歷史觀點和拓展閱讀329
5.18 練習題329
第6章 從客戶端到雲的並行處理器340
6.1 引言340
6.2 創建並行處理程式的難點342
6.3 SISD、MIMD、SIMD、SPMD和向量機345
6.3.1 在x86中的SIMD:多媒體擴展346
6.3.2 向量機346
6.3.3 向量與標量的對比347
6.3.4 向量與多媒體擴展的對比348
6.4 硬體多執行緒350
6.5 多核和其他共享記憶體多處理器352
6.6 圖形處理單元簡介355
6.6.1 NVIDIA GPU體系結構簡介356
6.6.2 NVIDIA GPU存儲結構357
6.6.3 GPU展望358
6.7 集群、倉儲級計算機和其他訊息傳遞多處理器360
6.8 多處理器網路拓撲簡介363
6.9 與外界通信:集群網路366
6.10 多處理器測試集程式和性能模型366
6.10.1 性能模型368
6.10.2 Roofline模型369
6.10.3 兩代Opteron的比較370
6.11 實例:評測Intel Core i7 960和NVIDIA Tesla GPU的Roofline模型373
6.12 運行更快:多處理器和矩陣乘法376
6.13 謬誤與陷阱378
6.14 本章小結379
6.15 歷史觀點和拓展閱讀381
6.16 練習題382
附錄A 彙編器、連結器和SPIM仿真器389
附錄B 邏輯設計基礎437
索引494