1. 什麼是存儲器 嵌入式系統的存儲器
存儲器,包含內部存儲器,簡稱內存,又分為RAM (SRAM 靜態存儲器 ,DRAM動態存儲器) ROM(EPROM ,PROM , EEPROM , FLASH ROM,...);外部存儲器,簡稱外存:硬碟、U盤、光碟等.
嵌入式系統的存儲器主要針對嵌入式系統的特點進行部署的存儲器或存儲器系統,主要存儲器有:內存 SRAM , DRAM. EEPROM , FLASH ROM等。比如監控系統的還需要硬碟等外部存儲器
2. 嵌入式存儲器的類型有哪些,對比他們的性能參數
兩個問題都能在這里找到答案,我搜了下,參考`
ARM指令集發展史
作者:xdpeter 提交日期:2006-4-12 20:01:00
第2章 典型ARM體系結構介紹
一、版本簡介
迄今為止,ARM體系結構共定義了6個版本,版本號分別為1—6。同時,各版本中還有一些變種,這里將某些特定功能稱為ARM體系的某種變種(variant),例如支持Thumb指令集,稱為T變種。長乘法指令(M變種),ARM媒體功能擴展(SIMD)變種,支持JAVA的J變種,和增強功能的E變種。
ARM處理器核當前有6 個系列產品ARM7,,ARM9, ARM9E, ARM10E,SecurCore 以及最新的ARM11 系列。以及Intel XScale 微體系結構和StrongARM 產品各系列產品性能見下表
ARM7 性能特徵
Cache大小
(指令/數據) 存儲器管理單元
緊密耦合存儲器
(TCM) Jazelle
Thumb
DSP
AHB介面
ARM7TDMI 無 無 無 無 有 無 有
ARM7TDMI-S 無 無 無 無 有 無 有
ARM7EJ-S 無 無 無 有 有 有 有
ARM720T 8K MMU 無 無 有 無 有
ARM7採用ARMV4T(Newman)結構,分為三級流水,空間統一的指令與數據Cache,平均功耗為0.6mW/MHz,時鍾速度為66MHz,每條指令平均執行1.9個時鍾周期。其中的ARM710,ARM720和ARM740為內帶Cache的ARM核。具有如下特點:
- 具有嵌入式ICE-RT邏輯,調試開發方便。
- 極低的功耗,適合對功耗要求較高的應用,如攜帶型產品。
- 能夠提供0.9MIPS/MHz的三級流水線結構。
- 代碼密度高並兼容16位的Thumb指令集。
- 對操作系統的支持廣泛,包括Windows CE、Linux、Palm OS等。
- 指令系統與ARM9系列、ARM9E系列和ARM10E系列兼容,便於用戶的產品升級換代。
- 主頻最高可達130MIPS,高速的運算處理能力能勝任絕大多數的復雜應用。
ARM7系列微處理器的主要應用領域為:工業控制、Internet設備、網路和數據機設備、行動電話等多種多媒體和嵌入式應用。ARM7系列微處理器包括如下幾種類型的核:ARM7TDMI、ARM7TDMI-S、ARM720T、ARM7EJ。其中,ARM7TMDI是目前使用最廣泛的32位嵌入式RISC處理器,屬低端ARM處理器核。TDMI的基本含義為:T:支持16為壓縮指令集Thumb;D:支持片上Debug;M:內嵌硬體乘法器(Multiplier)I:嵌入式ICE,支持片上斷點和調試點;
從ARM公司提供的ARM7 Data Sheet可以看出,ARM7屬於結構比較簡單的32位RISC體系結構,與一般的、採用五級流水線的32位RISC結構相比,簡化了流水線的設計。這一方面限制了ARM7晶元性能的提升,另一方面使得ARM7的結構更加簡單,不必考慮在多級流水線中需要解決的沖突、中斷現場恢復等等復雜棘手的問題,有利於簡化設計、提高設計的正確性、有效性。
由於指令長度、格式的限制,在ARM7的一般指令中,只能夠訪問4位的寄存器空間,這和其他32位RISC體系結構中能夠訪問到5位、6位的寄存器空間又不同。ARM7通過特殊的模式轉換方式,使得用戶可以訪問到其它的15個通用寄存器。
ARM7所有的指令都是條件執行的。這在目前主流的32位RISC體系結構中並不多見。通過在指令中設置條件域,可以使得編譯器有條件完成指令的條件執行功能,優化編譯效果。另外,由於條件域的引入,使得在設計流水線的時候,必須考慮解碼後的指令是否可以執行。
ARM7中的所有指令,除了訪存指令之外,都是基於寄存器進行操作的,這是典型的RISC設計思路。
註:arm體系結構的版本及命名方法
arm體系結構共定義了6個版本,版本號分別為1~6。
arm體系的變種:將某些特定功能稱為arm體系的某種變種(variant)
#T變種(Thumb指令集)表示Thumb,該內核可從16位指令集擴充到32位ARM指令集。
#D:表示Debug,該內核中放置了用於調試的結構,通常它為一個邊界掃描鏈JTAG,可使CPU進入調試模式,從而可方便地進行斷點設置、單步調試。
#M變種(長乘法指令)表示Multiplier,是8位乘法器。
#I表示EmbeddedICE Logic,用於實現斷點觀測及變數觀測的邏輯電路部分,其中的TAP控制器可接入到邊界掃描鏈。
#E變種(增強型指令)DSP指令支持。
#J變種(Java加速器Jazelle)JAVA指令支持。
#SIMD變種(arm媒體功能擴展)單指令流多數據流(SIMD)能力使得軟體更有效地完成高性能的媒體應用像聲音和圖像編碼器。
arm/thumb體系版本的字元串是由下面幾部分組成的:
#字元串ARMV
#arm指令集版本號,1~6
#ARM指令集版本號後為表示所含變種的字元。由於在ARM體系版本4以後,M變種成為系統的標准功能,字元M通常不需要列出來。
#最後使用的字元x表示排除某種寫功能。比如,在早期的一些E變種中,未包含雙字讀取指令LDRD、雙字寫入指令STRD、協處理器的寄存器傳輸指令MCRR/MRRC以及cache預取指令PLD。這種E變種記作ExP,其中x表示缺少,P代表上述的幾種指令。如ARMv3M,ARMv5xM,ARMv6等
eg:ARMv5xM--->ARMv+4+x+M
ARM9 性能特徵
Cache大小
(指令/數據) 存儲器管理單元
緊密耦合存儲器
(TCM) Jazelle
Thumb
DSP
AHB介面
ARM920T 16K/16K MMU 無 無 有 無 有
ARM922T 8K/8K MMU 無 無 有 無 有
ARM940T 4K/4K MMU 無 無 有 無 有
ARM9採用ARMV4T(Harvard)結構,五級流水處理以及分離的Cache結構,平均功耗為0.7mW/MHz。時鍾速度為120MHz-200MHz,每條指令平均執行1.5個時鍾周期。與ARM7系列相似,其中的ARM920、ARM940和ARM9E為含Cache的CPU核。性能為132MIPS(120MHz時鍾,3.3V供)或220MIPS(200MHz時鍾)。ARM9 E性能特徵
Cache大小
(指令/數據) 存儲器管理單元
緊密耦合存儲器
(TCM) Jazelle
Thumb
DSP
AHB介面
ARM926EJS 4-128K/4-128 MMU 有 有 有 有 雙AHB
ARM946EJS 4-1MB/4-1MB MMU 有 無 有 有 AHB
ARM966ES 無 無 有 無 有 有 AHB
ARM9E系列微處理器為可綜合處理器,使用單一的處理器內核提供了微控制器、DSP、Java應用系統的解決方案,極大的減少了晶元的面積和系統的復雜程度。ARM9E系列微處理器提供了增強的DSP處理能力,很適合於那些需要同時使用DSP和微控制器的應用場合。
ARM9E系列微處理器的主要特點如下: - 支持DSP指令集,適合於需要高速數字信號處理的場合。 - 5級整數流水線,指令執行效率更高。 - 支持32位ARM指令集和16位Thumb指令集。 - 支持32位的高速AMBA匯流排介面。 - 支持VFP9浮點處理協處理器。 - 全性能的MMU,支持Windows CE、Linux、Palm OS等多種主流嵌入式操作系統。 - MPU支持實時操作系統。 - 支持數據Cache和指令Cache,具有更高的指令和數據處理能力。 - 主頻最高可達300MIPS。 ARM9系列微處理器主要應用於下一代無線設備、數字消費品、成像設備、工業控制、存儲設備和網路設備等領域。 ARM9E系列微處理器包含ARM926EJ-S、ARM946E-S和ARM966E-S三種類型,以適用於不同的應用場合。
ARM10 E性能特徵
Cache大小
(指令/數據) 存儲器管理單元
緊密耦合存儲器
(TCM) Jazelle
Thumb
DSP
AHB介面
ARM1020E 32K/32K MMU 無 無 有 有 雙AHB
ARM1022E 16K/16K MMU 無 無 有 有 雙AHB
ARM1026EJ-S 可變 MMU+ MMU 有 有 有 有 雙AHB
ARM10採用ARMV5T結構,六級流水處理,指令與數據分離的Cache結構。平均功耗為1000mW,時鍾速度為300MHz,每條指令平均執行1.2個周期,其中ARM1020為帶Cache的版本。ARM10TDMI:與所有ARM核在二進制級代碼兼容,內帶高速32X16MAC,預留DSP協處理器介面。其中的VFP10(矢量浮點單元)為七級流水結構。ARM1020T:ARM10TDMI+32K Caches+MMU結構,300MHz時鍾,功耗為1W(2.0V供電)或00mW(1.5V供電)。指令Cache和數據Cache分別為32K,寬度為64bits。能夠技術多種商用操作系統。適用於下一代高性能手持式網際網路設備及數字式消費類應用。
ARM10E系列微處理器具有高性能、低功耗的特點,由於採用了新的體系結構,與同等的ARM9器件相比較,在同樣的時鍾頻率下,性能提高了近50%,同時,ARM10E系列微處理器採用了兩種先進的節能方式,使其功耗極低。 ARM10E系列微處理器的主要特點如下: - 支持DSP指令集,適合於需要高速數字信號處理的場合。 - 6級整數流水線,指令執行效率更高。 - 支持32位ARM指令集和16位Thumb指令集。 - 支持32位的高速AMBA匯流排介面。 - 支持VFP10浮點處理協處理器。 - 全性能的MMU,支持Windows CE、Linux、Palm OS等多種主流嵌入式操作系統。 - 支持數據Cache和指令Cache,具有更高的指令和數據處理能力 - 主頻最高可達400MIPS。 - 內嵌並行讀/寫操作部件。 ARM10E系列微處理器主要應用於下一代無線設備、數字消費品、成像設備、工業控制、通信和信息系統等領域。 ARM10E系列微處理器包含ARM1020E、ARM1022E和ARM1026EJ-S三種類型,以適用於不同的應用場合。
ARM11性能特徵
Cache大小
(指令/數據) 符點
運算 存儲器管理單元
緊密耦合存儲器
(TCM) Jazelle
SIMD
DSP
AHB介面
ARM1136J-S 4-64K 無 MMU 有 有 有 有 四個64
位AHB
ARM1136JF-S 4-64K 有 MMU 有 有 有 有 四個64
位AHB
ARM11是ARMv6體系結構的第一個實現,ARM11微結構的設計目
3. 嵌入式實時操作系統由哪幾部分組成基本內核包括哪些功能模塊
嵌入式系統主要組成部分:
1、處理器內核:嵌入式系統的心臟是處理器內核。處理器內核從一個簡單便宜的8位微控制器,到更復雜的32位或64位微處理器,甚至多個處理器。
嵌入式設計人員必須為能夠滿足所有功能和非功能時限、要求的應用選擇成本最低的設備。
2、模擬I/O:D/A和A/D轉換器是用來從環境中搜集數據並反饋的。嵌人式設計人員必須了解需要從環境中搜集數據的類型、數據的精度要求和輸入/輸出數據的速率,以便為應用程序選擇合適的轉換器。
嵌入式系統的反應特性受外部環境決定。嵌入式系統必須有足夠快的速度跟上環境變化,以此來模擬信息,例如光、聲壓或加速度被感知並輸入到嵌入式系統中。
3、感測器和執行機構:感測器一般從環境中感知模擬信息。執行機構通過某些方式控制環境。
4、用戶界面:這些界面可以像LED屏一樣簡單,也可以像工藝精良的手機和數碼相機的屏幕那樣復雜。
5、應用程序的特定入口:類似於ASIC或者FPGA的硬體加速,是用來加速在應用程序中有高性能要求的特定功能模塊。嵌入式設計師必須利用加速器獲得最大的應用程序性能,來對程序進行適當的籌劃或分區。
6、軟體:在嵌入式系統開發中軟體是一個重要的部分。在過去幾年,嵌入式軟體的數量已經增長得比摩爾定律還快,幾乎是每十個月就成倍增長。嵌入式軟體在某些方面性能、存儲器和功耗、經常被優化。越來越多的嵌入式軟體通過高級語言來編寫,如C/C++。
而更多的性能關鍵的代碼段仍然使用匯編語言來編寫。
7、存儲器:存儲器是嵌入式系統中重要的部分,嵌入式程序可以在沒有RAM或ROM的情況下運行。有許多易失的和非易失的存儲器用於嵌入式系統中,關於此內容在書的後面會有更多的說明。
8、模擬和診斷:嵌入式系統很難看見或接觸到。調試的時候需要介面與嵌入式系統相連。診斷埠,如JTAG聯合測試行動組、就常常用於調試嵌入式系統。
總結如下:
片上模擬能用來提供應用程序的可見性行為。這些模擬模塊能可視化地提供運行時的行為和性能,實際上由板上的自診斷能力取代了外部邏輯分析儀的功能。
4. 筆記本電腦。嵌入式動態隨機存儲器 (eDRAM)是啥而且才128MB,比運行內存小很多,應該很快
eDRAM是嵌入式 DRAM ,一般是嵌入在CPU里或者繼承在CPU附近,主要作用是緩存,用作CPU或者核顯(或者二者兼顧的)緩存
5. 嵌入式硬碟錄像機作用
嵌入式硬碟錄像機的性能高的原因:從硬體上主要體現在其內部板卡都集成在一塊或兩塊主板上,經過產家在技術上的整合,其配置上要比PC機的要低,而運行的性能上能與高它一定硬體配置PC機的相比並不遜色;從軟體上主要體現,其系統與硬碟錄像機的操作系統完美的結合在一起,是直接對硬體進行調用,加快了反應時間,提高了運行速度,減少了很多不必要的額外功能運行,而基於Linux
、Windows
操作系統之上的硬碟錄像機是絕對做不到的。
穩定性:
嵌入式硬碟錄像機的穩定性高的原因:從硬體上主要體現在各部分都集成在一塊主板上,對抗震、灰塵多等惡劣環境的適應能力要好;從軟體上主要體現在其系統與硬碟錄像機(DVR)的監控系統完整的結合在一起,不容易受到一些額外的因素影響,如操作系統的自身不穩定性和冗餘的附帶功能所引起的不良因素。不過也有一些劣質的嵌入式硬碟錄像機的穩定性很差。
維護性:
嵌入式硬碟錄像機的易維護性低的原因:主要體現在硬體上,嵌入式因集成度過高,對維護人員的專業素質同要求相當高,這對目前中國的國情來講,這樣的人才太小,一出問題基本都要發回產商進行維修,其維修成本可想而知,尤其是過了保修期。而這個過程少則一個星期,多則一兩個月,這給客戶使用和下次一選購造成嚴重的內心反感,也給很多的工程商帶來相當多的麻煩,甚至客戶流失;從軟體上來講,嵌入式的軟體基本不需要維護,其軟體維護成本遠比基於Windows和Linux操作系統之上的監控系統要低得多。
抗病毒性
嵌入式硬碟錄像機的抗病毒性高的原因:主要是因為其硬體、軟體都是專用的,晶元存儲的數據只讀,不可寫,並且軟體的附帶功能非常少,因此,病毒根本無從入手。
6. 簡述嵌入式軟體中存儲器管理的"堆"和"棧"的作用.
如果對於應用程序的開發者來說可以這樣理解
應用中調用malloc這樣的函數申請的內存是在堆空間中申請來的
應用中函數內部的臨時變數是編譯器自動修改棧指針,使用的棧空間
函數間調用,保存寄存器等現場也是自動使用的棧空間,這些對於棧的使用
都是編譯器編譯的時候就確定了的,不需要編程者擔心,嵌入式系統中還要注意別發生棧溢出的情況。
7. EMMC內嵌式硬碟與SSD固態硬碟的區別以及它們的優缺點,請詳細介紹。3Q
1、它們的性質不同
EMMC(embeddedmulti-mediacard)是由MMC協會制定的嵌入式存儲標准規范,主要用於手機或平板電腦等產品。
固態硬碟,俗稱固態硬碟,是由固態電子存儲晶元陣列構成的硬碟,因為固態電容在台灣英語中稱為固態。
2、兩者的構成不同
EMMC包括一個具有MMC(多媒體卡)介面的嵌入式存儲解決方案、快閃記憶體設備和主控制器。都在一個小的BGA包里。
SSD由控制單元和存儲單元(flash晶元、DRAM晶元)組成。固態硬碟介面的規格、定義、功能和使用方法與普通硬碟相同,產品外形和尺寸與普通硬碟相同。
3、他們有不同的優勢
EMMC具有簡化移動存儲器設計、更新速度快、加快產品研發速度等優點。
SSD具有讀寫速度快、防震防墜落、功耗低、無雜訊、工作溫度范圍大、便攜等優點。
(7)嵌入式存儲器的作用擴展閱讀:
優勢
1、簡化了移動存儲器的設計。EMMC是目前最流行的移動設備本地存儲解決方案,旨在簡化移動存儲器的設計。因為不同品牌的NAND快閃記憶體晶元包括三星、金馬、東芝或海力士、美光等。
因此需要根據各公司的產品和技術特點進行重新設計。在過去,沒有任何技術可以用於所有品牌的NAND快閃記憶體晶元。
2、快速更新。每次NANDflash工藝技術發生變化,包括70nm演進到50nm,再到40nm或30nm工藝技術,手機用戶也需要重新設計。
但每年半導體產品的工藝技術都會創新,而內存問題也會減緩新手機型號的推出。因此,隨著市場的不斷發展,將所有存儲器和NANDflash管理控制晶元放在一個MCP上的概念,如EMMC,逐漸在市場上流行起來。
3、加快產品開發。EMMC的設計理念是簡化移動存儲器的使用。
將NAND快閃記憶體晶元和控制晶元設計成一個MCP晶元。行動電話客戶只需購買EMMC晶元並將其放入新的行動電話中,而無需處理其他復雜的NANDflash兼容性和管理問題。最大的優勢是縮短新產品的銷售周期和研發成本,加快產品引進速度。
8. 聽說現在嵌入式挺火!不知道什麼是嵌入式我想了解的詳細一點
定義
IEEE(國際電氣和電子工程師協會)對嵌入式系統的定義:「用於控制、監視或者輔助操作機器和設備的裝置」(原文為:Devices Used to Control,Monitor or Assist the Operation of Equipment,Machinery or Plants)。這主要是從應用對象上加以定義,從中可以看出嵌入式系統是軟體和硬體的綜合體,還可以涵蓋機械等附屬裝置。
國內普遍認同的嵌入式系統定義為:以應用為中心,以計算機技術為基礎,軟硬體可裁剪,適應應用系統對功能、可靠性、成本、體積、功耗等嚴格要求的專用計算機系統。
可以這樣認為,嵌入式系統是一種專用的計算機系統,作為裝置或設備的一部分。通常,嵌入式系統是一個控製程序存儲在ROM中的嵌入式處理器控制板。事實上,所有帶有數字介面的設備,如手錶、微波爐、錄像機、汽車等,都使用嵌入式系統,有些嵌入式系統還包含操作系統,但大多數嵌入式系統都是是由單個程序實現整個控制邏輯。
[編輯本段]
嵌入式系統的組成
一個嵌入式系統裝置一般都由嵌入式計算機系統和執行裝置組成,如圖1-1所示,嵌入式計算機系統是整個嵌入式系統的核心,由硬體層、中間層、系統軟體層和應用軟體層組成。執行裝置也稱為被控對象,它可以接受嵌入式計算機系統發出的控制命令,執行所規定的操作或任務。執行裝置可以很簡單,如手機上的一個微小型的電機,當手機處於震動接收狀態時打開;也可以很復雜,如SONY 智能機器狗,上面集成了多個微小型控制電機和多種感測器,從而可以執行各種復雜的動作和感受各種狀態信息。
下面對嵌入式計算機系統的組成進行介紹。
1)硬體層
硬體層中包含嵌入式微處理器、存儲器(SDRAM、ROM、Flash等)、通用設備介面和 I/O介面(A/D、D/A、I/O等)。在一片嵌入式處理器基礎上添加電源電路、時鍾電路和存儲器電路,就構成了一個嵌入式核心控制模塊。其中操作系統和應用程序都可以固化在ROM中。
(1)嵌入式微處理器
嵌入式系統硬體層的核心是嵌入式微處理器,嵌入式微處理器與通用CPU最大的不用在於嵌入式微處理器大多工作在為特定用戶群所專用設計的系統中,它將通用CPU許多由板卡完成的任務集成在晶元內部,從而有利於嵌入式系統在設計時趨於小型化,同時還具有很高的效率和可靠性。
嵌入式微處理器的體系結構可以採用馮·諾依曼體系或哈佛提醒哦結構;指令系統可以選用精簡指令系統(Reced Instruction Set Computer,RISC)和復雜指令系統CISC(Complex Instruction Set Computer,CISC)。CISC計算機在通道中只包含最有用的指令,確保數據通道快速執行每一條指令,從而提高了執行效率並使CPU硬體結構設計變得更為簡單。
嵌入式微處理器有各種不同的體系,即使在同一體系中也可能具有不同的時鍾頻率和數據匯流排寬度,或集成了不同的外設和介面。據不完全統計,目前全世界嵌入式微處理器已經超過1000多種,體系結構有30多個系列,其中主流的體系有ARM、MIPS、 PowerPC、X86和SH等。但與全球PC市場不同的是,沒有一種嵌入式微處理器可以主導市場,僅以32位的產品而言,就有100種以上的嵌入式微處理器。嵌入式微處理器的選擇是根據具體的應用而決定的。
(2)存儲器
嵌入式系統需要存儲器來存放和執行代碼。嵌入式系統的存儲器包含Cache、主存和輔助存儲器,其存儲結構如圖1-2所
[嵌入式系統的存儲結構]
嵌入式系統的存儲結構
示。
1>Cache
Cache是一種容量小、速度快的存儲器陣列它位於主存和嵌入式微處理器內核之間,存放的是最近一段時間微處理器使用最多的程序代碼和數據。在需要進行數據讀取操作時,微處理器盡可能的從Cache中讀取數據,而不是從主存中讀取,這樣就大大改善了系統的性能,提高了微處理器和主存之間的數據傳輸速率。Cache的主要目標就是:減小存儲器(如主存和輔助存儲器)給微處理器內核造成的存儲器訪問瓶頸,使處理速度更快,實時性更強。
在嵌入式系統中Cache全部集成在嵌入式微處理器內,可分為數據Cache、指令Cache或混合Cache,Cache的大小依不同處理器而定。一般中高檔的嵌入式微處理器才會把Cache集成進去。
2>主存
主存是嵌入式微處理器能直接訪問的寄存器,用來存放系統和用戶的程序及數據。它可以位於微處理器的內部或外部,其容量為256KB~1GB,根據具體的應用而定,一般片內存儲器容量小,速度快,片外存儲器容量大。
常用作主存的存儲器有:
ROM類 NOR Flash、EPROM和PROM等。
RAM類 SRAM、DRAM和SDRAM等。
其中NOR Flash 憑借其可擦寫次數多、存儲速度快、存儲容量大、價格便宜等優點,在嵌入式領域內得到了廣泛應用。
3>輔助存儲器
輔助存儲器用來存放大數據量的程序代碼或信息,它的容量大、但讀取速度與主存相比就慢的很多,用來長期保存用戶的信息。
嵌入式系統中常用的外存有:硬碟、NAND Flash、CF卡、MMC和SD卡等。
(3)通用設備介面和I/O介面
嵌入式系統和外界交互需要一定形式的通用設備介面,如A/D、D/A、I/O等,外設通過和片外其他設備的或感測器的連接來實現微處理器的輸入/輸出功能。每個外設通常都只有單一的功能,它可以在晶元外也可以內置晶元中。外設的種類很多,可從一個簡單的串列通信設備到非常復雜的802.11無線設備。
目前嵌入式系統中常用的通用設備介面有A/D(模/數轉換介面)、D/A(數/模轉換介面),I/O介面有RS-232介面(串列通信介面)、Ethernet(乙太網介面)、USB(通用串列匯流排介面)、音頻介面、VGA視頻輸出介面、 I2C(現場匯流排)、SPI(串列外圍設備介面)和IrDA(紅外線介面)等。
2)中間層
硬體層與軟體層之間為中間層,也稱為硬體抽象層(Hardware Abstract Layer,HAL)或板級支持包(Board Support Package,BSP),它將系統上層軟體與底層硬體分離開來,使系統的底層驅動程序與硬體無關,上層軟體開發人員無需關心底層硬體的具體情況,根據 BSP 層提供的介面即可進行開發。該層一般包含相關底層硬體的初始化、數據的輸入/輸出操作和硬體設備的配置功能。BSP具有以下兩個特點。
硬體相關性:因為嵌入式實時系統的硬體環境具有應用相關性,而作為上層軟 件與硬體平台之間的介面,BSP需要為操作系統提供操作和控制具體硬體的方法。
操作系統相關性:不同的操作系統具有各自的軟體層次結構,因此,不同的操作系統具有特定的硬體介面形式。
實際上,BSP是一個介於操作系統和底層硬體之間的軟體層次,包括了系統中大部分與硬體聯系緊密的軟體模塊。設計一個完整的BSP需要完成兩部分工作:嵌入式系統的硬體初始化以及BSP功能,設計硬體相關的設備驅動。
(1)嵌入式系統硬體初始化
系統初始化過程可以分為3個主要環節,按照自底向上、從硬體到軟體的次序依次為:片級初始化、板級初始化和系統級初始化。
片級初始化
完成嵌入式微處理器的初始化,包括設置嵌入式微處理器的核心寄存器和控制寄存器、嵌入式微處理器核心工作模式和嵌入式微處理器的局部匯流排模式等。片級初始化把嵌入式微處理器從上電時的默認狀態逐步設置成系統所要求的工作狀態。這是一個純硬體的初始化過程。
板級初始化
完成嵌入式微處理器以外的其他硬體設備的初始化。另外,還需設置某些軟體的數據結構和參數,為隨後的系統級初始化和應用程序的運行建立硬體和軟體環境。這是一個同時包含軟硬體兩部分在內的初始化過程。
系統初始化
該初始化過程以軟體初始化為主,主要進行操作系統的初始化。BSP將對嵌入式微處理器的控制權轉交給嵌入式操作系統,由操作系統完成餘下的初始化操作,包含載入和初始化與硬體無關的設備驅動程序,建立系統內存區,載入並初始化其他系統軟體模塊,如網路系統、文件系統等。最後,操作系統創建應用程序環境,並將控制權交給應用程序的入口。
(2)硬體相關的設備驅動程序
BSP的另一個主要功能是硬體相關的設備驅動。硬體相關的設備驅動程序的初始化通常是一個從高到低的過程。盡管BSP中包含硬體相關的設備驅動程序,但是這些設備驅動程序通常不直接由BSP使用,而是在系統初始化過程中由BSP將他們與操作系統中通用的設備驅動程序關聯起來,並在隨後的應用中由通用的設備驅動程序調用,實現對硬體設備的操作。與硬體相關的驅動程序是BSP設計與開發中另一個非常關鍵的環節。
3)系統軟體層
系統軟體層由實時多任務操作系統(Real-time Operation System,RTOS)、文件系統、圖形用戶介面(Graphic User Interface,GUI)、網路系統及通用組件模塊組成。RTOS是嵌入式應用軟體的基礎和開發平台。
(1)嵌入式操作系統
嵌入式操作系統(Embedded Operation System,EOS)是一種用途廣泛的系統軟體,過去它主要應用與工業控制和國防系統領域。EOS負責嵌入系統的全部軟、硬體資源的分配、任務調度,控制、協調並發活動。它必須體現其所在系統的特徵,能夠通過裝卸某些模塊來達到系統所要求的功能。目前,已推出一些應用比較成功的EOS產品系列。隨著 Internet技術的發展、信息家電的普及應用及EOS的微型化和專業化,EOS開始從單一的弱功能向高專業化的強功能方向發展。嵌入式操作系統在系統實時高效性、硬體的相關依賴性、軟體固化以及應用的專用性等方面具有較為突出的特點。EOS是相對於一般操作系統而言的,它除具有了一般操作系統最基本的功能,如任務調度、同步機制、中斷處理、文件處理等外,還有以下
[編輯本段]
嵌入式操作系統的特點
1)可裁剪性。支持開放性和可伸縮性的體系結構。
2)強實時性。EOS實時性一般較強,可用於各種設備控制中。
3)統一的介面。提供設備統一的驅動介面。
4)操作方便、簡單、提供友好的圖形GUI和圖形界面,追求易學易用。
提供強大的網路功能,支持TCP/IP協議及其他協議,提供TCP/UDP/IP/PPP協議支持及統一的MAC訪問層介面,為各種移動計算設備預留介面。
5)強穩定性,弱交互性。嵌入式系統一旦開始運行就不需要用戶過多的干預、這就要負責系統管理的EOS具有較強的穩定性。嵌入式操作系統的用戶介面一般不提供操作命令,它通過系統的調用命令向用戶程序提供服務。
6)固化代碼。在嵌入式系統中,嵌入式操作系統和應用軟體被固化在嵌入式系統計算機的ROM中。
7)更好的硬體適應性,也就是良好的移植性。
[編輯本段]
嵌入式系統的文件系統
通用操作系統的文件系統通常具有以下功能:
提供用戶對文件操作的命令。
提供用戶共享文件的機制。
管理文件的存儲介質。
提供文件的存取控制機制,保障文件及文件系統的安全性。
提供文件及文件系統的備份和恢復功能。
提供對文件的加密和解密功能。
嵌入式文件系統比較簡單,主要提供文件存儲、檢索和更新等功能,一般不提供保護和加密等安全機制。它以系統調用和命令方式提供文件的各種操作,主要有:
設置、修改對文件和目錄的存取許可權。
提供建立、修改、改變和刪除目錄等服務。
提供創建、打開、讀寫、關閉和撤銷文件等服務。
[編輯本段]
嵌入式文件系統的特點
1)兼容性。嵌入式文件系統通常支持幾種標準的文件系統,如FAT32、JFFS2、YAFFS等。
2)實時文件系統。除支持標準的文件系統外,為提高實時性,有些嵌入式文件系統還支持自定義的實時文件系統,這些文件系統一般採用連續的方式存儲文件。
3)可裁剪、可配置。根據嵌入式系統的要求選擇所需的文件系統,選擇所需的存儲介質,配置可同時打開的最大文件數等。
4)支持多種存儲設備。嵌入式系統的外存形式多樣了,嵌入式文件系統需方便的掛接不同存儲設備的驅動程序,具有靈活的設備管理能力。同時根據不同外部存儲器的特點,嵌入式文件系統還需要考慮其性能、壽命等因素,發揮不同外存的優勢,提高存儲設備的可靠性和使用壽命。
[編輯本段]
圖形用戶介面(GUI)
GUI的廣泛應用是當今計算機發展的重大成就之一,他極大地方便了非專業用戶的使用人們從此不再需要死記硬背大量的命令,取而代之的是可用用通過窗口、菜單、按鍵等方式來方便地進行操作。而嵌入式GUI具有下面幾個方面的基本要求:輕型、佔用資源少、高性能、高可靠性、便於移植、可配置等特點。
嵌入式系統中的圖形界面,一般採用下面的幾種方法實現:
針對特定的圖形設備輸出介面,自行開發相關的功能函數。
購買針對特定嵌入式系統的圖形中間軟體包。
採用源碼開放的嵌入式GUI系統。
使用獨立軟體開發商提供的嵌入式GUI產品。
4)應用軟體層
應用軟體層是由基於實時系統開發的應用程序組成,用來實現對被控對象的控制功能。功能層是要面對被控對象和用戶,為方面用戶操作,往往需要提供一個友好的人機界面。
對於一些復雜的系統,在系統設計的初期階段就要對系統的需求進行分析,確定系統的功能,然後將系統的功能映射到整個系統的硬體、軟體和執行裝置的設計過程中,稱為系統的功能實現。
嵌入式編程
嵌入式系統是以應用為中心,以計算機技術為基礎,並且軟硬體可裁剪,適用於應用系統對功能、可靠性、成本、體積、功耗有嚴格要求的專用計算機系統。它一般由嵌入式微處理器、外圍硬體設備、嵌入式操作系統以及用戶的應用程序等四個部分組成,用於實現對其他設備的控制、監視或管理等功能。
嵌入式系統一般指非PC系統,它包括硬體和軟體兩部分。硬體包括處理器/微處理器、存儲器及外設器件和I/O埠、圖形控制器等。軟體部分包括操作系統軟體(OS)(要求實時和多任務操作)和應用程序編程。有時設計人員把這兩種軟體組合在一起。應用程序控制著系統的運作和行為;而操作系統控制著應用程序編程與硬體的交互作用。
現在所說的嵌入式開發,通常都是指有嵌入式操作系統的那種,產品功能復雜了,單片機開發無法實現,需要用到嵌入式操作系統,也能體現出嵌入式操作系統的優勢。嵌入式產品在航空、醫療、家電、消費電子、汽車電子、移動等眾多領域都可以看到,應用領域極為廣泛,所以現在嵌入式開發相當熱門,並且具備非常好的發展前景!!
嵌入式系統的核心是嵌入式微處理器。嵌入式微處理器一般就具備以下4個特點:
1)對實時多任務有很強的支持能力,能完成多任務並且有較短的中斷響應時間,從而使內部的代碼和實時內核心的執行時間減少到最低限度。
2)具有功能很強的存儲區保護功能。這是由於嵌入式系統的軟體結構已模塊化,而為了避免在軟體模塊之間出現錯誤的交叉作用,需要設計強大的存儲區保護功能,同時也有利於軟體診斷。
3)可擴展的處理器結構,以能最迅速地開展出滿足應用的最高性能的嵌入式微處理器。
4)嵌入式微處理器必須功耗很低,尤其是用於攜帶型的無線及移動的計算和通信設備中靠電池供電的嵌入式系統更是如此,如需要功耗只有mW甚至μW級。
嵌入式計算機系統同通用型計算機系統相比具有以下特點:
1.嵌入式系統通常是面向特定應用的嵌入式CPU與通用型的最大不同就是嵌入式CPU大多工作在為特定用戶群設計的系統中,它通常都具有低功耗、體積小、集成度高等特點,能夠把通用CPU中許多由板卡完成的任務集成在晶元內部,從而有利於嵌入式系統設計趨於小型化,移動能力大大增強,跟網路的耦合也越來越緊密。
2.嵌入式系統是將先進的計算機技術、半導體技術和電子技術與各個行業的具體應用相結合後的產物。這一點就決定了它必然是一個技術密集、資金密集、高度分散、不斷創新的知識集成系統。
3.嵌入式系統的硬體和軟體都必須高效率地設計,量體裁衣、去除冗餘,力爭在同樣的矽片面積上實現更高的性能,這樣才能在具體應用中對處理器的選擇更具有競爭力。
4.嵌入式系統和具體應用有機地結合在一起,它的升級換代也是和具體產品同步進行,因此嵌入式系統產品一旦進入市場,具有較長的生命周期。
5.為了提高執行速度和系統可靠性,嵌入式系統中的軟體一般都固化在存儲器晶元或單片機本身中,而不是存貯於磁碟等載體中。
6.嵌入式系統本身不具備自舉開發能力,即使設計完成以後用戶通常也是不能對其中的程序功能進行修改的,必須有一套開發工具和環境才能進行開發!
9. 什麼是嵌入式文件系統(定義)
定義:
在嵌入式系統中使用的文件系統稱為嵌入式文件系統。由三部分組成:與嵌入式文件管理有關的軟體、被管理的嵌入式文件以及實施嵌入式文件管理所需的數據結構。其中嵌入式文件是嵌入式文件系統中的核心,它是用戶數據信息的存放形式,藉此實現嵌入式系統的功能。
嵌入式文件功能:
提供用戶對文件操作的命令。
提供用戶共享文件的機制。
管理文件的存儲介質。
提供文件的存取控制機制,保障文件及文件系統的安全性。
提供文件及文件系統的備份和恢復功能。
提供對文件的加密和解密功能。
嵌入式文件系統比較簡單,主要提供文件存儲、檢索和更新等功能,一般不提供保護和加密等安全機制。它以系統調用和命令方式提供文件的各種操作,主要有:
設置、修改對文件和目錄的存取許可權。
提供建立、修改、改變和刪除目錄等服務。
提供創建、打開、讀寫、關閉和撤銷文件等服務。
此外嵌入式文件系統還具有以下特點:
兼容性。嵌入式文件系統通常支持幾種標準的文件系統,如FAT32、JFFS2、YAFFS等。
實時文件系統。除支持標準的文件系統外,為提高實時性,有些嵌入式文件系統還支持自定義的實時文件系統,這些文件系統一般採用連續的方式存儲文件。
可裁剪、可配置。根據嵌入式系統的要求選擇所需的文件系統,選擇所需的存儲介質,配置可同時打開的最大文件數等。
支持多種存儲設備。嵌入式系統的外存形式多樣了,嵌入式文件系統需方便的掛接不同存儲設備的驅動程序,具有靈活的設備管理能力。同時根據不同外部存儲器的特點,嵌入式文件系統還需要考慮其性能、壽命等因素,發揮不同外存的優勢,提高存儲設備的可靠性和使用壽命。
10. 嵌入式系統中RAM的作用是什麼
嵌入式系統中RAM相當於PC的內存條。系統內核和其他程序都是從flash上載入到RAM中運行的。