位置:51电子网 » 技术资料 » EDA/PLD

基于FPGA片上PowerPC和VxWorks的TCP/IP通信

发布时间:2008/5/28 0:00:00 访问次数:1513

  摘??? 要:本文以xilinx公司virtex-ii pro器件为开发平台,介绍了其内嵌powerpc405处理器设计的原理和软硬件协同设计方法。结合典型的tcp/ip通信实验,文中详细描述了系统设计方法以及vxworks系统下bsp的开发和移植过程,并给出了实验结果。
  关键词:powerpc405;edk;bsp;tcp/ip通信

引言
  随着应用的不断普及和深入,在设计嵌入式系统时,往往需要同时优化众多因素,如成本、功率、尺寸、性能、灵活性、产品上市时间、设计开发周期,以及可靠性等。xilinx 公司推出的嵌入式处理器设计平台virtex-ii pro和virtex-4系列器件可以满足上述要求,其高性能的设计工具为设计者提供了完善的软硬件协同设计能力。本文以virtex-ii pro p20 芯片内嵌powerpc405硬核为处理器,选用目前广泛使用的vxworks操作系统,阐述了内嵌powerpc嵌入式设计的过程和要点,详细介绍了tcp/ip实时传输的整个设计过程,实验结果表明这种构架模式具有很好的应用前景。


基于fpga片上powerpc
的嵌入式系统开发
  随着嵌入式技术的发展,针对当前嵌入式处理器的应用,xilinx公司推出了两款基于fpga的32位嵌入式处理器内核。一种是采用先进ip植入技术实现的嵌入在virtex-ii pro和virtex-4器件中的powerpc405处理器内核(这是业界目前唯一的嵌入式硬核),另一种是microblaze 32位嵌入式处理器软核。硬核的好处是能够提供更快的数据处理能力,而软核则具有更好的灵活性,在目标器件中可以进行任意配置。由于硬核在速度和资源上具有优势,因此本文采用了powerpc405处理器,它支持复杂嵌入式的应用模式。由于同时需要嵌入式rtos vxworks,而fpga内部的blockram往往不能满足提供较大存储空间的要求,因而一般要由外部的存储器阵列实现。

  该体系结构主要应用于需要rtos支持的数据处理、软件、控制等实时系统以及以fpga为核心的复杂应用中。virtex-ii pro系列器件采用ibm coreconnect总线技术,该总线包括:处理器局部总线(plb)、片上外设总线(opb)和设备控制寄存器总线(dcr)。plb总线为片内的高速数据通道,通常连接高速外设、dma存储控制器等,opb总线则通常用于连接速率较低的片上外设,二者通过总线桥接器与处理器总线连接,从而保证plb总线的高速特性。dcr总线用于实现powerpc405的通用寄存器与逻辑设备控制寄存器的数据通信。

  针对基于powerpc405的平台fpga设计,xilinx公司推出了完整的软硬件协同设计工具edk (embedded development kit),它是一个专用于fpga内部32位嵌入式处理器的集成化开发工具包,并提供硬件和软件协同设计的能力,从而极大地缩短了设计周期。在软硬件协同设计开发平台上,嵌入式软件工程师仍然可以独立地进行软件设计,硬件逻辑工程师也就可以继续采用过去的设计方法。

  在实际的软硬件协同开发时,如果不使用嵌入式rtos,powerpc405可以起到类似单片机的作用,软件开发就变得相对简单。而在一些大型项目的开发过程中,嵌入式rtos往往是必需的,因此,研究嵌入式rtos应用开发及其bsp的移植具有关键意义。

基于powerpc405的
vxworks下的tcp/ip通信
整体系统设计??
  vxworks提供了丰富而标准的socket编程接口,可以方便地实现tcp/ip通信,同时,其多任务机制可以高效地完成实时任务的产生、调度、资源分配机制。本文在virtex-ii pro开发平台上利用powerpc405内嵌处理器和pc机进行tcp/ip通信,在底层使用100mbps以太网作为传输媒介,实现了vxworks嵌入式系统控制的文件实时传输。

  可以利用edk中的basesystem builderwizard来快速构建基于powerpc405的系统。首先设定参考时钟频率、处理器时钟、总线时钟,如果在设计中包含有100m网口,那么总线时钟必须选择100m以上的频率。然后选取相应的外设, rs232串口、100m以太网口、sdram等,其中plb_bram_if_cntrl外设是必选的,该控制器完成对blockram的控制,保持cpu处于一个确定的状态。系统设计架构如图3所示,这里用到了edk内带的ethernet mac logicore(图中的emac)。

bsp开发和移植
  嵌入式操作系统开发中一项非常重要的任务,就是bsp (板级支持包)的开发。这是一项非常复杂而繁琐的工作,xilinx公司提供的edk套件,可以在很大程度上减轻开发者的工作。edk中的bsp生成器(bspgen)可以根据不同的微处理器、外设和rtos组合自动产生用户可裁剪的bsp。它包含了系统所必需的支持软件,包括boot代码、设备驱动和rtos的初始化。利用bspgen可以把xilinx器件驱动打包到bsp的子目录下,并且把xilinx器件驱动与vxworks及其tornado集成开发环境无缝集成,充分减少开发周期。

  但是,bspgen生成的bsp只是一个固定的bsp模板文件,不能自动设置ram/rom的存储器映射,不支持用户通过bspgen流程自定义的核/驱动,不能自动集成总线错误检测,而且,caches在缺省情况下被禁止的。

  对于bsp开发人员来讲,借助edk的bspgen,还必

  摘??? 要:本文以xilinx公司virtex-ii pro器件为开发平台,介绍了其内嵌powerpc405处理器设计的原理和软硬件协同设计方法。结合典型的tcp/ip通信实验,文中详细描述了系统设计方法以及vxworks系统下bsp的开发和移植过程,并给出了实验结果。
  关键词:powerpc405;edk;bsp;tcp/ip通信

