SR锁存器与D锁存器设计与建模

这篇具有很好参考价值的文章主要介绍了SR锁存器与D锁存器设计与建模。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

⭐本专栏针对FPGA进行入门学习,从数电中常见的逻辑代数讲起,结合Verilog HDL语言学习与仿真,主要对组合逻辑电路与时序逻辑电路进行分析与设计,对状态机FSM进行剖析与建模。
🔥文章和代码已归档至【Github仓库:hardware-tutorial】,需要的朋友们自取。或者公众号【AIShareLab】回复 FPGA 也可获取。

锁存器和触发器的基本特性

锁存器和触发器是构成时序逻辑电路的基本逻辑单元,它们具有存储数据的功能。
每个锁存器或触发器都能存储1位二值信息,所以又称为存储单元或记忆单元。
若输入信号不发生变化,锁存器和触发器必然处于其中一种状态,且一旦状态被确定,就能自行保持不变,即长期存储1位二进制数。
电路在输入信号的作用下,会从一种稳定状态转换成为另一种稳定状态。

锁存器(Latch)与触发器(Flip Flop)的区别

锁存器(Latch)—— 没有时钟输入端,对脉冲电平敏感的存储电路,在特定输入脉冲电平作用下改变状态。

SR锁存器与D锁存器设计与建模

触发器(Flip Flop)——每一个触发器有一个时钟输入端。对脉冲边沿敏感的存储电路,在时钟脉冲的上升沿或下降沿的变化瞬间改变状态。

SR锁存器与D锁存器设计与建模

基本SR锁存器

用与非门构成的基本SR锁存器

SR锁存器与D锁存器设计与建模

方框外侧输入端的小圆圈和信号名称上面的小横线均表示输入信号是低电平有效的,同时为了区别,这种锁存器有时也称为基本 SR 锁存器。

现态: R ˉ \bar{R} Rˉ, S ˉ \bar{S} Sˉ 信号作用前Q端的状态, 现态用 Q n Q^{n} Qn 表示。

次态: $ \bar{R}$ 、 S ˉ \bar{S} Sˉ 信号作用后Q端的状态, 次态用 Q n + 1 Q^{n+1} Qn+1 表示。

a.电路图

SR锁存器与D锁存器设计与建模

b.功能表

SR锁存器与D锁存器设计与建模

约束条件:

S ˉ + R ˉ = 1 \bar{S}+\bar{R}=1 Sˉ+Rˉ=1
例 当S、R的波形如下图虚线上边所示,试画出Q和 Q对应的波形(假设原始状态Q=0 )。

SR锁存器与D锁存器设计与建模

SR锁存器与D锁存器设计与建模

门控D锁存器

1.电路结构

SR锁存器与D锁存器设计与建模

国标逻辑符号

SR锁存器与D锁存器设计与建模

E = 0 E=0 E=0 时, S ˉ = R ˉ = 1 \bar{S}=\bar{R}=1 Sˉ=Rˉ=1 ,无论 D 取什么值, Q 保持不变。
E = 1 E=\mathbf{1} E=1 时,使能信号有效

  • D = 1 D=\mathbf{1} D=1 时, S ˉ = 0 \bar{S}=\mathbf{0} Sˉ=0 R ˉ = 1 \bar{R}=\mathbf{1} Rˉ=1 , Q 被置 1 ;
  • D = 0 D=\mathbf{0} D=0 时, S ˉ = 1 \bar{S}=1 Sˉ=1 R ˉ = 0 \bar{R}=\mathbf{0} Rˉ=0 , Q 被置 0 。

E = 1 E=\mathbf{1} E=1 期间, D 值将被传输到输出端 Q ,而当 E 由 1 跳变为 0 时,锁存器将保持跳变之前瞬间 D 的值。因此, D \mathrm{D} D 锁存器常 被称为透明锁存器 (Transparent Latch)。

门控D锁存器特性表和特性方程

D锁存器的特性表

