<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > ARM存儲(chǔ)器之:片上存儲(chǔ)器

          ARM存儲(chǔ)器之:片上存儲(chǔ)器

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

          15.2

          如果微處理器要達(dá)到最佳性能,那么采用是必需的。通常處理器的主頻為幾十MHz到200MHz。而一般的主存儲(chǔ)器采用動(dòng)態(tài)存儲(chǔ)器(ROM),其存儲(chǔ)周期僅為100ns~200ns。這樣指令和數(shù)據(jù)都存放在主存儲(chǔ)器中,主存儲(chǔ)器的速度將會(huì)嚴(yán)重制約整個(gè)系統(tǒng)的性能。在當(dāng)前的時(shí)鐘速度下,只有能支持零等待狀態(tài)訪問速度。同時(shí),與片外存儲(chǔ)器相比,片上存儲(chǔ)器有較好的功耗效率,并減少了電磁干擾。

          本文引用地址:http://www.ex-cimer.com/article/257012.htm

          在許多嵌入式系統(tǒng)中采用簡單的而不是Cache,因?yàn)镃ache有以下特點(diǎn):

          ·結(jié)構(gòu)簡單、價(jià)格便宜且功耗低;

          ·Cache有更不確定的行為。

          在設(shè)計(jì)中,為了使Cache有效的工作需要巨大的邏輯開銷。同時(shí),如果沒有合適、現(xiàn)成的Cache,則設(shè)計(jì)費(fèi)用是驚人的。而且,Cache存儲(chǔ)器的操作很復(fù)雜,這使得在大多數(shù)情況下很難預(yù)測它將如何工作,在某種程度上導(dǎo)致了系統(tǒng)的不可預(yù)知性。特別是在有中斷的情況下,很難保證中斷響應(yīng)時(shí)間。

          與Cache相比,的缺點(diǎn)是需要程序員直接管理。而Cache對于程序員來說是透明的。如果程序的混合(programmix)、定義好并且不需要程序員對其進(jìn)行控制,那么就能有效的作為軟件控制的Cache來使用。如果應(yīng)用程序的混合不能預(yù)知,那么控制任務(wù)就變得非常困難。因此,應(yīng)用程序的混合不可預(yù)知的通用系統(tǒng)中,通常采用Cache。

          片上RAM的一個(gè)重要特點(diǎn)是,它使程序員能夠根據(jù)對將來處理工作量的了解劃分RAM空間。而Cache只能記錄運(yùn)行過的程序狀態(tài),無法預(yù)測以后要運(yùn)行的程序,因此,無法實(shí)現(xiàn)對將來的關(guān)鍵任務(wù)預(yù)先作準(zhǔn)備。在一些嵌入式系統(tǒng)中,關(guān)鍵任務(wù)必須滿足嚴(yán)格的實(shí)時(shí)約束,這個(gè)差別就顯得特別重要。

          存儲(chǔ)器相關(guān)文章:存儲(chǔ)器原理




          關(guān)鍵詞: ARM 片上存儲(chǔ)器 片上RAM

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();