6def F600IntegrationCfg(flags, name = 'BenckmarkAlg', **kwarg):
7 acc = ComponentAccumulator()
8
9 kwarg.setdefault('bdfID', flags.FPGADataPrep.bdfID)
10 kwarg.setdefault('xclbin', '/eos/project/a/atlas-eftracking/FPGA_compilation/FPGA_compilation_hw/F611/kernels.hw.xclbin')
11
12 kwarg.setdefault('PixelClusterInputPath', '/eos/project/a/atlas-eftracking/TestVectors/FPGATrackSim_TVs/Test_Vectors_v0-6-3a/DataPrep_FullDet_SingleMuon/pixel_cluster_input.txt')
13 kwarg.setdefault('PixelStageOneSlicingInputPath', '/eos/project/a/atlas-eftracking/TestVectors/FPGATrackSim_TVs/Test_Vectors_v0-6-3a/DataPrep_FullDet_SingleMuon/pixelL2G_output.txt')
14 kwarg.setdefault('InsideOutInputPath', '/eos/project/a/atlas-eftracking/TestVectors/FPGATrackSim_TVs/Test_Vectors_v0-6-3a/F600_Region34_SingleMuon/slicing_PixelFirst_output.txt')
15
16
17 kwarg.setdefault('PixelClusteringKernelName', 'pixel_clustering_tool')
18 kwarg.setdefault('ProcessHitsKernelName', 'processHits')
19 kwarg.setdefault('PixelL2gKernelName', 'l2g_pixel_tool')
20 kwarg.setdefault('StripL2gKernelName', 'l2g_strip_tool')
21 kwarg.setdefault('PixelEdmPrepKernelName', 'PixelEDMPrep')
22 kwarg.setdefault('StripEdmPrepKernelName', 'StripEDMPrep')
23 kwarg.setdefault('PixelFirstStageInputKernelName', 'krnl_input_stage_rtl')
24 kwarg.setdefault('PixelFirstStageOutputKernelName', 'krnl_output_stage_rtl')
25
26
27 kwarg.setdefault('PixelFirstStageSlicingIPName', 'slicing_engine')
28
29
30 kwarg.setdefault('MemReadKernelName', 'mem_read')
31 kwarg.setdefault('MemWriteKernelName', 'mem_write')
32
33
34 kwarg.setdefault('SpacepointKernelName', 'spacepoint_tool')
35
36
37 kwarg.setdefault('LoaderKernelName', 'loader')
38 kwarg.setdefault('UnloaderKernelName', 'unloader')
39
40
41 kwarg.setdefault('NnOverlapDecoratorKernelName', 'NNOverlapDecorator_kernel')
42
43
44 kwarg.setdefault('RunnerKernelName', 'runner')
45
46
47 from EFTrackingFPGAPipeline.DataPrepConfig import xAODClusterMakerCfg
48 clusterMakerTool = acc.popToolsAndMerge(xAODClusterMakerCfg(flags))
49 kwarg.setdefault('xAODClusterMaker', clusterMakerTool)
50
51
52 from EFTrackingFPGAUtility.FPGADataFormatter import FPGATestVectorToolCfg
53 testVectorTool = acc.popToolsAndMerge(FPGATestVectorToolCfg(flags))
54 kwarg.setdefault('TestVectorTool', testVectorTool)
55
56 outputTool = acc.popToolsAndMerge(FPGAOutputConversionToolCfg(flags))
57 kwarg.setdefault('OutputConversionTool', outputTool)
58
59
60 acc.addService(CompFactory.ChronoStatSvc(
61 PrintUserTime = True,
62 PrintSystemTime = True,
63 PrintEllapsedTime = True
64 ))
65
66 alg = CompFactory.EFTrackingFPGAIntegration.F600IntegrationAlg(**kwarg)
67 import ROOT
68 alg.OutputLevel = ROOT.MSG.DEBUG
69 acc.addEventAlgo(alg)
70
71 return acc
72