'Is the bus size fixed when reading data from memory(dram)?

I've learned why padding is there when we create variables smaller than a word size. The answer for that is for the performance, because memory space is word-aligned and data read is done word-size at a time.

Here arises my question. This might be more related to hardware, it can differ as to each hardware system. But generally, when data reading from memory occurs, is the bus size fixed? Is it possible to read only data of the size smaller than bus size? I am not talking about the cases cpu takes care of this by doing zero-extension or sign-extension. I am only asking about the bus size when reading can alter, before the data gets to the cpu.

Any answer will be appreciated.



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source