第1节 PLB总线和IPIF简介
推荐给好友
打印
加入收藏
更新于2008-05-22 17:36:22

5.1.1 PLB介绍

由于PLB接口总线协议非常复杂,为了让用户更方便地开发,xilinx为用户专门设计了一套可以用工具生成的接口协议,称作plbv46_slave_single。它在用户IP核和PLB v4.6总线标准之间提供了一个双向的接口。plbv46_slave_single已经被优化成在4.6版本的PLB Bus上用于 slave运转的版本。plbv46_slave_single不支持DMA和IP Master 服务。

特点

  • 与Xilinx PLB v4.6 的32位,64位和128位PLB兼容。
  • 支持由32位,64位,128位Masters的存取。
  • 支持32位slave配置。
  • 支持单拍读写8位,16位,32位数据传输。
  • 支持低延时PLB点到点拓扑结构。

功能描述

plbv46_slave_single被设计用于让用户便捷的在IBM PLB Bus和用户IP核之间执行轻量的交互。这个slave服务使得用户能在不同地址范围内提供地址译码,从而配置多个用户IP的接口接到PLB Bus上。plbv46_slave_single也可以被优化成节省FPGA资源,减小延时的点到点连接的设计。图5.1.1显示了plbv46_slave_single的结构图。

该设计的基础元素是Slave Attachment。这个结构提供了slave运行的基础功能。它在PLB总线和IPIC之间执行协议和时序的转换。



图 5.1.1 PLBV46_SLAVE_SINGLE 结构图

5.1.2 IPIF简介

Xilinx用户IP的文件结构:

Simmodels目录下是仿真模型,hdl是HDL源文件,Data目录下是相关的描述文件,netlist存放的是相关的网表。其中data目录包含以下几个文件:

  •  MPD文件

    MPD文件(Microprocessor Peripheral Definition)定义了嵌入式系统外围设备的接口,它具有如下特性:
    • 列出各个端口和总线接口的初始连接;
    • 列出各参数和初始值;
    • 任何一个MPD文件的参数都可以在MHS文件中,使用相应的文本命令行修改并且覆盖。

MPD 文件句法

1. 定义:

MPD文件的参数或者信号必须是符合HDL(VHDL或者 Verilog)语法要求的。VHDL 和 Verilog 都有其特定的命名规则。

MPD文件提供了外围设备的各种信息,您可以此文件中为VHDL或者Verilog配置各项参数。

例如:

您可以在MPD文件中插入注释,注释的方法为:

(1)以井号 (#)开头;
(2)加入注释直到行末尾;
(3)在一行中,注释可以被加在任何位置。

2. 格式:

使用下述格式作为元件定义:

(1)BEGIN 加“元件名”,关键字BEGIN标志着一个新的外设的开始;
(2)参数名 = 数值;
(3)END; 

  •  PAO文件

    PAO文件 (Peripheral Analyze Order) 包含了为综合而准备的一系列HDL文件,并且定义了编译使用的分析指令。

    此处主要说明如下几部分内容:
    •  PAO文件的格式
    • PAO文件实例

PAO文件格式

用户使用如下格式:

    • 以.lib为后缀的文件是用于综合和仿真的;以.simlib 为后缀的文件专用于仿真;以.synlib为后缀的文件专用综合;Vlgincdir定义了 Verilog的相关信息。
    • 库名定义了包含此文件的库。IP 的所有相关文件都必须使用该IP名作为其库名。如果无版本信息,则默认使用最新库;如果要求使用特定的版本,则库名会给出附加的版本。例如,名字是第一种情况时,对版本 1.00.a库名是libraryname_v1_00_a 。
    • 文件名指定了文件的名称。文件名有一个可选的文件扩展名。如果文件扩展名被忽略,那么对VHDL来说,.vhd扩展名将被添加;对Verilog来说,.v扩展名将被添加。如果MPD文件指定OPTION HDL=BOTH,那么扩展名可能不会被指定。
    • 文件名可以指定关键字来代替文件名称。这导致所有来自被给出库的文件涵盖在内。如果你在参考PAO所属的同一个库时请不要用关键字。名字是第一种情况时任何一个用关键字的可参考的sub-library都必须与一个有效的PAO文件连接。
    • Hdllang指定了文件名的语言。适用的值是verilog和vhdl。当OPTION HDL=MIXED被使用时,Hdllang要指明。如果语言没有被指定,OPTION HDL 值确定Hdllang的值。Hdllang不能被指定为OPTION HDL=BOTH。 如果所有的关键字都被用了,Hdllang就被忽略。此时由于这种特殊情况,sub-library的PAO文件将决定包含在库中的每个文件的语言。
  • BBD文件

    BBD文件(Black Box Definition) 主要用于管理您外围设计中不可见部分(black-box sections)的硬件优化网表文件位置。

    BBD 例子:
    • File Selection Without Options

      下面是个file selection without options的例子。NGC网表被复制到执行目录下而不用管设置在核中的指定选项。

      FILES
      blackbox.ngc
    • Multiple File Selections Without Options

      下面是个multiple file selections without options的例子。这批NGC网表被复制到执行目录下而不用管设置在核中的指定选项。

      FILES
      blackbox1.ngc, blackbox2.ngc, blackbox3.edn
    • File Selection With Options

      下面是个file selection with options的例子。指定的EDIF网表根据在核中设置的C_FAMILY and C_BUS_CONFIG参数被复制到执行目录下。

      C_FAMILY C_BUS_CONFIG FILES
      Virtex              1             Virtex/ip1.edf
      Virtex              2             Virtex/ip2.edf
      spartan2         1            Virtex/ip1.edf
      spartan2         2            Virtex/ip2.edf
      Virtexe             1            Virtex/ip1.edf
      Virtexe             2            Virtex/ip2.edf
      spartan2e       1           Virtex/ip1.edf
      spartan2e       2           Virtex/ip2.edf
      Virtex2              1           Virtex2/ip1.edf
      Virtex2              2           Virtex2/ip2.edf
      Virtex2p            1          Virtex2/ip1.edf
      Virtex2p            2          Virtex2/ip2.edf
    • File Selection With Common Repository Library

      下面是个file selection with a common repository library的例子。下面的例子举例说明了从ddr_v1_00_b 库中传递过来的ddr_v1_00_b_Virtex2_async_fifo.edn网表。

      C_FAMILY FILES
      Virtex2 ddr_v1_00_b:ddr_v1_00_b_Virtex2_async_fifo.edn
      Virtex2p ddr_v1_00_b:ddr_v1_00_b_Virtex2_async_fifo.edn

 

<<上一节    下一节>>




 
关于我们 | 诚邀加盟 | 客户服务 | 相关法律 | 网站地图 | 友情链接 | 服务信箱:service@eefocus.com
© 2006 与非门科技信息咨询(北京)有限公司 All Rights Reserved.