注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡計算機科學理論與基礎知識計算機組成與設計:硬件-軟件接口(原書第5版·RISC-V版)

計算機組成與設計:硬件-軟件接口(原書第5版·RISC-V版)

計算機組成與設計:硬件-軟件接口(原書第5版·RISC-V版)

定 價:¥169.00

作 者: [美] 戴維·A.帕特森,約翰·L. ... 著,易江芳,劉先華 等 譯
出版社: 機械工業(yè)出版社
叢編項:
標 簽: 暫缺

購買這本書可以去


ISBN: 9787111652144 出版時間: 2020-06-01 包裝: 平裝
開本: 16開 頁數: 470 字數:  

內容簡介

  本書由2017年圖靈獎得主Patterson和Hennessy共同撰寫,是計算機體系結構領域的經典書籍,強調軟硬件協(xié)同設計及其對性能的影響。本書采用開源的RISC-V指令系統(tǒng)體系結構, 講解硬件技術、匯編語言、算術運算、流水線、存儲層次、I/O以及并行處理器。新內容涵蓋平板電腦、云基礎設施、ARM(移動計算設備)以及x86(云計算)體系結構,新實例包括Intel Core i7、ARM Cortex-A53以及NVIDIA Fermi GPU。本書適合計算機體系結構領域的專業(yè)技術人員參考,也適合高等院校計算機相關專業(yè)的學生閱讀。

作者簡介

  作者簡介 戴維·A. 帕特森(David A. Patterson)Patterson與Hennessy共同榮獲了2017年度“圖靈獎”,以表彰他們在計算機體系結構領域的開創(chuàng)性貢獻。Patterson現為Google杰出工程師,之前為加州大學伯克利分校教授。他曾任ACM主席一職,目前是ACM和IEEE會士,美國藝術與科學院和計算機歷史博物館院士,并入選了美國國家工程院、國家科學院和硅谷工程名人堂。他領導了RISC I的設計與實現工作,并且是RAID項目的領導者。 約翰·L. 亨尼斯(John L. Hennessy)Hennessy與Patterson共同榮獲了2017年度“圖靈獎”。Hennessy現為Google母公司Alphabet的董事長,之前曾任斯坦福大學第十任校長。他是IEEE和ACM會士,美國國家工程院、國家科學院、美國哲學院以及美國藝術與科學院院士。他于1981年開始研究MIPS項目,之后創(chuàng)辦MIPS Computer Systems公司,開發(fā)了最早的商用RISC微處理器之一。他還領導了DASH項目,設計了第一個可擴展cache一致性多處理器原型。譯者簡介 易江芳 北京大學信息科學技術學院計算機系副教授,長期從事微處理器體系結構設計和性能優(yōu)化科研及教學工作,近年來主持和參加了國家科技重大專項、北京市科委等十余項科研項目,參與了北京大學“眾志”系列自主CPU系統(tǒng)芯片的設計、驗證和流片工作,發(fā)表論文10余篇。曾獲北大方正獎教金,主持了北京大學計算機體系結構實習課程的教改項目。劉先華 北京大學信息科學技術學院計算機系副教授,長期從事計算機系統(tǒng)結構和編譯優(yōu)化科研及教學工作,近年來主持和參加了國家自然科學基金、國家科技重大專項等十余項科研項目,參與研發(fā)了北京大學“眾志”系列自主CPU及配套軟硬件系統(tǒng)并開展了相關產業(yè)化工作,發(fā)表論文20余篇。曾獲首屆“全國高校計算機專業(yè)優(yōu)秀教師”獎勵、寶鋼獎教金、北京大學教學優(yōu)秀獎等榮譽。

圖書目錄

