USB yazılım yapısı

Sep 01, 2022

Otobüs arayüzü

USB veri yolu arabirimi, elektrik katmanı ile protokol katmanı arasındaki ara bağlantıyı yönetir. Ara bağlantı açısından bakıldığında, seri arabirim makinesi (SIE) gibi, cihaz ve ana bilgisayar tarafından aynı anda benzer veri yolu arabirimleri sağlanır. USB veri yolu arayüzü ana kontrolör tarafından gerçekleştirilir.

USB sistemi, ana bilgisayar ile USB cihazı arasındaki veri aktarımını yönetmek için ana denetleyiciyi kullanır. Onunla ana kontrolör arasındaki arayüz, ana kontrolörün donanım tanımına bağlıdır. Aynı zamanda, USB sistemi, bant genişliği ve veri yolu enerjisi gibi USB kaynaklarının yönetiminden de sorumludur ve bu da müşterilerin USB'ye erişmesini mümkün kılar. USB sisteminin ayrıca üç temel bileşeni vardır:

Ana bilgisayar denetleyici sürücüsü (HCD) bu, farklı ana bilgisayar denetleyici aygıtlarını USB sistemine eşleyebilir. HCD ve USB arasındaki arabirime HCDI denir. Belirli HCDI, farklı ana denetleyicileri destekleyen işletim sistemi tarafından tanımlanır. Evrensel ana denetleyici sürücüsü (uhcd) yumuşak yapının en altındadır ve ana denetleyiciyi yönetir ve kontrol eder. Uhcd, USB ana bilgisayar denetleyicisiyle iletişim kurar ve kontrol eder ve sistem yazılımının diğer bölümlerinden gizlenir. Sistem yazılımındaki en üst katman, uhcd'nin yazılım arayüzü aracılığıyla ana denetleyici ile iletişim kurar.

Uhcd sürücüsünü temel alan USB sürücüsü (usbd), mevcut aygıt sürücüsü tasarımının gereksinimlerini karşılamak için sürücü düzeyinde arayüz sağlar. Usbd, verileri belirli borular aracılığıyla iletmek için gereksinimlerden oluşan G/Ç istek paketleri (IRP'ler) biçiminde bir veri iletim mimarisi sağlar. Ayrıca usbd, soyutlamayı ve yönetimi kolaylaştırmak için istemcinin cihazın bir soyutlaması olarak görünmesini sağlar. Soyutlamanın bir parçası olarak, usbd varsayılan bir ardışık düzene sahiptir. Standart USB kontrolü için tüm USB cihazlarına erişilebilir. Bu varsayılan kanal, usbd ve USB cihazı arasındaki iletişim için mantıksal bir kanalı tanımlar.

ana bilgisayar yazılımı

Bazı işletim sistemlerinde USB sistem yazılımı sağlanmaz. Bu yazılımlar orijinal olarak aygıt sürücülerine yapılandırma bilgileri ve yükleme yapısı sağlamak için kullanılır. Bu işletim sistemlerinde aygıt sürücüsü, USBDI (USB Sürücü Arabirimi) yapısına doğrudan erişmek yerine uygulamanın sağladığı arabirimi kullanır.

USB istemci yazılımı

Yazılım yapısının en üst seviyesinde bulunur ve belirli USB aygıt sürücülerini yönetmekten sorumludur. İstemci katmanı, doğrudan cihaz üzerinde hareket eden tüm yazılım portallarını tanımlar. Cihaz sistem tarafından algılandığında, bu istemci programları doğrudan çevresel donanım üzerinde hareket edecektir. Bu paylaşılan özellik, USB sistem yazılımını, istemcide usbd tarafından oluşturulan aygıt görüntüsüne göre istemci programı tarafından işlenmesi gereken istemci ile aygıtı arasına yerleştirir.

Ana bilgisayarın her katmanı aşağıdaki işlevlere sahiptir:

Bağlı ve kaldırılmış USB cihazlarını tespit edin.

Ana bilgisayar ve USB cihazı arasındaki veri akışını yönetin.

Bağlantı USB durumu ve aktivite istatistikleri.

Sınırlı enerji kaynağı da dahil olmak üzere ana kontrolör ve USB cihazı arasındaki elektrik arayüzünü kontrol edin.

HCD, ana denetleyicinin bir soyutlamasını ve ana denetleyicinin USB aracılığıyla iletilen verilere bakış açısının bir soyutlamasını sağlar. Usbd, USB cihazlarının bir özetini ve usbd müşterileri ile USB işlevleri arasında veri iletimini sağlar. USB sistemi, müşteriler ve işlevler arasında veri iletimini destekler ve USB cihazlarının standartlaştırılmış arayüzü için bir kontrol noktası görevi görür. USB sistemi, arabellek yönetimi yeteneği sağlar ve veri iletiminin müşterilerin ve işlevlerin ihtiyaçları ile senkronize edilmesini sağlar.