Shop OBEX P1 Docs P2 Docs Learn Events
NAND Flash Module for Propeller usage? — Parallax Forums

NAND Flash Module for Propeller usage?

WBA ConsultingWBA Consulting Posts: 2,935
edited 2010-11-07 01:57 in Propeller 1
What would be the interest/challenge/feasibility/desire of a 32MB NAND Flash Module for the Propeller? I may have access to a large quantity of Samsung 32MB chips and want to know if I should pursue a product design to push to market.

thanks for any input!

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Andrew Williams
WBA Consulting
WBA-TH1M Sensirion SHT11 Module
My Prop projects: Reverse Geo-Cache Box, Custom Metronome, Micro Plunge Logger
«1

Comments

  • mctriviamctrivia Posts: 3,772
    edited 2010-05-15 01:53
    Cost of parts and assembly will probably be biggest hurtle. Depends how many people are interested.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lots of propeller based products in stock at affordable prices.
  • WBA ConsultingWBA Consulting Posts: 2,935
    edited 2010-05-15 20:43
    Fortunately, parts and assembly will not be a factor in my decision. My concern is design and marketability

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Andrew Williams
    WBA Consulting
    WBA-TH1M Sensirion SHT11 Module
    My Prop projects: Reverse Geo-Cache Box, Custom Metronome, Micro Plunge Logger
  • VaatiVaati Posts: 712
    edited 2010-05-15 20:56
    I would be very interested in a nand flash module... How did you get your hands on a bunch of them?? Also, what are the part numbers? They may work with something that has been brewing in the back of my mind...

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    MCU Projects·- my new site where I will be posting all projects, code, etc.

    Quit buying all those fixed voltage regulators, and·get an Adjustable Power Supply·for your projects!· Includes an LED testing terminal!

    SD Card Adapter·- Add extra memory to your next Propeller project with ease!
  • mctriviamctrivia Posts: 3,772
    edited 2010-05-15 21:03
    But they effect selling cost which effects marketability.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lots of propeller based products in stock at affordable prices.
  • mctriviamctrivia Posts: 3,772
    edited 2010-05-15 21:12
    Is that mega byte or bit?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lots of propeller based products in stock at affordable prices.
  • RsadeikaRsadeika Posts: 3,837
    edited 2010-05-15 21:31
    I guess I need to have some more information for the intended use of the flash module. Will it be an expansion of the 32KB of ram that is now available, or just a replacement of an SD card, or what? With some more information, and ballpark selling cost of the product, would be nice.

    Ray
  • mctriviamctrivia Posts: 3,772
    edited 2010-05-15 21:41
    I believe it is a parallel device which provided high speed large storage at a cost of many pins. 16 minimum.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lots of propeller based products in stock at affordable prices.
  • WBA ConsultingWBA Consulting Posts: 2,935
    edited 2010-05-17 05:13
    The NAND parts are leftover from a project that started back in 2005 and consumed about 50,000 of these flash chips. Anyone who has dealt with such a large project knows that you typically end up with some excess material; In this case, about 2,600. These particular NAND chips are one of the parts that isn't of use to any other projects my colleague has in the future. (it's really easy to re-purpose the rest of the parts from the project that have high leftover quantities as they are commonly used parts). Before he attempts to get rid of them, he asked me if they could be used in a module for any of the things I dabble in such as the Propeller. Hence, the start of this thread.

    I guess what I meant to say was that unless other expensive parts would be required for the module, price will be more than reasonable. For many common parts such as 10k pullups, 0.1uF caps, headers, etc, I have plenty already. Assembly cost for me will be near zero as I have access to all necessary equipment to build the modules properly on my personal time.

    The NANDs are 32 Mega Byte (so 256 Mega bit). Samsung K9F5608U0D-PCB0. TSOP 48 package.

    Since I am unaware of how to use NAND Flash memory with the propeller, I don't even know what the module should look like. Do I need just a basic circuit on a breakout style board? Should I partner it with a propeller that can handle all of the interfacing so it could be used with serial input data? Will that slow down it's speed to the point of making it less desirable? What would a NAND Flash module be used for mainly? Should I make a small datalogger module that has the 32MB onboard for data storage? Thso are some of the many questions floating in my head.......

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Andrew Williams
    WBA Consulting
    WBA-TH1M Sensirion SHT11 Module
    My Prop projects: Reverse Geo-Cache Box, Custom Metronome, Micro Plunge Logger
  • mctriviamctrivia Posts: 3,772
    edited 2010-05-17 05:34
    Strange looks like the device has internal latches. you could pretty much make a passive pcb that connected to 15 of the prop pins.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lots of propeller based products in stock at affordable prices.
  • kuronekokuroneko Posts: 3,623
    edited 2010-05-17 05:37
    WBA Consulting said...
    Since I am unaware of how to use NAND Flash memory with the propeller, I don't even know what the module should look like. Do I need just a basic circuit on a breakout style board? Should I partner it with a propeller that can handle all of the interfacing so it could be used with serial input data? Will that slow down it's speed to the point of making it less desirable? What would a NAND Flash module be used for mainly? Should I make a small datalogger module that has the 32MB onboard for data storage? Thso are some of the many questions floating in my head.......
    Maybe it helps to see them as a non-removable SmartMedia cards. Although potential detachability would be nice (unless it's meant as onboard non-volatile storage). IIRC you could get away with 8bit data, ALE, CLE and r/w (CS/CE hardwired).
  • mctriviamctrivia Posts: 3,772
    edited 2010-05-17 05:40
    I can see use for the chips themselves if the price is right and I need a large amount of non removable memmory. as a breakout though it would have no use to me except for initial prototype. sd cards will likely be almost as fast and a lot more convenient.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lots of propeller based products in stock at affordable prices.
  • jazzedjazzed Posts: 11,803
    edited 2010-05-17 07:25
    I've considered something like this before and could use something like this for Javelin Propeller, LMM C, or even ZOG.
    @Kuroneko it looks like minimum 13 I/O is required 8+CLE+ALE+RD+WR+BUSY (WP jumpered). Did I miss something?

    The Javelin Propeller can fetch byte-codes from EEPROM but the performance is horrible ... a byte-wide bus even with 3 address cycles would be more than 12x faster (38/6*EE clock throttling) without the burst mode read operation. I'm thinking of specific application, but a Stamp-like design would also work with 14 pins + serial/I2C provided for user IO.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    May the road rise to meet you; may the sun shine on your back.
    May you create something useful, even if it's just a hack.
  • kuronekokuroneko Posts: 3,623
    edited 2010-05-17 07:48
    jazzed said...
    @Kuroneko it looks like minimum 13 I/O is required 8+CLE+ALE+RD+WR+BUSY (WP jumpered). Did I miss something?
    That should be it. Provided you can leave the chip selected (it has been a while since I was appointed NAND driver writer, I wasn't quite sure whether r/w is combined or not, and being able to monitor the busy line made programming so much more convenient).

    Having said that, if you monitor the operation status by s/w (status read) you can omit the BUSY line.

    Post Edited (kuroneko) : 5/17/2010 7:57:20 AM GMT
  • jazzedjazzed Posts: 11,803
    edited 2010-05-17 08:05
    Seems they have a separate RD line for burst reads ... a good thing for LMM fans. Flash can be a PITA ... I've never programmed this one, but have done several AMD and Intel Flash drivers. Looks similar except for the invalid blocks business and some other details.

    Added: I think you're right on the BUSY bit for programming cycle .... There is some odd timing on the data sheet for that during read cycle though ... tWB is 100ns. Since the bit is only low for 15ns, the Prop would miss that anyway so a forced delay would be necessary there.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    May the road rise to meet you; may the sun shine on your back.
    May you create something useful, even if it's just a hack.

    Post Edited (jazzed) : 5/17/2010 8:18:26 AM GMT
  • heaterheater Posts: 3,370
    edited 2010-05-17 08:18
    Interesting idea. I just can't make it work in my mind yet.

    As a repository of code and constant data it can't really compete with SD cards which are simple, flexible, replaceable and use less pins. Except in the case where you really need the speed. Used in such a way you will probably want a FAT or other file system on it so the overheads of that may negate the speed gains somewhat anyway.

    As a medium to directly execute code from it does appeal. As Jazzed says one could execute LMM or Java byecodes from it for a significant speed gain. But then it occurs to me that any program that begins to occupy 32MB of space is likely to also want a large RAM space for data, stack etc etc. Attaching a big parallel bus RAM as in the TriBlade would be better. Also if you do really want to run code approaching 32MB in size perhaps it's time to look at an ARM or other solution.

    Zog and the ZPU architecture has a little problem with this idea at the moment. As the compiler and linker are set up it has no distinction between code and data space. So placing the ZPU byte codes in FLASH with stack and data in HUB RAM is problematic. I guess this could be fixed by someone who can handle GCC linker scripts. I've looked into this a few times over the years and always given up trying to understand them[noparse]:)[/noparse] Any volunteers?

    That leaves one application area that I can see. Data logging.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    For me, the past is not over yet.
  • jazzedjazzed Posts: 11,803
    edited 2010-05-17 08:36
    I was thinking less of the size and more of the speed. Of course tons of images could be stored on the flash chip for quick loading for a rich graphics interface with an external LCD (one of my goals regardless of the amount of non-volatile storage).

    Linker scripts I've done over the years aren't that hard or too big ... I won't be doing anything like that for a few weeks though.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    May the road rise to meet you; may the sun shine on your back.
    May you create something useful, even if it's just a hack.
  • jazzedjazzed Posts: 11,803
    edited 2010-05-17 16:35
    I'm a little concerned with the invalid block list on the device. I assume this is common on today's Flash ... I haven't looked. The old style Flash never shipped with bad blocks. The data sheet talks about remapping blocks which is reasonable but slower and would consume Propeller on-chip resources for reasonable lookup TLB speed. Blocks are about 16K each so a "square" TLB pointer list for half of memory would be 1024 longs. Doable, but a little painful. Even such indirect access beats FAT for addressing speed and convenience to me.

    This device is big enough to hold several code partitions for program update redundancy and would cost much less and be much smaller than an equivalent SRAM solution with reasonable limits. Just don't expect to ever run a Z80 emulation from it [noparse]:)[/noparse]

    @WBA, given the cold reception here, I guess a big question is whether or not such a Propeller/Flash configuration in an end product would be attractive to anyone beyond this forum. It's an interesting platform idea for me and probably others. If you build it, I'll buy it, port a few solutions to it, and try a few known sales channels.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    May the road rise to meet you; may the sun shine on your back.
    May you create something useful, even if it's just a hack.
  • WBA ConsultingWBA Consulting Posts: 2,935
    edited 2010-05-17 17:33
    jazzed, I don't consider the reception cold because I had no idea if it would have any reception at all. It is nice to see some dialog going on.

    So, would making a 0.6" spaced DIP adapter with a buss cap on each end be a good way to make the parts usable for people to try out?

    edit--I think it may have to be 0.7"

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Andrew Williams
    WBA Consulting
    WBA-TH1M Sensirion SHT11 Module
    My Prop projects: Reverse Geo-Cache Box, Custom Metronome, Micro Plunge Logger
  • mctriviamctrivia Posts: 3,772
    edited 2010-05-17 17:44
    I will send you gerbers.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lots of propeller based products in stock at affordable prices.
  • jazzedjazzed Posts: 11,803
    edited 2010-05-17 17:51
    WBA Consulting said...
    So, would making a 0.6" spaced DIP adapter with a buss cap on each end be a good way to make the parts usable for people to try out?
    Have a look at the Javelin Stamp design. That's close in concept to what I'm thinking (minus 5V regulator). IO details would be very different though ... have to give it more thought than I have time for just now.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    May the road rise to meet you; may the sun shine on your back.
    May you create something useful, even if it's just a hack.
  • mctriviamctrivia Posts: 3,772
    edited 2010-05-17 18:28
    anyone have a problem with this schematic?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lots of propeller based products in stock at affordable prices.
    778 x 568 - 33K
  • David BDavid B Posts: 592
    edited 2010-05-17 18:54
    If you wanted to do the fastest possible bytewide writes to the device, would it help to design the board for use with the MOVS command? In which case you might want to leave bit 9 unused as MOVS also writes to it.

    I'm not a propeller programming guru by any means, so if anyone has experience with other equally fast or better bytewide writing code, please correct me!
  • mctriviamctrivia Posts: 3,772
    edited 2010-05-17 18:57
    yes. will move P8+ up 1

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lots of propeller based products in stock at affordable prices.
  • mctriviamctrivia Posts: 3,772
    edited 2010-05-17 19:11
    This layout is compatible with gadget gangster platform. should be connected on side of P0-P15. Will hang over the prop.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lots of propeller based products in stock at affordable prices.
    189 x 496 - 8K
  • jazzedjazzed Posts: 11,803
    edited 2010-05-17 19:48
    For a stand-alone DIP module, the connections don't matter much. The module posted with GG compatability in mind should however just move all the control lines to P12-P15 so someone can use P8-P11 for TV if they don't care for P8's special abilities.

    A dedicated Propeller-Flash module, designed for speed (5MB/s external burst transfers) would definitely need P0-P7 connected and P8 free. There doesn't appear to be a signal to/from the Flash that makes sense to be connected to P8 as a higher priority over the user. On this module, I would put the control lines on P12-P15 so that P8-P11 and P16-P26 would all be available for user I/O. P27-P31 should also be connected for user IO even though their purpose is mostly reserved.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    May the road rise to meet you; may the sun shine on your back.
    May you create something useful, even if it's just a hack.

    Post Edited (jazzed) : 5/17/2010 8:22:16 PM GMT
  • mctriviamctrivia Posts: 3,772
    edited 2010-05-17 19:59
    Good ideam. Will move the control lines.
    We 12
    Re 13
    Ale 14
    Cle 15
    May swap cle and ale. I places headers so ce can be jumpered if hard coding not desired.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lots of propeller based products in stock at affordable prices.
  • jazzedjazzed Posts: 11,803
    edited 2010-05-17 20:19
    Sounds good to me ... the footprint can also be used on PPDB.

    Forget about the alternative GG compatible pinout I mentioned. Having to juggle I2C bus access however doable is less desirable.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    May the road rise to meet you; may the sun shine on your back.
    May you create something useful, even if it's just a hack.
  • jazzedjazzed Posts: 11,803
    edited 2010-05-18 14:22
    @WBA, Can I buy some 32MB parts from you? The smallest available device on DigiKey is 2GB at $12 each.
    If mctrivia posts gerbers for his latest layout I can get some fabs made for development/testing.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    May the road rise to meet you; may the sun shine on your back.
    May you create something useful, even if it's just a hack.
  • WBA ConsultingWBA Consulting Posts: 2,935
    edited 2010-05-18 15:36
    jazzed, yes, I will work on getting some parts for you and mctrivia to aid in this adventure. I'll send you a PM after I talk with my colleague this evening.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Andrew Williams
    WBA Consulting
    WBA-TH1M Sensirion SHT11 Module
    My Prop projects: Reverse Geo-Cache Box, Custom Metronome, Micro Plunge Logger
  • jazzedjazzed Posts: 11,803
    edited 2010-05-19 14:21
    WBA Consulting said...
    jazzed, yes, I will work on getting some parts for you and mctrivia to aid in this adventure. I'll send you a PM after I talk with my colleague this evening.
    @WBA, can you release the mctrivia gerbers to me or get a build started?
    I can make my own fab, but I don't have time to do that for another 2 weeks.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    May the road rise to meet you; may the sun shine on your back.
    May you create something useful, even if it's just a hack.
Sign In or Register to comment.