芯片的统计数据的管理方法和装置的制作方法

文档序号:7706392阅读:134来源:国知局
专利名称:芯片的统计数据的管理方法和装置的制作方法
技术领域
本发明涉及计算机应用技术领域,尤其涉及一种芯片的统计数据的管理方法和装
置。
背景技术
在当前的网络应用中,越来越多的队列数和越来越精细的统计测量标准,导致 统计数据越来越大,对存储统计数据的片内RAM (Random Access Memory,随机存取存储 器)的容量要求也越来越大。由于片内RAM的资源非常珍贵,就需要采用容量大的片外 DRAM (Dynamic Random-Access Memory,动态随机存储器)来存储上述统计数据。现有技术中的一种通过片外DRAM来存储统计数据的方法为全部采用片外DRAM 来存储统计数据。将片外DRAM中的存储空间划分为不同的bank(存储单元),在设定的时 间间隔内,对同一个bank只能访问一次。给CPU对DRAM中存储的统计数据的读写请求分 配固定的处理时隙,该处理时隙与业务通道对DRAM中存储的统计数据的读写请求所占有 的处理时隙不互相冲突。在实现本发明过程中,发明人发现现有技术中的通过片外DRAM来存储统计数据 的方法至少存在如下问题当业务通道获取的多个统计数据之间的时间间隔比较短,并且 DRAM的传输带宽比较小时,业务通道需要在上述bank的设定的时间间隔内,多次访问同一 个bank,以将获取的多个统计数据写入到DRAM中。从而造成bank的访问冲突,进行将导致 统计数据不能正确地写入到DRAM中。

发明内容
本发明的实施例提供了一种芯片的统计数据的管理方法和装置,以解决现有技术 中的片外DRAM中的bank的访问冲突问题。一种芯片的统计数据的管理方法,包括获取业务通道发送的统计数据,将所述统计数据存入先进先出存储器FIFO中,并 获取所述统计数据对应的片外存储装置的存储地址;获取同样对应于所述存储地址的其他统计数据,并在所述FIFO中将对应于所述 存储地址的统计数据进行累加,得到累加值;获取所述片外存储装置中的所述存储地址上的原有统计值,将所述累加值与所述 原有统计值进行相加,得到当前统计值,将所述当前统计值写入到所述片外存储装置中的 所述存储地址上。一种芯片的统计数据的管理装置,包括累加处理模块,用于接收业务通道发送的统计数据,将所述统计数据存入片内先 进先出存储器FIFO中,并对所述统计数据进行累加,得到累加值;写入处理模块,用于获取所述片外存储装置中的存储地址中的原有统计值,将所 述累加值与所述原有统计值进行相加,得到当前统计值,将所述当前统计值写入到所述存储地址上。由上述本发明的实施例提供的技术方案可以看出,本发明实施例实现了通过一个 写入操作,将针对同一个存储地址的多个统计数据一起写入到片外存储器中。从而有效地 缓冲了对片外存储器的读写操作,有效地降低了对片外存储器中的bank的访问冲突,大大 提高了芯片对统计数据的处理能力。


