一种用DSP实现的VoIP模拟电话适配器的制作方法

文档序号:7966758阅读:290来源:国知局
专利名称:一种用DSP实现的VoIP模拟电话适配器的制作方法
技术领域
本发明涉及VoIP(VoIP: Voice over Internet Protocol,因特网协议语音)模拟电话 适配器,特别涉及一种仅用单DSP (Digital Signal Processing,数字信号处理器)实 现的VoIP模拟电话适配器。
背景技术
电话是人们最重要的日常通信工具。过去,电话通信是通过电路交换网络,如 PSTN (Public Switched Tel邻hone Network,公共交换电话网)。现在,随着计算机 网络的发展,已经有相当一部分电话通信是通过包交换网络,如IP(Internet Protocol) 网。使用IP电话,主要有以下三种方式。 一种方式是在计算机上安装VoIP终端软 硬件设备,接通计算机网络,拨打IP电话,这就需要一台计算机,显然不便于随时 使用。再一种方式是通过VoIP网关,用户使用IP电话卡打电话就属于这种方式, 但这种方式没有完全发挥VoIP节约带宽、降低成本的优势。还有一种方式,就是使 用IP电话终端设备,直接通过LAN (Local Area Network,局域网)、xDSL (Digital Subscriber Line,数字用户线路)或者其他方式,接入因特网,利用计算机网络通话。IP电话终端,大致可以分为分立和集成两种形式。分立形式,就是普通电话机 通过RJ11接口 ,连接VoIP模拟电话适配器(ATA: Analog Telephony Adapter),再由 适配器接入因特网。集成,就是将普通电话机与ATA集成到一台设备,形成IP电 话机。二者只是形式不同,原理相同。目前,VoIP ATA系统普遍采用CPU (Ceter Processing Unit,中央处理器)/MCU (Micro Control Unit,微控制器)+08 (数字信号处理器),外围辅以各种存储器和 接口设备的设计。也有已知的模拟电话适配器采用带多媒体信号处理指令增强的 CPU或者双DSP。在CPU/MCU+DSP的设计里,CPU/MCU负责网络通信、人机交 互和系统状态等控制功能,而由DSP负责语音数字信号的实时处理。现有技术的不足在于虽然采用CPU/MCU+DSP的设计符合两种处理器的功能 特征,但其缺点是不仅系统复杂,成本较高,浪费处理器资源,双处理器通信困难,
编程繁琐,而且存在功耗大等问题。 发明内容本发明的目的是克服现有技术存在的系统复杂,成本较高,浪费处理器资源, 功耗大等不足,提供一种仅用单DSP实现的VoIP模拟电话适配器。一种用DSP实现的VoIP模拟电话适配器,如图1所示,其特征在于,包括一数字信号处理器(DSP) 11;与该数字信号处理器11连接的复位逻辑电路12、时钟控制逻辑电路13、用户线接入控制电路14、 JTAG (Joint Test Action Group, 联合测试行动小组)接口 15、主机接口 16、网络接口控制器17;与所述数字信号 处理器11的外部存储总线相连接的外部程序存储器18和外部数据存储器19。在上述技术方案中,还包括所述网络接口控制器17与一个网络接口连接,用于 连接到因特网。所述网络接口为RJ45接口。在上述技术方案中,还包括所述主机接口 16与一USB适配器连接,用于连接 主机,进而从主机接受接收数据,用于系统升级或数据修复等。在上述技术方案中,所述用户线接入控制电路14包括一RJ11接口,用于连接 到模拟电话机或传真机等。在上述技术方案中,所述外部程序存储器18为FLASH RAM(闪存),所述外部 数据存储器19为SRAM (静态随机存储器)。在上述技术方案中,所述网络接口控制器是支持ISA总线的网络接口控制器。在上述技术方案中,该适配器的软件系统机构自上而下分为硬件驱动层、实时 操作系统层、网络协议层、应用程序层;该适配器的软件系统按功能模块划分包括-实时操作系统模块,支持软交换和终端之间的控制协议模块,实时话音通话模块, 网络接口模块,用户线接入控制模块,配置和升级模块,交互语音应答功能模块; 该适配器根据不同功能模块程序的执行特点来分配数字信号处理器11的片内和片 外程序和数据的存储空间,为有效合理的利用片上有限内存,所述数字信号处理器 11的片上RAM分为独占区和共享区。与现有技术相比,本发明的优点在于-本发明采用单DSP实现VoIP模拟电话适配器,降低了系统复杂度,降低了成 本,减小了功耗;同时,本发明是对DSP的新应用;而且,单DSPATA系统相对 于双处理器解决方案,只需要一套开发调试工具,节省了开发成本。


