Δομή λογισμικού USB

Sep 01, 2022

Διεπαφή λεωφορείου

Η διεπαφή διαύλου USB χειρίζεται τη διασύνδεση μεταξύ του ηλεκτρικού στρώματος και του επιπέδου πρωτοκόλλου. Από την άποψη της διασύνδεσης, παρόμοιες διεπαφές διαύλου παρέχονται από τη συσκευή και τον κεντρικό υπολογιστή ταυτόχρονα, όπως η μηχανή σειριακής διασύνδεσης (SIE). Η διεπαφή διαύλου USB υλοποιείται από τον κύριο ελεγκτή.

Το σύστημα USB χρησιμοποιεί τον κύριο ελεγκτή για τη διαχείριση της μετάδοσης δεδομένων μεταξύ του κεντρικού υπολογιστή και της συσκευής USB. Η διεπαφή μεταξύ αυτού και του κύριου ελεγκτή εξαρτάται από τον ορισμό υλικού του κύριου ελεγκτή. Ταυτόχρονα, το σύστημα USB είναι επίσης υπεύθυνο για τη διαχείριση πόρων USB, όπως το εύρος ζώνης και την ενέργεια του διαύλου, γεγονός που επιτρέπει στους πελάτες να έχουν πρόσβαση σε USB. Το σύστημα USB έχει επίσης τρία βασικά στοιχεία:

Πρόγραμμα οδήγησης ελεγκτή κεντρικού υπολογιστή (HCD) που μπορεί να αντιστοιχίσει διαφορετικές συσκευές ελεγκτή κεντρικού υπολογιστή στο σύστημα USB. Η διασύνδεση μεταξύ HCD και USB ονομάζεται HCDI. Το συγκεκριμένο HCDI ορίζεται από το λειτουργικό σύστημα που υποστηρίζει διαφορετικούς κύριους ελεγκτές. Το πρόγραμμα οδήγησης γενικού κύριου ελεγκτή (uhcd) βρίσκεται στο κάτω μέρος της μαλακής δομής και διαχειρίζεται και ελέγχει τον κύριο ελεγκτή. Το Uhcd επικοινωνεί και ελέγχει τον ελεγκτή κεντρικού υπολογιστή USB και είναι κρυμμένος από άλλα μέρη του λογισμικού συστήματος. Το υψηλότερο επίπεδο στο λογισμικό συστήματος επικοινωνεί με τον κύριο ελεγκτή μέσω της διεπαφής λογισμικού του uhcd.

Το πρόγραμμα οδήγησης USB (usbd), το οποίο βασίζεται στο πρόγραμμα οδήγησης uhcd, παρέχει διεπαφή σε επίπεδο προγράμματος οδήγησης για την κάλυψη των απαιτήσεων του υπάρχοντος σχεδιασμού προγράμματος οδήγησης συσκευής. Το Usbd παρέχει μια αρχιτεκτονική μετάδοσης δεδομένων με τη μορφή πακέτων αιτήματος εισόδου/εξόδου (IRPs), η οποία αποτελείται από τις απαιτήσεις για τη μετάδοση δεδομένων μέσω συγκεκριμένων σωλήνων. Επιπλέον, το usbd κάνει τον πελάτη να εμφανίζεται ως αφαίρεση της συσκευής για να διευκολύνει την αφαίρεση και τη διαχείριση. Ως μέρος της αφαίρεσης, το usbd έχει μια προεπιλεγμένη διοχέτευση. Μέσω του οποίου είναι δυνατή η πρόσβαση σε όλες τις συσκευές USB για τυπικό έλεγχο USB. Αυτός ο προεπιλεγμένος σωλήνας περιγράφει ένα λογικό κανάλι επικοινωνίας μεταξύ του usbd και της συσκευής USB.

Λογισμικό υποδοχής

Σε ορισμένα λειτουργικά συστήματα, δεν παρέχεται λογισμικό συστήματος USB. Αυτό το λογισμικό χρησιμοποιείται αρχικά για την παροχή πληροφοριών διαμόρφωσης και δομής φόρτωσης στα προγράμματα οδήγησης συσκευών. Σε αυτά τα λειτουργικά συστήματα, το πρόγραμμα οδήγησης της συσκευής χρησιμοποιεί τη διεπαφή που παρέχεται από την εφαρμογή αντί να έχει άμεση πρόσβαση στη δομή USBDI (Διασύνδεση προγράμματος οδήγησης USB).

Λογισμικό πελάτη USB

Βρίσκεται στο υψηλότερο επίπεδο της δομής του λογισμικού και είναι υπεύθυνο για το χειρισμό συγκεκριμένων προγραμμάτων οδήγησης συσκευών USB. Το επίπεδο πελάτη περιγράφει όλες τις πύλες λογισμικού που ενεργούν απευθείας στη συσκευή. Όταν η συσκευή εντοπιστεί από το σύστημα, αυτά τα προγράμματα-πελάτες θα ενεργούν απευθείας στο περιφερειακό υλικό. Αυτή η κοινή δυνατότητα τοποθετεί το λογισμικό συστήματος USB μεταξύ του πελάτη και της συσκευής του, το οποίο πρέπει να υποβληθεί σε επεξεργασία από το πρόγραμμα-πελάτη σύμφωνα με την εικόνα της συσκευής που σχηματίζεται από το usbd στον πελάτη.

Κάθε επίπεδο του κεντρικού υπολογιστή έχει τις ακόλουθες λειτουργίες:

Εντοπίστε συνδεδεμένες και αφαιρεθείσες συσκευές USB.

Διαχειριστείτε τη ροή δεδομένων μεταξύ του κεντρικού υπολογιστή και της συσκευής USB.

Στατιστικά στοιχεία κατάστασης και δραστηριότητας σύνδεσης USB.

Ελέγξτε την ηλεκτρική διεπαφή μεταξύ του κύριου ελεγκτή και της συσκευής USB, συμπεριλαμβανομένης της περιορισμένης παροχής ενέργειας.

Το HCD παρέχει μια αφαίρεση του κύριου ελεγκτή και μια αφαίρεση της προοπτικής του κύριου ελεγκτή για τα δεδομένα που μεταδίδονται μέσω USB. Το Usbd παρέχει μια αφαίρεση συσκευών USB και μετάδοση δεδομένων μεταξύ πελατών usbd και λειτουργιών USB. Το σύστημα USB προωθεί τη μετάδοση δεδομένων μεταξύ πελατών και λειτουργιών και χρησιμεύει ως σημείο ελέγχου για την τυποποιημένη διεπαφή συσκευών USB. Το σύστημα USB παρέχει δυνατότητα διαχείρισης buffer και επιτρέπει τη μετάδοση δεδομένων να συγχρονίζεται με τις ανάγκες των πελατών και τις λειτουργίες.