from litex.gen import *
-from litex.soc.interconnect.csr import *
-
-class Identifier(Module, AutoCSR):
- def __init__(self, sysid, frequency, revision=None):
- self._sysid = CSRStatus(16)
- self._frequency = CSRStatus(32)
-
- ###
-
- self.comb += [
- self._sysid.status.eq(sysid),
- self._frequency.status.eq(frequency)
- ]
+class Identifier(Module):
+ def __init__(self, ident):
+ contents = list(ident.encode())
+ l = len(contents)
+ if l > 255:
+ raise ValueError("Identifier string must be 255 characters or less")
+ contents.append(0)
+ self.mem = Memory(8, len(contents), init=contents)
+
+ def get_memories(self):
+ return [(True, self.mem)]