Guest
I am learning VHDL and one thing i still dont get is how loops are
executed in the vhdl. For, example i have code that will write to a
file for debugging perposes and it is implemented using a while loop:
while word_write_count < 32 loop
write ( trace_line,string'("Address: "));
write ( trace_line,word_write_count);
write ( trace_line,string'(" "));
write
( trace_line,To_bitvector(frame_information(word_write_count)));
writeline (load_file,trace_line);
word_write_count := word_write_count + 1;
end loop;
But i still dont get in what sequence this code will execute. Will it
execute top to bottom? If so will changes made in the above line be
accessible to lines below it? how long will it take the code to
execute? Its obviously not synched with the systems clock so how would
i know when it has completed. Can some one help me understand how
loops are implemented behind the scenes in VHDL?
Thank you.
executed in the vhdl. For, example i have code that will write to a
file for debugging perposes and it is implemented using a while loop:
while word_write_count < 32 loop
write ( trace_line,string'("Address: "));
write ( trace_line,word_write_count);
write ( trace_line,string'(" "));
write
( trace_line,To_bitvector(frame_information(word_write_count)));
writeline (load_file,trace_line);
word_write_count := word_write_count + 1;
end loop;
But i still dont get in what sequence this code will execute. Will it
execute top to bottom? If so will changes made in the above line be
accessible to lines below it? how long will it take the code to
execute? Its obviously not synched with the systems clock so how would
i know when it has completed. Can some one help me understand how
loops are implemented behind the scenes in VHDL?
Thank you.