Don't confuse pixel shaders with vertex shaders. The X1600 uses three 4-pipe shader cores, and has 5 vertex shaders. If you run ATI Tool or RivaTuner on an X1600 card, it should read only 4 active pipelines.
Traditionally, most video cards have had only 1 pixel shader processor per pipeline, meaning the total number of pixel shaders processors was equal to the total number of pipelines. This is no longer the case. In the case of the x1600 series, for example, there are only 4 pipelines, with 3 shader units per pipe, for a total of 12 shader units. There are disadvantages to that system, as described in the articles below.
Here's a little more info:
http://www.gamespot.com/pages/profile/index.php?user=Aetrii
http://www.digit-life.com/articles2/video/r520-part1.html
http://www.hardocp.com/article.html?art=OTUz
In any case, the difference is perhaps only technical. I mention it mainly because many people believe that the X1600 series doesn't perform as well as it should, given it's specs, particularly against the 6600GT. Some claim that this 3 shaders/pipe architecture, or more accurately, the fact that there are only 4 TMUs present, is the cause of that.
Basically, i'm not sure it's fair to compare the cards based solely on the number of shader processors, texture processors, and clock speeds. Here's an article comparing real-world performance:
http://wwww.vr-zone.com/?i=3092&s=6, as you can see the performance is fairly similar, with the usual trend of nVidia outperforming ATI on OpenGL based games, and ATI doing better on Direct3D