cyclic convolutional codes concept and basics