Previous - Up - Next

19.4   Avoiding Circular Mappings

Since memory-spaces can be mapped in other memory-spaces, it is possible to create loops where accesses never reach any target device. One typical case is a PCI memory-space with bridges that has both downstream and upstream mappings. In a real system, the bridge typically doesn't snoop its own transactions and there will be no loop. But in Simics there are usually n bridge devices mapped between different memory-spaces. Instead the bridge will create space-to-space mappings. To avoid loops in this case, bridges should be careful when setting up memory-space mappings. Simics will make sure that an access does not loop by terminating it after 512 memory-space transitions. If this limit is reached, it is considered a configuration error and Simics will stop.

Previous - Up - Next