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 και να
ακολουθήσετε όλη τη ροή από την αρχή. Συνοπτικά, η ροή είναι η εξής
- Δημιουργία/Διόρθωση αρχείων verilog
- Μετάφραση με την εντολή iverilog
- Εκτέλεση με την εντολή vvp
- Γραφική απεικόνιση της προσομείωσης με το περιβάλλον GTKWAVE
Μετά από κάθε διόρθωση δεν πρέπει να ξεχνάτε να δημιουργείτε ξανά τις
πληροφορίες της προσομείωσης που διαβάζει το GTKWAVE από το .vcd,
εκτελώντας τον κώδικα με την εντολή vvp.