实现环命令事务内存的事务存储器、方法、终端及网络处理器与流程

文档序号:36796441发布日期:2024-01-23 12:19阅读:16来源:国知局
实现环命令事务内存的事务存储器、方法、终端及网络处理器与流程

本发明涉及数据处理领域,特别是涉及一种实现环命令事务内存的事务存储器、方法、终端及网络处理器。


背景技术:

1、网络处理器是一种执行程序以处理数据网络中的数据包流量的设备。网络处理器也常被称为网络流处理器或简称为流处理器。网络处理器集成电路能够接收数据包、对数据包和相关联的数据包数据进行分类和执行操作,以及传输数据包。当数据包流经网络处理器时,集成电路上的各种处理器被要求对数据包和相关的数据包数据执行各种类型的处理和分析。

2、现有的网络处理器从存储器读取数据的方式包括:事务存储器外部的实体在地址总线上发送地址码,经存储器地址译码器选通此存储单元,并发出读信号,存储器将此地址上的数据送到数据总线上发送给事务存储器外部的实体;往存储器写数据的方式包括:事务存储器外部的实体在地址总线上发送地址码,经存储器地址译码器选通此存储单元,同时将数据送到数据总线上,发出写信号,存储器将数据总线上的数据送入已经被选中地址的存储单元中。

3、但随着吞吐量需求的增加,现有的储存器很难满足高吞吐量的数据操作需求,因此寻求改进这种网络处理器集成电路的方法成为的急切的需求。


技术实现思路

1、鉴于以上所述现有技术的缺点,本发明的目的在于提供一种实现环命令事务内存的事务存储器、方法、终端及网络处理器,用于解决以上现有技术问题。

2、为实现上述目的及其他相关目的,本发明提供一种实现环命令事务内存的事务存储器,所述事务存储器包括:存储器单元,用于储存多个缓冲环;其中,每个缓冲环对应有一环描述符;环形缓冲器控制电路,与所述存储器单元通信,用于基于流水线控制逻辑,由来自外部实体的环操作命令对所述存储器单元中对应的缓冲环执行相应的放置环或读取环操作。

3、于本发明的一实施例中,所述存储器单元还包括:分别储存每个缓冲环的环描述符的寄存器单元;其中,每个寄存器单元包括:环基础寄存器,用于储存对应缓冲环的环大小值以及环基地址;头指针寄存器,用于储存指向对应缓冲环的头缓冲区的头指针;尾指针寄存器,用于储存指向对应缓冲环的尾缓冲区的尾指针。

4、于本发明的一实施例中,所述流水线控制逻辑包括:环操作阶段逻辑以及存储器单元访问阶段逻辑;其中,环操作阶段逻辑,用于当接收到由外部实体发送的环操作命令时,从所述存储器单元中获取对应缓冲环的环描述符,并判断是否符合对应的环操作条件;存储器单元访问阶段逻辑,用于在判断符合环操作条件的情况下,通过访问所述存储器单元对对应的缓冲环执行所述环操作命令所对应的放置环或读取环操作,并将操作完成的返回消息反馈至外部实体;在判断不符合环操作条件的情况下,向外部实体返回错误消息;所述环操作阶段逻辑还用于在操作执行完成后更新对应缓冲环的环描述符。

5、于本发明的一实施例中,所述存储器单元访问阶段逻辑包括:读取阶段逻辑、执行阶段逻辑以及写入阶段逻辑;其中,读取阶段逻辑,用于在判断符合环操作条件的情况下,向所述存储器单元发送对应缓冲环的读取请求;执行阶段逻辑,用于获得由所述存储器单元反馈的返回数据,执行对应所述环操作命令的放置环或读取环操作;写入阶段逻辑,用于将操作完成的返回消息反馈至外部实体;还用于在判断不符合环操作条件的情况下,向外部实体返回错误消息。

6、于本发明的一实施例中,基于流水线控制逻辑,由来自外部实体的环操作命令对所述存储器单元中对应的缓冲环执行相应的放置环操作包括:当接收到由外部实体发送的标识一缓冲环的放置环命令时,利用所述环操作阶段逻辑从所述存储器单元中获取对应缓冲环的环描述符,并使用环描述符中的头指针、尾指针以及环大小值来确定该放置环命令所标识的缓冲环是否已满;若未满,则基于所述放置环命令执行第一操作,并利用写入阶段逻辑将操作完成后的返回消息反馈至外部实体;若已满,则利用所述写入阶段逻辑向外部实体返回错误消息;其中,所述第一操作包括:利用所述读取阶段逻辑利用由环操作阶段逻辑基于对应缓冲环的尾指针以及放置环命令中的指针偏移量获得的数据内存地址所述存储器单元发送对应缓冲环的读取请求;利用执行阶段逻辑接收由所述存储器单元基于该读取请求返回的返回值,且将所述返回值与由外部实体发送的pull数据合并,并将64比特的合并数据写回所述存储器单元的对应缓冲环中;利用环操作阶段逻辑基于放置环命令中的指针偏移量,对储存在存储器单元中对应缓冲环的尾指针寄存器的尾指针进行更新。

