https://9lib.co/document/y96r16nd-hardware-designs-for-function-evaluation-and-ldpc-coding.html