]> jspc29.x-matter.uni-frankfurt.de Git - trb3.git/commitdiff
Change Clocking
authorTobias Weber <webert@kph.uni-mainz.de>
Wed, 4 Sep 2013 09:28:24 +0000 (11:28 +0200)
committerTobias Weber <webert@kph.uni-mainz.de>
Wed, 4 Sep 2013 09:28:24 +0000 (11:28 +0200)
mupix/sources/graycounter.vhd
mupix/sources/injection_generator.vhd
mupix/sources/spi_if.vhd

index d33adfab0f5996e49d3deb5d305270497adf66c3..426da8e591e1318f0915e2acae2411718e0f0e4b 100644 (file)
@@ -5,7 +5,7 @@
 
 library ieee;
 use ieee.std_logic_1164.all;
-use ieee.std_logic_unsigned.all;
+use ieee.numeric_std.all;
 
 
 entity Graycounter is
index def3a93e634688607bec74033c509dabdd2848c4..1ebfb1e80c5fffd20e2a209e20ac541a6791b9b5 100644 (file)
@@ -61,7 +61,7 @@ begin
         counter1 <= counter_from_slv(15 downto 0);
         counter2 <= counter_from_slv(31 downto 16);
       end if;
-      
+
       if(counter1 > x"0000") then
         testpulse1_i <= '1';
         counter1     <= counter1 - 1;
@@ -81,39 +81,39 @@ begin
 
   testpulse_busy <= '1' when testpulse2_i = '1' or testpulse1_i = '1' else '0';
 
-  SLV_HANDLER : process is
+  SLV_HANDLER : process(clk)
   begin
-    wait until rising_edge(clk);
-    SLV_DATA_OUT         <= (others => '0');
-    SLV_UNKNOWN_ADDR_OUT <= '0';
-    SLV_NO_MORE_DATA_OUT <= '0';
-    SLV_ACK_OUT          <= '0';
-    slv_written          <= slv_written(0) & SLV_WRITE_IN;
-
-    if SLV_READ_IN = '1' then
-      if SLV_ADDR_IN = x"0060" then
-        SLV_DATA_OUT(31 downto 16) <= std_logic_vector(counter2);
-        SLV_DATA_OUT(15 downto 0)  <= std_logic_vector(counter1);
-        SLV_ACK_OUT                <= '1';
-      else
-        SLV_UNKNOWN_ADDR_OUT <= '1';
+    if rising_edge(clk) then
+      SLV_DATA_OUT         <= (others => '0');
+      SLV_UNKNOWN_ADDR_OUT <= '0';
+      SLV_NO_MORE_DATA_OUT <= '0';
+      SLV_ACK_OUT          <= '0';
+      slv_written          <= slv_written(0) & SLV_WRITE_IN;
+
+      if SLV_READ_IN = '1' then
+        if SLV_ADDR_IN = x"0060" then
+          SLV_DATA_OUT(31 downto 16) <= std_logic_vector(counter2);
+          SLV_DATA_OUT(15 downto 0)  <= std_logic_vector(counter1);
+          SLV_ACK_OUT                <= '1';
+        else
+          SLV_UNKNOWN_ADDR_OUT <= '1';
+        end if;
       end if;
-    end if;
 
-    if SLV_WRITE_IN = '1' then
-      if SLV_ADDR_IN = x"0060" then
-        if testpulse_busy = '0' then
-          counter_from_slv <= unsigned(SLV_DATA_IN);
-          SLV_ACK_OUT      <= '1';
+      if SLV_WRITE_IN = '1' then
+        if SLV_ADDR_IN = x"0060" then
+          if testpulse_busy = '0' then
+            counter_from_slv <= unsigned(SLV_DATA_IN);
+            SLV_ACK_OUT      <= '1';
+          else
+            SLV_ACK_OUT <= '1';
+          end if;
+          
         else
-          SLV_ACK_OUT <= '1';
+          SLV_UNKNOWN_ADDR_OUT <= '1';
         end if;
