Virtual Target provides a debug environment for targets that cannot be physically connected. It supports various debug interfaces like GTL, CADI, and debug tools from different vendors on different host operating systems and processor architectures. GTL was introduced to address limitations of slow RTL simulation and FPGA-based verification like long build times and difficulty retrieving debug information. It uses a virtual JTAG/bus interface over procedural Verilog interfaces and a software transactor plugin to enable co-simulation with debug tools.