一种将读写控制分开的通信控制单元和通信控制方法转让专利

申请号 : CN201710217874.6

文献号 : CN106911715B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张翠

申请人 : 数据通信科学技术研究所兴唐通信科技有限公司

摘要 :

本发明涉及一种通信控制单元和通信控制方法,包括:信令报文解析模块,用于对信令报文进行解析,提取信令号和信令净荷;信令地址译码模块,用于区分读/写信令,并进行地址译码;写信令缓存RAM,用于接收和存储净荷和地址,并向外部提供净荷;写信令执行模块,用于执行写操作;读响应净荷提取模块,用于读出净荷,并发送到响应缓存RAM;响应缓存RAM,用于接收和存储读响应写地址和净荷,并向响应报文整合模块输出;响应报文整合模块,用于将接收到的响应号和净荷数据进行整合。本发明能提高发送处理速度,降低了接收通路和发送通路的耦合性,信令的处理方式更加灵活;还能提高指令的并行处理能力,进而提高整个指令执行的效率。

权利要求 :

1.一种通信控制单元,其特征在于,包括:信令报文解析模块、写信令缓存RAM、信令地址译码模块、写信令执行模块、响应缓存RAM、读响应净荷提取模块和响应报文整合模块;

信令报文解析模块,用于对接收到的信令报文进行解析,提取信令号和写信令净荷,并分别转发到信令地址译码模块和写信令缓存RAM;

信令地址译码模块,用于接收信令报文解析模块转发的所述信令号,对所述信令号进行地址译码;针对写信令号进行地址译码后,获得写信令的写地址和读地址,并输出写信令的写地址和读地址到写信令缓存RAM;针对读信令号进行地址译码后,获得读信令的响应号、读响应写地址、读取请求,并分别发送到响应报文整合模块、响应缓存RAM、读响应净荷提取模块;

写信令缓存RAM,用于接收和存储信令报文解析模块转发的写信令净荷、信令地址译码模块输出的写信令的写地址和读地址,并向写信令执行模块提供写信令净荷;

写信令执行模块,用于接收写信令缓存RAM提供的写信令净荷和地址,并执行写操作;

读响应净荷提取模块,用于根据信令地址译码模块输出的读取请求,读出读信令要求的净荷,并将所述净荷发送到响应缓存RAM;

响应缓存RAM,用于接收和存储信令地址译码模块发送的读响应写地址和读响应净荷提取模块发送的读信令要求的净荷,并向响应报文整合模块输出所述净荷;

响应报文整合模块,用于将从信令地址译码模块上接收到的读信令的响应号和从响应缓存RAM上接收到的读信令要求的净荷进行整合,得到最终的响应报文。

2.根据权利要求1所述的通信控制单元,其特征在于,信令地址译码模块包括写信令地址译码模块和读信令地址译码模块,所述写信令地址译码模块针对写信令号进行地址译码,获得写信令的写地址和读地址,然后输出到写信令缓存RAM;

所述读信令地址译码模块针对读信令号进行地址译码,获得读信令的响应号、读响应写地址、读取请求,并分别发送到响应报文整合模块、响应缓存RAM、读响应净荷提取模块。

3.根据权利要求1或2所述的通信控制单元,其特征在于,所述通信控制单元还包括接收分流模块和发送汇聚模块;

接收分流模块,用于接收信令报文,解析信令报文的报文类型,若报文类型符合通信控制单元的信令报文接收类型,则将信令报文转发给信令报文解析模块;

发送汇聚模块,用于将将响应报文发送出去。

4.根据权利要求1所述的通信控制单元,其特征在于,所述通信控制单元还包括信令号FIFO、信令净荷FIFO、响应号FIFO;

所述信令号FIFO设置在信令报文解析模块和信令地址译码模块之间,信令报文解析模块提取信令报文的信令号后,发送到信令号FIFO中进行缓存,信令地址译码模块再从信令号FIFO中获取信令号;

所述信令净荷FIFO设置在信令报文解析模块和写信令缓存RAM之间,信令报文解析模块提取信令报文的信令净荷后,发送到信令净荷FIFO中进行缓存,写信令缓存RAM再从信令净荷FIFO中获取信令净荷;

所述响应号FIFO设置在信令地址译码模块和响应报文整合模块之间,信令地址译码模块输出响应号到响应号FIFO,响应报文整合模块再从响应号FIFO中获取响应号。

5.根据权利要求2所述的通信控制单元,其特征在于,所述通信控制单元还包括信令净荷FIFO、写信令号FIFO、读信令号FIFO;

所述信令净荷FIFO设置在信令报文解析模块和写信令缓存RAM之间,信令报文解析模块提取信令报文的信令净荷后,发送到信令净荷FIFO中进行缓存,写信令缓存RAM再从信令净荷FIFO中获取信令净荷;

所述写信令号FIFO设置在信令报文解析模块和写信令地址译码模块之间,信令报文解析模块提取信令报文的信令号后,将写信令号发送到写信令号FIFO中进行缓存,写信令地址译码模块再从写信令号FIFO中获取写信令号;

所述读信令号FIFO设置在信令报文解析模块和读信令地址译码模块之间,信令报文解析模块提取信令报文的信令号后,将读信令号发送到读信令号FIFO中进行缓存,读信令地址译码模块再从读信令号FIFO中获取读信令号。

6.根据权利要求2或5所述的通信控制单元,其特征在于,所述通信控制单元中写信令地址译码模块还向读信令地址译码模块输出写锁住地址,读信令地址译码模块根据写锁住地址,判断是否需要延迟一定的时间再去执行读取请求。

7.一种采用权利要求4所述的通信控制单元进行通信控制的方法,其特征在于,包括:针对读信令的通信控制和针对写信令的通信控制;

针对读信令的通信控制,包括步骤:

信令报文解析模块,对信令报文进行解析,提取出读信令号,并发送到信令号FIFO进行缓存;

信令地址译码模块从信令号FIFO中获取读信令号,针对读信令号进行地址译码,获得读信令的响应号、读响应写地址、读取请求,响应号和读响应的写地址分别发送到响应号FIFO和响应缓存RAM,以及将读取请求发送到读响应净荷提取模块;

响应缓存RAM接收并存储读响应净荷提取模块发送过来的净荷以及信令地址译码模块发送过来的读响应写地址,并将读信令要求的净荷发送到响应报文整合模块;

响应报文整合模块,从响应号FIFO和响应缓存RAM中分别获取响应号和响应净荷,将响应号和响应净荷数据进行整合,得到最终的响应报文;

针对写信令的通信控制,包括步骤:

信令报文解析模块对信令报文进行解析,提取出写信令号和写信令净荷,并分别发送到信令号FIFO和信令净荷FIFO进行缓存;

信令地址译码模块从信令号FIFO中获取写信令号,针对写信令号进行地址译码,将写信令的读地址和写地址发送到写信令缓存RAM;

写信令缓存RAM从信令净荷FIFO中获取写信令净荷,从信令地址译码模块获取写信令的写地址和读地址,并存储写信令净荷、写信令的写地址和读地址;

写信令执行模块从写信令缓存RAM中获取净荷和地址,并执行写操作。

8.一种采用权利要求5所述的通信控制单元进行通信控制的方法,其特征在于,包括:针对读信令的通信控制和针对写信令的通信控制;

针对读信令的通信控制,包括步骤:

信令报文解析模块对信令报文进行解析,提取出读信令号,并发送到读信令号FIFO进行缓存;

读信令地址译码模块接收读信令号FIFO发送过来的读信令号,对读信令号进行解析和地址译码,解析出响应号、读响应写地址、读取请求,并分别发送到响应报文整合模块、响应缓存RAM、响应净荷提取模块;

响应净荷提取模块接收读取请求,读出净荷,并发送到响应缓存RAM;

响应缓存RAM,根据读响应写地址将净荷写入响应缓存RAM,并将净荷发送到响应报文整合模块;

响应报文整合模块,从读信令地址译码模块和响应缓存RAM中分别获取响应号和净荷,将响应号和响应净荷数据进行整合,得到最终的响应报文;

针对写信令的通信控制,包括步骤:

信令报文解析模块对信令报文进行解析,提取出写信令号和信令净荷,并分别发送到写信令号FIFO和信令净荷FIFO进行缓存;

写信令地址译码模块从写信令号FIFO中获取写信令号,对接收到的写信令号进行地址译码,将解译出的写信令的读地址和写地址发送到写信令缓存RAM;

写信令缓存RAM从信令净荷FIFO中获取写信令净荷,从写信令地址译码模块获取写信令的写地址和读地址,并存储写信令净荷、写信令的写地址和读地址,以方便进行寻址;

