最小值和次最小值检索电路制造技术

技术编号:35826407 阅读:12 留言:0更新日期:2022-12-03 13:53
本发明专利技术提供一种最小值和次最小值检索电路,对并行输入2

【技术实现步骤摘要】
最小值和次最小值检索电路


[0001]本专利技术属于通信电路领域,特别是涉及一种最小值和次最小值检索电路。

技术介绍

[0002]在很多领域中,都会涉及到数与数的比较,例如查找一组数的最小值和次最小值。在软件算法领域存在很多种解决方式,但是对应到FPGA的电路应用时,需要充分考虑硬件实现的复杂度和获取结果的精确度。
[0003]例如,在FPGA应用中,一般采用直接两两比较的树形结构的硬件电路,如图1所示,图中比较器的结构共分为5级,每一级由一个或多个二输入比较器组成,每个比较器将输入的两个数值进行比较,输出较小的那一个,然后再输入到下一级进行比较,直至最后一级的比较器输出最小值。在最后第5级比较的两个值当中,较小值作为最小值输出,较大值则作为次小值输出。这种电路结构实现简单,但是会存在一定的失误,从而导致无法找准确的次小值。例如,当真正的次小值在第2至第4级中与最小值相遇了,真正的次小值与最小值同时输入某一个二输入比较器进行比较,则这个真正的次小值就会被最小值淘汰,从而无法走到最后一级,也就是第5级。因此,最终获得的次小值并不是真正的次小值,而是一个大于次小值的伪次小值。

技术实现思路

[0004]本专利技术主要解决的技术问题是提供一种最小值和次最小值检索电路,获取最小值和真正的次小值,即紧邻最小值的次小值结果。
[0005]为解决上述技术问题,本专利技术采用的技术方案是:
[0006]提供一种最小值和次最小值检索电路,对并行输入2
N
个互不相同的输入数据检索出其中的最小值和次最小值,N大于等于1,包括N级比较电路;
[0007]第一级比较电路包括2
N
‑1个结构相同的第一级比较单元,其中,第1个第一级比较单元包括输入端[Din_1、Din_2]、输出端[smin_1_1、min_1_1],输入端[Din_1、Din_2]对应输入数据中的最小值由min_1_1输出,次小值由smin_1_1输出;
[0008]第2个第一级比较单元包括输入端[Din_3、Din_4]、输出端[smin_1_2、min_1_2],输入端[Din_3、Din_4]对应输入数据中的最小值由min_1_2输出,次小值由smin_1_2输出;
[0009]依此类推,第2
N
‑1个第一级比较单元包括输入端[Din_2
N

1、Din_2
N
]、输出端[smin_1_2
N
‑1、min_1_2
N
‑1],输入端[Din_2
N

1、Din_2
N
]对应输入数据中的最小值由min_1_2
N
‑1输出,次小值由smin_1_2
N
‑1输出;
[0010]第二级比较电路包括2
N
‑2个结构相同的第二级比较单元,其中,第1个第二级比较单元包括的输入端与第一级比较电路的输出端[smin_1_1、smin_1_2、min_1_1、min_1_2]相对应,以及包括输出端[smin_2_1_1、smin_2_1_2、min_2_1];
[0011]第2个第二级比较单元包括的输入端与第一级比较电路的输出端[smin_1_3、smin_1_4、min_1_3、min_1_4]相对应,以及包括输出端[smin_2_2_1、smin_2_2_2、min_2_
2];
[0012]依此类推,第2
N
‑2个第二级比较单元与第一级比较电路的输出端[smin_1_(2
N
‑1‑
1)、smin_1_2
N
‑1、min_1_(2
N
‑1‑
1)、min_1_2
N
‑1]相对应,以及包括输出端[smin_2_2
N
‑2_1、smin_2_2
N
‑2_2、min_2_2
N
‑2];
[0013]第三级比较电路包括2
N
‑3个结构相同的第三级比较单元,其中,第1个第三级比较单元包括的输入端与第二级比较电路的输出端
[0014][smin_2_1_1、smin_2_2_1、smin_2_1_2、smin_2_2_2、min_2_1、min_2_2]相对应,以及包括输出端[smin_3_1_1、smin_3_1_2、smin_3_1_3、min_3_1];
[0015]第2个第三级比较单元包括的输入端与第二级比较电路的输出端[smin_2_3_1、smin_2_4_1、smin_2_3_2、smin_2_4_2、min_2_3、min_2_4]相对应,以及包括输出端[smin_3_2_1、smin_3_2_2、smin_3_2_3、min_3_2];
[0016]依此类推,第2
N
‑3个第三级比较单元与第二级比较电路的输出端[smin_2_(2
N
‑2‑
1)_1、smin_2_2
N
‑2_1、smin_2_(2
N
‑2‑
1)_2、smin_2_2
N
‑2_2、min_2_(2
N
‑2‑
1)、min_2_2
N
‑2]相对应,以及包括输出端[smin_3_2
N
‑3_1、smin_3_2
N
‑3_2、smin_3_2
N
‑3_3、min_3_2
N
‑3];
[0017]以此类推,第N级比较电路包括输入端与第N

