A current mirror has a first transistor and a second transistor. Current
through the first and second transistors are an input current and an
output current, respectively. The ratio of the output current to the
input current is constant. The first and second transistors have the same
voltage difference between the gate and source. The voltage difference
between the drain and source of the second transistor is equalized to
that of the first transistor by a first operational amplifier, and the
voltage difference between the drain and source of the first transistor
is equalized to a control voltage by a second operational amplifier. By
setting the value of the control voltage, the first and second
transistors can operate in triode region to simultaneously provide high
output current and sufficient potential for a load.