Χρησιμοποιώντας το MicroBlaze του Xilinx στο σχεδιασμό FPGA

Guilliano A I Alleyne Testing Karatbars 1 gr gold 2016 Guilliano A I Alleyne (Ιούνιος 2019).

$config[ads_text] not found
Anonim

Χρησιμοποιώντας το MicroBlaze του Xilinx στο σχεδιασμό FPGA


Το MicroBlaze είναι ένας μαλακός πυρήνας επεξεργαστή RISC 32 bit, ο οποίος δημιουργήθηκε για να επιταχύνει την ανάπτυξη εφαρμογών μεγάλης χωρητικότητας ευαίσθητων στο κόστος, οι οποίες παραδοσιακά απαιτούσαν έναν ή περισσότερους μικροελεγκτές.

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

Ως ενσωματωμένος επεξεργαστής, η MicroBlaze δίνει τη δυνατότητα στο χαρτοφυλάκιο FPGA της Xilinx να ανταποκριθεί στις απαιτήσεις ολοκλήρωσης και απόδοσης των βιομηχανικών υποδομών επικοινωνιών, της ιατρικής συσκευής, της αυτοκινητοβιομηχανίας και των καταναλωτικών αγορών. Με το σωστό συνδυασμό πλατφόρμας και επεξεργαστή, οι σχεδιαστές μπορούν να επιλύσουν μια λύση για να ανταποκριθούν στις αρχιτεκτονικές προκλήσεις που ενσωματώνουν τον σωστό συνδυασμό περιφερειακών I / O, διεπαφών επικοινωνιών, δυνατότητας σε πραγματικό χρόνο και υποστήριξης λειτουργικού συστήματος.

Σχήμα 1. Αρχιτεκτονική πυρήνα MicroBlaze

Πώς είναι το MicroBlaze Διαφορετικό "Παράδειγμα MicroBlaze που εκτελεί το λειτουργικό σύστημα πραγματικού χρόνου« FreeRTOS »" src = "// www.allaboutcircuits.com/uploads/articles/xilinx_microblaze_figure2_updated.jpg" />

Εικόνα 2. Παράδειγμα MicroBlaze που εκτελεί το λειτουργικό σύστημα πραγματικού χρόνου «FreeRTOS»

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

Οι ανάγκες του factoring σε εφαρμογές υψηλής ταχύτητας με επιλογές διαμόρφωσης ανθεκτικές σε σφάλματα έχουν επίσης εφαρμοστεί. Αυτές οι ίδιες επιλογές ανθεκτικότητας σε σφάλματα συμβάλλουν στην παροχή δυνατοτήτων προστασίας από παραβιάσεις για εφαρμογές ευαίσθητες στην ασφάλεια. Δύο ή περισσότεροι "παράλληλοι" πυρήνες MicroBlaze με αόρατο κλείδωμα παρακολουθούν τον τρέχοντα επεξεργαστή και ανιχνεύουν επιθέσεις αναστάτωσης ή προσβολής μεμονωμένων γεγονότων, επιτρέποντας στο σύστημα να αυτοδιάγνωση και να ανταποκρίνεται σε καταστάσεις που είναι αλλιώς καταστροφικές.

Εικόνα 3. Παράδειγμα αρχιτεκτονικής Lockstep MicroBlaze ανθεκτικότητας σφαλμάτων

Εφαρμογή Softcore

Το Χαρτοφυλάκιο βελτιστοποιημένο από το κόστος της Xilinx έχει πολλές άλλες προόδους για να βελτιώσει την εφαρμογή softcore. Η διαμόρφωση SPI υψηλής ταχύτητας επιτρέπει ταχύτερες επιλογές εκκίνησης για τον κωδικό προγράμματος που είναι κάτοικος σε σειριακό φλας με δυνατότητα πολλαπλής εκκίνησης για την υποστήριξη της εφαρμογής πολλαπλών επεξεργαστών. Δυναμική αναβάθμιση στο πεδίο είναι δυνατή μέσω ενσωματωμένης δυνατότητας ασφαλούς ενημέρωσης, η οποία περιλαμβάνει κρυπτογράφηση AES 256-bit και εξακρίβωση ταυτότητας HMAC / SHA-256.

