Ποια είναι η διαφορά μεταξύ της συμπεριφοράς και των διαρθρωτικών κώδικα σε VHDL;


Απάντηση 1:

Ο κώδικας VHDL συμπεριφοράς είναι για τους χρήστες να λένε συνθετές (Xilinx ISE, Quartus II, RTL compiler κ.λπ.) για να συνθέσουν τα κυκλώματα ψηφιακής λογικής για να εκτελέσουν μια συγκεκριμένη λειτουργία σύμφωνα με τις συμπεριφορές που έχουν γραφτεί στον κώδικα. Έτσι, οι συνθέτες θα καθορίσουν πώς μοιάζει το κύκλωμα με τις συμπεριφορές του κώδικα και οι χρήστες ενδιαφέρονται μόνο για τη λειτουργικότητα του κώδικα.

Από την άλλη πλευρά, ο δομικός κώδικας είναι για τους χρήστες να λένε συνθεσάιζερ να συνθέσουν ακριβώς το κύκλωμα που ήθελαν και σχεδίαζαν. Έτσι, οι χρήστες μπορούν να έχουν πλήρη έλεγχο για το πώς το κύκλωμα μοιάζει να εκτελεί τη λειτουργία που θέλουν. Χρησιμοποιώντας το δομικό κώδικα, οι χρήστες θέλουν να φροντίζουν όχι μόνο τη λειτουργικότητα αλλά και τη δομή των κυκλωμάτων για περαιτέρω βελτιστοποιήσεις (Ταχύτητα, περιοχές κ.λπ.).

Για παράδειγμα, θέλετε να εφαρμόσετε μια προσθήκη 2 αριθμών A και B. Χρησιμοποιώντας κώδικα συμπεριφοράς, απλά γράψτε: S <= A + B; Στη συνέχεια, οι συνθεσάιζερ θα συνθέσουν ή θα επιλέξουν οποιεσδήποτε δομές για την εκτέλεση της προσθήκης. Μπορεί να είναι κανονικοί σειριακοί αθροιστές ή οτιδήποτε άλλο για την εκτέλεση προσθήκης. Χρησιμοποιώντας δομικό κώδικα, θα σχεδιάσετε τη δομή που θέλετε να εφαρμόσετε για να εκτελέσετε την προσθήκη. Για παράδειγμα, για να βελτιώσετε την ταχύτητα του αθροιστή, σχεδιάζετε ένα Carry look ahead Adder και, στη συνέχεια, γράφετε τον δομικό κώδικα γι 'αυτό.

Ελέγξτε το πλήρες παράδειγμα συμπεριφορικής και δομικής VHDL για έναν πλήρη αθροιστή: VHDL code for Full Adder


Απάντηση 2:

Διαρθρωτικά κώδικα σε οποιοδήποτε HDL είναι η ουσία που περιγράφει τα πράγματα όπως την καλωδίωση και τη φυσική ουσία. Η behavaioral κώδικας χρησιμοποιείται για να περιγράψει τα μοντέλα των πραγμάτων συνδέονται μεταξύ των καλωδίων.

Υπάρχει μια μικρή αλληλεπικάλυψη στο Verilog επειδή ο κώδικας συμπεριφοράς για πρωτόγονα στοιχεία βρίσκεται στο C και ενσωματώνεται στον προσομοιωτή, και οι UDP είναι απλούστερες εκδοχές του κώδικα συμπεριφοράς.