一种时分复用缓存实现时隙数据包重组的方法技术

技术编号:27141745 阅读:18 留言:0更新日期:2021-01-27 21:18
本发明专利技术公开了一种时分复用缓存实现时隙数据包重组的方法。本方法将缓存资源进行时分复用,即对于同一个数据缓存,在不同的时间存储着多个不同时隙的数据包。输入的原始时隙复用通信协议数据的不同时隙中的数据包存储进同一块数据缓存中。数据包重组输出时按照链表地址对数据缓存进行读取,将某个时隙的数据包进行连续输出。数据缓存的地址动态管理写入数据缓存的某个地址后即标记该地址被占用,读出数据缓存的某个地址后即标记该地址被释放并标记为空闲地址,写入数据缓存前需要分配数据缓存的空闲的地址。采用该方案实现了时隙复用通信协议中数据包的重组,提高了缓存的利用率,节约了缓存资源。基于有限的缓存资源实现更多时隙中数据包的重组。更多时隙中数据包的重组。更多时隙中数据包的重组。

【技术实现步骤摘要】
一种时分复用缓存实现时隙数据包重组的方法


[0001]本专利技术涉及通信领域,尤其是涉及一种时分复用缓存实现时隙数据包重组的方法,具体涉及到时隙复用通信协议中数据包的重组。

技术介绍

[0002]在时隙复用通信协议中,数据包分散位于各自的时隙之中,当需要将数据包进行重组时,传统做法是为每一个时隙分别进行缓存,虽然分别缓存实现更容易,但是会造成缓存资源的浪费,因为当某个时隙中没有数据包时也会占用缓存资源。

技术实现思路

