色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > ARM存儲器之:高速緩沖存儲器Cache

          ARM存儲器之:高速緩沖存儲器Cache

          作者: 時間:2013-09-30 來源:網(wǎng)絡 收藏

          本文引用地址:http://cafeforensic.com/article/257011.htm

          (2)寄存器c7

          CP15中的寄存器c7主要用于控制Cache和寫緩存。

          注意

          c7有時也用于其他相似的功能,如果系統(tǒng)中存在預測緩存(prefetchbuffers)和分支目標(branchtarget)Cache,c7也將負責對它們進行控制。

          c7是一個只寫存儲器,可以使用協(xié)處理器指令MCR對其進行操作。如果程序中包含讀c7的操作,那么指令的結果不可預知。

          使用MCR指令寫該寄存器的命令格式如下所示。

          MCRP15,0,Rd>,c7>,CRm>,opcode2>

          其中,CRm和opcode2的不同組合,決定指令執(zhí)行的不同操作。具體組合與操作的對應關系見表15.15。

          表15.15 CRm與opcode2不同組合與操作的應用關系

          CRm

          Opcode2

          含義

          數(shù)據(jù)

          c0

          4

          等待中斷

          0(SBZ,shouldbezero)

          c5

          0

          使整個指令Cache無效

          0

          c5

          1

          使指令Cache中某行無效

          虛擬地址

          c5

          2

          使指令Cache中某行無效

          組號/索引

          c5

          4

          清空預取緩存區(qū)

          0

          c5

          6

          清空整個分支目標Cache

          0

          c5

          7

          清空分支目標Cache中的某入口項

          生產(chǎn)商定義

          c6

          0

          使整個數(shù)據(jù)Cache無效

          0

          續(xù)表

          CRm

          Opcode2

          含義

          數(shù)據(jù)

          c6

          1

          使數(shù)據(jù)Cache中的某行無效

          虛擬地址

          c6

          2

          使數(shù)據(jù)Cache中的某行無效

          組號/索引

          c7

          0

          使整個統(tǒng)一Cache無效

          哈佛結構中,使整個數(shù)據(jù)Cache和指令Cache無效

          0

          c7

          1

          使統(tǒng)一Cache中某行無效

          虛擬地址

          c7

          2

          使統(tǒng)一Cache中某行無效

          組號/索引

          c8

          2

          等待中斷

          0

          c10

          1

          清理數(shù)據(jù)Cache行

          虛擬地址

          c10

          2

          清理數(shù)據(jù)Cache行

          組號/索引

          c10

          4

          清除寫緩存區(qū)

          0

          c11

          1

          清理統(tǒng)一Cache行

          虛擬地址

          c11

          2

          清理統(tǒng)一Cache行

          組號/索引

          c13

          1

          預取指令Cache中的某行

          虛擬地址

          c14

          1

          清理并使數(shù)據(jù)Cache中的某行無效

          虛擬地址

          c14

          2

          清理并使數(shù)據(jù)Cache中的某行無效

          組號/索引

          c15

          1

          清理并使統(tǒng)一Cache中的某行無效

          虛擬地址

          c15

          2

          清理并使統(tǒng)一Cache中的某行無效

          組號/索引

          (3)寄存器c9

          將Cache進入存儲系統(tǒng)的注意目的是要提高系統(tǒng)的平均訪問速度。但Cache是一把雙刃劍,在某些情況下,可能使系統(tǒng)的性能更遭。下面列出了3種使Cache性能明顯下降的原因。

          ①Cache訪問未命中,處理器轉向主存尋址數(shù)據(jù),這期間的延時對系統(tǒng)性能影響很大。

          ②在回寫型Cache中,如果Cache中的數(shù)據(jù)所在地址被存儲管理單元重新定位(即Cache中存儲的為虛地址數(shù)據(jù)),那么數(shù)據(jù)回寫的操作延時很大。

          ③當處理器需要一個字節(jié)數(shù)據(jù),而此數(shù)據(jù)恰好不在Cache中,那么Cache的替換策略就會將整個Cache行換進,增加了系統(tǒng)不必要的開銷。

          存儲器相關文章:存儲器原理




          評論


          相關推薦

          技術專區(qū)

          關閉