Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

plz help me in this verilog code

Status
Not open for further replies.

alangs

Member level 3
Joined
Feb 5, 2010
Messages
57
Helped
3
Reputation
6
Reaction score
3
Trophy points
1,288
Location
india
Activity points
1,681
module readmemh_demo
(
output reg lclk,
output reg [31:0] pixels
);

reg [31:0] Mem [0:20];

initial $readmemh("pixels.txt",Mem);

reg[7:0] k;
reg[7:0] i;
initial begin
$dumpfile("file.vcd");
$dumpvars;
end
initial begin
lclk = 0;
k = 0;
pixels = 32'b0;
end
initial fork
forever lclk = #5 ~lclk;
join
always @(posedge lclk)begin
pixels = Mem[k];
k = k+1;
#100 $finish;
end
endmodule

here actually i am reaing a text file which is having only the pixels......now i have to send these pixels word by word to the next module......but here only one data is given as output to the next module....the k is not incrementing for every posedge lclk....how i can do this?plzzzz some one help me to solve this....:cry:
 

You cannot have this -" #100 $finish;" in an always block(read up on "always blocks" in verilog). Move that "$finish" out of the always block if you want the $finish statement. Also when you say word do you mean 4bytes? Right now your code outputs 8 bits at a time.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top