Concurrent simulation (CS) has been used successfully as a replacement
for serial simulation. Based on storing differences from experiments,
CS saves storage, speeds up simulation time and allows excellent inte
rnal observation of events. In this paper, we introduce Multiple Domai
n Concurrent Simulation (MDCS) which like concurrent simulation, maint
ains efficiency by only simulating differences. MDCS also allows exper
iments to interact with one another and create new experiments through
the use of domains. These experiments can be traced and observed at a
ny point, providing insight into the origin and causes of new experime
nts. While many experiment scenarios can be created, MDCS uses dynamic
spawning and experiment compression rather than explicit enumeration
to ensure that the number of experiment scenarios does not become exha
ustive. MDCS does not require any pre-analysis or additions to the cir
cuit under test, Providing this capability in digital logic simulators
allows more test cases to be run in less time. MDCS gives the exact l
ocation and causes of every experiment behavior and can be used to tra
ck the signature paths of test patterns for coverage analysis. We will
describe the algorithms for MDCS, discuss the rules for propagating e
xperiments and describe the concepts of domains for making dynamic int
eractions possible. We will report on the effectiveness of MDCS for at
tacking an exhaustive simulation problem such as Multiple Stuck-at Fau
lt simulations for digital logic. Finally, the applicability of MDCS f
or more general experimentation of digital logic systems will be discu
ssed.