實驗2:1位全加器
實驗任務
用與非門和異或門設計一個1位全加器電路,然后在實驗板上實現自己設計的邏輯電路,并驗證是否正確。
在將兩個多位二進制數相加時,除了最低位以外,每一位都應該考慮來自低位的進位,即將兩個對應位的加數和來自低位的進位三個數相加。這種運算稱為全加,所用的電路稱為全加器。按照二進制加法運算規則,可以得到如下表所示全加器真值表。其中,A、B是兩個加數,CI是來自低位的進位,S是相加的和,CO是向高位的進位。將S、CO和A、B、CI的關系寫成邏輯表達式則得到:
S=CI’A’B+CI’AB’+CIA’B’+CIAB=A⊕B⊕CI
CO=CI’AB+CIA’B+CI’AB’+CIAB=AB+AC+BC
1位全加器程序清單adder1.v
module adder1 (
input wire a, //輸入的低位進位及兩個加數cin、a、b
input wire b,
input wire cin,
output wire sum, //輸出的和與進位
output wire cout );
wire s1,s2,s3; //定義中間變量
xor (s1,a,b); //調用基本異或門
xor (sum,s1,cin);
nand (s2,a,b); //調用基本與非門
nand (s3,s1,cin);
and (cout,s2,s3);
endmodule
*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。