Author Topic: Why do most MCU's (even newest) have only 5-6bits D to A ?  (Read 13152 times)

0 Members and 1 Guest are viewing this topic.

Offline MT

  • Super Contributor
  • ***
  • Posts: 1616
  • Country: aq
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #25 on: January 20, 2020, 04:28:19 pm »
The MCU market has very little demand for a DAC that can't be met with a PWM channel. That's why very few MCUs have a proper DAC, and the ones that do have a DAC with a very specific purpose in mind. Some peripherals will get thrown into MCU because it costs so little to do so. DACs are not in that category. A good DAC takes significant silicon, and adds significant test costs, so you really have to see a demand for it.

Most MCU manufacturers dont think so as majority if not all have at least 8bit DAC on many of their chips
as its a sales argument, many applications need resolution at high speed without filtering ripple gobble
or PWM clock leaks all over the place , like 8+8bits and not necessarily absolute INL, DNL etc.
« Last Edit: January 20, 2020, 05:15:11 pm by MT »
 

Offline Jan Audio

  • Frequent Contributor
  • **
  • Posts: 820
  • Country: nl
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #26 on: January 20, 2020, 04:55:14 pm »
8-bit is the minimum usable DAC.
I am ignoring 5-bit DACs.
Besides the PIC16 ones are not linear ( the 8-bit also not perfect linear, not like the 5-bit that double voltage each step ).
« Last Edit: January 20, 2020, 04:56:53 pm by Jan Audio »
 

Online T3sl4co1l

  • Super Contributor
  • ***
  • Posts: 21688
  • Country: us
  • Expert, Analog Electronics, PCB Layout, EMC
    • Seven Transistor Labs
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #27 on: January 20, 2020, 04:56:48 pm »
5 bits is adequate for a lot of things.  For a very odd example, check out some of the demos performed on PC-XT, NES or GameBoy.  These are, roughly speaking and IIRC, 1, 2.3 and 3 bits, depending on just how you use them.  The trick is high sample rate and dithering.

A 5-bit DAC doesn't sound too useful, but it becomes damn powerful if you have DMA updating it from a buffer at high rate, or dithering registers perhaps.  I haven't looked to see if the PIC examples offer this.  Even without DMA, if you have a periodic interrupt and fast interrupt response, you can do the same in software (which is probably something PIC and AVR are quite comfortable with).

