diff --git a/Simulation/Digitization/python/DigiAlgConfig.py b/Simulation/Digitization/python/DigiAlgConfig.py
index ae61ae9f9683e3c120236a93f1ee683699bdddc6..cbac1ef3a7fc309e34954d5d8704aa744a862759 100644
--- a/Simulation/Digitization/python/DigiAlgConfig.py
+++ b/Simulation/Digitization/python/DigiAlgConfig.py
@@ -179,6 +179,22 @@ def getSplitInDetPileUpTools():
         PileUpToolsList += [ "TRTDigitizationToolPU" ]
     return PileUpToolsList
 
+def getSplitSFInDetPileUpTools():
+    from AthenaCommon.DetFlags import DetFlags
+    PileUpToolsList = []
+    if DetFlags.digitize.BCM_on():
+        PileUpToolsList += [ "BCM_DigitizationTool" ]
+    if DetFlags.digitize.pixel_on():
+        PileUpToolsList += [ "PixelDigitizationToolHS" ]
+        PileUpToolsList += [ "PixelFastDigitizationToolPU" ]
+    if DetFlags.digitize.SCT_on():
+        PileUpToolsList += [ "SCT_DigitizationToolHS" ]
+        PileUpToolsList += [ "SCT_FastDigitizationToolPU" ]
+    if DetFlags.digitize.TRT_on():
+        PileUpToolsList += [ "TRTDigitizationToolHS" ]
+        PileUpToolsList += [ "TRTFastDigitizationToolPU" ]
+    return PileUpToolsList
+
 def getSplitNoMergeInDetPileUpTools():
     """ This is for testing the fast chain with full digitization in split PU mode without
 merging pileup
@@ -379,6 +395,22 @@ def getSplitPileUpToolsList():
     PileUpToolsList += [ "MergeRecoTimingObjTool" ]
     return PileUpToolsList
 
+def getSplitSFPileUpToolsList():
+    PileUpToolsList = []
+    ## Truth information
+    PileUpToolsList += getStandardTruthPileUpTools()
+    ## Forward Detector Digitization
+    PileUpToolsList += getStandardForwardPileUpTools()
+    ## Inner Detector Digitization - non-standard
+    PileUpToolsList += getSplitSFInDetPileUpTools()
+    ## Calo Digitization
+    PileUpToolsList += getStandardCaloPileUpTools()
+    ## Muon System Digitization
+    PileUpToolsList += getStandardMuonPileUpTools()
+    ## RecoTimingObj
+    PileUpToolsList += [ "MergeRecoTimingObjTool" ]
+    return PileUpToolsList
+
 def getSplitNoMergePileUpToolsList():
     PileUpToolsList = []
     ## Truth information
@@ -459,6 +491,10 @@ def getSplitPileUpToolsAlg(name="SplitPileUpToolsAlg", **kwargs):
     kwargs.setdefault('PileUpTools', getSplitPileUpToolsList() )
     return getStandardPileUpToolsAlg(name, **kwargs)
 
+def getSplitSFPileUpToolsAlg(name="SplitSFPileUpToolsAlg", **kwargs):
+    kwargs.setdefault('PileUpTools', getSplitSFPileUpToolsList() )
+    return getStandardPileUpToolsAlg(name, **kwargs)
+
 def getStandardSignalOnlyTruthPileUpToolsAlg(name="StandardSignalOnlyTruthPileUpToolsAlg", **kwargs):
     kwargs.setdefault('PileUpTools', getStandardSignalOnlyTruthPileUpToolsList() )
     return getStandardPileUpToolsAlg(name, **kwargs)
diff --git a/Simulation/Digitization/python/DigiOutput.py b/Simulation/Digitization/python/DigiOutput.py
index 0b4f1521e7f72d0ead983851028597fdcfe7a8f3..08e7afa176661d4f3fefd80471161bff3f1fe59b 100644
--- a/Simulation/Digitization/python/DigiOutput.py
+++ b/Simulation/Digitization/python/DigiOutput.py
@@ -34,7 +34,7 @@ def getStreamRDO_ItemList(log):
         if standardDigiConfig():
             noFastDigi = set(keys).isdisjoint(set(digitizationFlags.experimentalDigi()))
         else:
-            noFastDigi = set(['SplitNoMergeFFPileUpToolsAlg', 'SplitNoMergeSFPileUpToolsAlg', 'SplitNoMergeFSPileUpToolsAlg', 'FastPileUpToolsAlg']).isdisjoint(set([digitizationFlags.digiSteeringConf.get_Value()]))
+            noFastDigi = set(['SplitNoMergeFFPileUpToolsAlg', 'SplitNoMergeSFPileUpToolsAlg', 'SplitNoMergeFSPileUpToolsAlg', 'FastPileUpToolsAlg', 'SplitSFPileUpToolsAlg']).isdisjoint(set([digitizationFlags.digiSteeringConf.get_Value()]))
         return not noFastDigi
 
     def fastPixelDigiOutputExpected():
diff --git a/Simulation/Digitization/python/DigitizationConfigDb.py b/Simulation/Digitization/python/DigitizationConfigDb.py
index a791db8ec48534ca9d14fde3238da646dd2ac514..e95e5364e89d3f22999b0c6fb9d92c3623c7075b 100644
--- a/Simulation/Digitization/python/DigitizationConfigDb.py
+++ b/Simulation/Digitization/python/DigitizationConfigDb.py
@@ -30,6 +30,7 @@ addService("Digitization.PileUpConfig.getPileUpEventLoopMgr"         , "PileUpEv
 addAlgorithm("Digitization.DigiAlgConfig.getStandardPileUpToolsAlg"  , "StandardPileUpToolsAlg")
 addAlgorithm("Digitization.DigiAlgConfig.getFastPileUpToolsAlg"      , "FastPileUpToolsAlg")
 addAlgorithm("Digitization.DigiAlgConfig.getSplitPileUpToolsAlg"     , "SplitPileUpToolsAlg")
+addAlgorithm("Digitization.DigiAlgConfig.getSplitSFPileUpToolsAlg"  , "SplitSFPileUpToolsAlg")
 addAlgorithm("Digitization.DigiAlgConfig.getStandardSignalOnlyTruthPileUpToolsAlg"  , "StandardSignalOnlyTruthPileUpToolsAlg")
 addAlgorithm("Digitization.DigiAlgConfig.getStandardInTimeOnlyTruthPileUpToolsAlg"  , "StandardInTimeOnlyTruthPileUpToolsAlg")
 addAlgorithm("Digitization.DigiAlgConfig.getStandardInTimeOnlyGeantinoTruthPileUpToolsAlg"  , "StandardInTimeOnlyGeantinoTruthPileUpToolsAlg")