element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Personal Blogs
  • Community Hub
  • More
Personal Blogs
Frank Milburn's Blog The Wilson Current Mirror
  • Blog
  • Documents
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: fmilburn
  • Date Created: 1 Feb 2021 7:27 AM Date Created
  • Views 5206 views
  • Likes 13 likes
  • Comments 11 comments
  • current mirror
  • wilson current mirror
Related
Recommended

The Wilson Current Mirror

fmilburn
fmilburn
1 Feb 2021

Recently W2AEW, one of my favorite YouTube bloggers, made a video on the Wilson Current Mirror and the Early Effect in Bipolar Transistors.  He explains things clearly without any fluff so go check it out.  I always understand and remember things better if I try them myself so I set a circuit this evening and documented it here for those interested.  My design will be for 5 mA current.

 

Schematic

image

 

Design the Circuit

 

The resistors are 1%.  To work properly the PNP transistors in the current mirror need to be matched.  I am down to three 2N3906 transistors and tested them with my inexpensive M-Tester.

image

 

Below are the results for the 3 transistors.

 

ComponenthFEVf
Q1165683 mV
Q2172683 mV
Q3162683 mV

 

Note from the schematic that the base of Q2 will be one diode drop less than Vcc which in this case is 3V3.  And because the collector of Q2 is tied to the base, the base of Q3 is going to be two diode drops less than Vcc.  Using the 683 mV value for the diode drops obtained in the test we get 3.3 - 2 * 0.683 = 1.93V for the base of Q3 which is also the voltage above R5.  The value of R5 needed for 5 mA can then be calculated using Ohm's Law as follows:  R5 = 1.93 V / .005 A = 386 Ohms.  I have a 330 Ohm resistor so expect to get something like 1.93 V / 330 Ohms = 5.8 mA with the circuit as wired up.

 

Test the Circuit

 

The circuit was made on a breadboard.  The actual supply voltage was measured to be 3.27 V. The measurement across R5 is shown below.

image

 

The measured value across R5 is 1.84 V and the calculated value was 1.93 V so Vf differs from expectation but is fairly close.  Doing the math, the current is 1.84 / 330 = 5.6 mA on the left side of the mirror versus 5.8 mA expected.  The voltage across the load was measured to be 0.527 V so the current across the load is 0.527 / 100 = 5.3 mA versus 5.8 mA expected. 

 

Summary

 

There is almost a 9% error but the transistors aren't matched and the M-Tester isn't that accurate to begin with.  I expected the mismatch in transistors to produce a higher current on the load side based on the values of hFE.  W2AEW uses a trimmer in his circuit to obtain the desired current and goes on to demonstrate that the Wilson Current Mirror has relatively low current variability with changing output voltage compared to a two transistor current mirror.  This improvement can be explained with an understanding of the Early Effect as shown in the video by W2AEW.

 

Horowitz and Hill give another version of a current mirror by Widlar that provides a fixed multiple of the current above the programming current.  Unfortunately there is temperature dependence if I am properly interpreting the graph in Figure 2.62.

 

I find these little experiments with the basic building blocks of electronics educational and fun (but go watch W2AEW image).  Thanks for reading, comments and corrections are always appreciated.

  • Sign in to reply

Top Comments

  • fmilburn
    fmilburn over 4 years ago in reply to Jan Cumps +4
    I am going to order some JFETs and replenish my other BJTs and MOSFETs in my next order and try to work through some more of his videos.
  • Andrew J
    Andrew J over 4 years ago +3
    That led me down the rabbit hole of W2AEW videos checking out current sources, op amp set ups and so on. They are good.
  • neilk
    neilk over 4 years ago +3
    Thanks Frank, I enjoyed that. It's been many, many years since I even picked up a transistor! Neil
  • fmilburn
    fmilburn over 4 years ago in reply to jc2048

    The video demonstrated that the stabilized output current of the Wilson current mirror is relatively insensitive to differences in load.  Your analysis of response time was not covered so quite interesting. I just received some new transistors so I may be able to match transistors better.  Will look into setting up the Widlar version which is a modification of the 3 transistor Wilson mirror.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • jc2048
    jc2048 over 4 years ago

    I don't know what the original video, referred to in the blog, covered (sorry, I don't choose to sign up

    to You Tube and things like that, and so apologies if I'm repeating things already covered), but I later

    got curious as to what the response time of the Wilson one was like. The basic two-transistor mirror (is

    that one due to Widlar? can't remember) is fast because it's just the internal feedback within the output

    transistor that's regulating the current. The three-transistor one is a current regulator loop [the pair

    of transistors at the top are a mirror feeding back the output current to form an error term], so we might

    expect it to be a bit slower. The response would be of interest if the mirror were used to provide a load

    for an amplifier stage to increase the gain, or something like that, so I thought I'd try measuring it.

     

    I've wired it up on a plug-in breadboard and I'm going to try a) changing the input current and see how

    quickly the output responds, and then b) try changing the output load and see how long the output takes to

    settle.

     

    Here's the circuit for a)

     

    image

     

    The UNO output switches a second resistor (and diode drop) in parallel with the 330R resistor. I'm not too

    concerned what the change in input current actually is, just that there's a reasonable difference that I

    can look at.

     

    Here's the response (yellow is the UNO pin, blue is the output load resistor)

     

    imageimage

     

    Although it's somewhat messy whilst the switching occurs [down to the way I'm using the switching diode, I

    think, and the fact it's on a plug-in breadboard] , we can see it's mostly done after a fairly respectable

    10ns, though there is a bit of an extended settling time after, and the overshoot is a bit embarrassing.

     

    Not sure I can explain the overshoot, though it might be the fast edge, combined with the diode reverse

    capacitance, lifting the 330R momentarily higher than the level that it then settles back down to.

     

    Here's the circuit for b).

     

    image

     

    This time, I've got the UNO applying the diode drop as an addition to the load resistor, and we're looking

    at how long it takes to settle at the diode on voltage, followed by it going back up to the voltage

    dropped by the load resistor alone.

     

    imageimage

     

    That's nicely done by the mirror, though there's a bit of a difference between increasing the load and

    decreasing it again.

     

    When you consider that this is a negative feedback loop, operating on a timescale of a few ns, it's

    surprisingly good.

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • Jan Cumps
    Jan Cumps over 4 years ago in reply to fmilburn

    ... replenish my other BJTs ...

    For BJTs, I got myself a kit from Velleman (buy Belgian image) with a mix that's well-balanced.

    They always have the NPN and PNP counterparts, for low signal, mid and mid-high power, and Darlingtons.

     

    image

    For low frequency, it's a conservative but wise choice for BJTs.

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • fmilburn
    fmilburn over 4 years ago in reply to Jan Cumps

    I am going to order some JFETs and replenish my other BJTs and MOSFETs in my next order and try to work through some more of his videos.

    • Cancel
    • Vote Up +4 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • Jan Cumps
    Jan Cumps over 4 years ago

    I've been digging in that too. Also inspired by a video of w2aew: Measure JFET drain current with a current mirror .

    Great when you can experiment with just a few components. 1$ well spent.

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • More
    • Cancel
>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube