資源描述:
《集成電路EDA技術作業(yè).doc》由會員上傳分享,免費在線閱讀,更多相關內容在應用文檔-天天文庫。
1、集成電路EDA技術作業(yè)班級:電信11姓名:張瑞玲學號:10一、數(shù)字集成電路設計EDA目錄加法器設計實驗2加法器設計與仿真2halfadder3fulladder58-bitripplecarryadder64-bitcarrylookaheadadder716-bitcarrylookaheadadder964-bitcarrylookaheadadder128-bittwopipelinedstagesadder1712-bitthreepipelinedstagesadder19加法器設計與仿真一,實驗目的通過試驗,掌握數(shù)字電路仿真工具Modelsim仿真使
2、用,掌握硬件描述語言基本語法,掌握組合邏輯電路和時序邏輯電路的設計與仿真,對半加器,全加器、串行進位加法器,超前進位加法器和流水線加法器從理論上和設計上進行理解。二,實驗內容halfadder(半加器)實驗原理:在半加器結構中,只有兩個加數(shù),一個和,一個進位輸出,行波進位是用8個一位的加法器串聯(lián)而構成的。因此由一個一位的半加器和7個一位的全加器構成。一位半加器原理:半加器有兩個二進制的輸入,其將輸入的值相加,并輸出結果到和(Sum)和進位(Carry)。半加器雖能產(chǎn)生進位值,但半加器本身并不能處理進位值。下表為半加器的真值表:輸入輸出ABCS0000010110
3、011110則可以得到半加器的表達式為:一位全加器原理:全加器三個二進制的輸入,其中一個是進位值的輸入,所以全加器可以處理進位值。下表為全加器的真值表:輸入輸出ABCiCoS0000000101010010111010001101101101011111進行卡諾圖化簡:Co的卡諾圖:ABCi000111100001010111S的卡諾圖:ABCi000111100010111010則全加器的表達式如下:實驗程序:moduleonebit_hfad(a,b,co,s);inputa,b;outputco,s;assignco=a&b,s=a^b;endmodule
4、測試程序:moduleonebit_hfad_test;rega,b;wireco;wires;onebit_hfadHI(.a(a),.b(b),.co(co),.s(s));initialbegina=0;b=0;endalways#5a=a+1'b1;always#10b=b+1'b1;endmodule仿真分析:fulladder實驗程序moduleonebit_fad(a,b,ci,co,s);inputa,b,ci;outputco,s;assignco=(a&b)
5、(b&ci)
6、(a&ci),s=a^b^ci;endmodule測試程序module
7、onebit_fad_test;rega,b,ci;wireco;wires;onebit_fadHI(.a(a),.b(b),.co(co),.s(s),.ci(ci));initialbegina=0;b=0;ci=0;endalways#5a=a+1'b1;always#10b=b+1'b1;always#20ci=ci+1'b1;endmodule仿真分析:8-bitripplecarryadder實驗程序:moduleonebit_fad(a,b,ci,co,s);inputa,b,ci;outputco,s;assignco=(a&b)
8、(b&ci)
9、
10、(a&ci),s=a^b^ci;endmodulemoduleonebit_fad(ina,inb,cin,cout,sum);input[7:0]ina,inb;inputcin;outputcout;output[7:0]sum;wireci1,ci2,ci3,ci4,ci5,ci6,ci7;fadad0(.a(ina[0]),.b(inb[0]),.ci(cin),.co(ci1),.s(sum[0]));fadad1(.a(ina[1]),.b(inb[1]),.ci(ci1),.co(ci2),.s(sum[1]));fadad2(.a(ina[2]
11、),.b(inb[2]),.ci(ci2),.co(ci3),.s(sum[2]));fadad3(.a(ina[3]),.b(inb[3]),.ci(ci3),.co(ci4),.s(sum[3]));fadad4(.a(ina[4]),.b(inb[4]),.ci(ci4),.co(ci5),.s(sum[4]));fadad5(.a(ina[5]),.b(inb[5]),.ci(ci5),.co(ci6),.s(sum[5]));fadad6(.a(ina[6]),.b(inb[6]),.ci(ci6),.co(ci7),.s(sum[6]));fadad
12、7(.a(ina[7])