大話處理器-了解 DSP、CPU 及 MCU 基礎架構, 2/e

萬木楊

  • 出版商: 佳魁資訊
  • 出版日期: 2013-03-28
  • 定價: $480
  • 售價: 8.5$408
  • 語言: 繁體中文
  • ISBN: 9865836084
  • ISBN-13: 9789865836085
  • 相關分類: 數位訊號處理 Dsp

已絕版

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

相關主題

商品描述

<內容簡介>

這是一本圖文並茂、生動幽默的處理器科普讀物。

處理器無處不在(Microprocessors are everywhere)。每一個成功的男人背後都有一個成功的女人,每一個成功的電子產品裡面至少有一個成功的處理器。不管是我們經常使用的電腦、手機、汽車,還是為我們服務但我們不知道它們在何處的基地台、伺服器、交換機等,莫不如此。我們身處的電子世界,是建立在處理器基礎之上的。

作者在選材上圍繞處理器的核心技術,從電腦發展的形態、歷史展開敘述,在簡略介紹處理器的週邊裝置後,迅速深入處理器的抽象模型,以電腦軟體生態系統中最重要的指令集體系結構ISA切入到探索處理器的微架構,對處理器微架構的一些核心技術,如管線、亂序執行、指令級平行、執行緒級平行、快取記憶體結構和演算法、快取一致性等概念,言簡意賅地做了原理闡釋。

全書行文風趣幽默,用許多詼諧的譬喻來解釋晦澀的技術,用圖畫來代替枯燥的文字。本著科技以人為本的理念,除了技術外,還介紹大量相關人物和公司的故事,供大家閱讀。站在一個軟體工程師的角度來描述處理器,沒有花篇幅談論處理器的外設、介面、中斷等內容,而是更多地探討影響處理器性能的管線、指令平行、資料平行、執行緒平行、Cache 等內容。

1 章漫遊電腦世界,介紹了電腦的前世今生,以及電腦的五臟六腑、七經八脈。

2
5 章從外到內,介紹了處理器的外表和內心結構,處理器的核心技術盡在於此。

6 章向軟體人員介紹了怎樣撰寫高效程式,處理器的客戶就是程式師,程式師在處理器上開發程式,對處理器了解得越深,撰寫出來的程式執行效率就越高。

7 章介紹許多家的處理器IP 公司,現在的人們組裝電腦,以後的人們說不定就能組裝處理器了。

8 章走進處理器的內世界,介紹處理器晶片是怎麼設計與製造出來的。

<章節目錄>

Chapter.01漫遊電腦世界
1.1
電腦的前世、今生、來世
1.1.1
電腦的誕生
1.1.2
從軍用到民用
──飛入尋常百姓家
1.1.3
個人電腦時代
──英雄輩出的時代
1.1.4
手機
──裝在口袋的電腦
1.1.5
無處不在的電腦
1.1.6
電腦的來世
1.2
電腦分門別類別
1.3PC
個人電腦結構探秘
1.3.1
處理器
──一顆奔騰的心
1.3.2
記憶體
──大肚能容,容天下難容之事
1.3.3
主機板與晶片組
──架起溝通的橋樑
1.3.4
輸入裝置
──五覺
1.3.5
顯示裝置
──顏面
1.3.6
顯示卡
──我貴,因為我專業
1.3.7
通訊介面
──關節
1.3.8
軟體
──電腦的靈魂
1.3.9
電腦產業發展態勢

Chapter.02
初識處理器
──掀起你的蓋頭來
2.1
處理器是怎樣工作的
──處理器的硬體模型
2.1.1
硬連線電路
──一定終身
2.1.2
通用電腦模型
──硬體搭台,軟體唱戲
2.2
怎樣來使用處理器
──處理器的程式設計模型
2.2.1
軟硬不分
2.2.2ISA
橫插一刀
2.3
處理器的分層模型
2.4
選什麼樣的處理器
──適合的才是最好的
2.4.1
硬體指標
──硬實力的競爭
2.4.2
軟體指標
──軟實力的競爭
2.4.3
商業指標
──在商言商

Chapter.03
指令集體系結構
──處理器的外表
3.1
指令集是什麼
3.1.1
從處理器程式設計模型談起
──一切從模型開始
3.1.2
電腦語言
──人與電腦溝通的橋樑
3.2
指令集發展的來龍去脈
3.2.1CISC
時代
──粗放式擴張
3.2.2RISC
時代
──最佳化設定資源,合理提升效率
3.2.3
RISC時代
──不管黑貓白貓,抓到老鼠就是好貓
3.3
指令集的五朵金花
3.3.1x86
──碩大的大象
3.3.2ARM
──穩紮穩打的蟻群
3.3.3MIPS
──優雅的孔雀
3.3.4Power
──昔日的貴族
3.3.5C6000
──偏安一隅的獨立王國
3.3.6
至今仍在服役的元老們
3.4
地盤之爭
3.4.1
地盤劃分
3.4.2x86
ARM之戰
3.4.3ARM
MIPS之戰
3.5
組合語言格式
──沒有規矩不成方圓
3.5.1
機器字長
3.5.2
運算元個數
3.5.3
運算元順序
3.5.4
大小端
──小問題,大折騰
3.5.5
指令型態
──我們需要哪些指令
3.5.6
定址方式
──千萬裡,我追尋著你
3.5.7
總結

