注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡硬件、外部設備與維護SiFive 經(jīng)典RISC-V FE310微控制器原理與實踐

SiFive 經(jīng)典RISC-V FE310微控制器原理與實踐

SiFive 經(jīng)典RISC-V FE310微控制器原理與實踐

定 價:¥128.00

作 者: 暫缺
出版社: 電子工業(yè)出版社
叢編項:
標 簽: 暫缺

ISBN: 9787121402036 出版時間: 2020-12-01 包裝: 平裝
開本: 16開 頁數(shù): 336 字數(shù):  

內容簡介

  本書以讓讀者快速掌握FE310嵌入式微控制器為目的,由淺入深地帶領讀者進入RISC-Ⅴ的世界。本書共分為7章,系統(tǒng)地介紹了SiFive E系列32位RISC-Ⅴ微控制器的體系結構、SiFive E31內核、片內存儲系統(tǒng)、系統(tǒng)控制模塊、外圍設備接口的特點與性能;還介紹了SiFive Freedom Studio集成開發(fā)環(huán)境,F(xiàn)reedom E-SDK驅動庫開發(fā)及SiFive Learn Inventor開發(fā)系統(tǒng),開發(fā)系統(tǒng)連接外部紅外與超聲波模塊的拓展應用開發(fā)實例,有初步C語言基礎的讀者可輕松上手;還利用*后兩章輔以大量的例程,講解了FreeRTOS與RT-Thread等實時多任務操作系統(tǒng)的原理與應用。本書以*常見的UART接口驅動結構進行分析、移植及代碼解說,對于想要初步學習RTOS系統(tǒng)原理的人來說是一個不錯的選擇。附錄C給出了自制競賽用智能車實例,達到軟件開發(fā)結合硬件系統(tǒng)設計的效果。 本書內容豐富實用、層次清晰、敘述詳盡,書中穿插的實例程序全部使用C語言編寫,且在Freedom Studio集成開發(fā)環(huán)境上編譯通過,方便讀者教學與自學,非常適合RISC-Ⅴ嵌入式微控制器的初學者;還可以作為高等院校計算機科學與技術、電子信息工程、通信工程、自動控制、電氣自動化、嵌入式、物聯(lián)網(wǎng)等相關專業(yè)本科生或研究生,進行RISC-Ⅴ微控制器系統(tǒng)與RTOS教學的嵌入式相關課程輔助教材;本書著重培養(yǎng)學生實踐應用能力,因此還可以作為全國大學生電子設計競賽RISC-Ⅴ子賽題的培訓教材,尤其適合參加智能車競賽的同學參考;同時,還可以作為具有一定C語言知識和硬件基礎的嵌入式系統(tǒng)開發(fā)工程師和研究人員進行RISC-Ⅴ微控制器系統(tǒng)開發(fā)與應用的參考書。

作者簡介

  陳宏銘博士擁有超過二十年的半導體相關行業(yè)經(jīng)驗,目前擔任上海賽昉科技的技術市場資深總監(jiān)。特別專注于物聯(lián)網(wǎng)、人工智能、超算與RISC-V處理器等領域的技術趨勢,負責協(xié)助中國大陸與港澳臺的客戶。在加入上海賽昉科技之前,陳博士曾擔任創(chuàng)意電子的華東區(qū)業(yè)務總監(jiān)以及智原科技的技術與市場總監(jiān),負責評估客戶設計與市場規(guī)劃。更早前還擔任過明導國際亞太區(qū)產(chǎn)品專家,益華電腦應用工程師與聯(lián)陽半導體數(shù)字設計工程師。__eol__陳博士于臺灣清華大學獲得了電機工學學士與微電子專業(yè)工學碩士學位,在北京大學獲得了微電子專業(yè)理學博士學位。同時也擔任武漢大學電子信息學院兼職教授,江南大學物聯(lián)網(wǎng)工程學院企業(yè)講師,教授本科生有關芯片設計、制造、封測與RISC-V處理器相關的入門知識。

圖書目錄

第1章 RISC-Ⅴ的歷史和機遇 001
1.1 RISC-Ⅴ發(fā)明團隊與歷史 001
1.1.1 商業(yè)公司的指令集架構 004
1.1.2 RISC-Ⅴ指令集架構與其他指令集架構的不同點 006
1.1.3 RISC-Ⅴ發(fā)展史及其標志性事件 007
1.2 RISC-Ⅴ基金會成長的歷史 008
1.2.1 RISC-Ⅴ基金會的成員介紹 009
1.2.2 RISC-Ⅴ基金會推動20個重點領域的技術 011
1.2.3 RISC-Ⅴ基金會標準制定過程及工作群組機制 012
1.2.4 RISC-Ⅴ國際協(xié)會的誕生 013
1.3 RISC-Ⅴ的生態(tài)系統(tǒng) 013
1.3.1 RISC-Ⅴ的開發(fā)板和生態(tài)系統(tǒng) 014
1.3.2 部分RISC-Ⅴ社區(qū)生態(tài)的支持廠商 018
1.3.3 芯片設計界的RISC-Ⅴ產(chǎn)品進展 021
1.4 SiFive研發(fā)團隊技術沿革 023
1.4.1 Rocket Chip SoC生成器 024
1.4.2 使用Chisel語言編寫Rocket Chip SoC生成器 025
1.4.3 Rocket標量處理器 026
1.4.4 SiFive強力推動RISC-Ⅴ生態(tài)發(fā)展 028
第2章 RISC-Ⅴ指令集架構介紹 031
2.1 引言 031
2.2 RISC-Ⅴ指令集架構特性 031
2.2.1 簡潔性 032
2.2.2 模塊化 032
2.3 指令長度編碼和指令格式 034
2.3.1 指令長度編碼 034
2.3.2 指令格式 035
2.4 寄存器列表 036
2.4.1 通用寄存器 036
2.4.2 控制與狀態(tài)寄存器 037
2.4.3 程序計數(shù)器 038
2.5 地址空間與尋址模式 038
2.5.1 地址空間 038
2.5.2 小端格式 039
2.5.3 尋址模式 039
2.6 內存模型 039
2.7 特權模式 040
2.8 中斷和異常 041
2.8.1 中斷和異常概述 041
2.8.2 RISC-Ⅴ機器模式下的中斷架構 041
2.8.3 機器模式下中斷和異常的處理過程 042
2.9 調試規(guī)范 043
2.10 RISC-Ⅴ未來的擴展子集 044
2.10.1 B標準擴展:位操作 044
2.10.2 H特權架構擴展:支持管理程序(Hypervisor) 044
2.10.3 J標準擴展:動態(tài)翻譯語言 044
2.10.4 L標準擴展:十進制浮點 045
2.10.5 N標準擴展:用戶態(tài)中斷 045
2.10.6 P標準擴展:封裝的單指令多數(shù)據(jù)(Packed-SIMD)指令 045
2.10.7 Q標準擴展:四精度浮點 045
2.10.8 V標準擴展:基本矢量擴展 045
2.11 RISC-Ⅴ指令列表 045
2.11.1 I指令子集 046
2.11.2 M指令子集 051
2.11.3 A指令子集 052
2.11.4 F指令子集 054
2.11.5 D指令子集 055
2.11.6 C指令子集 056
第3章 SiFive FE310-G003微控制器 059
3.1 FE310-G003微控制器概述 060
3.1.1 E31 RISC-Ⅴ內核 061
3.1.2 中斷 061
3.1.3 片內存儲系統(tǒng) 061
3.1.4 始終上電(AON)模塊 062
3.1.5 通用輸入與輸出 062
3.1.6 通用異步接收器/發(fā)送器 062
3.1.7 硬件串行外設接口 062
3.1.8 脈沖寬度調制 062
3.1.9 I2C 062
3.1.10 調試支持 063
3.2 E31內核介紹 063
3.2.1 E31內核概述 063
3.2.2 中斷架構 068
3.2.3 內核本地中斷器(CLINT) 073
3.2.4 調試支持 074
3.3 E31 FE310-G003內存映射 079
3.4 啟動程序 081
3.4.1 復位向量 081
3.4.2 BootLoader 082
3.5 時鐘生成 083
3.5.1 時鐘生成概述 083
3.5.2 PRCI地址空間的使用 084
3.5.3 可校準可編程72MHz振蕩器(HFROSC) 085
3.5.4 外接16MHz晶體振蕩器(HFXOSC) 086
3.5.5 內置高頻PLL(HFPLL) 086
3.5.6 PLL輸出分頻器 088
3.5.7 內置可編程低頻環(huán)形振蕩器(LFROSC) 089
3.5.8 備用低頻時鐘(LFALTCLK) 089
3.5.9 時鐘總結 090
3.6 電源模式 090
3.6.1 運行模式 090
3.6.2 等待模式 090
3.6.3 睡眠模式 091
3.7 平臺級中斷控制器(PLIC) 091
3.7.1 內存映射 091
3.7.2 中斷源 092
3.7.3 中斷優(yōu)先級 093
3.7.4 中斷未決位 093
3.7.5 中斷使能 094
3.7.6 優(yōu)先級閾值 095
3.7.7 中斷聲明流程 095
3.7.8 中斷完成 096
3.8 一次性可編程存儲器(OTP)外設 096
3.8.1 內存映射 096
3.8.2 可編程I/O鎖定寄存器(otp_lock) 097
3.8.3 可編程I/O序列 097
3.8.4 讀序列控制寄存器(otp_rsctrl) 097
3.8.5 OTP編程警告 098
3.8.6 OTP編程過程 098
3.9 始終上電(AON)電源域 099
3.9.1 AON電源 100
3.9.2 AON時鐘 100
3.9.3 AON復位單元 100
3.9.4 上電復位電路 100
3.9.5 外部復位電路 100
3.9.6 復位原因 101
3.9.7 看門狗定時器(WDT) 101
3.9.8 實時時鐘(RTC) 101
3.9.9 備份寄存器 101
3.9.10 電源管理單元(PMU) 101
3.9.11 AON內存映射 101
3.10 看門狗定時器(WDT) 103
3.10.1 看門狗計數(shù)器(wdogcount) 104
3.10.2 看門狗時鐘選擇 104
3.10.3 看門狗配置寄存器(wdogcfg) 104
3.10.4 看門狗比較器0(wdogcmp0) 105
3.10.5 看門狗鍵值寄存器(wdogkey) 105
3.10.6 喂狗寄存器(wdogfeed) 105
3.10.7 看門狗配置 106
3.10.8 看門狗復位 106
3.10.9 看門狗中斷(wdogip0) 106
3.11 電源管理單元(PMU) 106
3.11.1 PMU概述 106
3.11.2 內存映射 107
3.11.3 PMU鍵值寄存器(pmukey) 108
3.11.4 PMU編程 108
3.11.5 初始化睡眠序列寄存器(pmusleep) 109
3.11.6 喚醒信號調理 109
3.11.7 PMU中斷使能寄存器(pmuie)和喚醒原因寄存器(pmucause) 110
3.12 實時時鐘(RTC) 111
3.12.1 RTC計數(shù)器(rtccounthi/rtccountlo) 111
3.12.2 RTC配置寄存器(rtccfg) 112
3.12.3 RTC比較器(rtccmp) 112
3.13 通用輸入輸出控制器(GPIO) 112
3.13.1 FE310-G003微控制器中的GPIO實例 114
3.13.2 內存映射 114
3.13.3 輸入/輸出值 114
3.13.4 中斷 115
3.13.5 內部上拉 115
3.13.6 驅動強度 115
3.13.7 輸出反轉 115
3.13.8 硬件I/O功能(IOF) 115
3.14 通用異步收發(fā)機(UART) 116
3.14.1 UART概述 117
3.14.2 FE310-G003微控制器中的UART實例 117
3.14.3 內存映射 117
3.14.4 發(fā)送數(shù)據(jù)寄存器(txdata) 118
3.14.5 接收數(shù)據(jù)寄存器(rxdata) 118
3.14.6 發(fā)送控制寄存器(txctrl) 118
3.14.7 接收控制寄存器(rxctrl) 119
3.14.8 中斷寄存器(ip和ie) 120
3.14.9 波特率除數(shù)寄存器(div) 120
3.15 串行外圍接口(SPI) 121
3.15.1 SPI概述 122
3.15.2 FE310-G003微控制器中的SPI實例 122
3.15.3 SPI內存映射 123
3.15.4 串行時鐘除數(shù)寄存器(sckdiv) 124
3.15.5 串行時鐘模式寄存器(sckmode) 124
3.15.6 芯片選擇ID寄存器(csid) 125
3.15.7 芯片選擇默認寄存器(csdef) 125
3.15.8 芯片選擇模式寄存器(csmode) 125
3.15.9 延遲控制寄存器(delay0和delay1) 126
3.15.10 幀格式寄存器(fmt) 127
3.15.11 發(fā)送數(shù)據(jù)寄存器(txdata) 128
3.15.12 接收數(shù)據(jù)寄存器(rxdata) 128
3.15.13 發(fā)送水印寄存器(txmark) 129
3.15.14 接收水印寄存器(rxmark) 129
3.15.15 SPI中斷寄存器(ie和ip) 129
3.15.16 SPI閃存接口控制寄存器(fctrl) 130
3.15.17 SPI閃存指令格式寄存器(ffmt) 131
3.16 脈寬調制器(PWM) 131
3.16.1 PWM概述 131
3.16.2 FE310-G003微控制器中的PWM實例 132
3.16.3 PWM內存映射 132
3.16.4 PWM計數(shù)器(pwmcount) 133
3.16.5 PWM配置寄存器(pwmcfg) 133
3.16.6 刻度化PWM計數(shù)器(pwms) 135
3.16.7 PWM比較器(pwmcmp0~pwmcmp3) 135
3.16.8 去毛刺和黏性電路 136
3.16.9 產(chǎn)生左向或右向的PWM波形 137
3.16.10 產(chǎn)生中心對齊(相位校正)PWM波形 137
3.16.11 使用組合生成任意的PWM波形 138
3.16.12 生成單次波形 138
3.16.13 PWM中斷 139
3.17 集成電路(I2C)主設備接口 139
3.18 調試接口 139
3.18.1 JTAG TAPC狀態(tài)機 139
3.18.2 復位JTAG邏輯 139
3.18.3 JTAG計時器 140
3.18.4 JTAG標準說明 140
3.18.5 JTAG調試命令 140
第4章 使用Freedom E-SDK進行軟件開發(fā) 141
4.1 SiFive Freedom Studio集成開發(fā)環(huán)境安裝與介紹 141
4.1.1 Freedom Studio簡介與安裝 141
4.1.2 啟動Freedom Studio 144
4.1.3 創(chuàng)建sifive-welcome項目 145
4.1.4 配置sifive-welcome項目 146
4.1.5 編譯sifive-welcome項目 148
4.1.6 運行sifive-welcome項目 149
4.1.7 調試程序 154
4.2 Hello World實例 156
4.2.1 新建Freedom工程 156
4.2.2 編譯生成可執(zhí)行文件 157
4.2.3 連接SiFive Learn Inventor開發(fā)系統(tǒng) 158
4.2.4 修改J-LINK配置 158
4.2.5 程序下載及調試 158
4.2.6 使用Freedom Studio在線調試程序 160
4.3 Dhrystone基準程序介紹 160
4.3.1 Dhrystone基準程序功能介紹 161
4.3.2 Dhrystone基準程序代碼結構 163
4.3.3 Dhrystone基準程序存在的問題 164
4.3.4 在SiFive Learn Inventor開發(fā)系統(tǒng)上運行Dhrystone基準程序 164
4.4 CoreMark基準程序介紹 166
4.4.1 CoreMark基準程序功能介紹 166
4.4.2 CoreMark基準程序代碼結構 168
4.4.3 在SiFive Learn Inventor開發(fā)系統(tǒng)上運行CoreMark基準程序 168
4.4.4 CoreMark與Dhrystone兩種基準程序的比較 169
第5章 FreeRTOS實時多任務操作系統(tǒng)原理與應用 171
5.1 嵌入式操作系統(tǒng) 171
5.1.1 為什么使用操作系統(tǒng) 17

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號