基于网络处理器IXP1200的以太网上联卡设计

时间:2020-10-06 13:39:36 理工毕业论文 我要投稿

基于网络处理器IXP1200的以太网上联卡设计

摘要:以太网上联卡是以ATM技术为内核的DSLAM设备中的一块板卡,DSLAM设备通过它可直接与IP网络相连,由于在进行ATM与IP转换时要消耗大量资源,因而很容易使上联卡成为整个系统的瓶颈。文章提出了一种基于网络处理器IXP1200的以太网上联卡设计方案,该方案利用IXP1200网络处理器强大的数据处理能力和高度的灵活性来实现对数据的线速处理,同时也可根据需要增加新的功能。

随着网络通讯技术的高速发展,宽带接入技术成了当前电信接入技术的热点。由于早期的宽带技术以ATM为核心,各大厂家提供的核心芯片和线路接口芯片都是基于ATM技术的。而数据网络主要以TCP/IP为核心,因此,为了解决ATM和TCP/IP的融合问题,就需要在DSLAM设备上提供ATM到以太网的.转换。但转换过程中需要进行大量的数据处理,因此容易产生系统瓶颈,而上联卡的设计就是为了解决在DSLAM设备中的ATM信元和以太网帧之间的高速转发问题。本文提出了一种基于网络处理器IXP1200的上联卡设计方案,并对该方案的实现过程进行了详细分析。

1 网络处理器IXP1200主要特性

网络处理器是一种硬件可编程器件,通常是一种芯片,它是专门为处理网络数据包而设计的。通过对硬件架构和指令集的优化,该网络处理器不但可提供线速处理数据包的高质量硬件功能,同时还具备极大的系统灵活性。

IXP1200是英特尔公司生产的一款高档网络处理器,也是IXA(Internet Exchange Architecture)架构的核心产品。IXP1200的内部结构如图1所示,它内含1个主频最高可达232MHz的处理核心StrongARM、6个RISC结构的可编程微引擎(每个微引擎包含4个硬件线程)、64位和最高104MHz的IX Bus、32位的SRAM接口单元(工作频率为核心频率的一半)、64位的SDRAM接口单元(工作频率为核心频率的一半)、32位和最高66MHz的PCI总线接口单元等。IXP1200通过FBI接口单元和IX Bus相连接。另外还有一套集成开发环境,可用于对微引擎进行应用开发,它支持汇编和C编程语言。

(1)StrongARM Core

通过StrongARM Core可实现CPU的主要功能,同时可启动系统、管理和控制对网络处理器的其它单元、处理微引擎无法处理的数据包和一些异常状况。

(2)微引擎

微引擎是可编程的32-bit RISC处理器,它的指令集是专门针对网络和通信应用而设计的。通过对各个线程进行编程,可单独执行数据包的转发和处理,而无需StrongARM Core干预,因而可减轻StrongARM Core的负担,特别适合高速数据的处理和转发。

(3)SDRAM单元

SDRAM单元可提供IXP1200与SDRAM的接口,最大可支持256M字节的SDRAM。虽然SDRAM的访问速度较慢,但存储空间大,因而可用来存储大容量的数据结构(如数据包和路由表等),并可在系统运行时存储操作系统的代码。

(4)SRAM单元

SRAM单元可为三种类型设备提供通用总线接口。这些设备包括最大可达8M字节的SSRAM、复位后StrongARM Core执行代码所在的FLASH或E-PROM等、BOOTROM设备和其它慢速端口设备(如CAM)、加密设备和MAC或PHY设备的控制状态接口。SRAM访问速度较快,但存储空间小,主要用来存储查找表和缓存描述符等需要快速访问的数据结构。