【ZYNQ】那些年我们拿下了 Zynq

简介: 【ZYNQ】那些年我们拿下了 Zynq

小菜鸟的 Zynq 学习经验分享~

资料来源:黑金 Zynq7035 开发板配套资料,完全适合于 Zynq 学习。

文末获取资料!

另外四个是关于 Altera FPGA 的学习资料。

其实很多东西都是相通的,要学会举一反三


搭建开发环境

1、Windows 下安装 Vivado

Vivado 是 Xilinx FPGA 开发的主要软件(2019年10月,赛灵思推出了Vitis)。


下载软件包后解压缩,安装过程较为简单,自行探索。


问:教程文档里不是有安装步骤吗?

答:这不就是让你们自行探索嘛。

问:我想用高版本的 Vivado 行不行?

答:Vivado> 各版本兼容性不好,资料例程也是 Vivado 2017.4 版本创建,最好一致。

问:都 2023 年了呀

答:你可以试试呀~


注意:软件安装路径不要有中文!Vivado 工程路径不要有中文!


顺便提一下,计算机名、账户名最好也不要是中文,有时会出现一些玄学问题,脑壳痛……


最新发现,某电脑管家软件会拦截 Vivado 某些进程,导致综合失败,所以玩 Vivado 前最好都关掉!

2、虚拟机 + Ubuntu,在 Linux 下安装 Vivado + Petalinux,配置 NFS

Linux 开发环境主要用于 Zynq 平台 Linux 应用、即嵌入式 Linux 开发。


可以先安装 虚拟机 + Ubuntu,熟悉 Linux 基础操作,熟悉常用命令。


Vivado 可以先不装,但是如果你学得快的话……建议:虚拟机配置时,硬盘设大一点,不然后面存储不够了还得扩容,比较麻烦(PS:我配置了 200G) 。


3、PuTTY - 友情推荐

PuTTY 是一个 Telnet、SSH、rlogin、纯 TCP 以及串行接口连接软件。可用来远程管理 Linux。

这里主要使用 Serial 功能,用来交互、查看输出信息或调试时用来打印 log。

这个可以去官网下载最新版本。


Zynq 开发的四种方式

  • 纯 PS 开发,即 ARM 开发
  • 纯 PL 开发,即 FPGA 开发
  • PS 无操作系统 + PL 开发,即裸机开发
  • PS 有操作系统 + PL 开发,即使用 RTOS 或 Linux 开发


当前阶段先从 FPGA 开发学起,然后再去学 ARM 开发,最后再学习联合开发。

Verilog 学习


问:为什么不学 VHDL?

答:因为 Verilog 好学易上手,资料多。

问:C/C++ 还要再学吗?

答:如果玩单片机玩的比较熟的话,基本可以了。

推荐一个 Verilog 练习网站:https://hdlbits.01xz.net/wiki/Main_Page


开始实践

1、PL 开发

  • 学习初期
  • 内容:熟悉 Verilog 语法,熟练使用 Vivado 软件,熟悉 FPGA 开发流程;
  • 建议:根据文档实现简单实验,比如点灯,按键控制 LED、串口通信等;
  • 目标:脱离教程与例程,从零独立完成一个综合小项目,具体做啥可以自己找。
  • 学习中期
  • 内容:常用 IP 核及复杂资源的使用;
  • 建议:可以根据需要去学习,有方向更有效率;
  • 目标:对于新东西,有手册就要会用。
  • 学习后期
  • 内容:需要什么就学什么;
  • 建议:可以干大事了;
  • 目标:干大事。

注:一般 Zynq 开发板板载 UART 接在了 PS 端,PL 端没有设计 UART 接口,但是可以这样:

所以说,只要你想,就没有做不到的事情,没有条件也可以创造条件


2、PS 开发

Vivado 内置了 ARM 开发用到的 SDK 开发工具,可以根据需求自行探索学习。

对于 ARM 开发,学过 32 的应该会很快上手。


3、PS + PL 开发

学习到这一步,真的可以自行探索了……

强烈建议


  • 多动手!多动手!多动手!
  • 别光看!别光看!别光看!
  • 实践出真知!
  • 多学!多练!多思考!


FPGA 相关论坛、资料开源、学习网站推荐:

  • 米联客:https://www.uisrc.com/
  • 正点原子:http://47.111.11.73/forum.php
  • 野火电子:https://www.firebbs.cn/
  • 明德扬:http://www.mdy-edu.com/
  • 小梅哥:http://www.corecourse.cn/
  • 哔哩哔哩:https://www.bilibili.com/
  • 待补充……



学会自己去寻找资源、获取资源和利用资源,很重要!!!


