2021-12-28 16:44:17|已瀏覽:3038次
嵌入式系統(tǒng)基礎
1、嵌入式系統(tǒng)的定義
(1)定義:以應用為中心,以計算機技術為基礎,軟硬件可裁剪,適應應用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng)。
(2)嵌入式系統(tǒng)發(fā)展的4個階段:無操作系統(tǒng)階段、簡單操作系統(tǒng)階段、實時操作系統(tǒng)階段、面向Internet階段。
(3)知識產權核(IP核):具有知識產權的、功能具體、接口規(guī)范、可在多個集成電路設計中重復使用的功能模塊,是實現(xiàn)系統(tǒng)芯片(SOC)的基本構件。
(4)IP核模塊有行為、結構和物理3級不同程度的設計,對應描述功能行為的不同可以分為三類:軟核、固核、硬核。
2、嵌入式系統(tǒng)的組成
包含:硬件層、中間層、系統(tǒng)軟件層和應用軟件層
(1)硬件層:嵌入式微處理器、存儲器、通用設備接口和I/O接口。
嵌入式核心模塊=微處理器+電源電路+時鐘電路+存儲器
Cache:位于主存和嵌入式微處理器內核之間,存放的是最近一段時間微處理器使用最多的程序代碼和數據。它的主要目標是減小存儲器給微處理器內核造成的存儲器訪問瓶頸,使處理速度更快。
(2)中間層(也稱為硬件抽象層HAL或者板級支持包BSP).
它將系統(tǒng)上層軟件和底層硬件分離開來,使系統(tǒng)上層軟件開發(fā)人員無需關系底層硬件的具體情況,根據BSP層提供的接口開發(fā)即可。
BSP有兩個特點:硬件相關性和操作系統(tǒng)相關性。
設計一個完整的BSP需要完成兩部分工作:
A、 嵌入式系統(tǒng)的硬件初始化和BSP功能。
片級初始化:純硬件的初始化過程,把嵌入式微處理器從上電的默認狀態(tài)逐步設置成系統(tǒng)所要求的工作狀態(tài)。
板級初始化:包含軟硬件兩部分在內的初始化過程,為隨后的系統(tǒng)初始化和應用程序建立硬件和軟件的運行環(huán)境。
系統(tǒng)級初始化:以軟件為主的初始化過程,進行操作系統(tǒng)的初始化。
B、 設計硬件相關的設備驅動。
(3)系統(tǒng)軟件層:由RTOS、文件系統(tǒng)、GUI、網絡系統(tǒng)及通用組件模塊組成。
RTOS是嵌入式應用軟件的基礎和開發(fā)平臺。
(4)應用軟件:由基于實時系統(tǒng)開發(fā)的應用程序組成。
3、實時系統(tǒng)
(1)定義:能在指定或確定的時間內完成系統(tǒng)功能和對外部或內部、同步或異步時間做出響應的系統(tǒng)。
(2)區(qū)別:通用系統(tǒng)一般追求的是系統(tǒng)的平均響應時間和用戶的使用方便;而實時系統(tǒng)主要考慮的是在最壞情況下的系統(tǒng)行為。
(3)特點:時間約束性、可預測性、可靠性、與外部環(huán)境的交互性。
(4)硬實時(強實時):指應用的時間需求應能夠得到完全滿足,否則就造成重大安全事故,甚至造成重大的生命財產損失和生態(tài)破壞,如:航天、軍事。
(5)軟實時(弱實時):指某些應用雖然提出了時間的要求,但實時任務偶爾違反這種需求對系統(tǒng)運行及環(huán)境不會造成嚴重影響,如:監(jiān)控系統(tǒng)、實時信息采集系統(tǒng)。
(6)任務的約束包括:時間約束、資源約束、執(zhí)行順序約束和性能約束。
4、實時系統(tǒng)的調度
(1)調度:給定一組實時任務和系統(tǒng)資源,確定每個任務何時何地執(zhí)行的整個過程。
(2)搶占式調度:通常是優(yōu)先級驅動的調度,如uCOS。優(yōu)點是實時性好、反應快,調度算法相對簡單,可以保證高優(yōu)先級任務的時間約束;缺點是上下文切換多。
(3)非搶占式調度:通常是按時間片分配的調度,不允許任務在執(zhí)行期間被中斷,任務一旦占用處理器就必須執(zhí)行完畢或自愿放棄,如WinCE。優(yōu)點是上下文切換少;缺點是處理器有效資源利用率低,可調度性不好。
(4)靜態(tài)表驅動策略:系統(tǒng)在運行前根據各任務的時間約束及關聯(lián)關系,采用某種搜索策略生成一張運行時刻表,指明各任務的起始運行時刻及運行時間。
(5)優(yōu)先級驅動策略:按照任務優(yōu)先級的高低確定任務的執(zhí)行順序。
(6)實時任務分類:周期任務、偶發(fā)任務、非周期任務。
(7)實時系統(tǒng)的通用結構模型:數據采集任務實現(xiàn)傳感器數據的采集,數據處理任務處理采集的數據、并將加工后的數據送到執(zhí)行機構管理任務控制機構執(zhí)行。
5、嵌入式微處理器體系結構
(1)馮諾依曼結構:程序和數據共用一個存儲空間,程序指令存儲地址和數據存儲地址指向同一個存儲器的不同物理位置,采用單一的地址及數據總線,程序和數據的寬度相同。例如:8086、ARM7、MIPS…
(2)哈佛結構:程序和數據是兩個相互獨立的存儲器,每個存儲器獨立編址、獨立訪問,是一種將程序存儲和數據存儲分開的存儲器結構。例如:AVR、ARM9、ARM10…
(3)CISC與RISC的特點比較。
計算機執(zhí)行程序所需要的時間P可以用下面公式計算:
P=I×CPI×T
I:高級語言程序編譯后在機器上運行的指令數。
CPI:為執(zhí)行每條指令所需要的平均周期數。
T:每個機器周期的時間。
(4)流水線的思想:在CPU中把一條指令的串行執(zhí)行過程變?yōu)槿舾芍噶畹淖舆^程在CPU中重疊執(zhí)行。
(5)流水線的指標:
吞吐率:單位時間里流水線處理機流出的結果數。如果流水線的子過程所用時間不一樣長,則吞吐率應為最長子過程的倒數。
建立時間:流水線開始工作到達最大吞吐率的時間。若m個子過程所用時間一樣,均為t,則建立時間T=mt。
(6)信息存儲的字節(jié)順序
A、存儲器單位:字節(jié)(8位)
B、字長決定了微處理器的尋址能力,即虛擬地址空間的大小。
C、32位微處理器的虛擬地址空間位232,即4GB。
D、小端字節(jié)順序:低字節(jié)在內存低地址處,高字節(jié)在內存高地址處。
E、大端字節(jié)順序:高字節(jié)在內存低地址處,低字節(jié)在內存高地址處。
F、網絡設備的存儲順序問題取決于OSI模型底層中的數據鏈路層。
6、邏輯電路基礎
(1)根據電路是否具有存儲功能,將邏輯電路劃分為:組合邏輯電路和時序邏輯電路。
(2)組合邏輯電路:電路在任一時刻的輸出,僅取決于該時刻的輸入信號,而與輸入信號作用前電路的狀態(tài)無關。常用的邏輯電路有譯碼器和多路選擇器等。
(3)時序邏輯電路:電路任一時刻的輸出不僅與該時刻的輸入有關,而且還與該時刻電路的狀態(tài)有關。因此,時序電路中必須包含記憶元件。觸發(fā)器是構成時序邏輯電路的基礎。常用的時序邏輯電路有寄存器和計數器等。
(4)真值表、布爾代數、摩根定律、門電路的概念。
(5)NOR(或非)和NAND(與非)的門電路稱為全能門電路,可以實現(xiàn)任何一種邏輯函數。
(6)譯碼器:多輸入多輸出的組合邏輯網絡。
每輸入一個n位的二進制代碼,在m個輸出端中最多有一個有效。
當m=2n是,為全譯碼;當m<2n時,為部分譯碼。
(7)由于集成電路的高電平輸出電流小,而低電平輸出電流相對比較大,采用集成門電路直接驅動LED時,較多采用低電平驅動方式。液晶七段字符顯示器LCD利用液晶有外加電場和無外加電場時不同的光學特性來顯示字符。
(8)時鐘信號是時序邏輯的基礎,它用于決定邏輯單元中的狀態(tài)合適更新。同步是時鐘控制系統(tǒng)中的主要制約條件。
(9)在選用觸發(fā)器的時候,觸發(fā)方式是必須考慮的因素。觸發(fā)方式有兩種:
電平觸發(fā)方式:具有結構簡單的有點,常用來組成暫存器。
邊沿觸發(fā)方式:具有很強的抗數據端干擾能力,常用來組成寄存器、計數器等。
本文由培訓無憂網達內教育課程顧問老師整理發(fā)布,更多課程信息可關注嵌入式開發(fā)培訓或添加老師微信:15033336050
注:尊重原創(chuàng)文章,轉載請注明出處和鏈接 http://m.universityresearchassociates.com/news-id-10719.html 違者必究!部分文章來源于網絡由培訓無憂網編輯部人員整理發(fā)布,內容真實性請自行核實或聯(lián)系我們,了解更多相關資訊請關注嵌入式開發(fā)頻道查看更多,了解相關專業(yè)課程信息您可在線咨詢也可免費申請試課。關注官方微信了解更多:150 3333 6050