中国·芯片交易在线
首页 | 供应信息 | 求购信息 | 库存查询 | 新闻中心 | 展会资讯 | IC厂商 | 技术资料 | 自由区域
   新闻首页 |  行业动态 | 新品发布 | 政策法规 | 科技成果 | 模拟技术 | 嵌入系统 | 传感控制 | 存储设计  
当前位置:IC72首页>> IC新闻中心>> 嵌入系统 >>电子行业新闻正文

利用XPS工具快速生成Virtex FPGA的板级支持包

时间:2007/1/22 10:31:00  作者:  来源:ic72  浏览人数:1440
 
 

      具有嵌入式处理器的平台FPGA提供很大的灵活性、集成度和高性能。目前,在单个可编程逻辑器件中开发极其复杂且高度定制化的嵌入式系统已成为可能。随着芯片性能的不断增加,如何使设计方法始终高效、多产,成为人们面临的主要挑战。嵌入式系统开发的关键活动之一是板级支持包(BSP)。利用BSP,可以使嵌入式软件应用程序成功地初始化,并与连接到处理器的硬件资源进行通信。典型的BSP组件包括引导代码、器件驱动程序代码和初始化代码。

      创建BSP是一个冗长而繁复的过程,并且每当微处理器与处理器和相关的外设的组合有所变更时都得再次创建。对FPGA而言,短的设计周期加上平台的灵活性,会使得管理BSP的任务更为艰巨(图1)。这就迫使人们寻找更有效地管理BSP的方法。

      设计流程和软件BSP生成

      赛灵思处理器的设计包含硬件平台集结流程和嵌入式软件开发流程。这些流程都通过XPS(Xilinx Platform Studio)工具加以管理,该工具属于赛灵思嵌入式开发套件(EDK)的一部分。

      设计通常始于在XPS中集结与配置处理器及与其相连接的器件。定义好硬件平台后,就可以配置系统的软件参数了。XPS的一个主要特点是,它可以根据你对处理器、外设和嵌入式操作系统的选择和配置来定制BSP。系统通过硬件设计的迭代改变而发展,同时BSP随着平台而发展。

      自动生成的BSP可赋予嵌入式系统设计者以下能力:自动创建与硬件设计完全匹配的BSP;使用预认证的组件消除BSP设计错误;立即启动应用软件开发,提高设计者的效率。

      创建用于VxWorks的BSP

      XPS可生成用于赛灵思Virtex-II Pro和Virtex-4 FPGA中的PowerPC 405处理器及其外设的定制Tornado 2.0.x(VxWorks5.4)或Tornado 2.2.x(VxWorks5.5)BSP。生成的BSP包含系统必需的所有支持软件,包括引导代码、器件驱动程序和VxWorks初始化。

      在XPS定义完具有PowerPC 405处理器的硬件系统后,只需遵循以下三个步骤即可生成用于VxWorks的BSP:

      1. 使用软件设置对话框选择要为系统使用的操作系统。XPS用户可选择VxWorks5.4或VxWorks5.5作为其目标操作系统。

      2. 选择了操作系统后,可转到资料库/操作系统参数标签,根据定制硬件调整Tornado BSP。你可以选择系统中的任意UART器件作为标准I/O器件(标准输入和标准输出)。这将使该器件被用作VxWorks控制器件。

      你还可以选择将哪些外设作为连接外设,将哪些器件紧密集成到VxWorks操作系统。例如,赛灵思10/100以太网MAC可以集成到VxWorks增强型网络驱动程序(END)接口。或者不必将以太网器件连接到END接口,而从VxWorks应用程序直接访问它。

      3. 选择“工具>生成库”和BSP菜单选项,生成Tornado BSP。生成的BSP与传统的Tornado BSP相似,位于ppc405_0/bsp_ppc405_0下的“Platform Studio”目录中(见图2)。注意ppc405_0为硬件设计中PowerPC 405处理器的实例名。XPS用户可指定其它实例名,此时BSP的子目录名称会匹配处理器实例名。

ic72新闻中心

