一种多通道分组定时器的实现方法

文档序号:7813264阅读:250来源:国知局
一种多通道分组定时器的实现方法
【专利摘要】本发明涉及网络通讯定时领域,具体涉及一种多通道分组定时器的实现方法。所述定时器包括读写控制模块、存储模块、定时判断模块和累加模块;其实现包含将定时计数数据与定时配置数据作比较的步骤;如所述定时计数数据未达到所述定时配置数据时,将所述定时计数数据加一后由读写控制模块重新写入存储模块并替换原定时计数数据的步骤;如所述定时计数数据达到所述定时配置数据时,所述定时判断模块输出定时信号,同时累加模块将所述定时计数数据清零后重新写入存储模块并替换原定时计数数据的步骤;本发明定时由读写控制模块对存储模块的周期读写实现,不需要计数器,每组定时器的定时到达时间一致,定时到达判断简单、实用。
【专利说明】一种多通道分组定时器的实现方法

【技术领域】
[0001]本发明涉及网络通讯定时领域,具体涉及一种多通道分组定时器的实现方法。

【背景技术】
[0002]在通讯领域,经常需要大量定时器完成多信道超时告警。比如对多通道接收报文进行超时统计,如果报文在指定的定时周期内没有收到,就要发出接收超时告警;针对同一通道接收超时可能有几种,如超时3.3ms,发出告警1,超时10ms,发出告警2,超时100ms,发出告警3等,不同级别超时告警输出不同的告警脉冲,并进行对应级别的告警处理。通信系统中有时需要定时的通道数达数百个,定时周期级别大多只有几种。如果用计数器方法来实现多通道多周期定时器,需要消耗大量的逻辑资源。


【发明内容】

[0003]为解决以上问题,采用较少的资源同时为几百上千个通道提供多层次报警,本发明提供一种多通道分组定时器的实现方法,所述定时器包括读写控制模块、存储模块、定时判断模块和累加模块,其中,所述读写控制模块与所述存储模块连接,所述存储模块与所述定时判断模块连接,所述定时判断模块与所述累加模块连接,所述累加模块与所述读写控制模块连接,所述定时判断模块还包括定时输出端口。
[0004]所述读写控制模块用于控制所述存储模块定时计数数据的读写;所述存储模块用于储存定时计数数据;所述定时判断模块用于存储定时配置数据,并判断定时计数数据是否到达定时配置数据,定时配置数据所述定时判断输出端口用于在定时计数数据达到定时配置数据时输出定时信号;所述累加模块用于将定时计数数据加一或清零。
[0005]其特征在于,所述定时器实现方法包含如下工作步骤:
包含由读写控制模块控制读取存储模块内存储的定时计数数据与所述定时判断模块中定时配置数据作比较的步骤。
[0006]包含如所述定时计数数据未达到所述定时配置数据时,所述累加模块将所述定时计数数据加一后由读写控制模块重新写入存储模块并替换原定时计数数据的步骤。
[0007]包含如所述定时计数数据达到所述定时配置数据时,所述定时判断模块输出定时信号,同时累加模块将所述定时计数数据清零后由读写控制模块重新写入存储模块并替换原定时计数数据的步骤。
[0008]进一步的,所述存储模块中的定时计数数据均与所述定时判断模块中的同一定时配置数据做比较。
[0009]进一步的,所述存储模块包含一个以上的寄存器,每个寄存器为一个定时通道,每个定时通道内存储有相应通道的定时计数数据;读写控制模块对存储模块中包含的一个以上的定时通道从第I定时通道到第η定时通道依次读写一次,并循环进行,即定时开始后,读写控制模块先对第I定时通道中的定时计数数据进行第一次读写,然后对第2定时通道中的定时计数数据进行第一次读写,一直到对第η定时通道进行第一次读写后,重新对第I定时通道进行第二次读写,依次循环进行。
[0010]在某些实施例中,所述存储模块包含1024个寄存器,每个寄存器为一个定时通道,每个定时通道内存储有相应通道的定时计数数据;读写模块对每个存储模块中均包含的1024个定时通道依次进行读写一次,并循环进行。
[0011]进一步的,所述定时器包括一个以上的存储模块,所述存储模块均包含相同数量的寄存器,每个存储模块各自对应一个定时判断模块和一个累加模块,不同存储模块各自对应的定时判断模块中存储的定时配置数据不同;读写控制模块同时对一个以上包含相同定时通道数量的存储模块进行读取,并将读取出的数据与各存储模块对应的定时判断模块存储的定时配置数据进行比较。
[0012]在某些实施例中所述定时器包括五个包含相同寄存器数量的存储模块,每个存储模块对应一个定时判断模块和一个累加模块。读写模块同时对五个包含相同寄存器数量的存储模块进行读取,并将读取出的数据与各个存储模块对应的定时判断模块存储的定时配置数据进行比较。
[0013]进一步的,不同存储模块中对应的定时通道同时为同一通信信道提供不同级别定时。
[0014]进一步的,所述定时计数数据初始值为零。
[0015]定时开始后,读写控制模块同时从各个存储模块中的第一定时通道开始读取其中的定时计数数据,并将读出的定时计数数据与各个存储模块对应的定时判断模块中的定时配置数据进行比较,如果未达到定时配置数据,则由各个存储模块各自对应的累加模块对定时计数数据进行加一处理,然后通过读写控制模块写回各个存储模块的第一定时通道取代原定时计数数据。随后读写控制模块对各个存储模块中第二定时通道至第η (η > I)定时通道中的定时计数数据依次进行一次读取比较,完成后从第一定时通道重新开始循环读取。
[0016]读写控制模块从第一定时通道到第η (η ^ I)定时通道依次读取完一次为一个定时步长,读写控制模块对一个定时通道读写一次包括读、改、写三个步骤,共需要三个时钟周期,因此一个定时步长=读写控制模块的时钟周期*3*存储模块包含的定时通道数η。
[0017]各个存储模块具有相同数量的定时通道,因此具有相同的定时步长,根据需要在定时判断模块设定不同的定时配置数据,定时判断模块中存储的定时配置数据=所需定时时间/定时步长。
[0018]存储模块中各通道存储的定时计数数据达到相应定时判断模块中的定时配置数据时,相应定时判断模块对相应通道输出定时信号,同时相应累加模块将该通道的定时计数数据归零,该存储模块中相应定时通道定时重新开始。
[0019]与现有技术相比,本发明的有益效果:本发明适用于通信领域定时通道多且同一通道具有不同定时时间需求的情况,采用具有相同通道数的几组存储器作为定时器,每个存储器中的各个通道具用相同的定时时间,不同存储器具有各自不同的定时时间,定时由读写控制模块对存储模块的周期读写实现,不需要计数器,每组定时器的定时到达时间一致,定时到达判断简单、实用。
[0020]【专利附图】

