开发环境:Vivado2021.2
HDL版本:hdl_2021_r2 GitHub - analogdevicesinc/hdl at hdl_2021_r2
no-OS版本:no_OS-2021_R2 GitHub - analogdevicesinc/no-OS at 2021_R2
(PS:也可以用Vivado2019.1开发,对应的HDL为hdl_2019_R2,no-OS为2019_R2;特别注意no-OS还有一个分支是2019_r1,不要使用该分支,见参考链接1)
1.创建hdl
参见参考链接2
2. 创建no-OS
参见参考链接3
2.1 关于如何使用make
在参考链接中,对于如何Build Prerequisites(运行settings64.bat)和Building a project(运行make)还有一些不太清楚地地方。特别是下图中的说法(请参看链接3),也容易引起操作上的误解。
在实际操作中,我曾经用管理员权限的Powershell分别运行settings64.bat和make,发现make是卡住了,没有任何输出,怀疑是环境问题或者权限问题。后来又尝试用cygwin64运行make,还是没有任何输出(经过调试打印输出,发现有些文件夹无法创建)。一通操作后,没有什么进展。后来查阅资料,偶然发现settings64.bat和make要通过同一个命令行cmd来操作(见下图或者参考链接4),尝试了下,可以编译了。
2.2 打印输出调试时引入的编译问题
在调试的时候,将no-OS\tools\scripts\xilinx.mk的31行ARCH = $(shell $(call read_file, $(TEMP_DIR)/arch.txt))改为了ARCH = cortexa9(实际上,对于我的应用,这个值是ps7_cortexa9_0),导致编译出现如下错误。
后经还原,编译通过,如下图。
3. 在Vitis中打开工程
在cmd(用运行make的同一个cmd)中运行make sdkopen,可以用对应的sdk或vitis打开工程。打开后,是一个欢迎界面,如下图。
关闭这个欢迎界面,就可以看到工程了,如下图。
参考链接
- Cannot build no-OS driver for ADRV9009 - Q&A - Microcontroller no-OS Drivers - EngineerZone (analog.com)
- Building HDL [Analog Devices Wiki]
- ADRV9002 No-OS System Level Design Setup [Analog Devices Wiki]
- Cannot build no-OS driver for ADRV9009 - Q&A - Microcontroller no-OS Drivers - EngineerZone (analog.com)