Do any single channel DAC chips not have EEPROM?

Status
Not open for further replies.
T

treez

Guest
Hello,
We need a single channel DAC chip , between 8 to 12 bits.
We found the MCP4706, however, it has EEPROM.
We do not need EEPROM and so do not want it, as EEPROM dies after so many read/writes and that will then render the MCP4706 “dead”.
We want it to last and not die on us.

Do you know of a similar chip to MCP4706 that doesn’t have EEPROM?….they all seem to have it.

We only need to write to the DAC once every hour or so.

We wish to load values by bit-bashing the I2C protocol..is this OK?….we do not know how to use the I2C module inside our PIC18F65K22 microcontroller.

MCP4706 DAC datasheet
https://ww1.microchip.com/downloads/en/DeviceDoc/22272C.pdf
 

Have you read the datasheet? You don't have to write to the EEPROM ever. The EEPROM is there so it can power on and have the configuration settings loaded automatically. If you don't want to do that just program the volatile registers only (see pg 49, command codes).

Even if you wrote the EEPROM until it dies, the part will still function as the EEPROM is only there for power on default settings.
 
Reactions: treez

    T

    Points: 2
    Helpful Answer Positive Rating
I too found this a bit strange. The EEPROM is essentially a peripheral to the processor core so if you don't want to use it, simply ignore it. The same applies to additional internal peripherals, only use the ones you want and forget the others exist.

I'm not sure Ads-ee's description of the purpose of EE memory is right though. It can be used to store configuration if that's what you want to do but it has a whole list of other things you can do with it as well. For configuration you can just hard code the start-up variables and constants and forget EE memory is there at all. Even if you managed to 'wear it out' the rest of the device would carry on regardless. I've never reached the life limit in any of my designs but I'm pretty sure the limit isn't related to failure of the silicon but failure of the storage ability. I think if you bulk erase and reprogram them you reset their life expectancy again.

Of course you can bit-bang I2C protocol, I usually do in my projects but the hardware support is probably worth learning, if only to make the program smaller.

Brian.
 
Reactions: treez

    T

    Points: 2
    Helpful Answer Positive Rating
I'm not sure Ads-ee's description of the purpose of EE memory is right though. It can be used to store configuration if that's what you want to do but it has a whole list of other things you can do with it as well.
okay, so it also allows auto recall of programmed settings:


But I think it's primary function is to allow for designs where you program it once and forget about setting up the DAC ever again, otherwise why have the feature of loading the volatile registers from the flash values automatically at powerup?

I've never reached the life limit in any of my designs but I'm pretty sure the limit isn't related to failure of the silicon but failure of the storage ability. I think if you bulk erase and reprogram them you reset their life expectancy again.
it actually is a degradation of the silicon (really a failure of the dielectric) floating gate structure. Bulk erase won't reset the life expectancy. As I understand it, erasing is the primary culprit in causing the degradation.

An example of this is back in the old days of 12V programming voltages a firmware engineer co-worker killed a flash device by single stepping an erase algorithm. Back then they had stipulations on how long you can keep the programming voltage active before it would kill the device (basically burn through the dielectric).
 
Reactions: treez

    T

    Points: 2
    Helpful Answer Positive Rating
I can't see any reference in the data sheet to it being used for 'auto' anything. It is just plain general purpose EEPROM that can be used for anything you want. It is rated for a minimum of 100K R/W cycles and has >40 years retention.

As I understand them (in PIC devices) each write or erase cycle slightly degrades the charge on it's neighboring cells and after >100K write operations the adjacent cells will reach critical threshold. If the whole EEPROM is read and rewritten before it reaches critical state it restores the charge on all cells and their endurance is reset. See section 9.8 and the code example 9-3 in the data sheet.

Brian.
 
Reactions: treez

    T

    Points: 2
    Helpful Answer Positive Rating
I can't see any reference in the data sheet to it being used for 'auto' anything. It is just plain general purpose EEPROM that can be used for anything you want. It is rated for a minimum of 100K R/W cycles and has >40 years retention.
General purpose EEPROM?

The title of the datasheet doesn't say it's a EEPROM device it says it's a DAC (Digital to Analog Converter)
And here it states that it automatically reads (latches these stored values) the values in the EEPROM to restore the settings of the DAC registers and configuration bits.


I'm not sure you are looking at the datasheet originally posted.

Uh, what section 9.8 (Section 9 ends with 9.2)? Nor can I find that 9-3 code example. There are a lot of timing diagrams and graphs, though.

Well I'll just finish by saying...

betwixt go ahead and run a program on your PIC that writes to the first say bank of the flash over and over again with all 0's followed by erasing it each time...let it run a few days...(say 200K write erase cycles) and see if you can still perform a write followed by a verify with some pseudo random data.

For reference:
https://en.wikipedia.org/wiki/Flash_memory


Regards
 
Last edited:
Reactions: treez

    T

    Points: 2
    Helpful Answer Positive Rating
I can see where the confusion comes from. The OP covers two devices, the DAC and PIC18F65K22, I referred to the latter which also has EEPROM.

Brian.
 
Reactions: treez

    T

    Points: 2
    Helpful Answer Positive Rating
Status
Not open for further replies.

Similar threads

Cookies are required to use this site. You must accept them to continue using the site. Learn more…