Σχεδιασμός Συστημάτων με FPGA. Εργαστηριακές Ασκήσεις. Απόστολος Φούρναρης 6/22/15 FPGA Design

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Σχεδιασμός Συστημάτων με FPGA. Εργαστηριακές Ασκήσεις. Απόστολος Φούρναρης 6/22/15 FPGA Design"

Transcript

1 Σχεδιασμός Συστημάτων με FPGA Εργαστηριακές Ασκήσεις Απόστολος Φούρναρης 6/22/15 FPGA Design

2 ΠΕΡΙΕΧΟΜΕΝΑ 1 Υλοποίηση Συστήματος σε FPGA με καθορισμό εισόδων και χρονισμού Σκοπός Το SPARTAN 3 FPGA Προγραμματίζοντας το Spartan 3A Starter Kit Board Ερωτήματα Ερώτημα Ερώτημα Επιβεβαίωση ορθής λειτουργία ενός Κυκλώματος χρησιμοποιώντας Test benches kai do files Σκοπός Εξομοιώσεις με τη χρήση του ISIM Σύνθετεσ εξομοιώσεις με τη χρήση αρχείων στο ModelSim ερωτηματα Συνθετοι Περιορισμοι χρόνου και Εργαλείο Planahead Σκοπός Ο Constrain Editor Το Planahead FloorPlanning με το PlanAhead Ανάλυση Χρόνου με το PlanAhead Ερωτήματα Ερώτημα Ερώτημα Το Εργαλείο FPGA EDITOR Σκοπός FPGA Editor Εργαλείο impact Ερωτηματα Μέρος Α Μερος Β Probes Άσκηση Προγραμματισμός ενός Κυκλώματος Απαριθμητή μέσα σε FPGA Σκοπός Ερωτήματα Προγραμματισμός Κυκλώματος χρήσης περιφερειακών σε FPGA Σκοπός... 38

3 6.2 Ερώτημα Εισαγωγή Έτοιμου ΙΡ σε Αρχιτεκτονική (Χρήση του Εργαλείου LOGICORE) Σκοπός Το Logicore εργαλείο Ερώτημα Λήψη μετρήσεων από FPGA με την χρήση του εργαλείου Chipscope Σκοπός Το εργαλείο CHIPSCOPE Ερώτημα Επεξεργαστές SoftCore για υλοποίηση εντός του FPGA Σκοπός Ο επεξεργαστής Pico Blaze Άσκηση-Παράδειγμα χρήσης του picoblaze Ο SoftCore Επεξεργαστής Microblaze Σκοπός Ο επεξεργαστής Microblaze Άσκηση-Παράδειγμα Χρήσης Ερώτημα... 59

4 1 ΥΛΟΠΟΙΗΣΗ ΣΥΣΤΗΜΑΤΟΣ ΣΕ FPGA ΜΕ ΚΑΘΟΡΙΣΜΟ ΕΙΣΟΔΩΝ ΚΑΙ ΧΡΟΝΙΣΜΟΥ 1.1 ΣΚΟΠΟΣ Αντικείμενο της άσκησης αυτής είναι η εξοικείωση την πλατφόρμα FPGA board Spartan 3A και ο σχεδιασμός ενός απλού κυκλώματος στην πλατφόρμα αυτή με την χρήση αρχείου περιορισμών. 1.2 ΤΟ SPARTAN 3 FPGA Το Spartan 3 FPGA board είναι ένα εκπαιδευτικό FPGA το οποίο έχει μια πληθώρα από περιφερειακά ώστε να μπορούν να υλοποιήσουν πολλές, διαφορετικές εφαρμογές. Η δομή της πλακέτας φαίνεται παρακάτω μαζί με τα περιφεριακά συστήματα πέραν του FPGA chip που περιλαμβάνει. Το FPGA μπορούμε να το προγραμματίσουμε χρησιμοποιώντας τα εργαλεία Xilinx ISE Webpack τα οποία πρόκειται να χρησιμοποιηθούν στα πλαίσια του εργαστηρίου.

5 1.3 ΠΡΟΓΡΑΜΜΑΤΙΖΟΝΤΑΣ ΤΟ SPARTAN 3A STARTER KIT BOARD. Να γραφεί το παρακάτω vhdl πρόγραμμα: library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity counter is port ( clk : in std_logic; reset : in std_logic; leds : out std_logic_vector(7 downto 0)); end counter; architecture Behavioral of counter is signal temp_count : std_logic_vector(7 downto 0) := x"00"; signal slow_clk : std_logic; signal clk_divider : std_logic_vector(23 downto 0) := x"000000"; begin clk_division : process (clk, clk_divider) begin if (clk = '1' and clk'event) then clk_divider <= clk_divider + 1; end if; slow_clk <= clk_divider(23); end process; counting : process(reset, slow_clk, temp_count) begin if reset = '1' then temp_count <= " "; else if slow_clk'event and slow_clk ='1' then if temp_count < 256 then temp_count <= temp_count + 1; else temp_count <= " "; end if; end if; end if; leds <= temp_count; end process; end Behavioral; Αυτό το παράδειγμα είναι ένας 8-bit δυαδικός μετρητή. Η είσοδος "reset" καθαρίζει την έξοδο, και σε κάθε κύκλο ρολογιού αλλάζει την κατάσταση. 224 ή καταστάσεις χρησιμοποιούνται ως διαιρέτης ρολογιού. Οι Διαιρέτες του ρολογιού είναι σημαντικοί, διότι το ρολόι που έχει το SPARTAN-3E Starter Kit λειτουργεί στα 50 MHz και δεν μπορεί να τροποποιηθεί. Το ρολόι 50 MHz θα αλλάξει τα LEDs τόσο γρήγορα που δεν θα είναι σε θέση να το δούμε. Αντ 'αυτού, χρησιμοποιούμε καταστάσεις και αυξάνουμε την καταμέτρηση μία φορά κάθε κύκλους. Αυτό επιβραδύνει το ρυθμό με τον οποίο

6 οι λυχνίες LED αλλάζουν. Εδώ είναι μια προσομοίωση του κώδικα χωρίς διαιρέτες ρολογιού, έτσι ώστε να μπορούμε να επιβεβαιώσω ότι η έξοδος "LED" αλλάζει: Χρησιμοποιώντας το εργαλείο Xilinx ISE Design Suite το παραπάνω κύκλωμα μπορεί να περάσει σύνθεση και τελικά να κατέβει στο SPARTAN 3A FPGA. Για να γίνει αυτό πρέπει να ξεκινήσουμε το εργαλείο Xilinx ISE Project Navigator και να επιλέξουμε νέο project. Στην επιλογή που μας δίνει Design Properties πρέπει να συμπληρώσουμε σωστά τα στοιχεία της πλακέτας FPGA που χρησιμοποιούμε. Τα στοιχεία αυτά είναι αυτά που φαίνονται στην παρακάτω εικόνα

7 Παρόλα αυτά όμως ένα προφανές ερώτημα είναι πως οι έξοδοι και είσοδοι του σχεδιασμένου σε vhdl συστήματος υλικού θα ταυτιστούν με τις πραγματικές εισόδους και εξόδους πάνω στο FPGA ολοκληρωμένο. Στην πλακέτα του FPGA που έχουμε στην διάθεσή μας, κάθε ακίδα του FPGA ολοκληρωμένου συνδέεται με κάποιο περιφερειακό όπως φαίνεται στο παρακάτω σχήμα. Έτσι αν θέλουμε το κύκλωμα που φτιάξαμε σε vhdl να επιτελεί κάποιο πραγματικό ρόλο πάνω στην πλακέτα του FPGA,τότε πρέπει να αντιστοιχήσουμε τις εισόδους και εξόδους του bc8 με τις πραγματικές εισόδους και εξόδου του FPGA που επιθυμούμε ώστε να ενεργοποιήσουμε τα κατάλληλα περιφερειακά της πλακέτας. Για το σκοπό αυτό μπορούμε να βάλουμε περιορισμούς στον κώδικα έτσι ώστε κατά την διαδικασία του mapping και του place and routing το εργαλείο να συνδέσει τις εξόδους του κυκλώματός μας με τις κατάλληλες ακίδες του FPGA οι οποίες με την σειρά τους συνδέονται στα κατάλληλα περιφερειακά της πλακέτας.

8 Για να προσδιορίσουμε σε ποιες ακίδες του FPGA θα συνδεθούν τα σήματα εισόδου και εξόδου, χρησιμοποιείται ο περιορισμός LOC και οι περιορισμοί DRIVE, IOSTANDARD και SLEW. 1.4 ΔΙΑΔΙΚΑΣΙΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΤΟΥ FPGA Για να προγραμματίσετε το FPGA του board με ένα κύκλωμα: 1. Στο εργαλείο ISE a) στο sources window επιλέξετε sources for implementation b) στο processes window τρέξετε την εντολή Generate Programing File. c) στο processes window τρέξετε την εντολή Configure Target Device. Αυτόματα θα αναδυθεί το εργαλείο προγραμματισμού impact. Στο εργαλείο impact a) από τη γραμμή μενού επιλέξετε File New Project. b) στο παράθυρο διαλόγου Automatically create and save a project επιλέξτε Yes. c) επιλέξτε configure devices using Boundary Scan (JTAG) και Autocratically connect to a cable and identify Boundary Scan chain d) στο παράθυρο διαλόγου Auto Assign Configuration Files Query επιλέξτε Yes e) επιλέξτε το αρχείο <design_name>.bit και open f) στο παράθυρο διαλόγου Attach SPI or BPI PROM επιλέξτε No και Bypass g) Στο παράθυρο Device Programming Properties επιλέξτε το device που αντιστοιχεί στο FPGA xc3s700a και ΟΚ h) Στο tab Boundary Scan, δεξί κλικ πάνω στο FPGA xc3s700a και επιλέξτε Program Στο tab Boundary Scan θα εμφανιστεί το μήνυμα Program Succeed που σημαίνει ότι η διαδικασία του προγραμματισμού του FPGA ολοκληρώθηκε επιτυχώς. 1.5 ΕΡΩΤΗΜΑΤΑ Ερώτημα 1 Το κύκλωμα που περιγράφεται σε VHDL πρέπει να συνδεθεί με τις ακίδες του FPGA που οδηγούν τα LEDs ενώ θα πρέπει να χρησιμοποιήσω ένα push button του FPGA για reset και το ρολόι που δίνει η πλακέτα στο FPGA από το κρύσταλλο-ταλαντωτή. Να ανατρέξετε στο εγχειρίδιο χρήσης του Spartan 3AN board που υπάρχει στο τέλος του παρόντος φυλλαδίου και να προσδιορίσετε τα ονόματα-περιορισμούς των ακίδων που σχετίζονται με το κύκλωμά σας (LEDs, clk, reset). Να δημιουργήσετε ένα αρχείο implementation Constrain file (ucf file), επιλέγοντας από το μενού Project- > New file στο οποίο να βάλετε τους περιορισμούς αυτούς. Οι περιορισμοί αυτοί θα είναι της μορφής NET component_name LOC= xx IOSTANDARD= xx DRIVE=xx Όπου xx είναι οι τιμές που βρήκατε. Στη συνέχεια, αφού αποθηκεύσετε το αρχείο να κάνετε Synthesize και Implement επιβεβαιώνοντας ότι δεν έχει γίνει κάποιο λάθος στο αρχείο αυτό (σε κάθε άλλη περίπτωση θα προκληθούν σφάλματα κατά τις παραπάνω δύο διαδικασίες).

9 1.5.2 Ερώτημα 2 Στο κύκλωμα που έχει περιγραφεί σε vhdl αναβοσβήνουν τα LED της πλακέτας του FPGA από δεξιά προς τα αριστερά. Να τροποποιήσετε το κύκλωμα ή/και το αρχείο περιορισμών ώστε να αναβοσβήνουν τα LED από αριστερά προς τα δεξιά.

10 2 ΕΠΙΒΕΒΑΙΩΣΗ ΟΡΘΗΣ ΛΕΙΤΟΥΡΓΙΑ ΕΝΟΣ ΚΥΚΛΩΜΑΤΟΣ ΧΡΗΣΙΜΟΠΟΙΩΝΤΑΣ TEST BENCHES ΚΑΙ DO FILES 2.1 ΣΚΟΠΟΣ Αντικείμενο της άσκησης αυτής είναι η εκμάθηση μεθοδολογιών εξομοίωσης μέσω των εργαλείων της πλατφόρμας Xilinx ISE και πιο συγκεκριμένα μέσω του εργαλείου isim 2.2 ΕΞΟΜΟΙΩΣΕΙΣ ΜΕ ΤΗ ΧΡΗΣΗ ΤΟΥ ISIM Για την VHDL ένα αρχείο test bench είναι στην ουσία μια οντότητα χωρίς εισόδους και εξόδους που δημιουργεί ένα στιγμιότυπο του υπό δοκιμή σχεδιασμού ( Design Under Test (DUT) Unit Under Test (UUT)) μαζί με μία ή περισσότερες διεργασίες. Οι διεργασίες ελέγχουν τις εισόδους του υπό δοκιμή σχεδιασμού και εξετάζουμε αν αυτό λειτουργεί σωστά με την ανάλυση των αποτελεσμάτων του. Ένα test bench χαρακτηρίζεται πλήρες όταν λαμβάνει υπ' όψιν του όλους τους διαφορετικούς συνδυασμούς των εισόδων και ισχυρό όταν από το υποσύνολο των διαφορετικών συνδυασμών των εισόδων μπορεί να προκύψει ότι ο σχεδιασμός που δοκιμάζεται λειτουργεί σωστά. Για το σκοπό αυτό από τη γραμμή menu του εργαλείου ISE επιλέγουμε Project New Source, με αποτέλεσμα να αναδύεται το παράθυρο του New Source Wizard. Από τις επιλογές του wizard διαλέγουμε τύπο αρχείου εισόδου VHDL Test Bench, επιλέγουμε το αρχείο δίνουμε όνομα αρχείου για το test bench και επιλέγουμε Next και Finish. Χρησιμοποιήστε το project του counter που φτιάξατε στο προηγούμενο εργαστήριο για να φτιάξετε ένα testbench με ονομα tester. Σε αυτό το στάδιο θα πρέπει να έχει δημιουργηθεί ένα αρχείο tester. Παρόλα αυτά το αρχείο αυτό δεν φαίνεται στο project. Για να εμφανιστεί επιλέξτε, πάνω από το δέντρο ιεραρχίας του project, την επιλογή simulation αντι του implementation. Τότε εμφανίζεται το tester και αν επιλέξουμε πάνω του μας δίνει κάποιες επιλογές εκ των οποίων η μία είναι Simulate Behavioral Model. Κάνοντας διπλό κλικ σε αυτή την επιλογή μπορούμε να εξομοιώσουμε το κύκλωμά μας μέσω του testbench που φτιάξαμε με το εργαλείο ISIM που μας παρέχει η Xilinx. Tο εργαλείο αυτό μοιάζει με το ModelSIM που χρησιμποιήθηκε σε άλλα εργαστήρια αλλά παρέχει κάποιες δυνατότητες που δεν ήταν εύκολα προσβάσιμες με το ModelSIM όπως να δούμε την κατάσταση κάθε σήματος οποιαδήποτε στιγμή, να την συσχετίσουμε με το πού βρίσκονται signals μέσα στον vhdl κώδικα κτλ. Σε γενικές γραμμές το εργαλείο μοιάζει αρκετά με software debugger. Παρατηρώντας το αποτέλεσμα του ISIM (την εξομοίωση των σημάτων του counter) βλέπουμε ότι ακολουθούν την δομή του testbench.

11 Παρατηρήστε την έξοδο LEDs και επιβεβαιώστε ότι το κύκλωμά σας δουλεύει όπως αναμένεται. Βάλτε ένα πιο γρήγορο ρολόι στο tester για να δείτε πιο γρήγορα τα αποτελέσματα. Μέσα από το ISE εργαλείο μπορεί κάποιος να μάθει την μέγιστη ταχύτητα λειτουργίας του κυκλώματος που έχει υλοποιηθεί στο FPGA καθώς και τον αριθμό των LUTs που το κύκλωμα καταλαμβάνει, παρατηρώντας τα reports που βγάζει το πρόγραμμα. Υπάρχουν reports για κάθε στάδιο υλοποίησης (synthesize, translate, map, place and route). Στο synthesis report παρουσιάζεται μια αρχική εκτίμηση της ταχύτητας λειτουργίας του κυκλώματος και του αριθμού LUTs ενώ η ακριβής τιμή της ταχύτητας/αριθμού LUTs προκύπτει μετά την place and route διαδικασία. Τα reports φαίνονται στο παρακάτω σχήμα.

12 Να καταγράψετε από τα synthesis report και Place and Route Report καθώς και Post-PAR Static Timing Report τις τιμές της μέγιστης ταχύτητας λειτουργίας όπως προκύπτει από την ελάχιστη περίοδο λειτουργίας των reports καθώς και τον αριθμό των LUTs που χρησιμοποιούνται στο FPGA για το συγκεκριμένο κύκλωμα. Να συγκρίνετε τις τιμές μεταξύ των εκτιμωμένων από το synthesis report και των πραγματικών από τα place and route reports. Να αλλάξετε στο tester την περίοδο του ρολογιού σε τιμή μικρότερη από την ελάχιστη που δίνουν τα reports του Xilinx ISE. Τι παρατηρείτε στην εξομοίωση; Υπάρχουν αλλαγές; 2.3 ΣΥΝΘΕΤΕΣ ΕΞΟΜΟΙΩΣΕΙΣ ΜΕ ΤΗ ΧΡΗΣΗ ΑΡΧΕΙΩΝ ΣΤΟ MODELSIM To πρόγραμμα ISIM είναι αρκετά εύχρηστο αλλά όπως διαφαίνεται από το προηγούμενο μέρος της άσκησης έχει κάποιους περιορισμούς κυρίως γιατί κάνει μόνο συμπεριφοριστική εξομοίωση (behavioral simulation). Το εργαλείο ModelSim ή Questa παραμένει ένας πολύ ισχυρός σύμμαχος για την επιβεβαίωση ορθής λειτουργίας ενός VLSI κυκλώματος. Όταν όμως έχουμε σύνθετα κυκλώματα είναι δύσκολο να δίνουμε τιμές στις εισόδους του κυκλώματος μέσω του γραφικού περιβάλλοντος του εργαλείου. Αντ αυτού δημιουργούμε ένα αρχείο κειμένου μέσα στο οποίο καταγράφουμε όλες τις εντολές του ModelSim (ορισμός ρολογιού, ορισμός τιμών στα σήματα εισόδου στο χρόνο, ορισμός χρόνου εξομοίωσης κ.τ.λ)

13 Να σχεδιάσετε σε vdhl ένα απλό κύκλωμα πολυπλέκτη με όνομα mux4_1 που έχει τέσσερεις εισόδους (i0, i1, i2, i3) τις οποίες επιλέγουμε μέσω μιας εισόδου ελέγχου sel 2 bits ώστε να βγει μια από αυτές στην έξοδο out1. Να γίνει compile αυτό το κύκλωμα στο ModelSIM. Στο ModelSIM κάνετε File -> New -> Source -> Do. Αυτό θα εμφανίσει ένα παράθυρο όπου μπορεί κάποιος να γράψει ένα do file. Να συμπληρώσετε το παρακάτω:. # reset the simulation restart -force -nowave # add all input and output signals to the wave file add wave -logic i0 add wave -logic i1 add wave -logic i2 add wave -logic i3 add wave -logic sel add wave -logic out1 # force the input signals force -freeze i force -freeze i force -freeze i force -freeze i force -freeze Sel 00 0 force -freeze Sel force -freeze Sel force -freeze Sel # run the full simulation run 200 # open the wave window view wave Αποθηκεύστε το αρχείο αυτό σαν tutorial.do Στο command line του ModelSIM μπορεί να γραφεί το παρακάτω για να εκτελεστεί το do file: do tutorial.do 2.4 ΕΡΩΤΗΜΑΤΑ Για το παρακάτω κύκλωμα που περιγράφεται σε vhdl, να φτιάξετε ένα κατάλληλo testbench που να εξομοιώνει όλα τα δυνατά σενάρια στα οποία μπορεί να λειτουργήσει το κύκλωμα αυτό. Να βρείτε πόσο χώρο καταλαμβάνει το κύκλωμα αυτό στο FPGA και ποια είναι η μέγιστη συχνότητα λειτουργίας του. library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all;

14 entity ALU is port( A: in std_logic_vector(1 downto 0); B: in std_logic_vector(1 downto 0); Sel: in std_logic_vector(1 downto 0); Res: out std_logic_vector(1 downto 0) ); end ALU; architecture behv of ALU is begin process(a,b,sel) begin -- use case statement to achieve -- different operations of ALU case Sel is when "00" => Res <= A + B; when "01" => Res <= A + (not B) + 1; when "10" => Res <= A and B; when "11" => Res <= A or B; when others => Res <= "XX"; end case; end process; end behv; Να εξομοιώσετε το κύκλωμα σε IRSIM χρησιμοποιώντας το test bench που φτιάξατε. Να φτιάξετε ένα κατάλληλο do file που να καλύπτει όλα τα δυνατά σενάρια που υλοποιεί το παραπάνω κύκλωμα και να εκτελέσετε το do file στο modelsim.

15 3 ΣΥΝΘΕΤΟΙ ΠΕΡΙΟΡΙΣΜΟΙ ΧΡΟΝΟΥ ΚΑΙ ΕΡΓΑΛΕΙΟ PLANAHEAD 3.1 ΣΚΟΠΟΣ Αντικείμενο της άσκησης αυτής είναι η εκμάθηση του φοιτητή του τρόπου με τον οποίο τοποθετούνται σύνθετοι περιορισμοί χρόνου σε ένα σχεδιασμό και πως χρησιμοποιείται το εργαλείο PlanAhead ώστε να τοποθετηθούν επιπλέον περιορισμοί σε περιοχές του FPGA. 3.2 Ο CONSTRAIN EDITOR Ο Constrain Editor μπορεί να κληθεί μέσα από το Xilinx ISE Design suite έτσι ώστε να μας βοηθήσει να οργανώσουμε καλύτερα τους περιορισμούς που αφορούν το κύκλωμά μας. Οι περιορισμοί αυτοί μπορεί να είναι αρκετά ποιο σύνθετοι σε σχέση με αυτούς που είδαμε στην πρώτη άσκηση και καταγράφονται στο ucf αρχείο του project. Σαν παράδειγμα χρησιμοποιούμε το project που δημιουργήθηκε στην πρώτη άσκηση και επιλέγουμε το Create Timing Constrains όπως φαίνεται στο σχήμα. Στο καινούργιο παράθυρο που θα προκύψει φαίνεται το ucf αρχείο που χρησιμοποιείται και μια σειρά από είδη περιορισμών που μπορούν να τεθούν. Επιλέγοντας clock domain στην κάτω δεξιά πλευρά του παραθύρου εμφανίζονται τα πιθανά σήματα ρολογιού που αναγνωρίζει το εργαλείο. Επιλέγοντας το κατάλληλο σήμα ρολογιού που μας ενδιαφέρει (το σήμα clk)με διπλό κλικ, προκύπτει νέο παράθυρο, στο οποίο μπορούν να τεθούν συγκεκριμένοι περιορισμοί για την μορφή του ρολογιού που επιθυμούμε.

16 Στο Input Jitter section βάζουμε την τιμή 60 στο Time field και επιβεβαιώστε ότι είναι σε units ps Πατήστε ΟΚ Στο δέντρο Constraint Type tree view, επιλέξτε το Inputs branch κάτω από το Timing Constraints. 1. Διπλό κλίκ στο clk signal στον πίνακα Global OFFSET IN Constraint table για να προκύψει ο wizard Create Setup Time (OFFSET IN). 2. Κρατάμε αναλλοίωτες τις τιμές στην πρώτη σελίδα και πατάμε Next.

17 3. Στο External setup time (offset in) πεδίο βάζουμε 6 ns. 4. Στο πεδίο Data valid duration field, βάζουμε 6 ns. Αυτό δημιουργεί ένα Global OFFSET IN constraint για το σήμα CLK signal. 5. Πατάμε Finish

18 Παρατήρηση: Προειδοποιήσεις συγχρονισμού παράγονται για το offset στον περιορισμό στο σήμα clk. Ο λόγος για αυτές τις προειδοποιήσεις ότι το σήμα clk δεν οδηγεί άμεσα οποιαδήποτε σύγχρονα στοιχεία που συνδέονται με input pads. 6. Στο δέντρο Constraint Type tree view, επιλέγω το Outputs branch από το Timing Constraints. 7. Στο Global OFFSET OUT Constraint table, κάνουμε διπλό κλικ στο clk signal. 8. Στο Create Clock to Pad (OFFSET OUT) dialog box, βάζουμε την τιμή 38 ns στο πεδίο External clock to pad (offset out). 9. Αυτό δημιουργεί ένα Global OFFSET OUT constraint για το CLK signal. 10. Πατάω ΟΚ 11. Στο Unconstrained Output Ports table, επιλέξτε τα Leds<0> έως Leds <7> signals κάνοντας Shift+Click και επιλέγοντας πολλαπλές γραμμές. 12. Κάνουμε δεξί κλίκ και επιλέγουμε το Create Time Group. 13. Στο Create Time Group dialog, γράφουμε LEds_out ως Time group name, και πατάμε OK.

19 Όταν μας ζητηθεί αν θελουμε να δημιουργήσουμε ένα offset constraint, επιλέγω OK. Στο External clock to pad (offset out) πεδίο βάζουμε την τιμή 32 ns. και πατάμε ΟΚ. Η διαδικασία ολοκληρώνεται κάνοντας File > Save στον Constraints Editor. Οι αλλαγές τώρα έχουν αποθηκευτεί στο ucf αρχείο στο τρέχοντα υποκατάλογο εργασίας του project 3.3 ΤΟ PLANAHEAD Το εργαλείο PlanAhead μας επιτρέπει να βελτιώσουμε την απόδοση του κυκλώματος που υλοποιείται στο FPGA με τον ορισμό και ανάλυση Register Transfer Level (RTL) πηγών του σχεδίου, των αποτελεσμάτων των διαδικασιών της σύνθεσης και της υλοποίησης. Με αυτό το εργαλείο μπορεί κανείς να πειραματιστεί με διάφορες επιλογές υλοποίησης, να προσδιορίσει περιορισμούς χρόνου και να επιβάλει φυσικούς περιορισμούς στον σχεδιασμό FPGA με τη χρήση floorplanning τεχνικών ώστε να βελτιστοποιήσει τα αποτελέσματα του σχεδιασμού αυτού. Το Planahead μπορεί να εκτελεστεί σαν αυτόνομο πρόγραμμα αλλά μπορεί κανείς να το καλέσει και μέσα από το Xilinx ISE Design suite. Εκτελώντας το PlanAhead σαν αυτόνομο πρόγραμμα μπορούμε να εκμεταλλευτούμε πλήρως τις δυνατότητες του εργαλείου αυτού. Με το PlanAhead μπορούμε να πραγματοποιήσουμε όλες τις διαδικασίες (synthesis, implementation, bitstream generation) ώστε να υλοποιήσουμε ένα σχεδιασμό σε FPGA. Αποτελεί αυτόνομο εργαλείο σχεδιασμού και μας παρέχει την δυνατότητα να κάνουμε παρεμβάσεις στην υλοποίηση κάτω από ένα ενιαίο περιβάλλον.

20 Καλώντας το PlanAhead μέσα από το project του Xilinx ISE Design Suite μπορούμε να διαλέξουμε πως θα χρησιμοποιήσουμε το εργαλείο αυτό πχ. για να αναθέσουμε Εισόδους-Εξόδους ή για να κάνουμε floorplaning,όπως φαίνεται και στο παρακάτω σχήμα Κάνοντας διπλό κλικ στο I/O Pin Planning (PlanAhead), ανοιίγει το εργαλείο PlanAhead για το project του Xilinx ISE Deisgn Suite, ενώ διαβάζονται τυχόν πληροφορίες που υπάρχουν στο αρχείο ucf. Για να ανοίξει το εργαλείο σωστά γίνεται και η διαδικασία του Mapping στο Design suite. Η οθόνη του PlanAhead μοιαζει με την παρακάτω: To PlanAhead έχει πολλά view τα οποία μπορώ να χρησιμοποιήσω. Αυτό που φαίνεται στην παραπάνω εικόνα αφορά τις ακίδες εξόδου/εισόδου του FPGA. Επίσης, μπορεί κανείς να δει το σχηματικό του κυκλώματος αλλάζοντας το layout σε Default.

21 Ξαναγυρίζοντας στο I/O planning layout, στο κάτω μέρος του παραθύρου το εργαλείο παρουσιάζονται οι είσοδοι και έξοδοι του κυκλώματος που έχουμε δημιουργήσει. Στην πάνω δεξιά πλευρά του παραθύρου βλέπουμε το FPGA και τις ακίδες του που προσδιορίζονται μοναδικά από την στήλη και γραμμή στην οποία ανήκουν.

22 Μέσω αυτών των δύο παραθύρων, μπορούμε να προσδιορίσουμε περιορισμούς για τις εισόδους και εξόδους (πιο εμπεριστατωμένα σε σχέση με το 1 ο εργαστήριο), βρίσκοντας πάνω στο FPGA την ακίδα που μας ενδιαφέρει και τοποθετώντας την στην έξοδο /είσοδο στο κάτω μέρος της οθόνης όπως φαίνεται στο παρακάτω σχήμα. Ομοίως μπορούμε να προσδιορίσουμε και άλλες παραμέτρους του σήματος όπως IOSTANDARD και SLEW σύμφωνα με τις προδιαγραφές που μας δίνονται στο εγχειρίδιο του εκάστοτε FPGA board. Αφού ολοκληρώσουμε τις εκάστοτε αλλαγές που έχουμε κάνει στο I/O Planning πατάμε το κουμπί της αποθήκευσης και τότε αυτές οι αλλαγές γράφονται στο ucf αρχείο που συνδέεται με το κύκλωμά μας. Παρατηρήσεις.. Το FPGA είναι οργανωμένο σε περιοχές από I/O Banks ή clock Regions Μπορούμε να αναθέσουμε θύρες ή σήματα σε συγκεκριμένες περιοχές, επιλέγοντας τα σήματα και κάνοντας δεξί κλικ και επιλέγοντας Place I/O ports in I/O bank ή Place I/O ports in Area (όπου ορίζουμε ένα κομμάτι του FPGA που μας ενδιαφέρει) Μπορούμε να ομαδοποιήσουμε σήματα σαν interfaces δίνοντάς τους συγκεκριμένα ονόματα και οδηγώντας το εργαλείο να αναθέσει τα σήματα αυτά όλα μαζί (σε κοντινές αποστάσεις) στο FPGA.

23 Μπορούμε επίσης να απαγορεύσουμε τη χρήση κάποιων ακίδων από το να συνδεθούν με το κύκλωμά μας επιλέγοντας την ακίδα αυτή και κάνοντας δεξί κλικ, στο pop menu που προκύπτει επιλεγουμε Set Prohibit. Μπορούμε να ελέγξουμε αν οι περιορισμοί που έχουμε βάλει είναι ορθοί με Tools > Report DRC 3.4 FLOORPLANNING ΜΕ ΤΟ PLANAHEAD Κατά τη διαδικασία του Floorplanning τα LUTs ή CLBs που ένα κύκλωμα καταλαμβάνει μέσα σε ένα FPGA αναδιατάσσονται έτσι ώστε το κύκλωμα να πετύχει τους περιορισμού χρόνου που προκύπτουν από την εφαρμογή του. Αυτό γίνεται προσπαθώντας να μειώθεί το κρίσιμο μονοπάτι του κυκλώματος μέσα στο FPGA. Το PlanAhead μας δίνει την δυνατότητα για floorplanning χειροκίνητα χρησιμοποιώντας το layer floorplanning.

24 Σε αυτό Layer υπάρχει μια κάτοψη της φυσικής μορφής του FPGA και των σημείων μέσα σε αυτό που είναι υλοποιημένο το κύκλωμά μας. Με το floorplanning μπορούμε να χρησιμοποιήσουμε την λογική των PBoxes δηλαδή περιοχών μέσα στο FPGA στις οποίες επιθυμούμε να βάλουμε primitives στοιχείων του κυκλώματός μας ώστε να περιορίσουμε τον διαμοιρασμό τους μέσα στο FPGA. Οι Draw Pblock εντολές ορίζουν την επιλεγμένη εκ των προτέρων λογική σε ένα νέο Pblock στο Device view. Μπορείτε επιλέξτε τη λογική που θέλετε να αναθέσετε σε Pblock προτού να καλέσετε την εντολή. Για να δημιουργήσει το έναpblock1. Επιλέξτε τη λογική που επιθυμήτε από όποιοδήποτε view, όπως η view Netlist, για να ορίσετε Pblock2. κάντε κλικ Draw Pblock, είτε στο Device view popoup menu είτε τη ράβδο εργαλείων 3. Κινήστε το δρομέα σας στο Device view για να επιλέψετε μια περιοχή σανpblock4. Πιέστε και κρατήστε το αριστερό κουμπί του ποντικιού, κινείστε το δρομέα προς την αντίθετη γωνία τουpblock, και απελευθερώστε το κουμπί του ποντικιού. Τότε θα οριστεί μια περιοχή πάνω στο FPGA στην οποία θα τοποθετηθούν όλα τα στοιχεία της λογικής που επιλέχθηκε. Ένα νέο παράθυρο θα ανοίξει το οποίο θα δίνει την επιλογή ονόματος για το Pblock και θα παραθέτει τα λογικά στοιχεία του FPGA τα οποία εμπεριέχει (όλα τα στοιχεία όχι του κυκλώματος που θέλετε να υλοποίησετε). Μετα την δημιουργία του Pblock μπορείτε να αναθέσετε και κάποια άλλα στοιχεία της λογικής του κυκλώματός σας,

25 επιλέγοντας τα και με δεξί κλίκ πάνω τους να πατήστε Assign. 3.5 ΑΝΑΛΥΣΗ ΧΡΟΝΟΥ ΜΕ ΤΟ PLANAHEAD Μετά την διαδικασία του Place and Route, αφού το κύκλωμα έχει τοποθετηθεί στο FPGA ακολουθώντας τους περιορισμούς που έχουμε βάλει, μπορούμε να δούμε τι γίνεται με το χρονισμό του πραγματικού κυκλώματος. Για αυτό το σκοπό στην διαδικασία του Place and Route υπάρχει η επιλογή Analyze Timing/Floorplan Design (PlanAhead) όπως φαίνεται στο παρακάτω σχήμα. Κάνοντας αυτή την επιλογή μεταβαίνουμε στο Planahead όπου πλέον στην Design view μπορούμε να δούμε τα στοιχεία του κυκλώματός μας όπως έχουν υλοποιηθεί στο FPGA και πως αυτά συνδέονται με το σήμα του ρολογιού (ή των ρολογιών). Στο κάτω μέρος της οθόνης φαίνονται αναλυτικά και οι χρόνοι-καθυστερήσεις για κάθε σήμα. Από τους χρόνους αυτούς προκύπτει και το κρίσιμο μονοπάτι (ο ποιο αργός χρόνος από όλους). Μέσω αυτής της διαδικασίας μπορούμε να δούμε ποιά στοιχεία καθυστερούν πιο πολύ και ποιο είναι το fanout τους ώστε να αλλάξουμε τους περιορισμούς έτσι ώστε να μειώσουμε αυτές τις καθυστερήσεις (αν είναι δυνατόν). 3.6 ΕΡΩΤΗΜΑΤΑ Ερώτημα 1 Έστω ότι έχουμε τον παρακάτω vhdl κώδικα, ο οποίος εμφανίζει στο lcd του SPARTAN 3A ένα μήνυμα library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; ---- Uncomment the following library declaration if instantiating ---- any Xilinx primitives in this code. --library UNISIM; --use UNISIM.VComponents.all;

