申请日2010.12.17
公开(公告)日2011.06.22
IPC分类号G06F9/38
摘要
本发明提供了一种利用流水处理提高内存效率的方法,并行处理单元同时发出请求,在请求地址中加上tag号;根据内存返回数据携带的tag对返回数据分门别类存储到相应缓冲区;使用时在相应缓存区取数,进行数据处理。本发明采用流水线进行并行访存,有效提高了访存效率。
权利要求书
1.一种利用流水处理提高内存效率的方法,其特征在于:步骤如下:
A、流水线系统接收新的报文信息时,根据四元组通过哈希算法得到哈希值,每级流水线访问TCP连接索引表,将32位访存地址加宽至40位,高8位为tag号;
B、第一级流水线等待TCP连接索引表的返回数据,保存到缓冲区队列,tag号位1;在等待第一级流水线返回数据的同时,第二级水线从tag号位1的队列中取址访问TCP连接记录缓冲区,同时流水线可以接收新的报文消息,进行第一次访存;连接管理系统根据tag号将返回数据分门别类保存至先进先出队列缓冲区;
C、流水线系统在需要使用数据时,从相应缓冲区取出数据使用。
2.如权利要求1所述一种利用流水处理提高内存效率的方法,其特征在于:连接管理采用3级流水线方式并发处理多个TCP连接,第一级为访问TCP连接索引表,第二级为TCP连接记录缓冲区,第3级为更新上述两个表结构。
3.如权利要求1所述一种利用流水处理提高内存效率的方法,其特征在于:采用流水线方式进行内存访问。
4.如权利要求1所述一种利用流水处理提高内存效率的方法,其特征在于:在进行第一级和第二级两个访存的同时,如果流表地址和乱序缓冲区快要用尽,可以发起更新上述两个地址池的访问,tag分别为3和4,返回数据存储在相应的缓冲区队列中。
说明书
一种利用流水处理提高内存效率的方法
技术领域
本发明涉及内存控制技术,具体讲涉及一种利用流水处理提高内存效率的方法。
背景技术
计算机软件在当今社会得到了越来越广泛的应用,一方面,计算机软件正在被应用于越来越多的领域当中;另一方面,计算机软件的用户也由原来的专业的计算机工程师,转变为现在的不同知识水平的广大用户。这就要求10计算机软件功能强大,但简单易用,这种要求直接导致计算机软件规模变大,复杂度增加,使得用户在应用计算机软件时,软件错误的发生率增加,其中,最主要、最常见的错误就是软件在进行内存访问时引起的错误。这种错误总体表现为两种形式:一种是读写地址引用错误;另一种是读写权限违反许可,这两种错误统称为非法内存访问。目前,非法内存访问会导致严重的不良后巧果:非法读内存,会引起数据引用出错,导致系统混乱;非法写内存,会破坏内存中的正常数据,严重时,还会导致系统瘫痪
目前对内存访问的方法中,基本都是通过顺序访问内存来进行数据查找,由于从内存访问到数据返回需要较多周期数,如果顺序访问会造成系统性能低下。
发明内容
本发明的目的是提出一种高效率内存访问方法。
一种利用流水处理提高内存效率的方法,步骤如下:
A、流水线系统接收新的报文信息时,根据四元组通过哈希算法得到哈希值,每级流水线访问TCP连接索引表,将32位访存地址加宽至40位,高8位为tag号;
B、第一级流水线等待TCP连接索引表的返回数据,保存到缓冲区队列,tag号位1;在等待第一级流水线返回数据的同时,第二级水线从tag号位1的队列中取址访问TCP连接记录缓冲区,同时流水线可以接收新的报文消息,进行第一次访存;连接管理系统根据tag号将返回数据分门别类保存至先进先出队列缓冲区;
C、流水线系统在需要使用数据时,从相应缓冲区取出数据使用。
本发明的第一种优选技术方案在于:连接管理采用3级流水线方式并发处理多个TCP连接,第一级为访问TCP连接索引表,第二级为TCP连接记录缓冲区,第3级为更新上述两个表结构。
本发明的第二种优选技术方案在于:采用流水线方式进行内存访问。
本发明的第三种优选技术方案在于:在进行第一级和第二级两个访存的同时,如果流表地址和乱序缓冲区快要用尽,可以发起更新上述两个地址池的访问,tag分别为3和4,返回数据存储在相应的缓冲区队列中。
本发明采用流水线进行并行访存,将数据保存在相应的先进先出缓冲区队列中,有效提高了访存效率。