GOWIN-λογότυπο

Προγραμματισμός RISCV Board Development GOWIN FPGA

GOWIN-FPGA-Development-Board-RISCV-Programming-product-image

Πνευματικά δικαιώματα © 2022 Guangdong Gowin Semiconductor Corporation. Ολα τα δικαιώματα διατηρούνται.
είναι εμπορικό σήμα της Guangdong Gowin Semiconductor Corporation και είναι καταχωρημένο στην Κίνα, στο Γραφείο Ευρεσιτεχνιών και Εμπορικών Σημάτων των ΗΠΑ και σε άλλες χώρες. Όλες οι άλλες λέξεις και λογότυπα που προσδιορίζονται ως εμπορικά σήματα ή σήματα υπηρεσιών είναι ιδιοκτησία των αντίστοιχων κατόχων τους. Κανένα μέρος αυτού του εγγράφου δεν επιτρέπεται να αναπαραχθεί ή να μεταδοθεί σε οποιαδήποτε μορφή ή με οποιαδήποτε ένδειξη, ηλεκτρονική, μηχανική, φωτοτυπική, ηχογράφηση ή άλλο, χωρίς την προηγούμενη γραπτή συγκατάθεση της GOWINSEMI.

Αρνηση
Η GOWINSEMI δεν αναλαμβάνει καμία ευθύνη και δεν παρέχει καμία εγγύηση (είτε ρητή είτε σιωπηρή) και δεν είναι υπεύθυνη για οποιαδήποτε ζημιά προκληθεί στο υλικό, το λογισμικό, τα δεδομένα ή την ιδιοκτησία σας που προκύπτει από τη χρήση των υλικών ή της πνευματικής ιδιοκτησίας εκτός από όσα περιγράφονται στους Όρους και Προϋποθέσεις της GOWINSEMI της πώλησης. Όλες οι πληροφορίες σε αυτό το έγγραφο θα πρέπει να αντιμετωπίζονται ως προκαταρκτικές. Η GOWINSEMI μπορεί να κάνει αλλαγές σε αυτό το έγγραφο ανά πάσα στιγμή χωρίς προηγούμενη ειδοποίηση. Όποιος βασίζεται σε αυτήν την τεκμηρίωση θα πρέπει να επικοινωνήσει με την GOWINSEMI για την τρέχουσα τεκμηρίωση και τα σφάλματα.

Ιστορικό αναθεώρησης

Ημερομηνία Εκδοχή Περιγραφή
04/29/2019 1.0Ε Δημοσιεύτηκε η αρχική έκδοση.
 

11/11/2022

 

1.1Ε

  • Το λογισμικό AndeSight RDS v311 ενημερώθηκε.
  • Ο σχεδιασμός αναφοράς ενημερώθηκε.
  • Η περιγραφή της λήψης των αποτελεσμάτων συλλογής ενσωματωμένων έργων μέσω SPI Flash ενημερώθηκε.

Εισαγωγή

AE250 Εισαγωγή

Το AE250 είναι ένα σύστημα RISC-V MCU 32-bit. Η δομή του φαίνεται στο Σχήμα 1-1.

GOWIN-FPGA-Development-Board-RISCV-Programming-1

Εικόνα 1-1 Διάγραμμα Δομής AE250

Με βάση την πλακέτα ανάπτυξης Gowin FPGA, το σύστημα ανάπτυξης και εντοπισμού σφαλμάτων RISC-V AE250 MCU φαίνεται στο Σχήμα 1-2.

GOWIN-FPGA-Development-Board-RISCV-Programming-2

Εικόνα 1-2 Διάγραμμα δομής συστήματος ανάπτυξης και εντοπισμού σφαλμάτων

Το τσιπ FPGA στην πλακέτα ανάπτυξης έχει ρυθμιστεί ως AE250 MCU χρησιμοποιώντας τον προγραμματιστή Gowin στον υπολογιστή, αφού συνδέσετε το καλώδιο εντοπισμού σφαλμάτων, μπορείτε να εκτελέσετε την ανάπτυξη και τον εντοπισμό σφαλμάτων του ενσωματωμένου προγράμματος με το λογισμικό AndeSight RDS v311.

