From e1f2d33702a2e4ff157bc2cd7adff6b631838cf5 Mon Sep 17 00:00:00 2001 From: Yaman Umuroglu <maltanar@gmail.com> Date: Tue, 3 Dec 2019 21:35:56 +0000 Subject: [PATCH] [DataType] add get_num_possible_values --- src/finn/core/datatype.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/finn/core/datatype.py b/src/finn/core/datatype.py index b1e4dbeca..4c284b1cb 100644 --- a/src/finn/core/datatype.py +++ b/src/finn/core/datatype.py @@ -121,6 +121,17 @@ class DataType(Enum): else: raise Exception("Unrecognized data type: %s" % self.name) + def get_num_possible_values(self): + """Return the number of possible values this DataType can take. Only + implemented for integer types for now.""" + assert self.is_integer() + if "INT" in self.name: + return abs(self.min()) + abs(self.max()) + 1 + elif self.name == "BINARY" or self.name == "BIPOLAR": + return 2 + elif self.name == "TERNARY": + return 3 + def get_smallest_possible(value): """Return smallest (fewest bits) possible DataType that can represent value. Prefers unsigned integers where possible.""" -- GitLab