diff --git a/build_helper/build_helper_configs.py b/build_helper/build_helper_configs.py
index a67e093..276adc6 100755
--- a/build_helper/build_helper_configs.py
+++ b/build_helper/build_helper_configs.py
@@ -45,7 +45,9 @@
     # Keys for the templace will come from the combinations of parameters
     # provided in the seed dictionary.
 
-    "config_template": "cmake -G Ninja " + \
+    "spe_config_template": "cmake -G Ninja " + \
+        "-S %(tfm_tests_root_dir)s/%(test_root_dir)s/spe " + \
+        "-B %(ci_build_root_dir)s/spe " + \
         "-DTFM_PLATFORM=%(tfm_platform)s " + \
         "-DTFM_TOOLCHAIN_FILE=%(codebase_root_dir)s/%(compiler)s " + \
         "-DTFM_ISOLATION_LEVEL=%(isolation_level)s " + \
@@ -55,13 +57,23 @@
         "-DBL2=%(with_bl2)s " + \
         "-DTFM_PROFILE=%(profile)s " + \
         "%(extra_params)s " + \
-        "-DTFM_TEST_REPO_PATH=%(codebase_root_dir)s/../tf-m-tests " + \
+        "-DCONFIG_TFM_SOURCE_PATH=%(codebase_root_dir)s " + \
         "-DMBEDCRYPTO_PATH=%(codebase_root_dir)s/../mbedtls " + \
         "-DPSA_ARCH_TESTS_PATH=%(codebase_root_dir)s/../psa-arch-tests " + \
         "-DMCUBOOT_PATH=%(codebase_root_dir)s/../mcuboot " + \
         "-DQCBOR_PATH=%(codebase_root_dir)s/../qcbor " + \
-        "-DTFM_EXTRAS_REPO_PATH=%(codebase_root_dir)s/../tf-m-extras " + \
-        "%(codebase_root_dir)s",
+        "-DTFM_EXTRAS_REPO_PATH=%(codebase_root_dir)s/../tf-m-extras ",
+
+    "nspe_config_template": "cmake -G Ninja " + \
+        "-S %(tfm_tests_root_dir)s/%(test_root_dir)s " + \
+        "-B %(ci_build_root_dir)s/nspe " + \
+        "-DCONFIG_SPE_PATH=%(ci_build_root_dir)s/spe/api_ns " + \
+        "%(extra_params)s " + \
+        "-DQCBOR_PATH=%(codebase_root_dir)s/../qcbor ",
+
+    # CMake build commands will be executed for every build.
+    "spe_cmake_build":  "cmake --build %(ci_build_root_dir)s/spe -- install",
+    "nspe_cmake_build": "cmake --build %(ci_build_root_dir)s/nspe --",
 
     "set_compiler_path": "export PATH=$PATH:$%(compiler)s_PATH",
 
@@ -69,97 +81,101 @@
     # tfm_build_manager will replace %(_tbm_build_dir_)s,  %(_tbm_code_dir_)s,
     # _tbm_target_platform_ with the  paths set when building
 
