嵌入式基礎

2021-07-14 18:49:49 字數 2640 閱讀 8437

以應用為中心、以計算機技術為基礎,軟硬體可裁剪,應用系統對功能、可靠性、成本、體積、功耗和應用環境有特殊要求的專用計算機系統。是將應用程式、作業系統和計算機硬體整合在一起的系統。

1.嵌入式系統的構成:嵌入式微處理器   嵌入式作業系統  外圍應用裝置   應用軟體系統。

2.嵌入式處理器:嵌入式微處理器   嵌入式微控制器   嵌入式dsp    片上系統。

1、嵌入式微控制器(mcu),又稱為微控制器。微控制器的片上外設資源通常比較豐富,適合於控制,因此稱為微控制器。微控制器晶元內部整合有rom/eprom、ram、匯流排、匯流排邏輯、定時/計數器、看門狗、i/o、序列口、脈寬調變輸出(pwm)、a/d、d/a、flash、eeprom等各種必要功能和外設。微控制器的最大特點是單片化,功耗成本低,可靠性高。

2、嵌入式 微處理器(empu)。由通用計算機中的cpu發展而來,主要特點是具有32位以上的處理器,具有比較高的效能,**也較高。與計算機cpu不同的是,在實際嵌入式 應用中,只保留和嵌入式 應用緊密相關的功能硬體,去除其它的冗餘功能部分,因此其體積小、重量輕、功耗低、成本低及可靠性高。通常嵌入式微處理器把cpu、rom、ram及i/o等元件 做到同乙個晶元上,也稱為單板計算機。

3、嵌入式dsp處理器。它是專門 用於訊號處理方面的處理器,蘢在系統結構和指令演算法方面進行了特殊設計 ,具有很高 的編譯效率和指令執行速率,主要用在數字濾波、fft、頻譜分析等各種儀器上。dsp內部採用程式和資料分開儲存和傳輸的哈佛結構 ,具有專門硬體乘法器,廣泛採用流水線操作,提供特殊的dsp指令,可用來快速的實現 各種數字訊號處理演算法,加之積體電路的優化設計,速度甚至比最快的cpu還快數倍。

4、嵌入式 片上系統(soc)。它是追求產品系統最大包容的整合器件。soc最大的特點是成功實現了軟硬體無縫結合 ,直接 在處理器片內嵌入作業系統的**模組。體積小,功耗低,可靠性高。

3嵌入式最小系統:時鐘系統 電源系統  除錯測試系統  儲存器系統  復位及其配置系統  嵌入式處理器。(最小系統:從維修判斷的角度系統執行或者開機的最基本的硬體和軟體環境)。微控制器最小系統:晶振  電源 復位電路  cpu。

4主頻 週期:

主頻是指cpu核心工作的時鐘頻率,是cpu工作的最小時間單位。時鐘週期是主頻的倒數。頻率倍頻與外頻,外頻是cpu的基準,單位也是mhz。外頻是cpu與主機板之間同步執行的速度,而且絕大部分電腦系統中外頻也是記憶體與主機板之間的同步執行的速度,在這種方式下,可以理解為cpu的外頻直接與記憶體相連通,實現兩者間的同步執行狀態;倍頻即主頻與外頻之比的倍數。在計算機中,為了便於管理,常把一條指令的執行過程劃分為若干個階段,每一階段完成一項工作。例如,取指令、儲存器讀、儲存器寫等,這每一項工作稱為乙個基本操作。完成乙個基本操作所需要的時間稱為機器週期。指令週期是執行一條指令所需要的時間,一般由若干個機器週期組成。

5同步,互斥,死鎖,併發

併發指多個程序同時執行(單cpu裡其實是輪詢執行),但其實多個程序共享的是同乙個cpu、記憶體及io裝置,由此產生了資源競爭的情況。為解決這樣的情況,才出現了同步和互斥。也可以說是併發問題引出了同步和互斥技術。

