[發明專利]基于yosys實現求和運算的FPGA邏輯綜合方法及裝置有效
| 申請號: | 202111130658.0 | 申請日: | 2021-09-26 |
| 公開(公告)號: | CN113568598B | 公開(公告)日: | 2021-12-14 |
| 發明(設計)人: | 王鑫楠;趙美飛;劉洋 | 申請(專利權)人: | 中科億海微電子科技(蘇州)有限公司 |
| 主分類號: | G06F7/575 | 分類號: | G06F7/575 |
| 代理公司: | 北京融智邦達知識產權代理事務所(普通合伙) 11885 | 代理人: | 董惠文 |
| 地址: | 215000 江蘇省蘇州市蘇州工業園區金*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 yosys 實現 求和 運算 fpga 邏輯 綜合 方法 裝置 | ||
1.一種基于yosys實現求和運算的FPGA邏輯綜合方法,其特征在于,包括以下步驟:
步驟1:使用yosys開源程序將求和運算的行為級用戶電路描述文件解析生成語法樹;
步驟2:對所述語法樹中的全部節點進行遍歷,根據所述語法樹中的節點類型提取出描述求和功能模塊的RTL級數據對象,形成RTL級數據對象集合;
步驟3:遍歷所述RTL級數據對象集合,將所述RTL級數據對象集合中的每一個RTL級數據對象轉化為多個單位寬的具有進位輸入端口和進位輸出端口的邏輯門級Cell對象,在新建邏輯門級Cell對象的同時新建表示求和運算的Wire類型的進位信號,將進位信號作為操作數;
步驟4:將轉化的所有邏輯門級對象映射為物理門級對象打印提取邏輯網表文件。
2.根據權利要求1所述的方法,其特征在于,步驟3還包括:對每一個RTL級數據對象轉化的多個單位寬的具有進位輸入端口和進位輸出端口的邏輯門級Cell對象進行優化。
3.根據權利要求2所述的方法,其特征在于,步驟1中所述行為級用戶電路描述文件為使用Verilog格式硬件描述語言的用戶電路設計文件。
4.根據權利要求2所述的方法,其特征在于,步驟3的具體方法是:
步驟3.1:對RTL級數據對象的多位寬操作數進行拆分,建立與RTL級數據對象的兩個操作數中具有較大位寬的操作數的位寬數量相對應的單位寬邏輯門級Cell對象;
步驟3.2:在新建單位寬邏輯門級Cell對象的同時新建表示求和運算產生的Wire類型的進位信號;
步驟3.3:依次將RTL級Cell對象的輸入輸出端口連接信息,逐位賦值給新建的各單位寬邏輯門級Cell對象的輸入輸出端口連接信息;
步驟3.4:所述邏輯門級Cell對象建立有進位輸入端口和進位輸出端口,所述進位信號連接當前新建的邏輯門級對象的進位輸出端口以及下一個相鄰的邏輯門級對象的進位輸入端口;
步驟3.5:根據邏輯門級Cell對象的輸入輸出端口連接狀態信息,得到所述邏輯門級Cell對象的端口連接參數FUN值,根據端口連接參數FUN值得到所述邏輯門級Cell對象的功能參數值LUT。
5.根據權利要求4所述的方法,其特征在于,步驟3.3中逐位賦值的具體方法是:
步驟3.3.1:分別獲取當前RTL級cell對象的A、B輸入端連接信號sig_a、sig_b和Y輸出端信號sig_y,獲取sig_a、sig_b信號位寬最小值記錄為N;
步驟3.3.2:創建N個邏輯門級Cell對象,將RTL級cell對象的A、B輸入端連接信號的第i位sig_a[i]、sig_b[i]分別賦值給第i個邏輯門級Cell對象的兩個輸入端,將RTL級cell對象的第i位Y輸出端信號sig_y[i] 賦值給第i個邏輯門級Cell對象的輸出端;
步驟3.3.3:判斷sig_a和sig_b信號位寬是否一致,若一致則結束,否則獲取sig_a和sig_b位寬較大者,位寬較大者的值賦值給臨時對象extra_sig,計算位寬為M,i從N+1開始循環至M結束,繼續創建M-N個單位寬邏輯門級Cell對象,為該M-N個邏輯門級Cell對象的其中一個輸入端口賦值extra_sig[i],輸出端口賦值sig_y[i]。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中科億海微電子科技(蘇州)有限公司,未經中科億海微電子科技(蘇州)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202111130658.0/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:電荷傳遞裝置和電荷傳遞方法
- 下一篇:一種鞋帽生產過程中用烘干裝置





