Define default zoom level for formal engines
authorCesar Strauss <cestrauss@gmail.com>
Mon, 4 Jan 2021 19:40:55 +0000 (16:40 -0300)
committerCesar Strauss <cestrauss@gmail.com>
Mon, 4 Jan 2021 19:40:55 +0000 (16:40 -0300)
src/nmutil/gtkw.py

index 53d5cb6aec0289618625a5eab9a9cf1c14e1370e..b3cf6470ad6a19b48233d6ba0cd33c00c485604d 100644 (file)
@@ -23,7 +23,8 @@ def write_gtkw(gtkw_name, vcd_name, gtkw_dom, gtkw_style=None,
     :param color: default trace color
     :param base: default numerical base
     :param loc: source code location to include as a comment
-    :param zoom: initial zoom level, in GTKWave format
+    :param zoom: initial zoom level, in GTKWave format. Can also be "formal"
+                 when the file comes from a formal engine
     :param marker: initial location of a marker
     :param clk_period: clock period in seconds, helping
                        to set a reasonable initial zoom level.
@@ -87,6 +88,9 @@ def write_gtkw(gtkw_name, vcd_name, gtkw_dom, gtkw_style=None,
         gtkw.dumpfile(vcd_name)
         # set a reasonable zoom level
         # also, move the marker to an interesting place
+        if zoom == "formal":
+            # output from formal engines looks good at this zoom level
+            zoom = -6.3
         if zoom is None:
             zoom = -42.8 - log2(clk_period)
             # base zoom level is affected by time resolution units