3 Replies Latest reply on Sep 22, 2012 2:37 AM by rama.sai.krishna.vakkantula

    GPIF Latency !!!!

    christophe.seyler

      I'm working on an application to interface a NAND flash through GPIF. I've made several state machines (using GPIF designer) to model all needed cycles (Command phase, address phase, data-in and data-out phase). To create an access, i switch between these states.
      All data i need to put on data bus go through a DMA channel (socket). I've created both, one for outgoing data, another for incoming.

      Typically, for outgoing data, i just call the GetBuffer, fill the received buffer and Commit it. For incoming data, i call the GetBuffer, process the data and discard the buffer

      All wok fine except:
      - For incoming, the GetBuffer function returns me sometime a buffer with a count of 0 which i need to discard to avoid to stuck my state machine (waiting for a DMA_RDY_TH1 condition). I use a retry as workaround.
      - for outgoing transfer, the commit operation take a lot of time ... 2.5MS to xfer 8192 bytes !!!!. Idem for the incoming data.

         

      Anyone already have this problem of latency through GPIF ?