  Physical-layer network coding (PNC) is a communications paradigm that
exploits overlapped transmissions to boost the throughput of wireless relay
networks. A high point of PNC research was a theoretical proof that PNC that
makes use of lattice codes could approach the information-theoretic capacity of
a two-way relay network (TWRN), where two end nodes communicate via a relay
node. The capacity cannot be achieved by conventional methods of time-division
or straightforward network coding. Many practical challenges, however, remain
to be addressed before the full potential of lattice-coded PNC can be realized.
Two major challenges are: for good performance in lattice-coded PNC, channels
of simultaneously transmitting nodes must be aligned; for lattice-coded PNC to
be practical, the complexity of lattice encoding at the transmitters and
lattice decoding at the receiver must be reduced. We address these challenges
and implement a first lattice-coded PNC system on a software-defined radio
platform. Specifically, we design and implement a low-overhead channel
precoding system that accurately aligns the channels of distributed nodes. In
our implementation, the nodes only use low-cost temperature-compensated
oscillators---a consequent challenge is that the channel alignment must be done
more frequently and more accurately compared with the use of expensive
oscillators. The low overhead and accurate channel alignment are achieved by
(1)a channel precoding system implemented over FPGA to realize fast feedback of
channel state information; (2)a highly-accurate carrier frequency offset
estimation method; and (3)a partial-feedback channel estimation method that
significantly reduces the feedback information from the receiver to the
transmitters for channel precoding at the transmitters. To reduce lattice
encoding and decoding complexities, we adapt the low-density lattice code for
use in PNC systems.
