Zynq—AD9238数据采集DDR3缓存千兆以太网发送实验(前导)

ACM9238 高速双通道ADC模块自助服务手册AD9238

Zynq---AD9238数据采集DDR3缓存千兆以太网发送实验(一)-CSDN博客


一、AD9238

模块在各方面参数性能上与AD9226保持一致。但是在设计上优化了信号调理电路,将单端信号先转成差分信号,再送入ADC转换,已获得更小的采样误差。

功能参数

1、±5V电压输入范围

2、每通道65Msps最高采样速率

3、每通道12位输出

二、DDR3(大容量存储器件)

DDR=Double Data Rate双倍速率,DDR SDRAM=双倍速率同步动态随机存储器,人们习惯称为DDR,其中,SDRAM 是Synchronous Dynamic Random Access Memory的缩写,即同步动态随机存取存储器。而DDR SDRAM是Double Data Rate SDRAM的缩写,是双倍速率同步动态随机存储器。(摘录:ddr(双倍数据速率)_百度百科 (baidu.com)

1.相关知识

PL:通用可编程逻辑FPGA。

PS:两个 Cortex-A9 核、 IO 外设、各类硬核控制器等资源在内的 SOC 处理系统。

PS部分的DDR3主要用作ARM CPU的内存系统,ARM CPU的程序可以在该DDR3中运行,PS部分的DDR3存储器使用,不需要,也不能调用MIG IP来控制,只需要在设计中添加ZYNQ7 Processing System 组件,并配置好DDR相关的参数,即可使用。ACZ7015开发板的DDR型号为MT41K256M16 RE-125。

PL部分如果要使用DDR3存储器:

第一种:首先在PL部分要设计DDR3部分电路 ,并且需要通过在IP Catlog中调用MIG IP来创建DDR3控制器。

第二种:PL通过AXI4(4个高性能数据交互端口,High-Performance Ports)接口使用PS的DDR3存储器空间。

2.架构优势

PL通过HP端口写入到PS侧DDR3中的数据,不仅PL可以再读回来,同时PS侧的ARM CPU也可以读写这些数据。相同的道理,PS侧在某些区域写入的数据,PL侧也可以从该区域读出来使用。

3.直接使用DDR控制器可能会遇到的实际问题

如何确保读写DDR时数据的有效性以及读写传输的高效性?

3.1读写时钟频率不同跨时钟域怎么办?单一Ui时钟能满足数据读写侧速率需求吗?

这里的Ui时钟指的是DDR控制器输出的供用户侧使用的ui_clk时钟。

DDR控制器的时钟频率恒定,但是大部分硬件(读写)有自身的固定工作频率、数据读写频率,并且有可能与DDR时钟频率不一致。有可能导致DDR控制器无法满足读写硬件的速率需求,进而数据交互存在跨时钟域,还会导致DDR读写错误。

3.2读写数据不连续怎么办?

在速率满足的情况下,还可能存在外设发送接收数据并不连续的问题。

3.3读写数据位宽不同怎么办?

DDR典型数据位宽128位,但外设一般为8位或16位。

以上问题通过在读写段各添加一个FIFO 解决,进而引出AXI转化模块

相关推荐
Topplyz8 小时前
在FPGA中实现频率计方案详解(等精度测量)
fpga开发·fpga·频率计
XINVRY-FPGA10 小时前
XC7Z020-1CLG484I Xilinx AMD FPGA Zynq-7000 SoC
arm开发·嵌入式硬件·网络协议·fpga开发·硬件工程·信号处理·fpga
ALINX技术博客7 天前
算力跃升!解析可嵌入整机的 6U VPX 异构高性能射频信号处理平台 AXW23
射频工程·fpga·基带工程
简简单单做算法8 天前
【第1章】基于FPGA的图像形态学处理学习教程——目录
fpga·图像形态学处理·膨胀·腐蚀·开运算·闭运算
做一个快乐的小傻瓜9 天前
易灵思FPGA的RISC-V核操作函数
fpga·risc-v·易灵思
风已经起了13 天前
FPGA学习笔记——用Vitis IDE生成工程(串口发送)
笔记·学习·fpga开发·fpga·1024程序员节
ALINX技术博客13 天前
ALINX 携手 PhineDesign 亮相日本 DSF2025,用 FPGA 产品力响应时代技术浪潮挑战!
fpga开发·fpga
讽刺人生Yan14 天前
RFSOC学习记录(六)混频模式分析
学习·fpga·rfsoc
讽刺人生Yan15 天前
RFSOC学习记录(五)带通采样定理
学习·fpga·rfsoc
讽刺人生Yan15 天前
RFSOC学习记录(四)MTS时序分析
学习·fpga·rfsoc