Entity: ClockManagerUltraScale

Diagram

time TPD_G boolean SIMULATION_G string TYPE_G boolean INPUT_BUFG_G boolean FB_BUFG_G sl RST_IN_POLARITY_G integer range 1 to 7 NUM_CLOCKS_G string BANDWIDTH_G real CLKIN_PERIOD_G integer range 1 to 106 DIVCLK_DIVIDE_G real range 1.0 to 128.0 CLKFBOUT_MULT_F_G integer range 1 to 19 CLKFBOUT_MULT_G real range 1.0 to 128.0 CLKOUT0_DIVIDE_F_G integer range 1 to 128 CLKOUT0_DIVIDE_G integer range 1 to 128 CLKOUT1_DIVIDE_G integer range 1 to 128 CLKOUT2_DIVIDE_G integer range 1 to 128 CLKOUT3_DIVIDE_G integer range 1 to 128 CLKOUT4_DIVIDE_G integer range 1 to 128 CLKOUT5_DIVIDE_G integer range 1 to 128 CLKOUT6_DIVIDE_G real range -360.0 to 360.0 CLKOUT0_PHASE_G real range -360.0 to 360.0 CLKOUT1_PHASE_G real range -360.0 to 360.0 CLKOUT2_PHASE_G real range -360.0 to 360.0 CLKOUT3_PHASE_G real range -360.0 to 360.0 CLKOUT4_PHASE_G real range -360.0 to 360.0 CLKOUT5_PHASE_G real range -360.0 to 360.0 CLKOUT6_PHASE_G real range 0.01 to 0.99 CLKOUT0_DUTY_CYCLE_G real range 0.01 to 0.99 CLKOUT1_DUTY_CYCLE_G real range 0.01 to 0.99 CLKOUT2_DUTY_CYCLE_G real range 0.01 to 0.99 CLKOUT3_DUTY_CYCLE_G real range 0.01 to 0.99 CLKOUT4_DUTY_CYCLE_G real range 0.01 to 0.99 CLKOUT5_DUTY_CYCLE_G real range 0.01 to 0.99 CLKOUT6_DUTY_CYCLE_G integer range 3 to positive'high CLKOUT0_RST_HOLD_G integer range 3 to positive'high CLKOUT1_RST_HOLD_G integer range 3 to positive'high CLKOUT2_RST_HOLD_G integer range 3 to positive'high CLKOUT3_RST_HOLD_G integer range 3 to positive'high CLKOUT4_RST_HOLD_G integer range 3 to positive'high CLKOUT5_RST_HOLD_G integer range 3 to positive'high CLKOUT6_RST_HOLD_G sl CLKOUT0_RST_POLARITY_G sl CLKOUT1_RST_POLARITY_G sl CLKOUT2_RST_POLARITY_G sl CLKOUT3_RST_POLARITY_G sl CLKOUT4_RST_POLARITY_G sl CLKOUT5_RST_POLARITY_G sl CLKOUT6_RST_POLARITY_G sl clkIn sl rstIn sl axilClk sl axilRst AxiLiteReadMasterType axilReadMaster AxiLiteWriteMasterType axilWriteMaster slv(NUM_CLOCKS_G-1 downto 0) clkOut slv(NUM_CLOCKS_G-1 downto 0) rstOut sl locked AxiLiteReadSlaveType axilReadSlave AxiLiteWriteSlaveType axilWriteSlave

Description


Company : SLAC National Accelerator Laboratory

