幫助中心 | 我的帳號 | 關於我們

電腦組成與設計(硬體軟體介面ARM版)/電腦科學叢書

  • 作者:(美)戴維·A.帕特森//約翰·L.亨尼斯|譯者:陳微
  • 出版社:機械工業
  • ISBN:9787111608943
  • 出版日期:2018/10/01
  • 裝幀:平裝
  • 頁數:501
人民幣:RMB 139 元      售價:
放入購物車
加入收藏夾

內容大鋼
    戴維·A.帕特森、約翰·L.亨尼斯著的《電腦組成與設計》採用ARMv8-A體系結構,介紹當前硬體技術的基本原理、彙編語言、電腦算術、流水線、內存層次結構和I/O。本書更加關注后PC時代發生的變革,通過實例、練習等詳細介紹新湧現的移動計算和雲計算,更新的內容還包括平板電腦、雲基礎設施以及ARM(移動計算設備)和x86(雲計算)體系結構。

作者介紹
(美)戴維·A.帕特森//約翰·L.亨尼斯|譯者:陳微

目錄
出版者的話
讚譽
譯者序
前言
作者簡介
第1章 電腦的抽象與技術
  1.1  引言
    1.1.1  電腦應用的分類和特點
    1.1.2  歡迎來到后PC時代
    1.1.3  你能從本書中學到什麼
  1.2  電腦體系結構中的8個偉大思想
    1.2.1  面向摩爾定律的設計
    1.2.2  使用抽象簡化設計
    1.2.3  加速大概率事件
    1.2.4  通過並行提高性能
    1.2.5  通過流水線提高性能
    1.2.6  通過預測提高性能
    1.2.7  存儲器層次結構
    1.2.8  通過冗余提高可靠性
  1.3  程序表象之下
  1.4  硬體包裝之下
    1.4.1  顯示器
    1.4.2  觸摸屏
    1.4.3  打開機箱
    1.4.4  數據的安全存儲
    1.4.5  與其他電腦通信
  1.5  處理器和存儲器製造技術
  1.6  性能
    1.6.1  性能的定義
    1.6.2  性能的度量
    1.6.3  CPU的性能及其度量因素
    1.6.4  指令的性能
    1.6.5  經典的CPU性能公式
  1.7  功耗牆
  1.8  滄海巨變:從單處理器向多處理器轉變
  1.9  實例:Intel Core i7基準測試
    1.9.1  SPEC CPU基準測試程序
    1.9.2  SPEC功耗基準測試程序
  1.10  謬誤與陷阱
  1.11  本章小結
  1.12  歷史觀點與拓展閱讀
  1.13  練習題
第2章 指令:電腦的語言
  2.1  引言
  2.2  電腦硬體的操作
  2.3  電腦硬體的操作數
    2.3.1  存儲器操作數
    2.3.2  常數或立即數操作數
  2.4  有符號數和無符號數
  2.5  電腦中指令的表示

  2.6  邏輯操作
  2.7  決策指令
    2.7.1  循環
    2.7.2  邊界檢查的簡便方法
    2.7.3  case/switch語句
  2.8  電腦硬體對過程的支持
    2.8.1  使用更多的寄存器
    2.8.2  過程嵌套
    2.8.3  在棧中為新數據分配空間
    2.8.4  在堆中為新數據分配空間
  2.9  人機交互
  2.10  LEGv8中的寬立即數和地址的定址
    2.10.1  寬立即數
    2.10.2  分支中的定址
    2.10.3  LEGv8定址模式總結
    2.10.4  機器語言解碼
  2.11  並行與指令:同步
  2.12  翻譯並啟動程序
    2.12.1  編譯器
    2.12.2  彙編器
    2.12.3  鏈接器
    2.12.4  載入器
    2.12.5  動態鏈接庫
    2.12.6  啟動Java程序
  2.13  綜合實例:C排序程序
    2.13.1  swap過程
    2.13.2  sort過程
  2.14  數組和指針
    2.14.1  用數組實現clear
    2.14.2  用指針實現clear
    2.14.3  比較兩個版本的clear
  2.15  高級主題:編譯C和解釋Java
  2.16  實例:MIPS指令集
  2.17  實例:ARMv7(32位)指令集
  2.18  實例:x86指令集
    2.18.1  Intel x86的演進
    2.18.2  x86寄存器和數據定址模式
    2.18.3  x86整數操作
    2.18.4  x86指令編碼
    2.18.5  x86總結
  2.19  實例:ARMv8指令集的其他部分
    2.19.1  完整的ARMv8整數算術邏輯指令
    2.19.2  完整的ARMv8整數數據傳輸指令
    2.19.3  完整的ARMv8分支指令
  2.20  謬誤與陷阱
  2.21  本章小結
  2.22  歷史觀點與拓展閱讀
  2.23  練習題
