大話處理器: 了解DSP、CPU及MCU基礎架構

者:
期:
2012/01/16
9
480432

內容簡介

這是一本圖文並茂、生動幽默的處理器科普讀物,全書行文風趣幽默,用許多詼諧的譬喻來解釋晦澀的技術,用圖畫來代替枯燥的文字。本著科技以人為本的理念,除了技術外,還介紹大量相關人物和公司的故事,供大家閱讀。站在一個軟體工程師的角度來描述處理器,沒有花篇幅談論處理器的外設、介面、中斷等內容,而是更多地探討影響處理器性能的管線、指令平行、資料平行、執行緒平行、Cache 等內容。說起處理器,自然不能不提電腦,第1 章漫遊電腦世界,介紹電腦的前世今生,以及電腦的五臟六腑、七經八脈。第2~5章從外到內,介紹處理器的外表和內心結構,處理器的核心技術盡在於此。了解這幾章,我們就能知道一款處理器擅長做什麼事情,不擅長做什麼事情。第6章向軟體人員介紹如何撰寫高效程式,處理器的客戶就是程式師,程式師在處理器上開發程式,對處理器了解得越深,撰寫出來的程式執行效率就越高。第7章介紹許多家的處理器IP公司,現在的人組裝電腦,以後的人說不定就能組裝處理器了。第8章走進處理器的內“芯”世界,介紹處理器晶片是怎麼設計與製造出來的。專家推薦萬木楊以通俗的方式描述複雜的電腦系統,不僅讓一般讀者很容易地了解,而且涉及到各個面向,對電子專業的讀者也有很多啟發。我在美國矽谷多年,感覺到除了從事電腦系統方面的人外,一般人對電腦系統都不太了解,但大家天天與電腦打交道,作為一本既通俗幽默,又有一定專業深度的書,我相信它會吸引讀者的眼球,並對讀者在電腦使用上帶來益處。 ~~華為美國研究所專家 周峰儼然就是一本濃縮版的電腦百科全書,書中幾乎介紹電腦的各各方面,更難得的是,原本晦澀難懂的知識,一經作者講解,就變得淺顯易懂了。 ~~Intel公司Sort Engineer 王爽本書內容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.3 PC 個人電腦結構探秘 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.2 ISA 橫插一刀 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.1 CISC 時代——粗放式擴張 3.2.2 RISC 時代——最佳化設定資源,合理提升效率 3.2.3 後RISC 時代——不管黑貓白貓,抓到老鼠就是好貓 3.3 指令集的五朵金花 3.3.1 x86——碩大的大象 3.3.2 ARM——穩紮穩打的蟻群 3.3.3 MIPS——優雅的孔雀 3.3.4 Power——昔日的貴族 3.3.5 C6000——偏安一隅的獨立王國 3.3.6 至今仍在服役的元老們 3.4 地盤之爭 3.4.1 地盤劃分 3.4.2 x86、ARM 之戰 3.4.3 ARM、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.3 DSP 更深的管線 4.2.4 管線上的冒險——免不了磕磕絆絆 4.2.5 分支預測——以古為鏡,可以知興替 4.3 從循序執行到亂序執行——因時制宜 4.3.1 亂序的概念 4.3.2 指令的相關 4.3.3 去除指令的相關性 4.3.4 處理器的亂序執行 4.4 處理器平行設計——平行,提高性能的不二法門 4.5 指令平行(Instruction Level Parallelism) 4.5.1 指令平行的“綠營”和“藍營” 4.5.2 Superscalar 處理器實例——Intel P4 CPU 4.5.3 VLIW 處理器實例——TI C6000 DSP 4.5.4 Superscalar 和VLIW 總結4.6 資料平行(Data Level Parallelism) 4.6.1 何為SIMD、MMX、SSE 4.6.2 幾種不同形式的SSE 指令 4.7 執行緒平行(Thread Level Parallelism) 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.05 Cache——處理器的“肚量”5.1 什麼是Cache——探索既熟悉又陌生的領域 5.1.1 隨處可見的Cache——技術來源於生活 5.1.2 處理器的Cache——一切都是收益和成本的權衡 5.2 處理器的Cache 結構——探索那些鮮為人知的秘密 5.2.1 Cache 的階層——階層化管理 5.2.2 Cache 的工作方式——丘位之劍,命中與未命中 5.2.3 Cache 的映射方式——多對一的策略 5.2.4 Cache 的寫方式——你不需要知道真相 5.3 Cache 一致性 5.3.1 一致性問題的產生——資訊不對稱導致的問題 5.3.2 Cache 一致性的底層操作 5.3.3 Cache 一致性協定 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 大資料結構時的Cache line 對齊 6.4.6 程式、資料存取符合Cache 的時間、空間局部性 6.4.7 多執行緒程式設計時,避免false sharing 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.2 OpenMP Chapter.07 SOC——吸星大法7.1 SOC 大一統時代 7.1.1 SOC 和IP 7.1.2 SOC 市場驅動力 7.2 IP 核心 7.2.1 CPU IP 7.2.2 GPU IP 7.2.3 DSP IP 7.2.4 Video Engine IP 7.2.5 其他IP core 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 晶片製造流程

