Abstract: A CMOS (complementary metal-oxide semiconductor) barrel shifter (40) is implemented using a plurality of cells (41-43, 58) for shifting bits of data. Each of the cells (41-43, 58) has two transistors (44-47, 49-52) and both transistors of each cell are of the same conductivity type. The four transistors (44-47) of two neighboring cells (41,42) are formed using a common active region (60). The layout design of the barrel shifter (40) is such that all of the transistors of one conductivity type are grouped together, and all of the transistors of the opposite conductivity type are grouped together and are formed in a single well region (55).