[發明專利]非完全鎖步的VLIW處理器流水線控制方法有效
| 申請號: | 200910044747.6 | 申請日: | 2009-11-12 |
| 公開(公告)號: | CN101702118A | 公開(公告)日: | 2010-05-05 |
| 發明(設計)人: | 李勇;李振濤;陳書明;陳吉華;郭陽;萬江華;孫書為;劉蓬俠;劉宗林;魯建壯;余再祥;羅恒;吳虎成 | 申請(專利權)人: | 中國人民解放軍國防科學技術大學 |
| 主分類號: | G06F9/38 | 分類號: | G06F9/38 |
| 代理公司: | 國防科技大學專利服務中心 43202 | 代理人: | 郭敏 |
| 地址: | 410073 *** | 國省代碼: | 湖南;43 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 完全 vliw 處理器 流水線 控制 方法 | ||
技術領域
本發明涉及一種微處理器設計中流水線的控制方法,尤其是一種超長指令字VLIW(Very?Long?Instruction?Word)處理器流水線的控制方法。?
技術背景
現代微處理器通常采用流水線結構來提高性能,無論是指令的獲取還是指令的譯碼執行,都采用充分流水的部件來提升處理器性能。當深度流水的處理器發生分支指令轉移時,流水線中未完成的指令序列可能會作廢,使得分支轉移的代價非常大。分支延遲槽方法是減少分支轉移代價的常用方法之一,尤其在VLIW處理器中應用非常普遍。?
VLIW處理器要求指令間時序完全同步,即要維系指令序列的執行順序和相對時間間隔不變。VLIW處理器采用分支延時槽方法時,分支指令后面填充M條不相關的VLIW指令,M為分支延時槽數,其數值等于取指流水線長度。不管分支是否發生轉移,分支延遲槽中的M條VLIW指令都要執行。如果發生轉移,分支指令之后的M條VLIW指令執行之后,正好分支目標地址指向的新的指令序列流到執行流水線,不需要作廢流水線中的指令。VLIW同步語義要求分支延遲槽中的指令必須全部執行,并且要維持分支延時槽內的指令序列和執行節拍不能改變,隨后根據分支是否轉移而執行正確的指令序列,這是VLIW的同步語義的要求。?
傳統的VLIW處理器采用分支延遲槽方法時通常采用完全鎖步的方式來保證同步語義。鎖步方式的問題在于一個部件的暫停會導致所有部件的暫?停,嚴重地影響了處理器的執行效率。當前處理器內核的執行速度遠快于存儲器訪問速度,且兩者之間的差距還有越來越大的趨勢,從而存儲器阻塞對流水線性能的影響也在加大。完全鎖步控制使存儲器阻塞代價非常大。?
圖1是采用完全鎖步方式控制的VLIW處理器結構,取指流水線訪問指令Cache取得超長指令字(每個時鐘周期取得的VLIW指令包稱為一個取指包),經過指令派發部件將VLIW指令中各個指令派發到執行流水線中的執行部件(每個時鐘周期同時派發的VLIW指令稱為一個執行包)。執行流水線在執行數據訪存指令時會訪問數據Cache,對數據Cache進行讀或寫操作。無論數據Cache訪問缺失還是指令Cache訪問缺失,其阻塞信號都會送往流水線控制器,流水線控制器發出暫停信號,暫停取指流水線和執行流水線,即用停頓整條流水線的方法來保持同步語義,這種完全鎖步控制的方式這使得處理器的執行效率大大降低。?
采用非完全鎖步方式的VLIW流水線可以有效提升處理器的執行效率,但必須解決維持指令同步語義的問題,至今還沒有公開技術資料涉及這方面的內容。?
發明內容
本發明要解決的技術問題是提供一種非完全鎖步的VLIW處理器流水線控制方法,采用本發明的VLIW處理器可以在非完全鎖步控制方式下保持指令同步語義,減少流水線暫停次數,提高處理器執行效率。?
本發明的技術方案是:?
第一步,在傳統的VLIW處理器基礎上增加一個先進先出FIFO(Fist?InFirst?Out)結構的指令緩沖器,并將流水線控制器改為非鎖步流水線控制器。增加指令緩沖器的方法是:將指令緩沖器與取指流水線、指令派發部件、非鎖步流水線控制器相連。指令緩沖器的容量和VLIW處理器結構相關,要求大于2N,N為VLIW處理器中VLIW指令包長度。取指流水線從指令Cache中取出VLIW指令包,將VLIW指令包送到指令緩沖器。指令派發部件從指令緩沖器取出VLIW指令包,并將指令包中的指令以執行包為單位發送到執行流水線。指令緩沖器中沒有指令包時向非鎖步流水線控制器發Empty信號;指令緩沖器被指令包填滿沒有空閑存儲空間時向非鎖步流水線控制器發Full信號。
采用FIFO結構的指令緩沖器時,順序執行的指令容易保持同步語義,只要不間斷地按順序派發指令即可。但遇到分支指令時,分支轉移發生后如果取指流水線和執行流水線速度不匹配以及指令緩沖器中有分支延遲槽之后多余的指令,就會破壞VLIW同步語義,必須有相應的控制機制來保持同步語義。本發明的非鎖步流水線控制器可以保持VLIW同步語義。?
非鎖步流水線控制器的設計方法是:非鎖步流水線控制器由常規控制器和分支控制器組成,常規控制器和分支控制器的設計方法是:?
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國人民解放軍國防科學技術大學,未經中國人民解放軍國防科學技術大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200910044747.6/2.html,轉載請聲明來源鉆瓜專利網。