1级比较电路的输出端[smin_(N

1)_1_1、smin_(N

1)_2_1、smin_(N

1)_1_2、smin_(N

1)_2_2、
……
、smin_(N

1)_1_(N

1)、smin_(N

1)_2_(N

1)、min_(N

1)_1、min_(N

1)_2]相对应,以及包括输出端[smin_N_1、smin_N_2、
……
、smin_N_N、min_N];其中输出端min_N产生输出2
N
个输入数据中的最小值。
[0018]优选的,第N级比较电路的输出端[smin_N_1、smin_N_2、
……
、smin_N_N]输入到次小值比较电路,产生输出的最小值,即是2
N
个输入数据中的次最小值。
[0019]优选的,第一级比较单元包括一个比较器B1和第一选择器S11、第二选择器S12,比较器B1包括两个输入端,用于输入两个输入数据,比较器B1本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种最小值和次最小值检索电路,其特征在于,对并行输入2
N
个互不相同的输入数据检索出其中的最小值和次最小值,N大于等于1,包括N级比较电路;第一级比较电路包括2
N
‑1个结构相同的第一级比较单元,其中,第1个所述第一级比较单元包括输入端[Din_1、Din_2]、输出端[smin_1_1、min_1_1],输入端[Din_1、Din_2]对应输入数据中的最小值由min_1_1输出,次小值由smin_1_1输出;第2个所述第一级比较单元包括输入端[Din_3、Din_4]、输出端[smin_1_2、min_1_2],输入端[Din_3、Din_4]对应输入数据中的最小值由min_1_2输出,次小值由smin_1_2输出;依此类推,第2
N
‑1个所述第一级比较单元包括输入端[Din_2
N

1、Din_2
N
]、输出端[smin_1_2
N
‑1、min_1_2
N
‑1],输入端[Din_2
N

1、Din_2
N
]对应输入数据中的最小值由min_1_2
N
‑1输出,次小值由smin_1_2
N
‑1输出;第二级比较电路包括2
N
‑2个结构相同的第二级比较单元,其中,第1个所述第二级比较单元包括的输入端与所述第一级比较电路的输出端[smin_1_1、smin_1_2、min_1_1、min_1_2]相对应,以及包括输出端[smin_2_1_1、smin_2_1_2、min_2_1];第2个所述第二级比较单元包括的输入端与第一级比较电路的输出端[smin_1_3、smin_1_4、min_1_3、min_1_4]相对应,以及包括输出端[smin_2_2_1、smin_2_2_2、min_2_2];依此类推,第2
N
‑2个所述第二级比较单元与所述第一级比较电路的输出端[smin_1_(2
N
‑1‑
1)、smin_1_2
N
‑1、min_1_(2
N
‑1‑
1)、min_1_2
N
‑1]相对应,以及包括输出端[smin_2_2
N
‑2_1、smin_2_2
N
‑2_2、min_2_2
N
‑2];第三级比较电路包括2
N
‑3个结构相同的第三级比较单元,其中,第1个所述第三级比较单元包括的输入端与所述第二级比较电路的输出端[smin_2_1_1、smin_2_2_1、smin_2_1_2、smin_2_2_2、min_2_1、min_2_2]相对应,以及包括输出端[smin_3_1_1、smin_3_1_2、smin_3_1_3、min_3_1];第2个所述第三级比较单元包括的输入端与所述第二级比较电路的输出端[smin_2_3_1、smin_2_4_1、smin_2_3_2、smin_2_4_2、min_2_3、min_2_4]相对应,以及包括输出端[smin_3_2_1、smin_3_2_2、smin_3_2_3、min_3_2];依此类推,第2
N
‑3个所述第三级比较单元与所述第二级比较电路的输出端[smin_2_(2
N
‑2‑
1)_1、smin_2_2
N
‑2_1、smin_2_(2
N
‑2‑
1)_2、smin_2_2
N
‑2_2、min_2_(2
N
‑2‑
1)、min_2_2
N
‑2]相对应,以及包括输出端[smin_3_2
N
‑3_1、smin_3_2
N
‑3_2、smin_3_2
N
‑3_3、min_3_2
N
‑3];以此类推,第N级比较电路包括输入端与所述第N

1级比较电路的输出端[smin_(N

1)_1_1、smin_(N

1)_2_1、smin_(N

1)_1_2、smin_(N

1)_2_2、
……
、smin_(N

1)_1_(N

1)、smin_(N

1)_2_(N

1)、min_(N

1)_1、min_(N

1)_2]相对应,以及包括输出端[smin_N_1、smin_N_2、
……
、smin_N_N、min_N];其中输出端min_N产生输出所述2
N
个输入数据中的最小值。2.根据权利要求1所述的最小值和次最小值检索电路,其特征在于,所述第N级比较电路的输出端[smin_N_1、smin_N_2、
……
、smin_N_N]输入到次小值比较电路,产生输出的最小值,即是所述2
N
个输入数据中的次最小值。3.根据权利要求2所述的最小值和次最小值检索电路,其特征在于,所述第一级比较单元包括一个比较器B1和第一选择器S11、第二选择器S12,所述比较器B1包括两个输入端,用
于输入两个输入数据,所述比较器B1的输出端分别电连接第一选择器S11、第二选择器S12的选择控制端;其中,所述第一选择器S11的第一输入端电连接所述比较器B1的第一输入端,所述第一选择器S11的第二输入端电连接所述比较器B1的第二输入端;所述...

【专利技术属性】
技术研发人员:孙谦
申请(专利权)人:江苏屹信航天科技有限公司
类型:发明
国别省市:

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

1