GTKWAVE


To GTKWAVE είναι το γραφικό πρόγραμμα που σας επιτρέπει να βλέπετε τι τιμές παίρνουν τα καλώδια που σας ενδιαφέρουν στο κύκλωμά σας. Η γραφική απεικόνιση που παράγει το GTKWAVE προκύπτει από το αρχείο .vcd, το οποίο έχει παραχθεί με την εντολή vvp.

Simulation

Μπορείτε να ανοίξετε το αρχείο vcd με το GTKWAVE τρέχοντας την εντολή

gtkwave test.vcd

Παρατηρήστε πάνω αριστερά την ιεραρχία που έχετε ορίσει, ξεκινώντας από το test, όπως φαίνεται εδώ:
 

Ανοίξτε την ιεραρχία πατώντας στο + δίπλα από το test. Πατώντας στο όνομα του instance του counter που έχετε ορίσει, το οποίο είναι το c1, μπορείτε αριστερά να δείτε όλα τα καλώδια του κυκλώματός σας, όπως βλέπετε εδώ:



Σε αυτό το σημείο μπορείτε να δείτε γραφικά την προσομείωση για το διάστημα που έχετε ορίσει στο testbench.

Επιλέξτε όλα τα σήματα και πατήστε "Insert".

Αν θέλετε μπορείτε να ορίσετε το χρόνο της προσομείωσης που σας ενδιαφέρει στα πεδία "From" και "To", τα οποία θα βρείτε πάνω από τις κυματομορφές. Κάτω από το Time->Zoom μπορείτε να δείτε το σημείο της προσομείωσης που σας ενδιαφέρει, ενώ με Time->Zoom->Zoom Best Fit βλέπετε όλη την προσομείωση, όπως εδώ:



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



Περισσότερες πληροφορίες για το GTKWAVE μπορείτε να βρείτε εδώ.

Debugging


Αν εντοπίσετε ένα λάθος στην προσομείωση, θα πρέπει να εντοπίσετε την πηγή του λάθος, να διορθώσετε τα σχετικά αρχεία verilog και να ακολουθήσετε όλη τη ροή από την αρχή. Συνοπτικά, η ροή είναι η εξής

Μετά από κάθε διόρθωση δεν πρέπει να ξεχνάτε να δημιουργείτε ξανά τις πληροφορίες της προσομείωσης που διαβάζει το GTKWAVE από το .vcd, εκτελώντας τον κώδικα με την εντολή vvp.