yyeh in pimem.py the data's being shifted / masked, similar in stdata as well: comb += lddata.eq((rdport.data & lenexp.rexp_o) >> (lenexp.addr_i*8)) l.