我正在构建一个模型,要求我找到一组8个信号的最大值,同时找到最大值的索引。
如何在Simulink(Xilinx库)中构建这样的模型?
我猜比较块然后是计数器块。但不知何故,我无法将所有事情都放在一起。
由于
答案 0 :(得分:2)
让这一切并行完成的一种方式:
您需要构建一个比较器和多路复用器树:
这可以通过流水线操作,因此您可以根据需要快速地将数据流入其中。但它会使用相当数量的资源。你的信号有多宽?每个比较器每位1 LUT4,2:1多路复用器每位1 LUT4。
或者,您可以使用计数器依次选择每个值。如果它大于当前最大值,则将值锁存到“最大”寄存器中并将计数器锁存到“最大索引”寄存器中。每次计数器重置时,将“最大”寄存器重置为最小值。
这将占用与信号一样多的时钟周期(在您的情况下为8)