1 / 37
文档名称:

西安交大数子电子技术实验报告.docx

格式:docx   页数:37页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

西安交大数子电子技术实验报告.docx

上传人:6188 2016/5/26 文件大小:0 KB

下载得到文件列表

西安交大数子电子技术实验报告.docx

文档介绍

文档介绍:1 西安交通大学数字电子技术实验报告姓名: 高加西班级: 电气12 学号: 2110401039 2 ISE 基础实验一、设计要求 1) 通过使用 ISE 软件和 FPG A 实现带有置位和清零端的边沿D 触发器的逻辑图。 2) 练****verilog 语法编写,掌握用 HDL 实现基本逻辑功能。二、 HDL 综合实验任务边沿 D 触发器的设计 1. 实验方法和步骤(1) 建立工程文件,输入 HDL 程序如下: module D_Flip_Flop( input clk, input set, input D, input clr, output reg q // 注意: always 模块中的输出必须是寄存器型变量); always @(posedge clk or posedge clr or posedge set) begin if(clr) q<=0; 3 else if(set) q<=1; else q<=D; end endmodule (2) 编写约束文件: NET "clk" LOC ="B8"; // "D" LOC ="N3"; // "set" LOC ="L3"; // "clr" LOC ="P11"; // "q" LOC ="G1"; //LD7 (3) 综合、实现及生成编程文件;仿真,设计下载: 仿真测试文件如下: module test _D_Flip_Flop ; // Inputs reg clk ; reg set ; reg D; reg clr ; // Outputs wire q; // Instantiate the Unit Under Test (UUT) D_Flip_Flop uut ( 4 . clk ( clk ), . set ( set ), .D(D ), . clr ( clr ), .q(q) ); initial begin // Initialize Inputs clk=0 ; set=1; D=0; clr=0; // Wait 100 ns for global reset to finish #100; // Add stimulus here E nd always#10clk=~clk; always#12D=~D; always#33clk=~clk; always#42set=~set; endmodule 5 仿真结果: 三、分析与讨论由仿真结果可以看出该电路完成了想要实现的逻辑功能(即边沿 D 触发器) ,通过这次实验我大体了解了 ISE 软件和 Verilog 组合逻辑电路实验一、实验目的及其设计要求 1 )学****使用 ISE 软件生成一个新工程文件 2 )学****使用 HDL 进行电路设计 3 )学会编辑顶层文件和用户约束文件 4 )熟悉仿真及综合及实现还有 FPGA 配置等 5) 熟悉在 BASYS2 开发板上的简单外围设备的控制 6) 使用 HDL 设计一个新的逻辑功能并验证,本实验设计的逻辑功能函数表达式为: y ab cd ? ?。 7) 设计一个 4选1 多路选择器,并在开发板上验证。 8) 完成 4 位数码管动态显示设计, 实现将 8个 SW 输入的两位十六进制对应的 8421BCD 码,显示在数码管上。二、组合逻辑电路实验任务任务 1 :逻辑功能函数表达式 y ab cd ? ?设计实验方法和步骤 7 (1) 建立工程文件, 输入 HDL 程序如下: (2) module gate2( (3) input a, (4) input b, (5) input c, (6) input d, (7) output z (8) ); (9) assign z=~((a&b)|(c&d)); (10) endmodule (11) 编写约束文件: NET "a" LOC=P11; NET "b" LOC=L3; NET "c" LOC=K3; NET "d" LOC=B4; NET "z" LOC=M5; (12) 综合、实现及生成编程文件;仿真, 设计下载: 仿真测试文件如下: module gates 2 test; // Inputs reg a; reg b; 8 reg c; reg d; // Outputs wire y; // Instantiate the Unit Under Test (UUT) gates4uut ( .a(a), .b(b), .c(c), .d(d), .y(y) ); initial begin // Initialize Inputs a= 0;b = 0;c = 0;d = 0; // Wait 100 ns for global reset