【Zynq从零开始】汇总导航

news2024/9/27 17:35:11

在这里插入图片描述

Welcome

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

文章目录

  • Welcome
  • 前言
  • 项目架构
  • 开发环境
  • 系列文章目录
  • 传送门

前言

成为一名高级的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


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2165388.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

《Object-Centric Learning with Slot Attention》中文校对版

系列论文研读目录 例如&#xff1a;第一章 Python 机器学习入门之pandas的使用 文章目录 系列论文研读目录摘要引言2 方法2.1 插槽注意力模块2.2 对象发现2.3 集合预测 3 相关工作4 实验4.1 对象发现4.2 集合预测 5 结论更广泛的影响 摘要 学习复杂场景的以对象为中心的表示是…

erlang学习:Linux命令学习5

从本地上传文件 使用rz命令选择文件&#xff0c;将本地文件上传至linux服务器 rz与本地文件中的txt文本文件内容相同 将上传的文件按行分割 split -l 1 study.txt -d -a 1 study_-l:按行分隔&#xff0c;每1行对study.txt文件进行切割 -d:添加数字后缀 -a 1:以1位数数字做尾…

Java_Day03学习

Day03 构造方法目的 为类的属性赋值构造方法调用 //调用带参方法时&#xff0c;要先实例化类&#xff0c;创建对象再调用&#xff1b; eg&#xff1a;public class Max_and_Min {//方法:访问修饰符 返回类型 方法名(形式参数类型 形参&#xff0c;形参类型 形参) {}public v…

速刷DuckDB官网24小时-掌握核心功法

简介 DuckDB 是面向列的本地 OLAP 数据库&#xff0c;SQLite是面向行的本地 OLTP 数据库。duckdb是 数据分析师得力助手&#xff0c;可以很好的直接读取本地的各种结构化数据文件&#xff0c;速度显著快于主流的pandas等工具。 duckdb通过加载插件可以成为各种RDBMS数据库的中…

Linux突发网络故障常用排查的命令

测试环境 系统&#xff1a;Ubuntu 18硬件&#xff1a;单核2G ping 用于测试客户机和目标主机通信状况&#xff0c;是否畅通。以及测量通信的往返时间&#xff0c;判断网络质量的好坏。 它通过发送ICMP回显请求消息到目标主机&#xff0c;并等待返回的ICMP回显回复消息。 pin…

C#和数据库高级:继承与多态

文章目录 一、继承的基本使用继承的概念&#xff1a;继承的特点&#xff1a;为什么使用继承&#xff1f; 二、继承的关键字1、this关键字2、base关键字3、Protected关键字4、子类调用父类的构造函数的总结&#xff1a; 三、继承的特性继承的传递性&#xff1a;继承的单根性&…

C/C++逆向:循环语句逆向分析

在逆向分析中&#xff0c;循环语句通常会以特定的汇编模式或结构体现出来。常见的循环语句包括 for 循环、while 循环和 do-while 循环。由于不同的编译器会根据代码优化的级别生成不同的汇编代码&#xff0c;分析循环的模式也可能会有所不同。以下是三种常见循环语句的汇编分析…

【源码+文档+调试讲解】人事管理系统设计与实现Python

摘 要 人事管理系统的目的是让使用者可以更方便的将人、设备和场景更立体的连接在一起。能让用户以更科幻的方式使用产品&#xff0c;体验高科技时代带给人们的方便&#xff0c;同时也能让用户体会到与以往常规产品不同的体验风格。 与安卓&#xff0c;iOS相比较起来&#xff…

【数据结构】剖析二叉树(Binary Tree)

目录 &#x1f4af;引言 &#x1f4af;二叉树的定义与基本概念 &#xff08;一&#xff09;定义 &#xff08;二&#xff09;节点结构 &#xff08;三&#xff09;二叉树的形态 &#x1f4af;二叉树的遍历 &#xff08;一&#xff09;前序遍历&#xff08;Preorder Trav…

机器人控制器设计与编程基础实验高效版本-ESP32等单片机实验报告

只需要课程大纲或进度表wokwi 大模型工具&#xff0c;就可以完全掌握嵌入式系统基础实验的所有核心点。 LCD // Learn about the ESP32 WiFi simulation in // https://docs.wokwi.com/guides/esp32-wifi https://wokwi.com/projects/321525495180034642#include <WiFi.h>…

