开发板
基础实验
LED 流水
配置文件
1 2 3 4 5 6 7 8 NET "clk_50m" LOC=P55 | IOSTANDARD = LVCMOS33; NET "rst_n" LOC=P47 | IOSTANDARD = LVCMOS33; NET "led[0]" LOC=P56 | IOSTANDARD = LVCMOS33; NET "led[1]" LOC=P57 | IOSTANDARD = LVCMOS33; NET "led[2]" LOC=P58 | IOSTANDARD = LVCMOS33; NET "led[3]" LOC=P59 | IOSTANDARD = LVCMOS33;
verilog 文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 module led (input clk_50m, input rst_n, output reg [3:0] led); reg [23:0] cnt; always @(posedge clk_50m or negedge rst_n) begin if(0 == rst_n) cnt <= 1'b0; else cnt <= cnt + 1'b1; end always @(posedge clk_50m or negedge rst_n) begin if(0 == rst_n) led <= 4'b0001; else if (cnt == 24'hFFFFFF) led <= led - 1'b1; else ; end endmodule
效果图
2->4 译码器
这个开发板上只有 4个LED, 为了方便, 做一个2->4译码器
配置文件
1 2 3 4 5 6 7 8 9 10 11 12 13 NET "clk_50m" LOC=P55 | IOSTANDARD = LVCMOS33; NET "rst_n" LOC=P47 | IOSTANDARD = LVCMOS33; NET "key[0]" LOC=P50 | IOSTANDARD = LVCMOS33; NET "key[1]" LOC=P51 | IOSTANDARD = LVCMOS33; NET "led[0]" LOC=P56 | IOSTANDARD = LVCMOS33; NET "led[1]" LOC=P57 | IOSTANDARD = LVCMOS33; NET "led[2]" LOC=P58 | IOSTANDARD = LVCMOS33; NET "led[3]" LOC=P59 | IOSTANDARD = LVCMOS33;
verilog 文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 module led (input clk_50m, input rst_n, input [1:0]key, output reg [3:0] led); always @(posedge clk_50m or negedge rst_n) begin if(0 == rst_n) led <= 4'b1111; //复位时 灯全灭 else begin case(key[1:0]) 2'b11 : led <= 4'b1110; 2'b10 : led <= 4'b1101; 2'b01 : led <= 4'b1011; 2'b00 : led <= 4'b0111; default:; endcase end end endmodule
RTL 图
bit 序列 检验
配置文件
1 2 3 4 5 6 7 8 9 10 11 //NET "clk_50m" LOC=P55 | IOSTANDARD = LVCMOS33; //NET "rst_n" LOC=P50 | IOSTANDARD = LVCMOS33; //NET "key[0]" LOC=P47 | IOSTANDARD = LVCMOS33; //NET "key[1]" LOC=P51 | IOSTANDARD = LVCMOS33; NET "led[0]" LOC=P56 | IOSTANDARD = LVCMOS33; NET "led[1]" LOC=P57 | IOSTANDARD = LVCMOS33; NET "led[2]" LOC=P58 | IOSTANDARD = LVCMOS33; NET "led[3]" LOC=P59 | IOSTANDARD = LVCMOS33;
verolog 文件
1 2 3 module led (output [3:0] led); assign led[3:0] = 4'b0001; endmodule
效果图