资源描述:
《西安交大数子电子技术实验报告》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、西安交通大学数字电子技术实验报告姓名:高加西班级:电气1237学号:ISE基础实验一、设计要求1)通过使用ISE软件和FPGA实现带有置位和清零端的边沿D触发器的逻辑图。2)练习verilog语法编写,掌握用HDL实现基本逻辑功能。二、HDL综合实验任务边沿D触发器的设计1.实验方法和步骤(1)建立工程文件,输入HDL程序如下:moduleD_Flip_Flop(inputclk,inputset,inputD,inputclr,outputregq//注意:always模块中的输出必须是寄存器型变量);always@(posedgeclkorpo
2、sedgeclrorposedgeset)begin37if(clr)q<=0;elseif(set)q<=1;elseq<=D;endendmodule(1)编写约束文件:NET"clk"LOC="B8";//时钟NET"D"LOC="N3";//SW7NET"set"LOC="L3";//SW1NET"clr"LOC="P11";//SW0NET"q"LOC="G1";//LD7(2)综合、实现及生成编程文件;仿真,设计下载:仿真测试文件如下:moduletest_D_Flip_Flop;//Inputsregclk;regset;regD;r
3、egclr;//Outputswireq;//InstantiatetheUnitUnderTest(UUT)37D_Flip_Flopuut(.clk(clk),.set(set),.D(D),.clr(clr),.q(q));initialbegin//InitializeInputsclk=0;set=1;D=0;clr=0;//Wait100nsforglobalresettofinish#100;//AddstimulushereEndalways#10clk=~clk;always#12D=~D;always#33clk=~clk;al
4、ways#42set=~set;endmodule37仿真结果:三、分析与讨论由仿真结果可以看出该电路完成了想要实现的逻辑功能(即边沿D触发器),通过这次实验我大体了解了ISE软件和Verilog程序语言.37组合逻辑电路实验一、实验目的及其设计要求1)学习使用ISE软件生成一个新工程文件2)学习使用HDL进行电路设计3)学会编辑顶层文件和用户约束文件4)熟悉仿真及综合及实现还有FPGA配置等5)熟悉在BASYS2开发板上的简单外围设备的控制6)使用HDL设计一个新的逻辑功能并验证,本实验设计的逻辑功能函数表达式为:。7)设计一个4选1多路选择器,
5、并在开发板上验证。8)完成4位数码管动态显示设计,实现将8个SW输入的两位十六进制对应的8421BCD码,显示在数码管上。二、组合逻辑电路实验任务任务1:逻辑功能函数表达式设计实验方法和步骤(1)建立工程文件,输入HDL程序如下:37(1)modulegate2((2)inputa,(3)inputb,(4)inputc,(5)inputd,(6)outputz(7));(8)assignz=~((a&b)
6、(c&d));(9)endmodule(10)编写约束文件:NET"a"LOC=P11;NET"b"LOC=L3;NET"c"LOC=K3;N
7、ET"d"LOC=B4;NET"z"LOC=M5;(11)综合、实现及生成编程文件;仿真,设计下载:仿真测试文件如下:modulegates2test;//Inputsrega;regb;regc;37regd;//Outputswirey;//InstantiatetheUnitUnderTest(UUT)gates4uut(.a(a),.b(b),.c(c),.d(d),.y(y));initialbegin//InitializeInputsa=0;b=0;c=0;d=0;//Wait100nsforglobalresettofinish#1
8、00;//Addstimulushere#100;a<=0;b<=0;c<=0;d<=1;#200;a<=0;b<=0;c<=1;d<=0;#200;a<=0;b<=0;c<=1;d<=1;#200;a<=0;b<=1;c<=0;d<=0;#200;a<=0;b<=1;c<=0;d<=1;37#200;a<=0;b<=1;c<=1;d<=0;#200;a<=0;b<=1;c<=1;d<=1;#200;a<=1;b<=0;c<=0;d<=0;#200;a<=1;b<=0;c<=0;d<=1;#200;a<=1;b<=0;c<=1;d<=0;#200;
9、a<=1;b<=0;c<=1;d<=1;#200;a<=1;b<=1;c<=0;d<=0;#200;a<=1;b<=1;c