From: dalai lamah on
Un bel giorno Mr. C digit�:

> What is especially discouraging is when the same document (section
> 4.2) goes on to say, "As explained in the previous section, data
> retention time is very much dependent on the ambient temperature of
> the MSP430 application. One possible solution to enhance flash data
> retention is refreshing the flash contents from time to time with
> software." (!) In other words, make good in firmware what we somehow
> couldn't seem to get right in hardware.

Well, you can't blame them for the adversities of the laws of physics. ;-)

The dependence of data retention time on temperature (mostly driven by
thermal agitation) is pretty much the same for every flash cell; you can
roughly assume that for every 10 �C temperature raise, the retention time
will halve. This is explained in slaa334a that you've quoted, and even
better in slaa392:

http://focus.ti.com/mcu/docs/mcusupporttechdocsc.tsp?sectionId=96&tabId=1502&abstractName=slaa392

What changes from a flash to another, of course, is the "base line": for
the MSP430 they have specified the typical retention time at the room
temperature, not over the entire working/storage range. A data retention of
100 years at 25 �C corresponds to barely two years at 85 �C (working
limit), and one week at 150 �C (storage limit). It makes you think. :)

The fact that MCU program flashes are lousy is not news; since this thread
started as a MSP-AVR comparison, it's interesting to point out that Atmel
doesn't even bother to specify the flash retention time in its
ATtiny/ATmega datasheets (yes, I'm sure it's reported in some app note, but
still...).

>>> Those same parts are also VERY sensitive to any noise.
>>
>>That's strange, I've used them without any problem in various applications
>>where they are *submersed* into noise!
>
> We found that battery operated applications fared much better than the
> power supply applications. I don't know why, but the MSP430 was
> definitely the most sensitive processor I have ever worked with. Just
> my experience.

I thought you were referring to radiated noise. On conducted noise,
actually, I had some problems too but only with the JTAG low-cost interface
(MSP-FET430UIF). It seems very sensible to noise on the power source of the
target, and in several devices I've been forced to put a blocking diode and
a capacitor on the JTAG Vcc signal.

--
emboliaschizoide.splinder.com
From: Mark Borgerson on
In article <antik41666g2eobbtt7o9afo7e3945hbkr(a)4ax.com>,
fakeemail(a)hotmail.com says...
> >MSP430 flash has basically two problems:
> >
> >1) You need to make sure that the internal charge pump frequency falls into
> >a certain range (which is also slightly different for the various
> >families). This means that you have to select which clock source to use
> >(ACLK, MCLK, etc..), calculate the right divider ratio and program the
> >appropriate flash register. This is annoying, especially if you use the DCO
> >and don't know exactly the operating frequency.
>
> We were sure our flash frequency was correct. Not the problem for us.
>
> >2) For reliable writes, you need at least a power supply of 2.7 V. In my
> >opinion this is the main issue; I can accept that below a certain voltage
> >the device can't work at its maximum frequency, but I expect at least that
> >every internal device will work flawlessy over the entire voltage range.
>
> Yep, we had good programming voltage too. One observation we had is
> that once you programmed flash, there is no guarantee (without
> verification) that the contents are correct. So, to take care of
> that, you need to read back what you programmed and make sure it got
> programmed correctly.
>
> Also, see their document slaa334.pdf, section 3.3, where it gives
> strange warnings like, "Each time a single bit, byte, or word is
> programmed, a complete row of 64-byte flash cells sees the high
> voltage necessary for programming. This high voltage generates some
> stress to the complete row of flash cells, and this stress must be
> time limited to avoid damage. The next erase cycle resets this stress
> time to zero, and the cumulative program time restarts again from the
> beginning. According to the data sheet, as shown in Table 3, this
> high-voltage stress must be limited to 10 ms between two erase cycles.
> See the data sheets for the correct values for each MSP430
> derivative." Why would they have such a strange write-up if their
> flash was not fragile?
>
> What is especially discouraging is when the same document (section
> 4.2) goes on to say, "As explained in the previous section, data
> retention time is very much dependent on the ambient temperature of
> the MSP430 application. One possible solution to enhance flash data
> retention is refreshing the flash contents from time to time with
> software." (!) In other words, make good in firmware what we somehow
> couldn't seem to get right in hardware.
>
> The place the MSP430 really shines, and the thing TI promotes the most
> about it is its super low current drain. With a 16-bit core that
> includes multiply and divide instructions, you have a LOT of compute
> power, yet can achieve a very low current drain. For our
> battery-operated products that used the MSP430, it seemed to be great.
> (There, I said something good about the MSP430 :-) ) In almost ALL
> their example circuits, they show the MSP430 being battery powered. I
> think that is what the processor was primarily designed for. And I
> sometimes wonder if they didn't compromise other things to get there.

I think they made a compromise you missed: None of the MSP430
variants that I have used include a divide instruction. They
have integer multiply and MAC hardware, but no divide.
>
> >> Those same parts are also VERY sensitive to any noise.
> >
> >That's strange, I've used them without any problem in various applications
> >where they are *submersed* into noise!
>
> We found that battery operated applications fared much better than the
> power supply applications. I don't know why, but the MSP430 was
> definitely the most sensitive processor I have ever worked with. Just
> my experience.
>

Mark Borgerson

From: Mr. C on
>I think they made a compromise you missed: None of the MSP430
>variants that I have used include a divide instruction. They
>have integer multiply and MAC hardware, but no divide.

I guess it's obviously been a while since I used it :-) Thanks for
the correction.

Lou
From: Vladimir Vassilevsky on


MC wrote:

> At risk of starting a religious war...
> Why should I *not* prefer the MSP430 to the AVR and PIC?
> Tell me its weak points.

In quite many practical cases, the 5V I/O and supply are required.
MSP430 is 3.3V only.

Vladimir Vassilevsky
DSP and Mixed Signal Design Consultant
http://www.abvolt.com
From: larwe on
On Dec 17, 5:45 am, John Devereux <j...(a)devereux.me.uk> wrote:

> The main problem I had with the AVR's (for "bigger" applications in
> C), is the contortions you have to go through to access constant data
> in flash. It has a "harvard" architecture, meaning you need a

Am I missing something here? The AVR compilers I've used seem to hide
this fact from the developer quite successfully (as compared to, say,
the PIC compilers, which are of course simply an exercise in
futility).

First  |  Prev  |  Next  |  Last
Pages: 1 2 3 4 5 6 7
Prev: 16C752 Problem
Next: MAX3421E to PIC18F4550