0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何去實(shí)現(xiàn)一個(gè)半加器電路的設(shè)計(jì)呢?

冬至子 ? 來(lái)源:小小研究生 ? 作者:xxyjs2020 ? 2023-05-22 15:22 ? 次閱讀

數(shù)電基礎(chǔ)

加法器用于兩個(gè)數(shù)或者多個(gè)數(shù)的加和,加法器又分為半加器(half adder)和全加器(full adder)。半加器電路是指對(duì)兩個(gè)輸入數(shù)據(jù)位相加,輸出一個(gè)結(jié)果位和進(jìn)位,沒有進(jìn)位輸入的加法器電路。是實(shí)現(xiàn)兩個(gè)一位二進(jìn)制數(shù)的加法運(yùn)算電路。而全加器除了加數(shù)和被加數(shù)之和外還要加上上一級(jí)傳進(jìn)來(lái)的進(jìn)位信號(hào)。如果沒有理解,看真值表和邏輯式就理解了。

圖片

全加器可看作兩個(gè)半加器和一個(gè)或門組成。

設(shè)計(jì)規(guī)劃

本例中我們實(shí)現(xiàn)最簡(jiǎn)單的半加器。這個(gè)示例中,采用兩個(gè)按鍵作為信號(hào)輸入A和B,兩個(gè)LED燈作為輸出C和S。按下按鍵為低電平,LED燈為低電平時(shí)點(diǎn)亮。需要實(shí)現(xiàn)的功能是,按下AB時(shí)CS點(diǎn)亮,按下其中一個(gè)時(shí)只有C點(diǎn)亮,都不按下時(shí)只有S點(diǎn)亮。

根據(jù)真值表很容易畫出波形。

圖片

編寫代碼

module half_adder
(
input wire in1 , 
input wire in2 , 
output wire sum , 
output wire cout
);


 assign {cout, sum} = in1 + in2;
 endmodule

添加.v文件后編譯通過(guò)。點(diǎn)擊RTL viewer可以查看設(shè)計(jì)的硬件電路結(jié)構(gòu),和我們?cè)O(shè)計(jì)所表達(dá)的意思相同。

圖片

編寫testbench

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


reg in1;
reg in2;
wire sum;
wire cout;


 initial begin
 in1 <= 1'b0;
 in2 <= 1'b0;
 end


 always #10 in1 <= {$random} % 2;
 always #10 in2 <= {$random} % 2;




 //--------------------half_adder_inst-----------------
 half_adder half_adder_inst
 (
 .in1 (in1 ), //input in1
 .in2 (in2 ), //input in2


 .sum (sum ), //output sum
 .cout (cout ) //output cout
 );


 endmodule

又是超級(jí)熟悉的testbench。

對(duì)比波形

圖片

波形與預(yù)想的一致。

分配管腳

圖片

圖片

按照設(shè)計(jì)規(guī)劃:采用S0和S1作為信號(hào)輸入A和B,LED0和LED1作為輸出C和S。按下AB(0+0)時(shí)CS(=00)都亮,按下其中一個(gè)(0+1)時(shí)只有C(01)亮,都不按下(1+1)時(shí)只有S(=10)亮。

圖片

全編譯后上板驗(yàn)證

都不按時(shí)LED1亮

任意按一個(gè)時(shí),LED0亮。

兩個(gè)都按下時(shí),LED0和LED1都亮。