为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用 的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本 领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他 的附图。图1为本发明实施例一提供的一种芯片的统计数据的管理方法的原理示意图;图2为本发明实施例一提供的一种芯片的统计数据的管理方法的处理流程图;图3为本发明实施例二提供的一种在CPU、业务通道对统计数据的读写操作之间 进行旁路处理的方法的处理流程图;图4为本发明实施例提供的一种芯片的统计数据的管理装置的具体实现结构图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。在本发明实施例中,将和片外存储装置中的同一个存储地址对应的统计数据进行 累加,得到累加值。获取所述片外存储装置中的同一个存储地址上的原有统计值,将所述累加值与所 述原有统计值进行相加,得到当前统计值,将所述当前统计值写入到所述片外存储装置中 的同一个存储地址上。进一步地,接收业务通道发送的统计数据,获取所述统计数据对应的片外存储装 置中的存储地址,通过片内存储装置将所述统计数据进行存储,向所述片外存储装置发送业务通道的读请求,以获取所述片外存储装置中的所述 存储地址上的原有统计值;在接收到所述片外存储装置返回的所述原有统计值之前,通过所述片内存储装置 将接收到的和所述存储地址对应的所有统计数据进行存储和累加,得到累加值。进一步地,在接收到所述片外存储装置返回的所述原有统计值之后,将所述累加 值与所述原有统计值进行相加,得到当前统计值;向所述片外存储装置发送业务通道的写请求,以将所述当前统计值写入到所述片 外存储装置中的同一个存储地址上。进一步地,在中央处理器从所述片外存储装置中的存储地址读取了统计值之后, 向所述片内存储装置输入针对所述存储地址的写0请求,并对所述片外存储装置中的存储地址上的统计值进行清O操作;在所述片内存储装置从所述片外存储装置读取了所述统计值之后,检查所述片内 存储装置中是否存在针对所述存储地址的写0请求,如果存在,则将所述片内存储装置中 的和所述存储地址对应的统计数据的累加值写入到所述片外存储装置中的所述存储地址 上;如果不存在,则将所述累加值和所述统计值进行相加,得到当前统计值,将所述当前统 计值写入到所述片外存储装置中的存储地址上。 进一步地,按照时隙复用的处理方式,配置中央处理器对所述片外存储装置中的 统计数据的读写操作的处理时隙,以及业务通道对所述片外存储装置中的统计数据的读写 操作的处理时隙。为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步 的解释说明,且各个实施例并不构成对本发明实施例的限定。实施例一该实施例全部采用片外DRAM来存储统计数据,该实施例提供的一种芯片的统计 数据的管理方法的原理示意图如图1所示,具体处理过程如图2所示,包括如下步骤步骤21、将统计数据输入到芯片内设的FIF0(First in First Out,先进先出)存 储器中。在业务通道获取了需要写入到片外DRAM中的统计数据后,业务通道将上述统计 数据传输给芯片,芯片将该统计数据存储在芯片内设置的一个特定FIFO存储器中。在本发 明实施例中,因为请求端和发送端的时延比例是3 :1,因此该特定FIFO存储器的深度值可 以选择为大于4。FIFO的深度指的是FIFO可以存储多少个N位的数据(如果宽度为N)。如一个8 位的FIFO,若深度为8,它可以存储8个8位的数据,深度为12,就可以存储12个8位的数 据。上述深度值的主要作用就是吸收数据返回时延,该数据返回时延包括片外DRAM的读 请求返回延时,以及芯片内部和片外DRAM处理的时延抖动。步骤22、根据所述统计数据所对应的片外DRAM的存储地址,向片外DRAM发送读请 求。芯片获取上述统计数据对应的片外DRAM中的bank的存储地址后,向片外DRAM发 送业务通道的针对上述存储地址的读请求,以获取上述存储地址上的原有统计值。步骤23、将针对于所述存储地址的统计数据进行累加。由于片外DRAM的读写延迟比较长,片外DRAM向芯片返回上述存储地址上的原有 统计值需要一定的时间间隔。在芯片接收到片外DRAM返回的原有统计值之前,如果芯片又接收到业务通道传 输过来的针对上述存储地址的一个或多个其它统计数据,则芯片将该一个或多个其它统计 数据也存储到上述特定FIFO存储器中,并不向片外DRAM发送业务通道的针对该存储地址 的读请求。上述特定FIFO存储器将针对同一个上述存储地址的、上述先接收到的统计数据 和后接收到的一个或多个其它统计数据进行累加,得到累加值。步骤24、接收到片外DRAM返回的原有统计值后,将特定FIFO存储器中的针对上述 存储地址的统计数据的累加值与上述原有统计值进行相加,得到当前统计值并写入到片外DRAM 中。在芯片接收到上述片外DRAM返回的针对上述存储地址的原有统计值后,芯片获 取上述特定FIFO存储器中的针对上述存储地址的统计数据的累加值,将该累加值与上述 原有统计值进行相加,得到当前统计值。芯片向片外DRAM发送业务通道的针对上述存储地址的写请求,通过该写请求将 上述当前统计值写入到片外DRAM中的上述存储地址上。
该实施例实现了通过一个写请求,将针对同一个存储地址的多个统计数据一起写 入到片外DRAM中。上述特定FIFO存储器取到了缓冲对片外DRAM的读写操作、吸收芯片内 部和片外DRAM处理的时延抖动的作用,有效地降低了对片外DRAM中的bank的访问冲突, 大大提高了芯片对统计数据的处理能力。实施例二该实施例提供的一种在CPU、业务通道对统计数据的读写操作之间进行旁路处理 的方法的处理流程如图3所示,包括如下处理步骤步骤31、按照时隙复用的处理方式,配置CPU对片外DRAM中存储的统计数据的读 写操作的处理时隙,以及业务通道对片外DRAM中存储的统计数据的读写操作的处理时隙。该实施例按照时隙复用的处理方式,配置CPU对片外DRAM中存储的统计数据的读 写操作的处理时隙,以及业务通道对片外DRAM中存储的统计数据的读写操作的处理时隙。 当CPU对片外DRAM中存储的统计数据没有读写操作时,业务通道对片外DRAM中存储的统 计数据的读写操作可以占用上述CPU的处理时隙,反之亦然。如果业务通道中的携带统计数据的业务报文的发送最大速度是xMPPS(即每秒钟 报文的数量),CPU发送的读请求最大速度是yMPPS,则配置DRAM中的一个bank的访问带 宽是(x+y)MPPS。业务通道对片外DRAM中存储的统计数据的读写操作的优先级高于CPU对片外 DRAM中存储的统计数据的读写操作的优先级。即在同一时刻,同时有业务通道对统计数据 的读写操作和CPU对统计数据的读写操作,则优先考虑业务通道对统计数据的读写操作。步骤32、当CPU从片外DRAM中的存储地址读取了统计数据的原有统计值之后,向 上述特定FIFO存储器输入一个针对上述存储地址的写0请求,并对上述原有统计值进行清 0操作。当CPU向片外DRAM发送了统计数据的读操作之后,片外DRAM根据该读操作获取 本地相应的存储地址上的统计数据,向CPU返回该统计数据的原有统计值。然后,片外DRAM需要将上述统计数据的原有统计值清0,由于片外DRAM的处理存 在比较大的延迟,上述对统计数据的原有统计值清0操作需要一段时间来完成。因此,在本 发明实施例中,在片外DRAM开始进行上述统计数据的原有统计值清0操作之前,由系统产 生一个针对上述存储地址的写0请求,并输入给上述芯片内部的特定FIFO存储器。步骤33、特定FIFO存储器根据本地的针对上述存储地址的写0请求,直接将针对 上述存储地址的统计数据的累加值写入到上述片外DRAM的存储地址上。在片外DRAM对上述统计数据的原有统计值进行清0操作的过程中,或者,在CPU 读取上述统计数据的原有统计值之前,片外DRAM还接收到芯片发送的业务通道对上述存 储地址上的统计数据的读请求,由于此时该统计数据没有被清0,片外DRAM将上述相应地址上的统计数据的原有统计值返回给芯片中的上述特定FIFO存储器。上述特定FIFO存储器在接收到上述统计数据的原有统计值后,检查本地是否存 在针对上述存储地址的写0请求,如果存在上述写0请求,则不将上述统计数据的原有统计 值与本地的上述存储地址的统计数据的累加值进行相加,而是直接将本地的上述存储地址 的统计数据的累加值写入到上述片外DRAM的上述存储地址上,并且将上述针对上述存储 地址的写0请求清除掉;如果不存在上述写0请求,则将上述统计数据的原有统计值与本地 的上述存储地址的统计数据的累加值进行相加,得到当前统计值并写入到片外DRAM中的 上述存储地址上。 该实施例通过向特定FIFO存储器输入一个针对指定存储地址的写0请求,实现了 特定FIFO存储器对指定存储地址上的统计数据的写入操作与CPU对指定存储地址上的统 计数据的清0操作同步,即实现了芯片内部和芯片外部之间清0操作同步。从而保证了指 定存储地址上的统计数据的数值的正确性。本发明实施例还提供了一种芯片的统计数据的管理装置,其具体实现结构如图4 所示,具体可以包括累加处理模块41,用于将和片外存储装置中的同一个存储地址对应的统计数据进 行累加,得到累加值;写入处理模块42,用于获取所述片外存储装置中的同一个存储地址上的原有统计 值,将所述累加值与所述原有统计值进行相加,得到当前统计值,将所述当前统计值写入到 所述片外存储装置中的同一个存储地址上。所述装置还可以包括旁路处理模块43,在中央处理器从所述片外存储装置中的存储地址读取了统计值 之后,向所述片内存储装置中的所述写入处理模块42输入针对所述存储地址的写0请求;所述写入处理模块42在从所述片外存储装置读取了所述统计值之后,检查本地 是否存在针对所述存储地址的写0请求,如果存在,则将和所述存储地址对应的统计数据 的累加值写入到所述片外存储装置中的所述存储地址上;如果不存在,则将所述累加值和 所述统计值进行相加,得到当前统计值,将所述当前统计值写入到所述片外存储装置中的 存储地址上所述累加处理模块41具体可以包括数据存储模块411,用于接收业务通道发送的统计数据,将接收到的和所述片外存 储装置中的同一个存储地址对应的所有统计数据进行存储;数据处理模块412,用于在接收到所述片外存储装置返回的所述原有统计值之前, 将所述数据存储模块中存储的和所述同一个存储地址对应的所有统计数据进行累加,得到 累加值。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以 通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质 中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁 碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random Access Memory, RAM)等。综上所述,本发明实施例实现了特定FIFO存储器通过一个写请求,将针对同一个存储地址的多个统计数据一起写入到片外DRAM中。上述特定FIFO存储器取到了缓冲对片 外DRAM的读写操作、吸收芯片内部和片外DRAM处理的时延抖动的作用,有效地降低了对片 外DRAM中的bank的访问冲突,大大提高了芯片对统计数据的处理能力。并且,减少了对片 内SRAM的消耗。而且一个FIFO存储器即可以实现多个计数器的功能,进一步的降低了片 内SRAM的消耗。该实施例通过向特定FIFO存储器输入一个针对指定存储地址的写0请求,实现了 特定FIFO存储器对指定存储地址上的统计数据的写入操作与CPU对指定存储地址上的统 计数据的清0操作同步,即实现了芯片内部和芯片外部之间清0操作同步。从而保证了指 定存储地址上的统计数据的数值的正确性。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以 通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质 中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁 碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random Access Memory, RAM)等。以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换, 都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围 为准。
权利要求
一种芯片的统计数据的管理方法,其特征在于,包括获取业务通道发送的统计数据,将所述统计数据存入先进先出存储器FIFO中,并获取所述统计数据对应的片外存储装置的存储地址;获取同样对应于所述存储地址的其他统计数据,并在所述FIFO中将对应于所述存储地址的统计数据进行累加,得到累加值;获取所述片外存储装置中的所述存储地址上的原有统计值,将所述累加值与所述原有统计值进行相加,得到当前统计值,将所述当前统计值写入到所述片外存储装置中的所述存储地址上。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括向所述片外存储装置发送业务通道的读请求,以获取所述片外存储装置中的所述存储 地址上的原有统计值;在接收到所述片外存储装置返回的所述原有统计值之前,通过片内存储装置将接收到 的和所述存储地址对应的所有统计数据进行存储和累加,得到累加值。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括向所述片外存储装置发送业务通道的写请求,以将所述当前统计值写入到所述片外存 储装置中的所述存储地址上。
4.根据权利要求1所述的方法,其特征在于,所述的片外存储装置包括片外动态随机 存储器DRAM。
5.根据权利要求1所述的方法,其特征在于,所述的方法还包括在中央处理器从所述片外存储装置中的存储地址读取了统计值之后,向所述片内存储 装置输入针对所述存储地址的写O请求,并对所述片外存储装置中的存储地址上的统计值 进行清O操作;在所述片内存储装置从所述片外存储装置读取了所述统计值之后,检查所述片内存储 装置中是否存在针对所述存储地址的写O请求,如果存在,则将所述片内存储装置中的和 所述存储地址对应的统计数据的累加值写入到所述片外存储装置中的所述存储地址上;如 果不存在,则将所述累加值和所述统计值进行相加,将所述相加的结果写入到所述片外存 储装置中的存储地址上。
6.根据权利要求5所述的方法,其特征在于,所述的方法还包括按照时隙复用的处理方式,配置中央处理器对所述片外存储装置中的统计数据的读 写操作的处理时隙,以及业务通道对所述片外存储装置中的统计数据的读写操作的处理时 隙。
7.—种芯片的统计数据的管理装置,其特征在于,包括累加处理模块,用于接收业务通道发送的统计数据,将所述统计数据存入片内先进先 出存储器FIFO中,并对所述统计数据进行累加,得到累加值;写入处理模块,用于获取所述片外存储装置中的存储地址中的原有统计值,将所述累 加值与所述原有统计值进行相加,得到当前统计值,将所述当前统计值写入到所述存储地 址上。
8.根据权利要求7所述的统计数据的管理装置,其特征在于,所述装置还包括旁路处理模块,在中央处理器从所述片外存储装置中的存储地址读取了统计值之后,向所述累加处理模块输入针对所述存储地址的写O请求;所述写入处理模块在从所述片外存储装置读取了所述统计值之后,检查本地是否存在 针对所述存储地址的所述写O请求,如果存在,则将和所述存储地址对应的统计数据的累 加值写入到所述片外存储装置中的所述存储地址上;如果不存在,则将所述累加值和所述 统计值进行相加,得到当前统计值,将所述当前统计值写入到所述片外存储装置中的存储 地址上。
9.根据权利要求7或8所述的统计数据的管理装置,其特征在于,所述累加处理模块具 体包括数据存储模块,用于接收业务通道发送的统计数据,将接收到的对应于所述存储地址 的所有统计数据进行存储;数据处理模块,用于在接收到所述片外存储装置返回的所述原有统计值之前,将和所 述存储地址对应的统计数据进行累加,得到累加值。
全文摘要
本发明实施例提供了一种芯片的统计数据的管理方法和装置。该方法主要包括将和片外存储装置中的同一个存储地址对应的统计数据进行累加,得到累加值,获取所述片外存储装置中的同一个存储地址上的原有统计值,将所述累加值与所述原有统计值进行相加,得到当前统计值,将所述当前统计值写入到所述片外存储装置中的同一个存储地址上。利用本发明,实现了通过一个写入操作,将针对同一个存储地址的多个统计数据一起写入到片外存储器中。从而有效地缓冲了对片外存储器的读写操作,有效地降低了对片外存储器中的bank的访问冲突,大大提高了芯片对统计数据的处理能力。
文档编号H04L12/56GK101848135SQ20091012952
公开日2010年9月29日 申请日期2009年3月24日 优先权日2009年3月24日
发明者刘月, 崔靖杰 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1