在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2191|回复: 6

[求助] 如何用verilog hdl实现求数组的第k大

[复制链接]
发表于 2016-12-26 19:11:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 sheerlala 于 2016-12-26 19:12 编辑

求助各位大牛,怎么用verilog hdl实现求数组的第k大,常用的排序算法有快速排序法、冒泡排序法等,不知道在硬件描述语言中会不会有更好的算法,有一个难点是数组长度是一个动态变量,因此用for循环的时候好像不行(verilog中循环次数只能是静态变量这一点有时候也有点不方便),希望可以求到解决方案呀呀呀!!
发表于 2016-12-27 19:45:41 | 显示全部楼层
利用HDL的并行性,应该实现起来比软件直观得多。问题就是,怎么合理去确定输入数组的个人
 楼主| 发表于 2017-1-11 19:46:55 | 显示全部楼层
回复 2# 文,蜀黍


   是啊,数组的个数不是常数,在电路初始化的时候就比较成问题
发表于 2017-1-13 08:24:59 | 显示全部楼层
有一个思路, 不知如何

for循环用计数器来实现,这样的话,数组长度及值可以从input拿 。
发表于 2017-1-13 10:23:06 | 显示全部楼层
状态机
发表于 2017-1-14 17:54:27 | 显示全部楼层
有一个思路,不知可行不可行。假设数据为无符号的。
用状态机,从最高位,到最低位,一位一位的统计“1”的个数,与K相比,大于K,此位为“1”,小于K,此位为“0”,统计下一bit位,一直到最低位,那个K值就出来了
发表于 2017-1-15 14:51:03 | 显示全部楼层
很对哦
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

×

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-28 18:03 , Processed in 0.029694 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表