|Home > Introduction > SCADI > SCADI semantics|
This section lists the available subset of functionality and the differences in semantics from the CADI interface.
The SCADI interface provides a subset of functionality of the CADI interface. All functions in SCADI differ from the CADI functions, that is, the caller is responsible for satisfying the constraints and requirements in terms of synchronization with the simulation.
These functions have the same semantics as in CADI:
The following debug read access functions have the same semantics as in CADI, but the
values that these read access functions return might differ from the values returned by the
corresponding CADI functions because some of the accessed resource values might change
during the execution of an instruction. The values of resources that are modified by the
current instruction are UNKNOWN, except the PC, which always reflects the address of the
last instruction that was issued. Reading and writing registers and memory while the
simulation is running is generally only useful for
SL_SYNC_STATE. For SL_OFF, all registers and all memory locations are always
UNKNOWN while the simulation is running.
The following write access functions always provide write
access to the register in the
group. They also might provide limited write access semantics to
certain resources. A SCADI implementation might choose not to support
any write access to core registers and memory:
The breakpoint functions have nearly all the same semantics as in the CADI interface,
except that changes to breakpoints only become effective at the next stop event checkpoint
defined by the current syncLevel. Changes might also only become visible in
CADIBptGetList() at this next
Execution control is limited to stopping the simulation. The simulation stops at the next synchronization point as defined by the current syncLevel:
All other functions are not supported, and return