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: mike kelly <mike@c...>
    Date: Sat, 30 Dec 2000 21:17:52 -0500
    Subject: Re: [usb] USB pipes
    Top

    Rudolf,
    
    I don't see myself as a USB expert, but I have developed a number of
    systems using USB, and in each case the number of endpoints was very
    critical to the software folks.  Since each endpoint might be controlled
    by a single thread or task, sharing endpoints creates a fair amount of
    overhead to allow the passing of semaphores, handling interrupts, etc. 
    Obviously more is better, but as you say, there are finite limits in
    hardware.  My sense is that for embedded use (my area) 4 endpoints 
    plus 1 control endpoint is a minimum amount.  8 may be overkill, but
    if it is a HW compile time option than it seems like a good upper 
    limit.
    
    One other point, it is important to allow the endpoints to be 
    programmable by software for Bulk or Isochronous transfers.  The need
    to handle both types can change on the fly during use. 
    
    Michael Kelly
    
    Rudolf Usselmann wrote:
    > 
    > Question about the USB function core that I'm developing:
    > 
    > Should I make endpoints individually accessible or just create
    > one pipe for all data and one pipe for control ?
    > 
    > That would mean that the software would have to do frame assembly.
    > I would provide with each packet some sort of control information,
    > which software could use for assembly.
    > 
    > Or, I can create a separate pipe(in hardware) for each endpoint and
    > do frame assembly in hardware. That would occupy a lot more resources
    > and the number of endpoints would be limited in hardware. I could
    > setup lets say 8 endpoints, and make it a compile option as to how many
    > are really used ...
    > 
    > Any comments/suggestions ?
    > 
    > Please follow up to: mailto:usb@o...
    > 
    > Thanks,
    > rudi
    
    -- 
    ****************************************************************
    * Michael J. Kelly,  Vice-President, Engineering and Marketing *
    * Cogent Computer Systems, Inc.              tel: 401-295-6505 *
    * 1130 Ten Rod Road, Suite A-201             fax: 401-295-6507 *
    * North Kingstown, RI 02852               web: www.cogcomp.com *
    ****************************************************************
    * CMA: Universal Target Platform for 32/64-Bit Microprocessors *
    ****************************************************************
    
    

    ReferenceAuthor
    [usb] USB pipesRudolf Usselmann

    Follow upAuthor
    Re: [usb] USB pipesRudolf Usselmann

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