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

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

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

FPGA設(shè)計:4位全加器代碼以及仿真

fpga加油站 ? 來源:fpga加油站 ? 2023-05-23 10:00 ? 次閱讀

大家好!今天給大家分享的是4位全加器的代碼以及仿真程序。俗話說:“千里之行,始于足下?!睂τ诔鯇W(xué)者來說, 加法器是fpga初學(xué)者入門必須掌握的內(nèi)容。我們很多朋友在入門時囫圇吞棗,一些基礎(chǔ)的東西沒有掌握好,導(dǎo)致后面在做大型項目的時候漏洞百出。因此,大家在開始學(xué)習(xí)或者正在學(xué)習(xí)fpga的過程中,一定要把一些基礎(chǔ)的模塊理解透徹。我會給大家分享一些常見的模塊代碼以及仿真程序,希望能幫助到大家更好的去學(xué)習(xí)fpga!下面一起來看下4位加法器的代碼以及仿真程序:

4位全加器代碼:

module adder4(cout,sum,ina,inb,cin);
output    cout;
output   [3:0] sum;
input  [3:0] ina,inb;
input cin;
assign {cout,sum}=ina+inb+cin;
endmodule

4位全加器的仿真程序:

`timescale 1ns/1ns
module tb; // 測試模塊的名字
reg [3:0] ina,inb; // 測試輸入信號定義為 reg 型
reg cin;
wire [3:0] sum; // 測試輸出信號定義為 wire 型
wire cout;
integer i,j;
adder4 adder(cout,sum[3:0],ina[3:0],inb[3:0],cin); // 調(diào)用測試對象
always #5 cin=~cin; // 設(shè)定 cin 的取值




initial
begin
ina=0;inb=0;cin=0;
for (i=1;i<16;i=i+1)
#10 ina=i; // 設(shè)定 a 的取值
end




initial
begin
for (j=1;j<16;j=j+1)
#10 inb=j; // 設(shè)定 b 的取值
end
initial // 定義結(jié)果顯示格式
begin
$monitor($time,,,"%d+%d+%b={%b,%d}",ina,inb,cin,cout,sum);
#160 $finish;
end
endmodule

modelsim仿真結(jié)果:

ee4efb8e-f891-11ed-90ce-dac502259ad0.png

ee5ca4d2-f891-11ed-90ce-dac502259ad0.png

具體的代碼細(xì)節(jié)我就不詳細(xì)闡述了,大家一定要學(xué)會思考,在這個代碼中,主要要理解清楚這樣幾個問題:

什么叫全加器?

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

什么叫低位進(jìn)位?什么叫高位進(jìn)位?

為什么仿真出來的波形圖感覺和modelsim打印出來的結(jié)果不一樣?比如感覺數(shù)據(jù)沒對齊?

$monitor是什么意思?怎么使用?格式是什么?

這個4位全加器的電路圖是什么樣的?

就這樣一個“簡單”的4位全加器,你真的掌握了嗎?如果你能快速回答出我上面提出的幾個問題,那你就掌握了;如果不能,那還要好好看下!其實,我們很多的公司筆試就是考這些簡單的題目,但是卻可以難倒一大片同學(xué)!再次提醒大家!重視基礎(chǔ)!

審核編輯:湯梓紅

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

    關(guān)注

    1620

    文章

    21510

    瀏覽量

    598877
  • 仿真
    +關(guān)注

    關(guān)注

    50

    文章

    3971

    瀏覽量

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

    關(guān)注

    6

    文章

    183

    瀏覽量

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

    關(guān)注

    10

    文章

    59

    瀏覽量

    28341
  • 程序
    +關(guān)注

    關(guān)注

    115

    文章

    3719

    瀏覽量

    80355

原文標(biāo)題:基礎(chǔ)模塊 | 4位全加器代碼以及仿真

文章出處:【微信號:fpga加油站,微信公眾號:fpga加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    全加器代碼VHDL

    用VHDL的人好少,哎……一全加器的邏輯表達(dá)式是: S=A⊕B⊕Ci Co=AB+ACi+BCi 然后是代碼:[code]USE IEEE.STD_LOGIC_1164.ALL; USE
    發(fā)表于 12-09 22:16

    全加器代碼VHDL

    用VHDL的人好少,哎……一全加器的邏輯表達(dá)式是: S=A⊕B⊕Ci Co=AB+ACi+BCi 然后是代碼:[code]USE IEEE.STD_LOGIC_1164.ALL; USE
    發(fā)表于 12-09 22:17

    請問Quartus2中的用一全加器來實現(xiàn)四全加器

    全加器是我自己封裝的,在四全加器中調(diào)用,在編譯過程總是出錯
    發(fā)表于 03-06 15:48

    FPGA入門——1全加器設(shè)計 精選資料分享

    FPGA入門——1全加器設(shè)計一、原理圖輸入1.1 創(chuàng)建工程1.2 原理圖輸入1.3 將設(shè)計項目設(shè)置成可調(diào)用的元件1.4 半加器仿真1.5 設(shè)計全加
    發(fā)表于 07-26 07:01

    怎樣去設(shè)計一種基于FPGA的1全加器

    怎樣去設(shè)計一種基于FPGA的1全加器?如何對基于FPGA的1全加器進(jìn)行
    發(fā)表于 09-17 07:38

    基于Quartus II軟件完成一個1全加器的設(shè)計

    FPGA 設(shè)計入門(嵌入式系統(tǒng)應(yīng)用開發(fā))一、實驗要求二、實驗步驟1. 新建工程2. 原理圖設(shè)計3. 將設(shè)計項目設(shè)置成可調(diào)用的元件4. 半加器仿真5. 設(shè)計全加器頂層文件6. 將設(shè)計項目
    發(fā)表于 12-17 06:19

    什么是8全加器和8為帶超前進(jìn)位的全加器?

    超前進(jìn)位的8全加器:總結(jié)前言隨著人工智能的不斷發(fā)展,機(jī)器學(xué)習(xí)這門技術(shù)也越來越重要,很多人都開啟了學(xué)習(xí)機(jī)器學(xué)習(xí),本文就介紹了機(jī)器學(xué)習(xí)的基礎(chǔ)內(nèi)容。以下是本篇文章正文內(nèi)容,使用門級原語語句設(shè)計8
    發(fā)表于 02-09 07:49

    什么是一全加器,其原理是什么?

    什么是一全加器,其原理是什么  加器是能夠計算低位進(jìn)位的二進(jìn)制加法電路 一全加器由2個半加
    發(fā)表于 03-08 17:13 ?7.5w次閱讀

    什么是全加器 全加器工作原理

    全加器英語名稱為full-adder,是用門電路實現(xiàn)兩個二進(jìn)制數(shù)相加并求出和的組合線路,稱為一全加器
    的頭像 發(fā)表于 07-25 16:03 ?7.7w次閱讀

    FPGA各種數(shù)字電路模擬的詳細(xì)資料合集免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是FPGA各種數(shù)字電路模擬的詳細(xì)資料合集免費下載主要內(nèi)容包括了:4 全加器,4
    發(fā)表于 01-02 17:35 ?27次下載
    <b class='flag-5'>FPGA</b>各種數(shù)字電路模擬的詳細(xì)資料合集免費下載

    上百個Verilog HDL的程序設(shè)計實例代碼合集免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是上百個Verilog HDL的程序設(shè)計實例代碼合集免費下載包括了:4 全加器4
    發(fā)表于 08-02 17:11 ?71次下載
    上百個Verilog HDL的程序設(shè)計實例<b class='flag-5'>代碼</b>合集免費下載

    使用FPGA實現(xiàn)一全加器的文本輸入實驗報告資料免費下載

    通過此實驗了解FPGA 開發(fā)軟件Quartus II 的使用方法及VHDL 的編程方法,學(xué)習(xí)用VHDL 語言來描述1 全加器及電路的設(shè)計仿真和硬件測試。
    發(fā)表于 12-02 16:34 ?12次下載

    全加器的真值表

    全加器英語名稱為full-adder,是用門電路實現(xiàn)兩個二進(jìn)制數(shù)相加并求出和的組合線路,稱為一全加器。一全加器可以處理低位進(jìn)位,并輸出本
    的頭像 發(fā)表于 06-29 09:14 ?6w次閱讀
    <b class='flag-5'>全加器</b>的真值表

    Verilog數(shù)字系統(tǒng)設(shè)計——復(fù)雜組合邏輯實驗2(8全加器和8為帶超前進(jìn)位的全加器

    超前進(jìn)位的8全加器:總結(jié)前言 隨著人工智能的不斷發(fā)展,機(jī)器學(xué)習(xí)這門技術(shù)也越來越重要,很多人都開啟了學(xué)習(xí)機(jī)器學(xué)習(xí),本文就介紹了機(jī)器學(xué)習(xí)的基礎(chǔ)內(nèi)容。以下是本篇文章正文內(nèi)容,使用門級原語語句設(shè)計8
    發(fā)表于 12-05 19:06 ?4次下載
    Verilog數(shù)字系統(tǒng)設(shè)計——復(fù)雜組合邏輯實驗2(8<b class='flag-5'>位</b><b class='flag-5'>全加器</b>和8為帶超前進(jìn)位的<b class='flag-5'>全加器</b>)

    FPGA設(shè)計:4計數(shù)器代碼仿真程序

    大家好!今天給大家分享的是4計數(shù)器的代碼以及仿真程序。
    的頭像 發(fā)表于 05-24 09:22 ?1534次閱讀
    <b class='flag-5'>FPGA</b>設(shè)計:<b class='flag-5'>4</b><b class='flag-5'>位</b>計數(shù)器<b class='flag-5'>代碼</b>及<b class='flag-5'>仿真</b>程序