嵌入式系統簡介

Download Report

Transcript 嵌入式系統簡介

嵌入式系統簡介
Feng Chia University EE Computer System Lab.
大綱
Feng Chia University EE Computer System Lab.
 嵌入式系統(Embedded System)
 What is it?
 ARM(Advanced RISC Machines)
 ARM系列
 Cortex A、R 、M
 ARM Cortex M3
 應用
 功能
 系統架構
 廠商
2
嵌入式系統(Embedded System)
Feng Chia University EE Computer System Lab.
 什麼是嵌入式系統?
 為特定應用而設計的專用電腦系統
 用於控制、監視或者輔助操作的機器、設備或裝置
 帶有特定要求的預先定義的任務
 嵌入式系統無所不在
參考資料
https://zh.wikipedia.org/wiki/%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F
http://cssplab.cn.nctu.edu.tw/research/embedded.php
3
嵌入式系統架構
Feng Chia University EE Computer System Lab.
 軟體:包含應用軟體和操作系統(與PC不同之處)
 硬體:輸入/輸出(Input/Output)、處理器(Processor)、記憶
體(Memory)(大多使用EEPROM/Flash Memory)
軟體
Software
處理器
Processor
輸入
Input
參考資料
21天學通ARM嵌入式開發(第2版) 電子工業出版社
輸出
Output
記憶體
Memory
4
ARM(Advanced RISC Machines)
Feng Chia University EE Computer System Lab.
 超強大的ARM?!
 手機市佔率>95%
 不賣晶片,只賣腦袋! (IP智財授權)
 安謀的論古道今
 Cambridge Processor Unit(CPU)
 一切從水果盤開始…
 Acron Computer
 第一款RISC架構CPU
 Acorn RISC Machine(ARM)
 Advanced RISC Machines(ARM)
 注重「省電」而非「效能」
 里程碑
 從馮‧紐曼架構到哈佛架構
參考資料
5
近年來的ARM
Feng Chia University EE Computer System Lab.
 ARM7TDMI、ARM9E 、ARM11….
 Cortex系列(ARMv7)
 A:高效能開放平台設計
 需要執行複雜應用的應用處理器
 高階嵌入式作業系統(EX:行動電話、電子錢包)
 R:需要即時(real-time) 表現的高階嵌入式系統設計
 即時、高效能處理器
 低延遲(EX:高階剎車系統、硬碟控制器)
 M:嵌入式微控制器型態的系統設計
 以低成本應用及工業控制應用(含即時控制系統)
 成本、功率消耗(省電)、中斷延遲低且易於使用
參考資料
ARM Cortex-M3嵌入式系統設計入門官方教材
ARM官網上的各項文件(ARMv7-M_ARM、CortexM3TRM、CortexM3Debug,etc)
6
What can ARM do?
Feng Chia University EE Computer System Lab.
7
What can ARM do?
Feng Chia University EE Computer System Lab.
 ARM可以做什麼?
參考資料
http://www.youtube.com/watch?v=_d0LfkIut2M
8
ARM Cortex M系列
Feng Chia University EE Computer System Lab.
9
ARM Cortex M3特點
Feng Chia University EE Computer System Lab.
 採用ARMv7-M架構的32位元處理器
 特點
 高性能
 單一週期指令
 高工作時脈
 低電力耗損
 閘數少適用於低電力設計
 各種省電模式
 中斷處理
 巢狀向量中斷控制器(NVIC)支援外部中斷輸入
 可程式的中斷優先權控制
 除錯支援
 易於使用!
10
ARM Cortex M3應用
Feng Chia University EE Computer System Lab.
 低成本的微控制器
 低功率且高效能的ARM架構32-bit系統
 自動化
 低中斷延遲且支援高達240組外部中斷
 適合低成本自動化應用
 資料通信
 EX:藍芽、Zigbee
 工業控制
 消費性產品
