An encoder for generating an optical data code from a symbol comprising: a processor to perform a symbol mapping program and an encoding program; a memory, in connection with the processor, to store the symbol mapping and encoding programs, wherein the symbol mapping program causes the processor to perform: providing a first constellation format having first and second amplitude rings with circular grids corresponding to phase angles; providing a second constellation format having the first and second amplitude rings with the circular grids corresponding to the phase angles; applying a first part of the symbol to one of the first and second constellation formats to represent the first part of the symbol by one of the first and second amplitude rings with one of the circular grids; applying a second part of the symbol to another one of the first and second constellation formats to represent the second part of the symbol by one of the first and second amplitude rings with one of the circular grids; and providing pairs of superchannels arranged according to time slots, wherein each of the superchannels includes subcarriers allocated to subchannel numbers, wherein the first and second parts of the symbol are allocated to a pair of the subcarriers, wherein a sum of powers of the pair of the subcarriers is chosen so as to become approximately a predetermined value, wherein each of the superchannels is uniformly divided by the subcarriers corresponding to subcarrier symbol rates, and wherein the encode program causes the processor to perform: encoding the first part of the symbol into a first subset of the optical data code using the one of the first and second amplitude rings with the one of the circular grids according to the one of the first and second constellation formats; and encoding the second part of the symbol into a second subset of the optical data code using the one of the first and second amplitude rings with the one of the circular grids according to the other one of the first and second constellation formats. a processor to perform a symbol mapping program and an encoding program; a memory, in connection with the processor, to store the symbol mapping and encoding programs, wherein the symbol mapping program causes the processor to perform: providing a first constellation format having first and second amplitude rings with circular grids corresponding to phase angles; providing a second constellation format having the first and second amplitude rings with the circular grids corresponding to the phase angles; applying a first part of the symbol to one of the first and second constellation formats to represent the first part of the symbol by one of the first and second amplitude rings with one of the circular grids; applying a second part of the symbol to another one of the first and second constellation formats to represent the second part of the symbol by one of the first and second amplitude rings with one of the circular grids; and providing pairs of superchannels arranged according to time slots, wherein each of the superchannels includes subcarriers allocated to subchannel numbers, wherein the first and second parts of the symbol are allocated to a pair of the subcarriers, wherein a sum of powers of the pair of the subcarriers is chosen so as to become approximately a predetermined value, wherein each of the superchannels is uniformly divided by the subcarriers corresponding to subcarrier symbol rates, and providing a first constellation format having first and second amplitude rings with circular grids corresponding to phase angles; providing a second constellation format having the first and second amplitude rings with the circular grids corresponding to the phase angles; applying a first part of the symbol to one of the first and second constellation formats to represent the first part of the symbol by one of the first and second amplitude rings with one of the circular grids; applying a second part of the symbol to another one of the first and second constellation formats to represent the second part of the symbol by one of the first and second amplitude rings with one of the circular grids; and providing pairs of superchannels arranged according to time slots, wherein each of the superchannels includes subcarriers allocated to subchannel numbers, wherein the first and second parts of the symbol are allocated to a pair of the subcarriers, wherein a sum of powers of the pair of the subcarriers is chosen so as to become approximately a predetermined value, wherein each of the superchannels is uniformly divided by the subcarriers corresponding to subcarrier symbol rates, and wherein the encode program causes the processor to perform: encoding the first part of the symbol into a first subset of the optical data code using the one of the first and second amplitude rings with the one of the circular grids according to the one of the first and second constellation formats; and encoding the second part of the symbol into a second subset of the optical data code using the one of the first and second amplitude rings with the one of the circular grids according to the other one of the first and second constellation formats. encoding the first part of the symbol into a first subset of the optical data code using the one of the first and second amplitude rings with the one of the circular grids according to the one of the first and second constellation formats; and encoding the second part of the symbol into a second subset of the optical data code using the one of the first and second amplitude rings with the one of the circular grids according to the other one of the first and second constellation formats.