8、简单组合逻辑—半加器(Verilog HDL)

一、半加器的介绍

      数字电路中加法器是经常用到的一种基本器件,主要用于两个数或者多个数的加和,加法器又分为半加器(half adder)和全加器(full adder)。半加器电路是指对两个输入数据位相加,输出一个结果位和进位,没有进位输入的加法器电路。是实现两个一位二进制数的加法运算电路。而全加器是在半加器的基础上的升级版,除了加数和被加数加和外还要加上上一级传进来的进位信号。

二、程序设计

    (1)实验框图

     

        (2)波形图绘制

        (4)代码编写

module half_adder
(
 input    wire   [0:0]   in_1,
 input    wire           in_2,
 
 output   wire           sum,
 output   wire           count
);

assign {count,sum} = in_1+in_2;

endmodule

         (5)编译并查看RTL视图

 

 三、仿真验证

        (1)modesim仿真代码编写

`timescale  1ns/1ns
module  tb_half_adder();

reg     in_1;
reg     in_2;

wire    sum;
wire    count;

initial
    begin
        in_1    <=  1'b0;
        in_2    <=  1'b0;
    end

always #10 in_1 <= {$random} % 2;
always #10 in_2 <= {$random} % 2;

initial
    begin
        $timeformat(-9,0,"ns",6);
        $monitor("@time %t:in_1=%b,in_2=%b,sum=%b,count=%b",$time,in_1,in_2,sum,count);
    end
half_adder  half_adder_inst
(
    .in_1   (in_1),
    .in_2   (in_2),

    .sum    (sum),
    .count  (count)
);
endmodule

        (2)波形验证

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值