module stimulus;
reg [3:0] datain,addr;
reg csn,rwn;
wire [3:0] dataout;

ram1 r1(.addr(addr),.datain(datain),.csn(csn),.rwn(rwn),.dataout(dataout));

initial
begin
$monitor($time," addr=%b, csn=%b, rwn=%b, datain=%b, dataout=%b",addr,csn,rwn,datain,dataout);
#10 addr=4'b0000;csn=1'b0;rwn=1'b0;datain=4'b1010;
#10 addr=4'b0001;csn=1'b0;rwn=1'b0;datain=4'b1111;
#10 addr=4'b0000;csn=1'b0;rwn=1'b1;
#10 addr=4'b0001;csn=1'b1;rwn=1'b0;datain=4'b1110;
#10 addr=4'b1101;csn=1'b0;rwn=1'b0;datain=4'b1110;
#10 addr=4'b0101;csn=1'b0;rwn=1'b0;datain=4'b1110;
#10 addr=4'b0001;csn=1'b0;rwn=1'b0;datain=4'b1110;
#10 addr=4'b1101;csn=1'b0;rwn=1'b1;datain=4'b0000;
#10 addr=4'b0001;csn=1'b0;rwn=1'b1;datain=4'b1110;
#10 addr=4'b0001;csn=1'b1;rwn=1'b0;datain=4'b1110;

#50 $finish;
end
endmodule
