【Verilog学习日常】—牛客网刷题—Verilog快速入门—VL21

根据状态转移表实现时序电路

描述

某同步时序电路转换表如下,请使用D触发器和必要的逻辑门实现此同步时序电路,用Verilog语言描述。

电路的接口如下图所示。

输入描述:

input A ,

input clk ,

input rst_n

输出描述:

output wire Y

解题思路:

①首先根据题干中的状态转换表,给出次态和输出的卡诺图,如下所示:

表达式为,其中:

输出方程

由于题干中所使用的触发器为D触发器,根据D触发器的特征方程,得到其状态方程;

因此,激励方程;

代码:

下面给出两种代码:

①寄存器未单独例化
cpp 复制代码
`timescale 1ns/1ns

module seq_circuit(
      input                A   ,
      input                clk ,
      input                rst_n,
 
      output   wire        Y   
);

reg Q0, Q1;
always @(posedge clk or negedge rst_n)begin
   if(!rst_n)
      Q0 <= 1'b0;
   else
      Q0 <= ~Q0 ;
end 

always @(posedge clk or negedge rst_n)begin
   if(!rst_n)
      Q1 <= 1'b0;
   else
      Q1 <= Q1 ^ Q0 ^ A;
end

assign Y = Q1 & Q0;

endmodule
②将寄存器单独例化
java 复制代码
`timescale 1ns/1ns

module seq_circuit(
      input                A   ,
      input                clk ,
      input                rst_n,
 
      output   wire        Y   
);

//代码二
wire q0, q1, d0, d1;
//激励方程
assign d0 = ~q0;
assign d1 = A ^ q0 ^ q1;
//状态方程
DFF D0 (.d(d0), .clk(clk), .rst_n(rst_n), .q(q0));
DFF D1 (.d(d1), .clk(clk), .rst_n(rst_n), .q(q1));
//输出方程
assign Y = q0 & q1;

endmodule

//带复位端的D触发器
module DFF(input        d, 
           input        clk, 
           input        rst_n,
           output   reg q);
    always @(posedge clk or negedge rst_n) begin

        if (!rst_n) q<= 1'b0;
        else q<= d; 

    end
endmodule
相关推荐
qzhqbb1 小时前
神经网络—— 学习与感知器
神经网络·学习
charlie1145141915 小时前
CSS笔记4:CSS:列表、边框、表格、背景、鼠标与常用长度单位
css·笔记·学习·css3·教程
Js_cold8 小时前
Verilog宏define
fpga开发·verilog
✎ ﹏梦醒͜ღ҉繁华落℘8 小时前
FreeRTOS学习笔记(应用)-- 各种 信号量的应用场景
笔记·学习
星星火柴9368 小时前
笔记 | C++面向对象高级开发
开发语言·c++·笔记·学习
BeingACoder9 小时前
【SAA】SpringAI Alibaba学习笔记(一):SSE与WS的区别以及如何注入多个AI模型
java·笔记·学习·saa·springai
Shang180989357269 小时前
T41LQ 一款高性能、低功耗的系统级芯片(SoC) 适用于各种AIoT应用智能安防、智能家居方案优选T41L
人工智能·驱动开发·嵌入式硬件·fpga开发·信息与通信·信号处理·t41lq
安全不再安全9 小时前
免杀技巧 - 早鸟注入详细学习笔记
linux·windows·笔记·学习·测试工具·web安全·网络安全
BreezeJuvenile10 小时前
外设模块学习(8)——HC-SR04超声波模块(STM32)
stm32·单片机·嵌入式硬件·学习·超声波测距模块·hc-sr04
LBuffer10 小时前
破解入门学习笔记题三十八
笔记·学习