SR锁存器与D锁存器设计与建模

卡诺图

SR锁存器与D锁存器设计与建模
Q n + 1 = E ˉ ⋅ Q + E ⋅ D Q^{n+1}=\bar{E} \cdot Q+E \cdot D Qn+1=EˉQ+ED

门控D锁存器波形图

初始状态为Q =1

SR锁存器与D锁存器设计与建模

SR锁存器与D锁存器设计与建模

门控D 锁存器的Verilog HDL建模

试对图所示的D锁存器进行建模。

SR锁存器与D锁存器设计与建模

SR锁存器与D锁存器设计与建模

//版本1: Structural description of a D latch 
module Dlatch_Structural (E, D, Q, Q_);
    	input  E,  D ;
    	output Q,  Q_;
    	wire   R_, S_;
		nand N1(S_, D, E);
		nand N2(R_,~D, E);
		SRlatch_1 N3(S_, R_, Q, Q_);
endmodule

SR锁存器与D锁存器设计与建模

//Structural description of a SR-latch 
module SRlatch_1 (S_, R_, Q, Q_);
    	input  S_,R_;
    	output Q, Q_;
  	nand N1(Q, S_,Q_);
	nand N2(Q_,R_,Q );
endmodule

版本1的特点:

第一个版本根据图4.1.3使用基本的逻辑门元件,采用结构描述风格,编写了两个模块,这两个模块可以放在一个文件中,文件名为Dlatch_Structural.v。

在一个文件中可以写多个模块,其中有一个是主模块(或者称为顶层模块)。

文件名必须使用顶层模块名。本例中Dlatch_Structural是主模块,它调用SRlatch_1模块。

//版本2: Behavioral description of a D latch 
module Dlatch_bh (E, D, Q, Q_);
    input  E, D;
    output Q, Q_;
    reg Q;
    assign Q_ = ~Q;
    always @(E or D)
	  if (E)  
		Q <= D; //当使能有效E=1时,输出跟随输入变化
	  else 
		Q <= Q; //当E=0时, Q保持不变
endmodule

版本2的特点:

第二个版本采用功能描述风格的代码,不涉及到实现电路的具体结构,靠“算法”实现电路操作。对于不太喜欢低层次硬件逻辑图的人来说,功能描述风格的Verilog HDL是一种最佳选择。其中“<=”为非阻塞赋值符,将在下一节介绍。

注意:

  • always内部不能使用assign。
  • 在写可综合的代码时,建议明确地定义if-else中所有可能的条件分支,否则,就会在电路的输出部分增加一个电平敏感型锁存器。

参考文献:文章来源地址https://www.toymoban.com/news/detail-434196.html

  1. Verilog HDL与FPGA数字系统设计,罗杰,机械工业出版社,2015年04月
  2. Verilog HDL与CPLD/FPGA项目开发教程(第2版), 聂章龙, 机械工业出版社, 2015年12月
  3. Verilog HDL数字设计与综合(第2版), Samir Palnitkar著,夏宇闻等译, 电子工业出版社, 2015年08月
  4. Verilog HDL入门(第3版), J. BHASKER 著 夏宇闻甘伟 译, 北京航空航天大学出版社, 2019年03月

