首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以在virtex-5FPGA中使用2位2对1多路复用功能对LUT5_D进行编程?

是否可以在virtex-5FPGA中使用2位2对1多路复用功能对LUT5_D进行编程?
EN

Stack Overflow用户
提问于 2011-09-14 02:38:51
回答 2查看 530关注 0票数 1

我正在尝试将一个2位2对1多路复用器放入一个LUT中。看起来LUT5_D有5个输入和2个输出。我可以按照我想要的方式编程LUT吗?

我以前用过LUT3LUT4。根据virtex-5库指南,似乎要实例化LUT5_D,我需要编写一个适当的初始值,但只有一个初始值需要编程,所以实际上只会使用其中一个输出?或者这两个输出在任何时候都会给出相同的值?

代码语言:javascript
复制
LUT5_D #(
.INIT(32'h55550f0f),
) LUT5_D_inst
(.O(O), // General LUT output (1-bit)
.LO(LO), // Local LUT output (1-bit)
.I0(I0), // LUT input (1-bit)
.I1(I1), // LUT input (1-bit)
.I2(I2), // LUT input (1-bit)
.I3(I3), // LUT input (1-bit)
.I4(SEL));
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-10-07 23:37:44

LUT5_D不会执行您想要的操作:两个输出是相同的(库指南中的表格显示了这一点)。

2输出选项是LUT6_2

对于您的应用程序,您有两个输入(A和B),每个输入都有两个位(0,1),输出(Y)也有两个位。

  • 使用I0作为选择输入
  • Wire I5以始终选择顶部逻辑(逻辑1 IIRC)。
  • Wire up I4:1 as A0B0A1B1
  • O6Y1

Y0Y0

我把它作为练习留给感兴趣的读者,让他们想出INIT的值:

基于I0

  • cause的
  • 使得上层LUT5到I4I3之间的复用,而底层LUT5到基于I0

I1和IPv6之间的复用

票数 1
EN

Stack Overflow用户

发布于 2011-10-25 02:59:19

不要编写初始化的值。LUT_MAP要容易得多,也更容易维护:

代码语言:javascript
复制
(* LUT_MAP="yes" *)
module mux2(sel, a, b, o);
    input  sel;
    input  a;
    input  b;
    output o;

    assign o = (~sel&a) | (sel & b);
endmodule

利用公共sel输入信号,通过将四个6- mux2中的每一个分成2个5-LUT,可以将上述LUT打包为8个(4个6-LUT)片。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7406783

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档