4D-8PSK trellis coded modulation: Implementation on Xilinx Virtex-6 FPGA