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