-    "artifact_capture_rex": (r'%(_tbm_build_dir_)s/bin'
+    "artifact_capture_rex": (r'%(ci_build_root_dir)s/nspe'
                              r'/(\w+\.(?:axf|bin|hex))$'),
 
-    # CMake build commands will be executed for every build.
-    "cmake_build": "cmake --build ./ -- install",
     # Keys will append extra commands when matching target_platform
-    "post_build": {"arm/corstone1000": ("dd conv=notrunc bs=1 if=%(_tbm_build_dir_)s/bin/bl1_1.bin of=%(_tbm_build_dir_)s/bin/bl1.bin seek=0;"
-                                        "dd conv=notrunc bs=1 if=%(_tbm_build_dir_)s/bin/bl1_provisioning_bundle.bin of=%(_tbm_build_dir_)s/bin/bl1.bin seek=40960;"
-                                        "../platform/ext/target/arm/corstone1000/create-flash-image.sh %(_tbm_build_dir_)s/bin/ cs1000.bin;"),
+    "post_build": {"arm/corstone1000": ("dd conv=notrunc bs=1 if=%(ci_build_root_dir)s/spe/bin/bl1_1.bin of=%(ci_build_root_dir)s/spe/bin/bl1.bin seek=0;"
+                                        "dd conv=notrunc bs=1 if=%(ci_build_root_dir)s/spe/bin/bl1_provisioning_bundle.bin of=%(ci_build_root_dir)s/spe/bin/bl1.bin seek=40960;"
+                                        "../platform/ext/target/arm/corstone1000/create-flash-image.sh %(ci_build_root_dir)s/spe/bin/ cs1000.bin;"),
                     "arm/musca_b1": ("srec_cat "
-                                 "%(_tbm_build_dir_)s/bin/"
+                                 "%(ci_build_root_dir)s/spe/bin/"
                                  "bl2.bin "
                                  "-Binary -offset 0xA000000 "
                                  "-fill 0xFF 0xA000000 0xA020000 "
-                                 "%(_tbm_build_dir_)s/bin/"
+                                 "%(ci_build_root_dir)s/nspe/"
                                  "tfm_s_ns_signed.bin "
                                  "-Binary -offset 0xA020000 "
                                  "-fill 0xFF 0xA020000 0xA200000 "
-                                 "-o %(_tbm_build_dir_)s/bin/"
+                                 "-o %(ci_build_root_dir)s/"
                                  "tfm.hex -Intel"),
                    "arm/musca_s1": ("srec_cat "
-                                 "%(_tbm_build_dir_)s/bin/"
+                                 "%(ci_build_root_dir)s/spe/bin/"
                                  "bl2.bin "
                                  "-Binary -offset 0xA000000 "
                                  "-fill 0xFF 0xA000000 0xA020000 "
-                                 "%(_tbm_build_dir_)s/bin/"
+                                 "%(ci_build_root_dir)s/nspe/"
                                  "tfm_s_ns_signed.bin "
                                  "-Binary -offset 0xA020000 "
                                  "-fill 0xFF 0xA020000 0xA200000 "
-                                 "-o %(_tbm_build_dir_)s/bin/"
+                                 "-o %(ci_build_root_dir)s/"
                                  "tfm.hex -Intel"),
                    "stm/stm32l562e_dk": ("echo 'STM32L562E-DK board post process';"
-                                          "%(_tbm_build_dir_)s/postbuild.sh;"
-                                          "pushd %(_tbm_build_dir_)s;"
-                                          "BIN_FILES=$(grep -o '\/.*\.bin' TFM_UPDATE.sh | sed 's/^/bin/');"
-                                          "tar jcf ./bin/stm32l562e-dk-tfm.tar.bz2 regression.sh TFM_UPDATE.sh ${BIN_FILES};"
+                                          "%(ci_build_root_dir)s/spe/api_ns/postbuild.sh;"
+                                          "pushd %(ci_build_root_dir)s/spe/api_ns;"
+                                          "mkdir -p image_signing/scripts ;"
+                                          "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.bin image_signing/scripts ;"
+                                          "tar jcf ./bin/stm32l562e-dk-tfm.tar.bz2 regression.sh TFM_UPDATE.sh "
+                                          "bin/bl2.bin "
+                                          "bin/tfm_s_signed.bin "
+                                          "image_signing/scripts/tfm_ns_signed.bin ;"
                                           "popd"),
                    "stm/b_u585i_iot02a": ("echo 'STM32U5 board post process';"
-                                          "%(_tbm_build_dir_)s/postbuild.sh;"
-                                          "pushd %(_tbm_build_dir_)s;"
-                                          "BIN_FILES=$(grep -o '\/.*\.bin' TFM_UPDATE.sh | sed 's/^/bin/');"
-                                          "tar jcf ./bin/b_u585i_iot02a-tfm.tar.bz2 regression.sh TFM_UPDATE.sh ${BIN_FILES};"
+                                          "%(ci_build_root_dir)s/spe/api_ns/postbuild.sh;"
+                                          "pushd %(ci_build_root_dir)s/spe/api_ns;"
+                                          "mkdir -p image_signing/scripts ;"
+                                          "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.bin image_signing/scripts ;"
+                                          "tar jcf ./bin/stm32l562e-dk-tfm.tar.bz2 regression.sh TFM_UPDATE.sh "
+                                          "bin/bl2.bin "
+                                          "bin/tfm_s_signed.bin "
+                                          "image_signing/scripts/tfm_ns_signed.bin ;"
                                           "popd"),
                   "nxp/lpcxpresso55s69": ("echo 'LPCXpresso55S69 board post process\n';"
-                                            "if [ -f \"%(_tbm_build_dir_)s/bin/bl2.hex\" ]; then FLASH_FILE='flash_bl2_JLink.py'; else FLASH_FILE='flash_JLink.py'; fi;"
-                                            "pushd %(_tbm_build_dir_)s/../platform/ext/target/nxp/lpcxpresso55s69/scripts;"
+                                            "if [ -f \"%(ci_build_root_dir)s/spe/bin/bl2.hex\" ]; then FLASH_FILE='flash_bl2_JLink.py'; else FLASH_FILE='flash_JLink.py'; fi;"
+                                            "pushd%(codebase_root_dir)s/platform/ext/target/nxp/lpcxpresso55s69/scripts;"
                                             "LN=$(grep -n 'JLinkExe' ${FLASH_FILE}|awk -F: '{print $1}');"
                                             "sed -i \"${LN}s/.*/    print('flash.jlink generated')/\" ${FLASH_FILE};"
                                             "python3 ./${FLASH_FILE};"
-                                            "cd %(_tbm_build_dir_)s/bin;"
+                                            "cd %(ci_build_root_dir)s/spe/bin;"
                                             "BIN_FILES=$(grep loadfile flash.jlink | awk '{print $2}');"
                                             "tar jcf lpcxpresso55s69-tfm.tar.bz2 flash.jlink ${BIN_FILES};"
                                             "popd"),
                    "cypress/psoc64": ("echo 'Sign binaries for Cypress PSoC64 platform';"
-                                       "pushd %(_tbm_build_dir_)s/..;"
+                                       "pushd %(codebase_root_dir)s/;"
                                        "sudo /usr/local/bin/cysecuretools "
                                        "--policy platform/ext/target/cypress/psoc64/security/policy/policy_multi_CM0_CM4_tfm.json "
                                        "--target cy8ckit-064s0s2-4343w "
                                        "sign-image "
-                                       "--hex %(_tbm_build_dir_)s/bin/tfm_s.hex "
+                                       "--hex %(ci_build_root_dir)s/spe/bin/tfm_s.hex "
                                        "--image-type BOOT --image-id 1;"
                                        "sudo /usr/local/bin/cysecuretools "
                                        "--policy platform/ext/target/cypress/psoc64/security/policy/policy_multi_CM0_CM4_tfm.json "
                                        "--target cy8ckit-064s0s2-4343w "
                                        "sign-image "
-                                       "--hex %(_tbm_build_dir_)s/bin/tfm_ns.hex "
+                                       "--hex %(ci_build_root_dir)s/nspe/bin/tfm_ns.hex "
                                        "--image-type BOOT --image-id 16;"
-                                       "mv %(_tbm_build_dir_)s/bin/tfm_s.hex %(_tbm_build_dir_)s/bin/tfm_s_signed.hex;"
-                                       "mv %(_tbm_build_dir_)s/bin/tfm_ns.hex %(_tbm_build_dir_)s/bin/tfm_ns_signed.hex;"
+                                       "mv %(ci_build_root_dir)s/spe/bin/tfm_s.hex %(ci_build_root_dir)s/spe/bin/tfm_s_signed.hex;"
+                                       "mv %(ci_build_root_dir)s/nspe/bin/tfm_ns.hex %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.hex;"
                                        "popd")
                    },
 
     # (Optional) If set will fail if those artefacts are missing post build
     "required_artefacts": {"all": [
-                           "%(_tbm_build_dir_)s/bin/"
+                           "%(ci_build_root_dir)s/spe/bin/"
                            "tfm_s.bin",
-                           "%(_tbm_build_dir_)s/bin/"
+                           "%(ci_build_root_dir)s/nspe/"
                            "tfm_ns.bin"],
                            "arm/musca_b1": [
-                           "%(_tbm_build_dir_)s/bin/"
-                           "tfm.hex",
-                           "%(_tbm_build_dir_)s/bin/"
+                           "%(ci_build_root_dir)s/tfm.hex",
+                           "%(ci_build_root_dir)s/spe/bin/"
                            "bl2.bin",
-                           "%(_tbm_build_dir_)s/bin/"
+                           "%(ci_build_root_dir)s/spe/bin/"
                            "tfm_sign.bin"],
                            "arm/musca_s1": [
-                           "%(_tbm_build_dir_)s/bin/"
-                           "tfm.hex",
-                           "%(_tbm_build_dir_)s/bin/"
+                           "%(ci_build_root_dir)s/tfm.hex",
+                           "%(ci_build_root_dir)s/spe/bin/"
                            "bl2.bin",
-                           "%(_tbm_build_dir_)s/bin/"
+                           "%(ci_build_root_dir)s/spe/bin/"
                            "tfm_sign.bin"]
                            }
 }
diff --git a/configs.py b/configs.py
index faef7f2..e83c7d9 100755
--- a/configs.py
+++ b/configs.py
@@ -73,7 +73,7 @@
         "-b",
         "--build_commands",
         default=None,
-        choices=['set_compiler', 'cmake_config', 'cmake_build', 'post_build'],
+        choices=['set_compiler', 'spe_cmake_config', 'nspe_cmake_config', 'spe_cmake_build', 'nspe_cmake_build', 'post_build'],
         help="Print selected type of build commands to be run for current configuration."
     )
     PARSER.add_argument(
diff --git a/eclair/external_sources.ecl b/eclair/external_sources.ecl
index 2c9f30c..2e2ea30 100644
--- a/eclair/external_sources.ecl
+++ b/eclair/external_sources.ecl
@@ -18,9 +18,9 @@
 -file_tag+={external, "^trusted-firmware-m/lib/ext/t_cose/.*$"}
 
 # Ignore any auto-generated source files in build dir.
-# TODO make an exception for build/generated, in which source code is
+# TODO make an exception for ci_build/spe/build-spe/generated in which source code is
 # built in TF-M binaries.
--file_tag+={external, "^trusted-firmware-m/build/.*$"}
+-file_tag+={external, "^ci_build/.*$"}
 
 # Ignore compiler internal headers.
 -file_tag+={external, "^/.+/compiler/gcc-.*$"}
diff --git a/jenkins/build-config.jpl b/jenkins/build-config.jpl
index 802f0e8..8d6df40 100644
--- a/jenkins/build-config.jpl
+++ b/jenkins/build-config.jpl
@@ -34,11 +34,14 @@
         sh "tf-m-ci-scripts/run-build.sh"
       }
       stage("Post") {
-        archiveArtifacts 'trusted-firmware-m/build/bin/**'
-        archiveArtifacts 'trusted-firmware-m/build/install/interface/**'
+        archiveArtifacts 'ci_build/spe/bin/**'
+        archiveArtifacts 'ci_build/nspe/bin/**'
+        archiveArtifacts 'ci_build/nspe/*.bin'
+        archiveArtifacts 'ci_build/spe/api_ns/bin/**'
+        archiveArtifacts 'ci_build/spe/api_ns/interface/**'
         def upstreamProject = getUpstreamJob()[0].upstreamProject
         if (upstreamProject == "tf-m-build-and-test") {
-          archiveArtifacts 'trusted-firmware-m/build/generated/**'
+          archiveArtifacts 'ci_build/spe/build-spe/generated/**'
         }
         if (upstreamProject == "tf-m-nightly-performance"){
           //Creating a folder to store memory footprint artifacts and launching the memory footprint script.
@@ -48,7 +51,7 @@
         }
       }
     } catch (Exception e) {
-      archiveArtifacts artifacts: 'trusted-firmware-m/build/**', allowEmptyArchive: true
+      archiveArtifacts artifacts: 'ci_build/**', allowEmptyArchive: true
       manager.buildFailure()
       verify = -1
     } finally {
diff --git a/lava_helper/codecov_helper.py b/lava_helper/codecov_helper.py
index c4466e2..b56982f 100644
--- a/lava_helper/codecov_helper.py
+++ b/lava_helper/codecov_helper.py
@@ -51,7 +51,7 @@
 
             def dl_artifact(fname):
                 lava.fetch_file(
-                    metadata["build_job_url"] + "artifact/trusted-firmware-m/build/bin/" + fname,
+                    metadata["build_job_url"] + "artifact/ci_build/spe/bin/" + fname,
                     os.path.join(job_dir, fname)
                 )
 
diff --git a/lava_helper/lava_create_jobs.py b/lava_helper/lava_create_jobs.py
index 3f60583..3c0e3dd 100755
--- a/lava_helper/lava_create_jobs.py
+++ b/lava_helper/lava_create_jobs.py
@@ -90,7 +90,7 @@
         for binary_type, binary_name in config["binaries"].items():
             params.update(
                 {
-                    "{}_url".format(binary_type): "{}/artifact/trusted-firmware-m/build/bin/{}".format(params["build_job_url"], binary_name)
+                    "{}_url".format(binary_type): "{}/artifact/ci_build/{}".format(params["build_job_url"], binary_name)
                 }
             )
 
diff --git a/lava_helper/lava_helper_configs.py b/lava_helper/lava_helper_configs.py
index 57d7f47..a5aeccf 100644
--- a/lava_helper/lava_helper_configs.py
+++ b/lava_helper/lava_helper_configs.py
@@ -102,8 +102,8 @@
     "recovery_store_url": "https://ci.trustedfirmware.org/userContent/",
     "platforms": {"arm/mps2/an521": "mps2_sse200_an512_new.tar.gz"},
     "binaries": {
-        "firmware": "tfm_s_ns_signed.bin",
-        "bootloader": "bl2.bin"
+        "firmware": "nspe/tfm_s_ns_signed.bin",
+        "bootloader": "spe/bin/bl2.bin"
     },
     "monitors": {
         'no_reg_tests': no_reg_tests_monitors,
@@ -128,8 +128,8 @@
     "platforms": {"arm/mps3/corstone300/fvp": ""},
     "data_bin_offset": "0x38000000",
     "binaries": {
-        "application": "bl2.axf",
-        "data": "tfm_s_ns_signed.bin"
+        "application": "spe/bin/bl2.axf",
+        "data": "nspe/tfm_s_ns_signed.bin"
     },
     "monitors": {
         'no_reg_tests': no_reg_tests_monitors,
@@ -171,8 +171,8 @@
     "platforms": {"arm/mps2/an521": ""},
     "data_bin_offset": "0x10080000",
     "binaries": {
-        "application": "bl2.axf",
-        "data": "tfm_s_ns_signed.bin"
+        "application": "spe/bin/bl2.axf",
+        "data": "nspe/tfm_s_ns_signed.bin"
     },
     "monitors": {
         'no_reg_tests': no_reg_tests_monitors,
@@ -197,8 +197,8 @@
     "data_bin_offset": "0x10080000",
     "cpu0_baseline": 1,
     "binaries": {
-        "application": "bl2.axf",
-        "data": "tfm_s_ns_signed.bin"
+        "application": "spe/bin/bl2.axf",
+        "data": "nspe/tfm_s_ns_signed.bin"
     },
     "monitors": {
         'no_reg_tests': no_reg_tests_monitors,
@@ -218,8 +218,8 @@
     "poweroff_timeout": 1,
     "platforms": {"arm/mps2/an521": ""},
     "binaries": {
-        "firmware": "tfm_s_ns_signed.bin",
-        "bootloader": "bl2.bin"
+        "firmware": "nspe/tfm_s_ns_signed.bin",
+        "bootloader": "spe/bin/bl2.bin"
     },
     "monitors": {
         # FPU test on AN521 qemu not supported yet
@@ -260,7 +260,7 @@
     "poweroff_timeout": 5,
     "platforms": {"stm/stm32l562e_dk": ""},
     "binaries": {
-        "tarball": "stm32l562e-dk-tfm.tar.bz2",
+        "tarball": "spe/api_ns/bin/stm32l562e-dk-tfm.tar.bz2",
     },
     "monitors": {
         'reg_tests': reg_tests_monitors,
@@ -278,7 +278,7 @@
     "poweroff_timeout": 2,
     "platforms": {"stm/b_u585i_iot02a": ""},
     "binaries": {
-        "tarball": "b_u585i_iot02a-tfm.tar.bz2",
+        "tarball": "spe/api_ns/bin/b_u585i_iot02a-tfm.tar.bz2",
     },
     "monitors": {
         'reg_tests': reg_tests_monitors,
@@ -315,8 +315,8 @@
     "poweroff_timeout": 5,
     "platforms": {"cypress/psoc64": ""},
     "binaries": {
-        "spe": "tfm_s_signed.hex",
-        "nspe": "tfm_ns_signed.hex",
+        "spe": "spe/bin/tfm_s_signed.hex",
+        "nspe": "nspe/tfm_ns_signed.hex",
     },
     "monitors": {
         'reg_tests': reg_tests_monitors,
diff --git a/run-build.sh b/run-build.sh
index a615757..572953b 100755
--- a/run-build.sh
+++ b/run-build.sh
@@ -20,7 +20,7 @@
 # in each single build job.
 function check_dependency_version() {
     TFM_EXTRAS_PATH="${WORKSPACE}/tf-m-extras"
-    TFM_EXTRAS_REFSPEC="$(get_cmake_cache ${WORKSPACE}/trusted-firmware-m/build TFM_EXTRAS_REPO_VERSION)"
+    TFM_EXTRAS_REFSPEC="$(get_cmake_cache ${WORKSPACE}/ci_build TFM_EXTRAS_REPO_VERSION)"
 
     # Array containing "<repo path>;<refspec>" elements
     dependency_repos=(
@@ -46,8 +46,10 @@
 fi
 
 set_compiler_cmd=$(python3 tf-m-ci-scripts/configs.py -b set_compiler $CONFIG_NAME)
-cmake_config_cmd=$(python3 tf-m-ci-scripts/configs.py -b cmake_config $CONFIG_NAME)
-cmake_build_cmd=$(python3 tf-m-ci-scripts/configs.py -b cmake_build -j ${BUILD_JOBS:-2} $CONFIG_NAME)
+spe_cmake_config_cmd=$(python3 tf-m-ci-scripts/configs.py -b spe_cmake_config $CONFIG_NAME)
+spe_cmake_build_cmd=$(python3 tf-m-ci-scripts/configs.py -b spe_cmake_build -j ${BUILD_JOBS:-2} $CONFIG_NAME)
+nspe_cmake_config_cmd=$(python3 tf-m-ci-scripts/configs.py -b nspe_cmake_config $CONFIG_NAME)
+nspe_cmake_build_cmd=$(python3 tf-m-ci-scripts/configs.py -b nspe_cmake_build -j ${BUILD_JOBS:-2} $CONFIG_NAME)
 post_build_cmd=$(python3 tf-m-ci-scripts/configs.py -b post_build $CONFIG_NAME)
 
 set +e
@@ -63,23 +65,23 @@
 eval $set_compiler_cmd
 
 if [ -n "$BUILD_TARGET" ]; then
-    cmake_build_cmd=${cmake_build_cmd/-- install/-- $BUILD_TARGET}
+    spe_cmake_config_cmd=${spe_cmake_config_cmd/-- install/-- $BUILD_TARGET}
     echo "Warning: BUILD_TARGET is set, will not run post_build_cmd"
     post_build_cmd=""
 fi
 
 if [ "$CODE_COVERAGE_EN" = "TRUE" ] && [[ $CONFIG_NAME =~ "GCC" ]] ; then
-    cmake_config_cmd=${cmake_config_cmd/toolchain_GNUARM.cmake/toolchain_GNUARM.cmake -DTFM_CODE_COVERAGE=True}
+    spe_cmake_config_cmd=${spe_cmake_config_cmd/toolchain_GNUARM.cmake/toolchain_GNUARM.cmake -DTFM_CODE_COVERAGE=True}
     echo "Flag: Add compiler flag for build with code coverage supported."
     echo $cmake_config_cmd
 fi
 
-if [ -z "$cmake_config_cmd" ] ; then
+if [ -z "$spe_cmake_config_cmd" ] ; then
     echo "No CMake config command found."
     exit 1
 fi
 
-if [ -z "$cmake_build_cmd" ] ; then
+if [ -z "$spe_cmake_build_cmd" ] ; then
     echo "No CMake build command found."
     exit 1
 fi
@@ -102,20 +104,20 @@
 git apply ../tf-m-ci-scripts/build_helper/platform_settings/*.patch
 cd -
 
-rm -rf trusted-firmware-m/build
-mkdir trusted-firmware-m/build
-cd trusted-firmware-m/build
+rm -rf ci_build
+mkdir ci_build
+cd ci_build
 
 set +e
-eval $cmake_config_cmd
+eval $spe_cmake_config_cmd
 cmake_cfg_error=$?
 set -e
 
 check_dependency_version
 
-if [ $cmake_cfg_error != 0 ] ; then
-    rm -rf trusted-firmware-m/build/*
-    eval $cmake_config_cmd
+if [ "$spe_cmake_config_cmd" != 0 ] ; then
+    rm -rf ci_build/*
+    eval $spe_cmake_config_cmd
 fi
 
-eval "$cmake_build_cmd; $post_build_cmd"
+eval "$spe_cmake_build_cmd; $nspe_cmake_config_cmd; $nspe_cmake_build_cmd; $post_build_cmd"
diff --git a/tfm_ci_pylib/tfm_build_manager.py b/tfm_ci_pylib/tfm_build_manager.py
index 53ef5c6..ed7cf3e 100644
--- a/tfm_ci_pylib/tfm_build_manager.py
+++ b/tfm_ci_pylib/tfm_build_manager.py
@@ -129,17 +129,17 @@
         """
         config_details = self._tbm_build_cfg[config]
         codebase_dir = os.path.join(os.getcwd(),"trusted-firmware-m")
-        build_dir=os.path.join(os.getcwd(),"trusted-firmware-m/build")
         build_config = self.get_build_config(config_details, config, \
                                              silence=silence_stderr, \
-                                             build_dir=build_dir, \
                                              codebase_dir=codebase_dir, \
                                              jobs=jobs)
         build_commands = {
-            'set_compiler': build_config['set_compiler_path'],
-            'cmake_config': build_config['config_template'],
-            'cmake_build':  build_config['cmake_build'],
-            'post_build':   build_config['post_build']
+            'set_compiler':      build_config['set_compiler_path'],
+            'spe_cmake_config':  build_config['spe_config_template'],
+            'nspe_cmake_config': build_config['nspe_config_template'],
+            'spe_cmake_build':   build_config['spe_cmake_build'],
+            'nspe_cmake_build':  build_config['nspe_cmake_build'],
+            'post_build':        build_config['post_build']
         }
         return build_commands
 
@@ -252,7 +252,6 @@
 
             build_cfg = self.override_tbm_cfg_params(build_cfg,
                                                      ["post_build",
-                                                      "required_artefacts",
                                                       "artifact_capture_rex"],
                                                      **over_dict)
 
@@ -337,12 +336,7 @@
             print("Exported build report to file:", self._tbm_report)
             save_json(self._tbm_report, full_rep)
 
-    def get_build_config(self, i, name, silence=False, build_dir=None, codebase_dir=None, jobs=None):
-        psa_build_dir = self._tbm_work_dir + "/" + name + "/BUILD"
-        if not build_dir:
-            build_dir = os.path.join(self._tbm_work_dir, name)
-        else:
-            psa_build_dir = os.path.join(build_dir, "../../psa-arch-tests/api-tests/build")
+    def get_build_config(self, i, name, silence=False, codebase_dir=None, jobs=None):
         build_cfg = deepcopy(self.tbm_common_cfg)
         if not codebase_dir:
             codebase_dir = build_cfg["codebase_root_dir"]
@@ -374,14 +368,17 @@
                 jobs = os.cpu_count()
 
         thread_no = " -j {} ".format(jobs)
-        build_cfg["cmake_build"] += thread_no
+        build_cfg["spe_cmake_build"] += thread_no
+        build_cfg["nspe_cmake_build"] += thread_no
 
         # Overwrite command lines to set compiler
         build_cfg["set_compiler_path"] %= {"compiler": i.compiler}
         build_cfg["set_compiler_path"] += " ;\n{} --version".format(self.get_compiler_name(i.compiler))
 
-        # Overwrite command lines of cmake
-        overwrite_params = {"codebase_root_dir": build_cfg["codebase_root_dir"],
+        # Overwrite parameters of build configs
+        overwrite_params = {"codebase_root_dir":   build_cfg["codebase_root_dir"],
+                            "tfm_tests_root_dir":  build_cfg["codebase_root_dir"] + "/../tf-m-tests",
+                            "ci_build_root_dir":  build_cfg["codebase_root_dir"] + "/../ci_build",
                             "tfm_platform": i.tfm_platform,
                             "compiler": self.choose_toolchain(i.compiler),
                             "isolation_level": i.isolation_level,
@@ -400,8 +397,19 @@
             overwrite_params["test_psa_api"] += " -DCC312_LEGACY_DRIVER_API_ENABLED=OFF"
         if i.tfm_platform == "arm/musca_b1":
             overwrite_params["test_psa_api"] += " -DOTP_NV_COUNTERS_RAM_EMULATION=ON"
-        build_cfg["config_template"] %= overwrite_params
-        build_cfg["post_build"] %= {"_tbm_build_dir_": build_dir}
+
+        # Test root dir
+        if i.test_psa_api != "OFF":
+            overwrite_params["test_root_dir"] = "tests_psa_arch"
+        else:
+            overwrite_params["test_root_dir"] = "tests_reg"
+
+        # Overwrite commands for building TF-M image
+        build_cfg["spe_config_template"] %= overwrite_params
+        build_cfg["nspe_config_template"] %= overwrite_params
+        build_cfg["spe_cmake_build"] %= overwrite_params
+        build_cfg["nspe_cmake_build"] %= overwrite_params
+        build_cfg["post_build"] %= overwrite_params
 
         return build_cfg
 
