您的位置 首页 产品

根据嵌入式处理器的Virtex FPGA板级支撑包规划

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

具有嵌入式处理器的渠道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初始化。

依据嵌入式处理器的Virtex FPGA板级支撑包规划

图1:渠道FPGA灵敏性要求软件BSP发生进程更高效

在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的子目录称号会匹配处理器实例名。

依据嵌入式处理器的Virtex FPGA板级支撑包规划

图2:生成的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严密结合的器材驱动程序包含:10/100以太网MAC;10/100以太网Lite MAC;1Gb以太网MAC;16550/16?50 UART;UART Lite;中止操控器;System ACE技能;PCIe。

一切其它器材及相关的器材驱动程序并未严密集成到VxWorks接口,而仅仅与其松懈集成。对这些器材的拜访可经过从用户运用程序直接拜访相关器材驱动程序来进行。

本文小结

跟着依据嵌入式处理器的FPGA日益受人喜欢并得到广泛运用,能将硬件和软件流程有用安排在一同的东西解决方案应运而生,对协助规划者工作功率跟上芯片的发展起到了要害作用。

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

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/xinpin/chanpin/339216.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部