Σελίδα 1 από 3 1 2 3 ΤελευταίαΤελευταία
Εμφάνιση αποτελεσμάτων : 1 έως 10 από 23

Θέμα: DIY Home Computer με DIY CPU σε VHDL (Cyclove IV FPGA). Lion system

  1. #1
    Μέλος Το avatar του χρήστη llion
    Όνομα
    ΛΕΩΝ
    Εγγραφή
    Oct 2010
    Περιοχή
    ΓΛΥΦΑΔΑ
    Μηνύματα
    41

    Προεπιλογή DIY Home Computer με DIY CPU σε VHDL (Cyclove IV FPGA). Lion system

    Άρχισα πέρισυ να πειραματίζομαι με FPGA και VHDL. (EP4CE6E22C8N Cyclone IV chip, Quartus II software)
    Αρχικά σχεδίασα μια 16-bit CPU την LION CPU.
    Ύστερα πάνω σε αυτή σχεδίασα ένα ολόκληρο home computer.
    Αρχικά έφτιαξα ένα μονόχρωμο Composite Video Controller και μια UART για σειριακές επικοινωνίες.
    Έγραψα ένα assembler σε C# για να μπορώ να προγραμματίζω τον επεξεργαστή μου.
    Έφτιαξα μερικές κλήσεις συστήματος στην rom και μια απλή εφαρμογή calculator.
    Μετά από μια περίοδο αδράνειας το ξανάπιασα φέτος και πρόσθεσα χρώμα και έξοδο σε VGA monitor.
    Πρόσθεσα εξωτερική μνήμη 32Κ.
    Επίσης έκανα port την Palo Alto Tiny Basic.
    Αυτή την στιγμή ασχολούμαι με αποθηκευτικό χώρο, δηλαδή έφτιαξα ένα spi interface για επικοινωνία με SD Cards και έχω καταφέρει να κάνω initialize την κάρτα και να διαβάζω ένα sector.
    Μένει να φτιάξω ένα απλό file system για τον υπολογιστή μου ή ακόμη καλύτερα να διαβάζω FAT απλά θέλει πολύ δουλειά.

    Πατήστε στην εικόνα για να τη δείτε σε μεγένθυνση Όνομα:  tb2.jpg Εμφανίσεις:  888 Μέγεθος:  137,3 KBΠατήστε στην εικόνα για να τη δείτε σε μεγένθυνση Όνομα:  Lionsys_ram.jpg Εμφανίσεις:  952 Μέγεθος:  136,9 KB

    Specifications of Lion DIY Home Computer

    CPU: 16-bit DIY CPU at 50Mhz
    8K rom 40K ram 8K video ram
    Rs-232 Communications
    1 channel Sound
    SPI interface for SD Card Storage


    Πληροφορίες για το project και τα source files μπορείται να βρείτε στην ιστοσελίδα μου
    users.sch.gr/tliontakis/index.php/my-projects

    51 Not allowed! Not allowed!

  2. 30 μέλη ευχαρίστησαν τον llion για αυτό το χρήσιμο μήνυμα:

    agis68 (24-03-17), AKHS (17-06-16), aktis (11-06-16), angel_grig (24-03-17), bchris (15-06-16), cdesp (16-06-16), CybEng (11-06-16), driverbulba (31-05-18), edgar (15-06-16), ezizu (15-06-16), finos (11-06-16), Fire Doger (11-06-16), G12 (01-08-18), GiwrgosTH (14-06-16), goulf (02-07-17), kioan (12-06-16), leosedf (11-06-16), Lord Vek (11-06-16), manolena (11-06-16), michaelcom (18-06-16), nestoras (30-11-18), nupogodi (11-06-16), Prithan (04-12-18), Sakan89 (26-06-16), SeAfasia (15-06-16), selectronic (25-03-17), street (13-06-16), tasos987 (12-06-16), TSAKALI (06-12-16), vasilllis (11-06-16)

  3. #2
    Μέλος
    Εγγραφή
    May 2007
    Περιοχή
    Athens
    Μηνύματα
    195

    Προεπιλογή

    Φίλε είναι πολύ ωραίο αυτό το project. Θα μπορούσε να γίνει να γίνει και θέμα πτυχιακής.

    0 Not allowed! Not allowed!

  4. #3
    Μέλος Το avatar του χρήστη nupogodi
    Όνομα
    Νικος
    Εγγραφή
    Jul 2009
    Περιοχή
    Κορωπι
    Μηνύματα
    140

    Προεπιλογή

    Ωραια εργασια.Σκεφτεσαι να την παρουσιασεις και στο σχολειο σου?Με το καλο να το συμμαζεψεις σε ενα κουτι και να φορτωνεις ρετρο παιχνιδια να παιζεις.Οσο στο επιτρεπουν οι δυναμεις σου κρατα μας ενημερους.Αυτη την πλακετα την εφτιαξες μονος σου καθως και τις κολησεις των smd εξαρτηματων?Πως ειναι αυτα τα προτζεκτ?Χαιρετω φιλικα.

    0 Not allowed! Not allowed!
    Παρακαλετο αιδoιον ξινη συνουσια.
    Μην πιστευεις ομοφυλοφιλου ανδρος τα λογια και εκδιδομενης γυναικος τα μοιρολογια.
    Democrats differ from Republicans as much Coca Cola differs from Pepsi Cola.--Gore Vidal.

  5. #4
    Μέλος Το avatar του χρήστη llion
    Όνομα
    ΛΕΩΝ
    Εγγραφή
    Oct 2010
    Περιοχή
    ΓΛΥΦΑΔΑ
    Μηνύματα
    41

    Προεπιλογή

    Παράθεση Αρχικό μήνυμα από pas2007 Εμφάνιση μηνυμάτων
    Φίλε είναι πολύ ωραίο αυτό το project. Θα μπορούσε να γίνει να γίνει και θέμα πτυχιακής.
    Ευχαριστώ φίλε, πάνε όμως πολλά χρόνια που τελείωσα τις σπουδές μου, τότε δεν πρέπει να υπήρχαν καν FPGA.

    2 Not allowed! Not allowed!

  6. #5
    Μέλος Το avatar του χρήστη llion
    Όνομα
    ΛΕΩΝ
    Εγγραφή
    Oct 2010
    Περιοχή
    ΓΛΥΦΑΔΑ
    Μηνύματα
    41

    Προεπιλογή

    Παράθεση Αρχικό μήνυμα από nupogodi Εμφάνιση μηνυμάτων
    Ωραια εργασια.Σκεφτεσαι να την παρουσιασεις και στο σχολειο σου?Με το καλο να το συμμαζεψεις σε ενα κουτι και να φορτωνεις ρετρο παιχνιδια να παιζεις.Οσο στο επιτρεπουν οι δυναμεις σου κρατα μας ενημερους.Αυτη την πλακετα την εφτιαξες μονος σου καθως και τις κολησεις των smd εξαρτηματων?Πως ειναι αυτα τα προτζεκτ?Χαιρετω φιλικα.
    Όχι, την πλακέτα δεν την έφτιαξα εγώ αν και είναι πολύ απλή, την αγόρασα από το ebay, είναι φτηνή (λιγότερο από 30 ευρώ) και έχει πάνω το EP4CE6E22C8N chip και ένα RS-232 σε usb που είναι πολύ βολικό. Όταν ξεκίνησα το project είχα μια άλλη με παλιότερo FPGA chip και χωρίς rs-232 to usb chip και χρησιμοποιούσα έξτρα κύκλωμα για αυτό.

    Το FPGA περιέχει πολλές (6272 στο συγκεκριμένο) δομικές μονάδες με τις οποίες και με την χρήση μια γλώσσας περιγραφής υλικού VHDL μπορεί κανείς να υλοποιήσει το δικό του ψηφιακό κύκλωμα . Έτσι σε αυτό χώρεσα μια CPU και UART, video controller, spi interface και κυκλώματα αποκωδικοποίησης διευθύνσεων.


    1 Not allowed! Not allowed!
    Τελευταία επεξεργασία από το χρήστη llion : 11-06-16 στις 14:08

  7. #6
    Μέλος
    Εγγραφή
    Nov 2007
    Μηνύματα
    1.459

    Προεπιλογή

    Πάρα πολύ καλό. Η σχεδίαση μιας CPU σε FPGA είναι κλασική άσκηση που δίνετε ώς πτυχιακή σε πληροφορική, ή σε μεταπτυχιακά. Εσύ όμως το προχώρησες καθώς μπήκες και στα περιφεριακά. Μπορείς να ανεβάσεις το video controller? Άντε με το καλό να γράψεις και τον δικό σου πυρήνα

    0 Not allowed! Not allowed!

  8. #7
    Μέλος Το avatar του χρήστη llion
    Όνομα
    ΛΕΩΝ
    Εγγραφή
    Oct 2010
    Περιοχή
    ΓΛΥΦΑΔΑ
    Μηνύματα
    41

    Προεπιλογή

    Ευχαριστώ. Όλα τα source files υπάρχουν στο site μου, εκτός από τα του assembler. Σε όλο το project δεν δανείστηκα έτοιμο κώδικα ή έτοιμα modules από κανένα ούτε από τα έτοιμα templates του Quartus, χρησιμοποίησα βέβαια τους πολλαπλασιαστές της FPGA. Διαίρεση δεν υποστηρίζει λόγω έλλειψης χώρου αλλά την έχω υλοποιήσει σε assembly διαθέσιμη ως interrupt (INT 4). Η CPU δεν βασίζεται σε micro code είναι "wired". Η Basic είναι ported από έκδοση για 8086. Η assembly που υλοποίησα είναι μια μίξη από τις γλώσσες ASSEMBLY που χρησιμοποιούσα πριν πολλά χρόνια 68000, x86 στον QL και το PC.

    4 Not allowed! Not allowed!

  9. #8
    Μέλος
    Όνομα
    Μηνάς
    Εγγραφή
    Jul 2013
    Περιοχή
    Ηράκλειο
    Μηνύματα
    184

    Προεπιλογή

    Συγχαρητήρια για την προσπάθειά σου.
    Ευτυχώς υπάρχουν δάσκαλοι που μπορούν να διδάξουν τους μαθητές τους κατι τι περισσότερο ...

    0 Not allowed! Not allowed!

  10. Ένα μέλος ευχαρίστησε τον kalarakis για αυτό το χρήσιμο μήνυμα:

    llion (15-06-16)

  11. #9
    ΥπερΣυντονιστής Το avatar του χρήστη leosedf
    Όνομα
    Κωνσταντίνος
    Εγγραφή
    Jan 2004
    Περιοχή
    Θεσσαλονίκη
    Μηνύματα
    11.089

    Προεπιλογή

    Εντάξει..... Απλά γάμησες!




    Sorry για τη γλώσσα.

    0 Not allowed! Not allowed!

  12. Ένα μέλος ευχαρίστησε τον leosedf για αυτό το χρήσιμο μήνυμα:

    llion (15-06-16)

  13. #10
    Μέλος Το avatar του χρήστη llion
    Όνομα
    ΛΕΩΝ
    Εγγραφή
    Oct 2010
    Περιοχή
    ΓΛΥΦΑΔΑ
    Μηνύματα
    41

    Προεπιλογή

    Ξαναέγραψα το κομμάτι της ALU του επεξεργαστή μου που κάνει προσθέσεις/αφαιρέσεις αυτή τη φορά όχι σε VHDL αλλά απευθείας σε επίπεδο λογικών πυλών.
    Φαίνεται να δουλεύει καλά, είναι φυσικά πιο αργό από αυτά της Altera (2 περιόδους ρολογιού 50ΜHz πιο αργό).
    Κάνει πρόσθεση ή αφαίρεση ανάλογα με τα σήματα add/sub σε 16 η 8 bit με έλεγχο από το σήμα half, και δίνει τιμές στα σήματα zero, carry, overflow, neg (negative) ανάλογα με το αποτέλεσμα.
    Ακολουθεί το σχηματικό:

    Πατήστε στην εικόνα για να τη δείτε σε μεγένθυνση Όνομα:  ALU_D.jpg Εμφανίσεις:  259 Μέγεθος:  136,3 KB

    4 Not allowed! Not allowed!
    Τελευταία επεξεργασία από το χρήστη llion : 06-12-16 στις 17:11

  14. 3 μέλη ευχαρίστησαν τον llion για αυτό το χρήσιμο μήνυμα:

    CybEng (07-12-16), Fire Doger (06-12-16), picdev (06-12-16)

Σελίδα 1 από 3 1 2 3 ΤελευταίαΤελευταία

Παρόμοια Θέματα

  1. DIY Φωτοβολταικό...
    By hitech444 in forum Ερωτήσεις Αρχάριων
    Απαντήσεις: 1
    Τελευταίο Μήνυμα: 08-09-17, 20:02
  2. DIY Arduino Security System
    By alexanasgr in forum Συστήματα Ασφαλείας
    Απαντήσεις: 3
    Τελευταίο Μήνυμα: 19-01-17, 10:18
  3. DIY
    By p.gabr in forum Ηλεκτρονικά
    Απαντήσεις: 1
    Τελευταίο Μήνυμα: 04-03-11, 17:46
  4. DIY Lamborghini
    By Lykos1986 in forum Γενική Συζήτηση
    Απαντήσεις: 4
    Τελευταίο Μήνυμα: 19-08-08, 19:48

Δικαιώματα - Επιλογές

  • Δημιουργία θεμάτων: Όχι
  • Υποβολή μηνυμάτων: Όχι
  • Σύναψη αρχείων: Όχι
  • Επεξεργασία μηνυμάτων: Όχι
  •  
  • BB code: σε λειτουργία
  • Smilies: σε λειτουργία
  • [IMG]: σε λειτουργία
  • [VIDEO] code is σε λειτουργία
  • HTML: εκτός λειτουργίας