Vitis项目:基于 ZYNQ 的 IMX2221 摄像头实时视频流采集传输 (七)读DMA

项目:基于 ZYNQ 的 IMX2221 摄像头实时视频流采集传输

章节:读DMA

本章目的:添加写读DMA,将DDR中的数据取出来进行之后的HDMI显示,HDMI和DDR之间我们同样使用一个FIFO来进行缓冲

前言--------AXI4 读时序、

在这里插入图片描述
我们需要设计的时候arvalid,araddr,rready这三个信号

1. 第一步:添加AXI IP核

添加IP见写DMA那一章

2. 编写代码

代码部分根据AXI读时序来进行编写,但是需要注意的是

  1. 需要在给出复位之后才能开始从DDR中读取(这个其实也不需要,但是为了严谨),复位信号和之前的写DMA复位相同,都来自于Bayer2rgb模块开始信号。
  2. 当复位之后,给一个永久拉高信号,在此之后当fifo中的写数据小于一行的时候就从ddr中读取数据
  3. 我们可以当读数据count大于一行的时候开始读出,来查看时序有无错误

设计是循序渐进的,之后我们会编写hdmi的模块对每帧的数据进行显示,到时候会从hdmi模块中给出rd_fifo_en信号,所以之后呢,我们需要在axi_dma_rd模块给出一个fifo数据足够的信号来作为hdmi的复位信号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值