Has Anyone Ever Used SanDisk iNAND?

Go To Last Post
16 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

SanDisk is making something called "iNAND" which appears essentially be an SD Card that's soldered down to the PCB. Here's a link:

http://sandisk.com/products/embe...

One of my projects would be significantly easier to manage if I could get my hands on this, but I can't find it from any of the major distributors. I'm thinking that most (all?) of the production is locked up in smartphone & tablet manufacturing, but it's hard to tell. I've seen mentions that it's included in one of the nVidia Tegra reference designs, but I can't seem to find a copy of that.

Before everyone says "just use an SD card!" let me say that I am, and there's a few problems I've run into that would be negated by just soldering the flash memory down on the board. I can expand on these problems if people would like, but it's not really on topic for this thread.

I suspect that I'm too small to get my hands on any of these chips, but it's worth asking. They're pretty neat, even if the functionality can be easily replicated by existing parts.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I'm fairly sure that's a product meant only for High Volume OEMs/ODMs.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Yeah, that's what I was afraid of...

Oh well, I've got a working option for now, these would just be much nicer to work with.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

An alternative is eMMC; may still have the low quantity availability problem.
If the MCU has USB OTG then there's Embedded USB (socket at one end and a hole at the other end; Wintec Embedded USB, Micron Embedded USB).
For orders of magnitude less storage there's F-RAM or MRAM.

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
I can expand on these problems if people would like

I'd like an elaboration. Contact problems?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

jayjay1974 wrote:
I'd like an elaboration. Contact problems?

Basically, I've got a USB key form factor, which means not a lot of space to work with. In order to keep costs down, I'm using COTS enclosures versus making my own, which creates even more space constraints. I've only found one, non-locking, micro SD socket that fits in my chosen enclosure.

Fortunately, due to some design flaws/awesomeness (aka, I misread the datasheet) I've got a few LEDs that are just tall enough to mostly hold the card in the socket, but it's not a sure thing. I'm fairly confident that it'll work, but I wish I had a locking socket. Unfortunately, they're simply too big to fit in my enclosure.

gchapman wrote:
An alternative is eMMC; may still have the low quantity availability problem.
If the MCU has USB OTG then there's Embedded USB (socket at one end and a hole at the other end; Wintec Embedded USB, Micron Embedded USB).
For orders of magnitude less storage there's F-RAM or MRAM.

Those are neat, but like I mentioned above, I've got pretty tight constraints on size. Those embedded USB drives might have some other good uses though...

Also, regarding capacity, I need >512 MB of flash, and I have no interest in writing my own flash translation layer to take care of write endurance issues, seeing as they come for free (sort of) in SD cards.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

iwoloschin wrote:
I've got a few LEDs that are just tall enough to mostly hold the card in the socket, but it's not a sure thing. I'm fairly confident that it'll work, but I wish I had a locking socket. Unfortunately, they're simply too big to fit in my enclosure.

Why can't you just epoxy the SD card into the socket?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I guess you figure it would be impossible to solder a microSD directly to a PCB.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I've used iNAND, but availability has become scarce. eMMC is pretty much the same thing, and appears to be just as scarce. Have you considered Atmels data flash?

Writing code is like having sex.... make one little mistake, and you're supporting it for life.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
epoxy
or hot glue.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

iwoloschin wrote:
Also, regarding capacity, I need >512 MB of flash, and I have no interest in writing my own flash translation layer to take care of write endurance issues, seeing as they come for free (sort of) in SD cards.
The Contiki RTOS has the Coffee file system; it has wear leveling. ELF is another one.
Ref.
About Contiki
Coffee Filesystem Guide
ELF: An Efficient Log-Structured Flash File System For Micro Sensor Nodes

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I can hot glue the cards in, that's pretty easy, but I was hoping to be able to find iNAND/eMMC or something that could be soldered down, even if it costs a bit more, I figured if I could save some labor costs it could wind up being worthwhile.

I briefly looked into using an RTOS, but my application is fairly simple and I decided to keep it as easy as possible, since it was my first adventure with the AVR32 (UC3A3 series) family. It's an option for a future upgrade I suppose, but not particularly high up on my list of things to do.

As far as soldering a micro SD card right onto the PCB...I suppose it could be done, but I figured my fab/assembly guys would yell at me for trying that.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Oh, and I should mention, due to the nature of the project, I need the flash memory to be FAT16/32 (depending on size). Depending on the state, the host computer (USB) is either doing raw read/write access (MCU is simply passing data from the SD card to USB), or the MCU is doing raw read access and passing "cooked" data back to the computer via USB. The host computer might be any "common" operating system (Windows, Mac OS X, various Linux flavors, etc), and the only "common" file system I've found to work reliably with all OSes (and my MCU) is FAT.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

iwoloschin wrote:
... and the only "common" file system I've found to work reliably with all OSes (and my MCU) is FAT.
Yea it's easy especially if the SD card has to be moved between a PC and the MCU. But, there is another way. I worked on one embedded system with a RTOS that had a file system (but not MS FAT) on flash media; our development machines were Windows PCs. To make the two meet, wrote a FTP server for the embedded machine and used the Windows FTP client. With UC3A3, ASF, and RNDIS for Windows (maybe), you might be able to do something similar though USB MSC is easier.
USB Media Transfer Protocol (MTP) could be an alternative.

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

gchapman wrote:
Yea it's easy especially if the SD card has to be moved between a PC and the MCU. But, there is another way. I worked on one embedded system with a RTOS that had a file system (but not MS FAT) on flash media; our development machines were Windows PCs. To make the two meet, wrote a FTP server for the embedded machine and used the Windows FTP client. With UC3A3, ASF, and RNDIS for Windows (maybe), you might be able to do something similar though USB MSC is easier.
USB Media Transfer Protocol (MTP) could be an alternative.

Both ideas are neat, but neither can really compare to just using USB MSC. USB MSC "just works" with any modern operating system that I need to support (MTP doesn't "just work" though it isn't too bad now), there's no jumping through hoops to get it working.

That being said, MTP offers some really neat options, but with existing FAT code, it didn't make sense to explore.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

iwoloschin wrote:
... and I have no interest in writing my own flash translation layer to take care of write endurance issues, seeing as they come for free (sort of) in SD cards.
UFFS (Ultra low cost Flash File System) has wear leveling, ECC, and bad block handling; a possibility if you're willing to move away from FAT. UFFS uses some RAM (153KB for 512MB NAND flash).

"Dare to be naïve." - Buckminster Fuller