【AI学习】Lilian Weng:What are Diffusion Models?

读OpenAI 的 Lilian Weng博客《What are Diffusion Models?》 文章链接:https://lilianweng.github.io/posts/2021-07-11-diffusion-models/ 通过浏览器的在线翻译&#xff0c;直接截图了。翻译的有些问题&#xff0c;但是基本能大概看明白了。 我只是个人的记录&#xff0c;…

开发经验总结: 读写分离简单实现

背景 使用mysql的代理中间件&#xff0c;某些接口如果主从同步延迟大&#xff0c;容易出现逻辑问题。所以程序中没有直接使用这个中间件。 依赖程序逻辑&#xff0c;如果有一些接口可以走读库&#xff0c;需要一个可以显示指定读库的方式来连接读库&#xff0c;降低主库的压力…

降准降息一揽子措施点燃 A 股激情,4% 大涨之后趋势深度剖析

文章目录 牛回速归原因分析引爆点情绪和信心一根大阳线&#xff0c;千军万马来相见阴霾是否一扫而空还未可知 流动性和增量 潜在隐患等待经济复苏配套政策期待中美关系进展 短期内趋势分析空军短期内仍有余力如何看待第2日的回撤外围 趋势分析结论短期内可能仍有波折中长期会是…

【数学分析笔记】第3章第4节闭区间上的连续函数(1)

3. 函数极限与连续函数 3.4 闭区间上的连续函数 3.4.1 有界性定理 【定理3.4.1】 f ( x ) f(x) f(x)在闭区间 [ a , b ] [a,b] [a,b]上连续&#xff0c;则 f ( x ) f(x) f(x)在闭区间 [ a , b ] [a,b] [a,b]上有界。 【证】用反证法&#xff0c;假设 f ( x ) f(x) f(x)在 [ …

2-103 基于matlab的光电信号下血氧饱和度计算

基于matlab的光电信号下血氧饱和度计算&#xff0c;光转换成电信号时&#xff0c;由于动脉对光的吸收有变化而其他组织对光的吸收基本不变&#xff0c;得到的信号就可以分为直流DC信号和交流AC信号。提取AC信号&#xff0c;就能反应出血液流动的特点。这种技术叫做光电容积脉搏…

【Linux学习】2-1 Linux系统下运行C语言输出hello word

1.双击打开VMware软件&#xff0c;点击开启此虚拟机后&#xff0c;等待点击头像输入密码进入 2.“CtrlAltt”调出命令行终端&#xff0c;输入命令sudo apt-get install vim安装vim&#xff0c;输入命令sudo apt-get install gcc安装gcc 3.输入命令vi hello.c进入C语言编写环境&…

Linux —— Socket编程(一)

一、本篇重点 1. 认识IP地址、端口号、网络字节序等网络编程中的基本概念 2. 学习Socket api的基本用法 3. 能够实现一个简单的udp客户端/服务器 二、基本概念 1. 理解源IP地址和目的IP地址 简单的理解&#xff0c;IP地址是用于标识一台机器的&#xff0c;我们通过IP地址去…

使用 UWA Gears 测试小游戏性能

UWA Gears 是UWA最新发布的无SDK性能分析工具。针对移动平台&#xff0c;提供了实时监测和截帧分析功能&#xff0c;帮助您精准定位性能热点&#xff0c;提升应用的整体表现。 随着小游戏的规模和用户量持续增长&#xff0c;玩家对于小游戏的性能要求也越来越高。为了能够给玩…

力扣234 回文链表 Java版本

文章目录 题目描述代码 题目描述 给你一个单链表的头节点 head &#xff0c;请你判断该链表是否为 回文链表 。如果是&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 示例 1&#xff1a; 输入&#xff1a;head [1,2,2,1] 输出&#xff1a;true 示例 2&…

【ASE】第三课_山丘颜色梯度效果

今天我们一起来学习ASE插件&#xff0c;希望各位点个关注&#xff0c;一起跟随我的步伐 今天我们来学习山丘的颜色梯度显示&#xff0c;根据不同的高度显示不同的颜色 最终效果&#xff1a; 思路&#xff1a; 1.先加载模型的纹理贴图和法线贴图 2. 获得模型世界顶点Y向量&am…