Quartus-II实现D触发器的三种方式

一、D触发器简介

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cHRt8vr3-1617099997280)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617023202287.png)]

  • D:输入信号
  • CLK:时钟信号
  • SET:置位信号,低电平有效
  • CLR:清除(重置)信号,低电平有效

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cRru6HWP-1617099997282)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617025029725.png)]

  • 当控制信号SETCLR中存在低电平时,输出信号 Q n + 1 Q^{n+1} Qn+1跟随CLR(清除信号)
  • 当控制信号SETCLR都为高电平时,如果CLK上升沿,输出信号 Q n + 1 Q^{n+1} Qn+1跟随D;如果CLK为除上升沿的其他状态,输出信号 Q n + 1 Q^{n+1} Qn+1状态保持不变,依旧为 Q n Q^n Qn 时的状态

D触发器是上升沿触发

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eCotRpdQ-1617099997284)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617026397089.png)]

二、在 Quartus-II 中自己用门电路设计一个D触发器

1. 创建一个工程文件

如何新建一个工程文件,请参考:quartus II输入原理图及仿真步骤

2. 新建一个波形文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7Cgnnbwq-1617099997287)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617094045653.png)]

选择nand2,二个输入的与非门,依次添加四个nand2和一个非门not

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FwGSRaDz-1617099997289)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617087092100.png)]

通过工具栏上面输入输出工具,以及连线工具,设计出以下的电路图

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YOuv4dSn-1617099997291)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617087791311.png)]

保存电路图

编译原理图文件

启动分析与综合,编译原理图文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-v4q6FIgv-1617099997292)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617088345970.png)]

rtl viewer,查看硬件电路图(Tools ---> Netlist Viewers ---> RTL Viewer

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cRFITRPJ-1617099997293)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617088411917.png)]

3. 创建vwm格式波形文件,输入激励源

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0O55GSgf-1617099997293)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617088523848.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BatYvbM6-1617099997294)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617088556194.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QodyDtOZ-1617099997295)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617088743063.png)]

添加后,效果如下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hrxyFqIS-1617099997296)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617088780428.png)]

编辑输入Clk,产生时钟信号

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aE5S9dqr-1617099997296)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617088906195.png)]

鼠标选择D,Q信号Q_n,,进行编辑

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TTw7eylc-1617099997297)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617089496398.png)]

4. 时序波形仿真

运行时许仿真,可能会报如下错误:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Wh1pMZ8U-1617099997298)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617093411035.png)]

解决办法

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3IhnxkND-1617099997299)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617093473895.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kXjGcMAL-1617099997300)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617093565865.png)]

重新开始仿真

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lCFOmzTz-1617099997301)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617093663343.png)]

三、在 Quartus-II 中直接调用一个D触发器电路

1. 新建一个工程文件

2. 新建一个波形文件

添加D触发器(器件name为dff)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qHASlEJ9-1617099997302)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617094250902.png)]

3. 编译原理图

编译后,查看硬件电路图如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kjwntcv7-1617099997303)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617094352527.png)]

4. 创建vwm格式波形文件,并时许仿真

编辑波形

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZFzgRQJ2-1617099997304)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617094633697.png)]

时序仿真

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4Euaa6sB-1617099997305)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617094762308.png)]

四、在 Quartus-II用Verilog语言写一个D触发器

1. 创建一个工程文件

2. 编写Verilog文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wMhdCDAT-1617099997306)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617094992146.png)]

添加如下内容:

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

然后保存并编译

3. 查看硬件电路图

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MEV83cER-1617099997307)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617095369820.png)]

4.测试代码

module test03_tb;
	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
	test03 U1(.clk(clk),.clr(clr),.rst(rst),.d(d),.q(q));
endmodule 

具体仿真过程请参考:Modelsim SE版本的安装及使用方法

5. 仿真结果

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jiLtagC2-1617099997308)(E:%5Cdasan2%5C%E5%AE%9E%E9%AA%8C%E4%BD%9C%E4%B8%9A%5C%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%5CQuartus-II%E8%AE%BE%E8%AE%A1D%E8%A7%A6%E5%8F%91%E5%99%A8%5C1617099476042.png)]

五、参考🔗

  • 8
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值