diff --git a/unoptimized_lr/simple_lr_stack.py b/unoptimized_lr/simple_lr_stack.py index e50e9b7c5759076e5d5894d2f334974caaa8338e..2d32918fe5bea8c328aa67b00a270736c0ba36c6 100644 --- a/unoptimized_lr/simple_lr_stack.py +++ b/unoptimized_lr/simple_lr_stack.py @@ -68,7 +68,7 @@ class ParseStack(Elaboratable): # Data inputs #self.in_data_port = Signal(width) # data_in #self.in_aux_port = Signal(range(depth)) #Index_in - self.in_data_valid = Signal(1) # merge this and the one below, replace with valid_in + #self.in_data_valid = Signal(1) # merge this and the one below, replace with valid_in self.in_aux_valid = Signal(1) # @@ -121,11 +121,10 @@ class ParseStack(Elaboratable): with m.If(self.bus.valid_in == 1): with m.Switch(self.bus.command_in): with m.Case(self.PUSH): - with m.If(self.in_data_valid == 1): - m.d.comb += wport.addr.eq(stack_pointer) - m.d.comb += wport.data.eq(self.bus.data_in) - m.d.comb += wport.en.eq(1) - m.next = "AT_LEAST_ONE_ITEM" + m.d.comb += wport.addr.eq(stack_pointer) + m.d.comb += wport.data.eq(self.bus.data_in) + m.d.comb += wport.en.eq(1) + m.next = "AT_LEAST_ONE_ITEM" with m.Case(self.POP): m.d.comb += self.internal_fault.eq(1) m.next = "FAULTED" @@ -146,12 +145,11 @@ class ParseStack(Elaboratable): with m.If(self.bus.valid_in == 1): with m.Switch(self.command_port): with m.Case(self.PUSH): - with m.If(self.in_data_valid == 1): - m.d.sync += stack_pointer.eq(stack_pointer + 1) - m.d.comb += wport.addr.eq(stack_pointer + 1) - m.d.comb += wport.data.eq(self.bus.data_in) - m.d.comb += wport.en.eq(1) - m.next = "AT_LEAST_ONE_ITEM" + m.d.sync += stack_pointer.eq(stack_pointer + 1) + m.d.comb += wport.addr.eq(stack_pointer + 1) + m.d.comb += wport.data.eq(self.bus.data_in) + m.d.comb += wport.en.eq(1) + m.next = "AT_LEAST_ONE_ITEM" with m.Case(self.POP): m.d.comb += rport.addr.eq(stack_pointer) m.d.comb += self.out_data_port.eq(rport.data)