def wrap_dut(self, b, a, dut): self.b, self.a, params = get_params(b, a, shift=dut.shift.value, width=len(dut.c["a1"])) dut = CsrParams(dut, params) return dut
def wrap_dut(self, b, a, dut): self.b, self.a, params = get_params(b, a, shift=dut.shift.value, width=len(dut.a[1])) dut = ResetParams(dut, params) return dut
def set_iir(self, prefix, b, a, z=0): shift = self.get(prefix + "_shift") or 16 width = self.get(prefix + "_width") or 18 interval = self.get(prefix + "_interval") or 1 b, a, params = get_params(b, a, shift, width, interval) for k in sorted(params): self.set(prefix + "_" + k, params[k]) self.set(prefix + "_z0", z) for i in range(len(b), 3): n = prefix + "_b%i" % i if n in self.map: self.set(n, 0) self.set(prefix + "_a%i" % i, 0)