This manual should be used as a reference tool for understanding the formats of file-types and for simulator specific command-line options. To see how files should be converted into the proper format to run in the simulator, click here. To see how files should be loaded and run in the simulator, click here.
NOTE: mcomp uses the file name without the extension.
This compilation creates a files with the (*.deo) extension
for each module
present in the source file (*.des).
NOTE: mlink uses the file name without the extension.
The linker produces
a file with the *.dee extension.
$ crest
NOTE: crest uses the file name without the extension.
The program crest creates a file with the extension
(*.SMT) containing the
symbol table.
crest strips the symbol table information from the (*.dee)
file based upon the symbol table offset
stored in the header section of the (*.dee) file.
NOTE: doc uses the file name without the extension.
The Simulator is interactive.
Input Waveforms (Optional):
Input waveforms are specified
in an input waveform source file (*.dws). The input waveform source
file is then compiled using the
command:
$ cw
NOTE: cw uses the file name without the extension.
The program cw produces a file (*.dwe) which can be loaded by the simulator.
Fault Simulation (Optional):
For fault simulation additional
preprocessing needs to be performed.
The program mfault takes a linked
(*.dee) network description file and creates classes of equivalent faults.
The collapsed fault list is written
in a (*.fau file). This is obtained through the following commands:
$ MFAULT EX FM> WRITE REPRESENTATIVE FM> ^Z $
A translator converts the fault
list contained in the file (*.fau) into a format compatible with the fault
simulator (The program MFAULT
was written for the simulator MOZART).
The translator CREFL produces
a file (ex.fls) from the files (ex.fau) and (ex.dee).
$ CREFL EX EX /* crefl fault_list_filename network_filename */
The (*.fls) file has the following
format:
fault_type node_number
Mozart_specific_data Mozart_specific_data
The fault is an 8 bit number whose high order bit encodes the fault model:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
For instance, the second faulty
machine in the ring oscillator example is specified by the second line in
the RING.FLS file:
128 5 -1 0
The simulator uses only the first
two numbers. The first number specifies a stuck at one fault at the
output terminal of a gate (128
= 1 * 2**7). The number 5 specifies which node is stuck at one.
Its name is obtained by running
symtab:
$ SYMTAB RING 2 /* get
name option of the program */ 5 /* node number */
Running The Simulator:
$ doc <filename optional>
/* run simulator */
NOTE: the following symbol
command:> is used to represent the command line.
Create Experiement
command:>c
e <experiment name> <network name>
Attatch experiment
command:>a
e
Load Symbol Table
command:>l
s
Load Waveforms
command:>l
w
Load Fault List
command:>l
f <fault file name>
Set Mode to Fault simulation
and define the maximum fault number
command:>s
f 100
Set Fault detection flag to
enabled
command:>s
d e
Set Fault detection flag to
disabled
command:>s
d d
Trace input/output of reference
machine
command:>t
<input/output_name> r
Force input/output
command:>f
<input/output_name> <value>
Unforce input/output
command:>u
<input/output_name>
Run simulator for some time
unit
command:>r
f <time unit>
Run simulator until
command:>r
u
Run quiescent
command:>r
q
Display faults
command:>d
f
Display element
command:>d
e <element_name> <reference or CID>
Display coverage
command:>d
c
Display statistics
command:>d
s
ATPG commands
command:>ATPG
initialize
command:>ATPG
save
command:>ATPG
restore
Exit
command:>e
NOTE: several commands can
be appended on the same line
Miscellaneous commands:
check_for_phase_skipping/nocheck_for_phase_skipping
surely_detections_only/possibly_detections_too
continue
hello
@ (call
command file)
X (exit
from command file)
! (comment)
interrupt
(only network version)