It is the most common used bias circuits for the wide-swing cascode. Transistor M5 needs not be the same length as the others. Try to decrease the W/L of M5 (usually this will be done with long L, or stack of several M5 to improve matching while simultaneously increase L). Actually the potential of the drain of M5, M3 and M1 are all mainly controlled by M5, so if you can adjust a suitable value of M5 then M2 can be chosen as same size as M1.
The M5 is at triode and m6 is at saturation. So
VHb2=Vt5+[(Vt5-Vt6-2I/beta6))**2+2I/beta5]**0.5
so you want select a correct Vhb2 to get the max. output swing, you can select a correct beta5 (which is kW/L) to get Vhb2. we often select the same long length between M5 and M1. and the W of M1 is 3 times than that of M5. And M2 and M6 select short Length and large w.
Hi,
I think that you need not to match M6's source voltage to the others.
At the same time, the current matching between M6 and M2 should be
kept by the input PMOS transistors. If possible, use normal cascode,
or use large L in these PMOS. Then it could work.
You need only to match M1 and M2's drain voltage in any cascode current
mirror.