[0003]本专利技术的目的就是要解决上述现实应用中存在的问题,特别提供一种时分复用缓存实现时隙数据包重组的方法。
[0004]本专利技术采取的技术方案是:一种时分复用缓存实现时隙数据包重组的方法,其特征在于,该方法利用时隙缓存模块、数据缓存模块、地址动态管理缓存模块、读取任务队列缓存模块、链表地址缓存模块和链表读取模块对时隙复用通信协议中数据包进行重组,步骤如下:一、时隙缓存模块负责记录每个数据包的开头被写入数据缓存中的地址以及当前数据包片段被写入数据缓存模块中的地址;具体子步骤如下:(1)、当前输入若是某个数据包的开头;A、时隙缓存模块则将地址动态管理缓存模块为该数据包初始分配的首地址写入时隙缓存模块中记录下来;B、时隙缓存模块将当前数据包开头片段按照地址动态管理缓存模块的当前分配空闲地址写入数据缓存模块中;C、时隙缓存模块将当前分配空闲地址作为当前数据包开头片段被写入数据缓存模块中的地址写入时隙缓存模块。
[0005](2)、当前输入若是某个数据包的中间片段;A、时隙缓存模块则将当前数据包中间片段按照地址动态管理缓存模块的当前分配空闲地址写入数据缓存模块中;B、时隙缓存模块将对应于当前时隙的记录的数据包片段被写入数据缓存模块中的地址作为新的链表地址,在链表地址缓存模块的此链表地址中写入当前分配空闲地址;C、时隙缓存模块将当前分配空闲地址作为当前数据包片段被写入数据缓存模块中的地址写入时隙缓存模块。
[0006](3)、当前输入若是某个数据包的结尾片段;A、时隙缓存模块则将当前数据包结尾片段按照地址动态管理缓存模块的当前分配空闲地址写入数据缓存模块中;
B、时隙缓存模块将对应于当前时隙的记录的数据包片段被写入数据缓存模块中的地址作为新的链表地址,在链表地址缓存模块的此链表地址中写入当前分配空闲地址;C、时隙缓存模块将当前时隙的记录的数据包首地址写入读取任务队列缓存模块。
[0007]二、数据缓存模块负责存储数据包的片段,当需要将数据包片段写入数据缓存模块时,由地址动态管理缓存模块为当前数据包片段分配新的空闲地址,数据包片段被写入数据缓存模块中的当前分配空闲地址中;当链表读取模块从数据缓存模块中读取数据包缓存时,读取数据缓存模块的地址传递给地址动态管理缓存模块。
[0008]三、地址动态管理缓存模块负责标记数据缓存模块中哪些地址是被占用的、哪些地址被释放为空闲地址;当时隙缓存模块需要将数据包片段写入数据缓存模块时,地址动态管理缓存模块为当前数据包片段分配一个新的空闲地址,并将此地址标记为已占用;若当前数据包片段是数据包的开头片段,则当前分配的空闲地址是为某数据包初始分配的首地址,需要将此首地址写入时隙缓存模块中;当链表读取模块从数据缓存模块中读取了某个数据包缓存时,相应的数据缓存模块的读出地址被地址动态管理缓存模块释放并标记为空闲地址。
[0009]四、链表地址缓存模块负责记录每个数据包位于数据缓存模块中的依次地址顺序;当时隙缓存模块将数据包片段写入数据缓存模块时,同时也将链表地址写入链表地址缓存;当链表读取模块需要读取数据缓存模块时,需要先从链表地址缓存模块中读取出链表地址。
[0010]五、读取任务队列缓存模块负责记录完整数据包读取任务;当时隙缓存模块写入了某个数据包的结尾片段时,意味着该数据包已经完整的存储于数据缓存模块中,此时时隙缓存模块将这个完整数据包的首地址写入读取任务队列缓存模块的队尾;若读取任务队列缓存不为空,意味着数据缓存模块中存在着完整的数据包有待读出,此时读取任务队列缓存模块将队首的数据包的首地址传递给链表读取模块,链表读取模块以此首地址开始读取数据缓存模块。
[0011]六、链表读取模块负责从数据缓存模块中依次读出完整的数据包并输出;当读取任务队列缓存模块传递给链表读取模块一个新的数据包的首地址时,链表读取模块以此首地址开始读取数据缓存模块中存储的数据包片段,同时读取相同地址的链表地址缓存模块中的链表地址,并以此链表地址作为下一个相邻数据包片段的读取地址,链表读取模块不停重复以上过程,直至从数据缓存模块中读取出了完整的数据包,并将完整数据包输出。
[0012]本方法将缓存资源进行时分复用,即对于同一个数据缓存,在不同的时间存储着多个不同时隙的数据包。输入的原始时隙复用通信协议数据的不同时隙中的数据包存储进同一块数据缓存中。数据缓存中的数据包的地址不是连续的,而是以链表的数据结构进行存储。数据包重组输出时按照链表地址对数据缓存进行读取,将某个时隙的数据包进行连续输出。数据缓存的地址动态管理写入数据缓存的某个地址后即标记该地址被占用,读出数据缓存的某个地址后即标记该地址被释放并标记为空闲地址,写入数据缓存前需要分配数据缓存的空闲的地址。当写入数据缓存的数据是某个数据包的最后的结尾时,意味着数据缓存中已经写入了该数据包的全部数据了,即将该数据包的读取任务传递给读取任务队
列。时隙缓存模块需要记录每个时隙中数据包的开头写入了数据缓存中的地址以及当前数据包片段被写入数据缓存中的地址。
[0013]采用该方案,可以实现时隙复用通信协议中数据包的重组,并且不同的时隙存储进同一个数据缓存中,数据缓存以链表形式动态管理地址。在不同的时间,数据缓存中存储的是不同时隙的相应数据包,即实现了缓存的时分复用。
[0014]本专利技术的有益效果是:实现了时隙复用通信协议中数据包的重组,并将数据缓存采用时分复用的方法,提高了缓存的利用率,节约了缓存资源。基于有限的缓存资源可以实现更多时隙中数据包的重组。
附图说明
[0015]图1是本专利技术的原理框图。
具体实施方式
[0016]以下结合附图和实施例对本专利技术作进一步说明。
[0017]参照图1,以下按照逐个模块介绍实现的具体方法。
[0018]1)时隙缓存模块时隙复用通信协议的原始输入数据分为多个不同的时隙,每个数据包分别位于相应的时隙中,时隙缓存模块负责记录每个数据包的开头被写入数据缓存中的地址以及当前数据包片段被写入数据缓存模块中的地址。当前输入若是某个数据包的开头,时隙缓存模块则将地址动态管理缓存模块为该数据包初始分配的首地址写入时隙缓存模块中记录下来,并将当前数据包片段(开头片段)按照地址动态管理缓存模块的当前分配空闲地址写入数据缓存模块中,并将这个当前分配空闲地址作为当前数据包片段被写入数据缓存模块中的地址写入时隙缓存模块;当前输入若是某个数据包的中间片段,时隙缓存模块则将当前数据包片段(中间片段)按照地址动态管理缓存模块的当前分配本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种时分复用缓存实现时隙数据包重组的方法,其特征在于,该方法利用时隙缓存模块、数据缓存模块、地址动态管理缓存模块、读取任务队列缓存模块、链表地址缓存模块和链表读取模块对时隙复用通信协议中数据包进行重组,步骤如下:一、时隙缓存模块负责记录每个数据包的开头被写入数据缓存中的地址以及当前数据包片段被写入数据缓存模块中的地址;具体子步骤如下:(1)、当前输入若是某个数据包的开头;A、时隙缓存模块则将地址动态管理缓存模块为该数据包初始分配的首地址写入时隙缓存模块中记录下来;B、时隙缓存模块将当前数据包开头片段按照地址动态管理缓存模块的当前分配空闲地址写入数据缓存模块中;C、时隙缓存模块将当前分配空闲地址作为当前数据包开头片段被写入数据缓存模块中的地址写入时隙缓存模块;(2)、当前输入若是某个数据包的中间片段;A、时隙缓存模块则将当前数据包中间片段按照地址动态管理缓存模块的当前分配空闲地址写入数据缓存模块中;B、时隙缓存模块将对应于当前时隙的记录的数据包片段被写入数据缓存模块中的地址作为新的链表地址,在链表地址缓存模块的此链表地址中写入当前分配空闲地址;C、时隙缓存模块将当前分配空闲地址作为当前数据包片段被写入数据缓存模块中的地址写入时隙缓存模块;(3)、当前输入若是某个数据包的结尾片段;A、时隙缓存模块则将当前数据包结尾片段按照地址动态管理缓存模块的当前分配空闲地址写入数据缓存模块中;B、时隙缓存模块将对应于当前时隙的记录的数据包片段被写入数据缓存模块中的地址作为新的链表地址,在链表地址缓存模块的此链表地址中写入当前分配空闲地址;C、时隙缓存模块将当前时隙的记录的数据包首地址写入读取任务队列缓存模块;二、数据缓存模块负责存储数据包的片段,当需要将数据包片段写入数据缓存模块时,由地址动态管理缓存模块为当前数据包片段分配新的空闲地址,数据包片段被写入数据缓存模块中的当前分配空闲地址中;当...

【专利技术属性】
技术研发人员:李斌张晓峰陈伟峰
申请(专利权)人:天津光电通信技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利