在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 3571|回复: 6

[求助] 数据分配

[复制链接]
发表于 2013-5-13 13:28:19 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
设计一个模块,一个64位的输入和64位的输出,通过设置,可以使64位的输入,按照设置的使得输入的位可以按任意的顺序输出,就是64对64一一对应输出,但是对应规则可以任意设置,要求使用逻辑资源较少,逻辑清晰
发表于 2013-5-13 14:01:32 | 显示全部楼层
没什么技巧的,出来都是大量的mux,64到64还好,直接写吧
 楼主| 发表于 2013-5-13 14:44:44 | 显示全部楼层
回复 2# lordlion


    cout(0) <=  (datain(0) and reg0(0)) or (datain(1) and reg0(1)) or (datain(2) and reg0(2)) or (datain(3) and reg0(3))    or
    (datain(4) and reg0(4)) or (datain(5) and reg0(5)) or (datain(6) and reg0(6)) or (datain(7) and reg0(7))   or  
    (datain(8) and reg0(8)) or (datain(9) and reg0(9)) or (datain(10) and reg0(10)) or (datain(11) and reg0(11))   or
    (datain(12) and reg0(12)) or (datain(13) and reg0(13)) or (datain(14) and reg0(14)) or (datain(15) and reg0(15)) or  
    (datain(16) and reg0(16)) or (datain(17) and reg0(17)) or (datain(18) and reg0(18)) or (datain(19) and reg0(19))  or
    (datain(20) and reg0(20)) or (datain(21) and reg0(21)) or (datain(22) and reg0(22)) or (datain(23) and reg0(23)) or  
    (datain(24) and reg0(24)) or (datain(25) and reg0(25)) or (datain(26) and reg0(26)) or (datain(27) and reg0(27))  or
    (datain(28) and reg0(28)) or (datain(29) and reg0(29)) or (datain(30) and reg0(30)) or (datain(31) and reg0(31)) or  
    (datain(32) and reg0(32)) or (datain(33) and reg0(33)) or (datain(34) and reg0(34)) or (datain(35) and reg0(35))  or
    (datain(36) and reg0(36)) or (datain(37) and reg0(37)) or (datain(38) and reg0(38)) or (datain(39) and reg0(39)) or  
    (datain(40) and reg0(40)) or (datain(41) and reg0(41)) or (datain(42) and reg0(42)) or (datain(43) and reg0(43))  or
    (datain(44) and reg0(44)) or (datain(45) and reg0(45)) or (datain(46) and reg0(46)) or (datain(47) and reg0(47)) or  
    (datain(48) and reg0(48)) or (datain(49) and reg0(49)) or (datain(50) and reg0(50)) or (datain(51) and reg0(51))  or
    (datain(52) and reg0(52)) or (datain(53) and reg0(53)) or (datain(54) and reg0(54)) or (datain(55) and reg0(55)) or  
    (datain(56) and reg0(56)) or (datain(57) and reg0(57)) or (datain(58) and reg0(58)) or (datain(59) and reg0(59))  or
    (datain(60) and reg0(60)) or (datain(61) and reg0(61)) or (datain(62) and reg0(62)) or (datain(63) and reg0(63))  ;
我用64个上面相同的结构,但是我的资源消耗太大了,写完了这个,芯片就不能干什么事了
发表于 2013-5-13 15:06:46 | 显示全部楼层
什么芯片? fpga吗,应该不会啊,64个64输入选择器吗,规模差不多3000门左右,很小的东西了
 楼主| 发表于 2013-5-13 16:24:33 | 显示全部楼层
回复 4# lordlion

通过单片机与FPGA总线配置输出规则的寄存器,可以实现输出规则的不同!
1.png
发表于 2013-5-13 16:46:03 | 显示全部楼层


2000个lut,确实够小的,这种选择没什么技巧的,除非你能对设计要求有调整,比如不象现在这么自由的选择,只有有限的组合之类的
 楼主| 发表于 2013-5-13 17:12:57 | 显示全部楼层
回复 6# lordlion


    library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity mult_select is port
(clk      :in  std_logic;
CS       :in  std_logic;
WE       :in  std_logic;
OE       :in  std_logic;
Adr      :in  std_logic_vector(11 downto 0);
datain      :in  std_logic_vector(63 downto 0);
sys_Di      :in  std_logic_vector(15 downto 0);
sys_Do      ut std_logic_vector(15 downto 0);
cout      ut std_logic_vector(63 downto 0)
);
end mult_select;
architecture behave of mult_select is
component mult  port
(datain     :in  std_logic_vector(63 downto 0);
sel     :in  std_logic_vector(63 downto 0);
cout     ut std_logic
);
end component;

component rs port
(clk      :in    std_logic;
rst      :in    std_logic;
srst      :in    std_logic;
up       :in    std_logic;  
din      :in    std_logic;
qout      :out    std_logic
);
end component;
signal cnt              :std_logic_vector(3 downto 0);
signal WE_down             :std_logic;
signal temp              :std_logic_vector(15 downto 0);
signal data_reg             :std_logic_vector(63 downto 0);
signal reg64             :std_logic_vector(5 downto 0);
signal reg0,reg1,reg2,reg3,reg4,reg5,reg6,reg7     :std_logic_vector(5 downto 0);
signal reg8,reg9,reg10,reg11,reg12,reg13,reg14,reg15   :std_logic_vector(5 downto 0);
signal reg16,reg17,reg18,reg19,reg20,reg21,reg22,reg23   :std_logic_vector(5 downto 0);
signal reg24,reg25,reg26,reg27,reg28,reg29,reg30,reg31   :std_logic_vector(5 downto 0);
signal reg32,reg33,reg34,reg35,reg36,reg37,reg38,reg39   :std_logic_vector(5 downto 0);
signal reg40,reg41,reg42,reg43,reg44,reg45,reg46,reg47   :std_logic_vector(5 downto 0);
signal reg48,reg49,reg50,reg51,reg52,reg53,reg54,reg55   :std_logic_vector(5 downto 0);
signal reg56,reg57,reg58,reg59,reg60,reg61,reg62,reg63   :std_logic_vector(5 downto 0);
begin

-- cout   <=datain ;
-- cout     <=cout_reg;
-- data_reg  <=datain ;