參考資料
ARM Cortex-M3嵌入式系統設計入門官方教材
ARM官網上的各項文件(ARMv7-M_ARM、CortexM3TRM、CortexM3Debug,etc)
11
ARM Cortex-M3 功能
Feng Chia University EE Computer System Lab.
ARM Cortex-M3 功能
Pipeline
Thumb® / Thumb-2
3階
性能
1.25 至 1.50 DMIPS/MHz
記憶體保護
8個區塊
ISA
中斷
不可屏蔽中斷(NMI), 8~256
個優先權,最多240個喚醒中
斷
睡眠模式
睡眠/深度睡眠
除錯/跟踪
JTAG和SWD
指令增強
硬體除法(2-12 个週期)和
單週期乘法 (32x32) 乘法等
12
ARM Cortex-M3
Feng Chia University EE Computer System Lab.
 Thumb / Thumb-2
 Pipeline
指令N
指令N+1
指令N+2
擷取
解碼
執行
擷取
解碼
執行
擷取
解碼
執行
13
ARM Cortex M3 系統架構
Feng Chia University EE Computer System Lab.
14
ARM Cortex M3 系統架構
Feng Chia University EE Computer System Lab.












參考資料
ARM Cortex-M3嵌入式系統設計入門官方教材
ARM官網上的各項文件(ARMv7-M_ARM、CortexM3TRM、CortexM3Debug,etc)


CM3Core:CortexM3處理器中央核心
NVIC:巢狀向量中斷控制器
SYSTICK計時器:作業系統使用的簡
單計時器
MPU:記憶體保護單元
AHB to APB:轉換AHB至APB的匯流
排橋
CM3BusMatrix:內部的AHB內部連
結
AHB-AP:AHB存取埠;將命令從序列
線/SWJ介面至AHB傳輸做轉換
SW-DP/SWJ-DP介面:序列線/序列線
JTAG除錯埠(DP)介面:使用序列線協
定或者傳統的JTAG協定(for SWJDP)實作的除錯介面連結
ETM:內嵌的追蹤巨集格;處理為了
除錯作指令追蹤的模組(選擇性的)
DWT:資料觀察點與追蹤單元;處理
作為除錯的資料觀察點功能的模組
ITM:儀器追蹤巨集格
TPIU:追蹤埠介面單元;傳送除錯資
料到外部追蹤抓取硬體
FPB:快閃補釘與中斷點單元
ROM表:存放組態資訊的一個小型查
15
看表
ARM Cortex M3 系統架構
Feng Chia University EE Computer System Lab.
參考資料
ARM Cortex-M3嵌入式系統設計入門官方教材
ARM官網上的各項文件(ARMv7-M_ARM、CortexM3TRM、CortexM3Debug,etc)
16
ARM Cortex M3
Feng Chia University EE Computer System Lab.
 意法半導體(ST)、德州儀器(TI) 、Atmel 、智恩普半導
體(NXP)…, etc
 盛群半導體Holtek
17
(補充) RISCv.sCISC
Feng Chia University EE Computer System Lab.
 CISC(complex instruction set computer)
 複雜的單一指令
 指令集中,僅有約20%的指令佔程式的80%
剩餘80%的指令僅佔程式20%
 RISC (Reduced instruction set computer)
 將複雜的指令用常用的指令組合
 優點:指令長度固定、處理器簡化、…
 缺點:程式大→佔記憶體(複雜指令由許多小指令完
成)→花較長時間讀取指令
參考資料
Google搜尋
18
(補充)馮紐曼架構
Feng Chia University EE Computer System Lab.
 馮紐曼架構(von Neumann architecture)
 中央處理器與儲存裝置分開
 程式和資料儲存在同一個記憶體中
19
(補充)哈佛架構
Feng Chia University EE Computer System Lab.
 哈佛架構(Harvard architecture)
 程式和資料分開儲存至不同的記憶體中
20