到了这里,关于SR锁存器与D锁存器设计与建模的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 锁存器、D触发器、寄存器理解

    1、锁存器        锁存器对脉冲的电平敏感,也就是电平触发,在有效的电平下,锁存器处于使能状态,输出随着输入发生变化,此时它不锁存信号,就像一个缓冲器一样;在锁存器没有使能时,则数据被锁住,输入信号不起作用,此时输出一直为锁存的状态信息(锁存最后

    2024年02月09日
    浏览(42)
  • 【STM32】锁存器

    在学习FSMC控制外部NOR存储器时,看到在NOR复用接口模式下,AD信号[15:0]是复用的。也就是说,若不使用锁存器:当NADV为低时,ADx(x=0…15)上出现地址信号Ax,当NADV变高时,ADx上出现数据信号Dx。若使用锁存器:可同时在ADx上得到Ax和Dx。 复用模式:低16位数据/地址线复用。在该模

    2024年02月10日
    浏览(37)
  • 锁存器&触发器

    目录 一、锁存器(Latch):电平敏感1/0,是数字电路中的一种具有记忆功能的逻辑元件 二、触发器(Flip-Flop,FF):在时钟信号触发时才能动作的储存单元。 2.1 SR触发器:Q*=S+R\\\'Q, SR=0(约束条件)  2.2 JK触发器:Q*=JQ\\\'+K\\\'Q 2.3 T触发器:Q*=TQ\\\'+T\\\'Q 2.4 D触发器:Q*=D  三、触发器与锁

    2024年01月19日
    浏览(45)
  • 数字电路基础---锁存器

    目录 锁存器 1、简介 2、实验任务 3、程序设计 3.1、缺少 else 分支的锁存器代码 3.2、补齐 else 分支 3.3、缺少 default 的 case 语句的锁存器代码 3.3、补齐 default 的 case 语句 4、本章总结        锁存器(俗称 Latch) 是数字电路中的一种具有记忆功能的逻辑元件。锁存器对脉冲电

    2024年02月10日
    浏览(40)
  • 硬件基础——锁存器

    在电子电路中。双稳态电路的特点是:在没有外来触发信号的作用下,电路始终处于原来的稳定状态。在外加输入触发信号作用下,双稳态电路从一个稳定状态翻转到另一个稳定状态。由于它具有两个稳定状态,故称为双稳态电路。双稳态电路在自动化控制中有着广泛的应用

    2024年02月06日
    浏览(48)
  • FPGA之锁存器(Latch)

    latch 是指锁存器,是一种对脉冲 电平 敏感的存储单元电路。锁存器和寄存器都是基本存储单元,锁存器是电平触发的存储器,寄存器是边沿触发的存储器。两者的基本功能是一样的,都可以存储数据。锁存器是组合逻辑产生的,而寄存器是在时序电路中使用,由时钟触发产

    2024年02月11日
    浏览(35)
  • VHDL语言基础-时序逻辑电路-锁存器

    目录 锁存器的设计: RS锁存器: 真值表: 电路结构图: RS锁存器的仿真波形如下: D锁存器: D锁存器的仿真波形如下: 为了与触发器相类比,我们先介绍锁存器。锁存器是一种电平敏感的寄存器,典型的例子有RS锁存器与D锁存器。 真值表: 电路结构图: Library  ieee; Use 

    2024年02月08日
    浏览(37)
  • 数字电路中有关latch锁存器的心得

    锁存器( latch)是电平触发的存储单元,数据存储的动作取决于输入时钟(或者使能)信号的电 平值,尽当锁存器处于使能状态时,输出才会随着数据输入发生变化。 锁存器不同于触发器,锁存器在不锁存数据时,输出端的信号随输入信号变化,就像信号通过一 个缓存器一

    2024年02月06日
    浏览(44)
  • verilog学习笔记6——锁存器和触发器

    2023.8.15 信号高电平有效 R :复位端 S :置位端 表达式: Q = S + R\\\' Qn 约束条件:SR=0,也就是SR不能同时为1 信号低电平有效 R :复位端 S :置位端 表达式: Q = S\\\' + R Qn 约束条件:S+R=1,也就是SR不能同时为0 E = 0 :锁存器保持不变,锁住 E = 1 :相当于正常得SR锁存器 把S取反接到

    2024年02月12日
    浏览(46)
  • 数字电子技术之锁存器和触发器

    一、组合电路设计的一般步骤:         逻辑抽象=列出真值表=逻辑表达式=逻辑电路图 Notes:         a、可以先对逻辑表达式进行化简得到最简与或式、最简或与式、与非、或非,再对电路进行建模,从而提高电路的运行效率和可读性;         b、最基本的逻辑化简

    2024年02月06日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包