diff --git a/src/hdl/fir.vhd b/src/hdl/fir.vhd
index 52ee06ec58201f6861c4c07a7274648d17b1f8e7..36aa3eac9d3fe57737c8d921c41131dbc0d7d1af 100644
--- a/src/hdl/fir.vhd
+++ b/src/hdl/fir.vhd
@@ -48,9 +48,9 @@ begin  -- myarch
 prc : process (config_sw(4 downto 0), din) is
   variable w : integer;
   begin  -- process prc
-    w:=to_integer(unsigned(config_sw(4 downto 1))); -- number of removed bits
+    w:=to_integer(unsigned(config_sw(3 downto 0))); -- number of removed bits
     D_in <= (others=> '0');
-    if(config_sw(0)='1') then
+    if(config_sw(4)='1') then
         D_in(15 downto w) <= din(dwidth-1 downto dwidth-16+w); -- truncate
     else
         if(din(dwidth-16+w-1)='1') then