欢迎来到天天文库
浏览记录
ID:27848376
大小:680.50 KB
页数:7页
时间:2018-12-06
《使用教程分享连载:在Zynq AP SoC设计中高效使用HLS IP(二).doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、使用教程分享连载:在ZynqAPSoC设计中高效使用HLSIP(二) 概述 对于硬件加速模块来说,这些硬件加速模块会消耗源于CPU存储器的数据,并且以streaming方式产生数据。本文使用VivadoHLS和xfftIP模块(在IPIntegrator使用HLSIP那节用过)。这些模块是连接到HP0的AXI4从端口,使得zynq7处理系统的数据通过AXIDMAIP核。硬件加速模块是免费的运行,并不需要驱动,只要数据被CPU推送(通常简称为处理系统或PS)。这里还要强调软件要求避免缓存一致性问题。 在ZynqCPU和HLS加速模块之间StreamingD
2、ata Step1:产生HLSIP 这里会产生两个VivadoHLS文件,即fe_vhls_prj和be_vhls_prj,它们都包含HLSIP。 Step2:创建VivadoProject 打开Vivado,选择CreateNewProject,下一步在ProjectlocaTIon里选择lab2文件夹,并将projectname命名为project_1,然后选择RTLProject和donotspecifysourcesatthisTIme,在Board选择ZYNQ-7ZC702EvaluaTIonBoard,最后点击Finish。 St
3、ep3:给IP库里添加HLSIP 在FlowNavigator窗口点击IPCatalog,然后选择IPSetTIngs,在IPSettings对话框选中AddRepository,在lab2下CreateNewFolder,并命名为vivado_ip_repo,然后依次添加lab2/hls_designs/fe_vhls_prj/IPXACTExport/impl/ip和lab2/hls_designs/be_vhls_prj/IPXACTExport/impl/ip,现在在HLSIP中有Hls_real2xfft和Hls_xfft2real这两个IP。
4、Step4:创建顶层模块设计 1.点击CreateBlockDesign,并命名为Zynq_RealFFT,然后添加FastFourierTransformIP,并双击IP打开Re-customizeIP,将TransformLength设置为512,TargetClockFrequency设置为100MHz,并选择Pipelined,StreamingI/O,接着在Implementation窗口里将ControlSignals设置为ARESETN,OutputOrderingOptions设置为Bit/DigitReversedOrder,最后选择Non
5、RealTime,点击OK2.添加Hls_real2xfft和Hls_xfft2real这两个IP,然后将HLSblocks和FFTblock连接起来,这里即将hls_real2xftt模块的dout接口跟FFT模块的S_AXIS_DATA接口,以及hls_xfft2real模块的din接口跟FFT模块的M_AXIS_DATA接口连接起来,最后按Ctrl+A,给所有模块CreateHierarchy,并命名为RealFFT,并确认Move‘3’selectedblockstonewhierarchy被选中。 3.下面给RealFFThierarchica
6、lblock添加pins,双击RealFFT打开block,右击hls_real2xfft_0模块的din_V_V端口,并选择CreateInterfacePin,并命名为realfft_s_axis_din(其他默认),同理给hls_real2xfft模块的ap_clk端口CreatePin,并命名为aclk,同理给hls_xfft2real模块的dout_V端口CreatePin,并命名为realfft_m_axis_dout,同理给ap_res_n端口CreatePin,并命名为aresetn。 4.右键AddIP输入const,双击xlconst
7、ant_0模块确认ConstVal设置为1,展开所有的ap_ctrl端口,将所有的ap_start端口跟xlconstant_0的输出端口连接,然后分别连接所有aclk和aresetn端口,添加一个新的xlconstant,这里将ConstWidth设置为16,将ConstVal设置为0,展开S_AXIS_CONFIG端口,最后将s_axis_config_tdata和s_axis_config_tvalid跟新的xlconstant模块连接,如下图 5.添加ZYNQ7ProcessingSystemIP,并点击RunBlockAutomation,然后
8、双击processing_system
此文档下载收益归作者所有