日韩偷拍一区二区,国产香蕉久久精品综合网,亚洲激情五月婷婷,欧美日韩国产不卡

在線客服
MIPS體系結構透視圖書
人氣:50

MIPS體系結構透視

本書是一本關于MIPS體系結構的經典之作。第2版延續了第1版的可讀性傳統,通過應用具體的實例對硬件和軟件的接口進行強調,并將廣泛應用的RISC系統結構MIPS與開源操作系統Linux結合在一起,從MIPS設計原理開始,闡...
  • 所屬分類:圖書 >計算機/網絡>計算機體系結構  
  • 作者:(英)[斯威特曼] 著,[李鵬] 等譯
  • 產品參數:
  • 叢書名:計算機科學叢書
  • 國際刊號:9787111233626
  • 出版社:機械工業出版社
  • 出版時間:2008-05
  • 印刷時間:2008-05-01
  • 版次:1
  • 開本:16開
  • 頁數:--
  • 紙張:膠版紙
  • 包裝:平裝
  • 套裝:

內容簡介

本書是一本關于MIPS體系結構的經典之作。第2版延續了第1版的可讀性傳統,通過應用具體的實例對硬件和軟件的接口進行強調,并將廣泛應用的RISC系統結構MIPS與開源操作系統Linux結合在一起,從MIPS設計原理開始,闡述MIPS指令集和程序員的可用資源。

第2版在描述Linux/MIPS應用代碼如何載入到內存、如何連接到庫以及如何運行等方面做了介紹。此外,書中還提供了完整的、經過更新的MIPS指令集指南。

本書既可作為高等院校計算機體系結構、嵌入式系統編程和高級計算技術等課程的教材或教學參考書,也很適合科研機構專業人士和軟硬件開發人員參考閱讀。

編輯推薦

本書是"計算機科學叢書"之一,全書共分16個章節,對MIPS的體系結構透視作了系統地介紹,具體包括MIPS體系結構、MIPS處理器的高速緩存、底層內存管理與TLB、浮點支持、MIPS指令集指南、在MIPS體系結構上移植軟件等。該書可供各大專院校作為教材使用,也可供從事相關工作的人員作為參考用書使用。

大多數"體系結構概覽"類的書籍對體系結構的匯編語言語焉不詳,只是給出令人厭煩的概述。然而,本書卻是一個典型的反例,為所有這類書的作者樹立了一個榜樣。作者不但提供了體系結構參考所必需的細節,還以對關鍵體系結構特點(及其原理)富有洞察力的視角表達出這些細節。

元論對于通用的計算機還是對于MlPS來說,本書都是非常有用的書籍。它闡述了滲入到體系結構發展中的技術、經濟和歷史和政治等因素。

第2版的一個重要補充涉及操作系統、移植以及ABl等問題。本書對于軟件開發者來說是一本的參考書。任何從事MIPS體系結構相關工作的人都會樂于擁有這本書。

——Randy AIIen,Catalytic公司的創始人和首席技術官

本書是任何MIPS體系結構參考手冊的極好伴侶。本版延續了第1版的傳統,通過具體實例強調硬件/軟件接口。另外,第2版增加了的,從MIPS—I/V體系結構到MIPS-32/64體系結構的轉變,其中包括支持多線程的體系結構。總之,這是任何熱衷MIPs體系結構的程序員的必備書籍。

——Jan-WiIlem van de Waerdt,飛利浦半導體研究院

第2版不僅對第1版進行了徹底的更新,而且將應用廣泛的RISC系統結構MIPS與開源操作系統Linux結合在一起。本書的部分從MIPS設計原理開始,進而闡述MIPSt旨令集和程序員資源。書中以MIPS 32/MIPS64標準為基準,對其他體系結構進行了比較。

與第1版相比,第2版的顯著變化是面圖片的小企鵝坐在駕駛員的位置上,本書以此作為研究來自Linux 內核的真正的低層操作系統的實例,展示Linux(包括單處理器和DSMP)如何構建于MIPS體系結構所提供的基礎之上。本書從操作系統的底層(中斷、內存調度)開始,進而描述Linux/MIPS應用代碼如何載入到內存、連接到庫并運行。

作者簡介

Dominic Sweetman富有大理實踐經驗的硬件系統、CPU、網絡和操作系統設計者和開發者。他的豐富經驗來自于低層編碼、操作系統開發、局域網和分布式系統。他是Whitechapel WorkstatIons的創立者之一,并在1988年創建了一家MIPS咨詢公司——AIgomhmics。

目錄

出版者的話

專家指導委員會

推薦序

譯者序

第1章 RISC和MlPS

1.1 流水線

1.1.1 什么使流水線效率降低

1.1.2 流水線和緩存

1.2 MIPS的五段流水線

1.3 RISC和CISC

1.4 迄今為止一些重要的MIPS芯片

1.4.1 R2000處理器到R3000處理器

1.4.2 R6000處理器:一次偏軌

1.4.3 及時批CPLJ內核

1.4.4 R4000處理器:一次革命

1.4.5 ACE聯盟的興衰

1.4.6 SGI收購MIPS

1.4.7 QED:嵌入式系統中的快速MIPS處理器

1.4.8 R10000處理器和它的后繼者

1.4.9 消費類電子產品中的MIPS處理器

1.4.10 網絡路由器和激光打印機中的MIPS

1.4.11 現代的MIPS處理器

1.4.12 MIPS Technologies的重生

1.4.13 現狀

1.5 MIPS和CISC體系結構的比較

1.5.1 對MIPS指令的各種限制

1.5.2 編址及內存訪問

1.5.3 發展MIPS不支持的特性

1.5.4 程序員可見的流水線效果

第2章 MIPS體系結構

2.1 MIPS匯編語言的風格

2.2 寄存器

2.3 整數乘法單元和寄存器

2.4 加載和存儲:尋址方式

2.5 存儲器和寄存器中的數據類型

2.5.1 整數數據類型

2.5.2 未對齊的加載和存儲

2.5.3 內存中的浮點數據

2.6 匯編語言中的合成指令

2.7 MIPS 1發展到MIPS 64指令集:64位(和其他)的擴展

2.7.1 邁向64位

2.7.2 誰需要64位

2.7.3 關于64位與無模式轉換:寄存器中的數據

2.8 基本地址空間

2.8.1 簡單系統的尋

2.8.2 核心與用戶特權級別

2.8.3 整體視圖:內存映射的64位視圖

2.9 流水線的可見度

第3章 協處理器0:MIPS處理器控制

3.1 CPU控制指令

3.2 相關寄存器與時序

3.3 CPU控制寄存器及其編碼

3.3.1 狀態寄存器(SR)

3.3.2 原因寄存器

3.3.3 異常返回地址(EPC)寄存器

3.3.4 無效虛地址(BadVaddr)寄存器

3.3.5 計數/比較寄存器(Count/Compare)CPU上的計時器

3.3.6 處理器ID(PRId)寄存器

3.3.7 配置(Config)寄存器:CPU資源信息與配置

3.3.8 EBase和IntCtl:中斷與異常設置

3.3.9 SRSCtl和SRSMap:影子寄存器設置

3.3.10 鏈接加載地址(LLAddr)寄存器

3.4 CPO冒險——不經意間的陷阱

3.4.1 冒險屏障指令

3.4.2 指令冒險與用戶冒險

3.4.3 CPO指令之間的冒險

第4章 MIPS處理器的高速緩存

4.1 高速緩存和高速緩存的管理

4.2 高速緩存怎樣工作

4.3 早期MIPS CPU中的寫透式高速緩存

4.4 MIPs CPU中的寫回式高速緩存

4.5 高速緩存設計的其他選擇

4.6 管理高速緩存

4.7 二級和三級高速緩存

4.8 MIPS CPU高速緩存的配置

4.9 編程MIPS32/64高速緩存

4.9.1 Cache指令

4.9.2 高速緩存初始化和Tag/Data寄存器

4.9.3 CacheErr,ERR和ErrorEPC寄存器:內存/高速緩存的錯誤處理

4.9.4 計算高速緩存大小和配置方式

4.9.5 初始化例程

4.9.6 在高速緩存中無效或寫回一個內存區域

4.10 高速緩存效率

4.11 重組軟件來影響高速緩存效率

4.12 高速緩存別名

笫5章 異常、中斷和初始化

5.1 異常

5.2 異常發生時刻

