日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

icache的方面以及使用

發布時間:2025/3/17 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 icache的方面以及使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這次學習一下高速緩存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;


轉載于:https://blog.51cto.com/11962449/1837572

新人創作打卡挑戰賽發博客就能抽獎!定制產品紅包拿不停!

總結

以上是生活随笔為你收集整理的icache的方面以及使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。