コード例 #1
0
ファイル: main_658.py プロジェクト: msabrishami/DFT
#     circuit = Circuit(ckt)
#     LoadCircuit(circuit, "ckt")
#     circuit.lev()
#     print(len(circuit.nodes_lev))
#     outfile = open("../data/fault_sim/{}_full_fs.txt".format(ckt), "w")
#     for node in circuit.nodes_lev:
#         outfile.write("{}@0\n".format(node.num))
#         outfile.write("{}@1\n".format(node.num))
#     outfile.close()

circuit = Circuit(args.ckt)
LoadCircuit(circuit, "ckt")
circuit.lev()

######### START OF SSTA
circuit.SSTA()
######### END OF SSTA

dfs = DFS(circuit)
all_faults = set()
for x in range(args.tp):
    tp = circuit.gen_tp()
    temp = dfs.single(tp)
    all_faults = temp.union(all_faults)
nd_faults = []
for node in circuit.nodes_lev:
    for x in [0, 1]:
        fault = (str(node.num), x)
        if fault not in all_faults:
            nd_faults.append("{}@{}".format(node.num, x))
print("Circuit {}, TP {}".format(args.ckt, args.tp))
コード例 #2
0
ファイル: main_SSTA.py プロジェクト: lukegran/DFT
import sys
import config
from load_circuit import LoadCircuit

# sys.path.insert(1, "/home/msabrishami/workspace/StatisticsSTA/")
from distributions import Distribution, Normal, SkewNormal, MaxOp, SumOp
import distributions as dist

parser = argparse.ArgumentParser()
parser.add_argument("-ckt",
                    type=str,
                    default="c17",
                    help="circuit name, c17, no extension")
parser.add_argument("-mode",
                    type=str,
                    default="alt",
                    help="circuit name, c17, no extension")
parser.add_argument("-samples", type=int, default=100, help="SSTA samples")
args = parser.parse_args()
config.SAMPLES = args.samples

circuit = Circuit(args.ckt)
LoadCircuit(circuit, "ckt")
circuit.lev()
circuit.load_mchist("MOSFET_16nm_HP")
# circuit.ssta_pmf()
circuit.SSTA(mode=args.mode, samples=args.samples)
fname = "ssta-{}-{}-SK.png".format(args.ckt, args.mode)
circuit.ssta_plot(fname=fname)
# temp = circuit.load_mchist("MOSFET_16nm_HP")