📜  数字电路-触发器(1)

📅  最后修改于: 2023-12-03 15:39:57.077000             🧑  作者: Mango

数字电路-触发器

触发器是数字电路中的一种重要的基本元件,用于存储数字信号。它可以在时钟信号的作用下保持当前状态或者切换到新的状态。触发器广泛应用于存储寄存器、计数器等数字电路中,是数字系统的基本组成单位。

触发器的类型

常见的触发器包括RS触发器、D触发器、JK触发器和T触发器等。这些触发器的构造和功能不同。下面简要介绍一下这些触发器的特点。

RS触发器

RS触发器是一种基本的双稳态触发器,主要应用于控制逻辑电路。它由两个交叉连接的非门组成,有时也被称为门触发器,可以通过两个输入状态的分别置1和清零来实现控制开关。

module rs_trigger(Q, Qbar, S, R);
    output Q, Qbar;
    input S, R;
    nand(n1, S, Qbar);
    nand(n2, R, Q);
    nand(n3, n1, n2);
    nand(n4, S, R);
    nor(n5, n4, n3);
    nand(Q, n5, Qbar);
    nand(Qbar, n5, Q);
endmodule
D触发器

D触发器是一种常用的数字系统中的存储器件,它只有一个数据输入端D和一个时钟输入端CLK。当时钟信号的边沿到来时,D触发器可以将输入信号D锁存到输出端Q,并保持Q不变。

module d_trigger(Q, Qbar, D, CLK);
    output Q, Qbar;
    input D, CLK;
    nand(n1, D, CLK);
    nor(n2, n1, Q);
    nor(n3, CLK, Qbar);
    and(n4, n2, n3);
    nor(Q, n1, n4);
    nor(Qbar, n4, n3);
endmodule
JK触发器

JK触发器是一种带有置位和清零功能的双稳态触发器。它可以在时钟信号的作用下保持当前状态或者切换到新的状态。JK触发器由两个输入端J和K和一个时钟输入端CLK组成,可以通过输入的J和K来切换触发器的状态。

module jk_trigger(Q, Qbar, J, K, CLK);
    output Q, Qbar;
    input J, K, CLK;
    nand(n1, J, Qbar, CLK);
    nor(n2, n1, K, Q);
    nand(n3, K, Q, CLK);
    nor(n4, n3, J, Qbar);
    nor(Q, n4, Qbar, CLK);
    nor(Qbar, n2, Q, CLK);
endmodule
T触发器

T触发器是一种非常简单的触发器,它只需要一个输入端T和一个时钟输入端CLK。当时钟信号的边沿到来时,T触发器可以将输入信号T锁存到输出端Q,并保持Q不变或者将Q反转。

module t_trigger(Q, Qbar, T, CLK);
    output Q, Qbar;
    input T, CLK;
    xor(x1, Q, T);
    nor(n1, x1, CLK);
    nor(n2, T, x1);
    nor(Q, n1, Qbar);
    nor(Qbar, n2, Q);
endmodule
总结

触发器是数字电路中的基本存储器件,广泛应用于存储寄存器、计数器等数字电路中。根据自己的需求,可以选择不同类型的触发器来实现控制逻辑电路的功能。