26 entity lcd_disp is port ( clk : in std_logic; ----clock i/p lcd_rw : out std_logic; ---read&write control lcd_e : out std_logic; ----enable control lcd_rs : out std_logic; ----data or command control data : out std_logic_vector(7 downto 0)); ---data line end lcd_disp; architecture Behavioral of lcd_disp is constant N: integer :=22; type arr is array (1 to N) of std_logic_vector(7 downto 0); constant datas : arr := (X"38",X"0c",X"06",X"01",X"C0",X"50",x"41",x"4e",x"54",x"45",x"43",x"48", x"20",x"53",x"4f",x"4c",x"55", x"54",x"49",x"4f",x"4e",x"53"); --command and data to display -- The first 4 numbers in the array are used in order to set up the LCD display correctly. begin lcd_rw <= '0'; ----lcd write process(clk) variable i : integer := 0; variable j : integer := 1; begin if clk'event and clk = '1' then if i <= then i := i + 1; lcd_e <= '1'; data <= datas(j)(7 downto 0); elsif i > and i < then i := i + 1; lcd_e <= '0'; elsif i = then j := j + 1; i := 0; end if; if j <= 5 then lcd_rs <= '0'; ---command signal elsif j > 5 then lcd_rs <= '1'; ----data signal end if; if j = 22 then ---repeated display of data j := 5; end if; end if; end process; end Behavioral;

27 Να φτιαχτεί κατάλληλο project στο Xilinx ISE Design Suite και να βάλετε τους παρακάτω περιορισμούς ρολογιού: clk period: 5 ns Input Jitter: 40 ps Global OFFSET IN constraint για το clk External setup time (offset in): 8 ns Global OFFSET OUT constraint για το CLK External clock to pad (offset out).20 ns Φτιάχνουμε time Group για τις εξόδους data με όνομα LCD_DB Επίσης χρησιμοποιώντας το εγχειρίδιο χρήσης του SPARTAN 3A Starter Kit να προσδιορίσετε τις κατάλληλες ακίδες για όλες τις εισόδους-εξόδους του κυκλώματος και με το PlanAhead να φτιάξετε κατάλληλες συνδέσεις μεταξύ των εισόδων-εξόδων και των ακίδων του FPGA. Να γίνει η διαδικασία της σύνθεσης και υλοποίησης και μετά να καταγράψετε μέσα από το PlanAhead το κρίσιμο μονοπάτι που προέκυψε, την μέγιστη συχνότητα και ποιο μέρος της λογικής σας είναι το πιο αργό Ερώτημα 2. Στο παραπάνω κύκλωμα να χρησιμοποιήσετε το PlanAhead για να βάλετε κατάλληλους περιορισμούς ώστε τα στοιχεία του κυκλώματος να είναι όσο πιο μαζεμένα γίνεται μέσα στο FPGA. Κάτι τέτοιο περιλαμβάνει τόσο τα ενδιάμεσα στοιχεία όσο και τις εισόδους εξόδους. Υποθέστε ότι δεν περιορίζεστε στο ποια είσοδος/έξοδος θα πάει σε ποια ακίδα του FPGA. Δοκιμάστε διάφορους συνδυασμούς που πιστεύετε ότι θα σας δώσουν καλύτερους χρονισμούς από αυτόν που βρήκατε στο προηγούμενο ερώτημα.

28 4 ΤΟ ΕΡΓΑΛΕΙΟ FPGA EDITOR. 4.1 ΣΚΟΠΟΣ Αντικείμενο της άσκησης αυτής είναι η εξοικείωση με το εργαλείο FPGA Editor και στη συνέχεια η εκμάθηση του τρόπους με τον οποίο μπορεί να κατέβει σε FPGA ένας σχεδιασμός. 4.2 FPGA EDITOR O FPGA Editor είναι ένα πρόγραμμα που επιτρέπει στον χρήστη να κάνει αλλαγές σε ένα κύκλωμα που έχει αντιστοιχιστεί σε LUTs μέσα σε ένα πραγματικό FPGA. Ο FPGA Editor παίρνει σαν είσοδο ένα.ncd αρχείο. Το αρχείο αυτό παρουσιάζει πως ένα κύκλωμα αναπαρίσταται σε πραγματικά στοιχεία μέσα στο FPGAs. Ο FPGA Editor μπορεί να τροποποιήσει αυτό το αρχείο βασιζόμενος σε αλλαγές που μπορεί να κάνει ο χρήστης. Σαν πρώτο βήμα να ανοίξετε τον FPGA Editor 1. Όταν ανοίξει ο FPGA Editor κάνετε File Open. (a) Στην ερωτηση Design or Hard Macro? επιλέξτε Design. (b) Βρείτε ως Design File, το DefaultDesign.ncd, που σας δίνεται. (c) Αν υπάρχει ένα αρχείο.pcf τότε στο Physical Constraints File section θα υπάρχει το όνομα του αρχείου αυτού. (d) Στο Edit Mode, Επιλέξτε Read Write και μετά ΟΚ Το κεντρικό παράθυρο του FPGA Editor έχει την παρακάτω μορφή.

29 Toolbar List Window Array Window World Window Buttonbar Console Output Η κύρια όψη του του προγράμματος έχει διάφορα παράθυρα. Το Array Window παρουσιάζει ένα σχηματικό του FPGA με το οποίο δουλεύουμε.. Θα έ χ ε ι χ ρ ω μ α τ ι σ μ έ ν α τ α δ ι α φ ο ρ α Components του FPGA, τα οποία χρησιμοποιούμε καθώς και τα Nets και Wires, (ανάλογα με ποια όψη δουλεύουμε). Το Nets Window μας επιτρέπει να βρούμε και να κατηγοριοποιήσουμε τα στοιχεία και τα nets του FPGA ανάλογα με το όνομά τους. ΤοWorld Window παρουσιάζει σε μικρογραφία όλο το FPGA και μας δείχνει ποια περιοχή του εμφανίζεται στο Array Window. Το Console Output (στο κάτω μέρος της οθόνης) μας δείχνει μηνύματα λαθών και τι εκτελείται ανα πάσα χρονική στιγμή από το πρόγραμμα. Τέλος υπάρχει και το Buttonbar με χρήσιμα κουμπιά για το πρόγραμμα καθώς και το Toolbar το οποίο και φαίνεται στο παρακάτω σχήμα. Η κύρια μπάρα εργαλείων του FPGA Editor. Zoom selection (F11) Apply Zoom in/out Visibility modifiers

30 Στον FPGA editor, αφού κάνουμε τις κατάλληλες τροποποιήσεις στο σχέδιό μας, μπορούμε να δημιουργήσουμε ένα bitstream αρχείο για να κατέβει στο FPGA. Κάτι τέτοιο γίνεται αν από το μενου tools επιλέξω το Run Bitgen. 4.3 ΕΡΓΑΛΕΙΟ IMPACT To impact είναι ένα εργαλείο που μας επιτρέπει να κατεβάσουμε ένα bitstream αρχείο σε ένα συγκεκριμένο FPGA. Υπάρχουν διάφοροι τρόποι για να ανοίξει το εργαλείο αυτό. Μπορεί να εκκινήσει το εργαλείο μέσα από τον Xilinx ISE Project Navigator επιλέγοντας στο process view το Manage Configuration Project. Μπορεί να εκτελεστεί σαν αυτόνομο πρόγραμμα από το μενού των Windows. Μπορεί να εκκινήσει μέσα από τον FPGA Editor αν από το κεντρικό παράθυρο του FPGA Editor επιλέξουμε tools-> Probes και στο παράθυρο που προκύπτει επιλέξουμε download. Αφού ανοίξει το impact για να κατεβάσουμε ένα bitstream στο FPGA ακολουθούμε τα παρακάτω βήματα: (a) Ανοίγουμε ένα νέο project. (b) Φροντίζουμε το FPGA να τροφοδοτείται με ρεύμα και να είναι ανοικτός ο αντίστοιχος διακόπτης. (c) Επιβεβαιώνουμε ότι το usb καλώδιο είναι συνδεδεμένο στο PC και στο FPGA (σε κάποια άλλα FPGA το καλώδιο μπορεί να είναι διαφορετικό π.χ. Parallel Cable IV για συνδεση στη JTag port). Αν το καλώδιο έχει συνδεθεί σωστά, πάνω στο FPGA εκεί που συνδέεται το καλώδιο θα υπάρχει αναμένο ένα πρασινο φως. (d) Στο impact UI, επιλέγουμε το File->Initialize Chains. (e) Αν μας ζητηθεί το Assign New Configuration File, επιλέγουμε το Bypass. Θα πρέπει το εργαλείο να έχει την παρακάτω εικόνα (f) Επιλέγουμε το αριστερό FPGA και κάνουμε δεξί κλίκ πάνω του πατώντας το Assign New Configuration File. Θα εμφανιστεί ένα μενού διαλόγου από το οποίο μπορούμε να

31 αναζητήσουμε το αρχείο.bit που έχει το σχέδιό μας. Αφού βρούμε το αρχείο που μας ενδιαφέρει τότε επιλέγουμε Open. (g) Αν μας ζητηθεί Attach SPI or BPI PROM τότε επιλέγουμε Νο (εκτός αν επιθυμούμε να βάλουμε κάποιες συγκεκριμένες τιμές στη ROM μνήμη). (h) Κάνουμε πάλι δεξί κλικ στο αριστερό FPGA κα επιλέγουμε Program. (i) Τότε το κύκλωμά μας έχει φτιαχτεί στο FPGA και λειτουργεί. 4.4 ΕΡΩΤΗΜΑΤΑ Μέρος Α Να υλοποιήσετε την παρακάτω απλή κυκλωματική λογική σε vhdl μέσω του Xilinx ISE GPIO_DIP[0] GPIO_LED GPIO_DIP[1] Χρησιμοποιήστε τα παρακάτω constrains NET "GPIO_DIP<0>" LOC = "V8" IOSTANDARD = LVCMOS33 ; NET "GPIO_DIP<1>" LOC = "U10" IOSTANDARD = LVCMOS33 ; NET "GPIO_LED" LOC = "R20" IOSTANDARD = LVCMOS33 SLEW = SLOW DRIVE = 8 ; Στη συνέχεια να ανοίξετε το FPGA editor και να παρατηρήσετε το κύκλωμα που προκύπτει. Το κύκλωμα αυτό αποτελείται αποκλειστικά από ένα SLICE. Ο στόχος αυτού του κυκλώματος είναι να κάνει μια πράξη OR μεταξύ δύο εισόδων DIP Switches της πλακετας πάνω στην οποία είναι ενωμένο το FPGA. 1. Στο List Window, μπορείτε να εντοπίσετε το στοιχείο που είναι τύπου SLICEL και να καταγράψετε στην θέση του μέσα στο FPGA(εμφανίζεται στο Site). 2. Κάνοντας αριστερό κλικ στο στοιχείο SLICEL κ α ι πατώντας το F11 γ ί ν ε τ α ι zoom σ τ η φ υ σ ι κή περιοχή μέσα στο FPGA όπου υπάρχει το στοιχείο α υ τ ό.. 3. Κάνοντας αριστερό κλικ στο SLICEL που εντοπίστηκε στο Array Window και κάνοντας επίσης αριστερό κλικ στο editblock του Buttonbar θα εμφανιστεί ένα νέο παράθυρο που μας δείχνει στην εσωτερική δομή του συγκεκριμένου SLICEL.

32 Αν το background χρώμα στο συγκεκριμένο παράθυρο δεν είναι μαύρο (αλλά είναι γκρι) τότε δεν μπορούμε να τροποποιήσουμε αυτό το SLICEL. Για να γίνει τροποποιήσιμο θα πρέπει όταν φορτώθηκε το κατάλληλο αρχείο ncd στον FPGA Editor να είναι ενεργοποιημένη στο Edit Mode η επιλογή Read Write. Αν κάτι τέτοιο έχει γίνει σωστά θα επιλέγοντας το Begin Editing κουμπί να γίνεται το background χρώμα μαύρο και να μπορεί κανείς να κάνει τροποποιήσεις. Αν δεν είναι τροποποιήσιμο το SLICEL τότε μπορεί να αλλάξει από το μενού File->Main properties και αλλάζοντας την επιλογή Edit Mode σε Read Write. Ένα SPARTAN 3A SLICEL. Να κατεβάσετε μέσω του FPGA editor στο FPGA το συγκεκριμένο σχεδιασμό, χρησιμοποιώντας το εργαλείο impact. Να δοκιμάσετε αν το κύκλωμα δουλεύει σωστά Μερος Β. Μέσω του FPGA editor μπορούμε να τροποποιήσουμε ένα κύκλωμα. Για παράδειγμα μπορούμε να ενώσουμε νέα σήματα με SLICEs ή να αλλάξουμε τη λειτουργία που επιτελείται σε κάθε SLICE. Χρησιμοποιούμε το κύκλωμα της πυλής OR σαν παράδειγμα. Εντοπίστε το SLICE όπου συνδέονται οι 2 εισόδοι της πύλης μέσα στο FPGA. Θα πρέπει να φαίνονται σαν γαλάζια καλώδια που ενώνονται στο SLICEL όπως φαίνεται παρακάτω. Αν επιλέξουμε ένα καλώδιο θα δούμε ότι συνδέεται με μια είσοδο (ή έξοδο). Για το σκοπό αυτό υπάρχει ένα τρίγωνο. Επιλέγοντας αυτό το τρίγωνο, εκείνο γίνεται κόκκινο. 1. Επιλέξτε την είσοδο (το τρίγωνο) του SLICEL στην οποία καταλήγει το σήμα GPIO_DIP[1] κάντε δεξί κλικ πάνω της και πατήστε το delete.

33 Με αυτό τον τρόπο αποσυνδέθηκε το σήμα με το SLICE. Για να συνδέσουμε ένα σήμα με την είσοδο του SLICE ακολουθούμε την παρακάτω διαδικασία. = 1. Στο List Window, επιλέγουμε τα Unrouted Nets από το drop-down box. 2. Επιβεβαιώνω ότι υπάρχει στο List Window το net GPIO_DIP[1]. 3. Επιλέγω το μη χρησιμοποιημένο τρίγωνο του SLICEL που θέλω να ενώσω (ουσιαστικά αυτό που αποσύνδεσα πιο πριν). Θα πρέπει το τρίγωνο αυτό να είναι κόκκινο. 4. Το τρίγωνο αυτό θα πρέπει να είναι component και όχι απλά site. (θα πρέπει στο Concole Output όταν το τρίγωνο επιλέγεται να υπάρχει κάτι σαν το site.pin = SLICE_X17Y100.CXX, comp.pin = N_XX_i.CXX ) αλλιώς στα επόμενα βήματα θα βγαίνει το παρακάτω μήνυμα λάθους. WARNING:FPGAEditor:783 - There is no comp pin to add to a net. 5. Ενώ είναι επιλεγμένο το τρίγωνο κρατάμε πατημένο το πληκτρο Ctrl key και κάνουμε κλικ στο unrouted net GPIO_DIP[1] α π ό τ ο List Window. 6. Θα πρέπει να είναι επιλεγμένα τόσο το τρίγωνο όσο και το unrouted net ώστε να επιλέξουμε το route από το Buttonbar. Αναμένεται να εμφανιστεί το μήνυμα ERROR:FPGAEditor:361 - Nothing found to route. Το οποίο αγνοούμε.

34 7. Πατώντας το κουμπί autoroute από το button bar η διαδικασία ολοκληρώνεται κανονικά και το net GPIO_DIP[1] έχει συνδεθεί με την σωστή είσοδο του SLICEL. Επίσης, μπορούμε να αλλάξουμε την λειτουργία του κάθε SLICEL τροποποιώντας τα Attributes κάποιου συγκεκριμένου LUT. 1. Κάνουμε διπλό κλικ στο SLISEL του παραδείγματός μας και φροντίζουμε ώστε να είναι σε Edit mode Read Write. 2. Επιλέγουμε το κουμπί attribute όπως φαίνεται στο παρακάτω σχήμα Save and Close Attributes Apply Begin Editing

35 GPIO_DIP[2] GPIO_DIP[1] GPIO_DIP[0] 3. Στο νέο παράθυρο που προκύπτει βλέπουμε ότι μεατξύ των εισόδων του LUT γίνεται η πράξη OR. Γενικότερα τα σύμβολα για τις λογικές πράξεις είναι τα παρακάτω: (a) and: * (b) or: + (c) not: (d) Αλλάζουμε την λογική πράξη που κάνει το LUT προσέχοντας να χρησιμοποιούμε τις κατάλληλες εισόδους του LUT (αυτές που συνδέονται με τα net του SLICE). ΠΡΟΣΟΧΗ: Δεν τροποποιώ το Config στο παράθυρο Attributes Να γίνει η αλλαγή από πράξη OR σε πράξη XOR μέσα στο LUT. Πατήστε Apply για να αποθηκευτούν οι αλλαγές και μετά Save and Close. Να κατεβάσετε στο FPGA το νέο κύκλωμα και να επιβεβαιώσετε ότι λειτουργεί ως αναμένεται Probes Μέσω του FPGA Editor μπορούμε να εισαγάγουμε και probes, δηλαδή nets που να συνδέουν συγκεκριμένες εισόδους-εξόδους από slices με κάποια είσοδο/έξοδο του FPGA. Η πρωταρχική χρήση αυτών των probes είναι να παρέχουν την δυνατότητα ελέγχου ορθής λειτουργίας του κυκλώματος που κατασκευάστηκε. Για να βάλουμε ένα probe επιλέγουμε από το μενού tools->probes και θα ανοίξει ένα νέο παράθυρο με μια σειρά από κουμπιά στην δεξιά πλευρά του. Πατώντας το κουμπί Add ανοίξει νέο παράθυρο όπου μπορούμε να δώσουμε όνομα σε νέο probe, να ορίσουμε το net του FPGA με το οποίο θα το συνδέσουμε και τέλος να θέσουμε σε ποια ακίδα του FPGA θα κατευθυνθεί το σήμα του net αυτού Άσκηση Να χρησιμοποιήσετε το κύκλωμα που δίνεται σαν ncd αρχείο και σε αυτό να κάνετε τις κατάλληλες συνδέσεις ώστε να προκύψει ο παρακάτω πλήρης σχεδιασμός. GPIO_LED

