本章目录:

  • 1. 半加器
    • 1.1 定义
    • 1.2 关系表达式
    • 1.3 电路设计
    • 1.4 代码实现
  • 2. 全加器
    • 2.1 定义
    • 2.2 关系表达式
    • 2.3 电路设计
    • 2.4 代码实现
  • 3. 两个半加器 实现 一个全加器
    • 3.1 设计电路图
    • 3.2 代码实现
  • 参考文献
  • 声明

1. 半加器

1.1 定义

半加器,就是不考虑进位的加法器,只有两个输入和两个输出:输入A和B,输出和数sum和进位cout,半加器真值表如下:

1.2 关系表达式

1.3 电路设计

1.4 代码实现

module add_half(input                A   ,input                B   ,output   wire        S   ,output   wire        C
);assign S = A ^ B;
assign C = A & B;
endmodule

2. 全加器

2.1 定义

全加器就是在半加器的基础上引入一个进位输入,总共三个输入两个输出。全加器真值表如下:

2.2 关系表达式

这里的输出一共有两个,一个sum,一个进位cout。sum的值是A+B+cin然后去掉进位得到的,也就是说A、B、cin 中,如果输入1的个数是奇数,则sum为1,输入1的个数为偶数(含零)则sum为0。根据这个奇偶判定,可以想到用异或操作,所以得到表达式:

cout的值也好分析,cout是加和出来的进位,也就是说,如果A、B、cin三个数中,有两个及以上个1,则cout为1,这个容易得到表达式:

2.3 电路设计

2.4 代码实现

module add_full(input                A   ,input                B   ,input                Ci  , output    wire        S   ,output   wire        Co
);assign S = A ^ B ^ Ci;assign Co = A&B | A&Ci | B&Ci;
endmodule

3. 两个半加器 实现 一个全加器

3.1 设计电路图

3.2 代码实现

