Ejemplo n.º 1
0
#!/usr/bin/python3

import settings_analysis as s
import sys
sys.path.append(s.arith_path)
sys.path.append("../")
from os import walk
import os
from analysis_lib import extractFileList, sortFileList, extractTruncLSBs, checkResult, message, basicAnalysis, printBasicAnalysisRes
from arithmetic import integerTo2sFileConverter

integerTo2sFileConverter(s.sw_filter_result_fpath, s.sw_filter_result_fpath2s,
                         s.filter_out_par)
HW_temp_2sresult = "HW_2sresult.temp"
res_file_list = extractFileList(s.res_trunc_filter_path, s.res_trunc_filter_ID)
sortFileList(res_file_list)
with open(s.log_stat_trunc_filter_fpath, "w") as log_pointer:
    for res_file in res_file_list:
        trunc_lsbs = int(extractTruncLSBs(res_file))
        if trunc_lsbs != 0:
            integerTo2sFileConverter(s.res_trunc_filter_path + '/' + res_file,
                                     HW_temp_2sresult, s.filter_out_par)
            analysis_res = basicAnalysis(s.sw_filter_result_fpath2s,
                                         HW_temp_2sresult, s.numSamples)
            printBasicAnalysisRes(log_pointer, analysis_res, trunc_lsbs)
            os.remove(HW_temp_2sresult)
import sys
sys.path.append(s.arith_path)
sys.path.append("../")
from arithmetic import integerTo2sFileConverter,computeTruncResult, truncResults
from analysis_lib import printBasicRep,extractApproxCompr,extractTotalArea,extractSlackTime,extractRepType,checkResult,extractTruncLSBs,basicAnalysis,extractFileList,sortFileList,message,printBasicAnalysisRes

HW_temp_2sresult="HW_2sresult.temp"

# 5) Compute error statistics from multiplier with approx compressors.
res_file_list=extractFileList(s.res_approxCompr_mult_path,s.res_approxCompr_mult_ID)
sortFileList(res_file_list)
with open(s.log_stat_approxCompr_mult_fpath,"w") as log_pointer:
    for res_file in res_file_list:
        compr_level=int(extractApproxCompr(res_file))
        if compr_level!=0:
            analysis_res=basicAnalysis(s.sw_mult_result_fpath,s.res_approxCompr_mult_path+'/'+res_file,s.numSamples)
            printBasicAnalysisRes(log_pointer,analysis_res,compr_level)
os.rename("tempFile","tempFile1")

# 6) Compute error statistics from filter with multiplier with approx compressors.
res_file_list=extractFileList(s.res_approxCompr_filter_path,s.res_approxCompr_filter_ID)
sortFileList(res_file_list)
with open(s.log_stat_approxCompr_filter_fpath,"w") as log_pointer:
    for res_file in res_file_list:
        compr_level=int(extractApproxCompr(res_file))
        if compr_level!=0:
            integerTo2sFileConverter(s.res_approxCompr_filter_path+'/'+res_file,HW_temp_2sresult,s.filter_out_par)
            analysis_res=basicAnalysis(s.sw_filter_result_fpath2s,HW_temp_2sresult,s.numSamples)
            printBasicAnalysisRes(log_pointer,analysis_res,compr_level)
            os.remove(HW_temp_2sresult)