@saleem,
You might find this article about handling timing within an fpga (
http://zipcpu.com/blog/2017/06/02/generating-timing.html), or here regarding how to do debugging with an led (
http://zipcpu.com/blog/2017/05/24/serial-port.html). Both will discuss some of the issues you are having.
As a very first design for a board, I also once used this design to determine the clock speed (
http://zipcpu.com/blog/2017/05/19/blinky.html) of the incoming clock to a board I had (100MHz--although the schematic had said 25MHz).
Hope these help,
Dan