1
input

  clk ( clock ) :

        0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 ...

required output :

   F   :
        0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 ...

如何使用组合和时序电路(逻辑门和触发器)获得该输出?你能推荐任何主题或网页吗?

4

3 回答 3

1

你看到输出中的模式了吗?差不多了0 0 1 1 0 0 1 1 0 0 1 1 0 0 ...。它看起来像什么?

提示:计数时钟,将计数表示为二进制数...

现在您可以从时钟中获得上述输出,看看您是否无法获得另一个位,您可以使用它来取消先前的输出以获得所需的输出。

提示:进一步查看上述提示...

于 2011-03-20T11:14:26.267 回答
1

好吧,序列在每 8 位之后重复:0 0 1 1 0 0 0 0. 现在log_2(8)=3,这意味着您需要具有输出功能的 3 元素计数器:

0 0 0 = 0
0 0 1 = 0
0 1 0 = 1
0 1 1 = 1
1 0 0 = 0
1 0 1 = 0
1 1 0 = 0
1 1 1 = 0

现在我个人使用:

fun = BooleanMinimize[
  BooleanFunction[{{0, 0, 0} -> 0, {0, 0, 1} -> 0, {0, 1, 0} -> 
      1, {0, 1, 1} -> 1, {1, 0, 0} -> 0, {1, 0, 1} -> 0, {1, 1, 0} -> 
      0, {1, 1, 1} -> 0}][c, b, a]]

输出为:b && ! c,但您可以使用卡诺图。

现在您可以在 wolframalpha.com 上搜索:logic circuit b && ! c.

在此处输入图像描述

所以现在你需要制作 3 个 JK 触发器来制作 3 个元素计数器,带有输出{a, b, c},你只需要bc输出。您可以查看您的讲义,了解如何将它们联系起来。

使用 JK 触发器和一些二进制逻辑的简单 4 位 2 路计数器。 在此处输入图像描述

  • 向上计数时使用上and运算符路径。
  • 当使用下面的倒计时路径时。
  • or元素用于组合它们。
  • 额外的逻辑输入,inverse用于确定以何种方式计数。
于 2011-03-20T11:15:52.493 回答
0

此页面上的电路应该有所帮助,http://www.play-hookey.com/digital/synchronous_counter.html

“A”状态与您的时钟相同:

在此处输入图像描述

于 2011-03-20T11:19:11.393 回答