36 Να προσθέσετε ένα probe στο σήμα εξόδου GPIO_LED ώστε να κατευθύνει την έξοδο και σε ένα δεύτερο LED. Να κατεβάσετε το κύκλωμα σε FPGA και επιβεβαιώσετε την ορθή λειτουργία του.

37 5 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΕΝΟΣ ΚΥΚΛΩΜΑΤΟΣ ΑΠΑΡΙΘΜΗΤΗ ΜΕΣΑ ΣΕ FPGA 5.1 ΣΚΟΠΟΣ Αντικείμενο της άσκησης αυτής η εμπέδωση των γνώσεων που διδάχτηκαν στα προηγούμενα εργαστήρια με την υλοποίηση ενός πλήρους συστήματος πάνω σε πραγματικό FPGA 5.2 ΕΡΩΤΗΜΑΤΑ 1.Να κατεβάσετε στο FPGA SPARTAN 3 το κύκλωμα που σχεδιάστηκε στο εργαστήριο 1 με τη χρήση του εργαλείου impact. Προσοχή: Να ορίσετε σωστά τις ακίδες μέσω του constrain file. 2.Να τροποποιήσετε το κύκλωμα που περιγράψατε σε VHDL στο εργαστήριο 1 (κύκλωμα απαριθμητή) έτσι ώστε να κάνει τις παρακάτω λειτουργίες: Όταν ενεργοποιώ τον διακόπτη SW1 τα LED πάνω στην πλακέτα του FPGA να αλλάζουν από αριστερά προς δεξιά. Όταν ενεργοποιώ τον διακόπτη SW2 τα LED πάνω στην πλακέτα του FPGA να αλλάζουν από δεξιά προς τα αριστερά. Όταν ενεργοποιώ τον διακόπτη SW3 τα LED να ανάβουν από δεξιά προς αριστερά ένα προς ένα στη σειρά, όπως φαίνεται στο παρακάτω σχήμα: Χρονική στιγμή i Χρονική στιγμή i+1 Χρονική στιγμή i+2

38 6 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΚΥΚΛΩΜΑΤΟΣ ΧΡΗΣΗΣ ΠΕΡΙΦΕΡΕΙΑΚΩΝ ΣΕ FPGA. 6.1 ΣΚΟΠΟΣ Αντικείμενο της άσκησης αυτής η Εξοικείωση του Φοιτητή με την υλοποίηση κυκλωμάτων σε πραγματικό FPGA που να περιλαμβάνουν σύνθετες περιφερειακές συσκευές 6.2 ΕΡΩΤΗΜΑ Βασιζόμενοι στα κυκλώματα που περιγράφονται σε VHDL στην Άσκηση 1 και 3 να υλοποιήστε και να κατεβάσετε στο FPGA ένα κύκλωμα που όταν ενεργοποιείται ο διακόπτης SW1 να εμφανίζει περιοδικά (με περίοδο 0.5 δευτερόλεπτα) στην κάτω γραμμή της lcd οθόνης του FPGA board το μήνυμα #COUNT OUT OK#. Όταν δεν είναι ενεργοποιημένος ο διακόπτης SW1 τότε η lcd οθόνη θα πρέπει να είναι κενή. Να κάνετε post Map και Post Place and Route Εξομοίωση του κυκλώματος χρησιμοποιώντας το ISim ώστε να επιβεβαιώσετε ότι με βάση την τιμή του απαριθμητή, ο χρόνος που υπολογίσατε για την περιοδικότητα 0,5 δευτερολέπτων είναι σωστός. Παρατήρηση: Η post Place and Route εξομοίωση δίνει ακριβείς τιμές χρονισμού σε σχέση με το τι θα προκύψει όταν θα κατέβει το κύκλωμα στο FPGA εν αντιθέσει με την εξομοίωση από synthesis που δεν είναι ακριβείς. Για να ενεργοποιήσουμε την post map ή την post place and route εξομοίωση τότε στο ISE project navigator 1. Εκτελούμε το Implement Design process 2. Στο Design panel, επιλέγουμε Post-Route Simulation από την Design View drop-down list. 3. Από το Hierarchy pane, επιλέγουμε test bench αρχείο (αν υπάρχει) ή το HDL source file το οποίο εξομοιώνουμε. Για την εξομοίωση του χαμηλού επιπέδου στοιχείων του σχεδίου μας, μπορούμε να επιλέξουμε το Generate Multiple Hierarchical Netlist από το Simulation Model Properties dialog box στο Generate Post- Place & Route Simulation Model process (του process view). Αφού δημιουργηθεί το simulation model netlist αυτό το netlist θα εμφανίζεται στην ιεραρχία κάτω από το test bench (αν υπάρχει) που το κάνει instantiate.

39 7 ΕΙΣΑΓΩΓΗ ΈΤΟΙΜΟΥ ΙΡ ΣΕ ΑΡΧΙΤΕΚΤΟΝΙΚΗ (ΧΡΗΣΗ ΤΟΥ ΕΡΓΑΛΕΙΟΥ LOGICORE) 7.1 ΣΚΟΠΟΣ 1. Αντικείμενο της άσκησης αυτής η εκμάθηση του εργαλείου LogiCore έτσι ώστε να εισαγάγουμε έτοιμα ΙΡ στοιχεία/ πυρήνες που δίνονται από την Xilinx για βελτιστοποίηση σχεδιασμών. 7.2 ΤΟ LOGICORE ΕΡΓΑΛΕΙΟ Με το εργαλείο Logicore που διατείθεται στο Xilinx ISE εργαλείο μπρεοούμε ν α χρησιμοποιήσουμε έτοιμους πυρύνες υλικού που είναι βελτιστοποιημένοι για τα FPGA της Xilinx. Τέτοιοι πυρήνες μπορεί να υλοποιούν σύνθετους αλγορίθμους που είναι δύσκολο να σχεδιαστούν αποδοτικά, όπως FFT, δίαιρεση, πολλαπλασιασμό κτλ.). Το Logicore μπορεί να δημιουργήσει πολλά κυκλώματα με σχεδόν αυτόματο τρόπο (μέσω ενός wizard) αρκεί ο χρήστης του εργαλείου να γνωρίζει ακριβώς τι θέλει να υλοποιήσει (να έχει καταλήξει-αποφασίσεις το αριθμό των εισόδων/εξόδων και των σημάτων ελέγχου). Παρακάτω δίνεται ένα παράδειγμα χρήσης του εργαλείου Logicore που οδηγεί στην κατασκευή ενός αθροιστή 32 bit. Για να εισάγουμε ένα στοιχείο Logicore στο κύκλωμά μας, σε ένα project του Xilinx ISE project navigator στο design view κάνουμε δεξί κλίκ στο αρχείο ρίζα του δέντρου στοιχείων κυκλώματος (εντός του hierarchy) και επιλέγουμε new source. Από τη λίστα που προκύπτει σε νέο παράθυρο επιλέγουμε IP(CORE Generator & Architecture Wizard) και δίνουμε ένα όνομα αρχείου και το μονοπάτι που θα είναι αποθηκευμένο αυτό. Πατώντας Next θα εμφανιστεί ένα νέο παράθυρο στο οποίο μπορούμε να επιλέξουμε το ΙΡ που θα δημιουργηθεί. Όπως μπορεί να παρατηρηθεί από το παρακάτω σχήμα, ο αριθμός των δυνατών ΙΡ σχεδιών που μπορεί να γεννηθούν είναι πάρα πολύ μεγάλος.

40 Από το παραπάνω κατάλογο βρίσκουμε το στοιχείο Adder Subtracter και πατάμε Next και στο επόμενο πληροφοριακό παράθυρο Finish. Αν πειραματιστείτε με τον κατάλογο των ΙΡ θα δείτε ότι κάποια από αυτά δεν είναι ενεργοποιημένα (με αχνό γκρίζο χρώμα). Αυτό συμβαίνει γιατί δεν υποστηρίζονται από την τεχνολογία FPGA που έχουμε επιλέξει για το project μας (π.χ. το SPARTAN 3A FPGA). Μετα το Πλήκτρο Finish, θα δημιουργηθεί στο σκληρό δίσκο του υπολογιστή μας και ποιο συγκεκριμένα στον υποκατάλογο όπου είναι αποθηκευμένα τα αρχεία του project που έχει φτιαχτεί, ένας νέος υποκατάλογος με το όνομα ipcore_dir. Μέσα σε αυτόν το υποκατάλογο θα αποθηκευτούν τα αρχεία που φτιάχνονται από τον LOGICORE Wizard. Επίσης μετά το Finish θα έχει εμφανιστεί και ένα νέο παράθυρο που μας επιτρέπει να παραμετροποιήσουμε τον adder/subtracter που πρόκειται να φτιαχτεί. Το παράθυρο αυτό φαίνεται στο παρακάτω σχήμα με τις τιμές παραμέτρων που επιθυμούμε να έχει.

41 Είδος εισόδου (αν θα είναι προσιμασμένη ή όχι ) Αριθμός bits εισόδου Αριθμός bits εισόδου Επιλογή αν θα κάνει πρόσθεση/αφαίρεση ή πρόσθεση και αφαίρεση Εσωτερική καθυστέρηση Adder σε κύκλους ρολογιού και αν θα προκύπτει αυτόματα ή χειροκίνητα. Σήματα ελέγχου που θέλουμε να υπάρχουν ή όχι Μετά την επιλογή των κατάλληλων παραμέτρων πατάμε το πλήκτρο Generate και ύστερα από μερικά λεπτά θα δημιουργηθεί το επιθυμητό ΙΡ στοιχείο. Πλέον, στην ιεραρχία του design view του project έχει προστεθεί μια καινούργια καταχώρηση σαν source αρχείο με επέκταση xco. Παρόλα αυτά, δεν έχει συνδεθεί αυτό το αρχείο με την αρχιτεκτονική που επιθυμούμε να φτιάξουμε. Για να γίνει αυτό πρέπει να έχουμε κάποιο vhdl αρχείο το οποίο και θα μπορούμε να χρησιμοποιήσουμε σαν component. Κάνουμε δεξί κλικ στην ιεραρχία μας στο design view και επιλέγουμε add source. Στο καινούργιο παράθυρο που θα προκύψει πάμε στο υποκατάλογο ipcore_dir και εκεί θα βρούμε ένα vhd αρχείο που έχει το ίδιο όνομα με το ΙΡ στοιχείο που γεννήθηκε. Επιλέγουμε αυτό το αρχείο για να το βάλουμε στο project. Αυτό το αρχείο είναι αυτόματα γεννημένος κώδικας vhdl σαν wrapper του xco αρχείο που δημιουργήθηκε. Πλέον μπορούμε να χρησιμοποιήσουμε το ΙΡ στοιχείο μέσω του vhdl αρχείου του σαν component σε κάποιο σχέδιο vhdl που θέλουμε να φτιάξουμε.

42 7.3 ΕΡΩΤΗΜΑ Να χρησιμοποιήσετε έτοιμα ΙΡ components του LOGICORE ώστε να κάνετε την παρακάτω αριθμητική πράξη. C=(A+B D) Υποθέστε ότι όλες οι είσοδοι είναι 32 bits (A,B,D) και η έξοδος C είναι 64 bits. Να φτιάξετε κατάλληλο testbench και να εξομοιώσετε το κύκλωμα με post place and route simulation. Να πάρετε μετρήσεις για την μέγιστη ταχύτητα του κυκλώματος που φτιάξατε καθώς και τον αριθμό των slices/luts που χρησιμοποιήθηκαν στο κύκλωμα.

43 8 ΛΗΨΗ ΜΕΤΡΗΣΕΩΝ ΑΠΟ FPGA ΜΕ ΤΗΝ ΧΡΗΣΗ ΤΟΥ ΕΡΓΑΛΕΙΟΥ CHIPSCOPE 8.1 ΣΚΟΠΟΣ Αντικείμενο της άσκησης αυτής η εκμάθηση του εργαλείου Chipscope ώστε να μπορούμε να λαμβάνουμε πραγματικές μετρήσεις από κυκλώματα που έχουν υλοποιηθεί μέσα σε FPGA. 8.2 ΤΟ ΕΡΓΑΛΕΙΟ CHIPSCOPE Με το εργαλείο Chipscope μπορούμε να παρατηρήσουμε τη λειτουργία ενός σχεδιασμού στο πραγματικό κύκλωμα μέσα στο FPGA. Ο κλασσικός τρόπος για να παρατηρήσει κάποιος τις τιμές των εξόδων ενός FPGA είναι να συνδέσει ένα εξωτερικό παλμογράφο. Όμως το Chipscope μας επιτρέπει να κάνουμε κάτι τέτοιο, ενσωματώνοντας μέσα στο σχεδιασμό μας ένα ΙΡ πυρήνα Λογικού Αναλυτή (Integrated Logic Analyzer ILA). Αυτός ο πυρήνας μπορεί να συνδεθεί παραμετρικά με τις εξόδους του σχεδιασμού μας και στην συνέχεια με το εργαλείο Chipscope να δειγματοληπτειται παρουσιάζοντάς μας τα αποτελέσματα στον υπολογιστή. Η Λειτουργία του Chipscope θα εξηγηθεί με ένα παράδειγμα ενός απαριθμητή. Τον κώδικα του σε vhdl τον είδαμε στην άσκηση 1. Θεωρούμε ότι είναι φτιαγμένο ένα project με έναν 8 bit απαριθμητή σαν top-level component. Κάνουμε δεξί κλικ στο top-level component στο design view του Xilinx project navigator και επιλέγουμε new source. Στο νεό παράθυρο επιλέγουμε Chipscope Definition and Connection File ενώ του δίνουμε ένα όνομα και το μονοπάτι όπου θα σωθεί το αρχείο αυτό. Επιλέγουμε Finish. Θα εμφανιστεί ένα νέο αρχείο στην ιεραρχία του Design view με επέκταση cdc. Κάνουμε διπλό κλίκ πάνω του ώστε να ανοίξει το παράθυρο Chipscope Core Inserter στο οποίο μπορεί να γίνει εισαγωγή ILA, παραμετροποίηση και σύνδεσή τους με το σχεδιασμό. Επιλέγω στο νέο παράθυρο το ICON από την ιεραρχία στο αριστερό μέρος του παραθύρου και μετά τα πατάω το κουμπί New ILA unit. Τότε θα αλλάξει το παράθυρο, εμφανίζοντάς μας ένα σύνολο από δυνατότητες παραμετροποίησης χωρισμένες σε 3 διαφορετικές καρτέλες. Trigger Parameters Capture Parameters Net Parameters Στο παρακάτω κύκλωμα βλέπουμε πως πρέπει να είναι οι παράμετροι για την καρτέλα trigger Parameters. Οι παράμετροι αυτοί μας λένε ότι θα έχω 2 θύρες σκανδαλισμού (trigger ports) εκ των οποίων η μια θα είναι 8 bits ενώ η άλλη θα είναι 1 bit.

44 Στην συνέχεια παρουσιάζονται οι παράμετροι για την καρτέλα Capture Parameters. Οι παράμετροι αυτοί δηλώνουν ότι θα συλλεχτούν 512 δείγματα από τις θύρες σκανδαλισμού.

45 Στη συνέχεια ακολουθεί η καρτέλα Net connections όπου μπορεί να γίνει ορισμός των συνδέσεων του ILA επιλέγοντας Modify connections. Στο αναδυόμενο παράθυρο πρέπει να συνδεθούν τα σήματα που υπάρχουν μέσα στο σχεδιασμό μας με τις θύρες σκανδαλισμού ή ρολογιού του ILA. Αρχικά πρέπει να οριστεί το σήμα ρολογιού. Όλες οι είσοδοι του αρχικού σχεδιασμού θα εμφανίζονται σαν σήματα που θα έχουν την έκφραση (_BUFG) δίπλα στο όνομά τους. Μπορούμε λοιπόν να βρούμε το σήμα clk σαν clk_bufg. Επιλέγω αυτό το σήμα και πατάω το κουμπί Make Connection. Στη συνέχεια θα συνδέσω στη θύρα σκανδαλισμού TR0 την έξοδο του απαριθμητή count_out. Επιλέγω όλα τα 1 bit σήματα του count_out πατάω το Make connection. Το αποτέλεσμα θα είναι κάτι σαν αυτό που φαίνεται στο παρακάτω σχήμα. Ομοίως μπορώ να αναθέσω στο TR1 το σήμα εισόδου reset (reset_bufg). Τέλος, πατάω το save κουμπί που υπάρχει πάνω αριστερά στο παράθυρο και κλείνω το παράθυρο αυτό ή πατάω το κουμπί Return to Project Navigator. Το επόμενο βήμα είναι να γίνει κανονικά το Map/Place and Route και να δημιουργηθεί το bit αρχείο το οποίο και πρέπει να κατέβει στο FPGA. Όταν κατέβει με το impact το αρχείο bit στο FPGA τότε μέσα από το Xilinx ISE project Navigator στο process view επιλέγεται το Analyze Design Using Chipscope. Μετά από αυτή την ενέργεια θα εκκινήσει το εργαλείο Chipscope. Αρχικά πρέπει να γίνει η διασύνδεση του Chipscope Analyzer με το FPGA board. Για το σκοπό αυτό πρέπει να είναι ορθά συνδεδεμένο το καλώδιο usb (ή Jtag αν πρόκειται για άλλο board από το Spartan 3a). Εφόσον αυτή η σύνδεση έχει γίνει σωστά τότε στο παράθυρο του Chipscope analyzer πατάμε στην πανω αριστερή γωνία το κουμπί Open Cable/Search JTAG Chain και μετά ΟΚ στο επόμενο παράθυρο που θα ανοίξει. Μετά την σύνδεση το ChipScope Analyzer θα πάρει μορφή σαν αυτή του παρακάτω σχήματος.

