[发明专利]一种数据排序装置、方法及芯片有效
申请号: | 201710752463.7 | 申请日: | 2017-08-28 |
公开(公告)号: | CN109426484B | 公开(公告)日: | 2021-08-31 |
发明(设计)人: | 路长斌;郭祥本 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F7/78 | 分类号: | G06F7/78 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 冯艳莲 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 排序 装置 方法 芯片 | ||
一种数据排序装置、方法及芯片,用以解决现有排序电路的组合逻辑链路较长,排序速率较低的问题。该装置包括:第一比较模块、第一确定模块、第二比较模块、第二确定模块、计算模块以及排序输出模块,通过比较模块、确定模块以及计算模块,可确定出待排序数组中小于或者大于每一数据的数据个数值(记为第三数值),第三数值可表征每一数据的大小顺序,通过排序输出模块按照每一数据对应的第三数值从大到小或者从小到大的顺序输出与其对应的数据,即可实现将数据按从大到小或者从小到大的顺序排序。由于针对每一数据确定与其对应的第三数值的过程是独立的,故数据排序装置的组合逻辑链路较短,可提高电路运行的速率,实现快速数据排序。
技术领域
本申请涉及排序技术领域,尤其涉及一种数据排序装置、方法及芯片。
背景技术
排序是数据处理的最基本的操作之一,目前,实现数据排序的方法可以分为两类:软件实现方式和硬件实现方式。
现有技术中,针对数据排序的软件实现方式已经发展的较完善,每种软件实现方式针对其应用场景具有不同的特点,比较常用的软件实现方式有:插入排序、冒泡排序、选择排序和快速排序等。但软件实现数据排序的方式,排序速度比较慢,且需要占用处理器资源。在排序速度要求较高或者没有处理器资源的场合,无法采用软件实现方式进行数据排序。
现有以硬件实现方式实现数据排序的原理,大多借鉴软件实现方式中的数据排序原理,下面详细描述以硬件方式借鉴软件实现方式中的冒泡排序和插入排序的实现原理。图1为以硬件方式实现冒泡排序的原理图,如图1所示,采用硬件实现方式对包括N个数据的数组进行从大到小的冒泡排序时,将数组中第N个数与第N-1个数比较,若第N个数比第N-1个数大,则交换第N个数与第N-1个数的位置,否则不作处理,其中,将比较结果中数值大的数据记为数据_1N-1,数值小的数据记为数据_1N,之后将数据_1N-1与第N-2个数比较,重复前述比较操作,将比较结果中数值大的数据记为数据_2N-2,数值小的数据记为数据_2N-1,通过上述操作处理一遍之后,最大的数据(数据_N-11)排在第一位。重复上述操作进行第二遍排序处理,从数组中第N个数据开始与第N个数之前的数据比较,直到比较至数组中第2个数,重新排序后排在第二位的数据是除排在第一位数据之外的数据中最大的数。重复N-1遍上述排序处理,每次从数组中第N个数据开始与第N个数之前的数据比较,比较到上一次减少一个数为止,最后的排序结果即为冒泡排序的排序结果。图2为以硬件方式实现插入排序的原理图,如图2所示,采用硬件实现方式对包括N个数据的数组进行从大到小的插入排序时,将第1个数据与第2个数据进行比较,数值大的数据排序在前,记为数据1_1,数值小的数据排序在后,记为数据1_2,之后,将第3个数据分别与数据1_1和数据1_2比较,当与数据1_1比较后,数值大的数据排序在前,记为数据2_1;当与数据1_2比较后,数值小的数据排序在后,记为数据2_3,数值介于中间的数据排序在中间,记为数据2_2,重复上述操作,直至得出所有数据的排序。
采用上述硬件方式实现的冒泡排序和插入排序过程,需要级联多级比较器,且需要插入多级寄存器存储临时比较结果,导致电路的组合逻辑链路较长,需要经过较长的时间才能得出比较结果,这在需要比较的数据较少时还可以接受,一旦需要比较的数据比较多时,比较过程所需的时间会变的非常久,导致电路运行速率非常低,无法适用对排序速度要求较高的场合,因此,如何减少排序电路的组合逻辑链路,实现快速数据排序是亟待解决的问题。
发明内容
本申请提供一种数据排序装置、方法及芯片,用以解决现有技术中排序电路的组合逻辑链路较长,数据排序速率较低的问题。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710752463.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:并发多位加法器
- 下一篇:一种互联网的GIS水产养殖信息管理系统设计
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置