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

NAND Flash Module for Propeller usage?

2»

Comments

  • WBA ConsultingWBA Consulting Posts: 2,935
    edited 2010-05-19 19:52
    I have no problem with mctrivia's layout being public, and I'll leave it up to him to post here or send to you.

    My desire is to end up with code objects that work to help make a completed product marketable. After discussing this yesterday, we have somewhat decided that the long term route will be to develop a complete propeller based board solution. He actually already did a layout similar to mctrivia's to help him brainstorm and kept thinking it would be better to make a propeller based board that could completely utilize NAND and provide a full solution at the same time. A board similar to the GGPPSD with locations underneath for up to four NAND chips has been discussed.

    jazzed/mctriva, I am sending you both messages on some chips

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    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-19 21:44
    ok here is the gerbers.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lots of propeller based products in stock at affordable prices.
  • jazzedjazzed Posts: 11,803
    edited 2010-05-20 06:55
    mctrivia said...
    ok here is the gerbers.
    Thanks.

    My order for 5 boards is submitted and accepted for production. I expect delivery June 4th.
    I'll be free before then to work on a driver. Of course I'll need some chips to start testing.

    Cheers.
    --Steve

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    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-06-02 20:33
    mctrivia said...
    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.
    I see these are card edge pins and not Propeller pin P assignments. So P8-11 are not usable for TV DAC.
    Thanks for the gerbers anyway.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Propeller Pages: Propeller JVM
  • mctriviamctrivia Posts: 3,772
    edited 2010-06-02 20:36
    pins are lined up for gadget gangster platform not prop chip. p8-11 are available for dac.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lots of propeller based products in stock at affordable prices.
  • jazzedjazzed Posts: 11,803
    edited 2010-06-02 20:39
    no. look at your gerbers again.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Propeller Pages: Propeller JVM
  • mctriviamctrivia Posts: 3,772
    edited 2010-06-02 20:47
    Strange it reverted back to before I shifted the pins over 1. Not sure why that happened. Hope you did not get a large order of boards made.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lots of propeller based products in stock at affordable prices.
  • jazzedjazzed Posts: 11,803
    edited 2010-06-02 20:50
    I know better than to order more than 5 first protos of anything by anyone self included [noparse]:)[/noparse]

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Propeller Pages: Propeller JVM
  • mctriviamctrivia Posts: 3,772
    edited 2010-06-02 20:58
    One of the advantages to living in the us. Costs me more in shipping and custums to order 5 proto from us then to pay for 100 boards from China

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lots of propeller based products in stock at affordable prices.
  • jazzedjazzed Posts: 11,803
    edited 2010-06-02 21:02
    mctrivia said...
    One of the advantages to living in the us. Costs me more in shipping and custums to order 5 proto from us then to pay for 100 boards from China
    That is simply amazing. No Canadian FABs? What is your typical turn around time?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Propeller Pages: Propeller JVM
  • mctriviamctrivia Posts: 3,772
    edited 2010-06-02 21:34
    There is 1 in calgary and I used them when I lived there. They will do 6 for about 70% of the price in 2 days. Shipping though makes up 20% so now that I can't pick up I might as well wait 10 days including shipping time vs the 4 to 5 from calgary.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lots of propeller based products in stock at affordable prices.
  • jazzedjazzed Posts: 11,803
    edited 2010-06-08 17:17
    So, I was a little shocked (after misreading the specification) that it can take up to 15us for a page
    to be transferred from the NAND array to the Flash read buffer. This is a little disappointing, but
    there is a consolation prize.

    It seems we can use Ready/Busy* bit on P8 for loading time advantage. When Busy* is asserted
    this makes it easy to detect an end of buffer transfer condition (data bits go tri-state at Busy*
    time and must be pulled down). In other words P[noparse][[/noparse]0:8] will read at least $100 when getting data
    and 0 when transfer is complete.

    So the per byte HUB transfer loop can go from this:

    '' direct REN manipulation ... any length 2.5MB/s burst
    :loop   andn    outa,   renmask ' set read enable
            nop                     ' allow setup if clkfreq > 80MHz
            mov     data,   ina
            wrbyte  data,   tp      ' do simple read first
            or      outa,   renmask ' toggle read enable low/high to get data
            cmp     tp,     bp wz
    if_ne   djnz    tp,     #:loop
    
    



    To this loop for block reads:

    '' Gated REN clock manipulation with rdy on Prop P8 ... 5MB/s burst
    '' Requires pulldown on data lines and min 256 byte read
    '' Relies on fact that data goes tri-state when rdy is busy
    ''
            mov     data,   #0
            mov     ctra,   _ctra
            mov     frqa,   _frqa
            mov     phsa,   _phsa
            andn    outa,   renmask ' enable read strobe from counter
    :loop   movs    data,   ina wz  ' ren should be solid low by sample time
            wrbyte  data,   tp      
    if_nz   djnz    tp,     #:loop
    
            or      outa,   renmask ' disable read strobe
    
    



    Throughput* Busy Time (us)  Byte Hub Time (ns)  Bytes/Load   Byte Load Time(ns)   Total Time (ns)
    1.7MB/s     8               200                 256          51200                59200
    1.5MB/s     15              200                 256          51200                66200
    
    


    Throughput does not account for address setup cycle time which is near 1us. Sequential 528
    block reads only need one address setup cycle. Typical throughput should be > 1.5MB/s.

    Other read strategies such as the one I co-authored with Phil and Lonesock can use long hub
    data transfers on burst reads, but the end of transfer has to be controlled by a loop such as
    in the first code fragment and the symmetry for the read strobe clock is lost.

    What good is this?
    • The burst size is compatible with VMCOG which allows embedded flash program fetch/execute.
    • The pin-out can coexist with a byte wide external memory or 2nd Propeller communications.
    • With a file-system, this would be N times faster than SD card [noparse]:)[/noparse] with wear leveling.
    What products does this enable?
    • Embedded Flash Propeller based Javelin
    • Embedded Flash + External RAM Propeller Platform and others
    • Embedded Flash + 2nd Propeller (for rich Video and other peripherals)
    • Embedded Flash + LCD for rich and textured GUI graphics

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Propeller Pages: Propeller JVM

    Post Edited (jazzed) : 6/8/2010 5:59:20 PM GMT
  • MacTuxLinMacTuxLin Posts: 821
    edited 2010-11-07 00:28
    Hi,

    May I know if this driver is being posted? I could not find it in OBEX either.

    Thanks.
  • jazzedjazzed Posts: 11,803
    edited 2010-11-07 01:16
    MacTuxLin wrote: »
    May I know if this driver is being posted? I could not find it in OBEX either.
    I have code to read the flash, but not to write it. I stopped working on the driver after realizing the access startup time was 15us. You're probably better off using SDCARD if possible.
  • MacTuxLinMacTuxLin Posts: 821
    edited 2010-11-07 01:57
    Thanks Jazzed.

    I am currently using Kye's SD2.0 driver. Though the read speed is very good but the opening of file is slow as I'm sharing this SD object with multiple objects trying to read/write to uSD card. Tried running a 2nd SD object but ran out of Cogs for other objects. :(
Sign In or Register to comment.