zoukankan      html  css  js  c++  java
  • AC6102 DDR2测试工程

    AC6102 DDR2测试工程

    本文档介绍AC6102上DDR2存储器基于Verilog代码的测试过程。AC6102上使用了2片16bit的DDR2存储器组成了32bit的硬件总线。虽然是32bit硬件总线,但是我们在使用的时候,也可以只使用其中1片,即16bit模式,忽略对另一片DDR2的读写。因此整个测试分为两种模式,16bit型(仅测试位于低16bit的DDR2芯片)和32bit型(测试由两片DDR2组成的32bit接口)。在实际使用时用户可以根据自己的需求选择使用16bit(仅使用1片DDR2)或32bit(同时使用两片DDR2)接口。两个测试工程与对应的功能如下所示。

    文件名

    功能描述

    AC6102_DDR2_16bit_Test.rar

    单片16bit模式测试工程

    AC6102_DDR2_32bit_Test.rar

    两片32bit模式测试工程

     

    由于两种模式的测试方式完全相同,这里仅以两片32bit模式的工程为例,讲解测试过程。

    1、  解压AC6102_DDR2_32bit_Test.rar到不含中文或者空格的目录中,如D:fpga

    解压后工程目录下内容如下所示:

     

     

    这里对其中几个重要文件(夹)简单说明下功能:

     

    文件或文件夹名

    文件或文件夹功能描述

    DDR2_IP文件夹

    调用DDR2 IP核后生成的各种源码,不可随意修改

    • output_filses文件夹

    编译整个工程后生成的文件,包括我们需要下载到FPGA中运行的sof文件

    DDR2.xml

    生成DDR2 IP时相关文件,存储了DDR2的一些相关信息,暂不理会。

    DDR2_32bit_Test.qpf

    工程文件,使用Quartus II 13.0打开。

    DDR2_32bit_Test.qsf

    工程配置文件,记录了工程相关的各个设置,包括引脚分配。

    DDR2_32bit_Test.v

    测试工程顶层,例化了DDR2 IP和测试代码,组成完整的测试工程。

    data64_source.v

    DDR2读写测试逻辑,该部分实现对DDR2的写入和读出控制,以配合signaltap ii抓取实时读写波形,以判断DDR2的读写是否真确。名字里之所以为64,是因为32bit硬件总线的DDR2对用户的逻辑接口为32*2,即64bit,所以我们需要实用64bit的数据进行测试

    DDR2_32bit_Test_pin_assigment.tcl

    工程引脚分配,由于DDR2的引脚电平和分组都有严格要求,与我们平常普通的引脚分配方式有一定区别,因此这里提供本工程的引脚分配脚本,如果用户不小心操作使得工程引脚分配丢失,可以运行此tcl脚本来恢复引脚分配。

    Micron MT47H64M32-5E.xml

    DDR2存储器参数配置文件,在DDR2 IP核配置界面需要用到。该文件的创建和使用在后续教程中会详细介绍,本测试工程不做过多讲解。

    stp1.stp

    signaltap ii设置文件,测试时双击运行此文件以查看写入和读出的数据内容,通过抓取的波形内容分析读写是否正确。

     

    2、  双击DDR2_32bit_Test.qpf以打开工程(强烈建议使用工程创建时候对应的版本即Quartus II 13.0,使用其他版本打开或编译遇到问题,请邮件告知我们,以获得解决方案邮箱:xiaomeige_fpga@foxmail.com

    3、  使用配套的5V电源给开发板供电,打开电源开关,插上USB Blaster下载器。然后在Quartus II中打开双击stp1.stp文件打开signaltap ii,如下图所示:

     

    4、  选择下载器和需要下载的文件,然后点击下载以开始下载sof文件到开发板中,如下图所示:

     

    5、  点击Run Analysis,抓取单次波形数据,如下图所示:

     

    6、  分析抓取到的数据内容,重点看local_address为0xFFE_部分的读取结果,可以看到

     

    当local_rdata_valid为高电平时,表明发出的读取指令已经开始返回数据,可以看到,返回的数据高32位和低32位数据都是从地址值开始累加返回的。与写入的数据一致,表明DDR2的读写是没有问题的。

     

    测试16bit版本与32bit版本的过程完全一致,这里就不在细说。

    小梅哥

    2016年12月7日于成都市电子科技大学

  • 相关阅读:
    每日日报2020.12.1
    每日日报2020.11.30
    981. Time Based Key-Value Store
    1146. Snapshot Array
    565. Array Nesting
    79. Word Search
    43. Multiply Strings
    Largest value of the expression
    1014. Best Sightseeing Pair
    562. Longest Line of Consecutive One in Matrix
  • 原文地址:https://www.cnblogs.com/xiaomeige/p/6188337.html
Copyright © 2011-2022 走看看