5.3 異常向量:異常處理開始的地方

5.4 異常處理:基

5.5 從異常返回

5.6 嵌套異常

5.7 一個異常處理例程

5.8 中斷

5.8.1 MIPS CPU中的中斷資源

5.8.2 通過軟件實現中斷優先級

5.8.3 原子性和SR的原子改變

5.8.4 中斷使能時的臨界區:MIPS中的信號量機制

5.8.5 MIPS32/64中向量化和EIC扣斷

5.8.6 影子寄存器

5.9 啟動

5.9.1 探測和識別CPU型號

5.9.2 啟動序列

5.9.3 啟動一個應用程序

5.10 模擬指令

第6章 底層內存管理與TLB

6.1 TLB/MMU硬件和它的功能

6.2 TLB/MMU的寄存器描述

6.2.1 TLB關鍵字域——EntryHi和PageMask

6.2.2 TLB輸出域——EntryLo0-1

6.2.3 選擇一個TLB表項——Index,Random和Wired寄存器

6.2.4 頁表訪問助手——Context和XContext

6.3 TLB/MMU的控制指令

6.4 對TLB編程

6.4.1 如何進行重填

6.4.2 使用ASID

6.4.3 Random寄存器與被鎖定表項

6.5 硬件友好的頁表和重填機制

6.5.1 TLB缺失處理

6.5.2 XTLB的缺失處理函數

6.6 MIPS TLB的日常使用

6.7 更簡單操作系統中的內存管理

第7章 浮點支持

7.1 浮點的基本描述

7.2 IEEE 754標準及其背景

7.3 怎樣存儲IEEE浮點數

7.3.1 IEEE尾數和規格化

7.3.2 使用特殊值時的預留指數值

7.3.3 MRS浮點數據格式

7.4 IEEE 754的MIPS實現

7.5 浮點寄存器

7.6 浮點異常/中斷

7.7 浮點控制:控制/狀態寄存器

7.8 浮點實現寄存器

7.9 浮點指令指南

7.9.1 加載/存儲

7.9.2 寄存器間的傳遞

7.9.3 三操作數算術運算

7.9.4 乘加運算

7.9.5 一元(改變符號)運算

7.9.6 轉換操作

7.9.7 條件分支和測試指令

7.10 成對單精度浮點指令和MIPS-3D ASE

7.10.1 成對單精度指令的異常

7.10.2 成對單精度的三操作數算術、乘加、改變符號和無條件移動操作

7.10.3 成對單精度轉換操作

7.10.4 成對單精度測試和條件移動指令

7.10.5 MIPS-3D指令

7.11 指令時序需求

7.12 指令加速的時序

7.13 按需初始化和使能

7.14 浮點仿真

笫8章 MIPS指令集指南

8.1 一個簡單的例子

8.2 匯編指令及其含義

8.2.1 U和非U助記符

8.2.2 除法助記符

8.2.3 指令的詳細清單

8.3 浮點指令

8.4 MIPS32/64發行版1的區別

8.4.1 在發行版2中加入的常規指令

8.4.2 發行版2新加入的特權指令

8.5 特殊指令和它們的用途

8.5.1 向左加載/向右加載:地址非對齊的存取操作

8.5.2 鏈接加載/條件存儲

8.5.3 條件傳遞指令

8.5.4 可能分支指令

8.5.5 整數乘累加指令和乘加指令

8.5.6 浮點乘加指令

8.5.7 多浮點條件標志位

8.5.8 緩存數據預取

8.5.9 存取內存屏障:Sync指令

8.5.10 冒險屏蔽指令

8.5.11 Synci:指令寫入的緩存管理

8.5.12 讀取硬件寄存器

8.6 指令的機器編碼

8.6.1 指令編碼表中的域

8.6.2 指令編碼表的注意事項

8.6.3 編碼方式和處理器的簡單實現

8.7 指令集的功能分組

8.7.1 空操作

8.7.2 寄存器間的數據傳遞指令

8.7.3 常數加載指令

8.7.4 算術/邏輯操作指令

8.7.5 整數乘法、除法以及求余指令

8.7.6 整數乘累加指令

8.7.7 存取指令

8.7.8 跳轉、分支和子程序調用指令

8.7.9 斷點及陷阱指令

