3 if __name__ ==
"__main__":
4 from argparse
import ArgumentParser
5 argumentParser = ArgumentParser()
6 argumentParser.add_argument(
8 default =
"/eos/project/a/atlas-eftracking/FPGA_compilation/FPGA_compilation_hw/22_pathfinder_HLS/Pathfinder_hw.xclbin",
11 argumentParser.add_argument(
13 default =
"/eos/project-a/atlas-eftracking/TestVectors/FPGATrackSim_TVs/Test_Vectors_v0-6-3c/F150_Region34_SingleMuon/stripL2G_output.txt",
16 argumentParser.add_argument(
17 "--slicingEngineOutputPath",
18 default =
"slicing_engine_output.txt",
21 argumentParser.add_argument(
22 "--insideOutOutputPath",
23 default =
"inside_out_output.txt",
26 argumentParser.add_argument(
32 argumentParser.add_argument(
38 argumentParser.add_argument(
40 action =
"store_true",
43 arguments = argumentParser.parse_args()
45 from AthenaConfiguration.AllConfigFlags
import initConfigFlags
50 flags.Exec.OutputLevel = DEBUG
54 from AthenaConfiguration.MainServicesConfig
import MainServicesCfg
57 from AthenaConfiguration.ComponentFactory
import CompFactory
58 acc.addService(CompFactory.ChronoStatSvc(
60 PrintSystemTime =
True,
61 PrintEllapsedTime =
True,
64 acc.addService(CompFactory.AthXRT.DeviceMgmtSvc(XclbinPathsList = [arguments.xclbinPath]))
66 from EFTrackingFPGAUtility.EFTrackingDataStreamLoaderAlgorithmConfig
import EFTrackingDataStreamLoaderAlgorithmCfg
69 name =
"dataStreamLoader",
70 bufferSize = arguments.bufferSize,
71 inputCsvPath = arguments.inputPath,
72 inputDataStream =
"inputDataStream",
75 from EFTrackingFPGAPipeline.EFTrackingXrtAlgorithmConfig
import EFTrackingXrtAlgorithmCfg
78 bufferSize = arguments.bufferSize,
80 [
"configurableLengthWideLoader:{configurableLengthWideLoader_1}",
"inputDataStream", 0],
83 [
"dynamicLengthWideUnloader:{dynamicLengthWideUnloader_1}",
"slicingEngineOutputDataStream", 1],
84 [
"mem_write",
"insideOutOutputDataStream", 0]
87 [
"configurableLengthWideLoader:{configurableLengthWideLoader_1}",
"inputDataStream", 2],
90 [
"mem_read", 0,
"dynamicLengthWideUnloader:{dynamicLengthWideUnloader_1}", 1],
94 "configurableLengthWideLoader:{configurableLengthWideLoader_1}",
95 "dynamicLengthWideUnloader:{dynamicLengthWideUnloader_1}",
104 from EFTrackingFPGAUtility.EFTrackingDataStreamUnloaderAlgorithmConfig
import EFTrackingDataStreamUnloaderAlgorithmCfg
107 name =
"slicingEngineDataStreamUnloaderAlgorithm",
108 outputCsvPath = arguments.slicingEngineOutputPath,
109 outputDataStream =
"slicingEngineOutputDataStream",
114 name =
"insideOutDataStreamUnloaderAlgorithm",
115 outputCsvPath = arguments.insideOutOutputPath,
116 outputDataStream =
"insideOutOutputDataStream",
119 acc.run(arguments.events)