<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > ARM體系結構之:流水線(xiàn)

ARM體系結構之:流水線(xiàn)

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

本文引用地址:http://dyxdggzs.com/article/257092.htm

在圖2.6中的指令序列中,處理器的每個(gè)邏輯單元在每個(gè)指令都是活動(dòng)的??梢钥闯?a class="contentlabel" href="http://dyxdggzs.com/news/listbylabel/label/流水線(xiàn)">流水線(xiàn)的執行與存儲器訪(fǎng)問(wèn)密切相關(guān)。存儲器訪(fǎng)問(wèn)限制了程序執行必須花費的指令周期數。

執行模式導致了一個(gè)結果,就是程序計數器PC(對使用者而言為r15)必須在當前指令執行前計數。例如,指令在其第一個(gè)周期為下下條指令取指,這就意味著(zhù)PC必須指向當前指令的后8個(gè)字節(其后的第2條指令)。

當程序中必須用到PC時(shí),程序員要特別注意這一點(diǎn)。大多數正常情況下,不用考慮這一點(diǎn),它由匯編器或編譯器自動(dòng)處理這些細節。

例2.3顯示了下程序計數器PC的使用情況。

【例2.3】

指令序列為:

0x8000 LDR pc,[pc,#0]

0x8004 NOP

0x8008 DCD jumpAdress

當指令LDR處于執行階段時(shí),pc=address+8即0x8008。

2.5級流水線(xiàn)組織

所有的處理器都要滿(mǎn)足對高性能的要求。直到7為止,在A(yíng)RM核中使用的3級流水線(xiàn)的性?xún)r(jià)比是很高的。但是,為了得到更高的性能,需要重新考慮處理器的組織結構。執行一個(gè)給定的程序需要的時(shí)間由下式?jīng)Q定:

Tprog = (Ninst×CPI)/ fclk

式中:

Ninst:表示在程序中執行的ARM指令數;

CPI:表示每條指令的平均時(shí)鐘周期;

fclk:表示處理器的時(shí)鐘頻率。

因為對給定程序(假設使用給定的優(yōu)化集并用給定的編譯器來(lái)編譯)Ninst是常數,所以,僅有兩種方法來(lái)提供性能。

第一,提高時(shí)鐘頻率。時(shí)鐘頻率的提高,必然引起指令執行周期的縮短,所以要求簡(jiǎn)化流水線(xiàn)每一級的邏輯,流水線(xiàn)的級數就要增加。

第二,減少每條指令的平均指令周期數CPI。這就要求重新考慮3級流水線(xiàn)ARM中多于1個(gè)流水線(xiàn)周期的實(shí)現方法,以便使其占有較少的周期,或者減少因指令相關(guān)造成的流水線(xiàn)停頓,也可以將兩者結合起來(lái)。

3級流水線(xiàn)ARM核在每一個(gè)時(shí)鐘周期都訪(fǎng)問(wèn)存儲器,或者取指令,或者傳輸數據。只是抓緊存儲器不用的幾個(gè)周期來(lái)改善系統系統性能,效果是不明顯的。為了改善CPI,存儲器系統必須在每個(gè)時(shí)鐘周期中給出多于一個(gè)的數據。方法是在每個(gè)時(shí)鐘周期從單個(gè)存儲器中給出多于32位數據,或者為指令或數據分別設置存儲器。

基于以上原因,較高性能的ARM核使用了5級流水線(xiàn),而且具有分開(kāi)的指令和數據存儲器。把指令的執行分割為5部分而不是3部分,進(jìn)而可以使用更高的時(shí)鐘頻率,分開(kāi)的指令和數據存儲器使核的CPI明顯減少。

注意

分開(kāi)的指令和數據存儲器。一般是分開(kāi)的Cache連接到統一的指令和數據存儲器上。

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




關(guān)鍵詞: 流水線(xiàn) 指令譯碼器 ARM

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>