国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
嵌入式系統(tǒng)原理作業(yè)

嵌入式系統(tǒng)原理作業(yè)

計(jì)算機(jī)科學(xué)學(xué)院  于山山 主講

(紅色字體為新修改、添加的,僅供參考)

1.       考察智能手機(jī)的多功能化,展望智能手機(jī)的未來(lái)幾年發(fā)展前景如何?主要思考點(diǎn)包括:

l          關(guān)鍵應(yīng)用功能

l                   MP3,MP4,實(shí)名制,門禁識(shí)別,IPTV,

l                   手機(jī)游戲,手機(jī)遙控、視頻電話、定位服務(wù)

l                   互動(dòng)式語(yǔ)音應(yīng)答IVR

l          手機(jī)的開發(fā)平臺(tái)

l                   Symbian,Windows Mobile, Palm OS Linux OS

2.       EDA在嵌入式硬件設(shè)計(jì)中的地位和重要性如何?

P16  EDA是一種先進(jìn)的電子系統(tǒng)設(shè)計(jì)方法,它以計(jì)算機(jī)為主要工具,在EDA軟件平臺(tái)上,對(duì)使用硬件描述語(yǔ)言為描述手段完成的數(shù)字系統(tǒng)設(shè)計(jì)文件,自動(dòng)的完成邏輯編譯、邏輯綜合、結(jié)構(gòu)綜合,以及邏輯優(yōu)化和仿真測(cè)試,最終實(shí)現(xiàn)既定的電子系統(tǒng)功能。

3.       自頂向下ASIC設(shè)計(jì)方法的基本流程?P17  9個(gè)

概念設(shè)計(jì) 系統(tǒng)架構(gòu)設(shè)計(jì)與軟硬件劃分 行為級(jí)描述  構(gòu)建模塊與接口 功能仿真  邏輯綜合與優(yōu)化  布局布線設(shè)計(jì)  時(shí)序仿真  適配與驗(yàn)證  硬件測(cè)試

4.       簡(jiǎn)述FPGA器件的結(jié)構(gòu)。P20

組成:可配置邏輯塊、延時(shí)鎖定環(huán)、塊RAM

5.       CPLDFPGA的內(nèi)部結(jié)構(gòu)有什么主要區(qū)別?

FPGARAM塊、延時(shí)鎖定環(huán),CPLD沒(méi)有

以乘積項(xiàng)結(jié)構(gòu)方式構(gòu)成邏輯行為的器件稱為CPLD

以查表法結(jié)構(gòu)方式構(gòu)成邏輯行為的器件稱為FPGA

6.       有哪些主流的CPLDFPGA開發(fā)工具?P22 四個(gè)

1)        MAX+PLUS II    Quartus II   Synplify Pro   Foundation 、ISP Synario

7.       ASIC開發(fā)和CPLD/FPGA開發(fā)有什么區(qū)別?P20

aASIC先進(jìn)行布局布線后適配,而FPGA相反。b.ASIC先進(jìn)行概念設(shè)計(jì)與軟硬件劃分,而FPGA是先設(shè)計(jì)輸入c.FPGA沒(méi)有行為級(jí)描述及架構(gòu)模塊與接口。

8.       IP核有哪幾種主要形態(tài)?它們的優(yōu)選原則是什么?P37

1)        軟核 硬核 固核

優(yōu)選原則:

從可被重用頻度、可向其他工藝移植的可能性以及重用靈活性等方面考慮,優(yōu)選次序?yàn)椋荷喜哌x軟核,中策選固核,下策選硬核。從保證滿足要求的性能和規(guī)范、有較短的上市時(shí)間、自己付出勞動(dòng)盡量的少又并不只在乎高價(jià)的角度考慮,則優(yōu)選次序相反:硬核為上策,固核為中策,軟核為下策。

9.       有哪幾種主要的IP核互聯(lián)拓?fù)浣Y(jié)構(gòu)?P38 三個(gè)

a)         IP核單共享總線方式   點(diǎn)對(duì)點(diǎn)連接方式    多層次/多總線互連方式

