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
  • Find Resources
  • Job Opportunity
  •  
    Tools
  • Search
      
  • Download Cores (CVSGet)
  •  
    More
  • Wishbone
  • Perlilog
  • EDA tools
  • OpenTech CD
  •  
    Navigation: All forums > Usb > Message List > Message Post

    Message

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

    From: Rudolf Usselmann <rudi@a...>
    Date: Thu, 25 Jul 2002 09:57:40 +0700
    Subject: Re: [usb] dma
    Top

    On Thursday 25 July 2002 12:07 pm, meizx@i... wrote:
    > Thanks,rudi,
    > I am still not so clear about the second problem.For example,in output
    > operation,if the buffer1 is full,the usb core will assert an interrupt to
    > the usb function controller.Then the function controller will download
    > the data from buffer1.As you have said,only 1 buffer,buffer0,is used in
    > DMA mode,how the function deal with buffer1?
    > Regards
    > MeiZX
    
    Lets assume you are using an external DMA (like WB_DMA that
    I wrote).
    
    Once everything is setup, you should not have the USB function
    send you interrupts when the buffers are full/empty. It should only
    send you interrupts when errors occur.
    
    The external DMA will interact with the USB funct. core through
    request/ack lines.
    
    The whole idea is to make data flow completely smooth and
    transparent.
    
    At the beginning during initialization phase the function CPU must
    interact with the USB bus to follow propers setup procedure. The
    control endpoint is never DMA based and must send interrupts to
    the CPU. For CTRL endpoints I use buffer0 for OUT transfers and
    buffer1 for IN transfers.
    
    After setup is completed, there should be no moper traffic from the
    CTRL endpoint (or very very little). So you should leave interrupts
    enabled for CTRL endpoint.
    
    
    Regards,
    rudi
    
    
    
    
    

    ReferenceAuthor
    Re: [usb] dmaMeizx

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