嵌入式系統(tǒng)中的CACHE問(wèn)題

時(shí)間:2023-05-01 08:46:06 計(jì)算機(jī)論文 我要投稿
  • 相關(guān)推薦

嵌入式系統(tǒng)中的CACHE問(wèn)題

摘要:描述了在實(shí)時(shí)嵌入式系統(tǒng)開(kāi)發(fā)中遇到的與CACHE有關(guān)的問(wèn)題。對(duì)引起這些問(wèn)題的原因——CACHE和RAM的不一致性進(jìn)行了討論。最后,提出了解決問(wèn)題的方法。

    關(guān)鍵詞:嵌入式實(shí)時(shí)系統(tǒng) CACHE 不一致性

隨著社會(huì)的發(fā)展、人們生活水平的提高,人們對(duì)嵌入式計(jì)算機(jī)應(yīng)用的要求也越來(lái)越高。因此,對(duì)嵌入式系統(tǒng)的性能要求也越來(lái)越高。明顯體現(xiàn)在嵌入式系統(tǒng)的CPU速度的不斷提高上。但問(wèn)題也隨之而來(lái),嵌入式CPU的主頻不斷地提高,一方面加強(qiáng)了CPU的處理能力,另一方面,在速度上造成了與慢速的系統(tǒng)存儲(chǔ)器極不相配的情況,從而影響了整個(gè)系統(tǒng)的性能。

為了解決這個(gè)問(wèn)題,引入了CACHE技術(shù)。CACHE是一種高速緩沖存儲(chǔ)器,是為了解決CPU和主存之間速度不匹配而采用的一項(xiàng)重要技術(shù)。通過(guò)在主存和高速CPU之間設(shè)置一個(gè)小容量的高速存儲(chǔ)器,在其中存放CPU常用的指令和數(shù)據(jù),CPU對(duì)存儲(chǔ)器的訪(fǎng)問(wèn)主要體現(xiàn)在對(duì)SRAM的存取,CPU可以不必加等待狀態(tài)而保持高速操作。

采用CACHE技術(shù),解決了CPU與主存之間速度不匹配的問(wèn)題;但它又帶來(lái)了一些其它問(wèn)題,如本文將提到的一致性問(wèn)題。

1 問(wèn)題的發(fā)現(xiàn)與原因

在進(jìn)行某嵌入式系統(tǒng)項(xiàng)目的開(kāi)發(fā)過(guò)程中,有一個(gè)環(huán)節(jié)需要使用DMA方式進(jìn)行數(shù)據(jù)傳輸。當(dāng)程序運(yùn)行后,發(fā)現(xiàn)傳到目的地的數(shù)據(jù)塊中經(jīng)常會(huì)有一些錯(cuò)誤的字節(jié)。如:數(shù)據(jù)本應(yīng)為00 01 02 03 04 05 06 07 08 09 0A 0B ...(16進(jìn)制),結(jié)果卻是00 01 02 03 00 00 00 00 08 09 0A 0B ...。在某些環(huán)節(jié)也出現(xiàn)了類(lèi)似的問(wèn)題。例如,通過(guò)HDLC通道向外發(fā)送數(shù)據(jù),發(fā)送的總是緩沖區(qū)初始化時(shí)的內(nèi)容,實(shí)際要發(fā)送的數(shù)據(jù)總是發(fā)不出去,但使用調(diào)試工具看內(nèi)存中的數(shù)據(jù),卻是正確的。

經(jīng)過(guò)一段時(shí)間的調(diào)試,發(fā)現(xiàn)出現(xiàn)這種現(xiàn)象的環(huán)節(jié)都使用了DMA傳輸數(shù)據(jù)。在通過(guò)HDLC通道發(fā)送數(shù)據(jù)的例子中,HDLC通道內(nèi)部也是用DMA方式從內(nèi)存直接讀數(shù)據(jù)并向外發(fā)送。經(jīng)過(guò)分析,認(rèn)為問(wèn)題的原因是出在CACHE上,是由于CACHE數(shù)據(jù)與內(nèi)存數(shù)據(jù)的不一致性造成的。

所謂CACHE數(shù)據(jù)與內(nèi)存數(shù)據(jù)的不一致性,是指:在采用CACHE的系統(tǒng)中,同樣一個(gè)數(shù)據(jù)可能既存在于CACHE中,也存在于主存中,數(shù)據(jù)一樣則具有一致性,數(shù)據(jù)若不一樣就叫做不一致性。具體表現(xiàn)在兩個(gè)方面:

(1)更新

[1] [2] [3] [4] 

【嵌入式系統(tǒng)中的CACHE問(wèn)題】相關(guān)文章:

嵌入式系統(tǒng)與通信技術(shù)在汽車(chē)安全中的應(yīng)用05-02

PPSM嵌入式RTOS中的窗口系統(tǒng)開(kāi)發(fā)12-01

嵌入式系統(tǒng)報(bào)告10-18

ART270嵌入式系統(tǒng)在測(cè)井儀器調(diào)試及檢測(cè)中的應(yīng)用04-29

嵌入式實(shí)時(shí)操作系統(tǒng)VxWorks及其在地震勘探儀器中的應(yīng)用04-28

GPS衛(wèi)星定位系統(tǒng)設(shè)計(jì)中幾個(gè)問(wèn)題的探討05-01

彈載嵌入式系統(tǒng)設(shè)計(jì)技術(shù)05-01

嵌入式船舶電站監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)04-28

嵌入式系統(tǒng)學(xué)習(xí)心得03-07

雙高嵌入式工控機(jī)平臺(tái)在電力系統(tǒng)中的應(yīng)用05-02