|
<< Click to Display Table of Contents >> Navigation: ASA-EMulatR Reference Guide > Introduction > Architecture Overview > Chapter 2 - Execution Model > 2.8 Interaction with SMP Systems |
In multiprocessor configurations, the execution model does not assume lockstep execution between CPUs. Each CPU advances independently.
Shared effects between CPUs occur only through three explicit mechanisms:
•GuestMemory — the shared physical address space; LL/SC reservation invalidation on remote writes; the sole coherence authority
•Inter-processor interrupts (IPIs) — explicit signaling between CPUs; used for TLB shootdown, ASN-scoped invalidation, and cross-CPU coordination
•Barrier coordination — memory barriers enforce visibility ordering; write buffer draining ensures stores become globally visible
No CPU may directly access another CPU's pipeline, register files, TLBs, or write buffers. CPU identity (m_cpuId) is explicit and carried through all subsystems. The maximum CPU count is statically bounded at MAX_CPUS (64), while the active count is runtime-configured.
See Also: Chapter 9 - SMP Architecture; 9.4 Per-CPU vs Shared State; 9.7 Reservation Invalidation.