避免重复造轮子,我们去哪找FPGA IP或是HDL功能模块?
一. 各FPGA廠家IP庫
對于一些常用的IP,通常各FPGA廠商的開發軟件中會自帶,并長期免費提供給用戶使用或者允許申請IP評估免費使用一段時間。這些IP通常是不開源的,但使用起來很方便,有助于開發者快速實現相關功能。
1.1 Xilinx(AMD) IP核
IP 核 (xilinx.com)
Xilinx官網的IP核界面如上圖所示,我們可以按各種分類查找IP核,也可以根據關鍵詞搜索IP核,對于一些較新的IP,Xilinx會開發IP評估,我們也可以申請IP評估資格來先一步使用這些IP。關于IP評估的申請使用請參考我的另一篇博客:
如何申請Xilinx的評估IP_徐大康的博客-CSDN博客
另一種方法是在Vivado軟件中的IP Catalog中搜索,注意將隱藏和禁用不匹配的IP關掉(這里Vivado的中文翻譯錯了),這樣就能搜索到所有IP,否則只會顯示和當前器件匹配的IP。
1.2 Altera(Inter) IP核
[查找英特爾? FPGA 知識產權 (IP) 核心 (intel.cn)](https://www.intel.cn/content/www/cn/zh/products/programmable/intellectual-property/find-fpga-ip.html#sort=%40title ascending)
Inter官網的FPGA知識產權界面如上圖所示,同樣可搜索IP或者根據分類查找,也可在Quartus軟件的IP Catalog中搜索,選擇Show IP for all device families,表示顯示所有器件可用的IP; 選擇Show IP for active device families,表示僅顯示當前器件可用的IP。
二. 開源FPGA IP網站
FPGA和IC設計發展多年,大量的IP已經被設計完成并開源分享出來,找到這些開源的代碼能幫助我們事半功倍的完成工作。當然,這些開源IP用起來不如FPGA廠家提供的IP方便,有些能直接使用,有些則需要我們先消化理解代碼并做少量修改才能實現需要的功能,但相較于從頭開發已經算是站在了巨人的肩膀上。
2.1 OpenCores
Home :: OpenCores
網站簡介:世界上最大的FPGA開源IP核網站,里面包含大量已經測試好/沒有完全測試好的Verilog/VHDL源代碼。
在左側點擊Projects可以看到網站的目錄,如下圖所示。此網站需要先注冊(免費的),登錄后才能下載。
2.2 Github
GitHub: Where the world builds software · GitHub
GIthub是世界上最大的軟件代碼分享平臺,雖然相較于C語言、Python等軟件語言,HDL語言在Github上資源較少,但仍然有大量優秀的HDL代碼值的借鑒。可以在Github上搜索關鍵詞,如下圖的I2C Verilog即可找到開源的IP核。
2.3 CSDN
CSDN - 專業開發者社區
CSDN上有大量博主會分享HDL代碼,有優質的,有湊數的,需要自行把控。
2.4 alexforencic
[Welcome Alex Forencich]
可以看到,該網站的Verilog IP包含:
其實還包括pcie的IP核,沒有在上圖顯示出來。該網站源碼在Github上開源,有人持續維護。
2.5 zipcpu
The ZipCPU by Gisselquist Technology
這是一個個人博客網站,博主有分享大量自己編寫的IP核,包括AXI-Lite,AXI Stream,UART,I2C等。當然從網站名稱我們可以知道,博主設計了一個CPU,名叫ZipCPU,并配備了一個操作系統,叫ZipOS。
2.6 其它開源IP網站
后續了解更多會更新此博客,先占個坑。
三. 總結
建議優先使用廠商提供的IP核完成設計。如果廠商未提供相關IP,優先去OpenCores中找,再去Github上搜索,基本就能找到相關/類似的IP或HDL功能模塊。當然,我的博客中也有個人工作中總結的一些Verilog功能模塊,都經過本人實際上板驗證可供參考,覺得有用可訂閱加關注。
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的避免重复造轮子,我们去哪找FPGA IP或是HDL功能模块?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Cadence Orcad元器件位号重排
- 下一篇: Autocad下载 安装 和谐 与 卸载