APB process when pstrb = "0000" or "0101" during write transaction

I understood that pstrb = "0000" during read transaction.

But what happens if pstrb = "0000" during write transaction.

Does data successfully transafered without update?

And also I want to know if it is possible to use pstrb = "0101", "1010" or "1001"

No Data
  • According to APB documents, any cases are possible because each bit corresponds to one byte-lane.

    In the case of '0000', you can properly handle it as you thought (transfer w/o overwrite).

    In fact, I wonder why APB masters must drive all bits of PSTRB LOW.

    It seems that APB slaves can just ignore PSTRB bits for read transactions.

    What happens if we do not comply with it?