[MinnowBoard] 1.6V output on gpio pin
ktait at venturesystemdesign.com
Mon Feb 8 16:30:26 UTC 2016
A little tutorial if you are interested.
All current microprocessors and microcontrollers have non specific port
drive capabilites. what I mean by this is that all data sheets are a
little vague about what a pin can drive,(actually sink). This is due to
the complex structure used to enable a pin to be multi-function and the
low power current requirements.
A part is specified by how much heat it can tolerate which is directly
related to it's speed and how much load is on ALL the pins. So, if you
had 20 leds at 20ma on 20 pins, you would exceed the specs quickly...
NO pins are designed to SOURCE current,(only enough to drive a buffer)
just to SINK current. This is an important aspect to a design.
As dies shrink, the pin drive capability gets worse, since it takes
physical area on the die to sink current.
The newer ARM parts are making this worse still, since they are all
heading to the lowest possible power use and smallest die size for cost....
8 bit micros can easily sink 10ma of current, many have a few pins
defined as 'high drive' that will do more than that.This is mostly for
driving leds directly in low cost consumer goods. It is easier to do
this in this type of part, it has fewer transistors so die size is not
that much of an issue.
The X86 family is not designed to drive anything directly without a
buffer, that is not it's purpose. Older parts like 80186 derivatives
could do this because they had very different output pins and were
intended to be used in small systems. True 'cpu' level parts are
designed to drive memory arrays and nothing else.
To be safe and provide for future expansion, any X86 design should have
gpio pins buffered to the outside world. A dual voltage, 8 bit
bi-directional buffer is a good choice here since you can mate the 1.8v
pin with a 5V or 3.3V output.
If you pay attention to this, then when a newer, faster part comes out
it will almost be a drop in replacement with little board re-layout
I see this issue all the time in systems I work on. Designers do not
understand the newer parts and what their requirements are, thinking
they can treat them like the older parts.
/Knowledge is power..and produces less smoke. ;-) /
Hope this helps
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the elinux-MinnowBoard