出版者的話
贊譽
譯者序
前言
作者簡介
第1章 計算機抽象及相關技術 1
1.1 引言 1
1.1.1 傳統(tǒng)的計算應用分類及其特點 2
1.1.2 歡迎來到后PC時代 3
1.1.3 你能從本書中學到什么 4
1.2 計算機體系結構中的8個偉大思想 6
1.2.1 面向摩爾定律的設計 6
1.2.2 使用抽象簡化設計 7
1.2.3 加速經常性事件 7
1.2.4 通過并行提高性能 7
1.2.5 通過流水線提高性能 7
1.2.6 通過預測提高性能 7
1.2.7 存儲層次 7
1.2.8 通過冗余提高可靠性 7
1.3 程序表象之下 8
1.4 箱蓋后的硬件 10
1.4.1 顯示器 11
1.4.2 觸摸屏 12
1.4.3 打開機箱 13
1.4.4 數據安全 16
1.4.5 與其他計算機通信 16
1.5 處理器和存儲制造技術 17
1.6 性能 20
1.6.1 性能的定義 21
1.6.2 性能的度量 23
1.6.3 CPU性能及其度量因素 24
1.6.4 指令性能 25
1.6.5 經典的CPU性能公式 26
1.7 功耗墻 28
1.8 滄海巨變:從單處理器向多處理器轉變 30
1.9 實例:評測Intel Core i7 32
1.9.1 SPEC CPU基準評測程序 33
1.9.2 SPEC功耗基準評測程序 34
1.10 謬誤與陷阱 35
1.11 本章小結 37
1.12 歷史視角和拓展閱讀 38
1.13 練習 38
第2章 指令:計算機的語言 43
2.1 引言 43
2.2 計算機硬件的操作 45
2.3 計算機硬件的操作數 47
2.3.1 存儲器操作數 48
2.3.2 常數或立即數操作數 51
2.4 有符號數與無符號數 52
2.5 計算機中的指令表示 57
2.6 邏輯操作 62
2.7 用于決策的指令 65
2.7.1 循環(huán) 66
2.7.2 邊界檢查的簡便方法 67
2.7.3 case/switch語句 68
2.8 計算機硬件對過程的支持 68
2.8.1 使用更多的寄存器 69
2.8.2 嵌套過程 71
2.8.3 在棧中為新數據分配空間 73
2.8.4 在堆中為新數據分配空間 74
2.9 人機交互 76
2.10 對大立即數的RISC-V編址和尋址 79
2.10.1 大立即數 79
2.10.2 分支中的尋址 80
2.10.3 RISC-V尋址模式總結 82
2.10.4 機器語言譯碼 83
2.11  指令與并行性:同步 85
2.12 翻譯并啟動程序 87
2.12.1 編譯器 87
2.12.2 匯編器 87
2.12.3 鏈接器 89
2.12.4 加載器 91
2.12.5 動態(tài)鏈接庫 91
2.12.6 啟動Java程序 93
2.13 以C排序程序為例的匯總整理 94
2.13.1 swap過程 94
2.13.2 sort過程 95
2.14 數組與指針 100
2.14.1 用數組實現clear 100
2.14.2 用指針實現clear 101
2.14.3 比較兩個版本的clear 102
2.15 高級專題:編譯C語言和解釋Java語言 102
2.16 實例:MIPS指令 103
2.17 實例:x86指令 104
2.17.1 Intel x86的演變 104
2.17.2 x86寄存器和尋址模式 106
2.17.3 x86整數操作 107
2.17.4 x86指令編碼 109
2.17.5 x86總結 110
2.18 實例:RISC-V指令系統(tǒng)的剩余部分 111
2.19 謬誤與陷阱 112
2.20 本章小結 113
2.21 歷史視角和擴展閱讀 115
2.22 練習 115
第3章 計算機的算術運算 121
3.1 引言 121
3.2 加法和減法 121
3.3 乘法 124
3.3.1 串行版的乘法算法及其硬件實現 124
3.3.2 帶符號乘法 127
3.3.3 快速乘法 127
3.3.4 RISC-V中的乘法 127
3.3.5 總結 128
3.4 除法 128
3.4.1 除法算法及其硬件實現 128
3.4.2 有符號除法 131
3.4.3 快速除法 131
3.4.4 RISC-V中的除法 132
3.4.5 總結 132
3.5 浮點運算 133
3.5.1 浮點表示 134
3.5.2 例外和中斷 135
3.5.3 IEEE 754浮點數標準 135
3.5.4 浮點加法 138
3.5.5 浮點乘法 141
3.5.6 RISC-V中的浮點指令 144
3.5.7 精確算術 148
3.5.8 總結 150
3.6 并行性與計算機算術:子字并行 151
3.7 實例:x86中的SIMD擴展和高級向量擴展 151
3.8 加速:子字并行和矩陣乘法 153
3.9 謬誤與陷阱 155
3.10 本章小結 158
3.11 歷史視角和拓展閱讀 159
3.12 練習 159
第4章 處理器 163
4.1 引言 163
4.1.1 一種基本的RISC-V實現 164
4.1.2 實現概述 164
4.2 邏輯設計的一般方法 166
4.3 建立數據通路 169
4.4 一個簡單的實現方案 175
4.4.1 ALU控制 175
4.4.2 設計主控制單元 176
4.4.3 數據通路操作 180
4.4.4 控制的結束 182
4.4.5 為什么現在不使用單周期實現 182
4.5 流水線概述 183
4.5.1 面向流水線的指令系統(tǒng)設計 187
4.5.2 流水線冒險 187
4.5.3 總結 193
4.6 流水線數據通路和控制 194
4.6.1 流水線的圖形化表示 203
4.6.2 流水線控制 205
4.7 數據冒險:前遞與停頓 208
4.8 控制冒險 218
4.8.1 假設分支不發(fā)生 218
4.8.2 縮短分支延遲 219
4.8.3 動態(tài)分支預測 221
4.8.4 流水線總結 223
4.9 例外 223
4.9.1 RISC-V體系結構中如何處理例外 224
4.9.2 流水線實現中的例外 225
4.10 指令間的并行性 228
4.10.1 推測的概念 229
4.10.2 靜態(tài)多發(fā)射 230
4.10.3 動態(tài)多發(fā)射處理器 234
4.10.4 高級流水線和能效 237
4.11 實例:ARM Cortex-A53和Intel Core i7流水線結構 238
4.11.1 ARM Cortex-A53 238
4.11.2 Intel Core i7 920 240
4.11.3 Intel Core i7處理器的性能 242
4.12 加速:指令級并行和矩陣乘法 243
4.13 高級專題:數字設計概述——使用硬件設計語言進行流水線建模以及更多流水線示例 246
4.14 謬誤與陷阱 246
4.15 本章小結 247
4.16 歷史視角和拓展閱讀 247
4.17 練習 247
第5章 大而快:層次化存儲 258
5.1 引言 258
5.2 存儲技術 262
5.2.1 SRAM存儲技術 262
5.2.2 DRAM存儲技術 262
5.2.3 閃存 264
5.2.4 磁盤 264
5.3 cache基礎 266
5.3.1 cache訪問 268
5.3.2 處理cache失效 272
5.3.3 處理寫操作 273
5.3.4 cache實例:Intrinsity FastMATH處理器 275
5.3.5 總結 276
5.4 cache的性能評估和改進 277
5.4.1 使用更為靈活的替換策略降低cache失效率 279
5.4.2 在cache中查找數據塊 283
5.4.3 選擇替換的數據塊 284
5.4.4 使用多級cache減少失效代價 285
5.4.5 通過分塊進行軟件優(yōu)化 287
5.4.6 總結 291
5.5 可靠的存儲器層次 291
5.5.1 失效的定義 291
5.5.2 糾正1位錯、檢測2位錯的漢明編碼 293
5.6 虛擬機 296
5.6.1 虛擬機監(jiān)視器的必備條件 297
5.6.2 指令系統(tǒng)體系結構(缺乏)對虛擬機的支持 297
5.6.3 保護和指令系統(tǒng)體系結構 298
5.7 虛擬存儲 298
5.7.1 頁的存放和查找 301
5.7.2 缺頁失效 303
5.7.3 支持大虛擬地址空間的虛擬存儲 304
5.7.4 關于寫 305
5.7.5 加快地址轉換:TLB 306
5.7.6 Intrinsity FastMATH TLB 307
5.7.7 集成虛擬存儲、TLB和cache 309
5.7.8 虛擬存儲中的保護 311
5.7.9 處理TLB失效和缺頁失效 312
5.7.10 總結 314
5.8 存儲層次結構的一般框架 315
5.8.1 問題一:塊可以被放在何處 315
5.8.2 問題二:如何找到塊 316
5.8.3 問題三:當cache發(fā)生失效時替換哪一塊 317
5.8.4 問題四:寫操作如何處理 317
5.8.5 3C:一種理解存儲層次結構的直觀模型 318
5.9 使用有限狀態(tài)自動機控制簡單的cache 320
5.9.1 一個簡單的cache 320
5.9.2 有限狀態(tài)自動機 321
5.9.3 使用有限狀態(tài)自動機作為簡單的cache控制器 322
5.10 并行和存儲層次結構:cache一致性 324
5.10.1 實現一致性的基本方案 325
5.10.2 監(jiān)聽協(xié)議 325
5.11 并行與存儲層次結構:廉價磁盤冗余陣列 327
5.12 高級專題:實現緩存控制器 327
5.13 實例:ARM Cortex-A53和Intel Core i7的存儲層次結構 327
5.14 實例:RISC-V系統(tǒng)的其他部分和特殊指令 331
5.15 加速:cache分塊和矩陣乘法 331
5.16 謬誤與陷阱 333
5.17 本章小結 336
5.18 歷史視角和拓展閱讀 337
5.19 練習 337
第6章 并行處理器:從客戶端到云 348
6.1 引言 348
6.2 創(chuàng)建并行處理程序的難點 350
6.3 SISD、MIMD、SIMD、SPMD和向量機 354
6.3.1 x86中的SIMD:多媒體擴展 355
6.3.2 向量機 355
6.3.3 向量與標量 356
6.3.4 向量與多媒體擴展 357
6.4 硬件多線程 359
6.5 多核及其他共享內存多處理器 362
6.6 GPU簡介 365
6.6.1 NVIDIA GPU體系結構簡介 366
6.6.2 NVIDIA GPU存儲結構 367
6.6.3 對GPU的展望 368
6.7 集群、倉儲級計算機和其他消息傳遞多處理器 370
6.8 多處理器網絡拓撲簡介 374
6.9 與外界通信:集群網絡 376
6.10 多處理器測試基準和性能模型 377
6.10.1 性能模型 379
6.10.2 Roofline模型 380
6.10.3 兩代Opteron的比較 381
6.11 實例:評測Intel Core i7 960 和NVIDIA Tesla GPU的Roofline模型 384
6.12 加速:多處理器和矩陣乘法 388
6.13 謬誤與陷阱 390
6.14 本章小結 391
6.15 歷史視角和拓展閱讀 393
6.16 練習 394
附錄A 邏輯設計基礎 402
術語表 460
網絡內容
附錄B 圖形處理單元
附錄C 將控制映射至硬件
附錄D 精簡指令系統(tǒng)體系結構計算機
擴展閱讀

本目錄推薦

掃描二維碼
Copyright ? 讀書網 ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號