Το Sound Open Firmware 2.2 είναι διαθέσιμο, ένα σύνολο ανοιχτού υλικολογισμικού για τσιπ DSP

Δημοσιεύτηκε η κυκλοφορία του έργου Sound Open Firmware 2.2 (SOF), το οποίο δημιουργήθηκε αρχικά από την Intel για να απομακρυνθεί από την πρακτική της παροχής κλειστού υλικολογισμικού για τσιπ DSP που σχετίζονται με την επεξεργασία ήχου. Το έργο μεταφέρθηκε στη συνέχεια υπό την πτέρυγα του Ιδρύματος Linux και τώρα αναπτύσσεται με τη συμμετοχή της κοινότητας και με τη συμμετοχή της AMD, της Google και της NXP. Το έργο αναπτύσσει ένα SDK για την απλοποίηση της ανάπτυξης υλικολογισμικού, ένα πρόγραμμα οδήγησης ήχου για τον πυρήνα του Linux και ένα σύνολο έτοιμου υλικολογισμικού για διάφορα τσιπ DSP, για τα οποία δημιουργούνται επίσης δυαδικές συναρμολογήσεις, πιστοποιημένες με ψηφιακή υπογραφή. Ο κώδικας υλικολογισμικού είναι γραμμένος σε γλώσσα C με ένθετα συναρμολόγησης και διανέμεται με την άδεια BSD.

Χάρη στη σπονδυλωτή δομή του, το Sound Open Firmware μπορεί να μεταφερθεί σε διάφορες αρχιτεκτονικές DSP και πλατφόρμες υλικού. Για παράδειγμα, μεταξύ των υποστηριζόμενων πλατφορμών, υποστήριξη για διάφορα τσιπ Intel (Broadwell, Icelake, Tigerlake, Alderlake κ.λπ.), Mediatek (mt8195), NXP (i.MX8*) και AMD (Renoir) εξοπλισμένα με DSP που βασίζονται στο Xtensa HiFi Οι αρχιτεκτονικές αναφέρονται στα 2, 3 και 4. Κατά τη διαδικασία ανάπτυξης, μπορεί να χρησιμοποιηθεί ένας ειδικός εξομοιωτής ή QEMU. Η χρήση ανοιχτού υλικολογισμικού για το DSP σάς επιτρέπει να διορθώσετε και να διαγνώσετε πιο γρήγορα προβλήματα στο υλικολογισμικό και επίσης δίνει στους χρήστες την ευκαιρία να προσαρμόσουν ανεξάρτητα το υλικολογισμικό στις ανάγκες τους, να πραγματοποιήσουν συγκεκριμένες βελτιστοποιήσεις και να δημιουργήσουν ελαφριές εκδόσεις υλικολογισμικού που περιέχουν μόνο τη λειτουργικότητα που είναι απαραίτητη για το προϊόν.

Το έργο παρέχει ένα πλαίσιο για την ανάπτυξη, τη βελτιστοποίηση και τη δοκιμή λύσεων που σχετίζονται με την επεξεργασία ήχου, καθώς και τη δημιουργία προγραμμάτων οδήγησης και προγραμμάτων για αλληλεπίδραση με το DSP. Η σύνθεση περιλαμβάνει υλοποιήσεις υλικολογισμικού, εργαλεία για δοκιμή υλικολογισμικού, βοηθητικά προγράμματα για τη μετατροπή αρχείων ELF σε εικόνες υλικολογισμικού κατάλληλες για εγκατάσταση σε εξοπλισμό, εργαλεία εντοπισμού σφαλμάτων, εξομοιωτή DSP, εξομοιωτή πλατφόρμας κεντρικού υπολογιστή (με βάση το QEMU), εργαλεία για ανίχνευση υλικολογισμικού, σενάρια για MATLAB /Octave για συντελεστές μικρορύθμισης για στοιχεία ήχου, εφαρμογές οργάνωσης αλληλεπίδρασης και ανταλλαγής δεδομένων με υλικολογισμικό, έτοιμα παραδείγματα τοπολογιών επεξεργασίας ήχου.

