ZYNQ7035 PS读写PL端DDR3

ZYNQ7035 PS读写PL端DDR3

硬件平台

小熊猫嵌入式电子:ZYNQ7035_R5

MIG IP核配置

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

PL端DDR管脚分配

NET   "ddr3_addr[0]"      LOC = "A8"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_addr[10]"     LOC = "C2"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_addr[11]"     LOC = "F8"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_addr[12]"     LOC = "B1"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_addr[13]"     LOC = "B10"   |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_addr[14]"     LOC = "F7"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_addr[1]"      LOC = "A2"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_addr[2]"      LOC = "D6"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_addr[3]"      LOC = "C9"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_addr[4]"      LOC = "D5"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_addr[5]"      LOC = "A9"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_addr[6]"      LOC = "E7"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_addr[7]"      LOC = "B9"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_addr[8]"      LOC = "G7"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_addr[9]"      LOC = "A7"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_ba[0]"        LOC = "B7"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_ba[1]"        LOC = "B2"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_ba[2]"        LOC = "A3"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_cas_n"        LOC = "B4"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_ck_n[0]"      LOC = "A5"    |     IOSTANDARD = DIFF_SSTL15          |     VCCAUX_IO = NORMAL      ;NET   "ddr3_ck_p[0]"      LOC = "B6"    |     IOSTANDARD = DIFF_SSTL15          |     VCCAUX_IO = NORMAL      ;NET   "ddr3_cke[0]"       LOC = "C3"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_cs_n[0]"      LOC = "C6"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dm[0]"        LOC = "F3"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dm[1]"        LOC = "J4"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dm[2]"        LOC = "M5"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dm[3]"        LOC = "N6"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[0]"        LOC = "C1"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[10]"       LOC = "L3"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[11]"       LOC = "H3"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[12]"       LOC = "K3"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[13]"       LOC = "H4"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[14]"       LOC = "J1"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[15]"       LOC = "H1"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[16]"       LOC = "L5"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[17]"       LOC = "N1"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[18]"       LOC = "M2"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[19]"       LOC = "M6"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[1]"        LOC = "E2"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[20]"       LOC = "L2"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[21]"       LOC = "N4"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[22]"       LOC = "L4"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[23]"       LOC = "M4"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[24]"       LOC = "M7"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[25]"       LOC = "J5"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[26]"       LOC = "K8"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[27]"       LOC = "J6"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[28]"       LOC = "K6"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[29]"       LOC = "K5"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[2]"        LOC = "D3"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[30]"       LOC = "N7"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[31]"       LOC = "K7"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[3]"        LOC = "F4"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[4]"        LOC = "D1"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[5]"        LOC = "G4"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[6]"        LOC = "D4"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[7]"        LOC = "E1"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[8]"        LOC = "H2"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dq[9]"        LOC = "G1"    |     IOSTANDARD = SSTL15_T_DCI         |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dqs_n[0]"     LOC = "F2"    |     IOSTANDARD = DIFF_SSTL15_T_DCI    |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dqs_n[1]"     LOC = "K1"    |     IOSTANDARD = DIFF_SSTL15_T_DCI    |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dqs_n[2]"     LOC = "N2"    |     IOSTANDARD = DIFF_SSTL15_T_DCI    |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dqs_n[3]"     LOC = "L8"    |     IOSTANDARD = DIFF_SSTL15_T_DCI    |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dqs_p[0]"     LOC = "G2"    |     IOSTANDARD = DIFF_SSTL15_T_DCI    |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dqs_p[1]"     LOC = "K2"    |     IOSTANDARD = DIFF_SSTL15_T_DCI    |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dqs_p[2]"     LOC = "N3"    |     IOSTANDARD = DIFF_SSTL15_T_DCI    |     VCCAUX_IO = NORMAL      ;NET   "ddr3_dqs_p[3]"     LOC = "M8"    |     IOSTANDARD = DIFF_SSTL15_T_DCI    |     VCCAUX_IO = NORMAL      ;NET   "ddr3_odt[0]"       LOC = "A4"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_ras_n"        LOC = "C4"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;NET   "ddr3_reset_n"      LOC = "A10"   |     IOSTANDARD = LVCMOS15             |     VCCAUX_IO = NORMAL      ;NET   "ddr3_we_n"         LOC = "B5"    |     IOSTANDARD = SSTL15               |     VCCAUX_IO = NORMAL      ;

逻辑框图

在这里插入图片描述

PS编程

#include 
#include "platform.h"
#include "xil_printf.h"
#include "xparameters.h"
#include "xil_io.h"int main()
{init_platform();print("Hello World\n\r");int i = 0;unsigned int sendBuff[256] = {0};unsigned int recvBuff[256] = {0};for(i = 0; i < 100; i++){sendBuff[i] = i;xil_printf("sendBuff[%d] = %d\n",i,sendBuff[i]);}for(i = 0; i < 100; i++){Xil_Out32((XPAR_MIG_7SERIES_0_BASEADDR + i*4),sendBuff[i]);}for(i = 0; i < 100; i++){recvBuff[i] = Xil_In32((XPAR_MIG_7SERIES_0_BASEADDR + i*4));xil_printf("recvBuff[%d] = %d\n",i,recvBuff[i]);}cleanup_platform();return 0;
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部