基于MTCA架构的ISDN接入网关设计
来源: 电子世界   发布时间: 2013-06-08 16:00   4000 次浏览   大小:  16px  14px  12px
设计了一种基于MTCA架构的ISDN接入网关AMC模块。给出了以VOIP处理器M82515为核心的核心控制电路以及专用芯片构成的接口电路的硬件结构和组成。以Vxworks系统作为嵌入式软件平台,采用C语言进行了ISDN信令、SIP信令以及信令转换的软件开发,实现了ISDN业务在MTCA系统中的接入以及ISDN终端与SIP软电话的呼叫流程。

贺信,南京航空航天大学

下一代网络(NGN)是多网融合的产物,是可以提供多种包括媒体、音频、数据等各种业务的开放性网络。PICMG(PCI Industrial Computer Manufacturers Group)是开放性通信平台架构规范的领导者,2005年PICMG在ATCA(Advanced Telecom Computing Architecture)的基础上提出的MTCA(Micro Telecom Computing Architecture)架构规范,从此MTCA成为业界研究的热点。MTCA因其开放性的架构标准,特别适用于多种不同网络融合的小型化应用。本文提出一种基于此架构的ISDN网关设计,实现ISDN网络在IP网络中的接入。


1.系统总体结构

本系统是通过设计符合MTCA规范的AMC(Advanced Mezzanine Card:高级夹层卡)模块来实现ISDN接入网关的功能。1个典型的MTCA系统包括:12块AMC模块、1或2个MCH(MicroTCA Carrier Hub)、互连背板以及电源、散热等模块。MTCA系统支持AMC.0的所有4种规格的板卡,本系统采用AMC.2 Type E2(2个Gigabit Ethernet)。


ISDN接入网关主要完成两个功能:一是ISDN信令的与IP网络中SIP(Session Initiation Protocol:初始会话协议)信令之间的转换;二是媒体流之间的转换。一个典型的通信流程如下:


(a)ISDN终端通过ISDN接入网关对IP网络中的PC软电话发起呼叫。

(b)ISDN接入网关收到ISDN信令呼叫信号,转换为IP网络中的SIP信令呼叫信号,发送至软电话。

(c)软电话按照SIP信令流程反馈SIP信令至ISDN接入网关。

(d)ISDN接入网关将来自软电话的SIP信令转换为相应ISDN的信令,发送至ISDN终端。

(e)以上过程直至呼叫建立,ISDN接入网关将ISDN信道与IP网络中的媒体流通道打开,并进行相应的媒体流格式转换。


2.ISDN接入网关AMC硬件设计

本网关的AMC模块硬件按照功能主要划分为两部分:一是核心控制电路,完成信令转换的处理和媒体流协议的转换,是电路的核心部分;二是接口电路,完成ISDN线路的接入和MTCA系统的接入及管理。AMC硬件组成如图1。



图1 AMC硬件组成

2.1 核心控制电路设计

核心控制电路采用MindSpeed公司的VOIP处理器M82515作为主处理器,用于媒体流的协议的转换并提供软件运行的硬件平台;采用CPLD芯片来实现不同信号之间的交换、映射等处理。


M82515是专业用于VOIP设计的32位处理器,内部具有2个ARM920核和一个DSP核心,其中两个ARM920核分别用于控制和媒体流处理,DSP核用于呼叫中各种铃音的产生。


核心控制电路中的VOIP处理器最小系统,配备2片32M SDRAM芯片、1片用于存储应用程序的8M Flash芯片以及1片用于存储启动程序(bootloader)1M Flash芯片。



2.2 接口电路设计

接口电路的设计按照接口种类分为3个部分:一是用于ISDN线路接入的U接口,采用motorola公司的U接口芯片MC145572来设计实现;二是用于接入MTCA的GMII接口,采用REALTEK公司的以太网物理层芯片RT8201BL和Marvel公司的以太网交换芯片88E6045来设计实现;三是用于MTCA管理的I2C接口,采用Atmel公司的单片机ATmega128L来设计实现。


3.网关软件设计

