0

我遇到了以下问题,无法确定答案。您有什么建议,任何帮助将不胜感激。

对于所有整数 n>= 3,斐波那契数列 F(n) 由 F(1)=1、F(2)=1 和 Fn=F(n-2) + F(n-1) 定义。什么是设计一个输出前七个斐波那契数(即 F1 到 F7 )然后回绕的计数器电路所需的最小 D 触发器数量(以及组合逻辑)?

(A) 3 (B) 4 (C) 5 (D) 6 (E) 7

提前致谢

4

3 回答 3

1

获得七个不同的输出所需的最少触发器数量仅为 3 个。但随后它涉及大量组合电路,用于将七个唯一输出解码为所需的斐波那契序列。其中一个解码电路使用四个 4:1 多路复用器,其中每个多路复用器输出代表斐波那契序列的一位。

但是使用 4 个触发器,我们可以得到一个同步计数器,它只经过这些状态 1、1、2、3、5、8、13 并环绕。我认为这个过程涉及的电路较少。这里只应注意区分 1 的出现两次,这可以通过使用额外的与非门来完成。

于 2013-06-28T04:09:02.970 回答
0

您可以使用线性反馈移位寄存器:

-- .--------/---------------------.
-- |        4             +----+  |
-- |          .-----------| __ |  |
-- |          |           | \  |--*-/-- F(n)
-- |  +--+    |  +--+     | /_ |    4
-- '--|  |--/-*--|  |--/--|    |
--    |> |  4    |> |  3  +----+
--    +--+       +--+
--   F(n-1)     F(n-2)

你总共需要 7 次翻牌(4+3)。

因为您的范围很小,所以您将添加的最大数字是 8 和 5 以获得 F(7)=13

真实世界的设计也会注册 F(n) 输出(出于时序原因)。

无需数到 7 本身 - 该系统可以自由运行,并且随着舞台宽度的增加,您可以随心所欲地计数。如果你想要一个固定长度的序列,它需要一个触发值来重置自己。

于 2011-12-05T19:15:28.790 回答
0

首先,您需要能够数到 7。这​​就是触发器的用武之地,因为它们具有您需要能够记住计数的内存。一种简单的方法是构造一个环形缓冲区,但由于允许无限组合逻辑,因此可以通过构造二进制计数器来改进这一点。

现在您有一个提供 7 个独特输出的电路,然后您可以使用进一步的组合逻辑对其进行扩充,以将这些输出解码为您选择的 7 个值。

于 2011-11-09T20:54:13.460 回答