[發明專利]面向FPGA的粗粒度FIFO硬件通道自動擬合方法在審
| 申請號: | 202310903805.6 | 申請日: | 2023-07-24 |
| 公開(公告)號: | CN116629353A | 公開(公告)日: | 2023-08-22 |
| 發明(設計)人: | 趙康;王亞軍;崔軍;侯人靖 | 申請(專利權)人: | 北京郵電大學 |
| 主分類號: | G06N3/10 | 分類號: | G06N3/10;G06F30/331;G06F30/327;G06F8/41;G06F117/08 |
| 代理公司: | 北京方圓嘉禾知識產權代理有限公司 11385 | 代理人: | 王月松 |
| 地址: | 100876 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 面向 fpga 粒度 fifo 硬件 通道 自動 擬合 方法 | ||
1.一種面向FPGA的粗粒度FIFO硬件通道自動擬合方法,其特征在于,包括:
利用LLVM編譯框架,通過函數、基本塊和指令組成的三級結構獲取數據流目標區域內的子函數調用及對應的調用指令序列;所述調用指令序列包括n個子函數調用指令;
判斷任一相鄰子函數調用指令是否具有相同的數組參數變量,若是則將具有相同的數組參數變量的相鄰子函數調用指令所對應的函數體內部的所有子函數調用實現函數內嵌;
掃描實現函數內嵌的相鄰子函數內每條與數組參數變量相關的讀/寫指令,若實現函數內嵌的相鄰子函數中的前一個子函數內只有寫指令發生在數組參數變量上,且實現函數內嵌的相鄰子函數中的后一個子函數內只有讀指令發生在數組參數變量上,則完成FIFO硬件通道的擬合。
2.根據權利要求1所述的一種面向FPGA的粗粒度FIFO硬件通道自動擬合方法,其特征在于,所述數據流目標區域為擬定要做數據流粗粒度優化的C/C++代碼區域。
3.根據權利要求1所述的一種面向FPGA的粗粒度FIFO硬件通道自動擬合方法,其特征在于,若是則將具有相同的數組參數變量的相鄰子函數調用指令所對應的函數體內部的所有子函數調用實現函數內嵌,具體包括:
采用調用圖技術,按從底到頂的遍歷順序,將有相同的數組參數變量的相鄰子函數調用指令所對應的函數體內部的所有子函數調用替代為整個對應的函數體,實現函數內嵌。
4.根據權利要求1所述的一種面向FPGA的粗粒度FIFO硬件通道自動擬合方法,其特征在于,掃描實現函數內嵌的相鄰子函數內每條與數組參數變量相關的讀/寫指令,若實現函數內嵌的相鄰子函數中的前一個子函數內只有寫指令發生在數組參數變量上,且實現函數內嵌的相鄰子函數中的后一個子函數內只有讀指令發生在數組參數變量上,則完成FIFO硬件通道的擬合,具體包括:
掃描實現函數內嵌的相鄰子函數內每條與數組參數變量相關的讀/寫指令,并采用數組下標表達式分析模型,判斷實現函數內嵌的相鄰子函數是否是按地址順序進行讀寫,若是則完成FIFO硬件通道的擬合。
5.根據權利要求4所述的一種面向FPGA的粗粒度FIFO硬件通道自動擬合方法,其特征在于,所述數組下標表達式分析模型為:
;
其中,代表循環體內數組下標讀寫地址偏移量中的循環迭代值,代表除循環迭代值外的其他變量;代表循環體內數組下標讀寫地址偏移量中的常數,Li與LB均為布爾值,Li代表數組下標表達式是否是一維線性表達式,LB代表讀取指令是否在循環體內。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京郵電大學,未經北京郵電大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202310903805.6/1.html,轉載請聲明來源鉆瓜專利網。





