可编程逻辑器件设计实验报告_第1页
可编程逻辑器件设计实验报告_第2页
可编程逻辑器件设计实验报告_第3页
可编程逻辑器件设计实验报告_第4页
可编程逻辑器件设计实验报告_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、装 订 线可编程逻辑器件设计实验报告实验名称:Quartus II基础实验 实验目的:使用Quartus II设计并完成一个简单的逻辑电路 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:使用Quartus II设计并完成一个简单的逻辑电路 1、 实验步骤(1) 创建工程(2) 创建文件(3) 编译工程(4) 观察RTL视图(5) 仿真2、 VerilogHDL代码采用原理图输入3、 RTL视图 4、 仿真结果 装 订 线可编程逻辑器件设计实验报告实验名称:第二部分:VerilogHDL基础实验 实验目的:掌握Quartus II 软件

2、的基本使用方法,完成基本时序电路设计 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:简单D触发器 1、实验步骤(1) 创建工程(2) 创建文件(3) 编译工程(4) 观察RTL视图(5) 仿真2、 VerilogHDL代码 module _DFF (clk,d,q); input clk,d; output q; reg q; always (posedge clk) begin q<=d; end endmodule3、 RTL视图 4、仿真结果 装 订 线可编程逻辑器件设计实验报告实验名称:第二部分:VerilogHDL基础

3、实验 实验目的:掌握Quartus II 软件的基本使用方法,完成基本时序电路设计 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:同步置数的D触发器 1、 实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、 VerilogHDL代码 module CFQ (clk,d,load,q); input clk,d,load; output q; reg q; always(posedge clk) begin if(!load) q<=1; else q<=d; end endmodule3、RTL视图 4、仿真结

4、果 装 订 线可编程逻辑器件设计实验报告实验名称:第二部分:VerilogHDL基础实验 实验目的:掌握Quartus II 软件的基本使用方法,完成基本时序电路设计 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:同步置数异步清零的D触发器 1、实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、VerilogHDL代码 module _DFf (clk,d,load,rest,q); input clk,d,load,rest; output q; reg q; always(posedge clk or negedge

5、rest) begin if(!rest) q<=0; else if (!load) q<=1; else q<=d; endendmodule3、RTL视图 4、仿真结果 装 订 线可编程逻辑器件设计实验报告实验名称:第二部分:VerilogHDL基础实验 实验目的:掌握Quartus II 软件的基本使用方法,完成基本时序电路设计 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:带Q_n输出的D触发器 1、实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、VerilogHDL代码 module d_q

6、(in,clk,q,set,a,reset,q_n);input clk,in,set,a,reset;output reg q,q_n;always(posedge clk,negedge reset)beginq_n=q;if(!reset)q<=0;else if(!set)q<=a;elseq<=in;end3、RTL视图 4、仿真结果 装 订 线可编程逻辑器件设计实验报告实验名称:第二部分:VerilogHDL基础实验 实验目的:掌握Quartus II 软件的基本使用方法,完成基本时序电路设计 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号

7、: 201 实验名称:4选1数据选择器 1、实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、VerilogHDL代码 module mux4_1 (in0,in1,in2,in3,s0,s1,out); input s0,s1; input in0,in1,in2,in3; output out; reg out; always(in0,in1,in2,in3,s0,s1) begin case(s0,s1) 2'b00:out<=in0; 2'b01:out<=in1; 2'b10:out<=in2; 2'b11:out<

8、=in3; default:out<=1'bz; endcase endendmodule 3、RTL视图 4、仿真结果 装 订 线可编程逻辑器件设计实验报告实验名称:第二部分:VerilogHDL基础实验 实验目的:掌握Quartus II 软件的基本使用方法,完成基本时序电路设计 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:6选1数据选择器 1、实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、VerilogHDL代码 module mux6_1 (in0,in1,in2,in3,in4,in5,s0,

9、s1,s2,out); input s0,s1,s2; input in0,in1,in2,in3,in4,in5; output out; reg out; always(in0,in1,in2,in3,in4,in5,s0,s1,s2) begin case(s0,s1,s2) 3'b000:out<=in0; 3'b001:out<=in1; 3'b010:out<=in2; 3'b011:out<=in3; 3'b100:out<=in4; 3'b101:out<=in5; default:out<

10、;=1'bz; endcase endendmodule 3、RTL视图 4、仿真结果 装 订 线可编程逻辑器件设计实验报告实验名称:第二部分:VerilogHDL基础实验 实验目的:掌握Quartus II 软件的基本使用方法,完成基本时序电路设计 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:38译码器(assign语句实现) 1、实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、VerilogHDL代码 module as_38(a,q);input 2:0 a;output 7:0 q;parameter

11、m=8'b00000001;assign q=(m<<a);endmodule3、RTL视图 4、仿真结果 装 订 线可编程逻辑器件设计实验报告实验名称:第二部分:VerilogHDL基础实验 实验目的:掌握Quartus II 软件的基本使用方法,完成基本时序电路设计 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:38译码器(always语句实现) 1、实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、VerilogHDL代码 module yima3_8(in0,in1,in2,out); inpu

12、t in0,in1,in2; output 7:0 out; reg 7:0 out; always(in0,in1,in2,out) begin case(in2,in1,in0) 3'b000:out<=8'b00000001; 3'b001:out<=8'b00000010; 3'b010:out<=8'b00000100; 3'b011:out<=8'b00001000; 3'b100:out<=8'b00010000; 3'b101:out<=8'b00

13、100001; 3'b110:out<=8'b01000001; 3'b111:out<=8'b10000001; default:out<=2'bz; endcase endendmodule3、RTL视图 4、仿真结果 装 订 线可编程逻辑器件设计实验报告实验名称:第三部分:VerilogHDL中级实验 实验目的:加深理解,熟练操作 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:设计一个模10计数器(异步清零,同步置数) 1、实验步骤创建工程、创建文件、编译工程、观察RTL

14、视图、仿真2、VerilogHDL代码 module m10(clk,set,reset,qout,data,cout);input clk,set,reset;input 3:0 data;output reg 3:0 qout;output reg cout;always(posedge clk,negedge reset)beginif(!reset)beginqout<=0;cout<=0;endelse if(set=0)beginqout<=data;cout<=0;endelse if(qout<9)beginqout<=qout+1;cout

15、<=0;endelse beginqout<=0;cout<=1;endendendmodule3、RTL视图 4、仿真结果装 订 线可编程逻辑器件设计实验报告实验名称:第三部分:VerilogHDL中级实验 实验目的:加深理解,熟练操作 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:设计一个模60计数器(异步清零,同步置数) 1、实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、VerilogHDL代码 module m_60(clk,load,reset,a,cnt,cout); input clk,

16、load,reset; input 5:0 a; output cout; output 5:0 cnt; reg 5:0 cnt; reg cout; always(posedge clk or negedge reset) begin if(!reset) cnt<=6'b00_0000; else if(load) cnt<=a; else begin if(cnt<6'd59) begin cnt<=cnt+1; cout<=0; end else begin cout<=1; cnt<=6'b00_0000; end

17、end end endmodule3、RTL视图 4、仿真结果 装 订 线可编程逻辑器件设计实验报告实验名称:第三部分:VerilogHDL中级实验 实验目的:加深理解,熟练操作 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:设计一个BCD码计数器 1、实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、VerilogHDL代码 module add_sub(ina,inb,sum1,sum2); input 3:0 ina; input 3:0 inb; output 4:0 sum1; output 4:0 sum2;

18、reg 4:0 sum1; reg 4:0 sum2; always(ina,inb) begin sum1<=ina-inb; sum2<=ina+inb; end endmodule3、RTL视图 4、仿真结果 装 订 线可编程逻辑器件设计实验报告实验名称:第三部分:VerilogHDL中级实验 实验目的:加深理解,熟练操作 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:设计一个4bit加减计数器 1、实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、VerilogHDL代码 module add_bcd

19、(a,clk,en,load,reset,out,cout); input 3:0 a; input clk,en,load,reset; output 3:0 out; output cout; reg 3:0 out; reg cout; always( posedge clk or negedge reset) begin if (!reset) out<=4'b0000; else if(!load) out<=a; else if(!en) out<=out+1; else out<=out-1; end endmodule3、RTL视图 4、仿真结果

20、 装 订 线可编程逻辑器件设计实验报告实验名称:第三部分:VerilogHDL中级实验 实验目的:加深理解,熟练操作 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:设计一个2、4、8分频器 1、实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、VerilogHDL代码 module div2_4_8(clk,clk_2,clk_4,clk_8); input clk; output clk_2,clk_4,clk_8; reg clk_2,clk_4,clk_8;always(posedge clk) begin clk_

21、2<=clk_2; end always(posedge clk_2) begin clk_4<=clk_4; end always(posedge clk_4) begin clk_8<=clk_8; endendmodule3、RTL视图 4、仿真结果 装 订 线可编程逻辑器件设计实验报告实验名称:第三部分:VerilogHDL中级实验 实验目的:加深理解,熟练操作 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:设计一个2N分频器 1、实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、VerilogH

22、DL代码 module div_14(clk,out); input clk; output out; reg out; reg 2:0 temp; always(posedge clk) begin if(temp<3'd6) temp<=temp+1'b1; else begin out<=out; temp<=0; end end endmodule3、RTL视图 4、仿真结果 装 订 线可编程逻辑器件设计实验报告实验名称:第三部分:VerilogHDL中级实验 实验目的:加深理解,熟练操作 实验时间: 2015年 地点: 803实验室 学生姓名:

23、 赵佳梦 学号: 2012117282 实验名称:设计一个M+N分频器 1、实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、VerilogHDL代码 module div5_7 (clk,out); input clk; output out; reg out; reg 3:0 cout1; reg 3:0 cout2; always (posedge clk) begin if (cout1<4'd11) begin cout1<=cout1+1; if (cout1=4'b0100) out<=out; end else begincout1

24、<=0;out<=out; end end endmodule 3、RTL视图 4、仿真结果 装 订 线可编程逻辑器件设计实验报告实验名称:第三部分:VerilogHDL中级实验 实验目的:加深理解,熟练操作 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:设计一个17分频器 1、实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、VerilogHDL代码 module div_17(clk,out); input clk; output wire out; reg out1,out2; reg 4:0 temp1

25、; reg 4:0 temp2; assign out=out1|out2; always (posedge clk ) begin if(temp1<4'd9) temp1<=temp1+1; else begintemp1<=0;out1<=out1; end endalways (negedge clk) begin if(temp2<4'd9) temp2<=temp2+1; else begintemp2<=0;out2<=out2; endend endmodule 3、RTL视图 4、仿真结果 装 订 线可编程逻辑器

26、件设计实验报告实验名称:第四部分:ModuleSim基础仿真实验 实验目的:编写一个测试文件 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:对1位全加器的仿真 1、实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、VerilogHDL代码 module full_add(a,b,cin,sum,cout);input a,b,cin;output sum,cout;assign sum=abcin;assign cout=(a&b)|(b&cin)|(cin&a);endmodule3、软件测试代码

27、timescale 1ns/1nsmodule full_add_tb; reg a,b,cin;wire sum,cout;parameter delay=100; full_add u1 (a,b,cin,sum,cout);initial begin a=0;b=0;cin=0; #delay a=1;b=0;cin=0; #delay a=0;b=1;cin=0; #delay a=1;b=1;cin=0; #delay a=0;b=0;cin=1; #delay a=1;b=0;cin=1; #delay a=0;b=1;cin=1; #delay a=1;b=1;cin=1; #d

28、elay; endendmodule4、仿真结果 装 订 线可编程逻辑器件设计实验报告实验名称:第四部分:ModuleSim基础仿真实验 实验目的:编写一个测试文件 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验名称:编写一个测试文件,完成对四选一数据选择器的仿真 1、实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、VerilogHDL代码 module mux4_1 (in0,in1,in2,in3,s0,s1,out); input s0,s1; input in0,in1,in2,in3; output out; reg

29、 out; always(in0,in1,in2,in3,s0,s1) begin case(s0,s1) 2'b00:out<=in0; 2'b01:out<=in1; 2'b10:out<=in2; 2'b11:out<=in3; default:out<=1'bz; endcase endendmodule 3、软件测试代码timescale 1ns/1ns module sjxz_t; reg s0,s1,in0,in1,in2,in3; mux4_1 u1(in0,in1,in2,in3,s0,s1,out); i

30、nitial begin #100 in0=1;in1=1;in2=1;in3=1;s0=0;s1=0; #100 in0=1;in1=1;in2=1;in3=1;s0=1;s1=0; #100 in0=1;in1=1;in2=1;in3=1;s0=0;s1=1; #100 in0=1;in1=1;in2=1;in3=1;s0=1;s1=1; endendmodule4、仿真结果 装 订 线可编程逻辑器件设计实验报告实验名称:第四部分:ModuleSim基础仿真实验 实验目的:编写一个测试文件 实验时间: 2015年 地点: 803实验室 学生姓名: 赵佳梦 学号: 2012117282 实验

31、名称:编写一个测试文件,完成对模60计数器的仿真 1、实验步骤创建工程、创建文件、编译工程、观察RTL视图、仿真2、VerilogHDL代码 module m_60(clk,load,reset,a,cnt,cout); input clk,load,reset; input 5:0 a; output cout; output 5:0 cnt; reg 5:0 cnt; reg cout; always(posedge clk or negedge reset) begin if(!reset) cnt<=6'b00_0000; else if(load) cnt<=a;

32、 else begin if(cnt<6'd59) begin cnt<=cnt+1; cout<=0; end else begin cout<=1; cnt<=6'b00_0000; end end end endmodule3、软件测试代码timescale 1ns/1ns module sjxz_t; reg s0,s1,in0,in1,in2,in3; mux4_1 u1(in0,in1,in2,in3,s0,s1,out); initial begin #100 in0=1;in1=1;in2=1;in3=1;s0=0;s1=0; #100 in0=1;in1=1;in2=1;in3=1;s0=1;s1=0; #100 in0=1;in1=1;in2=1;in3=1;s0=0;s1=1; #100 in0=1;in1=1;i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论