46 Στο πεδίο Transcript φαίνεται αν ο σχεδιασμός που έχει εισαχθεί έχει βρεθεί. Στο Trigger Setup γίνεται εισαγωγή της τιμής από την οποία θα ξεκινήσει να δειγματοληπτεί το εργαλείο. Αυτό δεν σημαίνει ότι εισάγουμε σε αυτό το σημείο κάποια τιμή στο εργαλείο. Το Chipscope δεν έχει τέτοια δυνατότητα. Απλά αυτό που εκτελείται είναι η έναρξη της δειγματοληψίας. Πατώντας το κουμπί RUN (μοιάζει με ένα τρίγωνο) στο πεδίο Waveform προβάλλονται οι τιμές που δειγματοληπτούνται. Στο δείγμα που έχει συλλεχθεί μπορούμε στα πεδία Χ και Ο να εισάγουμε συγκεκριμένες τιμές και να παρακολουθήσουμε μια συγκεκριμένη μετάβαση/αλλαγή τους.

47 8.3 ΕΡΩΤΗΜΑ Να φτιάξετε σε vhdl έναν απαριθμητή πάνω/κάτω αρίθμησης 8 bits. Να επιλέγεται αν θα γίνεται η αρίθμηση προς τα πάνω ή προς τα κάτω από διακόπτη πάνω στο FPGA. Χρησιμοποιήσετε το Chipscope για να επιβεβαιώσετε ότι η αρίθμηση γίνεται σωστά και ότι ο διακόπτης επιλογής δουλεύει όπως θα έπρεπε.

48 9 ΕΠΕΞΕΡΓΑΣΤΕΣ SOFTCORE ΓΙΑ ΥΛΟΠΟΙΗΣΗ ΕΝΤΟΣ ΤΟΥ FPGA 9.1 ΣΚΟΠΟΣ Σε αυτή την άσκηση στόχος είναι η εξοικείωση του φοιτητή με την έννοια επεξεργαστων softcore που διαθέτει η Xilinx στα FPGA της για την δημιουργία ενσωματωμένων συστημάτων. 9.2 Ο ΕΠΕΞΕΡΓΑΣΤΗΣ PICO BLAZE Ο Picoblaze είναι ένας 8 bit επεξεργαστής soft-core, δηλαδή επεξεργαστής που περιγράφεται σε γλώσσα HDL και μπορεί να ενσωματωθεί σε μια πλακέτα FPGA. Τα χαρακτηριστικά του φαίνονται παρακάτω συνοπτικά: ISC 8-bit Microcontroller Reference Design. Supports Virtex/Virtex-E, Spartan -II/E, Virtex-II/Pro devices. Very small size only 84 Virtex-II slices, 33% of XC2V40. Up to 66 MIPS in Virtex -II, 100 MIPS in Virtex -IV. Everything in FPGA - no external components required. Highly integrated for implementing non-time critical state machine. Predictable fast interrupt response. Originally named KCPSM which stands for "Constant(K) Coded Programmable State Machine" (formerly "Ken Chapman's PSM"). Η γενική αρχιτεκτονική του φαίνεται στο παρακάτω σχήμα.

49 Ο επεξεργαστής συνδέεται έχει 8 bit εισόδους και εξόδους και συνδέεται με μνήμη εντολών που είναι γραμμένες σε assembly γλώσσα χαμηλού επιπέδου όπως φαίνεται στο παρακάτω σχήμα. Κύκλωμα χρήστη Εφόσον κάποιος επιθυμεί να χρησιμοποιήσει τον επεξεργαστή σε συνδυασμό με κάποιο κατασκευασμένο κύκλωμα για κάποια λειτουργία στο FPGA, καλείται να κάνει τα παρακάτω βήματα: 1. Να περιγράψει κατάλληλο vhdl κύκλωμα και τον τρόπο σύνδεσής του στις εισόδους εξόδους του επεξεργαστή. 2. Να συνδέσει το κύκλωμα αυτό με το κύκλωμα του picoblaze το οποίο περιγράφεται και αυτό σε vhdl. 3. Να γράφει κατάλληλο κώδικα σε γλώσσα προγραμματισμού Assembly (για τον Picoblaze) που να υποστηρίζει το κύκλωμα που έχει συνδεθεί στον επεξεργαστή. Το πρόγραμμα αυτό πρέπει να είναι ένα αρχείο με επέκταση.psm.

50 4. Να κάνει assembling compiling (συμβολομετάφραση) του προγράμματος που γράφτηκε σε assembly μέσω του Assembler εργαλείου που δίνει η Xilinx (με όνομα KCPSM3.EXE ) φροντίζοντας να υπάρχει στον υποκατάλογο εκτέλεσης του εργαλείου τα αρχεία KCPSM3.EXE και ROM_form.vhd. Το αποτέλεσμα της διαδικασίας του Assembling είναι να δημιουργηθεί ένα αρχείο.vhd το οποίο θα έχει το πρόγραμμα που δημιουργήθηκε σαν δεδομένα μιας ROM μνήμης που θα αποτελέσει την Istruction μνήμη του picoblaze. 5. Να προσδιοριστεί σωστά το ucf αρχείο περιορισμών για τον επεξεργαστή και την πλακέτα του fpga που χρησιμοποιείται. Αυτό θα γίνει και σε σχέση με το σχεδιασμό-λειτουργίατου κυκλώματος που ενσωματώνουμε με τον επεξεργαστή. 6. Να δημιουργηθεί ένα project Xilinx ISE Project Navigator και να εισάγουμε σε αυτό όλλα τα παραπάνω αρχεία vhd. Δηλαδή, το αρχείο περιγραφής του επεξεργαστή kcpsm3.vhd, το αρχείο περιγραφής του κυκλώματος που θέλουμε να ενσωματώσουμε, το αρχείο της instruction μνημης με τις εντολές του επεξεργαστή και το αρχείο περιορισμών ucf. 7. Να γίνει synthesis, mapping, place and routing, bitstream generation και να κατέβει το bit αρχείο στο FPGA χρησιμοποιώντας το πρόγραμμα JTAG loader που παρέχεται από την Xilinx μαζί με τον επεξεργαστή ΆΣΚΗΣΗ-ΠΑΡΑΔΕΙΓΜΑ ΧΡΗΣΗΣ ΤΟΥ PICOBLAZE Δίνονται τα απαραίτητα αρχεία για να υλοποιηθεί λειτουργία ελέγχου των LED του FPGA board μέσω του περιστρεφόμενου διακόπτη, των press buttons και των διακοπτών αλλά και λειτουργία ολίσθησης μηνύματος στην lcd οθόνη του FPGA. Πιο συγκεκριμένα τα αρχεία αυτά φαίνονται στο παρακάτω διάγραμμα: Η περιγραφή του κυκλώματος σε υψηλό επίπεδο. Περιλαμβάνει το Ι/Ο που χρειάζεται για να απενεργοποιήσουμε την Flash μνήμη της πλακέτα η οποία θα προκαλούσε παρεμβολές στην οθόνη του lcd. Το αρχείο περιορισμών για Spartan -3E FPGA ΠΡΟΣΟΧΗ: πρέπει να τροποποιηθεί για το Spartan 3A FPGA που υπάρχει στο εργαστήριο Το αρχείο περιγραφής του picoblaze για Spartan 3A Το αρχείο κώδικα Assembly για τον έλεγχο του picoblaze. Έχει μετατραπεί σε vhdl ώστε να μπορεί να εγγραφεί στην Instruction μνήμη.πρεπει να δημιουργηθεί από τους φοιτητές control.psm Το αρχείο κώδικα Assembly για τον έλεγχο του picoblaze. PROM αρχείο προγραμματισμού για αυτό σχεδιασμό για χρήση με οποιαδήποτε FLASH

51 Να τροποποιήσετε το ucf αρχείο ώστε να μπορεί ταιριάξει με το SPARTAN 3A FPGA board. Χρησιμοποιήστε το εγχειρίδιο χρήσης της πλακέτας Spartan 3A board. Επίσης στο αρχείο s3esk_startup_rev2.pdf μπορείτε να βρείτε περισσότερες πληροφορίες για το πώς δουλεύει το πρόγραμμα. Να ακολουθήσετε όλα τα βήματα που περιγράφονται στο προηγούμενο υποκεφάλαιο της άσκησης και κατεβάστε στο FPGA το σχεδιασμό. Να επιβεβαιώσετε την ορθή λειτουργία του.

52 10 Ο SOFTCORE ΕΠΕΞΕΡΓΑΣΤΗΣ MICROBLAZE 10.1 ΣΚΟΠΟΣ Σε αυτή την άσκηση στόχος είναι η εξοικείωση του φοιτητή με τον επεξεργαστή Microblaze softcore που διαθέτει η Xilinx στα FPGA της για την δημιουργία ενσωματωμένων συστημάτων. Επίσης, σε αυτό το εργαστήριο γίνεται εξοικείωση με τα εργαλεία της Xilinx για αυτόν τον επεξεργαστή Ο ΕΠΕΞΕΡΓΑΣΤΗΣ MICROBLAZE Ο Microblaze είναι και αυτός ένας επεξεργαστής softcore, ο οποίος έχει πολύ περισσότερες δυνατότητες σε σχέση με τον picoblaze. Επίσης, η Xilinx παρέχει μια σειρά από εργαλεία για την παραμετροποίηση του έτσι ώστε να ταιριάζει ακριβώς στην ανάγκες του σχεδιαστή κυκλωμάτων και ενσωματωμένων συστημάτων. Μπορούμε λοιπόν να παραμετροποιήσουμε την αρχιτεκτονική του microblaze έτσι ώστε να περιλαμβάνει ή όχι κυκλωματικές δομές όπως floating point units, caches, buses και περιφερειακά ανάλογα με τις ανάγκες μας. Κάτι τέτοιο γίνεται πολύ εύκολα, με τη χρήση wizard που μας παρέχει η εταιρία στο εργαλείο Xilinx ISE EDK Xilinx Platform Studio. Στο εργαλείο αυτό καθορίζεται πλήρως η αρχιτεκτονική του επεξεργαστή και τα περιφερειακά τα οποία είναι συνδεδεμένα στο κεντρικό δίαυλο του. Υπάρχει επίσης το εργαλεία Xilinx ISE EDK Software Platform Kit το οποίο μας επιτρέπει με εύκολο τρόπο να γράψουμε C κώδικα για τον επεξεργαστή που δημιουργήσαμε ΆΣΚΗΣΗ-ΠΑΡΑΔΕΙΓΜΑ ΧΡΗΣΗΣ Ανοίξτε το Xilinx Platform Studio (Start > Xilinx Ise Design Suite > EDK > Xilinx Platform Studio ) Όταν ανοίξει το εργαλείο πατήστε File > New Project. Επιλέξτε Base System Builder wizard στο Xilinx Platform Studio μενού διαλόγου και μετά OK. Ο Base System Builder wizard βοηθά στην δημιουργία ενός συστήματος επεξεργαστή με αυτόματο τρόπο. Στο μενού που ανοίγει πατήστε Browse. Και επιλέξτε το μονοπάτι στο σκληρό δίσκο όπου θα σωθεί το project που θα δημιουργηθεί καθώς και πιο θα είναι το όνομά του. Αποθηκεύστε και μετά OK. Στο μενού διαλόγου του wizard επιλέξτε "I would like to create a new design" και μετά Next. Στο μενού που ακολουθεί μπορείτε να βάλετε την πλακέτα FPGA που χρησιμοποιείται για το σύστημα.

53 Βάλτε την πλατφόρμα του Spartan 3A starter kit και μετά Next. Επιλέξτε Single-Processor System και μετά Next. Στο Processor Configuration μενού διαλόγου βάλτε τις παρακάτω ρυθμίσεις (επιλέγουμε την ταχύτητα λειτουργίας του microblaze) και μετά Next.

54 Στη συνέχει ακολουθεί ένα μενού διαλόγου όπου μπορούμε να διαλέξουμε περιφερειακά που μπορούν να περιλαμβάνονται στο ενσωματωμένο σύστημα που δημιουργούμε βασισμένο στον Microblaze. Στη default περίπτωση περιλαμβάνονται συνήθως τα αρκετά περιφερειακά ώστε να λειτουργεί πλήρως το σύστημα. Βεβαιωθείτε ότι το LEDs_8bit Core:xps_GPIO περιλαμβάνεται στα περιφερειακά του επεξεργαστή και πατήστε Next. Στο επόμενου μενού διαλόγου μπορούμε να επιλέξουμε αν θέλουμε να υπάρχει Instruction ή/.και data cache μνήμη. Προς το παρόν δεν επιθυμούμε κάτι τέτοιο και πατάμε Next. Στην περίληψη που εμφανίζεται πατάμε Finish. Θα πρέπει τότε να προκύψει το παρακάτω παράθυρο

55 Από το κεντρικό παράθυρο που φαίνεται παραπάνω μπορούμε να βάλουμε ένα επιπλέον IP περιφερειακό στην υπάρχουσα πλατφόρμα.. Επιλέξτε από το IP Catalog tab στο Project Information Area το General purpose IO και από κει το XPS General Purpose IO 2.00 a"και κάντε drag and drop στοsystem Assembly view (αν βγει κάποιο παράθυρο πατήστε ΟΚ). Τώρα θα υπάρχει το συγκεκριμένο IP στο MHS File και στο System Assembly View. Επιλέξτε το Bus Interfaces tab στο System Assembly View. Κάνετε απλό κλικ στο GPIO instanse που προστέθηκε και αλλάξτε το όνομα σε button.

56 Συνδέστε το νέο περιφερειακό με το mb_plb στο SPLB field όπως φαίνεται στην παρακάτω εικόνα. Αυτό θα σδημιουργήσει μια σύνδεση μεταξύ του button peripheral και του microblaze processor συνδέοντάς το στο bus του επεξεργαστη. Στο Adress του System Assembly View να γίνει κλικ στο Generate Addresses button.

57 Στο Buss Interfaces tab να γίνει δεξί κλικ στο button peripheral και μετά Configure IP. Στο μενού που ανοίγει βάλτε τις επιλογές που φαίνονται στην παρακάτω εικόνα και μετά ΟΚ.

58 Στο Ports tab κάνοντας "+" στο button βλέπετε τις διαθέσιμες θύρες του περιφερειακού οι οποίες αρχικά δεν είναι συνδεδεμένες. Επιλέξτε το στο dropdown μενού το "Make External" ώστε να μπορούν οι θύρες να επικοινωνούν με το εξωτερικό περιβάλλον. Στη συνέχει πρέπει να ενώσουμε τις εξωτερικές GPIO θυρε που φτιάχτηκαν με κάποιο από τα περιφερειακά στοιχεία που υπάρχουν πάνω στην πλακέτα του FPGA. Ακολουθούμε την λογική του ucf αρχείου Το αρχείο αυτό μπορούμε να το βρούμε μέσω Project tab στο Platform υποπαράθυρο. Στο ucf αρχείο πρέπει να αναθέσουμε στο εξωτερικό σήμα για το button όπως το ορίσαμε, μια ακίδα του FPGA που να πηγαίνει στο press button της πλακέτας. Ποιο θα είναι το constrain που πρέπει να βάλουμε για να πετύχουμε κάτι τέτοιο Η Διαδικασία ολοκληρώνεται με την δημιουργία του bit αρχείου του υλικού του συστήματος που χρησιμοποιεί τον Microblaze. Πλέον, μπορούμε να περάσουμε το σύστημα αυτό στο Xilinx Software Development Kit και να γράψουμε κατάλληλο πρόγραμμα σε C πάνω στο ενσωματωμένο σύστημα με Microblaze. Επιλέγουμε Hardware-> Generate Bitstream για να φτιαχτεί το bit αρχείο που θα κατέβει στο FPGA. Για να μεταβούμε στο Software Development Kit απευθείας από το XPS μπορούμε να πάμε στο Project-> Export Hardware Design to SDK.

Εισαγωγή στη σχεδιαστική ροή της Xilinx

Εισαγωγή στη σχεδιαστική ροή της Xilinx Πανεπιστήμιο Κρήτης, Τμήμα Επιστήμης Υπολογιστών HY220 Εργαστήριο Ψηφιακών Κυκλωμάτων Χειμερινό Εξάμηνο 2014-2015 Εισαγωγή στη σχεδιαστική ροή της Xilinx ISE Design Suite 14.7 Στόχοι.. 1. Δημιουργία project

Διαβάστε περισσότερα

Οδηγίες εγκατάστασης και χρήσης του Quartus

Οδηγίες εγκατάστασης και χρήσης του Quartus Εγκατάσταση του Quartus Οδηγίες εγκατάστασης και χρήσης του Quartus Δημήτρης Μαγγίρας, Γιώργος Δημητρακόπουλος 1. Κατεβάζουμε την έκδοση 13.0SP1 από εδώ ακολουθώντας τις οδηγίες που φαίνονται στην εικόνα.

Διαβάστε περισσότερα

Εισαγωγή στη Verilog με το ISE

Εισαγωγή στη Verilog με το ISE Εισαγωγή στη Verilog με το ISE Πατάμε new project Δίνουμε όνομα και κατάλογο όπου θα αποθηκευτεί το project. Next όπου επιλέγουμε chip και preferred language βάζουμε Verilog Next και στο Create new source

