sd_rden : out std_logic_vector(3 downto 0);
sel : in std_logic; -- Selects FrameGen
- clk : in std_logic;
rst : in std_logic;
out_data0 : out std_logic_vector(WIDTH - 1 downto 0);
begin
- Dsel: process (rst, sel)
+ Dsel: process (rst, sel,
+ fg0in, fg1in, fg2in, fg3in,
+ serdes0, serdes1, serdes2, serdes3,
+ fg_full, fg_empty, sd_full, sd_empty, fifo_rdenx)
begin
if rst = '1' then
out_data0 <= (others => '0');
sd_rden : out std_logic_vector(3 downto 0);
sel : in std_logic; -- Selects FrameGen
- clk : in std_logic;
rst : in std_logic;
out_data0 : out std_logic_vector(WIDTH - 1 downto 0);
WIDTH => DATAWIDTH
)
port map(
- clk => clk,
rst => reset,
sel => mux_sel,
fg0in => fifo_data(0),
signal pause_ctr : unsigned(31 downto 0) := (others => '0');
signal down_ctr : unsigned(31 downto 0) := (others => '0');
--signal data_int : unsigned(15 downto 0) := (others => '0');
-signal chan_sig : chan_type := (
+constant chan_sig : chan_type := (
0 => x"CA00",
1 => x"CA01",
2 => x"CA02",
end if;
end process slowcontrol_proc;
+ channel_status_led <= link_sync_flag_i and not rx_dataerror_sync;
+
end architecture;
else
buffer_readout_end_int <= buffer_readout_end_int(0) & TRIGGER_BUSY_BUFFER_READ_IN;
timing_trigger_edge <= timing_trigger_edge(0) & TIMING_TRIGGER_IN;
- reset_trigger_state_edge <= reset_trigger_state_edge(1) & reset_trigger_state;
+ reset_trigger_state_edge <= reset_trigger_state_edge(0) & reset_trigger_state;
end if;
end if;
end process Signal_Edge_Detect;
--dummy
signal dummy_counter : integer range 0 to 8 := 0;
+ signal syncres_i : std_logic := '0';
+
+ --mupix clocks
signal mupix_clk_i : std_logic;
begin
begin
if rising_edge(clk_100_i) then
if dummy_counter = 7 then
- syncres <= not syncres;
+ syncres_i <= not syncres_i;
dummy_counter <= 0;
else
- syncres <= syncres;
dummy_counter <= dummy_counter + 1;
end if;
end if;
end process dummy_proc;
+ syncres <= syncres_i;
+
end architecture;