我不确定是否要实施。我有一个多路复用器8输入,1输出和3选择信号。其中一个选择信号依次获取比特向量的所有值。现在我可以选择两条路了。
第一种方法是使用另一个复用器,其中输入是位矢量,选择信号是输入的计数器log2。
第二种方法是使用移位寄存器并获取矢量的LSB位。
在FPGA的面积方面,什么是最好的解决方案?
发布于 2014-12-17 09:32:43
让我们(对于不正确的开始)假设FPGA只提供简单的逻辑元素和触发器,并且位向量是N位,并且在选择所使用的位时保存值,那么这两种解决方案所使用的资源是:
因此,这对mux解决方案的权重,因为两者需要的数目几乎相同的2-1 mux,因为所需的初始加载的N位移位寄存器,但mux解决方案需要较少的触发器。
然而,FPGA在很大程度上依赖于通常基于小内存的LUTs,另外一个特点是这些小存储器也可以用作移位寄存器。具有此功能的FPGAs允许直接写入LUT内存,然后进行移位,这可以在没有任何2-1个LUT的情况下完成。因此,在这种情况下,用于shift解决方案的资源是:
结论是,确定和实现FPGA最优解的最佳方法是了解和利用特定目标FPGA的特性,然后尝试实现,以确保综合工具对设计的正确映射。
https://stackoverflow.com/questions/27521128
复制相似问题