• AVR Freaks

Hot!Conflicted info on High endurance flash and self-write in PIC16F753

Author
BradLevy
Starting Member
  • Total Posts : 44
  • Reward points : 0
  • Joined: 2007/10/23 15:21:30
  • Location: Kansas
  • Status: offline
2019/04/22 16:39:14 (permalink)
0

Conflicted info on High endurance flash and self-write in PIC16F753

I submitted this as a support case but still haven't gotten a response now 10 days later, and getting 'system problems' messages trying to access the case via phone support. So here are my questions:

The data sheet for the PIC16F753/ PIC16HV753 (document DS40001709D) is clearly wrong when it comes to section 3.0, FLASH PROGRAM MEMORY SELF-READ/SELF-WRITE CONTROL, which starts on page 25. It describes the wrong amount of memory, and the register field documentation reflects that error. What I do know, and what I don't know but need to know:

This part has 2K words of program memory, and self-write capability.
The data sheet says 1K words in the programming section, 2K words in other places.
The data sheet says the flash write mechanism is organized as rows of 16 words, that are erased a row at a time, but writable four words at a time.
Some of the app notes state that the flash memories in devices with more than 1K of flash are organized 32 words per row, instead of 16 words per row.

==> Does that apply to this device?

The data sheet does state on the first page, under Microcontroller Features, that the part does have high endurance flash memory (100,000 write endurance, >40 year retention).
The ap notes state that on parts that do have the high endurance flash feature, usually only a portion of the flash is high endurance, and it is located at the upper end of the flash memory region.
Also, that some devices have a larger high endurance flash region than other chips.

==> What portion of the flash memory region in this device is high endurance? (Start address and size.)

In table 22-5 on page 182, Parameter 125 says N/A in the minimum endurace column for the EHEFC specification.
The conditions column says it applies to the last 128 bytes, for temperatures from 0 to 60C.

==> Does this part actually have a high endurance flash region (as it says on page 1), or not (as D125 half implies).
==> What are the actual cell endurance specs for that region, if it does exist?
==> What is the actual size for this region?

Also, on page 183, there is a Table 0-2 stuck between Table 22-5 and Table 22-6, which is screwed up table numbering.
#1

5 Replies Related Threads

    NKurzman
    A Guy on the Net
    • Total Posts : 17248
    • Reward points : 0
    • Joined: 2008/01/16 19:33:48
    • Location: 0
    • Status: online
    Re: Conflicted info on High endurance flash and self-write in PIC16F753 2019/04/22 18:08:20 (permalink)
    0
    The Data sheet covers PIC12F752 (1K words) and PIC12F753(2K words)
     
    See D125 Page 182 says it has 128 bytes, They will be the Last 128 byte.  The High words are not high endurance, just the Bottom 8 bits of those 128 words.  This is important if they are read via a retw opcode.
    The data sheet shows 10K cycles MINIMUM, 100K typical.
    #2
    BradLevy
    Starting Member
    • Total Posts : 44
    • Reward points : 0
    • Joined: 2007/10/23 15:21:30
    • Location: Kansas
    • Status: offline
    Re: Conflicted info on High endurance flash and self-write in PIC16F753 2019/04/22 18:36:25 (permalink)
    0
    NKurzman, I'm looking at the more-PIC16F753-specific datasheet, document DS40001709D.
    I am familiar with the '752, I've used it before.

    10K guaranteed, 100k typical is the spec for non-high-endurance flash.
    Page 1 of the data sheet claims some high endurance flash.
     
    Are you with Microchip?

    It is the AN1673 that mentions row size being different with larger program memory.
    (The 753 has more memory than the 752, in addition to more pins.)
     
     
     
    post edited by BradLevy - 2019/04/22 18:37:35
    #3
    NKurzman
    A Guy on the Net
    • Total Posts : 17248
    • Reward points : 0
    • Joined: 2008/01/16 19:33:48
    • Location: 0
    • Status: online
    Re: Conflicted info on High endurance flash and self-write in PIC16F753 2019/04/22 18:56:39 (permalink)
    0
    See Page 2 they they used the same base for Both Data sheets.
    I would Guess D121A is for the Standard Flash.
     
    I am Not with Microchip. I doubt you will find a Microchip Engineer for this here.
     
    Always use the Data Sheet for fine details.  Microchip does a lot of Copy Paste.
     
    Page 25:
    The program memory allows a single-word read and a four-word write. A four-word write automatically erases the row of the location and writes the new data
     
    So this Chip is not Typical.
    #4
    BradLevy
    Starting Member
    • Total Posts : 44
    • Reward points : 0
    • Joined: 2007/10/23 15:21:30
    • Location: Kansas
    • Status: offline
    Re: Conflicted info on High endurance flash and self-write in PIC16F753 2019/04/23 02:15:29 (permalink)
    0
    I do read the data sheets for fine detail. And you are correct that Microchip does a lot of copy/paste on the data sheets. Sometimes, they do it too much. (For example, Table 19-4 in the data sheet for the '753 lists the registers from the '752, instead of the '753. So it lists SLRCON0 at address 10D. But 10D is actually WPUC (different function) on the '753.)

    Reading the fine detail on page 30, it says:
    Flash program memory must be written in four-word
    blocks. See Figure 3-2 and Figure 3-3 for more details.
    A block consists of four words with sequential
    addresses, with a lower boundary defined by an
    address, where PMADRL<1:0> = 00. All block writes to
    program memory are done as 16-word erase by fourword
    write operations. The write operation is edgealigned
    and cannot occur across boundaries.

    And in Figure 3-2 on page 31, it says
    If at a new row
    sixteen words of
    Flash are erased,
    then four buffers
    are transferred
    to Flash
    automatically
    after this word
    is written

    Which doesn't match up with page 25, which says it always erases the row. If (as page 30 says) the row is 16 words, then always erasing the entire row on any 4-word write (as page 25 says) would be rather nasty, because you'd always end up with your four words of data, but the other 12 words of the row erased.

    Hence my requests for clarification of the data sheet (including whether this part really has some high endurance (100k write guaranteed) flash, or is all the same 10k flash).

    I understand data sheet mistakes happen. This one just happens to have more than usual, especially for rev D of a data sheet.


    #5
    NKurzman
    A Guy on the Net
    • Total Posts : 17248
    • Reward points : 0
    • Joined: 2008/01/16 19:33:48
    • Location: 0
    • Status: online
    Re: Conflicted info on High endurance flash and self-write in PIC16F753 2019/04/23 06:43:40 (permalink)
    0
    That specific clarification can only come from microchip.
    As far as the number of words that can be written that you could test yourself. You can also look at the sample code in the data sheet.
    #6
    Jump to:
    © 2019 APG vNext Commercial Version 4.5