Διαβάστε περισσότερα

Structural VHDL. Structural VHDL

Structural VHDL. Structural VHDL Structural VHDL Παράδειγμα Multiplexer Component Component specification Port map command Unconnected outputs Unconnected inputs Generic map command Generate command Configuration Παράδειγμα 4-bit Adder

Διαβάστε περισσότερα

ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων

ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων Εισαγωγή στη VHDL Υλοποίηση στο Quartus Διδάσκων: Γιώργος Ζάγγουλος Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Ατζέντα 1. Στόχοι 3

Διαβάστε περισσότερα

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Μηχανές Πεπερασμένων Καταστάσεων

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Μηχανές Πεπερασμένων Καταστάσεων «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Μηχανές Πεπερασμένων Καταστάσεων Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής ΤΕ

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 13 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Εισαγωγή στη VHDL Υλοποίηση στο Quartus

Εισαγωγή στη VHDL Υλοποίηση στο Quartus ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων Εισαγωγή στη VHDL Υλοποίηση στο Quartus Διδάσκοντες: Δρ. Γιώργος Ζάγγουλος και Δρ. Παναγιώτα Μ. Δημοσθένους Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών

Διαβάστε περισσότερα

Εργαστήριο Αρχιτεκτονικής Υπολογιστών Ι. Εισαγωγή στη VHDL

Εργαστήριο Αρχιτεκτονικής Υπολογιστών Ι. Εισαγωγή στη VHDL Εργαστήριο Αρχιτεκτονικής Υπολογιστών Ι Εισαγωγή στη VHDL Εισαγωγή Very High Speed Integrated Circuits Hardware Description Language ιαφορές από γλώσσες προγραμματισμού: παράλληλη εκτέλεση εντολών προσδιορισμός

Διαβάστε περισσότερα

Εργαστηριακή Άσκηση 4: Ιεραρχική σχεδίαση και προσχεδιασμένοι πυρήνες

Εργαστηριακή Άσκηση 4: Ιεραρχική σχεδίαση και προσχεδιασμένοι πυρήνες Εργαστηριακή Άσκηση 4: Ιεραρχική σχεδίαση και προσχεδιασμένοι πυρήνες Στην 4 η εργαστηριακή άσκηση θα ασχοληθούμε με την ιεραρχική σχεδίαση. Συγκεκριμένα θα μάθουμε να σχεδιάζουμε απλές οντότητες τις οποίες

Διαβάστε περισσότερα

Κυκλωμάτων» Χειμερινό εξάμηνο

Κυκλωμάτων» Χειμερινό εξάμηνο «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 VHDL, Χαρακτηριστικά και τρόποι περιγραφής Δρ. Παρασκευάς Κίτσος Επίκουρος Καθηγητής Τμήμα Μηχανικών Πληροφορικής ΤΕ http://diceslab.cied.teiwest.gr

Διαβάστε περισσότερα

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Ακολουθιακός Κώδικας

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Ακολουθιακός Κώδικας «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Ακολουθιακός Κώδικας Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής ΤΕ E-mail: pkitsos@teimes.gr

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 1η ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΣΧΕΔΙΑΣΗΣ QUARTUS II ΤΗΣ ALTERA

ΑΣΚΗΣΗ 1η ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΣΧΕΔΙΑΣΗΣ QUARTUS II ΤΗΣ ALTERA ΑΣΚΗΣΗ 1η ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΣΧΕΔΙΑΣΗΣ QUARTUS II ΤΗΣ ALTERA ΣΧΕΔΙΑΣΗ ΚΥΚΛΩΜΑΤΟΣ ΜΕ ΧΡΗΣΗ ΤΗΣ ΓΛΩΣΣΑΣ VHDL Η γλώσσα περιγραφής υλικού (harware description language) VHDL είναι μια γλώσσα με την οποία μπορεί

Διαβάστε περισσότερα

Πανεπιστήµιο Θεσσαλίας

Πανεπιστήµιο Θεσσαλίας Πανεπιστήµιο Θεσσαλίας Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών ΗΥ 130 : Ψηφιακή σχεδίαση Βόλος 2015 1 Εισαγωγή Το Multisim είναι ένα ολοκληρωμένο περιβάλλον προσομοίωσης της συμπεριφοράς

Διαβάστε περισσότερα

Προσοµοίωση Συστηµάτων µε VHDL. (Peter Ashenden, The Students Guide to VHDL)

Προσοµοίωση Συστηµάτων µε VHDL. (Peter Ashenden, The Students Guide to VHDL) Προσοµοίωση Συστηµάτων µε VHDL (Peter Ashenden, The Students Guide to VHDL) Κώδικας VHDL Περιβάλλον Σχεδίασης Αναλυτής ιαχειριστής Βιβλιοθήκης Σχεδίασης Προσοµοιωτής Αντίστροφος Αναλυτής Βιβλιοθήκη Σχεδίασης

Διαβάστε περισσότερα

VHDL Εισαγωγικές έννοιες

VHDL Εισαγωγικές έννοιες VHDL Εισαγωγικές έννοιες ρ. Κ. Καραφασούλης ckaraf@aegean.gr Σχεδίαση Αρχικά ψηφιακά κυκλώµατα µπορούν να σχεδιασθούν µε το κατάλληλο λογισµικό. Μεγαλύτερα κυκλώµατα µπορούν να σχεδιασθούν ιεραρχικά από

Διαβάστε περισσότερα

Lab 2 Manual - Introduction to Xilinx

Lab 2 Manual - Introduction to Xilinx Lab 2 Manual - Introduction to Xilinx Εισαγωγή Σε αυτό το εργαστήριο θα κάνουµε εισαγωγή στην γλωσσά προγραµµατισµού VHDL και εργαλείο Xilinx ISE. ISE είναι το εργαλείο που παρέχεται από Xilinx για να

Διαβάστε περισσότερα

Εργαστήριο Οργάνωσης Η/Υ. Δαδαλιάρης Αντώνιος

Εργαστήριο Οργάνωσης Η/Υ. Δαδαλιάρης Αντώνιος Εργαστήριο Οργάνωσης Η/Υ Δαδαλιάρης Αντώνιος dadaliaris@uth.gr Ρόλος των γλωσσών περιγραφής υλικού σε μια τυπική ροή σχεδίασης: Documentation Simulation Synthesis Οι γλώσσες περιγραφής υλικού μπορούν να

Διαβάστε περισσότερα

Κεφάλαιο 5 ο Προγραμματισμός Ολοκληρωμένων Κυκλωμάτων

Κεφάλαιο 5 ο Προγραμματισμός Ολοκληρωμένων Κυκλωμάτων Κεφάλαιο 5 ο Προγραμματισμός Ολοκληρωμένων Κυκλωμάτων Στο κεφάλαιο αυτό επικεντρωνόμαστε στον προγραμματισμό συσκευών FieldProgrammableGateArrays FPGA με απλά κυκλώματα. Οι FPGAs συνήθως τοποθετούνται

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 9η-10η ΑΡΙΘΜΗΤΙΚΗ-ΛΟΓΙΚΗ ΜΟΝΑΔΑ ΕΝΟΣ ΨΗΦΙΟΥ (1-BIT ALU)

ΑΣΚΗΣΗ 9η-10η ΑΡΙΘΜΗΤΙΚΗ-ΛΟΓΙΚΗ ΜΟΝΑΔΑ ΕΝΟΣ ΨΗΦΙΟΥ (1-BIT ALU) ΑΣΚΗΣΗ 9η-10η ΑΡΙΘΜΗΤΙΚΗ-ΛΟΓΙΚΗ ΜΟΝΑΔΑ ΕΝΟΣ ΨΗΦΙΟΥ (1-BIT ALU) ΘΕΩΡΙΑ Αντικείμενο της άσκησης είναι ο λογικός σχεδιασμός, η εξομοίωση και η παραγωγή του layout μιας αριθμητικής-λογικής μονάδας ενός ψηφίου

Διαβάστε περισσότερα

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Συναρτήσεις, Διαδικασίες και Δομές Ελέγχου Λειτουργίας Κυκλωμάτων (testbenches)

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Συναρτήσεις, Διαδικασίες και Δομές Ελέγχου Λειτουργίας Κυκλωμάτων (testbenches) «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Συναρτήσεις, Διαδικασίες και Δομές Ελέγχου Λειτουργίας Κυκλωμάτων (testbenches) Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος

Διαβάστε περισσότερα

1 Περίληψη Η εργασία έγινε στα πλαίσια του μαθήματος των Ψηφιακών Ηλεκτρονικών Συστημάτων με σκοπό αρχικά την εκμάθηση της γλώσσας VHDL (Very High Spe

1 Περίληψη Η εργασία έγινε στα πλαίσια του μαθήματος των Ψηφιακών Ηλεκτρονικών Συστημάτων με σκοπό αρχικά την εκμάθηση της γλώσσας VHDL (Very High Spe Εργασία στα Ψηφιακά Ηλεκτρονικά Συστήματα 2013-2014 Θέμα: Κατασκευή και Ανάλυση Μετρητή 4-bit και Πλήρους Αθροιστή σε περιβάλλον VHDL Ονοματεπώνυμο: Αλέξανδρος Γεώργιος Μουντογιαννάκης Σχολή: Τμήμα Επιστήμης

Διαβάστε περισσότερα

Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL. Γενικά χαρακτηριστικά, σύνταξη και τύποι. Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 1 -

Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL. Γενικά χαρακτηριστικά, σύνταξη και τύποι. Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 1 - Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL Γενικά χαρακτηριστικά, σύνταξη και τύποι Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 1 - Περίγραµµα διάλεξης Τι είναι η VHDL? Πλεονεκτήµατα της VHDL στη σχεδίαση κυκλωµάτων

Διαβάστε περισσότερα

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Συντρέχων Κώδικας

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Συντρέχων Κώδικας «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 216-217 Συντρέχων Κώδικας Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής ΤΕ E-mail: pkitsos@teimes.gr

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 2: Σχεδίαση και προσομοίωση κυκλωμάτων καταχωρητών και μετρητών

ΑΣΚΗΣΗ 2: Σχεδίαση και προσομοίωση κυκλωμάτων καταχωρητών και μετρητών ΑΣΚΗΣΗ 2: Σχεδίαση και προσομοίωση κυκλωμάτων καταχωρητών και μετρητών Θέμα Β.1: Απλός καταχωρητής 1 bit (D Flip-Flop) preset D D Q Q clk clear Σχήμα 2.1: D Flip-Flop με εισόδους preset και clear Με τη

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 4 η ΕΙΣΑΓΩΓΗ ΣΤΗ ΛΟΓΙΚΗ ΣΧΕΔΙΑΣΗ ΜΕ ΧΡΗΣΗ Η/Υ (QUARTUS II ALTERA)

ΑΣΚΗΣΗ 4 η ΕΙΣΑΓΩΓΗ ΣΤΗ ΛΟΓΙΚΗ ΣΧΕΔΙΑΣΗ ΜΕ ΧΡΗΣΗ Η/Υ (QUARTUS II ALTERA) ΑΣΚΗΣΗ 4 η ΕΙΣΑΓΩΓΗ ΣΤΗ ΛΟΓΙΚΗ ΣΧΕΔΙΑΣΗ ΜΕ ΧΡΗΣΗ Η/Υ (QUARTUS II ALTERA) ΣΧΕΔΙΑΣΗ ΚΥΚΛΩΜΑΤΟΣ ΜΕ ΧΡΗΣΗ ΣΧΗΜΑΤΙΚΟΥ ΔΙΑΓΡΑΜΜΑΤΟΣ Σκοπός της άσκησης είναι η εξοικείωση των σπουδαστών με το εργαλείο σχεδιασμού

Διαβάστε περισσότερα

Εργαστήριο Οργάνωσης Η/Υ. Δαδαλιάρης Αντώνιος

Εργαστήριο Οργάνωσης Η/Υ. Δαδαλιάρης Αντώνιος Εργαστήριο Οργάνωσης Η/Υ Δαδαλιάρης Αντώνιος dadaliaris@uth.gr Χρησιμοποιούμε τις μηχανές πεπερασμένων καταστάσεων (finite state machines FSMs) για την μοντελοποίηση της συμπεριφοράς ενός κυκλώματος, η

Διαβάστε περισσότερα

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Χειµερινό Εξάµηνο 2016 ΔΙΑΛΕΞΗ 15: Καταχωρητές (Registers)

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Χειµερινό Εξάµηνο 2016 ΔΙΑΛΕΞΗ 15: Καταχωρητές (Registers) ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Χειµερινό Εξάµηνο 2016 ΔΙΑΛΕΞΗ 15: Καταχωρητές (Registers) ΧΑΡΗΣ ΘΕΟΧΑΡΙΔΗΣ Επίκουρος Καθηγητής, ΗΜΜΥ (ttheocharides@ucy.ac.cy) Περίληψη q Καταχωρητές Παράλληλης

Διαβάστε περισσότερα

> μεγαλύτερο <= μικρότερο ή ίσο < μικρότερο == ισότητα >= μεγαλύτερο ή ίσο!= διαφορετικό

> μεγαλύτερο <= μικρότερο ή ίσο < μικρότερο == ισότητα >= μεγαλύτερο ή ίσο!= διαφορετικό 5 ο Εργαστήριο Λογικοί Τελεστές, Δομές Ελέγχου Λογικοί Τελεστές > μεγαλύτερο = μεγαλύτερο ή ίσο!= διαφορετικό Οι λογικοί τελεστές χρησιμοποιούνται για να ελέγξουμε

Διαβάστε περισσότερα

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Προηγμένα Συστήματα Πληροφορικής» Μεταπτυχιακή Διατριβή

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Προηγμένα Συστήματα Πληροφορικής» Μεταπτυχιακή Διατριβή Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Προηγμένα Συστήματα Πληροφορικής» Μεταπτυχιακή Διατριβή Δοκιμή ολοκληρωμένων κυκλωμάτων με χρήση του Inovys Personal Ocelot και

Διαβάστε περισσότερα

VHDL Introduction. Subtitle

VHDL Introduction. Subtitle VHDL Introduction Subtitle Getting Started VHDL means Very Hard Difficult Language That s a lie!!! τα αρχικά VHDL είναι συντομογραφία του VHSIC Hardware Description Language, ενώ το VHSIC αντιπροσωπεύει

Διαβάστε περισσότερα

Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ.

Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ. ΤΕΙ ΚΡΗΤΗΣ / ΠΑΡΑΡΤΗΜΑ ΧΑΝΙΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΗΣ Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ mode mode(0) ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Εµµανουήλ Καπαρού Επιβλέπων : ρ Μηχ Νικόλαος

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 9 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL

Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL Διδάσκoντες: Δρ. Γιώργος Ζάγγουλοςκαι Δρ. Παναγιώτα Δημοσθένους Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Σχεδίαση Ψηφιακών Συστημάτων. Ενότητα: ΚΑΤΑΧΩΡΗΤΕΣ - ΑΠΑΡΙΘΜΗΤΕΣ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Σχεδίαση Ψηφιακών Συστημάτων. Ενότητα: ΚΑΤΑΧΩΡΗΤΕΣ - ΑΠΑΡΙΘΜΗΤΕΣ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ᄃ Σχεδίαση Ψηφιακών Συστημάτων Ενότητα: ΚΑΤΑΧΩΡΗΤΕΣ - ΑΠΑΡΙΘΜΗΤΕΣ Κυριάκης - Μπιτζάρος Ευστάθιος Τμήμα Ηλεκτρονικών Μηχανικών

Διαβάστε περισσότερα

Epsilon Net PYLON Platform

Epsilon Net PYLON Platform Epsilon Net PYLON Platform Οδηγίες Εγκατάστασης Top 1 / 31 Περιεχόμενα 1 ΠΡΟΑΠΑΙΤΟΥΜΕΝΑ... 3 2 ΕΓΚΑΤΑΣΤΑΣΗ ΕΦΑΡΜΟΓΗΣ... 5 3 ΕΓΚΑΤΑΣΤΑΣΗ DEMO... 7 4 ΕΓΚΑΤΑΣΤΑΣΗ ΠΡΟΤΥΠΗΣ ΒΑΣΗΣ... 8 4.1 Φόρτωση πρότυπης

Διαβάστε περισσότερα

Δημιουργία μιας εφαρμογής Java με το NetBeans

Δημιουργία μιας εφαρμογής Java με το NetBeans Δημιουργία μιας εφαρμογής Java με το NetBeans Για να δημιουργήσετε μια εφαρμογή Java πρέπει να ακολουθήσετε τα εξής βήματα : Αρχικά πρέπει να δημιουργηθεί ένα project το οποίο θα περιέχει όλα τα αρχεία

Διαβάστε περισσότερα

ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων

ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL Διδάσκων: Γιώργος Ζάγγουλος Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Διαβάστε περισσότερα

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. Καταχωρητές 1

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. Καταχωρητές 1 ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων Καταχωρητές Διδάσκουσα: Μαρία Κ. Μιχαήλ Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Περίληψη Καταχωρητές Παράλληλης Φόρτωσης Καταχωρητές

Διαβάστε περισσότερα

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ DVR KTEC

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ DVR KTEC ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ DVR KTEC 1) Πατάμε δεξί κλικ Μενού 2) Όνομα Χρήστη βάζουμε «admin» 3) Κωδικός Πρόσβασης το αφήνουμε «κενό» 4) Πατάμε OK και μπαίνουμε στο Μενού Είσοδος στο μενού Στην πρώτη εκκίνηση μετά

Διαβάστε περισσότερα

Κέντρο υποστήριξης HP. Εισαγωγή. Τι χρειάζεται να γνωρίζετε. Λήψη και εγκατάσταση της λύσης Vista στα Windows 8. 1 of 5 1/7/2014 2:09 μμ

