Entity: SyncTrigRate

Diagram

time TPD_G boolean COMMON_CLK_G boolean ONE_SHOT_G sl IN_POLARITY_G boolean COUNT_EDGES_G real REF_CLK_FREQ_G real REFRESH_RATE_G positive CNT_WIDTH_G sl trigIn sl locClkEn sl locClk sl locRst sl refClk sl refRst sl trigRateUpdated slv(CNT_WIDTH_G-1 downto 0) trigRateOut slv(CNT_WIDTH_G-1 downto 0) trigRateOutMax slv(CNT_WIDTH_G-1 downto 0) trigRateOutMin

Description


Company : SLAC National Accelerator Laboratory

Description: This module measures the trigger rate of a trigger

This file is part of 'SLAC Firmware Standard Library'. It is subject to the license terms in the LICENSE.txt file found in the top-level directory of this distribution and at: https://confluence.slac.stanford.edu/display/ppareg/LICENSE.html. No part of 'SLAC Firmware Standard Library', including this file, may be copied, modified, propagated, or distributed except according to

the terms contained in the LICENSE.txt file.

Generics

Generic name Type Value Description
TPD_G time 1 ns Simulation FF output delay
COMMON_CLK_G boolean false true if locClk & refClk are the same clock
ONE_SHOT_G boolean false
IN_POLARITY_G sl '1' 0 for active LOW, 1 for active HIGH
COUNT_EDGES_G boolean false Count edges or high time
REF_CLK_FREQ_G real 200.0E+6 units of Hz
REFRESH_RATE_G real 1.0E+0 units of Hz
CNT_WIDTH_G positive 32

Ports

Port name Direction Type Description
trigIn in sl Trigger Input (locClk domain)
trigRateUpdated out sl Trigger Rate Output (locClk domain)
trigRateOut out slv(CNT_WIDTH_G-1 downto 0) units of REFRESH_RATE_G
trigRateOutMax out slv(CNT_WIDTH_G-1 downto 0) units of REFRESH_RATE_G
trigRateOutMin out slv(CNT_WIDTH_G-1 downto 0) units of REFRESH_RATE_G
locClkEn in sl Clocks
locClk in sl
locRst in sl
refClk in sl
refRst in sl

Signals

Name Type Description
r RegType
rin RegType
trig sl
trigLast sl
updated sl
trigCnt slv(CNT_WIDTH_G-1 downto 0)
trigCntSync slv(CNT_WIDTH_G-1 downto 0)
rstStat sl

Constants

Name Type Value Description
TIMEOUT_C natural getTimeRatio(REF_CLK_FREQ_G,
REFRESH_RATE_G)-1
REG_INIT_C RegType ( updated => '0',
timer => 0,
trigCntDly => (others => '0'),
rate => (others => '0'))

Types

Name Type Description
RegType

Processes

Instantiations