图1是本发明适配器的系统硬件结构示意图; 图2是本发明适配器的系统软件架构示意图; 图3是本发明DSP片上内存共享存储区刷新过程流程图。
具体实施方式
下面结合附图和具体实施方式
对本发明作进一歩详细描述参照图1所示,本系统硬件架构包括数字信号处理器ll;与该数字信号处理 器(DSP) 11连接的复位逻辑电路12、时钟控制逻辑电路13、用户线接入控制电路14、 JTAG接口 15、主机接口 16、网络接口控制电路17;与所述数字信号处理 器11的外部存储总线相连接的外部程序存储器18和外部数据存储器19。所述网络 接口控制器17与一个RJ45接口连接,用于连接到因特网络。所述主机接口 16与 一USB适配器连接,用于连接主机,进而从主机接收数据,用于系统升级或数据修 复等。所述用户线接入控制电路14包括一RJ11接口,用于连接到模拟电话机或传 真机等。所述外部程序存储器18为FLASH RAM (闪存),所述外部数据存储器19 为SRAM (静态随机存储器)。所述网络接口控制器是支持ISA总线的网络接口控 制器。该适配器的软件系统机构自上而下分为硬件驱动层、实时操作系统层、网络协 议层、应用程序层;该适配器的软件系统按功能模块划分包括实时操作系统模块, 支持软交换和终端之间的控制协议模块,实时话音通话模块,网络接口模块,用户 线接入控制模块,配置和升级模块,交互语音应答功能模块;该适配器根据不同功 能模块程序的执行特点来分配数字信号处理器11的片内和片外程序和数据的存储 空间,为有效合理的利用片上有限内存,所述数字信号处理器n的片上RAM分为 独占区和共享区。本发明中DSP是系统的核心,通过一套外部存储器接口总线,与网络接口控制 器(NIC: Network Interface Controller)和外部存储器进行通信,外部存储器包括外部 程序存储器和外部数据存储器。存储器按物理位置,分为内部存储器和外部存储器。DSP的内部存储器,其访 问周期短,程序执行效率高,但空间小、成本高。外部存储器主要功能,是补充程
序和数据存储空间的不足,外部程序存储器18使用FLASH,外部数据存储器19 釆用SRAM。同时由FLASH在系统掉电时,保存代码和数据。为了节约使用处理 器的片选信号和简化外部电路,本适配器使用一块SRAM作外部数据空间, 一块 FLASH既作为掉电存储器,也作DSP的外部程序空间。NIC是ATA系统与因特网络的接口,主要完成在物理层和媒体访问控制(MAC) 层的通信任务。本发明选用支持ISA总线的NIC。因为DSP可以按照存储器的访问 方式来访问该NIC,便于系统的硬件设计。NIC的数据总线宽度主要有8位、16位 两种。本发明可以完全兼容这两种模式。在硬件设计上,只要DSP有一个16位接 口,可以用低8位来连接8位NIC数据接口,对16位NIC的数据接口直接连通。 在NIC的驱动上,对MAC(Media Access Con加l)帧采用16位数据结构。这样,对 于16位NIC, MAC帧在系统内存与在NIC内部缓存的格式完全一致,而对于8位 NIC, MAC帧的每个字节在系统内存里设计成占用16位的低8位,这样就可以兼 容8位/16位两种NIC模式。这也解决了 DSP不能支持单字节数据访问的问题。DSP 与NIC的数据接口使用一个DMA通道来提高系统效率。本发明利用用户线接入控制器14(:SLIC: Subscriber Line Interface Controler)通过 RJ11接口连接普通的模拟电话机和传真机,传递话音和DTMF等各种模拟信号。 本发明的音频应用数字信号处理器11和SLIC都带有全双工同步串行接口(SSI),支 持时分复用。在物理层通过SSI,在DSP与SLIC之间全双工地传送数据,把DSP 的两条DMA通道连接在内存和同步串行接口之间,分别进行数据收发,串行同步 总线上就会有连续且同步的帧同步信号和位时钟信号,从而能够为SLIC提供可能 需要的时钟信号;在链路层,通过一定字节数的缓冲区,实现全双工通信。对于SLIC 的控制接口,本发明使用处理器ll的PIO信号来连接,通过驱动程序控制每条PIO 的时序逻辑,从而监控SLIC的工作状态。数字信号处理器11 (DSP)带有JTAG和主机接口(HPI: Host Processor Interface)。 利用HPI接口来更新FLASH保存的内容,可以用于系统升级,也可以在FLASH内 容遭到破坏时,进行修复。本发明软件按功能模块划分包括实时操作系统模块,支持软交换和终端之间的 控制协议模块,实时话音通话模块,网络接口模块,模拟电话机接口SLIC (用户线 路接口电路)模块,配置和升级模块,IVR (交互语音应答)功能模块。主要包括以 下四个任务主控任务,负责控制系统工作状态;SIP (会话初始协议)通信任务,负责适配器在SIP协议层上的通信;网络数据报接收处理任务,负责在链路层接收 数据报,并按照计算机网络协议逐层处理,将网络上传来的有用信息提交给相关任 务;话音处理任务,负责远端话音数据的接收、解码、播放,和本地话音数据的采 集、编码、发送。本适配器的系统软件采用了分层模块化的体系结构,整个软件自 下而上分为了硬件驱动层、实时操作系统层、网络协议层、应用程序层,各层软件 具有明确的功能划分,相互协同配合实现系统所需功能,软件架构如图2所示。本发明采用以一个通用DSP为核心的架构,相对于流行的MCU+DSP的架构, 能够减小系统规模,降低成本。但是相对系统的多种功能需求,单DSP处理器的计 算能力和外围扩展能力却十分有限。本发明除了话音编解码工作,还有大量控制和 通信协议处理工作,而且程序和数据规模超过了普通单DSP系统。有效合理的利用 系统的内存和外存空间,是使本发明具有低成本,低功耗成为可能的关键。本发明对 系统中程序和数据在片上内存和片外内存进行优化分配,并提出一种状态补偿片上 内存部分动态覆盖上下文共享方法。对于在低功耗,内存小的单DSP上实现VoIP 模拟电话适配器具有普遍的应用价值。下面进行详细说明1.内外存优化分配本发明是一种实时通信终端,要保证实时通话的正常交互性,就要保证分组话 音的收发和话音编解码的实时性、用户操作的实时响应,因此,对适配器的运行速 度要求较高。本适配器中外部程序存储器(FLASH)、外部数据存储器(SRAM)、网络 接口控制器(NIC)连接在数字信号处理器11的外部存储总线,DSP与这三个设备的 通信皆通过此一套外部总线,构成系统运行瓶颈。为了满足系统实时性要求,必须 充分利用处理器片内存储器,尽量减少DSP的外部存储总线上的通信量,减少DSP 取指和取数的等待周期,充分发挥DSP的效率。为此,本系统根据不同功能模块程 序的执行特点,采用静态和动态相结合的方法来分配片内外存储空间。具体原则如 下1) 将速度要求高的软件模块,分配到片上内存。本发明中为实时操作系统及任 务模块、中断服务例程,NIC驱动模块等;2) 将执行频繁的软件模块,分配到片上内存。本发明中为常用计算机网络协议 如RTP (实时传输协议)、UDP (用户数据报协议)、IP (因特网协议)、PPPoE (以 太网点对点拨号协议)处理程序等;3) 对于响应速度要求低,或者较少调用的软件模块,分配到片外内存。本发明
中这些模块为各个外设模块的初始化程序代码,SLIC驱动程序,SIP协议栈代码, TCP (传输与控制协议)、HTTP (超文本传输协议)、DHCP (动态主机配置协议)、 ARP (地址解析协议)程序等。4)根据系统运行需求动态调整具有时间互斥性功能模块的存储空间。例如,本 系统中网页配置模块和语音编解码模块不具备同时执行的条件,即当用户之间进行 语音通话时,不能进行终端的网页配置功能,而当用户正在进行网页配置时,不能 建立通话连接,这两个功能模块在时间上就具有时间互斥性。本发明将映射到不同 外存地址空间的具有时间互斥性的软件功能模块在其运行时都链接到相同的片内内 存空间运行,有效的解决了单DSP方案中的内存空间有限问题。2.状态补偿片上内存部分动态覆盖上下文共享方法;现有技术中,对于数字信号处理器的片上内存的分配方法主要有两种。第一种 是模仿硬件高速缓冲存储器的软高速缓存方式。程序中插入指令检査软维护的高速 缓存标签。如此,在运行时间、代码量、功耗和标签占用内存空间上引入了大量消 耗,实时性差。第二种方法是在编译过程中完成片上和片外存储空间使用的静态分 配。这种静态分配方法的一个缺点是它们不适应程序的动态行为特征。本发明采用 一种状态补偿片上内存部分动态覆盖上下文共享方法,能够根据任务的实时状态, 优化嵌入式多任务系统中程序和数据存储对象在片上内存和片外主存间的实时分 配,相对普通片上内存部分动态覆盖上下文共享方法,能够进一步显著减小存储接口的瓶颈效应,提高系统工作速度,同时减小功耗。具体实现如下将数字信号处理器11的片上内存分为独占区和共享区。片上内存的共享区间由 多个任务的部分程序时分共享。实时操作系统,中断服务例程,负责控制系统运行,且执行频率高,保存在DSP的片内存储器。片内指令存储器上主要保存着主控任务、 分组话音通信任务、协议栈相关任务三个部分。分组话音通信任务和协议栈相关任 务不具有时间互斥性,优先级不相同,协议栈相关任务的优先级高于分组话音通信 任务,因为分组话音通信任务具有明显的状态特征,且根据优先级原则,协议栈相 关任务使用片上内存独占区,让出共享区。分组话音通信任务与主控任务存在共享 区上时间互斥性,因为初始化部分不会与通话同时进行,可以减少任务切换过程中 程序共享区的刷新工作,所以本系统中分组话音通信任务与主控任务使用片上RAM 共享区。本系统中片上内存共享区存储内容包括初始化程序和三种话音编码程序(G. 729A、 G. 723. 1、 G. 711a/u),根据它们功能上的时间互斥性和系统工作流程中的 可预测性,共享区的内容可以预测下载并在较长时间(相对任务周期)内保持不变, 而不必随任务上下文切换频繁刷新,减少系统负担。本发明DSP片上内存共享区刷新过程,如图3所示,包括如下步骤1、 系统启动,下载在片内内存运行程序,共享区保存初始化程序;2、 下载完毕,开始运行系统的初始化;3、 初始化完毕,系统进入等待状态;4、 开始主叫或者被叫过程,进行SIP协商通信;5、 会话初始过程完毕,并确定会话采用编码标准;6、 分组话音通信任务根据SIP确定的本次会话编码标准,下载对应编解码程序 到片内内存共享区-,7、 开始会话通信;8、 会话完毕,回到等待状态;9、 部分或者全部功能或设置需要重新初始化,主控任务下载初始化程序到片内 内存共享区。本发明中的基于单DSP实现的VOIP模拟电话适配器,系统软硬件结构紧凑高效, 设计合理,功能丰富,运行稳定,成本低,对于在低功耗,内存小的单DSP上实现 VOIP模拟电话适配器具有普遍的应用价值。最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管 参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明 的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均 应涵盖在本发明的权利要求范围当中。
权利要求
1、一种用DSP实现的VoIP模拟电话适配器,其特征在于,包括一数字信号处理器(11);与该数字信号处理器(11)连接的复位逻辑电路(12)、时钟控制逻辑电路(13)、用户线接入控制电路(14)、JTAG接口(15)、主机接口(16)、网络接口控制器(17);与所述数字信号处理器(11)的外部存储总线相连接的外部程序存储器(18)和外部数据存储器(19)。
2、 根据权利要求l所述用DSP实现的VoIP模拟电话适配器,其特征在于,还 包括一个网络接口与所述网络接口控制器(17)连接。
3、 根据权利要求1所述用DSP实现的VoIP模拟电话适配器,其特征在于,还 包括一USB适配器与所述主机接口 (16)连接。
4、 根据权利要求1所述用DSP实现的VoIP模拟电话适配器,其特征在于,所 述用户线接入控制电路(14)包括一用于连接到模拟电话机或传真机的RJll接口。
5、 根据权利要求l所述用DSP实现的VoIP模拟电话适配器,其特征在于,所 述外部程序存储器(18)为闪存,所述外部数据存储器(19)为静态随机存储器。
6、 根据权利要求l所述用DSP实现的VoIP模拟电话适配器,其特征在于,所 述网络接口控制器是支持ISA总线的网络接口控制器。
7、 根据权利要求1-6任一项所述用DSP实现的VoIP模拟电话适配器,其特征 在于,该模拟电话适配器的软件系统机构自上而下分为硬件驱动层、实时操作系统 层、网络协议层、应用程序层;该适配器的软件系统包括实时操作系统模块,支 持软交换和终端之间的控制协议模块,实时话音通话模块,网络接口模块,用户线 接入控制模块,配置和升级模块,交互语音应答功能模块;该适配器根据不同功能 模块程序的执行特点分配数字信号处理器(11)的片内和片外程序和数据的存储空 间,所述数字信号处理器(11)的片上RAM分为独占区和共享区。
全文摘要
本发明公开了一种仅用单DSP实现的VoIP模拟电话适配器,包括一数字信号处理器;与该数字信号处理器连接的复位逻辑电路、时钟控制逻辑电路、用户线接入控制电路、JTAG接口、主机接口、网络接口控制器;与所述数字信号处理器的外部存储总线相连接的外部程序存储器和外部数据存储器。本发明降低系统复杂度,降低成本,减小功耗,节省开发成本。
文档编号H04M11/06GK101132427SQ200610112518
公开日2008年2月27日 申请日期2006年8月22日 优先权日2006年8月22日
发明者叶晓舟, 武 张, 张建东, 曾学文, 朱晓东, 武晓华, 王劲林, 峰 邓, 齐向东 申请人:中国科学院声学研究所;北京中科智网科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1