一种耦合报文信用释放方法及系统的制作方法

文档序号:9670709阅读:1090来源:国知局
一种耦合报文信用释放方法及系统的制作方法
【技术领域】
[0001]本发明涉及耦合报文信用释放技术领域,更具体地说,涉及一种耦合报文信用释放方法及系统。
【背景技术】
[0002]目前为了减少接口信号数量,采用不同类型报文同一传输通道传输,在接收端分通道分别缓存处理的方式。其中,每笔报文通常只含有一种报文类型,每种类型报文有独立的信用控制和释放机制,但在某些情况下,为了提高传输效率,采用耦合报文传输方式。耦合报文是一笔报文,含有多种报文类型的一种形式。其中,每笔親合报文内部所包含的报文类型不是唯一的,每种类型报文至多一个。耦合报文的信用在信息发送端的消耗与单独类型的报文类似,但在接收端的信用释放由于包含的类型和数量不同,报文分通道后读取的时机不同,其信用释放机制就较单独类型报文复杂的多。
[0003]因此,如何释放耦合报文的信用,从而平衡发送端与接收端的处理能力是现在需要解决的问题。

【发明内容】

[0004]本发明的目的在于提供一种耦合报文信用释放方法及系统,以释放耦合报文的信用,从而平衡发送端与接收端的处理能力。
[0005]为实现上述目的,本发明实施例提供了如下技术方案:
[0006]—种耦合报文信用释放方法,包括:
[0007]接收报文输出模块发出的报文;
[0008]判断所述报文是否为耦合报文;若是,则将所述耦合报文中的每种报文按类型缓存,并记录所述耦合报文的报文类型信息;
[0009]根据所述报文类型信息,判断所述耦合报文的每种报文是否均被各通道报文接收模块读取;
[0010]若是,则释放一个信用至所述报文输出模块。
[0011]优选的,记录所述耦合报文的报文类型信息之后,包括:
[0012]将所述耦合报文中的每个报文添加耦合标示位。
[0013]优选的,根据所述报文类型信息,判断所述耦合报文的每种报文是否均被各通道报文接收模块读取,包括:
[0014]根据所述报文类型信息,判断所述耦合报文中的每个报文相对应的耦合报文计数器的数值是否均大于一;其中,所述耦合报文计数器的初始数值为零,当携带耦合标示位的报文被读取后,则将与被读取的报文所对应的耦合报文计数器的数值加一;
[0015]若是,则判定所述耦合报文的每种报文均被所述各通道报文接收模块读取。
[0016]优选的,释放一个信用至所述报文输出模块之后,包括:
[0017]将所述耦合报文中的每个报文所对应的耦合报文计数器的数值均减一,并将所述耦合报文的报文类型信息清除。
[0018]一种耦合报文信用释放系统,包括:
[0019]报文输出模块,用于输出单类型报文和耦合报文;
[0020]报文分通道缓存模块,用于接收报文输出模块发出的报文;判断所述报文是否为耦合报文;若是,则将所述耦合报文中的每种报文按类型缓存,并将所述耦合报文的报文类型信息记录至耦合信息记录模块;
[0021 ]所述耦合信息记录模块用于记录所述耦合报文的报文类型信息;
[0022]各通道报文接收模块,用于从所述报文分通道缓存模块读取报文;
[0023]信用释放仲裁模块,用于根据所述报文类型信息,判断所述耦合报文的每种报文是否均被所述各通道报文接收模块读取;若是,则释放一个信用至所述报文输出模块。
[0024]优选的,所述报文分通道缓存模块,包括:
[0025]耦合标示位添加单元,用于将所述耦合报文中的每个报文添加耦合标示位。
[0026]优选的,所述信用释放仲裁模块,包括:
[0027]判断单元,用于根据所述报文类型信息,判断所述耦合报文中的每个报文相对应的耦合报文计数器的数值是否均大于一;其中,所述耦合报文计数器的初始数值为零,当携带耦合标示位的报文被读取后,则将与被读取的报文所对应的耦合报文计数器的数值加

