[發明專利]自動生成寄存器配置的代碼生成方法及可讀存儲介質在審
| 申請號: | 202110684071.8 | 申請日: | 2021-06-21 |
| 公開(公告)號: | CN113656004A | 公開(公告)日: | 2021-11-16 |
| 發明(設計)人: | 盧磊;孫勇 | 申請(專利權)人: | 廣東賽昉科技有限公司 |
| 主分類號: | G06F8/30 | 分類號: | G06F8/30;G06F9/445 |
| 代理公司: | 上海邦德專利代理事務所(普通合伙) 31312 | 代理人: | 袁步蘭 |
| 地址: | 528300 廣東省佛山市順德*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 自動 生成 寄存器 配置 代碼 方法 可讀 存儲 介質 | ||
本發明涉及代碼生成技術領域,具體涉及一種自動生成寄存器配置的代碼生成方法及可讀存儲介質,包括以下步驟:S1讀取json文件或自定義csv文件,生成并讀取寄存器列表文件;S2生成存放代碼或手冊的文件夾,對無默認值之處進行添加,無地址的使用前面進行累加;S3生成輸入輸出端口及localparam地址內容,同時生成后續信號定義;S4生成寄存器寫使能邏輯及寄存器的寫過程和輸出信號拆分和讀取信號合并內容;S5生成寄存器讀邏輯并配置寄存器所需要的c_macro.h,最后合并所有內容輸出。本發明通過填寫表格或者json格式的文件,利用腳本生成代碼,直接生成配置寄存器模塊的verilog文件,c_macro便于軟硬件協同仿真,具有很強的市場應用前景。
技術領域
本發明涉及代碼編寫技術領域,具體涉及一種自動生成寄存器配置的代碼生成方法及可讀存儲介質。
背景技術
代碼就是程序員用開發工具所支持的語言寫出來的源文件,是一組由字符、符號或信號碼元以離散形式表示信息的明確的規則體系。代碼設計的原則包括唯一確定性、標準化和通用性、可擴充性與穩定性、便于識別與記憶、力求短小與格式統一以及容易修改等。源代碼是代碼的分支,某種意義上來說,源代碼相當于代碼?,F代程序語言中,源代碼可以書籍或磁帶形式出現,但最為常用格式是文本文件,這種典型格式的目的是為了編譯出計算機程序。計算機源代碼最終目的是將人類可讀文本翻譯成為計算機可執行的二進制指令,這種過程叫編譯,它由通過編譯器完成。
現有技術中,手動編寫容易出錯,傳統數據格式xml,腳本處理數據格式復雜,因此本文提出一種自動生成寄存器配置的代碼生成方法予以解決。
發明內容
針對現有技術的不足,本發明公開了一種自動生成寄存器配置的代碼生成方法及可讀存儲介質,用于解決現有代碼手動編寫容易出錯,傳統數據格式xml,腳本處理數據格式復雜問題。
本發明通過以下技術方案予以實現:
第一方面,本發明公開一種自動生成寄存器配置的代碼生成方法,包括以下步驟:
S1讀取json文件或自定義csv文件,生成并讀取寄存器列表文件;
S2生成存放代碼或手冊的文件夾,對無默認值之處進行添加,無地址的使用前面進行累加;
S3生成輸入輸出端口及localparam地址內容,同時生成后續信號定義;
S4生成寄存器寫使能邏輯及寄存器的寫過程和輸出信號拆分和讀取信號合并內容;
S5生成寄存器讀邏輯并配置寄存器所需要的c_macro.h,最后合并所有內容輸出。
更進一步的,所述方法中,生成存放代碼或手冊的文件夾,對無默認值之處進行添加,無地址的使用前面進行累加后,需要檢查地址、bit位有無粘連。
更進一步的,所述方法生成的代碼包括rt代碼、測試代碼以及驅動所需要的代碼。
更進一步的,所述方法配置接口采用apb或ahb接口,32bit數據和16bit地址。
更進一步的,所述方法適用于RW、RO、W1C類型的寄存器。
第二方面,本發明公開一種可讀存儲介質,包括處理器以及存儲有執行指令的寄存器,當所述處理器執行所述寄存器存儲的所述執行指令時,所述處理器硬件執行第一方面所述的自動生成寄存器配置的代碼生成方法。
本發明的有益效果為:
本發明通過填寫表格或者json格式的文件,利用腳本生成代碼,直接生成配置寄存器模塊的verilog文件,配置接口采用apb或ahb接口,32bit數據和16bit地址,支持RW、RO、W1C類型的寄存器,c_macro便于軟硬件協同仿真。
附圖說明
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廣東賽昉科技有限公司,未經廣東賽昉科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110684071.8/2.html,轉載請聲明來源鉆瓜專利網。





