Instruction cache design in Verilog