写信令执行模块从写信令缓存RAM中获取净荷和地址,并执行写操作。

9.根据权利要求8所述的通信控制的方法,其特征在于,

针对读信令的通信控制方法中,读信令地址译码模块还接收写信令地址译码模块发送过来的写锁住地址,根据写锁住地址,判断是否需要延迟一定的时间再输出读取请求;

针对写信令的通信控制方法中,写信令地址译码模块还包括向读信令地址译码模块输出写锁住地址的步骤。

说明书 :

一种将读写控制分开的通信控制单元和通信控制方法

技术领域

[0001] 本发明涉及通信技术领域,尤其涉及一种将读写控制分开的通信控制单元和通信控制方法。

背景技术

[0002] 通常情况下,数据链路层的数据包较多,信令包较少。其中,数据包多用于携带IP层以及以上各层媒体信息,而信令包主要用于携带链路层的控制信息。
[0003] 在CPU+FPGA的SOPC处理架构下,在进行网络处理的分层处理划分时,FPGA(可编程逻辑门阵列)会处理IP层中的部分报文和数据链路层的报文,其余层次的报文由CPU负责解析。由于通用处理器(如RAM、DSP)在进行数据链路层的信令报文解析和封装上会比较复杂,对实时性要求不敏感,处理速度很受限。若使用专用的网络处理芯片,虽然处理速度很快,但是在需求的变更和功能扩展时,会导致较长的研发周期和较高的成本,开发维护难度很大。在实际使用时,利用可编程逻辑器件FPGA,由于FPGA并行性和可编程的特点,在进行数据链路层包的解析和处理上,能相对容易,而且处理效率较高。
[0004] 目前,在FPGA中处理信令报文,大多情况下是利用数据FIFO(FPGA内部一种先进先出IP核)作为缓存(图1),利用状态机或其他时序逻辑进行条件判断的方式进行。但是,这种处理方式主要存在以下几个方面的问题:其一,过多的FIFO缓存能够保证信令的发送和响应的接收按照协议顺序实现,但是资源占用率高;其二,当功能变更而增加和删除指令时,可修改性和可扩展性很差;其三,由于读信令的净荷不需要提取和处理,指令净荷存储时不需要存储读指令的净荷,仅需要获取读信令的信令号,现有技术采用一个执行和处理模块的方式,不便于SRAM(Static Random Access Memory)架构的处理,且影响了整个指令执行的效率。
[0005] 针对上述问题,本发明的目的是提供一种采用RAM进行存储、并将读写控制分开的通信控制单元和通信控制方法,以解决现有技术中软件设计不灵活,可修改性和可扩展性差,指令执行效率低的问题。

发明内容

[0006] 鉴于上述的分析,本发明旨在提供一种将读写控制分开的通信控制单元和通信控制方法,用以解决现有技术中软件设计不灵活,可修改性和可扩展性差,指令执行效率低的问题。
[0007] 本发明的目的主要是通过以下技术方案实现的:
[0008] 本发明提供一种通信控制单元,具体包括:
[0009] 通信控制单元,其特征在于,包括:信令报文解析模块、写信令缓存RAM、信令地址译码模块、写信令执行模块、响应缓存RAM、读响应净荷提取模块和响应报文整合模块;
[0010] 信令报文解析模块,用于对接收到的信令报文进行解析,提取信令号和写信令净荷,并分别转发到信令地址译码模块和写信令缓存RAM;
[0011] 信令地址译码模块,用于接收信令号,对信令号进行地址译码;针对写信令号进行地址译码后,获得写信令的写地址和读地址,并输出写信令的写地址和读地址到写信令缓存RAM;针对读信令号进行地址译码后,获得读信令的响应号、读响应写地址、读取请求,并分别发送到响应报文整合模块、响应缓存RAM、读响应净荷提取模块;
[0012] 写信令缓存RAM,用于接收和存储写信令净荷、写信令写地址和读地址,并向写信令执行模块提供净荷;
[0013] 写信令执行模块,用于接收写信令净荷和地址,并执行写操作;
[0014] 读响应净荷提取模块,用于根据信令地址译码模块输出的读取请求,读出读信令要求的净荷,并将净荷发送到响应缓存RAM;
[0015] 响应缓存RAM,用于接收和存储读响应写地址和净荷,并向响应报文整合模块输出净荷;
[0016] 响应报文整合模块,用于将接收到的响应号和净荷进行整合,得到最终的响应报文。
[0017] 进一步的,所述通信控制单元还包括接收分流模块和发送汇聚模块;
[0018] 接收分流模块,用于接收信令报文,解析信令报文的报文类型,若报文类型符合通信控制单元的信令报文接收类型,则将信令报文转发给信令报文解析模块;
[0019] 发送汇聚模块,用于将将响应报文发送出去。
[0020] 进一步的,通信控制单元还包括信令号FIFO、信令净荷FIFO、响应号FIFO;
[0021] 所述信令号FIFO设置在信令报文解析模块和信令地址译码模块之间,信令报文解析模块提取信令报文的信令号后,发送到信令号FIFO中进行缓存,信令地址译码模块再从信令号FIFO中获取信令号;
[0022] 所述信令净荷FIFO设置在信令报文解析模块和写信令缓存RAM之间,信令报文解析模块提取信令报文的信令净荷后,发送到信令净荷FIFO中进行缓存,写信令缓存RAM再从信令净荷FIFO中获取信令净荷;
[0023] 所述响应号FIFO设置在信令地址译码模块和响应报文整合模块之间,信令地址译码模块输出响应号到响应号FIFO,响应报文整合模块再从响应号FIFO中获取响应号。
[0024] 优选的,信令地址译码模块包括写信令地址译码模块和读信令地址译码模块,[0025] 所述写信令地址译码模块针对写信令号进行地址译码,获得写信令的写地址和读地址,然后输出到写信令缓存RAM;
[0026] 所述读信令地址译码模块针对读信令号进行地址译码,获得读信令的响应号、读响应写地址、读取请求,并分别发送到响应报文整合模块、响应缓存RAM、读响应净荷提取模块。
[0027] 在信令地址译码模块进一步包括写信令地址译码模块和读信令地址译码模块的情况下:
[0028] 通信控制单元具体包括信令净荷FIFO、写信令号FIFO、读信令号FIFO;
[0029] 所述信令净荷FIFO设置在信令报文解析模块和写信令缓存RAM之间,信令报文解析模块提取信令报文的信令净荷后,发送到信令净荷FIFO中进行缓存,写信令缓存RAM再从信令净荷FIFO中获取信令净荷;
[0030] 所述写信令号FIFO设置在信令报文解析模块和写信令地址译码模块之间,信令报文解析模块提取信令报文的信令号后,将写信令号发送到写信令号FIFO中进行缓存,写信令地址译码模块再从写信令号FIFO中获取写信令号;
[0031] 所述读信令号FIFO设置在信令报文解析模块和读信令地址译码模块之间,信令报文解析模块提取信令报文的信令号后,将读信令号发送到读信令号FIFO中进行缓存,读信令地址译码模块再从读信令号FIFO中获取读信令号。
[0032] 优选的,所述通信控制单元中写信令地址译码模块还向读信令地址译码模块输出写锁住地址,读信令地址译码模块根据写锁住地址,判断是否需要延迟一定的时间再去执行读取请求。
[0033] 本发明还提供了一种采用通信控制单元进行通信控制的方法,包括:针对读信令的通信控制和针对写信令的通信控制;
[0034] 针对读信令的通信控制,包括步骤:
[0035] 信令报文解析模块对信令报文进行解析,提取出读信令号,并发送到信令号FIFO进行缓存;
[0036] 信令地址译码模块从信令号FIFO中获取读信令号,针对读信令号进行地址译码,获得读信令的响应号、读响应写地址、读取请求,响应号和读响应的写地址分别发送到响应号FIFO和响应缓存RAM,以及将读取请求发送到读响应净荷提取模块;
[0037] 响应缓存RAM接收并存储读响应净荷提取模块发送过来的净荷、以及信令地址译码模块发送过来的读响应写地址,并将读信令要求的净荷发送到响应报文整合模块;
[0038] 响应报文整合模块,从响应号FIFO和响应缓存RAM中分别获取响应号和响应净荷,将响应号和响应净荷数据进行整合,得到最终的响应报文;
[0039] 针对写信令的通信控制,包括步骤:
[0040] 信令报文解析模块对信令报文进行解析,提取出写信令号和信令净荷,并分别发送到信令号FIFO和信令净荷FIFO进行缓存;
[0041] 信令地址译码模块从信令号FIFO中获取写信令号,针对写信令号进行地址译码,将写信令的读地址和写地址发送到写信令缓存RAM;
[0042] 写信令缓存RAM从信令净荷FIFO中获取写信令净荷,从信令地址译码模块获取写信令的写地址和读地址,并存储写信令净荷、写信令的写地址和读地址;
[0043] 写信令执行模块从写信令缓存RAM中获取净荷和地址,并执行写操作。
[0044] 本发明还提供了一种通信控制的方法,包括:针对读信令的通信控制和针对写信令的通信控制;
[0045] 针对读信令的通信控制,包括步骤:
[0046] 信令报文解析模块对信令报文进行解析,提取出读信令号,并发送到读信令号FIFO进行缓存;
[0047] 读信令地址译码模块接收读信令号FIFO发送过来的读信令号,对读信令号进行解析和地址译码,解析出响应号、读响应写地址、读取请求,并分别发送到响应报文整合模块、响应缓存RAM、响应净荷提取模块;
[0048] 响应净荷提取模块接收读取请求,读出净荷,并发送到响应缓存RAM;
[0049] 响应缓存RAM,根据读响应写地址将净荷写入响应缓存RAM,并将净荷发送到响应报文整合模块;
[0050] 响应报文整合模块,从读信令地址译码模块和响应缓存RAM中分别获取响应号和净荷,将响应号和响应净荷数据进行整合,得到最终的响应报文;
[0051] 针对写信令的通信控制,包括步骤:
[0052] 信令报文解析模块对信令报文进行解析,提取出写信令号和信令净荷,并分别发送到写信令号FIFO和信令净荷FIFO进行缓存;
[0053] 写信令地址译码模块从写信令号FIFO中获取写信令号,对接收到的写信令号进行地址译码,将解译出的写信令的读地址和写地址发送到写信令缓存RAM;
[0054] 写信令缓存RAM从信令净荷FIFO中获取写信令净荷,从写信令地址译码模块获取写信令的写地址和读地址,并存储写信令净荷、写信令的写地址和读地址,以方便进行寻址;
[0055] 写信令执行模块从写信令缓存RAM中获取净荷和地址,并执行写操作。
[0056] 优选的,针对读信令的通信控制方法中,读信令地址译码模块还接收写信令地址译码模块发送过来的写锁住地址,根据写锁住地址,判断是否需要延迟一定的时间再输出读取请求;
[0057] 针对写信令的通信控制方法中,写信令地址译码模块还包括向读信令地址译码模块输出写锁住地址的步骤。
[0058] 本发明有益效果如下:
[0059] 本发明提供了一种将读写控制分开的通信控制单元和通信控制方法,采用两个RAM的形式实现寻址,使得接收和发送处理速度更快,同时降低了接收通路和发送通路的耦合性,信令的处理方式更加灵活,便于指令的扩展和升级;此外,将写执行和读响应分开,能提高指令的并行处理能力,大大提高整个指令执行的效率。
[0060] 本发明的其他特征和优点将在随后的说明书中阐述,并且,部分的从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

