  We investigate the notion of cyclicity for convolutional codes as it has been
introduced by Piret and Roos in the seventies. Codes of this type are described
as submodules of the module of all vector polynomials in one variable with some
additional generalized cyclic structure but also as specific left ideals in a
skew polynomial ring. Extending a result of Piret, we show in a purely
algebraic setting that these ideals are always principal. This leads to the
notion of a generator polynomial just like for cyclic block codes. Similarly a
control polynomial can be introduced by considering the right annihilator
ideal. An algorithmic procedure is developed which produces unique reduced
generator and control polynomials. We also show how basic code properties and a
minimal generator matrix can be read off from these objects. A close link
between polynomial and vector description of the codes is provided by certain
generalized circulant matrices.
