Sida 2 av 5
Re: USB2.0 i 480 MBit, går det så fort?
Postat: 10 maj 2014, 22:36:24
av E Kafeman
Ja 5 meter är max, men redan detta kostar i oftast reducerad hastighet. Om man ännu inte märker av att kabellängden är begränsande med 6,5 meter, så är det troligen en inte obetydlig flaskhals någon annanstans.
Klipp från
http://en.wikipedia.org/wiki/USB
USB 2.0 provides for a maximum cable length of 5 meters for devices running at Hi Speed (480 Mbit/s). The primary reason for this limit is the maximum allowed round-trip delay of about 1.5 μs. If USB host commands are unanswered by the USB device within the allowed time, the host considers the command lost. When adding USB device response time, delays from the maximum number of hubs added to the delays from connecting cables, the maximum acceptable delay per cable amounts to 26 ns.[64] The USB 2.0 specification requires that cable delay be less than 5.2 ns per meter (192 000 km/s, which is close to the maximum achievable transmission speed for standard copper wire).
Max längsd på USB2.0 datapaket är 1024 byte. Beroende på protokoll som du kör så kan ett eller flera sådana paket hämtas per pollning. Förmodar att där finns möjliga förbättringar att göra.
För att spåna lite så hanterar olika USB chipset situationen olika om det finns både USB1.1 och USB2.0 anslutet till samma "moder-hub". Vissa chip påstås tappa peak-prestanda om man mixar olika standarder.
Som exempel kan nya tangentbord och möss kan vara låsta till USB1.1 då de då blir mest kompatibla oavsett om datorn skulle råka vara lite äldre.
Re: USB2.0 i 480 MBit, går det så fort?
Postat: 10 maj 2014, 22:51:34
av stoffe
Ja egentligen är 5 meter max. Men det går utmärkt att dra längre vid behov i vissa fall.. Hur som helst, så har jag redan påpekat att jag testat med diverse andra kablar och kabellängden på 6,5 meter borde inte vara problemet i det här fallet. Absolut ingen skillnad på in max fps på 3 meterskablar, 0,3 meters kablar och 1 meters kablar. Jag har tyvärr inga fler att testa med. Så fort jag lyckas nå högre fps med någon kortare kabel så är det dags att göra något åt kabellängden.
Om jag räknat rätt så borde det bli 5 ns tidsskillnad för elektronerna i 5 m mot 6,5 m kabel.
Jag har enbart min kamera ansluten till mitt USB2.0 PCI kort med NEC chipset just för att optimera det hela.
Re: USB2.0 i 480 MBit, går det så fort?
Postat: 11 maj 2014, 02:08:05
av blueint
stoffe skrev:E Kafeman
Min nuvarande USB kabel är 6,5 meter lång och är skarvad av en 5 meters och en 3 meters kabel.
Skarvning är nog ingen bra idé övh. Längden kan du nog fuska med men inte skarvning. Sedan kan det vara idé att använda bra kabel i övrigt. Ett snabbtest är en riktigt kort sladd på 0,5 meter för att se att saker fungerar övh.
Bildhastighet (fps) i detta fall med USB2 (480 Mbit/s) och 1024x768 pixlar med 24 bit/pixel:
480000000 / (1.2*1024*768*24) = 21 fps
(där 1.2 är för att räkna bort förlusten i protokollets ineffektivitet)
Kolla på astronomiforum vilken hårdvara som fungerar bra. Kanske har tillverkaren slarvat inne i enheten med impedans, ledningsmatchning, skärmning osv.
Re: USB2.0 i 480 Mbit/s, går det så fort?
Postat: 11 maj 2014, 03:02:01
av MadModder
Förresten blir det inget snabbare alls att ansluta en 2.0-enhet till ett 3.0-uttag, då 3.0 har 9 ledare. Det blir då 2.0-hastighet helt enkelt.
Re: USB2.0 i 480 Mbit/s, går det så fort?
Postat: 11 maj 2014, 10:03:35
av stoffe
blueint, det är en monokrom kamera jag har inte en färgkamera. Dessutom har du räknat med 8 bitars färg vilket oxå är fel då jag har en 12 bits kamera, upplösningen stämmer heller inte då jag har 1280x960 och inte 1024x768. Hur skulle jag då kunna nå 27 fps ens en gång? Det finns dessutom dokumenterade fall där folk når 35 fps. Tror du blandat ihop detta med någon annan kamera.
Den enda hårdvara jag sett hittils som funkar bra är AMD 880 chipset.
MadModder, det enda som talar positivt för att ansluta en snabb USB2.0 enhet till ett USB3.0 uttag är att bussen som USB3.0 kontrollern sitter på är anpassad för en snabbare hastighet, säkert USB3.0 chipsetet oxå och då kanske man kan konstatera att det inte är där flaskhalsen ligger, vad vet jag.
Jag läste på wikipedia att högsta överföringshastigheten vid 66 MHz och 32 bit på en PCI buss är 266 MB/s och jag antar att det är MBit/s och inte Mbyte/s? Alla hastigheter inom datavärlden brukar alltid anges i bit. Byte brukar vara en benämning på datamängd på t ex hårddisk. I så fall har jag kanske hittat min flaskhals.
http://en.wikipedia.org/wiki/Conventional_PCI
Re: USB2.0 i 480 Mbit/s, går det så fort?
Postat: 11 maj 2014, 10:37:03
av Borre
Nej, megabyte är det.
Re: USB2.0 i 480 Mbit/s, går det så fort?
Postat: 11 maj 2014, 11:09:43
av blueint
Standard PCI är inte så snabbt i praktiken hr jag för mig. Ev max 20 MB/s.
Apropå fps uträkningen så tog jag vanliga värden eftersom inget annat fanns i tråden. Men omräknat blir det:
480000000 / (1.2*1280*960*12) = 27 fps
Kanske är operativsystemet du använder för slött för att hantera denna mängd data?
Re: USB2.0 i 480 Mbit/s, går det så fort?
Postat: 11 maj 2014, 11:32:12
av Nerre
Det där förutsätter ju att datat skickas okomprimerat, men de flesta kameror brukar väl komprimera videon på nåt sätt?
Re: USB2.0 i 480 Mbit/s, går det så fort?
Postat: 11 maj 2014, 12:46:49
av blueint
Kanske fungerar dåligt med astronomi?
Re: USB2.0 i 480 Mbit/s, går det så fort?
Postat: 11 maj 2014, 13:09:06
av TomasL
Kameran i fråga har en datahastighet om 27 Mbit/s.
Re: USB2.0 i 480 Mbit/s, går det så fort?
Postat: 11 maj 2014, 13:13:17
av MadModder
Det är skillnad mellan olika mjukvaror. Med samma gamla USB-kamera (och samma driver) får jag med olika mjukvara mellan 1 (!) och 20 fps. Har inte testat Virtualdub som webcam grabber vilket många säger är mycket bra. Bättre än det smått legendariska AmCap.
Re: USB2.0 i 480 Mbit/s, går det så fort?
Postat: 11 maj 2014, 15:21:55
av xxargs
Håll reda på konventionerna när det gäller hur man skriver för 'Byte' respektive 'bit' - stor 'B' för byte, litet 'b' för bit eller oftast utskriven helord som 'bit'.
Det är precis som våra andra SI enheter där misstolkning mellan liten bokstav och stor bokstav på enheter kan ge fatal skillnad på resultatet...
Till detta brukar databussar så som SCSI, IDE, PCI, video och minnesbussar mfl. anges som antal Byte/s oavsett om det är 8, 16 -> 256 bitars ordbredd på bussen. Medans transmission över ett ledarpar eller optolina som ADSL, ethernet, SATA, Wirefire, USB så pratar man om antal bit per sekund då man tittar på per ledarpar och inte hur många ledare som arbetar parallellt som i databussar
När det gäller paketorienterade nät (vilket USB kan närmast kallas som) så brukar dessa börja stalla med opredikerbar fördröjning och kapaciteten går ner när fyllnadsgraden på transmissionslinan når över 50% (det vet alla som har provat på 10Bas2...) - med lite intelligentare och diktatorisk styrning (= USB-hubben och pollad system) så kanske man kan nå upp till nära 70% och detta är en förklaring till varför USB sällan når över 35 MByte/s i effektiv överföringshastighet trots tillgänglig 480 Mbit/s i råkapacitet medans tar man som jämförelse som kretskopplat nät så som Firewire så kan man fylla ledningen över 90% trafik och ändå hålla kapacitet och fördröjningstider inom lovad gräns och utan att konkurrera om resurser och timing på parallella kanaler så länge det finns något kvar outnyttjad kapacitet på transmissonslinan.
Firewire designades en gång med att den just skulle kunna hantera video utan hack och ryckighet och ha parallella ljudkanaler och hålla allt i synk utan att behöva använda stora buffrar och lång fördröjning som annars är lösningen man tar till när HW och transmissionsgränssnittet inte är predikerbart kapacitets och tidsmässigt utan varierar med tiden.
Med andra ord är det paketorienterad överföring så behöver man ca 50% headroom i extra överföringskapacitet om man skall få kapacitet och leveranstider av datat något så när kontrollerat i flöde och tidsfördröjning.
Detta med skillnaden mellan kretskopplat och paketorienterat är ett gammalt huvudvärk som plågat kommunikationsfolk i minst 40 år då man vill försöka hålla linan så nära 100% lastgrad som det går och samtidigt vill har transportsäkerheten och leveranstiden som en kretskopplat nät ger men samtidigt kunna fylla ut 'hålen' som blir när det kretskopplade kopplingarna snurrar på tomgång och inte aktivt transporterar data...
Re: USB2.0 i 480 Mbit/s, går det så fort?
Postat: 11 maj 2014, 15:27:47
av TomasL
Med tanke på kamerans "blygsamma" hastighet, så skall det väl inte vara några som helst problem med vilken USB2 host som helst, kan man tycka, 27 Mbit/s är ju typ 5% av max bandbredd, och typ 10% av den genomsnittliga bandbredden man kan förvänta sig i ett USB-system.
Dock med tanke på hur USB är konstruerat kan man kanske inte förvänta sig en avbrottsfri streaming (som xx skriver).
Samt att det hela beror på vad burken (datorn) gör förövrigt, samt drivrutinernas kvalitet.
Re: USB2.0 i 480 Mbit/s, går det så fort?
Postat: 11 maj 2014, 16:29:31
av xxargs
Frågan är om det är 27 Mbit/s eller om det är 27MB/s - det förstnämnda borde enkelt hinnas med på en USB2 och är då en komprimerad videoström - det andra fallet så är man nära gränsen att riskera då och då stallning i överföringen om man går via USB2.
Och om det är 27 MB/s så kommer det att fylla HD ganska snabbt och 4 TB disk räcker kanske i 39 timmar. med andra ord kommer behovet att komprimera inspelningen ganska våldsamt tämligen snabbt och att trycka denna igenom en H264-kodare i realtid i samband med inspelning är inte rekommendabelt ens för en ganska så häftig dator då det skiter sig så fort det börja vara mycket rörelse och ändring i bilden på kort tid om det inte finns någon HW-kodare i capture/grafikkort etc. och mjukvara som kan använda denna.
När jag pillade med detta förut med en BT8xxx videocapturer på PCI-bus utan komprimering för att ta 720x576/25Hz från TV-källa så var det ett jäkla letande efter en codec som kunde koda i realtid och samtidigt grabba från videokortet och ljud utan hack och tappande frames eller tappa synk mellan bild och ljud. tror det slutade med någon mjpeg-codec och kodning i hög bittrate för så liten påverkan som möjligt för att sedan kunna processa den noggrannare med filter i virtualdub senare... 1280x960 och 31 fps är ju ännu besvärligare att hantera i realtid än min mer blygsamma 720x576 @ 25 fps från TV...
Jag använde också virtualdub för att spela in - men att komma ihåg är att virtual dub använder befintliga videocapture-servicar och codec som redan finns eller blir installerade på datorn och är dessa dåliga eller tar väldigt mycket CPU-resurser så kan inte virtualdub göra något åt detta! Virtualdub är 'bara' ett skal för att hantera capture-device och mata in strömmarna till olika codec via ibland olika filter, dock gjorde den jobbet väldigt bra IMHO.
Re: USB2.0 i 480 Mbit/s, går det så fort?
Postat: 11 maj 2014, 16:33:56
av TomasL
27 Mbit/s enligt databladet, vilket stämmer rätt bra överens med bandbreddsbehovet, då 720P behöver runt 19Mbit/s eller så.
Eftersom det är en HD-kamera så skickar den troligen bitströmmen komprimerad i x264 eller liknande.
Kameran i sig använder sig har både ett serieinterface (HiSPi) och ett 12/14 bitars parallellt interface.
På detta har man då kopplat in någon form av USB-interface.