草庐IT

ZYNQ基于DMA的串口传图

小梅哥的这个ZYNQ开发板上的DDR3位于PS侧,PL侧想要使用DDR3作为缓存的话,得通过HP接口来与PS侧的DDR3控制进行通信。本次实验在小梅哥OV5640工程的基础上,通过修改VDMA的S2MM端的模块而来的。将VMDA的帧缓存区设为1,关闭帧同步的功能后,其实和DMA差不多。一、需要自定义的ip核这里列出的为自己写的IP核。小梅哥的工程里还用到了其它的自定义的IP核,这里就不列出了。1、串口接收图像数据模块该模块调用了之前写的串口8位接收模块,详情可点击查看。此外,本模块还调用16位宽、深度为1024的带数据计数的普通FIFO核该模块主要的思想就是将接收到的两个8位的数据拼接位1个1

FPGA基于ACM2108的DDS设计

这次设计一个DDS信号发生器。该设计的特点有:双通道的DA输出,可以调节幅度(通过旋转板子上的电位器)、频率、相位、和波形(正弦波、方波、三角波)。拥有相位重置的功能,能够同时重置两个输出波形的相位。本次采用的是小梅哥的ACM2108模块。该模块有两个通道的ADC和两个通道的DAC。本次设计的前置是DDS基本模块,具体可点击链接查看。DDS基本模块在加入了装有正弦波数据的ROM的基础上,再添加三角波和方波的数据的ROM,从而能够切换输出的波形。通过调用VIO这个IP核,设置输出信号的频率、相位和波形。然后通过LIA这个IP核,去观察数据波形。一、模块代码`timescale1ns/1ps///

ZYNQ基于DMA的串口传图

小梅哥的这个ZYNQ开发板上的DDR3位于PS侧,PL侧想要使用DDR3作为缓存的话,得通过HP接口来与PS侧的DDR3控制进行通信。本次实验在小梅哥OV5640工程的基础上,通过修改VDMA的S2MM端的模块而来的。将VMDA的帧缓存区设为1,关闭帧同步的功能后,其实和DMA差不多。一、需要自定义的ip核这里列出的为自己写的IP核。小梅哥的工程里还用到了其它的自定义的IP核,这里就不列出了。1、串口接收图像数据模块该模块调用了之前写的串口8位接收模块,详情可点击查看。此外,本模块还调用16位宽、深度为1024的带数据计数的普通FIFO核该模块主要的思想就是将接收到的两个8位的数据拼接位1个1

FPGA基于ACM2108的DDS设计

这次设计一个DDS信号发生器。该设计的特点有:双通道的DA输出,可以调节幅度(通过旋转板子上的电位器)、频率、相位、和波形(正弦波、方波、三角波)。拥有相位重置的功能,能够同时重置两个输出波形的相位。本次采用的是小梅哥的ACM2108模块。该模块有两个通道的ADC和两个通道的DAC。本次设计的前置是DDS基本模块,具体可点击链接查看。DDS基本模块在加入了装有正弦波数据的ROM的基础上,再添加三角波和方波的数据的ROM,从而能够切换输出的波形。通过调用VIO这个IP核,设置输出信号的频率、相位和波形。然后通过LIA这个IP核,去观察数据波形。一、模块代码`timescale1ns/1ps///