附图说明

[0061] 附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。
[0062] 图1为现有技术中利用FIFO缓存处理信令报文的通信控制单元设计架构;
[0063] 图2为各信令报文中包含的地址和数据内容示意图;
[0064] 图3为保留写信令净荷缓存的通信控制单元设计架构;
[0065] 图4为写指令和读指令之间没有耦合性的设计架构;
[0066] 图5为写指令和读指令之间有耦合性的设计架构。

具体实施方式

[0067] 下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理。
[0068] 在数据链路层所有的信令报文为固定长度,不同的信令类型由信令号区分。具体的功能由信令净荷表示。
[0069] 若将通信控制单元看成可信单元,接收写信令报文不需要向外发送响应报文。而读信令报文需要向外提供读取结果,因此需要发送响应报文。
[0070] 写信令报文、读信令报文和响应报文如图2所示,示出了信令报文中包含的地址和数据内容。值得注意的是读信令的净荷是没有任何可用信息可提取。
[0071] 本发明的第一具体实施例,公开了一种通信控制单元,如图3所示。由于读信令的净荷不需要提取和处理,故不需要存储读指令的净荷,仅需要获取读信令的信令号。因此,本实施例中,采用仅保留写信令净荷缓存的设计方案,将写执行和读响应分开,这样能大大提高整个指令执行的效率。
[0072] 通信控制单元,如图3所示,包括:
[0073] 接收分流模块,用于接收信令报文,对接收到信令报文的报文类型进行解析;若该报文类型符合通信控制单元的信令报文接收类型,则将信令报文转发给信令报文解析模块;反之若报文类型不符合,则检测接收到的信令报文是否在报文类型规定的范围内,如果在,则将信令报文转发,如果不在,则将该信令报文全部丢弃。
[0074] 具体的,在报文类型符合通信控制单元的信令报文接收类型的情况下,将信令报文除去报文类型信息的后续字节转发给信令报文解析模块。
[0075] 信令报文解析模块,用于对接收分流模块转发过来的信令报文进行解析,并提取信令号和信令净荷,将信令净荷和信令号分别转发到信令净荷FIFO和信令号FIFO。其中,信令报文解析模块丢弃不在控制通信单元解析范围内的信令报文,并产生相应的提示信号。
[0076] 信令号FIFO和信令净荷FIFO,分别用于存储信令报文的信令号和信令净荷。
[0077] 信令地址译码模块,从信令号FIFO中获取信令号,根据信令号进行地址译码;针对写信令号进行地址译码,获得写信令的写地址和读地址,并输出写信令的写地址和读地址到写信令缓存RAM;针对读信令号进行地址译码,获得读信令的响应号、读响应写地址、读取请求,并分别发送到响应号FIFO、响应缓存RAM、读响应净荷提取模块。
[0078] 写信令缓存RAM,用于接收和存储净荷和地址,并向外部提供净荷,便于写信令的寻址和净荷存储。具体的,写信令缓存RAM接收信令地址译码模块解译出的写信令写地址和读地址,并从信令净荷FIFO中获取写信令净荷,以及根据读地址读出净荷,并发送到写信令执行模块。
[0079] 写信令执行模块,用于接收净荷和地址,并执行写操作。
[0080] 响应号FIFO,用于接收来自信令地址译码模块输出的响应报文的响应号,并存储该响应号。
[0081] 读响应净荷提取模块,用于根据信令地址译码模块输出的读取请求,读出读信令要求的净荷,并将读出的净荷发送到响应缓存RAM进行存储。
[0082] 响应缓存RAM,用于接收和存储读响应写地址和净荷,并向外部读出数据,将读出数据发送到响应报文整合模块。响应缓存RAM的设置便于寻址和净荷存储。
[0083] 响应报文整合模块,用于从响应号FIFO获取响应号,从响应缓存RAM获取净荷数据,将响应号和净荷数据进行整合,得到最终的响应报文,并发送到发送汇聚模块。
[0084] 发送汇聚模块,用于接收从响应报文整合模块发送来的响应报文,将其他的数据报文和响应报文按照先到先发,后到后发的原则顺序发送出去。优选的,发送汇聚模块内余留缓存空间供其他模块的数据报文进行缓存。
[0085] 本实施例中,设置写信令缓存RAM和响应缓存RAM分开的方式,使得接收和发送处理速度更快,同时降低了接收通路和发送通路的耦合性;将写执行和读响应分开,能提高指令的并行处理能力,大大提高整个指令执行的效率。
[0086] 本发明的第二具体实施例,公开了一种采用第一具体实施例中的通信控制单元进行通信控制的方法,包括:针对读信令的通信控制和针对写信令的通信控制。
[0087] 针对读信令的通信控制,包括步骤:
[0088] 接收分流模块接收信令报文,解译报文类型,将符合信令报文接收类型的信令报文发送到信令报文解析模块;
[0089] 信令报文解析模块,对信令报文进行解析,提取出信令号,并发送到信令号FIFO进行缓存;由于读信令报文没有需要读取和处理信令净荷,这里不需要输出读信令净荷;
[0090] 信令地址译码模块从信令号FIFO中获取信令号,针对读信令号进行地址译码,获得读信令的响应号、读响应写地址、读取请求,并分别发送到响应号FIFO、响应缓存RAM、读响应净荷提取模块;
[0091] 响应缓存RAM接收并存储读响应净荷提取模块发送过来的净荷、以及信令地址译码模块发送过来的读响应写地址,并将读信令要求的净荷发送到响应报文整合模块;
[0092] 响应报文整合模块,从响应号FIFO和响应缓存RAM中分别获取响应号和响应净荷,将响应号和响应净荷数据进行整合,得到最终的响应报文,并发送到发送汇聚模块;
[0093] 由发送汇聚模块将读信令的响应报文发送出去。
[0094] 针对写信令的通信控制,包括步骤:
[0095] 接收分流模块接收信令报文,解译报文类型,将符合信令报文接收类型的信令报文发送到信令报文解析模块;
[0096] 信令报文解析模块对信令报文进行解析,提取出信令号和信令净荷,并分别发送到信令号FIFO和信令净荷FIFO进行缓存;
[0097] 信令地址译码模块从信令号FIFO中获取信令号,针对写信令号进行地址译码,获得写信令的写地址和读地址,并输出写信令的写地址和读地址到写信令缓存RAM;
[0098] 写信令缓存RAM从信令净荷FIFO中获取写信令净荷,从信令地址译码模块获取写信令的写地址和读地址,并存储写信令净荷、写信令的写地址和读地址;
[0099] 写信令执行模块从写信令缓存RAM中获取净荷和地址,并执行写操作。
[0100] 本发明的第三具体实施例,公开了一种通信控制单元,如图4所示。该通信控制单元是在第一具体实施例的基础上进行的改进。它是针对写信令报文和读信令报文不存在耦合关系时的设计架构。这样,可以保证写信令的存储和执行不影响读信令的存储、执行和读响应的发送。
[0101] 通信控制单元,如图4所示,包括:
[0102] 接收分流模块,用于接收信令报文,对接收到信令报文的报文类型进行解析;若该报文类型符合通信控制单元的信令报文接收类型,则将信令报文转发给信令报文解析模块;反之若报文类型不符合,则检测接收到的信令报文是否在报文类型规定的范围内,如果在,则将信令报文转发,如果不在,则将该信令报文全部丢弃。
[0103] 具体的,若报文类型符合通信控制单元的信令报文接收类型的情况下,将信令报文除去报文类型信息的后续字节转发给信令报文解析模块。
[0104] 信令报文解析模块,对接收分流模块转发过来的信令报文进行解析,针对写信令提取信令净荷和信令号,分别发送到信令净荷FIFO和写信令号FIFO进行缓存;针对读信令,提取读信令号,发送到读信令号FIFO进行缓存。
[0105] 写信令号FIFO和信令净荷FIFO,分别用于存储写信令报文的信令号和信令净荷。
[0106] 读信令号FIFO用于存储读信令号。
[0107] 写信令地址译码模块,用于从写信令号FIFO中获取写信令的信令号,并对写信令的信令号进行地址译码,解译出写信令读地址和写信令写地址,发送到写信令缓存RAM。
[0108] 写信令缓存RAM,用于从信令净荷FIFO中获取并存储写信令净荷,从写信令地址译码模块获取并存储写信令读地址和写信令写地址,并输出写入净荷到写信令执行模块;写信令缓存RAM存储净荷和地址,便于写信令的寻址和净荷存储。
[0109] 写信令执行模块,用于接收净荷和地址,执行写信令的写操作。
[0110] 读信令地址译码模块,用于从读信令号FIFO中获取读信令的信令号,并对读信令的信令号进行地址译码,将解析出的响应号、读响应写地址、读取请求分别发送到响应报文整合模块、响应缓存RAM、响应净荷提取模块。
[0111] 响应净荷提取模块,用于根据读取请求,读出读信令要求的净荷,并将读出的净荷发送到响应缓存RAM进行存储。
[0112] 响应缓存RAM,用于接收和存储读响应写地址和净荷,并向外部读出数据,将读出数据发送到响应报文整合模块。响应缓存RAM的设置便于寻址和净荷存储。
[0113] 响应报文整合模块,用于将响应号和净荷数据进行整合,得到最终的响应报文,并发送到发送汇聚模块。
[0114] 发送汇聚模块,用于将其他的数据报文和本地的响应报文按照先到先发,后到后发的原则顺序发送出去。优选的,发送汇聚模块内余留缓存空间供其他模块的数据报文进行缓存。
[0115] 本发明的第四具体实施例,公开了一种采用第三具体实施例中的通信控制单元进行通信控制的方法,包括:针对读信令的通信控制和针对写信令的通信控制。
[0116] 针对读信令的通信控制,包括步骤:
[0117] 接收分流模块接收信令报文,解译报文类型,将符合信令报文接收类型的信令报文发送到信令报文解析模块;
[0118] 信令报文解析模块对信令报文进行解析,针对读信令提取出信令号,并发送到读信令号FIFO进行缓存;
[0119] 读信令地址译码模块接收读信令号FIFO发送过来的信令号,对信令号进行解析和地址译码,解析出响应号、读响应写地址、读取请求,并分别发送到响应报文整合模块、响应缓存RAM、响应净荷提取模块;
[0120] 响应净荷提取模块接收读取请求,读出净荷,并发送到响应缓存RAM;
[0121] 响应缓存RAM,根据读响应写地址将净荷写入响应缓存RAM,并将净荷发送到响应报文整合模块;
[0122] 响应报文整合模块,从读信令地址译码模块和响应缓存RAM中分别获取响应号和净荷,将响应号和响应净荷数据进行整合,得到最终的响应报文,并发送到发送汇聚模块;
[0123] 由发送汇聚模块将读信令的响应报文发送出去。
[0124] 针对写信令的通信控制,包括步骤:
[0125] 接收分流模块接收信令报文,解译报文类型,将符合信令报文接收类型的信令报文发送到信令报文解析模块;
[0126] 信令报文解析模块对信令报文进行解析,针对写信令提取出信令号和信令净荷,并分别发送到写信令号FIFO和信令净荷FIFO进行缓存;
[0127] 写信令地址译码模块从写信令号FIFO中获取信令号,对接收到的信令号进行地址译码,将解译出的写信令的读地址和写地址发送到写信令缓存RAM;
[0128] 写信令缓存RAM从信令净荷FIFO中获取写信令净荷,从写信令地址译码模块获取写信令的写地址和读地址,并存储写信令净荷、写信令的写地址和读地址,以方便进行寻址;
[0129] 写信令执行模块从写信令缓存RAM中获取净荷,并执行写操作。
[0130] 本发明的第五具体实施例,公开了一种通信控制单元,如图5所示。通信控制单元是在第三具体实施例的基础上进行的改进。本实施例针对写信令和读信令存在耦合关系时的情况,此时需要利用写地址锁住读的机制。当用户发送的写指令和读指令中的地址为同一地址时,为防止用户的读指令中的数据为未更新之前的数据。本实施例在写信令地址译码模块与读信令地址译码模块之间增加了写锁住地址的输出。由读信令地址译码模块根据写锁住地址决定是否延迟一段时间,再去读取读指令所需要的数据。本实施例公开的方法适用于高并发、请求量大的情况。
[0131] 本实施例的具体方案在第三具体实施例的基础上,在写信令地址译码模块和读信令地址译码模块中间,增加了一个从写信令地址译码模块向读信令地址译码模块发送写锁住地址的输出,其余通信控制单元的部件和各部件输出与第三具体实施例相同。
[0132] 具体的,通过写信令地址译码模块向读信令地址译码模块输出写锁住地址,读信令地址译码模块根据写锁住地址,判断是否需要延迟一定的时间再去执行读取请求。
[0133] 本发明的第六具体实施例,公开了一种采用第五具体实施例中的通信控制单元进行通信控制的方法,包括:针对读信令的通信控制和针对写信令的通信控制。
[0134] 针对读信令的通信控制方法中,读信令地址译码模块还接收写信令地址译码模块发送过来的写锁住地址,根据写锁住地址,判断是否需要延迟一定的时间再输出读取请求。针对读信令的通信控制方法的其他步骤与第五实施例的相同。
[0135] 针对写信令的通信控制方法中,写信令地址译码模块还包括向读信令地址译码模块输出写锁住地址的步骤。针对写信令的通信控制方法的其他步骤与第五实施例的相同。
[0136] 综上所述,本发明实施例提供了一种将读写控制分开的通信控制单元和通信控制方法,通信控制单元中均采用两个RAM的形式实现,使得接收和发送处理速度更快,同时降低了接收通路和发送通路的耦合性,信令的处理方式更加灵活,便于指令的扩展和升级;此外,将写执行和读响应分开,能提高指令的并行处理能力,大大提高整个指令执行的效率。通过设计写指令报文和读指令报文不存在耦合关系的架构,以保证写指令的存储和执行不影响读指令的存储执行和读响应的发送;通过设计写指令报文和读指令报文存在耦合关系的架构,能够更好地应对写指令和读指令中的地址为同一地址的情形,更适用于高并发、请求量大的情况。
[0137] 本领域技术人员可以理解,实现上述实施例方法的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读存储介质中。其中,所述计算机可读存储介质为磁盘、光盘、只读存储记忆体或随机存储记忆体等。
[0138] 以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。