背景技术
传统的通讯系统中,如程控交换机、移动通讯领域的各种交换机、智能
网相关设备等,对语音数据的加载通常是通过在相应硬件的音单元上通过一
个硬件插座接口,由外部程序控制写入或者通过烧录器把语音数据烧录进语
音芯片。这种方式要求音单元脱离通讯系统工作环境,而通讯系统在电信行
业中往往要求不中断正常业务,在线编辑加载语音,传统语音加载方法仅适
合于实验室中使用,不方便批量生产,无法实现通讯系统在运营过程中用户
对语音数据的在线更新需求,因此传统的加载方法在实际使用中受到很多限
制,并且导致通讯系统在运营过程中运营成本的增加。
由于传统加载方法的缺陷,后来也出现了有关语音动态加载的发明,如
申请号为“01112891.7”的中国专利申请中公开了一种在智能网上实现业务语
音动态加载的方法及其系统组网,该发明在智能网上通过设定加载条件、配
置文件来确定加载内容,实现了业务语音动态,解决了部分传统加载方法的
缺陷。
但是,在通讯系统中,大部分的业务语音和基本语音等是不会经常发生
改变的,往往是一种新业务的开展需要增加一到几种新的语音,或者需要对
某一条或某几条语音数据进行更新甚至删除,相比整个语音数据来讲,只是
需要进行很小部分的语音数据的变化。采用这种方法虽然可以重新设定加载
条件、配置文件来重新设定加载内容,但会造成绝大部分语音数据的重复加
载。现在随着通讯系统业务种类的不断增多,提供的语音数据相当丰富,总
的语音数据非常庞大,往往达到几十兆字节甚至上百兆字节,而需要更新或
增加删除的常常只是其中几十或几百K字节,如果采用上述发明专利申请的
方法,根据设定加载条件、配置文件来确定加载内容方法,需要对整个语音
文件进行重新加载(包括绝大多数未修改的语音),往往造成加载时间长,
占用系统资源多,容易出现中断等缺点,比如采用64Kbit/S的HDLC链路来
加载,加载64Mbyte的语音需要2-3小时。
发明内容
本发明所要解决的技术问题是提出一种通讯系统中语音数据的加载方
法,在加载修改后的语音文件时,只需要加载变化部分的业务语音。
为了解决上述技术问题,本发明提供了一种通讯系统中语音数据的加载
方法,包括以下步骤:
(a)在用户界面管理中生成新的语音文件,在该文件中记录每条语音
数据的首尾地址,以及是否修改过的标志;
(b)用户界面管理接收到加载请求后,依据修改标志从所述语音文件
中找出修改过的语音,根据其首尾地址确定语音数据有变化的数据块及其块
号;
(c)用户界面管理把有数据变化的数据块加上块号分装成链表,将此
语音数据发往各个主处理机控制处理器;
(d)各主处理机控制处理器再将所述语音数据转发给各个语音控制单
元;
(e)各语音控制单元收到数据后,核对块号并按照块号对原语音文件
的数据块进行替换。
上述方法可具有以下特点:所述步骤(c)中,用户界面管理向各个主
处理机控制处理器发送语音数据时,采用并行方式同时加载,或者采用串行
方式依序加载。
上述方法可具有以下特点:其特征在于,所述步骤(d)中,各主处理
机控制处理器向各个语音控制单元转发所述语音数据时,采用并行方式同时
加载,或者采用串行方式依序加载。
上述方法可具有以下特点:所述步骤(a)中,是按照语音的序号将每
条语音数据的首尾地址记录在所述语音文件文件头的地址存放区,而将每条
语音是否修改过的标志记录在该文件头中地址存放区后的修改标志区中,在
所述步骤(c)中,所述有数据变化的数据块包括文件头所在的数据块和语
音数据有变化的数据块。
上述方法可具有以下特点:所述步骤(d)中,各主处理机控制处理器
还向所述用户界面管理反馈加载进度和结果。
综上所述,采用本发明语音数据的加载方法,不但可以实现语音的在线
加载,而且除第一次需要全部加载外,以后通信系统在运行过程中对一条到
多条语音进行更新、增加、删除时只需要加载变化部分的业务语音,克服现
有语音加载技术存在的加载时间长,占用系统资源多,容易出现中断等缺点。
同时本发明还支持串行和并行加载方式,特别是并行加载,在目前通讯系统
中往往有多个MCP的情况下,实现了对多个模块的语音同时控制加载,大
大提高了系统的效率,对生产和以后系统的维护都非常有利。
具体实施方式
通讯系统运行需要多种业务通知音、用户通知音、多种智能业务音以及
拨号音忙音等固定音,通讯系统音资源的操作、管理和维护在整个通讯系统
结构中处于公共资源的维护位置。本发明通过用户界面管理(UIM,User
Interface Management)、主处理机控制处理器(MCP,Main Control Processor)
以及语音控制单元(TCU,Tone Control Unit)共同实现语音数据在线加载,
把语音数据发送到指定的语音控制单元上。
UIM主要供操作员通过图形界面进行录音、播放、编辑、修改、生成约
定格式的语音文件以及实现语音文件的统一管理。图1是本发明用户界面管
理中语音编辑模块的结构示意图,如图所示,操作员在用户界面管理中通过
图形界面,可以方便地对新录语音、外部语音和语音文件中的语音等多种音
源进行修改剪辑,替换语音文件中的语音,生成约定格式的新语音文件。语
音数据的加载过程也是在用户界面管理中通过人机界面交互控制完成的。
图2是本发明实施例语音数据加载的组网图,体现了UIM、MCP及TCU
之间的控制逻辑,如图所示,UIM控制一个或多个MCP,每个MCP又可控
制多个TCU,UIM与TCU的交互需要通过MCP转发。
UIM与MCP之间通过TCP/IP协议通信,UIM与每个MCP通过滑窗控
制协议实现流量与差错控制,确保语音文件的正确传送。根据需要,在加载
语音数据时,可以在UIM中设定UIM对多个MCP是轮流加载还是同时加
载,还可以设定每个MCP对所属的多个TCU是轮流加载还是同时加载,轮
流加载即串行加载,同时加载即并行加载。通过图中的两级控制方式,可以
灵活地实现对MCP和TCU的串行或并行加载,当两级都设定为并行加载时,
将大大提高系统的整体效率,这对于MCP数目以及TCU数目多的较大的通
讯系统尤其明显。在加载过程中,MCP将加载进度和结果反馈给UIM,操
作员也可通过UIM终止加载进程。
通讯系统的音资源存放在TCU中,通讯系统一般在开通之初只加载通
讯系统运行所必需的音资源或者所有默认的音资源,但在实际运行的过程中
常常根据用户需要或新业务的不断拓展,需要增加、删除、修改更新某条或
某几条业务语音。为了实现语音数据的指定加载功能,在加载一条或多条更
新、增加或删除部分的语音数据时不破坏其他部分的语音数据,语音数据在
TCU中必须按约定格式存储,并且采用相适应的加载流程。
在TCU中保存的是整个通讯系统各种业务所需的所有音资源,本发明
实施例中,存放在TCU中的音资源并不是由单条的语音简单累加顺序存储,
而是按照约定的格式存储,语音文件的存放格式如图3所示,分为文件头和
数据块两部分,在文件头中约定本语音文件中最多可以录制的业务音数量n,
又分为地址存放区和修改标志区,在地址存放区中顺序存储了序号1到序号
n的语音的首尾地址,表明该条语音的数据在语音文件中的存放位置。紧跟
着的修改标志区中存储了序号1到序号n的语音的修改标志,表明本次生成
的语音文件中该条语音的数据经过修改还是未经修改。整个文件头后面的数
据块中存储的才是真正的语音数据。
本实施例中,单条音的长度没有限制,除了固定长度的文件头外,后面
对应的每个序号的语音数据块长度根据实际存放的语音有多长是多长。语音
文件不采用紧凑的存储方式,因此语音文件也不是定长的,但语音文件的总
长度受到TCU中存储器容量的制约。例如,音单元存储器容量为32M时,
语音文件存放空间的大小为32×1024×1024字节,将语音的的前128K留作文
件头,128K以后的部分用作存放语音数据。数据块的大小取文件头的大小,
即为128K,包括文件头在内的数据块也按序编号。通过修改标志找到修改
过的语音后,结合这些语音的首尾地址,就可以知道哪些块号数据块中的语
音数据有变化。
由于语音数据在TCU中是通过文件头来组织的,就可以对各条语音的
数据有选择性地进行存储。当系统在运营的过程中有新业务开展,需要增加
或修改一条或多条业务音数据时,按图4所示的本实施例语音数据的加载流
程就可以实现语音数据的指定加载,包括以下步骤:
步骤100,在UIM中生成新的语音文件,在该文件的文件头中记录每条
语音数据的首尾地址,以及是否修改过的标志;
步骤110,接收到加载请求后,UIM依据修改标志从语音文件中找出修
改过的语音,根据其首尾地址确定有语音数据变化的数据块及其块号;
步骤120,UIM将文件头和有语音数据变化的数据块加上块号分装成链
表,将此语音数据以并行加载方式同时发往各个MCP;
步骤130,各MCP再以并行加载方式将语音数据同时转发给各个TCU,
同时向UIM反馈加载进度和结果;
步骤140,各TCU收到数据后,会核对块号并按照块号对原语音文件的
数据块进行替换。
在步骤130中,对TCU的加载是由MCP控制的,根据UIM中发来的
加载链表信息,在采用并行加载方式时,将加载配置链表中的信息放入并行
加载数组中,开始并行加载。如果选择串行加载,MCP就按照链表中的顺序
依次加载,每加完一个TCU从链表中删除此节点,直到链表为空。
综上所述,采用本发明语音数据的加载方法,除第一次需要全部加载外,
以后通信系统在运行过程中对一到多条语音进行更新、增加、删除时只需要
加载变化部分的业务语音,克服现有语音加载技术存在的加载时间长,占用
系统资源多,容易出现中断等缺点,例如,64M byte的语音如果只有256Kbyte
语音发生变化,同样采用64Kbit/S的HDLC链路来加载,其加载时间将缩短
到1分钟内,大大提高效率,有利于系统的稳定。
同时,本发明可以实现每个MCP语音加载的分别控制,还支持串行和
并行加载方式,特别是并行加载,通过UIM对MCP的语音加载的控制,在
目前通讯系统中往往有多个MCP的情况下,实现了对多个模块的语音同时
控制加载,大大提高了系统的效率,对生产和以后系统的维护都非常有利。