diff --git a/CMakeLists.txt b/CMakeLists.txt
index cd87191c8e1be24fc2d93dab5ad6e55375785b72..795d632225a2cae2eaa5d09059be78f6c47e97ab 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -18,37 +18,51 @@ elseif (NOT IPREPO_DIR)
 endif()
 
 # set(DEVICE_NAME
-if (DEVICE_NAME STREQUAL "vc709")
-   set(FPGA_PART xc7vx690tffg1761-2)
-   set(FPGA_FAMILY 7series)
-   set(DATA_WIDTH 8)
-   set(CLOCK_PERIOD 6.4)
-endif()
-if (DEVICE_NAME STREQUAL "adm7v3")
-   set(FPGA_PART xc7vx690tffg1157-2)
-   set(FPGA_FAMILY 7series)
-   set(DATA_WIDTH 8)
-   set(CLOCK_PERIOD 6.4)
-endif()
-if (DEVICE_NAME STREQUAL "vcu118")
-   set(FPGA_PART xcvu9p-flga2104-2L-e)
-   set(FPGA_FAMILY ultraplus)
-   set(DATA_WIDTH 64)
-   set(CLOCK_PERIOD 3.2)
-   set(TCP_STACK_MSS 4096)
-   set(TCP_STACK_WINDOW_SCALING_EN 1)
+if (NOT hasParent)
+   if (DEVICE_NAME STREQUAL "vc709")
+      set(FPGA_PART xc7vx690tffg1761-2)
+      set(FPGA_FAMILY 7series)
+      set(NETWORK_BANDWIDTH 10 CACHE STRING "Network bandwidth")
+   endif()
+   if (DEVICE_NAME STREQUAL "adm7v3")
+      set(FPGA_PART xc7vx690tffg1157-2)
+      set(FPGA_FAMILY 7series)
+      set(NETWORK_BANDWIDTH 10 CACHE STRING "Network bandwidth")
+   endif()
+   if (DEVICE_NAME STREQUAL "vcu118")
+      set(FPGA_PART xcvu9p-flga2104-2L-e)
+      set(FPGA_FAMILY ultraplus)
+      set(NETWORK_BANDWIDTH 100 CACHE STRING "Network bandwidth")
+   endif()
 endif()
 
 # set bandwidth
-if (hasParent)
-   if (NETWORK_STACK_BW STREQUAL "10")
+if (NETWORK_BANDWIDTH STREQUAL "10")
+   if (NOT DEFINED NETWORK_INTERFACE)
+      set(NETWORK_INTERFACE 10)
+   endif()
+   if (NOT DEFINED DATA_WIDTH)
       set(DATA_WIDTH 8)
+   endif()
+   if (NOT DEFINED CLOCK_PERIOD)
       set(CLOCK_PERIOD 6.4)
    endif()
-   if (NETWORK_STACK_BW STREQUAL "100")
+endif()
+if (NETWORK_BANDWIDTH STREQUAL "100")
+   if (NOT DEFINED NETWORK_INTERFACE)
+      set(NETWORK_INTERFACE 100)
+   endif()
+   if (NOT DEFINED DATA_WIDTH)
+      message( "abc")
       set(DATA_WIDTH 64)
+   endif()
+   if (NOT DEFINED CLOCK_PERIOD)
       set(CLOCK_PERIOD 3.2)
+   endif()
+   if (NOT DEFINED ${TCP_STACK_MSS})
       set(TCP_STACK_MSS 4096)
+   endif()
+   if (NOT DEFINED ${TCP_STACK_WINDOW_SCALING_EN})
       set(TCP_STACK_WINDOW_SCALING_EN 1)
    endif()
 endif()