Circuits--Verification--Finding Bug

  1. MUX

    module top_module (
    input sel,
    input [7:0] a,
    input [7:0] b,
    output [7:0] out );

    复制代码
     assign out = sel ? a : b;

    endmodule

2.NAND

复制代码
module top_module (input a, input b, input c, output out);//

    wire t;
    andgate inst1 (t,a,b,c,1'b1,1'b1);
    assign out = ~t;

endmodule
  1. 4-1MUX

    module top_module (
    input [1:0] sel,
    input [7:0] a,
    input [7:0] b,
    input [7:0] c,
    input [7:0] d,
    output [7:0] out ); //

    复制代码
     wire [7:0]m0, m1;
     mux2 mux0 ( sel[0],    a,    b, m0 );
     mux2 mux1 ( sel[0],    c,    d, m1 );
     mux2 mux2 ( sel[1], m0, m1,  out );

    endmodule

4.Add/Sub

复制代码
module top_module ( 
    input do_sub,
    input [7:0] a,
    input [7:0] b,
    output reg [7:0] out,
    output reg result_is_zero
);//

    always @(*) begin
        case (do_sub)
          0: out = a+b;
          1: out = a-b;
        endcase

    end
    always@(*)
        begin
            if (out == 0)
            	result_is_zero = 1;
            else
                result_is_zero = 0;
        end
        
endmodule

5.Case Statement

复制代码
module top_module (
    input [7:0] code,
    output reg [3:0] out,
    output reg valid);//

     always @(*) begin
         case (code)
            8'h45: out = 4'd0;
            8'h16: out = 4'd1;
            8'h1e: out = 4'd2;
            8'h26: out = 4'd3;
            8'h25: out = 4'd4;
            8'h2e: out = 4'd5;
            8'h36: out = 4'd6;
            8'h3d: out = 4'd7;
            8'h3e: out = 4'd8;
            8'h46: out = 4'd9;
            default: out = 4'd0;
        endcase

         if(out == 4'd0 && code != 8'h45) 
            valid = 1'b0;
        else
            valid = 1'b1;
     end
     		              
endmodule
相关推荐
晓梦林8 小时前
BUUCTF findKey-学习笔记
笔记·学习
x173880627311 小时前
XXE外部实体注入
xml·笔记
库玛西15 小时前
C++ 运行时多态 :核心总结与原理图解
c语言·c++·笔记
魔力女仆16 小时前
语言开发笔记3
笔记
x173880627316 小时前
文件包含漏洞介绍
笔记
一只小菜鸡..19 小时前
南京大学 操作系统 (JYY) 学习笔记:CPU 的局限、GPU 与 AI 时代的算力革命
人工智能·笔记·学习
所愿ღ20 小时前
SSM框架-Spring3
java·开发语言·笔记·spring
影视飓风TIM21 小时前
C++ STL 完整入门笔记[8]:deque 底层原理深度剖析
开发语言·c++·笔记
辰丁电子21 小时前
PCB设计:EMMC设计规范
fpga开发·pcb设计·pcb工艺·layout·pcb layout
优化Henry21 小时前
5G站点软件错误告警与资源激活超时两类典型告警分析与处理
网络·笔记·学习·5g·信息与通信