Using SystemVerilog to build up testbench environment to verify the functionality of LC3 mircoprocessor