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

在線客服
ARM Cortex-M0指南圖書
人氣:52

ARM Cortex-M0指南

本書是全球首本系統論述ARM Cortex-M0處理器及其編程的圖書。本書既有ARM Cortex-M0處理器內核、體系結構及其應用的詳盡論述,也有指令集、編譯器、軟件開發的基本論述,甚至也涵蓋如何定位程序代碼中的錯誤和軟件...
  • 所屬分類:圖書 >計算機/網絡>計算機體系結構  
  • 作者:(英)[Joseph] Yiu
  • 產品參數:
  • 叢書名:清華開發者書庫
  • 國際刊號:9787302330042
  • 出版社:清華大學出版社
  • 出版時間:2013-08
  • 印刷時間:2013-08-01
  • 版次:1
  • 開本:12開
  • 頁數:--
  • 紙張:膠版紙
  • 包裝:平裝
  • 套裝:

內容簡介

本書是全球首本系統論述ARM Cortex-M0處理器及其編程的圖書。本書既有ARM Cortex-M0處理器內核、體系結構及其應用的詳盡論述,也有指令集、編譯器、軟件開發的基本論述,甚至也涵蓋如何定位程序代碼中的錯誤和軟件移植等方面的知識。本書適合的讀者對象包括:嵌入式產品設計工程師、嵌入式軟件開發人員、電子愛好者以及學習嵌入式系統課程(ARM Cortex-M0)的高年級本科生及研究生等。

編輯推薦

Joseph Yiu是英國ARM公司微控制器系統級設計專家,是ARM Cortex-M3和Cortex-M0設計者,作者高屋建瓴,創作了基于Cortex-M0的重量級作品——《ARM Cortex-M0指南》,這也是全球首本系統論述Cortex-M0的內核、體系結構、指令集、編譯器、程序設計及軟件移植的經典。作者配套提供了大量源代碼(可到圖書封底網址下載)。本書得到了五大專業機構六位知名專家的鼎力推薦。非常值得開發者珍藏!

作者簡介

Joseph Yiu 英國ARM公司博學專家,12年半導體行業從業經歷(在ARM公司工作10年之余)。曾參與多個處理器設計項目,包括ARM Cortex-M3和Cortex-M0,并參與了多種ARM IP(知識產權)產品的開發。Joseph Yiu為微控制器系統級設計專家,并涉獵了諸多相關領域,包括ARM Cortex-M系列微控制器軟件開發、微控制器市場以及片上系統設計技術。其他代表性著作有《The Definitive Guide to the ARM Cortex-M3, 2nd Edition》、《The Definitive Guide to ARM Cortex-M3 and Cortex-M4 Processors, 3rd Edition》(中文翻譯版即將由清華大學出版社出版發行)。

目錄

譯者序

推薦序

前言

致謝

本書約定

縮寫術語

第1章緒論

1.1為什么要選擇Cortex?M0

1.1.1能耗效率

1.1.2代碼密度

1.1.3易于使用

1.2Cortex?M0處理器的應用

1.3ARM和ARM處理器的背景

1.4Cortex?M0處理器說明和ARM體系結構

1.5ARM處理器和ARM生態系統

1.6開始使用Cortex?M0處理器

1.7本書的結構和資源

第2章Cortex?M0技術綜述

2.1Cortex?M0處理器簡介

2.2ARM Cortex?M0處理器的特性

2.2.1系統特性

2.2.2應用特性

2.2.3調試特性

2.2.4其他特性

2.3Cortex?M0處理器的優勢

2.3.1能耗效率

2.3.28位和16位架構的局限性

2.3.3易于使用,軟件可移植

2.3.4選擇多樣化

2.4低功耗應用

2.4.1門數量低

2.4.2高效率

2.4.3低功耗特性

2.4.4邏輯單元提升

2.5Cortex?M0的軟件可移植性

第3章體系結構

3.1概述

3.2系統模型

3.2.1操作模式和狀態

3.2.2寄存器和特殊寄存器

3.2.3R0?R12

3.2.4R13,棧指針(SP)

3.2.5R14,鏈接寄存器(LR)

3.2.6R15,程序計數器(PC)

3.2.7xPSR,組合程序狀態寄存器

3.2.8應用程序狀態寄存器(APSR)的行為

3.2.9PRIMASK: 中斷屏蔽特殊寄存器

3.2.10CONTROL: 特殊寄存器