由于ISDN网关应用在电信领域,因此需要保证其实时性要求。本网关软件平台采用的操作系统是WindRiver公司开发的Vxworks实时操作系统。VxWorks操作系统由内核、I/O系统、文件系统、网络支持几部分组成,并且拥有功能强大,界面友好的开发工具Tornado开发平台。网关软件的设计包括两大方面:一是基础软件系统,包括BSP(Board Support Package:板级支持包)的定制、操作系统的移植以及芯片驱动的编写;二是应用程序的设计,本系统中应用程序主要完成ISDN信令和SIP信令呼叫流程的控制与转换、媒体流的控制、交换和管理,应用程序的开发采用C语言设计。在下文中着重对Vxworks移植和呼叫流程的控制与转换进行介绍。



3.1 Vxworks移植

VxWorks的移植是通过BSP来实现的。Wind River公司的Tornado开发工具对应于不同硬件平台提供了相应的BSP配置程序,功能十分强大。仅仅通过Tornado开发工具我们就可以生成bootloader引导程序和VxWorks内核映像。


BSP的配置文件一般在VxWorks编泽环境Tornado的目录target/config/all和target/config/CPUxxx(CPU型号)中,前一个目录中是通用的配置,一般不用修改,后一个目录中包括了对应的处理器的型号,如本系统BSP的配置是主要是在target/config/MindARM920(MindSpeed提供)中的config.h文件中进行的。配置文件config.h主要定义了引导行,目标机操作系统包含的主要成分,如软驱、IDE硬盘、SCSI设备、网络等设备驱动,文件系统(DOSFS,TFFS,CDROMFS等),调试方式,内存地址等及有关参数。引导行(boot line)定义了引导设备、引导路径、操作系统文件名、主机/目标机IP地址、子网掩码、FTP用户名和口令等参数。   修改config.h最重要的一步是修改引导行。引导文件bootrom.sys根据引导行来确定引导设备、引导路径、操作系统文件,并且引导行存放在固定的位置。操作系统访问引导行来确定网络的配置,系统reboot时也将访问引导行。bootrom.sys和VxWorks将它转换为一个特定的引导参数结构BOOT_PARAMS。在config.h中,引导行定义为有特定格式的字符串。BOOT_PARAMS定义在h\bootlib.h中。


BSP配置完成后,接下来就是生成bootloader文件bootrom_uncmp和内核映像文件VxWorks。


在Tornado集成环境中执行菜单命令Build-〉Build Boot ROM…,在弹出的对话框中,左边框中选择BSP,选中ARM920,右边框中选择要生成的影像文件,选择bootrom_uncmp,然后点击OK确认。Tornado将生成bootrom_uncmp。VxWorks内核映像文件的生成和bootrom_uncmp文件生成的操作基本一致。



3.2 呼叫流程控制与转换软件的设计

在设计呼叫流程控制与转换软件之前,先了解一下ISDN终端通过网关对SIP终端的呼叫模型。


从模型中,我们知道ISDN信令与SIP信令之间的一一对应关系,因此在网关软件中需要在实现ISDN协议(Q931、Q921)、SIP协议的基础上设计综合处理软件来实现协议的转换控制。在Vxworks软件设计中,采用不同的任务来实现相对独立的各个功能。本软件系统中定义的任务如下:


Q931Task():ISDN信令中Q931协议任务,实现标准的Q931协议。

Q921Task():ISDN信令中Q921协议任务,实现标准的Q921协议。

IHDLTask():综合处理任务,实现ISDN信令与SIP信令的转换、控制。

eXosipTask():SIP协议处理任务,实现标准的SIP协议,本系统中通过eXosip协议栈和Osip2协议栈来实现。

QmcSendTask():ISDN信令物理层协议实现,HDLC发送任务。

QmcRcvTask():ISDN信令物理层协议实现,HDLC接收任务。


在软件中还定义了一些其它的任务,比如用于定时的任务等,各任务之间通过消息队列进行通信。其中ISDN信令Q931和Q921任务、SIP信令任务均按照协议定义的通信流程设计,物理层协议的两个任务功能只是简单的接收和发送处理,因此在此不多做介绍。


4.结束语

本文提出了一种基于MTCA架构的ISDN接入网关的设计,给出了系统软硬件的结构。该系统利用MTCA这种小型化、开放性的平台架构,可广泛应用在各种多业务接入系统中。目前该网关已应用于某单位的含Pstn、ISDN、E1等多种业务MTCA接入平台中,与常见的电信平台相比,其体积小、成本低,安装使用方便。