自《嵌入式系統(tǒng)設(shè)計(jì)師考試復(fù)習(xí)筆記之存儲(chǔ)管理篇》在嵌入式在線的博客出現(xiàn)后,意外的得到很多朋友的關(guān)注和評(píng)論,收到不少朋友的郵件,問一些有關(guān)考試的問題,希望得到我的復(fù)習(xí)筆記的其他部分。我非常感謝他們,他們的熱切關(guān)注,使我有了繼續(xù)往下寫的無限動(dòng)力,使我萌生了將我以前的復(fù)習(xí)筆記、考試經(jīng)驗(yàn)結(jié)合大綱教程并重新按《教程》的章節(jié)順序整理一份適合考生復(fù)習(xí)的筆記手冊(cè),筆記后面再分析歷年的真題,按章節(jié)考點(diǎn)找出相關(guān)的考題進(jìn)行分析,希望能和有興趣的人們一起討論討論。
本文引用地址:
http://butianyuan.cn/article/149516.htm嵌入式系統(tǒng)設(shè)計(jì)師的一天考試分為上午和下午部分,兩部分的考試方式、試題難度、考點(diǎn)分布和復(fù)習(xí)方法都是不同的。這次我們討論的是嵌入式系統(tǒng)基礎(chǔ)知識(shí),我本人覺得,這部分出下午大題的可能性不大,主要是分布在上午的75道選擇題之中。從歷年的真題和考試大綱來看,上午的選擇題主要考查一些基本概念,重要原理的理解,一些關(guān)鍵技術(shù)和一些重要的原理引申出來的簡單計(jì)算。根據(jù)這些考試特點(diǎn),復(fù)習(xí)的時(shí)候可以采用適當(dāng)?shù)牟呗?,?dāng)然每個(gè)人的方法都是不一樣的,適合自己的辦法才是最好的辦法。方法大家可以自己慢慢去體會(huì),我的也不多說了,通過筆記和真題分析就可以體現(xiàn)處理。對(duì)于很多關(guān)鍵的知識(shí)點(diǎn)和基本概念,除了記住之外還要徹底理解,否則出題的時(shí)候會(huì)進(jìn)行一些變換,或者引申一些計(jì)算,那么就算你知道考那個(gè)考點(diǎn),可能你也做不好。在復(fù)習(xí)的過程中,你要記住:你不是要考一個(gè)很高的分?jǐn)?shù),而是要考一個(gè)通過的分?jǐn)?shù),在復(fù)習(xí)過程中可以放棄一些內(nèi)容,只要保證在大部分基本概念,關(guān)鍵技術(shù),重要原理和歷年考點(diǎn)上都把握住,能夠拿到需要的分?jǐn)?shù)就可以了。二、復(fù)習(xí)筆記
1、嵌入式系統(tǒng)的定義
(1)定義:以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。
(2)嵌入式系統(tǒng)發(fā)展的4個(gè)階段:無操作系統(tǒng)階段、簡單操作系統(tǒng)階段、實(shí)時(shí)操作系統(tǒng)階段、面向Internet階段。(3)知識(shí)產(chǎn)權(quán)核(IP核):具有知識(shí)產(chǎn)權(quán)的、功能具體、接口規(guī)范、可在多個(gè)集成電路設(shè)計(jì)中重復(fù)使用的功能模塊,是實(shí)現(xiàn)系統(tǒng)芯片(SOC)的基本構(gòu)件。(4)IP核模塊有行為、結(jié)構(gòu)和物理3級(jí)不同程度的設(shè)計(jì),對(duì)應(yīng)描述功能行為的不同可以分為三類:軟核、固核、硬核。2、嵌入式系統(tǒng)的組成:硬件層、中間層、系統(tǒng)軟件層和應(yīng)用軟件層
(1)硬件層:嵌入式微處理器、存儲(chǔ)器、通用設(shè)備接口和I/O接口。
嵌入式核心模塊=微處理器+電源電路+時(shí)鐘電路+存儲(chǔ)器Cache:位于主存和嵌入式微處理器內(nèi)核之間,存放的是最近一段時(shí)間微處理器使用最多的程序代碼和數(shù)據(jù)。它的主要目標(biāo)是減小存儲(chǔ)器給微處理器內(nèi)核造成的存儲(chǔ)器訪問瓶頸,使處理速度更快。(2)中間層(也稱為硬件抽象層HAL或者板級(jí)支持包BSP):它將系統(tǒng)上層軟件和底層硬件分離開來,使系統(tǒng)上層軟件開發(fā)人員無需關(guān)系底層硬件的具體情況,根據(jù)BSP層提供的接口開發(fā)即可。BSP有兩個(gè)特點(diǎn):硬件相關(guān)性和操作系統(tǒng)相關(guān)性。設(shè)計(jì)一個(gè)完整的BSP需要完成兩部分工作:A、 嵌入式系統(tǒng)的硬件初始化和BSP功能。片級(jí)初始化:純硬件的初始化過程,把嵌入式微處理器從上電的默認(rèn)狀態(tài)逐步設(shè)置成系統(tǒng)所要求的工作狀態(tài)。板級(jí)初始化:包含軟硬件兩部分在內(nèi)的初始化過程,為隨后的系統(tǒng)初始化和應(yīng)用程序建立硬件和軟件的運(yùn)行環(huán)境。系統(tǒng)級(jí)初始化:以軟件為主的初始化過程,進(jìn)行操作系統(tǒng)的初始化。B、 設(shè)計(jì)硬件相關(guān)的設(shè)備驅(qū)動(dòng)。(3)系統(tǒng)軟件層:由RTOS、文件系統(tǒng)、GUI、網(wǎng)絡(luò)系統(tǒng)及通用組件模塊組成。 RTOS是嵌入式應(yīng)用軟件的基礎(chǔ)和開發(fā)平臺(tái)。(4)應(yīng)用軟件:由基于實(shí)時(shí)系統(tǒng)開發(fā)的應(yīng)用程序組成。3、實(shí)時(shí)系統(tǒng)
(1)定義:能在指定或確定的時(shí)間內(nèi)完成系統(tǒng)功能和對(duì)外部或內(nèi)部、同步或異步時(shí)間做出響應(yīng)的系統(tǒng)。
(2)區(qū)別:通用系統(tǒng)一般追求的是系統(tǒng)的平均響應(yīng)時(shí)間和用戶的使用方便;而實(shí)時(shí)系統(tǒng)主要考慮的是在最壞情況下的系統(tǒng)行為。(3)特點(diǎn):時(shí)間約束性、可預(yù)測(cè)性、可靠性、與外部環(huán)境的交互性。(4)硬實(shí)時(shí)(強(qiáng)實(shí)時(shí)):指應(yīng)用的時(shí)間需求應(yīng)能夠得到完全滿足,否則就造成重大安全事故,甚至造成重大的生命財(cái)產(chǎn)損失和生態(tài)破壞,如:航天、軍事。(5)軟實(shí)時(shí)(弱實(shí)時(shí)):指某些應(yīng)用雖然提出了時(shí)間的要求,但實(shí)時(shí)任務(wù)偶爾違反這種需求對(duì)系統(tǒng)運(yùn)行及環(huán)境不會(huì)造成嚴(yán)重影響,如:監(jiān)控系統(tǒng)、實(shí)時(shí)信息采集系統(tǒng)。(6)任務(wù)的約束包括:時(shí)間約束、資源約束、執(zhí)行順序約束和性能約束。4、實(shí)時(shí)系統(tǒng)的調(diào)度
(1)調(diào)度:給定一組實(shí)時(shí)任務(wù)和系統(tǒng)資源,確定每個(gè)任務(wù)何時(shí)何地執(zhí)行的整個(gè)過程。
(2)搶占式調(diào)度:通常是優(yōu)先級(jí)驅(qū)動(dòng)的調(diào)度,如uCOS。優(yōu)點(diǎn)是實(shí)時(shí)性好、反應(yīng)快,調(diào)度算法相對(duì)簡單,可以保證高優(yōu)先級(jí)任務(wù)的時(shí)間約束;缺點(diǎn)是上下文切換多。(3)非搶占式調(diào)度:通常是按時(shí)間片分配的調(diào)度,不允許任務(wù)在執(zhí)行期間被中斷,任務(wù)一旦占用處理器就必須執(zhí)行完畢或自愿放棄,如WinCE。優(yōu)點(diǎn)是上下文切換少;缺點(diǎn)是處理器有效資源利用率低,可調(diào)度性不好。(4)靜態(tài)表驅(qū)動(dòng)策略:系統(tǒng)在運(yùn)行前根據(jù)各任務(wù)的時(shí)間約束及關(guān)聯(lián)關(guān)系,采用某種搜索策略生成一張運(yùn)行時(shí)刻表,指明各任務(wù)的起始運(yùn)行時(shí)刻及運(yùn)行時(shí)間。(5)優(yōu)先級(jí)驅(qū)動(dòng)策略:按照任務(wù)優(yōu)先級(jí)的高低確定任務(wù)的執(zhí)行順序。(6)實(shí)時(shí)任務(wù)分類:周期任務(wù)、偶發(fā)任務(wù)、非周期任務(wù)。(7)實(shí)時(shí)系統(tǒng)的通用結(jié)構(gòu)模型:數(shù)據(jù)采集任務(wù)實(shí)現(xiàn)傳感器數(shù)據(jù)的采集,數(shù)據(jù)處理任務(wù)處理采集的數(shù)據(jù)、并將加工后的數(shù)據(jù)送到執(zhí)行機(jī)構(gòu)管理任務(wù)控制機(jī)構(gòu)執(zhí)行。5、嵌入式微處理器體系結(jié)構(gòu)
(1)馮諾依曼結(jié)構(gòu):程序和數(shù)據(jù)共用一個(gè)存儲(chǔ)空間,程序指令存儲(chǔ)地址和數(shù)據(jù)存儲(chǔ)地址指向同一個(gè)存儲(chǔ)器的不同物理位置,采用單一的地址及數(shù)據(jù)總線,程序和數(shù)據(jù)的寬度相同。例如:8086、ARM7、MIPS…
(2)哈佛結(jié)構(gòu):程序和數(shù)據(jù)是兩個(gè)相互獨(dú)立的存儲(chǔ)器,每個(gè)存儲(chǔ)器獨(dú)立編址、獨(dú)立訪問,是一種將程序存儲(chǔ)和數(shù)據(jù)存儲(chǔ)分開的存儲(chǔ)器結(jié)構(gòu)。例如:AVR、ARM9、ARM10…(3)CISC與RISC的特點(diǎn)比較(參照教程22頁)。 計(jì)算機(jī)執(zhí)行程序所需要的時(shí)間P可以用下面公式計(jì)算: P=I×CPI×T I:高級(jí)語言程序編譯后在機(jī)器上運(yùn)行的指令數(shù)。
CPI:為執(zhí)行每條指令所需要的平均周期數(shù)。 T:每個(gè)機(jī)器周期的時(shí)間。(4)流水線的思想:在CPU中把一條指令的串行執(zhí)行過程變?yōu)槿舾芍噶畹淖舆^程在CPU中重疊執(zhí)行。(5)流水線的指標(biāo): 吞吐率:單位時(shí)間里流水線處理機(jī)流出的結(jié)果數(shù)。如果流水線的子過程所用時(shí)間不一樣長,則吞吐率應(yīng)為最長子過程的倒數(shù)。 建立時(shí)間:流水線開始工作到達(dá)最大吞吐率的時(shí)間。若m個(gè)子過程所用時(shí)間一樣,均為t,則建立時(shí)間T=mt。(6)信息存儲(chǔ)的字節(jié)順序 A、存儲(chǔ)器單位:字節(jié)(8位) B、字長決定了微處理器的尋址能力,即虛擬地址空間的大小。 C、32位微處理器的虛擬地址空間位232,即4GB。 D、小端字節(jié)順序:低字節(jié)在內(nèi)存低地址處,高字節(jié)在內(nèi)存高地址處。 E、大端字節(jié)順序:高字節(jié)在內(nèi)存低地址處,低字節(jié)在內(nèi)存高地址處。 F、網(wǎng)絡(luò)設(shè)備的存儲(chǔ)順序問題取決于OSI模型底層中的數(shù)據(jù)鏈路層。6、邏輯電路基礎(chǔ)
(1)根據(jù)電路是否具有存儲(chǔ)功能,將邏輯電路劃分為:組合邏輯電路和時(shí)序邏輯電路。
(2)組合邏輯電路:電路在任一時(shí)刻的輸出,僅取決于該時(shí)刻的輸入信號(hào),而與輸入信號(hào)作用前電路的狀態(tài)無關(guān)。常用的邏輯電路有譯碼器和多路選擇器等。(3)時(shí)序邏輯電路:電路任一時(shí)刻的輸出不僅與該時(shí)刻的輸入有關(guān),而且還與該時(shí)刻電路的狀態(tài)有關(guān)。因此,時(shí)序電路中必須包含記憶元件。觸發(fā)器是構(gòu)成時(shí)序邏輯電路的基礎(chǔ)。常用的時(shí)序邏輯電路有寄存器和計(jì)數(shù)器等。(4)真值表、布爾代數(shù)、摩根定律、門電路的概念。(教程28、29頁)(5)NOR(或非)和NAND(與非)的門電路稱為全能門電路,可以實(shí)現(xiàn)任何一種邏輯函數(shù)。(6)譯碼器:多輸入多輸出的組合邏輯網(wǎng)絡(luò)。 每輸入一個(gè)n位的二進(jìn)制代碼,在m個(gè)輸出端中最多有一個(gè)有效。 當(dāng)m=2n是,為全譯碼;當(dāng)m2n時(shí),為部分譯碼。(7)由于集成電路的高電平輸出電流小,而低電平輸出電流相對(duì)比較大,采用集成門電路直接驅(qū)動(dòng)LED時(shí),較多采用低電平驅(qū)動(dòng)方式。液晶七段字符顯示器LCD利用液晶有外加電場(chǎng)和無外加電場(chǎng)時(shí)不同的光學(xué)特性來顯示字符。(8)時(shí)鐘信號(hào)是時(shí)序邏輯的基礎(chǔ),它用于決定邏輯單元中的狀態(tài)合適更新。同步是時(shí)鐘控制系統(tǒng)中的主要制約條件。(9)在選用觸發(fā)器的時(shí)候,觸發(fā)方式是必須考慮的因素。觸發(fā)方式有兩種: 電平觸發(fā)方式:具有結(jié)構(gòu)簡單的有點(diǎn),常用來組成暫存器。 邊沿觸發(fā)方式:具有很強(qiáng)的抗數(shù)據(jù)端干擾能力,常用來組成寄存器、計(jì)數(shù)器等。7、總線電路及信號(hào)驅(qū)動(dòng)
(1)總線是各種信號(hào)線的集合,是嵌入式系統(tǒng)中各部件之間傳送數(shù)據(jù)、地址和控制信息的公共通路。在同一時(shí)刻,每條通路線路上能夠傳輸一位二進(jìn)制信號(hào)。按照總線所傳送的信息類型,可以分為:數(shù)據(jù)總線(DB)、地址總線(AB)和控制總線(CB)。
(2)總線的主要參數(shù): 總線帶寬:一定時(shí)間內(nèi)總線上可以傳送的數(shù)據(jù)量,一般用MByte/s表示。 總線寬度:總線能同時(shí)傳送的數(shù)據(jù)位數(shù)(bit),即人們常說的32位、64位等總線寬度的概念,也叫總線位寬??偩€的位寬越寬,總線每秒數(shù)據(jù)傳輸率越大,也就是總線帶寬越寬。 總線頻率:工作時(shí)鐘頻率以MHz為單位,工作頻率越高,則總線工作速度越快,也即總線帶寬越寬。 總線帶寬 = 總線位寬×總線頻率/8, 單位是MBps。 常用總線:ISA總線、PCI總線、IIC總線、SPI總線、PC104總線和CAN總線等。(3)只有具有三態(tài)輸出的設(shè)備才能夠連接到數(shù)據(jù)總線上,常用的三態(tài)門為輸出緩沖器。(4)當(dāng)總線上所接的負(fù)載超過總線的負(fù)載能力時(shí),必須在總線和負(fù)載之間加接緩沖器或驅(qū)動(dòng)器,最常用的是三態(tài)緩沖器,其作用是驅(qū)動(dòng)和隔離。(5)采用總線復(fù)用技術(shù)可以實(shí)現(xiàn)數(shù)據(jù)總線和地址總線的共用。但會(huì)帶來兩個(gè)問題: A、需要增加外部電路對(duì)總線信號(hào)進(jìn)行復(fù)用解耦,例如:地址鎖存器。 B、總線速度相對(duì)非復(fù)用總線系統(tǒng)低。(6)兩類總線通信協(xié)議:同步方式、異步方式。(7)對(duì)總線仲裁問題的解決是以優(yōu)先級(jí)(優(yōu)先權(quán))的概念為基礎(chǔ)。8、電平轉(zhuǎn)換電路
(1)數(shù)字集成電路可以分為兩大類:雙極型集成電路(TTL)、金屬氧化物半導(dǎo)體(MOS)。
(2)CMOS電路由于其靜態(tài)功耗極低,工作速度較高,抗干擾能力較強(qiáng),被廣泛使用。(3)解決TTL與CMOS電路接口困難的辦法是在TTL電路輸出端與電源之間接一上拉電阻R,上拉電阻R的取值由TTL的高電平輸出漏電流IOH來決定,不同系列的TTL應(yīng)選用不同的R值。9、可編程邏輯器件基礎(chǔ)(具體參見教程51到61頁)
技術(shù)專區(qū)
評(píng)論