在完成這幾個(gè)實(shí)例的過(guò)程中,遇到了很多錯(cuò)誤,但是只要會(huì)上網(wǎng),把報(bào)錯(cuò)信息進(jìn)行檢索,都能圓滿解決。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • led燈
    +關(guān)注

    關(guān)注

    22

    文章

    1592

    瀏覽量

    107749
  • 加法器
    +關(guān)注

    關(guān)注

    6

    文章

    183

    瀏覽量

    30061
  • RTL
    RTL
    +關(guān)注

    關(guān)注

    1

    文章

    385

    瀏覽量

    59665
  • 全加器
    +關(guān)注

    關(guān)注

    10

    文章

    61

    瀏覽量

    28424
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    怎樣通過(guò)門電路實(shí)現(xiàn)種運(yùn)算設(shè)計(jì)

    運(yùn)算的工作原理是什么?怎樣通過(guò)門電路實(shí)現(xiàn)種運(yùn)算
    發(fā)表于 10-20 07:14

    如何實(shí)現(xiàn)種交通燈電路的設(shè)計(jì)

    交通燈電路實(shí)現(xiàn)的功能有哪些?如何實(shí)現(xiàn)種交通燈電路的設(shè)計(jì)
    發(fā)表于 11-02 09:25

    如何實(shí)現(xiàn)個(gè)基于STM32的心率傳感故障檢測(cè)設(shè)計(jì)

    如何實(shí)現(xiàn)個(gè)基于STM32的心率傳感故障檢測(cè)設(shè)計(jì)?其代碼是如何
    發(fā)表于 11-25 07:13

    如何實(shí)現(xiàn)個(gè)TF廣播

    TF廣播是怎樣定義的?如何實(shí)現(xiàn)個(gè)TF廣播
    發(fā)表于 02-14 07:56

    和全加器是算術(shù)運(yùn)算電路中的基本單元,它們
    發(fā)表于 04-07 10:34 ?1.5w次閱讀
    <b class='flag-5'>半</b><b class='flag-5'>加</b><b class='flag-5'>器</b>

    最小邏輯電路 單電子成功研制

    項(xiàng)新研究中,韓國(guó)、日本和英國(guó)科學(xué)家組 成的科研小組僅用5個(gè)晶體管就制造出個(gè)
    的頭像 發(fā)表于 11-25 23:50 ?3405次閱讀

    全加器是什么?全加器和的區(qū)別?

    是能夠計(jì)算低位進(jìn)位的二進(jìn)制加法電路。與相比,全加器不只考慮本位計(jì)算結(jié)果是否有進(jìn)位,也考
    發(fā)表于 07-25 11:15 ?7.3w次閱讀
    全加器是什么?全加器和<b class='flag-5'>半</b><b class='flag-5'>加</b><b class='flag-5'>器</b>的區(qū)別?

    和全加器的原理及區(qū)別(結(jié)構(gòu)和功能)

    +加法和全加法是算術(shù)運(yùn)算電路中的基本單元,它們是完成1位二進(jìn)制相加的種組合邏輯
    的頭像 發(fā)表于 07-25 11:37 ?33.6w次閱讀
    <b class='flag-5'>半</b><b class='flag-5'>加</b><b class='flag-5'>器</b>和全加器的原理及區(qū)別(結(jié)構(gòu)和功能)

    電路原理圖資料免費(fèi)下載

    電路是指對(duì)兩個(gè)輸入數(shù)據(jù)位相加,輸出個(gè)結(jié)果位和
    發(fā)表于 07-08 08:00 ?18次下載
    <b class='flag-5'>半</b><b class='flag-5'>加</b><b class='flag-5'>器</b><b class='flag-5'>電路</b>原理圖資料免費(fèi)下載

    電路原理圖

    電路原理圖免費(fèi)下載。
    發(fā)表于 06-11 10:51 ?24次下載

    真值表

    實(shí)現(xiàn)個(gè)位二進(jìn)制數(shù)加法運(yùn)算的電子器件,具有被加數(shù)A和加數(shù)B兩
    的頭像 發(fā)表于 07-09 09:46 ?5.2w次閱讀
    <b class='flag-5'>半</b><b class='flag-5'>加</b><b class='flag-5'>器</b> <b class='flag-5'>半</b><b class='flag-5'>加</b><b class='flag-5'>器</b>真值表

    vhdl描述

    vhdl描述
    發(fā)表于 02-24 11:08 ?0次下載

    基于FPGA的設(shè)計(jì)

    加法器用于兩個(gè)數(shù)或者多個(gè)數(shù)的和,加法器又分為(half adder)和全加器(full adder)。
    的頭像 發(fā)表于 05-12 14:50 ?962次閱讀
    基于FPGA的<b class='flag-5'>半</b><b class='flag-5'>加</b><b class='flag-5'>器</b>設(shè)計(jì)

    和全加器的功能特點(diǎn)

    和全加器是數(shù)字電路中的基本組件,用于執(zhí)行二進(jìn)制數(shù)的加法運(yùn)算。它們?cè)谟?jì)算機(jī)、微處理和其他數(shù)字系統(tǒng)中扮演著重要角色。
    的頭像 發(fā)表于 10-18 11:10 ?511次閱讀

    和全加器的區(qū)別是什么

    (Half Adder)和全加器(Full Adder)是數(shù)字電路中的基本組件,用于執(zhí)行二進(jìn)制加法運(yùn)算。它們的主要區(qū)別在于功能和輸入輸出的數(shù)量。 1. 功能差異
    的頭像 發(fā)表于 10-18 11:12 ?1404次閱讀