Προετοιμασίες

Πριν χρησιμοποιήσετε το Gowin FPGA και το AE250 για ανάπτυξη και εντοπισμό σφαλμάτων, πρέπει να προετοιμάσετε τα ακόλουθα εργαλεία:

  1. Σειρά Gowin GW2A πλακέτας ανάπτυξης FPGA.
  2. Πακέτο εγκατάστασης λογισμικού Gowin για ρύθμιση παραμέτρων και λήψη του τσιπ FPGA.
  3. Πακέτο εγκατάστασης AndeSight RDS v311 για την ανάπτυξη και τον εντοπισμό σφαλμάτων του ενσωματωμένου προγράμματος.
  4. Το καλώδιο εντοπισμού σφαλμάτων χρησιμοποιείται για τη λήψη και τον εντοπισμό σφαλμάτων του ενσωματωμένου προγράμματος και η προεπιλογή είναι το AICE-MINI+. οι χρήστες πρέπει να το αγοράσουν μόνοι τους.

Σημείωμα! 

  1. Εάν χρειάζεται να εξάγει πληροφορίες μέσω UART, απαιτείται καλώδιο UART σε USB.
  2. Απαιτούνται άλλα περιφερειακά που θα χρησιμοποιηθούν.
Βήματα ανάπτυξης και διόρθωσης σφαλμάτων

Τα βασικά βήματα για την ανάπτυξη και τον εντοπισμό σφαλμάτων του RISC-V AE250 MCU με βάση την πλακέτα ανάπτυξης GW2A-55C είναι τα εξής:

  1. Εγκατάσταση λογισμικού: Το λογισμικό Gowin χρησιμοποιείται για τη διαμόρφωση και τη δημιουργία σχεδίασης AE250 RTL και τη δημιουργία του Bitstream file του σχεδίου· Το λογισμικό AndeSight RDS v311 χρησιμοποιείται για την ανάπτυξη και τον εντοπισμό σφαλμάτων ενσωματωμένων προγραμμάτων. Απαιτούνται επίσης άλλα λογισμικά και προγράμματα οδήγησης για τον εντοπισμό σφαλμάτων.
  2. Διαμορφώστε το τροφοδοτικό και το καλώδιο λήψης της πλακέτας ανάπτυξης. Το Bitstream file του AE250_chip γίνεται λήψη στο τσιπ FPGA στην πλακέτα ανάπτυξης χρησιμοποιώντας το Gowin Programmer και το AE250 εκτελείται στην πλακέτα ανάπτυξης.
  3. Ανοίξτε το λογισμικό RDS για να δημιουργήσετε ένα νέο ενσωματωμένο έργο ή να ανοίξετε ένα υπάρχον έργο για κωδικοποίηση, μεταγλώττιση και άλλες λειτουργίες. Συνδέστε το Καλώδιο εντοπισμού σφαλμάτων που χρησιμοποιείται για τον εντοπισμό σφαλμάτων AE250, κάντε λήψη του αποτελέσματος μεταγλώττισης του έργου στη μνήμη εντολών (ILM) στο AE250 και ξεκινήστε τον εντοπισμό σφαλμάτων στο τσιπ.
  4. Κατά τον εντοπισμό σφαλμάτων, μπορείτε να χρησιμοποιήσετε το καλώδιο UART σε USB για να συνδέσετε τη διεπαφή UART του AE250 με τον υπολογιστή, να χρησιμοποιήσετε το ενσωματωμένο σειριακό τερματικό στο RDS για να χειριστείτε τις λειτουργίες εισόδου και εξόδου. Μπορείτε να χρησιμοποιήσετε το GPIO για να συνδεθείτε με ενδείξεις LED, πλήκτρα ή εξωτερικές ακίδες για λειτουργίες εισόδου/εξόδου. Τα I2C, SPI, Ethernet και άλλα περιφερειακά μπορούν επίσης να επιλεγούν για χρήση.
  5. Το AE250 μπορεί να συνδεθεί σε ένα Flash μέσω SPI, να κατεβάσει το αποτέλεσμα μεταγλώττισης του ενσωματωμένου προγράμματος στο Flash χρησιμοποιώντας το Gowin Programmer. Όταν το τσιπ είναι ενεργοποιημένο, το AE250 θα διαβάσει αυτόματα το ενσωματωμένο πρόγραμμα στο SPI Flash και θα ξεκινήσει. Μπορείτε να χρησιμοποιήσετε ξανά το Flash που αποθηκεύει το FPGA Bitstream. Ορισμένα μπορούν να αποθηκεύσουν τη ροή bit FPGA και άλλα μπορούν να αποθηκεύσουν τα αποτελέσματα μεταγλώττισης των ενσωματωμένων προγραμμάτων. Αυτή είναι μια πρακτική και οικονομική μέθοδος.
    Μπορείτε να δείτε το κεφάλαιο 2 Οδηγίες σύνδεσης καλωδίου εντοπισμού σφαλμάτων, κεφάλαιο
    3 Χρησιμοποιήστε τις οδηγίες για το RDS και το κεφάλαιο 4 Σχεδίαση αναφοράς για λεπτομερή βήματα.