Το Xilinx υποστηρίζει τις ενημερώσεις υλικολογισμικού FPGA μέσω μιας δυνατότητας μερικής αναδιάρθρωσης. Αυτό επιτρέπει δυναμική τροποποίηση της λογικής στο FPGA με τη λήψη αρχείων μερικών bit ενώ η υπόλοιπη λογική συνεχίζει να λειτουργεί χωρίς διακοπή. Αντί να χρησιμοποιούν πολλαπλές συσκευές ή να απαιτούν τη λήψη του FPGA χωρίς σύνδεση για ενημέρωση, τα σχέδια μπορούν να διαθέτουν συνεχή λειτουργία χωρίς την ανάγκη για πρόσθετες συσκευές.

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

Η εργαλειομηχανή Eclipse είναι ένα ολοκληρωμένο, οικείο περιβάλλον που προσφέρει πλήρες σφάλμα μικτού επιπέδου και υποστηρίζει επίσης την ανάπτυξη πολυεπεξεργαστών. Οι σχεδιαστές λογισμικού μπορούν να μεταβούν μεταξύ της σύνταξης ARM ή του Microblaze και της υποστήριξης εντοπισμού σφαλμάτων στο ίδιο αναπτυξιακό περιβάλλον. Η δημιουργία πακέτου υποστήριξης αυτόματης πλακέτας παρέχει πρόσβαση στον χάρτη μνήμης της αρχιτεκτονικής υλικού της Microblaze, συμπεριλαμβανομένων των περιφερειακών και των εισόδων / εξόδων. Οι σύνδεσμοι BSP στους περιφερειακούς οδηγούς περιλαμβάνουν μια εγκατάσταση automake, επιτρέποντας στον σχεδιασμό να προχωρήσει με ελάχιστα γενικά έξοδα.

Επιλέξτε μια βέλτιστη πλατφόρμα FPGA και, στη συνέχεια, ανοίξτε μία από τις τρεις προκαθορισμένες αρχιτεκτονικές MicroBlaze με το SDK και ακολουθήστε τις οδηγίες που βρίσκονται στον οδηγό γρήγορης εκκίνησης (PDF). Οι σχεδιαστές λογισμικού μπορούν να λειτουργούν με "hello world" σε περίπου πέντε λεπτά. Αυτό επιτρέπει στους μηχανικούς να αποκτήσουν εξοικείωση με το Microblaze και να ξεκινήσουν την υλοποίησή τους χωρίς να χρειάζεται να χρησιμοποιήσουν τη σουίτα εργαλείων Vivado FPGA. Εάν απαιτείται περισσότερη προσαρμογή ειδικού σκοπού, το έργο του προτύπου μπορεί να προσαρμοστεί με το εργαλείο IP Integrator της Vivado. Αυτό το εργαλείο ενσωματώνει οδηγούς διαμόρφωσης σύνδεσης και αυτοματισμού μπλοκ και προσφέρει μια απλή μέθοδο προσθήκης πρόσθετων IP, τροποποίησης περιφερειακών διασυνδέσεων, συνδέσεων διαύλου και χαρτογράφησης μνήμης.

Εικόνα 4. Γρήγορα προσθέστε περιφερειακά με το εργαλείο Vivado IP Integrator Tool

Το χαρτοφυλάκιο FPGA με βελτιστοποίηση κόστους

Οι οικονομικά βελτιστοποιημένες οικογένειες FPGA Spartan-6, Spartan-7, Artix-7 και Zynq-7000 προσφέρουν δυνατότητες και λειτουργικότητα προσαρμοσμένες στις ανάγκες μιας ποικίλης σειράς εφαρμογών-στόχων. Παρόλο που όλοι έχουν την ικανότητα να εφαρμόζουν αλγόριθμους υλικού και συστήματα ελέγχου βασισμένα σε μικροεπεξεργαστές, οι διαφορές τους αντανακλούν συγκεκριμένες απαιτήσεις για συγκεκριμένες εφαρμογές, οι οποίες δεν είναι πρακτικές για την επίτευξη οικονομικά αποδοτικής μόνο με τη γενική λογική.

Σχήμα 5. Επισκόπηση χαρτοφυλακίου βελτιστοποιημένου κόστους Xilinx

