📄 tg_control.v
字号:
module tg_control(l1,l2,l3,l4,ein,reset,flag,clk,I0,I1,I2,I3,I4,I5,I6,I7,
I8,I9,I10,I11,I12,I13,I14,I15,I16,I17,I18,I19,I20,I21,
I22,I23,I24,I25,I26,I27,I28,I29,I30,I31);
output [2:0] l1,l2,l3,l4;
output [7:0] ein;
input [2:0] flag;
input reset,clk;
input [2:0] I0,I1,I2,I3,I4,I5,I6,I7,
I8,I9,I10,I11,I12,I13,I14,I15,
I16,I17,I18,I19,I20,I21,I22,I23,
I24,I25,I26,I27,I28,I29,I30,I31;
reg [2:0] l1,l2,l3,l4;
reg [7:0] ein;
wire [2:0] flag;
wire [2:0] I0,I1,I2,I3,I4,I5,I6,I7,
I8,I9,I10,I11,I12,I13,I14,I15,
I16,I17,I18,I19,I20,I21,I22,I23,
I24,I25,I26,I27,I28,I29,I30,I31;
always@(posedge clk or negedge reset)
begin
if(reset==1'b0)
begin
ein<=8'b00000001;
l1<=3'b000; l2<=3'b000; l3<=3'b000; l4<=3'b000;
end
else
begin
case(flag)
3'b000: ein<=8'b00000001;
3'b001: ein<=8'b00000010;
3'b010: ein<=8'b00000100;
3'b011: ein<=8'b00001000;
3'b100: ein<=8'b00010000;
3'b101: ein<=8'b00100000;
3'b110: ein<=8'b01000000;
3'b111: ein<=8'b10000000;
endcase
case(ein)
8'b00000001: begin
l1<=I0; l2<=I1; l3<=I2; l4<=I3;
end
8'b00000010: begin
l1<=I4; l2<=I5; l3<=I6; l4<=I7;
end
8'b00000100: begin
l1<=I8; l2<=I9; l3<=I10; l4<=I11;
end
8'b00001000: begin
l1<=I12; l2<=I13; l3<=I14; l4<=I15;
end
8'b00010000: begin
l1<=I16; l2<=I17; l3<=I18; l4<=I19;
end
8'b00100000: begin
l1<=I20; l2<=I21; l3<=I22; l4<=I23;
end
8'b01000000: begin
l1<=I24; l2<=I25; l3<=I26; l4<=I27;
end
8'b10000000: begin
l1<=I28; l2<=I29; l3<=I30; l4<=I31;
end
default: begin
ein<=8'b00000001;
end
endcase
end
end
endmodule
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -