I am in a process to learn Verilog HDL and I will be given a complex Verilog HDL program from which I need to determine the result of the program. It's actually a part of VLSI designing course I am taking this semester. So would you please let me know what are the things (e.g. basic of Digital system concept, boolean algebra etc. or anything else) I need to go through to be able to determine the result?

I hope to get some suggestions from you so that I can get a better orientation for this.

Thank you,

P.S. Do you have any additional advice on how to be proficient on verilog programming, I am ok with the syntax but still struggling while I am given a new problem.