一种结构体排序方法、排序装置及排序器制造方法及图纸

技术编号:23148624 阅读:33 留言:0更新日期:2020-01-18 13:18
本发明专利技术实施例公开了一种结构体排序方法、排序装置及排序器,该方法包括:从M个结构体的目标定点数中确定最大的N个不重复的目标定点数作为排序参考数;按照从大到小的顺序依次将每个排序参考数与每个结构体的目标定点数比较;若比较的结果为相等,则记录相等的目标定点数所属结构体的序号;根据序号的记录顺序,将对应的结构体依次写入存储器的指定位置。在排序时仅读出结构体的目标定点数,且在排序后按照序号记录的顺序将对应的结构体写入指定位置,既减少了数据读出和写入以及数据比较所消耗的动态功耗,又避免了对数据的频繁读出和写入,显著降低了排序的动态功耗。

A sort method, device and sequencer of structure

【技术实现步骤摘要】
一种结构体排序方法、排序装置及排序器
本申请涉及数据处理
,尤其涉及一种结构体排序方法、排序装置及排序器。
技术介绍
结构体是一种包括多类数据的数据集合。一般,结构体内的每类数据均可视为一个定点数,每个定点数的位宽均不相同。目前,在以结构体中某一类数据的大小为依据对多个结构体进行排序时,每轮次排序均会对存储结构体的本地存储器进行读出和写入操作,排序过程频繁的访问本地存储器,导致了较大的动态功耗。
技术实现思路
有鉴于此,本申请实施例提供了一种结构体排序方法、排序装置及排序器,能够解决现有技术中排序过程对本地存储器的频繁访问所导致的动态功耗大的问题。本申请实施例提供的一种结构体排序方法,所述方法,包括:从M个结构体的目标定点数中确定最大或最小的N个不重复的目标定点数作为排序参考数;M为大于1的正整数,N为小于M的正整数;按照预设顺序依次将每个排序参考数与每个所述结构体的目标定点数比较;若比较的结果为相等,则记录相等的目标定点数所属结构体的序号;当所述排序参考数为最大的N个不重复的目标定点数本文档来自技高网...

【技术保护点】
1.一种结构体排序方法,其特征在于,所述方法,包括:/n从M个结构体的目标定点数中确定最大或最小的N个不重复的目标定点数作为排序参考数;M为大于1的正整数,N为小于M的正整数;/n按照预设顺序依次将每个排序参考数与每个所述结构体的目标定点数比较;若比较的结果为相等,则记录相等的目标定点数所属结构体的序号;当所述排序参考数为最大的N个不重复的目标定点数时,所述预设顺序为从大到小;当所述排序参考数为最小的N个不重复的目标定点数时,所述预设顺序为从小到大;/n根据序号的记录顺序,将对应的结构体依次写入存储器的指定位置。/n

【技术特征摘要】
1.一种结构体排序方法,其特征在于,所述方法,包括:
从M个结构体的目标定点数中确定最大或最小的N个不重复的目标定点数作为排序参考数;M为大于1的正整数,N为小于M的正整数;
按照预设顺序依次将每个排序参考数与每个所述结构体的目标定点数比较;若比较的结果为相等,则记录相等的目标定点数所属结构体的序号;当所述排序参考数为最大的N个不重复的目标定点数时,所述预设顺序为从大到小;当所述排序参考数为最小的N个不重复的目标定点数时,所述预设顺序为从小到大;
根据序号的记录顺序,将对应的结构体依次写入存储器的指定位置。


2.根据权利要求1所述的方法,其特征在于,所述记录相等的目标定点数所属结构体的序号,之后还包括:
判断记录的序号数量是否小于预设排序数量;
若否,则执行所述根据序号的记录顺序,将对应的结构体依次写入存储器的指定位置。


3.根据权利要求2所述的方法,其特征在于,当比较完每个排序参考数后,记录的序号数量仍小于所述预设排序数量时,所述根据序号的记录顺序,将对应的结构体依次写入存储器的指定位置,之前还包括:
将最后一个比较的排序参考数减小预设差值,更新所述最后一个比较的排序参考数;当所述排序参考数为最大的N个不重复的目标定点数时,所述预设差值为一;当所述排序参考数为最小的N个不重复的目标定点数时,所述预设差值为负一;
再次比较所述最后一个比较的排序参考数和第p个结构体的目标定点数;p∈[1,M];
当比较的结果为相等时,记录相等的目标定点数所属结构体的序号并判断记录的序号数量是否小于预设排序数量;
若否,则执行所述根据序号的记录顺序,将对应的结构体依次写入存储器的指定位置;
若是,则更新p后,返回执行所述再次比较所述最后一个比较的排序参考数和第p个结构体的目标定点数;
当所述最后一个比较的排序参考数与所述M个结构体的目标定点数均比较过后记录的序号数量仍小于预设排序数量时,返回执行所述将最后一个比较的排序参考数减一更新所述最后一个比较的排序参考数。


