LOGIN   :::   RECOVER PASS   :::   GET ACCOUNT    
Browse
  • Projects
  • Code (CVS)
  • Forums
  • News
  • Articles
  • Polls
  •  
    OpenCores
  • FAQ
  • CVS HowTo
  • Mission
  • Media
  • Tools
  • Advertise
  • Mirrors
  • Logos
  • Contact us
  • Job Opportunity
  •  
    Tools
  • Search
      
  • Download Cores (CVSGet)
  •  
    More
  • Wishbone
  • Perlilog
  • EDA tools
  • OpenTech CD
  •  
    Navigation: All forums > Pci > Message List > Message Post

    Message

    Reply | Reply all
    Date Prev | Date Next | Thread Prev | Thread Next Date Index | Thread Index

    From: Miha Dolenc<mihad@o...>
    Date: Tue Apr 24 14:12:55 CEST 2007
    Subject: [pci] flushing of un-read data
    Top
    Hi,

    see below,

    Regards,
    Miha Dolenc

    ----- Original Message -----
    From: <arora.pra@g...>
    To: <pci@o...>
    Sent: Tuesday, April 24, 2007 4:11 AM
    Subject: [pci] flushing of un-read data


    > Hi,
    >
    > The PCI IP Core Spec (Rev 1.2) mentions that 'any data not read
    > from the PCIR_FIFO is flushed immediately after the read
    > transaction is finished...' (pg. 34).
    >
    > We have a data FIFO that will be read as a target over PCI. Each
    > read leads to a pop of the data FIFO. If the PCIR_FIFO has
    > prefetched data from the data fifo and get flushed, this data is lost.
    > The FIFO state changes on each pop so there's no way to recover
    > the lost data.
    >
    > A couple of questions:
    > 1) Is there a mode where the prefetched data is not flushed on
    > completion of the PCI transaction? Some commercial cores seem to
    > support such a mode for FIFO-like applications.
    >
    Prefetchable address space means that reads don't have side effects,
    which is not the case with FIFOs.

    > 2) Does the core indicate how many prefetched words were
    > flushed? Given this information, it might be possible to implement a
    > rollback mechanism externally.
    >
    No such mechanism is implemented.

    You could play arround with small RAM in front of FIFO acting
    as "rollback" buffer or capturing last address of previous transfer
    comparing it to first address of new transfer to determine how
    many words were flushed. Just my two cents on the issue.

    > Thanks,
    > Prashant Arora
    > _______________________________________________
    > http://www.opencores.org/mailman/listinfo/pci

    ReferenceAuthor
    [pci] flushing of un-read dataArora pra

     
    Copyright (c) 1999 OPENCORES.ORG. All rights reserved.