counterB_out : out std_logic_vector(D_W - 1 downto 0); -- last counter value link B
counterC_out : out std_logic_vector(D_W - 1 downto 0) -- last counter value link C
);
- end component DataDecoder
+ end component DataDecoder;
component ReadoutController
generic(
start_readout <= start_readout_slow_to_buffer or trb_trigger;
- FiFoDataMux_1 : entity work.FiFoDataMux
+ FiFoDataMux_1 : FiFoDataMux
generic map (
g_datawidth => g_datawidthfifo,
g_inputs => g_mupix_links,
LINKS => g_mupix_links
)
port map (
- clk => clk
+ clk => clk,
reset => reset_reg,
- bypass => converter_bypass_i,
+ bypass => decoder_bypass_i,
datain => mupix_filter_dataout_i,
datain_valid => mupix_filter_dataout_valid_i,
counterA_in => mupix_filter_counterA_i,
dataout_valid => decoder_dataout_valid_i,
counterA_out => decoder_counterA_i,
counterB_out => decoder_counterB_i,
- counterC_out => decoder_counterC_i,
+ counterC_out => decoder_counterC_i
);
- cycl_buffer_1 : entity work.CircularMemory
+ cycl_buffer_1 : CircularMemory
generic map(
g_datawidth => g_datawidthtrb,
g_addresswidth => g_cyc_mem_address_width,
outword_freq => cycl_outword_freq
);
- readout_controller_1 : entity work.ReadoutController
+ readout_controller_1 : ReadoutController
generic map(
g_datawidth => g_datawidthtrb,
g_addresswidth => g_cyc_mem_address_width
dataout <= readout_controller_data_out;
data_valid <= readout_controller_data_valid;
-end architecture;
+end rtl;
add_file -vhdl -lib "work" "sources/Datapath/MuPixUnpacker.vhd"
add_file -vhdl -lib "work" "sources/Datapath/LinkSynchronizer.vhd"
add_file -vhdl -lib "work" "sources/Datapath/DataFilter.vhd"
+add_file -vhdl -lib "work" "sources/Datapath/DataDecoder.vhd"
+add_file -vhdl -lib "work" "sources/Datapath/PixelAddressDecode.vhd"
+add_file -vhdl -lib "work" "sources/Datapath/Gray2Binary.vhd"
add_file -vhdl -lib "work" "sources/Simulation/DatasourceSelector.vhd"
add_file -vhdl -lib "work" "sources/Simulation/FrameGeneratorMux.vhd"