1. 嵌入式數據存儲和非嵌入式存儲有什麼區別嵌入式存儲採用的資料庫和它用的編程語言有關系嗎
1、嵌入式系統是個大概念,對於有操作系統和文件系統的嵌入式系統(如嵌入式linux系統)來說,它的數據存儲方式(文件)和標準的計算機系統區別不大,它除了支持一些特別的文件系統(如yaffs, jffs)外,還支持很多標准計算機系統實現了的文件系統(如ext2, ext3, fat等)及網路文件系統。另外很多嵌入式系統還支持U盤、SD卡等設備,完全可以和標准文件系統進行文件交換。
所要注意的是部分嵌入式系統採用大端模式存儲,對於數據型文件(包括二進制、執行文件),在小端系統上(x86系統)會有不同的解析,當然標准系統也有大端的,同樣存在這些問題。
2、嵌入式系統的資料庫編程和標准系統一樣,使用資料庫廠商提供的API,需要的編程語言與廠商提供的API有關,只要這些API支持(如sqlite 支持用嵌入式linux系統的交叉編譯器編譯),那就沒有多大問題,區別只是編譯工具採用了嵌入式系統的交叉編譯器而已。
2. 嵌入式系統與非嵌入式的主要區別是什麼
嵌入式軟體就是嵌入在硬體中的操作系統和開發工具軟體。非嵌入式軟體和嵌入式軟體正好相反,其是指可以跨平台甚至跨系統使用的軟體系統。
3. 嵌入式存儲器的類型有哪些,對比他們的性能參數
兩個問題都能在這里找到答案,我搜了下,參考`
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微結構的設計目
4. 嵌入式系統中的存儲器映射是怎麼回事,為什麼要映射
我是這樣理解的:
存儲器空間是和硬體相關聯的,可以對某些地址上寫數據來控制硬體,為了方便使用(總不可能都用地址來直接控制,那樣就工作量就太大了),將這些地址賦予了一些變數名,通過變數名來控制硬體(也就是寄存器的概念)。
5. 嵌入式 文件存儲
fatfs就可以
書基本上不用看
你看好SD卡的數據手冊
然後到fatfs官方網站下載源碼 看看實例
移植到自己的系統上就行了
6. 嵌入式系統的存儲器設計需要考慮哪些方面
常見的嵌入式系統
Linux、uClinux、WinCE、PalmOS、Symbian、eCos、uCOS-II、VxWorks、pSOS、Nucleus、ThreadX 、Rtems 、QNX、INTEGRITY、OSE、C Executive
什麼是嵌入式操作系統?嵌入式操作系統是一種支持嵌入式系統應用的操作系統軟體,它是嵌入式系統的重要組成部分。嵌入時操作系統具有通用操作系統的基本特點,能夠有效管理復雜的系統資源,並且把硬體虛擬化。
從應用角度可分為通用型嵌入式操作系統和專用型嵌入式操作系統。常見的通用型嵌入式操作系統有Linux、VxWorks、Windows CE.net等。常用的專用型嵌入式操作系統有Smart Phone、Pocket PC、Symbian等。
按實時性可分為兩類:
實時嵌入式操作系統主要面向控制、通信等領域。如WindRiver公司的VxWorks、ISI的pSOS、QNX系統軟體公司的QNX、ATI的Nucleus等。
非實時嵌入式操作系統主要面向消費類電子產品。這類產品包括PDA、行動電話、機頂盒、電子書、WebPhone等。如微軟面向手機應用的Smart Phone操作系統。
7. 什麼是存儲器 嵌入式系統的存儲器
存儲器,包含內部存儲器,簡稱內存,又分為RAM (SRAM 靜態存儲器 ,DRAM動態存儲器) ROM(EPROM ,PROM , EEPROM , FLASH ROM,...);外部存儲器,簡稱外存:硬碟、U盤、光碟等.
嵌入式系統的存儲器主要針對嵌入式系統的特點進行部署的存儲器或存儲器系統,主要存儲器有:內存 SRAM , DRAM. EEPROM , FLASH ROM等。比如監控系統的還需要硬碟等外部存儲器
8. 嵌入式ROM和RAM的區別
ROM:只讀的內存
RAM:隨機存取存儲器
相同點就是都是存信息的
不同點就是
ROM不能一次寫入,不容易重新往裡寫,一般只能從中往外讀信息.而且斷電以後中間的信息不會丟失.
RAM可以隨時讀寫信息,但斷電後存入的信息就丟失了
目前來說嵌入式軟體的就業前景很好,像STM32、飛思卡爾等系列單片機屬於無操作系統的,直接對寄存器或者利用庫函數操作的,這種學習來難度相對小一些,就業前景也不錯。還有一些像ARM9,或者CortexA8、A9系列的可以運行Linux或者安卓操作系統的嵌入式軟體系統開發,由於需要學習的內容較多,學習時間較長,那麼學習起來就有一定的難度,工資也相對高一些。不管學習哪一類都要持之以恆,堅持下來就會學會的。當然,學習過程中,多做練習是必不可少的。
9. 嵌入式存儲晶元下面的EMMC,TSD,FSD分別是什麼意思代表著什麼
emmc是新一代的手機存儲方案,比較經濟的同時性能也很好。
10. 嵌入式包括哪些
編輯本段嵌入式系統的組成
一個嵌入式系統裝置一般都由嵌入式計算機系統和執行裝置組成,嵌入式計算機系統是整個嵌入式系統的核心,由硬體層、中間層、系統軟體層和應用軟體層組成。執行裝置也稱為被控對象,它可以接受嵌入式計算機系統發出的控制命令,執行所規定的操作或任務。執行裝置可以很簡單,如手機上的一個微小型的電機,當手機處於震動接收狀態時打開;也可以很復雜,如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)。RISC計算機在通道中只包含最有用的指令,確保數據通道快速執行每一條指令,從而提高了執行效率並使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功能,設計硬體相關的設備驅動。