VerilogHDL硬件描述语言实验报告

  • 格式:doc
  • 大小:134.00 KB
  • 文档页数:30

下载文档原格式

  / 30
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Verilog HDL实验报告

学院:应用科学学院

班级:电科13-2班

姓名:

学号:

实验一组合逻辑电路设计(1)

实验目的

(1)熟悉FPGA设计流程;

(2)熟悉DE2开发板的基本元件使用(开关、发光二极管);

(3)学习基本组合逻辑元件的Verilog HDL设计以及实现(数据选

择器);

(4)掌握连续赋值语句使用;

实验内容

本实验的目的是学习如何连接一个简单的外部输入、输出器件到FPGA芯片以及如何在FPGA器件上实现逻辑电路控制简单外部器件。考虑使用DE2开发板上拨动开关SW17-0(toggle Switch)作为电路的输入。使用发光二极管(Light Emitt-ing Diodes,LEDs)和7段显示数码管(7-segment Display)作为电路的输出。

第1部分连续赋值语句

步骤

1、新建Quartus II工程,选择Cyclone II EP2C35F672C6作为

目标芯片,该芯片是DE2开发板上的FPGA芯片;

2、编写Verilog HDL代码加入到Quaruts II工程;

3、引脚分配,并编译工程该工程;

4、将编译好的电路下载到FPGA器件。扳动拨动开关观察相应的

发光二极管显示,验证电路功能是否正确;

代码

module part1(

input wire[2:0]SW,

output wire LEDR

);

wire r_g,s_g,qa,qb;

and u1(r_g, SW[0], SW[1]);

and u2(s_g, SW[1], SW[2]);

nor u3(qa, r_g, qb);

nor u4(qb, qa, s_g);

assign LEDR = qa;

endmodule

第2部分简单的数据选择器

步骤

1 .新建Quartus II工程;

2.在工程中加入8位宽的2选1数据选择器Verilog HDL代码。使用DE2开发板上的SW17作为输入s,开关SW7-0作为输入X,SW15-8作为输

入Y。连接拨动开关SW到红色的发光二极管LEDR,同时连接输出M 到绿色的发光二极管LEDG7-0。

3.引脚分配,确保作为电路的输入端口的Cyclone II FPGA的引脚正确连接到拨动开关SW,作为电路输出的PPGA引脚正确与LEDR和LEDG 连接;

4.编译;

5.将编译好的电路下载到FPGA器件。通过扳动拨动开关SW改变电路输入,同时观察LEDR和LEDG的显示是否与之匹配,测试8位宽的2选1数据选择器的功能是否正确。

代码

设计文件

module part2(

input[17:0]SW,

output[17:0]LEDR,

output[7:0]LEDG

);

assign LEDR=SW;

mux_8bit_2to1 NQ(SW[17],SW[15:8],SW[7:0],LEDG);

endmodule

module mux_2to1(

input s,

input x,y,

output m

);

assign m=(s&y)|(~s&x); endmodule

module mux_8bit_2to1(

input S,

input[7:0]X,Y,

output[7:0]M

);

mux_2to1 m7(S,X[7],Y[7],M[7]);

mux_2to1 m6(S,X[6],Y[6],M[6]);

mux_2to1 m5(S,X[5],Y[5],M[5]);

mux_2to1 m4(S,X[4],Y[4],M[4]);

mux_2to1 m3(S,X[3],Y[3],M[3]);

mux_2to1 m2(S,X[2],Y[2],M[2]);

mux_2to1 m1(S,X[1],Y[1],M[1]);

mux_2to1 m0(S,X[0],Y[0],M[0]); endmodule

测试台文件

`timescale 1ns/100ps

module mux2to1_test;

reg x,y;

reg s;

wire m;

mux2to1 M(s,x,y,m);

initial

begin

x=1;y=0;

s=0;

#10 s=0;

#10 s=1;

#10 $stop;

end

endmodule

波形

实验二组合逻辑电路设计(2) 数码和显示

实验目的

(1)采用always块设计组合逻辑电路;

(2)熟悉二进制-十进制译码器和BCD码加法器等组合逻辑电路。实验内容

(1) 组合逻辑7段显示译码器

(2)二进制-BCD转换电路

(3) 组合逻辑4位全加器

(4)BCD码加法电路

第1部分组合逻辑7段显示译码器步骤

步骤

1、1、新建Quartus II工程,在DE2开发板实现该电路。本试验的

目的是用手动方式设计7段显示译码电路。要求只能使用连续赋值语句,将输出定义为关于输入的逻辑表达式。

2、编写电路的Verilog HDL源文件,并将其包含到Quartus工程。

将FPGA引脚连接到相应的拨动开关和7段显示数码管。(参考User Manual for the DE2 board)。引脚分配过程也可以参考Quartus II Introduction using Verilog Design,该文件可以在Altera 公司网站大学计划网站的DE2 System CD上找到。