在上篇文章中,我們發(fā)布了熱門(mén) HLS小橙書(shū)-pp4fpgas 的第二次校訂。文中提到的習(xí)題案例現(xiàn)均已集成到 PYNQ 框架中,特向大家分享。
那么這些案例通過(guò) PYNQ 框架會(huì)帶來(lái)哪些便利呢?本文給大家做一個(gè)簡(jiǎn)單的類(lèi)比:
過(guò)去
在完成項(xiàng)目的 HLS 優(yōu)化之后,若要對(duì)其進(jìn)行功能正確性的驗(yàn)證,通常我們先對(duì)設(shè)計(jì)進(jìn)行仿真,這樣比較方便看到設(shè)計(jì)的波形。但大型設(shè)計(jì)往往對(duì)運(yùn)行的平臺(tái)有較高的要求,同時(shí) co-simulation 等軟件層面的仿真并未使項(xiàng)目中的運(yùn)算在硬件上運(yùn)行,所得的延時(shí)等指標(biāo)仍較真實(shí)值有一定差距。
當(dāng)然我們也可以在設(shè)計(jì)中插入 ILA 或者借助邏輯分析儀等信號(hào)處理儀器進(jìn)行實(shí)際硬件電路的觀測(cè)。但專(zhuān)用儀器往往在實(shí)驗(yàn)室才能獲取,且較為昂貴,因此給整個(gè)開(kāi)發(fā)流程帶來(lái)了極大的不便。
現(xiàn)在
PYNQ 框架在測(cè)試中可以理解為:
在 ARM 處理上運(yùn)行了一套利用 Jupyter Notebook 和 Python 構(gòu)建的軟件測(cè)試激勵(lì)產(chǎn)生和結(jié)果顯示的框架。
在 FPGA 上利用部分資源構(gòu)建了一套時(shí)序精準(zhǔn)的測(cè)試接口。
這樣用戶(hù)可以方便的完成測(cè)試激勵(lì)產(chǎn)生和顯示,同時(shí)可以實(shí)時(shí)的觀測(cè)結(jié)果。尤其是對(duì)于此次 pp4fpgas 的數(shù)字信號(hào)處理案例,我們可以在 Jupyter Notebook 上非常直觀的觀測(cè)到時(shí)域頻域的轉(zhuǎn)換,信號(hào)波形等等。用戶(hù)只需關(guān)注 HLS 設(shè)計(jì)即可。通過(guò) PYNQ,可編程邏輯電路將作為硬件庫(kù)導(dǎo)入并通過(guò)其 API 進(jìn)行編程,其方式與導(dǎo)入和編程軟件庫(kù)基本相同。
以 CORDIC 算法為例,首先我們需要對(duì) HLS 優(yōu)化后的 CORDIC 算法生成IP核,隨后就可以在PYNQ 框架內(nèi),通過(guò)內(nèi)存映射 I/O 與 ARM 處理器的 IP 進(jìn)行通信。如上圖所示,我們僅需創(chuàng)建一個(gè) Jupyter Notebook,編寫(xiě) Python 代碼給 IP 發(fā)送數(shù)據(jù),執(zhí)行該核心,就可以在 Notebook 中得到通過(guò)硬件計(jì)算出的答案,從而完成驗(yàn)證。
包括 CORDIC 在內(nèi),pp4fpgas目前配套了7個(gè) project 練習(xí),覆蓋了許多信號(hào)處理領(lǐng)域的重要內(nèi)容,對(duì)提高 HLS 的運(yùn)用能力,增加對(duì) HLS 的理解十分有幫助。Project 內(nèi)容如下:
FIR Filter Design
CORDIC
Phase Detector
Discrete Fourier Transform (DFT)
Fast Fourier Transform (FFT)
OFDM Receiver
FM Demodulator
編輯:lyn
-
CORDIC
+關(guān)注
關(guān)注
0文章
37瀏覽量
19981 -
HLS
+關(guān)注
關(guān)注
1文章
129瀏覽量
24131
原文標(biāo)題:在 PYNQ 框架下可視化的驗(yàn)證 HLS 算法實(shí)現(xiàn) - 小橙書(shū) pp4fpgas 案例發(fā)布
文章出處:【微信號(hào):gh_2d1c7e2d540e,微信公眾號(hào):XILINX開(kāi)發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論