一种利用负反馈方式提高系统内部时间精度的装置及方法

文档序号:6447312阅读:200来源:国知局
专利名称:一种利用负反馈方式提高系统内部时间精度的装置及方法
技术领域
本发明一般涉及一种提高系统内部时间精度的装置和方法,特别涉及一种利用高精度系统时钟板,通过负反馈方式提高系统内部时间精度的装置和方法。
背景技术
在电话网上,对于市话呼叫,PSTN(公共开关电话网络)用户一般采用复式计次计费方式,ISDN(综合业务服务网)用户采用详细计费方式(LAMA)。对长话呼叫,PSTN和ISDN用户均采用详细计费方式(CAMA)。其中,复式计次计费方式采用脉冲计次(计次表跳表)方式进行计费。交换机收到被叫应答信号后,发送首次计费单元的计费脉冲,脉冲个数根据费率确定;以后,在每个计费单元开始时,都集中发送出规定的脉冲数;通话流程结束后停止计费。每个计费周期,按每个用户计次脉冲增加的总数核算市话话费。交换机应为每个用户提供4个计次表,每个计次表位数不少于5位。在详细计费方式中,交换机向计费后台处理系统提供每次呼叫的详细记录(CDR-Call Detail Recording),CDR应包括主叫号码、被叫号码、计费起始时间、通话时长(或计费结束时间)等信息。计费后台处理系统按相关要求,对每张话单进行计费单元的划分,完成话费核算和话单筛选。每个计费周期,按主叫号码进行话费汇总。
在现有计算话费时间的技术方案中,采用系统主控板上时钟中断充当计次表跳表,两个时钟中断的间隔作为即时的最小单位。话单时长一般采用相对时长的计算方法,即通话起始后,记录中断触发次数,得到本次呼叫的通话时长。但是目前的这种技术不可避免地会引入误差。
例如,当主控板的CPU使用的晶振中心频率稳定度为!50ppm,即,当晶振中心频率为50MHz时,上述晶振的频率范围为(50MHz-500Hz)~(50MHz+500Hz),电源电压波动稳定度为!5ppm,年老化率为!5ppm,如果晶振中心频率为50MHz的时钟工作了一年后,那么理论上单张话单上每24小时最大偏差!5.2秒,但是为了记录通话的绝对时间,系统会从时钟板上取得绝对时间,由于系统的延时并不一定稳定,又会引入误差,再者当有中间话单出现时,误差还会进一步放大。
另外,由于话单上的绝对时间来自于系统的时钟系统。虽然,时钟系统的参考源来自网络授时时,稳定性很高,但当其向系统的其它模块授时时有一定传输延时。另外,由于分频整除、中断丢失等,以及写FLASH时系统会关中断等原因,会产生有很大错误话单的概率。

发明内容
因此,针对现有技术中存在的上述问题,本发明的目的是在于提供一种利用高精度的系统时钟板、利用负反馈方式提高系统内部时间精度的装置和方法,当时钟精度提高了,话单精度也就提高了。
根据本发明的一个方面,本发明提供了一种利用负反馈方式提高系统内部时间精度的方法,其特征在于,所述的方法包括1)在当前统计周期内,获取主控CPU晶振脉冲次数的差值,由此得出一个差值序列;2)对所述差值序列通过一数字低通滤波器进行滤波后得出一系列偏移量;以及3)将所述偏移量分散补偿到系统时钟的下一个统计周期中。
所述步骤1可进一步包括如下步骤1-1)在当前统计周期内,依次在多个特定的时间获取多个机器周期,对所述多个机器周期依次分别相减,得到第一差值序列;以及1-2)对所述第一差值序列分别依次相减得到第二差值序列。
优选地,所述多个预定时段之间的时间间隔为系统主控板的时钟最小中断时间间隔。
优选地,所述多个机器周期从系统主板上的计时寄存器获取。
所述滤波器可采用有限脉冲反应滤波器或无限脉冲反应滤波器。
根据本发明另一方面,本发明提供了一种利用负反馈方式提高系统内部时间精度的装置,所述装置包括鉴相器单元,滤波器单元和控制器单元,所述鉴相器单元用来在当前统计周期完成计算相邻两个单位时间内CPU机器周期的差值,并由此得出第一个差值序列;所述滤波器单元对所述第一差值序列进行滤波,并得到第二差值序列;所述控制器单元将所述第二差值序列分散补偿到下一个统计周期的CPU机器周期中。
所述数字低通滤波器可以对系统时钟源短周期稳定度带来的误差进行滤除,从而使CPU的晶振长稳定特性逼近于系统时钟;将所述数字低通滤波器的输出分散补偿到下一个统计周期使得系统的频率稳定度得到提高,此时再计算出的话单等系统的内部时间精度很高。同时该发明采用软件实现的方法,可以使精度较低的晶振达到较高的精度,从而降低了硬件的成本。
附图的简要说明