Spartan-6 και Spartan-7

Οι πλατφόρμες FPGA Spartan-6 και Spartan-7 προορίζονται για εφαρμογές συνδεσιμότητας, εφαρμογές γεφύρωσης και διασύνδεση αισθητήρων. Με αυτό είπε, εξακολουθούν να είναι αρκετά ισχυροί για αλγόριθμους υψηλής απόδοσης, ενώ εξακολουθούν να προσφέρουν τις υψηλότερες πλατφόρμες συνδεσιμότητας I / O που είναι διαθέσιμες σήμερα. Ενεργοποιούν τα συντριπτικά σχέδια τεσσάρων επιπέδων PCB λόγω των μικρών επιλογών συσκευασίας μορφής τους.

Η απόδοση του Spartan-7 μειώνει το μέγεθος και το κόστος του τροφοδοτικού, οδηγώντας σε βελτιώσεις κόστους και μεγέθους. Ένας αριθμός ενσωματωμένων μονάδων σε επίπεδο συστήματος, συμπεριλαμβανομένων φετών DSP, PLL, διπλών ADC 1MHz 12-bit, καθώς και ένα σύστημα παρακολούθησης κεραμιδιών επιτρέπουν τη χαρτογράφηση των λειτουργιών στο FPGA για επιπλέον εξοικονόμηση. Άλλα χαρακτηριστικά περιλαμβάνουν τη δυνατότητα διασύνδεσης DDR3 υψηλής ταχύτητας και έναν τεράστιο αριθμό εύκολα προσβάσιμων μονάδων IP, που μπορούν να συνδεθούν με λεωφορεία AMBA AXI-4. Οι εκδόσεις αυτοκινήτου είναι διαθέσιμες για εφαρμογές που απαιτούν υψηλότερη ανοχή θερμοκρασίας και οι αρχιτέκτονες μπορούν να εξασφαλίσουν τα σχέδιά τους μέσω ενισχυμένης ασφάλειας IP με προστασία AES και Device DNA.

Artix-7

Το Artix-7 διατίθεται για σχέδια που απαιτούν σειριακές διεπαφές υψηλής ταχύτητας ή βαριά εφαρμογή επεξεργασίας σημάτων. Οι πομποδέκτες με χωρητικότητα 6.6Gbps είναι σήμερα ο ταχύτερος διαθέσιμος στη βιομηχανία. Αυτή η ταχύτητα επιτρέπει την ενσωμάτωση διασυνδεδεμένων με το σύστημα MicroBlaze διεπαφών όπως SDI με δυνατότητα PCI Express, DisplayPort, Serial ATA, HDMI, USB 3.0 και UHD.

Zynq-7000

Το Zynq-7000 είναι ένα SoC που διαθέτει ένα ή δύο πυρήνα ARM-Cortex-A9 υποσύστημα με πάνω από 3000 υψηλής ταχύτητας διασυνδέσεις με το ύφασμα FPGA για επιτάχυνση αλγόριθμου υψηλής ταχύτητας. Για να αποκτήσετε υψηλότερες ταχύτητες, οι σχεδιαστές μπορούν να χρησιμοποιήσουν το διπλό και τετραπύρηνο A53 Zynq UltraScale + MPSoC. Το Xilinx προσφέρει σχεδιασμό συστήματος και IP, ενσωματώνοντας το IP plug and play σε επίπεδο διεπαφής, παρά το επίπεδο σήματος των δομικών στοιχείων IP. Το οικοσύστημα σχεδιασμού υποστηρίζει σύνθεση υψηλού επιπέδου με C / C ++, σύστημα-C open-CL για να διευκολύνει την επιτάχυνση για τους προγραμματιστές λογισμικού μέσω του Eclipse.

Ενσωμάτωση MicroBlaze

