资源描述:
《集成电路EDA技术作业.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、集成电路EDA技术作业班级:电信11姓名:张瑞玲学号:10一、数字集成电路设计EDA目录加法器设计实验2加法器设计与仿真2halfadder3fulladder58-bitripplecarryadder64-bitcarrylookaheadadder716-bitcarrylookaheadadder964-bitcarrylookaheadadder128-bittwopipelinedstagesadder1712-bitthreepipelinedstagesadder19加法器设计与仿真一,实验目的通过试验,掌握数字电路仿真工具Modelsim仿真使
2、用,掌握硬件描述语言基本语法,掌握组合逻辑电路和时序逻辑电路的设计与仿真,对半加器,全加器、串行进位加法器,超前进位加法器和流水线加法器从理论上和设计上进行理解。二,实验内容halfadder(半加器)实验原理:在半加器结构中,只有两个加数,一个和,一个进位输出,行波进位是用8个一位的加法器串联而构成的。因此由一个一位的半加器和7个一位的全加器构成。一位半加器原理:半加器有两个二进制的输入,其将输入的值相加,并输出结果到和(Sum)和进位(Carry)。半加器虽能产生进位值,但半加器本身并不能处理进位值。下表为半加器的真值表:输入输出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])