使用的软件环境是装好VIVADO2018.3的UBUBTU LINUX系统,我用的UBUNTU18.04。购买SDRPi后所给的资料中含有装好VIVADO2018.3的UBUNTU系统。
1,首先下载openwifi-hw项目:
git clone --recursive https://github.com/open-sdr/openwifi
2,设置vivado的环境变量:
source /tools/Xilinx/Vivado/2018.3/settings64.sh
3,编译ADI-HDL的所有涉及的IP核。
cd adi-hdl/projects/adrv9364z7020/ccbob_lvds/ && make
执行结果如下图所示:
由于不同的板子对应不同的IP核心需要编译不一样的IP核,我们SDRPI是基于adrv9364z7020/ccbob_lvds这个项目添加修改而来,所以我们进入adrv9364z7020/ccbob_lvds/目录进行make,这样就可以生成所需要的IP库。
4,进入sdrpi项目,执行:
../create_ip_repo.sh /tools/Xilinx/
就是在当前SDRPi目录执行上一级boards目录下的 create_ip_repo.sh脚本。参数/tools/Xilinx是VIVADO2018.3的安装目录。
这步执行会调用VIVADO生成各种所需的IP核,会有多次VIVADO界面弹出,最终成功后样子如下图:(红框部分是TCL窗口)
5,上述执行完毕之后,在TCL 窗口输入source ./openwifi.tcl执行这个脚本。
source ./openwifi.tcl
之后VIVADO自动生成项目:
6,我们更新一下IP状态:reports >> report ip status 选择需要更新的IP后点upgrade selected.
成功执行后弹出:
7,点GENERRATE BITSREAM 直接生成BIT STREAM文件:
8,经过一段十几分钟时间等待,BIT流生成完毕。
在openwifi-hw/boards/antsdr/openwifi_sdrpi/openwifi_sdrpi.runs/impl_1下的system_top.bit就是生成的BITSTREAM文件。
{{aAxvOXMOIvVUoXMxvoxiowMwWV8xxWTxoxOIOVIUUOvwVOUiIoUvvTMMVMwovWHWX8vOUOxxvHO8xoMTvxMwxxwMmToVVTMvT8OXMvHUIw88Ixw8iOMoiHIoVU8VvmvIWXTvvOvv8xvMovOWoITvxHi88UZz}}