imajeff wrote:
Also, doesn't it take typically less time to erase one sector (256 bytes) than to mass-erase? In that case could it be faster to erase only sectors we need to changed, and not a bulk erase?
Many customers want the devices ERASED, so, when they receive them, they just program them and that is finished.
For a production chain, every second (and fraction of) costs and adding the MASS ERASE in their chain is not what they wish for. Programming houses are actually always asking for ways to speed-up programming.
Mass erase or sector erase are indeed necessary because parts aren't blank by default. Erase may be not necessary only in two cases: a) you don't need chip security at all, b) you don't mind violating specifications. If I understand you, you are suggesting that overprogramming only once is OK. I'm surprised to hear this from freescaler.
Speaking about security. Chips are unsecured in two cases: a) security bits are programmed to binary xxxxxx10 (for example security byte= $FE), and b) part is really blank (both, eeprom and flash are erased). It's the problem of programmer/debugger tool if it's unable to program really blank parts.
Regards
Edward
Alban wrote:
Quote for kef:
"
If I understand you, you are suggesting that overprogramming only once is OK. I'm surprised to hear this from freescaler.
"
Well, read more carefully and you won't get any element of surprise.
I did not say that at all. I talked about RISK and NEVER suggested you should do it !
Alban.
Finally, I also believe that many programmers do violate the forbidden "write-more-zeros" rule.
However, you have to admit that Security Bytes are rarely written in the application, therefore the risk of overprogramming and wear-out is low.
Having a secure device would be a pain as it requires multiple operations to unsecure, as you can't get in initially. Actually, from experience, I have seen that very few people do secure their part... I don't really know
imajeff wrote:Edited: kef, I didn't see your point, but maybe the numbers I calculate below show that you've got something anyway..
(reading S12BDMV4.pdf). Your point is that we could save the fraction of a second per unit if we were not required to erase flash. If I understand your point about BDMSTS, you are saying that if it were completely erased, you can "just program" without having to do anything else first because BDM knows the chip is blank.
My point is that it would still require significant time for the "secure BDM firmware" to verify that all Flash and EEPROM is blank and then unsecure the device. It does not automatically know it is blank:
' '
The secure BDM firmware lookup table verifies that the on-chip EEPROM and FLASH EEPROM are erased. This being the case, the UNSEC bit is set and the BDM program jumps to the start of the standard BDM firmware lookup table and the secure BDM firmware lookup table is turned off.
' '
...
... 3.33 minutes per 10,000 units...
... 0.009 per MCU (90 seconds per 10,000 units).
Check if I messed up the math, I often scramble something if I don't verify it.
Thanks Al, I was hoping you'd have a good answer : )
That was the guess I went with. I even explained to others that we shouldn't expect them to do it. I had figured there might be too much added cost. I was only hopeful that Freescale was smart enough to figure how without that. I guess I was more interrested in this for VSB, or students. That's why I see the actual bootloader as practically useless, but maybe there is still preloading vendors? If schools could order Q 100 and ask for them preloaded with LRAE, then students could be building kits that are just a target board with serial port, and not build both a target and a TBDML.
I think you are right, TBDML should be preferred. It's just that the overwhelming response to my claim has been that having only one board is more important. You may have seen people tell me that on other discussions here.
And yes I am not surprised that I got the worst rating possible for my question. I'm sure it's a misunderstanding; people seem to misunderstand, either way. That's why some people don't fight for what they believe--they are afraid of being publicly crushed.