For a byte access region, accesses to physical memory must be implemented such that indepen- dent accesses to adjacent bytes or adjacent aligned words produce the same results, regardless of the order of execution. Further, an access to a byte, an aligned word, an aligned longword, or an aligned quadword must be done in a single atomic operation.
In this context, "atomic" means that the following is true if different processors do simulta- neous reads and writes of the same data:
•The result of any set of writes must be the same as if the writes had occurred sequen- tially in some order, and
•Any read that observes the effect of a write on some part of memory must observe the effect of that write (or of a later write or writes) on the entire part of memory that is accessed by both the read and the write.
When a write accesses only part of a given word, longword, or quadword, a read of the entire structure may observe the effect of that partial write without observing the effect of an earlier write of another byte or bytes to the same structure. See Sections 5.6.1.5 and 5.6.1.6.
5.2.3 Width of Memory Access
Subject to the granularity, ordering, and coherency constraints given in Sections 5.2.1, 5.2.2, and 5.6, accesses to physical memory may be freely cached, buffered, and prefetched.
A processor may read more physical memory data (such as a full cache block) than is actually accessed, writes may trigger reads, and writes may write back more data than is actually updated. A processor may elide multiple reads and/or writes to the same data.
5.2.4 Memory-Like and Non-Memory-Like Behavior
•Each page frame in the region either exists in its entirety or does not exist in its entirety; there are no holes within a page frame.
•All locations that exist are read/write.
•A write to a location followed by a read from that location returns precisely the bits written; all bits act as memory.
•A write to one location does not change any other location.
•Reads have no side effects.
•Longword access granularity is provided, and if the byte/word extension is imple- mented, byte access granularity is provided.
•
•
•Unimplemented locations or bits may exist anywhere.
•Some locations or bits may be
System Architecture and Programming Implications