Nios II Processor Implementation in Cyclone II FPGAs

of 115 /115
ΤΕΙ ΚΑΒΑΛΑΣ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Nios II Processor Implementation in Cyclone II FPGAs Υλοποίηση Ελεγκτών PID με τον Επεξεργαστή Nios II σε FPGA ΝΙΚΟΛΑΟΥ ΠΑΝΑΓΙΩΤΗΣ ΕΠΙΒΛΕΠΩΝ: ΔΡ. ΤΣΑΧΟΥΡΙΔΗΣ ΒΑΣΙΛΕΙΟΣ, Α.

Embed Size (px)

Transcript of Nios II Processor Implementation in Cyclone II FPGAs

Nios II Processor Implementation in Cyclone II FPGAsNios II Processor Implementation in Cyclone II FPGAs
Υλοποηση Ελεγκτν PID με
FPGA
2 | Σ ε λ δ α
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
3 | Σ ε λ δ α
‘λα τα σματα και πνευματικ δικαιματα που χρησιμοποιονται στο παρν γγραφο
εναι ιδιοκτησα του αντστοιχου ιδιοκττη τους.
Οι πληροφορες απ λλες πηγς αναφρονται αντστοιχα.
Διαφορετικ οι πληροφορες που παρουσιζονται στην παροσα κθεση εναι
αποκλειστικ δουλει του συγγραφα.
Τον Δρ. Τσαχουρδη Βασλειο Α. για την υποστριξη και καθοδγηση.
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
4 | Σ ε λ δ α
Περληψη
Ο σκοπς αυτς της Πτυχιακς Εργασας εναι να παρουσισει την
υλοποηση του ενσωματωμνου μικροεπεξεργαστ NIOS II για το FPGA
Altera Cyclone II και τις εφαρμογς αυτο του συστματος: α) στον
αυτματο λεγχο κινητρων συνεχος ρεματος με ελεγκτς PID και β)
στην υλοποηση χαμηλοπερατν (Low-Pass) φλτρων.
Γραφικς παραστσεις των πραγματικν αποκρσεων των συστημτων
θα παργονται στε να αναλεται η απκριση του κθε συστματος σε
διακυμνσεις των τιμν των παραμτρων του.
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
5 | Σ ε λ δ α
Περιεχμενα
συστοιχες πυλν (FPGA)
Ορισμς των τμημτων ενς FPGA Σελδα 10
Altera DE1 Development and Education Board Σελδα 11
Υλοποηση επεξεργαστ Nios II σε Cyclone II Σελδα 12
Οικογνεια επεξεργαστν Nios II Σελδα 13
SOPC Builder Σελδα 14
Κεφλαιο 2: Υλοποηση ελεγκτ PID για λεγχο θσης DC
κινητρα σε FPGA Cyclone II με Nios II & διασνδεση με Matlab
ναρξη λογισμικο Altera Quartus v12.0_178sp2 Σελδα 17
Δημιουργα νου project( New Project Wizard ) Σελδα 14
ναρξη εφαρμογς SOPC Builder Σελδα 21
Δημιουργα νου συστματος NIOS II(SOPC Builder) Σελδα 21
Δημιουργα στοιχεου περιγραφς ονττητας top-level board design file στο Quartus II(BDF)
Σελδα 40
NIOS II Pin Assignment (Pin Planner, Quartus II) Σελδα 43
Project Compilation-Report (Quartus II) Σελδα 47
Προγραμματισμς FPGA Cyclone II EP2C2484C7n / DE1 Σελδα 48
ναρξη εφαρμογς NIOS II Software Build Tools for eclipse Σελδα 49
Ρυθμσεις του Board Support Package και της εφαρμογς Σελδα 52
Προγραμματισμς συστματος και διασνδεση με Matlab Σελδα 53
Γραφματα προσομοωσης συστματος Σελδα 57
Ανλυση λειτουργας του ελεγκτ PID Σελδα 58
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
6 | Σ ε λ δ α
Κεφλαιο 3: Μελτη και κατασκευ οδηγο για λεγχο ταχτητας
DC κινητρα με ελεγκτ PID σε FPGA Cyclone II και απεικνιση σε
οθνη VGA
Τρπος λειτουργας και χαρακτηριστικ του encoder US E4P Σελδα 68
Quadruple Half-H Drivers Σελδα 69
Altera Avalon PIO Core Σελδα 70
Διαμρφωση πλτους παλμν (Pulse Width Modulation - PWM) Σελδα 73
Altera Avalon PWM Core Σελδα 76
Παραμετροποηση συστματος NIOS II (SOPC Builder) Σελδα 79
Αναθερηση του στοιχεου top-level design στο Quartus II(BDF) Σελδα 81
NIOS II Pin Assignment (Pin Planner, Quartus II) Σελδα 82
Project Compilation-Report (Quartus II) Σελδα 83
ναρξη εφαρμογς NIOS II Software Build Tools for eclipse Σελδα 84
Ρυθμσεις του Board Support Package και της εφαρμογς Σελδα 85
Τεχνικς μετρσεων RPM Σελδα 86
Προγραμματισμς συστματος και επεξγηση λειτουργας Σελδα 87
Altera Avalon VGA Core Σελδα 88
Σχεδαση καμπλης ροπς κινητρα σε οθνη VGA και λεγχος Σελδα 90
Πλακτα τυπωμνου κυκλματος (Printed Circuit Board PCB )
Σελδα 91
απομνωση λευκο θορβου σε FPGA Cyclone II
Προγραμματισμς FPGA Cyclone II EP2C2484C7n / DE1 Σελδα 101
ναρξη εφαρμογς NIOS II Software Build Tools for eclipse Σελδα 102
Ρυθμσεις του Board Support Package και της εφαρμογς Σελδα 103
Δημιουργα σματος με θρυβο σε Matlab Σελδα 105
Προγραμματισμς συστματος NIOS Σελδα 106
Γραφματα προσομοωσης συστματος Σελδα 108
Ανλυση λειτουργας του ψηφιακο φλτρου Σελδα 109
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
7 | Σ ε λ δ α
Παρρτημα Α’ (κδικας 2ου κεφαλαου)
Κδικας σε C – υλοποηση PID για τον NIOS II Σελδα 42
Κδικας συστματος προσομοωσης σε Matlab Σελδα 43
Παρρτημα Β’ (κδικας 3ου κεφαλαου)
Κδικας σε C – υλοποηση PID για τον NIOS II Σελδα 92
Παρρτημα Γ’ (κδικας 4ου κεφαλαου)
Nios II - Κδικας σε C – Υλοποηση PID για λεγχο στροφν βηματικο κινητρα και σχεδαση σε οθνη VGA
Σελδα 110
Κοστολγιο Σελδα 113
8 | Σ ε λ δ α
Ο ακλουθος πνακας υποδεικνει τις τυπογραφικς συμβσεις που χρησιμοποιονται σε
αυτ το γγραφο.
Οπτικ νδειξη ννοια
Α,Β,Γ…. λες οι επικεφαλδες στο γγραφο παρουσιζονται με αρχικ κεφαλαο γρμμα και την μορφοποηση που
εμφανζετε στην αριστερ στλη.
1,2,3… Οι επιγραμματικο ττλοι στο γγραφο παρουσιζονται με
αρχικ κεφαλαο γρμμα και την μορφοποηση που εμφανζετε στην αριστερ στλη.
Το εικονδιο ‘σφαρα’ χρησιμοποιεται για να υποδεξει
προτσεις οι οποες περιγρφουν λειτουργικ σημεα της μεθοδολογας.
Το εικονδιο ‘προσοχ’ χρησιμοποιεται για να υποδεξει
προτσεις στις οποες πρπει να δοθε προσοχ.
Το εικονδιο ‘επιτυχα’ χρησιμοποιεται για να υποδεξει προτσεις οι οποες πιστοποιον την ολοκλρωση του
επιτεξιμου σκοπο.
9 | Σ ε λ δ α
Κεφλαιο 1
Θεμελιδη στοιχεα των FPGA
Οι πεδιακ προγραμματιζμενες συστοιχες πυλν (FPGA) εναι επαναπρογραμματιζμενα
chip πυριτου. Ο συνιδρυτς της εταιρας Xilinx, Ross Freeman εφηρε το πρτο FPGA το
1985. Η υιοθτηση των FPGA chip σε λες τις βιομηχανες οδηγθηκε απ το γεγονς τι τα
FPGA συνδυζουν τα καλτερα τμματα εφαρμογς συγκεκριμνων ολοκληρωμνων
κυκλωμτων (ASIC) και συστματα που βασζονται σε επεξεργαστ. Τα FPGA παρχουν
υλικ χρονικς σμανσης ταχτητας και αξιοπιστας, αλλ δεν απαιτον υψηλος γκους
για να δικαιολογσουν το μεγλο ξοδο του σχεδου απ προσαρμοσμνα σχδια εκ των
προτρων σε συσκευς ASIC.
Τα επαναπρογραμματιζμενα τσιπ πυριτου χουν επσης την δια ευελιξα του λογισμικο
που εκτελεται σε να επεξεργαστ-με βση το σστημα, αλλ δεν περιορζεται απ τον
αριθμ των διαθσιμων πυρνων επεξεργασας. Σε αντθεση με τους επεξεργαστς, τα
FPGA εναι πραγματικ παρλληλα απ την φση τους , διαφορετικς λειτουργες
επεξεργασας δεν πρπει να ανταγωνζονται για τους διους πρους. Κθε ανεξρτητη
διεργασα επεξεργασας ανατθεται σε ειδικ τμμα του τσιπ, και μπορε να λειτουργσει
αυτνομα χωρς καμα επιρρο απ λλα block λογικς. Ως αποτλεσμα, η απδοση ενς
τμματος της εφαρμογς δεν επηρεζεται ταν προστθεται περισστερη επεξεργασα.
να απ τα οφλη των FPGA σε σχση με συστματα βασισμνα σε επεξεργαστ εναι τι η
λογικ της εφαρμογς υλοποιεται σε κυκλματα υλικο αντ να εκτελσει πνω σε να
λειτουργικ σστημα με οδηγος και στο λογισμικ εφαρμογς.
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
10 | Σ ε λ δ α
Ορισμς των τμημτων ενς FPGA
Κθε FPGA chip αποτελεται απ ναν πεπερασμνο αριθμ προκαθορισμνων πρων με
προγραμματιζμενες διασυνδσεις που υλοποιον αναδιαρθρσιμα ψηφιακ κυκλματα
και I/O blocks στε να επιτρπουν στο κκλωμα να χει πρσβαση στον εξωτερικ κσμο.
Οι προδιαγραφς των πρων των FPGA συχν περιλαμβνουν τον αριθμ των block λογικς, ο αριθμς των σταθερν τμημτων λογικς λειτουργας, πως οι πολλαπλασιαστς και το μγεθος των πρων μνμης πως τα ενσωματωμνα block μνμης RAM. Απ τα πολλ τμματα των FPGA, αυτ εναι συνθως το πιο σημαντικ κατ την επιλογ και τη σγκριση μεταξ των FPGA για μα συγκεκριμνη εφαρμογ.
Τα διαμορφσιμα μπλοκ λογικς (CLB) εναι η βασικ λογικ μονδα του FPGA. Μερικς φορς αναφρεται ως τμματα κτταρα λογικς, τα CLBs αποτελονται απ δο βασικ μρη: flip-flop και πνακες αναζτησης (LUT). Διφορες οικογνειες FPGA διαφρουν ως προς τον τρπο με τον οποο τα flip-flop και τα LUT συσκευζονται μαζ, γι 'αυτ εναι σημαντικ να κατανοσουμε τα flip-flops και τα LUT.
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
11 | Σ ε λ δ α
Altera DE1 Development and Education Board
Πληροφορες για την αναπτυξιακ πλακτα DE1
Cyclone II EP2C20F484C7 με EPCS4 4-Mbit σειριακ συσκευ διαμρφωσης
Διασυνδσεις Εισδου/Εξδου
Ενσωματωμνο USB-Blaster για διαμρφωση του FPGA Γραμμ Εισδου/Εξδου, Μικροφνου (24-bit Audio CODEC) Video (VGA 4-bit DAC) Σειριακ θρα (RS232) Θρα PS/2 για mouse πληκτρολγιο Θρες επκτασης (δο 40-pin κεφαλς)
Μνμες
8 MB SDRAM, 512 KB SRAM, 4 MB Flash Θρα SD memory card
Συσκευς απεικνισης
Τσσερις 7-απεικονσεις επτ τμημτων
Διακπτες και LED’s
10 διακπτες εναλλαγς 10 κκκινα LED’s 8 πρσινα LED’s 4 διακπτες τπου pushbutton
Χρονιστς
50 MHz χρονιστ 27 MHz χρονιστ Εξωτερικ εσοδο χρονιστ SMA
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
12 | Σ ε λ δ α
Υλοποηση επεξεργαστ Nios II σε Cyclone II
Η οικογνεια ενσωματωμνων επεξεργαστν Νιος ΙΙ ταν υλοποιεται σε Cyclone II FPGA παρχει μα οικονομικ λση επεξεργαστ για εφαρμογς με υπολογιστικς απαιτσεις. νας υπολογιστικς πυρνας που υλοποιεται σε μα συσκευ Cyclone II μπορε να επιτεξει απδοση περισστερη απ 100 DMIPs. Με περισστερες απ 68,416 LEs στην μεγαλτερη συσκευ Cyclone II, πολλαπλ στιγμιτυπα του πυρνα Nios II μπορον να χρησιμοποιηθον σε μα συσκευ στε να υλοποισουν εφαρμογς πως:
Λειτουργικ σστημα Να παρχουν αυτματες ενημερσεις και ρυθμσεις στο FPGA μσω σνδεσης
Ethernet Διαχεριση δεδομνων και Ι/Ο λειτουργες.
Βασισμνος στην επιτυχα της πρτης γενις επεξεργαστν Nios, o επεξεργαστς Nios II υλοποιημνος σε Cyclone II FPGA προσφρει τον μγιστ τρπο υλοποησης οικονομικν εφαρμογν. Εταιρες επικοινωνιν, η βιομηχανα, η αυτοβιομηχανα και εταιρες ασρματων συσκευν μπορον να επωφεληθον με την υλοποηση ενσωματωμνου επεξεργαστ σε χαμηλο κστους FPGA.
Η εικνα 1 παρουσιζει τον τρπο με τον οποο περισστεροι του ενς Nios II
ενσωματωμνων επεξεργαστν μπορον να ενσωματωθον σε μα συσκευ Cyclone II. Σε
να ττοιο σστημα θα ταν συνηθισμνο να υπρχει νας επεξεργαστς που κινε τα
δεδομνα μεταξ των εξωτερικν διεπαφν( PCI και Ethernet), την εκτς chip SDRAM και
κθε . νας επεξεργαστικς πυρνας επσης θα χρησιμοποιοταν για να διαχειρζεται την
διεπαφ ανθρπου/μηχανς ( Keypad, LCD Display) και να διεκπεραινει αυτς τις
διεργασες χαμηλς ταχτητας απ διεργασες υψηλτερης ταχτητας.
Εικνα 1. Σστημα υλοποιημνο σε Cyclone II FPGA
Σημεισεις:
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
13 | Σ ε λ δ α
Οικογνεια επεξεργαστν Nios II
Η οικογνεια επεξεργαστν Nios II αποτελεται απ τρες υπολογιστικος πυρνες: Τον Nios II/f (fast), ναν πυρνα για υψηλς αποδσεις, τον Nios II/s (standard), ναν πυρνα που συνδυζει απδοση και κστος και τον Nios II/e (economy), ναν πυρνα χαμηλο κστους. Και οι τρες εκδσεις του Nios II μοιρζονται να κοιν σετ εντολν 32-bit αρχιτεκτονικς (ISA) και εναι 100% συμβατς με δυαδικ κδικα. Η εικνα 2 παρουσιζει τον τρπο με τον οποο συσχετζετε το μγεθος με την απδοση.
Εικνα 2. Nios vs. Nios II Family Χρση λογικν μονδων και απδοση
Οι επεξεργαστς Nios II μπορον να υλοποισουν 256 εντολς που επιτρπουν σε κρσιμα τμματα υπορουτνων να υλοποιηθον σε υλικ υπ την διαχεριση του επεξεργαστ Nios II. Μπορον να χρησιμοποιηθον προσαρμοσμνες εντολς για την υλοποηση συναρτσεων που θα χρειζονταν πολλος ωρολογιακος κκλους σε λογισμικ αλλ σε υλικ για να ολοκληρωθε χρειζεται μλις νας κκλος, βελτινοντας τσι την απδοση του συστματος.
Ο επεξεργαστς Nios II περιχει βιβλιοθκη με περιφερειακ που επιτρπει στον σχεδιαστ να μετατρψει μα σκψη σε να λειτουργικ ργο ιδιατερα γργορα. Τα περιφερειακ αυτ περιλαμβνουν:
Σειριακς διεπαφς (UART, SPI, JTAG UART) On-chip RAM και ROM, και διεπαφς για off-chip SRAM, flash, SSRAM, και SDRAM
μνμες Γενικο σκοπο παρλληλς I/O (GPIO) Μνμη μεσης πρσβασης Διεπαφ τπου Joint Test Action Group (JTAG) debug
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
14 | Σ ε λ δ α
SOPC Builder
Η εφαρμογ ανπτυξης συστημτων της Altera SOPC Builder παρχει μα πλατφρμα για σνθεση συστημτων σε προγραμματιζμενο chip (Systems On Programmable Chip - SOPC) εκτς των συνηθισμνων τεχνικν και ο χρστης μπορε να δημιουργσει IP functions, που υποστηρζει περισστερα απ 60 περιφερειακ της Altera και συνεργτες AMPPSM. Με την εφαρμογ SOPC Builder, νας χρστης του Cyclone II μπορε εκολα να ενσωματσει συνιστσες και να δημιουργσει να πλρες σστημα που περιλαμβνει επεξεργαστς, περιφερειακ,on-chip μνμες,off-chip διεπαφς για μνμες και συνιστσες με λογικ καθοριζμενη απ τον χρστη. Το SOPC Builder παργει το Avalon switch fabric σε HDL για να συνδσει το σστημα, περιλαμβνοντας πολυδιαχεριση διαδρμου και λογικ ελγχου διακοπν. Το SOPC Builder επσης δημιουργε να περιβλλον προσομοωσης aμε δοκιμς για το hardware που δημιουργεται πως επσης και περιβλλον ανπτυξης λογισμικο με βιβλιοθκες της C και ρουτνες assembly για πρσβαση και λεγχο στα περιφερειακ του συστματος.
Το SOPC Builder μπορε αυτματα να συνδσει κθε υψηλς απδοσης διαχειριστ διαδρμου εξαρτημνο περιφερειακ κθε συνιστσα με λογικ χρστη μσω της διεπαφς διαδρμου Avalon ( Avalon bus interface )
Επεξεργαστς Nios II : Ο πιο εστροφος ενσωματωμνος
επεξεργαστς του κσμου.
Σχετικ με τον Nios II
Ο επεξεργαστς της Altera Nios II, εναι σμφωνα με ρευνα της Gartner ο πιο εστροφος επεξεργαστς σχετικ με τους πιο διαδεδομνους επεξεργαστς που χρησιμοποιονται στην βιομηχανα των FPGA. Ο επεξεργαστς αυτς παρχει πρωτοφανς εκαμπτη συμπεριφορ σε εφαρμογς πραγματικο χρνου, κρσιμες για ασφλεια (DO-254), ASIC- βελτιστοποιημνες και με υπολογιστικς απαιτσεις. Ο επεξεργαστς Nios II υποστηρζει λα τις συσκευς FPGA της Altera και τις συσκευς Hardcopy ASIC και εναι επσης διαθσιμος για λες τις κρτες standard-cell ASIC μσω της Synopsys.
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
15 | Σ ε λ δ α
Εφαρμογς
Nios II
LE), ο επεξεργαστς Nios II/e εναι ιδανικς για
εφαρμογς μικροελεγκτ. Ο οικονομικς πυρνας Nios
II,τα εργαλεα λογισμικο και οι οδηγο των συσκευν
προσφρονται χωρς χρωση.
πραγματικο χρνου πως προσαρμοσμνες εντολς
(δυναττητα να χρησιμοποιηθε το υλικ του FPGA για
να επιταχνει μα συνρτηση), ανυσματικς διακοπς
επεξεργαστ, μνμες tightly coupled πως και
υποστριξη για λειτουργικ συστματα πραγματικο
χρνου (real-time operating systems), ο πυρνας του
επεξεργαστς Nios II standard και fast εναι ιδιατερα
ικανς σε σκληρς και σε επιεικες απαιτσει
πραγματικο χρνου.
χρησιμοποισει μονδες διαχερισης μνμης (MMU)
για να τρξει ενσωματωμνα Linux.
Οικογνεια 3 32-bit προσαρμοσμνων ενσωματωμνων επεξεργαστν για FPGA της Altera και HardCopy ASIC
o Fast (/f core): βελτιστοποιημνος για υψηλς αποδσεις, προαιρετικ MMU, μονδα προστασας μνμης (MPU)
o Economy (/e core): βελτιστοποιημνος για μικρ μγεθος o Standard (/s core): συνδυασμς μεγθους και απδοσης
λοι υποστηρζουν o Περισστερες απ 256 προσαρμοσμνες εντολς o Περισστερες απ 4 tightly coupled memories (TCM) o Ρυθμσιμο debug core o C-to-Hardware (C2H) Acceleration Compiler για την μετατροπ αλγριθμων
απ ANSI C σε hardware accelerators Πλοσιο portfolio απ ενσωματωμνους πυρνες (timer, UART, direct memory
access (DMA), Ethernet, etc.) Nios II Embedded Design Suite (EDS): Πλρης σουτα ανπτυξης ενσωματωμνων
(compiler, debugger, Nios II.
16 | Σ ε λ δ α
Κεφλαιο 2
DC κινητρα σε FPGA Cyclone II με Nios II/s
& διασνδεση με Matlab
Matlab 2012a
17 | Σ ε λ δ α
ναρξη λογισμικο Altera Quartus v12.02
Ξεκινστε το Altera Quartus II που εναι η κεντρικ εφαρμογ για ανπτυξη εφαρμογν για το FPGA.
Το εικονδιο της εφαρμογς εναι το εικονιζμενο εικονδιο που παρουσιζεται παρακτω.
Εμφανζετε η σελδα ναρξης της εφαρμογς
Στο μενο επιλογς , επιλγουμε την επιλογ File, στο αναδιπλομενο μενο που
εμφανζεται επιλγουμε την επιλογ New Project Wizard για την δημιουργα νου
project.
18 | Σ ε λ δ α
Η σελδα που εμφανζεται κνει μα εισαγωγ στον οδηγ δημιουργας project
Στην σελδα αυτ, καθορστε την διαδρομ αποθκευσης και το νομα του project,
αυτματα δνεται το νομα της ονττητας ανωτρου επιπδου το οποο εναι διο με το νομα που καθορσατε για το project.
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
19 | Σ ε λ δ α
Στην σελδα αυτ μπορομε να προσθσουμε components σε HDL
επιλξτε το
Family & Device Settings Στην σελδα αυτ καθορσουμε την οικογνεια της συσκευς (FPGA)
Family : CycloneII και τον ακριβς τπο της συσκευς
Name EP2C20F484C7 (αναγρφεται στο FPGA)
Κατπιν της επιλογς των προαναφερθντων επιλογν πως αυτς παρουσιζονται,
επιλξτε το
20 | Σ ε λ δ α
EDA ( Electronic Design Automation ) Tools settings
επιλξτε το
Η τελικ σελδα μας ενημερνει για τις προηγομενες επιλογς μας,
κατπιν ελγχου επιλξτε το
21 | Σ ε λ δ α
Κεντρικ σελδα εφαρμογς Quartus II version 12.0
ναρξη εφαρμογς SOPC Builder
Στο μενο επιλογς , επιλγουμε την επιλογ Tools, στο αναδιπλομενο μενο
που εμφανζεται επιλγουμε την επιλογ SOPC Builder
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
22 | Σ ε λ δ α
Με την εκκνηση του SOPC Builder εμφανζεται η φρμα εισαγωγς ονομασας του
συστματος που θα δημιουργσετε και η επιλογ της γλσσας περιγραφς υλικο που
αυτ θα μεταφραστε.
System Name: system_0
Target HDL: Verilog
Το νομα του συστματος θα πρπει να διαφρει απ το νομα της ονττητας
αντερου επιπδου που καθορσατε στον οδηγ δημιουργας project
κατπιν εισαγωγς ονματος συστματος και επιλογς HDL επιλξτε το
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
23 | Σ ε λ δ α
Καρτλα System Contents
Με το κλεσιμο της αρχικς φρμας μεταφερμαστε στην κεντρικ φρμα δημιουργας του
συστματος.
Εισαγωγ συνιστσας On-Chip Memory ( RAM or ROM )
Απ το μενο Library επιλγουμε για εσωτερικ μνμη του NIOS τη συνιστσα On-
Chip Memory ( RAM or ROM )
Στο πλασιο εισαγωγς Total Memory size εισγετε 16384 16 K, τσι στε να υλοποιηθε
εσωτερικ μνμη για τον επεξεργαστ μεγθους 16KB και επιλξτε το πλκτρο Enter.
επιλξτε το
24 | Σ ε λ δ α
Εισαγωγ συνιστσας Nios II Processor
Απ το μενο Library επιλγουμε την κατηγορα Processors
Nios II Processor
Η ενργεια αυτ εμφανζει το πλασιο δημιουργας του NIOS II/core
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
25 | Σ ε λ δ α
Στην καρτλα Core Nios II
Επιλξτε τον Nios II/s (standard)
Hardware Multiply : Embedded Multipliers
Επιλξτε την επιλογ Hardware Divide
Επιλξτε στο Reset Vector και στο Except Vector την On-Chip Memory που δημιουργσατε
στο προηγομενο βμα.
Hardware
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
26 | Σ ε λ δ α
Εισαγωγ συνιστσας SDRAM Controller
Απ το μενο Library επεκτενετε την κατηγορα Memories and Memory Controllers,
επεκτενετε την υποκατηγορα External Memory Interfaces , προσθστε την συνιστσα
SDRAM Controller απ την υποκατηγορα SDRAM Interfaces
Σο Preset επιλξτε την επιλογ Custom και στο πλασιο Data width επιλξτε Bits : 16
επιλξτε το
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
27 | Σ ε λ δ α
Εισαγωγ συνιστσας Interval Timer
Μετ την ολοκλρωση του οδηγο μετονομστε σε systimer
Επαναλβετε την δια διαδικασα για την δημιουργα ενς ακμα Interval Timer
αλλζοντας την επιλογ Units: απ ms σε us πως παρουσιζεται στην επμενη εικνα
Μετ την ολοκλρωση του οδηγο μετονομστε σε stamptimer
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
28 | Σ ε λ δ α
Δημιουργα συνιστσας JTAG UART
Αποδεχτετε τις αρχικς ρυθμσεις εφσον συμφωνον με την ανωτρω εικνα
επιλξτε το
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
29 | Σ ε λ δ α
Δημιουργα συνιστσας UART(RS-232 Serial Port)
Αποδεχτετε τις αρχικς ρυθμσεις εφσον συμφωνον με την ανωτρω εικνα
επιλξτε το
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
30 | Σ ε λ δ α
Δημιουργα συνιστσας System ID Peripheral
Μετ την ολοκλρωση του οδηγο μετονομστε σε sysid
Εν δεν μετονομαστε σε sysid δεν μπορε να αναγνωριστε η συνιστσα και κατ
συνπεια να δοθε αναγνωριστικ στο σστημα.
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
31 | Σ ε λ δ α
Δημιουργα συνιστσας Avalon ALTPLL
ΣΗΜΕΙΩΣΗ :Το PLL (Phase Locked Loop) το χρησιμοποιομε διτι η SDRAM λειτουργε στο
αρνητικ μτωπο του παλμο χρονισμο και με το PLL δημιουργομε δο χρονιστς , ναν
για το σστημα του επεξεργαστ και ναν για την εξωτερικ SDRAM.
Συστματα ελγχου βασισμνα σε αρχιτεκτονικ FPGA
32 | Σ ε λ δ α
Επιλξτε στο αναπτυσσμενο μενο which device grade will be using ? τον τπο 7
Εισγετε την συχντητα του εισερχμενου χρονιστ (χρονιστς συστματος) : 50MHz
επιλξτε το
Αποεπιλξτε τις επιλογς
Create an ‘areset’ input to asynchronously reset the PLL Create ‘locked’ output
επιλξτε το
33 | Σ ε λ δ α
επιλξτε το
Στην καρτλα αυτ εισγετε την συχντητα του c0 (clock 0 )
Enter output clock frequency : 50.0MHz
επιλξτε το
34 | Σ ε λ δ α
Η συχντητα του c1 που θα δημιουργσει το PLL θα τροφοδοτσει τον χρονιστ της
SDRAM, εισγετε στο Clock Phase Shift : -3 ns
μετ την εισαγωγ επιλξτε το
επιλξτε το
35 | Σ ε λ δ α
επιλξτε το για ξοδο απ τον οδηγ.
Μετ την ολοκλρωση του οδηγο μετονομστε σε pll_nios
ΣΗΜΕΙΩΣΗ: Tο pll δεν μπορε να χει ως νομα altpll γιατ το φορτνει απ την βιβλιοθκη
Altera ALTPLL σε αυτ την περπτωσ&