如何设置正常时钟输入?

时间:2011-03-20 11:04:00

标签: logic clock digital-logic

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 ...

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

3 个答案:

答案 0 :(得分:1)

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

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

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

提示:在上面的提示中进一步了解......

答案 1 :(得分: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

enter image description here

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

使用JK触发器和一些二进制逻辑的简单4位2路计数器。 enter image description here

  • 在计数时使用上and运算符路径。
  • 使用下面的倒数路径时。
  • or元素用于组合它们。
  • 额外的逻辑输入和inverse用于确定计算的方式。

答案 2 :(得分:0)

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

'A'状态与您的时钟相同:

enter image description here