當(dāng)前位置:首頁 > 嵌入式 > 嵌入式硬件
[導(dǎo)讀]保存在存儲器中的內(nèi)容可以是程序,也可以是數(shù)據(jù)。程序是ARM處理器可以運行的指令代碼,數(shù)據(jù)是指令在運行中用到的操作數(shù)或者變量。

保存在存儲器中的內(nèi)容可以是程序,也可以是數(shù)據(jù)。程序是ARM處理器可以運行的指令代碼,數(shù)據(jù)是指令在運行中用到的操作數(shù)或者變量。

1、程序存儲

ARM處理器支持兩種指令,一種是ARM匯編指令,一種是Thumb匯編指令。ARM匯編指令是32位長,即每條ARM匯編指令都是由四個字節(jié)的存儲空間保存,所以ARM處理器在執(zhí)行地址a的ARM匯編指令時,會從地址a + 4取下一條指令。Thumb匯編指令是16位長,即每條Thumb匯編指令都是由兩個字節(jié)的存儲空間保存,所以ARM處理器在執(zhí)行地址a的Thumb匯編指令時,會從地址a + 2取下一條指令。

ARM處理器可以執(zhí)行兩種格式的指令,運行不同格式的匯編指令在執(zhí)行和取指方面有很大不同。為了區(qū)分,ARM內(nèi)核可以工作在兩種工作狀態(tài)下。

l ARM狀態(tài) 此時執(zhí)行32位字對齊的ARM匯編指令。在這種狀態(tài)下,ARM處理器對指令的存儲、讀取或者執(zhí)行都是以一個字(即32位)為基本單位;

l THUMB狀態(tài) 此時執(zhí)行16位半字對齊的Thumb匯編指令。在這種狀態(tài)下,ARM處理器對指令的存儲、讀取或者執(zhí)行都是以一個半字(即16位)為基本單位;

l 這兩種工作狀態(tài)可以轉(zhuǎn)換,但轉(zhuǎn)換不影響處理器狀態(tài)和寄存器的內(nèi)容。

2、數(shù)據(jù)存儲

ARM處理器對數(shù)據(jù)操作(讀或?qū)?支持三種數(shù)據(jù)長度:字節(jié)(8位)、半字(16位)、字(32位)。假設(shè)在地址為0x0000~0x0004的內(nèi)存空間保存了如圖1所示的數(shù)據(jù),下面我們以三種數(shù)據(jù)長度從內(nèi)存空間讀取數(shù)據(jù)。(假設(shè)數(shù)據(jù)的存儲格式是小端存儲格式)

 

 

圖1 內(nèi)存空間的內(nèi)容

l 字節(jié):從地址0x0000處取一個字節(jié)數(shù)據(jù),則取出來的內(nèi)容為12;從地址0x0001處取一個字節(jié)數(shù)據(jù),則取出來的內(nèi)容為34;

l 半字:從地址0x0000處取一個半字?jǐn)?shù)據(jù),則取出來的內(nèi)容為3412;從地址0x0001處取一個半字?jǐn)?shù)據(jù),則取出來的內(nèi)容為5634;

l 字:從地址0x0000處取一個字?jǐn)?shù)據(jù),則取出來的內(nèi)容為78563412;從地址0x0001處取一個字?jǐn)?shù)據(jù),則取出來的內(nèi)容為9A785634。

需要注意的是,ARM處理器在對數(shù)據(jù)操作時要邊界對齊,要找到正確的地址。在對16位數(shù)據(jù)操作時,地址數(shù)據(jù)末位(0)應(yīng)該為0,在對32位數(shù)據(jù)操作時,地址數(shù)據(jù)末兩位(1:0)應(yīng)該都為0。比如上面對字進(jìn)行操作時,ARM處理器不允許從地址0x0001處讀取一個字內(nèi)容出來。

現(xiàn)在常用的ARM版本中,都不支持非對齊字的傳輸(ARMv3、ARMv4、ARMv5)。在ARMv6中,開始支持非對齊字的傳輸。

3、“馮·諾依曼”體系結(jié)構(gòu)和“哈佛”體系結(jié)構(gòu)

說到ARM程序與數(shù)據(jù)存儲,應(yīng)該講一下“馮·諾依曼”體系結(jié)構(gòu)和“哈佛”體系結(jié)構(gòu)。因為ARM7系列采用馮·諾依曼體系結(jié)構(gòu),而ARM9~ARM11采用哈佛體系機構(gòu)。兩種結(jié)構(gòu)描述如下:

“馮·諾依曼”體系結(jié)構(gòu)

20世紀(jì)30年代中期,德國科學(xué)家馮諾依曼大膽的提出,拋棄十進(jìn)制,采用二進(jìn)制作為數(shù)字計算機的數(shù)制基礎(chǔ)。同時,他還說預(yù)先編制計算程序,然后由計算機來按照人們事前制定的計算順序來執(zhí)行數(shù)值計算工作。

馮諾依曼理論的要點是:數(shù)字計算機的數(shù)制采用二進(jìn)制;計算機應(yīng)該按照程序順序執(zhí)行。

其主要內(nèi)容是:

l 計算機由控制器、運算器、存儲器、輸入設(shè)備、輸出設(shè)備五大部分組成。

l 程序和數(shù)據(jù)以二進(jìn)制代碼形式不加區(qū)別地存放在存儲器中,存放位置由地址確定。

l 控制器根據(jù)存放在存儲器中地指令序列(程序)進(jìn)行工作,并由一個程序計數(shù)器控制指令地執(zhí)行??刂破骶哂信袛嗄芰?,能根據(jù)計算結(jié)果選擇不同的工作流程。

 

 

“哈佛”體系結(jié)構(gòu)

數(shù)字信號處理一般需要較大的運算量和較高的運算速度,為了提高數(shù)據(jù)吞吐量,在數(shù)字信號處理器中大多采用哈佛結(jié)構(gòu)。

哈佛結(jié)構(gòu)特點如下:

l 使用兩個獨立的存儲器模塊,分別存儲指令和數(shù)據(jù),每個存儲模塊都不允許指令和數(shù)據(jù)并存,以便實現(xiàn)并行處理;

l 具有一條獨立的地址總線和一條獨立的數(shù)據(jù)總線,利用公用地址總線訪問兩個存儲模塊(程序存儲模塊和數(shù)據(jù)存儲模塊),公用數(shù)據(jù)總線則被用來完成程序存儲模塊或數(shù)據(jù)存儲模塊與CPU之間的數(shù)據(jù)傳輸;

 

 

兩種結(jié)構(gòu)區(qū)別

在典型情況下,完成一條指令需要3個步驟,即:取指令、指令譯碼和執(zhí)行指令。從指令流的定時關(guān)系也可看出馮.諾曼結(jié)構(gòu)與哈佛結(jié)構(gòu)處理方式的差別。

舉一個最簡單的對存儲器進(jìn)行讀寫操作的指令,指令1至指令3均為存、取數(shù)指令,對馮.諾曼結(jié)構(gòu)處理器,由于取指令和存取數(shù)據(jù)要從同一個存儲空間存取,經(jīng)由同一總線傳輸,因而它們無法重疊執(zhí)行,只有一個完成后再進(jìn)行下一個。

如果采用哈佛結(jié)構(gòu)處理以上同樣的3條存取數(shù)指令,如下圖所示,由于取指令和存取數(shù)據(jù)分別經(jīng)由不同的存儲空間和不同的總線,使得各條指令可以重疊執(zhí)行,這樣,也就克服了數(shù)據(jù)流傳輸?shù)钠款i,提高了運算速度。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