2
\$\begingroup\$

//Edit: Thanks to the comment from @periblepsis, I fixed the calculations

This is an academic question driven out of desire to gain understanding so please avoid comments like "that is not done in practise".

Suppose I take a microcontroller of the STM32L4 family (exact family is maybe irrelevant, but to be specific) and would like to use on of its GPIO Pins to drive an N-Channel MOSFET as low-side switch without additional drive circuitry.

I know I have to check whether the 3.3V of the µC allow for a sufficiently low rDS(on) to reach the desired static drain current, but I assume this is the case since there are MOSFETS that reach about 1A at a gate drive of 3.3V and I want to analyse the transients on turn on/off here.

But how can I do a technically thourough analysis of how fast I can switch on/off the MOSFET (transients). From the MOSFET datasheet I can check the total gate charge to estimate which current I need for a given turn on/off time.

In the µC datasheet I found this table table 58 datasheet STM32L432KC

How do I electrically model the µC Pin?

My first though was using the line 2 of the table to conclude that when I supply the µC by 3.3V, I have a guaranteed output voltage of 3.3V-0.4V @ 8mA. That would give a thevenin equivalent of 3.3V and an source resistance of about 50 Ohms. I doubt that this is correct because looking at line 6 of the table I could do the same calculation leading to a source resistance of 1.3V/ 20mA = 65 Ohms.

So: Does it even make sense to try to model the pin as a thevenin equivant when it is internally really a push/pull stage?

How could I derive a pin model which I could then use for a spice simulation to estimate the turn on/off times of the switching? I guess this kind of "educated guess" analysis must be done by every engineer that has to decide whether an gate drive circuitry is necessary or not, so I wonder that there is not much of analysis on the net (or I did not search for the right terms =) )

\$\endgroup\$
8
  • \$\begingroup\$ They are telling you that there's about a 400 mV drop at 8 mA. So 50 Ohms. At higher currents that will likely go up a bit and the drop won't be entirely linear with sink/source current. \$\endgroup\$ Commented May 23 at 19:10
  • \$\begingroup\$ Ah, damn, I have donw the calculations wrong, thanks - I will fix that in the question. Still it seems that this model does not allow for rise/fall time calculations \$\endgroup\$ Commented May 23 at 19:13
  • \$\begingroup\$ It may be worth checking if the manufacturer provides an IBIS model. That's exactly what you're looking for, really--a model of what the inputs and outputs look like without any concern for what goes on internal to the part. (Which, yes, means that your comment asking for people not to comment that that's not done in practice is unnecessary, because modelling individual IO pins is definitely done in practice!) \$\endgroup\$ Commented May 23 at 19:26
  • \$\begingroup\$ @Hearth: Hmm, haven´t thought ob IBIS models, thought they are used for signal integrity purposes and am not sure how I would use them with LTSpice, but good point. However, is there really no way to give a good estimate with use of the information provided in the datasheets? I guess there is some rise/fall time information of the pin itself somewhere that I haven´t found? \$\endgroup\$ Commented May 23 at 19:39
  • \$\begingroup\$ The next page after the table you quoted has a table of "Input/output AC characteristics", which describes the rise and fall timing, and how it relates to the OSPEED register in the GPIO control peripheral. At least, it does on the STM32F437 datasheet I already have open (you didn't specify a specific part number for your question) \$\endgroup\$ Commented May 23 at 20:07

1 Answer 1

1
\$\begingroup\$

If you go further down in a part of the datasheet you'll notice this: enter image description here Source: STM32L412xx datashseet

That gives you the capacitance. But the model isn't as simple as an RC because of the complex circuitry on the output. You could try using a simple RC model with something like 100Ω (100Ω from ~3.3V/20mA on a 3.3V source with a 5pf (plus whatever the PCB would be).

On most STM32F4's it's hard to get more than say 25Mhz without seeing some edges on the output pins and 50MHz looks rounded off. So you aren't going to get faster than a fraction of 20ns (would be more like 3-5ns worst case).

So try 10ns on the FET simulation, if it works with 10ns it should be faster than that so it should be fine on the FET heating. If it doesn't work at 10ns I'd get a dev board and try it with a scope if the simulation doesn't look good. Pick a low RDSon FET if you can find one. 10mΩ*1A^2 is only 10mW even if the fet was on all the time, that isn't enough to kill any FET. So you should look at fully on times first before simulating.

\$\endgroup\$

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.