一种程控交换机中的带内信号发送方法及系统的制作方法

文档序号:7682818阅读:225来源:国知局

专利名称::一种程控交换机中的带内信号发送方法及系统的制作方法
技术领域
:本发明属于通信
技术领域
,具体的说,涉及一种程控交换机的带内信号发送方法及系统。
背景技术
:程控交换机中用到许多带内信号如双音多频信号(DTMF)、局间的多频互控信号(MFC)等;传统的产生这些信号的方法,一般是将信号通过8000Hz采样得出一组N点的数据表(N为采样次数,取值范围为08000,在实际使用中可以根据需要进行设定);将采样得到这些数据存储在中央处理机(CPU)的存储器中,CPU通过每1/8000秒发送一个数据、循环发送的方式,在CPU输出HW(HighWay,高速通路)的特定时隙将数据广播发出。假设有四种频点的信号需要发送,频点分别是fD、fl、f2、f3,则四种信号生成的数据分别如下所示Data0[i]=P0*COS(2、*fD*i/8000)Datal[i]=Pl*COS(2*7i*fl*i/8000)Data2[i]=P2*COS(2*7i*f2*i/8000)Data3[i]=P3*COS(2*7t*f3*i/8000)其中DataOData3分别表示四种信号在采样点i采样得到的数据,P0P3是四个频点所对应的功率,i=0N-l。可以看出,如果有四种频点的信号需要发送,则一共会采样并存储4承N个数据,它们在CPU的存储器中存放的顺序如下表1所示DataO[O]DatalData2Data3DataO[l]Datal[l]Data2[1]Data3[1]DataO[N-l]Datal[N-l]Data2[N-l]Data3[N-l〗由表l可以看出,^N个数据在存储器中分为N组存放,每组有四个数据,分别包括四种频点的信号在每个采样点所得到的数据。可以认为是以每个采样点得到的数据进行分组的。CPU开始工作时,在第一个1/8000秒的时刻,将存储器中存储的前四个即第一组数据DataOData3读出,分别放到输出HW的TS0TS3时隙的发送緩沖区;在接下来的一个1/8000秒的时刻,将第二组数据DataO[l]Data3[1]读出,分别放到输出HW的TS0TS3时隙的发送緩冲区。如此每到一个1/8000秒时刻,都输出一组数据;并且按照这样的方法循环,这样在CPU输出HW的TS0TS3时隙,就有fDf3四种信号的持续的广播发送。这种方法的缺点是1、有多少种信号就要占用多少个输出时隙在一些应用中,既需要DTMF信号,又需要MFC信号,可能还需要很多的固定音信号,信号的种类可能超过CPU输出HW的总时隙数,这样的话,这种方法就无能为力了;2、不同的信号占用不同的固定的时隙,比如上面的例子,fO占0时隙,fl占1时隙;对接收方来说,要想在1时隙得到fD的信号,中间还要加一个时隙交换的模块,增加了硬件成本和电路复杂度;3、各种信号一旦占用该时隙,则该时隙就不能用作他用。
发明内容本发明所要解决的技术问题是提供一种程控交换机中的带内信号发送方法及系统,达到灵活使用时隙的目的。为了解决上述技术问题,本发明提供了一种程控交换机中的带内信号发送方法,通过程控交换机包括的控制模块、主控单元及处理器对带内信号进行发送,所述方法包括以下步骤(1)设置每种信号的编号,将每种信号在所有釆样点得到的数据连续存储在存储器中;并在存储器中设置与每个时隙相对应的命令寄存器;(2)控制模块向主控单元发出发送信号命令;(3)主控单元接收到所迷发送信号命令后,解析所述命令的内容,如果所述发送信号命令包括需要在i时隙发送编号为M的信号,则将编号M写入与时隙i相对应的命令寄存器;(4)处理器从与时隙i相对应的命令寄存器读取值M,根据M得到信号的采样数据存储在存储器中的地址,根据该地址找到所述数据,将所述数据发送。进一步的,步骤(4)中所述根据M得到信号的采样数据存储在存储器中的地址,包括令AddressM=AddressO+M*N,其中N为采样点数,NG)。进一步的,所述命令寄存器的长度为一个字节。进一步的,步骤(l)中还包括,向所述命令寄存器中写入非信号编号的数值,代表初始不发送数据;相应的,步骤(4)中处理器从与时隙i相对应的命令寄存器读取的值,如果不为M,则不发送信号。进一步的,步骤(2)中所述控制模块向主控单元发出发送信号命令,如果所述发送信号命令包括非信号编号,则表示不需要发送信号。进一步的,步骤(4)中所述处理器从与时隙i相对应的命令寄存器读取值,包括处理器依次读取每个命令寄存器的值。进一步的,步骤(4)中所述根据地址找到所述数据的步骤后还包括并将所述数据拷贝到发送緩冲区,然后将所述数据发送。为了解决上述技术问题,本发明还提供了一种程控交换机中的带内信号发送系统,包括控制模块、主控单元及处理器,所述控制模块与所述主控单元耦、接,所述主控单元与所述处理器耦接,所述控制模块用于向主控单元发出发送信号命令,所述发送信号命令包括需要在i时隙发送编号为M的信号;所述主控单元及所述处理器用于设置每种信号的编号,将每种信号在所有釆样点得到的数据连续存储在存储器中;并用于在存储器中设置与每个时隙相对应的命令寄存器;所述主控单元并用于在接收到所述控制模块的发送信号命令后,解析所述命令的内容,将编号M写入与时隙i相对应的命令寄存器;所述处理器并用于从与时隙i相对应的命令寄存器读取值M,根据M得到信号的采样数据存储在存储器中的地址,根据该地址找到所述数据,并将所述数据发送。进一步的,所述根据M得到信号的采样数据存储在存储器中的地址,包括令AddressM=AddressO+M*N,其中N为采样点数,N6。进一步的,所述系统还包括发送緩冲区模块,与所述处理器相连,用于緩存所述处理器找到的数据。从上面的描述可以看出,本发明具有以下的有益效果1、CPU所能发送的信号不受输出时隙数的限制;2、不用增加交换模块,CPU可以在自己的任何输出时隙上输出任何信号;3、信号的发送都是通过读取与时隙相对应的寄存器的值,从而随机地占用时隙,所以任何时隙都没有被强占,可以根据命令灵活使用。图1为本发明的带内信号发送方法流程图。图2为本发明应用实例的硬件系统结构框图。图3为本发明应用实例中主控单元(HOSTCPU)的信号发送方法流程图。图4为本发明应用实例中处理器的信号发送方法流程图。具体实施方式本发明的主要思想是通过改变对信号进行采样后得到的数据在存储器中的存储方式,并且在系统存储器中设置与时隙相对应的命令寄存器。对信号进行编号后,将要发送的信号的编号填入命令寄存器,通过读取命令寄存器中的编号,根据所述编号找到数据在存储器中的地址后,将所述编号相对应的数据在所述命令寄存器相对应的时隙发送,从而达到动态利用时隙的效果。在本发明所述的方法中,数据在存储器中的存储方式如下表2:<table>tableseeoriginaldocumentpage8</column></row><table>Datal[N-l]Data2Data2[2]Data2[N-l]Data3Data3[N-l]由表2可以看到,存储器中存储的数据的数量还是一样的,只是数据的存储排列方式不一样,每种信号在所有采样点得到的数据是连续存储在一起的,可以认为是以信号的种类来进行分组的。具体来说,对第一种信号在第一个1/8000秒时刻进行采样得到的数据与在后续的每一个1/8000秒时刻对第一种信号进行采样得到的数据连续存储在一起。对于其他种类的信号也是如此。这样对于每一种信号来说,对信号采样得到的N点的数据是连续存放在一起,所以如果假设DataO的在存储器中的地址是AddressO,则Datal[O]的地址就是AddressO+N,Data2的地址就是AddressO+2N,Data3的地址就是AddressO+3N。如此类推,如果有M种信号,分别将信号编号为0M,则第一种信号的第一个数据的地址是AddressO,则第M种信号的第一个数据的地址就是AddressO+M*N。参照图l所示,为本发明的带内信号发送方法流程图。所述方法包括以下步骤步骤101:设置每种信号的编号,将每种信号在所有采样点得到的数据连续存储在存储器中;并在存储器中设置与每个时隙相对应的命令寄存器;步骤102:控制模块向主控单元发出发送信号命令;步骤103:主控单元接收到所迷发送信号命令后,解析所述命令的内容,如果所述发送信号命令包括需要在i时隙发送编号为M的信号,则将编号M写入与时隙i相对应的命令寄存器;步骤104:处理器从与时隙i相对应的命令寄存器读取值M,根据M得到信号的采样数据存储在存储器中的地址,根据该地址找到所述数据,将所述数据发送。在本方法中,CPU要在存储器中为每个时隙开辟一个与该时隙相对应的命令寄存器,设置每种信号的编号,如杲有M种数据就设置编号为0~M-l;每个命令寄存器中根据使用需要分别随机写入一种信号的编号。这样CPU根据命令寄存器的值(即信号的编号)来决定向输出时隙输出什么数据。比如,如果为每个时隙用一个Byte来作为命令寄存器,要在O时隙发送数据,则在与其相对应的命令寄存器ByteO中填入相应信号编号。CPU在1/8000秒时刻输出的数据在存储器中的地址通过以下计算方法得到AddressM=AddressO+M*N;下面通过具体应用中的实例来对本发明技术方案进行示例性的说明假设有32个时隙,则CPU为每个时隙用一个字节(Byte)的存储器空间来作为命令寄存器,当然也可以用其他的数值来作为命令寄存器的长度,或者以比特为长度单位,比如4比特来作为命令寄存器,本发明对此不加以限定。如下表3所示为采用一个Byte的存储器空间来作为命令寄存器的示意<table>tableseeoriginaldocumentpage10</column></row><table>在我们所举的例子中有四种信号,为四种信号编号为o~3,那么命令寄存器随机写入的值是0~3时,表示该时隙要发送与所述编号相对应的信号。每个命令寄存器是一个Byte,值可以是0~255,就是说可以最大支持256种信号,如果信号多于256种,只要把命令寄存器的长度设置为16bit(位)的存储单元Word或更长。参照图2所示,为本发明应用实例的硬件系统结构框图,本发明所应用的硬件系统包括上一级控制模块201、主控单元(CPU)202、处理器203及下级信号传输及接收模块204。所述控制模块201用于向主控单元发出发送信号命令,所述发送信号命令包括需要在i时隙发送编号为M的信号;所述主控单元202及所述处理器203用于设置每种信号的编号,将每种信号在所有采样点得到的数据连续存储在存储器中;并用于在存储器中设置与每个时隙相对应的命令寄存器;所述主控单元202并用于在接收到所述控制模块的发送信号命令后,解析所述命令的内容,如果所述发送信号命令包括需要在i时隙发送编号为M的信号,则将编号M写入与时隙i相对应的命令寄存器;所述处理器203用于从与时隙i相对应的命令寄存器读取值M,4艮据M得到信号的采样数据存储在存储器中的地址,根据该地址找到所述数据,并将所述数据发送。所述根据M得到信号的采样数据存储在存储器中的地址,包括令AddressM=AddressO+M*N,其中N为采样点数,N€。所述系统还包括发送緩沖区模块(图中未示出),发送緩冲区模块与所述处理器203相连,用于緩存处理器203找到的数据。系统工作时,处理器203先将找到的数据存入緩冲区模块,然后再从緩沖区模块中读取数据,进行发送。其中的核心部分是主控单元(CPU)202和处理器203;主控单元202通过一些硬件接口与上一级控制模块201交互,它们之间的接口可以有很多种,比如RS232、以太网、同步串口等。主控单元202通过地址、数据、控制总线与处理器203交互,在本实例中处理器203是一个DSP(数字信号处理器),当然,实际应用中也可以为其他种类的处理器,本发明对此不加以限定。一般情况,主控单元(CPU)202与处理器203之间是通过一片双端口随机存取存储器(DPRAM)来交互的,在本实例中,这个DPRAM集成在DSP即处理器203内部,主控单元(CPU)202和处理器203都能访问。在本实例中假设处理器203的输出PCM(PulseCodeModulation,脉沖编码调制)HW是2.048Mbits/s的,就是说有32个时隙,则在DPRAM中,开辟如表3所示的32个byte的命令寄存器,每个命令寄存器对应一个时隙。假设有4种信号需要产生,用编号"0~3"分别代表4种信号,用编号"4"代表该时隙不用发送信号,主控单元(CPU)202根据上一级控制模块201的命令要求,在命令寄存器中填入04中的任意一个。处理器203先将4种信号的数据按上表2所示的方式存储到自己的内存中,然后,读取命令寄存器的值,按上述算法,每125us(1/8000秒)查询、计算一次,找到数据,并拷贝到PCMHW发送緩沖区的值,这样相应时隙输出的就是需要的信号。参照图3所示,为本发明应用实例中主控单元(HOSTCPU)的信号发送方法流程图,在初始化的时候,与信号发送相关的初始化,主要是对命令寄存器的初始化,将32个命令寄存器初始化设置为"4",意思是告诉DSP初始不用发送信号。接下来,跟信号发送有关的搡作就是循环检测上级控制模块是否有发送信号的命令,命令所要包含的信息包括需要在i(i取值为0~31)时隙发送第M(M为0~4中的任意一个数值)种信号,如果上级控制模块有发送信号的命令,HOSTCPU则将信号的编号M写入到第i个命令寄存器中,如果没有所述发送信号命令,则进行其他处理。参照图4所示,为本发明应用实例中处理器的信号发送方法流程图,所述方法包括主流程和中断流程。每一帧(125us)产生一次中断。主流程主要就是一些初始化工作,数据表的排列工作,完成相应工作后就中断使能,接下来就闪灯。中断使能后,每125us就产生一次中断,进入中断流程运行;中断流程首先要保护现场,然后令i-o,表示从第0个时隙开始读取命令寄存器的值,依次读取32个时隙的命令寄存器的值M,如果M的值是03,说明该时隙需要发送信号,根据M的具体值及算法,得到数据存储在存储器中的地址,将根据该地址找到的数据拷贝到发送緩冲区,串口硬件底层会自动将这个緩沖区的值发送到PCMHW线上,发送给下级信号接收及传输模块;如果M的值不在03之间,则说明该时隙不用发送信号。32个时隙的命令寄存器扫描完后,恢复现场退出中断流程。在实际处理中,也可能有不同的时隙数,所以,概括的说,是在所有时隙对应的所有命令寄存器扫描完成以后才退出中断流程。当然,上述具体实施方式不是对本发明技术方案的进一步限定,任何熟悉本领域的技术人员对本发明技术特征所作的等同替换或相应改进,仍在本发明的保护范围之内。权利要求1、一种程控交换机中的带内信号发送方法,通过程控交换机包括的控制模块、主控单元及处理器对带内信号进行发送,其特征在于,所述方法包括以下步骤(1)设置每种信号的编号,将每种信号在所有采样点得到的数据连续存储在存储器中;并在存储器中设置与每个时隙相对应的命令寄存器;(2)控制模块向主控单元发出发送信号命令;(3)主控单元接收到所述发送信号命令后,解析所述命令的内容,如果所述发送信号命令包括需要在i时隙发送编号为M的信号,则将编号M写入与时隙i相对应的命令寄存器;(4)处理器从与时隙i相对应的命令寄存器读取值M,根据M得到信号的采样数据存储在存储器中的地址,根据该地址找到所述数据,将所述数据发送。2、如权利要求1所述的方法,其特征在于,步骤(4)中所述根据M得到信号的采样数据存储在存储器中的地址,包括令AddressM=AddressO+M*N,其中N为采样点数,N6。3、如权利要求l所述的方法,其特征在于,所述命令寄存器的长度为一个字节。4、如权利要求l所述的方法,其特征在于,步骤(l)中还包括,向所述命令寄存器中写入非信号编号的数值,代表初始不发送数据;相应的,步骤(4)中处理器从与时隙i相对应的命令寄存器读取的值,如果不为M,则不发送信号。5、如权利要求l所述的方法,其特征在于,步骤(2)中所述控制模块向主控单元发出发送信号命令,如果所述发送信号命令包括非信号编号,则表示不需要发送信号。携带媒体协商结果。本步骤中,对应于步骤803中的INVITE请求消息,以MGC2向MGC1返回200OK响应消息为例进行说明,在实际应用中,如前所述,任何与INVITE请求消息对应的、可以在一次SDPOffer/Answer过程中携带SDPAnswer的消息均可以用作本步骤中MGC2向MGC1返回的消息。本步骤中,在200OK响应消息中携带SDPAnswer,SDPAnswer中携带媒体协商结果,例如,是否使用ET.38进行传真业务等,其中可能包含部分或全部MGW2的媒体处理能力信息。假设MGW2支持基于RTP的ET.38传真,并且也希望使用ET.38进行传真业务,那么MGC2可以向MGC1返回如下SDPAnswer:v=0o=-11INIP4mp2.example2.coms=-c=INIP4mp2.example2.comt=00m=audio10000RTP/AVP98a=rtpmap:98et3画00上述SDPAnswer表示应答端使用地址为mp2.example2.com、端口为10000与提供端建立基于RTP协议的编解码格式为ET.38的传真承载通道,并进行传真业务数据的传递、为用户提供传真业务。步骤807:MGC1根据所接收到的SDPAnswer,向MGW1发送Mod命令,以更新远端士某体资源信息。本步骤中,MGC1将根据SDPAnswer中的媒体协商结果向MGW1更新远端媒体资源信息。步骤808:MGC1向MGC2返回ACK消息。步骤809:MGC1收到MGW1的Mod响应消息。全文摘要本发明公开了一种程控交换机中的带内信号发送方法及系统,所述方法包括以下步骤(1)设置每种信号的编号,将每种信号在所有采样点得到的数据连续存储在存储器中;并在存储器中设置与每个时隙相对应的命令寄存器;(2)控制模块向主控单元发出发送信号命令;(3)主控单元接收到所述发送信号命令后,解析所述命令的内容,如果所述发送信号命令包括需要在i时隙发送编号为M的信号,则将编号M写入与时隙i相对应的命令寄存器;(4)处理器从与时隙i相对应的命令寄存器读取值M,根据M得到信号的采样数据存储在存储器中的地址,根据该地址找到所述数据,将所述数据发送。本发明可以达到灵活使用时隙的目的。文档编号H04Q3/545GK101217681SQ20081000413公开日2008年7月9日申请日期2008年1月18日优先权日2008年1月18日发明者饶俊阳申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1