[發明專利]一種低功耗程序指令編譯方法及系統有效
| 申請號: | 201711051040.9 | 申請日: | 2017-10-31 |
| 公開(公告)號: | CN109725904B | 公開(公告)日: | 2021-10-22 |
| 發明(設計)人: | 吳玉平;陳嵐;孫旭 | 申請(專利權)人: | 中國科學院微電子研究所 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 王寶筠 |
| 地址: | 100029 北京市朝陽*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 功耗 程序 指令 編譯 方法 系統 | ||
1.一種低功耗程序指令編譯方法,其特征在于,包括:
獲取程序指令序列;
將所述程序指令序列劃分為多個程序指令序列片段;
分別編譯每個程序指令序列片段,得到所述每個程序指令序列片段對應的控制代碼;其中,所述控制代碼用于控制預先設置的設定數量的可重構的指令譯碼器的動態重構,使動態可重構的指令譯碼器對程序指令序列片段進行譯碼處理;并且,與程序指令序列片段對應的控制代碼,是通過編譯程序指令序列片段得到的多個控制代碼中的、重構指令譯碼器的功耗較低或者最低的控制代碼;控制代碼重構指令譯碼器的功耗,是指采用控制代碼重構預先設置的設定數量的子譯碼器,并利用重構的譯碼器對程序指令序列片段進行譯碼的功耗;
分別根據每個控制代碼編譯生成寫控制寄存器指令,得到所述每個程序指令序列片段對應的寫控制寄存器指令序列;
將所述每個程序指令序列片段,以及所述每個程序指令序列片段對應的寫控制寄存器指令序列進行組合得到新的程序指令序列;其中,在所述新的程序指令序列中,程序指令序列片段置于該程序指令序列片段對應的寫控制寄存器指令序列之后。
2.根據權利要求1所述的方法,其特征在于,在獲取所述程序指令序列之后,在將所述程序指令序列劃分為多個程序指令序列片段之前,該方法還包括:
對所述程序指令序列進行指令順序調整處理。
3.根據權利要求1所述的方法,其特征在于,在分別編譯每個程序指令序列片段,得到所述每個程序指令序列片段對應的控制代碼之后,該方法還包括:
優化對所述程序指令序列的劃分結果,使劃分得到的多個程序指令序列片段的譯碼能耗之和最低。
4.根據權利要求3所述的方法,其特征在于,所述優化對所述程序指令序列的劃分結果,使劃分得到的多個程序指令序列片段的譯碼能耗之和最低,包括:
確定將所述程序指令序列劃分為多個程序指令序列片段的每一種劃分方法;
分別計算得到采用每一種劃分方法將所述程序指令序列劃分為多個程序指令序列片段后,得到的每個程序指令序列片段的譯碼能耗值和重構能耗值;
根據所述每個程序指令序列片段的譯碼能耗值和重構能耗值,分別計算得到采用每一種劃分方法將所述程序指令序列劃分為多個程序指令序列片段后得到的多個程序指令序列片段的能耗值之和;
選擇能耗值之和最小的多個程序指令序列片段,作為最終確定的將所述程序指令序列劃分為多個程序指令序列片段得到的多個程序指令序列片段。
5.根據權利要求1所述的方法,其特征在于,所述分別編譯每個程序指令序列片段,得到所述每個程序指令序列片段對應的控制代碼,包括:
分別編譯每個程序指令序列片段,得到所述每個程序指令序列片段對應的多組控制代碼;
分別確定根據程序指令序列片段對應的每一組控制代碼重構預先設置的多個子譯碼器使重構的子譯碼器對該程序指令序列片段進行譯碼處理的能耗值;
為每個程序指令序列片段選擇任一較低的能耗值對應的控制代碼或最低的能耗值對應的控制代碼,作為程序指令序列片段對應的控制代碼。
6.根據權利要求1所述的方法,其特征在于,所述控制代碼還用于:對所述動態可重構的指令譯碼器中未起指令譯碼作用的指令譯碼器進行電源管理,降低所述未起指令譯碼作用的指令譯碼器的靜態功耗。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國科學院微電子研究所,未經中國科學院微電子研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711051040.9/1.html,轉載請聲明來源鉆瓜專利網。