Κέντρο υποστήριξης HP. Εισαγωγή. Τι χρειάζεται να γνωρίζετε. Λήψη και εγκατάσταση της λύσης Vista στα Windows 8. 1 of 5 1/7/2014 2:09 μμ http://h2056wwwhp.com/portal/site/hpsc/template.page/public/psi... 1 of 5 1/7/2014 2:09 μμ Για το σπίτι Για την επιχείρηση Υποστήριξη Είσοδος Εγγραφή Βοήθεια ιστότοπου HP Color LaserJet 3600 Printer series

Διαβάστε περισσότερα

ΜΑΘΗΜΑ 10 Ο ΟΡΓΑΝΩΣΗ ΤΗΣ Β ΓΙΑ ΧΡΗΣΤΕΣ (NON-EXPERTS) Α. ΗΜΙΟΥΡΓΙΑ ΠΙΝΑΚΑ ΕΠΙΛΟΓΩΝ 1. TOOLS DATA UTILITIES SWITCHBOARD MANAGER YES

ΜΑΘΗΜΑ 10 Ο ΟΡΓΑΝΩΣΗ ΤΗΣ Β ΓΙΑ ΧΡΗΣΤΕΣ (NON-EXPERTS) Α. ΗΜΙΟΥΡΓΙΑ ΠΙΝΑΚΑ ΕΠΙΛΟΓΩΝ 1. TOOLS DATA UTILITIES SWITCHBOARD MANAGER YES ΜΑΘΗΜΑ 10 Ο ΟΡΓΑΝΩΣΗ ΤΗΣ Β ΓΙΑ ΧΡΗΣΤΕΣ (NON-EXPERTS) Α. ΗΜΙΟΥΡΓΙΑ ΠΙΝΑΚΑ ΕΠΙΛΟΓΩΝ 1. TOOLS DATA UTILITIES SWITCHBOARD MANAGER YES 2. ΠΑΤΗΣΤΕ EDIT ΑΛΛΑΞΤΕ ΤΟ ΟΝΟΜΑ COMPANY CLOSE 3. ΠΑΤΗΣΤΕ NEW (CREATE NEW)

Διαβάστε περισσότερα

Αρχιτεκτονικές Δικτύων & Πρωτόκολλα Ι

Αρχιτεκτονικές Δικτύων & Πρωτόκολλα Ι Αρχιτεκτονικές Δικτύων & Πρωτόκολλα Ι Ενότητα : Εισαγωγή στο εργαλείο προσομοίωσης δικτύων Riverbed Modeler - Προσομοίωση δικτύου Ethernet. Όνομα Καθηγητή : Δημήτριος Λυμπερόπουλος, Σπύρος Δενάζης Τμήμα

Διαβάστε περισσότερα

Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL

Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL Διδάσκoντες: Δρ. Αγαθοκλής Παπαδόπουλος και Δρ. Γιώργος Ζάγγουλος Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων

Διαβάστε περισσότερα

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων Χειμερινό Εξάμηνο 2018-2019 Ροή Σχεδίασης Κυκλωμάτων και Εργαλεία CAD ΗΥ220 - Βασίλης Παπαευσταθίου 1 Transistor: Δομική μονάδα κυκλωμάτων Τα ολοκληρωμένα κυκλώματα

Διαβάστε περισσότερα

Περίληψη. ΗΜΥ-210: Λογικός Σχεδιασµός Εαρινό Εξάµηνο Παράδειγµα: Καταχωρητής 2-bit. Καταχωρητής 4-bit. Μνήµη Καταχωρητών

Περίληψη. ΗΜΥ-210: Λογικός Σχεδιασµός Εαρινό Εξάµηνο Παράδειγµα: Καταχωρητής 2-bit. Καταχωρητής 4-bit. Μνήµη Καταχωρητών ΗΜΥ-210: Λογικός Σχεδιασµός Εαρινό Κεφάλαιο 7 i: Καταχωρητές Περίληψη Καταχωρητές Παράλληλης Φόρτωσης Καταχωρητές Ολίσθησης Σειριακή Φόρτωση Σειριακή Ολίσθηση Καταχωρητές Ολίσθησης Παράλληλης Φόρτωσης

Διαβάστε περισσότερα

TeleCost Hotel για Panasonic TDA

TeleCost Hotel για Panasonic TDA TeleCost Hotel για Panasonic TDA 1. Οδηγίες Εγκατάστασης του Λογισμικού του Συστήματος Telecost Hotel Γενικά Για την εγκατάσταση του Λογισμικού του Συστήματος TeleCost HL θα πρέπει να ακολουθηθούν συνοπτικά

Διαβάστε περισσότερα

Περιγραφή Κυκλωμάτων με χρήση της VHDL. Δομική περιγραφή και περιγραφή Μηχανών Πεπερασμένων Καταστάσεων

Περιγραφή Κυκλωμάτων με χρήση της VHDL. Δομική περιγραφή και περιγραφή Μηχανών Πεπερασμένων Καταστάσεων Περιγραφή Κυκλωμάτων με χρήση της VHDL Δομική περιγραφή και περιγραφή Μηχανών Πεπερασμένων Καταστάσεων Οργάνωση Παρουσίασης Περιγραφή Δομής σε VHDL (Structural Description) Μηχανές Πεπερασμένων Καταστάσεων

Διαβάστε περισσότερα

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων Χειμερινό Εξάμηνο 2017-2018 Ροή Σχεδίασης Κυκλωμάτων και Εργαλεία CAD ΗΥ220 - Γιώργος Καλοκαιρινός & Βασίλης Παπαευσταθίου 1 Transistor: Δομική μονάδα κυκλωμάτων Τα

Διαβάστε περισσότερα

26-Nov-09. ΗΜΥ 210: Λογικός Σχεδιασμός, Χειμερινό Εξάμηνο Καταχωρητές 1. Διδάσκουσα: Μαρία Κ. Μιχαήλ

26-Nov-09. ΗΜΥ 210: Λογικός Σχεδιασμός, Χειμερινό Εξάμηνο Καταχωρητές 1. Διδάσκουσα: Μαρία Κ. Μιχαήλ ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων Χειμερινό Εξάμηνο 2009 Καταχωρητές Διδάσκουσα: Μαρία Κ. Μιχαήλ Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Περίληψη Καταχωρητές Παράλληλης

Διαβάστε περισσότερα

ΠΑΡΑΡΤΗΜΑ Β. Verification

ΠΑΡΑΡΤΗΜΑ Β. Verification ΠΑΡΑΡΤΗΜΑ Β Ροή Σχεδίασης και VHDL Ροή Σχεδίασης Πριν περάσουµε σε περιγραφή της γλώσσας VHDL είναι χρήσιµο να δούµε το περιβάλλον και τη ροή της σχεδίασης. Τα βήµατα µιας σχεδίασης βασισµένης σε VHDL

Διαβάστε περισσότερα

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων Τµήµα Επιστήµης Υπολογιστών Χειµερινό Εξάµηνο

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων Τµήµα Επιστήµης Υπολογιστών Χειµερινό Εξάµηνο ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων Τµήµα Επιστήµης Υπολογιστών Χειµερινό Εξάµηνο 2006-2007 Εκφώνηση Εργαστηρίου Στο εργαστήριο του µαθήµατος σας ζητείται να σχεδιάσετε, να υλοποιήσετε και να επαληθεύσετε

Διαβάστε περισσότερα

Εργαστήριο Οργάνωσης Η/Υ. Δαδαλιάρης Αντώνιος

Εργαστήριο Οργάνωσης Η/Υ. Δαδαλιάρης Αντώνιος Εργαστήριο Οργάνωσης Η/Υ Δαδαλιάρης Αντώνιος dadaliaris@uth.gr Συνδυαστικό Κυκλωμα: Το κύκλωμα του οποίου οι έξοδοι εξαρτώνται αποκλειστικά από τις τρέχουσες εισόδους του. Ακολουθιακό Κύκλωμα: Το κύκλωμα

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 8 η -9 η ΣΧΕΔΙΑΣΗ ΑΡΙΘΜΗΤΙΚΗΣ ΛΟΓΙΚΗΣ ΜΟΝΑΔΑΣ ΤΕΣΣΑΡΩΝ ΔΥΑΔΙΚΩΝ ΨΗΦΙΩΝ

ΑΣΚΗΣΗ 8 η -9 η ΣΧΕΔΙΑΣΗ ΑΡΙΘΜΗΤΙΚΗΣ ΛΟΓΙΚΗΣ ΜΟΝΑΔΑΣ ΤΕΣΣΑΡΩΝ ΔΥΑΔΙΚΩΝ ΨΗΦΙΩΝ ΑΣΚΗΣΗ 8 η -9 η ΣΧΕΔΙΑΣΗ ΑΡΙΘΜΗΤΙΚΗΣ ΛΟΓΙΚΗΣ ΜΟΝΑΔΑΣ ΤΕΣΣΑΡΩΝ ΔΥΑΔΙΚΩΝ ΨΗΦΙΩΝ ΘΕΩΡΙΑ Αντικείμενο της άσκησης είναι ο λογικός σχεδιασμός, και η εξομοίωση μίας αριθμητικήςλογικής μονάδας τεσσάρων δυαδικών

Διαβάστε περισσότερα

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Προχωρημένα Θέματα Σχεδιασμού με VHDL

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Προχωρημένα Θέματα Σχεδιασμού με VHDL «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Προχωρημένα Θέματα Σχεδιασμού με VHDL Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Οδηγίες Χρήσης της MySQL

Οδηγίες Χρήσης της MySQL ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΗΜΕΙΩΣΕΙΣ ΣΕ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Οδηγίες Χρήσης της MySQL Διδάσκων: Γιάννης Θεοδωρίδης Συντάκτης Κειμένου: Βαγγέλης Κατσικάρος Νοέμβριος 2007 1 Περιεχόμενα Εισαγωγή...2

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 2 η N-MOS ΚΑΙ P-MOS TRANSISTOR ΩΣ ΔΙΑΚΟΠΤΗΣ

ΑΣΚΗΣΗ 2 η N-MOS ΚΑΙ P-MOS TRANSISTOR ΩΣ ΔΙΑΚΟΠΤΗΣ ΑΣΚΗΣΗ 2 η N-MOS ΚΑΙ P-MOS TRANSISTOR ΩΣ ΔΙΑΚΟΠΤΗΣ ΘΕΩΡΙΑ 1. Εργαλεία εξομοίωσης, SPICE, αρχεία περιγραφής κυκλωμάτων (netlist) (Παρ. 3.4, σελ 152-155) 2. To transistor ως διακόπτης, πύλη διέλευσης. (Παρ

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 12 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Οδηγίες για την εγκατάσταση του πακέτου Cygwin

Οδηγίες για την εγκατάσταση του πακέτου Cygwin Οδηγίες για την εγκατάσταση του πακέτου Cygwin Ακολουθήστε τις οδηγίες που περιγράφονται σε αυτό το file μόνο αν έχετε κάποιο laptop ή desktop PC που τρέχουν κάποιο version των Microsoft Windows. 1) Copy

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ GRS-1

ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ GRS-1 ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ GRS-1 Σελίδα 1 ΓΕΝΙΚΑ - ΕΙΣΑΓΩΓΗ Το GRS-1 της TOPCON διαθέτει λειτουργικό σύστημα Windows CE NET 6.1 παρέχοντας την δυνατότητα εγκατάστασης οποιασδήποτε εφαρμογής και λογισμικού έκδοσης

Διαβάστε περισσότερα

Πανεπιστήμιο Θεσσαλίας- Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών ΗΥ430- Εργαστήριο Ψηφιακών Κυκλωμάτων

Πανεπιστήμιο Θεσσαλίας- Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών ΗΥ430- Εργαστήριο Ψηφιακών Κυκλωμάτων Πανεπιστήμιο Θεσσαλίας- Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών ΗΥ430- Εργαστήριο Ψηφιακών Κυκλωμάτων Χειμερινό Εξάμηνο- Ακαδημαϊκό Ετος 2018-2019 Εργαστηριακή Εργασία 4η- Υλοποίηση Οδηγού

Διαβάστε περισσότερα

ΟΔΗΓΙΕΣ ΣΥΝΔΕΣΗΣ ΣΤΟ ΔΙΚΤΥΟ ΤΟΥ ΟΠΑ ΑΠΟ ΕΞΩΤΕΡΙΚΟ ΠΑΡΟΧΟ (ΥΠΗΡΕΣΙΑ VPN) Windows 8, Windows 7, Windows Vista, Windows XP

ΟΔΗΓΙΕΣ ΣΥΝΔΕΣΗΣ ΣΤΟ ΔΙΚΤΥΟ ΤΟΥ ΟΠΑ ΑΠΟ ΕΞΩΤΕΡΙΚΟ ΠΑΡΟΧΟ (ΥΠΗΡΕΣΙΑ VPN) Windows 8, Windows 7, Windows Vista, Windows XP ΟΔΗΓΙΕΣ ΣΥΝΔΕΣΗΣ ΣΤΟ ΔΙΚΤΥΟ ΤΟΥ ΟΠΑ ΑΠΟ ΕΞΩΤΕΡΙΚΟ ΠΑΡΟΧΟ (ΥΠΗΡΕΣΙΑ VPN) Windows 8, Windows 7, Windows Vista, Windows XP Σε περίπτωση κατά την οποία ο υπολογιστής που χρησιμοποιείτε συνδέεται στο Internet

Διαβάστε περισσότερα

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Πακέτα και Συστατικά Στοιχεία (Υποκυκλώματα)

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Πακέτα και Συστατικά Στοιχεία (Υποκυκλώματα) «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Πακέτα και Συστατικά Στοιχεία (Υποκυκλώματα) Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Σχεδίαση Ψηφιακών Συστημάτων

Σχεδίαση Ψηφιακών Συστημάτων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Σχεδίαση Ψηφιακών Συστημάτων Ενότητα 2: Βασικές Μονάδες Κυριάκης - Μπιτζάρος Ευστάθιος Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε. Άδειες

Διαβάστε περισσότερα

Εφαρμογές Ψηφιακών Ηλεκτρονικών

Εφαρμογές Ψηφιακών Ηλεκτρονικών ΑΣΚΗΣΗ 1 Εφαρμογές Ψηφιακών Ηλεκτρονικών Εργαστήριο Ηλεκτρονικής Τηλεπικοινωνιών και Εφαρμογών, Τμήμα Φυσικής, Πανεπιστήμιο Ιωαννίνων Βασίλης Χριστοφιλάκης 1 ΑΣΚΗΣΗ 1: ΕΙΣΑΓΩΓΗ ΣΤ Η ΨΗΦΙΑΚΗ ΣΧΕΔΙΑΣΗ ΜΕΣΩ

Διαβάστε περισσότερα

Επιβεβαίωση ορθής λειτουργίας απλών ψηφιακών κυκλωμάτων

Επιβεβαίωση ορθής λειτουργίας απλών ψηφιακών κυκλωμάτων Επιβεβαίωση ορθής λειτουργίας απλών ψηφιακών κυκλωμάτων Δημήτρης Κωνσταντίνου, Γιώργος Δημητρακόπουλος Εφόσον έχουμε περιγράψει το κύκλωμά μας σε System Verilog θα πρέπει να βεβαιωθούμε πως λειτουργεί

Διαβάστε περισσότερα

Εισαγωγή στη Γλώσσα VHDL

Εισαγωγή στη Γλώσσα VHDL Εισαγωγή στη Γλώσσα VHDL Παράδειγμα and3 Entity και Architecture Entity Entity - Παραδείγματα Architecture VHDL simulation παραδείγματος and3 Παράδειγμα NAND VHDL simulation παραδείγματος nand Boolean

Διαβάστε περισσότερα

Ολοκληρωμένα Κυκλώματα - Φθινόπωρο 2014 Γ. Δημητρακόπουλος. Εργαστηριακή άσκηση 2

Ολοκληρωμένα Κυκλώματα - Φθινόπωρο 2014 Γ. Δημητρακόπουλος. Εργαστηριακή άσκηση 2 Ολοκληρωμένα Κυκλώματα - Φθινόπωρο 2014 Γ. Δημητρακόπουλος Εργαστηριακή άσκηση 2 Σκοπός αυτής της εργαστηριακής άσκησης είναι να σας θυμίσει (ή να σας δείξει ανάλογα με το βαθμό εξοικίωσης σας) τον τρόπο

Διαβάστε περισσότερα

ΗΥ220: Εργαστήριο σχεδίασης ψηφιακών κυκλωμάτων Χριστόφορος Κάχρης

ΗΥ220: Εργαστήριο σχεδίασης ψηφιακών κυκλωμάτων Χριστόφορος Κάχρης Πανεπιστήμιο Κρήτης Τμήμα Επιστήμης Υπολογιστών ΗΥ220: Εργαστήριο σχεδίασης ψηφιακών κυκλωμάτων Χριστόφορος Κάχρης 4-11-2009 Πρόοδος Θέμα 1 ο (25%): 1. Βρείτε την μεγίστη συχνότητα λειτουργίας του παρακάτω

Διαβάστε περισσότερα

ηµιουργία Αρχείου Πρότζεκτ (.qpf)

ηµιουργία Αρχείου Πρότζεκτ (.qpf) Εργαστήριο Ψηφιακών Συστηµάτων ΗΜΥ211 Εισαγωγή στο λογισµικό Quartus II v13 web edition 1 ηµιουργία Αρχείου Πρότζεκτ (.qpf) Με την εκκίνηση της εφαρµογής Quartus II v13.0 SP1 web edition, επιλέξτε File

Διαβάστε περισσότερα

Προσομείωση ασύρματων δικτύων με τη χρήση του OPNET Modeler

Προσομείωση ασύρματων δικτύων με τη χρήση του OPNET Modeler Προσομείωση ασύρματων δικτύων με τη χρήση του OPNET Modeler ΣΚΟΠΟΙ Σε αυτήν την άσκηση: Θα φτιάξουμε μικρά ασύρματα δίκτυα Θα επιλέξουμε ποια δεδομένα θα συλλέξουμε Θα τρέξουμε την προσομείωση Θα αναλύσουμε

