利用ZYNQ驗(yàn)證算法的一大優(yōu)勢在于,可以在上位機(jī)發(fā)送指令借助CPU的控制能力和C語言易開發(fā)特點(diǎn),實(shí)時配置算法模塊的工作模式、參數(shù)等對來對其算法模塊性能進(jìn)行全面的評估。最重要的是無需重新綜合硬件模塊。
接著上篇該系列博文,在sysGen中設(shè)計(jì)模塊功能為:根據(jù)模式選擇輸入,來完成乘2或除2兩種運(yùn)算,0乘1除。

測試激勵選用From Workspace模塊,從MATLAB工作空間導(dǎo)入數(shù)據(jù)。利用MALTAB腳本可以非常容易地生成任意數(shù)據(jù)集,極大體現(xiàn)了sysGen開發(fā)的優(yōu)勢。

設(shè)計(jì)完成調(diào)用xilinx waveform viewer,兩種運(yùn)算行為仿真波形如下:


功能驗(yàn)證無誤,關(guān)鍵的一點(diǎn)是讓mode端口以AXI總線形式傳遞數(shù)據(jù)。

現(xiàn)在將sysGen算法子系統(tǒng)生成IP核,并導(dǎo)出到IP Integrator中作為CPU外設(shè)。

可以看到multi_div_constant模塊多出一個multi_div_constant_s_axi總線接口集。該接口遵循AXI-Lite總線規(guī)則,用于配置IP核內(nèi)部控制寄存器。硬件系統(tǒng)設(shè)計(jì)完畢,導(dǎo)出硬件啟動SDK。當(dāng)新建工程后,能看到AXI總線驅(qū)動自動添加進(jìn)來了。

multi_div_constant_hw.h內(nèi)部為AXI-Lite總線寄存器地址,multi_div_constant.c內(nèi)是驅(qū)動函數(shù)的具體實(shí)現(xiàn)。

C代碼對算法模塊進(jìn)行板級驗(yàn)證:

啟動Debug,點(diǎn)擊運(yùn)行查看軟件運(yùn)行結(jié)果和AXI-Stream總線時序波形。



SDK中串口打印結(jié)果及Memory窗口查看DDR接收緩存絕對地址。

正確啟動了兩次DMA環(huán)回傳輸,第一次算法模塊工作在乘2模式,第二次則除2.C代碼中測試返回?cái)?shù)據(jù)與生成測試數(shù)據(jù)關(guān)系無誤,DDR絕對地址數(shù)據(jù)也別正確更新。
編輯:hfy
-
寄存器
+關(guān)注
關(guān)注
31文章
5608瀏覽量
130003 -
cpu
+關(guān)注
關(guān)注
68文章
11279瀏覽量
225032 -
Xilinx
+關(guān)注
關(guān)注
73文章
2200瀏覽量
131158 -
AXI總線
+關(guān)注
關(guān)注
0文章
68瀏覽量
14758 -
Zynq
+關(guān)注
關(guān)注
10文章
630瀏覽量
49456
發(fā)布評論請先 登錄
多能源混合篇:風(fēng)光儲并離網(wǎng)發(fā)電系統(tǒng)實(shí)時仿真
利用開源uart2axi4實(shí)現(xiàn)串口訪問axi總線
利用蜂鳥E203搭建SoC【1】——AXI總線的配置與板級驗(yàn)證
儲能發(fā)電系統(tǒng)篇:光儲直流并網(wǎng)系統(tǒng)實(shí)時仿真
雙級式光伏發(fā)電并網(wǎng)系統(tǒng)實(shí)時仿真
光伏發(fā)電系統(tǒng)篇:雙級式并網(wǎng)系統(tǒng)實(shí)時仿真
光伏電池發(fā)電系統(tǒng)實(shí)時仿真
利用EasyGo DeskSim創(chuàng)建實(shí)時仿真項(xiàng)目教程
風(fēng)力發(fā)電系統(tǒng)篇:永磁直驅(qū)并網(wǎng)實(shí)時仿真
NVMe IP之AXI4總線分析
RK3568驅(qū)動指南|第十二篇 GPIO子系統(tǒng)-第135章 GPIO子系統(tǒng)與pinctrl子系統(tǒng)相結(jié)合實(shí)驗(yàn)
NVMe簡介之AXI總線
AXI總線實(shí)時配置sysGen子系統(tǒng)仿真實(shí)驗(yàn)
評論