Οδηγίες σύνδεσης καλωδίου εντοπισμού σφαλμάτων

Το RDS + AE250 χρησιμοποιεί καλώδιο εντοπισμού σφαλμάτων AICE-MINI+ από προεπιλογή. το εξωτερικό φαίνεται στα αριστερά στο Σχήμα 2-1 και οι ακίδες φαίνονται δεξιά στο Σχήμα 2-1. Είναι μια διεπαφή 12 ακίδων. Πρέπει να σημειωθεί ότι η ακίδα 1 είναι κενή στο σχήμα. Όταν το καλώδιο συνδεθεί σωστά και ανοίξει το RDS, η κόκκινη λυχνία LED που επισημαίνεται με το κίτρινο πλαίσιο στην εικόνα θα σβήσει.
Εικόνα 2-1 Καλώδιο εντοπισμού σφαλμάτων AICE-MINI+ και οι ακίδες του

GOWIN-FPGA-Development-Board-RISCV-Programming-3

Ο ορισμός της ακίδας του καλωδίου εντοπισμού σφαλμάτων AICE-MINI+ είναι όπως φαίνεται στον Πίνακα 2-1. Πρέπει να σημειωθεί ότι η ακίδα 1 ορίζεται ως Χωρίς σύνδεση (NC), που αντιστοιχεί στην κενή. Το VREF χρειάζεται να συνδέσει έναν ακροδέκτη τροφοδοσίας 3.3 V και το GND χρειάζεται μόνο να συνδέσει τον ακροδέκτη 3 ή τον ακροδέκτη 5.

Πίνακας 2-1 Ορισμός ακίδας καλωδίου εντοπισμού σφαλμάτων AICE-MINI+

Αριθμός καρφίτσας Καρφίτσα καλωδίου εντοπισμού σφαλμάτων AICE-MINI+
1 NC
2 TSRST_N
3 GND
4 TTMS
5 GND
6 TCK
7 VREF
8 NC
9 NC
10 TTRST_N
11 TTDO
12 TTDI

Χρήση Οδηγιών για RDS

Εγκατάσταση RDS

Αποσυμπιέστε το πακέτο εγκατάστασης και πληκτρολογήστε Windows/Disk1. Κάντε διπλό κλικ στο setup.exe για να το εγκαταστήσετε. Δεν απαιτούνται ειδικές ρυθμίσεις κατά την εγκατάσταση. Κατά την εγκατάσταση, θα εμφανιστεί ένα παράθυρο διαλόγου που θα σας ρωτάει εάν θα εγκαταστήσετε το πρόγραμμα οδήγησης, παρακαλώ επιλέξτε Ναι. Για τα βήματα εγκατάστασης, βλ
AndeSight_RDS_v3.2_Installation_Guide_UM207_V1.0.pdf, το οποίο μπορείτε να βρείτε στο πακέτο εγκατάστασης.

  1.  Όταν ορίζετε τη διαδρομή εγκατάστασης και τη διαδρομή του χώρου εργασίας, μην συμπεριλάβετε κινεζικούς χαρακτήρες ή χώρο, διαφορετικά θα εμφανιστεί σφάλμα χρόνου εκτέλεσης.
  2. Η τρέχουσα έκδοση του RDS υποστηρίζει από προεπιλογή το καλώδιο AICE-MINI+.
  3. Ο προγραμματιστής GOWIN ενδέχεται να μην μπορεί να συνδεθεί στην πλακέτα ανάπτυξης μετά την εγκατάσταση του RDS, κάτι που μπορεί να διορθωθεί με την επανεγκατάσταση του προγράμματος οδήγησης Gowin Programmer.
  4. Για αύξοντα αριθμό και πιστοποιητικό files, επικοινωνήστε με την Gowin Semiconductor Corp.
Δημιουργία Νέου Έργου

Κλικ File > New > Project > Andes C project > Next on RDS interface για να εισέλθετε στη διεπαφή διαμόρφωσης του New C Project, όπως φαίνεται στην Εικόνα 3-1.

Εικόνα 3-1 Δημιουργία νέου έργου

GOWIN-FPGA-Development-Board-RISCV-Programming-4

Για το νέο έργο C, πρέπει να διαμορφωθούν οι ακόλουθες παράμετροι:

  1. Όνομα έργου
  2. Τοποθεσία: Η προεπιλεγμένη τοποθεσία είναι ο τρέχων χώρος εργασίας.
  3. Η ρύθμιση παραμέτρων σύνδεσης έχει οριστεί σε ICE, υποδεικνύοντας ότι η πλακέτα ανάπτυξης είναι συνδεδεμένη χρησιμοποιώντας καλώδιο εντοπισμού σφαλμάτων ICE. Εάν ο εξομοιωτής χρησιμοποιείται ως δοκιμαστική πλατφόρμα, επιλέξτε SID.
  4. Για το Chip Profile, επιλέξτε ADP-AE250-N25-GOWIN, το οποίο έχει βελτιστοποιηθεί σύμφωνα με το Gowin FPGA.
  5. Ο τύπος έργου περιλαμβάνει ένα κενό έργο και ένα έργο Hello World ANSI C.
  6. Για τις αλυσίδες εργαλείων, το nds32le-elf-mculib-v5m είναι η προεπιλογή.
    Αφού δημιουργήσετε ένα νέο έργο, κάντε δεξί κλικ στο όνομα του έργου στην Εξερεύνηση του Έργου, επιλέξτε Δημιουργία έργου από το αναπτυσσόμενο μενού ή κάντε κλικ στο " " στη γραμμή εργαλείων για να μεταγλωττίσετε και να συνδέσετε το έργο. επιλέξτε Clean Project από το αναπτυσσόμενο μενού για να κάνετε το έργο καθαρό.
Εισαγωγή και εξαγωγή έργου

Κάντε δεξί κλικ στο χώρο του Project Explorer για να επιλέξετε «Εισαγωγή» ή «Εξαγωγή», όπως φαίνεται στην Εικόνα 3-2.

GOWIN-FPGA-Development-Board-RISCV-Programming-5

Εικόνα 3-2 Εισαγωγή/Εξαγωγή έργου

Κάντε κλικ στο «Εισαγωγή > Γενικά > Υπάρχον έργο σε χώρο εργασίας» για να εισαγάγετε ένα έργο και η διεπαφή είναι όπως φαίνεται στην Εικόνα 3-3. Όταν επιλέγετε "Επιλογή ριζικού καταλόγου", εισαγάγετε το έργο στον φάκελο. όταν επιλέγετε "Επιλογή αρχειοθέτησης αρχείου", εισαγάγετε το έργο σε zip.

GOWIN-FPGA-Development-Board-RISCV-Programming-6

Εικόνα 3-3 Εισαγωγή έργου

Επιλέξτε «Εξαγωγή… > Αρχειοθέτηση File” για να ανοίξετε τη διεπαφή του έργου εξαγωγής, όπως φαίνεται στην Εικόνα 3-4. Αφού επιλέξετε το έργο προς εξαγωγή, τη μορφή συμπίεσης, τη διαδρομή αποθήκευσης κ.λπ. μπορείτε να ολοκληρώσετε την εξαγωγή.GOWIN-FPGA-Development-Board-RISCV-Programming-7

Εικόνα 3-4 Εξαγωγή έργου

Λήψη προγραμμάτων στο Flash

Το AE250 υποστηρίζει εκκίνηση από το Flash, στη συνέχεια διαβάζει το ενσωματωμένο πρόγραμμα από το Flash μέσω της διεπαφής SPI και το αποθηκεύει στο ILM και, στη συνέχεια, εκτελείται το ενσωματωμένο πρόγραμμα. Η προτεινόμενη μέθοδος είναι η επαναχρησιμοποίηση του SPI Flash που εξοικονομεί FPGA Bitstream. χρησιμοποιήστε το πρώτο μισό του Flash για να αποθηκεύσετε το FPGA Bitstream και το υπόλοιπο για να αποθηκεύσετε το δυαδικό files των ενσωματωμένων προγραμμάτων.

  1. Ανοίξτε τη γεννήτρια πυρήνα IP στο Gowin Software και καλέστε τις παραμέτρους AE250 RTL. Κάντε διπλό κλικ στο SMU για να ανοίξετε τη διεπαφή SMU και ορίστε το "System Reset Vector Default" σε 0x80400000, όπως φαίνεται στην Εικόνα 3-5. Ορίστε το χώρο του SPI Flash 0~0x400000 με συνολικά 4M byte ως διεύθυνση αποθήκευσης του Bitstream. ξεκινώντας από 0x400000 χρησιμοποιείται ως διεύθυνση αποθήκευσης του δυαδικού files των ενσωματωμένων προγραμμάτων.
    Εικόνα 3-5 Προεπιλογή διανύσματος επαναφοράς συστήματος
    GOWIN-FPGA-Development-Board-RISCV-Programming-8
  2. Κάντε διπλό κλικ στο SPI1 για να ανοίξετε τη διεπαφή SPI1, επιλέξτε "SPI1 Support" και ορίστε το "SPI1 Memory Map Space Base Address" σε 0x80400000, όπως φαίνεται στην Εικόνα 3 6.
    Εικόνα 3-6 Διαμόρφωση SPI1
    GOWIN-FPGA-Development-Board-RISCV-Programming-9
  3. Στους φυσικούς περιορισμούς της σχεδίασης RTL, η διεπαφή SPI1 θα πρέπει να είναι συνδεδεμένη στο SPI Flash και η διεπαφή SPI1 θα πρέπει να είναι φυσικά περιορισμένη σύμφωνα με τον παρακάτω πίνακα. Για διαφορετικά τσιπ FPGA, η θέση της διεπαφής MSPI είναι επίσης διαφορετική και ο περιορισμός θα πρέπει να είναι συγκεκριμένος για τη συγκεκριμένη κατάσταση.
    Πίνακας 3-1 Φυσικοί περιορισμοί διεπαφής SPI1
    Διεπαφή AE250 SPI1 Διεπαφή FPGA MSPI
    CSN MCSN
    CLK MCLK
    ΜΙΣΟ MSO
    MOSI MSI
  4. Επαναχρησιμοποιήστε τη διεπαφή MSPI ως κανονικό IO. Στο παράθυρο «Διαδικασία» του λογισμικού Gowin, κάντε δεξί κλικ στο «Τοποθέτηση και διαδρομή», επιλέξτε «Διαμόρφωση» στο αναδυόμενο μενού. επιλέξτε την καρτέλα "Dual Purpose Pin" και επιλέξτε "Use MSPI as regular IO" και κάντε κλικ στο "OK" για να ολοκληρώσετε την τοποθέτηση και τη δρομολόγηση.
    Εικόνα 3-7 Ορίστε τη διεπαφή MSPI σε Κανονικό IO
    GOWIN-FPGA-Development-Board-RISCV-Programming-10
  5. Τροποποιήστε τις ρυθμίσεις παραμέτρων του ενσωματωμένου προγράμματος. Πρώτα, τροποποιήστε τις παραμέτρους του bootloader στο σενάριο σύνδεσης. Εφόσον το σενάριο σύνδεσης στο ενσωματωμένο πρόγραμμα AE250 δημιουργείται αυτόματα από το SAG file, θα πρέπει να τροποποιηθεί στο SAG file. Ανοίξτε το ae250.sag, βρείτε το BOOTLOADER και τροποποιήστε το στην τιμή System Reset Vector Default στη σχεδίαση RTL, όπως φαίνεται στην Εικόνα 3-8. Στη συνέχεια, τροποποιήστε το config.h. Ανοίξτε το src/bsp/config/config.h και βρείτε τον ορισμό της μακροεντολής
    "BUILD_MODE" και τροποποιήστε το σε "BUILD_BURN".
    Εικόνα 3-8 ae250.sag bootloader Ρύθμιση παραμέτρων
    GOWIN-FPGA-Development-Board-RISCV-Programming-11

Σημείωμα!

    • Η παράμετρος πρέπει να είναι συνεπής με την τιμή System Reset Vector Default της παραμέτρου RTL.
    • Τροποποιήστε τις ρυθμίσεις μεταγλώττισης. κάντε δεξί κλικ στο όνομα του ενσωματωμένου έργου, επιλέξτε Δημιουργία ρυθμίσεων. επιλέξτε την καρτέλα «Objcopy > General» και καταργήστε την επιλογή «Disable». (Μην δημιουργείτε αυτόματα έξοδο file.)

Κάντε εκ νέου μεταγλώττιση του ενσωματωμένου προγράμματος για τη δημιουργία δυαδικού files του ενσωματωμένου έργου και κατεβάστε το files στη διεύθυνση SPI Flash 0x400000 χρησιμοποιώντας τη λειτουργία εξωτερικού Flash C Bin του Gowin Programmer.
Συνθέστε και τοποθετήστε και δρομολογήστε ξανά το τροποποιημένο σχέδιο RTL και κατεβάστε το στη διεύθυνση SPI Flash 0x000000 χρησιμοποιώντας τη λειτουργία εξωτερικού Flash του Gowin Programmer.

Εντοπισμός σφαλμάτων σε τσιπ

Μετά τη μεταγλώττιση, τα αποτελέσματα της μεταγλώττισης του ενσωματωμένου έργου μπορούν να ληφθούν στον πίνακα ανάπτυξης για εντοπισμό σφαλμάτων στο chip.
Τροποποίηση config.h; ανοίξτε το src/bsp/config/config.h και βρείτε τον ορισμό της μακροεντολής BUILD_MODE. τροποποιήστε το σε BUILD_LOAD και μεταγλωττίστε ξανά το ενσωματωμένο πρόγραμμα.
Κάντε δεξί κλικ στο όνομα του έργου στην Εξερεύνηση του Έργου και επιλέξτε «Εντοπισμός σφαλμάτων ως > Πρόγραμμα MCU» από το αναπτυσσόμενο μενού. Για πρώτη φορά, θα εμφανιστεί ένα παράθυρο διαλόγου για τη ρύθμιση "Διαμόρφωση εντοπισμού σφαλμάτων", όπως φαίνεται στην Εικόνα 3-9.

GOWIN-FPGA-Development-Board-RISCV-Programming-14

Εικόνα 3-9 Διαμορφώσεις εντοπισμού σφαλμάτων

