当前位置:首页 > FPGA > 正文内容

半加器

浩雨4年前 (2022-08-14)FPGA6850

半加器:两个输入数据位相加,输出一个结果位和进位,没有进位输入的加法器电路。即两个一位二进制数的加法运算电路。

半加器 模块框图:

image.png

sum:结果位

count:进位


半加器 真值表:

image.png

半加器 波形图:

image.png


代码部分:

选择器代码:在Src文件夹中新建 half_adder.v文件

module half_adder
(
    input   wire  in_1 ,
    input   wire  in_2 ,
    output  wire  sum  ,
    output  wire  count
);
assign {count,sum} = in_1 + in_2;
endmodule

仿真文件代码:在Sim文件夹中新建 tb_half_adder.v 文件

`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

结果:

打印的日志和真值表中相对应

X79{TM5P80I~(9QLPR8QJHW.png

波形也正常

U88X4FC%)B{@2Y}KCEE~T`0.png

扫描二维码推送至手机访问。

版权声明:本文由我的FPGA发布,如需转载请注明出处。

本文链接:https://world.myfpga.cn/index.php/post/257.html

分享给朋友:

“半加器” 的相关文章

CDC 单脉冲信号处理

CDC 单脉冲信号处理

代码中的Sys_clk其实是没有用到的,项目文件:cdc_single.zip//------------------------------------------------------// File Name        : cdc.v// Autho...

避免Latch产生

避免Latch产生

Latch简介:                Latch其实就是锁存器,是一种在异步电路系统中,对输入信号电平敏感的单元,用来存储信息。        锁存器在数据未锁存时,输出端的信号随输入信号变化,就像信号通过一个缓冲器,一旦锁存信号有效,则数据被锁存,输入信号不起作用。因此,锁存器也被称为透...

(手册)LEDA Version 2006.06 User Guide 编码规则检查工具

(手册)LEDA Version 2006.06 User Guide 编码规则检查工具

navigator.pdfinstall.pdfcrules.pdfrelnotes.pdftcl.pdftutor.pdfuser.pdfversl.pdfvrsl.pdf...

(手册)IC设计流程 ICC DC VCS

(手册)IC设计流程 ICC DC VCS

VCS_Lab_Guide.pdfIC_Compiler1_Lab_Guide.pdfDesign_Compiler1_Lab_Guide.pdf...

Xilinx常用原语总结和使用

Xilinx常用原语总结和使用

原语是 Xilinx 器件底层硬件中的功能模块,它使用专用的资源来实现一系列的功能。相比于 IP 核,原 语的调用方法更简单,但是一般只用于实现一些简单的功能。本章主要用到了 BUFG、BUFIO、IDDR、ODDR、 IDELAYE2 和 IDELAYCTRL。 BUFG:全局缓冲,...