如何解决设计用于半加法器的查找表LUT
我想使用FPGA实现一半加法器。为此,我需要设计CLB,更具体地说是针对半加法器的LUT。我知道LUT只给出一个输出。但是,对于半加器,我们得到两个输出。一个用于求和,另一个用于进位。
如何为半加器设计CLB?
如何从LUT获得两个输出?我在做什么错了?
从研究中我对FPGA的理解是,此图像代表了FPGA的构建块CLB。 CLB由LUT,D触发器和MUX组成。
LUT用于配置任何类型的逻辑门。 AND,OR,NOT或任何其他复杂的逻辑门。通过使用程序,我们将真值表的输出存储为LUT中的“与”门。当我们将输入提供给FPGA时,它通过地址栏通过LUT,并访问LUT中的特定存储器地址。然后,LUT的输出通过两条路径。在这里,我们需要选择是通过组合电路还是顺序电路输出。我们将MUX用于此选择目的。组合电路为0,顺序电路为1。
我是否纠正我到目前为止所了解的内容?
何时需要选择时序电路和组合电路?
解决方法
CLB通常仅提供单个输出信号。为了具有用于同一功能的多个输出信号,必须将相同的输入并行路由到多个CLB,每个输出信号一个。在半加法器的情况下,一个CLB产生SUM,另一个CLB产生CARRY。制作一个2位全加器以更好地利用LUT上的五个或六个输入可能会更有益。在这种情况下,我们有五个输入:A [1:0],B [1:0],Cin并在三个CLB上安装函数以获得SUM [1:0],Cout。
要回答第二个问题,将CLB MUX选为顺序模式以实现顺序逻辑(即状态机),而LUT会为(顺序)CLB生成组合的下一状态函数。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。