作者介紹

■作者簡介

萬木楊

規格

誠品貨碼 / 2680658168000
ISBN13 / 9789866007248
ISBN10 / 9866007243
EAN貨碼 / 9789866007248
頁數 / 288
開數 / 18K
注音版 / 否
裝訂 / P:平裝
語言 / 1:中文/繁體
級別 / N:無

退貨說明

退貨須知:

  1. 依照消費者保護法的規定,您享有商品貨到次日起七天猶豫期(含例假日)的權益(請注意!猶豫期非試用期),辦理退貨之商品必須是全新狀態(不得有刮傷、破損、受潮)且需完整(包含全部商品、配件、原廠內外包裝、贈品及所有附隨文件或資料的完整性等)。
  2. 請您以送貨廠商使用之包裝紙箱將退貨商品包裝妥當,若原紙箱已遺失,請另使用其他紙箱包覆於商品原廠包裝之外,切勿直接於原廠包裝上黏貼紙張或書寫文字。若原廠包裝損毀將可能被認定為已逾越檢查商品之必要程度,本公司得依毀損程度扣除回復原狀必要費用(整新費)後退費;請您先確認商品正確、外觀可接受,再行拆封,以免影響您的權利;若為產品瑕疵,本公司接受退貨。

依「通訊交易解除權合理例外情事適用準則」,下列商品不適用七日猶豫期,除產品本身有瑕疵外,不接受退貨:

  1. 易於腐敗、保存期限較短或解約時即將逾期。(如:生鮮蔬果、乳製品、冷凍冷藏食材、蛋糕)
  2. 依消費者要求所為之客製化給付。(如:客製印章、鋼筆刻字)
  3. 報紙、期刊或雜誌。
  4. 經消費者拆封之影音商品或電腦軟體。
  5. 非以有形媒介提供之數位內容或一經提供即為完成之線上服務,經消費者事先同意始提供。(如:電子書)
  6. 已拆封之個人衛生用品。(如:內衣褲、襪類、褲襪、刮鬍刀、除毛刀等貼身用品)
  7. 國際航空客運服務。

若您退貨時有下列情形,可能被認定已逾越檢查商品之必要程度而須負擔為回復原狀必要費用(整新費),或影響您的退貨權利,請您在拆封前決定是否要退貨:

  1. 以數位或電磁紀錄形式儲存或著作權相關之商品(包含但不限於CD、VCD、DVD、電腦軟體等) 包裝已拆封者(除運送用之包裝以外)。
  2. 耗材(包含但不限於墨水匣、碳粉匣、紙張、筆類墨水、清潔劑補充包等)之商品包裝已拆封者(除運送用之包裝以外)。
  3. 衣飾鞋類/寢具/織品(包含但不限於衣褲、鞋子、襪子、泳裝、床單、被套、填充玩具)或之商品缺件(含購買商品、附件、內外包裝、贈品等)或經剪標或下水或商品有不可回復之髒污或磨損痕跡。
  4. 食品、美容/保養用品、內衣褲等消耗性或個人衛生用品、商品銷售頁面上特別載明之商品已拆封者(除運送用之包裝外一切包裝、包括但不限於瓶蓋、封口、封膜等接觸商品內容之包裝部分)或已非全新狀態(外觀有刮傷、破損、受潮等)與包裝不完整(缺少商品、附件、原廠外盒、保護袋、配件紙箱、保麗龍、隨貨文件、贈品等)。
  5. 家電、3C、畫作、電子閱讀器等商品,除商品本身有瑕疵外,退回之商品已拆封(除運送用之包裝外一切包裝、包括但不限於封膜等接觸商品內容之包裝部分、移除封條、拆除吊牌、拆除貼膠或標籤等情形)或已非全新狀態(外觀有刮傷、破損、受潮等)與包裝不完整(缺少商品、附件、原廠外盒、保護袋、配件紙箱、保麗龍、隨貨文件、贈品等)。
  6. 退貨程序請參閱【客服專區→常見問題→誠品線上退貨退款】之說明。
付款/配送