保存桌面快捷方式 - - 设为首页 - 手机版
凹丫丫旗下网站:四字成语大全 - 故事大全 - 范文大全
您现在的位置: 范文大全 >> 理工论文 >> 电子通信论文 >> 正文

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


DRAM和SRAM单元是可共享的智能单元。其中SDRAM单元可以被IXP1200的StrongARM内核以及微引擎和PCI总线上的设备直接访问,这样可以支持SDRAM与微引擎或IX总线以及PCI总线之间的快速移动数据,而SRAM单元则具有比SDRAM单元更快的访问时间,通常可以用来存储需要快速查找的表格,以提高性能。

3.3 FPGA控制逻辑单元

由于在英特尔公司所提供的网络处理器解决方案中,外部的数据接口是IX总线,该总线是英特尔提供的专有数据总线,而以太网上联卡中所采用的ATM芯片的外部接口为标准的UTOPIA总线。所以,为了实现芯片间的互联,应采用FPGA来完成IX总线和UTOPIA总线间的变换,即在IX总线端实现IX总线的SLAVE接口,在ATM端实现UTOPIA 总线的SLAVE接口。通过该FPGA逻辑控制单元可为ATM到以太帧的转换提供物理层的控制功能。FPGA逻辑控制单元的实现对于完成以太网上联卡的设计非常关键。

3.4 ATM与LVDS背板总线单元

该处理单元主要完成以太网上联卡中的网络处理器单元与背板ATM的无缝连接。由于DSLAM设备的设计核心是基于ATM技术,为了将网络处理器单元应用在基于ATM的DSLAM设备中,必须采用该处理单元来实现系统互连。

DSLAM设备系统中的其它板卡主要用于完成ATM交换以及ADSL设备的线路接口。而背板是基于LVDS总线的高速差分总线,它具有抗干扰能力。这对于高密度的DSLAM设备来说是非常重要的。实际上,上联卡就是通过ATM的物理层芯片与高速LVDS总线进行互联,从而使该板卡无缝插接在系统之中。

>4 以太网上联卡的软件设计

以太网上联卡的软件主要运行在网络处理器IXP1200中。为了方便基于网络处理器IXP1200的开发,英特尔公司特别推出了高度集成且具有强大开发能力的开发工具SDK2.0。这个开发工具包中包含有IXP1200 Developer WorkBench,是一个集成的开发工具,专门用来写符号微码,并且具有汇编器以及优化设备,还提供了一个不需要硬件的IXP1200模拟器,可支持软件模式下的仿真和调试,因而具备友好的用户接口和调试环境。

    网络处理器IXP1200的软件开发主要基于两个层面,一个是高层软件,通常指运行在网络处理器IXP1200 StrongArm内核上的管理软件、路由协议软件以及所有的系统所需任务,这部分软件通常需要一个嵌入式操作系统,目前的开发主要基于Linux操作系统。另一个层面是底层软件,这部分软件主要运行于六个微引擎之上,可用于完成包的快速处理,包括包的快速转发和基本的二层协议处理等,这部分软件采用微码形式来完成,但应特别注意软件部分的代码优化,即用尽可能少的指令来完成处理。在网络处理器IXP1200中,每个微引擎提供有2k字大小的代码存储空间。此外,每个微引擎中也包含四个线程,这四个线程可构成硬件多线程。由于微引擎内部包含有大量的GPR以及SRAM、SDRAM传输寄存器,因此,在采用微线程进行相对寻址模式时,每个线程都具有自己特定的寄存器组,从而极大地加快了线程切换的速度。在IXP1200中进行微码设计有一个重要原则:即当一个线程在等待资源时,应将该线程切换出去,以让其它线程占用微引擎的处理,这样可进行快速切换,以保证各个线程都能够充分利用微引擎的处理机,而不会因为一个在等待资源线程,造成处理器的浪费。微码的组织也是按照这一原则来进行的。图4所示是高层软件的程序主流程图。高层软件的目的是完成整个硬件和软件的初始化,同时将微码程序加载到网络处理器的六个微引擎中,并启动运行。

底层软件的微码流程分为两个部分,其任务分配和以上讨论的六个微引擎的任务分配一致。它也分为两个方向,即ATM到以太网方向和以太网到ATM方向。图5所示是其微码的软件流程图。

5 结束语

本文介绍的基于网络处理器IXP1200的以太网上联卡,已经成功应用于DSLAM设备中,并解决了DSLAM设备与IP网络的高速互联问题。经过测试?本卡性能良好,系统运行稳定。


《基于网络处理器IXP1200的以太网上联卡设计(第3页)》
本文链接地址:http://www.oyaya.net/fanwen/view/154518.html

★温馨提示:你可以返回到 电子通信论文 也可以利用本站页顶的站内搜索功能查找你想要的文章。