Ehi. I think I got it.
You have to enable the MPU for the entire region you need.
If you have SDK example, checkout the board.c file, function BOARD_ConfigMPU.
For me, it worked changing from ARM_MPU_REGION_SIZE_32MB to ARM_MPU_REGION_SIZE_64MB
here:
/* Region 8 setting: Memory with Normal type, not shareable, outer/inner write back */
MPU->RBAR = ARM_MPU_RBAR(8, 0x80000000U);
MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 0, 0, 1, 1, 0, ARM_MPU_REGION_SIZE_32MB);
Enabling the MPU for the external SDRAM memory makes it a Normal Device which prevents hardfault when accessing memory unaliegned-wise.
More details are available in ARM docs for developers.
Hope it solves for you, too.