DMA için USB topolojisi: denetleyiciler, hub'lar ve portlar
Host denetleyicileri, kök hub'lar ve paylaşılan bant genişliği nasıl çalışır ve arka port neden batıl bir inanç değil. Ayrıca bir portun anlaştığı hızı okumak ve USB seçmeli askıya almanın bağlantıyı nasıl öldürdüğü.
Kısa cevap
USB bir ağaçtır: her host denetleyicisi bir kök hub besler ve onun altındaki her harici hub, dock ya da ön panel girişi o bant genişliğini paylaşır. DMA kartının yeri, kök hub'a bağlı bir arka porttur ve o denetleyicide kartla yarışan başka hiçbir şey olmamalıdır.
Bu sayfada10
- USB portları bilgisayara aslında nasıl bağlanır
- Bilinmesi gereken dört USB terimi
- Neden arka USB portu kullanmalı?
- Kartı kendi USB denetleyicisinde tutun
- Bir portun anlaştığı hız nasıl kontrol edilir
- USB seçmeli askıya almayı powercfg ile kapatın
- USB güç tasarrufunu Aygıt Yöneticisi'nde de kapatın
- Sık görülen USB sorunları ve çözümleri
- USB soruları
- Kaynaklar
USB portları bilgisayara aslında nasıl bağlanır
Çoğu kişi her USB girişini bilgisayara giden bağımsız bir bağlantı olarak düşünür, ama iş öyle yürümez. Bir makinede az sayıda host denetleyicisi vardır, her denetleyicinin bir kök hub'ı, her kök hub'ın da bir port kümesi vardır. O portlara takılan her şey, o denetleyicinin bant genişliğini, kesme işlemesini ve sürücüsünü paylaşır. Harici bir hub ya da dock bir katman daha ekler ve o katmanı da kendisine takılı bütün cihazlar paylaşır. Açıklanamayan DMA kopmalarının neredeyse tamamı, bu ağacın reader'ın kaldırabileceğinden daha derin ya da daha yoğun olmasından gelir.
Bilinmesi gereken dört USB terimi
Bu dört terim netleştiğinde, okuyacağınız USB tavsiyelerinin çoğu anlam kazanmaya başlar.
- Host denetleyicisi (host controller)
- Bir USB veri yolunu çalıştıran yonga. Modern bir makinede bu bir xHCI denetleyicisidir. Kendi sürücüsü vardır ve darboğaz olabilir
- Kök hub (root hub)
- Tek bir denetleyicinin ağacının tepesindeki sanal hub. Portları, doğrudan anakarta lehimli girişlerdir
- Hub (hub)
- Tek bir portu birkaç porta dağıtan her cihaz: harici bir hub, bir dock, portlu bir monitör, kasa içindeki ön panel kartı
- Anlaşılan hız (negotiated speed)
- Portun yapabileceği değil, bağlantının fiilen üzerinde anlaştığı hız. USB 2 kabloyla bir USB 3 portu USB 2'de anlaşır
Neden arka USB portu kullanmalı?
Arka paneldeki portlar anakarta lehimlidir ve doğrudan bir kök hub'a gider. Ön panel portu ise kasa içindeki bir başlığa giden dahili bir kablonun ucundadır ve birçok kasada o başlığın kendisi dahili bir hub'ın arkasındadır. Yani ön panel portu, sinyal denetleyiciye ulaşmadan önce kablo uzunluğu, fazladan konnektör ve çoğu zaman bir hub katmanı ekler. USB 3 tam hızda sınırda bir yolu affetmez; her rehberin size arka portu söylemesinin bütün sebebi budur. Ön panel portunda çalışmayan bir kartın, başka hiçbir şey değişmeden arka portta çalışmasının sebebi de aynıdır.
İpucu
Kartı kendi USB denetleyicisinde tutun
Denetleyiciyi boşta duran bir klavyeyle paylaşmak hiçbir şeye mal olmaz, ama web kamerası, harici disk, capture kart ya da USB DAC ile paylaşmak gerçek bant genişliğine mal olur. Üstelik tam da reader bir aktarımın ortasındayken kesme yükünü artırır. Birden fazla arka portu olan makineler bu portları genellikle birkaç denetleyiciye dağıtır. Pratikte hedef şudur: kartı, denetleyicisinde başka hiçbir talepkâr cihaz olmayan bir porta takmak ve bant genişliği yiyen çevre birimlerini başka yerde tutmak. Aynı sebeple, okuma hızı testinden önce gereksiz her cihazı çıkarmak boş bir formalite değildir, çünkü sonucu değiştirir.
Bir portun anlaştığı hız nasıl kontrol edilir
Bunu ikinci PC'de, kart takılıyken ve oyun PC'si açıkken yapın. Amaç, bağlantının USB 3 olarak kurulduğunu ve sessizce daha düşük bir hıza düşmediğini doğrulamak.
- İkinci PC'de Aygıt Yöneticisi'ni açın
- Görünüm menüsünden Bağlantıya göre aygıtlar'ı seçin; liste gerçek ağacı gösterecek biçimde yeniden çizilir
- Ağacı host denetleyicisinden kök hub üzerinden cihazınıza kadar izleyin ve aradaki her hub'ı kaldırabileceğiniz bir katman olarak not edin
- Görünüm'ü Türe göre aygıtlar'a geri alın ve Evrensel Seri Veri Yolu denetleyicileri'ni genişletin
- FTDI ya da USB köprü aygıtına sağ tıklayıp Özellikler'i seçin ve Ayrıntılar sekmesini açın
- Özellik açılır listesinden Üst öğe'yi seçin; burada USB ağacında bu cihazın hemen üstünde duran aygıtın adı yazar
- Hızı doğrudan okumak için Windows SDK'yı Debugging Tools bileşeniyle kurun, USBView'ı çalıştırın ve veri yolu hızını görmek için cihazı seçin. SuperSpeed, USB 3 bağlantısının kurulduğu; High ise USB 2'ye düştüğü anlamına gelir
- Hız yanlışsa önce kabloyu, sonra portu değiştirin, sonra aradaki her şeyi kaldırın ve her tek değişiklikten sonra hızı yeniden kontrol edin
USB seçmeli askıya almayı powercfg ile kapatın
USB seçmeli askıya alma, hub sürücüsünün boşta saydığı bir portun gücünü kesmesine izin verir. Bir klavye için bu güç tasarrufudur, bir DMA kartı içinse siz bakmazken kaybolan bir cihaz demektir. Aşağıdaki GUID'ler standart USB ayarları alt grubu ile seçmeli askıya alma ayarıdır ve 0 değeri onu devre dışı bırakır. Bu komutları yalnızca İKİNCİ PC'de, yönetici olarak açılmış bir komut isteminde çalıştırın.
powercfg /setacvalueindex SCHEME_CURRENT 2a737441-1930-4402-8d77-b2bebba308a3 48e6b7a6-50f5-4782-a5d4-53bb8f07e226 0
powercfg /setdcvalueindex SCHEME_CURRENT 2a737441-1930-4402-8d77-b2bebba308a3 48e6b7a6-50f5-4782-a5d4-53bb8f07e226 0
powercfg /setactive SCHEME_CURRENT
powercfg /query SCHEME_CURRENT 2a737441-1930-4402-8d77-b2bebba308a3Uyarı
USB güç tasarrufunu Aygıt Yöneticisi'nde de kapatın
Güç planında seçmeli askıya almayı kapatmak gereklidir ama çoğu zaman yetmez. USB Kök Hub ve USB Hub aygıtlarının Aygıt Yöneticisi'nde kendi Güç Yönetimi sekmeleri de olabilir, gerçi bu sekme her hub'da bulunmaz. Sekmenin bulunduğu yerde Güç tasarrufu için bilgisayarın bu aygıtı kapatmasına izin ver kutusu varsayılan olarak işaretlidir, o yüzden yoldaki her hub'da işareti kaldırın. İki ayar da değiştirildiği hâlde kart bir süre boşta kaldıktan sonra yine kayboluyorsa, kartı suçlamadan önce kablodan ya da porttan şüphelenin.
Sık görülen USB sorunları ve çözümleri
Her satır, insanların sık arattığı bir belirtiye karşılık geliyor. Listeyi sırayla inin, çünkü her çözüm bir sonrakinden daha ucuz.
| Sorun | Olası neden | Çözüm |
|---|---|---|
| Cihaz SuperSpeed yerine High hız bildiriyor | USB 2 ya da yalnızca şarj kablosu, ya da USB 3 gibi görünen ama USB 3 olmayan bir port | Veri taşıyan bir USB 3 kabloya geçin, sonra anakartın belgelerinde USB 3 olarak geçen bir porta taşıyın. Her değişiklikten sonra bildirilen hızı yeniden kontrol edin |
| Web kamerası ya da harici disk çalıştığında okuma hızı çöküyor | İki cihaz da aynı host denetleyicisinin arkasında duruyor ve onun bant genişliğini paylaşıyor | Diğer cihazı başka bir denetleyicideki bir porta taşıyın ya da o oturum boyunca çıkarın |
| Cihaz birkaç dakika hareketsizlikten sonra kayboluyor | USB seçmeli askıya alma ya da hâlâ kapanmasına izin verilen bir USB Kök Hub | Güç planında USB seçmeli askıya almayı kapatın, sonra yoldaki bu kutuyu gösteren her hub'da güç yönetimi işaretini kaldırın |
| Bir arka portta çalışıyor, yanındaki portta çalışmıyor | İki port farklı denetleyicilerde ve yalnızca birinin sürücüsü sağlam ve güç bütçesi yeterli | Kartı çalışan portta bırakın ve o portu işaretleyin, çünkü portlar yan yana dursalar bile birbirinin yerine geçmez |
| Makinenin herhangi bir yerine dock ya da hub eklenene kadar kararlı | Hub bir katman ekledi ve herhangi bir değişiklikte paylaşılan üst bağlantıyı yeniden anlaşmaya sokuyor | Dock'u kartın yolundan kalıcı olarak çıkarın ve yalnızca fare, klavye ve monitör için kullanın |
| Unknown USB device, descriptor request failed | Bağlantı, cihazın sisteme tanıtılmasını tamamlayamayacak kadar sınırda — genelde kablo, bazen hasarlı bir giriş | Başka bir arka portta kısa ve sağlam olduğu bilinen bir kablo deneyin; sağlam bir kablo iki denetleyicide de başarısız oluyorsa kartın girişinden şüphelenin |
USB soruları
Gerçekten daha fazla porta ihtiyacım varsa güç girişli hub kullanabilir miyim?
Çevre birimleri için evet, ama kart için varsayılan olarak hayır. Başka çareniz yoksa üzerinde başka hiçbir şey takılı olmayan güç girişli bir hub kullanın ve ona güvenmeden önce okuma hızını bir testle doğrulayın.
Kablo uzunluğu önemli mi?
Evet, çünkü USB 3 sinyal toleransı uzunlukla düşüyor ve ucuz uzun kablo aralıklı kopmaların sık bir sebebi. Rahatça yetişen en kısa kabloyu kullanın.
Hangi portların aynı denetleyiciyi paylaştığını nasıl anlarım?
Aygıt Yöneticisi'nde Görünüm, ardından Bağlantıya göre aygıtlar'ı seçip gerçek ağacı görün; aynı host denetleyicisinin altındaki her şey o denetleyiciyi paylaşır. USBView de aynı ağacı hızlarıyla birlikte gösterir.
USB 2 portu hiç çalışır mı?
Cihaz genelde tanınır, ama veri hızı ağır biçimde kısılır; o yüzden USB 2 bağlantısını kalıcı bir kurulum değil, bir teşhis sonucu olarak görün.
Aygıt Yöneticisi'nde diğer USB cihazlarını devre dışı bırakmak işe yarar mı?
Nadiren. Fiziksel olarak çıkarmak daha güvenilir ve geri almak kolaydır; devre dışı bırakmaksa elinizde, davranışını sonradan hatırlamak zorunda kalacağınız bir makine bırakır.
Kaynaklar
Belirtilen iki kaynağın dışında, arka portlar, paylaşılan denetleyiciler ve kopmalarla ilgili her şey ekibin kendi makinelerinde yaptığı ölçümlere dayanıyor.
- 01Windows debugging tools (Microsoft)
bu sayfada bir portun anlaştığı hızı okumak için kullanılan USBView aracının geldiği yer
learn.microsoft.com
- 02USB device descriptors (Microsoft Learn)
aygıt tanımlayıcısının ne olduğu; tanımlayıcı isteği hatasında okunamayan şey tam olarak budur
learn.microsoft.com
Sırada ne var
Hâlâ takıldınız mı? Discord'da destek talebi açın
Tüm rehberler