From f03345d9f060024c29b9cf73a126056bf77d1d31 Mon Sep 17 00:00:00 2001 From: Florent Kermarrec Date: Fri, 8 Jun 2018 09:04:21 +0200 Subject: [PATCH] software/driver/analyzer: add get_instant_value to get instant value of one signal --- litescope/software/driver/analyzer.py | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/litescope/software/driver/analyzer.py b/litescope/software/driver/analyzer.py index 007ca9b..385d252 100644 --- a/litescope/software/driver/analyzer.py +++ b/litescope/software/driver/analyzer.py @@ -1,7 +1,8 @@ import os import sys -from migen.fhdl.structure import * + +from migen import * from litescope.software.dump.common import * from litescope.software.dump import * @@ -139,3 +140,16 @@ class LiteScopeAnalyzerDriver: raise NotImplementedError dump.add_from_layout(self.layouts[self.group], self.data) dump.write(filename) + + def get_instant_value(self, group, name): + self.data = DumpData(self.data_width) + self.debug = False + self.configure_group(group) + self.configure_trigger() + self.configure_subsampler(1) + self.run(0, 1) + self.wait_done() + self.upload() + min_idx = log2_int(getattr(self, name + "_o")) + max_idx = min_idx + log2_int((getattr(self, name + "_m") >> min_idx) + 1) + return self.data[min_idx:max_idx][0]