FPGA Central - World's 1st FPGA / CPLD Portal

FPGA Central

World's 1st FPGA Portal

 

Go Back   FPGA Groups > NewsGroup > DSP

DSP comp.dsp newsgroup, mailing list

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 03-10-2005, 05:28 PM
soos
Guest
 
Posts: n/a
Default Some DSP USB PC holy trinity issues....

Dear DSPers hello,


I have a very practical question regarding communication done with
USB2.0 (high speed) from a DSP to a pc.

The application involves data acquisition at the rate of 25Mbit/sec
preprocessing on the DSP and the Transmition of the raw data to a PC
using the mentioned USB.


Questions are:

1. What are the possible sizes of frames that can be sent via USB.

2. Suppose I have XP running of the PC. Since the USB buffer is checked
by polling (so I have heard) and not by interrupt (is so?). Doesn't
this mean that the access time from PC to this buffer is not constant
and depends on the number of processes and threads on the PC?

3. Is it possible to control this non real time nature of the XP? I
need the access to XP nice interfaces, Do I have alternatives?

4. On a standard PC there are 6 USB ports. How many controllers are
there? Can I work max speed (480 Mbps Theoretical) with all of the 6 in
parallel?

And finally can anyone recommend extra (or in my case initial) reading
That will guide me to the right direction.

I know this is tiresome but any help will be appreciated,
Marc.

Reply With Quote
  #2 (permalink)  
Old 03-10-2005, 05:51 PM
Iwo Mergler
Guest
 
Posts: n/a
Default Re: Some DSP USB PC holy trinity issues....

soos wrote:
> Dear DSPers hello,
>
>
> I have a very practical question regarding communication done with
> USB2.0 (high speed) from a DSP to a pc.
>
> The application involves data acquisition at the rate of 25Mbit/sec
> preprocessing on the DSP and the Transmition of the raw data to a PC
> using the mentioned USB.
>
>
> Questions are:
>
> 1. What are the possible sizes of frames that can be sent via USB.
>
> 2. Suppose I have XP running of the PC. Since the USB buffer is checked
> by polling (so I have heard) and not by interrupt (is so?). Doesn't
> this mean that the access time from PC to this buffer is not constant
> and depends on the number of processes and threads on the PC?
>
> 3. Is it possible to control this non real time nature of the XP? I
> need the access to XP nice interfaces, Do I have alternatives?
>

You can't transform XP into an RTOS, I'm afraid. I had a similar application,
moving 5MBit/sec via USB 1.1. It turned out that 4MBytes of buffer memory
on the DSP side was a good size to cope with the occasional several seconds
of outage windows was producing.

Just for comparison, the same thing with RT-Linux was running happily with
2KBytes of buffer on the same machine.

> 4. On a standard PC there are 6 USB ports. How many controllers are
> there? Can I work max speed (480 Mbps Theoretical) with all of the 6 in
> parallel?
>

Normally one, with a hub. The 480Mbps are shared among the ports.

Kind regards,

Iwo
Reply With Quote
  #3 (permalink)  
Old 03-11-2005, 08:38 AM
Wolfgang
Guest
 
Posts: n/a
Default Re: Some DSP USB PC holy trinity issues....

Hello Marc,

> The application involves data acquisition at the rate of 25Mbit/sec
> preprocessing on the DSP and the Transmition of the raw data to a PC
> using the mentioned USB.
>
>
> Questions are:
>
> 1. What are the possible sizes of frames that can be sent via USB.


You don't have to worry about frames and how many of them. Windows is
managing that for you.
What you see on windows's side is the size of the bulk transfers.
If you make access over a general usb driver the transfer rate is manly
depending on the blocksize
you transfer (the blocktransfer comes with 400Mbit/s but your Windows
Application can't start
blocktransfers fast)
A Measuring of Out-Blocktransfers (just as a hint)
256Byte: 2,8Mbit
1024Byte: 10Mbit
16kByte: 80Mbit
Or around 3000 Vendor Requests per second (if the C++ Application is doing
nothing else)
Achieved with a XP machine and USB2.0

> 2. Suppose I have XP running of the PC. Since the USB buffer is checked
> by polling (so I have heard) and not by interrupt (is so?).


Yes.

> this mean that the access time from PC to this buffer is not constant
> and depends on the number of processes and threads on the PC?


Yes.

> 3. Is it possible to control this non real time nature of the XP?


As far as I know: No.

> And finally can anyone recommend extra (or in my case initial) reading
> That will guide me to the right direction.


1.) USB Org
2.) Your USB chip supplier application notes and data sheets.

Hope that helps a little bit,

Regards, Wolfgang


Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
xsa-50 issues uche FPGA 1 05-15-2008 12:47 AM
EDK 9.1 Issues Matthew Hicks FPGA 6 11-15-2007 10:05 PM
MPMC2 : npi issues #2 ivo FPGA 1 09-18-2006 09:08 PM
Re: More VHDL issues.. Alan Fitch VHDL 4 08-06-2003 09:43 PM


All times are GMT +1. The time now is 04:43 AM.


Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0
Copyright 2008 @ FPGA Central. All rights reserved