8.7.10 協處理器0功能

8.7.11 浮點操作指令

8.7.12 用戶模式下對"底層"硬件的有限訪問

第9章 閱讀MIPS匯編語

9.1 一個簡單的例子

9.2 句法

9.3 指令的約定

9.3.1 計算指令:3寄存器、2寄存器和1寄存器

9.3.2 立即數:帶常量的計算指令

9.3.3 關于64位和32位指令

9.4 尋址模式

9.5 目標文件和內存布

第10章 在MIPS體系結構上移植軟件

10.1 MIPS應用的底層軟件:經常會遇到問題的列表

10.2 尾端:字、字節和位的順序

10.2.1 位、字節、字和整數

10.2.2 軟件和尾端

10.2.3 硬件和尾端

10.2.4 MIPS CPU的雙尾端軟件

10.2.5 可移植性和尾端無關代碼

10.2.6 尾端和外來數據

10.3 可見緩存的問題

10.3.1 緩存管理和DMA數據

10.3.2 緩存管理和寫指令:自修改代碼

10.3.3 緩存管理和非緩存或寫透數據

10.3.4 緩存別名和頁面著色

10.4 存儲訪問順序和重排

10.4.1 排序與寫緩沖

10.4.2 實現wbflush

10.5 寫C程序

10.5.1 用GNU C編譯器包裝匯編代碼

10.5.2 映射為內存的I/O寄存器和"Volatile"

10.5.3 用C寫MIPS應用程序的其他問題

第11章 MIPS軟件標準(ABI)

11.1 數據表示和對齊

11.1.1 基本類型的大小

11.1.2 "long"型和指針型數據大小

11.1.3 對齊要求

11.1.4 基本類型的內存布局和尾端如何產生影響

11.1.5 內存的布局結構、數組類型和對齊

11.1.6 結構中的位域

11.1.7 C中的不對齊數據

11.2 參數傳遞以及MIPS ABI中的堆棧約定

11.2.1 堆棧、子例程鏈接和參數專遞

11.2.2 032的堆棧參數結構

11.2.3 使用寄存器傳遞參數

11.2.4 C庫中的例子

11.2.5 特殊的例子:傳遞結構

11.2.6 傳遞可變參數

11.2.7 函數返回值

11.2.8 擴展寄存器一使用約定:SGIn32和n64

11.2.9 堆棧布局、堆棧幀和輔助調試器

11.2.10 可變參數和stdargs

第12章 調試MIPS設計——調試和剖析特性

12.1 "EJTAG"片上調試單元

12.1.1 EJTAG歷史

12.1.2 探頭如何控制CPU

12.1.3 通過JTAG調試通信

12.1.4 調試模式

12.1.5 單步

12.1.6 dseg內存譯碼區域

12.1.7 EJTAG CPO寄存器,特殊調試

12.1.8 DCR(調試控制)內存映射寄存器

12.1.9 EJTAG斷點硬件支持

12.1.10 理解斷點條件

12.1.11 非調試斷點

12.1.12 PC取樣與EJTAG

12.1.13 使用沒有探頭的EJTAG

12.2 EJTAG之前的調試支持——break指令和CPO觀察點

12.3 PDtrace

12.4 性能計數器

第13章 GNU幾inux概覽

13.1 組件

13.2 內核代碼的層次

13.2.1 異常模式下的MIPS CPU

13.2.2 屏蔽部分或全部中斷的MIPS CPU

13.2.3 中斷上下文

13.2.4 線程上下文中執行內核

第14章 硬件與軟件如何協同工作

14.1 中斷的生命周期

14.2 線程、臨界區和原子性

14.2.1 MIPS體系結構和原子操作

14.2.2 Linux自旋鎖

14.3 系統調用時發生了什么

14.4 Linux/MIPS系統如何進行地址翻譯

14.4.1 為什么進行內存翻譯

14.4.2 基本進程布局與保護

14.4.3 映射進程地址到真實內存

14.4.4 選擇頁式映射

14.4.5 我們真正需要的

14.4.6 MIPs設計的起源

14.4.7 記錄被修改的頁面(模擬"臟"位)

14.4.8 內核如何服務一個TLB重填異常

14.4.9 TLB的注意事項與維護