Chapter.04
微架構
──處理器的內心世界
4.1
跟著順溜學管線
4.1.1
順溜的2級管線
4.1.2
順溜管線的深入分析
4.2
從子彈射擊到指令執行
4.2.1
最簡單的3級管線
4.2.2
史上最經典的5級管線
4.2.3DSP
更深的管線
4.2.4
管線上的冒險
──免不了磕磕絆絆
4.2.5
分支預測
──以古為鏡,可以知興替
4.3
從循序執行到亂序執行
──因時制宜
4.3.1
亂序的概念
4.3.2
指令的相關
4.3.3
去除指令的相關性
4.3.4
處理器的亂序執行
4.4
處理器平行設計
──平行,提高性能的不二法門
4.5
指令平行(InstructionLevelParallelism
4.5.1
指令平行的綠營藍營
4.5.2Superscalar
處理器實例
──IntelP4CPU
 4.5.3VLIW
處理器實例──
TIC6000DSP
 4.5.4Superscalar
VLIW總結
4.6
資料平行(DataLevelParallelism
4.6.1
何為SIMDMMXSSE
 4.6.2
幾種不同形式的SSE指令

4.7
執行緒平行(ThreadLevelParallelism
4.7.1
多執行緒
──時分重用
4.7.2
硬體多執行緒
──讓我來幫你一把
4.7.3
多核心
──的跳變
4.7.4
各種硬體多執行緒比較
4.8
平行總結
4.9
微架構總結
4.9.1
處理器性能公式
4.9.2
透過微架構的改進提昇程式執行效率
4.9.3
商用處理器微架構的選擇

Chapter.05Cache
──處理器的肚量
5.1
什麼是Cache
──探索既熟悉又陌生的領域
5.1.1
隨處可見的Cache
──技術來源於生活
5.1.2
處理器的Cache
──一切都是收益和成本的權衡
5.2
處理器的Cache結構
──探索那些鮮為人知的秘密
5.2.1Cache
的階層
──階層化管理
5.2.2Cache
的工作方式
──丘位之劍,命中與未命中
5.2.3Cache
的映射方式
──多對一的策略
5.2.4Cache
的寫方式
──你不需要知道真相
5.3Cache
一致性
5.3.1
一致性問題的產生
──資訊不對稱導致的問題
5.3.2Cache
一致性的底層操作
5.3.3Cache
一致性協定

Chapter.06
撰寫高效程式
──時間就是生命
6.1
軟體效率
──21世紀什麼最重要?效率!
6.1.1
高效程式的意義
──時間就是生命,時間就是金錢
6.1.2
程式剖析
──沒有調查,就沒有發言權
6.2
減少指令數
──勤儉持家
6.2.1
使用更快的演算法
──演算法,程式設計的靈魂
6.2.2
選用合適的指令
──合適的人做合適的事
6.2.3
降低資料精度
──位元也要省著用
6.2.4
減少函數呼叫
──不要老打斷我
6.2.5
空間換時間
──我們總是在走,卻忘了停留
6.2.6
減少過保護
──打不破的部門牆
6.3
減少處理器不擅長的操作
──不要逼我做我不喜歡的事情
6.3.1
少用乘法
6.3.2
少用除法、求餘
6.3.3
在精度允許的條件下,將浮點數定點化
6.3.4
儘量減少分支
6.3.5
將最可能進入的分支放在if中,而不是else
6.4
最佳化記憶體存取
──別讓包袱拖垮了你
6.4.1
少使用陣列,少使用指標
6.4.2
少用全域變數
6.4.3
一次多存取一些資料
6.4.4
資料對齊存取
6.4.5
大資料結構時的Cacheline對齊
6.4.6
程式、資料存取符合Cache的時間、空間局部性
6.4.7
多執行緒程式設計時,避免falsesharing
6.4.8
自己管理記憶體動態分配

6.4.9
隱藏資料搬移時間
6.5
充分利用編譯器進行最佳化
──編譯器:我才是最佳化第一高手
6.5.1
編譯器的結構
──知己知彼,百戰不殆
6.5.2
編譯器提供了幾級最佳化選項
──分級管理
6.5.3
編譯器會計算常數
6.5.4
簡單的運算式化簡
6.5.5
分析公共敘述
6.5.6
迴圈展開、軟體管線
6.5.7
自動向量化
6.5.8
高效的資料組織
6.5.9
指令平行化
6.5.10
編譯器更懂處理器
──百度更懂中文
6.6
利用多核心來加速程式
──人多力量大
6.6.1
平行計算
6.6.2OpenMP

Chapter.07SOC
──吸星大法
7.1SOC
大一統時代
7.1.1SOC
IP
 7.1.2SOC
市場驅動力

7.2IP
核心
7.2.1CPUIP
 7.2.2GPUIP
 7.2.3DSPIP
 7.2.4VideoEngineIP
 7.2.5
其他IPcore
 7.2.6
總結


Chapter.08“
路歷程
──明明白白我的
8.1
邏輯電路基礎
──電腦的基本構成
8.1.1
模擬、數位、邏輯的關係
──細微之處探真知
8.1.2
組合邏輯電路
──萬丈高樓平地起
8.1.3
時序邏輯電路
──你在我心中留下了記憶
8.1.4
微電子技術
──微乎微乎,至於無形
8.2
晶片設計
──芯者,國之大事,不可不察也
8.2.1
人類是怎麼管理複雜事物的
8.2.2
晶片設計流程
8.2.3
硬體描述語言
──軟硬不分
8.2.4
邏輯綜合
8.2.5
硬體描述語言與軟體描述語言的差別
8.2.6
實體設計
8.3
晶片製造
──點沙成金
8.3.1
探索微觀世界
8.3.2
晶片製造流程