基于STLC1502处理器实现IP电话呼叫的应用设计

电子说

1.3w人已加入

描述

STLC1502是基于ST公司的专用于开发VoIP相关产品的处理器,是集成了ARM7和D950的双核芯片。普通双音频电话机可通过以STLC1502为核心的VoIP小型用户网关接入Internet,实现IP电话呼叫。

概述

随着2000年互联网泡沫的破灭,IT近几年徘徊在低谷,复苏艰难。然而VoIP(voice over internet protocol)技术带来的冲击波却在不断增强。VoIP又叫IP电话,泛指在以IP为网络层协议的计算机网络中进行话音通信的系统,即在IP网上传送话音。传统的电话网以电路交换方式传输语音,所要求的传输带宽为64kbit/s,且通话时独占电路,通信费用昂贵。VoIP以IP分组交换网络为传输平台,对模拟语音信号进行压缩,打包等一系列的特殊处理,使之可以采用费用低廉的IP数据网进行传输。对端从IP网上接收数据后,再把它还原成话音,实现通话。随着计算机网络的发展和日益普及,VoIP无论是研究和应用都日益趋热,VoIP市场前景广阔。特别是随着最近宽带接入的兴起,网上多媒体应用越来越多,基于IP网络提供包括语音,数据与视频等在内的综合多媒体通信服务,将成为VoIP领域的下一关键性应用。因此,各VoIP的厂家推出了很多相关产品。除了各大VoIP厂家的电信级IP电话产品外,其中最常见的产品还有小型用户网关和IP电话终端。

本文采用STMicroelectronics(意法)公司专门用于用户级VoIP产品开发设计而推出的STLC1502双核处理器芯片,配合添加相关外围芯片后,设计了一种VoIP小型用户网关产品。普通电话机通过该网关接入Internet,可实现IP电话呼叫。

STLC1502处理器

STLC1502是ST公司专用于快速设计开发IP电话和模拟网关设备的高性能VoIP处理器,具有非常丰富的便于开发小型用户网关设备的接口。该处理器是双核芯片,内部集成了低功耗D950DSP和ARM7/TDMI 微处理器,以及两个10/100M以太网媒体接入控制接口(MII:media independenti nterface),还包含了方便测试和调试的JTAG接口(ARM和DSP各一个)。下面将分别介绍ARM7微处理器和D950DSP的部分。

ARM微控制器部分

基于ARM7TDMI处理器核,并具备丰富外围接口的多总线微处理器系统,主要完成整个系统的控制功能和与外围设备的通信,具有以下特性。

(1)60MHz频率。

(2)系统总线基于高级微控制器总线结构(AMBA),包括两条独立的总线:连接高性能系统模块的高性能总线(AHB)和连接低功率外围设备的高级外设总线(APB)。

(3)高速32位数据总线,连接外部存储器。外部程序存储器和外部数据存储器共享数据总线,方便系统存储器的扩展。

(4)16K×32bit内部ROM,可存储系统启动代码。

(5)两个MII接口,与以太网收发器相连,可构成两个RJ45以太网口。

(6)具有内部控制硬件负责管理两以太网端口数据帧的交换和网络数据流的收发处理。

(7)SPI(serial peripheral interface)串行外围接口,可以控制所连接的语音编码器CODEC。与它相兼容的语音编码器有STW5093、

STLC5046、 STLC5048等。这是标准的SPI端口,所以除了可连接CODEC,还可以是其他外设。

(8)IIC端口。连接存储有启动程序和配置数据的串行EEPROM。在IP电话设备中,可连接LCD。

(9)GPIO(通用IO)单元作为可选功能,可作为6×6键盘矩阵的接口。

(10)UART端口,可连接主机终端。启动时,代码可通过UART下载。

(11)主处理器接口(HPI),可直连一个外部控制处理器。接口直接和MotorolaMPC850外部总线兼容。

DSP部分

STLC1502内部集成有基于D950核的DSP处理器,可专用于音视频多媒体数据的处理,它的特点如下,

(1)运行频率100MHz,120MIPS。

(2)哈佛结构,独立的指令总线和数据总线,分别访问程序存储器和数据存储器。

(3)内含48k×16程序ROM,存储基本系统管理代码和标准语音编解码代码+16K×16程序RAM;48K×16数据RAM。

(4)内含4k×16大小的DPRAM(双端口RAM),分别和ARM处理器和DSP相连,作为ARM7和D950之间的通信信箱,控制信息和语音分组经

