An Introduction to NVFS Flash Memory

Red Mercury development group has put together a good technical overview of the new non volatile Flash memory system used in the new palmOne Tungsten T5 and Treo 650.

Red Mercury's has published a helpful primer that explains the benefits and limitations of the new Palm OS internal flash memory (NVFS). It gives a great explanation of what it is and how it works on the new handhelds. They also lay out the benefits and drawbacks as well as preform some tests to compare performance with traditional palm os memory configurations.

Red Mercury's applications have been updated to support new functionality with NVFS systems. Their card games, AcidSolitaire and AcidFreecell, now scan all of the internal flash memory (NVFS) for JPEG backgrounds. This includes any images stored internally on NVFS, for example, from the Treo 650 built-in camera. And AcidImage products, have been updated to allow access to all sections of the NVFS, including the new NVFS hidden internal volume.

Article Comments

 (23 comments)

The following comments are owned by whoever posted them. PalmInfocenter is not responsible for them in any way.
Please Login or register here to add your comments.

Comments Closed Comments Closed
This article is no longer accepting new comments.

Down

Great info there!

Be_True @ 11/8/2004 2:40:28 PM #
That primer really has a lot of great info in there.

Now I'm wondering how often that 10MB limit will come into play?

I do tend to run at full memory states most of the time. That's one reason why I bought the Tungsten C. (64MB + 256MB SD)

I've recently upgraded to a 1GB SD card, so I have room for now.