-        
-      else
-        SLV_UNKNOWN_ADDR_OUT <= '1';
       end if;
     end if;
-    
   end process SLV_HANDLER;
 
 --Output Signals
index ad73375527f8c9c5b5b2cbfc040671908b763452..537322fe8042ecc7de4f1a6c2ab1913d6317d866 100644 (file)
@@ -128,45 +128,46 @@ begin
   --x0041: Injection-DACs Register 32 bits
   --x0042: WriteControl Register bit0: Write DACs
   -----------------------------------------------------------------------------
-  SLV_HANDLER : process
+  SLV_HANDLER : process(clk)
   begin  -- process SLV_HANDLER
-    wait until rising_edge(clk);
-    SLV_DATA_OUT         <= (others => '0');
-    SLV_UNKNOWN_ADDR_OUT <= '0';
-    SLV_NO_MORE_DATA_OUT <= '0';
-    SLV_ACK_OUT          <= '0';
-
-    if SLV_READ_IN = '1' then
-      case SLV_ADDR_IN is
-        when x"0040" =>
-          SLV_DATA_OUT <= x"0000" & threshold_reg;
-          SLV_ACK_OUT  <= '1';
-        when x"0041" =>
-          SLV_DATA_OUT <= injection2_reg & injection1_reg;
-          SLV_ACK_OUT  <= '1';
-        when x"0042" =>
-          SLV_DATA_OUT(0) <= wren;
-          SLV_ACK_OUT     <= '1';
-        when others =>
-          SLV_UNKNOWN_ADDR_OUT <= '1';
-      end case;
-    end if;
-
-    if SLV_WRITE_IN = '1' then
-      case SLV_ADDR_IN is
-        when x"0040" =>
-          threshold_reg <= SLV_DATA_IN(15 downto 0);
-          SLV_ACK_OUT  <= '1';
-        when x"0041" =>
-          injection2_reg <= SLV_DATA_IN(31 downto 16);
-          injection1_reg <= SLV_DATA_IN(15 downto 0);
-          SLV_ACK_OUT  <= '1';
-        when x"0042" =>
-          wren <= SLV_DATA_IN(0);
-          SLV_ACK_OUT     <= '1';
-        when others =>
-          SLV_UNKNOWN_ADDR_OUT <= '1';
-      end case;
+    if rising_edge(clk) then
+      SLV_DATA_OUT         <= (others => '0');
+      SLV_UNKNOWN_ADDR_OUT <= '0';
+      SLV_NO_MORE_DATA_OUT <= '0';
+      SLV_ACK_OUT          <= '0';
+
+      if SLV_READ_IN = '1' then
+        case SLV_ADDR_IN is
+          when x"0040" =>
+            SLV_DATA_OUT <= x"0000" & threshold_reg;
+            SLV_ACK_OUT  <= '1';
+          when x"0041" =>
+            SLV_DATA_OUT <= injection2_reg & injection1_reg;
+            SLV_ACK_OUT  <= '1';
+          when x"0042" =>
+            SLV_DATA_OUT(0) <= wren;
+            SLV_ACK_OUT     <= '1';
+          when others =>
+            SLV_UNKNOWN_ADDR_OUT <= '1';
+        end case;
+      end if;
+
+      if SLV_WRITE_IN = '1' then
+        case SLV_ADDR_IN is
+          when x"0040" =>
+            threshold_reg <= SLV_DATA_IN(15 downto 0);
+            SLV_ACK_OUT   <= '1';
+          when x"0041" =>
+            injection2_reg <= SLV_DATA_IN(31 downto 16);
+            injection1_reg <= SLV_DATA_IN(15 downto 0);
+            SLV_ACK_OUT    <= '1';
+          when x"0042" =>
+            wren        <= SLV_DATA_IN(0);
+            SLV_ACK_OUT <= '1';
+          when others =>
+            SLV_UNKNOWN_ADDR_OUT <= '1';
+        end case;
+      end if;
     end if;
   end process SLV_HANDLER;