图1:生成的BSP目录结构

      通过XPS生成的Tornado BSP具有一个“Makefile”文件,如果希望使用Diab编译器而不是Gnu编译器,可在命令行修改此文件。

      Tornado BSP是完全独立的,并可以转移到其它目录位置,如BSP的标准Tornado安装目录:target/config。

      定制BSP

      由XPS生成的用于VxWorks的BSP与大多数其它Tornado BSP相似,只是赛灵思器件驱动程序代码的位置有所不同。与Tornado相关的现成器件驱动程序代码通常位于Tornado分布目录的target/src/drv目录中,而由XPS自动生成的BSP的器件驱动程序代码位于BSP目录本身中。

      基于FPGA的嵌入系统之动态特性是造成此微小差别的原因。因为基于FPGA的嵌入系统可以用新的或更改后的IP重新编程,器件驱动程序可以改变,因此就需要对器件驱动程序源文件进行更为动态的放置。图2为自动生成的BSP目录树,赛灵思器件驱动程序放置在BSP子目录ppc405_0_drv_csp/xsrc中。

      赛灵思器件驱动程序在C盘中执行并分布在数个源文件中,这点不同于传统的、通常由单个C头文件和执行文件组成的VxWorks驱动程序。此外,对于器件驱动程序,既有独立于操作系统的执行,又有可选的依赖于操作系统的执行。

      驱动程序的操作系统独立部分应同任何操作系统或处理器一起使用。它提供了一种应用程序接口(API),能提取基础硬件的功能。驱动程序的操作系统附属部分对驱动程序进行调整,使其得以在VxWorks之类的操作系统下使用,例如串行端口使用的Serial IO驱动程序和以太网控制器使用的END驱动程序。只有能被紧密集成到标准操作系统接口的驱动程序才要求操作系统附属驱动程序。

      赛灵思驱动程序源文件加入VxWorks映像构件的方式同其它BSP文件加入的方式相同。针对每个驱动程序,在BSP目录中都有一个名为ppc405_0_drv_.c的文件。此文件包括针对给定器件的驱动程序源文件(*.c),并自动由BSP makefile编译。

      该过程与VxWorks sysLib.c针对风河系统(Wind River)提供的驱动程序纳入源文件的过程相似。赛灵思驱动程序文件不像其余驱动程序一样单纯纳入sysLib.c的原因,在于命名空间的冲突和可维护性问题。如果所有的赛灵思驱动程序文件都是单个编译单元的一部分,那么静态功能和数据就不再处于保密状态了。这会对器件驱动程序产生限制,也会抵消其操作系统独立性。

      与Tornado IDE集成

      自动生成的BSP被集成到Tornado IDE。BSP可从命令行使用“Tornado make”工具编译,或从“Tornado Project”编译。生成BSP后,只需在命令行键入“make VxWorks”来编译可启动的RAM映像。这是假定此前已设置了Tornado环境(此设置可以在Windows操作平台上在命令行使用host/x86-win32/bin/torVars.bat来完成)。如果你使用的是“Tornado Project”器件,可以在新生成的BSP的基础上创建一个项目,然后使用通过IDE提供的构件环境编译此BSP。

      Tornado 2.2.x不仅支持Gnu编译器,还支持Diab编译器。XPS创建的Tornado BSP有一个“Makefile”,如果你想使用Diab编译器而不是Gnu编译器,则可以在命令行修改此“Makefile”。寻找称为“工具”的生成变量,将值设置到Diab而不是Gnu。如果使用“Tornado Project”工具,项目最初创建时可选择所需的编译器。

      文件“50ppc405_0.cdf”位于BSP目录下,并在创建BSP的过程中加以更改。此文件将器件驱动程序融入了Tornado IDE菜单系统。驱动程序在“硬件>外围器件”子文件夹处与BSP结合在一起。在其下面是单独的器件驱动程序文件夹。

      “Tornado Project Facility”的“文件”标签也会显示用来将赛灵思器件驱动程序与Tornado构建过程结合在一起的文件数量。这些文件由XPS自动创建,你只需要知道其存在就行。

      一些常用器件与操作系统紧密结合,而其它器件可通过直接使用器件驱动程序从应用程序上访问。

      所有其它器件及相关的器件驱动程序并未紧密集成到VxWorks接口,而只是与其松散集成。对这些器件的访问可通过从用户应用程序直接访问相关器件驱动程序来进行。

      本文小结

      随着基于嵌入式处理器的FPGA日益受人喜爱并得到广泛应用,能将硬件和软件流程有效组织在一起的工具解决方案应运而生,对帮助设计者工作效率跟上芯片的进展起到了关键作用。

      赛灵思用户一直非常认可XPS及其与VxWorks 5.4和5.5的集成。赛灵思将对Wind River流程的开发予以不懈支持,此流程不久就会包括对VxWorks 6.0和Workbench IDE的支持。

 
【相关文章】
·利用XPS工具快速生成Virtex FPGA的板级支持包
·嵌入式实时英语语音识别系统的设计和实现
·基于S3C44B0的布拉格光纤光栅传感信号处理系统
·浅谈ARM仿真器中的断点资源
·关于嵌入式U盘读写器接口技术和系统设计
·单片机与PC机串行通信的实现方法
·基于单片机的复杂可编程逻辑器件快速配置方法
·一种改进型UML在嵌入式系统中的应用
·基于SPCA563B芯片的图象识别系统设计
·在嵌入式系统中应用Linux深入探究
 
 
IC新闻搜索
 
热点新闻
基于红外超声光电编码器的室内移动小车定位系
基于闪烁存储器的TMS320VC5409DSP并行引导装载方法
非移动市场需求飙升,ARM预计2010年出货量超50亿片
一种快速响应的电容式湿度传感器感湿薄膜设计
利用特殊应用模拟开关改进便携式设计
无线传感器网络跨层通信协议的设计
基于ARM9内核Processor对外部NAND FLASH的控制实现
基于GSM技术的汽车防盗系统的设计
热电阻在烟叶初烤炕房温度控制中的应用
高速数据转换系统对时钟和数据传输的性能要求
友情连接
 关于我们  IC论坛  意见反馈  设置首页  广告服务  用户帮助  联系我们
copyright:(1998-2005) IC72 中国·芯片交易在线
(北京)联系电话:(010)82614113、82614123 传真:(010)82614123 客户服务:service@IC72.com 库存上载:IC72@IC72.com
在线MSN咨询:ic72sale8@hotmail.com 通信地址:北京市西城区西直门内大街2号大厦15层 邮政编码:100013
(深圳)联系方式: 在线MSN咨询:ic72sale6@hotmail.com 在线QQ咨询:191232636 通信地址:深圳市福田区振华路
注 册 号: 1101081318959(1-1)

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9