sram: or operator in wrong place for wrapped burst

This commit is contained in:
mwojcik 2021-08-16 12:05:23 +02:00
parent f015d6732b
commit 67ed7fae78

View File

@ -92,7 +92,7 @@ class SRAM(Module):
If(ar.burst==axi.Burst.incr.value, If(ar.burst==axi.Burst.incr.value,
port.adr.eq(port.adr + self.dout_index) port.adr.eq(port.adr + self.dout_index)
).Else(If(ar.burst==axi.Burst.wrap.value, ).Else(If(ar.burst==axi.Burst.wrap.value,
port.adr.eq((port.adr + self.dout_index) | ar.len) port.adr.eq(port.adr + (self.dout_index | ar.len))
)), # update address in the port if it's incr or wrapped burst value )), # update address in the port if it's incr or wrapped burst value
# no port.adr update for fixed burst type # no port.adr update for fixed burst type
If(self.dout_index==ar.len, r.last.eq(1)) # and update last If(self.dout_index==ar.len, r.last.eq(1)) # and update last