图1是本发明的提高系统内部时间精度的原理图;图2是本发明的补偿算法流程图。
具体实施例方式
下面参照附图,对本发明进行详细的说明,附图仅供参考与说明用,不是对本发明专利范围的限制。
图1示出了本发明的提高系统内部时间精度的装置的原理图。对于主控CPU使用的晶振来说,中心频率稳定度和电源电压波动稳定度为短期稳定度;年老化率为长期稳定度。系统中使用的系统时钟源一般是恒温晶振等长期稳定性很高的源。对于系统时钟源来说,同样年老化率为长期稳定度,而短期稳定度除了中心频率稳定度和电源电压波动稳定度外还包含了系统授时延时、传输干扰等问题。
本发明的提高系统内部时间的装置包括鉴相器单元10、滤波器单元20和控制器单元30。公知地,系统的内部时间精度是由系统的CPU机器周期来决定的,在本发明的一种提高系统内部时间的装置的优选实施例中,首先在当前的统计周期内从一时间获取单元(图1中未显示)得到多个CPU周期,并通过依次相减得到多个系统主控CPU晶振脉冲序列countn,并传送给鉴相器单元10,鉴相器单元10在当前的一个统计周期内完成上述主控CPU晶振脉冲次数(countn)的差值,并由此得出一个差值序列Δcountn。滤波器单元20为低通数字滤波器,可以使用公知的FIR滤波器或IIR滤波器,优选地采用FIR滤波器,该滤波单元20接收上述由鉴相器单元10的输出,即差值序列Δcountn,并对其进行低通数字滤波以滤除由于系统时钟源短期稳定度带来的误差,使CPU的晶振的长期稳定性特性逼近于系统时钟,上述滤波单元20的输出为偏移量序列Δcn,控制器单元30将上述偏移量序列Δcn分散补偿到下一个统计周期中的CPU机器周期中。
下面参考图2详细描述本发明的补偿算法流程。
图2中所描述的统计过程是一个周期循环的过程,下面仅以一个统计周期为例进行描述。
1)定义一个长度为数字低通滤波器的阶数n的数组,用来记录相邻两个单位时间内主控CPU晶振脉冲次数(countn)的差值Δcountn,在每个统计周期内,都从n=0开始进行统计。
2)获取时钟板的绝对时间,记做Tn,并从系统主板计时寄存器获取当前主控CPU的机器周期,记为cpu_countn(步骤S001)。
3)系统不断从时钟板上取得当前的绝对时间,并将当前获得的绝对时间记做Tn+1,接着判断Tn+1是否大于等于Tn+ΔT,即当前的绝对时间与上一绝对时间的间隔是否大于等于系统主控板时钟中断的间隔。如果判断的结果是相等,则从系统主控板计时寄存器获取Tn+1时刻的CPU机器周期cpu_countn+1,否则,继续从时钟板获取当前绝对时间(步骤S002,步骤S003,步骤S004)。
4)计算上述cpu_countn+1与上述cpu_countn的差值,得到系统主控板时钟中断的时间间隔内主控CPU晶振脉冲的次数countn(步骤S005)。
5)变量n加1并判断变量n的值是否大于1(步骤S006,步骤S007)。
6)如果在上述步骤5)中判断的结果是变量n的值小于等于1,则重复上述步骤2)、3)、4)、5),否则,计算上述系统主控板时钟中断的相邻两个单位时间内的主控CPU晶振脉冲次数(countn)差值Δcountn,也就是,Δcountn=count(n-2)-count(n-1),将得到的Δcountn依次存入上述数组中(步骤S008)。
7)判断上述变量n与预定的数字低通滤波器阶数的关系,如果变量n小于等于上述数字滤波器的阶数,则重复上述的步骤2)、3)、4)、5)、6),否则执行下一步骤8)。其中上述数字滤波器优选地采用公知的FIR滤波器,其阶数可根据系统具体设计,优选地,在本实施方式中上述FIR滤波器的阶数为19阶。理论上将当n大于低通滤波器阶数的一半时就可以转入步骤8)了。也就是说,当记录Δcountn的个数大于低通滤波器阶数的一半时就可以计算通过数字滤波器的偏移量了,因此在本实施例中,当n=10时,转入步骤8)。当然,作为公知的常识,在本实施方式中,上述数字滤波器也可以采用IIR滤波器(步骤S009)。
8)将得到的Δcountn序列输入到上述低通数字滤波器,滤波器的输出记做Δcn(步骤S010)。
即Δcn=AΔcount(n)+BΔcount(n-1)+CΔcount(n-2)+DΔcount(n-3).....。其中,n大于等于2。
低通数字滤波器的系数A、B、C、D....可根据采样周期、跟踪速度、CPU计算能力等指标设计得出,这是本领域普通技术人员公知的常识,所以这里不在详细描述。上述低通滤波器可以滤除由于系统时钟源短周期稳定度带来的误差,使CPU的晶振长稳定特性逼近与系统时钟。
10)将滤波器的输出Δcn作为补偿量与上述机器周期cpu_countn-1相加,得到当前新的机器周期cpu_countn(步骤S011)。
通过上述的步骤,使系统达到较高的稳定度,此时再计算话单等系统内部时间时精度很高,同时也对CPU的晶振指标降低了要求,从而降低了硬件成本。
虽然以上对发明的说明是参照其具体的实施例来进行的,但本领域的普通技术人员应该意识到,在本发明的范围和精神内,各种改进、添加和替换都是可能的,并且都在本发明的权利要求所限定的保护范围内。
权利要求
1.一种利用负反馈方式提高系统内部时间精度的方法,包括以下步骤1)在当前统计周期内,获取CPU晶振脉冲次数的差值,由此得出一个差值序列;2)对所述差值序列通过一数字低通滤波器进行滤波后得出一系列偏移量;以及3)将所述偏移量分散补偿到系统时钟的下一个统计周期的CPU晶振脉冲中。
2.如权利要求1所述的方法,其中,所述步骤1)进一步包括1-1)在当前统计周期内,依次获取多个预定时段内的多个机器周期,对所述多个机器周期依次分别相减,得到第一差值序列;以及1-2)对所述第一差值序列分别依次相减得到第二差值序列。
3.如权利要求2所述的方法,其中,所述多个预定时段之间的时间间隔为系统主控板的时钟最小中断时间间隔。
4.如权利要求2所述的方法,其中,所述多个机器周期从系统主控板上的计时寄存器获取。
5.如权利要求1所述的方法,其中,所述滤波器为有限脉冲反应滤波器。
6.如权利要求1所述的方法,其中,所述滤波器为无限脉冲反应滤波器。
7.一种利用负反馈方式提高系统内部时间精度的装置,所述装置包括鉴相器单元,用于在当前统计周期完成计算相邻两个单位时间内CPU机器周期的差值,并由此得出第一个差值序列;滤波器单元,用于对所述第一差值序列进行滤波,并得到第二差值序列;以及控制器单元,用于将所述第二差值序列分散补偿到下一个统计周期的CPU机器周期中。
8.如权利要求7所述的系统,其特征在于所述滤波器单元是数字低通滤波器单元。
9.如权利要求7所述的系统,其特征在于所述数字低通滤波器单元是有限脉冲反应滤波器。
10.如权利要求7所述的系统,其特征在于所述数字低通滤波器单元是无限脉冲反应滤波器。
全文摘要
本发明提供了一种利用负反馈方式提高系统内部时间精度的方法,包括1)在当前统计周期内,获取CPU晶振脉冲次数的差值,由此得出一个差值序列;2)对所述差值序列通过一数字低通滤波器进行滤波后得出一系列偏移量;以及3)将所述偏移量分散补偿到系统时钟的下一个统计周期的CPU晶振脉冲中。本发明可应用于固定电话网络和移动电话网络(2G、3G)系统的相关时钟精度处理方面。
文档编号G06F1/14GK1798225SQ20041010400
公开日2006年7月5日 申请日期2004年12月30日 优先权日2004年12月30日
发明者刘志兴, 赵雪剑, 贾骏, 祁斌 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1