DPRAM交换,还可经DPRAM,DSP从ARM侧下载任选的语音编解码算法。

(5)PCM总线接口,用于与语音编码器CODEC相连。

(6)JTAG和仿真端口,用于系统软硬件测试。

小型VoIP用户网关的设计

下面给出基于此芯片的小型VoIP用户网关设计方案。

VoIP小型用户网关

随着VoIP应用的日益广泛,宽带接入的兴起,IP电话从主干长途网向本地市话网延伸,利用已有的数据IP网,在数据网的网络接口接上网关,普通电话与网关连接,即可通过该网关实现IP电话通信,节省电话费用支出,而且网关配置、组网、使用灵活方便。小型用户网关产品有很大的市场需求,其一端上联到IP网的以太网口,一般有一个到两个网络RJ45接口+一端接模拟电话或PBX(用户电话交换机),可以有2~4个模拟电话接口。或者网关内含本地交换功能,直接实现网内部电话的交换。

用户网关在VoIP网络应用的网络结构示意图如图1所示。

处理器

图1 网络结构示意图

各个VoIP网关可经IP网实现彼此的呼叫,从而接通电话。图中的电信级VoIP网关是IP网和传统PSTN电话网的互连设备,常由电信运营商来维护和管理。

网关硬件系统

以STLC1502作为主处理器,外围配置语音编码器CODEC芯片、电话机用户环路接口(SLIC)芯片、以太网收发器芯片等即可构成VoIP网关硬件系统。