7、于本发明的一实施例中,基于流水线控制逻辑,由来自外部实体的环操作命令对所述存储器单元中对应的缓冲环执行相应的放置环操作包括:当接收到由外部实体发送的标识有一缓冲环的以低优先级放入环命令时,利用环操作阶段逻辑从所述存储器单元中获取标识的缓冲环的环描述符,并使用头指针和尾指针来确定该以低优先级放入环命令标识的缓冲环是否具有至少预定量的空闲缓冲区空间;若具有,则基于所述以低优先级放入环命令执行第二操作,并利用所述写入阶段逻辑将操作完成后的返回消息反馈至外部实体;若不具有,则利用所述写入阶段逻辑向外部实体返回错误消息;其中,所述第二操作包括:利用所述读取阶段逻辑利用由环操作阶段逻辑基于对应缓冲环的尾指针以及放置环命令中的指针偏移量获得的数据内存地址所述存储器单元发送对应缓冲环的读取请求;利用执行阶段逻辑接收由所述存储器单元基于该读取请求返回的返回值,且将所述返回值与由外部实体发送的pull数据合并,并将64比特的合并数据写回所述存储器单元的对应缓冲环中;利用环操作阶段逻辑基于放置环命令中的指针偏移量,对储存在存储器单元中对应缓冲环的尾指针寄存器的尾指针进行更新。

8、于本发明的一实施例中,基于流水线控制逻辑,由来自外部实体的环操作命令对所述存储器单元中对应的缓冲环执行相应的读取环操作包括:当接收到由外部实体发送的标识有一缓冲环的读取环命令时,利用环操作阶段逻辑从所述存储器单元中获取标识的缓冲环的环描述符,并使用环描述符中的头指针以及尾指针来确定放置环命令所标识的缓冲环是否为空;若不为空,则基于读取环命令执行第三操作,并利用所述写入阶段逻辑将读操作完成后的读取值反馈至外部实体;若为空,则利用所述写入阶段逻辑向外部实体返回错误消息;其中,所述第三操作包括:利用读取阶段逻辑利用由环操作阶段逻辑基于对应缓冲环的头指针以及读取环命令中的指针偏移量获得的数据内存地址向所述存储器单元发送对应缓冲环的读取请求;利用执行阶段逻辑接收由所述存储器单元基于该读取请求返回的读取值,以供由写入阶段逻辑将读取值返回至外部实体;利用环操作阶段逻辑基于该读取环命令中的指针偏移量,对储存在存储器单元中对应缓冲环的头指针寄存器的头指针进行更新。

9、于本发明的一实施例中,基于流水线控制逻辑,由来自外部实体的环操作命令对所述存储器单元中对应的缓冲环执行相应的读取环操作包括:当接收到由外部实体发送的标识一具有缓冲环读取优先级顺序的缓冲环组的从一组环中的一个获取命令时,利用环操作阶段逻辑从所述存储器单元中获取该缓冲环组中每个缓冲环的环描述符,并使用各环描述符中的头指针以及尾指针来确定各缓冲环是否均为空;若不均为空,则基于缓冲环读取优先级顺序,对标识的缓冲环组的优先级最高且不为空的缓冲环执行第四操作,并利用所述写入阶段逻辑将读操作完成后的读取值反馈至外部实体;若均为空,利用所述写入阶段逻辑向外部实体返回错误消息;其中,所述第四操作包括:利用所述读取阶段逻辑利用由环操作阶段逻辑基于优先级最高且不为空的缓冲环的头指针以及从一组环中的一个获取命令中的指针偏移量获得的数据内存地址向所述存储器单元发送对应的缓冲环的读取请求;利用所述执行阶段逻辑接收由所述存储器单元基于该读取请求返回的读取值,以供由写入阶段逻辑将读取值返回至外部实体;利用环操作阶段逻辑基于从一组环中的一个获取命令中的指针偏移量,对储存在存储器单元中对应缓冲环的头指针寄存器的头指针进行更新。

10、为实现上述目的及其他相关目的,本发明提供一种实现环命令事务内存方法,应用于事务存储器,包括:储存有多个缓冲环的存储器单元,所述方法包括:获取来自外部实体的环操作命令;基于流水线控制逻辑,由所述环操作命令对所述存储器单元中储存的对应的缓冲环执行相应的放置环或读取环操作。

11、为实现上述目的及其他相关目的,本发明提供一种实现环命令事务内存终端,包括:一或多个存储器及一或多个处理器;所述一或多个存储器,用于存储计算机程序;所述一或多个处理器,连接所述存储器,用于运行所述计算机程序以执行所述的方法。

12、为实现上述目的及其他相关目的,本发明提供一种网络处理器,包括:所述的实现环命令事务内存的事务存储器。

13、如上所述,本发明是一种实现环命令事务内存的事务存储器、方法、终端及网络处理器,具有以下有益效果:本发明通过在事务存储器中增加环形缓冲器控制电路,基于流水线控制逻辑,由来自外部实体的环操作命令对所述存储器单元中对应的缓冲环进行操作控制,实现以缓冲环的形式对储存的数据进行管理,可满足大吞吐量数据的操作需求,进而提高数据读取以及写入的效率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1