嵌入式系統設計師考試筆記之基礎知識篇
一、引言
本文引用地址:http://dyxdggzs.com/article/201609/303842.htm自《嵌入式系統設計師考試復習筆記之存儲管理篇》在嵌入式在線(xiàn)的博客出現后,意外的得到很多朋友的關(guān)注和評論,收到不少朋友的郵件,問(wèn)一些有關(guān)考試的問(wèn)題,希望得到我的復習筆記的其他部分。我非常感謝他們,他們的熱切關(guān)注,使我有了繼續往下寫(xiě)的無(wú)限動(dòng)力,使我萌生了將我以前的復習筆記、考試經(jīng)驗結合大綱教程并重新按《教程》的章節順序整理一份適合考生復習的筆記手冊,筆記后面再分析歷年的真題,按章節考點(diǎn)找出相關(guān)的考題進(jìn)行分析,希望能和有興趣的人們一起討論討論。
嵌入式系統設計師的一天考試分為上午和下午部分,兩部分的考試方式、試題難度、考點(diǎn)分布和復習方法都是不同的。這次我們討論的是嵌入式系統基礎知識,我本人覺(jué)得,這部分出下午大題的可能性不大,主要是分布在上午的75道選擇題之中。
從歷年的真題和考試大綱來(lái)看,上午的選擇題主要考查一些基本概念,重要原理的理解,一些關(guān)鍵技術(shù)和一些重要的原理引申出來(lái)的簡(jiǎn)單計算。根據這些考試特點(diǎn),復習的時(shí)候可以采用適當的策略,當然每個(gè)人的方法都是不一樣的,適合自己的辦法才是最好的辦法。方法大家可以自己慢慢去體會(huì ),我的也不多說(shuō)了,通過(guò)筆記和真題分析就可以體現處理。對于很多關(guān)鍵的知識點(diǎn)和基本概念,除了記住之外還要徹底理解,否則出題的時(shí)候會(huì )進(jìn)行一些變換,或者引申一些計算,那么就算你知道考那個(gè)考點(diǎn),可能你也做不好。
在復習的過(guò)程中,你要記?。耗悴皇且家粋€(gè)很高的分數,而是要考一個(gè)通過(guò)的分數,在復習過(guò)程中可以放棄一些內容,只要保證在大部分基本概念,關(guān)鍵技術(shù),重要原理和歷年考點(diǎn)上都把握住,能夠拿到需要的分數就可以了。
二、復習筆記
1、嵌入式系統的定義
(1)定義:以應用為中心,以計算機技術(shù)為基礎,軟硬件可裁剪,適應應用系統對功能、可靠性、成本、體積、功耗嚴格要求的專(zhuān)用計算機系統。
(2)嵌入式系統發(fā)展的4個(gè)階段:無(wú)操作系統階段、簡(jiǎn)單操作系統階段、實(shí)時(shí)操作系統階段、面向Internet階段。
(3)知識產(chǎn)權核(IP核):具有知識產(chǎn)權的、功能具體、接口規范、可在多個(gè)集成電路設計中重復使用的功能模塊,是實(shí)現系統芯片(SOC)的基本構件。
(4)IP核模塊有行為、結構和物理3級不同程度的設計,對應描述功能行為的不同可以分為三類(lèi):軟核、固核、硬核。
2、嵌入式系統的組成:硬件層、中間層、系統軟件層和應用軟件層
(1)硬件層:嵌入式微處理器、存儲器、通用設備接口和I/O接口。
嵌入式核心模塊=微處理器+電源電路+時(shí)鐘電路+存儲器
Cache:位于主存和嵌入式微處理器內核之間,存放的是最近一段時(shí)間微處理器使用最多的程序代碼和數據。它的主要目標是減小存儲器給微處理器內核造成的存儲器訪(fǎng)問(wèn)瓶頸,使處理速度更快。
(2)中間層(也稱(chēng)為硬件抽象層HAL或者板級支持包BSP):它將系統上層軟件和底層硬件分離開(kāi)來(lái),使系統上層軟件開(kāi)發(fā)人員無(wú)需關(guān)系底層硬件的具體情況,根據BSP層提供的接口開(kāi)發(fā)即可。
BSP有兩個(gè)特點(diǎn):硬件相關(guān)性和操作系統相關(guān)性。
設計一個(gè)完整的BSP需要完成兩部分工作:
A、 嵌入式系統的硬件初始化和BSP功能。
片級初始化:純硬件的初始化過(guò)程,把嵌入式微處理器從上電的默認狀態(tài)逐步設置成系統所要求的工作狀態(tài)。
板級初始化:包含軟硬件兩部分在內的初始化過(guò)程,為隨后的系統初始化和應用程序建立硬件和軟件的運行環(huán)境。
系統級初始化:以軟件為主的初始化過(guò)程,進(jìn)行操作系統的初始化。
B、 設計硬件相關(guān)的設備驅動(dòng)。
(3)系統軟件層:由RTOS、文件系統、GUI、網(wǎng)絡(luò )系統及通用組件模塊組成。
RTOS是嵌入式應用軟件的基礎和開(kāi)發(fā)平臺。
(4)應用軟件:由基于實(shí)時(shí)系統開(kāi)發(fā)的應用程序組成。
3、實(shí)時(shí)系統
(1)定義:能在指定或確定的時(shí)間內完成系統功能和對外部或內部、同步或異步時(shí)間做出響應的系統。
(2)區別:通用系統一般追求的是系統的平均響應時(shí)間和用戶(hù)的使用方便;而實(shí)時(shí)系統主要考慮的是在最壞情況下的系統行為。
(3)特點(diǎn):時(shí)間約束性、可預測性、可靠性、與外部環(huán)境的交互性。
(4)硬實(shí)時(shí)(強實(shí)時(shí)):指應用的時(shí)間需求應能夠得到完全滿(mǎn)足,否則就造成重大安全事故,甚至造成重大的生命財產(chǎn)損失和生態(tài)破壞,如:航天、軍事。
(5)軟實(shí)時(shí)(弱實(shí)時(shí)):指某些應用雖然提出了時(shí)間的要求,但實(shí)時(shí)任務(wù)偶爾違反這種需求對系統運行及環(huán)境不會(huì )造成嚴重影響,如:監控系統、實(shí)時(shí)信息采集系統。
(6)任務(wù)的約束包括:時(shí)間約束、資源約束、執行順序約束和性能約束。
4、實(shí)時(shí)系統的調度
(1)調度:給定一組實(shí)時(shí)任務(wù)和系統資源,確定每個(gè)任務(wù)何時(shí)何地執行的整個(gè)過(guò)程。
(2)搶占式調度:通常是優(yōu)先級驅動(dòng)的調度,如uCOS。優(yōu)點(diǎn)是實(shí)時(shí)性好、反應快,調度算法相對簡(jiǎn)單,可以保證高優(yōu)先級任務(wù)的時(shí)間約束;缺點(diǎn)是上下文切換多。
(3)非搶占式調度:通常是按時(shí)間片分配的調度,不允許任務(wù)在執行期間被中斷,任務(wù)一旦占用處理器就必須執行完畢或自愿放棄,如WinCE。優(yōu)點(diǎn)是上下文切換少;缺點(diǎn)是處理器有效資源利用率低,可調度性不好。
(4)靜態(tài)表驅動(dòng)策略:系統在運行前根據各任務(wù)的時(shí)間約束及關(guān)聯(lián)關(guān)系,采用某種搜索策略生成一張運行時(shí)刻表,指明各任務(wù)的起始運行時(shí)刻及運行時(shí)間。
(5)優(yōu)先級驅動(dòng)策略:按照任務(wù)優(yōu)先級的高低確定任務(wù)的執行順序。
(6)實(shí)時(shí)任務(wù)分類(lèi):周期任務(wù)、偶發(fā)任務(wù)、非周期任務(wù)。
(7)實(shí)時(shí)系統的通用結構模型:數據采集任務(wù)實(shí)現傳感器數據的采集,數據處理任務(wù)處理采集的數據、并將加工后的數據送到執行機構管理任務(wù)控制機構執行。
5、嵌入式微處理器體系結構
(1)馮諾依曼結構:程序和數據共用一個(gè)存儲空間,程序指令存儲地址和數據存儲地址指向同一個(gè)存儲器的不同物理位置,采用單一的地址及數據總線(xiàn),程序和數據的寬度相同。例如:8086、ARM7、MIPS…
(2)哈佛結構:程序和數據是兩個(gè)相互獨立的存儲器,每個(gè)存儲器獨立編址、獨立訪(fǎng)問(wèn),是一種將程序存儲和數據存儲分開(kāi)的存儲器結構。例如:AVR、ARM9、ARM10…
評論