`timescale 1ns/1nsmodule add_half(input                A   ,input                B   ,output    wire        S   ,output   wire        C
);assign S = A ^ B;
assign C = A & B;
endmodule/***************************************************************/
module add_full(input                A   ,input                B   ,input                Ci  , output   wire        S   ,output   wire        Co
);wire [1:0] s, c;add_half m1 (.A(A),.B(B),.S(s[0]),.C(c[0]));add_half m2 (.A(s[0]),.B(Ci),.S(s[1]),.C(c[1]));assign S = s[1];assign Co = c[0] | c[1];
endmodule

其实这是一道公司笔试题目,大家可以点击这里

参考文献

文献1
文献2

声明

本人所有系列的文章,仅供学习,不可商用,如有侵权,请告知,立删!!!

本人主要是记录学习过程,以供自己回头复习,再就是提供给后人参考,不喜勿喷!!!

如果觉得对你有用的话,记得收藏+评论!!!

【基础知识】~ 半加器 全加器相关推荐

  1. 与或非逻辑符号_理解FPGA的基础知识——逻辑电路

    FPGA (Field Programmable Gate Aray,现场可编程门阵列)是一种可通过重新编程来实现用户所需逻辑电路的半导体器件.为了便于大家理解FPGA的设计和结构,我们先来简要介绍一 ...

  2. 三、6【Verilog HDL】基础知识之门级建模

    参考书籍:<Verilog HDL 数字设计与综合>第二版,本文档为第5章的学习笔记.由于本章也讲述的建模方式.该建模方式是通常设计师常用的底层抽象层次.更为低层的为开关级建模. 想了解更 ...

  3. <Verilog实现加法器>加法器相关基础知识——持续更新版

    一,内容介绍 加法器是数字电路中的最基础电路之一,也是CPU的核心功能之一.(计算单元) 在这个专栏,我会把所有我知道的数字电路的加法器相关模型都实现一遍并解释其原理. 编程使用的语言为Verilog ...

  4. 嵌入式Linux的OTA更新,基础知识和实现

    嵌入式Linux的OTA更新,基础知识和实现 OTA updates for Embedded Linux, Fundamentals and implementation 更新的需要 一旦嵌入式Li ...

  5. 计算机基础知识第十讲,计算机文化基础(第十讲)学习笔记

    计算机文化基础(第十讲)学习笔记 采样和量化PictureElement Pixel(像素)(链接: 采样的实质就是要用多少点(这个点我们叫像素)来描述一张图像,比如,一幅420x570的图像,就表示 ...

  6. 嵌入式linux编程,嵌入式Linux学习笔记 - 嵌入式Linux基础知识和开发环境的构建_Linux编程_Linux公社-Linux系统门户网站...

    注:所有内容基于友善之臂Mini2440开发板 一.嵌入式Linux开发环境的构建 嵌入式开发一般分为三个步骤: 1.编译bootloader,烧到开发板 2.编译嵌入式Linux内核,烧到开发板 3 ...

  7. 《计算机网络应用基础》模拟试卷(六),《计算机与网络应用基础知识1》模拟试卷...

    <计算机与网络应用基础知识1>模拟试卷 (4页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 <计算机与网络应用基础知识1& ...

  8. python向量计算库教程_NumPy库入门教程:基础知识总结

    原标题:NumPy库入门教程:基础知识总结 视学算法 | 作者 知乎专栏 | 来源 numpy可以说是 Python运用于人工智能和科学计算的一个重要基础,近段时间恰好学习了numpy,pandas, ...

  9. python常用变量名_python基础知识整理

    Python Python开发 Python语言 python基础知识整理 序言:本文简单介绍python基础知识的一些重要知识点,用于总结复习,每个知识点的具体用法会在后面的博客中一一补充程序: 一 ...

  10. 计算机基础知识掌握欠缺,《计算机基础知识》实验教学改革探讨.pdf

    <计算机基础知识>实验教学改革探讨.pdf Science& TechnologyVision 科 技 视 界 科技 探·索·争鸣 计<算机基础知识>实验教学改革探讨 ...

最新文章

  1. 爆款入门 | 微生物组-扩增子16S分析和可视化(线上/线下同时开课,2022.4)
  2. Linux系统调用及其效率
  3. Facebook Libra不会和主权货币竞争
  4. php 利用scandir() 函数 扫描出制定目录下的所有文件
  5. SQL Server:查看数据库用户权限
  6. 【题意+分析】1043 Is It a Binary Search Tree (25 分)
  7. 真正实时随机数的实现C++ _timeb _ftime(转)
  8. 压缩和解压文件:tar gzip bzip2 compress(转)
  9. HDU-2191-悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(dp)
  10. 360浏览器升级_360安全卫士下载|360安全卫士 12.0 最新版
  11. javascript中的Date类型
  12. Qt之QSS(白色靓丽)
  13. SQL*Plus和iSQL*Plus的区别(oracle)
  14. 南航计算机学院考研的专业课,【南航计算机考研】南航计算机考研经验贴
  15. [iOS开发]iOS调用系统相册相机
  16. 电脑报独家报道:宽带升级全国真相调查
  17. ENGLISH资料收集(3)-英语日期的正确表达
  18. 无代码开发+MES管理系统双向奔赴,MES进化新方向
  19. Teardrop攻击--伪造虚假的IP数据包发送并抓取及完成简易静态网页
  20. probuilder_使用ProBuilder自定义快照原型资产

热门文章

  1. 我在迷你控制台风行一时
  2. Java-Tomcat的请求参数解析分析
  3. 复合牛奶的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  4. fail2ban原理与安装(centos6)
  5. 个人用户永久免费,可自动升级版Excel插件,使用VSTO开发,Excel催化剂功能第12波-快速生成、读取、导出条形码二维码...
  6. Beego-HelloWorld
  7. ng-alain php,Angular 中后台前端解决方案 - Ng Alain 介绍
  8. 阿里内核月报2014年12月
  9. 正则表达式常用操作符
  10. java 中long和Long的区别