3.3存儲器系統

3.4棧空間操作

3.5異常和中斷

3.6嵌套向量中斷控制器(NVIC)

3.6.1靈活的中斷管理

3.6.2支持嵌套中斷

3.6.3向量化的異常入口

3.6.4中斷屏蔽

3.7系統控制塊(SCB)

調試系統

3.8程序映像和啟動流程

第4章Cortex?M0編程入門

4.1嵌入式系統編程入門

4.1.1微控制器是如何啟動的

4.1.2嵌入式程序設計

4.2輸入和輸出

4.3開發流程

4.4C編程和匯編編程

4.5什么是程序映像

4.5.1向量表

4.5.2C啟動代碼

4.5.3程序代碼

4.5.4C庫代碼

4.5.5RAM中的數據

4.6C編程: 數據類型

4.7用C語言操作外設

4.8Cortex微控制器軟件接口標準(CMSIS)

4.8.1CMSIS介紹

4.8.2CMSIS中有什么是標準化的

4.8.3CMSIS的組織結構

4.8.4使用CMSIS

4.9CMSIS的優勢

第5章指令集

5.1ARM和Thumb指令集的背景

5.2匯編基礎

5.2.1匯編語法一覽

5.2.2后綴的使用

5.2.3Thumb代碼和統一匯編語言(UAL)

5.2.4指令列表

5.2.5處理器內移動數據

5.2.6存儲器訪問

5.2.7棧空間訪問

5.2.8算術運算

5.2.9邏輯運算

5.2.10移位和循環操作

5.2.11展開和順序反轉操作

5.2.12程序流控制

5.2.13存儲器屏障指令

5.2.14異常相關指令

5.2.15休眠模式特性相關指令

5.2.16其他指令

5.3偽指令

第6章指令集使用實例

6.1概述

6.2程序控制

6.2.1If?Else

6.2.2循環

6.2.3進一步了解跳轉指令

6.2.4跳轉條件的典型用法

6.2.5函數調用和函數返回

6.2.6跳轉表

6.3數據訪問

6.3.1簡單數據訪問

6.3.2使用存儲器訪問指令的例子

6.4數據類型轉換

6.4.1數據大小的轉換

6.4.2大小端轉換

6.5數據處理

6.5.164位/128位加法

6.5.264位/128位減法

6.5.3整數除法

6.5.4無符號整數開方根

6.5.5位和位域運算

第7章存儲器系統

7.1概述

7.2存儲器映射

7.3程序存儲器,Boot Loader和存儲器重映射

7.4數據存儲器

7.5支持小端和大端

7.5.1數據類型

7.5.2硬件行為對編程的影響

7.5.3數據對齊

7.5.4訪問非法地址

7.5.5多寄存器加載和存儲指令的使用

7.6存儲器屬性

第8章異常和中斷

8.1什么是異常和中斷

8.2Cortex?M0處理器的異常類型

8.2.1不可屏蔽中斷(NMI)

8.2.2硬件錯誤

8.2.3SVC(請求管理調用)

8.2.4PendSV(可掛起的系統調用)

8.2.5系統節拍

8.2.6中斷

8.3異常優先級定義

8.4向量表

8.5異常流程概述

8.5.1接受異常請求

8.5.2壓棧和出棧

8.5.3異常返回指令

8.5.4末尾連鎖

8.5.5延遲到達

8.6EXC_RETURN

8.7異常入口流程的細節

8.7.1壓棧

8.7.2取出向量并更新PC

8.7.3寄存器更新

8.8異常退出流程的細節

8.8.1寄存器出棧

8.8.2從返回地址取值并執行

第9章中斷控制和系統控制

9.1NVIC和系統控制塊特性

9.2中斷使能和清除使能

9.3中斷掛起和清除掛起

9.4中斷優先級

9.5中斷控制的通用匯編代碼

9.5.1使能和禁

在線預覽

21.5 Cortex-M1和Cortex-M0之間的差異

Cortex-M1和Cortex-M0都是基于ARMv6-M架構的,所以它們之間的差別要相對小一些。

21.5.1 指令集

在Cortex-M1處理器中,WFI、WFE和SEV指令就像NOP一樣,目前的Cortex-M1處理器不具備休眠特性。

SVC指令在Cortex-M1上也是可選的(根據FPGA設計者的不同配置),而對于Cortex-M0處理器,SVC指令總是可用的。

21.5.2 NVIC

SVC和PendSV在Cortex-M1上是可選的,而在Cortex-M0上卻總是存在的。兩個處理器間的中斷等待也是不同的,一些和中斷等待有關的優化(如零誤差)在目前的Cortex-M1上就是不成立的了。

21.5.3 系統級特性

為了實現和FPGA之間的高速訪問,Cortex-M1上具有高速緩存(TCM),這樣FPGA上的存儲塊就可以直接連到Cortex-M1,相比較而言,Cortex-M0則具有像WIC(喚醒中斷控制器)之類的低功耗支持特性。

這兩種處理器在配置選項上也有很多區別,并且這些選項只適用于FPGA設計者(Cortex-M1用戶)或者ASIC設計者(Cortex-M0微控制器供應商)。例如,Cortex-M1具有串行線和JTAG兩種調試接口,而Cortex-M0微控制器一般只支持其中的一種。

21.6 在Cortex-M0和Cortex-M1之間移植軟件

總體而言,在Cortex-M0和Cortex-M1之間移植軟件非常容易,除了外設編程模型的區別以外,其他需要改動的就很少了。

由于兩個處理器基于相同的指令集以及同版本的架構,移植時軟件代碼往往可以直接使用,的例外是軟件代碼可能需要使用休眠特性。由于Cortex-M1不支持休眠模式,使用了WFI和WFE的應用程序代碼就需要修改了。

由于執行時間的差異,軟件代碼可能需要一些小的調整。

寫這本書的時候,Cortex-M1還沒有可用的CMSIS軟件包,不過由于兩者基于相同的ARMv6-M架構,你可以將Cortex-M0的文件原樣用到Cortex-M1編程中。 21.5 Cortex-M1和Cortex-M0之間的差異

Cortex-M1和Cortex-M0都是基于ARMv6-M架構的,所以它們之間的差別要相對小一些。

21.5.1 指令集

在Cortex-M1處理器中,WFI、WFE和SEV指令就像NOP一樣,目前的Cortex-M1處理器不具備休眠特性。

SVC指令在Cortex-M1上也是可選的(根據FPGA設計者的不同配置),而對于Cortex-M0處理器,SVC指令總是可用的。

21.5.2 NVIC

SVC和PendSV在Cortex-M1上是可選的,而在Cortex-M0上卻總是存在的。兩個處理器間的中斷等待也是不同的,一些和中斷等待有關的優化(如零誤差)在目前的Cortex-M1上就是不成立的了。

21.5.3 系統級特性

為了實現和FPGA之間的高速訪問,Cortex-M1上具有高速緩存(TCM),這樣FPGA上的存儲塊就可以直接連到Cortex-M1,相比較而言,Cortex-M0則具有像WIC(喚醒中斷控制器)之類的低功耗支持特性。

這兩種處理器在配置選項上也有很多區別,并且這些選項只適用于FPGA設計者(Cortex-M1用戶)或者ASIC設計者(Cortex-M0微控制器供應商)。例如,Cortex-M1具有串行線和JTAG兩種調試接口,而Cortex-M0微控制器一般只支持其中的一種。

21.6 在Cortex-M0和Cortex-M1之間移植軟件

總體而言,在Cortex-M0和Cortex-M1之間移植軟件非常容易,除了外設編程模型的區別以外,其他需要改動的就很少了。

由于兩個處理器基于相同的指令集以及同版本的架構,移植時軟件代碼往往可以直接使用,的例外是軟件代碼可能需要使用休眠特性。由于Cortex-M1不支持休眠模式,使用了WFI和WFE的應用程序代碼就需要修改了。

由于執行時間的差異,軟件代碼可能需要一些小的調整。

寫這本書的時候,Cortex-M1還沒有可用的CMSIS軟件包,不過由于兩者基于相同的ARMv6-M架構,你可以將Cortex-M0的文件原樣用到Cortex-M1編程中。

……

媒體評論

"對于微控制器使用者來說,現在是讓人非常興奮的時期,許多供應商推出的ARMCortex-M設備的種類越來越多,而且應用范圍也越來越廣泛。許多使用8位和16位控制器的用戶轉而使用基于ARMCortex-M的設備,有了對ARMCortex-M0的介紹,他們都很驚訝這些設備這么容易使用而且32位機的性價比會這么高。因此,我很榮幸JosephYiu為用戶寫了這樣一份ARM Cortex-M0設備指南,作為之前的8位機用戶以及ARMCortex-M家族的,Joseph在指導新用戶接觸ARMCortex微控制器,以及給高級用戶分享Cortex-M0的細節知識方面,確實有獨到之處。

——Dominic Pajak博士 (ARM Cortex-M0產品經理)

"對于微控制器使用者來說,現在是讓人非常興奮的時期,許多供應商推出的ARM Cortex-M設備的種類越來越多,而且應用范圍也越來越廣泛。許多使用8位和16位控制器的用戶轉而使用基于ARM Cortex-M的設備,有了對ARM Cortex-M0的介紹,他們都很驚訝這些設備這么容易使用而且32位機的性價比會這么高。因此,我很榮幸Joseph Yiu為用戶寫了這樣一份ARM Cortex-M0設備指南,作為之前的8位機用戶以及ARM Cortex-M家族的,Joseph在指導新用戶接觸ARM Cortex微控制器,以及給高級用戶分享Cortex-M0的細節知識方面,確實有獨到之處。

——Dominic Pajak博士 (ARM Cortex-M0產品經理)

《ARM Cortex-M0指南》的作者Joseph Yiu在ARM公司劍橋總部的處理器部門擔任MCU技術專家多年,他對Cortex-M系列的理解正如書名所述,可謂。因此本書的英文版一經推出即在使用Cortex-M0處理器的技術人員中廣受好評和追捧。書中深度解析了Cortex-M0處理器的各個技術方面及應用開發,提供了很多高級技術細節,并配套了大量作者編寫的源碼供理解和參考,堪稱內核分析與實戰開發的結合。本書的中文版經過清華出版社和譯者的精心工作后,現在終于推出,相信對于高校師生、嵌入式研發人員和愛好者、甚至半導體公司的技術人員,本書都是一本不可多得的寶典!

——時昕博士(ARM大中華區大學計劃)

《ARM Cortex-M0指南》的作者Joseph Yiu是ARM公司微控制器系統級設計專家,本書的性毋庸置疑!該書首次揭秘Cortex-M0的內核,剖析介紹其體系結構與開發方法,并不吝篇幅介紹從其他架構處理器進行軟件移植的方法,包括ARM7TDMI、ARM Cortex-M3以及8051微控制器移植的實例。,并配套提供作者親自編寫的大量實例源碼,堪稱一本Cortex-M0芯片內核分析與編程實戰的學習解決方案!必將成為廣大嵌入式產品設計工程師、嵌入式軟件開發人員、電子愛好者以及嵌入式課程學習者的閱讀“圣經”!

——與非網 創始人(蘇公雨)

ARM Cortex-M0指南》終于有了中文版,這是學習ARM Cortex-M0人的福音!該書深度剖析了系統模型、指令集以及中斷處理,把握ARM Cortex-M0的工作方式;綜合運用匯編語言和C語言實現的豐富的ARM Cortex-M0編程案例,便于讀者快速動手實踐;并系統論述軟件的開發流程,并以常用軟件開發工具為例,介紹程序設計的實戰案例;涵蓋如何定位程序代碼中的bug和軟件移植等方面的知識;尤其適合真正想從事Cortex-M0系統設計實戰的開發人員閱讀學習。

——電子發燒友網站(陳峰)

《ARM Cortex-M0指南》細致入微地介紹了ARM公司Cortex-M0處理器。本書的亮點就是講述了如何將從基于傳統MCU的嵌入式設計過渡到基于Cortex-M0的嵌入式設計。該書的出版將極大推動Cortex-M0在中國嵌入式設計領域的應用,為中國“智造”添磚加瓦。

——何賓博士(暢銷書《Xilinx FPGA設計指南》作者)

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

免責聲明

更多出版社
主站蜘蛛池模板: 兴国县| 绥阳县| 莎车县| 马公市| 平潭县| 和林格尔县| 乐东| 茂名市| 邵阳市| 岐山县| 台安县| 巩义市| 凤凰县| 集贤县| 年辖:市辖区| 仲巴县| 伊金霍洛旗| 丰镇市| 长葛市| 青州市| 临颍县| 温州市| 阿拉善盟| 长阳| 渝中区| 蒙山县| 林芝县| 曲麻莱县| 彰化市| 岐山县| 淳化县| 新晃| 饶河县| 西乌珠穆沁旗| 定西市| 工布江达县| 义马市| 垫江县| 祁门县| 沧源| 南郑县|