如何用verilog hdl实现求数组的第k大
时间:10-02
整理:3721RD
点击:
求助各位大牛,怎么用verilog hdl实现求数组的第k大,常用的排序算法有快速排序法、冒泡排序法等,不知道在硬件描述语言中会不会有更好的算法,有一个难点是数组长度是一个动态变量,因此用for循环的时候好像不行(verilog中循环次数只能是静态变量这一点有时候也有点不方便),希望可以求到解决方案呀呀呀!
利用HDL的并行性,应该实现起来比软件直观得多。问题就是,怎么合理去确定输入数组的个人
是啊,数组的个数不是常数,在电路初始化的时候就比较成问题
有一个思路, 不知如何
for循环用计数器来实现,这样的话,数组长度及值可以从input拿 。
状态机
有一个思路,不知可行不可行。假设数据为无符号的。
用状态机,从最高位,到最低位,一位一位的统计“1”的个数,与K相比,大于K,此位为“1”,小于K,此位为“0”,统计下一bit位,一直到最低位,那个K值就出来了
很对哦
