ZYNQ-AXI4 DDR读写测试

简要记录一下:实验任务是通过自定义一个 AXI4 接口的 IP 核,通过 AXI_HP 接口对 PS 端 DDR3 进行读写测

试(该AXI配置的AXI FULL模式)。即PL端通过按下按键KEY后向PS端的DDR3写入数据,然后PS端可以通过串口读出数据并且可以通过ILA去抓出PL端的写模块写入的数据比较是否一致

硬件框图:

DDR3 Test 是自定义的 IP 核,具有 AXI4 Master 端口,该端口通过 AXI Smartconnect模块,最终连接到 PS 端的 S_AXI_HP0 端口。输入的按键控制 DDR3 Test 模块对 PS 的 DDR3 进行读写测

试,并在读写测试结束后,通过两个 PL LED 灯分别指示读写完成和读写错误 。

自定义IP核axi4_rw_test IP核:

该IP核里有两个模块,最底层模块是读写控制模块,状态机控制逻辑:

硬件block design:

生成bit流导出至vitis平台:

复制代码
#include "stdio.h"
#include "xil_cache.h"
#include "xil_printf.h"
#include "xil_io.h"

int main()
{
	int i;
	char c;

	Xil_DCacheDisable();
	printf("AXI4 PL DDR TEST");

	while(1)
	{
		scanf("%c",&c);
		if(c == 'c'){
			printf("start\r\n");
			for(i=0;i<4096;i=i+4)
			{
				printf("%d is %d\n",i,(int)(Xil_In32(0x10000000+i)));
			}
		}
	}
	return 0;
}

烧录代码:可以看见串口和ILA抓出的数据通道并没有数据,等待着PL key按键按下后触发

按下PL端按键后:当捕获到数据通道的valid和ready信号都拉高后,开始发送数据

此时PS串口也能读出数据:

相关推荐
s09071361 天前
FPGA中同步与异步复位
fpga开发·verilog·xilinx·zynq
tiantianuser1 天前
RDMA设计15:连接管理模块设计2
网络协议·fpga开发·rdma·高速传输·cmac
民乐团扒谱机1 天前
十字路口交通信号灯控制器设计(Multisim 电路 + Vivado 仿真)
单片机·fpga开发·verilog·状态机·仿真·时序逻辑·multism
乌恩大侠1 天前
一文讲解 USRP X410
fpga开发·usrp
s09071361 天前
多波束声呐 FPGA 信号处理链路介绍
算法·fpga开发·信号处理·声呐
坏孩子的诺亚方舟1 天前
FPGA系统架构设计实践11_FPGA开机
fpga开发·系统架构·xilinx·fpga配置
晓晓暮雨潇潇2 天前
Diamond基础6:LatticeFPGA配置流程
fpga开发·diamond·lattice·latticeecp3
江蘇的蘇2 天前
基于7系列FPGA实现万兆网通信
fpga开发
GateWorld2 天前
FPGA实战:一段让我重新认识时序收敛的FPGA迁移之旅
fpga开发·实战经验·fpga时序收敛·建立保持时间
GateWorld2 天前
性能飞跃:DDR4特性解析与FPGA实战指南
fpga开发·信号完整性·ddr3·ddr4