Το Sound Open Firmware 2.2 είναι διαθέσιμο, ένα σύνολο ανοιχτού υλικολογισμικού για τσιπ DSP
Το Sound Open Firmware 2.2 είναι διαθέσιμο, ένα σύνολο ανοιχτού υλικολογισμικού για τσιπ DSP

Το έργο αναπτύσσει επίσης ένα καθολικό πρόγραμμα οδήγησης που μπορεί να χρησιμοποιηθεί με συσκευές που χρησιμοποιούν υλικολογισμικό βασισμένο στο Sound Open Firmware. Το πρόγραμμα οδήγησης περιλαμβάνεται ήδη στον κύριο πυρήνα Linux, ξεκινώντας από την έκδοση 5.2, και παρέχεται με διπλή άδεια - BSD και GPLv2. Το πρόγραμμα οδήγησης είναι υπεύθυνο για τη φόρτωση υλικολογισμικού στη μνήμη DSP, τη φόρτωση τοπολογιών ήχου στο DSP, την οργάνωση της λειτουργίας της συσκευής ήχου (υπεύθυνη για την πρόσβαση σε λειτουργίες DSP από εφαρμογές) και την παροχή σημείων πρόσβασης εφαρμογών σε δεδομένα ήχου. Το πρόγραμμα οδήγησης παρέχει επίσης έναν μηχανισμό IPC για επικοινωνία μεταξύ του κεντρικού συστήματος και του DSP και ένα επίπεδο για πρόσβαση στις δυνατότητες υλικού DSP μέσω ενός γενικού API. Για εφαρμογές, ένα DSP με Sound Open Firmware μοιάζει με μια κανονική συσκευή ALSA, η οποία μπορεί να ελεγχθεί χρησιμοποιώντας μια τυπική διεπαφή λογισμικού.

Το Sound Open Firmware 2.2 είναι διαθέσιμο, ένα σύνολο ανοιχτού υλικολογισμικού για τσιπ DSP

Βασικές καινοτομίες στο Sound Open Firmware 2.2:

  • Το στοιχείο για εργασία με εξωτερικές βιβλιοθήκες κωδικοποιητών έχει μετονομαστεί από codec_adapter σε module_adapter και εναρμονίζεται με το API των λειτουργικών μονάδων επεξεργασίας σήματος, το οποίο θα σας επιτρέψει να χρησιμοποιείτε κώδικα από χειριστές Windows χωρίς να τον αλλάξετε.
  • Το Frag API έχει καταργηθεί και έχει βελτιώσει την απόδοση κάθε στοιχείου κατά περίπου 1 MCPS (εκατομμύρια κύκλοι ανά δευτερόλεπτο).
  • Προστέθηκε το Frame API, το οποίο εκτελεί μπροστινό υπολογισμό μεγεθών μπλοκ για χειριστές με βάση οδηγίες SIMD και μη. Η βελτιστοποίηση κατέστησε δυνατή την αύξηση της απόδοσης κατά περίπου 0.25 MCPS.
  • Προστέθηκε ένας νέος μίκτης με υποστήριξη HiFi4 για μείωση ή αύξηση του αριθμού των καναλιών ήχου σε μια ροή.
  • Οι δυνατότητες χρήσης του Zephyr RTOS αντί του XTOS ως βάσης για υλικολογισμικό για το περιβάλλον έχουν διευρυνθεί. Η χρήση του Zephyr μπορεί να απλοποιήσει και να μειώσει σημαντικά τον κώδικα των εφαρμογών Sound Open Firmware. Η νέα έκδοση προσθέτει υποστήριξη για εγγενή Zephyr API για την καταγραφή και την εισαγωγή καθυστερήσεων. Πλήρης εγγενής υποστήριξη για το Zephyr αναμένεται στην επόμενη κυκλοφορία.
  • Η δυνατότητα χρήσης του πρωτοκόλλου IPC4 για λήψη και αναπαραγωγή ήχου σε συσκευές με Windows έχει επεκταθεί (η υποστήριξη IPC4 επιτρέπει στα Windows να αλληλεπιδρούν με DSP που βασίζονται στο Sound Open Firmware χωρίς τη χρήση συγκεκριμένου προγράμματος οδήγησης).

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο