首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于FPGA的串并集合排序在雷达系统中的应用

基于FPGA的串并集合排序在雷达系统中的应用

摘要:基于FPGA硬件技术,以资源和时间相结合的思路,提出了一种串并结合的比较排序算法。该算法通过对数据的分时并行比较,计算出每个数据在排序中的位置实现数据排序。该算法可在较短的时间内实现数字序列的排序,通过实验证明,资源消耗少,实时性号,通用性强。
关键词:排序;FPGA;并行;串行
在雷达抗干扰处理以及空时二维处理过程中数据排序将必不可免,在传统的DSP、CPU等常规软件排序已经不能够满足雷达系统实时性要求,使用 FPGA排序的趋势将势不可当。FPGA由于具有较高的并行处理能力,目前已成为雷达阵列信号处理中的主流处理器件。计算耗费的时间和消耗的硬件资源成为 处理的主要矛盾,如何解决这个矛盾,本人将提出解决方案。
1 算法描述与分析
排序就是将数据元素的一个任意序列,重新排列成一个按关键字有序的序列。各种传统串行排序算法如冒泡,大多都是以两两之间顺序比较为基础,不能满足 实时性要求。如果将传统的串行排序在FPGA中进行分段串行排序再排序,可以减少排序时间,但却大大增加设计难度。本文提出基于并行比较思路,通过将逻辑 比较结果求和,用此和值确定排序结果的位置,从而达到实现排序结果的目的。
假设待排序数据元素个数为N,全并行比较就是在同一时刻将N个数两两比较,再在下一时刻进行累加求和以确定排序结果。这样需要耗费N*N个比较器,如果元素个数较多,将耗费大量逻辑资源。本算法采用N个比较器,用N倍时间实现比较。算法如上图所示。
不同的比较器将有不同的比较结果输出,下表列出了4种比较器输出结果形式。
返回列表