引言
  随着应用的不断普及和深入,在设计嵌入式系统时,往往需要同时优化众多因素,如成本、功率、尺寸、性能、灵活性、产品上市时间、设计开发周期,以及可靠性等。xilinx 公司推出的嵌入式处理器设计平台virtex-ii pro和virtex-4系列器件可以满足上述要求,其高性能的设计工具为设计者提供了完善的软硬件协同设计能力。本文以virtex-ii pro p20 芯片内嵌powerpc405硬核为处理器,选用目前广泛使用的vxworks操作系统,阐述了内嵌powerpc嵌入式设计的过程和要点,详细介绍了tcp/ip实时传输的整个设计过程,实验结果表明这种构架模式具有很好的应用前景。


基于fpga片上powerpc
的嵌入式系统开发
  随着嵌入式技术的发展,针对当前嵌入式处理器的应用,xilinx公司推出了两款基于fpga的32位嵌入式处理器内核。一种是采用先进ip植入技术实现的嵌入在virtex-ii pro和virtex-4器件中的powerpc405处理器内核(这是业界目前唯一的嵌入式硬核),另一种是microblaze 32位嵌入式处理器软核。硬核的好处是能够提供更快的数据处理能力,而软核则具有更好的灵活性,在目标器件中可以进行任意配置。由于硬核在速度和资源上具有优势,因此本文采用了powerpc405处理器,它支持复杂嵌入式的应用模式。由于同时需要嵌入式rtos vxworks,而fpga内部的blockram往往不能满足提供较大存储空间的要求,因而一般要由外部的存储器阵列实现。

  该体系结构主要应用于需要rtos支持的数据处理、软件、控制等实时系统以及以fpga为核心的复杂应用中。virtex-ii pro系列器件采用ibm coreconnect总线技术,该总线包括:处理器局部总线(plb)、片上外设总线(opb)和设备控制寄存器总线(dcr)。plb总线为片内的高速数据通道,通常连接高速外设、dma存储控制器等,opb总线则通常用于连接速率较低的片上外设,二者通过总线桥接器与处理器总线连接,从而保证plb总线的高速特性。dcr总线用于实现powerpc405的通用寄存器与逻辑设备控制寄存器的数据通信。

  针对基于powerpc405的平台fpga设计,xilinx公司推出了完整的软硬件协同设计工具edk (embedded development kit),它是一个专用于fpga内部32位嵌入式处理器的集成化开发工具包,并提供硬件和软件协同设计的能力,从而极大地缩短了设计周期。在软硬件协同设计开发平台上,嵌入式软件工程师仍然可以独立地进行软件设计,硬件逻辑工程师也就可以继续采用过去的设计方法。

  在实际的软硬件协同开发时,如果不使用嵌入式rtos,powerpc405可以起到类似单片机的作用,软件开发就变得相对简单。而在一些大型项目的开发过程中,嵌入式rtos往往是必需的,因此,研究嵌入式rtos应用开发及其bsp的移植具有关键意义。

基于powerpc405的
vxworks下的tcp/ip通信
整体系统设计??
  vxworks提供了丰富而标准的socket编程接口,可以方便地实现tcp/ip通信,同时,其多任务机制可以高效地完成实时任务的产生、调度、资源分配机制。本文在virtex-ii pro开发平台上利用powerpc405内嵌处理器和pc机进行tcp/ip通信,在底层使用100mbps以太网作为传输媒介,实现了vxworks嵌入式系统控制的文件实时传输。

  可以利用edk中的basesystem builderwizard来快速构建基于powerpc405的系统。首先设定参考时钟频率、处理器时钟、总线时钟,如果在设计中包含有100m网口,那么总线时钟必须选择100m以上的频率。然后选取相应的外设, rs232串口、100m以太网口、sdram等,其中plb_bram_if_cntrl外设是必选的,该控制器完成对blockram的控制,保持cpu处于一个确定的状态。系统设计架构如图3所示,这里用到了edk内带的ethernet mac logicore(图中的emac)。

bsp开发和移植
  嵌入式操作系统开发中一项非常重要的任务,就是bsp (板级支持包)的开发。这是一项非常复杂而繁琐的工作,xilinx公司提供的edk套件,可以在很大程度上减轻开发者的工作。edk中的bsp生成器(bspgen)可以根据不同的微处理器、外设和rtos组合自动产生用户可裁剪的bsp。它包含了系统所必需的支持软件,包括boot代码、设备驱动和rtos的初始化。利用bspgen可以把xilinx器件驱动打包到bsp的子目录下,并且把xilinx器件驱动与vxworks及其tornado集成开发环境无缝集成,充分减少开发周期。

  但是,bspgen生成的bsp只是一个固定的bsp模板文件,不能自动设置ram/rom的存储器映射,不支持用户通过bspgen流程自定义的核/驱动,不能自动集成总线错误检测,而且,caches在缺省情况下被禁止的。

  对于bsp开发人员来讲,借助edk的bspgen,还必

相关IC型号

热门点击

 

推荐技术资料

声道前级设计特点
    与通常的Hi-Fi前级不同,EP9307-CRZ这台分... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!