diff --git a/boards/uniboard1/designs/unb1_test/tb/vhdl/tb_unb1_test.vhd b/boards/uniboard1/designs/unb1_test/tb/vhdl/tb_unb1_test.vhd
index 8489330cb1cca3a6af9e7161fbc28cadbc05bedb..e6e0cb0332de9a66b2b0d180153114bcb0f11b19 100644
--- a/boards/uniboard1/designs/unb1_test/tb/vhdl/tb_unb1_test.vhd
+++ b/boards/uniboard1/designs/unb1_test/tb/vhdl/tb_unb1_test.vhd
@@ -75,8 +75,9 @@ ARCHITECTURE tb OF tb_unb1_test IS
   CONSTANT c_sa_clk_period   : TIME := 6.4 ns; 
   CONSTANT c_pps_period      : NATURAL := 1000; 
 
-  CONSTANT c_use_ddr         : BOOLEAN := g_design_name="unb1_test_ddr" OR g_design_name="unb1_test_all";
-  CONSTANT c_ddr             : t_c_tech_ddr := c_tech_ddr3_4g_800m_master;
+  CONSTANT c_use_ddr_MB_I    : BOOLEAN := g_design_name="unb1_test_ddr_MB_I" OR g_design_name="unb1_test_ddr_MB_I_II" OR g_design_name="unb1_test_all";
+  CONSTANT c_use_ddr_MB_II   : BOOLEAN := g_design_name="unb1_test_ddr_MB_II" OR g_design_name="unb1_test_ddr_MB_I_II" OR g_design_name="unb1_test_all";
+  CONSTANT c_ddr             : t_c_tech_ddr := c_tech_ddr3_4g_single_rank_800m_master;
 
   -- DUT
   SIGNAL clk                 : STD_LOGIC := '0';
@@ -107,10 +108,15 @@ ARCHITECTURE tb OF tb_unb1_test IS
   SIGNAL si_fn_lpbk_2        : STD_LOGIC_VECTOR(c_unb1_board_ci.tr.bus_w-1 DOWNTO 0);
   SIGNAL si_fn_lpbk_3        : STD_LOGIC_VECTOR(c_unb1_board_ci.tr.bus_w-1 DOWNTO 0);
 
-  -- Signals to interface with the DDR3 memory model.
-  SIGNAL phy_in              : t_tech_ddr3_phy_in;
-  SIGNAL phy_io              : t_tech_ddr3_phy_io;
-  SIGNAL phy_ou              : t_tech_ddr3_phy_ou;
+  -- Signals to interface with the MB_I DDR3 memory model.
+  SIGNAL phy_MB_I_in         : t_tech_ddr3_phy_in;
+  SIGNAL phy_MB_I_io         : t_tech_ddr3_phy_io;
+  SIGNAL phy_MB_I_ou         : t_tech_ddr3_phy_ou;
+
+  -- Signals to interface with the MB_II DDR3 memory model.
+  SIGNAL phy_MB_II_in        : t_tech_ddr3_phy_in;
+  SIGNAL phy_MB_II_io        : t_tech_ddr3_phy_io;
+  SIGNAL phy_MB_II_ou        : t_tech_ddr3_phy_ou;
 
   -- Model I2C sensor slaves as on the UniBoard
   CONSTANT c_fpga_temp_address   : STD_LOGIC_VECTOR(6 DOWNTO 0) := "0011000";  -- MAX1618 address LOW LOW
@@ -202,23 +208,42 @@ BEGIN
       BN_BI_3_TX  => OPEN,
       BN_BI_3_RX  => (OTHERS=>'0'),
 
-      MB_I_IN     => phy_in,
-      MB_I_IO     => phy_io,
-      MB_I_OU     => phy_ou
+      MB_I_IN     => phy_MB_I_in,
+      MB_I_IO     => phy_MB_I_io,
+      MB_I_OU     => phy_MB_I_ou,
+
+      MB_II_IN    => phy_MB_II_in,
+      MB_II_IO    => phy_MB_II_io,
+      MB_II_OU    => phy_MB_II_ou
     );
 
   ------------------------------------------------------------------------------
-  -- DDR3 memory model
+  -- MB_I DDR3 memory model
+  ------------------------------------------------------------------------------
+  gen_tech_ddr_memory_model_MB_I : IF c_use_ddr_MB_I = TRUE GENERATE
+    u_tech_ddr_memory_model_MB_I : ENTITY tech_ddr_lib.tech_ddr_memory_model
+    GENERIC MAP (
+      g_tech_ddr => c_ddr
+    )
+    PORT MAP (
+      mem3_in => phy_MB_I_ou,
+      mem3_io => phy_MB_I_io,
+      mem3_ou => phy_MB_I_in
+    );
+  END GENERATE;
+
+  ------------------------------------------------------------------------------
+  -- MB_II DDR3 memory model
   ------------------------------------------------------------------------------
-  gen_tech_ddr_memory_model : IF c_use_ddr = TRUE GENERATE
-    u_tech_ddr_memory_model : ENTITY tech_ddr_lib.tech_ddr_memory_model
+  gen_tech_ddr_memory_model_MB_II : IF c_use_ddr_MB_II = TRUE GENERATE
+    u_tech_ddr_memory_model_MB_II : ENTITY tech_ddr_lib.tech_ddr_memory_model
     GENERIC MAP (
       g_tech_ddr => c_ddr
     )
     PORT MAP (
-      mem3_in => phy_ou,
-      mem3_io => phy_io,
-      mem3_ou => phy_in
+      mem3_in => phy_MB_II_ou,
+      mem3_io => phy_MB_II_io,
+      mem3_ou => phy_MB_II_in
     );
   END GENERATE;