10.   欲降低CMOS芯片的功耗應(yīng)從哪幾個(gè)主要方面考慮?P43  五個(gè)

1)        降低工作電壓   降低時(shí)鐘頻率  減少邏輯門的電容負(fù)載                  減少邏輯門的翻轉(zhuǎn)次數(shù)    降低靜態(tài)電流損耗

11.   在嵌入式軟件開發(fā)過(guò)程中,哪幾點(diǎn)對(duì)于降低功耗有較大影響?P43 九個(gè)

1)        低功耗編譯優(yōu)化技術(shù)    盡量減少CPU的運(yùn)算量     用“中斷”代替“輪詢”

2)        硬件軟件化   采用快速算法     通信編程時(shí)采用高波特率配置

3)        降低采樣速率    合理的延時(shí)子程序設(shè)計(jì)     睡眠方式

12.   哈佛結(jié)構(gòu)的計(jì)算機(jī)有什么優(yōu)缺點(diǎn)?P49

優(yōu)點(diǎn):數(shù)據(jù)Cache和指令Cache區(qū)分開來(lái),消除了數(shù)據(jù)引用與指令引用之間的沖突,使得取指令與取數(shù)據(jù)操作能同時(shí)進(jìn)行;而且允許獨(dú)立的選擇和優(yōu)化各個(gè)Cache的大小、行大小和相聯(lián)度。

缺點(diǎn):一是如果程序通過(guò)寫指令來(lái)修改程序自身的代碼,則這些新指令將被寫入到數(shù)據(jù)Cache。在程序能夠執(zhí)行這些指令前,兩個(gè)Cache都必須被刷新,并且修改了的指令必須被寫入存儲(chǔ)器以便Cache能從中取得指令。另一個(gè)不足是不允許大幅度的調(diào)節(jié)指令Cache和數(shù)據(jù)Cache的容量分配比例。

13.   主存控制器的作用是什么?P57

主存控制器可以決定處理器所使用的存儲(chǔ)區(qū)個(gè)數(shù),各個(gè)存儲(chǔ)區(qū)起始地址,各個(gè)存儲(chǔ)區(qū)的尋址空間大小和存儲(chǔ)區(qū)的數(shù)據(jù)線寬度;確定字節(jié)序;確定所有Bank的可編程訪問(wèn)周期,以及動(dòng)態(tài)存儲(chǔ)器的自動(dòng)刷新等。

14.   請(qǐng)說(shuō)明按照地址邊界對(duì)準(zhǔn)的方式進(jìn)行存儲(chǔ)器訪問(wèn)有什么優(yōu)點(diǎn)。P54

按照地址對(duì)準(zhǔn)方式訪問(wèn)內(nèi)存可以提高傳輸速率,加快訪問(wèn)速度,最重要的是簡(jiǎn)化了編譯器設(shè)計(jì),優(yōu)化了程序代碼。

15.   看門狗定時(shí)器的作用是什么?P52

用來(lái)引導(dǎo)嵌入式微處理器脫離死鎖工作狀態(tài)

16.   基于ARM核的XScale處理器有什么特點(diǎn)?P60 六個(gè)

1)        超流水線   高主頻     存儲(chǔ)體系    分支預(yù)測(cè)

2)        省去不常用的邏輯功能    指令集體系結(jié)構(gòu)

17.   地址重映射是怎么一回事?P55

計(jì)算機(jī)的物理存儲(chǔ)單元與分配給它的地址之間具有一一對(duì)應(yīng)的映射關(guān)系,而且是固定不變的,如果計(jì)算機(jī)在運(yùn)行過(guò)程中改不了這種映射關(guān)系,則稱為地址重映射。

18.   有哪幾種主要的嵌入式PowerPC處理器?P63

1)        IBM公司的PowerPC405GP

2)        Motorola公司的PowerPC  MPC823e

3)        Motorola公司的PowerPC  MPC7457MPC7447

4)        Motorola公司的PowerPC  8260QUICC  II

5)        MPC860  PowerQUICC

19.   PC和嵌入式系統(tǒng)的調(diào)試技術(shù)有什么主要不同之處?P64

