一種分支預測裝置的製作方法
2023-07-10 00:45:46 1
專利名稱:一種分支預測裝置的製作方法
技術領域:
本發明涉及微處理器和計算機系統領域,具體地說,涉及面向處理器的取指處理
裝置O
背景技術:
隨著處理器技術的進步,處理器的速度不斷提高,性能不斷增強,同時用戶對計算機或者處理器的要求越來越高。由於指令預取的效率對處理器性能影響很大,因此提高計算機的指令預取的效率尤其重要。
發明內容本發明提出一種分支預測裝置。本發明的分支預測裝置是作為處理器的一個組成部分,其執行的過程按照處理器的操作過程進行,在具體實現分支預測的過程,體現出本發明的內容。本發明的分支預測裝置包括指令存儲裝置,用來存儲將要執行的指令代碼,該裝置接收地址,然後輸出存儲在該地址處的指令代碼;指令預取裝置,該裝置發出地址給指令存儲裝置,然後獲得存儲在該地址處的指令代碼,並傳送給指令解碼裝置,同時進行分支預測操作,準備好下一次需要輸出的地址;指令解碼裝置,該裝置對指令代碼進行解碼分析,並發送給相應的執行裝置;程序控制指令執行裝置,該裝置屬於執行裝置的一種,用於執行程序控制指令代碼,並將執行結果反饋給指令預取裝置;非程序控制指令執行裝置,該裝置用來執行除程序控制指令之外的其它指令代碼。分支歷史表單元,該單元存儲最近執行過的K條程序控制指令的分支歷史信息;選擇預測表單元,該單元存儲對正向和反向模式歷史表單元的進行選擇的記錄;正向模式歷史表單元,該單元存儲實際分支的狀態記錄,其狀態傾向於預測發生跳轉;反向模式歷史表單元,該單元存儲實際分支的狀態記錄,其狀態傾向於預測不發生跳轉地址生成邏輯單元,該單元根據分支預測的結果,生成取指的地址。所述指令預取裝置向所述指令存儲裝置發出地址,然後獲得存儲在該地址處的所述程序控制指令,並傳送給所述指令解碼裝置,同時所述指令預取裝置進行分支預測操作, 準備好下一次需要輸出的地址;所述指令解碼裝置將所述程序控制指令分發給所述程序控制指令裝置,然後所述程序控制指令裝置根據所述程序控制指令執行程序控制操作,並將結果反饋給所述指令預取裝置。本發明根據分支歷史信息、指令類型、模式歷史信息,提升了預測準確率,提高了處理器的效率。
參照如下附圖將更加易於理解本發明圖1所示為本實用新型提出的分支預測方法總體流程圖;圖2所示為用於實現本實用新型的分支預測裝置的結構框圖圖3所示為分支預測工作原理示意圖;圖4選擇預測表單元的更新狀態圖;圖5正向模式歷史表單元的更新狀態圖;圖6反問模式歷史表單元的更新狀態圖具體實施方式
本實用新型的分支預測裝置(如圖幻包括指令存儲裝置、指令預取裝置、指令解碼裝置、執行裝置、程序控制指令執行裝置。所述分支預測是按照處理器的操作過程在指令預取裝置中完成。在完成一次分支預測過程中(如圖幻,首先向指令存儲裝置發出程序控制指令的地址,同時把地址作索引,查找程序控制指令類型表單元,格式如下表
權利要求1.一種分支預測裝置,所述分支預測裝置為處理器的一個組成部分,其特徵在於所述分支預測裝置包括指令存儲裝置,用來存儲將要執行的指令代碼,該裝置接收地址,然後輸出存儲在該地址處的指令代碼;指令預取裝置,該裝置發出地址給指令存儲裝置,然後獲得存儲在該地址處的指令代碼,並傳送給指令解碼裝置,同時進行分支預測操作,準備好下一次需要輸出的地址;指令解碼裝置,該裝置對指令代碼進行解碼分析,並發送給相應的執行裝置;程序控制指令執行裝置,用於執行程序控制指令代碼,並將執行結果反饋給指令預取裝置;非程序控制指令執行裝置,該裝置用來執行除程序控制指令之外的其它指令代碼。
2.根據權利要求1所述的分支預測裝置,用於在指令預取時,對程序是否會發生分支進行預測;其中,所述指令預取裝置包括分支歷史表單元,該單元存儲最近執行過的K條程序控制指令的分支歷史信息;選擇預測表單元,該單元存儲對正向和反向模式歷史表單元的進行選擇的記錄;正向模式歷史表單元,該單元記錄實際分支的結果和當前預測狀態,其狀態傾向於預測發生跳轉;反向模式歷史表單元,該單元記錄實際分支的結果和當前預測狀態,其狀態傾向於預測不發生跳轉;地址生成邏輯單元,該單元根據分支預測的結果,生成取指的地址。
3.根據權利要求1或2所述的分支預測裝置,其中,所述指令預取裝置向所述指令存儲裝置發出地址,然後獲得存儲在該地址出的所述程序控制指令,並傳送給所述指令解碼裝置,同時所述指令預取裝置進行分支預測操作,準備好下一次需要輸出的地址;所述指令解碼裝置將所述程序控制指令分發給所述程序控制指令裝置,然後所述程序控制指令裝置根據所述程序控制指令執行程序控制操作,並將結果反饋給所述指令預取裝置。
專利摘要一種分支預測裝置,作為處理器的一個組成部分,按照處理器的操作過程,在指令預取時進行分支預測操作,所述指令預測裝置包括指令存儲裝置,用來存儲將要執行的指令代碼;指令預取裝置,該裝置將指令代碼從指令存儲裝置中讀取出來,並傳送給指令解碼裝置;指令解碼裝置,該裝置對指令代碼進行解碼分析,並發送給相應的執行裝置;程序控制指令執行裝置,用於執行程序控制指令代碼,並將執行結果反饋給指令預取裝置;非程序控制指令執行裝置,該裝置用來執行除程序控制指令之外的其它指令代碼。
文檔編號G06F9/38GK202133998SQ20112011377
公開日2012年2月1日 申請日期2011年4月18日 優先權日2011年4月18日
發明者孫瑞琛 申請人:江蘇中科芯核電子科技有限公司