-- WE_adr <= WE or CS ;
--detector1 : rs
--port map (
--   clk  =>   clk,
--   rst  =>   '0',
--   srst =>   '0',
--   up   =>   '0',  
--   din  =>   WE_adr,
--   qout  =>   WE_down
--   );
--------------------------------------------------------------------------
  sys_Do <= temp when  OE ='0' else
    "ZZZZZZZZZZZZZZZZ";

   process(clk)
   begin
      if(rising_edge(clk))then
      if(WE='1') and (CS='0') then   
               case Adr(11 downto 0) is
           when X"300" => reg1(5 downto 0) <= sys_Di(5 downto 0);
           when X"302" => reg2(5 downto 0) <= sys_Di(5 downto 0);
        when X"304" => reg3(5 downto 0) <= sys_Di(5 downto 0);
     when X"306" => reg4(5 downto 0) <= sys_Di(5 downto 0);
     when X"308" => reg5(5 downto 0) <= sys_Di(5 downto 0);
     when X"30a" => reg6(5 downto 0) <= sys_Di(5 downto 0);
        when X"30c" => reg7(5 downto 0) <= sys_Di(5 downto 0);
     when X"30e" => reg8(5 downto 0) <= sys_Di(5 downto 0);
        when others => null;
      end case;   
           end if;
         end if;
  end process;
  
  process(clk)
   begin
      if(rising_edge(clk))then
      if(WE='1') and (CS='0') then   
               case Adr(11 downto 0) is
           when X"310" => reg9(5 downto 0) <= sys_Di(5 downto 0);
           when X"312" => reg10(5 downto 0) <= sys_Di(5 downto 0);
        when X"314" => reg11(5 downto 0) <= sys_Di(5 downto 0);
     when X"316" => reg12(5 downto 0) <= sys_Di(5 downto 0);
     when X"318" => reg13(5 downto 0) <= sys_Di(5 downto 0);
     when X"31a" => reg14(5 downto 0) <= sys_Di(5 downto 0);
        when X"31c" => reg15(5 downto 0) <= sys_Di(5 downto 0);
     when X"31e" => reg16(5 downto 0) <= sys_Di(5 downto 0);
        when others => null;
      end case;   
           end if;
         end if;
  end process;
  
  process(clk)
   begin
      if(rising_edge(clk))then
      if(WE='1') and (CS='0') then   
               case Adr(11 downto 0) is
           when X"320" => reg17(5 downto 0) <= sys_Di(5 downto 0);
           when X"322" => reg18(5 downto 0) <= sys_Di(5 downto 0);
        when X"324" => reg19(5 downto 0) <= sys_Di(5 downto 0);
     when X"326" => reg20(5 downto 0) <= sys_Di(5 downto 0);
     when X"328" => reg21(5 downto 0) <= sys_Di(5 downto 0);
     when X"32a" => reg22(5 downto 0) <= sys_Di(5 downto 0);
        when X"32c" => reg23(5 downto 0) <= sys_Di(5 downto 0);
     when X"32e" => reg24(5 downto 0) <= sys_Di(5 downto 0);
        when others => null;
      end case;   
           end if;
         end if;
  end process;
  
  process(clk)
   begin
      if(rising_edge(clk))then
      if(WE='1') and (CS='0') then   
               case Adr(11 downto 0) is
           when X"330" => reg25(5 downto 0) <= sys_Di(5 downto 0);
           when X"332" => reg26(5 downto 0) <= sys_Di(5 downto 0);
        when X"334" => reg27(5 downto 0) <= sys_Di(5 downto 0);
     when X"336" => reg28(5 downto 0) <= sys_Di(5 downto 0);
     when X"338" => reg29(5 downto 0) <= sys_Di(5 downto 0);
     when X"33a" => reg30(5 downto 0) <= sys_Di(5 downto 0);
        when X"33c" => reg31(5 downto 0) <= sys_Di(5 downto 0);
     when X"33e" => reg32(5 downto 0) <= sys_Di(5 downto 0);
        when others => null;
      end case;   
           end if;
         end if;
  end process;
  
  process(clk)
   begin
      if(rising_edge(clk))then
      if(WE='1') and (CS='0') then   
               case Adr(11 downto 0) is
           when X"340" => reg33(5 downto 0) <= sys_Di(5 downto 0);
           when X"342" => reg34(5 downto 0) <= sys_Di(5 downto 0);
        when X"344" => reg35(5 downto 0) <= sys_Di(5 downto 0);
     when X"346" => reg36(5 downto 0) <= sys_Di(5 downto 0);
     when X"348" => reg37(5 downto 0) <= sys_Di(5 downto 0);
     when X"34a" => reg38(5 downto 0) <= sys_Di(5 downto 0);
        when X"34c" => reg39(5 downto 0) <= sys_Di(5 downto 0);
     when X"34e" => reg40(5 downto 0) <= sys_Di(5 downto 0);
        when others => null;
      end case;   
           end if;
         end if;
  end process;
  
  process(clk)
   begin
      if(rising_edge(clk))then
      if(WE='1') and (CS='0') then   
               case Adr(11 downto 0) is
           when X"350" => reg41(5 downto 0) <= sys_Di(5 downto 0);
           when X"352" => reg42(5 downto 0) <= sys_Di(5 downto 0);
        when X"354" => reg43(5 downto 0) <= sys_Di(5 downto 0);
     when X"356" => reg44(5 downto 0) <= sys_Di(5 downto 0);
     when X"358" => reg45(5 downto 0) <= sys_Di(5 downto 0);
     when X"35a" => reg46(5 downto 0) <= sys_Di(5 downto 0);
        when X"35c" => reg47(5 downto 0) <= sys_Di(5 downto 0);
     when X"35e" => reg48(5 downto 0) <= sys_Di(5 downto 0);
        when others => null;
      end case;   
           end if;
         end if;
  end process;
  
  process(clk)
   begin
      if(rising_edge(clk))then
      if(WE='1') and (CS='0') then   
               case Adr(11 downto 0) is
           when X"360" => reg49(5 downto 0) <= sys_Di(5 downto 0);
           when X"362" => reg50(5 downto 0) <= sys_Di(5 downto 0);
        when X"364" => reg51(5 downto 0) <= sys_Di(5 downto 0);
     when X"366" => reg52(5 downto 0) <= sys_Di(5 downto 0);
     when X"368" => reg53(5 downto 0) <= sys_Di(5 downto 0);
     when X"36a" => reg54(5 downto 0) <= sys_Di(5 downto 0);
        when X"36c" => reg55(5 downto 0) <= sys_Di(5 downto 0);
     when X"36e" => reg56(5 downto 0) <= sys_Di(5 downto 0);
        when others => null;
      end case;   
           end if;
         end if;
  end process;
  
  process(clk)
   begin
      if(rising_edge(clk))then
      if(WE='1') and (CS='0') then   
               case Adr(11 downto 0) is
           when X"370" => reg57(5 downto 0) <= sys_Di(5 downto 0);
           when X"372" => reg58(5 downto 0) <= sys_Di(5 downto 0);
        when X"374" => reg59(5 downto 0) <= sys_Di(5 downto 0);
     when X"376" => reg60(5 downto 0) <= sys_Di(5 downto 0);
     when X"378" => reg61(5 downto 0) <= sys_Di(5 downto 0);
     when X"37a" => reg62(5 downto 0) <= sys_Di(5 downto 0);
        when X"37c" => reg63(5 downto 0) <= sys_Di(5 downto 0);
     when X"37e" => reg64(5 downto 0) <= sys_Di(5 downto 0);
        when others => null;
      end case;   
           end if;
         end if;
  end process;
  
  
       process(reg1)
    begin
         case reg1 is
          when "000000" =>  cout(0) <= datain(0) ;
    when "000001" =>  cout(0) <= datain(1) ;
    when "000010" =>  cout(0) <= datain(2) ;
    when "000011" =>  cout(0) <= datain(3) ;
    when "000100" =>  cout(0) <= datain(4) ;
    when "000101" =>  cout(0) <= datain(5) ;
    when "000110" =>  cout(0) <= datain(6) ;
    when "000111" =>  cout(0) <= datain(7) ;
    when "001000" =>  cout(0) <= datain(8) ;
    when "001001" =>  cout(0) <= datain(9) ;
    when "001010" =>  cout(0) <= datain(10) ;
    when "001011" =>  cout(0) <= datain(11) ;
    when "001100" =>  cout(0) <= datain(12) ;
    when "001101" =>  cout(0) <= datain(13) ;
    when "001110" =>  cout(0) <= datain(14) ;
    when "001111" =>  cout(0) <= datain(15) ;
    when "010000" =>  cout(0) <= datain(16) ;
    when "010001" =>  cout(0) <= datain(17) ;
    when "010010" =>  cout(0) <= datain(18) ;
    when "010011" =>  cout(0) <= datain(19) ;
    when "010100" =>  cout(0) <= datain(20) ;
    when "010101" =>  cout(0) <= datain(21) ;
    when "010110" =>  cout(0) <= datain(22) ;
    when "010111" =>  cout(0) <= datain(23) ;
    when "011000" =>  cout(0) <= datain(24) ;
    when "011001" =>  cout(0) <= datain(25) ;
    when "011010" =>  cout(0) <= datain(26) ;
    when "011011" =>  cout(0) <= datain(27) ;
    when "011100" =>  cout(0) <= datain(28) ;
    when "011101" =>  cout(0) <= datain(29) ;
    when "011110" =>  cout(0) <= datain(30) ;
    when "011111" =>  cout(0) <= datain(31) ;
    when "100000" =>  cout(0) <= datain(32) ;
    when "100001" =>  cout(0) <= datain(33) ;
    when "100010" =>  cout(0) <= datain(34) ;
    when "100011" =>  cout(0) <= datain(35) ;
    when "100100" =>  cout(0) <= datain(36) ;
    when "100101" =>  cout(0) <= datain(37) ;
    when "100110" =>  cout(0) <= datain(38) ;
    when "100111" =>  cout(0) <= datain(39) ;
    when "101000" =>  cout(0) <= datain(40) ;
    when "101001" =>  cout(0) <= datain(41) ;
    when "101010" =>  cout(0) <= datain(42) ;
    when "101011" =>  cout(0) <= datain(43) ;
    when "101100" =>  cout(0) <= datain(44) ;
    when "101101" =>  cout(0) <= datain(45) ;
    when "101110" =>  cout(0) <= datain(46) ;
    when "101111" =>  cout(0) <= datain(47) ;
    when "110000" =>  cout(0) <= datain(48) ;
    when "110001" =>  cout(0) <= datain(49) ;
    when "110010" =>  cout(0) <= datain(50) ;
    when "110011" =>  cout(0) <= datain(51) ;
    when "110100" =>  cout(0) <= datain(52) ;
    when "110101" =>  cout(0) <= datain(53) ;
    when "110110" =>  cout(0) <= datain(54) ;
    when "110111" =>  cout(0) <= datain(55) ;
    when "111000" =>  cout(0) <= datain(56) ;
    when "111001" =>  cout(0) <= datain(57) ;
    when "111010" =>  cout(0) <= datain(58) ;
    when "111011" =>  cout(0) <= datain(59) ;
    when "111100" =>  cout(0) <= datain(60) ;
    when "111101" =>  cout(0) <= datain(61) ;
    when "111110" =>  cout(0) <= datain(62) ;
    when "111111" =>  cout(0) <= datain(63) ;
    when others   =>  cout(0) <= 'Z';
   end case;
  end process;
  
  
  process(reg2)
    begin
         case reg2 is
          when "000000" =>  cout(1) <= datain(0) ;
    when "000001" =>  cout(1) <= datain(1) ;
    when "000010" =>  cout(1) <= datain(2) ;
    when "000011" =>  cout(1) <= datain(3) ;
    when "000100" =>  cout(1) <= datain(4) ;
    when "000101" =>  cout(1) <= datain(5) ;
    when "000110" =>  cout(1) <= datain(6) ;
    when "000111" =>  cout(1) <= datain(7) ;
    when "001000" =>  cout(1) <= datain(8) ;
    when "001001" =>  cout(1) <= datain(9) ;
    when "001010" =>  cout(1) <= datain(10) ;
    when "001011" =>  cout(1) <= datain(11) ;
    when "001100" =>  cout(1) <= datain(12) ;
    when "001101" =>  cout(1) <= datain(13) ;
    when "001110" =>  cout(1) <= datain(14) ;
    when "001111" =>  cout(1) <= datain(15) ;
    when "010000" =>  cout(1) <= datain(16) ;
    when "010001" =>  cout(1) <= datain(17) ;
    when "010010" =>  cout(1) <= datain(18) ;
    when "010011" =>  cout(1) <= datain(19) ;
    when "010100" =>  cout(1) <= datain(20) ;
    when "010101" =>  cout(1) <= datain(21) ;
    when "010110" =>  cout(1) <= datain(22) ;
    when "010111" =>  cout(1) <= datain(23) ;
    when "011000" =>  cout(1) <= datain(24) ;
    when "011001" =>  cout(1) <= datain(25) ;
    when "011010" =>  cout(1) <= datain(26) ;
    when "011011" =>  cout(1) <= datain(27) ;
    when "011100" =>  cout(1) <= datain(28) ;
    when "011101" =>  cout(1) <= datain(29) ;
    when "011110" =>  cout(1) <= datain(30) ;
    when "011111" =>  cout(1) <= datain(31) ;
    when "100000" =>  cout(1) <= datain(32) ;
    when "100001" =>  cout(1) <= datain(33) ;
    when "100010" =>  cout(1) <= datain(34) ;
    when "100011" =>  cout(1) <= datain(35) ;
    when "100100" =>  cout(1) <= datain(36) ;
    when "100101" =>  cout(1) <= datain(37) ;
    when "100110" =>  cout(1) <= datain(38) ;
    when "100111" =>  cout(1) <= datain(39) ;
    when "101000" =>  cout(1) <= datain(40) ;
    when "101001" =>  cout(1) <= datain(41) ;
    when "101010" =>  cout(1) <= datain(42) ;
    when "101011" =>  cout(1) <= datain(43) ;
    when "101100" =>  cout(1) <= datain(44) ;
    when "101101" =>  cout(1) <= datain(45) ;
    when "101110" =>  cout(1) <= datain(46) ;
    when "101111" =>  cout(1) <= datain(47) ;
    when "110000" =>  cout(1) <= datain(48) ;
    when "110001" =>  cout(1) <= datain(49) ;
    when "110010" =>  cout(1) <= datain(50) ;
    when "110011" =>  cout(1) <= datain(51) ;
    when "110100" =>  cout(1) <= datain(52) ;
    when "110101" =>  cout(1) <= datain(53) ;
    when "110110" =>  cout(1) <= datain(54) ;
    when "110111" =>  cout(1) <= datain(55) ;
    when "111000" =>  cout(1) <= datain(56) ;
    when "111001" =>  cout(1) <= datain(57) ;
    when "111010" =>  cout(1) <= datain(58) ;
    when "111011" =>  cout(1) <= datain(59) ;
    when "111100" =>  cout(1) <= datain(60) ;
    when "111101" =>  cout(1) <= datain(61) ;
    when "111110" =>  cout(1) <= datain(62) ;
    when "111111" =>  cout(1) <= datain(63) ;
    when others   =>  cout(1) <= 'Z';
   end case;
  end process;
  
  
  process(reg3)
    begin
         case reg3 is
          when "000000" =>  cout(2) <= datain(0) ;
    when "000001" =>  cout(2) <= datain(1) ;
    when "000010" =>  cout(2) <= datain(2) ;
    when "000011" =>  cout(2) <= datain(3) ;
    when "000100" =>  cout(2) <= datain(4) ;
    when "000101" =>  cout(2) <= datain(5) ;
    when "000110" =>  cout(2) <= datain(6) ;
    when "000111" =>  cout(2) <= datain(7) ;
    when "001000" =>  cout(2) <= datain(8) ;
    when "001001" =>  cout(2) <= datain(9) ;
    when "001010" =>  cout(2) <= datain(10) ;
    when "001011" =>  cout(2) <= datain(11) ;
    when "001100" =>  cout(2) <= datain(12) ;
    when "001101" =>  cout(2) <= datain(13) ;
    when "001110" =>  cout(2) <= datain(14) ;
    when "001111" =>  cout(2) <= datain(15) ;
    when "010000" =>  cout(2) <= datain(16) ;
    when "010001" =>  cout(2) <= datain(17) ;
    when "010010" =>  cout(2) <= datain(18) ;
    when "010011" =>  cout(2) <= datain(19) ;
    when "010100" =>  cout(2) <= datain(20) ;
    when "010101" =>  cout(2) <= datain(21) ;
    when "010110" =>  cout(2) <= datain(22) ;
    when "010111" =>  cout(2) <= datain(23) ;
    when "011000" =>  cout(2) <= datain(24) ;
    when "011001" =>  cout(2) <= datain(25) ;
    when "011010" =>  cout(2) <= datain(26) ;
    when "011011" =>  cout(2) <= datain(27) ;
    when "011100" =>  cout(2) <= datain(28) ;
    when "011101" =>  cout(2) <= datain(29) ;
    when "011110" =>  cout(2) <= datain(30) ;
    when "011111" =>  cout(2) <= datain(31) ;
    when "100000" =>  cout(2) <= datain(32) ;
    when "100001" =>  cout(2) <= datain(33) ;
    when "100010" =>  cout(2) <= datain(34) ;
    when "100011" =>  cout(2) <= datain(35) ;
    when "100100" =>  cout(2) <= datain(36) ;
    when "100101" =>  cout(2) <= datain(37) ;
    when "100110" =>  cout(2) <= datain(38) ;
    when "100111" =>  cout(2) <= datain(39) ;
    when "101000" =>  cout(2) <= datain(40) ;
    when "101001" =>  cout(2) <= datain(41) ;
    when "101010" =>  cout(2) <= datain(42) ;
    when "101011" =>  cout(2) <= datain(43) ;
    when "101100" =>  cout(2) <= datain(44) ;
    when "101101" =>  cout(2) <= datain(45) ;
    when "101110" =>  cout(2) <= datain(46) ;
    when "101111" =>  cout(2) <= datain(47) ;
    when "110000" =>  cout(2) <= datain(48) ;
    when "110001" =>  cout(2) <= datain(49) ;
    when "110010" =>  cout(2) <= datain(50) ;
    when "110011" =>  cout(2) <= datain(51) ;
    when "110100" =>  cout(2) <= datain(52) ;
    when "110101" =>  cout(2) <= datain(53) ;
    when "110110" =>  cout(2) <= datain(54) ;
    when "110111" =>  cout(2) <= datain(55) ;
    when "111000" =>  cout(2) <= datain(56) ;
    when "111001" =>  cout(2) <= datain(57) ;
    when "111010" =>  cout(2) <= datain(58) ;
    when "111011" =>  cout(2) <= datain(59) ;
    when "111100" =>  cout(2) <= datain(60) ;
    when "111101" =>  cout(2) <= datain(61) ;
    when "111110" =>  cout(2) <= datain(62) ;
    when "111111" =>  cout(2) <= datain(63) ;
    when others   =>  cout(2) <= 'Z';
   end case;
  end process;
  
  
  process(reg4)
    begin
         case reg4 is
          when "000000" =>  cout(3) <= datain(0) ;
    when "000001" =>  cout(3) <= datain(1) ;
    when "000010" =>  cout(3) <= datain(2) ;
    when "000011" =>  cout(3) <= datain(3) ;
    when "000100" =>  cout(3) <= datain(4) ;
    when "000101" =>  cout(3) <= datain(5) ;
    when "000110" =>  cout(3) <= datain(6) ;
    when "000111" =>  cout(3) <= datain(7) ;
    when "001000" =>  cout(3) <= datain(8) ;
    when "001001" =>  cout(3) <= datain(9) ;
    when "001010" =>  cout(3) <= datain(10) ;
    when "001011" =>  cout(3) <= datain(11) ;
    when "001100" =>  cout(3) <= datain(12) ;
    when "001101" =>  cout(3) <= datain(13) ;
    when "001110" =>  cout(3) <= datain(14) ;
    when "001111" =>  cout(3) <= datain(15) ;
    when "010000" =>  cout(3) <= datain(16) ;
    when "010001" =>  cout(3) <= datain(17) ;
    when "010010" =>  cout(3) <= datain(18) ;
    when "010011" =>  cout(3) <= datain(19) ;
    when "010100" =>  cout(3) <= datain(20) ;
    when "010101" =>  cout(3) <= datain(21) ;
    when "010110" =>  cout(3) <= datain(22) ;
    when "010111" =>  cout(3) <= datain(23) ;
    when "011000" =>  cout(3) <= datain(24) ;
    when "011001" =>  cout(3) <= datain(25) ;
    when "011010" =>  cout(3) <= datain(26) ;
    when "011011" =>  cout(3) <= datain(27) ;
    when "011100" =>  cout(3) <= datain(28) ;
    when "011101" =>  cout(3) <= datain(29) ;
    when "011110" =>  cout(3) <= datain(30) ;
    when "011111" =>  cout(3) <= datain(31) ;
    when "100000" =>  cout(3) <= datain(32) ;
    when "100001" =>  cout(3) <= datain(33) ;
    when "100010" =>  cout(3) <= datain(34) ;
    when "100011" =>  cout(3) <= datain(35) ;
    when "100100" =>  cout(3) <= datain(36) ;
    when "100101" =>  cout(3) <= datain(37) ;
    when "100110" =>  cout(3) <= datain(38) ;
    when "100111" =>  cout(3) <= datain(39) ;
    when "101000" =>  cout(3) <= datain(40) ;
    when "101001" =>  cout(3) <= datain(41) ;
    when "101010" =>  cout(3) <= datain(42) ;
    when "101011" =>  cout(3) <= datain(43) ;
    when "101100" =>  cout(3) <= datain(44) ;
    when "101101" =>  cout(3) <= datain(45) ;
    when "101110" =>  cout(3) <= datain(46) ;
    when "101111" =>  cout(3) <= datain(47) ;
    when "110000" =>  cout(3) <= datain(48) ;
    when "110001" =>  cout(3) <= datain(49) ;
    when "110010" =>  cout(3) <= datain(50) ;
    when "110011" =>  cout(3) <= datain(51) ;
    when "110100" =>  cout(3) <= datain(52) ;
    when "110101" =>  cout(3) <= datain(53) ;
    when "110110" =>  cout(3) <= datain(54) ;
    when "110111" =>  cout(3) <= datain(55) ;
    when "111000" =>  cout(3) <= datain(56) ;
    when "111001" =>  cout(3) <= datain(57) ;
    when "111010" =>  cout(3) <= datain(58) ;
    when "111011" =>  cout(3) <= datain(59) ;
    when "111100" =>  cout(3) <= datain(60) ;
    when "111101" =>  cout(3) <= datain(61) ;
    when "111110" =>  cout(3) <= datain(62) ;
    when "111111" =>  cout(3) <= datain(63) ;
    when others   =>  cout(3) <= 'Z';
   end case;
  end process;
  
  
  process(reg5)
    begin
         case reg5 is
          when "000000" =>  cout(4) <= datain(0) ;
    when "000001" =>  cout(4) <= datain(1) ;
    when "000010" =>  cout(4) <= datain(2) ;
    when "000011" =>  cout(4) <= datain(3) ;
    when "000100" =>  cout(4) <= datain(4) ;
    when "000101" =>  cout(4) <= datain(5) ;
    when "000110" =>  cout(4) <= datain(6) ;
    when "000111" =>  cout(4) <= datain(7) ;
    when "001000" =>  cout(4) <= datain(8) ;
    when "001001" =>  cout(4) <= datain(9) ;
    when "001010" =>  cout(4) <= datain(10) ;
    when "001011" =>  cout(4) <= datain(11) ;
    when "001100" =>  cout(4) <= datain(12) ;
    when "001101" =>  cout(4) <= datain(13) ;
    when "001110" =>  cout(4) <= datain(14) ;
    when "001111" =>  cout(4) <= datain(15) ;
    when "010000" =>  cout(4) <= datain(16) ;
    when "010001" =>  cout(4) <= datain(17) ;
    when "010010" =>  cout(4) <= datain(18) ;
    when "010011" =>  cout(4) <= datain(19) ;
    when "010100" =>  cout(4) <= datain(20) ;
    when "010101" =>  cout(4) <= datain(21) ;
    when "010110" =>  cout(4) <= datain(22) ;
    when "010111" =>  cout(4) <= datain(23) ;
    when "011000" =>  cout(4) <= datain(24) ;
    when "011001" =>  cout(4) <= datain(25) ;
    when "011010" =>  cout(4) <= datain(26) ;
    when "011011" =>  cout(4) <= datain(27) ;
    when "011100" =>  cout(4) <= datain(28) ;
    when "011101" =>  cout(4) <= datain(29) ;
    when "011110" =>  cout(4) <= datain(30) ;
    when "011111" =>  cout(4) <= datain(31) ;
    when "100000" =>  cout(4) <= datain(32) ;
    when "100001" =>  cout(4) <= datain(33) ;
    when "100010" =>  cout(4) <= datain(34) ;
    when "100011" =>  cout(4) <= datain(35) ;
    when "100100" =>  cout(4) <= datain(36) ;
    when "100101" =>  cout(4) <= datain(37) ;
    when "100110" =>  cout(4) <= datain(38) ;
    when "100111" =>  cout(4) <= datain(39) ;
    when "101000" =>  cout(4) <= datain(40) ;
    when "101001" =>  cout(4) <= datain(41) ;
    when "101010" =>  cout(4) <= datain(42) ;
    when "101011" =>  cout(4) <= datain(43) ;
    when "101100" =>  cout(4) <= datain(44) ;
    when "101101" =>  cout(4) <= datain(45) ;
    when "101110" =>  cout(4) <= datain(46) ;
    when "101111" =>  cout(4) <= datain(47) ;
    when "110000" =>  cout(4) <= datain(48) ;
    when "110001" =>  cout(4) <= datain(49) ;
    when "110010" =>  cout(4) <= datain(50) ;
    when "110011" =>  cout(4) <= datain(51) ;
    when "110100" =>  cout(4) <= datain(52) ;
    when "110101" =>  cout(4) <= datain(53) ;
    when "110110" =>  cout(4) <= datain(54) ;
    when "110111" =>  cout(4) <= datain(55) ;
    when "111000" =>  cout(4) <= datain(56) ;
    when "111001" =>  cout(4) <= datain(57) ;
    when "111010" =>  cout(4) <= datain(58) ;
    when "111011" =>  cout(4) <= datain(59) ;
    when "111100" =>  cout(4) <= datain(60) ;
    when "111101" =>  cout(4) <= datain(61) ;
    when "111110" =>  cout(4) <= datain(62) ;
    when "111111" =>  cout(4) <= datain(63) ;
    when others   =>  cout(4) <= 'Z';
   end case;
  end process;
  
  
  process(reg6)
    begin
         case reg6 is
          when "000000" =>  cout(5) <= datain(0) ;
    when "000001" =>  cout(5) <= datain(1) ;
    when "000010" =>  cout(5) <= datain(2) ;
    when "000011" =>  cout(5) <= datain(3) ;
    when "000100" =>  cout(5) <= datain(4) ;
    when "000101" =>  cout(5) <= datain(5) ;
    when "000110" =>  cout(5) <= datain(6) ;
    when "000111" =>  cout(5) <= datain(7) ;
    when "001000" =>  cout(5) <= datain(8) ;
    when "001001" =>  cout(5) <= datain(9) ;
    when "001010" =>  cout(5) <= datain(10) ;
    when "001011" =>  cout(5) <= datain(11) ;
    when "001100" =>  cout(5) <= datain(12) ;
    when "001101" =>  cout(5) <= datain(13) ;
    when "001110" =>  cout(5) <= datain(14) ;
    when "001111" =>  cout(5) <= datain(15) ;
    when "010000" =>  cout(5) <= datain(16) ;
    when "010001" =>  cout(5) <= datain(17) ;
    when "010010" =>  cout(5) <= datain(18) ;
    when "010011" =>  cout(5) <= datain(19) ;
    when "010100" =>  cout(5) <= datain(20) ;
    when "010101" =>  cout(5) <= datain(21) ;
    when "010110" =>  cout(5) <= datain(22) ;
    when "010111" =>  cout(5) <= datain(23) ;
    when "011000" =>  cout(5) <= datain(24) ;
    when "011001" =>  cout(5) <= datain(25) ;
    when "011010" =>  cout(5) <= datain(26) ;
    when "011011" =>  cout(5) <= datain(27) ;
    when "011100" =>  cout(5) <= datain(28) ;
    when "011101" =>  cout(5) <= datain(29) ;
    when "011110" =>  cout(5) <= datain(30) ;
    when "011111" =>  cout(5) <= datain(31) ;
    when "100000" =>  cout(5) <= datain(32) ;
    when "100001" =>  cout(5) <= datain(33) ;
    when "100010" =>  cout(5) <= datain(34) ;
    when "100011" =>  cout(5) <= datain(35) ;
    when "100100" =>  cout(5) <= datain(36) ;
    when "100101" =>  cout(5) <= datain(37) ;
    when "100110" =>  cout(5) <= datain(38) ;
    when "100111" =>  cout(5) <= datain(39) ;
    when "101000" =>  cout(5) <= datain(40) ;
    when "101001" =>  cout(5) <= datain(41) ;
    when "101010" =>  cout(5) <= datain(42) ;
    when "101011" =>  cout(5) <= datain(43) ;
    when "101100" =>  cout(5) <= datain(44) ;
    when "101101" =>  cout(5) <= datain(45) ;
    when "101110" =>  cout(5) <= datain(46) ;
    when "101111" =>  cout(5) <= datain(47) ;
    when "110000" =>  cout(5) <= datain(48) ;
    when "110001" =>  cout(5) <= datain(49) ;
    when "110010" =>  cout(5) <= datain(50) ;
    when "110011" =>  cout(5) <= datain(51) ;
    when "110100" =>  cout(5) <= datain(52) ;
    when "110101" =>  cout(5) <= datain(53) ;
    when "110110" =>  cout(5) <= datain(54) ;
    when "110111" =>  cout(5) <= datain(55) ;
    when "111000" =>  cout(5) <= datain(56) ;
    when "111001" =>  cout(5) <= datain(57) ;
    when "111010" =>  cout(5) <= datain(58) ;
    when "111011" =>  cout(5) <= datain(59) ;
    when "111100" =>  cout(5) <= datain(60) ;
    when "111101" =>  cout(5) <= datain(61) ;
    when "111110" =>  cout(5) <= datain(62) ;
    when "111111" =>  cout(5) <= datain(63) ;
    when others   =>  cout(5) <= 'Z';
   end case;
  end process;
  
  
  process(reg7)
    begin
         case reg7 is
          when "000000" =>  cout(6) <= datain(0) ;
    when "000001" =>  cout(6) <= datain(1) ;
    when "000010" =>  cout(6) <= datain(2) ;
    when "000011" =>  cout(6) <= datain(3) ;
    when "000100" =>  cout(6) <= datain(4) ;
    when "000101" =>  cout(6) <= datain(5) ;
    when "000110" =>  cout(6) <= datain(6) ;
    when "000111" =>  cout(6) <= datain(7) ;
    when "001000" =>  cout(6) <= datain(8) ;
    when "001001" =>  cout(6) <= datain(9) ;
    when "001010" =>  cout(6) <= datain(10) ;
    when "001011" =>  cout(6) <= datain(11) ;
    when "001100" =>  cout(6) <= datain(12) ;
    when "001101" =>  cout(6) <= datain(13) ;
    when "001110" =>  cout(6) <= datain(14) ;
    when "001111" =>  cout(6) <= datain(15) ;
    when "010000" =>  cout(6) <= datain(16) ;
    when "010001" =>  cout(6) <= datain(17) ;
    when "010010" =>  cout(6) <= datain(18) ;
    when "010011" =>  cout(6) <= datain(19) ;
    when "010100" =>  cout(6) <= datain(20) ;
    when "010101" =>  cout(6) <= datain(21) ;
    when "010110" =>  cout(6) <= datain(22) ;
    when "010111" =>  cout(6) <= datain(23) ;
    when "011000" =>  cout(6) <= datain(24) ;
    when "011001" =>  cout(6) <= datain(25) ;
    when "011010" =>  cout(6) <= datain(26) ;
    when "011011" =>  cout(6) <= datain(27) ;
    when "011100" =>  cout(6) <= datain(28) ;
    when "011101" =>  cout(6) <= datain(29) ;
    when "011110" =>  cout(6) <= datain(30) ;
    when "011111" =>  cout(6) <= datain(31) ;
    when "100000" =>  cout(6) <= datain(32) ;
    when "100001" =>  cout(6) <= datain(33) ;
    when "100010" =>  cout(6) <= datain(34) ;
    when "100011" =>  cout(6) <= datain(35) ;
    when "100100" =>  cout(6) <= datain(36) ;
    when "100101" =>  cout(6) <= datain(37) ;
    when "100110" =>  cout(6) <= datain(38) ;
    when "100111" =>  cout(6) <= datain(39) ;
    when "101000" =>  cout(6) <= datain(40) ;
    when "101001" =>  cout(6) <= datain(41) ;
    when "101010" =>  cout(6) <= datain(42) ;
    when "101011" =>  cout(6) <= datain(43) ;
    when "101100" =>  cout(6) <= datain(44) ;
    when "101101" =>  cout(6) <= datain(45) ;
    when "101110" =>  cout(6) <= datain(46) ;
    when "101111" =>  cout(6) <= datain(47) ;
    when "110000" =>  cout(6) <= datain(48) ;
    when "110001" =>  cout(6) <= datain(49) ;
    when "110010" =>  cout(6) <= datain(50) ;
    when "110011" =>  cout(6) <= datain(51) ;
    when "110100" =>  cout(6) <= datain(52) ;
    when "110101" =>  cout(6) <= datain(53) ;
    when "110110" =>  cout(6) <= datain(54) ;
    when "110111" =>  cout(6) <= datain(55) ;
    when "111000" =>  cout(6) <= datain(56) ;
    when "111001" =>  cout(6) <= datain(57) ;
    when "111010" =>  cout(6) <= datain(58) ;
    when "111011" =>  cout(6) <= datain(59) ;
    when "111100" =>  cout(6) <= datain(60) ;
    when "111101" =>  cout(6) <= datain(61) ;
    when "111110" =>  cout(6) <= datain(62) ;
    when "111111" =>  cout(6) <= datain(63) ;
    when others   =>  cout(6) <= 'Z';
   end case;
  end process;
  
  
  process(reg8)
    begin
         case reg8 is
          when "000000" =>  cout(7) <= datain(0) ;
    when "000001" =>  cout(7) <= datain(1) ;
    when "000010" =>  cout(7) <= datain(2) ;
    when "000011" =>  cout(7) <= datain(3) ;
    when "000100" =>  cout(7) <= datain(4) ;
    when "000101" =>  cout(7) <= datain(5) ;
    when "000110" =>  cout(7) <= datain(6) ;
    when "000111" =>  cout(7) <= datain(7) ;
    when "001000" =>  cout(7) <= datain(8) ;
    when "001001" =>  cout(7) <= datain(9) ;
    when "001010" =>  cout(7) <= datain(10) ;
    when "001011" =>  cout(7) <= datain(11) ;
    when "001100" =>  cout(7) <= datain(12) ;
    when "001101" =>  cout(7) <= datain(13) ;
    when "001110" =>  cout(7) <= datain(14) ;
    when "001111" =>  cout(7) <= datain(15) ;
    when "010000" =>  cout(7) <= datain(16) ;
    when "010001" =>  cout(7) <= datain(17) ;
    when "010010" =>  cout(7) <= datain(18) ;
    when "010011" =>  cout(7) <= datain(19) ;
    when "010100" =>  cout(7) <= datain(20) ;
    when "010101" =>  cout(7) <= datain(21) ;
    when "010110" =>  cout(7) <= datain(22) ;
    when "010111" =>  cout(7) <= datain(23) ;
    when "011000" =>  cout(7) <= datain(24) ;
    when "011001" =>  cout(7) <= datain(25) ;
    when "011010" =>  cout(7) <= datain(26) ;
    when "011011" =>  cout(7) <= datain(27) ;
    when "011100" =>  cout(7) <= datain(28) ;
    when "011101" =>  cout(7) <= datain(29) ;
    when "011110" =>  cout(7) <= datain(30) ;
    when "011111" =>  cout(7) <= datain(31) ;
    when "100000" =>  cout(7) <= datain(32) ;
    when "100001" =>  cout(7) <= datain(33) ;
    when "100010" =>  cout(7) <= datain(34) ;
    when "100011" =>  cout(7) <= datain(35) ;
    when "100100" =>  cout(7) <= datain(36) ;
    when "100101" =>  cout(7) <= datain(37) ;
    when "100110" =>  cout(7) <= datain(38) ;
    when "100111" =>  cout(7) <= datain(39) ;
    when "101000" =>  cout(7) <= datain(40) ;
    when "101001" =>  cout(7) <= datain(41) ;
    when "101010" =>  cout(7) <= datain(42) ;
    when "101011" =>  cout(7) <= datain(43) ;
    when "101100" =>  cout(7) <= datain(44) ;
    when "101101" =>  cout(7) <= datain(45) ;
    when "101110" =>  cout(7) <= datain(46) ;
    when "101111" =>  cout(7) <= datain(47) ;
    when "110000" =>  cout(7) <= datain(48) ;
    when "110001" =>  cout(7) <= datain(49) ;
    when "110010" =>  cout(7) <= datain(50) ;
    when "110011" =>  cout(7) <= datain(51) ;
    when "110100" =>  cout(7) <= datain(52) ;
    when "110101" =>  cout(7) <= datain(53) ;
    when "110110" =>  cout(7) <= datain(54) ;
    when "110111" =>  cout(7) <= datain(55) ;
    when "111000" =>  cout(7) <= datain(56) ;
    when "111001" =>  cout(7) <= datain(57) ;
    when "111010" =>  cout(7) <= datain(58) ;
    when "111011" =>  cout(7) <= datain(59) ;
    when "111100" =>  cout(7) <= datain(60) ;
    when "111101" =>  cout(7) <= datain(61) ;
    when "111110" =>  cout(7) <= datain(62) ;
    when "111111" =>  cout(7) <= datain(63) ;
    when others   =>  cout(7) <= 'Z';
   end case;
  end process;
  
  
  process(reg9)
    begin
         case reg9 is
          when "000000" =>  cout(8) <= datain(0) ;
    when "000001" =>  cout(8) <= datain(1) ;
    when "000010" =>  cout(8) <= datain(2) ;
    when "000011" =>  cout(8) <= datain(3) ;
    when "000100" =>  cout(8) <= datain(4) ;
    when "000101" =>  cout(8) <= datain(5) ;
    when "000110" =>  cout(8) <= datain(6) ;
    when "000111" =>  cout(8) <= datain(7) ;
    when "001000" =>  cout(8) <= datain(8) ;
    when "001001" =>  cout(8) <= datain(9) ;
    when "001010" =>  cout(8) <= datain(10) ;
    when "001011" =>  cout(8) <= datain(11) ;
    when "001100" =>  cout(8) <= datain(12) ;
    when "001101" =>  cout(8) <= datain(13) ;
    when "001110" =>  cout(8) <= datain(14) ;
    when "001111" =>  cout(8) <= datain(15) ;
    when "010000" =>  cout(8) <= datain(16) ;
    when "010001" =>  cout(8) <= datain(17) ;
    when "010010" =>  cout(8) <= datain(18) ;
    when "010011" =>  cout(8) <= datain(19) ;
    when "010100" =>  cout(8) <= datain(20) ;
    when "010101" =>  cout(8) <= datain(21) ;
    when "010110" =>  cout(8) <= datain(22) ;
    when "010111" =>  cout(8) <= datain(23) ;
    when "011000" =>  cout(8) <= datain(24) ;
    when "011001" =>  cout(8) <= datain(25) ;
    when "011010" =>  cout(8) <= datain(26) ;
    when "011011" =>  cout(8) <= datain(27) ;
    when "011100" =>  cout(8) <= datain(28) ;
    when "011101" =>  cout(8) <= datain(29) ;
    when "011110" =>  cout(8) <= datain(30) ;
    when "011111" =>  cout(8) <= datain(31) ;
    when "100000" =>  cout(8) <= datain(32) ;
    when "100001" =>  cout(8) <= datain(33) ;
    when "100010" =>  cout(8) <= datain(34) ;
    when "100011" =>  cout(8) <= datain(35) ;
    when "100100" =>  cout(8) <= datain(36) ;
    when "100101" =>  cout(8) <= datain(37) ;
    when "100110" =>  cout(8) <= datain(38) ;
    when "100111" =>  cout(8) <= datain(39) ;
    when "101000" =>  cout(8) <= datain(40) ;
    when "101001" =>  cout(8) <= datain(41) ;
    when "101010" =>  cout(8) <= datain(42) ;
    when "101011" =>  cout(8) <= datain(43) ;
    when "101100" =>  cout(8) <= datain(44) ;
    when "101101" =>  cout(8) <= datain(45) ;
    when "101110" =>  cout(8) <= datain(46) ;
    when "101111" =>  cout(8) <= datain(47) ;
    when "110000" =>  cout(8) <= datain(48) ;
    when "110001" =>  cout(8) <= datain(49) ;
    when "110010" =>  cout(8) <= datain(50) ;
    when "110011" =>  cout(8) <= datain(51) ;
    when "110100" =>  cout(8) <= datain(52) ;
    when "110101" =>  cout(8) <= datain(53) ;
    when "110110" =>  cout(8) <= datain(54) ;
    when "110111" =>  cout(8) <= datain(55) ;
    when "111000" =>  cout(8) <= datain(56) ;
    when "111001" =>  cout(8) <= datain(57) ;
    when "111010" =>  cout(8) <= datain(58) ;
    when "111011" =>  cout(8) <= datain(59) ;
    when "111100" =>  cout(8) <= datain(60) ;
    when "111101" =>  cout(8) <= datain(61) ;
    when "111110" =>  cout(8) <= datain(62) ;
    when "111111" =>  cout(8) <= datain(63) ;
    when others   =>  cout(8) <= 'Z';
   end case;
  end process;
  
  
  process(reg10)
    begin
         case reg10 is
          when "000000" =>  cout(9) <= datain(0) ;
    when "000001" =>  cout(9) <= datain(1) ;
    when "000010" =>  cout(9) <= datain(2) ;
    when "000011" =>  cout(9) <= datain(3) ;
    when "000100" =>  cout(9) <= datain(4) ;
    when "000101" =>  cout(9) <= datain(5) ;
    when "000110" =>  cout(9) <= datain(6) ;
    when "000111" =>  cout(9) <= datain(7) ;
    when "001000" =>  cout(9) <= datain(8) ;
    when "001001" =>  cout(9) <= datain(9) ;
    when "001010" =>  cout(9) <= datain(10) ;
    when "001011" =>  cout(9) <= datain(11) ;
    when "001100" =>  cout(9) <= datain(12) ;
    when "001101" =>  cout(9) <= datain(13) ;
    when "001110" =>  cout(9) <= datain(14) ;
    when "001111" =>  cout(9) <= datain(15) ;
    when "010000" =>  cout(9) <= datain(16) ;
    when "010001" =>  cout(9) <= datain(17) ;
    when "010010" =>  cout(9) <= datain(18) ;
    when "010011" =>  cout(9) <= datain(19) ;
    when "010100" =>  cout(9) <= datain(20) ;
    when "010101" =>  cout(9) <= datain(21) ;
    when "010110" =>  cout(9) <= datain(22) ;
    when "010111" =>  cout(9) <= datain(23) ;
    when "011000" =>  cout(9) <= datain(24) ;
    when "011001" =>  cout(9) <= datain(25) ;
    when "011010" =>  cout(9) <= datain(26) ;
    when "011011" =>  cout(9) <= datain(27) ;
    when "011100" =>  cout(9) <= datain(28) ;
    when "011101" =>  cout(9) <= datain(29) ;
    when "011110" =>  cout(9) <= datain(30) ;
    when "011111" =>  cout(9) <= datain(31) ;
    when "100000" =>  cout(9) <= datain(32) ;
    when "100001" =>  cout(9) <= datain(33) ;
    when "100010" =>  cout(9) <= datain(34) ;
    when "100011" =>  cout(9) <= datain(35) ;
    when "100100" =>  cout(9) <= datain(36) ;
    when "100101" =>  cout(9) <= datain(37) ;
    when "100110" =>  cout(9) <= datain(38) ;
    when "100111" =>  cout(9) <= datain(39) ;
    when "101000" =>  cout(9) <= datain(40) ;
    when "101001" =>  cout(9) <= datain(41) ;
    when "101010" =>  cout(9) <= datain(42) ;
    when "101011" =>  cout(9) <= datain(43) ;
    when "101100" =>  cout(9) <= datain(44) ;
    when "101101" =>  cout(9) <= datain(45) ;
    when "101110" =>  cout(9) <= datain(46) ;
    when "101111" =>  cout(9) <= datain(47) ;
    when "110000" =>  cout(9) <= datain(48) ;
    when "110001" =>  cout(9) <= datain(49) ;
    when "110010" =>  cout(9) <= datain(50) ;
    when "110011" =>  cout(9) <= datain(51) ;
    when "110100" =>  cout(9) <= datain(52) ;
    when "110101" =>  cout(9) <= datain(53) ;
    when "110110" =>  cout(9) <= datain(54) ;
    when "110111" =>  cout(9) <= datain(55) ;
    when "111000" =>  cout(9) <= datain(56) ;
    when "111001" =>  cout(9) <= datain(57) ;
    when "111010" =>  cout(9) <= datain(58) ;
    when "111011" =>  cout(9) <= datain(59) ;
    when "111100" =>  cout(9) <= datain(60) ;
    when "111101" =>  cout(9) <= datain(61) ;
    when "111110" =>  cout(9) <= datain(62) ;
    when "111111" =>  cout(9) <= datain(63) ;
    when others   =>  cout(9) <= 'Z';
   end case;
  end process;
  
  
  process(reg11)
    begin
         case reg11 is
          when "000000" =>  cout(10) <= datain(0) ;
    when "000001" =>  cout(10) <= datain(1) ;
    when "000010" =>  cout(10) <= datain(2) ;
    when "000011" =>  cout(10) <= datain(3) ;
    when "000100" =>  cout(10) <= datain(4) ;
    when "000101" =>  cout(10) <= datain(5) ;
    when "000110" =>  cout(10) <= datain(6) ;
    when "000111" =>  cout(10) <= datain(7) ;
    when "001000" =>  cout(10) <= datain(8) ;
    when "001001" =>  cout(10) <= datain(9) ;
    when "001010" =>  cout(10) <= datain(10) ;
    when "001011" =>  cout(10) <= datain(11) ;
    when "001100" =>  cout(10) <= datain(12) ;
    when "001101" =>  cout(10) <= datain(13) ;
    when "001110" =>  cout(10) <= datain(14) ;
    when "001111" =>  cout(10) <= datain(15) ;
    when "010000" =>  cout(10) <= datain(16) ;
    when "010001" =>  cout(10) <= datain(17) ;
    when "010010" =>  cout(10) <= datain(18) ;
    when "010011" =>  cout(10) <= datain(19) ;
    when "010100" =>  cout(10) <= datain(20) ;
    when "010101" =>  cout(10) <= datain(21) ;
    when "010110" =>  cout(10) <= datain(22) ;
    when "010111" =>  cout(10) <= datain(23) ;
    when "011000" =>  cout(10) <= datain(24) ;
    when "011001" =>  cout(10) <= datain(25) ;
    when "011010" =>  cout(10) <= datain(26) ;
    when "011011" =>  cout(10) <= datain(27) ;
    when "011100" =>  cout(10) <= datain(28) ;
    when "011101" =>  cout(10) <= datain(29) ;
    when "011110" =>  cout(10) <= datain(30) ;
    when "011111" =>  cout(10) <= datain(31) ;
    when "100000" =>  cout(10) <= datain(32) ;
    when "100001" =>  cout(10) <= datain(33) ;
    when "100010" =>  cout(10) <= datain(34) ;
    when "100011" =>  cout(10) <= datain(35) ;
    when "100100" =>  cout(10) <= datain(36) ;
    when "100101" =>  cout(10) <= datain(37) ;
    when "100110" =>  cout(10) <= datain(38) ;
    when "100111" =>  cout(10) <= datain(39) ;
    when "101000" =>  cout(10) <= datain(40) ;
    when "101001" =>  cout(10) <= datain(41) ;
    when "101010" =>  cout(10) <= datain(42) ;
    when "101011" =>  cout(10) <= datain(43) ;
    when "101100" =>  cout(10) <= datain(44) ;
    when "101101" =>  cout(10) <= datain(45) ;
    when "101110" =>  cout(10) <= datain(46) ;
    when "101111" =>  cout(10) <= datain(47) ;
    when "110000" =>  cout(10) <= datain(48) ;
    when "110001" =>  cout(10) <= datain(49) ;
    when "110010" =>  cout(10) <= datain(50) ;
    when "110011" =>  cout(10) <= datain(51) ;
    when "110100" =>  cout(10) <= datain(52) ;
    when "110101" =>  cout(10) <= datain(53) ;
    when "110110" =>  cout(10) <= datain(54) ;
    when "110111" =>  cout(10) <= datain(55) ;
    when "111000" =>  cout(10) <= datain(56) ;
    when "111001" =>  cout(10) <= datain(57) ;
    when "111010" =>  cout(10) <= datain(58) ;
    when "111011" =>  cout(10) <= datain(59) ;
    when "111100" =>  cout(10) <= datain(60) ;
    when "111101" =>  cout(10) <= datain(61) ;
    when "111110" =>  cout(10) <= datain(62) ;
    when "111111" =>  cout(10) <= datain(63) ;
    when others   =>  cout(10) <= 'Z';
   end case;
  end process;
  
  
  process(reg12)
    begin
         case reg12 is
          when "000000" =>  cout(11) <= datain(0) ;
    when "000001" =>  cout(11) <= datain(1) ;
    when "000010" =>  cout(11) <= datain(2) ;
    when "000011" =>  cout(11) <= datain(3) ;
    when "000100" =>  cout(11) <= datain(4) ;
    when "000101" =>  cout(11) <= datain(5) ;
    when "000110" =>  cout(11) <= datain(6) ;
    when "000111" =>  cout(11) <= datain(7) ;
    when "001000" =>  cout(11) <= datain(8) ;
    when "001001" =>  cout(11) <= datain(9) ;
    when "001010" =>  cout(11) <= datain(10) ;
    when "001011" =>  cout(11) <= datain(11) ;
    when "001100" =>  cout(11) <= datain(12) ;
    when "001101" =>  cout(11) <= datain(13) ;
    when "001110" =>  cout(11) <= datain(14) ;
    when "001111" =>  cout(11) <= datain(15) ;
    when "010000" =>  cout(11) <= datain(16) ;
    when "010001" =>  cout(11) <= datain(17) ;
    when "010010" =>  cout(11) <= datain(18) ;
    when "010011" =>  cout(11) <= datain(19) ;
    when "010100" =>  cout(11) <= datain(20) ;
    when "010101" =>  cout(11) <= datain(21) ;
    when "010110" =>  cout(11) <= datain(22) ;
    when "010111" =>  cout(11) <= datain(23) ;
    when "011000" =>  cout(11) <= datain(24) ;
    when "011001" =>  cout(11) <= datain(25) ;
    when "011010" =>  cout(11) <= datain(26) ;
    when "011011" =>  cout(11) <= datain(27) ;
    when "011100" =>  cout(11) <= datain(28) ;
    when "011101" =>  cout(11) <= datain(29) ;
    when "011110" =>  cout(11) <= datain(30) ;
    when "011111" =>  cout(11) <= datain(31) ;
    when "100000" =>  cout(11) <= datain(32) ;
    when "100001" =>  cout(11) <= datain(33) ;
    when "100010" =>  cout(11) <= datain(34) ;
    when "100011" =>  cout(11) <= datain(35) ;
    when "100100" =>  cout(11) <= datain(36) ;
    when "100101" =>  cout(11) <= datain(37) ;
    when "100110" =>  cout(11) <= datain(38) ;
    when "100111" =>  cout(11) <= datain(39) ;
    when "101000" =>  cout(11) <= datain(40) ;
    when "101001" =>  cout(11) <= datain(41) ;
    when "101010" =>  cout(11) <= datain(42) ;
    when "101011" =>  cout(11) <= datain(43) ;
    when "101100" =>  cout(11) <= datain(44) ;
    when "101101" =>  cout(11) <= datain(45) ;
    when "101110" =>  cout(11) <= datain(46) ;
    when "101111" =>  cout(11) <= datain(47) ;
    when "110000" =>  cout(11) <= datain(48) ;
    when "110001" =>  cout(11) <= datain(49) ;
    when "110010" =>  cout(11) <= datain(50) ;
    when "110011" =>  cout(11) <= datain(51) ;
    when "110100" =>  cout(11) <= datain(52) ;
    when "110101" =>  cout(11) <= datain(53) ;
    when "110110" =>  cout(11) <= datain(54) ;
    when "110111" =>  cout(11) <= datain(55) ;
    when "111000" =>  cout(11) <= datain(56) ;
    when "111001" =>  cout(11) <= datain(57) ;
    when "111010" =>  cout(11) <= datain(58) ;
    when "111011" =>  cout(11) <= datain(59) ;
    when "111100" =>  cout(11) <= datain(60) ;
    when "111101" =>  cout(11) <= datain(61) ;
    when "111110" =>  cout(11) <= datain(62) ;
    when "111111" =>  cout(11) <= datain(63) ;
    when others   =>  cout(11) <= 'Z';
   end case;
  end process;
  
  
  process(reg13)
    begin
         case reg13 is
          when "000000" =>  cout(12) <= datain(0) ;
    when "000001" =>  cout(12) <= datain(1) ;
    when "000010" =>  cout(12) <= datain(2) ;
    when "000011" =>  cout(12) <= datain(3) ;
    when "000100" =>  cout(12) <= datain(4) ;
    when "000101" =>  cout(12) <= datain(5) ;
    when "000110" =>  cout(12) <= datain(6) ;
    when "000111" =>  cout(12) <= datain(7) ;
    when "001000" =>  cout(12) <= datain(8) ;
    when "001001" =>  cout(12) <= datain(9) ;
    when "001010" =>  cout(12) <= datain(10) ;
    when "001011" =>  cout(12) <= datain(11) ;
    when "001100" =>  cout(12) <= datain(12) ;
    when "001101" =>  cout(12) <= datain(13) ;
    when "001110" =>  cout(12) <= datain(14) ;
    when "001111" =>  cout(12) <= datain(15) ;
    when "010000" =>  cout(12) <= datain(16) ;
    when "010001" =>  cout(12) <= datain(17) ;
    when "010010" =>  cout(12) <= datain(18) ;
    when "010011" =>  cout(12) <= datain(19) ;
    when "010100" =>  cout(12) <= datain(20) ;
    when "010101" =>  cout(12) <= datain(21) ;
    when "010110" =>  cout(12) <= datain(22) ;
    when "010111" =>  cout(12) <= datain(23) ;
    when "011000" =>  cout(12) <= datain(24) ;
    when "011001" =>  cout(12) <= datain(25) ;
    when "011010" =>  cout(12) <= datain(26) ;
    when "011011" =>  cout(12) <= datain(27) ;
    when "011100" =>  cout(12) <= datain(28) ;
    when "011101" =>  cout(12) <= datain(29) ;
    when "011110" =>  cout(12) <= datain(30) ;
    when "011111" =>  cout(12) <= datain(31) ;
    when "100000" =>  cout(12) <= datain(32) ;
    when "100001" =>  cout(12) <= datain(33) ;
    when "100010" =>  cout(12) <= datain(34) ;
    when "100011" =>  cout(12) <= datain(35) ;
    when "100100" =>  cout(12) <= datain(36) ;
    when "100101" =>  cout(12) <= datain(37) ;
    when "100110" =>  cout(12) <= datain(38) ;
    when "100111" =>  cout(12) <= datain(39) ;
    when "101000" =>  cout(12) <= datain(40) ;
    when "101001" =>  cout(12) <= datain(41) ;
    when "101010" =>  cout(12) <= datain(42) ;
    when "101011" =>  cout(12) <= datain(43) ;
    when "101100" =>  cout(12) <= datain(44) ;
    when "101101" =>  cout(12) <= datain(45) ;
    when "101110" =>  cout(12) <= datain(46) ;
    when "101111" =>  cout(12) <= datain(47) ;
    when "110000" =>  cout(12) <= datain(48) ;
    when "110001" =>  cout(12) <= datain(49) ;
    when "110010" =>  cout(12) <= datain(50) ;
    when "110011" =>  cout(12) <= datain(51) ;
    when "110100" =>  cout(12) <= datain(52) ;
    when "110101" =>  cout(12) <= datain(53) ;
    when "110110" =>  cout(12) <= datain(54) ;
    when "110111" =>  cout(12) <= datain(55) ;
    when "111000" =>  cout(12) <= datain(56) ;
    when "111001" =>  cout(12) <= datain(57) ;
    when "111010" =>  cout(12) <= datain(58) ;
    when "111011" =>  cout(12) <= datain(59) ;
    when "111100" =>  cout(12) <= datain(60) ;
    when "111101" =>  cout(12) <= datain(61) ;
    when "111110" =>  cout(12) <= datain(62) ;
    when "111111" =>  cout(12) <= datain(63) ;
    when others   =>  cout(12) <= 'Z';
   end case;
  end process;
  
  
  process(reg14)
    begin
         case reg14 is
          when "000000" =>  cout(13) <= datain(0) ;
    when "000001" =>  cout(13) <= datain(1) ;
    when "000010" =>  cout(13) <= datain(2) ;
    when "000011" =>  cout(13) <= datain(3) ;
    when "000100" =>  cout(13) <= datain(4) ;
    when "000101" =>  cout(13) <= datain(5) ;
    when "000110" =>  cout(13) <= datain(6) ;
    when "000111" =>  cout(13) <= datain(7) ;
    when "001000" =>  cout(13) <= datain(8) ;
    when "001001" =>  cout(13) <= datain(9) ;
    when "001010" =>  cout(13) <= datain(10) ;
    when "001011" =>  cout(13) <= datain(11) ;
    when "001100" =>  cout(13) <= datain(12) ;
    when "001101" =>  cout(13) <= datain(13) ;
    when "001110" =>  cout(13) <= datain(14) ;
    when "001111" =>  cout(13) <= datain(15) ;
    when "010000" =>  cout(13) <= datain(16) ;
    when "010001" =>  cout(13) <= datain(17) ;
    when "010010" =>  cout(13) <= datain(18) ;
    when "010011" =>  cout(13) <= datain(19) ;
    when "010100" =>  cout(13) <= datain(20) ;
    when "010101" =>  cout(13) <= datain(21) ;
    when "010110" =>  cout(13) <= datain(22) ;
    when "010111" =>  cout(13) <= datain(23) ;
    when "011000" =>  cout(13) <= datain(24) ;
    when "011001" =>  cout(13) <= datain(25) ;
    when "011010" =>  cout(13) <= datain(26) ;
    when "011011" =>  cout(13) <= datain(27) ;
    when "011100" =>  cout(13) <= datain(28) ;
    when "011101" =>  cout(13) <= datain(29) ;
    when "011110" =>  cout(13) <= datain(30) ;
    when "011111" =>  cout(13) <= datain(31) ;
    when "100000" =>  cout(13) <= datain(32) ;
    when "100001" =>  cout(13) <= datain(33) ;
    when "100010" =>  cout(13) <= datain(34) ;
    when "100011" =>  cout(13) <= datain(35) ;
    when "100100" =>  cout(13) <= datain(36) ;
    when "100101" =>  cout(13) <= datain(37) ;
    when "100110" =>  cout(13) <= datain(38) ;
    when "100111" =>  cout(13) <= datain(39) ;
    when "101000" =>  cout(13) <= datain(40) ;
    when "101001" =>  cout(13) <= datain(41) ;
    when "101010" =>  cout(13) <= datain(42) ;
    when "101011" =>  cout(13) <= datain(43) ;
    when "101100" =>  cout(13) <= datain(44) ;
    when "101101" =>  cout(13) <= datain(45) ;
    when "101110" =>  cout(13) <= datain(46) ;
    when "101111" =>  cout(13) <= datain(47) ;
    when "110000" =>  cout(13) <= datain(48) ;
    when "110001" =>  cout(13) <= datain(49) ;
    when "110010" =>  cout(13) <= datain(50) ;
    when "110011" =>  cout(13) <= datain(51) ;
    when "110100" =>  cout(13) <= datain(52) ;
    when "110101" =>  cout(13) <= datain(53) ;
    when "110110" =>  cout(13) <= datain(54) ;
    when "110111" =>  cout(13) <= datain(55) ;
    when "111000" =>  cout(13) <= datain(56) ;
    when "111001" =>  cout(13) <= datain(57) ;
    when "111010" =>  cout(13) <= datain(58) ;
    when "111011" =>  cout(13) <= datain(59) ;
    when "111100" =>  cout(13) <= datain(60) ;
    when "111101" =>  cout(13) <= datain(61) ;
    when "111110" =>  cout(13) <= datain(62) ;
    when "111111" =>  cout(13) <= datain(63) ;
    when others   =>  cout(13) <= 'Z';
   end case;
  end process;
  
  
  process(reg15)
    begin
         case reg15 is
          when "000000" =>  cout(14) <= datain(0) ;
    when "000001" =>  cout(14) <= datain(1) ;
    when "000010" =>  cout(14) <= datain(2) ;
    when "000011" =>  cout(14) <= datain(3) ;
    when "000100" =>  cout(14) <= datain(4) ;
    when "000101" =>  cout(14) <= datain(5) ;
    when "000110" =>  cout(14) <= datain(6) ;
    when "000111" =>  cout(14) <= datain(7) ;
    when "001000" =>  cout(14) <= datain(8) ;
    when "001001" =>  cout(14) <= datain(9) ;
    when "001010" =>  cout(14) <= datain(10) ;
    when "001011" =>  cout(14) <= datain(11) ;
    when "001100" =>  cout(14) <= datain(12) ;
    when "001101" =>  cout(14) <= datain(13) ;
    when "001110" =>  cout(14) <= datain(14) ;
    when "001111" =>  cout(14) <= datain(15) ;
    when "010000" =>  cout(14) <= datain(16) ;
    when "010001" =>  cout(14) <= datain(17) ;
    when "010010" =>  cout(14) <= datain(18) ;
    when "010011" =>  cout(14) <= datain(19) ;
    when "010100" =>  cout(14) <= datain(20) ;
    when "010101" =>  cout(14) <= datain(21) ;
    when "010110" =>  cout(14) <= datain(22) ;
    when "010111" =>  cout(14) <= datain(23) ;
    when "011000" =>  cout(14) <= datain(24) ;
    when "011001" =>  cout(14) <= datain(25) ;
    when "011010" =>  cout(14) <= datain(26) ;
    when "011011" =>  cout(14) <= datain(27) ;
    when "011100" =>  cout(14) <= datain(28) ;
    when "011101" =>  cout(14) <= datain(29) ;
    when "011110" =>  cout(14) <= datain(30) ;
    when "011111" =>  cout(14) <= datain(31) ;
    when "100000" =>  cout(14) <= datain(32) ;
    when "100001" =>  cout(14) <= datain(33) ;
    when "100010" =>  cout(14) <= datain(34) ;
    when "100011" =>  cout(14) <= datain(35) ;
    when "100100" =>  cout(14) <= datain(36) ;
    when "100101" =>  cout(14) <= datain(37) ;
    when "100110" =>  cout(14) <= datain(38) ;
    when "100111" =>  cout(14) <= datain(39) ;
    when "101000" =>  cout(14) <= datain(40) ;
    when "101001" =>  cout(14) <= datain(41) ;
    when "101010" =>  cout(14) <= datain(42) ;
    when "101011" =>  cout(14) <= datain(43) ;
    when "101100" =>  cout(14) <= datain(44) ;
    when "101101" =>  cout(14) <= datain(45) ;
    when "101110" =>  cout(14) <= datain(46) ;
    when "101111" =>  cout(14) <= datain(47) ;
    when "110000" =>  cout(14) <= datain(48) ;
    when "110001" =>  cout(14) <= datain(49) ;
    when "110010" =>  cout(14) <= datain(50) ;
    when "110011" =>  cout(14) <= datain(51) ;
    when "110100" =>  cout(14) <= datain(52) ;
    when "110101" =>  cout(14) <= datain(53) ;
    when "110110" =>  cout(14) <= datain(54) ;
    when "110111" =>  cout(14) <= datain(55) ;
    when "111000" =>  cout(14) <= datain(56) ;
    when "111001" =>  cout(14) <= datain(57) ;
    when "111010" =>  cout(14) <= datain(58) ;
    when "111011" =>  cout(14) <= datain(59) ;
    when "111100" =>  cout(14) <= datain(60) ;
    when "111101" =>  cout(14) <= datain(61) ;
    when "111110" =>  cout(14) <= datain(62) ;
    when "111111" =>  cout(14) <= datain(63) ;
    when others   =>  cout(14) <= 'Z';
   end case;
  end process;
  
  
  process(reg16)
    begin
         case reg16 is
          when "000000" =>  cout(15) <= datain(0) ;
    when "000001" =>  cout(15) <= datain(1) ;
    when "000010" =>  cout(15) <= datain(2) ;
    when "000011" =>  cout(15) <= datain(3) ;
    when "000100" =>  cout(15) <= datain(4) ;
    when "000101" =>  cout(15) <= datain(5) ;
    when "000110" =>  cout(15) <= datain(6) ;
    when "000111" =>  cout(15) <= datain(7) ;
    when "001000" =>  cout(15) <= datain(8) ;
    when "001001" =>  cout(15) <= datain(9) ;
    when "001010" =>  cout(15) <= datain(10) ;
    when "001011" =>  cout(15) <= datain(11) ;
    when "001100" =>  cout(15) <= datain(12) ;
    when "001101" =>  cout(15) <= datain(13) ;
    when "001110" =>  cout(15) <= datain(14) ;
    when "001111" =>  cout(15) <= datain(15) ;
    when "010000" =>  cout(15) <= datain(16) ;
    when "010001" =>  cout(15) <= datain(17) ;
    when "010010" =>  cout(15) <= datain(18) ;
    when "010011" =>  cout(15) <= datain(19) ;
    when "010100" =>  cout(15) <= datain(20) ;
    when "010101" =>  cout(15) <= datain(21) ;
    when "010110" =>  cout(15) <= datain(22) ;
    when "010111" =>  cout(15) <= datain(23) ;
    when "011000" =>  cout(15) <= datain(24) ;
    when "011001" =>  cout(15) <= datain(25) ;
    when "011010" =>  cout(15) <= datain(26) ;
    when "011011" =>  cout(15) <= datain(27) ;
    when "011100" =>  cout(15) <= datain(28) ;
    when "011101" =>  cout(15) <= datain(29) ;
    when "011110" =>  cout(15) <= datain(30) ;
    when "011111" =>  cout(15) <= datain(31) ;
    when "100000" =>  cout(15) <= datain(32) ;
    when "100001" =>  cout(15) <= datain(33) ;
    when "100010" =>  cout(15) <= datain(34) ;
    when "100011" =>  cout(15) <= datain(35) ;
    when "100100" =>  cout(15) <= datain(36) ;
    when "100101" =>  cout(15) <= datain(37) ;
    when "100110" =>  cout(15) <= datain(38) ;
    when "100111" =>  cout(15) <= datain(39) ;
    when "101000" =>  cout(15) <= datain(40) ;
    when "101001" =>  cout(15) <= datain(41) ;
    when "101010" =>  cout(15) <= datain(42) ;
    when "101011" =>  cout(15) <= datain(43) ;
    when "101100" =>  cout(15) <= datain(44) ;
    when "101101" =>  cout(15) <= datain(45) ;
    when "101110" =>  cout(15) <= datain(46) ;
    when "101111" =>  cout(15) <= datain(47) ;
    when "110000" =>  cout(15) <= datain(48) ;
    when "110001" =>  cout(15) <= datain(49) ;
    when "110010" =>  cout(15) <= datain(50) ;
    when "110011" =>  cout(15) <= datain(51) ;
    when "110100" =>  cout(15) <= datain(52) ;
    when "110101" =>  cout(15) <= datain(53) ;
    when "110110" =>  cout(15) <= datain(54) ;
    when "110111" =>  cout(15) <= datain(55) ;
    when "111000" =>  cout(15) <= datain(56) ;
    when "111001" =>  cout(15) <= datain(57) ;
    when "111010" =>  cout(15) <= datain(58) ;
    when "111011" =>  cout(15) <= datain(59) ;
    when "111100" =>  cout(15) <= datain(60) ;
    when "111101" =>  cout(15) <= datain(61) ;
    when "111110" =>  cout(15) <= datain(62) ;
    when "111111" =>  cout(15) <= datain(63) ;
    when others   =>  cout(15) <= 'Z';
   end case;
  end process;
  
  
  process(reg17)
    begin
         case reg17 is
          when "000000" =>  cout(16) <= datain(0) ;
    when "000001" =>  cout(16) <= datain(1) ;
    when "000010" =>  cout(16) <= datain(2) ;
    when "000011" =>  cout(16) <= datain(3) ;
    when "000100" =>  cout(16) <= datain(4) ;
    when "000101" =>  cout(16) <= datain(5) ;
    when "000110" =>  cout(16) <= datain(6) ;
    when "000111" =>  cout(16) <= datain(7) ;
    when "001000" =>  cout(16) <= datain(8) ;
    when "001001" =>  cout(16) <= datain(9) ;
    when "001010" =>  cout(16) <= datain(10) ;
    when "001011" =>  cout(16) <= datain(11) ;
    when "001100" =>  cout(16) <= datain(12) ;
    when "001101" =>  cout(16) <= datain(13) ;
    when "001110" =>  cout(16) <= datain(14) ;
    when "001111" =>  cout(16) <= datain(15) ;
    when "010000" =>  cout(16) <= datain(16) ;
    when "010001" =>  cout(16) <= datain(17) ;
    when "010010" =>  cout(16) <= datain(18) ;
    when "010011" =>  cout(16) <= datain(19) ;
    when "010100" =>  cout(16) <= datain(20) ;
    when "010101" =>  cout(16) <= datain(21) ;
    when "010110" =>  cout(16) <= datain(22) ;
    when "010111" =>  cout(16) <= datain(23) ;
    when "011000" =>  cout(16) <= datain(24) ;
    when "011001" =>  cout(16) <= datain(25) ;
    when "011010" =>  cout(16) <= datain(26) ;
    when "011011" =>  cout(16) <= datain(27) ;
    when "011100" =>  cout(16) <= datain(28) ;
    when "011101" =>  cout(16) <= datain(29) ;
    when "011110" =>  cout(16) <= datain(30) ;
    when "011111" =>  cout(16) <= datain(31) ;
    when "100000" =>  cout(16) <= datain(32) ;
    when "100001" =>  cout(16) <= datain(33) ;
    when "100010" =>  cout(16) <= datain(34) ;
    when "100011" =>  cout(16) <= datain(35) ;
    when "100100" =>  cout(16) <= datain(36) ;
    when "100101" =>  cout(16) <= datain(37) ;
    when "100110" =>  cout(16) <= datain(38) ;
    when "100111" =>  cout(16) <= datain(39) ;
    when "101000" =>  cout(16) <= datain(40) ;
    when "101001" =>  cout(16) <= datain(41) ;
    when "101010" =>  cout(16) <= datain(42) ;
    when "101011" =>  cout(16) <= datain(43) ;
    when "101100" =>  cout(16) <= datain(44) ;
    when "101101" =>  cout(16) <= datain(45) ;
    when "101110" =>  cout(16) <= datain(46) ;
    when "101111" =>  cout(16) <= datain(47) ;
    when "110000" =>  cout(16) <= datain(48) ;
    when "110001" =>  cout(16) <= datain(49) ;
    when "110010" =>  cout(16) <= datain(50) ;
    when "110011" =>  cout(16) <= datain(51) ;
    when "110100" =>  cout(16) <= datain(52) ;
    when "110101" =>  cout(16) <= datain(53) ;
    when "110110" =>  cout(16) <= datain(54) ;
    when "110111" =>  cout(16) <= datain(55) ;
    when "111000" =>  cout(16) <= datain(56) ;
    when "111001" =>  cout(16) <= datain(57) ;
    when "111010" =>  cout(16) <= datain(58) ;
    when "111011" =>  cout(16) <= datain(59) ;
    when "111100" =>  cout(16) <= datain(60) ;
    when "111101" =>  cout(16) <= datain(61) ;
    when "111110" =>  cout(16) <= datain(62) ;
    when "111111" =>  cout(16) <= datain(63) ;
    when others   =>  cout(16) <= 'Z';
   end case;
  end process;
  
  
  process(reg18)
    begin
         case reg18 is
          when "000000" =>  cout(17) <= datain(0) ;
    when "000001" =>  cout(17) <= datain(1) ;
    when "000010" =>  cout(17) <= datain(2) ;
    when "000011" =>  cout(17) <= datain(3) ;
    when "000100" =>  cout(17) <= datain(4) ;
    when "000101" =>  cout(17) <= datain(5) ;
    when "000110" =>  cout(17) <= datain(6) ;
    when "000111" =>  cout(17) <= datain(7) ;
    when "001000" =>  cout(17) <= datain(8) ;
    when "001001" =>  cout(17) <= datain(9) ;
    when "001010" =>  cout(17) <= datain(10) ;
    when "001011" =>  cout(17) <= datain(11) ;
    when "001100" =>  cout(17) <= datain(12) ;
    when "001101" =>  cout(17) <= datain(13) ;
    when "001110" =>  cout(17) <= datain(14) ;
    when "001111" =>  cout(17) <= datain(15) ;
    when "010000" =>  cout(17) <= datain(16) ;
    when "010001" =>  cout(17) <= datain(17) ;
    when "010010" =>  cout(17) <= datain(18) ;
    when "010011" =>  cout(17) <= datain(19) ;
    when "010100" =>  cout(17) <= datain(20) ;
    when "010101" =>  cout(17) <= datain(21) ;
    when "010110" =>  cout(17) <= datain(22) ;
    when "010111" =>  cout(17) <= datain(23) ;
    when "011000" =>  cout(17) <= datain(24) ;
    when "011001" =>  cout(17) <= datain(25) ;
    when "011010" =>  cout(17) <= datain(26) ;
    when "011011" =>  cout(17) <= datain(27) ;
    when "011100" =>  cout(17) <= datain(28) ;
    when "011101" =>  cout(17) <= datain(29) ;
    when "011110" =>  cout(17) <= datain(30) ;
    when "011111" =>  cout(17) <= datain(31) ;
    when "100000" =>  cout(17) <= datain(32) ;
    when "100001" =>  cout(17) <= datain(33) ;
    when "100010" =>  cout(17) <= datain(34) ;
    when "100011" =>  cout(17) <= datain(35) ;
    when "100100" =>  cout(17) <= datain(36) ;
    when "100101" =>  cout(17) <= datain(37) ;
    when "100110" =>  cout(17) <= datain(38) ;
    when "100111" =>  cout(17) <= datain(39) ;
    when "101000" =>  cout(17) <= datain(40) ;
    when "101001" =>  cout(17) <= datain(41) ;
    when "101010" =>  cout(17) <= datain(42) ;
    when "101011" =>  cout(17) <= datain(43) ;
    when "101100" =>  cout(17) <= datain(44) ;
    when "101101" =>  cout(17) <= datain(45) ;
    when "101110" =>  cout(17) <= datain(46) ;
    when "101111" =>  cout(17) <= datain(47) ;
    when "110000" =>  cout(17) <= datain(48) ;
    when "110001" =>  cout(17) <= datain(49) ;
    when "110010" =>  cout(17) <= datain(50) ;
    when "110011" =>  cout(17) <= datain(51) ;
    when "110100" =>  cout(17) <= datain(52) ;
    when "110101" =>  cout(17) <= datain(53) ;
    when "110110" =>  cout(17) <= datain(54) ;
    when "110111" =>  cout(17) <= datain(55) ;
    when "111000" =>  cout(17) <= datain(56) ;
    when "111001" =>  cout(17) <= datain(57) ;
    when "111010" =>  cout(17) <= datain(58) ;
    when "111011" =>  cout(17) <= datain(59) ;
    when "111100" =>  cout(17) <= datain(60) ;
    when "111101" =>  cout(17) <= datain(61) ;
    when "111110" =>  cout(17) <= datain(62) ;
    when "111111" =>  cout(17) <= datain(63) ;
    when others   =>  cout(17) <= 'Z';
   end case;
  end process;
  
  
  process(reg19)
    begin
         case reg19 is
          when "000000" =>  cout(18) <= datain(0) ;
    when "000001" =>  cout(18) <= datain(1) ;
    when "000010" =>  cout(18) <= datain(2) ;
    when "000011" =>  cout(18) <= datain(3) ;
    when "000100" =>  cout(18) <= datain(4) ;
    when "000101" =>  cout(18) <= datain(5) ;
    when "000110" =>  cout(18) <= datain(6) ;
    when "000111" =>  cout(18) <= datain(7) ;
    when "001000" =>  cout(18) <= datain(8) ;
    when "001001" =>  cout(18) <= datain(9) ;
    when "001010" =>  cout(18) <= datain(10) ;
    when "001011" =>  cout(18) <= datain(11) ;
    when "001100" =>  cout(18) <= datain(12) ;
    when "001101" =>  cout(18) <= datain(13) ;
    when "001110" =>  cout(18) <= datain(14) ;
    when "001111" =>  cout(18) <= datain(15) ;
    when "010000" =>  cout(18) <= datain(16) ;
    when "010001" =>  cout(18) <= datain(17) ;
    when "010010" =>  cout(18) <= datain(18) ;
    when "010011" =>  cout(18) <= datain(19) ;
    when "010100" =>  cout(18) <= datain(20) ;
    when "010101" =>  cout(18) <= datain(21) ;
    when "010110" =>  cout(18) <= datain(22) ;
    when "010111" =>  cout(18) <= datain(23) ;
    when "011000" =>  cout(18) <= datain(24) ;
    when "011001" =>  cout(18) <= datain(25) ;
    when "011010" =>  cout(18) <= datain(26) ;
    when "011011" =>  cout(18) <= datain(27) ;
    when "011100" =>  cout(18) <= datain(28) ;
    when "011101" =>  cout(18) <= datain(29) ;
    when "011110" =>  cout(18) <= datain(30) ;
    when "011111" =>  cout(18) <= datain(31) ;
    when "100000" =>  cout(18) <= datain(32) ;
    when "100001" =>  cout(18) <= datain(33) ;
    when "100010" =>  cout(18) <= datain(34) ;
    when "100011" =>  cout(18) <= datain(35) ;
    when "100100" =>  cout(18) <= datain(36) ;
    when "100101" =>  cout(18) <= datain(37) ;
    when "100110" =>  cout(18) <= datain(38) ;
    when "100111" =>  cout(18) <= datain(39) ;
    when "101000" =>  cout(18) <= datain(40) ;
    when "101001" =>  cout(18) <= datain(41) ;
    when "101010" =>  cout(18) <= datain(42) ;
    when "101011" =>  cout(18) <= datain(43) ;
    when "101100" =>  cout(18) <= datain(44) ;
    when "101101" =>  cout(18) <= datain(45) ;
    when "101110" =>  cout(18) <= datain(46) ;
    when "101111" =>  cout(18) <= datain(47) ;
    when "110000" =>  cout(18) <= datain(48) ;
    when "110001" =>  cout(18) <= datain(49) ;
    when "110010" =>  cout(18) <= datain(50) ;
    when "110011" =>  cout(18) <= datain(51) ;
    when "110100" =>  cout(18) <= datain(52) ;
    when "110101" =>  cout(18) <= datain(53) ;
    when "110110" =>  cout(18) <= datain(54) ;
    when "110111" =>  cout(18) <= datain(55) ;
    when "111000" =>  cout(18) <= datain(56) ;
    when "111001" =>  cout(18) <= datain(57) ;
    when "111010" =>  cout(18) <= datain(58) ;
    when "111011" =>  cout(18) <= datain(59) ;
    when "111100" =>  cout(18) <= datain(60) ;
    when "111101" =>  cout(18) <= datain(61) ;
    when "111110" =>  cout(18) <= datain(62) ;
    when "111111" =>  cout(18) <= datain(63) ;
    when others   =>  cout(18) <= 'Z';
   end case;
  end process;
  
  
  process(reg20)
    begin
         case reg1 is
          when "000000" =>  cout(19) <= datain(0) ;
    when "000001" =>  cout(19) <= datain(1) ;
    when "000010" =>  cout(19) <= datain(2) ;
    when "000011" =>  cout(19) <= datain(3) ;
    when "000100" =>  cout(19) <= datain(4) ;
    when "000101" =>  cout(19) <= datain(5) ;
    when "000110" =>  cout(19) <= datain(6) ;
    when "000111" =>  cout(19) <= datain(7) ;
    when "001000" =>  cout(19) <= datain(8) ;
    when "001001" =>  cout(19) <= datain(9) ;
    when "001010" =>  cout(19) <= datain(10) ;
    when "001011" =>  cout(19) <= datain(11) ;
    when "001100" =>  cout(19) <= datain(12) ;
    when "001101" =>  cout(19) <= datain(13) ;
    when "001110" =>  cout(19) <= datain(14) ;
    when "001111" =>  cout(19) <= datain(15) ;
    when "010000" =>  cout(19) <= datain(16) ;
    when "010001" =>  cout(19) <= datain(17) ;
    when "010010" =>  cout(19) <= datain(18) ;
    when "010011" =>  cout(19) <= datain(19) ;
    when "010100" =>  cout(19) <= datain(20) ;
    when "010101" =>  cout(19) <= datain(21) ;
    when "010110" =>  cout(19) <= datain(22) ;
    when "010111" =>  cout(19) <= datain(23) ;
    when "011000" =>  cout(19) <= datain(24) ;
    when "011001" =>  cout(19) <= datain(25) ;
    when "011010" =>  cout(19) <= datain(26) ;
    when "011011" =>  cout(19) <= datain(27) ;
    when "011100" =>  cout(19) <= datain(28) ;
    when "011101" =>  cout(19) <= datain(29) ;
    when "011110" =>  cout(19) <= datain(30) ;
    when "011111" =>  cout(19) <= datain(31) ;
    when "100000" =>  cout(19) <= datain(32) ;
    when "100001" =>  cout(19) <= datain(33) ;
    when "100010" =>  cout(19) <= datain(34) ;
    when "100011" =>  cout(19) <= datain(35) ;
    when "100100" =>  cout(19) <= datain(36) ;
    when "100101" =>  cout(19) <= datain(37) ;
    when "100110" =>  cout(19) <= datain(38) ;
    when "100111" =>  cout(19) <= datain(39) ;
    when "101000" =>  cout(19) <= datain(40) ;
    when "101001" =>  cout(19) <= datain(41) ;
    when "101010" =>  cout(19) <= datain(42) ;
    when "101011" =>  cout(19) <= datain(43) ;
    when "101100" =>  cout(19) <= datain(44) ;
    when "101101" =>  cout(19) <= datain(45) ;
    when "101110" =>  cout(19) <= datain(46) ;
    when "101111" =>  cout(19) <= datain(47) ;
    when "110000" =>  cout(19) <= datain(48) ;
    when "110001" =>  cout(19) <= datain(49) ;
    when "110010" =>  cout(19) <= datain(50) ;
    when "110011" =>  cout(19) <= datain(51) ;
    when "110100" =>  cout(19) <= datain(52) ;
    when "110101" =>  cout(19) <= datain(53) ;
    when "110110" =>  cout(19) <= datain(54) ;
    when "110111" =>  cout(19) <= datain(55) ;
    when "111000" =>  cout(19) <= datain(56) ;
    when "111001" =>  cout(19) <= datain(57) ;
    when "111010" =>  cout(19) <= datain(58) ;
    when "111011" =>  cout(19) <= datain(59) ;
    when "111100" =>  cout(19) <= datain(60) ;
    when "111101" =>  cout(19) <= datain(61) ;
    when "111110" =>  cout(19) <= datain(62) ;
    when "111111" =>  cout(19) <= datain(63) ;
    when others   =>  cout(19) <= 'Z';
   end case;
  end process;
  
  
  process(reg21)
    begin
         case reg21 is
          when "000000" =>  cout(20) <= datain(0) ;
    when "000001" =>  cout(20) <= datain(1) ;
    when "000010" =>  cout(20) <= datain(2) ;
    when "000011" =>  cout(20) <= datain(3) ;
    when "000100" =>  cout(20) <= datain(4) ;
    when "000101" =>  cout(20) <= datain(5) ;
    when "000110" =>  cout(20) <= datain(6) ;
    when "000111" =>  cout(20) <= datain(7) ;
    when "001000" =>  cout(20) <= datain(8) ;
    when "001001" =>  cout(20) <= datain(9) ;
    when "001010" =>  cout(20) <= datain(10) ;
    when "001011" =>  cout(20) <= datain(11) ;
    when "001100" =>  cout(20) <= datain(12) ;
    when "001101" =>  cout(20) <= datain(13) ;
    when "001110" =>  cout(20) <= datain(14) ;
    when "001111" =>  cout(20) <= datain(15) ;
    when "010000" =>  cout(20) <= datain(16) ;
    when "010001" =>  cout(20) <= datain(17) ;
    when "010010" =>  cout(20) <= datain(18) ;
    when "010011" =>  cout(20) <= datain(19) ;
    when "010100" =>  cout(20) <= datain(20) ;
    when "010101" =>  cout(20) <= datain(21) ;
    when "010110" =>  cout(20) <= datain(22) ;
    when "010111" =>  cout(20) <= datain(23) ;
    when "011000" =>  cout(20) <= datain(24) ;
    when "011001" =>  cout(20) <= datain(25) ;
    when "011010" =>  cout(20) <= datain(26) ;
    when "011011" =>  cout(20) <= datain(27) ;
    when "011100" =>  cout(20) <= datain(28) ;
    when "011101" =>  cout(20) <= datain(29) ;
    when "011110" =>  cout(20) <= datain(30) ;
    when "011111" =>  cout(20) <= datain(31) ;
    when "100000" =>  cout(20) <= datain(32) ;
    when "100001" =>  cout(20) <= datain(33) ;
    when "100010" =>  cout(20) <= datain(34) ;
    when "100011" =>  cout(20) <= datain(35) ;
    when "100100" =>  cout(20) <= datain(36) ;
    when "100101" =>  cout(20) <= datain(37) ;
    when "100110" =>  cout(20) <= datain(38) ;
    when "100111" =>  cout(20) <= datain(39) ;
    when "101000" =>  cout(20) <= datain(40) ;
    when "101001" =>  cout(20) <= datain(41) ;
    when "101010" =>  cout(20) <= datain(42) ;
    when "101011" =>  cout(20) <= datain(43) ;
    when "101100" =>  cout(20) <= datain(44) ;
    when "101101" =>  cout(20) <= datain(45) ;
    when "101110" =>  cout(20) <= datain(46) ;
    when "101111" =>  cout(20) <= datain(47) ;
    when "110000" =>  cout(20) <= datain(48) ;
    when "110001" =>  cout(20) <= datain(49) ;
    when "110010" =>  cout(20) <= datain(50) ;
    when "110011" =>  cout(20) <= datain(51) ;
    when "110100" =>  cout(20) <= datain(52) ;
    when "110101" =>  cout(20) <= datain(53) ;
    when "110110" =>  cout(20) <= datain(54) ;
    when "110111" =>  cout(20) <= datain(55) ;
    when "111000" =>  cout(20) <= datain(56) ;
    when "111001" =>  cout(20) <= datain(57) ;
    when "111010" =>  cout(20) <= datain(58) ;
    when "111011" =>  cout(20) <= datain(59) ;
    when "111100" =>  cout(20) <= datain(60) ;
    when "111101" =>  cout(20) <= datain(61) ;
    when "111110" =>  cout(20) <= datain(62) ;
    when "111111" =>  cout(20) <= datain(63) ;
    when others   =>  cout(20) <= 'Z';
   end case;
  end process;
  
  
  process(reg22)
    begin
         case reg22 is
          when "000000" =>  cout(21) <= datain(0) ;
    when "000001" =>  cout(21) <= datain(1) ;
    when "000010" =>  cout(21) <= datain(2) ;
    when "000011" =>  cout(21) <= datain(3) ;
    when "000100" =>  cout(21) <= datain(4) ;
    when "000101" =>  cout(21) <= datain(5) ;
    when "000110" =>  cout(21) <= datain(6) ;
    when "000111" =>  cout(21) <= datain(7) ;
    when "001000" =>  cout(21) <= datain(8) ;
    when "001001" =>  cout(21) <= datain(9) ;
    when "001010" =>  cout(21) <= datain(10) ;
    when "001011" =>  cout(21) <= datain(11) ;
    when "001100" =>  cout(21) <= datain(12) ;
    when "001101" =>  cout(21) <= datain(13) ;
    when "001110" =>  cout(21) <= datain(14) ;
    when "001111" =>  cout(21) <= datain(15) ;
    when "010000" =>  cout(21) <= datain(16) ;
    when "010001" =>  cout(21) <= datain(17) ;
    when "010010" =>  cout(21) <= datain(18) ;
    when "010011" =>  cout(21) <= datain(19) ;
    when "010100" =>  cout(21) <= datain(20) ;
    when "010101" =>  cout(21) <= datain(21) ;
    when "010110" =>  cout(21) <= datain(22) ;
    when "010111" =>  cout(21) <= datain(23) ;
    when "011000" =>  cout(21) <= datain(24) ;
    when "011001" =>  cout(21) <= datain(25) ;
    when "011010" =>  cout(21) <= datain(26) ;
    when "011011" =>  cout(21) <= datain(27) ;
    when "011100" =>  cout(21) <= datain(28) ;
    when "011101" =>  cout(21) <= datain(29) ;
    when "011110" =>  cout(21) <= datain(30) ;
    when "011111" =>  cout(21) <= datain(31) ;
    when "100000" =>  cout(21) <= datain(32) ;
    when "100001" =>  cout(21) <= datain(33) ;
    when "100010" =>  cout(21) <= datain(34) ;
    when "100011" =>  cout(21) <= datain(35) ;
    when "100100" =>  cout(21) <= datain(36) ;
    when "100101" =>  cout(21) <= datain(37) ;
    when "100110" =>  cout(21) <= datain(38) ;
    when "100111" =>  cout(21) <= datain(39) ;
    when "101000" =>  cout(21) <= datain(40) ;
    when "101001" =>  cout(21) <= datain(41) ;
    when "101010" =>  cout(21) <= datain(42) ;
    when "101011" =>  cout(21) <= datain(43) ;
    when "101100" =>  cout(21) <= datain(44) ;
    when "101101" =>  cout(21) <= datain(45) ;
    when "101110" =>  cout(21) <= datain(46) ;
    when "101111" =>  cout(21) <= datain(47) ;
    when "110000" =>  cout(21) <= datain(48) ;
    when "110001" =>  cout(21) <= datain(49) ;
    when "110010" =>  cout(21) <= datain(50) ;
    when "110011" =>  cout(21) <= datain(51) ;
    when "110100" =>  cout(21) <= datain(52) ;
    when "110101" =>  cout(21) <= datain(53) ;
    when "110110" =>  cout(21) <= datain(54) ;
    when "110111" =>  cout(21) <= datain(55) ;
    when "111000" =>  cout(21) <= datain(56) ;
    when "111001" =>  cout(21) <= datain(57) ;
    when "111010" =>  cout(21) <= datain(58) ;
    when "111011" =>  cout(21) <= datain(59) ;
    when "111100" =>  cout(21) <= datain(60) ;
    when "111101" =>  cout(21) <= datain(61) ;
    when "111110" =>  cout(21) <= datain(62) ;
    when "111111" =>  cout(21) <= datain(63) ;
    when others   =>  cout(21) <= 'Z';
   end case;
  end process;
  
  
  process(reg23)
    begin
         case reg23 is
          when "000000" =>  cout(22) <= datain(0) ;
    when "000001" =>  cout(22) <= datain(1) ;
    when "000010" =>  cout(22) <= datain(2) ;
    when "000011" =>  cout(22) <= datain(3) ;
    when "000100" =>  cout(22) <= datain(4) ;
    when "000101" =>  cout(22) <= datain(5) ;
    when "000110" =>  cout(22) <= datain(6) ;
    when "000111" =>  cout(22) <= datain(7) ;
    when "001000" =>  cout(22) <= datain(8) ;
    when "001001" =>  cout(22) <= datain(9) ;
    when "001010" =>  cout(22) <= datain(10) ;
    when "001011" =>  cout(22) <= datain(11) ;
    when "001100" =>  cout(22) <= datain(12) ;
    when "001101" =>  cout(22) <= datain(13) ;
    when "001110" =>  cout(22) <= datain(14) ;
    when "001111" =>  cout(22) <= datain(15) ;
    when "010000" =>  cout(22) <= datain(16) ;
    when "010001" =>  cout(22) <= datain(17) ;
    when "010010" =>  cout(22) <= datain(18) ;
    when "010011" =>  cout(22) <= datain(19) ;
    when "010100" =>  cout(22) <= datain(20) ;
    when "010101" =>  cout(22) <= datain(21) ;
    when "010110" =>  cout(22) <= datain(22) ;
    when "010111" =>  cout(22) <= datain(23) ;
    when "011000" =>  cout(22) <= datain(24) ;
    when "011001" =>  cout(22) <= datain(25) ;
    when "011010" =>  cout(22) <= datain(26) ;
    when "011011" =>  cout(22) <= datain(27) ;
    when "011100" =>  cout(22) <= datain(28) ;
    when "011101" =>  cout(22) <= datain(29) ;
    when "011110" =>  cout(22) <= datain(30) ;
    when "011111" =>  cout(22) <= datain(31) ;
    when "100000" =>  cout(22) <= datain(32) ;
    when "100001" =>  cout(22) <= datain(33) ;
    when "100010" =>  cout(22) <= datain(34) ;
    when "100011" =>  cout(22) <= datain(35) ;
    when "100100" =>  cout(22) <= datain(36) ;
    when "100101" =>  cout(22) <= datain(37) ;
    when "100110" =>  cout(22) <= datain(38) ;
    when "100111" =>  cout(22) <= datain(39) ;
    when "101000" =>  cout(22) <= datain(40) ;
    when "101001" =>  cout(22) <= datain(41) ;
    when "101010" =>  cout(22) <= datain(42) ;
    when "101011" =>  cout(22) <= datain(43) ;
    when "101100" =>  cout(22) <= datain(44) ;
    when "101101" =>  cout(22) <= datain(45) ;
    when "101110" =>  cout(22) <= datain(46) ;
    when "101111" =>  cout(22) <= datain(47) ;
    when "110000" =>  cout(22) <= datain(48) ;
    when "110001" =>  cout(22) <= datain(49) ;
    when "110010" =>  cout(22) <= datain(50) ;
    when "110011" =>  cout(22) <= datain(51) ;
    when "110100" =>  cout(22) <= datain(52) ;
    when "110101" =>  cout(22) <= datain(53) ;
    when "110110" =>  cout(22) <= datain(54) ;
    when "110111" =>  cout(22) <= datain(55) ;
    when "111000" =>  cout(22) <= datain(56) ;
    when "111001" =>  cout(22) <= datain(57) ;
    when "111010" =>  cout(22) <= datain(58) ;
    when "111011" =>  cout(22) <= datain(59) ;
    when "111100" =>  cout(22) <= datain(60) ;
    when "111101" =>  cout(22) <= datain(61) ;
    when "111110" =>  cout(22) <= datain(62) ;
    when "111111" =>  cout(22) <= datain(63) ;
    when others   =>  cout(22) <= 'Z';
   end case;
  end process;
  
  
  process(reg24)
    begin
         case reg24 is
          when "000000" =>  cout(23) <= datain(0) ;
    when "000001" =>  cout(23) <= datain(1) ;
    when "000010" =>  cout(23) <= datain(2) ;
    when "000011" =>  cout(23) <= datain(3) ;
    when "000100" =>  cout(23) <= datain(4) ;
    when "000101" =>  cout(23) <= datain(5) ;
    when "000110" =>  cout(23) <= datain(6) ;
    when "000111" =>  cout(23) <= datain(7) ;
    when "001000" =>  cout(23) <= datain(8) ;
    when "001001" =>  cout(23) <= datain(9) ;
    when "001010" =>  cout(23) <= datain(10) ;
    when "001011" =>  cout(23) <= datain(11) ;
    when "001100" =>  cout(23) <= datain(12) ;
    when "001101" =>  cout(23) <= datain(13) ;
    when "001110" =>  cout(23) <= datain(14) ;
    when "001111" =>  cout(23) <= datain(15) ;
    when "010000" =>  cout(23) <= datain(16) ;
    when "010001" =>  cout(23) <= datain(17) ;
    when "010010" =>  cout(23) <= datain(18) ;
    when "010011" =>  cout(23) <= datain(19) ;
    when "010100" =>  cout(23) <= datain(20) ;
    when "010101" =>  cout(23) <= datain(21) ;
    when "010110" =>  cout(23) <= datain(22) ;
    when "010111" =>  cout(23) <= datain(23) ;
    when "011000" =>  cout(23) <= datain(24) ;
    when "011001" =>  cout(23) <= datain(25) ;
    when "011010" =>  cout(23) <= datain(26) ;
    when "011011" =>  cout(23) <= datain(27) ;
    when "011100" =>  cout(23) <= datain(28) ;
    when "011101" =>  cout(23) <= datain(29) ;
    when "011110" =>  cout(23) <= datain(30) ;
    when "011111" =>  cout(23) <= datain(31) ;
    when "100000" =>  cout(23) <= datain(32) ;
    when "100001" =>  cout(23) <= datain(33) ;
    when "100010" =>  cout(23) <= datain(34) ;
    when "100011" =>  cout(23) <= datain(35) ;
    when "100100" =>  cout(23) <= datain(36) ;
    when "100101" =>  cout(23) <= datain(37) ;
    when "100110" =>  cout(23) <= datain(38) ;
    when "100111" =>  cout(23) <= datain(39) ;
    when "101000" =>  cout(23) <= datain(40) ;
    when "101001" =>  cout(23) <= datain(41) ;
    when "101010" =>  cout(23) <= datain(42) ;
    when "101011" =>  cout(23) <= datain(43) ;
    when "101100" =>  cout(23) <= datain(44) ;
    when "101101" =>  cout(23) <= datain(45) ;
    when "101110" =>  cout(23) <= datain(46) ;
    when "101111" =>  cout(23) <= datain(47) ;
    when "110000" =>  cout(23) <= datain(48) ;
    when "110001" =>  cout(23) <= datain(49) ;
    when "110010" =>  cout(23) <= datain(50) ;
    when "110011" =>  cout(23) <= datain(51) ;
    when "110100" =>  cout(23) <= datain(52) ;
    when "110101" =>  cout(23) <= datain(53) ;
    when "110110" =>  cout(23) <= datain(54) ;
    when "110111" =>  cout(23) <= datain(55) ;
    when "111000" =>  cout(23) <= datain(56) ;
    when "111001" =>  cout(23) <= datain(57) ;
    when "111010" =>  cout(23) <= datain(58) ;
    when "111011" =>  cout(23) <= datain(59) ;
    when "111100" =>  cout(23) <= datain(60) ;
    when "111101" =>  cout(23) <= datain(61) ;
    when "111110" =>  cout(23) <= datain(62) ;
    when "111111" =>  cout(23) <= datain(63) ;
    when others   =>  cout(23) <= 'Z';
   end case;
  end process;
  
  
  process(reg25)
    begin
         case reg25 is
          when "000000" =>  cout(24) <= datain(0) ;
    when "000001" =>  cout(24) <= datain(1) ;
    when "000010" =>  cout(24) <= datain(2) ;
    when "000011" =>  cout(24) <= datain(3) ;
    when "000100" =>  cout(24) <= datain(4) ;
    when "000101" =>  cout(24) <= datain(5) ;
    when "000110" =>  cout(24) <= datain(6) ;
    when "000111" =>  cout(24) <= datain(7) ;
    when "001000" =>  cout(24) <= datain(8) ;
    when "001001" =>  cout(24) <= datain(9) ;
    when "001010" =>  cout(24) <= datain(10) ;
    when "001011" =>  cout(24) <= datain(11) ;
    when "001100" =>  cout(24) <= datain(12) ;
    when "001101" =>  cout(24) <= datain(13) ;
    when "001110" =>  cout(24) <= datain(14) ;
    when "001111" =>  cout(24) <= datain(15) ;
    when "010000" =>  cout(24) <= datain(16) ;
    when "010001" =>  cout(24) <= datain(17) ;
    when "010010" =>  cout(24) <= datain(18) ;
    when "010011" =>  cout(24) <= datain(19) ;
    when "010100" =>  cout(24) <= datain(20) ;
    when "010101" =>  cout(24) <= datain(21) ;
    when "010110" =>  cout(24) <= datain(22) ;
    when "010111" =>  cout(24) <= datain(23) ;
    when "011000" =>  cout(24) <= datain(24) ;
    when "011001" =>  cout(24) <= datain(25) ;
    when "011010" =>  cout(24) <= datain(26) ;
    when "011011" =>  cout(24) <= datain(27) ;
    when "011100" =>  cout(24) <= datain(28) ;
    when "011101" =>  cout(24) <= datain(29) ;
    when "011110" =>  cout(24) <= datain(30) ;
    when "011111" =>  cout(24) <= datain(31) ;
    when "100000" =>  cout(24) <= datain(32) ;
    when "100001" =>  cout(24) <= datain(33) ;
    when "100010" =>  cout(24) <= datain(34) ;
    when "100011" =>  cout(24) <= datain(35) ;
    when "100100" =>  cout(24) <= datain(36) ;
    when "100101" =>  cout(24) <= datain(37) ;
    when "100110" =>  cout(24) <= datain(38) ;
    when "100111" =>  cout(24) <= datain(39) ;
    when "101000" =>  cout(24) <= datain(40) ;
    when "101001" =>  cout(24) <= datain(41) ;
    when "101010" =>  cout(24) <= datain(42) ;
    when "101011" =>  cout(24) <= datain(43) ;
    when "101100" =>  cout(24) <= datain(44) ;
    when "101101" =>  cout(24) <= datain(45) ;
    when "101110" =>  cout(24) <= datain(46) ;
    when "101111" =>  cout(24) <= datain(47) ;
    when "110000" =>  cout(24) <= datain(48) ;
    when "110001" =>  cout(24) <= datain(49) ;
    when "110010" =>  cout(24) <= datain(50) ;
    when "110011" =>  cout(24) <= datain(51) ;
    when "110100" =>  cout(24) <= datain(52) ;
    when "110101" =>  cout(24) <= datain(53) ;
    when "110110" =>  cout(24) <= datain(54) ;
    when "110111" =>  cout(24) <= datain(55) ;
    when "111000" =>  cout(24) <= datain(56) ;
    when "111001" =>  cout(24) <= datain(57) ;
    when "111010" =>  cout(24) <= datain(58) ;
    when "111011" =>  cout(24) <= datain(59) ;
    when "111100" =>  cout(24) <= datain(60) ;
    when "111101" =>  cout(24) <= datain(61) ;
    when "111110" =>  cout(24) <= datain(62) ;
    when "111111" =>  cout(24) <= datain(63) ;
    when others   =>  cout(24) <= 'Z';
   end case;
  end process;
  
  
  process(reg26)
    begin
         case reg26 is
          when "000000" =>  cout(25) <= datain(0) ;
    when "000001" =>  cout(25) <= datain(1) ;
    when "000010" =>  cout(25) <= datain(2) ;
    when "000011" =>  cout(25) <= datain(3) ;
    when "000100" =>  cout(25) <= datain(4) ;
    when "000101" =>  cout(25) <= datain(5) ;
    when "000110" =>  cout(25) <= datain(6) ;
    when "000111" =>  cout(25) <= datain(7) ;
    when "001000" =>  cout(25) <= datain(8) ;
    when "001001" =>  cout(25) <= datain(9) ;
    when "001010" =>  cout(25) <= datain(10) ;
    when "001011" =>  cout(25) <= datain(11) ;
    when "001100" =>  cout(25) <= datain(12) ;
    when "001101" =>  cout(25) <= datain(13) ;
    when "001110" =>  cout(25) <= datain(14) ;
    when "001111" =>  cout(25) <= datain(15) ;
    when "010000" =>  cout(25) <= datain(16) ;
    when "010001" =>  cout(25) <= datain(17) ;
    when "010010" =>  cout(25) <= datain(18) ;
    when "010011" =>  cout(25) <= datain(19) ;
    when "010100" =>  cout(25) <= datain(20) ;
    when "010101" =>  cout(25) <= datain(21) ;
    when "010110" =>  cout(25) <= datain(22) ;
    when "010111" =>  cout(25) <= datain(23) ;
    when "011000" =>  cout(25) <= datain(24) ;
    when "011001" =>  cout(25) <= datain(25) ;
    when "011010" =>  cout(25) <= datain(26) ;
    when "011011" =>  cout(25) <= datain(27) ;
    when "011100" =>  cout(25) <= datain(28) ;
    when "011101" =>  cout(25) <= datain(29) ;
    when "011110" =>  cout(25) <= datain(30) ;
    when "011111" =>  cout(25) <= datain(31) ;
    when "100000" =>  cout(25) <= datain(32) ;
    when "100001" =>  cout(25) <= datain(33) ;
    when "100010" =>  cout(25) <= datain(34) ;
    when "100011" =>  cout(25) <= datain(35) ;
    when "100100" =>  cout(25) <= datain(36) ;
    when "100101" =>  cout(25) <= datain(37) ;
    when "100110" =>  cout(25) <= datain(38) ;
    when "100111" =>  cout(25) <= datain(39) ;
    when "101000" =>  cout(25) <= datain(40) ;
    when "101001" =>  cout(25) <= datain(41) ;
    when "101010" =>  cout(25) <= datain(42) ;
    when "101011" =>  cout(25) <= datain(43) ;
    when "101100" =>  cout(25) <= datain(44) ;
    when "101101" =>  cout(25) <= datain(45) ;
    when "101110" =>  cout(25) <= datain(46) ;
    when "101111" =>  cout(25) <= datain(47) ;
    when "110000" =>  cout(25) <= datain(48) ;
    when "110001" =>  cout(25) <= datain(49) ;
    when "110010" =>  cout(25) <= datain(50) ;
    when "110011" =>  cout(25) <= datain(51) ;
    when "110100" =>  cout(25) <= datain(52) ;
    when "110101" =>  cout(25) <= datain(53) ;
    when "110110" =>  cout(25) <= datain(54) ;
    when "110111" =>  cout(25) <= datain(55) ;
    when "111000" =>  cout(25) <= datain(56) ;
    when "111001" =>  cout(25) <= datain(57) ;
    when "111010" =>  cout(25) <= datain(58) ;
    when "111011" =>  cout(25) <= datain(59) ;
    when "111100" =>  cout(25) <= datain(60) ;
    when "111101" =>  cout(25) <= datain(61) ;
    when "111110" =>  cout(25) <= datain(62) ;
    when "111111" =>  cout(25) <= datain(63) ;
    when others   =>  cout(25) <= 'Z';
   end case;
  end process;
  
  
  process(reg27)
    begin
         case reg27 is
          when "000000" =>  cout(26) <= datain(0) ;
    when "000001" =>  cout(26) <= datain(1) ;
    when "000010" =>  cout(26) <= datain(2) ;
    when "000011" =>  cout(26) <= datain(3) ;
    when "000100" =>  cout(26) <= datain(4) ;
    when "000101" =>  cout(26) <= datain(5) ;
    when "000110" =>  cout(26) <= datain(6) ;
    when "000111" =>  cout(26) <= datain(7) ;
    when "001000" =>  cout(26) <= datain(8) ;
    when "001001" =>  cout(26) <= datain(9) ;
    when "001010" =>  cout(26) <= datain(10) ;
    when "001011" =>  cout(26) <= datain(11) ;
    when "001100" =>  cout(26) <= datain(12) ;
    when "001101" =>  cout(26) <= datain(13) ;
    when "001110" =>  cout(26) <= datain(14) ;
    when "001111" =>  cout(26) <= datain(15) ;
    when "010000" =>  cout(26) <= datain(16) ;
    when "010001" =>  cout(26) <= datain(17) ;
    when "010010" =>  cout(26) <= datain(18) ;
    when "010011" =>  cout(26) <= datain(19) ;
    when "010100" =>  cout(26) <= datain(20) ;
    when "010101" =>  cout(26) <= datain(21) ;
    when "010110" =>  cout(26) <= datain(22) ;
    when "010111" =>  cout(26) <= datain(23) ;
    when "011000" =>  cout(26) <= datain(24) ;
    when "011001" =>  cout(26) <= datain(25) ;
    when "011010" =>  cout(26) <= datain(26) ;
    when "011011" =>  cout(26) <= datain(27) ;
    when "011100" =>  cout(26) <= datain(28) ;
    when "011101" =>  cout(26) <= datain(29) ;
    when "011110" =>  cout(26) <= datain(30) ;
    when "011111" =>  cout(26) <= datain(31) ;
    when "100000" =>  cout(26) <= datain(32) ;
    when "100001" =>  cout(26) <= datain(33) ;
    when "100010" =>  cout(26) <= datain(34) ;
    when "100011" =>  cout(26) <= datain(35) ;
    when "100100" =>  cout(26) <= datain(36) ;
    when "100101" =>  cout(26) <= datain(37) ;
    when "100110" =>  cout(26) <= datain(38) ;
    when "100111" =>  cout(26) <= datain(39) ;
    when "101000" =>  cout(26) <= datain(40) ;
    when "101001" =>  cout(26) <= datain(41) ;
    when "101010" =>  cout(26) <= datain(42) ;
    when "101011" =>  cout(26) <= datain(43) ;
    when "101100" =>  cout(26) <= datain(44) ;
    when "101101" =>  cout(26) <= datain(45) ;
    when "101110" =>  cout(26) <= datain(46) ;
    when "101111" =>  cout(26) <= datain(47) ;
    when "110000" =>  cout(26) <= datain(48) ;
    when "110001" =>  cout(26) <= datain(49) ;
    when "110010" =>  cout(26) <= datain(50) ;
    when "110011" =>  cout(26) <= datain(51) ;
    when "110100" =>  cout(26) <= datain(52) ;
    when "110101" =>  cout(26) <= datain(53) ;
    when "110110" =>  cout(26) <= datain(54) ;
    when "110111" =>  cout(26) <= datain(55) ;
    when "111000" =>  cout(26) <= datain(56) ;
    when "111001" =>  cout(26) <= datain(57) ;
    when "111010" =>  cout(26) <= datain(58) ;
    when "111011" =>  cout(26) <= datain(59) ;
    when "111100" =>  cout(26) <= datain(60) ;
    when "111101" =>  cout(26) <= datain(61) ;
    when "111110" =>  cout(26) <= datain(62) ;
    when "111111" =>  cout(26) <= datain(63) ;
    when others   =>  cout(26) <= 'Z';
   end case;
  end process;
  
  
  process(reg28)
    begin
         case reg28 is
          when "000000" =>  cout(27) <= datain(0) ;
    when "000001" =>  cout(27) <= datain(1) ;
    when "000010" =>  cout(27) <= datain(2) ;
    when "000011" =>  cout(27) <= datain(3) ;
    when "000100" =>  cout(27) <= datain(4) ;
    when "000101" =>  cout(27) <= datain(5) ;
    when "000110" =>  cout(27) <= datain(6) ;
    when "000111" =>  cout(27) <= datain(7) ;
    when "001000" =>  cout(27) <= datain(8) ;
    when "001001" =>  cout(27) <= datain(9) ;
    when "001010" =>  cout(27) <= datain(10) ;
    when "001011" =>  cout(27) <= datain(11) ;
    when "001100" =>  cout(27) <= datain(12) ;
    when "001101" =>  cout(27) <= datain(13) ;
    when "001110" =>  cout(27) <= datain(14) ;
    when "001111" =>  cout(27) <= datain(15) ;
    when "010000" =>  cout(27) <= datain(16) ;
    when "010001" =>  cout(27) <= datain(17) ;
    when "010010" =>  cout(27) <= datain(18) ;
    when "010011" =>  cout(27) <= datain(19) ;
    when "010100" =>  cout(27) <= datain(20) ;
    when "010101" =>  cout(27) <= datain(21) ;
    when "010110" =>  cout(27) <= datain(22) ;
    when "010111" =>  cout(27) <= datain(23) ;
    when "011000" =>  cout(27) <= datain(24) ;
    when "011001" =>  cout(27) <= datain(25) ;
    when "011010" =>  cout(27) <= datain(26) ;
    when "011011" =>  cout(27) <= datain(27) ;
    when "011100" =>  cout(27) <= datain(28) ;
    when "011101" =>  cout(27) <= datain(29) ;
    when "011110" =>  cout(27) <= datain(30) ;
    when "011111" =>  cout(27) <= datain(31) ;
    when "100000" =>  cout(27) <= datain(32) ;
    when "100001" =>  cout(27) <= datain(33) ;
    when "100010" =>  cout(27) <= datain(34) ;
    when "100011" =>  cout(27) <= datain(35) ;
    when "100100" =>  cout(27) <= datain(36) ;
    when "100101" =>  cout(27) <= datain(37) ;
    when "100110" =>  cout(27) <= datain(38) ;
    when "100111" =>  cout(27) <= datain(39) ;
    when "101000" =>  cout(27) <= datain(40) ;
    when "101001" =>  cout(27) <= datain(41) ;
    when "101010" =>  cout(27) <= datain(42) ;
    when "101011" =>  cout(27) <= datain(43) ;
    when "101100" =>  cout(27) <= datain(44) ;
    when "101101" =>  cout(27) <= datain(45) ;
    when "101110" =>  cout(27) <= datain(46) ;
    when "101111" =>  cout(27) <= datain(47) ;
    when "110000" =>  cout(27) <= datain(48) ;
    when "110001" =>  cout(27) <= datain(49) ;
    when "110010" =>  cout(27) <= datain(50) ;
    when "110011" =>  cout(27) <= datain(51) ;
    when "110100" =>  cout(27) <= datain(52) ;
    when "110101" =>  cout(27) <= datain(53) ;
    when "110110" =>  cout(27) <= datain(54) ;
    when "110111" =>  cout(27) <= datain(55) ;
    when "111000" =>  cout(27) <= datain(56) ;
    when "111001" =>  cout(27) <= datain(57) ;
    when "111010" =>  cout(27) <= datain(58) ;
    when "111011" =>  cout(27) <= datain(59) ;
    when "111100" =>  cout(27) <= datain(60) ;
    when "111101" =>  cout(27) <= datain(61) ;
    when "111110" =>  cout(27) <= datain(62) ;
    when "111111" =>  cout(27) <= datain(63) ;
    when others   =>  cout(27) <= 'Z';
   end case;
  end process;
  
  
  process(reg29)
    begin
         case reg29 is
          when "000000" =>  cout(28) <= datain(0) ;
    when "000001" =>  cout(28) <= datain(1) ;
    when "000010" =>  cout(28) <= datain(2) ;
    when "000011" =>  cout(28) <= datain(3) ;
    when "000100" =>  cout(28) <= datain(4) ;
    when "000101" =>  cout(28) <= datain(5) ;
    when "000110" =>  cout(28) <= datain(6) ;
    when "000111" =>  cout(28) <= datain(7) ;
    when "001000" =>  cout(28) <= datain(8) ;
    when "001001" =>  cout(28) <= datain(9) ;
    when "001010" =>  cout(28) <= datain(10) ;
    when "001011" =>  cout(28) <= datain(11) ;
    when "001100" =>  cout(28) <= datain(12) ;
    when "001101" =>  cout(28) <= datain(13) ;
    when "001110" =>  cout(28) <= datain(14) ;
    when "001111" =>  cout(28) <= datain(15) ;
    when "010000" =>  cout(28) <= datain(16) ;
    when "010001" =>  cout(28) <= datain(17) ;
    when "010010" =>  cout(28) <= datain(18) ;
    when "010011" =>  cout(28) <= datain(19) ;
    when "010100" =>  cout(28) <= datain(20) ;
    when "010101" =>  cout(28) <= datain(21) ;
    when "010110" =>  cout(28) <= datain(22) ;
    when "010111" =>  cout(28) <= datain(23) ;
    when "011000" =>  cout(28) <= datain(24) ;
    when "011001" =>  cout(28) <= datain(25) ;
    when "011010" =>  cout(28) <= datain(26) ;
    when "011011" =>  cout(28) <= datain(27) ;
    when "011100" =>  cout(28) <= datain(28) ;
    when "011101" =>  cout(28) <= datain(29) ;
    when "011110" =>  cout(28) <= datain(30) ;
    when "011111" =>  cout(28) <= datain(31) ;
    when "100000" =>  cout(28) <= datain(32) ;
    when "100001" =>  cout(28) <= datain(33) ;
    when "100010" =>  cout(28) <= datain(34) ;
    when "100011" =>  cout(28) <= datain(35) ;
    when "100100" =>  cout(28) <= datain(36) ;
    when "100101" =>  cout(28) <= datain(37) ;
    when "100110" =>  cout(28) <= datain(38) ;
    when "100111" =>  cout(28) <= datain(39) ;
    when "101000" =>  cout(28) <= datain(40) ;
    when "101001" =>  cout(28) <= datain(41) ;
    when "101010" =>  cout(28) <= datain(42) ;
    when "101011" =>  cout(28) <= datain(43) ;
    when "101100" =>  cout(28) <= datain(44) ;
    when "101101" =>  cout(28) <= datain(45) ;
    when "101110" =>  cout(28) <= datain(46) ;
    when "101111" =>  cout(28) <= datain(47) ;
    when "110000" =>  cout(28) <= datain(48) ;
    when "110001" =>  cout(28) <= datain(49) ;
    when "110010" =>  cout(28) <= datain(50) ;
    when "110011" =>  cout(28) <= datain(51) ;
    when "110100" =>  cout(28) <= datain(52) ;
    when "110101" =>  cout(28) <= datain(53) ;
    when "110110" =>  cout(28) <= datain(54) ;
    when "110111" =>  cout(28) <= datain(55) ;
    when "111000" =>  cout(28) <= datain(56) ;
    when "111001" =>  cout(28) <= datain(57) ;
    when "111010" =>  cout(28) <= datain(58) ;
    when "111011" =>  cout(28) <= datain(59) ;
    when "111100" =>  cout(28) <= datain(60) ;
    when "111101" =>  cout(28) <= datain(61) ;
    when "111110" =>  cout(28) <= datain(62) ;
    when "111111" =>  cout(28) <= datain(63) ;
    when others   =>  cout(28) <= 'Z';
   end case;
  end process;
  
  
  process(reg30)
    begin
         case reg30 is
          when "000000" =>  cout(29) <= datain(0) ;
    when "000001" =>  cout(29) <= datain(1) ;
    when "000010" =>  cout(29) <= datain(2) ;
    when "000011" =>  cout(29) <= datain(3) ;
    when "000100" =>  cout(29) <= datain(4) ;
    when "000101" =>  cout(29) <= datain(5) ;
    when "000110" =>  cout(29) <= datain(6) ;
    when "000111" =>  cout(29) <= datain(7) ;
    when "001000" =>  cout(29) <= datain(8) ;
    when "001001" =>  cout(29) <= datain(9) ;
    when "001010" =>  cout(29) <= datain(10) ;
    when "001011" =>  cout(29) <= datain(11) ;
    when "001100" =>  cout(29) <= datain(12) ;
    when "001101" =>  cout(29) <= datain(13) ;
    when "001110" =>  cout(29) <= datain(14) ;
    when "001111" =>  cout(29) <= datain(15) ;
    when "010000" =>  cout(29) <= datain(16) ;
    when "010001" =>  cout(29) <= datain(17) ;
    when "010010" =>  cout(29) <= datain(18) ;
    when "010011" =>  cout(29) <= datain(19) ;
    when "010100" =>  cout(29) <= datain(20) ;
    when "010101" =>  cout(29) <= datain(21) ;
    when "010110" =>  cout(29) <= datain(22) ;
    when "010111" =>  cout(29) <= datain(23) ;
    when "011000" =>  cout(29) <= datain(24) ;
    when "011001" =>  cout(29) <= datain(25) ;
    when "011010" =>  cout(29) <= datain(26) ;
    when "011011" =>  cout(29) <= datain(27) ;
    when "011100" =>  cout(29) <= datain(28) ;
    when "011101" =>  cout(29) <= datain(29) ;
    when "011110" =>  cout(29) <= datain(30) ;
    when "011111" =>  cout(29) <= datain(31) ;
    when "100000" =>  cout(29) <= datain(32) ;
    when "100001" =>  cout(29) <= datain(33) ;
    when "100010" =>  cout(29) <= datain(34) ;
    when "100011" =>  cout(29) <= datain(35) ;
    when "100100" =>  cout(29) <= datain(36) ;
    when "100101" =>  cout(29) <= datain(37) ;
    when "100110" =>  cout(29) <= datain(38) ;
    when "100111" =>  cout(29) <= datain(39) ;
    when "101000" =>  cout(29) <= datain(40) ;
    when "101001" =>  cout(29) <= datain(41) ;
    when "101010" =>  cout(29) <= datain(42) ;
    when "101011" =>  cout(29) <= datain(43) ;
    when "101100" =>  cout(29) <= datain(44) ;
    when "101101" =>  cout(29) <= datain(45) ;
    when "101110" =>  cout(29) <= datain(46) ;
    when "101111" =>  cout(29) <= datain(47) ;
    when "110000" =>  cout(29) <= datain(48) ;
    when "110001" =>  cout(29) <= datain(49) ;
    when "110010" =>  cout(29) <= datain(50) ;
    when "110011" =>  cout(29) <= datain(51) ;
    when "110100" =>  cout(29) <= datain(52) ;
    when "110101" =>  cout(29) <= datain(53) ;
    when "110110" =>  cout(29) <= datain(54) ;
    when "110111" =>  cout(29) <= datain(55) ;
    when "111000" =>  cout(29) <= datain(56) ;
    when "111001" =>  cout(29) <= datain(57) ;
    when "111010" =>  cout(29) <= datain(58) ;
    when "111011" =>  cout(29) <= datain(59) ;
    when "111100" =>  cout(29) <= datain(60) ;
    when "111101" =>  cout(29) <= datain(61) ;
    when "111110" =>  cout(29) <= datain(62) ;
    when "111111" =>  cout(29) <= datain(63) ;
    when others   =>  cout(29) <= 'Z';
   end case;
  end process;
  
  
  process(reg31)
    begin
         case reg31 is
          when "000000" =>  cout(30) <= datain(0) ;
    when "000001" =>  cout(30) <= datain(1) ;
    when "000010" =>  cout(30) <= datain(2) ;
    when "000011" =>  cout(30) <= datain(3) ;
    when "000100" =>  cout(30) <= datain(4) ;
    when "000101" =>  cout(30) <= datain(5) ;
    when "000110" =>  cout(30) <= datain(6) ;
    when "000111" =>  cout(30) <= datain(7) ;
    when "001000" =>  cout(30) <= datain(8) ;
    when "001001" =>  cout(30) <= datain(9) ;
    when "001010" =>  cout(30) <= datain(10) ;
    when "001011" =>  cout(30) <= datain(11) ;
    when "001100" =>  cout(30) <= datain(12) ;
    when "001101" =>  cout(30) <= datain(13) ;
    when "001110" =>  cout(30) <= datain(14) ;
    when "001111" =>  cout(30) <= datain(15) ;
    when "010000" =>  cout(30) <= datain(16) ;
    when "010001" =>  cout(30) <= datain(17) ;
    when "010010" =>  cout(30) <= datain(18) ;
    when "010011" =>  cout(30) <= datain(19) ;
    when "010100" =>  cout(30) <= datain(20) ;
    when "010101" =>  cout(30) <= datain(21) ;
    when "010110" =>  cout(30) <= datain(22) ;
    when "010111" =>  cout(30) <= datain(23) ;
    when "011000" =>  cout(30) <= datain(24) ;
    when "011001" =>  cout(30) <= datain(25) ;
    when "011010" =>  cout(30) <= datain(26) ;
    when "011011" =>  cout(30) <= datain(27) ;
    when "011100" =>  cout(30) <= datain(28) ;
    when "011101" =>  cout(30) <= datain(29) ;
    when "011110" =>  cout(30) <= datain(30) ;
    when "011111" =>  cout(30) <= datain(31) ;
    when "100000" =>  cout(30) <= datain(32) ;
    when "100001" =>  cout(30) <= datain(33) ;
    when "100010" =>  cout(30) <= datain(34) ;
    when "100011" =>  cout(30) <= datain(35) ;
    when "100100" =>  cout(30) <= datain(36) ;
    when "100101" =>  cout(30) <= datain(37) ;
    when "100110" =>  cout(30) <= datain(38) ;
    when "100111" =>  cout(30) <= datain(39) ;
    when "101000" =>  cout(30) <= datain(40) ;
    when "101001" =>  cout(30) <= datain(41) ;
    when "101010" =>  cout(30) <= datain(42) ;
    when "101011" =>  cout(30) <= datain(43) ;
    when "101100" =>  cout(30) <= datain(44) ;
    when "101101" =>  cout(30) <= datain(45) ;
    when "101110" =>  cout(30) <= datain(46) ;
    when "101111" =>  cout(30) <= datain(47) ;
    when "110000" =>  cout(30) <= datain(48) ;
    when "110001" =>  cout(30) <= datain(49) ;
    when "110010" =>  cout(30) <= datain(50) ;
    when "110011" =>  cout(30) <= datain(51) ;
    when "110100" =>  cout(30) <= datain(52) ;
    when "110101" =>  cout(30) <= datain(53) ;
    when "110110" =>  cout(30) <= datain(54) ;
    when "110111" =>  cout(30) <= datain(55) ;
    when "111000" =>  cout(30) <= datain(56) ;
    when "111001" =>  cout(30) <= datain(57) ;
    when "111010" =>  cout(30) <= datain(58) ;
    when "111011" =>  cout(30) <= datain(59) ;
    when "111100" =>  cout(30) <= datain(60) ;
    when "111101" =>  cout(30) <= datain(61) ;
    when "111110" =>  cout(30) <= datain(62) ;
    when "111111" =>  cout(30) <= datain(63) ;
    when others   =>  cout(30) <= 'Z';
   end case;
  end process;
  
  
  process(reg32)
    begin
         case reg32 is
          when "000000" =>  cout(31) <= datain(0) ;
    when "000001" =>  cout(31) <= datain(1) ;
    when "000010" =>  cout(31) <= datain(2) ;
    when "000011" =>  cout(31) <= datain(3) ;
    when "000100" =>  cout(31) <= datain(4) ;
    when "000101" =>  cout(31) <= datain(5) ;
    when "000110" =>  cout(31) <= datain(6) ;
    when "000111" =>  cout(31) <= datain(7) ;
    when "001000" =>  cout(31) <= datain(8) ;
    when "001001" =>  cout(31) <= datain(9) ;
    when "001010" =>  cout(31) <= datain(10) ;
    when "001011" =>  cout(31) <= datain(11) ;
    when "001100" =>  cout(31) <= datain(12) ;
    when "001101" =>  cout(31) <= datain(13) ;
    when "001110" =>  cout(31) <= datain(14) ;
    when "001111" =>  cout(31) <= datain(15) ;
    when "010000" =>  cout(31) <= datain(16) ;
    when "010001" =>  cout(31) <= datain(17) ;
    when "010010" =>  cout(31) <= datain(18) ;
    when "010011" =>  cout(31) <= datain(19) ;
    when "010100" =>  cout(31) <= datain(20) ;
    when "010101" =>  cout(31) <= datain(21) ;
    when "010110" =>  cout(31) <= datain(22) ;
    when "010111" =>  cout(31) <= datain(23) ;
    when "011000" =>  cout(31) <= datain(24) ;
    when "011001" =>  cout(31) <= datain(25) ;
    when "011010" =>  cout(31) <= datain(26) ;
    when "011011" =>  cout(31) <= datain(27) ;
    when "011100" =>  cout(31) <= datain(28) ;
    when "011101" =>  cout(31) <= datain(29) ;
    when "011110" =>  cout(31) <= datain(30) ;
    when "011111" =>  cout(31) <= datain(31) ;
    when "100000" =>  cout(31) <= datain(32) ;
    when "100001" =>  cout(31) <= datain(33) ;
    when "100010" =>  cout(31) <= datain(34) ;
    when "100011" =>  cout(31) <= datain(35) ;
    when "100100" =>  cout(31) <= datain(36) ;
    when "100101" =>  cout(31) <= datain(37) ;
    when "100110" =>  cout(31) <= datain(38) ;
    when "100111" =>  cout(31) <= datain(39) ;
    when "101000" =>  cout(31) <= datain(40) ;
    when "101001" =>  cout(31) <= datain(41) ;
    when "101010" =>  cout(31) <= datain(42) ;
    when "101011" =>  cout(31) <= datain(43) ;
    when "101100" =>  cout(31) <= datain(44) ;
    when "101101" =>  cout(31) <= datain(45) ;
    when "101110" =>  cout(31) <= datain(46) ;
    when "101111" =>  cout(31) <= datain(47) ;
    when "110000" =>  cout(31) <= datain(48) ;
    when "110001" =>  cout(31) <= datain(49) ;
    when "110010" =>  cout(31) <= datain(50) ;
    when "110011" =>  cout(31) <= datain(51) ;
    when "110100" =>  cout(31) <= datain(52) ;
    when "110101" =>  cout(31) <= datain(53) ;
    when "110110" =>  cout(31) <= datain(54) ;
    when "110111" =>  cout(31) <= datain(55) ;
    when "111000" =>  cout(31) <= datain(56) ;
    when "111001" =>  cout(31) <= datain(57) ;
    when "111010" =>  cout(31) <= datain(58) ;
    when "111011" =>  cout(31) <= datain(59) ;
    when "111100" =>  cout(31) <= datain(60) ;
    when "111101" =>  cout(31) <= datain(61) ;
    when "111110" =>  cout(31) <= datain(62) ;
    when "111111" =>  cout(31) <= datain(63) ;
    when others   =>  cout(31) <= 'Z';
   end case;
  end process;
  
  
  process(reg33)
    begin
         case reg1 is
          when "000000" =>  cout(32) <= datain(0) ;
    when "000001" =>  cout(32) <= datain(1) ;
    when "000010" =>  cout(32) <= datain(2) ;
    when "000011" =>  cout(32) <= datain(3) ;
    when "000100" =>  cout(32) <= datain(4) ;
    when "000101" =>  cout(32) <= datain(5) ;
    when "000110" =>  cout(32) <= datain(6) ;
    when "000111" =>  cout(32) <= datain(7) ;
    when "001000" =>  cout(32) <= datain(8) ;
    when "001001" =>  cout(32) <= datain(9) ;
    when "001010" =>  cout(32) <= datain(10) ;
    when "001011" =>  cout(32) <= datain(11) ;
    when "001100" =>  cout(32) <= datain(12) ;
    when "001101" =>  cout(32) <= datain(13) ;
    when "001110" =>  cout(32) <= datain(14) ;
    when "001111" =>  cout(32) <= datain(15) ;
    when "010000" =>  cout(32) <= datain(16) ;
    when "010001" =>  cout(32) <= datain(17) ;
    when "010010" =>  cout(32) <= datain(18) ;
    when "010011" =>  cout(32) <= datain(19) ;
    when "010100" =>  cout(32) <= datain(20) ;
    when "010101" =>  cout(32) <= datain(21) ;
    when "010110" =>  cout(32) <= datain(22) ;
    when "010111" =>  cout(32) <= datain(23) ;
    when "011000" =>  cout(32) <= datain(24) ;
    when "011001" =>  cout(32) <= datain(25) ;
    when "011010" =>  cout(32) <= datain(26) ;
    when "011011" =>  cout(32) <= datain(27) ;
    when "011100" =>  cout(32) <= datain(28) ;
    when "011101" =>  cout(32) <= datain(29) ;
    when "011110" =>  cout(32) <= datain(30) ;
    when "011111" =>  cout(32) <= datain(31) ;
    when "100000" =>  cout(32) <= datain(32) ;
    when "100001" =>  cout(32) <= datain(33) ;
    when "100010" =>  cout(32) <= datain(34) ;
    when "100011" =>  cout(32) <= datain(35) ;
    when "100100" =>  cout(32) <= datain(36) ;
    when "100101" =>  cout(32) <= datain(37) ;
    when "100110" =>  cout(32) <= datain(38) ;
    when "100111" =>  cout(32) <= datain(39) ;
    when "101000" =>  cout(32) <= datain(40) ;
    when "101001" =>  cout(32) <= datain(41) ;
    when "101010" =>  cout(32) <= datain(42) ;
    when "101011" =>  cout(32) <= datain(43) ;
    when "101100" =>  cout(32) <= datain(44) ;
    when "101101" =>  cout(32) <= datain(45) ;
    when "101110" =>  cout(32) <= datain(46) ;
    when "101111" =>  cout(32) <= datain(47) ;
    when "110000" =>  cout(32) <= datain(48) ;
    when "110001" =>  cout(32) <= datain(49) ;
    when "110010" =>  cout(32) <= datain(50) ;
    when "110011" =>  cout(32) <= datain(51) ;
    when "110100" =>  cout(32) <= datain(52) ;
    when "110101" =>  cout(32) <= datain(53) ;
    when "110110" =>  cout(32) <= datain(54) ;
    when "110111" =>  cout(32) <= datain(55) ;
    when "111000" =>  cout(32) <= datain(56) ;
    when "111001" =>  cout(32) <= datain(57) ;
    when "111010" =>  cout(32) <= datain(58) ;
    when "111011" =>  cout(32) <= datain(59) ;
    when "111100" =>  cout(32) <= datain(60) ;
    when "111101" =>  cout(32) <= datain(61) ;
    when "111110" =>  cout(32) <= datain(62) ;
    when "111111" =>  cout(32) <= datain(63) ;
    when others   =>  cout(32) <= 'Z';
   end case;
  end process;
  
  
  process(reg34)
    begin
         case reg34 is
          when "000000" =>  cout(33) <= datain(0) ;
    when "000001" =>  cout(33) <= datain(1) ;
    when "000010" =>  cout(33) <= datain(2) ;
    when "000011" =>  cout(33) <= datain(3) ;
    when "000100" =>  cout(33) <= datain(4) ;
    when "000101" =>  cout(33) <= datain(5) ;
    when "000110" =>  cout(33) <= datain(6) ;
    when "000111" =>  cout(33) <= datain(7) ;
    when "001000" =>  cout(33) <= datain(8) ;
    when "001001" =>  cout(33) <= datain(9) ;
    when "001010" =>  cout(33) <= datain(10) ;
    when "001011" =>  cout(33) <= datain(11) ;
    when "001100" =>  cout(33) <= datain(12) ;
    when "001101" =>  cout(33) <= datain(13) ;
    when "001110" =>  cout(33) <= datain(14) ;
    when "001111" =>  cout(33) <= datain(15) ;
    when "010000" =>  cout(33) <= datain(16) ;
    when "010001" =>  cout(33) <= datain(17) ;
    when "010010" =>  cout(33) <= datain(18) ;
    when "010011" =>  cout(33) <= datain(19) ;
    when "010100" =>  cout(33) <= datain(20) ;
    when "010101" =>  cout(33) <= datain(21) ;
    when "010110" =>  cout(33) <= datain(22) ;
    when "010111" =>  cout(33) <= datain(23) ;
    when "011000" =>  cout(33) <= datain(24) ;
    when "011001" =>  cout(33) <= datain(25) ;
    when "011010" =>  cout(33) <= datain(26) ;
    when "011011" =>  cout(33) <= datain(27) ;
    when "011100" =>  cout(33) <= datain(28) ;
    when "011101" =>  cout(33) <= datain(29) ;
    when "011110" =>  cout(33) <= datain(30) ;
    when "011111" =>  cout(33) <= datain(31) ;
    when "100000" =>  cout(33) <= datain(32) ;
    when "100001" =>  cout(33) <= datain(33) ;
    when "100010" =>  cout(33) <= datain(34) ;
    when "100011" =>  cout(33) <= datain(35) ;
    when "100100" =>  cout(33) <= datain(36) ;
    when "100101" =>  cout(33) <= datain(37) ;
    when "100110" =>  cout(33) <= datain(38) ;
    when "100111" =>  cout(33) <= datain(39) ;
    when "101000" =>  cout(33) <= datain(40) ;
    when "101001" =>  cout(33) <= datain(41) ;
    when "101010" =>  cout(33) <= datain(42) ;
    when "101011" =>  cout(33) <= datain(43) ;
    when "101100" =>  cout(33) <= datain(44) ;
    when "101101" =>  cout(33) <= datain(45) ;
    when "101110" =>  cout(33) <= datain(46) ;
    when "101111" =>  cout(33) <= datain(47) ;
    when "110000" =>  cout(33) <= datain(48) ;
    when "110001" =>  cout(33) <= datain(49) ;
    when "110010" =>  cout(33) <= datain(50) ;
    when "110011" =>  cout(33) <= datain(51) ;
    when "110100" =>  cout(33) <= datain(52) ;
    when "110101" =>  cout(33) <= datain(53) ;
    when "110110" =>  cout(33) <= datain(54) ;
    when "110111" =>  cout(33) <= datain(55) ;
    when "111000" =>  cout(33) <= datain(56) ;
    when "111001" =>  cout(33) <= datain(57) ;
    when "111010" =>  cout(33) <= datain(58) ;
    when "111011" =>  cout(33) <= datain(59) ;
    when "111100" =>  cout(33) <= datain(60) ;
    when "111101" =>  cout(33) <= datain(61) ;
    when "111110" =>  cout(33) <= datain(62) ;
    when "111111" =>  cout(33) <= datain(63) ;
    when others   =>  cout(33) <= 'Z';
   end case;
  end process;
  
  
  process(reg35)
    begin
         case reg35 is
          when "000000" =>  cout(34) <= datain(0) ;
    when "000001" =>  cout(34) <= datain(1) ;
    when "000010" =>  cout(34) <= datain(2) ;
    when "000011" =>  cout(34) <= datain(3) ;
    when "000100" =>  cout(34) <= datain(4) ;
    when "000101" =>  cout(34) <= datain(5) ;
    when "000110" =>  cout(34) <= datain(6) ;
    when "000111" =>  cout(34) <= datain(7) ;
    when "001000" =>  cout(34) <= datain(8) ;
    when "001001" =>  cout(34) <= datain(9) ;
    when "001010" =>  cout(34) <= datain(10) ;
    when "001011" =>  cout(34) <= datain(11) ;
    when "001100" =>  cout(34) <= datain(12) ;
    when "001101" =>  cout(34) <= datain(13) ;
    when "001110" =>  cout(34) <= datain(14) ;
    when "001111" =>  cout(34) <= datain(15) ;
    when "010000" =>  cout(34) <= datain(16) ;
    when "010001" =>  cout(34) <= datain(17) ;
    when "010010" =>  cout(34) <= datain(18) ;
    when "010011" =>  cout(34) <= datain(19) ;
    when "010100" =>  cout(34) <= datain(20) ;
    when "010101" =>  cout(34) <= datain(21) ;
    when "010110" =>  cout(34) <= datain(22) ;
    when "010111" =>  cout(34) <= datain(23) ;
    when "011000" =>  cout(34) <= datain(24) ;
    when "011001" =>  cout(34) <= datain(25) ;
    when "011010" =>  cout(34) <= datain(26) ;
    when "011011" =>  cout(34) <= datain(27) ;
    when "011100" =>  cout(34) <= datain(28) ;
    when "011101" =>  cout(34) <= datain(29) ;
    when "011110" =>  cout(34) <= datain(30) ;
    when "011111" =>  cout(34) <= datain(31) ;
    when "100000" =>  cout(34) <= datain(32) ;
    when "100001" =>  cout(34) <= datain(33) ;
    when "100010" =>  cout(34) <= datain(34) ;
    when "100011" =>  cout(34) <= datain(35) ;
    when "100100" =>  cout(34) <= datain(36) ;
    when "100101" =>  cout(34) <= datain(37) ;
    when "100110" =>  cout(34) <= datain(38) ;
    when "100111" =>  cout(34) <= datain(39) ;
    when "101000" =>  cout(34) <= datain(40) ;
    when "101001" =>  cout(34) <= datain(41) ;
    when "101010" =>  cout(34) <= datain(42) ;
    when "101011" =>  cout(34) <= datain(43) ;
    when "101100" =>  cout(34) <= datain(44) ;
    when "101101" =>  cout(34) <= datain(45) ;
    when "101110" =>  cout(34) <= datain(46) ;
    when "101111" =>  cout(34) <= datain(47) ;
    when "110000" =>  cout(34) <= datain(48) ;
    when "110001" =>  cout(34) <= datain(49) ;
    when "110010" =>  cout(34) <= datain(50) ;
    when "110011" =>  cout(34) <= datain(51) ;
    when "110100" =>  cout(34) <= datain(52) ;
    when "110101" =>  cout(34) <= datain(53) ;
    when "110110" =>  cout(34) <= datain(54) ;
    when "110111" =>  cout(34) <= datain(55) ;
    when "111000" =>  cout(34) <= datain(56) ;
    when "111001" =>  cout(34) <= datain(57) ;
    when "111010" =>  cout(34) <= datain(58) ;
    when "111011" =>  cout(34) <= datain(59) ;
    when "111100" =>  cout(34) <= datain(60) ;
    when "111101" =>  cout(34) <= datain(61) ;
    when "111110" =>  cout(34) <= datain(62) ;
    when "111111" =>  cout(34) <= datain(63) ;
    when others   =>  cout(34) <= 'Z';
   end case;
  end process;
  
  
  .....................  
  

  

  
              
end behave;
这样应该是最佳的吧,如果不是自由输出,就不用单片机总线操作了,应该很省资源的吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

X

小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-6-17 19:29 , Processed in 0.031691 second(s), 10 queries , Gzip On, MemCached On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表