查看: 1653|回复: 0

[经验] 米尔MYD-C7Z020开发板试用9---DDR3读写测试

[复制链接]
  • TA的每日心情
    开心
    2020-7-25 10:37
  • 签到天数: 40 天

    连续签到: 1 天

    [LV.5]常住居民I

    发表于 2019-12-3 22:36:49 | 显示全部楼层 |阅读模式
    分享到:
        这次和大家一起做一下DDR3读写测试,把这个好东西利用起来。ZYNQ PS端有专门的一个BANK俩连接DDR3、DDR2等外设,只需要在ZYNQ IP中选择相应的信号和数据位宽即可,这个这个设置我们可以在开发板资料的例程中就能找到,如下图所示:
    1.JPG
       主要注意DDR的种类和数据位宽,由于开发板上带有两片DDR3,而且每片数据位宽为16位,所以选择数据位宽为32位。
        由于每个工程都需要DDR3,这里我们用之前Helloword工程来测试DDR3即可,不必重新建立工程,可以节约时间。下面建立SDK工程:


    • #include "stdio.h"
    • #include "xparameters.h"
    • #include "xparameters_ps.h"
    • #include "xil_printf.h"
    • #include "xil_io.h"
    • #define DDR_BASEARDDR      XPAR_DDR_MEM_BASEADDR + 0x10000000

    • int main()
    • {
    •     int i;
    •     int rev;
    •     xil_printf("Hello World\n\r");

    •     for(i=0; i<32; i++)
    •     {
    •         Xil_Out32(DDR_BASEARDDR+i*4,i);
    •     }

    •     for(i=0; i<32; i++)
    •     {
    •         rev = Xil_In32(DDR_BASEARDDR+i*4);
    •         xil_printf("the address at  %x data is : %x \n\r" ,DDR_BASEARDDR+i*4, rev);
    •     }
    •     return 0;
    • }


        程序也很简单,就是通过Xil_Out32向地址DDR_BASEARDDR中连续写入32个数据,然后通过Xil_In32在读出来并通过串口打印输出来,打印结果如下图所示,写入数据和读出数据一致,说明DDR3读写测试成功。
        2.JPG

    附上我的工程:
    MYiR_ddr3.zip (4.58 MB, 下载次数: 1)
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-11-26 06:33 , Processed in 0.119914 second(s), 16 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.