Skip to content

Instantly share code, notes, and snippets.

@coldcue
Last active December 22, 2015 16:29
Show Gist options
  • Save coldcue/6499986 to your computer and use it in GitHub Desktop.
Save coldcue/6499986 to your computer and use it in GitHub Desktop.
1. meres megoldasai
// 1/1. Adja meg egy 1 bites 4:1 multiplexer Verilog kódját deklarációval (portok d0,d1,d2,d3,adatbemenetek, s-kiválasztó bemenet, r kimenet)
module mux(
input [3:0] d,
input s,
output r
);
always @ (*) begin
case (d)
2'b00: r<= d[0];
2'b01: r<= d[1];
2'b10: r<= d[2];
2'b11: r<= d[3];
end
endmodule
// 1/2. Adja meg egy engedélyezhet, balra shiftelő 8 bites shiftregiszter Verilog kódját modul deklarácioval (prtok: clk-orajel, ce-engedélyezhető, din-egybites adatbemenet, dout-egybites adatkimenet.
module sh_8(
input clk, ce, din,
output dout);
reg [7:0] shr;
always @ (posedge clk) begin
if (ce)
shr <= {shr[6:0], din};
assign dout = shr[7];
end
endmodule
// 1/3. Adja meg egy aszinkron resetelhető egy digites BCD (binárisan kodolt decimális) felfelé számláló verilog kodját modul deklarácioval (portok: clk-orajel, rst-reset,dout-számlaló kimenet)
module bcd_counter (
input clk, rst,
output reg [3:0] dout
);
always @ (posedge clk, posedge rst) begin
if(rst==1)
dout <= 4'b0;
else if(dout == 9)
dout <= 4'b0;
else
dout <= dout + 1;
end
endmodule
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment