summaryrefslogtreecommitdiff
path: root/examples/mux.vhdl
diff options
context:
space:
mode:
Diffstat (limited to 'examples/mux.vhdl')
-rw-r--r--examples/mux.vhdl32
1 files changed, 32 insertions, 0 deletions
diff --git a/examples/mux.vhdl b/examples/mux.vhdl
new file mode 100644
index 0000000..211e56e
--- /dev/null
+++ b/examples/mux.vhdl
@@ -0,0 +1,32 @@
+-------------------------------------------------------
+--! @file
+--! @brief 2:1 Mux using with-select
+-------------------------------------------------------
+
+--! Use standard library
+library ieee;
+--! Use logic elements
+ use ieee.std_logic_1164.all;
+
+--! Mux entity brief description
+
+--! Detailed description of this
+--! mux design element.
+entity mux_using_with is
+ port (
+ din_0 : in std_logic; --! Mux first input
+ din_1 : in std_logic; --! Mux Second input
+ sel : in std_logic; --! Select input
+ mux_out : out std_logic --! Mux output
+ );
+end entity;
+
+--! @brief Architure definition of the MUX
+--! @details More details about this mux element.
+architecture behavior of mux_using_with is
+begin
+ with (sel) select
+ mux_out <= din_0 when '0',
+ din_1 when others;
+end architecture;
+