触发器详解——(一)D触发器

触发器是时序逻辑电路的基本单元,用来存储1位2进制信息,具有记忆和存储功能,其信息由双稳态电路来保存。触发器位脉冲边缘敏感器间,分为上升沿敏感和下降沿敏感。触发器的种类很多,由D触发器,J-K触发器,T触发器等。并且根据运用场景的不同,触发器还会有置位,复位,使能和选择等功能。

1、D触发器介绍

D触发器是一种最简单的触发器,在触发边沿到来时,将输入端的值存入其中,并且这个值与当前存储的值无关。在两个有效的脉冲边沿之间,D的跳转不会影响触发器存储的值,但是在脉冲边沿到来之前,输入端D必须有足够的建立时间,保证信号稳定。D触发器的逻辑符号如图1-1所示。
图1-1
D触发器逻辑符号

2、电路结构

触发器主要有两种电路结构,CMOS逻辑门如图2-1,和传输门构成的D触发器如图2-2
图2-1CMOS逻辑门构成D触发器
D触发器电路结构
图2-2,传输门构成D触发器
在这里插入图片描述
两种电路结构实现的D触发器功能一模一样,我们以图2-1为例来分析触发工作原理。如图2-1所示:在clk上升沿到来之前,D输入端无论输入任何值触发器状态不会改变,次态等于现态。当时钟上升沿到来时,与时钟信号连接的非门产生的短暂延迟,使得触发器状态置成D输入端的状态。

3、触发器特性表

D触发器特性表
在这里插入图片描述

4、Verilog HDL语言描述D触发器

1位D触发器

module dff(clk,clr,rst,d,q);//clr清0,rst复位
	input clk,clr,rst,d;
	output q;
	reg q;
	always@(posedge clk or posedge clr)
	begin
		if(clr==1'b1)q<=1'b0;
		else if(rst==1'b1)q<=1'b1;
		else q<=d;
	end
endmodule

测试代码

module dff_t;
	reg clk,rst,clr,d;
	wire q;
	initial
		begin 
			clk=1'b0;
			forever #10 clk=~clk;
		end
	initial 
		begin
			clr=1'b0;
			rst=1'b0; d=1'b0;
			#10 rst=1'b1;clr=1'b0;d=1'b0;
			#10 rst=1'b1;clr=1'b1;d=1'b1;
			#10 rst=1'b0;clr=1'b0;d=1'b1;
			#20 d=1'b0;
			#20 d=1'b1;
		end
	dff U1(.clk(clk),.clr(clr),.rst(rst),.d(d),.q(q));
endmodule 

仿真波形
在这里插入图片描述

发布了4 篇原创文章 · 获赞 4 · 访问量 136

猜你喜欢

转载自blog.csdn.net/qq_41844618/article/details/104332949