Προς το περιεχόμενο

verilog


thomas_ceid

Προτεινόμενες αναρτήσεις

Δημοσ.
Θα ήθελα βοήθεια στην διαδικασία υλοποίησης του συγκεκριμένου κώδικα του 2ου μέρους ,όποιος γνωρίζει απο verilog αν μπορεί ας με βοηθήσει.Το 1ο μέρος γίνεται εύκολα ,το 2ο είναι περίπλοκο.

 

1.)Ζητείται ένα κύκλωμα το οποίο θα δέχεται 4 εισόδους w, x, y και z και στην έξοδό του θα παράγει 1, αν και μόνο αν, στη δυαδική λέξη wxyz υπάρχουν τουλάχιστον 2 γειτονικά ψηφία στο 0. Πχ. για το συνδυασμό wxyz=0110 θα μας δίνει 0 στην έξοδό του, ενώ για το συνδυασμό wxyz=1001 θα δίνει 1. Σχεδιάστε το ελάχιστο ζητούμενο κύκλωμα χρησιμοποιώντας μόνο πύλες ΝAND. Παραδώστε όλο το σκεπτικό που σας οδήγησε στο λογικό διάγραμμα, το αρχείο περιγραφής του κυκλώματός σας σε Verilog, το testbench που χρησιμοποιήσατε για την πιστοποίηση της ορθότητας του σχεδιασμού σας και τις κυματομορφές από την εξομοίωση.

 

2.)Χρησιμοποιώντας τουλάχιστον 3 αντίγραφα του κυκλώματος που σχεδιάσατε στο (1) ως δομικά στοιχεία και τις ελάχιστες επιπλέον λογικές πύλες κατασκευάστε ένα κύκλωμα αντίστοιχης λειτουργίας με αυτό του (1) το οποίο θα δέχεται ως είσοδο μια αρτηρία των 11 δυαδικών ψηφίων (έστω C[10:0]). Παραδώστε το λογικό διάγραμμα, την ιεραρχική Verilog περιγραφή, το testbench που χρησιμοποιήσατε για την πιστοποίηση της ορθότητας του σχεδιασμού ας και κυματομορφές από την εξομοίωση.

 

Και το δεύτερο είναι αρκετά ευκολο. Αν και δεν είμαι expert σε Verilog (προτιμάω την VHDL), το δεύτερο είναι ουσιαστικά structural code οπου απλα πρεπει να κανεις instantiate το block που σχεδίασες στο 1. ερώτημα 3 φορές + καποια λογικη, + να γράψεις ένα testbench για simulation.

 

Κανε post το entity του πρώτου block που έχεις γράψει.

:)

Δημοσ.
Και το δεύτερο είναι αρκετά ευκολο. Αν και δεν είμαι expert σε Verilog (προτιμάω την VHDL), το δεύτερο είναι ουσιαστικά structural code οπου απλα πρεπει να κανεις instantiate το block που σχεδίασες στο 1. ερώτημα 3 φορές + καποια λογικη, + να γράψεις ένα testbench για simulation.

 

Κανε post το entity του πρώτου block που έχεις γράψει.

:)

 

[/color]έβγαλε κανείς καμιά άκρη με το 2ο μέρος ?

Δημοσ.

Σου απαντάω εδώ στο pm.

 

Όπως βλέπω η άσκηση θέλει structural κώδικα και όχι RTL, που σημαίνει ότι αναλαμβάνεις εσύ να κάνεις το minimization και όχι ο synthesizer (πολύ κακό παράδειγμα χρήσης των γλωσσών υλοποίησης υλικού, αφού ο σκοπός είναι να γράφεις RTL και να αφήνεις τον synthesizer να κάνει optimization, αλλά αφού έτσι σας το ζητάνε τι να κάνουμε!).

 

Οπότε:

 

Για το πρώτο ερώτημα, πρέπει να φτιάξεις έναν πίνακα αληθείας του προβλήματός σου, να πάρεις Karnaugh πίνακες και να κάνεις ελαχιστοποίηση όρων. Από εκεί θα καταλήξεις σε μια λογική συνάρτηση με τους ελάχιστους απαραίτητους όρους και λογικές πράξεις = λιγότερες δυνατές πύλες.

 

Για το δεύτερο ερώτημα, απλά οδηγείς με το 11ο bit και το 12ο, δηλαδή οι δύο είσοδοι (11 και 12 θα οδηγούνται από το ίδιο σήμα).

 

Δυστυχώς δεν έχω πρόχειρο modelsim να το δοκιμάσω.

 

:-)

  • 5 εβδομάδες αργότερα...

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...