I'm hoping that a future T|C2 will have 256MB+ of NVFS.
(And upgrades to the old PIM's and alarms)

-Chris


Tungsten C, Palm IIIxe, Wizard OZ-9520

"Quando Omni Flunkus Moritati"

Navman SmartST

just_little_me @ 11/8/2004 4:03:57 PM #
I guess this explains why Navman SmartST won't run on my new T5... not enough memory for its caches etc... Luckily I still have my old T2 which runs it nicely! I hope they can address this big problem soon!!


JLM.

RE: Navman SmartST
T. @ 11/8/2004 8:34:07 PM #
10 M seems like a lot. I assume that the first place that it will hit me is with Street Atlas 2005 and some of my bigger maps. Obviously the app might be written so it will handle it by swapping stuff in and out but I guess there is no way to tell until I try it.

If it crashes and burns I guess I can just start splitting my larger city maps up.


NAND Flash is A BAD THING

The_Voice_of_Reason @ 11/8/2004 5:03:12 PM #
Finally, people will hopefully understand why I've been saying that NAND Flash is A BAD THING. This is a cost saving measure, pure and simple. Really now, how many times have any of you lost data because of power drain? Anyone?

NAND Flash is an answer to a problem that doesn't exist. It adds needless complexity, limits heap and puts an artificial ceiling on accessible RAM. I haven't looked at the memory management protocols used in PalmOS 6, but if apps aren't cleanly releasing memory, I expect to see a lot of problems when browsing/processing photos etc. And I wouldn't be surprised to see that PalmOS 5 is currently choking on all the memory swapping going on. Maybe someone with in depth knowledge like Dianne Hackborn or Ben Combee can clear this up, but at this point I would avoid devices with NAND Flash if at all possible.

The fact that data (obviously by necessity) doesn't survive a hard reset makes this system useless, in my books. I think a lot of poeple are going to be pi$$ed off once they experience a hard crash and learn that ALL their data is gone - including the precious files they were carrying home from work.

And I thought the CLIE UX50 memory system was complicated! NAND Flash should be a leading contender for this year's Rube Goldberg Award. While it (almost) makes sense for cellphone memory, automated backups to SD cards (why is a backup app not a standard part of PalmOS, PalmSource? Not "Zen" enough? Hello?), Sony's solution to do an automatic RAM copy when the battery dies makes more sense - I just can't remember if that backup survives a hard reset.

Anyone serious about their data would be much better served spending $50 to get a small ($20) USB Flash Drive (no proprietary cable needed!) + small ($20) SD card + Palm backup app like Mike Waldron's ($10) BackupMan http://www.bitsnbolts.com/backupman.html



******************************************************************
Sony CLIE UX100: 128 MB real RAM, OLED screen. All the PDA anyone really ever wanted.

RE: NAND Flash is A BAD THING
just_little_me @ 11/8/2004 6:41:32 PM #
I'm just glad I'm not you... I like my T5 very much. Are you sure you don't work for Sony?


JLM.

RE: NAND Flash is A BAD THING
CNerd2025 @ 11/8/2004 7:41:45 PM #
I guess you cannot speak for everyone, because I HAVE had my device lose data due to loss of power. It was a real pain, too. I was on vacation, and the charger that I was using broke, and then the battery ran down. Had devices with NAND memory been available, that wouldn't have happened. I personally like the fact it has such a large storage unit and that the storage is more like a hard drive. Plus, since there are no moving parts, the chances of it crashing are from slim to none. You should perhaps take a look at it as far as a "cost-cutting" measure from both sides. We, the users, don't have to spend as much to buy SD or MMC cards, and they, palmOne, doesn't have to spend as much to produce memory. It's win-win.

"Never walk into a place you cannot run out of." --Richard Williams
RE: NAND Flash is A BAD THING
The_Voice_of_Reason @ 11/8/2004 8:48:26 PM #
It's win-win

Nope. It's just win - for Palm. Palm appears to be charging an extra $50 - $100 for this "feature". For $50 you could get a much bigger SD card - and never lose your backed up data in case of a hard reset.
Palm just got greedy and is trying to charge premium prices for a feature that really costs them peanuts to implement. I guess that's how things work in the cynical new "Palm Economy"...



******************************************************************
Sony CLIE UX100: 128 MB real RAM, OLED screen. All the PDA anyone really ever wanted.

RE: NAND Flash is A BAD THING
LiveFaith @ 11/9/2004 9:31:42 AM #
I'm no T5 cheerleader, but you asked the question!
Last year I took my M505 for an important weeklong trip to South America. I had everything loaded for the trip. While sitting on it in my back pocket from Newark to Bogota, I was apparently sitting on a button with backlight on etc. Long story short ... I was not perpared to deal with the lost apps and data in memory, even tho I skimped by.
Never happens otherwise, but I'll never forget that debacle.

Pat Horne; www.churchoflivingfaith.com
RE: NAND Flash is A BAD THING
The_Voice_of_Reason @ 11/9/2004 10:37:25 AM #
I was not perpared to deal with the lost apps and data in memory, even tho I skimped by.
Never happens otherwise, but I'll never forget that debacle.

A $20 SD card and a $10 copy of BackupMan would be a better solution for most people. That way you never lose the data - even if the Palm has a hard reset.



******************************************************************
Sony CLIE UX100: 128 MB real RAM, OLED screen. All the PDA anyone really ever wanted.

RE: NAND Flash is A BAD THING
statik @ 11/9/2004 10:44:39 AM #
I've had it happen to me once or twice to. Playing around with debug settings and then forgetting to turn them off will do that to you :)

From supporting various Palm, Sony and Handspring devices over the years I can say that it happens quite often. On average I used to get about 2-3 reported cases per month at my old work where people lost everything because their batteries died.

NAND flash is definitely a step in the right direction.

RE: NAND Flash is A BAD THING
hkklife @ 11/9/2004 11:19:57 AM #
Palm's counting on the fact that the teeming masses have no idea how much SD prices have plummeted. At the local Costco, I can snag a 512mb Sandisk for $55. Online, you can get a 512mb card for $10-15 less than that. What's P1 still charging for their self-branded 128mb card?

So, T3@ $350 + ~$50 for a 512mb SD =$400 + tax. You get a cradle, voice recorder etc too in that bundle.

OR

you can spend $450 for a T5 & cradle and have LESS storage space and an inherently buggier, less elegant handheld.

I paid $300 for my last T3. I then snagged a 512mb SD and a 256mb USB flash drive. I have far, far greater functionality than a T5 with oodles more storage space. And I find a keychain drive easier to carry than the T5's proprietary USB cable.

(For what it's worth, drive mode would at least make partial sense on a mini-USB equipped Palm that had a large SD card inserted into it).

RE: NAND Flash is A BAD THING
mikecane @ 11/9/2004 11:36:33 AM #
>>>why is a backup app not a standard part of PalmOS, PalmSource?

Amen! I just had to hard reset on Friday and could not get back to the PC to restore for two days...

NAND Flash can be a Good Thing
hotpaw4 @ 11/9/2004 3:49:33 PM #
For one reason: standby battery life. People don't want their portable devices to go dead while sitting completely idle. And refreshing large amounts of DRAM eats power even when the handheld is off. The T|E2 virtual memory system gets by with much less real DRAM; and the NAND flash consumes no power when idle.
RE: NAND Flash is A BAD THING
danmas0n @ 11/11/2004 4:18:49 PM #
We've been having a little discussion about this over in the developer forums. Here's what I've been able to figure out:

-NAND flash is relatively cheap. NOR flash is more expensive, but supports XIP (execute-in-place), which is what Palms have historically always done. So leaping to supporting NAND flash opens the door to potentially cheaper, larger storage under the covers. This is a good thing. If you look at how much memory is in the T5, they aren't ridiculously overcharging you for the memory you get, if it were NOR flash, the price would be much higher.

-HOWEVER, the way this is implemented in the T5 and the Treo 650 is more than a little bogus. The explanation in the link is mostly correct, if a little incomplete; there's a 10 meg DB cache on the T5 which gets filled whenever you run an application or open a database (they're functionally the same thing). It is equivalent to loading an app from your hard drive into RAM, with a similar performance penalty. But this completely changes the way you write some applications, including the one I'm currently working on. Just _opening_ a DB causes it to be loaded into the cache, whereas with older Palms no movement takes place whatsoever. For any apps with largish DBs, this creates a perceptible slowdown, which we Palm people aren't used to. Worse, there is a significant weirdness with DBs that have very small records; the OS apparently pads small records to make them easier to manipulate in chunks in and out of NAND flash. This is not cool at all; in one bad case, one of my DBs ballooned from 2 meg to 14 meg because of this padding. And there's nothing you can do about it, as far as I can tell.

So in short, it all depends on the kinds of apps you want to run, but this is a pretty significant change, and is not a universally good thing. Think of it as bolting an SD card onto your Palm under the covers, and forcing your main storage to mirror it. Your storage gets cheaper and bigger, but slower too.

RE: NAND Flash is A BAD THING
danmas0n @ 11/11/2004 4:18:49 PM #
We've been having a little discussion about this over in the developer forums. Here's what I've been able to figure out:

-NAND flash is relatively cheap. NOR flash is more expensive, but supports XIP (execute-in-place), which is what Palms have historically always done. So leaping to supporting NAND flash opens the door to potentially cheaper, larger storage under the covers. This is a good thing. If you look at how much memory is in the T5, they aren't ridiculously overcharging you for the memory you get, if it were NOR flash, the price would be much higher.

-HOWEVER, the way this is implemented in the T5 and the Treo 650 is more than a little bogus. The explanation in the link is mostly correct, if a little incomplete; there's a 10 meg DB cache on the T5 which gets filled whenever you run an application or open a database (they're functionally the same thing). It is equivalent to loading an app from your hard drive into RAM, with a similar performance penalty. But this completely changes the way you write some applications, including the one I'm currently working on. Just _opening_ a DB causes it to be loaded into the cache, whereas with older Palms no movement takes place whatsoever. For any apps with largish DBs, this creates a perceptible slowdown, which we Palm people aren't used to. Worse, there is a significant weirdness with DBs that have very small records; the OS apparently pads small records to make them easier to manipulate in chunks in and out of NAND flash. This is not cool at all; in one bad case, one of my DBs ballooned from 2 meg to 14 meg because of this padding. And there's nothing you can do about it, as far as I can tell.

