- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
verilog实报告 流水灯数码管秒表交通灯
流水灯
实验目的:
在basys2开发板上实现LED灯的花样流水的显示,如隔位显示,依次向左移位显示,依次向右移位显示,两边同时靠中间显示。
实验仪器:
FPGA开发板一块,计算机一台。
实验原理:
当一个正向的电流通过LED时,LED就会发光。当阳极的电压高于阴极的电压时,LED就会有电流通过。当在LED上增添一个典型值为1.5V—2.0V之间的电压时,LED就会有电流通过并发光。
实验内容:
顶层模块:输入信号:clk_50MHz(主时钟信号),rst(重置信号),输出信号:[7:0] led(LED灯控制信号)。
module led_top(clkin,rst,led_out);
input clkin, rst;
output [7:0] led_out;
wire clk_1hz;
divider_1hz d0(clkin, rst, clk_1hz);
led l0(clk_1hz, rst, led_out);
endmodule
分频模块:
module divider_1hz(clkin,rst,clkout);
input clkin,rst;
output reg clkout;
reg [24:0] cnt;
always@(posedge clkin, posedge rst)
begin
if(rst) begin
cnt=0;
clkout=0; end
else if(cnt= begin
cnt=0;
clkout=!clkout; end
else cnt=cnt+1;
end
endmodule
亮灯信号模块:
module led(clkin,rst,led_out);
input clkin,rst;
output [7:0] led_out;
reg [2:0] state;
always@(posedge clkin, posedge rst)
if(rst) state=0;
else state=state+1;
always@(state)
case(state)
3b000:ledout=8b0000_0001;
3b001:ledout=8b0000_0010;
3b010:ledout=8b0000_0100;
3b011:ledout=8b0000_1000;
3b100:ledout=8b0001_0000;
3b101:ledout=8b0010_0000;
3b110:ledout=8b0100_0000;
3b111:ledout=8b1000_0000;
endcase
endmodule
实验中存在的问题:
1 芯片选择问题
automotive spartan3E
XA3S100E XA3S250E CPG132
spartan3E
XC3S100E XC3S250E CP132
2 时序逻辑部分,阻塞赋值和非阻塞赋值混用
always@(posedge clk)
begin
a=b+c;
d=e+f;
end
3 UCF文件格式错误
NET “CLK” LOC = “B8”;
NET “a” LOC = “N11”;
NET “b” LOC = “G13”;
NET “c[0]” LOC =“K11;
数码管
实验目的:
设计一个数码管动态扫描程序,实现在四位数码管上动态循环显示“1”、“2”“3”“4”;
实验仪器:
FPGA开发板一块,计算机一台。
实验原理:
实验内容:
数码管显示模块:输入端口dataone,datatwo,datathree,datafour,clk,rst,输出端口current_state, digit_select;
module display_scan(current_showdata, scan_current_state, rst, dataone, datatwo, datathree, datafour, clk_scan
);
output reg [7:0] current_showdata;
output reg [3:0] scan_current_state;
input rst, clk_scan;
input [3:0] dataone, datatwo, datathree, datafour;
wire [7:0] data1,data2,data3,data4;
code_change d1(dataone,data1);
code_change d2(datatwo,data2);
code_change
原创力文档


文档评论(0)