rendered paste bodymodule wphf_m1_5_top(clk, BTN, SW, LD1, LD8, SEG_SEL, SEG_VAL);
input clk;
input [5:3] BTN;
input [8:3] SW;
output wire LD1;
output wire LD8;
output reg [3:0] SEG_SEL;
output reg [6:0] SEG_VAL;
reg rst;
wire coun_en, orajel, coun_egyesek, cy_egyesek, coun_tizesek, cy_tizesek, btn4_ref;
wire status[1:0], seg_sel[1:0], seg_val[3:0];
always @ (posedge clk)
begin
//szinkronizáció
rst <= BTN[5:5];
end
rategen rategenerator( .clk(clk), .rst(rst), .cy(orajel) );
szamlalo_mod10 egyesek( .CLK(clk), .RESET(rst), .CE(coun_en), .C_E(orajel), .DIN(SW[6:3]),
.COUNT(coun_egyesek), .CY(cy_egyesek) );
szamlalo_mod10 tizesek( .CLK(clk), .RESET(rst), .CE(cy_egyesek), .C_E(orajel), .DIN({2'b00,SW[8:7]}),
.COUNT(coun_tizesek), .CY(cy_tizesek) );
vezerlo_logika vezerlo( .CLK(clk), .CY(cy_tizesek), .btn_reset(BTN[5:5]), .btn_pausego(btn4_ref),
.btn_start(BTN[3:3]), .szamlal(status), .EN(coun_en) );
pergesgatlas pergesgatlo( .clk(clk), .btn4(BTN[4:4]), .btn4_refined(btn4_ref) );
szamlalo_mod3 mod3( .CLK(clk), .RST(rst), .COUNT(seg_sel) );
dec2to4 segment_select( .CLK(clk), .SEL(seg_sel), .SEG(SEG_SEL) );
mpx4x2to1 segment_ertek( .CLK(clk), .SEL(seg_sel), .SEG_egyesek(coun_egyesek), .SEG_tizesek(coun_tizesek),
.SEG_szazasok({4'b1111}), .SEG_ezresek({4'b1111}), .DOUT(seg_val) );
seg_dec segment_kod( .clk(clk), .vin(seg_val), .vout(SEG_VAL) );
assign LD1 = ( status[1] ^ status[0] );
assign LD8 = ( !(status[1] && status[0]) );
endmodule