Στην καρτέλα "Εκκίνηση", επιλέξτε "Επαναφορά και κράτημα" για να σταματήσετε το πρόγραμμα πριν εκτελέσετε την πρώτη εντολή. Εισαγάγετε φόρτωση στο πλαίσιο παραμέτρων κάτω από αυτήν την επιλογή για λήψη των αποτελεσμάτων μεταγλώττισης του ενσωματωμένου έργου στο ILM πριν από τον εντοπισμό σφαλμάτων στο chip.
Στις "Επιλογές χρόνου εκτέλεσης", επιλέξτε "Ορισμός σημείου διακοπής στο". Εισαγάγετε μια ετικέτα, όπως η κύρια στο πλαίσιο εισαγωγής. Μπορεί να ορίσει ένα σημείο διακοπής στην αρχή της κύριας λειτουργίας. Επιλέξτε "Συνέχιση" και θα ξεκινήσει τη συνεχή λειτουργία αμέσως μετά την εισαγωγή του εντοπισμού σφαλμάτων στο chip.
Όταν εισάγετε τον εντοπισμό σφαλμάτων στο τσιπ, μεταβαίνει αυτόματα στον εντοπισμό σφαλμάτων view και θα εμφανιστεί μια περιοχή, όπως φαίνεται στο Σχήμα 3-10. Αυτή η περιοχή είναι η περιοχή λειτουργίας για εντοπισμό σφαλμάτων στο chip. Ορισμένα κουμπιά συντόμευσης για εντοπισμό σφαλμάτων εμφανίζονται στο κόκκινο πλαίσιο. Από αριστερά προς τα δεξιά, σημαίνουν επανεκκίνηση του DEBUG, συνέχιση της εκτέλεσης, αναστολή, τερματισμός, αποσύνδεση, σύνδεση σε μία διεργασία, βήμα σε, βήμα προς τα πάνω, βήμα επιστροφής και λειτουργία βήματος εντολών. σε αυτόν τον τρόπο λειτουργίας, κάθε φορά που εκτελεί μια εντολή συναρμολόγησης risc – v, διαφορετικά κάθε φορά εκτελεί μια πρόταση C.

Σημείωμα!
Τα γκρι εικονίδια σημαίνουν ότι δεν είναι διαθέσιμα αυτήν τη στιγμή.
Κάντε διπλό κλικ στο αριστερό στον αριθμό γραμμής στο κείμενο του κώδικα για να ορίσετε γρήγορα σημεία διακοπής ή να ακυρώσετε σημεία διακοπής και κάντε δεξί κλικ στο κείμενο του κώδικα για να επιλέξετε "Run to line" από το αναδυόμενο μενού.GOWIN-FPGA-Development-Board-RISCV-Programming-13

Εικόνα 3-10 Κουμπιά εντοπισμού σφαλμάτων Εισαγωγή

Το σχήμα 3-11 είναι ένα παράθυρο δηλώσεων συναρμολόγησης που εμφανίζει τα περιεχόμενα των οδηγιών συναρμολόγησης που εκτελούνται σε πραγματικό χρόνο στο ILM.

GOWIN-FPGA-Development-Board-RISCV-Programming-14

Εικόνα 3-11 Παράθυρο κωδικών οδηγιών συναρμολόγησης

Χρήση ενσωματωμένου σειριακού τερματικού RDS

Το σχήμα 3-12 δείχνει το ενσωματωμένο τερματικό UART στη διεπαφή RDS. Εάν χρειάζεται να χρησιμοποιήσετε, κάντε κλικ στο «Παράθυρο > Εμφάνιση View > Terminal" στο επάνω μενού για να ανοίξετε το παράθυρο "Terminal" και μετά κάντε κλικ στο "open a terminal" για να δημιουργήσετε ένα νέο σειριακό τερματικό. Αφού ρυθμίσετε τον αριθμό θύρας (που μπορεί να είναι viewed στη διαχείριση υλικού), το baud rate και άλλες παραμέτρους, κάντε κλικ στο "OK" για να ξεκινήσετε τη χρήση.

GOWIN-FPGA-Development-Board-RISCV-Programming-15

Εικόνα 3-12 Ενσωματωμένος σειριακός ακροδέκτης RDS

Για λεπτομέρειες, δείτε το έγγραφο
AndeSight_RDS_v3.1_User_Manual_UM170_V1.0.pdf, το οποίο μπορείτε να βρείτε στη διαδρομή doc του καταλόγου εγκατάστασης.

Σχεδιασμός Αναφοράς

Κωδικός Έργου

