1 ------------------------------------------------------------------------------- 2 -- File : SynchronizerOneShotVector.vhd 3 -- Company : SLAC National Accelerator Laboratory 4 -- Created : 2014-04-11 5 -- Last update: 2016-11-04 6 ------------------------------------------------------------------------------- 7 -- Description: Wrapper for multiple SynchronizerOneShot modules 8 ------------------------------------------------------------------------------- 9 -- This file is part of 'SLAC Firmware Standard Library'. 10 -- It is subject to the license terms in the LICENSE.txt file found in the 11 -- top-level directory of this distribution and at: 12 -- https://confluence.slac.stanford.edu/display/ppareg/LICENSE.html. 13 -- No part of 'SLAC Firmware Standard Library', including this file, 14 -- may be copied, modified, propagated, or distributed except according to 15 -- the terms contained in the LICENSE.txt file. 16 ------------------------------------------------------------------------------- 19 use ieee.std_logic_1164.
all;
24 --! @ingroup base_sync 27 TPD_G : := 1 ns;
-- Simulation FF output delay 30 BYPASS_SYNC_G : := false;
-- Bypass RstSync module for synchronous data configuration 31 RELEASE_DELAY_G : positive := 3;
-- Delay between deassertion of async and sync resets 34 PULSE_WIDTH_G : positive := 1;
-- one-shot pulse width duration (units of clk cycles) 37 clk : in sl;
-- Clock to be SYNC'd to 41 end SynchronizerOneShotVector;
52 retVar := (others => '1');
54 for i in WIDTH_G-1 downto 0 loop 55 retVar(i) := INPUT(i);
59 end function FillVectorArray;
67 for i in (WIDTH_G-1) downto 0 generate 87 end architecture mapping;
PolarityVectorArray := FillVectorArray(IN_POLARITY_G ) IN_POLARITY_C
RELEASE_DELAY_Gpositive := 3
RST_ASYNC_Gboolean := false
PULSE_WIDTH_Gpositive := 1
out dataOutslv( WIDTH_G- 1 downto 0)
in rstsl :=not RST_POLARITY_G
RELEASE_DELAY_Gpositive := 3
RST_ASYNC_Gboolean := false
in rstsl :=not RST_POLARITY_G
BYPASS_SYNC_Gboolean := false
( WIDTH_G- 1 downto 0) sl PolarityVectorArray
BYPASS_SYNC_Gboolean := false
in dataInslv( WIDTH_G- 1 downto 0)
PULSE_WIDTH_Gpositive := 1
PolarityVectorArray := FillVectorArray(OUT_POLARITY_G ) OUT_POLARITY_C
PolarityVectorArray FillVectorArrayINPUT,