欢迎来到天天文库
浏览记录
ID:56098956
大小:109.50 KB
页数:4页
时间:2020-06-19
《quartus_组合逻辑电路的设计.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、贵州大学实验报告学院:专业:班级:姓名学号实验组实验时间指导教师成绩实验项目名称组合逻辑电路的设计实验目的1.学习组合逻辑电路的设计,进一步了解、熟悉和掌握QuartusII的使用方法。2.学习VerilogHDL的编程方法。3.学会使用VectorWave进行波形仿真。实验环境软件:AlteraQuartusII9.0集成开发环境。实验原理七人表决器源代码:modulesevenvote(voter,pass);//定义模块input[6:0]voter;//定义7位数据选择信号outputpass;//定义输出信
2、号regpass;//定义寄存器信号reg[2:0]sum;//定义3位寄存器类型变量reg[2:0]i;//定义3位寄存器类型变量always@(voter)//循环执行一直检测voter信号有无变化begin//开始执行sum=0;//初始化for(i=0;i<=6;i=i+1)//循环语句if(voter[i]==1)sum=sum+1'b1;//加一个1位二进制数1.if(sum[2])//判断3位寄存器类型二进制第三位为1pass=0;elsepass=1;endendmodule//结束模块格雷码转换电路
3、源代码:modulebintogray(bin,gray,led);//定义模块input[3:0]bin;//定义4位输入信号output[3:0]gray;//定义4位输出信号output[3:0]led;//定义4位输出信号assigngray=bin^{1'b0,bin[3:1]};//gray变量始终表示assignled=gray;endmodule//结束模块modulegraytobin(gray,bin);//定义模块input[3:0]gray;//定义4位输入信号output[3:0]bin;/
4、/定义4位输出信号reg[3:0]bin_r;//定义4位寄存器类型变量always@(gray)//循环执行一直检测gray信号begin//格雷码转换bin_r[0]=gray[3]^gray[2]^gray[1]^gray[0];bin_r[1]=gray[3]^gray[2]^gray[1];bin_r[2]=gray[3]^gray[2];bin_r[3]=gray[3];endassignbin=bin_r;endmodule//结束模块实验内容编写需设计的任一组合逻辑电路的Verilog代码并仿真。任务
5、1:设计一个七人表决电路要求:(1)若同意的人数超过半数时,输出为1。(2)用开关表示输入,选用某个LED亮灭显示最终结果。任务2:设计格雷码转换电路要求:(1)拨码开关SW0--4作为输入的二进制码。(2)led0--4表示输入的二进制码,led4--7显示转换结果。实验数据1.七人表决器仿真结果:如图可知:当voter数组的七个变量中超过四个为一,则输出为1;否则输出为0.2.格雷码转换设计原理框图:格雷码转换电路仿真结果(总体):下图为bintogray:下图为graytobin:实验总结1.对于多模块的工程,
6、工程名要与顶层文件名相同2.顶层文件名要与工程中的模块名不同3.程序必须要在使用图形设计将两个模块连在一起之后才能运行。4.可以通过在file中右击选择某一个模块设为顶层文件。指导教师意见签名:年月日注:各学院可根据教学需要对以上栏木进行增减。表格内容可根据内容扩充。
此文档下载收益归作者所有