I've a software background, not hardware design, but I believe it is a trade-off between ease of address resolution and mapping. The smaller the "block" you pick, the more bits you have to look at in order to work out what slave to send the access to. Not all bus technologies will use 4KB. APB for example I believe uses 1KB.