14.4.10 內存翻譯與64位指針

第15章 Linux內核中的MIPS特有問題

15.1 顯式緩存管理

15.1.1 DMA設備訪問

15.1.2 寫入指令稍后執行

15.1.3 緩存/內存映射問題

15.1.4 緩存別名

15.2 CPO流水線冒險

15.3 多處理器系統與一致性緩存

15.4 對一個關鍵例程的極度優化調整

第16章 Linux應用程序代碼、PIC和庫

16.1 鏈接單元如何進入程序

16.2 全局偏移表(GOT)組織

附錄A MIPS多線程

附錄B MIPS指令集的其他可選擴展

MIPS術語表

參考文獻

在線預覽

第1章 RISC和MIPS

在RISC體系結構中,MIPS是雅的一種,甚至連競爭對手也不得不承認這一點。這一點,從后來的體系結構,如DEC的Alpha和惠普的Precision受到MIPS的巨大影響也可以明顯地看出來。MIPS自身優雅的設計雖然不能在充滿競爭的市場中保障長盛不衰,但其微處理器卻總能躋身于每一代最有效率的微處理器之列并保持最簡潔的設計。

對MIPS計算機系統公司而言,相對簡潔的設計是一種商業上的需要,該公司起源于1985年一個制造并銷售芯片的學術項目。后來,該體系結構得到了(或許現在繼續得到)工業界制造商們最廣泛的支持——從生產專用集成電路核心(ASIC core)的廠商,如MIPS Technologies、飛利浦,到制造低成本CPU的廠商,如IDT、AMD/Alchemy,再到廣泛應用的嵌入式領域中的64位CPU廠商,如IPMC—Sierra、東芝和Broadcom。

在低端,MIPS CPU在系統芯片(system on a chip)中用肉眼很難看到;而在高端,Intrinsity公司非凡的處理器可以以2 GHz運行——一個無可匹敵的速度,當然功耗/熱量無限攀升的當代PC機除外。

ARM吸引了更多的眼球,但MIPS依然保持了足夠良好的銷量:2004年在嵌入式應用中就銷售了1億個CPU。

MIPS CPU是一種RISC體系結構的CPU,產生于一個學術研究與開發蓬勃發展的特殊時期。RISC(精簡指令集計算)是一個很有魅力的縮寫名詞,就像類似的其他很多縮寫名詞一樣,其混淆的事實比其揭露的事實更多。但對于1986年到1989年間出現的許多新的CPU體系結構(它們的性能都應歸功于幾年前的一系列開創性研究項目中發現的一些重要思想)來說,RISC這個詞卻真正為它們提供了一個有用的標簽。有人曾評論到:"1984年以后定義的計算機體系結構都是RISC的"。這句話盡管像是在嘲諷產業界對這個詞語的用法,但這一評論在技術上也是事實——1984年以后設計的計算機,沒有任何一款能夠忽視RISC先驅者們的工作。

……

網友評論(不代表本站觀點)

來自morrel**的評論:

這批書是為圖書角購買的,大家都反饋內容很不錯,贊一個

2014-06-14 11:12:54
來自morrel**的評論:

這本書買了多次了,工具書比較實用

2014-06-14 11:13:24
來自fantasy**的評論:

這個商品不太好

2014-06-14 14:06:15
來自無昵稱**的評論:

幫小盆友買的,應該不錯

2014-09-19 13:06:58
來自無昵稱**的評論:

對MIPS講解的很好,是老師讓買的。

2014-09-19 14:51:24
來自三刀踏**的評論:

這個商品不錯~

2014-10-16 09:25:14
來自王不留**的評論:

這個商品不錯~

2014-11-12 11:54:47
來自東東樂**的評論:

很不錯的一本書。

2016-09-28 17:30:49
來自無昵稱**的評論:

翻譯很爛,讀起來很拗口翻譯很爛,讀起來很拗口翻譯很爛,讀起來很拗口

2013-07-07 22:35:29
來自wangjun**的評論:

聽說可以但沒仔細看 粗略瀏覽了下 還可以

2009-01-08 12:59:23
來自yuekcc**的評論:

上星期訂的書,一個星期后才收到。這次發貨有點慢呀。書的質量還好,不過發現里面居然有兩沒有印好,只看到一部分文字!~~

2009-03-03 20:23:15
來自斑魚**的評論:

中文不怎么樣。如果有能力的話。最好看看原版的。。知識點也多點。更詳細

2009-08-17 13:16:21
來自liyi520**的評論:

正在學習,聽說是嵌入式處理器比較經典的教材

2011-12-07 20:32:27
來自萊恩0哈**的評論:

最近在研究MMU的機理,需要一本說CPU的書,剛好

2009-08-15 17:19:01
來自無昵稱**的評論:

在反編譯,看了此書工作完成了一半,繼續努力,此書確實名副其實.

2011-12-02 23:24:57
來自無昵稱**的評論:

這個商品不錯,就是送達的時候,書有點破損,書很好,是mips的經典之作

2013-07-31 18:43:25
來自無昵稱**的評論:

書的質量很好,雜志之家也是一家很好的電商,好評。

2014-07-24 11:21:28
來自hellowo**的評論:

對于了解經典的RISC體系結構來說是本優雅易懂的書,就是書的紙張不太好,顏色都不統一,還很薄,都敢太用力翻,不知道出版商怎么回事。

2010-12-10 16:26:17
來自晚飯不**的評論:

紙張質量一般,不過內容很喜歡。MIPS的經典之作

2012-08-20 10:27:53
來自sunseed**的評論:

講MIPS的書本來就少,不過終于有一本了,呵呵,欣慰

2009-05-04 15:03:53
來自無昵稱**的評論:

不少網友認為是經典,但沒有MIPS III的內容, 出版早了一點, 了解MIPS歷史很好, 想通過這本書了解龍芯的架構,還是令人失望的!

2010-06-16 20:55:29
來自工大小**的評論:

單獨講解MIPS方面的書,還是比較少,不過這本描述還是相當詳盡的。雖然還沒有真正看完這本書,但現在是受益匪淺,期待后續的閱讀中,繼續受益!值得推薦的一本好書。

2013-09-02 10:31:22
來自wacc131**的評論:

MIPS的書好少啊,這本書從內容說應該算不錯的了,當當送貨相當快,當當的書和其他商城有的一拼。

2014-10-31 21:41:02
來自無昵稱**的評論:

MIPS經典的書,做比較多的是ARM,買本MIPS的書只是想更了解這方面的東東,粗看了一遍,還沒深入研究

2012-05-22 22:40:53
來自casperz**的評論:

MIPS體系結構必讀啊,還是紙質的書看起來舒服

2014-05-06 22:42:17
來自紙上幻**的評論:

計算機體系結構真的是一門神課,需要對于組成原理,匯編語言等計算的硬件相關知識有一定的理解,MIPS體系結構透視或許能夠幫助你在現實中走的更遠一點。

2014-06-08 19:11:27
來自cmd2000**的評論:

本書內容偏向于軟件。目錄中的標題雖然說的都是硬件,但是事實上介紹的是寄存器。所以看這本書需要有匯編語言和計算機原理方面的基礎。這本書對于使用MIPS處理器進行底層驅動開發的程序人員是適合的。第8章的MIPS指令集完全指南更是本書的精華。當然書中的一些長句,可能不大好理解,還要結合上下文來判斷,如“流水線的設計規則沒有實現可以操作內存變量的指令”。這句話也許可以這樣說:流水線的結構使處理器沒能實現間接尋址。如果進一步轉換成“流水線的結構使處理器被迫放棄間接尋址”那就更好了。可見英語中的從句,翻譯時要謹慎對待,否則一不小心就會翻譯成費思量…

2008-12-09 20:56:07

免責聲明

更多出版社
主站蜘蛛池模板: 西贡区| 古田县| 山阴县| 莱州市| 天水市| 长垣县| 屏边| 大渡口区| 镇宁| 中牟县| 德清县| 九寨沟县| 梁平县| 丁青县| 大同市| 晋中市| 安泽县| 安吉县| 左云县| 溧阳市| 缙云县| 栾川县| 布拖县| 天全县| 绥滨县| 普定县| 巴林右旗| 兰州市| 河西区| 乐昌市| 合江县| 五华县| 宕昌县| 搜索| 罗平县| 洛阳市| 仙游县| 信宜市| 连城县| 福海县| 哈巴河县|