Το κλειδί fileΤα s στο ενσωματωμένο πρότυπο έργου AE250 είναι τα εξής:

  1. src/bsp/ae250/ae250.h: Αυτό file περιέχει τον ορισμό του ρολογιού του συστήματος, τον ορισμό του περιφερειακού μητρώου, τον ορισμό της αντιστοίχισης διεύθυνσης του περιφερειακού μητρώου και τον ορισμό του αριθμού πηγής διακοπών. Ο ορισμός του ρολογιού πρέπει να είναι συνεπής με τη διαμόρφωση παραμέτρων AE250.
  2. src/bsp/ae250/ae250.c: Η συνάρτηση reset_handler είναι η καταχώρηση για την έναρξη του ενσωματωμένου προγράμματος. Στην καταχώρηση, η προετοιμασία UART εκτελείται πριν από την εκτέλεση της κύριας συνάρτησης. Επιλέγεται η απαιτούμενη θύρα UART και ο απαιτούμενος ρυθμός baud διαμορφώνεται σύμφωνα με τη διαμόρφωση παραμέτρων του AE250.
  3. src/bsp/ae250/interrupt.c: Αυτό file είναι ο ορισμός των λειτουργιών χειριστή διακοπών του AE250
  4. src/bsp/config/config.h: Αυτό file περιέχει τον ορισμό της μακροεντολής που ελέγχει τη μέθοδο μεταγλώττισης. Το #define BUILD_MODE μπορεί να οριστεί ως BUILD_LOAD ή BUILD_BURN. BUILD_LOAD σημαίνει ότι το πρόγραμμα φορτώνεται απευθείας στο ILM και γενικά χρησιμοποιείται κατά τον εντοπισμό σφαλμάτων. Το BUILD_BURN σημαίνει ότι το πρόγραμμα γίνεται λήψη στο SPI Flash και το πρόγραμμα διαβάζεται από το SPI Flash στο ILM πρώτα μετά την ενεργοποίηση και στη συνέχεια εκτελείται, κάτι που ισχύει για την έκδοση του προγράμματος.
  5. Start.S: Η μίζα file γραμμένο σε γλώσσα assembly.
  6. src/bsp/loader.c: bootloader file, το οποίο χρησιμοποιείται για εκκίνηση από το SPI Flash.
  7. ae250.sag: Το Sag είναι το σενάριο μορφής scattering-and-Gathering. Χρησιμοποιείται για τη δημιουργία σεναρίου σύνδεσης. Θα πρέπει να σημειωθεί ότι οι παράμετροι του χάρτη μνήμης στο ae250.sag πρέπει να είναι συνεπείς με αυτές του AE250.
  8. src/bsp/driver: Αυτός ο κατάλογος περιέχει δύο φακέλους, ο ae250 είναι κωδικός προγράμματος οδήγησης AE250, περιλαμβάνει είναι η διεπαφή κλήσης των λειτουργιών του προγράμματος οδήγησης.
  9. src/bsp/lib: Περιέχει δύο fileμικρό. Στο printf.c, η μορφή της υποσυνάρτησης στην τυπική βιβλιοθήκη C επαναπροσδιορίζεται για να εξάγει πληροφορίες printf μέσω UART. Στο read.c, υπάρχει μια απλή λειτουργία ανάγνωσης πληροφοριών εισόδου μέσω UART.
Σχεδιασμός Αναφοράς

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

  1. ae250_demo: Επιδεικνύει την είσοδο/έξοδο UART και την έξοδο GPIO του AE250.
  2. ae250_plic: Επιδεικνύει την απόκριση του ελεγκτή διακοπής σε διακοπές και παρέχει επιδείξεις του χρονοδιακόπτη μηχανής και του χρονοδιακόπτη pit.
  3. ae250_freertos: Αποδεικνύει ότι οι θύρες AE250 είναι ενσωματωμένες
    Πρόγραμμα εκτέλεσης πολλαπλών νημάτων FreeRTOS σε πραγματικό χρόνο.
  4. ae250_ucosiii: Αποδεικνύει ότι οι θύρες AE250 ενσωματώνουν πρόγραμμα εκτέλεσης πολλαπλών νημάτων σε πραγματικό χρόνο το λειτουργικό σύστημα uC/OS-III.

Έγγραφα / Πόροι

Προγραμματισμός RISCV Board Development GOWIN FPGA [pdf] Οδηγός χρήστη
FPGA Development Board RISCV Programming, Board RISCV Programming, FPGA Development RISCV Programming, RISCV Programming, Board RISCV

Αναφορές

Αφήστε ένα σχόλιο

Η διεύθυνση email σας δεν θα δημοσιευτεί. Τα υποχρεωτικά πεδία επισημαίνονται *