5 bits is more than enough for some basic control functions.  Display brightness/contrast, say.  Trimming a supply voltage (but probably not setting an absolute voltage).  Conversely, a rotary encoder might have about as many steps (32 or 64, depending on how it's decoded) to still deliver comfortable digital action; anything outputting in a similar way will only need as much.

What else; spacial resolution, that's as many pixels as a 4-line character-based display.  Not great, but definitely useful.

Tim
Seven Transistor Labs, LLC
Electronic design, from concept to prototype.
Bringing a project to life?  Send me a message!
 

Offline Jan Audio

  • Frequent Contributor
  • **
  • Posts: 820
  • Country: nl
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #28 on: January 20, 2020, 04:58:46 pm »
If you already have 8-bit, you can multiplex, and use the extra pin for more multiplexing.
Besides you need to buffer those DACs.
 

Online T3sl4co1l

  • Super Contributor
  • ***
  • Posts: 21688
  • Country: us
  • Expert, Analog Electronics, PCB Layout, EMC
    • Seven Transistor Labs
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #29 on: January 20, 2020, 05:09:17 pm »
If you already have 8-bit, you can multiplex, and use the extra pin for more multiplexing.
Besides you need to buffer those DACs.

A time-tested method, by the way.  I've removed R2R ladder / DAC chips like MC1408 from old equipment (70s-80s), alongside bus latch/registers, analog switch/mux (CD4051 family) and op-amps.  Very likely they were using one DAC and scanning between S&H channels.

Easier than ever, today, with the availability of cheap, accurate op-amps and analog switches.  Don't really see S&H blocks anymore (can probably still get the old, LF3xx was it, chip?) but it's not a difficult function to implement.

Tim
Seven Transistor Labs, LLC
Electronic design, from concept to prototype.
Bringing a project to life?  Send me a message!
 

Offline Jan Audio

  • Frequent Contributor
  • **
  • Posts: 820
  • Country: nl
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #30 on: January 20, 2020, 05:17:58 pm »
4051 + opamps or FETs with 1000n pp cap.

@ blueskull : i have to see all that, sounds nice btw.
 

Offline woofy

  • Frequent Contributor
  • **
  • Posts: 334
  • Country: gb
    • Woofys Place
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #31 on: January 20, 2020, 05:35:33 pm »
PIC16 series is I think 29 years old architecture (introduced 1991)
Older than that, the first PIC16 was introduced by General Instruments in 1976.

Online coppice

  • Super Contributor
  • ***
  • Posts: 8652
  • Country: gb
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #32 on: January 20, 2020, 05:36:13 pm »
If you already have 8-bit, you can multiplex, and use the extra pin for more multiplexing.
Besides you need to buffer those DACs.

A time-tested method, by the way.  I've removed R2R ladder / DAC chips like MC1408 from old equipment (70s-80s), alongside bus latch/registers, analog switch/mux (CD4051 family) and op-amps.  Very likely they were using one DAC and scanning between S&H channels.

Easier than ever, today, with the availability of cheap, accurate op-amps and analog switches.  Don't really see S&H blocks anymore (can probably still get the old, LF3xx was it, chip?) but it's not a difficult function to implement.

Tim
Many multi channel DAC chips were implemented in that way in the past, when the cost of the core DAC part of the chip was higher. Things like CD players used to have one DAC and a sampling scheme to produce a stereo output. It was only the move to sigma delta converters which ended that approach.
 

Online coppice

  • Super Contributor
  • ***
  • Posts: 8652
  • Country: gb
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #33 on: January 20, 2020, 05:37:55 pm »
PIC16 series is I think 29 years old architecture (introduced 1991)
Older than that, the first PIC16 was introduced by General Instruments in 1976.
Yes, a fine Scottish product.
 

Offline mikerj

  • Super Contributor
  • ***
  • Posts: 3240
  • Country: gb
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #34 on: January 20, 2020, 06:51:35 pm »
High resolution DACs take up a lot of silicon real estate, and unlike an ADC it's not something you can multiplex (at least not easily).  The silicon process required for high resolution DACs is also not very compatible with that used for the logic, hence some micros with proper 16 bit ADCs and DACs (e.g. ADuCM320) have a separate stacked analog die.

What DAC has a static output? If you want a static voltage level PWM is ideal, as you only need to apply a strong RC low pass filter to the PWM signal. DACs are usually there to create a dynamic signal.

Any R-2R type DAC has a static output, i.e. it only changes when a new code is written.  PWM and Delta Sigma DACs have a constantly changing output that requires low pass filtering to recover the DC value.
 

Online coppice

  • Super Contributor
  • ***
  • Posts: 8652
  • Country: gb
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #35 on: January 20, 2020, 07:21:08 pm »
What DAC has a static output? If you want a static voltage level PWM is ideal, as you only need to apply a strong RC low pass filter to the PWM signal. DACs are usually there to create a dynamic signal.
Any R-2R type DAC has a static output, i.e. it only changes when a new code is written.
Are you trying to be obtuse? Of course the output only changes when a new code is written, but who uses a proper DAC in an application where they are not frequently writing new codes? There are cheaper ways to generate a long term static level.
 

Offline ogden

  • Super Contributor
  • ***
  • Posts: 3731
  • Country: lv
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #36 on: January 20, 2020, 07:53:02 pm »
What DAC has a static output? If you want a static voltage level PWM is ideal, as you only need to apply a strong RC low pass filter to the PWM signal. DACs are usually there to create a dynamic signal.
Any R-2R type DAC has a static output, i.e. it only changes when a new code is written.
Are you trying to be obtuse? Of course the output only changes when a new code is written, but who uses a proper DAC in an application where they are not frequently writing new codes? There are cheaper ways to generate a long term static level.
Try to do long term static level with fast settling and low noise using PWM and you will see that generalization and blanket statements are bad thing in the engineering.
 

Offline Yansi

  • Super Contributor
  • ***
  • Posts: 3893
  • Country: 00
  • STM32, STM8, AVR, 8051
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #37 on: January 20, 2020, 07:58:19 pm »
If you already have 8-bit, you can multiplex, and use the extra pin for more multiplexing.
Besides you need to buffer those DACs.

A time-tested method, by the way.  I've removed R2R ladder / DAC chips like MC1408 from old equipment (70s-80s), alongside bus latch/registers, analog switch/mux (CD4051 family) and op-amps.  Very likely they were using one DAC and scanning between S&H channels.

Easier than ever, today, with the availability of cheap, accurate op-amps and analog switches.  Don't really see S&H blocks anymore (can probably still get the old, LF3xx was it, chip?) but it's not a difficult function to implement.

Tim

I think Agilent used a multiplexed DAC in their E3631A power supply, if I remember correctly. I was pretty surprised to see that in there.
 

Online chris_leyson

  • Super Contributor
  • ***
  • Posts: 1541
  • Country: wales
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #38 on: January 20, 2020, 08:19:15 pm »
Quote
Older than that, the first PIC16 was introduced by General Instruments in 1976.
Had to repair a musical doorbell for a customer a long time ago, 30 years or so. Opened it up and there was a 28-pin GI 16C57 sitting there. Didn't reverse engineer it, you get paid for repairs, but it must have used at least one R2R DAC.

EDIT: Recently used a pair of 10-bit PWM DACs in a 2 channel PSU dynamic load tester, 0-2A in 2mA steps. Linearity is really good and settling time is adequate for the application, there's no offset adjustment though.
« Last Edit: January 20, 2020, 08:40:27 pm by chris_leyson »
 

Offline westfw

  • Super Contributor
  • ***
  • Posts: 4199
  • Country: us
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #39 on: January 20, 2020, 09:13:42 pm »
There are a couple of chips with 5-6bit DACs, but I'm pretty sure it isn't "most."My impression was that they showed up on chips targeted to specific applications where 5-6bits (3-1.5% accurate, right?) was "good enough"; a sort of "I would have used a PWM output with an analog filter, but it would be nice not to need the external analog components, or have to keep juggling the "steps vs bandwidth."It also looks like the low-res DAC output can be used as as the Vref input for the ADCs on a chip, giving you a much wider set of possibilities for Max-resolution ADC operation than with most Vref setups...
 

Online T3sl4co1l

  • Super Contributor
  • ***
  • Posts: 21688
  • Country: us
  • Expert, Analog Electronics, PCB Layout, EMC
    • Seven Transistor Labs
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #40 on: January 20, 2020, 09:32:12 pm »
Try to do long term static level with fast settling and low noise using PWM and you will see that generalization and blanket statements are bad thing in the engineering.

Fast settling == high bandwidth (i.e. AC) != long term static (i.e. DC).

Whether or not the level changes often, you're saying it needs to be capable of doing so, which means the available bandwidth is high.

Tim
Seven Transistor Labs, LLC
Electronic design, from concept to prototype.
Bringing a project to life?  Send me a message!
 

Offline cv007

  • Frequent Contributor
  • **
  • Posts: 828
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #41 on: January 20, 2020, 09:57:33 pm »
>There are a couple of chips with 5-6bit DACs, but I'm pretty sure it isn't "most

I think the point of view may be the pic 8bit world, which is 'mostly' 5bits, but they also have some with 8/10bits-
https://www.microchip.com/ParamChartSearch/Chart.aspx?branchID=30048

(check out that 16F1779, someone who makes use of most of those peripherals would probably have something interesting to look at)
 

Offline ogden

  • Super Contributor
  • ***
  • Posts: 3731
  • Country: lv
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #42 on: January 21, 2020, 05:12:39 am »
Fast settling == high bandwidth (i.e. AC) != long term static (i.e. DC).
:horse:   Define DC then. 1V/sec is DC or still AC? As long as output is able to change at *any* rate, technically it is not DC anymore :)
 