多個程序同時徵用同乙個資源,為避免競爭,程序間必須互斥,也就是這個資源同時只能被乙個程序使用,其他的必須等待,這種現象叫互斥。如印表機的使用。

多個程序間相互依賴,也就是說b程序要執行的條件是a程序執行完後輸出相應結果,b程序得到a程序的執行結果後才能順利執行,這種a等待b的情況叫同步。

同步和互斥描述的是程序間的不同關係(競爭還是依賴),但作業系統對它們的處理方式基本是相同的。即必須等待共享資源可用。上面的同步說明其實也是這樣的情況,即a程序執行結果要寫到某個記憶體或檔案,b程序必須等待這個它與a程序共享的記憶體或檔案可用(被a釋放了)才能繼續執行(也可以理解成對共享記憶體或檔案的一種競爭、互斥關係)。所以很多時候又把互斥和同步說成是同一件事。

同步或互斥又會引起死鎖和飢餓的問題。

當a程序在等b程序釋放資源(或鎖),b程序又同時需要等待某個資源的釋放,這個資源又剛好被a程序占有,這樣就引發了死鎖。

當a程序等待b程序釋放資源(或鎖),b程序在釋放資源(或鎖)前死掉了,這樣a程序就處於一直等待的情況,這樣引發了a程序的飢餓問題。

使用同步或互斥的技術有:

使用共享變數(鎖變數),比如自旋鎖,即程序a會迴圈檢查共享變數(鎖)是否可用,直到可用就退出迴圈執行相應邏輯,這種迴圈等待中程序a不做任何有意義的工作,卻仍然要消耗cpu週期的,也稱為忙等待。

使用訊號量可用避免上面的問題,原理其實就是等待喚醒的機制,即a程序發現訊號量(乙個boolean值或乙個計數共享變數)被占用(被b程序占用),就把a程序放到乙個等待佇列。b程序執行完後,釋放訊號量,並喚醒佇列裡的a程序。

6. 嵌入式的介面型別

rs-232(串列埠), irda(紅外) ,spi是(串列埠裝置介面), i2c, usb, ethernet 和普通並口。

7.7.嵌入式系統在軍工,商業,工業,以及汽車業上的區別

晶元的級別主要是以工作溫度來區分的:商業級晶元(0-70度),工業級晶元(-40-85度),軍工級晶元(-55-125度).汽車級晶元(-55-125度).

晶元的封裝工藝不同:

通常汽車級的晶元比商業級的要厚一些,工業級相比商業級的晶元封裝過程中會攙雜一定量的微量材料使封裝更家穩定。當然一些汽車級、軍工芯中會設計有輔助電路,備份電路區別。

嵌入式基礎

整體思路 time指標指向該暫存器,所以定義乙個timeop位域,利用time指標將暫存器中的值放至timeop中,儲存後面暫存器讀取到的結果再經過修改返回到暫存器裡 用16位指標time指向這裡使用的16位暫存器,用來讀取和改變暫存器值 借助強制轉換的方式將值傳給time指標,指標將值給暫存器,將...

嵌入式Linux c 基礎

資料型別 向計算機申請儲存資料的記憶體大小,如int 申請4位元組的大小。變數是用來儲存值的所在處,它們有名字和資料型別.變數的資料型別決定了如何將代表這些值的位儲存到計算機的記憶體中 試卷的筆記 電腦是x86 裸機是arm 編譯程式 gcc 和 arm linux gcc 字串表示 反斜槓要必須雙...

嵌入式linux基礎

缺頁中斷和時鐘中斷都屬於中斷,在核心態執行。程序排程屬於系統呼叫,在核心態執行,命令解釋程式屬於命令介面,在使用者態執行。1 insmod和modprobe都可以用來載入驅動模組,請描述這兩者的差異。2 請給出三種以上linux驅動模組載入失敗的可能原因。1 modprobe和insmod類似,都是...