Verilog实验报告

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

实验报告格式要求

一、实验报告内容包括:

(1)实验名称。

(2)实验目的。

(3)实验仪器及编号。写明仪器名称、型号、编号。

(4)实验原理。简单叙述有关实验原理(包括电路图或光路图或实验装置示意图)及测量中依据的的公式,式中各量的物理含义及单位,公式成立所应满足的实验条件等。

(5)实验内容及步骤。根据实验内容及实际的实验过程写明关键步骤和安全注意要点。

(6)实验观测记录。记录原始测量数据、图形等有关原始量,形式上要求整齐规范。

(7)数据处理结果。根据实验要求,采用合适的方法进行数据处理,误差分析,最后写出实际结果。

(8)小结或讨论。内容不限。可以是实验中的现象分析,对实验关键问题的体会,实验的收获和建议,也可解答思考题。

二、书写次序

(1)到(5)是进行实验预习时就应该完成的。(6)在实验中完成。做完实验后再在预习报告基础上完成(7)(8)两项。

完成一个实验,就是一次最基本的科研训练,从预习到写出一个实验报告,每一步都有极其丰富的学习内容,要积极思考,认真对待。

实验(一)简单的组合逻辑设计

实验日期2014-10-31 同组者姓名

一、实验目的

[1] 掌握基本组合逻辑电路的实现方法

[2] 初步了解两种基本组合逻辑电路的生成方法

[3] 学习测试模块的编写

[4] 通过综合和布局布线了解不同层次仿真的物理意义

二、实验仪器

计算机、FPGA开发板

三、实验内容

[1] 在ISE软件环境中进行一次完整的设计流程,并在FPGA开发板上实现与门的功能。

[2] 完成一个可综合的数据比较器的程序。

[3] 完成数据比较器的测试模块。

[4] 发挥部分:设计一个多位(2位)的数据比较器并在FPGA开发板上实现该比较器。

四、实验步骤、分析及结果(在下面写出你的代码)

代码:

module compare(

input a,

input b,

output c

);

assign c=a&b;

endmodule

结果如图所示:

拓展代码如下:

module compare( Y ,A ,B ); input [1:0] A ;

input [1:0] B ;

output reg [1:0] Y ; always @ (A or B )

begin

if ( A > B )

Y <= 3'b01;

else if ( A == B)

Y <= 3'b10;

else

Y <= 3'b11;

end

endmodule

结果如下:

指导师(签名)时间

实验(二)简单分频时许逻辑电路的设计

实验日期2014-11-7 同组者姓名

一、实验目的

[1] 掌握最基本时序电路的实现方法。

[2] 学习时序电路测试模块的编写。

[3] 学习综合和不同层次的仿真。

二、实验仪器

计算机、FPGA开发板。

三、实验内容

[1] 设计一个实现2分频时序逻辑电路。

[2] 完成2分频时序电路的测试模块。

[3] 发挥部分:设计一个实现225次分频的电路,并在FPGA开发板上实现,用信号灯的闪烁来观察分频的结果。考虑不同暂空比分频的结果。

四、实验步骤、分析及结果(在下面写出你的代码)

代码:

module div_2 (clk_out,clk,reset);

output reg clk_out;

input reset;

input clk;

always @ (posedge clk or posedge reset)

if (reset)

clk_out=0;

else

clk_out= ~clk_out;

endmodule

结果如图所示:

发挥部分:

module div_225(clk_out,clk,rst);

output reg clk_out;

input rst;

input clk;

reg [27:0] counter;

always @(posedge clk or posedge rst)

begin if (rst)

begin clk_out<=0 ; counter<=0; end

else if(counter==16777216)begin clk_out<=~clk_out ;counter<=0; end else counter<=counter+1 ;

end

endmodule

结果如图所示:

指导师(签名)时间

实验(三)利用条件语句实现计数分频时序电路实验日期2014-11-14 同组者姓名

一、实验目的

[1] 掌握条件语句在简单时序模块设计中的使用。

[2] 学习在Verilog模块中应用计数器。

[3] 学习测试模块的编写、综合和不同层次的仿真。

二、实验仪器

计算机、FPGA开发板。

三、实验内容

[1] 设计一个可综合的分频器,将50M系统时钟分频为1M的时钟。

[2] 完成50分频时序电路的测试模块。

[3] 发挥部分:设计一个模拟交通灯黄灯闪烁的电路,并在FPGA开

发板上实现,要求黄灯每1s闪烁一次(0.5s亮,0.5s灭)。

四、实验步骤、分析及结果(在下面写出你的代码)

代码:

module div50(

input clk,rst,

output reg clk_out

);

reg [5:0] counter;

always @(posedge clk or posedge rst)

begin

if(rst) begin clk_out<=0;counter<=0 ;end

else if(counter==24) begin clk_out<=~clk_out;counter<=0;end

else counter<=counter+1;

end

endmodule

结果如图所示:

相关文档
最新文档