Verilog实验报告实验报告格式要求.doc

上传人:jian****018 文档编号:7910641 上传时间:2020-03-25 格式:DOC 页数:19 大小:849.50KB
返回 下载 相关 举报
Verilog实验报告实验报告格式要求.doc_第1页
第1页 / 共19页
Verilog实验报告实验报告格式要求.doc_第2页
第2页 / 共19页
Verilog实验报告实验报告格式要求.doc_第3页
第3页 / 共19页
点击查看更多>>
资源描述
实验报告格式要求一、实验报告内容包括: (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 = 3b01; else if ( A = B) Y = 3b10; else Y = 3b11; endendmodule结果如下:指导师(签名) 时间 实验(二) 简单分频时许逻辑电路的设计 实验日期 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 ; endendmodule结果如图所示:指导师(签名) 时间 实验(三)利用条件语句实现计数分频时序电路 实验日期 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)beginif(rst) begin clk_out=0;counter=0 ;endelse if(counter=24) begin clk_out=clk_out;counter=0;end else counter=counter+1;endendmodule结果如图所示:发挥部分:module div1s(input clk,rst,output reg clk_out );reg 25:0 counter;always (posedge clk or posedge rst)beginif(rst) begin clk_out=0;counter=0 ;endelse if(counter=12500000) begin clk_out=clk_out;counter=0;end else counter=counter+1;endendmodule指导师(签名) 时间 实验(四) 利用有限状态机进行时序逻辑的设计 实验日期 2014-12-5 同组者姓名 一、实验目的1 掌握利用有限状态机实现一般时序逻辑分析的方法。2 掌握用Verilog编写可综合的有限状态机的标准模版。3 掌握用Verilog编写状态机模版的测试文件的一般方法。二、实验仪器计算机、FPGA开发板。三、实验内容1 设计一个检测二进制序列“10010”的电路。2 完成上述序列检测电路的测试模块。3 利用分频器控制检测电路检测的时间间隔。四、实验步骤、分析及结果(在下面写出你的代码)代码:module seqdet (rst, clk,seq, det); input clk, rst; input seq; output det; reg det; reg 2:0 cstate, nstate; parameter IDLE = 3d0, A_1 = 3d1, B_10 = 3d2, C_100 = 3d3, D_1001 = 3d4, E_10010 = 3d5; always (posedge clk or posedge rst) if (rst) cstate = IDLE; else cstate = nstate; always (seq or cstate) case (cstate) IDLE : if (seq = 1) nstate = A_1; else nstate = IDLE; A_1: if (seq = 0) nstate = B_10; else nstate = A_1; B_10: if (seq = 0) nstate = C_100; else nstate = A_1; C_100: if (seq = 1) nstate = D_1001; else nstate = IDLE; D_1001: if (seq = 0) nstate = E_10010; else nstate = A_1; E_10010: if (seq = 0) nstate = C_100; else nstate = A_1; default: nstate = IDLE; endcase always (cstate) if (cstate = E_10010) det = 1; else det = 0;endmodule结果如图所示:发挥部分:module onesecond( input sys_clk, input rst, output clk_out );reg clk_out;reg24:0counter;parameter N=50000000;always (posedge sys_clk or posedge rst) if(rst) begin counter=1b0;clk_out=1b0; endelse if(counterN/2) begin counter=counter+1b1; endelse begin counter=1b0; clk_out=clk_out; endendmodulemodule seqdet (rst, clk,seq, det); input clk, rst; input seq; output det; reg det; reg 2:0 cstate, nstate; parameter IDLE = 3d0, A_1 = 3d1, B_10 = 3d2, C_100 = 3d3, D_1001 = 3d4, E_10010 = 3d5; always (posedge clk or posedge rst) if (rst) cstate = IDLE; else cstate = nstate; always (seq or cstate) case (cstate) IDLE : if (seq = 1) nstate = A_1; else nstate = IDLE; A_1: if (seq = 0) nstate = B_10; else nstate = A_1; B_10: if (seq = 0) nstate = C_100; else nstate = A_1; C_100: if (seq = 1) nstate = D_1001; else nstate = IDLE; D_1001: if (seq = 0) nstate = E_10010; else nstate = A_1; E_10010: if (seq = 0) nstate = C_100; else nstate = A_1; default: nstate = IDLE; endcase always (cstate) if (cstate = E_10010) det = 1; else det = 0;endmodulemodule Control(input clk,input rst,output clk_out,);Wire seq,det;reg 1:0 state;module onesecond(clk,rst,clk_out );seqdet (rst, clk,seq, det);endmodule指导师(签名) 时间 实验(五)交通灯控制器设计 实验日期 2014-12-12 同组者姓名 一、实验目的1 掌握模块化设计方法。2 掌握数字系统设计的方法和步骤。3 加深对可综合风格模块的认识。二、实验仪器计算机、FPGA开发板三、实验内容1 设计交通灯控制器模块。2 设计计数器实现交通灯控制器信号变换的时间,要求红灯30s,绿灯25秒,黄灯5s。3 发挥部分:实现十字路口(双向)交通灯的控制,要求红黄绿灯交替亮灭,在FPGA开发板上实现该功能,用信号灯展示设计的结果四、实验步骤、分析及结果(在下面写出你的代码)代码:module Control(input clk,input rst,input lin5,input lin25,output reg en5, /output reg en25, /output reg 2:0 road1 ,output reg 2:0 road2);reg 1:0 state;always (posedge clk or posedge rst)begin if(rst) begin en5=0;en25=0;state=0;end elsecase(state) /r g y0 : begin road1=3b100;road2=3b010 ; en25=1;en5=0; if(lin25=1) state=1;end1 : begin road1=3b100;road2=3b001 ; en25=0;en5=1; if(lin5=1) state=2;end2 : begin road1=3b010;road2=3b100 ; en25=1;en5=0; if(lin25=1) state=3;end3 : begin road1=3b001;road2=3b100 ; en25=0;en5=1; if(lin5=1) state=0;endendcaseendendmodulemodule timer5(input clk,input rst,input en5,output reg lin5 /);reg 27:0 counter;always (posedge clk or posedge rst)begin if(rst) begin counter=0;lin5=0;end else if(en5) begin counter=counter+1;if(counter=2_5000_0000) lin5=1;end else begin counter=0;lin5=0;endend endmodulemodule timer25(input clk,input rst, input en25,output reg lin25 /);reg 31:0 counter;always (posedge clk or posedge rst)begin if(rst) begin counter=0;lin25=0;end else if(en25) begin counter=counter+1;if(counter=12_5000_0000) lin25=1;end else begin counter=0;lin25=0;endend endmodulemodule top(input clk,input rst,output 2:0 road1,output 2:0 road2);wire en5,en25,lin5,lin25;timer5 UUT1(clk,rst,en5,lin5); timer25 UUT2(clk,rst,en25,lin25); Control UUT3(clk,rst,lin5,lin25,en5,en25,road1,road2);Endmodule结果如图所示:指导师(签名) 时间
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 管理文书 > 工作总结


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!