Depicted below is a current mirror bandgap. I am having troubling with the biasing. Points A and B are the same, however the Vds of M6≠M7, M3≠M4 and M1≠M2. I know Vds is a weak function of current in this kind of configuration as current in both branches are well matched. How do you ensure that Vgs and Vds are matched in simulation under 2.5V supply?
In my current simulation Vg of M1 and M2 is 1.6V, Vg of M3 and M4 is 690mV and Vg of M6 and M7 is 1.5V. A and B equals 711mV.
I think in this structure, it cannot promise Vds of M6=M7, M3=M4 and M1=M2.
The gate voltage of M1,M2,M6,M7 is determined by the current. The current is determined by the resistor and the diodes. There are no reasons to make the gate voltage of M1,M2 equal to gate voltage of M6,M7. I think if you can promise VA=VB, the circuit works well.
vds of M1 M2 should be equal if M3 M4 are in saturation region.
To make vds of M6 M7 equal, use cascode configuration by adding two more NMOS between M3 M6 and M4 M7.
Added after 14 minutes:
I don't know whether if it can work in 2.5V supply, but I am sure it can work with 3.3V supply
Like bear7679 has said, the important thing for a bandgap to work is to maintain the relation VBE1= VBE2 + I*R. For this relation to hold good, make sure that all your transistors are in saturation. Do not really worry about the VDS of those devices.
If you find the voltage restriction too choking, try a low voltage configuration where there are no diode connected transistors.
I encountered the same question! The reason for unequal Vds is that the threshold voltage of M6 is very high. And Vds(M6)=Vgs(M6),but Vds(M7) is determined by the branch of M4.
Who can tell me how to reduce the Vds(M6)? I hope the current of M6 is big. For low current of M6 can make the Vds being equal.