zoukankan      html  css  js  c++  java
  • The base and high address of the custom IP are not correctly reflected in xparameters.h in SDK

    This issue has been observed in 2015.3, 2015.4, and 2015.4.1 builds of Vivado.

    When you create and add a Custom AXI Peripheral, the xparameters.h file which defines the base and high address of the custom IP peripheral is incorrect in SDK.

    For a Zynq project, it defines the address range as complete Zynq address space and not the one you have defined in the Vivado Address Editor.

    For Example:

    /******************************************************************/
    /* Definitions for driver MYIP */
    #define XPAR_MYIP_NUM_INSTANCES 1
    /* Definitions for peripheral MYIP_0 */
    #define XPAR_MYIP_0_DEVICE_ID 0
    #define XPAR_MYIP_0_S00_AXI_BASEADDR 0xFFFFFFFF
    #define XPAR_MYIP_0_S00_AXI_HIGHADDR 0x00000000

    /******************************************************************/
    However in 2015.2 this was not the case; the address was correctly defined as taken from the hardware handoff from vivado:
    /******************************************************************/
    /* Definitions for driver MYIP */
    #define XPAR_MYIP_NUM_INSTANCES 1
    /* Definitions for peripheral MYIP_0 */
    #define XPAR_MYIP_0_DEVICE_ID 0
    #define XPAR_MYIP_0_S00_AXI_BASEADDR 0x43C00000
    #define XPAR_MYIP_0_S00_AXI_HIGHADDR 0x43C0FFFF

    /******************************************************************/

    解决方案

    This is a known issue. The BASEADDR and HIGHADDR values of the Custom AXI Peripheral as defined in the Vivado Address Editor is not properly propagated to the xparameters.h file from the .hdf file.

    It is planned to be fixed in 2016.1 release.

    Work-arounds:

    1. Make the changes manually in the main() file and add the BASEADDR and HIGHADDR values as required. This is required as changes to xparameters.h get overwritten if the BSP is re-built.

    #define XPAR_MYIP_0_S00_AXI_BASEADDR 0x43C00000
    #define XPAR_MYIP_0_S00_AXI_HIGHADDR 0x43C0FFFF

    2. Create the custom IP in 2015.2/2015.1 Vivado builds and import it in the latest builds. In that case the Address values are also properly propagated to xparameters.h.

  • 相关阅读:
    五年磨一剑未成
    通过实例学习 VSL Hello World
    Web3d明日之星基于Javascript和OpenGL的技术
    将自己常去Web3D网站整理到文章中来
    FreeBSD,比较安静
    通过实例学习Virtools脚本语言VSL 合并字符串
    关于SQLite
    android中AsyncTask和Handler对比
    JavaScript中Array的prototype运用
    WampServer2.X 安装与使用说明
  • 原文地址:https://www.cnblogs.com/hcr1995/p/9952396.html
Copyright © 2011-2022 走看看