1 / 14

Περίληψη

Μικροεπεξεργαστές MIPS-32 και Προσομοιωτ έ ς SPIM και X SPIM ( σε περιβάλλον Linux) ( Εργαστήριο 1). 1. Περίληψη. Αρχιτεκτονική Μικροεπεξεργαστών MIPS-32 Προσομοιωτές SPIM και Χ SPIM (Simulators) Α ssembly Language και Γλώσσα Μηχανής Βασικές εντολές σε περιβάλλον Linux. 2.

salene
Download Presentation

Περίληψη

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Μικροεπεξεργαστές MIPS-32 και Προσομοιωτές SPIMκαι XSPIM (σε περιβάλλον Linux)(Εργαστήριο 1) 1

  2. Περίληψη • Αρχιτεκτονική Μικροεπεξεργαστών MIPS-32 • Προσομοιωτές SPIM και ΧSPIM(Simulators) • Αssembly Language και Γλώσσα Μηχανής • Βασικές εντολές σε περιβάλλον Linux 2

  3. ΑρχιτεκτονικήΜικροεπεξεργαστή (MIPS-32) Κεντρική Μονάδα Επεξεργασίας Καταχωρητές Αριθμητική (Λογική) Μονάδα Ειδικά Κυκλώματα Βοηθητική Μονάδα Επεξεργασίας Καταχωρητές ειδικής χρήσης Μνήμη 3

  4. Χάρτης Μνήμης (MIPS-32) • Στοίβα • Δηλώσεις • Εντολές προγράμματος * Κάθε θέση μνήμης κρατά 8 bits, ενώ κάθε καταχωρητής 32 bits (4 Bytes) 4

  5. Προγραμματισμός Μικροεπεξεργαστή • Οι μικροεπεξεργαστές συνοδεύονται από ένα σύνολο εντολών το οποίο υποστηρίζουν. • Συνήθως υπάρχουν μικροδιαφορές στην σύνταξή μιας εντολής μεταξύ κατασκευαστών αλλά και οικογενειών μικροεπεξεργαστών. • Ηπιο πάνω γλώσσα είναι γνωστή ως “Assembly” και στόχο έχει να διευκολύνει τον προγραμματιστή o οποίος δεν χρειάζεται να προγραμματίζει σε γλώσσα μηχανής (machine code) η οποία είναι δυσνόητη.Αυτό επιτυγχάνεται με τη χρήση ενός εργαλείου «assembler»το οποίο μεταφράζει στην ουσία τις εντολές μας σε κώδικα μηχανής (αποτελούμενο από 0 και 1). 5

  6. Δομή Αρχείου προσομοίωσης # Στοιχεία προγραμματιστή/κώδικα .data Δηλώσεις (.asciiz, .byte, .word) .text main:Αρχικοποιήσεις Εντολές Προγράμματος # Καινή γραμμή για να τρέξει ο κώδικας 6

  7. Κλήσεις Συστήματος (System Calls) li $v0, 4 # syscall code for printing a string la $a0, str # address of string to print li $v0, 1 # syscall code for printing an integer la $a0, 5 # integer (5) to print li $v0, 10 # syscall code to exit programme syscall # completes system call 7

  8. Δημιουργία νέων φακέλων και αρχείων στο Linux • Ανοίξτε ένα παράθυρο Terminal και μπείτε στον επιθυμητό φάκελο εργασίας • Πληκτρολογήστε mkdirfoldernameγια δημιουργία νέου φακέλου, cd foldernameγια αλλαγή του φακέλου εργασίας καιστην συνέχεια cat > filename.s για να δημιουργήσετε το αρχείο σας. • Ανοίξτε τώρα το νέο σας αρχείο με emacs text editor καιγράψτε το πρόγραμμα σας!

  9. Δημιουργία αρχείου “prosthesi.s”(Πρόσθεση 2 αριθμών και εκτύπωση αποτελέσματος) # your name .data out_string: .asciiz “The result is:\n” .text main: li $t1, 10 # load t1 with 10 li $t2, 5 # load t2 with 5 add $t3, $t1, $t2 # add t1 and t2 ->t3 9

  10. Δημιουργία αρχείου “prosthesi.s”(Πρόσθεση 2 αριθμών και εκτύπωση αποτελέσματος) li $v0, 4 la $a0, out_string syscall # syscall to print string li $v0, 1 move $a0, $t3 syscall # syscall to print an integer li $v0, 10 syscall # syscall to exit programme # press enterto keep SPIM HAPPY!

  11. Εξοικείωση με το SPIM (for Linux) • Log-in σε λειτουργικό Linux • Ανοίξτε ένα παράθυρο εργασίας Terminal • Mε την εντολή CD (change directory) βρέστε τoν φάκελο εργασίας σας (cd Desktop / cd HMY213 / cd week1) • spim - ξεκινά τον προσομοιωτή • read “prosthesi.s” – διαβάζει το αρχείο • run – τρέχει τον κώδικα! 11

  12. Εξοικείωση με το GUI του ΧSPIM (for Linux) • Ο προσομοιωτής ΧSPIM μας παρέχει τη δυνατότητα να βλέπουμε άμεσα το περιεχόμενο ενός καταχωρητή ή μιας θέσης μνήμης. • Πληκτρολογώντας ΧSPIM μέσα στο Terminal, επιλέξτε <load>, γράψτε τo όνομα του αρχείου και επιλέξτε <assembly file>. • Με την επιλογή <run> μπορείτε να τρέξετε όλο τον κώδικα σας, ενώ με το <step> ο κώδικας σας τρέχει βηματικά (εντολή με εντολή) 12

  13. Μερικές Εντολές Linux • bash / pwd / cd • mkdir / cat > • read / run / exit • locate / whoami / date 13

  14. Μαθησιακοί στόχοι - Εργαστήριο 1 Αρχιτεκτονική MIPS-32 (CPU, Registers, Memory, Co-proc.) Προσομοιωτές SPIM και ΧSPIM(Άνοιγμα και τρέξιμο κώδικα στο SPIM και στο ΧSPIM) Αssembly Language και Γλώσσα Μηχανής (Δομή αρχείου προσομοίωσης και κλήσεις συστήματος - assembler) Βασικές εντολές σε περιβάλλον Linux(Δημιουργία νέων φακέλων και αρχείων + bash, pwd, locate, whoami, date) 14

More Related