用verilog点亮流水灯
时间: 2023-05-13 09:04:41 浏览: 127
Verilog点流水灯
以下是用 Verilog 点亮流水灯的代码:
module shift_register(
input clk,
input rst,
input [7:0] data_in,
output [7:0] data_out
);
reg [7:0] shift_reg;
always @(posedge clk) begin
if (rst) begin
shift_reg <= 8'b00000000;
end else begin
shift_reg <= {shift_reg[6:0], data_in};
end
end
assign data_out = shift_reg;
endmodule
在这个模块中,我们使用一个 8 位的移位寄存器来实现流水灯的效果。每当时钟上升沿到来时,我们将数据向左移动一位,并将新的数据插入到最右边。当复位信号为高电平时,我们将移位寄存器清零。最后,我们将移位寄存器的值输出到 data_out 端口,以便在外部控制 LED 灯的点亮。
阅读全文