[0028]若是,则判定所述耦合报文的每种报文均被所述各通道报文接收模块读取。
[0029]优选的,所述信用释放仲裁模块,包括:
[0030]执行单元,用于将所述耦合报文中的每个报文所对应的耦合报文计数器的数值均减一,并将所述耦合报文的报文类型信息清除。
[0031]通过以上方案可知,本发明实施例提供的一种耦合报文信用释放方法及系统,包括:接收报文输出模块发出的报文;判断所述报文是否为耦合报文;若是,则将所述耦合报文中的每种报文按类型缓存,并记录所述耦合报文的报文类型信息;根据所述报文类型信息,判断所述耦合报文的每种报文是否均被各通道报文接收模块读取;若是,则释放一个信用至所述报文输出模块,可见,在本实施例中,只有耦合报文中的每个报文均被读取后,才会释放给报文输出模块一个信用,从而报文输出模块才有一个信用发送下一个耦合报文,从而平衡发送端与接收端的处理能力,不仅资源开销少,而且实现方式简单。
【附图说明】
[0032]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0033]图1为本发明实施例公开的一种耦合报文信用释放方法流程示意图;
[0034]图2为本发明实施例公开的一种耦合报文信用释放系统结构示意图。
【具体实施方式】
[0035]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0036]本发明实施例公开了一种耦合报文信用释放方法及系统,以释放耦合报文的信用,从而平衡发送端与接收端的处理能力。
[0037]参见图1,本发明实施例提供的一种耦合报文信用释放方法,包括:
[0038]S101、接收报文输出模块发出的报文;
[0039]S102、判断所述报文是否为耦合报文;若是,则执行S103、将所述耦合报文中的每种报文按类型缓存,并记录所述耦合报文的报文类型信息;若否,则执行S101;
[0040]具体的,当该报文不是耦合报文时,不添加指示信息,并继续接收处理输出模块发出的下一笔报文。
[0041 ]其中,记录所述耦合报文的报文类型信息之后,包括:
[0042]将所述耦合报文中的每个报文添加耦合标示位。
[0043]具体的,当报文通过传输通道进行缓存之前,可以通过报文类型判别该笔报文是否属于耦合报文,如果是耦合报文,则将耦合报文包括的所有类型的报文均添加耦合标志位,即含有耦合标志位的报文均是耦合报文中的报文;再将耦合报文按报文类型分别缓存进入先入先出的分通道报文缓存模块。其中,在分通道报文缓存模块中,不同类型报文对应的缓存相互独立,后续模块读取处理时,相互间不存在依赖关系。
[0044]其中,当耦合报文写入分通道报文缓存模块时,将耦合报文的报文类型信息,即包含哪几种报文的信息,同时也写入先入先出的耦合信息记录模块。
[0045]S104、根据所述报文类型信息,判断所述耦合报文的每种报文是否均被各通道报文接收模块读取;
[0046]若是,则执行S105、释放一个信用至所述报文输出模块;若否,则继续执行S104。
[0047]具体的,由于耦合报文所包含的所有报文类型共享一个信用,所以只有当耦合报文所包含的所有报文类型全部被读取处理后,才能进行该笔信用的释放,否则会导致死锁或溢出等报文无法得到正确处理的现象。
[0048]其中,根据所述报文类型信息,判断所述耦合报文的每种报文是否均被各通道报文接收模块读取,包括:
[0049]根据所述报文类型信息,判断所述耦合报文中的每个报文相对应的耦合报文计数器的数值是否均大于一;其中,所述耦合报文计数器的初始数值为零,当携带耦合标示位的报文被读取后,则将与被读取的报文所对应的耦合报文计数器的数值加一;
[0050]若是,则判定所述耦合报文的每种报文均被所述各通道报文接收模块读取。
[0051]具体的,在报文分通道缓存模块中,每种类型报文通道均设置独立的耦合报文计数器,当被读取的报文的耦合信息标识位有效时,则该种类型报文对应的耦合报文计数器的数值加一,否则耦合报文计数器的数值保持不变。其中,耦合报文计数器值所代表的是,包含该类型报文的耦合报文在本通道已经被后续模块读取处理,但对应的耦合报文信用未被释放的数量。规定耦合报文计数器初始值为0,为了使计数器值不会溢出,规定其位宽所能代表的最大计数器值,不小于耦合信息报文信用的最大值。
[0052]并且在本实施例中,耦合报文的报文类型信息都被记录,所以按照先入先出的顺序,根据耦合信息记录模块记录的报文类型信息,判断该报文类型信息包括的所有报文的耦合报文计数器的数值是否均为非零,若均为非零,则判定耦合报文的每种报文均被各通道报文接收模块读取,则释放一笔耦合报文信用,并进入下一次释放仲裁流程,否则,继续等待直至满足释放条件。
[0
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1