初识 FPGA
FPGA Learning
为了实现工作中需要做的触控原型电路开发,开始研究如何使用 FPGA。看起来 FPGA 的开发分为三大块,PL 端通过 Vivado 平台进行逻辑设计,PS 端通过 C 进行开发,最后还有应用层的开发。我计划使用 PYNQ 来替代 PS 端和应用层的开发
Vivado 2024.02 版本安装:
-
从 https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/vivado-design-tools.html 下载最新的在线安装包
-
下载完成后,进入下载安装包所在路径,通过下述命令执行安装 (原文链接:https://blog.csdn.net/qq_44447544/article/details/128205473):
sudo chmod +x Xilinx_Unified_2022.2_1014_8888_Lin64.bin
sudo sh ./Xilinx_Unified_2022.2_1014_8888_Lin64.bin
- 按流程完成安装后,更新 linux 的 bashrc 文件
3-1. 通过命令 gedit ~/.bashrc 打开 bashrc
3-2. 在该文件最后一行增加:
source [your_path]/Xilinx/Vivado/2024.2/settings64.sh
3-3. 保存文件后,通过命令 source .bashrc 在 terminal 更新 bashrc
-
安装 USB 驱动,在安装完成后的 /Xilinx/Vivado/2024.2/data/xicom/cable_drivers/lin64/install_script/install_drivers 路径下打开终端,并执行:sudo ./install_drivers
-
在终端通过 vivado 即可打开软件。
异常处理:
在 https://blog.csdn.net/qq_44447544/article/details/128205473 中列有打开 vivado 时一些异常处理方式,我自己在安装中有遇到区域设置的报错:
/Xilinx/Vivado/2024.2/bin/rdiArgs.sh: 行 37: 警告: setlocale: LC_ALL: 无法改变区域设置 (en_US.UTF-8):没有那个文件或目录
我的解决方案是:
- 通过终端输入 sh 命令进入 shell
- 检查当前系统区域设置,在 sh 中执行:locale
- 通过下面的命令增加 en_US.UTF-8:sudo locale-gen “en_US.UTF-8”
- 生成后,更新系统区域设置:sudo update-locale LANG=en_US.UTF-8
- 通过 exit 退出 sh
- 重新加载环境变量:source ~/.bashrc
然后重新通过终端下执行 vivado 即可打开成功了
安装串口驱动
通过 ls -l /dev/tty* 命令查询,发现并没有 CH343SER 的驱动,因此需要安装该驱动
crw-rw—- 1 root dialout 4, 64 Jan 22 21:41 /dev/ttyS0
crw-rw—- 1 root dialout 4, 65 Jan 22 21:41 /dev/ttyS1
…
安装串口驱动可以参考这个 link:
接下来可以看到对应的 CH343 的驱动了:
…
crw-rw—- 1 root dialout 170, 0 Jan 24 21:52 /dev/ttyCH343USB0
…
安装串口工具:
使用 putty,直接 sudo apt-get install -y putty
运行 putty:直接 putty
Putty 串口工具使用:
按如下进行配置,需要在 Session,Terminal 和 Serial 分别进行配置 (待截图)
配置好之后开机截图如下: (待截图)