Online T3sl4co1l

  • Super Contributor
  • ***
  • Posts: 21688
  • Country: us
  • Expert, Analog Electronics, PCB Layout, EMC
    • Seven Transistor Labs
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #43 on: January 21, 2020, 08:43:58 am »
Precisely!  If you are concerned about the rate of change, it's not DC.  :)  Which was coppice's point: DC is low bandwidth, the lowest possible bandwidth.  Something that should readily be served by a low-bandwidth DAC, like filtered PWM!

(And to answer the pedantry bait, not that I should: "DC" is the low frequency component of the circuit.  "1V/sec" is nothing to a radio, a fair amount of AC to a seismometer, or an apocalypse to a barometer...  "DC" is always contextual, or conceptual for that matter, and so cannot have such a low-level definition.)

Tim
Seven Transistor Labs, LLC
Electronic design, from concept to prototype.
Bringing a project to life?  Send me a message!
 

Offline mikerj

  • Super Contributor
  • ***
  • Posts: 3240
  • Country: gb
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #44 on: January 21, 2020, 12:22:44 pm »
Are you trying to be obtuse? Of course the output only changes when a new code is written, but who uses a proper DAC in an application where they are not frequently writing new codes? There are cheaper ways to generate a long term static level.


Many, many applications use DACs to provide static voltages or currents.  I'm not being obtuse, this is simply down to invalid preconceptions.
 

