Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

max. data payload for firewire

Hello,
how can I calculate the Isochronous/Asynchronous max data payload for example for a speed of 400 Mb/s?

I thougt 400 Mb/s = 50 MByte/s => 80% for Isochronous = 40 MByte/s  one cykle is 125 us  -> so the maximum data payload ist 40Byte/s * 0,000125s = 5000 Byte per cykle

But in the literature the say it is 4096 Bytes? Why ?

Thanks.

Beko

0 Kudos
Message 1 of 3
(2,993 Views)
This is just a guess, but 4096 is the power of 2  (2^12) that fits best into 5000. In many cases data is transferred in packages and the package size is typically a power of 2. I don't know if this is the real reason, but I think it sounds reasonable.

Kind regards,

Jochen Klier
National Instruments
0 Kudos
Message 2 of 3
(2,978 Views)
Beko,

The 4096 bytes is a the maximum recommended packet size for a streaming from a single camera on Windows. The limit is enforced by Windows FireWire bus driver in software. Many cameras also enforce 4096 bytes as the maximum packet size. You may be able to allocate up to 5000 bytes over multiple cameras as long as a single camera does not exceed 4096 bytes.

On LabVIEW RT there is no maximum recommended packet size enforced by the FireWire bus driver. On the CVS and NI PXI-8252 running with LabVIEW RT you should be able to allocate up to 4900 bytes for a single cameras. Some cameras, like the Prosilica CV Series, take advantage of this to attain faster frame rates. The bandwidth used by these cameras are about 37-38 MB/s which is very close to the 40 MB/s that the hardware is theoretically capable of.

Hope this helps,

JohannS
0 Kudos
Message 3 of 3
(2,968 Views)