&nbs p; 系统主要包括主处理器模块、语音编解码器CODEC模块、用户线接口电路SLIC模块、以太网接口模块(外扩存储器模块,RS232串口,用于和主机相连,主机通过串口可配置系统,系统硬件框图如图2所示,该用户网关具有以下的功能。

(1)对外提供4个RJ11普通电话机接口和2个RJ45以太网接口,

(2)普通话机通过该网关直接连入IP网。实现IP电话通信,

(3)在IP网上的话音终端也可直接拨打网关侧的4个普通话机,

主处理器模块

集成了ARM7和D950的双核STLC1502处理器。ARM7控制整个系统的运行。以及和IP网的连接。D950处理语音数据,编码PCM的语音数据,而后交给ARM7,经以太网接口传送出去;反之,ARM7从IP网接收到编码的语音数据包后,把它交给D950,解码为PCM语音数据流,,经 CODEC和SLIC电路后还原成模拟话音送到普通电话机。

语音编解码器CODEC

采用ST公司的STLC5046芯片,STLC5046是单芯片可编程4通道CODEC。连接4块SLIC电路。可完成四路用户电话信号的PCM编解码。 通过对它内部41个工作寄存器的配置。可设置不同的工作参数。如TX/RX增益、编码率(A/η)、时隙分配、独立开闭各话路的电源。参数设置有两种方式:通过芯片控制引脚的静态设置和经由主处理器MCU配置。本方案采用主处理器STLC1502通过SPI接口来设置CODEC的工作参数。

用户线接口电路SLIC

采用STLC30R80。是单芯片SLIC电路。具有B(馈电:直流-48V)+O(过压保护)、R(振铃控制)、S(用户线回路状态监视)、H(2/4 线交换的混合电路)、T(测试电路)功能,集成了铃流信号和标准DC电源供给。SLIC电路是网关设备与电话终端的接口电路,本方案设有四块SLIC芯片、四个RJ45接口。四块STLC30R80SLIC芯片和一块STLC4056CODEC芯片相连接。

以太网接口模块

主处理器芯片STLC1502有两个MII总线接口,分别连接以太网收发器芯片STE100,再通过连接变压器后,形成两个RJ45以太网插口。

片外扩展存储器

片外扩展两块8M字节的HY57V6532200BSDRAM动态存储器,4MB的静态Flash存储器,与IIC接口相连的256kbitEEPROM。

以上各部分模块都在一块电路板上实现,主要芯片都选择了ST公司的芯片,使得系统具有高稳定性,兼容性好。这样,通过简单的无缝连接就完成了VoIP网关硬件系统。

软件部分

软件部分分为操作系统支持、网络接口、VoIP信令协议、语音编解码处理和用户应用配置五大模块,以美国Windriver公司的VxWorks为操作系统。VxWorks是实时操作系统。实现高效的任务调度管理,BSP(板级支持包)作为硬件和软件的接口。在系统工作之前初始化硬件,VxWorks还包含了TCP/IP协议栈。在其上可方便地实现网络应用程序。本方案以H.323作为VoIP协议,实现呼叫的建立和控制。DSP的语音编解码算法是软件的核心,关系到通话语音质量的好坏。语音编码符合G.711、G.723.1标准,软件部分各模块层次结构如图3所示。

应用开发注意事项

系统时钟

系统基准时钟可由固定的外部25MHz晶振/振荡器提供,内部PLL(锁相环)提供产生独立的100MHzD950和60MHzARM7时钟,这样就简化了外部时钟电路的设计。

处理器

图2 小型VoIP网关硬件框图

处理器

图3 软件部件各模块层次结构图

存储器配置ARM存储器

内部ROM。存储系统启动代码bootloader,启动代码轮询串行外设(IICEEPROM)UART串口。和HPI,从外部下载应用程序到系统。下载后,系统控制权交给该外部程序。可扩展四种类型的外部存储器,Flash、SRAM、DRAM(SDRAM或EDO)和串行EEPROM。其中 Flash、SRAM和DRAM共享32bit数据总线和32bit地址总线,串行EEPROM可通过IIC总线连接。我们扩展了16M的SDRAM、 4M的Flash和256k的EEPROM、SDRAM和flash和系统数据、地址总线相连,EEPROM连接到IIC。

系统也可从Flash或串行EEPROM启动,这由处理器BOOT_SEL引脚选择。有以下几种存储器配置方式:

(1)Flash,SDRAM,包含BOOTP和TFTP的启动码存放在Flash.应用程序或者也存放在Flash,或者可通过以太网或UART下载到SDRAM。

(2)EEPROM,SDRAM,内部ROM启动内部ROM启动代码启动后,载入存放在EEPROM的BOOTP和TFTP代码。应用程序经以太网或UART串口下载到SDRAM。

(3)Flash,SDRAM,EEPROM,就如方案1,但是更灵活。EEPROM可用于存储网络参数(MAC地址。和其他特定的板级参数数据,所以 Flash不需要再分成永久存储区和可升级存储区。通过保存在EEPROM的写flash程序,也可把经以太网络口下载的代码写到flash,便于用户更新定制应用程序。

(4)SDRAM,从内部ROM启动。应用程序经HPI接口从主机下载。经由不同的片选,选择不同的外部存储设备。32bit的数据总线可选择以 16bit或8bit位宽访问外部存储单元。例如,Flash可选择为16bit访问,DRAM可选择32bit访问。三个片选供选择三个静态存储器(每个4MB),四个片选选择动态存储器(每个8Mbyte)。

DPRAM

在ARM的APB(advanced peripheral bus)总线和DSP数据总线之间接有2k×16的双端口RAM(DPRAM),能被ARM7和D950访问,作为ARM7和D950之间相互通信的邮箱,交换数据或控制信息。在ARM7侧,DPRAM地址映射起始为0x0C180000。而在D950侧,DPRAM起始地址为0x8000。

DSP存储器

DSP内有三条存储器总线,I+X和Y。I是指令存储器总线,X和Y是数据存储器总线。存有DSP系统代码和编解码算法代码的程序ROM和程序RAM接在I总线,数据RAM接在X或Y总线上。

ARM和DSP之间数据交换

2k×16的双端口RAM共16个邮箱,被分成两组,每组8个邮箱。前8个邮箱用于ARM7传送信息给D950,剩下的8个邮箱用于D950传信息给 ARM7。每组中的8个邮箱,4个用于传送控制信息,4个用于数据信息。本文基于STLC1502处理器的VoIP网关支持四路双向语音通道,因此每路单向话路配置1个控制邮箱和1个数据邮箱。

本文设计了一款基于ST公司的专用于VoIP相关产品开发的STLC1502处理器的小型VoIP用户网关。把该网关连接到以太网上,普通双音频电话和该网关连接,与处于同一局域网上的基于PC的H.323VoIP软件电话通话,实验结果良好。在此网关方案的基础上,稍作修改,如在STLC1502的通用 I/O口上添加接键盘,在IIC总线上再接一LCD液晶显示屏,CODEC换作具有话筒和话筒接口的STW5093芯片,即 可实现VoIP可视电话硬件系统。软件添加视频编解码程序后,可实现VoIP可视电话。由此可以看出,基于STLC1502,可快速简便地开发出VoIP相关用户产品。

责任编辑:gt

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分