0
$\begingroup$

In a 32-bit byte addressable memory system, each "row" has 4 bytes and each byte has a 32-bit address.

My question is: can I read and/or write word of length 64 bits from/to memory? In other terms, can my word length be 8 bytes long or is the maximum number of bytes/word 4?

$\endgroup$
  • $\begingroup$ Well, what does it mean to read and/or write [eight byte words] from/to memory with "row"s of four bytes, what is the difference to transferring two four-byte (half?)words? $\endgroup$ – greybeard Feb 4 at 22:58
  • $\begingroup$ Let me ask the question in a different way: can the maximum chunk of data fetched by the processor from the 32-bit memory be two 32-bit halfwords? (Hence 64 bit for a word) $\endgroup$ – neurotech Feb 5 at 4:46
  • $\begingroup$ FWIW A 32 bit x86 processor does this all the time when reading double precision floating point numbers. $\endgroup$ – gnasher729 Feb 5 at 19:39
0
$\begingroup$

Just what makes a processor a 32-bit processor?
And what would 64-bit word/32-bit halfword mean in the context?

There are processors allowing a single instruction to read more than one "row of memory", with documentation more or less readily available. The DEC VAX is notorious for having quad- and octaword accesses (a word being half the width of the general purpose registers (and data bus of early implementations)…).
There are processors with the width of the data bus smaller than a GPR. The Motorola 68000 was dubbed a 16-bit CPU - with 32 bit GPRs from the start. Then, the were Intel 8088, 68008 with a data bus a quarter in width compared to its GPRs, …
There are (memory) buses that allow locking of consecutive transfers.
There are buses and memory interfaces (on processing units as well as on memory devices) providing for burst transfers.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.