Το MicroBlaze ενσωματώνεται στον διαμορφωμένο λογικό αναλυτή Xilinx, το λογισμικό Chipscope Pro. Αυτό επιτρέπει στις διεπαφές υλικού, συμπεριλαμβανομένων των σειριακών και παράλληλων λεωφορείων, των γενικών χρήσεων I / O και κάθε λογικής διασύνδεσης να συλλέγονται και να ιχνηλατούνται άμεσα ανά κύκλο μαζί με τη λειτουργία του μικροεπεξεργαστή. Οι διασυνδέσεις φυσικής διαμόρφωσης, προγραμματισμού και εντοπισμού σφαλμάτων είναι διαθέσιμες για να συνδέουν το σφάλμα λογισμικού υψηλού επιπέδου με το σύστημα MicroBlaze για να επιτρέψουν όλες τις γνωστές συσκευές διακοπής και κλιμάκωσης που απαιτούνται.

Το Xilinx παρέχει καλώδια USB 2 για την ανάπτυξη κιτ ανάπτυξης CPLD και FPGA καθώς και καλώδια JTAG για άμεση σύνδεση με τις ίδιες τις συσκευές, εάν απαιτείται. Εάν απαιτείται απομακρυσμένη αποσφαλμάτωση, είναι δυνατή η σύνδεση σε ένα τοπικό δίκτυο μέσω ενός διανομέα ή μέσω ενός ανεξάρτητα τροφοδοτούμενου καλωδίου Ethernet σε JTAG. Εάν απαιτούνται άλλες επιλογές ή υπάρχει ανάγκη να είναι συμβατές με τα υπάρχοντα εργαλεία, λύσεις εντοπισμού σφαλμάτων είναι διαθέσιμες από παρόχους τρίτων.

Το MicroBlaze λειτουργεί ως κύριος επεξεργαστής ή ως συν-επεξεργαστής για το υποσύστημα ARM που επιτρέπει την επιτάχυνση αλγόριθμου σε πραγματικό χρόνο και τον διαχωρισμό κρίσιμης λειτουργίας. Οι νέες λειτουργίες προσφέρουν αξιόπιστα, επιτρέποντας βελτιώσεις σε πραγματικό χρόνο μέσω αλλαγών σχεδιασμού υλικού, συμπεριλαμβανομένης της προσθήκης περισσότερων επεξεργαστών MicroBlaze. Οι αναβαθμίσεις μπορούν να πραγματοποιηθούν με υψηλή ασφάλεια, τόσο λογισμικό όσο και λογικές εικόνες FPGA αναβαθμισμένες κατά τη διάρκεια αδιάλειπτης λειτουργίας. Οι χαμηλού κόστους ενσωματωμένες λύσεις ARM προσφέρουν δυνατότητες χώρου εφαρμογών και δυνατότητες IoT σε ένα FPGA που μπορεί να ενσωματώσει πολλούς συνεργαζόμενους μικροεπεξεργαστές MicroBlaze όπως απαιτείται για την υποστήριξη αλγόριθμου σε πραγματικό χρόνο.

Η δυνατότητα OpenC C-to-VHDL του Xilinx OpenCL επιτρέπει την αόρατη επιτάχυνση υλικού σχεδίασης λογισμικού. Ο συνδυασμός του MicroBlaze με το χαρτοφυλάκιο βελτιστοποιημένου κόστους παρέχει μια κλιμακούμενη αρχιτεκτονική που προστατεύεται από το μέλλον και διαθέτει ένα ενοποιημένο εργαλείο που χρησιμοποιεί έναν ολοκληρωμένο κατάλογο IP.

Επιπρόσθετοι πόροι

  • MicroBlaze Design Hub
  • Χαρτοφυλάκιο βελτιστοποιημένο βάσει κόστους

Τα Βιομηχανικά Άρθρα είναι μια μορφή περιεχομένου που επιτρέπει στους εταίρους της βιομηχανίας να μοιράζονται χρήσιμα νέα, μηνύματα και τεχνολογία με τους αναγνώστες του All About Circuits με τρόπο που το συντακτικό περιεχόμενο δεν είναι κατάλληλο. Όλα τα άρθρα της βιομηχανίας υπόκεινται σε αυστηρές συντακτικές οδηγίες με σκοπό να προσφέρουν στους αναγνώστες χρήσιμες ειδήσεις, τεχνικές γνώσεις ή ιστορίες. Οι απόψεις και οι απόψεις που εκφράζονται στα Βιομηχανικά Άρθρα είναι αυτές του συνεργάτη και όχι απαραίτητα εκείνες του All About Circuits ή των συγγραφέων του.