Vivado synthesis implements inferred Shift Registers on SRL-type resources such as:
•SRL16E
•SRLC32E
Depending on the length of the Shift Register, Vivado synthesis does one of the following:
•Implements it on a single SRL-type primitive
•Takes advantage of the cascading capability of SRLC-type primitives
•Attempts to take advantage of this cascading capability if the rest of the design uses some intermediate positions of the Shift Register