首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

FPGA嵌入式系统开发过程中的XBD文件设计(2)

FPGA嵌入式系统开发过程中的XBD文件设计(2)

赋值命令包括:
  ①ATTRIBIJTE。ATTRIBUTE命令是对属性命名的关键字。对于经过ATTRIBUTE赋值的对象,EDK工具会执行某种操作或以特定的方式使用该对象。ATTRIBUTE赋值命令可以在BEGIN—END模块内部或者外部使用。
  ②PARAMETER。PARAMETER命令将IP核中的PARAMETER参数同XBD文件中的IO_INTERE、ACE联系在一起,且PARAMETER命令只能在IO_INTERFACE模块内部使用。
  ③PORT。PORT命令用来指定电路板上各个模块(包括FPGA)的连通性,只能在IO_INTERFACE和IO_ADAPTER模块内使用。
  PARAMETER和PORT命令后能够跟随子属性,每一个子属性也是name—value对。子属性必须同PA—RAMETER和PORT命令在同一行,并且用逗号隔开。
  3 XBD文件的设计实现
  在基于FPGA的嵌入式系统中,无论是硬核Power—PC还是软核Microblaze处理器,都是通过IP核的方式与周围设备进行操作的,因此,在XBD中定义电路模块时要选择与实际电路相对应的IP核。在描述IP核行为的MPD文件中,定义了IP核的各种参数,I0_INTERFACE的子属性IOTYPE决定了该IP核是否能够与电路板上的特定模块进行连接,通过查看MPD文件的信息就可以知道该IP的功能及其各种参数。例如,对于电路板上的4个LED显示单元,为了能够利用BSB将其加入到嵌入式系统中,需要在XBD文件中定义一个能够对4个LED进行操作的模块。在基于FPGA的嵌入式系统中,处理器通过通用I/O接口GPIO对LED进行操作,故LED在XBD中要定义一个IOTYPE为GPIO的I0_INTER—FACE模块,表示可以通过这个模块与实际电路板上的I/O进行通信。在GPIO的MPD文件描述中,对于I0_IN—TERFACE进行了如下定义:
  IO_INTERFACE IO_IF=gpio_O,IO_TYPE=XIL_GPIO_V1
这个I0_INTERFACE表明IP核可以和GPIO进行通信。
  与电路板上特定模块通信的IP核选定后,根据实际的电路特点,在XBD文件中指定模块的参数值,这些参数值都要与MPD文件中的参数一一对应。需要指出的是,EDK工具是利用XBD文件中的IO_IS子属性将IP核的端口与电路板上模块连接在一起的。在MPD文件中,GPIO的部分描述摘录如下:
  
  
  MPD文件定义了IOTYPE类型为XIL_GPIO_V1的I/O接口,并且有C_GPIO_WIDTH和C_ALL_INPUTS两个参数。这些参数跟随的I0_INTERFACE是通过IO_IF子属性来指定的。同样,PORT GPIO_IO也是通过IO_IF子属性来表示属于gpio_0接口的。通过MPD文件对GPIO的描述,可以通过将电路板上的4个LED电路模块在XBD文件中定义一个IO_INTERFACE模块来表示。
  
继承事业,薪火相传
返回列表