[发明专利]数据处理的方法和装置有效
申请号: | 201180001883.2 | 申请日: | 2011-09-28 |
公开(公告)号: | CN102388385A | 公开(公告)日: | 2012-03-21 |
发明(设计)人: | 王工艺;陈昊;郑伟;常胜 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F17/50 | 分类号: | G06F17/50 |
代理公司: | 北京龙双利达知识产权代理有限公司 11329 | 代理人: | 王君;肖鹂 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据处理 方法 装置 | ||
技术领域
本发明实施例涉及领域数据处理领域,并且更具体地,涉及数据处理的方法和装置。
背景技术
在ASIC(APPLICATION SPECIFIC INTEGRATED CIRCUITS,专用集成电路)或者FPGA(FIELD PROGRAMMABLE GATE ARRAY,现场可编程门阵列)设计中,经常需要处理各种的协议规定的数据包,这些数据包可能属于不同的类型,即便属于同一类型,这些数据包也可能具有可变的长度。
QPI(Quick Path Interconnect,快速互联通道)协议中定义了多种数据包,其中有的数据包的长度是一定的,也有的数据包的长度是可变的。例如,NCS(Non Coherent Standard,非一致性标准)包就是一种可变长包,通常由1至3个数据单元(即flit)组成,其中每个数据单元flit是定长的,例如可以为80比特(bit)。可变长的NCS包的长度在第一个flit中可以得到。为了便于描述,“NCS1”表示长度为1个flit的NCS包,即只有一个头flit(header flit);NCS2表示长度为2个flit的NCS包,即包含一个头flit和一个数据flit(data flit);NCS3表示长度为3个flit的NCS包,即包含一个header flit和两个data flit。除了NCS包之外,还存在其他类型的数据包,例如空数据包。这些其他类型的数据包可以是定长或变长的。
在某些ASIC或者FPGA应用设计的场景中,需要在多个不同的缓冲器(BUFFER)的一个缓冲器中存储对齐的同类型数据包,因此需要将同类型数据包中的各个数据单元进行对齐操作,其中对齐操作中会将其他类型数据包视作空数据包。所谓“对齐操作”就是“挤掉”上述数据单元之间的空数据包的过程。假设某一时钟周期的输入具有N个数据单元(其中N为正整数),那么这N个数据单元对齐操作时需要考虑约2N种移位可能。此外,设计完成后,若对上述设计的代码进行验证时,假如输入中有L种数据类型(其中L为正整数),那么验证时的输入存在LN种组合情况。显然,如果要想穷举全部组合情况本身并非易事。而且,为了提高代码覆盖率,验证人员不得不利用尽量多的数据单元组合对代码进行校验,势必增加不必要的工作量。同时,时序也很难满足系统的要求。
发明内容
发明实施例提供一种数据处理的方法和装置,能够基于分段并行机制对多个可变长包进行对齐处理。
一方面,提供了一种数据处理的方法,包括:按顺序将对应于当前时钟周期的包含N个数据单元的输入数据分为M个数据段,其中M和N均为正整数,N大于等于2且M小于N;并行地对M个数据段的每一个中的第一类型的数据单元进行对齐操作,使第一类型的数据单元移位至其他类型的数据单元之前,其中其他类型的数据单元均被置为空数据包类型,其中第一类型是需处理的数据包类型,其他类型是不需处理的数据包类型;将对齐处理后的M个数据段组合成包含N个数据单元的输出数据。
另一方面,提供了一种数据处理的装置,包括:分段单元,用于按顺序将对应于当前时钟周期的包含N个数据单元的输入数据分为M个数据段,其中M和N均为正整数,N大于等于2且M小于N;并行处理单元,用于并行地对M个数据段的每一个中的第一类型的数据单元进行对齐操作,使第一类型的数据单元移位至其他类型的数据单元之前,其中其他类型的数据单元均被置为空数据包类型,第一类型是需处理的数据包类型,其他类型是不需处理的数据包类型;组合单元,用于将对齐处理后的M个数据段组合成包含N个数据单元的输出数据。
本发明实施例的数据处理的方法和装置对可变长包进行分段且并行地对各段进行对齐操作,从而易于维护设计代码,而且提高设计代码验证时的代码覆盖率,同时明显改善时序。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的数据处理的方法的流程图。
图2是根据本发明实施例的数据处理的装置的结构图。
图3是根据本发明实施例的并行处理单元的结构图。
图4是根据本发明实施例的数据处理的具体的过程示意图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201180001883.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种数据包的并发处理方法及设备
- 下一篇:一种斯特林发动机气体增压装置