Description: A wrapper over MMCM/PLL to avoid coregen use.

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_G boolean false
TYPE_G string "MMCM" or "PLL"
INPUT_BUFG_G boolean true
FB_BUFG_G boolean true
RST_IN_POLARITY_G sl '1' '0' for active low
NUM_CLOCKS_G integer range 1 to 7
BANDWIDTH_G string "OPTIMIZED" MMCM attributes
CLKIN_PERIOD_G real 10.0 Input period in ns );
DIVCLK_DIVIDE_G integer range 1 to 106 1
CLKFBOUT_MULT_F_G real range 1.0 to 128.0 1.0
CLKFBOUT_MULT_G integer range 1 to 19 5
CLKOUT0_DIVIDE_F_G real range 1.0 to 128.0 1.0
CLKOUT0_DIVIDE_G integer range 1 to 128 1
CLKOUT1_DIVIDE_G integer range 1 to 128 1
CLKOUT2_DIVIDE_G integer range 1 to 128 1
CLKOUT3_DIVIDE_G integer range 1 to 128 1
CLKOUT4_DIVIDE_G integer range 1 to 128 1
CLKOUT5_DIVIDE_G integer range 1 to 128 1
CLKOUT6_DIVIDE_G integer range 1 to 128 1
CLKOUT0_PHASE_G real range -360.0 to 360.0 0.0
CLKOUT1_PHASE_G real range -360.0 to 360.0 0.0
CLKOUT2_PHASE_G real range -360.0 to 360.0 0.0
CLKOUT3_PHASE_G real range -360.0 to 360.0 0.0
CLKOUT4_PHASE_G real range -360.0 to 360.0 0.0
CLKOUT5_PHASE_G real range -360.0 to 360.0 0.0
CLKOUT6_PHASE_G real range -360.0 to 360.0 0.0
CLKOUT0_DUTY_CYCLE_G real range 0.01 to 0.99 0.5
CLKOUT1_DUTY_CYCLE_G real range 0.01 to 0.99 0.5
CLKOUT2_DUTY_CYCLE_G real range 0.01 to 0.99 0.5
CLKOUT3_DUTY_CYCLE_G real range 0.01 to 0.99 0.5
CLKOUT4_DUTY_CYCLE_G real range 0.01 to 0.99 0.5
CLKOUT5_DUTY_CYCLE_G real range 0.01 to 0.99 0.5
CLKOUT6_DUTY_CYCLE_G real range 0.01 to 0.99 0.5
CLKOUT0_RST_HOLD_G integer range 3 to positive'high 3
CLKOUT1_RST_HOLD_G integer range 3 to positive'high 3
CLKOUT2_RST_HOLD_G integer range 3 to positive'high 3
CLKOUT3_RST_HOLD_G integer range 3 to positive'high 3
CLKOUT4_RST_HOLD_G integer range 3 to positive'high 3
CLKOUT5_RST_HOLD_G integer range 3 to positive'high 3
CLKOUT6_RST_HOLD_G integer range 3 to positive'high 3
CLKOUT0_RST_POLARITY_G sl '1'
CLKOUT1_RST_POLARITY_G sl '1'
CLKOUT2_RST_POLARITY_G sl '1'
CLKOUT3_RST_POLARITY_G sl '1'
CLKOUT4_RST_POLARITY_G sl '1'
CLKOUT5_RST_POLARITY_G sl '1'
CLKOUT6_RST_POLARITY_G sl '1'

Ports

Port name Direction Type Description
clkIn in sl
rstIn in sl
clkOut out slv(NUM_CLOCKS_G-1 downto 0)
rstOut out slv(NUM_CLOCKS_G-1 downto 0)
locked out sl
axilClk in sl AXI-Lite Interface
axilRst in sl
axilReadMaster in AxiLiteReadMasterType
axilReadSlave out AxiLiteReadSlaveType
axilWriteMaster in AxiLiteWriteMasterType
axilWriteSlave out AxiLiteWriteSlaveType

Signals

Name Type Description
rstInLoc sl
clkInLoc sl
lockedLoc sl
clkOutMmcm slv(6 downto 0)
clkOutLoc slv(6 downto 0)
clkFbOut sl
clkFbIn sl
drpRdy sl
drpEn sl
drpWe sl
drpAddr slv(6 downto 0)
drpDi slv(15 downto 0)
drpDo slv(15 downto 0)

Constants

Name Type Value Description
RST_HOLD_C IntegerArray(0 to 6) ( CLKOUT0_RST_HOLD_G,
CLKOUT1_RST_HOLD_G,
CLKOUT2_RST_HOLD_G,
CLKOUT3_RST_HOLD_G,
CLKOUT4_RST_HOLD_G,
CLKOUT5_RST_HOLD_G,
CLKOUT6_RST_HOLD_G)
RST_POLARITY_C slv(0 to 6) ( CLKOUT0_RST_POLARITY_G,
CLKOUT1_RST_POLARITY_G,
CLKOUT2_RST_POLARITY_G,
CLKOUT3_RST_POLARITY_G,
CLKOUT4_RST_POLARITY_G,
CLKOUT5_RST_POLARITY_G,
CLKOUT6_RST_POLARITY_G)
CLKOUT0_DIVIDE_F_C real ite(CLKOUT0_DIVIDE_F_G = 1.0,
real(CLKOUT0_DIVIDE_G),
CLKOUT0_DIVIDE_F_G)
CLKFBOUT_MULT_F_C real ite(CLKFBOUT_MULT_F_G = 1.0,
real(CLKFBOUT_MULT_G),
CLKFBOUT_MULT_F_G)

Instantiations