注:学习参考资料也不仅仅局限于开发板配套资料,也可参考其他板卡开源资料,比如正点原子、野火电子都推出了 FPGA 板卡,教程文档写的也很不错,实验项目与实现方法也是各不相同,资料也很齐全,建议也都看一看,学习一下设计思路与设计方法,考虑其中的设计特点。最主要的还是自己

多学多练多思考

相关文章
|
XML JavaScript 前端开发
鸿蒙开发(17)---WebView组件
鸿蒙开发(17)---WebView组件
1788 0
鸿蒙开发(17)---WebView组件
|
存储 缓存 开发工具
ZYNQ-双核AMP通信(一)
ZYNQ-双核AMP通信(一)
2043 0
ZYNQ-双核AMP通信(一)
|
小程序 开发者 异构计算
小程序真机调试反应很慢卡顿,界面跳转之后,页面出现空白,无法点击等问题解决方案
小程序真机调试反应很慢卡顿,界面跳转之后,页面出现空白,无法点击等问题解决方案
1542 0
小程序真机调试反应很慢卡顿,界面跳转之后,页面出现空白,无法点击等问题解决方案
|
10月前
|
机器学习/深度学习 自然语言处理 API
阿里云零门槛、轻松部署您的专属 DeepSeek模型体验测试
DeepSeek R1是基于Transformer架构的先进大规模深度学习模型,2025年1月20日发布并开源,遵循MIT License。它在自然语言处理等任务上表现出色,高效提取特征,缩短训练时间。阿里云推出的满血版方案解决了服务器压力问题,提供100万免费token,云端部署降低成本,用户可快速启动体验。虽然回答速度有待提升,但整体表现优异,备受关注。
404 8
|
开发工具 芯片 Perl
【ZYNQ】裸机 PS + PL 双网口实现之 ZYNQ 配置
【ZYNQ】裸机 PS + PL 双网口实现之 ZYNQ 配置
3330 0
|
机器学习/深度学习 PyTorch 算法框架/工具
使用BatchNorm替代LayerNorm可以减少Vision Transformer训练时间和推理时间
本文探讨了在Vision Transformer (ViT)架构中采用批量归一化(BatchNorm)替代层归一化(LayerNorm)的影响。ViT以其在计算机视觉领域的优异表现而闻名,但存在训练耗时长及对小型数据集推理速度慢的问题。文章提出两种改进模型:ViTBNFFN,在前馈网络中加入BatchNorm;ViTBN,则全面替换为BatchNorm。
318 1
使用BatchNorm替代LayerNorm可以减少Vision Transformer训练时间和推理时间
|
资源调度 计算机视觉 Python
`scipy.ndimage`是SciPy库中的一个子模块,它提供了许多用于处理n维数组(通常是图像)的函数。
`scipy.ndimage`是SciPy库中的一个子模块,它提供了许多用于处理n维数组(通常是图像)的函数。
|
人工智能 安全 网络安全
OpenAI:启用多重身份验证功能MFA
【2月更文挑战第22天】OpenAI:启用多重身份验证功能MFA
515 1
OpenAI:启用多重身份验证功能MFA
|
人工智能 弹性计算 Cloud Native
平头哥杨平超:倚天CPU架构以及产品特性介绍
2023年8月8日,【倚天实例迁移课程】首节课程《倚天CPU架构以及产品特性介绍》正式上线,由平头哥倚天解决方案架构师杨平超主讲,内容涵盖:倚天710芯片概述;倚天710的主要特点;倚天710应用落地介绍,本期节目也在阿里云官网、阿里云微信视频号、阿里云钉钉视频号、InfoQ官网、阿里云开发者微信视频号、阿里云创新中心直播平台&微信视频号同步播出。
平头哥杨平超:倚天CPU架构以及产品特性介绍
|
算法 安全 测试技术
移相全桥DC-DC变换器快速设计与开发
本篇将基于PPEC-86CA3A移相全桥数字电源控制芯片以及PPEC Workbench开发软件带领大家进行实际移相全桥DC-DC变换器的设计与开发 。 一、移相全桥变换器设计与开发 1、外围电路设计与硬件平台搭建 1)外围电路设计 这里给出了PPEC-86CA3A移相全桥数字电源控制芯片的采样、PWM驱动以及硬件保护等外围电路设计图,大家可参考下图进行外围电路搭建与连接。 2)硬件平台搭建 大家可根据前文介绍的参数设计方法进行电源拓扑的器件选型,再按照外围电路设计图搭建PWM驱动电路、采样电路以及保护电路并与电源控制核心进行连接。移相全桥DC-DC变换器的硬件测试平台如图。 2
373 2