Offline ogden

  • Super Contributor
  • ***
  • Posts: 3731
  • Country: lv
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #45 on: January 21, 2020, 12:31:49 pm »
"DC" is always contextual, or conceptual for that matter, and so cannot have such a low-level definition.
Yes indeed. This is why I mentioned settling time which is correct property for DC source. Seems, you are here just for an argument which you will find no matter what, even in case when we both agree.
[edit] For those who wonder what the ** this is about: DC sources do not have bandwidth specification, even fast DC supplies do not automagically become AC supplies on T3sl4co1l command. Try to find "bandwidth" term here.
« Last Edit: January 21, 2020, 12:41:10 pm by ogden »
 

Offline David Hess

  • Super Contributor
  • ***
  • Posts: 16620
  • Country: us
  • DavidH
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #46 on: January 21, 2020, 04:33:23 pm »
5B DAC can be dithered with PWM or SDM to get much higher resolutions.

Dithering does not improve linearity and linearity is what limits DAC resolution.

High resolution DACs take up a lot of silicon real estate, and unlike an ADC it's not something you can multiplex (at least not easily).  The silicon process required for high resolution DACs is also not very compatible with that used for the logic, hence some micros with proper 16 bit ADCs and DACs (e.g. ADuCM320) have a separate stacked analog die.

That points to the reason.  Simple high resolution ADCs can be made using a capacitive redistribution successive approximation converter which is compatible with generic CMOS logic processes.  A DAC requires an R-2R ladder, resistance string, and/or bipolar transistors (emitter scaling) (1) which requires extra processing steps.

So a low resolution DAC is all that can be easily managed on a generic CMOS process.

If you are desperate, a better resistive DAC can be made by driving precision resistors directly from I/O pins but PWM is usually the way to go.  If you need something better then include a discrete DAC; they are not expensive.

(1) Isn't there an equivalent using MOS transistors?  MOS current mirrors can be scaled but maybe they do not achieve the scaling accuracy of bipolar transistors.
« Last Edit: January 21, 2020, 04:36:44 pm by David Hess »
 

Offline David Hess

  • Super Contributor
  • ***
  • Posts: 16620
  • Country: us
  • DavidH
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #47 on: January 21, 2020, 04:52:01 pm »
Dithering does not improve linearity and linearity is what limits DAC resolution.

Resolution != resolution w/o missing codes.

Missing codes are not the only problem.  Monotonic operation is required to prevent servo lockup.  What happens when increasing the DAC code *lowers* the output?  How does dithering improve that?
 

Offline Bud

  • Super Contributor
  • ***
  • Posts: 6912
  • Country: ca
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #48 on: January 21, 2020, 05:17:20 pm »
Precisely!  If you are concerned about the rate of change, it's not DC.  :)  Which was coppice's point: DC is low bandwidth, the lowest possible bandwidth.  Something that should readily be served by a low-bandwidth DAC, like filtered PWM!
PWM will cause small variable component to present, at the PWM frequency. If say you control a voltage controlled oscillator with PWM, it will cause spurs in the oscillator output below and above the oscillator frequency.  If this may be a problem depends on the application.
Facebook-free life and Rigol-free shack.
 

Online coppice

  • Super Contributor
  • ***
  • Posts: 8652
  • Country: gb
Re: Why do most MCU's (even newest) have only 5-6bits D to A ?
« Reply #49 on: January 21, 2020, 05:19:05 pm »
5B DAC can be dithered with PWM or SDM to get much higher resolutions.
Dithering does not improve linearity and linearity is what limits DAC resolution.
Non-linearity limits accuracy. It doesn't limit the resolution you can get with dithering, unless you have really gross issues like non-monotonic codes.
« Last Edit: January 21, 2020, 05:32:39 pm by coppice »
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf