91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

icache的方面以及使用

發布時間:2020-07-21 06:41:25 來源:網絡 閱讀:2215 作者:飛寞 欄目:開發技術

這次學習一下高速緩存icache的功能的開關。

 首先鞏固一下這個mrc指令

MRC 指令的格式為:

MRC{<cond>}(條件)協處理器編碼,協處理器操作碼1,目的寄存器,源寄存器1,源寄存器2,協處理器操作碼2。

如 mrc  p15 , 0 , r0 , c1 , c0 , 0 ;

  <cond>為指令執行的條件碼,忽略則視為無條件執行,該指令的作用是將 cp15 的寄存器c1,c0中的數據傳送到 ARM 處理器寄存器r0中,如果協處理器不能成功地執行該操作,將產生未定義的指令異常中斷。源寄存器1,2:存放第1個和第2個操作數的協處理器寄存器。協處理器操作碼2:可選的協處理器特定操作碼,用來區分同一個編號的不同物理寄存器,當不需要提供附加信息時,指定為0。

  cp15是用于系統存儲管理的協處理器,對于CP15寄存器來說協處理器操作碼1永遠為0,否則結果不可預知。  

  cp15中的C1寄存器存放了高速緩存的控制功能,所以我們要通過寫這個協處理器寄存器里面的位,來啟用icache高速緩存。

  

  C1寄存器的各個位說明以及應用:

  0 1 2 3 4 5 6 7 8 9 10 11  12  13  14  15   16~31

  M A C W P D L B S R F  Z  I   V   RR  L4  SBZP/UNP   

  各個位的作用和含義:

  M:禁止/使能MMU或者MPU(0:禁止MMU或者MPU,1:使能MMU或者MPU)(如果系統中沒有MMU或者MPU,讀取時該位返回0,寫入時忽略)

  A:對于可以選擇是否支持內存訪問時地址對齊檢查的系統,本位禁止/使能地址對齊檢查功能(0:禁止地址對齊檢查功能,1:使能地址對齊檢查功能)(對寄存器進行寫操作時,忽略該位)

 C: 當數據Cache和指令Cache分開時,本控制位禁止/使能數據Cache。當數據Cache和指令Cache統一時,該控制位禁止/使能整個Cache.(0:禁止Cache, 1:使能Cache)

 W:禁止/使能寫緩存(0:禁止寫緩存,1:使能寫緩存)

 P:對于向前兼容26位ARM處理器,本控制位控制PRGC32控制信號(0:異常中斷處理程序進入32位地址模式,1:異常中斷處理程序進入26位地址模式)

 D:對于向前兼容26位ARM處理器,本控制位控制DATA32控制信號(0:禁止26位地址異常檢查,1:使能26位地址異常檢測)

 L:對于ARMv3及以前版本,本控制位可以控制處理器的中止模式(0:選擇早期中止模式,1:選擇后期中止模式)

 B: 對于存儲系統同時支持大/小端(big-endian/little-endian)的ARM處理器,該控制位配置系統使用哪種內存模式

 S:支持MMU的存儲系統中,本控制位用作系統保護

 R:支持MMU的存儲系統中,本控制位用作ROM保護

 F:本控制位由生產廠商定義

 Z:對于支持跳轉預測的ARM系統,本控制位禁止/使能跳轉預測功能(0:禁止跳轉預測功能,1:使能跳轉預測功能)

 I:當數據Cache和指令Cache是分開的,本控制位禁止/使能指令Cache(0:禁止指令Cache ,1:使能指令Cache)

我們要寫它的第I位,也就是第bit12位

  

  bic指令的用法:bic是位清除的指令,把操作數中為1的位對應位置的數(寄存器中)變為0,然后再放到那個寄存器里去。

  比如 bic r0 ,r0 ,0xF0000000    意思就是把r0高四位的值清零,然后再放回r0寄存器中。

  orr指令則相反,把操作數中為1的位對應位置的數(寄存器中)變為1,然后再放到那個寄存器里去。


  //下面就是開/關icache的匯編程序

   mrc p15,0,r0,c1,c0,0;

  //bic r0, r0, #(1<<12)// bit12 置0  表示關上icache

   orr r0, r0, #(1<<12)// bit12 置1  表示開啟icache

   mcr p15,0,r0,c1,c0,0;


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阿城市| 昭觉县| 文登市| 都匀市| 梓潼县| 驻马店市| 汉源县| 邓州市| 连云港市| 宣化县| 铜川市| 绩溪县| 贺兰县| 宝丰县| 尼木县| 宁城县| 齐河县| 大新县| 黄龙县| 西乌| 临沂市| 泌阳县| 封丘县| 阳新县| 德兴市| 连城县| 静安区| 克山县| 刚察县| 海丰县| 清流县| 大化| 西林县| 磐安县| 城步| 永州市| 固阳县| 贺州市| 札达县| 和顺县| 云安县|