[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [usb] USB pipes




--- Rudolf Usselmann <rudi@asics.ws> wrote:
> I will use a local memory buffer, say 4-16K (user selectable).
> in that local memory, sw can set up a linked list of end points

Rudi, we've already discussing this in private but maybe someone can
comment it. So I'm sending it to the list.

I would suggest that this memory is not local to USB core but attached
to SOC bus. This way there are several advantages:
- same memory can be shared among several peripherals (Ethernet MACs,
ATM, TDM/HDLC etc)
- better defragmentation if shared
- you don't have to worry about memory libraries in your core (better
portability of the core to different technology)
- SW asigns chunks of memory to various peripherals as required by
application (same ASIC for two different applications)
- some of the memory can be used for low latency CPU routines
- for low performance/low cost SOCs one can use external memory instead
of on-chip memory (or it can forward data streams to remote devices via
PCI bridge or maybe through DMA supporting peripherals)
- one can attach "communications" processor to SOC bus to manage
descriptors and data streams in shared memory (i.e. Motorola's
PowerQUICC approach)

regards,
Damjan


__________________________________________________
Do You Yahoo!?
Yahoo! Photos - Share your holiday photos online!
http://photos.yahoo.com/