關於ARM9協處理器CP15及MCR和MRC指令
http://6xudonghai.blog.163.com/blog/static/336406292008724103317304/
在基於ARM的嵌入式應用系統中,儲存系統通常是通過系統控制協處理器CP15完成的。CP15包含16個32位的暫存器,其編號為0~15。
訪問CP15暫存器的指令
MCRARM暫存器到協處理器暫存器的資料傳送
MRC協處理器暫存器到ARM暫存器的資料傳送
MCR指令和MRC指令只能在處理器模式為系統模式時執行,在使用者模式下執行MCR指令和MRC指令將會觸發未定義指令的異常中斷。
MCR指令
MCR指令將ARM處理器的暫存器中的資料傳送到協處理器暫存器中。如果協處理器不能成功地執行該操作,將產生未定義的指令異常中斷。
指令語法格式
MCR{<cond>}
,< opcode_1>,<Rd>,<CRn>,<CRm>{,<opcode_2>}
MCR{<cond>} p15,0,<Rd>,<CRn>,<CRm>{,<opcode_2>}
其中,<cond>為指令執行的條件碼。當<cond>忽略時指令為無條件執行。
< opcode_1>為協處理器將執行的操作的操作碼。對於CP15協處理器來說,<
opcode_1>
<Rd>作為源暫存器的ARM暫存器,其值將被傳送到協處理器暫存器中。
<CRn>作為目標暫存器的協處理器暫存器,其編號可能是C0,C1,…,C15。
<CRm>和<opcode_2>兩者組合決定對協處理器暫存器進行所需要的操作,如果沒有指定,則將為<CRm>為C0,opcode_2為0,否則可能導致不可預知的結果。
The CRm field and opcode_2 field are used to specify a particular action when addressing registers.The opcode_1, opcode_2 and CRm fields should be zero, except when the values specified are used to select the desired operations, in all instructions which access CP15. Using other values will result in unpredictable behavior. Attempting to read from a non-readable register, or writing to a non-writable register will cause unpredictable results.
使用示例
下面的指令從ARM暫存器R4中中將資料傳送到協處理器CP15的暫存器C1中。其中R4為ARM暫存器,存放源運算元,C1、C0為協處理器暫存器,為目標暫存器,opcode_1為0,opcode_2為0。
MCRp15,0,R4, C1,C0,0
MRC指令
MRC指令將協處理器的暫存器中的數值傳送到ARM處理器的暫存器中、如果協處理器不能成功地執行該操作,將產生未定義的指令異常中斷。
指令語法格式
MRC{<cond>}
,< opcode_1>,<Rd>,<CRn>,<CRm>{,<opcode_2>}
MRC{<cond>} p15,0,<Rd>,<CRn>,<CRm>{,<opcode_2>}
引數用法同MCR指令
CP15中的暫存器介紹
Register(暫存器) |
Read |
Write |
C0 |
ID Code (1) |
Unpredictable |
C0 |
Catch type(1) |
Unpredictable |
C1 |
Control |
Control |
C2 |
Translation table base |
Translation table base |
C3 |
Domain access control |
Domain access control |
C4 |
Unpredictable |
Unpredictable |
C5 |
Fault status(2) |
Fault status (2) |
C6 |
Fault address |
Fault address |
C7 |
Unpredictable |
Cache operations |
C8 |
Unpredictable |
TLB operations |
C9 |
Cache lockdown(2) |
Cache lockdown (2) |
C10 |
TLB lock down(2) |
TLB lock down(2) |
C11 |
Unpredictable |
Unpredictable |
C12 |
Unpredictable |
Unpredictable |
C13 |
Process ID |
Process ID |
C14 |
Unpredictable |
Unpredictable |
C15 |
Test configuration |
相關推薦關於ARM9協處理器CP15及MCR和MRC指令http://6xudonghai.blog.163.com/blog/static/336406292008724103317304/ 在基於ARM的嵌入式應用系統中,儲存系統通常是通過系統控制協處理器CP15完成的。CP15包含16個32位的暫存器,其編 ARM協處理器CP15(設定MMU,cache等)學習一直對協處理器CP15很恐懼,因為在網上基本上找不到中文的詳細說明,現在找了一些ARM官方文件(ARM920T Technical Reference Manual)來看,準備對它做個了結。 協處理器CP15包含了如下暫存器。=================== 淺談ARM協處理器命令MCR-MRCARM協處理器cp15,有16個暫存器,詳細看《ARM體系結構與程式設計》 這裡我大概說一下MRC與MCR這兩個協處理器操作,參考《s3c2440》元件手冊P140頁 格式: <MCR|MRC>{cond} p#,<expression1>, HBase學習之三: hbase filter(過濾器)和coprocessor(協處理器)統計行數的簡單應用2.通過coprocessor統計行數 關於協處理器的介紹和用法網上很多資料,可以自行查詢腦補,值得注意的是協處理器在hbase伺服器端執行,開發者可自定義處理器放置於伺服器端然後再客戶端呼叫, HBase建表高階屬性,hbase應用案例看行鍵設計,HBase和mapreduce結合,從Hbase中讀取資料、分析,寫入hdfs,從hdfs中讀取資料寫入Hbase,協處理器和二級索引1. Hbase高階應用 1.1建表高階屬性 下面幾個shell 命令在hbase操作中可以起到很到的作用,且主要體現在建表的過程中,看下面幾個create 屬性 1、 BLOOMFILTER 預設是NONE 是否使用布隆過慮及使用何種方式 布隆 期望、方差、協方差及相關係數的原理理解和計算一、期望 定義: 設P(x)是一個離散概率分佈函式自變數的取值範圍是。那麼其期望被定義為: HBase優化策略及協處理器服務端優化 什麼導致HBase效能下降 Jvm記憶體分配與GC回收策略 HBase執行機制相關的配置分配不合理 表結構設計及使用者使用方式不合理 HBase資料儲存過程 HBase寫入時當memstore達到一定大小會flush到磁碟儲存成HFile, uboot中的mmu和cache開啟(基本協處理器操作)參考的書籍主要是<深度探索嵌入式作業系統> 彭東 著 第三章的內容 結合uboot 編譯rpi遇到的問題 mmu主要是實體地址和虛擬地址的轉換 cache主要有icache指令快取和dcache資料快取。比如在cpu執行for迴圈的時候需要重複訪問一句指令或者 公司網絡重新規劃及拓撲圖和VPN是的 一個 拓撲圖 自己的 任務 log vlan 技術分享 完成 因為公司沒有網絡工程師,所以這個任務就交由我來完成,但是我之前對網絡也不懂,然後查找資料,最後完成了網絡的重新規劃; 是的,其實我也不知道為什麽會接下這個任務,但是通過這個任務自己的確的學到不少東西; 先上 while與do while 區別 for循環的簡介及break和continue的區別停止 alt 執行c light div type 結構 輸入 n) do while 循環和while循環的區別 1、do while循環是先執行循環體,然後判斷循環條件,如果為真,則執行下一步循環,否則終止循環; while循環是先判斷循環條件,如果條件為真則 Spring3 MVC 註解(一)---註解基本配置及@controller和 @RequestMapping 常用解釋(轉)nal context pac 配置 註解 com inf 如何 文件中 一:配置web.xml 1)問題:spring項目中有多個配置文件mvc.xml dao.xml 2)解決:在web.xml中 <init-par 如何求數字n的因數個數及因數和ont 可能 簡單 ack 為我 pan -s span ... 我們有可能在某些數學題中會求到某個數的因數和,那我們怎麽求呢? 因為我們知道任意一個合數都可以由兩個或多個質數相乘得到,那麽我們就先分解質因數吧 例:我們隨便去一個數吧,嗯,就108了,好算。。。 我們 Linux的歸檔及壓縮和Linux的cron時間計劃任務linux linux的歸檔及壓縮: 1.節約空間 2.方便對零散文檔的管理 tar集成備份工具: -c: 創建歸檔 -x: 釋放歸檔 -f: 指定歸檔文件名稱 - java基礎程序代碼及Scanner和Randomrdo del 顯示 自定義 dell 價格 pub 使用 string 1.商城庫存總數及金額 public class shangpin{ public static void main(String[] args){ System.out.p pfSense關於處理器Meltdown(熔毀)和Spectre(幽靈)漏洞更新修復的說明microsoft 本地 以及 cache hit tga 系統 weight 運行 事件描述2018年1月4日,Jann Horn等安全研究者披露了"Meltdown"(CVE-2017-5754)和"Spectre"(CVE-20 php中的public、protected、private三種訪問控制模式及self和parent的區別(轉)protected 屬性和方法 ted tor pre ons spa imp 數據 php的public、protected、private三種訪問控制模式的區別 public: 公有類型 在子類中可以通過self::var調用public方法或屬性,parent::m CentOS-7 ,yum倉庫搭建及ftp和http配置yum ftp http 掛載光盤,光盤放入光驅# mkdir /media/cdrom //創建掛載目錄,個人習慣# mount /dev/cdrom /media/cdrom/ //掛載ls /media/cdrom/ //查看是否掛載成功 安裝 vsftprpm -ivh /med win10安裝mongodb及配置 和 mongodb的基本使用(node環境)function ase mov bsp .config 配置 bin 位置 保存數據 mongodb安裝 下載地址: https://www.mongodb.com/download-center 下載後,我們點擊mongodb-win32-x86_64-2008plu 第六課 相對和絕對路徑、創建和刪除目錄及cd和rm命令的使用20180326一、相對路徑和絕對路徑 pwd命令: 打印查看當前路徑 絕對目錄就是以/(根)開頭的,相對路徑就是相對當前目錄,不是以/(根)開頭的。 二、cd命令cd 進入到一個目錄cd - 進入上次的目錄(相當於遙控器上的相互交替的按鍵)cd ~ 回到用戶家目錄cd .. 進入到上一級目錄 三、創 msyql數據庫簡單操作及事務和索引linux mysqlmsyql數據庫簡單操作及事務和索引 Msyql數據庫操作:[root@MYSQL ~]# mysql -u root -p //進入數據庫中 mysql> show databases; //查看所有數據庫 mysql> use mysql; //進入mysql |