在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 協(xié)處理器及其他指令之:協(xié)處理器指令

            協(xié)處理器及其他指令之:協(xié)處理器指令

            作者: 時(shí)間:2013-09-13 來(lái)源:網(wǎng)絡(luò) 收藏

            本文引用地址:http://www.biyoush.com/article/257052.htm

            9.1指令

            體系結(jié)構(gòu)允許通過(guò)增加來(lái)擴(kuò)展指令集。最常用的是用于控制片上功能的系統(tǒng)協(xié)處理器。例如控制Cache和存儲(chǔ)管理單元的CP15寄存器。此外,還有用于浮點(diǎn)運(yùn)算的浮點(diǎn)協(xié)處理器,各生產(chǎn)商還可以根據(jù)需要開(kāi)發(fā)自己的專用協(xié)處理器。

            協(xié)處理器具有自己專用的寄存器組,它們的狀態(tài)由控制ARM狀態(tài)的指令的鏡像指令來(lái)控制。

            程序的控制流指令由ARM處理器來(lái)處理,所有只能同數(shù)據(jù)處理和數(shù)據(jù)傳送有關(guān)。按照RISC的Load/Store體系原則,數(shù)據(jù)的處理和傳送指令是被清楚分開(kāi)的,所以它們有不同的指令格式。

            ARM處理器支持16個(gè)協(xié)處理器,在程序執(zhí)行過(guò)程中,每個(gè)協(xié)處理器忽略ARM和其他。當(dāng)一個(gè)協(xié)處理器硬件不能執(zhí)行屬于它的時(shí),將產(chǎn)生一個(gè)未定義指令異常中斷,在該異常中斷處理過(guò)程中,可以通過(guò)軟件仿真該硬件操作。如果,一個(gè)系統(tǒng)中不包含向量浮點(diǎn)運(yùn)算器,則可以選擇浮點(diǎn)運(yùn)算軟件包來(lái)支持向量浮點(diǎn)運(yùn)算。

            ARM協(xié)處理器可以部分地執(zhí)行一條指令,而后產(chǎn)生中斷。如除法運(yùn)算除數(shù)為0和溢出,這樣可以更好地處理運(yùn)行時(shí)產(chǎn)生(run-time-generated)的異常。但是,指令的部分執(zhí)行是由協(xié)處理器完成的,此過(guò)程對(duì)ARM來(lái)說(shuō)是透明的。當(dāng)ARM處理器重新獲得執(zhí)行時(shí),它將從產(chǎn)生異常的指令處開(kāi)始執(zhí)行。

            對(duì)某一個(gè)協(xié)處理器來(lái)說(shuō),并不一定用到協(xié)處理器指令中的所有的域。具體協(xié)處理器如何定義和操作完全由協(xié)處理器的制造商自己決定,因此ARM協(xié)處理器指令中的協(xié)處理器寄存器的標(biāo)識(shí)符以及操作助記符也有各種不同的實(shí)現(xiàn)定義。程序員可以通過(guò)宏定義這些指令的語(yǔ)法格式。

            ARM協(xié)處理器指令分以下3類。

            ·協(xié)處理器數(shù)據(jù)操作。協(xié)處理器數(shù)據(jù)操作完全是協(xié)處理器內(nèi)部操作,它完成協(xié)處理器寄存器的狀態(tài)改變。如浮點(diǎn)加運(yùn)算,在浮點(diǎn)協(xié)處理器中兩個(gè)寄存器相加,結(jié)果放在第3個(gè)寄存器中。這類指令包括CDP指令。

            ·協(xié)處理器數(shù)據(jù)傳送指令。這類指令從寄存器讀取數(shù)據(jù)裝入?yún)f(xié)處理器寄存器,或?qū)f(xié)處理器寄存器的數(shù)據(jù)裝入存儲(chǔ)器。因?yàn)閰f(xié)處理器可以支持自己的數(shù)據(jù)類型,所以每個(gè)寄存器傳送的字?jǐn)?shù)與協(xié)處理器有關(guān)。ARM處理器產(chǎn)生存儲(chǔ)器地址,但傳送的字節(jié)由協(xié)處理器控制。這類指令包括LDC和STC指令。

            ·協(xié)處理器寄存器傳送指令。在某些情況下,需要ARM處理器和協(xié)處理器之間傳送數(shù)據(jù)。如一個(gè)浮點(diǎn)運(yùn)算協(xié)處理器,F(xiàn)IX指令從協(xié)處理器寄存器取得浮點(diǎn)數(shù)據(jù),將它轉(zhuǎn)換為整數(shù),并將整數(shù)傳送到ARM寄存器中。經(jīng)常需要用浮點(diǎn)比較產(chǎn)生的結(jié)果來(lái)影響控制流,因此,比較結(jié)果必須傳送到ARM的CPSR中。這類協(xié)處理器寄存器傳送指令包括MCR和MRC。

            表9.1列出了所有協(xié)處理器處理指令。

            表9.1 協(xié)處理器指令

            助記符

            操作

            CDP

            協(xié)處理器數(shù)據(jù)操作

            LDC

            裝載協(xié)處理器寄存器

            MCR

            從ARM寄存器傳數(shù)據(jù)到協(xié)處理器寄存器

            MRC

            從協(xié)處理器寄存器傳數(shù)據(jù)到ARM寄存器

            STC

            存儲(chǔ)協(xié)處理器寄存器

            9.1.1協(xié)處理器數(shù)據(jù)操作指令CDP

            1.指令編碼格式

            此指令用于控制數(shù)據(jù)在協(xié)處理器寄存器內(nèi)部的操作。通常情況下該指令由協(xié)處理器完成,如果協(xié)處理器不能成功地執(zhí)行該操作,將產(chǎn)生未定義指令異常。

            指令的編碼格式如圖9.1所示。

            圖9.1CDP指令編碼格式


            上一頁(yè) 1 2 3 4 5 6 下一頁(yè)

            評(píng)論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