[發明專利]一種基于FPGA的多核CPU實現方法及相關裝置有效
| 申請號: | 201811032503.1 | 申請日: | 2018-09-05 |
| 公開(公告)號: | CN109144732B | 公開(公告)日: | 2022-02-11 |
| 發明(設計)人: | 王帥;孫同波;康萌萌 | 申請(專利權)人: | 合肥英睿系統技術有限公司 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 羅滿 |
| 地址: | 230012 安徽省合*** | 國省代碼: | 安徽;34 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 fpga 多核 cpu 實現 方法 相關 裝置 | ||
1.一種基于FPGA的多核CPU實現方法,其特征在于,包括:
利用FPGA的Qsys添加預設個數的nios處理器;將所述nios處理器作為CPU;
為每一個所述CPU分配獨立運行的內存;
啟動所有所述CPU;
其中,所述啟動所有所述CPU,包括:
在所有所述CPU中確定一個主CPU;
啟動所述主CPU;
將所有非主CPU進行復位;
利用所述主CPU將每個非主CPU的elf文件從flash中轉存至對應的每個非主CPU的運行內存;
取消所有非主CPU的復位,并加載啟動每個非主CPU的elf文件,以完成非主CPU的啟動。
2.根據權利要求1所述的方法,其特征在于,所述為每一個所述CPU分配獨立運行的內存之后,還包括:
為所有所述CPU建立共用資源區。
3.根據權利要求2所述的方法,其特征在于,所述為所有所述CPU建立共用資源區之后,還包括:
為所述共用資源區添加與每個所述CPU對應的資源互斥器。
4.根據權利要求1所述的方法,其特征在于,所述啟動所有所述CPU,包括:
當所述CPU的內存使用FPGA片上RAM時,將每個所述CPU的elf文件轉化為片上RAM的初始化文件,然后集成至所述FPGA的sof文件;
通過加載所述sof文件啟動所有所述CPU。
5.一種基于FPGA的多核CPU實現系統,其特征在于,包括:
添加模塊,用于利用FPGA的Qsys添加預設個數的nios處理器;將所述nios處理器作為CPU;
分配模塊,用于為每一個所述CPU分配獨立運行的內存;
啟動模塊,用于啟動所有所述CPU;
其中,所述啟動模塊,包括:
確定單元,用于在所有所述CPU中確定一個主CPU;
啟動單元,用于啟動所述主CPU;
復位單元,用于將所有非主CPU進行復位;
轉存單元,用于利用所述主CPU將每個非主CPU的elf文件從flash中轉存至對應的每個非主CPU的運行內存;
復位取消單元,用于取消所有非主CPU的復位,并加載啟動每個非主CPU的elf文件,以完成非主CPU的啟動。
6.根據權利要求5所述的系統,其特征在于,所述啟動模塊,包括:
集成單元,用于當所述CPU的運行內存為FPGA片上RAM時,將每個所述CPU的elf文件集成至所述FPGA的sof文件;
加載單元,用于通過加載所述sof文件啟動所有所述CPU。
7.一種基于FPGA的多核CPU實現裝置,其特征在于,包括:
存儲器,用于存儲CPU程序;
處理器,用于執行所述CPU程序時實現如權利要求1至4任一項所述基于FPGA的多核CPU實現方法的步驟。
8.一種CPU可讀存儲介質,其特征在于,所述CPU可讀存儲介質上存儲有CPU程序,所述CPU程序被處理器執行時實現如權利要求1至4任一項所述基于FPGA的多核CPU實現方法的步驟。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于合肥英睿系統技術有限公司,未經合肥英睿系統技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811032503.1/1.html,轉載請聲明來源鉆瓜專利網。