對(duì)于通用計(jì)算機(jī)而言,在大多數(shù)情況下,運(yùn)行調(diào)試工具的宿主計(jì)算機(jī)與被調(diào)試程序運(yùn)行的目標(biāo)計(jì)算機(jī)是同一臺(tái)計(jì)算機(jī)。調(diào)試工具軟件的機(jī)器指令和被調(diào)試程序的機(jī)器指令屬于一種體系結(jié)構(gòu),可以在一臺(tái)計(jì)算機(jī)上調(diào)試。

由于嵌入式計(jì)算機(jī)的運(yùn)算能力、存儲(chǔ)能力和顯示能力相對(duì)較弱、數(shù)據(jù)吞吐量較小,作為目標(biāo)計(jì)算機(jī)在它上面很難直接進(jìn)行軟件硬件調(diào)試。因此,一般的嵌入式調(diào)試方法只能將調(diào)試工具安裝在PC機(jī)(宿主機(jī))上運(yùn)行,通過(guò)數(shù)據(jù)通信的方法向目標(biāo)機(jī)發(fā)出指令,控制目標(biāo)機(jī)的運(yùn)行,并且從目標(biāo)機(jī)上獲得運(yùn)行參數(shù),還能夠進(jìn)行單步跟蹤,臨時(shí)修改變量數(shù)值,并進(jìn)行各種調(diào)試。宿主機(jī)和目標(biāo)機(jī)通常具有不同的計(jì)算機(jī)體系結(jié)構(gòu),需要通信轉(zhuǎn)換器對(duì)調(diào)試信息進(jìn)行轉(zhuǎn)換。

20.   什么是背景調(diào)試?(P67

背景調(diào)試模式是一種片上調(diào)試技術(shù),對(duì)基于motorola公司專用片上調(diào)試器的調(diào)試方法的稱呼。在BDM調(diào)試方式下,處理機(jī)被停機(jī),各種調(diào)試命令可以被發(fā)送到處理器中訪問(wèn)內(nèi)存和寄存器。因此,滿足BDM調(diào)試的微處理器內(nèi)部已經(jīng)包含了用于調(diào)試的微碼,調(diào)試時(shí)仿真器軟件和目標(biāo)板上cpu的調(diào)試微碼通信,目標(biāo)板上大的cpu無(wú)需取出。

21.   基于Angel的調(diào)試方案是怎么一回事?(68

     AngelARM公司的調(diào)試監(jiān)控程序,適用于各種ARM硬件平臺(tái),也稱為調(diào)試代理,由多個(gè)程序部件組成,與傳統(tǒng)調(diào)試監(jiān)控程序相類似駐留在目標(biāo)機(jī)上。Angel接收主機(jī)上發(fā)送過(guò)來(lái)的調(diào)試命令,執(zhí)行指定的調(diào)試操作,并將調(diào)試結(jié)果反饋回主機(jī)。適用于各種ARM硬件平臺(tái)。

22.   試描述ETMJTAG的異同點(diǎn)。

    基于JTAG的仿真器debug方法是利用芯片內(nèi)部的EmbeddedICE模塊來(lái)控制內(nèi)核,達(dá)到單步/斷點(diǎn)等調(diào)試目的,這種方法的特點(diǎn)是需要把目標(biāo)CPU停住后才能觀察現(xiàn)場(chǎng)情況。在真正的實(shí)時(shí)系統(tǒng)中,停止CPU運(yùn)行往往導(dǎo)致現(xiàn)場(chǎng)失真,ETM就能夠在CPU運(yùn)行過(guò)程中把現(xiàn)場(chǎng)信息捕捉壓縮進(jìn)行輸出,然后在PC端就可以對(duì)這些數(shù)據(jù)進(jìn)行解壓分析;用戶還可以對(duì)ETM設(shè)置很多過(guò)濾及觸發(fā)條件,對(duì)一些隨即出現(xiàn)的異常進(jìn)行捕捉(還能得到異常前后一段時(shí)間內(nèi)的系統(tǒng)信息)。本質(zhì)上ETM相當(dāng)于一個(gè)嵌入芯片內(nèi)部的邏輯分析儀。

23.   能夠完全取代目標(biāo)板的MCU仿真器是什么樣的仿真器。

ICE仿真器目前最為有效的調(diào)試嵌入式系統(tǒng)的手段,目標(biāo)板和ICE之間使用多芯扁平電纜連接。而ICE在使用時(shí)一般還需要與主機(jī)(一般是PC)連接。通過(guò)ICE的實(shí)際執(zhí)行,開發(fā)者可以排除人們難以發(fā)現(xiàn)的隱藏在設(shè)計(jì)方案中的邏輯錯(cuò)誤。ICE的另外一個(gè)主要功能是在應(yīng)用系統(tǒng)中仿真微控制器的實(shí)際執(zhí)行優(yōu)點(diǎn)是功能強(qiáng)大,軟硬件均可以做到完全實(shí)時(shí)在線調(diào)試;缺點(diǎn)是價(jià)格昂貴。

24.   ARM處理器的工作模式有幾種?設(shè)置這些模式是必要的嗎?每一種模式分別有哪幾個(gè)獨(dú)有特點(diǎn)?(91

     ARM微處理器支持7種運(yùn)行模式,分別為:
用戶模式(usr)ARM處理器正常的程序執(zhí)行狀態(tài)。
普通中斷模式(fiq):用于高速數(shù)據(jù)傳輸或通道處理。
外部中斷模式(irq):用于通用的中斷處理。
管理模式(svc):操作系統(tǒng)使用的保護(hù)模式。
終止模式(abt)Abort:當(dāng)數(shù)據(jù)或指令預(yù)取終止時(shí)進(jìn)入該模式,可用于虛擬存儲(chǔ)及存儲(chǔ)保護(hù)。
系統(tǒng)模式(sys):運(yùn)行具有特權(quán)的操作系統(tǒng)任務(wù)。
未定義(und):當(dāng)未定義的指令執(zhí)行時(shí)進(jìn)入該模式,可用于支持硬件協(xié)處理器的軟件仿真。
是必要的。

25.   能否簡(jiǎn)單地概述一下ARM處理器的寄存器組織?(92

 ARM微處理器共有37個(gè)32位寄存器,其中31個(gè)為通用寄存器,6個(gè)為狀態(tài)寄存器。但是這些寄存器不能被同時(shí)訪問(wèn),具體哪些寄存器是可編程訪問(wèn)的,取決微處理器的工作狀態(tài)及具體的運(yùn)行模式。但在任何時(shí)候,通用寄存器R14R0.程序計(jì)數(shù)器PC.一個(gè)或兩個(gè)狀態(tài)寄存器都是可訪問(wèn)的。

26.   如何使得ARM處理器在ARM狀態(tài)和Thumb狀態(tài)之間進(jìn)行切換?

進(jìn)入Thumb狀態(tài):當(dāng)操作數(shù)寄存器的狀態(tài)位(位0)為1時(shí),可以采用執(zhí)行BX指令的方法,使微處理器從ARM狀態(tài)切換到Thumb狀態(tài)。此外,當(dāng)處理器處于Thumb狀態(tài)時(shí)發(fā)生異常(如IRQ、FIQ、Undef、Abort、SWI等),則異常處理返回時(shí),自動(dòng)切換到Thumb狀態(tài)。
    進(jìn)入ARM狀態(tài):當(dāng)操作數(shù)寄存器的狀態(tài)位為0時(shí),執(zhí)行BX指令時(shí)可以使微處理器從Thumb狀態(tài)切換到ARM狀態(tài)。此外,在處理器進(jìn)行異常處理時(shí),把PC指針?lè)湃氘惓DJ芥溄蛹拇嫫髦校漠惓O蛄康刂烽_始執(zhí)行程序,也可以使處理器切換到ARM狀態(tài)。

27.   CPSRSPSR的使用特點(diǎn)分別是什么?81

所有處理器模式都可以訪問(wèn)當(dāng)前程序狀態(tài)寄存器CPSR。每種異常模式都有一個(gè)程序狀態(tài)保存寄存器SPSR。當(dāng)異常出現(xiàn)時(shí)SPSR用于保存CPSR的狀態(tài)。

體系結(jié)構(gòu)版本V3 體系結(jié)構(gòu)版本這個(gè)體系結(jié)構(gòu)版本將尋址范圍擴(kuò)展到了32. 當(dāng)前程序狀態(tài)信息由過(guò)去存于R15中移到一個(gè)新的當(dāng)前程序狀態(tài)寄存器CPSR.增加了程序狀態(tài) 保存寄存器SPSR,以便當(dāng)異常出現(xiàn)時(shí)保留CPSR的 內(nèi)容.增加了2個(gè)指令(MRSMSR),以訪 問(wèn)新的CPSRSPSR寄存器;增加了兩種處理器模式,使操作系統(tǒng)代碼可以方便地使用數(shù)據(jù)訪問(wèn)中止異常,指令預(yù)取中止異常和未定義中止異常。

28.按照ATPCS規(guī)則,IPSP、LRPC分別是哪些通用寄存器?它們中的每一個(gè)寄存器用途都是嚴(yán)格定義的嗎?

寄存器R12用作子程序間中間結(jié)果寄存器,記作IP. 子程序之間的連接代碼段中常常用此寄存器. 寄存器R13用作堆棧指針,記作SP.在子程序中寄存 器R13不能用作其他用途.寄存器SP在進(jìn)人子程序時(shí) 的值和退出子程序時(shí)的值必須相等. 寄存器R14稱為連接寄存器,記作LR.它用于保存子 程序的返回地址.如果在子程序中保存了返回地址, 寄存器R14則可以用作其他用途. 寄存器R15是程序計(jì)數(shù)器,記作PC.它不能用作其它用途。

29.ARM處理器的寄存器都是程序員可訪問(wèn)的嗎?

不一定,主要由處理器狀態(tài)和模式?jīng)Q定。這要看ARM處理器的開發(fā)人員是怎么編輯他的權(quán)限了,一般的程序員是只有使用權(quán)限的。

30.什么是ARM處理器的影子寄存器?(92

    它們是為處理器不同工作模 式配備的專用物理寄存器.在異常模式下,它 們將代替用戶或者系統(tǒng)模式下使用的部分寄存 器. 在管理,中止,未定義和普通中斷模式下,影子寄存器的數(shù)量均為2個(gè).而快速中斷為7個(gè).

31.ARM的存儲(chǔ)器保護(hù)單元起什么作用?

PU提供了一個(gè)相當(dāng)簡(jiǎn)單的代替MMU的方法來(lái)管理存儲(chǔ)器。對(duì)于不需要MMU的嵌入式系統(tǒng)而言,PU簡(jiǎn)化了硬件和軟件,主要表現(xiàn)在不使用轉(zhuǎn)換表,從而使硬件不必遍歷轉(zhuǎn)換表和軟件表與維護(hù)轉(zhuǎn)換表。

32.ARMCP15協(xié)處理器起什么作用?(P97

完成Cache配置,寫緩存配置之類的存儲(chǔ)系統(tǒng)管理工作。

33.ARM的邏輯Cache和物理Cache是怎么一回事?

答:Cache放在處理器內(nèi)核與MMU之間,稱為邏輯cache,也稱虛擬Cache;放在MMU與物理寄存器之間稱為物理Cache。Cache放在MMU之前還是之后決定了Cache尋址范圍和編程結(jié)構(gòu)。

邏輯Cache在虛擬地址空間存儲(chǔ)數(shù)據(jù),處理機(jī)可以直接通過(guò)邏輯Cache訪問(wèn)數(shù)據(jù),而無(wú)需通過(guò)MMU。物理Cache使用物理地址存儲(chǔ)數(shù)據(jù),當(dāng)處理器訪問(wèn)存儲(chǔ)器時(shí),MMU必須先把虛擬地址轉(zhuǎn)換成物理地址,Cache存儲(chǔ)器才可以向內(nèi)核提供數(shù)據(jù)。

34.ARM處理器中的寫緩存起什么作用?

答:寫緩存區(qū)改善了Cache的功能,主要用途是:當(dāng)CPU輸出數(shù)據(jù)時(shí),若總線恰好被占用而無(wú)法輸出,那么CPU可以把輸入數(shù)據(jù)寫入到寫緩存區(qū)。當(dāng)總線上沒(méi)有比寫緩存區(qū)優(yōu)先級(jí)別更高的掌控者時(shí),寫緩存區(qū)可以通過(guò)總線將數(shù)據(jù)寫入內(nèi)存。

35.異常處理結(jié)束后,CPU是如何返回到主程序斷點(diǎn)的?

答:從異常中斷處理程序返回時(shí),需要執(zhí)行一下四個(gè)基本操作:

所有修改過(guò)的用戶寄存器必須從處理程序的保護(hù)棧中恢復(fù)(出棧)。

恢復(fù)被中斷程序在被中斷時(shí)刻的CPSR寄存器(當(dāng)時(shí)的執(zhí)行現(xiàn)場(chǎng)),實(shí)質(zhì)上就是將SPSR_mode寄存器內(nèi)容恢復(fù)到CPSR。

返回到發(fā)生異常中斷的指令位置(該指令沒(méi)有執(zhí)行完畢)或異常中斷的下一條指令處執(zhí)行。為了做到這一點(diǎn),需要將LR_mode寄存器的內(nèi)容經(jīng)過(guò)某種減法計(jì)算后復(fù)制到程序計(jì)數(shù)器PC中。

清除CPSR中的中斷禁止標(biāo)志位(I標(biāo)志和T標(biāo)志)。

36.ARM異常中斷的返回有哪幾種情況?對(duì)應(yīng)的中斷服務(wù)子程序分別要做哪些處理?

答:SWI和未定義指令異常中斷處理程序返回;

    處理:當(dāng)程序計(jì)數(shù)器的值(CP-4)放入LR_SVCLR_UND寄存器中。中斷結(jié)束后再將LR的值給PC。

IRQFIQABT(指令預(yù)?。┊惓V袛嗵幚沓绦虻姆祷?;

處理:將程序計(jì)數(shù)器的值(PC-4)放入LR_IRQ或者LR_FIQ寄存器,中斷后將(LR-4)放入PC中。

        ABT(數(shù)據(jù)訪問(wèn)中止)異常中斷處理程序的返回

處理:將程序計(jì)數(shù)器的值(PC-4)放入LR_ABT寄存器中,中斷后將(LR-8)PC。

37.目前AMBA片上總線有哪幾個(gè)版本,它們的主要特點(diǎn)是什么?

答:AHB(高性能片上總線):用于連接高性能的系統(tǒng)模塊。支持突發(fā)數(shù)據(jù)傳輸方式以及單個(gè)數(shù)據(jù)傳送方式,所有時(shí)序都以單一時(shí)鐘的前沿為基準(zhǔn)。

ASB:用于連接高性能系統(tǒng)模塊,支持突發(fā)數(shù)據(jù)傳輸方式。

APB:為低性能的外圍部件提供較為簡(jiǎn)單的借口,優(yōu)點(diǎn)是最小功耗和易于使用。

AHBASB的升級(jí)版本,能夠支持更高性能的綜合及時(shí)序驗(yàn)證。

38.ARM7TDMI核指令流水線是幾級(jí)流水線?

三級(jí)流水線

39.ARM7TDMI的版本變量有四個(gè),分別代表什么含義?

TThumb指令集。Thumb指令長(zhǎng)度為16位。

D:含JTAG調(diào)試器,支持片上系統(tǒng)。

M:提供用于進(jìn)行長(zhǎng)乘法操作的ARM指令,產(chǎn)生全64位結(jié)果。

I:內(nèi)嵌式在線測(cè)試宏單元硬件部件,提供斷點(diǎn)和調(diào)試點(diǎn)支持。

40.列出ARM指令集與x86指令集不同點(diǎn)

項(xiàng)目

ARM處理器指令集

X86處理器指令集

指令格式

定長(zhǎng),4字節(jié)

不定長(zhǎng),1字節(jié)~15字節(jié)

程序讀寫指令計(jì)數(shù)器

可以

不可以

狀態(tài)標(biāo)志位更新

由指令的附加位決定

指令隱含決定

按照邊界對(duì)齊取指令

必須在4字節(jié)邊界取指

可在任意字節(jié)處取消

操作數(shù)尋址方式

3地址

2地址

狀態(tài)位個(gè)數(shù)

4

6

高密度指令

無(wú)

條件判斷執(zhí)行

幾乎每一條指令

專用條件判斷指令

棧數(shù)據(jù)傳送指令

沒(méi)有,用LDM/STM實(shí)現(xiàn)

有專用指令PUSH/POP

DSP處理的乘加指令

無(wú)

仿存體系結(jié)構(gòu)

Load/Store指令

算術(shù)邏輯指令也能訪問(wèn)內(nèi)存

41.ARM處理器而言,相對(duì)尋址時(shí)的基準(zhǔn)地址是什么?

程序計(jì)數(shù)器PC當(dāng)作基址寄存器(指令中的地址碼字段作為位移量)  p123

42.數(shù)據(jù)塊傳送指令與堆棧指令有何不同?

數(shù)據(jù)塊傳送:

I =向地址增大方向處理數(shù)據(jù)傳送(Increment)

D =向地址減小方向處理數(shù)據(jù)傳送(Decrement)

A =先傳送數(shù)據(jù)后改變地址(after)

B =先改變地址后傳送數(shù)據(jù)(before)

堆棧操作:

F =滿棧頂指針(full)

E =空棧頂指針(empty)

A =堆棧向高地址方向增長(zhǎng)(ascending stack)

D =堆棧向低地址方向增長(zhǎng)(decending stack)

43.請(qǐng)說(shuō)明ARM指令第2個(gè)操作數(shù)是如何定義的?  P119

2操作數(shù)有兩種形式:立即數(shù)型  格式:#<32位立即數(shù)>

                      寄存器型  格式:Rm , {<shift>}

44.如何區(qū)別前索引偏移和后索引偏移?

前索引尋址方式:基址帶偏移作為傳送地址。

后索引尋址方式:基址不帶偏移傳送地址,且傳送后自動(dòng)更新基址寄存器。

45.使用兩種類型的第2操作數(shù),分別編寫3ARM指令,并且說(shuō)明這些指令中的第2操作數(shù)的形成方法。

MOV R4,#0x8000000A      ;將立即數(shù)由8位的0xA8循環(huán)右移0x2位得到。

ADD R0,R0,R0 LSL #2      ;R0邏輯左移2*2位,并加上R0得:5*R0賦給R0

ADD R5,R3,R1,LSL R4      ;R1邏輯左移2R4次冪,并加上R3賦給R5

P119

46.如何辨別LDR指令是ARM機(jī)器指令,還是偽指令。請(qǐng)你各舉出3條數(shù)據(jù)傳送LDR指令的例子和3LDR偽指令的例子。     P131

LDR若為ARM是將內(nèi)存數(shù)據(jù)存到寄存器中。而偽指令是用于大范圍地址讀取。形式為:LDR register=expr

RAM指令:LDR R1,0x12345678    0x12345678地址對(duì)應(yīng)的值給LDR

偽指令:LDR R1,=0x72345241      0x72345241LDR

47.3,LDRSTR指令有前變址、后變址和回寫前變址三種變址模式,請(qǐng)你舉例說(shuō)明之。  P129

LDR R2,[R1,#4]  ;前變址

LDR R2,[R1,#4]!  ;回寫前變址

LDR R0,[R1],#4   ;后變址

48.什么是ATPCSAAPCS?

ATPCS規(guī)定了一些子程序間調(diào)用的基本規(guī)則。這些規(guī)則包括子程序調(diào)用過(guò)程中寄存器的使用規(guī)則、數(shù)據(jù)棧的使用規(guī)則以及參數(shù)的傳遞規(guī)則。有了這些規(guī)則之后,單獨(dú)編譯的C語(yǔ)言程序就可以和匯編程序相互調(diào)用。

AAPCSATPCS之間的差別很小。AAPCS的主要改進(jìn)之處是將ATPCS的二進(jìn)制代碼的不兼容性縮小到最低限度。

49.子程序或者過(guò)程調(diào)用時(shí),如果參數(shù)超過(guò)4個(gè),如何編程實(shí)現(xiàn)正確地參數(shù)傳遞?ARM內(nèi)嵌匯編的指令用法有哪些注意點(diǎn)?

在傳遞參數(shù)時(shí),將所有參數(shù)看作是存放在連續(xù)的內(nèi)存字單元的字?jǐn)?shù)據(jù)。然后,依次將各字?jǐn)?shù)據(jù)傳遞到寄存器R0,R1,R2R3中。如果參數(shù)多余4個(gè),則將剩余的字?jǐn)?shù)據(jù)傳遞到堆棧中。入棧的順序與參數(shù)傳遞順序相反,即最后一個(gè)字?jǐn)?shù)據(jù)先入棧。

內(nèi)嵌指令的用法,太多…p164

50.ADS環(huán)境中如何實(shí)現(xiàn)以下的子程序調(diào)用?

l       C語(yǔ)言程序調(diào)用 C++子程序(p168例子)

C語(yǔ)言程序調(diào)用C++程序時(shí),在C程序中使用關(guān)鍵詞extern聲明要調(diào)用的C++函數(shù),在C++程序中使用關(guān)鍵詞externc”聲明被調(diào)用的C++函數(shù)。

l       C/C++程序調(diào)用ARM匯編子程序要點(diǎn)(p165

設(shè)計(jì)匯編語(yǔ)言要遵循ATPCS,以保證程序調(diào)用時(shí)參數(shù)能正確傳遞。在匯編程序中使用EXPORT指示符聲明本程序可以被別的程序調(diào)用。在C語(yǔ)言程序中使用extern關(guān)鍵詞聲明該匯編程序可以被調(diào)用,C++語(yǔ)言程序使用extern

“C”來(lái)聲明該匯編程序可以被調(diào)用。

51.   嵌入式開發(fā)平臺(tái)與ARM開發(fā)工具有什么聯(lián)系?   P180

開發(fā)ARM應(yīng)用程序時(shí),全部工作(包括編輯、編輯、匯編、連接等)都可在主機(jī)上完成,但調(diào)試工作則需要其他的模塊或工具的配合。但調(diào)試部分大部分還得依賴目標(biāo)機(jī)。目前常用的調(diào)試方法和工具有指令集模擬器、駐留監(jiān)控軟件、JTAG仿真器和在線仿真器等。這些調(diào)試工具大都通過(guò)與目標(biāo)開發(fā)板進(jìn)行相互數(shù)據(jù)通信達(dá)到傳遞調(diào)試命令和信息的作用。二者是彼此相互依賴的。

52.   試描述ELF文件的內(nèi)部結(jié)構(gòu)

P181 ARM連接器把ELF文件當(dāng)做由節(jié)頭部表描述的一組邏輯節(jié),而系統(tǒng)加載器則把ELF文件當(dāng)做由程序頭部表描述的一組代碼段。一個(gè)代碼段通常由幾個(gè)節(jié)組成。

53.   什么是映像文件

映像文件是計(jì)算機(jī)上的一個(gè)可執(zhí)行文件,在執(zhí)行之前被加載到計(jì)算機(jī)的儲(chǔ)存器中。通常,一個(gè)鏡像文件中包含多個(gè)線程。

54.   什么是實(shí)時(shí)系統(tǒng)?    

對(duì)外來(lái)事件能在限定的響應(yīng)時(shí)間內(nèi)做出預(yù)定質(zhì)量處理的計(jì)算機(jī)系統(tǒng)。

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
93ARM嵌入式系統(tǒng)基礎(chǔ)教程習(xí)題答案 周立功
ARM常用匯編語(yǔ)句
轉(zhuǎn)載:arm匯編b,bl指令淺析
ARM寄存器與匯編指令詳解
從零開始構(gòu)建嵌入式實(shí)時(shí)操作系統(tǒng)4——深入講解任務(wù)切換
ARM9啟動(dòng)程序分析
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服