So in short, it all depends on the kinds of apps you want to run, but this is a pretty significant change, and is not a universally good thing. Think of it as bolting an SD card onto your Palm under the covers, and forcing your main storage to mirror it. Your storage gets cheaper and bigger, but slower too.

RE: NAND Flash is A BAD THING
Strider_mt2k @ 11/11/2004 5:43:06 PM #
Thank you for an excellent explanation!

While I'm not involved (I'm a Clie owner, we got our own troubles ;) )it's interesting to sit on the sidelines and watch.

RE: NAND Flash is A BAD THING
The_Voice_of_Reason @ 11/11/2004 10:16:42 PM #
-HOWEVER, the way this is implemented in the T5 and the Treo 650 is more than a little bogus... For any apps with largish DBs, this creates a perceptible slowdown, which we Palm people aren't used to. Worse, there is a significant weirdness with DBs that have very small records; the OS apparently pads small records to make them easier to manipulate in chunks in and out of NAND flash. This is not cool at all; in one bad case, one of my DBs ballooned from 2 meg to 14 meg because of this padding. And there's nothing you can do about it, as far as I can tell.

So in short, it all depends on the kinds of apps you want to run, but this is a pretty significant change, and is not a universally good thing... Your storage gets cheaper and bigger, but slower too.

I think NAND Flash is a big step backward and provides essentially no significant advantages in these days of ultra-cheap SD cards. When you add the fact that Palm decided to gouge consumers for the "privilege" of having an internal, reset-vulnerable 160 MB SD card, (they're using the T"5" memory as a major reason for it being "worth" $400), any arguments in favor of NAND Flash seem rather weak. In my opinion, Tapwave's solution of 128 MB of "real" RAM + dual SD is vastly superior use of memory. And money. It's a shame to see functionality again limited by the desire to pinch pennies.



******************************************************************
Sony CLIE UX100: 128 MB real RAM, OLED screen. All the PDA anyone really ever wanted.

RE: NAND Flash is A BAD THING
ackmondual @ 11/12/2004 2:53:42 AM #
I can see how the proposed "normal PDA" + big SD card would be $$ better saved for most ppl, but some apps for Palm can only be run from internal RAM or require 'x' amount of free internal RAM (NOT SD card space) to be run. These apps are rare. For the first, apps like powerRun and Zlauncher can allow apps to run off cards w/o any problems, but what of the latter? Having a HUGE SD card won't make a difference. Wouldn't having more program/flash mem be helpful for those such apps?
RE: NAND Flash is A BAD THING
The_Voice_of_Reason @ 11/23/2004 2:11:18 AM #
Suddenly, people are finally paying attention. Maybe now everyone will see why Palm's new memory system is a disaster.

Give us regular RAM + two SD slots, Palm. Enough with the gimmicks. It's time for Palm to regroup and focus all its dwindling resources on fixing the flaws in the current lineup.


http://www.palminfocenter.com/view_story.asp?ID=7308



******************************************************************
Sony CLIE UX100: 128 MB real RAM, OLED screen. All the PDA anyone really ever wanted.

RE: NAND Flash is A BAD THING
The_Voice_of_Reason @ 11/25/2004 11:34:31 AM #
Smart, Palm. Kill off the sales of your two most profitable devices (Treo 650 + Tungsten 5) by crippling them with NAND Flash.


http://www.palminfocenter.com/view_story.asp?ID=7327

It's amazing that something that was obvious to hundreds of people with a little experience with PalmOS somehow was "missed" by Palm's beta testers. Somehow I don't think it's possible they missed anything. Palm knows exactly how screwed up its devices are. They just hoped not mant people would notice and that they could get away with selling it "as is".

The US auto industry used to think like that. (Remember the Cadillac Cimaroon?). And look what happened to the domestic car industry in the past 20 years. But the difference is no one's going to bail out Palm when they start to go under.



******************************************************************
Sony CLIE UX100: 128 MB real RAM, OLED screen. All the PDA anyone really ever wanted.

Molasses RAM

Gekko @ 11/8/2004 8:07:00 PM #

In general, if you are dealing with small sets of data, the 10 megabyte cache should be plenty of space to make these devices run at full speed. However, if you're dealing with data larger than 10 megabytes, things might be slow, or not work at all.



AcidImage Conspiracy Theory

LiveFaith @ 11/9/2004 9:45:06 AM #
Did anyone notice that the 320x480 screenshot contained digital camera images for a "TREO". Are they testing a Treo with HVGA? Is this the revered Treo 800g?
http://www.churchoflivingfaith.com/images/treo800g.jpg

Pat Horne; www.churchoflivingfaith.com
RE: AcidImage Conspiracy Theory
alanh @ 11/9/2004 10:39:35 AM #
I'd think it much more likely that the file list/tree displayed is for that of the 256MB SD card, not the "built-in" or "Internal" NVFS sections. Took SD card, put it in Treo, took pictures, moved it to T5 for screenshot....

-alan
Top

Account

Register Register | Login Log in
user:
pass: