[發明專利]延遲緩沖器在審
| 申請號: | 201810160145.6 | 申請日: | 2018-02-26 |
| 公開(公告)號: | CN108536474A | 公開(公告)日: | 2018-09-14 |
| 發明(設計)人: | 約瑟·阿爾貝托·若昂;黃子強;亞歷杭德羅·里科·卡羅 | 申請(專利權)人: | ARM有限公司 |
| 主分類號: | G06F9/30 | 分類號: | G06F9/30;G06F9/38 |
| 代理公司: | 北京東方億思知識產權代理有限責任公司 11258 | 代理人: | 林強 |
| 地址: | 英國*** | 國省代碼: | 英國;GB |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 線程 指令 延遲緩沖器 阻塞 處理電路 電路 上下文數據 硬件寄存器 緩沖 存儲 幫助 | ||
1.一種裝置,包括:
處理電路,用于執行處理的多個線程的指令;
硬件寄存器,用于同時存儲所述多個線程的上下文數據;
提交電路,用于提交所述多個線程的被執行的指令的結果,其中對于每個線程,所述提交電路被配置為按照程序順序提交該線程的指令;以及
至少一個延遲緩沖器,用于緩沖至少一個阻塞指令,針對所述阻塞指令的執行已被所述處理電路完成但在所述程序順序中同一線程的更先前的指令的執行未被完成。
2.根據權利要求1所述的裝置,其中,所述處理電路包括用于執行各類指令的多個功能單元;以及
所述提交電路被配置為在所述多個功能單元和所述至少一個延遲緩沖器中待決的給定線程的指令之間選擇在所述程序順序中最早的指令來作為針對所述給定線程的要提交的下一個指令,并且在檢測到所述下一個指令的執行被完成時提交所述下一個指令。
3.根據權利要求1所述的裝置,包括延遲緩沖器控制電路,用于控制阻塞指令到所述至少一個延遲緩沖器的分配。
4.根據權利要求3所述的裝置,其中,所述處理電路包括用于執行各類指令的多個功能單元;以及
響應于在給定功能單元中檢測到阻塞指令,所述延遲緩沖器控制電路被配置為將所述阻塞指令從所述給定功能單元傳送到所述至少一個延遲緩沖器中的一個延遲緩沖器。
5.根據權利要求3所述的裝置,其中,所述延遲緩沖器控制電路被配置為按照所述程序順序將給定線程的阻塞指令分配給所述至少一個延遲緩沖器。
6.根據權利要求4所述的裝置,其中,所述延遲緩沖器控制電路被配置為將在與最早執行的指令不同的功能單元中的給定線程的至少一個較早的指令未被完成時已完成執行的所述給定線程的所述最早執行的指令檢測作為所述阻塞指令。
7.根據權利要求3所述的裝置,其中,在從給定線程向給定延遲緩沖器分配指令之后,所述延遲緩沖器控制電路被配置為阻止來自另一線程的指令被分配給所述給定延遲緩沖器,直到所述給定延遲緩沖器排空來自所述給定線程的指令。
8.根據權利要求7所述的裝置,其中,響應于所述給定延遲緩沖器變滿,所述處理電路被配置為刷除在所述處理電路中待決的與所述給定線程相關聯的一個或多個剩余指令。
9.根據權利要求4所述的裝置,其中,響應于檢測到所述阻塞指令,所述延遲緩沖器控制電路被配置為將所述阻塞指令傳送到所述至少一個延遲緩沖器中的一個延遲緩沖器,而不管所述阻塞指令已維持未提交達多少個周期。
10.根據權利要求4所述的裝置,其中,所述延遲緩沖器控制電路被配置為在所述阻塞指令在完成執行之后維持未提交超出預定時段時傳送所述阻塞指令。
11.根據權利要求4所述的裝置,其中,所述延遲緩沖器控制電路被配置為在所述阻塞指令維持未提交超過所述阻塞指令的預期提交時間時傳送所述阻塞指令。
12.根據權利要求4所述的裝置,其中,響應于檢測到所述阻塞指令,所述延遲緩沖器控制電路被配置為根據與所述阻塞指令不同的線程的指令是否在所述給定功能單元中待決或在所述至少一個延遲緩沖器中是否存在用于容納來自同一線程的作為所述阻塞指令的所述給定功能單元中的所有完成的指令的空間來選擇是否傳送所述阻塞指令。
13.根據權利要求1所述的裝置,包括多個延遲緩沖器。
14.根據權利要求1所述的裝置,其中,由所述處理電路處理的每個指令與標識與該指令相關聯的線程的線程標識符相關聯。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于ARM有限公司,未經ARM有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810160145.6/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種代碼的規范性檢查方法及裝置
- 下一篇:完整編程命令處理方法與裝置