第3章 電腦的算術運算
  3.1  引言

  3.2  加法和減法
  3.3  乘法
    3.3.1  順序乘法演算法及硬體
    3.3.2  有符號乘法
    3.3.3  更快速的乘法
    3.3.4  LEGv8中的乘法
    3.3.5  小結
  3.4  除法
    3.4.1  除法演算法及硬體
    3.4.2  有符號除法
    3.4.3  更快速的除法
    3.4.4  LEGv8中的除法
    3.4.5  小結
  3.5  浮點運算
    3.5.1  浮點表示
    3.5.2  異常和中斷
    3.5.3  IEEE 754浮點標準
    3.5.4  浮點加法
    3.5.5  浮點乘法
    3.5.6  LEGv8中的浮點指令
    3.5.7  算術精確性
    3.5.8  小結
  3.6  並行與電腦算術:子字並行
  3.7  實例:x86中的流處理SIMD擴展和高級向量擴展
  3.8  實例:其他的ARMv8算術指令
    3.8.1  完整的ARMv8整數和浮點算術指令
    3.8.2  完整的ARMv8 SIMD指令
  3.9  加速:子字並行和矩陣乘法
  3.10  謬誤與陷阱
  3.11  本章小結
  3.12  歷史觀點與拓展閱讀
  3.13  練習題
第4章 處理器
  4.1  引言
    4.1.1  一種基本的LEGv8實現
    4.1.2  實現概述
  4.2  邏輯設計的一般方法
  4.3  建立數據通路
  4.4  一種簡單的實現機制
    4.4.1  ALU控制
    4.4.2  主控制單元的設計
    4.4.3  數據通路的操作
    4.4.4  完成控制單元
    4.4.5  為什麼不使用單周期實現
  4.5  流水線概述
    4.5.1  面向流水線的指令集設計
    4.5.2  流水線冒險
    4.5.3  流水線概述小結
  4.6  流水線數據通路及其控制
    4.6.1  圖形化表示的流水線

    4.6.2  流水線控制
  4.7  數據冒險:旁路與阻塞
  4.8  控制冒險
    4.8.1  假定分支不發生
    4.8.2  減少分支延遲
    4.8.3  動態分支預測
    4.8.4  流水線小結
  4.9  異常
    4.9.1  LEGv8體系結構中的異常處理
    4.9.2  流水線實現中的異常
  4.10  指令級並行
    4.10.1  推測的概念
    4.10.2  靜態多發射
    4.10.3  動態多發射
    4.10.4  動態流水線調度
    4.10.5  能耗效率與高級流水線
  4.11  實例:ARM Cortex-A53和Intel Core i7流水線
    4.11.1  ARM Cortex
    4.11.2  Intel Core i
    4.11.3  Intel Core i7 920的性能
  4.12  加速:指令級並行和矩陣乘法
  4.13  高級主題:採用硬體設計語言描述和建模流水線的數字設計技術以及更多流水線示例
  4.14  謬誤與陷阱
  4.15  本章小結
  4.16  歷史觀點與拓展閱讀
  4.17  練習題
第5章 大容量和高速度:開發存儲器層次結構
  5.1  引言
  5.2  存儲器技術
    5.2.1  SRAM技術
    5.2.2  DRAM技術
    5.2.3  快閃記憶體
    5.2.4  磁碟存儲器
  5.3  cache的基本原理
    5.3.1  cache訪問
    5.3.2  cache缺失處理
    5.3.3  寫操作處理
    5.3.4  cache實例:Intrinsity FastMATH處理器
    5.3.5  小結
  5.4  cache性能的評估和改進
    5.4.1  通過更靈活的塊放置策略來減少cache缺失
    5.4.2  在cache中查找塊
    5.4.3  替換塊的選擇
    5.4.4  使用多級cache減少缺失代價
    5.4.5  通過分塊進行軟體優化
    5.4.6  小結
  5.5  可信存儲器層次結構
    5.5.1  失效的定義
    5.5.2  糾1檢2漢明碼(SEC/DED)
  5.6  虛擬機

    5.6.1  虛擬機監視器的要求
    5.6.2  指令集體系結構(缺乏)對虛擬機的支持
    5.6.3  保護和指令集體系結構
  5.7  虛擬存儲器
    5.7.1  頁的存放和查找
    5.7.2  缺頁故障
    5.7.3  用於大型虛擬地址的虛擬內存
    5.7.4  關於寫
    5.7.5  加快地址轉換:TLB
    5.7.6  Intrinsity FastMATH TLB
    5.7.7  集成虛擬存儲器、TLB和cache
    5.7.8  虛擬存儲器中的保護
    5.7.9  處理TLB缺失和缺頁
    5.7.10  小結
  5.8  存儲器層次結構的一般框架
    5.8.1  問題1:塊放在何處
    5.8.2  問題2:如何找到塊
    5.8.3  問題3:cache缺失時替換哪一塊
    5.8.4  問題4:寫操作如何處理
    5.8.5  3C:一種理解存儲器層次結構行為的直觀模型
  5.9  使用有限狀態機控制簡單的cache
    5.9.1  一個簡單的cache
    5.9.2  有限狀態機
    5.9.3  一個簡單cache控制器的有限狀態機
  5.10  並行與存儲器層次結構:cache一致性
    5.10.1  實現一致性的基本方案
    5.10.2  監聽協議
  5.11  並行與存儲器層次結構:廉價冗余磁碟陣列
  5.12  高級主題:實現cache控制器
  5.13  實例:ARM Cortex-A53和Intel Core i7的存儲器層次結構
  5.14  實例:ARMv8系統的剩餘部分以及特殊指令
  5.15  加速:cache分塊和矩陣乘法
  5.16  謬誤與陷阱
  5.17  本章小結
  5.18  歷史觀點與拓展閱讀
  5.19  練習題
第6章 並行處理器:從客戶端到雲
  6.1  引言
  6.2  創建並行處理程序的難點
  6.3  SISD、MIMD、SIMD、SPMD和向量
    6.3.1  x86中的SIMD:多媒體擴展
    6.3.2  向量
    6.3.3  向量與標量
    6.3.4  向量與多媒體擴展
  6.4  硬體多線程
  6.5  多核和其他共享內存多處理器
  6.6  圖形處理單元
    6.6.1  NVIDIA GPU體系結構簡介
    6.6.2  NVIDIA GPU存儲結構
    6.6.3  正確理解GPU

  6.7  集群、倉儲式電腦和其他消息傳遞多處理器
  6.8  多處理器網路拓撲簡介
  6.9  與外界通信:集群網路
  6.10  多處理器基準測試程序和性能模型
    6.10.1  性能模型
    6.10.2  Roofline模型
    6.10.3  兩代Opteron的比較
  6.11  實例:Intel Core i
和NVIDIA Tesla GPU的評測及Roofline模型
  6.12  加速:多處理器和矩陣乘法
  6.13  謬誤與陷阱
  6.14  本章小結
  6.15  歷史觀點與拓展閱讀
  6.16  練習題
附錄A  邏輯設計基礎
索引
網路內容
附錄B  圖形處理單元
附錄C  控制器的硬體實現
附錄D  RISC指令集體系結構
術語表
擴展閱讀

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032