崑山科技大學 資訊工程系
數位邏輯實習
四位元連波進位加法器
四位元連波進位加法器
一、 簡介
半加法器
半加法器的電路,需要兩個二進位輸入和兩個二進位輸出。輸 入變數代表被加數與加數位元;輸出變數,即為和與進位。我們指 定 x,y 兩個符號代表輸入,且 S(和)與 C(進位)代表輸出。半加法器 只有當兩個輸入同時為 1 時,輸出 C 為 1,輸出 S 代表和的最小有 效位元。
全加法器
全加法器為一處理三個輸入位元院算術和的組合電路。它具有 三個輸入與兩個輸出。其中兩個輸入變數,以 x,y 表示,代表兩相 加的兩個有效位元,第三個輸入 z,代表從前級較低有效位置送來 的進位。此電路必須具有兩個輸出,因為三個二進位數元相加之和 的可能範圍由 0 到 3。2 與 3 在二進位中需兩個數元表示,兩個輸 出以 S 記號代表和,C 代表進位。當所有輸入位元為 0,則輸出為 0;若只有一個輸入為 1 或所有三個輸入都為 1,則輸出 S 為 1;若 兩個或三個輸入為 1,則 C 為 1(產生進位)。
二、 ISE 電路圖
三、 驗證
1. 真值表驗證
A B S C0 C4
0000 0000 0000 0 0 0001 0001 0010 0 0 0010 0010 0100 0 0 0011 0011 0110 0 0 0100 0100 1000 0 0 0101 0101 1010 0 0 0110 0110 1100 0 0 0111 0111 1110 0 0 1000 1000 0000 0 1 1001 1001 0010 0 1 1010 1010 0100 0 1 1011 1011 0110 0 1 1100 1100 1000 0 1 1101 1101 1010 0 1 1110 1110 1100 0 1 1111 1111 1110 0 1
2. Test bench 程式碼
當 A=0000,B=0000,S=0000,C0=0,C4=0
當 A=0001,B=0001,S=0010,C0=0,C4=0
當 A=0010,B=0010,S=0100,C0=0,C4=0
當 A=0011,B=0011,S=0110,C0=0,C4=0
當 A=0100,B=0100,S=1000,C0=0,C4=0
當 A=0101,B=0101,S=1010,C0=0,C4=0
當 A=0110,B=0110,S=1100,C0=0,C4=0
當 A=0111,B=0111,S=1110,C0=0,C4=0
當 A=1000,B=1000,S=0000,C0=0,C4=1
當 A=1001,B=1001,S=0010,C0=0,C4=1
當 A=1010,B=1010,S=0100,C0=0,C4=1
當 A=1011,B=1011,S=0110,C0=0,C4=1
當 A=1100,B=1100,S=1000,C0=0,C4=1
當 A=1101,B=1101,S=1010,C0=0,C4=1
當 A=1110,B=1110,S=1100,C0=0,C4=1
當 A=1111,B=1111,S=1110,C0=0,C4=1
四、 結論心得
思閔心得:
這次的實習,跟之前比較不一樣,這次是有課本給我們看照著打然 後執行,看有沒有過,剛開始打完時有錯,找了非常久,而且這一次我 們所花時間也蠻多的,畢竟是第一次遇到這種題型,但也學到了不少,
但有些意思真的不怎麼懂,需要多花點時間才會了解。
雅慧心得:
這次實習,讓我覺得跟以往不太一樣,一次教得比一次深,這次是 做四位元連波進位加法器,照著課本打,將執行結果用 Test bench 呈現,
雖然中間過程有不小心打錯,找了滿久的,才發現原來是 half_adder 名 稱打錯了,難怪不能執行出結果,最後有順利完成這次的實習。