diff --git a/modules/common/gencores_pkg.vhd b/modules/common/gencores_pkg.vhd
index aa1bc5f03ce8d00623c0046dc141901c0769ed11..7d6e0179e10217a39bd246fb316f415684da33b4 100644
--- a/modules/common/gencores_pkg.vhd
+++ b/modules/common/gencores_pkg.vhd
@@ -611,6 +611,16 @@ package gencores_pkg is
   function f_to_std_logic_vector (c : character) return std_logic_vector;
   function f_to_std_logic_vector (s : string) return std_logic_vector;
 
+  -- Functions for short-hand if assignments
+  function f_pick (cond : boolean; if_1 : std_logic; if_0 : std_logic)
+    return std_logic;
+  function f_pick (cond : boolean; if_1 : std_logic_vector; if_0 : std_logic_vector)
+    return std_logic_vector;
+  function f_pick (cond : std_logic; if_1 : std_logic; if_0 : std_logic)
+    return std_logic;
+  function f_pick (cond : std_logic; if_1 : std_logic_vector; if_0 : std_logic_vector)
+    return std_logic_vector;
+
 end package;
 
 package body gencores_pkg is
@@ -802,4 +812,43 @@ package body gencores_pkg is
     return rv;
   end function f_to_std_logic_vector;
 
+  ------------------------------------------------------------------------------
+  -- Functions for short-hand if assignments
+  ------------------------------------------------------------------------------
+  function f_pick (cond : std_logic; if_1 : std_logic; if_0 : std_logic)
+    return std_logic
+  is
+  begin
+    if cond = '1' then
+      return if_1;
+    else
+      return if_0;
+    end if;
+  end function f_pick;
+
+  function f_pick (cond : std_logic; if_1 : std_logic_vector; if_0 : std_logic_vector)
+    return std_logic_vector
+  is
+  begin
+    if cond = '1' then
+      return if_1;
+    else
+      return if_0;
+    end if;
+  end function f_pick;
+
+  function f_pick (cond : boolean; if_1 : std_logic; if_0 : std_logic)
+    return std_logic
+  is
+  begin
+    return f_pick (f_to_std_logic(cond), if_1, if_0);
+  end function f_pick;
+
+  function f_pick (cond : boolean; if_1 : std_logic_vector; if_0 : std_logic_vector)
+    return std_logic_vector
+  is
+  begin
+    return f_pick (f_to_std_logic(cond), if_1, if_0);
+  end function f_pick;
+
 end gencores_pkg;