【附图说明】:
图1为本发明流程图; 图2为本发明实施例的原理框图。

【具体实施方式】
[0021]下面结合实施例及【具体实施方式】对本发明作进一步的详细描述。但不应将此理解为本发明上述主题的范围仅限于以下的实施例,凡基于本
【发明内容】
所实现的技术均属于本发明的范围。
实施例1
如图1、2所示,本实施例所述多通道分组定时器采用型号为5CEFA4F23C8N的FPGA,包括读写控制模块(由FPGA逻辑控制实现)、存储模块(由FPGA中RAM块实现)、定时判断模块(由FPGA逻辑控制实现)和累加模块(由FPGA逻辑控制实现),其中,所述读写控制模块与所述存储模块连接,所述存储模块与所述定时判断模块连接,所述定时判断模块与所述累加模块连接,所述累加模块与所述读写控制模块连接,所述定时判断模块还包括定时输出端□。
[0022]所述读写控制模块用于控制所述存储模块定时计数数据的读写;所述存储模块用于储存定时计数数据;所述定时判断模块用于存储定时配置数据,并判断定时计数数据是否到达定时配置数据,所述定时判断输出端口用于在定时计数数据达到定时配置数据时输出定时信号;所述累加模块用于将定时计数数据加一或清零。
[0023]本实施例中包括五个存储模块,每个存储模块中包含有1024个寄存器,每个寄存器为一个定时通道,存放对应通道的定时计数数据,定时计数数据的初始值为O ;每个存储模块各自对应一个定时判断模块和一个累加模块;第一存储模块连接第一定时判断模块,第一定时判断模块连接第一累加模块;第二存储模块连接第二定时判断模块,第二定时判断模块连接第二累加模块;第三存储模块连接第三定时判断模块,第三定时判断模块连接第三累加模块;第四存储模块连接第四定时判断模块,第四定时判断模块连接第四累加模块;第五存储模块连接第五定时判断模块,第五定时判断模块连接第五累加模块。
[0024]第一定时判断模块、第二定时判断模块、第三定时判断模块、第四定时判断模块、第五定时判断模块中存储的定时配置数据各不相同。
[0025]本实施例中多通道分组定时器的实现方法,含如下工作步骤:
包含由读写控制模块控制读取存储模块内存储的定时计数数据与所述定时判断模块中同一定时配置数据作比较的步骤。
[0026]包含如所述定时计数数据未达到所述定时配置数据时,所述累加模块将所述定时计数数据加一后由读写控制模块重新写入存储模块并替换原定时计数数据的步骤。
[0027]包含如所述定时计数数据达到所述定时配置数据时,所述定时判断模块输出定时信号,同时累加模块将所述定时计数数据清零后由读写控制模块重新写入存储模块并替换原定时计数数据的步骤。
[0028]所述存储模块中的定时计数数据均与所述定时判断模块中的同一定时配置数据做比较。
[0029]进一步的,读写控制模块对每个存储模块中均包含的1024个定时通道从第一定时通道到第1024定时通道依次进行读取,对1024个定时通道依次读取完成一次为一个定时步长,随后从第一定时通道重新开始循环读取;所述定时步长=读写控制模块的时钟周期*3*存储模块包含的定时通道数。
[0030]进一步的,读写控制模块同时对五个存储模块中的定时计数数据进行读取,并将读取出的数据与各个存储模块对应的定时判断模块存储的定时配置数据作比较。
[0031]定时开始后,读写控制模块同时从五个存储模块中的第一定时通道开始读取其中的定时计数数据,并将读出的定时计数数据与各个存储模块对应的定时判断模块中的定时配置数据进行比较,如果未达到定时配置数据,则由各个存储模块各自对应的累加模块进行加一处理,然后通过读写控制模块写回各个存储模块的第一定时通道取代原定时计数数据。随后读写控制模块对五个存储模块中第二定时通道至第1024定时通道中的定时计数数据依次进行一次读写比较,完成后从第一定时通道重新开始循环读取。
[0032]读写控制模块从第一定时通道到第1024定时通道依次读取完一次为一个定时步长,读写控制模块对单定时通道一次读、改、写需要三个时钟周期,因此一个定时步长=读写控制模块的时钟周期*3*存储模块包含的定时通道数,本实施例采用时钟100MHZ,每个存储模块拥有1024个定时通道,则定时步长=0.00000001*3*1024=0.03072ms。
[0033]进一步的,各个定时判断模块中存储的定时配置数据为所需定时时间与定时步长的比值。
[0034]第一存储模块欲实现3.3ms的定时,则第一定时判断模块中存储的定时配置数据=3.3ms/0.03072ms ^ 107,转换为二进制为 1101011。
[0035]第二存储模块欲实现1ms的定时,第二定时判断模块中存储的定时配置数据=1000ms/0.03072ms ^ 268,转换为二进制为 100001100
第三存储模块欲实现10ms的定时,第三定时判断模块中存储的定时配置数据=1000ms/0.03072ms ^ 2688,转换为二进制为 101010000000。
[0036]第四存储模块欲实现100ms的定时,第四定时判断模块中存储的定时配置数据=1000ms/0.03072ms ^ 26881,转换为二进制为 110100100000001。
[0037]第五存储模块欲实现60000ms的定时,第五定时判断模块中存储的定时配置数据=60000ms/0.03072ms ^ 1953125,转换为二进制为 111011100110101100101。
[0038]当第一存储模块中各通道存储的定时计数数据达到107时,则第一定时判断模块对相应通道输出定时信号,同时第一累加模块将相应通道的定时计数数据归零,第一存储模块中相应通道定时重新开始。
[0039]当第二存储模块中各通道存储的定时计数数据达到268时,则第二定时判断模块对相应通道输出定时信号,同时第二累加模块将相应通道的定时计数数据归零,第二存储模块中相应通道定时重新开始。
[0040]当第三存储模块中各通道存储的定时计数数据达到2688时,则第二定时判断模块对相应通道输出定时信号,同时第三累加模块将相应通道的定时计数数据归零,第三存储模块中相应通道定时重新开始。
[0041]当第四存储模块中各通道存储的定时计数数据达到26881时,则第四定时判断模块对相应通道输出定时信号,同时第四累加模块将相应通道的定时计数数据归零,第四存储模块中相应通道定时重新开始。
[0042]当第五存储模块中各通道存储的定时计数数据达到1953125时,则第五定时判断模块对相应通道输出定时信号,同时第五累加模块将相应通道的定时计数数据归零,第五存储模块中相应通道定时重新开始。
[0043]五个存储模块中的对应的定时通道为同一通信信道提供定时。即,第一存储模块中的第n(l SnS 1024)定时通道、第二存储模块中的第η (I < η < 1024)定时通道、第三存储模块中的第η (I1024)定时通道、第四存储模块中的第η (I1024)定时通道、第五存储模块中的第η(1彡η彡1024)定时通道分别同时为同一通信信道提供3.3ms、10 ms> 100 ms、1000ms、60000ms的定时,其中第一存储模块为各个通信信道每3.3ms发出一次定时信号,第二存储模块为各个信道每1ms发出一次定时信号,第三存储模块为各个信道每10ms发出一次定时信号,第四存储模块为各个通信信道每100ms发出一次定时信号,第五存储模块为各个通信信道每60000ms发出一次定时信号。
[0044]本实施例提供的分组定时器实现方法可实现同时为1024个通信信道进行定时控制,每个信道可设置5个不同级别的(时间不同的)定时。
[0045]实施例2
某些实施例中定时器包含3个存储模块,每个存储模块中包含512个寄存器,每个寄存器为一个定时通道。可实现同时为512个通信信道进行定时控制,每个通道可设置3个不同级别的(时间不同的)定时,定时步长=读写控制模块的时钟周期*3*512。
[0046]实施例3
某些实施例定时器中包含10个存储模块,每个存储模块中包含256个寄存器,每个寄存器为一个定时通道,可实现同时对256个通信信道进行定时控制,每个通信信道可设置10个不同级别的(时间不同的)定时,定时步长=读写控制模块的时钟周期*3*256。
【权利要求】
1.一种多通道分组定时器的实现方法,所述定时器包括读写控制模块、用于储存定时计数数据的存储模块、用于存储定时配置数据并判断定时计数数据是否到达定时配置数据的定时判断模块和用于将定时计数数据加一或清零的累加模块,所述读写控制模块与所述存储模块连接,所述存储模块与所述定时判断模块连接,所述定时判断模块与所述累加模块连接,所述累加模块与所述读写控制模块连接,所述定时判断模块还包括定时输出端口,其特征在于,包含如下工作步骤: 包含由读写控制模块控制读取存储模块内存储的定时计数数据与所述定时判断模块中的定时配置数据作比较的步骤; 包含如所述定时计数数据未达到所述定时配置数据时,所述累加模块将所述定时计数数据加一后由读写控制模块重新写入存储模块并替换原定时计数数据的步骤; 包含如所述定时计数数据达到所述定时配置数据时,所述定时判断模块输出定时信号,同时累加模块将所述定时计数数据清零后由读写控制模块重新写入存储模块并替换原定时计数数据的步骤。
2.根据权利要求1所述的一种多通道分组定时器的实现方法,其特征在于,所述存储模块中的定时计数数据均与所述定时判断模块中的同一定时配置数据做比较。
3.根据权利要求2所述的一种多通道分组定时器的实现方法,其特征在于,读写控制模块对存储模块中包含的一个以上的定时通道从第I定时通道到第η定时通道依次读写一次,并循环进行。
4.根据权利要求3所述的一种多通道分组定时器的实现方法,其特征在于,读写控制模块对每个存储模块均包含的1024个定时通道从第I定时通道到第1024定时通道依次读写一次,并循环进行。
5.根据权利要求4或3所述的一种多通道分组定时器的实现方法,其特征在于,读写控制模块同时对一个以上包含相同定时通道数量的存储模块进行读取,并将读取出的数据与各存储模块对应的定时判断模块存储的定时配置数据进行比较。
6.根据权利要求5所述的一种多通道分组定时器的实现方法,其特征在于,读写模块同时对五个包含相同寄存器数量的存储模块进行读取,并将读取出的数据与各个存储模块对应的定时判断模块存储的定时配置数据进行比较。
7.根据权利要求6所述的一种多通道分组定时器的实现方法,其特征在于,读写控制模块对存储模块中所有定时通道依次读写一次为一个定时步长,所述定时步长=读写控制模块的时钟周期*3*定时通道数。
8.根据权利要求7所述的一种多通道分组定时器的实现方法,其特征在于,各定时判断模块中存储的定时配置数据为所需定时时间与定时步长的比值。
9.根据权利要求8所述的一种多通道分组定时器的实现方法,其特征在于,不同存储模块中对应的定时通道同时为同一通信信道提供不同级别的定时。
【文档编号】H04J3/06GK104168078SQ201410445023
【公开日】2014年11月26日 申请日期:2014年9月3日 优先权日:2014年9月3日
【发明者】胡强, 刘雁行, 许 鹏 申请人:成都朗锐芯科技发展有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1