【Zynq从零开始】汇总导航

Welcome

大家好,欢迎来到瑾芳玉洁的博客!
😑励志开源分享诗和代码,三餐却无汤,顿顿都被噎。
😭有幸结识那个值得被认真、被珍惜、被捧在手掌心的女孩,不出意外被敷衍、被唾弃、被埋在了垃圾堆。
🙂喜欢舞文弄墨咬文嚼字的混沌世界,懵懂无知走上了工科直男01的不归路。
😎八十公斤的体重勉强与大鹏一日同风起的浮力动态平衡,做不到宠辱不惊无欲无求的匀速直线运动,就按部就班的小波浪式前进,螺旋式蠕动。
<🤵🤵🤵我是一名专注于FPGA领域的工程师!我就是我,一个没有颜色的错过的烟火,一个立志成为**CSDN TOP100**的黑铁FPGA选手!👌✌哦耶~~~

文章目录

前言

成为一名高级的FPGA工程师需要具备广泛的知识面,且有一定的深度。从原理角度需熟悉数字电路原理、模拟电路,电路原理,了解FPGA内部结构;从开发语言角度需熟悉verilog、VHDL硬件描述语言,以及时兴的systemverilog,并掌握一些经典的示例;从开发工具的角度需熟悉vivado、Quartus II等FPGA开发环境,subline4、vs code等文本编辑器,modelsim、matlab等仿真工具;从接口的角度,熟悉常见的低速通信接口如UART、SPI、IIC等,熟悉常见的高速接口如USB3.0,千兆网口,DDR3等是必备素养。从进阶的角度,需学习时序约束的原理与如何让时序收敛的方法,需学习FPGA大型项目模块划分如何顶层设计。此外,最近几年又兴起的以Xilinx ZYNQ和ZYNQ Ultrasacle+系列为代表的异构处理芯片,集成了ARM与FPGA在一颗芯片上,与他相关的又涉及他的工具,开发流程等内容。我的计划是在博客中分享、记录在FPGA进阶路上的收获,以FPGA内容为主,而其他内容包括Qt,matlab、python,C/C++的内容都是以助力FPGA开发,提升学习办公效率为主要目的。FPGA内容大体包括以下方面:工具、语言、基础理论知识、内部结构知识、xilinx的官方资料解读、常见通信接口、高速通信接口等内容。进阶篇,讲述相对复杂的时序约束,工具使用的进阶,以及基于基础篇通信接口测试的实用的小项目。请相信,所有的积累都有其特定的价值!

本文作为ZYNQ从零开始专栏的第一篇文章,介绍该系列文章的安排。其主要目标是,实现一个Zynq为核心的系统,完成MIPI摄像头的采集,屏幕显示,算法处理,数据上传等功能。将这个具体的任务拆解成一个个独立的模块,然后一步步实现,这样组成了一个系列的文章。其内在的逻辑是一步步认识Zynq,熟练Zynq的开发流程。最终期望能够提供给读者的价值体现在以下方面,(1) 照着文章的序列能够实现规划的内容,掌握涉及的接口的开发,包括GPIO、IIC控制器,DP视频接口,MIPI接口采集,DDR控制器等。(2) 从以下方面对Zynq有新的认识,开发流程,AXI电路,中断的概念,PL-PS端交互,DMA等。(3) 在此过程中,总结经验,举一反三,能将其他的使用zynq的项目很快的分解成独立模块,快速验证并快速完成程序搭建。(4) 当一个新的客户或项目需求来的时候,能快速的意识到使用zynq有什么优势,PS端做哪些处理,PL端做哪些处理,二者之间如何交互。这是最重要的。

项目架构

如图所示,是这个项目的主要架构。其中紫色代表外部设备,zynq之内PL与PS的结构清晰。通过PS端的IIC控制器完成sensor必要的寄存器配置,在PL端采用MIPI CSI-2 RX Subsystem IP核完成对MIPI Sensor RAW数据的采集,随后通过Sensor Demosaic IP 把 RAW 数据转换成 RGB数据 ,将 RGB数据通过 Gamma IP 进一步优化图像质量,最后数据经过 Subset Converter IP 调整一下 RGB数据的颜色通道使之变成后级方便处理的图像信号。最后经过VDMA 为视频应用提供的一种高带宽的解决方案,将采集整理后的图像数据经过DDR的缓冲机制,最终将图像搬移显示到DP显示器上。系列文章的最后将会显示效果。

开发环境

如无特殊说明,本系列文章开发环境配置如下:

OS : Windows10 64bit

开发环境 :Vivado2020.2 Vitis2020.2

芯片厂家 :xilinx ZU系列

芯片型号 :XCZU4EV-SFVC784-2I

仿真工具 :Vivado Simulator

开发语言:Verilog-HDL

系列文章目录

🎈第一篇文章Zynq(1)介绍Zynq
    简介:从soc、xilinx产品矩阵、zynq架构、命名规则、应用场景方面初识Zynq。
    🎈第二篇文章Zynq(2)从Hello World熟悉Zynq开发流程
    简介:了解硬件环境,熟悉soc裸机的开发流程。

传送门

🥇USB3.0Cypress通信方案专栏
    🥇FPGA原语和IP核
    🥇FPGA开发必备技能专栏
    🥇Qt实战提升篇专栏
    🥇基于matlab与FPGA的图像处理
    🥇FPGA通信接口

|-----------|
| 文章持续更新中-- |


💡 欢迎您关注我的CSDN博客:https://blog.csdn.net/weixin_40615338?type=blog

💡 本文由 瑾芳玉洁 原创👨‍🎓,相互学习,共同进步!

💡批评,宝贵建议,兼职合作,欢迎交流📧jackxi0207@gmail.com


相关推荐
7yewh9 分钟前
嵌入式Linux QT+OpenCV基于人脸识别的考勤系统 项目
linux·开发语言·arm开发·驱动开发·qt·opencv·嵌入式linux
szxinmai主板定制专家2 小时前
【国产NI替代】基于FPGA的32通道(24bits)高精度终端采集核心板卡
大数据·人工智能·fpga开发
HIZYUAN7 小时前
AGM FPGA如何配置上拉或者下拉电阻
fpga开发
∑狸猫不是猫7 小时前
(13)CT137A- 简易音乐盒设计
fpga开发
ThreeYear_s13 小时前
基于FPGA 的4位密码锁 矩阵键盘 数码管显示 报警仿真
fpga开发·矩阵·计算机外设
Anin蓝天(北京太速科技-陈)19 小时前
252-8路SATAII 6U VPX高速存储模块
fpga开发
如何学会学习?1 天前
2. FPGA基础了解--全局网络
fpga开发
Anin蓝天(北京太速科技-陈)1 天前
271-基于XC7V690T的12路光纤PCIe接口卡
嵌入式硬件·fpga开发
碎碎思1 天前
FPGA新闻速览-WiMi开发基于FPGA的数字量子计算机验证技术
fpga开发·量子计算
hi942 天前
Vivado - 远程调试 + 远程综合实现 + vmWare网络配置 + NFS 文件共享 + 使用 VIO 核
嵌入式硬件·fpga开发·vivado 远程开发·vmware网络配置