Διαβάστε περισσότερα

COSMOTE E220 USB Modem (3G HSDPA 3.6Mbps) Εγχειρίδιο Χρήσης

COSMOTE E220 USB Modem (3G HSDPA 3.6Mbps) Εγχειρίδιο Χρήσης COSMOTE E220 USB Modem (3G HSDPA 3.6Mbps) Εγχειρίδιο Χρήσης i Περιεχόµενα Προετοιµασία Ε220...1 Οδηγός Εγκατάστασης...1 Εισαγωγή στην Εφαρµογή Ε220 Manager...3 Υπηρεσίες Internet...4 SMS...4 Κατάλογος

Διαβάστε περισσότερα

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. VHDL για Ακολουθιακά Κυκλώματα 1

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. VHDL για Ακολουθιακά Κυκλώματα 1 ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων VHDL για Σχεδιασμό Ακολουθιακών Κυκλωμάτων Διδάσκουσα: Μαρία Κ. Μιχαήλ Περίληψη VHDL Processes Εντολές If-Then Then-Else και CASE Περιγραφή Flip-Flop Flop με VHDL

Διαβάστε περισσότερα

Εγχειρίδιο Χρήσης V3.0

Εγχειρίδιο Χρήσης V3.0 ΕΦΑΡΜΟΓΗ ΔΙΑΧΕΙΡΙΣΗΣ ΠΕΡΙΕΧΟΜΕΝΟΥ Εγχειρίδιο Χρήσης V3.0 Πίνακας Περιεχομένων: 1. Σύνδεση με την συσκευή 3 1.1 Σύνδεση μέσω Wi-Fi Direct.... 3 1.2 Ενσύρματη σύνδεση (LAN) 3 1.3 Ασύρματη σύνδεση (WiFi).

Διαβάστε περισσότερα

Πρόλογος Συμβολή σε ορισμένα σημεία του περιεχομένου είχαν οι διδάκτορες Γ. Οικονομάκος και Ισ. Σίδερης καθώς και οι μεταπτυχιακοί σπουδαστές Ι. Σιφναίος, Ε. Χανιωτάκης και Κ. Ασφής τους οποίους ευχαριστώ

Διαβάστε περισσότερα

8. ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ ΔΕΔΟΜΕΝΩΝ

8. ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ ΔΕΔΟΜΕΝΩΝ 8. ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ ΔΕΔΟΜΕΝΩΝ Στόχος του εργαστηρίου αυτού είναι να δείξει πώς τα εργαστήρια με τα δεδομένα της ICAP μπορούν να υλοποιηθούν χωρίς τη χρήση SQL Server, χρησιμοποιώντας μόνον Excel και Rapid

Διαβάστε περισσότερα

KiCad Create new project Eeschema Electronic schematic editor Eeschema Page settings grid Place component

KiCad Create new project Eeschema Electronic schematic editor Eeschema Page settings grid Place component KiCad Από το εικονίδιο του KiCad ανοίγουμε το πρόγραμμα. Στο παράθυρο του προγράμματος εμφανίζεται το δέντρο της εργασίας αριστερά, ο editor της εργασίας δεξιά, ένα μενού εργασιών και εικονίδια στο επάνω

Διαβάστε περισσότερα

Αντιγραφή με χρήση της γυάλινης επιφάνειας σάρωσης

Αντιγραφή με χρήση της γυάλινης επιφάνειας σάρωσης Γρήγορη αναφορά Αντιγραφή Δημιουργία αντιγράφων Γρήγορη δημιουργία αντιγράφου 3 Στον πίνακα ελέγχου του εκτυπωτή πατήστε το κουμπί αντίγραφο 4 Εάν τοποθετήσατε το έγγραφο στη γυάλινη επιφάνεια σάρωσης

Διαβάστε περισσότερα

Εγχειρίδιο Χρήσης Ενημέρωσης Λογισμικού Bluetooth Windows 7

Εγχειρίδιο Χρήσης Ενημέρωσης Λογισμικού Bluetooth Windows 7 Εγχειρίδιο Χρήσης Ενημέρωσης Λογισμικού Bluetooth Windows 7 Ισχύει για προϊόντα από το 2012 και μετά CDE-13xBT & CDE-W235BT & CDA-137BTi Αυτό το εγχειρίδιο περιγράφει τα βήματα που απαιτούνται για την

Διαβάστε περισσότερα

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Χειµερινό Εξάµηνο 2016 Συµπληρωµατική ΔΙΑΛΕΞΗ 14: Περιγραφή Ακολουθιακών Κυκλωµάτων στη VHDL

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Χειµερινό Εξάµηνο 2016 Συµπληρωµατική ΔΙΑΛΕΞΗ 14: Περιγραφή Ακολουθιακών Κυκλωµάτων στη VHDL ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Χειµερινό Εξάµηνο 2016 Συµπληρωµατική ΔΙΑΛΕΞΗ 14: Περιγραφή Ακολουθιακών Κυκλωµάτων στη VHDL ΧΑΡΗΣ ΘΕΟΧΑΡΙΔΗΣ Επίκουρος Καθηγητής, ΗΜΜΥ (ttheocharides@ucy.ac.cy)

Διαβάστε περισσότερα

Τμήμα Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών. Βαρτζιώτης Φώτης. ΠΡΟΧΩΡΗΜΕΝΑ ΘΕΜΑΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΔΙΚΤΥΩΝ ] Εργαστήριο 2

Τμήμα Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών. Βαρτζιώτης Φώτης. ΠΡΟΧΩΡΗΜΕΝΑ ΘΕΜΑΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΔΙΚΤΥΩΝ ] Εργαστήριο 2 2012 Τμήμα Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών Βαρτζιώτης Φώτης [ ΠΡΟΧΩΡΗΜΕΝΑ ΘΕΜΑΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΔΙΚΤΥΩΝ ] Εργαστήριο 2 Περιεχόμενα Εργαστήριο 2: LAN διασυνδεδεμένα με Διακόπτη (Switch)...

Διαβάστε περισσότερα

Παράδειγμα αντιστοίχισης κυκλώματος σε FPGA

Παράδειγμα αντιστοίχισης κυκλώματος σε FPGA Πανεπιστήμιο Κρήτης Τμήμα Επιστήμης Υπολογιστών Παράδειγμα αντιστοίχισης κυκλώματος σε FPGA Γιώργος Δημητρακόπουλος με τη βοήθεια του Βασίλη Παπαευσταθίου Στο παράδειγμα αυτό χρησιμοποιώντας μια πολύ μικρή

Διαβάστε περισσότερα

Σύντοµο Εγχειρίδιο Χρήσης. του Λογισµικού Στατιστικής Επεξεργασίας. SPSS for Windows v. 8.0

Σύντοµο Εγχειρίδιο Χρήσης. του Λογισµικού Στατιστικής Επεξεργασίας. SPSS for Windows v. 8.0 Εθνικό & Καποδιστριακό Πανεπιστήµιο Αθηνών Τµήµα Μεθοδολογίας, Ιστορίας & Θεωρίας της Επιστήµης ιαπανεπιστηµιακό Πρόγραµµα Μεταπτυχιακών Σπουδών «Βασική και Εφαρµοσµένη Γνωσιακή Επιστήµη» Σύντοµο Εγχειρίδιο

Διαβάστε περισσότερα

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ "PROΩΘΗΣΗ" PROώθηση

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ PROΩΘΗΣΗ PROώθηση ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ "PROΩΘΗΣΗ" PROώθηση Περιεχόμενα Εγκατάσταση ΠΕΡΙΕΧΟΜΕΝΑ ΣΥΣΚΕΥΑΣΙΑΣ... 3 ΣΥΝΔΕΣΗ ΕΞΟΠΛΙΣΜΟΥ... 3 ΡΥΘΜΙΣΗ Wi-Fi... 4 ΕΙΣΟΔΟΣ ΧΡΗΣΤΗ... 6 ΠΡΟΣΘΗΚΗ ΝΕΑΣ ΣΥΣΚΕΥΗΣ... 6 ΚΑΤΑΣΤΑΣΗ ΣΥΣΚΕΥΗΣ...

Διαβάστε περισσότερα

Εγχειρίδιο Χρήσης Ενημέρωσης Λογισμικού Bluetooth Windows 7 IVE-W530BT

Εγχειρίδιο Χρήσης Ενημέρωσης Λογισμικού Bluetooth Windows 7 IVE-W530BT Εγχειρίδιο Χρήσης Ενημέρωσης Λογισμικού Bluetooth Windows 7 IVE-W530BT 1 Εισαγωγή Αυτό το εγχειρίδιο περιγράφει τα βήματα που απαιτούνται για την ενημέρωση του λογισμικού Bluetooth Κεντρικών Μονάδων. Διαβάστε

Διαβάστε περισσότερα

VHDL για Σχεδιασµό Ακολουθιακών Κυκλωµάτων

VHDL για Σχεδιασµό Ακολουθιακών Κυκλωµάτων VHDL για Σχεδιασµό Ακολουθιακών Κυκλωµάτων Διδάσκουσα: Μαρία Κ. Μιχαήλ Πανεπιστήµιο Κύπρου Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών n VHDL Processes Περίληψη n Εντολές If-Then-Else και CASE

Διαβάστε περισσότερα

ΗΥ220: Εργαστήριο Ψηφιακών Κυκλωµάτων Τµήµα Επιστήµης Υπολογιστών Πανεπιστήµιο Κρήτης Χειµερινό Εξάµηνο

ΗΥ220: Εργαστήριο Ψηφιακών Κυκλωµάτων Τµήµα Επιστήµης Υπολογιστών Πανεπιστήµιο Κρήτης Χειµερινό Εξάµηνο ΗΥ220: Εργαστήριο Ψηφιακών Κυκλωµάτων Τµήµα Επιστήµης Υπολογιστών Πανεπιστήµιο Κρήτης Χειµερινό Εξάµηνο 2017 2018 Εργαστήριο 2 (2 εβδοµάδες) Εβδοµάδα 27/11 έως 01/12 (αναλόγως το εργαστηριακό τµήµα που

Διαβάστε περισσότερα

Οδηγός Σύνδεσης στο Ασύρματο Δίκτυο cs-wifi του Τμήματος Πληροφορικής του Πανεπιστημίου Κύπρου για Windows 7

Οδηγός Σύνδεσης στο Ασύρματο Δίκτυο cs-wifi του Τμήματος Πληροφορικής του Πανεπιστημίου Κύπρου για Windows 7 16 Νοεμβρίου 2012 Οδηγός Σύνδεσης στο Ασύρματο Δίκτυο cs-wifi του Τμήματος Πληροφορικής του Πανεπιστημίου Κύπρου για Windows 7 Πανεπιστήμιο Κύπρου, Τμήμα Πληροφορικής Σάββας Νικηφόρου Version Number Πίνακας

Διαβάστε περισσότερα

Οδηγίες Χρήσης της MySQL

Οδηγίες Χρήσης της MySQL ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΗΜΕΙΩΣΕΙΣ ΣΕ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Οδηγίες Χρήσης της MySQL Διδάσκων: Γιάννης Θεοδωρίδης Συντάκτης Κειμένου: Βαγγέλης Κατσικάρος Απρίλιος 2007 1 Περιεχόμενα Εισαγωγή...2

Διαβάστε περισσότερα

Εισαγωγή στο περιβάλλον Code::Blocks

Εισαγωγή στο περιβάλλον Code::Blocks Εισαγωγή στο περιβάλλον Code::Blocks Στο παρόν εγχειρίδιο παρουσιάζεται η διαδικασία ανάπτυξης, μεταγλώττισης και εκτέλεσης ενός προγράμματος C στο περιβάλλον του Code::Blocks. Η διαδικασία αυτή παρουσιάζεται

Διαβάστε περισσότερα

Οδηγός Σύνδεσης στο Ασύρματο Δίκτυο cs-wifi του Τμήματος Πληροφορικής του Πανεπιστημίου Κύπρου για Windows 7, CentOS 6, Mac OS, IOS, και Android

Οδηγός Σύνδεσης στο Ασύρματο Δίκτυο cs-wifi του Τμήματος Πληροφορικής του Πανεπιστημίου Κύπρου για Windows 7, CentOS 6, Mac OS, IOS, και Android 4 Δεκεμβρίου 2012 Οδηγός Σύνδεσης στο Ασύρματο Δίκτυο cs-wifi του Τμήματος Πληροφορικής του Πανεπιστημίου Κύπρου για Windows 7, CentOS Πανεπιστήμιο Κύπρου, Τμήμα Πληροφορικής Σάββας Νικηφόρου Version 0.1

Διαβάστε περισσότερα

Windows 7 Windows Vista

Windows 7 Windows Vista ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΗΠΕΙΡΟΥ ΚΕΝΤΡΟ ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΩΝ Κωστακιοί Άρτας, ΑΡΤΑ 47100 - Tηλ.. 26810 50500 - Fax. 2681 76941 e-mail: noc@teiep.gr ΟΔΗΓΙΕΣ ΣΥΝΔΕΣΗΣ ΣΤΟ ΔΙΚΤΥΟ ΤΟΥ Τ.Ε.Ι. ΗΠΕΙΡΟΥ

Διαβάστε περισσότερα

ΗΜΥ 213 Εργαστήριο Οργάνωσης Η/Υ και Μικροεπεξεργαστών Εαρινό εξάμηνο Διδάσκων: Γιώργος Ζάγγουλος

ΗΜΥ 213 Εργαστήριο Οργάνωσης Η/Υ και Μικροεπεξεργαστών Εαρινό εξάμηνο Διδάσκων: Γιώργος Ζάγγουλος ΗΜΥ 213 Εργαστήριο Οργάνωσης Η/Υ και Μικροεπεξεργαστών Εαρινό εξάμηνο 2011-2012 Διδάσκων: Γιώργος Ζάγγουλος Βοήθημα για το Πρόγραμμα Modelsim-Altera και την χρησιμοποίηση του μέσα από το Quartus για εκτέλεση

Διαβάστε περισσότερα

SIMATIC MANAGER SIMATIC MANAGER

SIMATIC MANAGER SIMATIC MANAGER 1 Προγραμματισμός του PLC. 1. Γενικά Μια προσεκτική ματιά σε μια εγκατάσταση που θέλουμε να αυτοματοποιήσουμε, μας δείχνει ότι αυτή αποτελείται από επιμέρους τμήματα τα οποία είναι συνδεδεμένα μεταξύ τους

Διαβάστε περισσότερα

Κυριάκης - Μπιτζάρος Ευστάθιος Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.

Κυριάκης - Μπιτζάρος Ευστάθιος Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε. ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Ενότητα 3: Καταχωρητές - Απαριθμητές Κυριάκης - Μπιτζάρος Ευστάθιος Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Library, package και subprograms

Library, package και subprograms Library, package και subprograms Libraries Packages Subprograms Procedures Functions Overloading Αριθμητικά πακέτα Type conversion Shift operators Παράδειγμα Library - Package Ασκήσεις-Προβλήματα 12/8/2009

Διαβάστε περισσότερα

Σχεδιασμός Αποκωδικοποιητή και υλοποίηση του στο Logisim και στο Quartus. Εισαγωγή στο Logisim

Σχεδιασμός Αποκωδικοποιητή και υλοποίηση του στο Logisim και στο Quartus. Εισαγωγή στο Logisim ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων Σχεδιασμός Αποκωδικοποιητή και υλοποίηση του στο Logisim και στο Quartus. Εισαγωγή στο Logisim Διδάσκoντες: Δρ. Γιώργος Ζάγγουλος και Δρ. Παναγιώτα Μ. Δημοσθένους

Διαβάστε περισσότερα

ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων

ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων Λογισμικό Προσομοίωσης LogiSim καιχρήση KarnaughMaps Διδάσκοντες: Δρ. Αγαθοκλής Παπαδόπουλος & Δρ. Γιώργος Ζάγγουλος Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών

Διαβάστε περισσότερα

ΓΡΗΓΟΡΕΣ ΟΔΗΓΙΕΣ ΓΙΑ ΤΗΝ ΧΡΗΣΗ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ REINER PC set graphic

ΓΡΗΓΟΡΕΣ ΟΔΗΓΙΕΣ ΓΙΑ ΤΗΝ ΧΡΗΣΗ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ REINER PC set graphic Β.ΠΑΠΑΚΩΣΤΑ & ΣΙΑ ΟΕ ΕΙΣΑΓΩΓΕΣ ΕΜΠΟΡΙΟ ΕΚΤΥΠΩΤΩΝ ΕΤΙΚΕΤΩΝ & ΑΝΑΛΩΣΙΜΩΝ ΔΕΞΑΜΕΝΗΣ 30, ΜΕΤΑΜΟΡΦΩΣΗ ΑΤΤΙΚΗΣ, ΤΚ:14452 ΑΦΜ: 998587823, Δ.Ο.Υ. : ΝΕΑΣ ΙΩΝΙΑΣ ΤΗΛ: 2102844831 ΦΑΞ: 2102828703 www.sigma-hellas.gr,

Διαβάστε περισσότερα

server : Ο υπολογιστής του καθηγητή που θέλουμε να ελέγχει τους υπόλοιπους του εργαστηρίου client : Οι υπολογιστές των μαθητών

server : Ο υπολογιστής του καθηγητή που θέλουμε να ελέγχει τους υπόλοιπους του εργαστηρίου client : Οι υπολογιστές των μαθητών Εγκατάσταση italc Οδηγίες εγκατάστασης italcc σε τοπικό δίκτυο με Windows 7. Πιστεύω ότι η διαδικασία θα ισχύει και για windows 8 ή 10 ακόμα και για XP. Υπάρχουν οδηγίες και εδώ αλλά για περιβάλλον windows

Διαβάστε περισσότερα