4.根据权利要求1-3任意一项所述的方法,其特征在于,所述从M个结构体的目标定点数中确定最大或最小的N个不重复的目标定点数作为排序参考数,具体包括:
初始设置第一个-第N个存储区域,并将每个存储区域中存储的数置零;
将第i个所述结构体的目标定点数与每个所述存储区域中存储的数进行比较,i∈[1,M];
当所述排序参考数为最大的N个不重复的目标定点数时,若所述第i个结构体的目标定点数大于或等于K个存储区域中存储的数且所述第i个结构体的目标定点数不等于第N-K+1个存储区域中存储的数,则将第j+1个存储区域中存储的数替换为第j个存储区域中存储的数,并将第N-K+1个存储区域中存储的数替换为所述第i个结构体的目标定点数;K∈[1,N],j∈[N-K+1,N-1];
当所述排序参考数为最小的N个不重复的目标定点数时,若所述第i个结构体的目标定点数小于或等于K个存储区域中存储的数且所述第i个结构体的目标定点数不等于第N-K+1个存储区域中存储的数,则将第j+1个存储区域中存储的数替换为第j个存储区域中存储的数,并将第N-K+1个存储区域中存储的数替换为所述第i个结构体的目标定点数;K∈[1,N],j∈[N-K+1,N-1];
更新i后,返回所述将第i个所述结构体的目标定点数与每个所述存储区域中存储的数进行比较;
当所述M个结构体的目标定点数与每个所述存储区域中存储的数均比较过后,按顺序将所述第一个-第N个存储区域中存储的数确定为所述排序参考数。


5.一种结构体排序装置,其特征在于,所述装置,包括:参考确定单元、数据处理单元和顺序写入单元;
所述参考确定单元,用于从M个结构体的目标定点数中确定最大或最小的N个不重复的目标定点数作为排序参考数;M为大于1的正整数,N为小于M的正整数;
所述数据处理单元,用于按照预设顺序依次将每个排序参考数与每个所述结构体的目标定点数比较;还用于在比较的结果为相等时,记录相等的目标定点数所属结构体的序号;
其中,当所述排序参考数为最大的N个不重复的目标定点数时,所述预设顺序为从大到小;当所述排序参考数为最小的N个不重复的目标定点数时,所述预设顺序为从小到大;
所述顺序写入单元,用于根据序号的记录顺序,将对应的结构体依次写入存储器的指定位置。


6.根据权利要求5所述的装置,其特征在于,所述装置还包括:数量判断单元;
所述数量判断单元,用于在所述数据处理单元记录相等的目标定点数所属结构体的序号之后,判断记录的序号数量是否小于预设排序数量;还用于当判断结果为否时,触发所述顺序写入单元。


7.根据权利要求6所述的装置,其特征在于,所述装置还包括:数据更新单元;
所述数据更新单元,用于当所述数据处理单元比较完每个排序参考数后,所述数量判断单元的判断结果仍为是时,将最后一个比较的排序参考数减小预设差值,更新所述最后一个比较的排序参考数后触发所述数据处理单元;
其中,当所述排序参考数为最大的N个不重复的目标定点数时,所述预设差值为一;当所述排序参考数为最小的N个不重复的目标定点数时,所述预设差值为负一;
所述数据处理单元,还用于再次比较所述最后一个比较的排序参考数和每个结构体的目标定点数;还用于当比较完所述最后一个比较的排序参考数和每个结构体的目标定点数时所述数量判断单元的判断结果仍为是时,则再次触发所述数据更新单元。


8.根据权利要求5-7任意一项所述的装置,其特征在于,所述参考确定单元,具体包括:初始化子单元、比较...

【专利技术属性】
技术研发人员:苗准王旭杨桦董咏梅
申请(专利权)人:合一智芯科技北京有限公司
类型:发明
国别省市:北京;11

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

1