[發明專利]一種亂序CPU刷新但不停頓流水的實現方法及系統在審
| 申請號: | 202110684067.1 | 申請日: | 2021-06-21 |
| 公開(公告)號: | CN113656214A | 公開(公告)日: | 2021-11-16 |
| 發明(設計)人: | 李長林 | 申請(專利權)人: | 廣東賽昉科技有限公司 |
| 主分類號: | G06F11/14 | 分類號: | G06F11/14;G06F9/50;G06F12/02 |
| 代理公司: | 上海邦德專利代理事務所(普通合伙) 31312 | 代理人: | 袁步蘭 |
| 地址: | 528300 廣東省佛山市順德*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 cpu 刷新 停頓 流水 實現 方法 系統 | ||
本發明涉及微處理器技術領域,具體涉及一種亂序CPU刷新但不停頓流水的實現方法及系統,進行CPU亂序執行時,在datapath執行單元執行完回report,若指令被刷新,則直接回report;從未commit中找出已收到report的指令作為當前周期的commit指令;根據被刷新的指令情況進行釋放當前指令分配的物理寄存器或確定釋放的物理寄存器;通過Rename中對ROB中釋放的物理寄存器進行回收,并更新freelist,完成刷新。本發明不用為產生分支指令的刷新或提交異常的ROB刷新停頓pipeline流水,有效的提高了CPU性能;不用為產生分支指令的刷新或提交異常的ROB刷新時,為了能對物理寄存器空閑列表,保存任何信息,有效的節約功耗和面積。
技術領域
本發明涉及微處理器技術領域,具體涉及一種亂序CPU刷新但不停頓流水的實現方法及系統。
背景技術
傳統的亂序CPU刷新時,產生分支指令的刷新或提交異常的ROB刷新時,需要停頓幾個周期用于刷新恢復
產生分支指令的刷新或提交異常的ROB刷新時,為了能對物理寄存器空閑列表和RAT表的恢復,則需要保存指令執行過程中的相關信息供發生flush時物理寄存器空閑列表的恢復。
本方案則提出一種亂序CPU刷新但不停頓流水的實現方法當發生刷新時,不用停頓pipeline,不需要為對物理寄存器空閑列表專門保存任何信息,有效的減少了寄存器的數量。
發明內容
針對現有技術的不足,本發明公開了一種亂序CPU刷新但不停頓流水的實現方法及系統,不用為產生分支指令的刷新或提交異常的ROB刷新停頓pipeline流水;不用為產生分支指令的刷新或提交異常的ROB刷新時,為了能對物理寄存器空閑列表的恢復,保存任何信息。
本發明通過以下技術方案予以實現:
第一方面,本發明提供一種亂序CPU刷新但不停頓流水的實現方法,包括以下步驟:
S1進行CPU亂序執行時,在datapath執行單元執行完回report,若指令被刷新,則直接回report;
S2從未commit中找出已收到report的指令作為當前周期的commit指令;
S3根據被刷新的指令情況進行釋放當前指令分配的物理寄存器或確定釋放的物理寄存器;
S4通過Rename中對ROB中釋放的物理寄存器進行回收,并更新freelist,完成刷新。
更進一步的,所述方法中,從未commit中找出最多5條連續已收到report的指令作為當前周期的commit指令。
更進一步的,所述方法中,若刷新的指令情況是被flush的指令,則釋放當前指令分配的物理寄存器。
更進一步的,所述方法中,若刷新的指令情況是正常retire的指令,則釋放該條指令目的架構寄存器原來所分配的物理寄存器的原則確定釋放的物理寄存器。
更進一步的,所述方法中,當產生分支指令刷新時,將保留站中比產生分支指令刷新的指令還年輕的指令置為flushed,后面就不再發射到執行單元中執行,直接由保留站向ROB發送出完成信號。
第二方面,本發明公開了一種亂序CPU刷新但不停頓流水的實現系統,所述系統用于實現第一方面所述的亂序CPU刷新但不停頓流水的實現方法,包括Rename模塊,ROB模塊和datapath模塊。
更進一步的,所述rename模塊用于完成架構寄存器的重命名,進而解除WRW RAW假相關性,同時維護投機的架構寄存器和物理寄存器的映射表RAT表,對物理寄存器進行分配和回收,對checkpoint進行管理并在發生flush時對RAT表進行恢復。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廣東賽昉科技有限公司,未經廣東賽昉科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110684067.1/2.html,轉載請聲明來源鉆瓜專利網。





