<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<IP xmlns:ns0="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://mcd.rou.st.com/modules.php?name=mcu" DBVersion="V4.0" Name="RCC" Version="STM32F413-rcc_v1_0" IPType="peripheral" 	ns0:schemaLocation="http://mcd.rou.st.com/modules.php?name=mcu ../../../../../../../doc/V4/Development/Specifications/db/IP_Modes.xsd">
    <About>RCC: Reset and Clock Control</About>
    <RefParameter Visible="false" Comment="Oscillator Type" DefaultValue="+OscillatorTypeHSI+|OscillatorTypeLSI+|OscillatorTypeHSE+|OscillatorTypeLSE" Name="OscillatorType" Type="list"/>
     <RefParameter Name="HSE_Timout"   Comment="HSE Startup Timout Value (ms)" Type="integer" DefaultValue="100" Min="1"  Max="4294967295" Group="RCC Parameters"/>
	 <RefParameter Name="LSE_Timout"   Comment="LSE Startup Timout Value (ms)" Type="integer" DefaultValue="5000" Min="1" Max="4294967295"  Group="RCC Parameters"/>
	 
	 <!--Les multiplicateurs-->
    
    <!--PLL MUL-->
    <RefParameter Visible="false" Comment="PLLN" DefaultValue="192" Max="432" Min="50" Name="PLLN" Type="integer"/>

	
    <!--PLLSAI MUL-->
    <RefParameter Visible="false" Comment="PLLI2SN" DefaultValue="192" Max="432" Min="50" Name="PLLI2SN" Type="integer"/>
	
    <!--APB1 MUL for TIM-->
    <RefParameter Visible="false" Comment="APB1 Timer Clock Divider" DefaultValue="1" Name="APB1TimCLKDivider" Type="integer" Max="1" Min="1">
        <Condition Diagnostic="" Expression="((APB1CLKDivider=RCC_HCLK_DIV1)&amp;(RCC_TIM_PRescaler_Selection=RCC_TIMPRES_DESACTIVATED))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB1 Timer Clock Divider" DefaultValue="2" Name="APB1TimCLKDivider" Type="integer" Max="2" Min="2">
        <Condition Diagnostic="" Expression="(RCC_TIM_PRescaler_Selection=RCC_TIMPRES_DESACTIVATED)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB1 Timer Clock Divider" DefaultValue="1" Name="APB1TimCLKDivider" Type="integer" Max="1" Min="1">
        <Condition Diagnostic="" Expression="(APB1CLKDivider=RCC_HCLK_DIV1)&amp;(RCC_TIM_PRescaler_Selection=RCC_TIMPRES_ACTIVATED)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB1 Timer Clock Divider" DefaultValue="2" Name="APB1TimCLKDivider" Type="integer" Max="2" Min="2">
        <Condition Diagnostic="" Expression="(APB1CLKDivider=RCC_HCLK_DIV2)&amp;(RCC_TIM_PRescaler_Selection=RCC_TIMPRES_ACTIVATED)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB1 Timer Clock Divider" DefaultValue="4" Name="APB1TimCLKDivider" Type="integer" Max="4" Min="4">
        <Condition Diagnostic="" Expression="(APB1CLKDivider=RCC_HCLK_DIV4)&amp;(RCC_TIM_PRescaler_Selection=RCC_TIMPRES_ACTIVATED)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB1 Timer Clock Divider" DefaultValue="4" Name="APB1TimCLKDivider" Type="integer" Max="4" Min="4">
        <Condition Diagnostic="" Expression="(RCC_TIM_PRescaler_Selection=RCC_TIMPRES_ACTIVATED)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB1 Timer Clock Divider" DefaultValue="2" Name="APB1TimCLKDivider" Type="integer" Max="2" Min="2"/>
	
    <!--APB1 MUL for TIM-->
    <RefParameter Visible="false" Comment="APB2 Timer Clock Divider" DefaultValue="1" Name="APB2TimCLKDivider" Type="integer" Max="1" Min="1">
<Condition Diagnostic="" Expression="((APB2CLKDivider=RCC_HCLK_DIV1)&amp;(RCC_TIM_PRescaler_Selection=RCC_TIMPRES_DESACTIVATED))"/>  
  </RefParameter>
    <RefParameter Visible="false" Comment="APB2 Timer Clock Divider" DefaultValue="2" Name="APB2TimCLKDivider" Type="integer" Max="2" Min="2">
        <Condition Diagnostic="" Expression="(RCC_TIM_PRescaler_Selection=RCC_TIMPRES_DESACTIVATED)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB2 Timer Clock Divider" DefaultValue="1" Name="APB2TimCLKDivider" Type="integer" Max="1" Min="1">
        <Condition Diagnostic="" Expression="(APB2CLKDivider=RCC_HCLK_DIV1)&amp;(RCC_TIM_PRescaler_Selection=RCC_TIMPRES_ACTIVATED)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB2 Timer Clock Divider" DefaultValue="2" Name="APB2TimCLKDivider" Type="integer" Max="2" Min="2">
        <Condition Diagnostic="" Expression="(APB2CLKDivider=RCC_HCLK_DIV2)&amp;(RCC_TIM_PRescaler_Selection=RCC_TIMPRES_ACTIVATED)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB2 Timer Clock Divider" DefaultValue="4" Name="APB2TimCLKDivider" Type="integer" Max="4" Min="4">
        <Condition Diagnostic="" Expression="(APB2CLKDivider=RCC_HCLK_DIV4)&amp;(RCC_TIM_PRescaler_Selection=RCC_TIMPRES_ACTIVATED)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB2 Timer Clock Divider" DefaultValue="4" Name="APB2TimCLKDivider" Type="integer" Max="4" Min="4">
        <Condition Diagnostic="" Expression="(RCC_TIM_PRescaler_Selection=RCC_TIMPRES_ACTIVATED)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB2 Timer Clock Divider" DefaultValue="2" Name="APB2TimCLKDivider" Type="integer" Max="2" Min="2"/>
	
    <!--les diviseurs-->

		
    <!--HSE devisor for RTC Mux-->

    <RefParameter Visible="false" Comment="RTC Clock Source_HSEDiv" DefaultValue="RCC_RTCCLKSOURCE_HSE_DIV2" Name="RCC_RTC_Clock_Source_FROM_HSE" Type="list" IP="RTC">
        <PossibleValue Comment="2"  Value="RCC_RTCCLKSOURCE_HSE_DIV2"/>
        <PossibleValue Comment="3"  Value="RCC_RTCCLKSOURCE_HSE_DIV3"/>
        <PossibleValue Comment="4"  Value="RCC_RTCCLKSOURCE_HSE_DIV4"/>
        <PossibleValue Comment="5"  Value="RCC_RTCCLKSOURCE_HSE_DIV5"/>
        <PossibleValue Comment="6"  Value="RCC_RTCCLKSOURCE_HSE_DIV6"/>
        <PossibleValue Comment="7"  Value="RCC_RTCCLKSOURCE_HSE_DIV7"/>
        <PossibleValue Comment="8"  Value="RCC_RTCCLKSOURCE_HSE_DIV8"/>
        <PossibleValue Comment="9"  Value="RCC_RTCCLKSOURCE_HSE_DIV9"/>
        <PossibleValue Comment="10" Value="RCC_RTCCLKSOURCE_HSE_DIV10"/>
        <PossibleValue Comment="11" Value="RCC_RTCCLKSOURCE_HSE_DIV11"/>
        <PossibleValue Comment="12" Value="RCC_RTCCLKSOURCE_HSE_DIV12"/>
        <PossibleValue Comment="13" Value="RCC_RTCCLKSOURCE_HSE_DIV13"/>
        <PossibleValue Comment="14" Value="RCC_RTCCLKSOURCE_HSE_DIV14"/>
        <PossibleValue Comment="15" Value="RCC_RTCCLKSOURCE_HSE_DIV15"/>
        <PossibleValue Comment="16" Value="RCC_RTCCLKSOURCE_HSE_DIV16"/>
        <PossibleValue Comment="17" Value="RCC_RTCCLKSOURCE_HSE_DIV17"/>
        <PossibleValue Comment="18" Value="RCC_RTCCLKSOURCE_HSE_DIV18"/>
        <PossibleValue Comment="19" Value="RCC_RTCCLKSOURCE_HSE_DIV19"/>
        <PossibleValue Comment="20" Value="RCC_RTCCLKSOURCE_HSE_DIV20"/>
        <PossibleValue Comment="21" Value="RCC_RTCCLKSOURCE_HSE_DIV21"/>
        <PossibleValue Comment="22" Value="RCC_RTCCLKSOURCE_HSE_DIV22"/>
        <PossibleValue Comment="23" Value="RCC_RTCCLKSOURCE_HSE_DIV23"/>
        <PossibleValue Comment="24" Value="RCC_RTCCLKSOURCE_HSE_DIV24"/>
        <PossibleValue Comment="25" Value="RCC_RTCCLKSOURCE_HSE_DIV25"/>
        <PossibleValue Comment="26" Value="RCC_RTCCLKSOURCE_HSE_DIV26"/>
        <PossibleValue Comment="27" Value="RCC_RTCCLKSOURCE_HSE_DIV27"/>
        <PossibleValue Comment="28" Value="RCC_RTCCLKSOURCE_HSE_DIV28"/>
        <PossibleValue Comment="29" Value="RCC_RTCCLKSOURCE_HSE_DIV29"/>
        <PossibleValue Comment="30" Value="RCC_RTCCLKSOURCE_HSE_DIV30"/>
        <PossibleValue Comment="31" Value="RCC_RTCCLKSOURCE_HSE_DIV31"/>
    </RefParameter>
	
    <!--MCO1/2 output devisor-->
    <RefParameter Visible="false" Comment="MCO1 Prescaler" DefaultValue="RCC_MCODIV_1" Name="RCC_MCODiv1" Type="list">
        <PossibleValue Comment="1" Value="RCC_MCODIV_1"/>
        <PossibleValue Comment="2" Value="RCC_MCODIV_2"/>
        <PossibleValue Comment="3" Value="RCC_MCODIV_3"/>
        <PossibleValue Comment="4" Value="RCC_MCODIV_4"/>
        <PossibleValue Comment="5" Value="RCC_MCODIV_5"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="MCO2 Prescaler" DefaultValue="RCC_MCODIV_1" Name="RCC_MCODiv2" Type="list">
        <PossibleValue Comment="1" Value="RCC_MCODIV_1"/>
        <PossibleValue Comment="2" Value="RCC_MCODIV_2"/>
        <PossibleValue Comment="3" Value="RCC_MCODIV_3"/>
        <PossibleValue Comment="4" Value="RCC_MCODIV_4"/>
        <PossibleValue Comment="5" Value="RCC_MCODIV_5"/>
    </RefParameter>
	
    <!--AHB for APB1/2 devisor-->
    <RefParameter Visible="false" Comment="AHB Clock Divider" DefaultValue="RCC_SYSCLK_DIV1" Name="AHBCLKDivider" Type="list">
        <PossibleValue Comment="1"   Value="RCC_SYSCLK_DIV1"/>
        <PossibleValue Comment="2"   Value="RCC_SYSCLK_DIV2"/>
        <PossibleValue Comment="4"   Value="RCC_SYSCLK_DIV4"/>
        <PossibleValue Comment="8"   Value="RCC_SYSCLK_DIV8"/>
        <PossibleValue Comment="16"  Value="RCC_SYSCLK_DIV16"/>
        <PossibleValue Comment="64"  Value="RCC_SYSCLK_DIV64"/>
        <PossibleValue Comment="128" Value="RCC_SYSCLK_DIV128"/>
        <PossibleValue Comment="256" Value="RCC_SYSCLK_DIV256"/>
        <PossibleValue Comment="512" Value="RCC_SYSCLK_DIV512"/>
    </RefParameter>

	<!--SAI1A/2 output devisor-->
    <RefParameter Visible="false" Comment="PLLDivR" DefaultValue="1" Name="PLLDivR" Type="integer" Max="32" Min="1"/>
 
    <!--SAI1B/2 output devisor-->
    <RefParameter Visible="false" Comment="PLLI2S_DivR" DefaultValue="1" Name="PLLI2SDivR" Type="integer" Max="32" Min="1"/>
    
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_1" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=1)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_2" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=2)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_2"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_3" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=3)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_3"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_4" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=4)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_4"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_5" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=5)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_5"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_6" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=6)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_6"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_7" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=7)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_7"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_8" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=8)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_8"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_9" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=9)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_9"/>
    </RefParameter>

    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_10" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=10)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_10"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_11" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=11)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_11"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_12" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=12)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_12"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_13" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=13)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_13"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_14" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=14)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_14"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_15" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=15)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_15"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_16" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=16)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_16"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_17" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=17)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_17"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_18" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=18)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_18"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_19" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=19)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_19"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_20" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=20)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_20"/>
    </RefParameter>

    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_21" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=21)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_21"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_22" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=22)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_22"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_23" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=23)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_23"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_24" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=24)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_24"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_25" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=25)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_25"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_26" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=26)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_26"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_27" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=27)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_27"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_28" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=28)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_28"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_29" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=29)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_29"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_30" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=30)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_30"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_31" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=31)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_31"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SDIVR_DIV_32" Name="PLLI2SDivQ_R" Type="list">
        <Condition Expression="(PLLI2SDivR=32)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SDIVR" Value="RCC_PLLI2SDIVR_DIV_32"/>
    </RefParameter>

    <!--APB1/2  devisor-->
    <RefParameter Visible="false" Comment="APB1 Clock Divider" DefaultValue="RCC_HCLK_DIV1" Name="APB1CLKDivider" Type="list">
        <PossibleValue Comment="1"  Value="RCC_HCLK_DIV1"/>
        <PossibleValue Comment="2"  Value="RCC_HCLK_DIV2"/>
        <PossibleValue Comment="4"  Value="RCC_HCLK_DIV4"/>
        <PossibleValue Comment="8"  Value="RCC_HCLK_DIV8"/>
        <PossibleValue Comment="16" Value="RCC_HCLK_DIV16"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="APB2 Clock Divider" DefaultValue="RCC_HCLK_DIV1" Name="APB2CLKDivider" Type="list">
        <PossibleValue Comment="1"  Value="RCC_HCLK_DIV1"/>
        <PossibleValue Comment="2"  Value="RCC_HCLK_DIV2"/>
        <PossibleValue Comment="4"  Value="RCC_HCLK_DIV4"/>
        <PossibleValue Comment="8"  Value="RCC_HCLK_DIV8"/>
        <PossibleValue Comment="16" Value="RCC_HCLK_DIV16"/>
    </RefParameter>
    <!--Cortex devisor-->

    <RefParameter Visible="false" Comment="Cortex Div" DefaultValue="SYSTICK_CLKSOURCE_HCLK" Name="Cortex_Div" Type="list">
        <PossibleValue Comment="1" Value="SYSTICK_CLKSOURCE_HCLK" Semaphore="HCLKDiv1"/>
        <PossibleValue Comment="8" Value="SYSTICK_CLKSOURCE_HCLK_DIV8"/>
    </RefParameter>	
    <RefParameter Visible="false" Comment="Cortex_DivARG" DefaultValue="HAL_RCC_GetHCLKFreq()/1000" Name="Cortex_DivARG" Type="String">
        <Condition Expression="HCLKDiv1" Diagnostic=""/>
    </RefParameter>	
    <RefParameter Visible="false" Comment="Cortex_DivARG" DefaultValue="HAL_RCC_GetHCLKFreq()/8000" Name="Cortex_DivARG" Type="String"/>
    <!--PLL Devisor PLLM & PLLP & PLLQ & PLLR-->

    <RefParameter Visible="false" Comment="PLLM" DefaultValue="16" Max="63" Min="2" Name="PLLM" Type="integer"/>
    <RefParameter Visible="false" Comment="PLLR" DefaultValue="2"  Max="7"  Min="2" Name="PLLR" Type="integer"/>
    <RefParameter Visible="false" Comment="PLLQ" DefaultValue="2"  Max="15" Min="2" Name="PLLQ" Type="integer"/>
    <RefParameter Visible="false" Comment="PLLP" DefaultValue="RCC_PLLP_DIV2" Name="PLLP" Type="list">
        <PossibleValue Comment="2" Value="RCC_PLLP_DIV2"/>
        <PossibleValue Comment="4" Value="RCC_PLLP_DIV4"/>
        <PossibleValue Comment="6" Value="RCC_PLLP_DIV6"/>
        <PossibleValue Comment="8" Value="RCC_PLLP_DIV8"/>
    </RefParameter>
   
	
    <!--PLLI2S Devisor PLLI2SM & PLLI2SQ & PLLI2SR-->

    <RefParameter Visible="false" Comment="PLLI2SM"    DefaultValue="16" Max="63" Min="2" Name="PLLI2SM"    Type="integer"/>
    <RefParameter Visible="false" Comment="PLLI2SR"    DefaultValue="2"  Max="7"  Min="2" Name="PLLI2SR"    Type="integer"/>
    <RefParameter Visible="false" Comment="PLLI2SQ"    DefaultValue="2"  Max="15" Min="2" Name="PLLI2SQ"    Type="integer"/>
	
    
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SR_DIV_2" Name="PLLI2SQ_R" Type="list">
        <Condition Expression="(PLLI2SR=2)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SR" Value="RCC_PLLI2SR_DIV_2"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SR_DIV_3" Name="PLLI2SQ_R" Type="list">
        <Condition Expression="(PLLI2SR=3)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SR" Value="RCC_PLLI2SR_DIV_3"/>
    </RefParameter>
	<RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SR_DIV_4" Name="PLLI2SQ_R" Type="list">
        <Condition Expression="(PLLI2SR=4)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SR" Value="RCC_PLLI2SR_DIV_4"/>
    </RefParameter>
	<RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SR_DIV_5" Name="PLLI2SQ_R" Type="list">
        <Condition Expression="(PLLI2SR=5)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SR" Value="RCC_PLLI2SR_DIV_5"/>
    </RefParameter>
	<RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SR_DIV_6" Name="PLLI2SQ_R" Type="list">
        <Condition Expression="(PLLI2SR=6)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SR" Value="RCC_PLLI2SR_DIV_6"/>
    </RefParameter>
	<RefParameter Visible="false" Comment="PLLI2SLL Source" DefaultValue="RCC_PLLI2SR_DIV_7" Name="PLLI2SQ_R" Type="list">
        <Condition Expression="(PLLI2SR=7)" Diagnostic=""/>
        <PossibleValue Comment="LL RCC PLLI2SR" Value="RCC_PLLI2SR_DIV_7"/>
    </RefParameter>
    <!--Les multiplexeurs-->

	
    <!-- FMPI2C1 Clock Selection-->
    <RefParameter Visible="false" Comment="FMPI2C1 Clock Selection" DefaultValue="RCC_FMPI2C1CLKSOURCE_APB" Name="FMPI2C1Selection" Type="list" IP="FMPI2C1">
        <PossibleValue Comment="FMPI2C1 sys clock" Value="RCC_FMPI2C1CLKSOURCE_SYSCLK" />
        <PossibleValue Comment="FMPI2C1 Hsi"       Value="RCC_FMPI2C1CLKSOURCE_HSI"/>
        <PossibleValue Comment="FMPI2C1 PCLK1"     Value="RCC_FMPI2C1CLKSOURCE_APB"/>
    </RefParameter>
	
    <!-- USB Clock Selection-->
    <RefParameter Visible="false" Comment="USB Clock Selection" DefaultValue="RCC_CLK48CLKSOURCE_PLLQ" Name="USBCLockSelection" Type="list" IP="USB,SDIO,RNG">        
        <PossibleValue Comment="USB PLLQ Devisor"    Value="RCC_CLK48CLKSOURCE_PLLQ"    Semaphore="USBSourceisPLLQ"/>
        <PossibleValue Comment="USB PLLI2SQ Devisor" Value="RCC_CLK48CLKSOURCE_PLLI2SQ" Semaphore="USBSourceisPLLI2SQ"/>
    </RefParameter>
	
    <!-- DFSDM Clock Selection-->
    <RefParameter Visible="false" Comment="DFSDM Clock Selection" DefaultValue="RCC_DFSDM1CLKSOURCE_APB2" Name="DFSDMSelection" Type="list" IP="DFSDM1">
        <PossibleValue Comment="DFSDM SOURCE APB2"      Value="RCC_DFSDM1CLKSOURCE_APB2"      Semaphore="DFSDMisAPB2"/>
        <PossibleValue Comment="DFSDM SOURCE SYSCLK"    Value="RCC_DFSDM1CLKSOURCE_SYSCLK"    Semaphore="DFSDMissys"/>
    </RefParameter>
    
    <!-- DFSDM2 Clock Selection-->
    <RefParameter Visible="false" Comment="DFSDM Clock Selection" DefaultValue="RCC_DFSDM2CLKSOURCE_APB2" Name="DFSDM2Selection" Type="list" IP="DFSDM2">
        <PossibleValue Comment="DFSDM2 SOURCE APB2"      Value="RCC_DFSDM2CLKSOURCE_APB2"      Semaphore="DFSDM2isAPB2"/>
        <PossibleValue Comment="DFSDM2 SOURCE SYSCLK"    Value="RCC_DFSDM2CLKSOURCE_SYSCLK"    Semaphore="DFSDM2issys"/>
    </RefParameter>

    <!-- SAI1A Clock Selection-->
    <RefParameter Visible="false" Comment="SAI1A CLock Selection" DefaultValue="RCC_SAIACLKSOURCE_PLLSRC" Name="SAI1ACLockSourceSelection" Type="list">
        <PossibleValue Comment="SAI1A Pllsource"   Value="RCC_SAIACLKSOURCE_PLLSRC"   Semaphore="SAI1ASourceIsPllsrc"/>
        <PossibleValue Comment="SAI1A PLLR"        Value="RCC_SAIACLKSOURCE_PLLR"     Semaphore="SAI1ASourceIsPllR"/>
        <PossibleValue Comment="SAI1A PLLI2SR"     Value="RCC_SAIACLKSOURCE_PLLI2SR"  Semaphore="SAI1ASourceIsPLLI2SR"/>
        <PossibleValue Comment="SAI1A I2S_CKIN"    Value="RCC_SAIACLKSOURCE_EXT"      Semaphore="SAI1ASourceIsEXT"/>
    </RefParameter>
	    <!-- SAI1A Clock Selection-->
    <RefParameter Visible="false" Comment="SAI1A CLock Selection" DefaultValue="SAI_CLKSOURCE_HS" Name="SAI1ASelection" Type="list" >
	  <Condition Expression="SAI1ACLockSourceSelection=RCC_SAIACLKSOURCE_PLLSRC" Diagnostic=""/>
        <PossibleValue Comment="SAI1A Pllsource"   Value="SAI_CLKSOURCE_HS"   />
    </RefParameter>
	 <RefParameter Visible="false" Comment="SAI1A CLock Selection" DefaultValue="SAI_CLKSOURCE_PLLR" Name="SAI1ASelection" Type="list" >
	  <Condition Expression="SAI1ACLockSourceSelection=RCC_SAIACLKSOURCE_PLLR" Diagnostic=""/>
        <PossibleValue Comment="SAI1A Pllsource"   Value="SAI_CLKSOURCE_PLLR"   />
    </RefParameter>
	 <RefParameter Visible="false" Comment="SAI1A CLock Selection" DefaultValue="SAI_CLKSOURCE_PLLI2S" Name="SAI1ASelection" Type="list" >
	  <Condition Expression="SAI1ACLockSourceSelection=RCC_SAIACLKSOURCE_PLLI2SR" Diagnostic=""/>
        <PossibleValue Comment="SAI1A Pllsource"   Value="SAI_CLKSOURCE_PLLI2S"   />
    </RefParameter>
	 <RefParameter Visible="false" Comment="SAI1A CLock Selection" DefaultValue="SAI_CLKSOURCE_EXT" Name="SAI1ASelection" Type="list" >
        <PossibleValue Comment="SAI1A Pllsource"   Value="SAI_CLKSOURCE_EXT"   />
    </RefParameter>	

	<RefParameter Visible="false" Comment="SAI1A CLock Selection" DefaultValue="+SAI1ASelection" Name="SAI1ASourceSelection" Type="list" IP="SAIA">
     
    </RefParameter>
	  
 
    <!-- SAI1B Clock Selection-->
    <RefParameter Visible="false" Comment="SAI1B CLock Selection" DefaultValue="RCC_SAIBCLKSOURCE_PLLSRC" Name="SAI1BCLockSourceSelection" Type="list" >
        <PossibleValue Comment="SAI1B Pllsource"   Value="RCC_SAIBCLKSOURCE_PLLSRC"   Semaphore="SAI1BSourceIsPllsrc"/>
        <PossibleValue Comment="SAI1B PLLR"        Value="RCC_SAIBCLKSOURCE_PLLR"     Semaphore="SAI1BSourceIsPllR"/>
        <PossibleValue Comment="SAI1B PLLI2SR"     Value="RCC_SAIBCLKSOURCE_PLLI2SR"  Semaphore="SAI1BSourceIsPLLI2SR"/>
        <PossibleValue Comment="SAI1B I2S_CKIN"    Value="RCC_SAIBCLKSOURCE_EXT"      Semaphore="SAI1BSourceIsEXT"/>
    </RefParameter>
	 <!-- SAI1B Clock Selection-->
    <RefParameter Visible="false" Comment="SAI1A CLock Selection" DefaultValue="SAI_CLKSOURCE_HS" Name="SAI1BSelection" Type="list" >
	  <Condition Expression="SAI1BSourceIsPllsrc" Diagnostic=""/>
        <PossibleValue Comment="SAI1A Pllsource"   Value="SAI_CLKSOURCE_HS"   />
    </RefParameter>
	 <RefParameter Visible="false" Comment="SAI1A CLock Selection" DefaultValue="SAI_CLKSOURCE_PLLR" Name="SAI1BSelection" Type="list" >
	  <Condition Expression="SAI1BSourceIsPllR" Diagnostic=""/>
        <PossibleValue Comment="SAI1A Pllsource"   Value="SAI_CLKSOURCE_PLLR"   />
    </RefParameter>
	 <RefParameter Visible="false" Comment="SAI1A CLock Selection" DefaultValue="SAI_CLKSOURCE_PLLI2S" Name="SAI1BSelection" Type="list" >
	  <Condition Expression="SAI1BSourceIsPLLI2SR" Diagnostic=""/>
        <PossibleValue Comment="SAI1A Pllsource"   Value="SAI_CLKSOURCE_PLLI2S"   />
    </RefParameter>
	 <RefParameter Visible="false" Comment="SAI1A CLock Selection" DefaultValue="SAI_CLKSOURCE_EXT" Name="SAI1BSelection" Type="list" >
        <PossibleValue Comment="SAI1A Pllsource"   Value="SAI_CLKSOURCE_EXT"   />
    </RefParameter>	

	<RefParameter Visible="false" Comment="SAI1A CLock Selection" DefaultValue="+SAI1BSelection" Name="SAI1BSourceSelection" Type="list" IP="SAIB">
     
    </RefParameter>
    
    <!-- LPTimer Clock Selection-->
    <RefParameter Visible="false" Comment="LPTimer CLock Selection" DefaultValue="RCC_LPTIM1CLKSOURCE_PCLK" Name="LPTIM1CLockSelection" Type="list" IP="LPTimer">
        <PossibleValue Comment="LPTimer PCLK1"    Value="RCC_LPTIM1CLKSOURCE_PCLK"    Semaphore="LPTimerSourceIsPclk"/>
        <PossibleValue Comment="LPTimer LSI"      Value="RCC_LPTIM1CLKSOURCE_LSI"     Semaphore="LPTimerSourceIsLSI"/>
        <PossibleValue Comment="LPTimer HSI"      Value="RCC_LPTIM1CLKSOURCE_HSI"     Semaphore="LPTimerSourceIsHSI"/>
        <PossibleValue Comment="LPTimer LSE"      Value="RCC_LPTIM1CLKSOURCE_LSE"     Semaphore="LPTimerSourceIsLSE"/>
    </RefParameter>
   
     <!-- DFSDMAudio Clock Selection-->
    <RefParameter Visible="false" Comment="DFSDM Clock Selection" DefaultValue="RCC_DFSDM1AUDIOCLKSOURCE_I2SAPB1" Name="DFSDMAudioSelection" Type="list" IP="DFSDM1">
        <PossibleValue Comment="DFSDM SOURCE I2S1"      Value="RCC_DFSDM1AUDIOCLKSOURCE_I2SAPB1"      Semaphore="DFSDMADSourceI2S1"/>
        <PossibleValue Comment="DFSDM SOURCE I2S2"      Value="RCC_DFSDM1AUDIOCLKSOURCE_I2SAPB2"      Semaphore="DFSDMADSourceI2S2"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="DFSDM2 Clock Selection" DefaultValue="RCC_DFSDM2AUDIOCLKSOURCE_I2SAPB1" Name="DFSDM2AudioSelection" Type="list" IP="DFSDM2">
        <PossibleValue Comment="DFSDM2 SOURCE I2S1"      Value="RCC_DFSDM2AUDIOCLKSOURCE_I2SAPB1"      Semaphore="DFSDM2ADSourceI2S1"/>
        <PossibleValue Comment="DFSDM2 SOURCE I2S2"    Value="RCC_DFSDM2AUDIOCLKSOURCE_I2SAPB2"    Semaphore="DFSDM2ADSourceI2S2"/>
    </RefParameter>
    <!-- SDIO Clock Selection-->
    <RefParameter Visible="false" Comment="SDIO CLock Selection" DefaultValue="RCC_SDIOCLKSOURCE_CLK48" Name="SDIOCLockSelection" Type="list" IP="SDIO">
        <PossibleValue Comment="SDIO clock48 source" Value="RCC_SDIOCLKSOURCE_CLK48"   Semaphore="SDIOSourceIsClock48"/>
        <PossibleValue Comment="SDIO sysclock"       Value="RCC_SDIOCLKSOURCE_SYSCLK" Semaphore="SDIOSourceIsSysclk"/>
    </RefParameter>
	
    <!-- I2S1 Clock Selection-->
    <RefParameter Visible="false" Comment="I2S1 CLock Selection" DefaultValue="RCC_I2SAPB1CLKSOURCE_PLLI2S" Name="I2S1CLockSelection" Type="list" IP="I2S2,I2S3">
        <PossibleValue Comment="I2S1 Pllsource" Value="RCC_I2SAPB1CLKSOURCE_PLLSRC"   Semaphore="I2S1SourceIsPllsrc"/>
        <PossibleValue Comment="I2S1 PLLR"      Value="RCC_I2SAPB1CLKSOURCE_PLLR"     Semaphore="I2S1SourceIsPllR"/>
        <PossibleValue Comment="I2S1 Extern"    Value="RCC_I2SAPB1CLKSOURCE_EXT"      Semaphore="I2S1SourceIsEXT"/>
        <PossibleValue Comment="I2S1 PLLI2S"    Value="RCC_I2SAPB1CLKSOURCE_PLLI2S"   Semaphore="I2S1SourceIsPLLI2SR"/>
    </RefParameter>
	
    <!-- I2S2 Clock Selection-->
    <RefParameter Visible="false" Comment="I2S2 CLock Selection" DefaultValue="RCC_I2SAPB2CLKSOURCE_PLLI2S" Name="I2S2CLockSelection" Type="list" IP="I2S1,I2S4,I2S5">
        <PossibleValue Comment="I2S2 Pllsource" Value="RCC_I2SAPB2CLKSOURCE_PLLSRC" Semaphore="I2S2SourceIsPllsrc"/>
        <PossibleValue Comment="I2S2 PLLR"      Value="RCC_I2SAPB2CLKSOURCE_PLLR"   Semaphore="I2S2SourceIsPllR"/>
        <PossibleValue Comment="I2S2 Extern"    Value="RCC_I2SAPB2CLKSOURCE_EXT"    Semaphore="I2S2SourceIsEXT"/>
        <PossibleValue Comment="I2S2 PLLI2S"    Value="RCC_I2SAPB2CLKSOURCE_PLLI2S" Semaphore="I2S2SourceIsPLLI2SR"/>
    </RefParameter>
	
    <!-- PLL Clock Selection-->
    <RefParameter Visible="false" Comment="PLL Source" DefaultValue="RCC_PLLSOURCE_HSE" Name="PLLSourceVirtual" Type="list">
        <Condition Diagnostic="PLL Mux should have HSE as input" Expression="((USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC)) "/>
        <PossibleValue Comment="Pllsource Hse" Value="RCC_PLLSOURCE_HSE"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLL Source" DefaultValue="RCC_PLLSOURCE_HSI" Name="PLLSourceVirtual" Type="list">
        <PossibleValue Comment="Pllsource Hsi" Value="RCC_PLLSOURCE_HSI"/>
        <PossibleValue Comment="Pllsource Hse" Value="RCC_PLLSOURCE_HSE"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLL Source" DefaultValue="+PLLSourceVirtual" Name="PLLSourceVirtualString" Type="string"/>
 
    <RefParameter Visible="false" Comment="PLL Source" DefaultValue="+PLLSourceVirtualString" Name="PLLSource" Type="list">
        <PossibleValue Comment="Pllsource Hsi" Value="RCC_PLLSOURCE_HSI" Semaphore="PLLSourceHSI"/>
        <PossibleValue Comment="Pllsource Hse" Value="RCC_PLLSOURCE_HSE" Semaphore="PLLSourceHSE"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLLI2S Source" DefaultValue="" Name="PLLI2SSource" Type="list">
        <PossibleValue Comment="PLLI2SSource Hse" Value="RCC_PLLI2SCLKSOURCE_PLLSRC" Semaphore="PLLSourceI2SPLL"/>
        <PossibleValue Comment="PLLI2SSource Ext" Value="RCC_PLLI2SCLKSOURCE_EXT" Semaphore="PLLSourceI2SEXT"/>
    </RefParameter>
    
    <RefParameter Visible="false" Comment="PLLMLL" DefaultValue="RCC_PLLSOURCE_HSI" Name="PLLI2SSourceLL" Type="list">
        <Condition Expression="PLLI2SSource=RCC_PLLI2SCLKSOURCE_PLLSRC &amp; PLLSource=RCC_PLLSOURCE_HSI" Diagnostic=""/>
        <PossibleValue Comment="RCC PLLSOURCE HSI" Value="RCC_PLLSOURCE_HSI"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLMLL" DefaultValue="RCC_PLLSOURCE_HSE" Name="PLLI2SSourceLL" Type="list">
        <Condition Expression="PLLI2SSource=RCC_PLLI2SCLKSOURCE_PLLSRC &amp; PLLSource=RCC_PLLSOURCE_HSE" Diagnostic=""/>
        <PossibleValue Comment="RCC PLLSOURCE HSE" Value="RCC_PLLSOURCE_HSE"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLMLL" DefaultValue="RCC_PLLI2SSOURCE_PIN" Name="PLLI2SSourceLL" Type="list"/>

    <!-- SysClock Clock Selection-->
    <RefParameter Visible="false" Comment="SysClock Source" DefaultValue="RCC_SYSCLKSOURCE_HSI" Name="SYSCLKSource" Type="list">
        <PossibleValue Comment="SysClock HSI"     Value="RCC_SYSCLKSOURCE_HSI"     Semaphore="SysSourceIsHSI"/>
        <PossibleValue Comment="SysClock HSE"     Value="RCC_SYSCLKSOURCE_HSE"     Semaphore="SysSourceIsHSE"/>
        <PossibleValue Comment="SysClock Pllclk"  Value="RCC_SYSCLKSOURCE_PLLCLK"  Semaphore="SysSourceIsPLLclk"/>
    </RefParameter>
	
    <!-- RTC Clock Selection-->
    <RefParameter Visible="false" Comment="PLL Source" DefaultValue="RCC_RTCCLKSOURCE_HSE_DIV2" Name="RCC_RTC_Clock_SourceVirtual" Type="list">
        <Condition Diagnostic="RTC Mux should have HSE as input when TIM11 remap is used" Expression="((HSEByPass|HSEOscillator)&amp;(SEM2RCC_HSE_REQUIRED_TIM11 &amp; TIM11 &amp; Semaphore_input_Channel1TIM11))"/>
        <PossibleValue Comment="2" Value="RCC_RTCCLKSOURCE_HSE_DIV2"/>
        <PossibleValue Comment="3" Value="RCC_RTCCLKSOURCE_HSE_DIV3"/>
        <PossibleValue Comment="4" Value="RCC_RTCCLKSOURCE_HSE_DIV4"/>
        <PossibleValue Comment="5" Value="RCC_RTCCLKSOURCE_HSE_DIV5"/>
        <PossibleValue Comment="6" Value="RCC_RTCCLKSOURCE_HSE_DIV6"/>
        <PossibleValue Comment="7" Value="RCC_RTCCLKSOURCE_HSE_DIV7"/>
        <PossibleValue Comment="8" Value="RCC_RTCCLKSOURCE_HSE_DIV8"/>
        <PossibleValue Comment="9" Value="RCC_RTCCLKSOURCE_HSE_DIV9"/>
        <PossibleValue Comment="10" Value="RCC_RTCCLKSOURCE_HSE_DIV10"/>
        <PossibleValue Comment="11" Value="RCC_RTCCLKSOURCE_HSE_DIV11"/>
        <PossibleValue Comment="12" Value="RCC_RTCCLKSOURCE_HSE_DIV12"/>
        <PossibleValue Comment="13" Value="RCC_RTCCLKSOURCE_HSE_DIV13"/>
        <PossibleValue Comment="14" Value="RCC_RTCCLKSOURCE_HSE_DIV14"/>
        <PossibleValue Comment="15" Value="RCC_RTCCLKSOURCE_HSE_DIV15"/>
        <PossibleValue Comment="16" Value="RCC_RTCCLKSOURCE_HSE_DIV16"/>
        <PossibleValue Comment="17" Value="RCC_RTCCLKSOURCE_HSE_DIV17"/>
        <PossibleValue Comment="18" Value="RCC_RTCCLKSOURCE_HSE_DIV18"/>
        <PossibleValue Comment="19" Value="RCC_RTCCLKSOURCE_HSE_DIV19"/>
        <PossibleValue Comment="20" Value="RCC_RTCCLKSOURCE_HSE_DIV20"/>
        <PossibleValue Comment="21" Value="RCC_RTCCLKSOURCE_HSE_DIV21"/>
        <PossibleValue Comment="22" Value="RCC_RTCCLKSOURCE_HSE_DIV22"/>
        <PossibleValue Comment="23" Value="RCC_RTCCLKSOURCE_HSE_DIV23"/>
        <PossibleValue Comment="24" Value="RCC_RTCCLKSOURCE_HSE_DIV24"/>
        <PossibleValue Comment="25" Value="RCC_RTCCLKSOURCE_HSE_DIV25"/>
        <PossibleValue Comment="26" Value="RCC_RTCCLKSOURCE_HSE_DIV26"/>
        <PossibleValue Comment="27" Value="RCC_RTCCLKSOURCE_HSE_DIV27"/>
        <PossibleValue Comment="28" Value="RCC_RTCCLKSOURCE_HSE_DIV28"/>
        <PossibleValue Comment="29" Value="RCC_RTCCLKSOURCE_HSE_DIV29"/>
        <PossibleValue Comment="30" Value="RCC_RTCCLKSOURCE_HSE_DIV30"/>
        <PossibleValue Comment="31" Value="RCC_RTCCLKSOURCE_HSE_DIV31"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLL Source" DefaultValue="RCC_RTCCLKSOURCE_LSI" Name="RCC_RTC_Clock_SourceVirtual" Type="list">
        <PossibleValue Comment="LSE" Value="RCC_RTCCLKSOURCE_LSE"/>
        <PossibleValue Comment="LSI" Value="RCC_RTCCLKSOURCE_LSI"/>
        <PossibleValue Comment="2" Value="RCC_RTCCLKSOURCE_HSE_DIV2"/>
        <PossibleValue Comment="3" Value="RCC_RTCCLKSOURCE_HSE_DIV3"/>
        <PossibleValue Comment="4" Value="RCC_RTCCLKSOURCE_HSE_DIV4"/>
        <PossibleValue Comment="5" Value="RCC_RTCCLKSOURCE_HSE_DIV5"/>
        <PossibleValue Comment="6" Value="RCC_RTCCLKSOURCE_HSE_DIV6"/>
        <PossibleValue Comment="7" Value="RCC_RTCCLKSOURCE_HSE_DIV7"/>
        <PossibleValue Comment="8" Value="RCC_RTCCLKSOURCE_HSE_DIV8"/>
        <PossibleValue Comment="9" Value="RCC_RTCCLKSOURCE_HSE_DIV9"/>
        <PossibleValue Comment="10" Value="RCC_RTCCLKSOURCE_HSE_DIV10"/>
        <PossibleValue Comment="11" Value="RCC_RTCCLKSOURCE_HSE_DIV11"/>
        <PossibleValue Comment="12" Value="RCC_RTCCLKSOURCE_HSE_DIV12"/>
        <PossibleValue Comment="13" Value="RCC_RTCCLKSOURCE_HSE_DIV13"/>
        <PossibleValue Comment="14" Value="RCC_RTCCLKSOURCE_HSE_DIV14"/>
        <PossibleValue Comment="15" Value="RCC_RTCCLKSOURCE_HSE_DIV15"/>
        <PossibleValue Comment="16" Value="RCC_RTCCLKSOURCE_HSE_DIV16"/>
        <PossibleValue Comment="17" Value="RCC_RTCCLKSOURCE_HSE_DIV17"/>
        <PossibleValue Comment="18" Value="RCC_RTCCLKSOURCE_HSE_DIV18"/>
        <PossibleValue Comment="19" Value="RCC_RTCCLKSOURCE_HSE_DIV19"/>
        <PossibleValue Comment="20" Value="RCC_RTCCLKSOURCE_HSE_DIV20"/>
        <PossibleValue Comment="21" Value="RCC_RTCCLKSOURCE_HSE_DIV21"/>
        <PossibleValue Comment="22" Value="RCC_RTCCLKSOURCE_HSE_DIV22"/>
        <PossibleValue Comment="23" Value="RCC_RTCCLKSOURCE_HSE_DIV23"/>
        <PossibleValue Comment="24" Value="RCC_RTCCLKSOURCE_HSE_DIV24"/>
        <PossibleValue Comment="25" Value="RCC_RTCCLKSOURCE_HSE_DIV25"/>
        <PossibleValue Comment="26" Value="RCC_RTCCLKSOURCE_HSE_DIV26"/>
        <PossibleValue Comment="27" Value="RCC_RTCCLKSOURCE_HSE_DIV27"/>
        <PossibleValue Comment="28" Value="RCC_RTCCLKSOURCE_HSE_DIV28"/>
        <PossibleValue Comment="29" Value="RCC_RTCCLKSOURCE_HSE_DIV29"/>
        <PossibleValue Comment="30" Value="RCC_RTCCLKSOURCE_HSE_DIV30"/>
        <PossibleValue Comment="31" Value="RCC_RTCCLKSOURCE_HSE_DIV31"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLL Source" DefaultValue="+RCC_RTC_Clock_SourceVirtual" Name="RCC_RTC_Clock_SourceVirtualString" Type="string"/>
 
	
    <RefParameter Visible="false" Comment="RTC Clock Source"  DefaultValue="+RCC_RTC_Clock_SourceVirtualString" Name="RCC_RTC_Clock_Source" Type="list" IP="RTC">
        <PossibleValue Comment="LSE" Value="RCC_RTCCLKSOURCE_LSE" Semaphore="RTCSourceLSE"/>
        <PossibleValue Comment="LSI" Value="RCC_RTCCLKSOURCE_LSI" Semaphore="RTCSourceLSI"/>
        <PossibleValue Comment="2" Value="RCC_RTCCLKSOURCE_HSE_DIV2"/>
        <PossibleValue Comment="3" Value="RCC_RTCCLKSOURCE_HSE_DIV3"/>
        <PossibleValue Comment="4" Value="RCC_RTCCLKSOURCE_HSE_DIV4"/>
        <PossibleValue Comment="5" Value="RCC_RTCCLKSOURCE_HSE_DIV5"/>
        <PossibleValue Comment="6" Value="RCC_RTCCLKSOURCE_HSE_DIV6"/>
        <PossibleValue Comment="7" Value="RCC_RTCCLKSOURCE_HSE_DIV7"/>
        <PossibleValue Comment="8" Value="RCC_RTCCLKSOURCE_HSE_DIV8"/>
        <PossibleValue Comment="9" Value="RCC_RTCCLKSOURCE_HSE_DIV9"/>
        <PossibleValue Comment="10" Value="RCC_RTCCLKSOURCE_HSE_DIV10"/>
        <PossibleValue Comment="11" Value="RCC_RTCCLKSOURCE_HSE_DIV11"/>
        <PossibleValue Comment="12" Value="RCC_RTCCLKSOURCE_HSE_DIV12"/>
        <PossibleValue Comment="13" Value="RCC_RTCCLKSOURCE_HSE_DIV13"/>
        <PossibleValue Comment="14" Value="RCC_RTCCLKSOURCE_HSE_DIV14"/>
        <PossibleValue Comment="15" Value="RCC_RTCCLKSOURCE_HSE_DIV15"/>
        <PossibleValue Comment="16" Value="RCC_RTCCLKSOURCE_HSE_DIV16"/>
        <PossibleValue Comment="17" Value="RCC_RTCCLKSOURCE_HSE_DIV17"/>
        <PossibleValue Comment="18" Value="RCC_RTCCLKSOURCE_HSE_DIV18"/>
        <PossibleValue Comment="19" Value="RCC_RTCCLKSOURCE_HSE_DIV19"/>
        <PossibleValue Comment="20" Value="RCC_RTCCLKSOURCE_HSE_DIV20"/>
        <PossibleValue Comment="21" Value="RCC_RTCCLKSOURCE_HSE_DIV21"/>
        <PossibleValue Comment="22" Value="RCC_RTCCLKSOURCE_HSE_DIV22"/>
        <PossibleValue Comment="23" Value="RCC_RTCCLKSOURCE_HSE_DIV23"/>
        <PossibleValue Comment="24" Value="RCC_RTCCLKSOURCE_HSE_DIV24"/>
        <PossibleValue Comment="25" Value="RCC_RTCCLKSOURCE_HSE_DIV25"/>
        <PossibleValue Comment="26" Value="RCC_RTCCLKSOURCE_HSE_DIV26"/>
        <PossibleValue Comment="27" Value="RCC_RTCCLKSOURCE_HSE_DIV27"/>
        <PossibleValue Comment="28" Value="RCC_RTCCLKSOURCE_HSE_DIV28"/>
        <PossibleValue Comment="29" Value="RCC_RTCCLKSOURCE_HSE_DIV29"/>
        <PossibleValue Comment="30" Value="RCC_RTCCLKSOURCE_HSE_DIV30"/>
        <PossibleValue Comment="31" Value="RCC_RTCCLKSOURCE_HSE_DIV31"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="RTC Clock Source"  DefaultValue="RCC_RTCCLKSOURCE_LSE" Name="RCC_RTC_Clock_SourceLL" Type="list" IP="RTC">
        <Condition Expression="RCC_RTC_Clock_Source=RCC_RTCCLKSOURCE_LSE" Diagnostic=""/>
        <PossibleValue Comment="LSE" Value="RCC_RTCCLKSOURCE_LSE"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="RTC Clock Source"  DefaultValue="RCC_RTCCLKSOURCE_LSI" Name="RCC_RTC_Clock_SourceLL" Type="list" IP="RTC">
        <Condition Expression="RCC_RTC_Clock_Source=RCC_RTCCLKSOURCE_LSI" Diagnostic=""/>
        <PossibleValue Comment="LSI" Value="RCC_RTCCLKSOURCE_LSI"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="RTC Clock Source"  DefaultValue="RCC_RTCCLKSOURCE_HSE" Name="RCC_RTC_Clock_SourceLL" Type="list" IP="RTC">
        <PossibleValue Comment="HSE" Value="RCC_RTCCLKSOURCE_HSE"/>
    </RefParameter>	
    <!-- MCO1/2 Clock Selection-->
    <RefParameter Visible="false" Comment="MCO1 Clock Source" DefaultValue="RCC_MCO1SOURCE_HSI" Name="RCC_MCO1Source" Type="list">
        <PossibleValue Comment="MCO1SRC HSI"    Value="RCC_MCO1SOURCE_HSI"/>
        <PossibleValue Comment="MCO1SRC LSE"    Value="RCC_MCO1SOURCE_LSE"/>
        <PossibleValue Comment="MCO1SRC HSE"    Value="RCC_MCO1SOURCE_HSE"/>
        <PossibleValue Comment="MCO1SRC PLLCLK" Value="RCC_MCO1SOURCE_PLLCLK" />
    </RefParameter>
    <RefParameter Visible="false" Comment="MCO2 Clock Source" DefaultValue="RCC_MCO2SOURCE_SYSCLK" Name="RCC_MCO2Source" Type="list">
        <PossibleValue Comment="MCO1SRC SYSCLK"    Value="RCC_MCO2SOURCE_SYSCLK"/>
        <PossibleValue Comment="MCO1SRC PLLI2SCLK" Value="RCC_MCO2SOURCE_PLLI2SCLK" Semaphore="MCOSourceIsPLLI2SP"/>
        <PossibleValue Comment="MCO1SRC HSE"       Value="RCC_MCO2SOURCE_HSE"/>
        <PossibleValue Comment="MCO1SRC PLLCLK"    Value="RCC_MCO2SOURCE_PLLCLK"/>
    </RefParameter>
	
    <!--Frequency values-->
    <!--source frequency-->
    <RefParameter Visible="false" Comment="HSE OSC" Name="HSE_VALUE" DefaultValue="25000000" Max="50000000" Min="1000000" Type="double" Display="value/1000000" Unit="MHz">
        <Condition Diagnostic="HSEByPass" Expression="HSEByPass"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSE OSC"    Name="HSE_VALUE" DefaultValue="25000000" Max="26000000" Min="4000000"  Type="double" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="HSI Source" Name="HSI_VALUE" DefaultValue="16000000" Max="16000000" Min="16000000" Type="double" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="LSE OSC"    Name="LSE_VALUE" DefaultValue="32768"    Max="32768"    Min="32768"    Type="double" Display="value/1000"    Unit="KHz">
        <Condition Diagnostic="LSE In crystal Mode" Expression="LSEOscillator"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="LSE OSC"    Name="LSE_VALUE" DefaultValue="32768" Max="1000000" Min="0"     Type="double" Display="value/1000" Unit="KHz"/>
    <RefParameter Visible="false" Comment="LSI Source" Name="LSI_VALUE" DefaultValue="32000" Max="32000"   Min="32000" Type="double" Display="value/1000" Unit="KHz"/>
    <!--I2S CKIN-->
    <RefParameter Visible="false" Comment="Audio Clock Input" Name="EXTERNAL_CLOCK_VALUE" DefaultValue="12288000" Type="double" Display="value/1000000" Unit="MHz"/>

    <RefParameter Visible="false" Comment="System Clock" Name="SYSCLKFreq_VALUE" DefaultValue="16000000" Max="100000000" Type="double" Display="value/1000000" Unit="MHz"/>
    <!--HCLK Freq Value Param-->     
 
         
    <RefParameter Visible="false" Comment="HCLK Clock" Name="HCLKFreq_Value" DefaultValue="16000000" Max="100000000" Min="30000000" Type="double" IP="DMA-2D,CAMERAITF" Display="value/1000000" Unit="MHz">
        <Condition Diagnostic="USB activated" Expression="(USB_OTG_HSEmbeddedPHYUsed_ForRCC|USB_OTG_HSUsed_ForRCC) "/>
    </RefParameter>

    <RefParameter Visible="false" Comment="HCLK Clock" Name="HCLKFreq_Value" DefaultValue="16000000" Max="100000000" Min="14200000" Type="double" IP="DMA-2D,CAMERAITF" Display="value/1000000" Unit="MHz">
        <Condition Diagnostic="USB activated" Expression="USB_OTG_FSUsed_ForRCC"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="HCLK Clock" Name="HCLKFreq_Value" DefaultValue="16000000" Max="100000000" Type="double" IP="DMA-2D,CAMERAITF" Display="value/1000000" Unit="MHz"/>
    <!--MCO freq value-->
    <RefParameter Visible="false" Comment="MCO Output" Name="MCO1PinFreq_Value" DefaultValue="16000000"  Max="100000000" Type="double" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="MCO Output" Name="MCO2PinFreq_Value" DefaultValue="16000000"  Max="100000000" Type="double" Display="value/1000000" Unit="MHz"/>
 <!--ADC frequency  --> 
    <RefParameter Visible="false" Comment="ADC synchr"  Name="synchADCFreq_Value"  DefaultValue="=APB2Freq_Value" Type="double" Display="value/1000000" Unit="MHz" IP="ADC1,ADC2,ADC3"/>
	
    <!--IP freq value-->
    <RefParameter Visible="false" Comment="IWDG Clock"           Name="WatchDogFreq_Value"  DefaultValue="32000"    IP="IWATCHDOG" Type="double" Display="value/1000"    Unit="KHz"/>
    <RefParameter Visible="false" Comment="RTC Clock Source"     Name="RTCFreq_Value" Type="double" DefaultValue="32000" IP="RTC" Max="1000000" Min="0" Display="value/1000" Unit="KHz">
        <Condition Diagnostic="RTC Has HSE as source" Expression="(!(RCC_RTC_Clock_Source=RCC_RTCCLKSOURCE_LSE)&amp;!(RCC_RTC_Clock_Source=RCC_RTCCLKSOURCE_LSI))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="RTC Clock Source"     Name="RTCFreq_Value"       DefaultValue="32000"    IP="RTC"       Type="double" Display="value/1000"    Unit="KHz"/>
    <RefParameter Visible="false" Comment="RTC Clock HSE_Div"    Name="RTCHSEDivFreq_Value" DefaultValue="12500000" IP="RTC"       Type="double" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="FMPI2C1 Clock Source" Name="FMPI2C1Freq_Value"   DefaultValue="16000000" IP="FMPI2C1"   Type="double" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="48MHz Clocks"         Name="USBFreq_Value"       DefaultValue="48000000"                Type="double" Display="value/1000000" Unit="MHz" Min="47880000" Max="48120000">
        <Condition Diagnostic="USB activated" Expression="USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="USB Clock Source"     Name="USBFreq_Value"       DefaultValue="48000000"                 Type="double" Display="value/1000000" Unit="MHz" Min="48000000" Max="48000000"/>
    <RefParameter Visible="false" Comment="SDIO Clock Source"    Name="SDIOFreq_Value"      DefaultValue="48000000"  IP="SDIO"      Type="double" Display="value/1000000" Unit="MHz"  Max="50000000"/>
    <RefParameter Visible="false" Comment="RNG Clock Source"    Name="RNGFreq_Value"       DefaultValue="48000000" IP="RNG"        Type="double" Display="value/1000000" Unit="MHz" Max="50000000" />
    <RefParameter Visible="false" Comment="I2S1 Clock Source"    Name="I2S1Freq_Value"      DefaultValue="96000000" IP="I2S2,I2S3"      Type="double" Display="value/1000000" Unit="MHz" />
    <RefParameter Visible="false" Comment="I2S2 Clock Source"    Name="I2S2Freq_Value"      DefaultValue="96000000" IP="I2S1,I2S4,I2S5"      Type="double" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="DFSDM Clock Source"   Name="DFSDMFreq_Value"     DefaultValue="96000000" IP="DFSDM1"     Type="double" Display="value/1000000" Unit="MHz" />
    <RefParameter Visible="false" Comment="DFSDM Clock Source"   Name="DFSDM2Freq_Value"     DefaultValue="96000000" IP="DFSDM2"     Type="double" Display="value/1000000" Unit="MHz" />
    <RefParameter Visible="false" Comment="DFSDM Audio Clock Source"   Name="DFSDMAudioFreq_Value"     DefaultValue="96000000" IP="DFSDM1"     Type="double" Display="value/1000000" Unit="MHz" />
    <RefParameter Visible="false" Comment="DFSDM2 Audio Clock Source"   Name="DFSDM2AudioFreq_Value"     DefaultValue="96000000" IP="DFSDM2"     Type="double" Display="value/1000000" Unit="MHz" />
    <RefParameter Visible="false" Comment="SAI1A Clock Source"   Name="SAI1AFreq_Value"     DefaultValue="96000000" IP="SAIA"     Type="double" Display="value/1000000" Unit="MHz" />
    <RefParameter Visible="false" Comment="SAI1B Clock Source"   Name="SAI1BFreq_Value"     DefaultValue="96000000" IP="SAIB"     Type="double" Display="value/1000000" Unit="MHz" />
    <RefParameter Visible="false" Comment="LPTimer Clock Source"   Name="LPTimerFreq_Value"     DefaultValue="96000000" IP="LPTimer"     Type="double" Display="value/1000000" Unit="MHz" />
	
    <RefParameter Visible="false" Comment="PWR Clock"           Name="PWRFreq_Value"          DefaultValue="16000000" Type="double" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="AHB Freq Value"      Name="AHBFreq_Value"          DefaultValue="16000000" Type="double" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="Cortex System Timer" Name="CortexFreq_Value"       DefaultValue="2000000"  Type="double" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="FCLK Cortex"         Name="FCLKCortexFreq_Value"   DefaultValue="16000000" Type="double" Display="value/1000000" Unit="MHz"/>
   
    <RefParameter Visible="false" Comment="PLLR output"       Name="PLLRoutputFreq_Value"    DefaultValue="96000000" Type="double" Display="value/1000000" Unit="MHz" />
    <RefParameter Visible="false" Comment="PLLQ output"       Name="PLLQoutputFreq_Value"    DefaultValue="96000000" Type="double" Display="value/1000000" Unit="MHz" />

	    <!--APB1/2 freq value-->

    <RefParameter Visible="false" Comment="APB1 Peripheral Clock" Name="APB1Freq_Value" DefaultValue="16000000" Max="50000000" Min="=RTCFreq_Value*4" Type="double" IP="USART2,USART3,UART4,UART5,UART7,UART8,LPTIM1,SPI2,I2S2,I2C1,I2C2,I2C3,FMPI2C1,CAN1,CAN3,CAN2,DAC1,DAC2,WinWATCHDOG,SPI3,I2S3" Display="value/1000000" Unit="MHz">
        <Condition Diagnostic="overDrive activated" Expression=" RTCUsed_ForRCC"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB1 Peripheral Clock" Name="APB1Freq_Value" DefaultValue="16000000" Max="50000000" Type="double" IP="USART2,USART3,UART4,UART5,UART7,UART8,LPTIM1,SPI2,I2C1,I2C2,I2C3,FMPI2C1,CAN1,CAN2,CAN3,DAC1,DAC2,WinWATCHDOG,SPI3,I2S3" Display="value/1000000" Unit="MHz"/>

    <RefParameter Visible="false" Comment="APB2 Peripheral Clock" Name="APB2Freq_Value" DefaultValue="16000000" Max="100000000" Type="double" IP="SDIO,USART1,USART6,UART9,UART10,SPI1,I2S4,I2S5,SPI4,SPI5,EXTI,DFSDM1,DFSDM2,ADC1,SAI1" Display="value/1000000" Unit="MHz"/>
   
    <!--APB1/2 freq value-->
    <RefParameter Visible="false" Comment="APB1 Timers" Name="APB1TimFreq_Value" DefaultValue="16000000" Type="double" IP="TIMER6,TIMER7,,TIMER2,TIMER3,TIMER4,TIMER5,TIMER12,TIMER13,TIMER14" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="APB2 Timers" Name="APB2TimFreq_Value" DefaultValue="16000000" Type="double" IP="TIMER1,TIMER8,TIMER9,TIMER10,TIMER11" Display="value/1000000" Unit="MHz"/>
    
    <!--MAin PLL frequency-->
    <RefParameter Visible="false" Comment="VCOInput" Name="VCOInputFreq_Value" DefaultValue="1000000" Min="950000" Max="2100000" Type="double" Display="value/1000000" Unit="MHz">
        <Condition Diagnostic="PLLM used" Expression="(((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; MCO1Config)|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp; MCO2Config)|(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR &amp; SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))|(SysSourceIsPLLclk)|((USB_OTG_HSEmbeddedPHYUsed_ForRCC|USB_OTG_FSUsed_ForRCC|RNGUsed_ForRCC)&amp;USBSourceisPLLQ)|(USBSourceisPLLQ &amp; SDIOSourceIsClock48&amp;SDIOUsed_ForRCC)|((((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S1))|((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S2)))&amp;(I2S1SourceIsPllR|I2S2SourceIsPllR))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="VCOInput" Name="VCOInputFreq_Value" DefaultValue="1000000"  Type="double" Display="value/1000000" Unit="MHz"/>
    
    <RefParameter Visible="false" Comment="VCOOutput" Name="VCOOutputFreq_Value" DefaultValue="192000000" Min="100000000" Max="432000000" Type="double" Display="value/1000000" Unit="MHz">
        <Condition Diagnostic="PLLM used" Expression="(((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; MCO1Config)|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp; MCO2Config)|(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR &amp; SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))|(SysSourceIsPLLclk)|((USB_OTG_HSEmbeddedPHYUsed_ForRCC|USB_OTG_FSUsed_ForRCC|RNGUsed_ForRCC)&amp;USBSourceisPLLQ)|(USBSourceisPLLQ &amp; SDIOSourceIsClock48&amp;SDIOUsed_ForRCC)|((((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S1))|((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S2)))&amp;(I2S1SourceIsPllR|I2S2SourceIsPllR))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="VCOOutput" Name="VCOOutputFreq_Value" DefaultValue="192000000"  Type="double" Display="value/1000000" Unit="MHz"/>
    
    <RefParameter Visible="false" Comment="PLLCLK"    Name="PLLCLKFreq_Value" DefaultValue="96000000" Max="100000000" Min="24000000" Type="double" Display="value/1000000" Unit="MHz">
        <Condition Diagnostic="PLLP used" Expression="(((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; MCO1Config)|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp; MCO2Config)|(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR &amp; SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))|SysSourceIsPLLclk"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLCLK "   Name="PLLCLKFreq_Value" DefaultValue="96000000"  Type="double" Display="value/1000000" Unit="MHz"/>

    <RefParameter Visible="false" Comment="PLLQCLK"   Name="PLLQCLKFreq_Value" DefaultValue="48000000" Max="75000000"  Type="double" Display="value/1000000" Unit="MHz">
        <Condition Diagnostic="PLL not used" Expression="((USB_OTG_HSEmbeddedPHYUsed_ForRCC|USB_OTG_FSUsed_ForRCC|RNGUsed_ForRCC|(SDIOSourceIsClock48&amp;SDIOUsed_ForRCC))&amp;USBSourceisPLLQ)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLQCLK"   Name="PLLQCLKFreq_Value" DefaultValue="96000000"  Type="double" Display="value/1000000" Unit="MHz"/>

    <RefParameter Visible="false" Comment="PLLRCLK"   Name="PLLRCLKFreq_Value" DefaultValue="96000000" Max="216000000" Type="double" Display="value/1000000" Unit="MHz">
        <Condition Diagnostic="PLLR used" Expression="((((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S1))|((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S2)))&amp;(I2S1SourceIsPllR|I2S2SourceIsPllR))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLRCLK"   Name="PLLRCLKFreq_Value" DefaultValue="96000000"  Type="double" Display="value/1000000" Unit="MHz"/>

   
    <!--MAin PLLI2S frequency-->
    <RefParameter Visible="false" Comment="VCOI2SInput" Name="VCOI2SInputFreq_Value" DefaultValue="1000000" Min="950000" Max="2100000"  Type="double" Display="value/1000000" Unit="MHz">
        <Condition Diagnostic="PLLI2SM  used" Expression="(USBSourceisPLLI2SQ &amp; (USB_OTG_FSUsed_ForRCC|RNGUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|(SDIOSourceIsClock48&amp;SDIOUsed_ForRCC)))|(MCO2Config &amp; MCOSourceIsPLLI2SP)|(I2S1SourceIsPLLI2SR&amp; ((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S1)))|(I2S2SourceIsPLLI2SR&amp; ((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S2)))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="VCOI2SInput" Name="VCOI2SInputFreq_Value" DefaultValue="192000000"   Type="double" Display="value/1000000" Unit="MHz"/>
		
    <RefParameter Visible="false" Comment="VCOI2SOutput" Name="VCOI2SOutputFreq_Value" DefaultValue="192000000" Min="100000000" Max="432000000"   Type="double" Display="value/1000000" Unit="MHz">
        <Condition Diagnostic="PLLI2SM  used" Expression="(USBSourceisPLLI2SQ &amp; (USB_OTG_FSUsed_ForRCC|RNGUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|(SDIOSourceIsClock48&amp;SDIOUsed_ForRCC)))|(MCO2Config &amp; MCOSourceIsPLLI2SP)|(I2S1SourceIsPLLI2SR&amp; ((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S1)))|(I2S2SourceIsPLLI2SR&amp; ((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S2)))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="VCOI2SOutput" Name="VCOI2SOutputFreq_Value" DefaultValue="96000000"  Type="double" Display="value/1000000" Unit="MHz"/><!--prescaler R output -->

 
    <RefParameter Visible="false" Comment="PLLI2SR output" Name="PLLI2SRCLKFreq_Value" DefaultValue="96000000" Max="216000000" Type="double" Display="value/1000000" Unit="MHz">
        <Condition Diagnostic="PLL not used" Expression="(I2S1SourceIsPLLI2SR&amp; ((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S1)))|(I2S2SourceIsPLLI2SR&amp; ((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S2)))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SR output" Name="PLLI2SRCLKFreq_Value" DefaultValue="96000000"  Type="double" Display="value/1000000" Unit="MHz"/><!--prescaler R output -->
		
    <RefParameter Visible="false" Comment="PLLI2SQ output" Name="PLLI2SQCLKFreq_Value" DefaultValue="96000000" Max="75000000" Type="double" Display="value/1000000" Unit="MHz">
        <Condition Diagnostic="PLL not used" Expression="(USBSourceisPLLI2SQ &amp; (USB_OTG_FSUsed_ForRCC|RNGUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|(SDIOSourceIsClock48&amp;SDIOUsed_ForRCC)))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLI2SQ output" Name="PLLI2SQCLKFreq_Value" DefaultValue="96000000"  Type="double" Display="value/1000000" Unit="MHz"/><!--prescaler R output -->
	
  
    <!--RefEnabel Parameters -->
    <!--HSE Enable -->
    <RefParameter Visible="false" Name="EnableHSE" Comment="HSE" Type="list" DefaultValue="true">
        <Condition Expression="(HSEOscillator | HSEByPass)|((HSEByPass|HSEOscillator)&amp;(SEM2RCC_HSE_REQUIRED_TIM11 &amp; TIM11 &amp; Semaphore_input_Channel1TIM11))" Diagnostic="Disabled if RTC is used and HSE ON"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableHSE" Comment="HSE" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
    <!--RTC Enable-->
    <RefParameter Visible="false" Name="EnableHSERTCDevisor" Comment="RTC and HSE Oscillator" Type="list" DefaultValue="true" IP="RTC">
        <Condition Expression="(RTCUsed_ForRCC) &amp; (HSEOscillator|HSEByPass)|((HSEByPass|HSEOscillator)&amp;(SEM2RCC_HSE_REQUIRED_TIM11 &amp; TIM11 &amp; Semaphore_input_Channel1TIM11))" Diagnostic="Disabled if RTC is used"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableHSERTCDevisor" Comment="RTC and HSE Oscillator" Type="list" DefaultValue="false" IP="RTC">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RTCEnable" Comment="RTC" Type="list" DefaultValue="true" IP="RTC">
        <Condition Expression="RTCUsed_ForRCC |((HSEByPass|HSEOscillator)&amp;(SEM2RCC_HSE_REQUIRED_TIM11 &amp; TIM11 &amp; Semaphore_input_Channel1TIM11))" Diagnostic="Disabled if RTC is used"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RTCEnable" Comment="RTC" Type="list" DefaultValue="false" IP="RTC">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="EnableLSERTC" Comment="LSE RTC" Type="list" DefaultValue="true" IP="RTC">
        <Condition Expression="(((HSEByPass|HSEOscillator)&amp;(SEM2RCC_HSE_REQUIRED_TIM11 &amp; TIM11 &amp; Semaphore_input_Channel1TIM11))|RTCUsed_ForRCC) &amp; (LSEOscillator | LSEByPass)" Diagnostic="Disabled if RTC is used and LSE ON"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableLSERTC" Comment="LSE RTC" Type="list" DefaultValue="false" IP="RTC">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
    <!--LSE Enable -->
    <RefParameter Visible="false" Name="EnableLSE" Comment="LSE" Type="list" DefaultValue="true">
        <Condition Expression="(LSEOscillator | LSEByPass)" Diagnostic="Disabled if RTC is used and LSE ON"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableLSE" Comment="LSE" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>

	
    <!--SDIO Enable -->
    <RefParameter Visible="false" Name="EnableSDIO" Comment="SDIO" Type="list" DefaultValue="true">
        <Condition Expression="SDIOUsed_ForRCC" Diagnostic="SDIO enabled"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableSDIO" Comment="SDIO" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
    <!--SPDIF Enable -->
    <RefParameter Visible="false" Name="EnableDFSDM" Comment="DFSDM1" Type="list" DefaultValue="true">
        <Condition Expression="DFSDM1Used_ForRCC " Diagnostic="DFSDM enabled"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableDFSDM" Comment="DFSDM1" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	 <RefParameter Visible="false" Name="EnableDFSDM2" Comment="DFSDM2" Type="list" DefaultValue="true">
        <Condition Expression="DFSDM2Used_ForRCC " Diagnostic="DFSDM2 enabled"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableDFSDM2" Comment="DFSDM2" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableDFSDMAudio" Comment="DFSDM1" Type="list" DefaultValue="true">
        <Condition Expression="DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1 " Diagnostic="DFSDM enabled"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableDFSDMAudio" Comment="DFSDM1" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>

    <RefParameter Visible="false" Name="EnableDFSDM2Audio" Comment="DFSDM2Audio" Type="list" DefaultValue="true">
        <Condition Expression="DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2 " Diagnostic="DFSDM2 enabled"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableDFSDM2Audio" Comment="DFSDM2Audio" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>

    <!-- SAI1A Enable-->
    <RefParameter Visible="false" Name="EnableSAI1A" Comment="SAI1A" Type="list" DefaultValue="true">
        <Condition Expression="SAI1Used_ForRCC &amp; SAIAUsed_ForRCC " Diagnostic="SAI1A enabled"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableSAI1A" Comment="SAI1A" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>

     <!-- SAIB Enable-->
    <RefParameter Visible="false" Name="EnableSAI1B" Comment="SAI1B" Type="list" DefaultValue="true">
        <Condition Expression="SAI1Used_ForRCC &amp; SAIBUsed_ForRCC " Diagnostic="SAI1B enabled"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableSAI1B" Comment="SAI1B" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
 
    <!-- LPTimer Enable-->
    <RefParameter Visible="false" Name="EnableLPTimer" Comment="LPTimer" Type="list" DefaultValue="true">
        <Condition Expression="LPTIMUsed_ForRCC" Diagnostic="LPTimer enabled"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableLPTimer" Comment="LPTimer" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>    

    <!--FMPI2C1 Enable -->
    <RefParameter Visible="false" Name="EnableFMPI2C1" Comment="FMPI2C1" Type="list" DefaultValue="true">
        <Condition Expression="FMPI2C1Used_ForRCC" Diagnostic="FMPI2C1 enabled"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableFMPI2C1" Comment="FMPI2C1" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
    <!--USB Enable -->
    <RefParameter Visible="false" Name="EnableUSB" Comment="USB" Type="list" DefaultValue="true">
        <Condition Expression="(USB_OTG_HSEmbeddedPHYUsed_ForRCC|USB_OTG_FSUsed_ForRCC)" Diagnostic="USB enabled"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableUSB" Comment="USB" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
		<!--RNG Enable-->
	<RefParameter Visible="false" Name="RNGEnable" Comment="RNG" Type="list" DefaultValue="true">
		<Condition Expression="RNGUsed_ForRCC" Diagnostic="RNG is activated"/>
		<PossibleValue Value="true" Comment="true"/>
	</RefParameter>
	<RefParameter Visible="false" Name="RNGEnable" Comment="RNG" Type="list" DefaultValue="false">
		<PossibleValue Value="false" Comment="false"/>
	</RefParameter>
	
  
	
   
	
	
    <!--I2S1 Enable -->
    <RefParameter Visible="false" Name="EnableI2S1" Comment="I2S1" Type="list" DefaultValue="true">
        <Condition Expression="(I2S2Used_ForRCC|I2S3Used_ForRCC)" Diagnostic="I2S1 enabled"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableI2S1" Comment="I2S1" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
    <!--I2S2 Enable -->
    <RefParameter Visible="false" Name="EnableI2S2" Comment="I2S2" Type="list" DefaultValue="true">
        <Condition Expression="(I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)" Diagnostic="I2S2 enabled"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableI2S2" Comment="I2S2" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
		
	
    <!-- IWDG  Enable-->
    <RefParameter Visible="false" Name="IWDGEnable" Comment="IWDG" Type="list" DefaultValue="true" IP="IWDG">
        <Condition Expression="IWDGUsed_ForRCC" Diagnostic="IWDG is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="IWDGEnable" Comment="IWDG" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
    <!-- Ext Clock  Enable-->
    <RefParameter Visible="false" Name="ExtClockEnable" Comment="Audio Clock Input(I2S_CKIN)" Type="list" DefaultValue="true" IP="Audio_ClockIn">
        <Condition Expression="AudioClockConfig" Diagnostic="Ext clock is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="ExtClockEnable" Comment="Audio Clock Input(I2S_CKIN)" Type="list" DefaultValue="false" IP="Audio_ClockIn">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
    <!-- Clock Out  Enable-->
    <RefParameter Visible="false" Name="MCO1OutPutEnable" Comment="Master Clock Output 1" Type="list" DefaultValue="true" IP="Clock-out-1">
        <Condition Expression="MCO1Config" Diagnostic="MCO1 mode is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="MCO1OutPutEnable" Comment="Master Clock Output 1" Type="list" DefaultValue="false" IP="Clock-out-1">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
    <RefParameter Visible="false" Name="MCO2OutPutEnable" Comment="Master Clock Output 2" Type="list" DefaultValue="false" IP="Clock-out-2">
        <Condition Expression="MCO2Config" Diagnostic="MCO2 mode is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="MCO2OutPutEnable" Comment="Master Clock Output 2" Type="list" DefaultValue="false" IP="Clock-out-2">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter> 
	
    <RefParameter Visible="false" Name="MCO2I2SEnable" Comment="Master Clock Output 2" Type="list" DefaultValue="false" IP="Clock-out-2">
        <Condition Expression="(MCO2Config)" Diagnostic="MCO2 mode is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="MCO2I2SEnable" Comment="Master Clock Output 2" Type="list" DefaultValue="false" IP="Clock-out-2">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
	
    <!-- HSE state control -->
    <RefParameter Visible="false" Comment="Clock Type HSE" DefaultValue="" Name="OscillatorTypeHSE" Type="list">
        <Condition Expression="HSEUsed=0" Diagnostic="if HSE source not used"/>
        <PossibleValue Comment="" Value=""/>
		
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Type HSE" DefaultValue="RCC_OSCILLATORTYPE_HSE" Name="OscillatorTypeHSE" Type="list">
        <PossibleValue Comment="HSE" Value="RCC_OSCILLATORTYPE_HSE"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSE used flag" DefaultValue="1" Name="HSEUsed" Type="integer" Min="1" Max="1">
        <Condition Expression="((HSEByPass|HSEOscillator)&amp;(SEM2RCC_HSE_REQUIRED_TIM11 &amp; TIM11 &amp; Semaphore_input_Channel1TIM11))|(RTCUsed_ForRCC&amp;!((RCC_RTC_Clock_Source=RCC_RTCCLKSOURCE_LSE)|(RCC_RTC_Clock_Source=RCC_RTCCLKSOURCE_LSI)))|((PLLSource=RCC_PLLSOURCE_HSE) &amp; ((((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; MCO1Config)|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp; MCO2Config)|(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR &amp; SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))|RNGUsed_ForRCC|USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|(SDIOUsed_ForRCC &amp; SDIOSourceIsClock48)|SysSourceIsPLLclk|(PLLSourceHSE&amp;!I2S1SourceIsPLLI2SR &amp;!I2S1SourceIsEXT &amp;((I2S2Used_ForRCC|I2S3Used_ForRCC) |(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S1)))|(PLLSourceHSE&amp;!I2S2SourceIsPLLI2SR&amp; !I2S2SourceIsEXT&amp;((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S2)))))|(SYSCLKSource=RCC_SYSCLKSOURCE_HSE)|((RCC_MCO1Source=RCC_MCO1SOURCE_HSE)&amp;(MCO1Config))|(((RCC_MCO2Source=RCC_MCO2SOURCE_HSE)|(MCOSourceIsPLLI2SP &amp;(PLLSource=RCC_PLLSOURCE_HSE)))&amp;(MCO2Config))|((PLLI2SUsed=1)&amp;PLLSourceI2SPLL&amp;PLLSourceHSE)|!SAI1ASourceIsEXT&amp;!PLLSourceI2SEXT &amp; PLLSourceHSE &amp; (SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|!SAI1BSourceIsEXT&amp;!PLLSourceI2SEXT &amp; PLLSourceHSE &amp; (SAI1Used_ForRCC &amp; SAIBUsed_ForRCC)" Diagnostic="SYSCLK source OR PLL source OR RTC source OR MCO1 source OR MCO2 source"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSE Is Used" DefaultValue="0" Name="HSEUsed" Min="0" Type="integer"/>
    <RefParameter Visible="false" Comment="Hse State" DefaultValue="RCC_HSE_BYPASS" Name="HSEState" Type="list">
        <Condition Diagnostic="HSE BYPass" Expression="HSEByPass"/>
        <PossibleValue Comment="Hse Bypass" Value="RCC_HSE_BYPASS" Semaphore="HSEEnabled"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Hse State" DefaultValue="RCC_HSE_ON" Name="HSEState" Type="list">
        <Condition Diagnostic="HSE ON" Expression="HSEOscillator"/>
        <PossibleValue Comment="Hse ON" Value="RCC_HSE_ON" Semaphore="HSEEnabled"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Hse State" DefaultValue="RCC_HSE_OFF" Name="HSEState" Type="list">
        <PossibleValue Comment="Hse Off" Value="RCC_HSE_OFF"/>
    </RefParameter>
	
    <!-- LSE state control -->
    <RefParameter Visible="false" Comment="Clock Type LSE" DefaultValue="" Name="OscillatorTypeLSE" Type="list">
        <Condition Diagnostic="LSE Is OFF" Expression="LSEUsed=0"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Type LSE" DefaultValue="RCC_OSCILLATORTYPE_LSE" Name="OscillatorTypeLSE" Type="list">
        <PossibleValue Comment="LSE" Value="RCC_OSCILLATORTYPE_LSE"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="LSE Is Used" DefaultValue="1" Name="LSEUsed" Min="1" Type="integer">
        <Condition Expression="(SEM2RCC_LSE_REQUIRED_TIM5 &amp; TIM5 &amp; Semaphore_input_Channel4TIM5)|LPTimerSourceIsLSE &amp; LPTIMUsed_ForRCC|((RCC_MCO1Source=RCC_MCO1SOURCE_LSE )&amp;(MCO1Config))|((RTCSourceLSE) &amp;RTCUsed_ForRCC)|((CECClockSelection=RCC_CECCLKSOURCE_LSE) &amp; CECUsed_ForRCC )" Diagnostic="LSE is used if "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="LSE Is Used" DefaultValue="0" Name="LSEUsed" Min="0" Type="integer"/>
    <RefParameter Visible="false" Comment="Lse State" DefaultValue="RCC_LSE_BYPASS" Name="LSEState" Type="list">
        <Condition Diagnostic="LSE BYPass" Expression="LSEByPass"/>
        <PossibleValue Comment="Lse Bypass" Value="RCC_LSE_BYPASS"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Lse State" DefaultValue="RCC_LSE_ON" Name="LSEState" Type="list">
        <Condition Diagnostic="LSE ON" Expression="LSEOscillator"/>
        <PossibleValue Comment="Lse ON" Value="RCC_LSE_ON"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Lse State" DefaultValue="RCC_LSE_OFF" Name="LSEState" Type="list">
        <PossibleValue Comment="Lse Off" Value="RCC_LSE_OFF"/>
    </RefParameter>
	
	
    <!-- HSI state control -->
    <RefParameter Visible="false" Comment="Clock Type HSI" DefaultValue="" Name="OscillatorTypeHSI" Type="list">
        <Condition Diagnostic="HSI Is OFF" Expression="HSIUsed=0"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Type HSI" DefaultValue="RCC_OSCILLATORTYPE_HSI" Name="OscillatorTypeHSI" Type="list">
        <PossibleValue Comment="HSI" Value="RCC_OSCILLATORTYPE_HSI"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSI Is Used" DefaultValue="1" Name="HSIUsed" Min="1" Type="integer">
        <Condition Expression="((PLLI2SUsed=1)&amp;PLLSourceI2SPLL&amp;PLLSourceHSI) |(((MCOSourceIsPLLI2SP &amp;(PLLSource=RCC_PLLSOURCE_HSI)))&amp;(MCO2Config))|((FMPI2C1Selection=RCC_FMPI2C1CLKSOURCE_HSI)&amp; FMPI2C1Used_ForRCC)|(PLLSourceHSI &amp; ((((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; MCO1Config)|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp; MCO2Config)|(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR &amp; SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))|RNGUsed_ForRCC|USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|(SDIOUsed_ForRCC &amp; SDIOSourceIsClock48)|(((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; MCO1Config)|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp; MCO2Config)|(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR &amp; SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))|SysSourceIsPLLclk|(!I2S1SourceIsEXT&amp;((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S1)))|(!I2S2SourceIsEXT&amp;((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S2)))))|(SYSCLKSource=RCC_SYSCLKSOURCE_HSI)|SAI1ASourceIsPllsrc &amp; (SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|LPTimerSourceIsHSI &amp; LPTIMUsed_ForRCC|SAI1BSourceIsPllsrc &amp; (SAI1Used_ForRCC &amp; SAIBUsed_ForRCC)|((RCC_MCO1Source=RCC_MCO1SOURCE_HSI)&amp;(MCO1Config))|!SAI1ASourceIsEXT&amp;!PLLSourceI2SEXT &amp; PLLSourceHSI &amp; (SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|!SAI1BSourceIsEXT&amp;!PLLSourceI2SEXT &amp; PLLSourceHSI &amp; (SAI1Used_ForRCC &amp; SAIBUsed_ForRCC)" Diagnostic="LSE is used if "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSI is Used" DefaultValue="0" Name="HSIUsed" Min="0" Type="integer"/>
    <RefParameter Visible="false" Comment="Hsi State" DefaultValue="RCC_HSI_OFF" Name="HSIState" Type="list">
        <Condition Expression="HSIUsed=0" Diagnostic=""/>
        <PossibleValue Comment="Hsi Off" Value="RCC_HSI_OFF"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Hsi State" DefaultValue="RCC_HSI_ON" Name="HSIState" Type="list">
        <PossibleValue Comment="Hsi On" Value="RCC_HSI_ON"/>
    </RefParameter>
    <!-- LSI state control -->
    <RefParameter Visible="false" Comment="Clock Type LSI" DefaultValue="" Name="OscillatorTypeLSI" Type="list">
        <Condition Diagnostic="WDOG is activated Or RTC source = LSI " Expression="LSIUsed=0"/>
        <PossibleValue Comment="" Value=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Type LSI" DefaultValue="RCC_OSCILLATORTYPE_LSI" Name="OscillatorTypeLSI" Type="list">
        <PossibleValue Comment="LSI" Value="RCC_OSCILLATORTYPE_LSI"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="LSI used flag" DefaultValue="1" Name="LSIUsed" Type="integer" Min="1" Max="1">
        <Condition Expression="(SEM2RCC_LSI_REQUIRED_TIM5 &amp; TIM5 &amp; Semaphore_input_Channel4TIM5)|IWDGUsed_ForRCC|(LPTimerSourceIsLSI &amp; LPTIMUsed_ForRCC)|((RTCSourceLSI)&amp;(RTCUsed_ForRCC))" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="LSI used flag" DefaultValue="0" Name="LSIUsed" Type="integer" Min="0" Max="0"/>
    <RefParameter Visible="false" Comment="Lsi State" DefaultValue="RCC_LSI_OFF" Name="LSIState" Type="list">
        <Condition Expression="LSIUsed=0" Diagnostic=""/>
        <PossibleValue Comment="Lsi Off" Value="RCC_LSI_OFF"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Lsi State" DefaultValue="RCC_LSI_ON" Name="LSIState" Type="list">
        <PossibleValue Comment="Lsi ON" Value="RCC_LSI_ON"/>
    </RefParameter>
	
	
    <!-- Main PLL state control-->
    <RefParameter Visible="false" Comment="MainPLL Is Used" DefaultValue="1" Name="PLLUsed" Min="1" Type="integer">
        <Condition Expression="(((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; MCO1Config)|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp; MCO2Config)|(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR &amp; SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))|SysSourceIsPLLclk|(I2S1SourceIsPllR&amp;((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S1)))|(I2S2SourceIsPllR&amp;((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S2)))|(USBSourceisPLLQ&amp; (USB_OTG_FSUsed_ForRCC|RNGUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|(SDIOUsed_ForRCC&amp;SDIOSourceIsClock48)))" Diagnostic="LSE is used if "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLUsed" Min="0" Type="integer"/>
    <RefParameter Visible="false" Comment="Pll State" DefaultValue="RCC_PLL_ON" Name="PLLState" Type="list">
        <Condition Expression="(((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; MCO1Config)|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp; MCO2Config)|(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR &amp; SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))|SysSourceIsPLLclk|(I2S1SourceIsPllR&amp;((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S1)))|(I2S2SourceIsPllR&amp;((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S2)))|(USBSourceisPLLQ&amp; (USB_OTG_FSUsed_ForRCC|RNGUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|(SDIOUsed_ForRCC&amp;SDIOSourceIsClock48)))" Diagnostic=""/>
        <PossibleValue Comment="Pll Off" Value="RCC_PLL_ON"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Pll State" DefaultValue="RCC_PLL_OFF" Name="PLLState" Type="list">
        <PossibleValue Comment="Pll ON" Value="RCC_PLL_OFF"/>
    </RefParameter>

        <RefParameter Visible="false" Comment="MainPLL Is Used" DefaultValue="1" Name="PLLUsedForSys" Min="1" Max="1" Type="integer">
            <Condition Expression="(SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK)|((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp;(MCO1Config))|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp;(MCO2Config))" Diagnostic=" "/>
        </RefParameter>
	
        <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLUsedForSys" Min="0" Max="0" Type="integer"/>
        <!-- CK48UsedForSDIO used -->
        <RefParameter Visible="false" Comment="CK48 Used For SDIO" DefaultValue="1" Name="CK48UsedForSDIO" Min="1" Max="1" Type="integer">
            <Condition Expression="(SDIOUsed_ForRCC &amp; SDIOSourceIsClock48)" Diagnostic=" "/>
        </RefParameter>
	
        <RefParameter Visible="false" Comment="CK48 Used For SDIO" DefaultValue="0" Name="CK48UsedForSDIO" Min="0" Max="0" Type="integer"/> 
        <!-- I2SForDFSDMAudio used -->
        <RefParameter Visible="false" Comment="I2S used For DFSDMAudio" DefaultValue="1" Name="I2SForDFSDMAudio" Min="1" Max="1" Type="integer">
            <Condition Expression="(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1) | (DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)" Diagnostic=" "/>
        </RefParameter>
	
        <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="I2SForDFSDMAudio" Min="0" Max="0" Type="integer"/>    
        <!-- PLLUsedForCK48 used -->
        <RefParameter Visible="false" Comment="MainPLL Is Used" DefaultValue="1" Name="PLLUsedForCK48" Min="1" Max="1" Type="integer">
            <Condition Expression=" ((USBSourceisPLLQ&amp; (USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|RNGUsed_ForRCC|(SDIOSourceIsClock48 &amp; SDIOUsed_ForRCC))))" Diagnostic=" "/>
        </RefParameter>
        <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLUsedForCK48" Min="0" Max="0" Type="integer"/>
        
        <!-- PLLSRCUsedForI2S used -->
        <RefParameter Visible="false" Comment="PLLSRC Is Used for I2S" DefaultValue="1" Name="PLLSRCUsedForI2S" Min="1" Max="1" Type="integer">
            <Condition Expression="(((I2S2SourceIsPllsrc)&amp;((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1 &amp; DFSDMADSourceI2S2))) | (((I2S1SourceIsPllsrc)&amp;((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1 &amp; DFSDMADSourceI2S1)))))" Diagnostic=" "/>
        </RefParameter>
	
        <RefParameter Visible="false" Comment="PLLSRC Is Used for I2S" DefaultValue="0" Name="PLLSRCUsedForI2S" Min="0" Max="0" Type="integer"/>
        
        <!-- PLLI2SUsedForI2S used -->
        <RefParameter Visible="false" Comment="MainPLL Is Used" DefaultValue="1" Name="PLLI2SUsedForI2S" Min="1" Max="1" Type="integer">
            <Condition Expression="(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S1 &amp; I2S1SourceIsPLLI2SR) | (DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S2 &amp; I2S2SourceIsPLLI2SR) | (DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1 &amp; I2S1SourceIsPLLI2SR) | (DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2 &amp; I2S2SourceIsPLLI2SR)  |(I2S1SourceIsPLLI2SR &amp; (I2S2Used_ForRCC|I2S3Used_ForRCC)) | (I2S2SourceIsPLLI2SR &amp; (I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)) |((MCOSourceIsPLLI2SP &amp;(MCO2Config)))" Diagnostic=" "/>
        </RefParameter>
	
        <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLI2SUsedForI2S" Min="0" Max="0" Type="integer"/>
        
        <!-- PLLI2SUsedForI2S used -->
        <RefParameter Visible="false" Comment="MainPLL Is Used" DefaultValue="1" Name="PLLI2SUsedFor48" Min="1" Max="1" Type="integer">
            <Condition Expression="(((USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|RNGUsed_ForRCC|(SDIOSourceIsClock48&amp;SDIOUsed_ForRCC))&amp; USBSourceisPLLI2SQ))" Diagnostic=" "/>
        </RefParameter>
	
        <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLI2SUsedFor48" Min="0" Max="0" Type="integer"/>

        <!-- I2S1ForDFSDMAudio used -->
        <RefParameter Visible="false" Comment="I2S1 used For DFSDMAudio" DefaultValue="1" Name="I2S1ForDFSDMAudio" Min="1" Max="1" Type="integer">
            <Condition Expression="(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1) | (DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2 &amp; DFSDM2ADSourceI2S1)" Diagnostic=" "/>
        </RefParameter>
	
        <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="I2S1ForDFSDMAudio" Min="0" Max="0" Type="integer"/>
        
        <!-- I2S2ForDFSDMAudio used -->
        <RefParameter Visible="false" Comment="I2S2 used For DFSDMAudio" DefaultValue="1" Name="I2S2ForDFSDMAudio" Min="1" Max="1" Type="integer">
            <Condition Expression="(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2) | (DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2 &amp; DFSDM2ADSourceI2S2)" Diagnostic=" "/>
        </RefParameter>
	
        <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="I2S2ForDFSDMAudio" Min="0" Max="0" Type="integer"/>
        
        <!-- PLLDIVRUsedForSAI used -->
        <RefParameter Visible="false" Comment="PLL DIVR Used For SAI" DefaultValue="1" Name="PLLDIVRUsedForSAI" Min="1" Max="1" Type="integer">
            <Condition Expression="(SAI1ASourceIsPllR &amp; (SAI1Used_ForRCC &amp; SAIAUsed_ForRCC))|(SAI1BSourceIsPllR &amp; (SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))" Diagnostic=" "/>
        </RefParameter>
	
        <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLDIVRUsedForSAI" Min="0" Max="0" Type="integer"/>
        
        <!-- PLLI2SUsedForSAI used -->
        <RefParameter Visible="false" Comment="PLL DIVR Used For SAI" DefaultValue="1" Name="PLLI2SUsedForSAI" Min="1" Max="1" Type="integer">
            <Condition Expression="(SAI1ASourceIsPLLI2SR &amp; (SAI1Used_ForRCC &amp; SAIAUsed_ForRCC))|(SAI1BSourceIsPLLI2SR &amp; (SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))" Diagnostic=" "/>
        </RefParameter>
	
        <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLI2SUsedForSAI" Min="0" Max="0" Type="integer"/>
        
        <!-- PLLUsedForI2S used -->
        <RefParameter Visible="false" Comment="MainPLL Is Used" DefaultValue="1" Name="PLLUsedForI2S" Min="1" Max="1" Type="integer">
            <Condition Expression="(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S1 &amp; I2S1SourceIsPllR) | (DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S2 &amp; I2S2SourceIsPllR) | (DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1 &amp; I2S1SourceIsPllR) | (DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2 &amp; I2S2SourceIsPllR)  |(I2S1SourceIsPllR &amp; (I2S2Used_ForRCC|I2S3Used_ForRCC)) | ((I2S2SourceIsPllR&amp;((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC))))" Diagnostic=" "/>
        </RefParameter>
	
        <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLUsedForI2S" Min="0" Max="0" Type="integer"/>
    <!--prama for periph cod gen-->
    <RefParameter Visible="false" Comment="Periph Clock Selection" Name="PeriphClockSelectionARG" DefaultValue="+PeriphClockSelection" Type="list">
        <Condition Expression="(MCO2Config &amp; MCOSourceIsPLLI2SP)|FMPI2C1Used_ForRCC|DFSDM1Used_ForRCC|((HSEByPass|HSEOscillator)&amp;(SEM2RCC_HSE_REQUIRED_TIM11 &amp; TIM11 &amp; Semaphore_input_Channel1TIM11))|RTCUsed_ForRCC|TimPrescalerEnabled|SDIOUsed_ForRCC|(I2S2Used_ForRCC|I2S3Used_ForRCC)|(I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|USB_OTG_HSEmbeddedPHYUsed_ForRCC|USB_OTG_FSUsed_ForRCC|RNGUsed_ForRCC|SAIAUsed_ForRCC|SAIBUsed_ForRCC|LPTIMUsed_ForRCC|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2)" Diagnostic="clock used by RCC"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Periph Clock Selection" Name="PeriphClockSelectionARG" DefaultValue="null" Type="list"/>
	
    <RefParameter Visible="false" Comment="Periph Clock Selection" Name="PeriphClockSelection" DefaultValue="+RCC_PERIPHCLK_PLLI2SVar+|RCC_PERIPHCLK_I2S1Var+|RCC_PERIPHCLK_I2S2Var+|RCC_PERIPHCLK_DFSDMVar+|RCC_PERIPHCLK_TIMVar+|RCC_PERIPHCLK_RTCVar+|RCC_PERIPHCLK_SDIOVar+|RCC_PERIPHCLK_CK48Var+|RCC_PERIPHCLK_FMPI2C1Var+|RCC_PERIPHCLK_SAIAVar+|RCC_PERIPHCLK_SAIBVar+|RCC_PERIPHCLK_LPTIM1Var+|RCC_PERIPHCLK_DFSDM2_AUDIOVar+|RCC_PERIPHCLK_DFSDM1_AUDIOVar" Type="list"/>

	
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_PLLI2SVar" Comment="RCC_PERIPHCLK_PLLI2SVar" Type="list" DefaultValue="RCC_PERIPHCLK_PLLI2S">
        <Condition Expression="(MCO2Config &amp; MCOSourceIsPLLI2SP)" Diagnostic="I2S Activated and source is PLLI2S"/>
        <PossibleValue Value="RCC_PERIPHCLK_PLLI2S" Comment="RCC_PERIPHCLK_PLLI2S"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_PLLI2SVar" Comment="RCC_PERIPHCLK_PLLI2SVar" Type="list" DefaultValue=""/>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_FMPI2C1Var" Comment="RCC_PERIPHCLK_FMPI2C1Var" Type="list" DefaultValue="RCC_PERIPHCLK_FMPI2C1">
        <Condition Expression="FMPI2C1Used_ForRCC" Diagnostic="I2S Activated and source is PLLI2S"/>
        <PossibleValue Value="RCC_PERIPHCLK_FMPI2C1" Comment="RCC_PERIPHCLK_FMPI2C1"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_FMPI2C1Var" Comment="RCC_PERIPHCLK_FMPI2C1Var" Type="list" DefaultValue=""/>
	
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_DFSDMVar" Comment="RCC_PERIPHCLK_DFSDMVar" Type="list" DefaultValue="RCC_PERIPHCLK_DFSDM1">
        <Condition Expression="DFSDM1Used_ForRCC" Diagnostic="I2S Activated and source is PLLI2S"/>
        <PossibleValue Value="RCC_PERIPHCLK_DFSDM1" Comment="RCC_PERIPHCLK_DFSDM1"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_DFSDMVar" Comment="RCC_PERIPHCLK_DFSDMVar" Type="list" DefaultValue=""/>
	
	
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_SDIOVar" Comment="RCC_PERIPHCLK_SDIOVar" Type="list" DefaultValue="RCC_PERIPHCLK_SDIO">
        <Condition Expression="SDIOUsed_ForRCC" Diagnostic="I2S Activated and source is PLLI2S"/>
        <PossibleValue Value="RCC_PERIPHCLK_SDIO" Comment="RCC_PERIPHCLK_SDIO"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_SDIOVar" Comment="RCC_PERIPHCLK_SDIOVar" Type="list" DefaultValue=""/>
	
	
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_I2S1Var" Comment="RCC_PERIPHCLK_I2S1Var" Type="list" DefaultValue="RCC_PERIPHCLK_I2S_APB1">
        <Condition Expression="((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S1))" Diagnostic="I2S Activated and source is PLLI2S"/>
        <PossibleValue Value="RCC_PERIPHCLK_I2S_APB1" Comment="RCC_PERIPHCLK_I2S_APB1"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_I2S1Var" Comment="RCC_PERIPHCLK_I2S1Var" Type="list" DefaultValue=""/>
	
	
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_I2S2Var" Comment="RCC_PERIPHCLK_I2S2Var" Type="list" DefaultValue="RCC_PERIPHCLK_I2S_APB2">
        <Condition Expression="((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S2))" Diagnostic="I2S Activated and source is PLLI2S"/>
        <PossibleValue Value="RCC_PERIPHCLK_I2S_APB2" Comment="RCC_PERIPHCLK_I2S_APB2"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_I2S2Var" Comment="RCC_PERIPHCLK_I2S2Var" Type="list" DefaultValue=""/>
	
	
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_RTCVar" Comment="RCC_PERIPHCLK_RTCVar" Type="list" DefaultValue="RCC_PERIPHCLK_RTC">
        <Condition Expression="RTCUsed_ForRCC|((HSEByPass|HSEOscillator)&amp;(SEM2RCC_HSE_REQUIRED_TIM11 &amp; TIM11 &amp; Semaphore_input_Channel1TIM11))" Diagnostic="I2S Activated and source is PLLI2S"/>
        <PossibleValue Value="RCC_PERIPHCLK_RTC" Comment="RCC_PERIPHCLK_RTC"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_RTCVar" Comment="RCC_PERIPHCLK_RTCVar" Type="list" DefaultValue=""/>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_TIMVar" Comment="RCC_PERIPHCLK_TIMVar" Type="list" DefaultValue="RCC_PERIPHCLK_TIM">
        <Condition Expression="TimPrescalerEnabled" Diagnostic="Timer Prescaler Activated"/>
        <PossibleValue Value="RCC_PERIPHCLK_TIM" Comment="RCC_PERIPHCLK_TIM"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_TIMVar" Comment="RCC_PERIPHCLK_TIMVar" Type="list" DefaultValue=""/>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_CK48Var" Comment="RCC_PERIPHCLK_CK48Var" Type="list" DefaultValue="RCC_PERIPHCLK_CLK48">
        <Condition Expression="USB_OTG_HSEmbeddedPHYUsed_ForRCC|USB_OTG_FSUsed_ForRCC|RNGUsed_ForRCC|(SDIOUsed_ForRCC &amp; SDIOSourceIsClock48)" Diagnostic="Timer Prescaler Activated"/>
        <PossibleValue Value="RCC_PERIPHCLK_CLK48" Comment="RCC_PERIPHCLK_CLK48"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_CK48Var" Comment="RCC_PERIPHCLK_CK48Var" Type="list" DefaultValue=""/>
	
	<!-- SAI1 A/B code generation -->
	<RefParameter Visible="false" Name="RCC_PERIPHCLK_SAIAVar" Comment="RCC_PERIPHCLK_SAIAVar" Type="list" DefaultValue="RCC_PERIPHCLK_SAIA">
        <Condition Expression="SAI1Used_ForRCC &amp; SAIAUsed_ForRCC" Diagnostic="SAI1A Activated"/>
        <PossibleValue Value="RCC_PERIPHCLK_SAIA" Comment="RCC_PERIPHCLK_SAIA"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_SAIAVar" Comment="RCC_PERIPHCLK_SAIAVar" Type="list" DefaultValue=""/>
	
	<RefParameter Visible="false" Name="RCC_PERIPHCLK_SAIBVar" Comment="RCC_PERIPHCLK_SAIBVar" Type="list" DefaultValue="RCC_PERIPHCLK_SAIB">
        <Condition Expression="SAI1Used_ForRCC &amp; SAIBUsed_ForRCC" Diagnostic="SAI1B Activated"/>
        <PossibleValue Value="RCC_PERIPHCLK_SAIB" Comment="RCC_PERIPHCLK_SAIB"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_SAIBVar" Comment="RCC_PERIPHCLK_SAIBVar" Type="list" DefaultValue=""/>

	<!-- LPTimer code generation -->
	<RefParameter Visible="false" Name="RCC_PERIPHCLK_LPTIM1Var" Comment="RCC_PERIPHCLK_LPTIM1Var" Type="list" DefaultValue="RCC_PERIPHCLK_LPTIM1">
        <Condition Expression="LPTIMUsed_ForRCC" Diagnostic="LPTIM1 Activated"/>
        <PossibleValue Value="RCC_PERIPHCLK_LPTIM1" Comment="RCC_PERIPHCLK_LPTIM1"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_LPTIM1Var" Comment="RCC_PERIPHCLK_LPTIM1Var" Type="list" DefaultValue=""/>

    <!-- DFSDM2Audio code generation -->
	<RefParameter Visible="false" Name="RCC_PERIPHCLK_DFSDM2_AUDIOVar" Comment="RCC_PERIPHCLK_DFSDM2_AUDIOVar" Type="list" DefaultValue="RCC_PERIPHCLK_DFSDM2_AUDIO">
        <Condition Expression="DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2" Diagnostic="DFSDM2Audio Activated"/>
        <PossibleValue Value="RCC_PERIPHCLK_DFSDM2_AUDIO" Comment="RCC_PERIPHCLK_DFSDM2_AUDIO"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_DFSDM2_AUDIOVar" Comment="RCC_PERIPHCLK_DFSDM2_AUDIOVar" Type="list" DefaultValue=""/>

    <!-- DFSDM1Audio code generation -->
	<RefParameter Visible="false" Name="RCC_PERIPHCLK_DFSDM1_AUDIOVar" Comment="RCC_PERIPHCLK_DFSDM1_AUDIOVar" Type="list" DefaultValue="RCC_PERIPHCLK_DFSDM1_AUDIO">
        <Condition Expression="DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1" Diagnostic="DFSDM2Audio Activated"/>
        <PossibleValue Value="RCC_PERIPHCLK_DFSDM1_AUDIO" Comment="RCC_PERIPHCLK_DFSDM1_AUDIO"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_DFSDM1_AUDIOVar" Comment="RCC_PERIPHCLK_DFSDM1_AUDIOVar" Type="list" DefaultValue=""/>

	<!-- -->
	
    <RefParameter Visible="false" Name="FMPI2C1ClockSelectionARG" Comment="FMPI2C1ClockSelectionARG" Type="list" DefaultValue="+FMPI2C1Selection">
        <Condition Expression="FMPI2C1Used_ForRCC" Diagnostic="I2S Activated and source is PLLI2S"/>
    </RefParameter>
    <RefParameter Visible="false" Name="FMPI2C1ClockSelectionARG" Comment="FMPI2C1ClockSelectionARG" Type="list" DefaultValue="null"/>
	
	
	
	
	
    <RefParameter Visible="false" Name="PLLI2SSelectionARG" Comment="PLLI2SSelectionARG" Type="list" DefaultValue="+PLLI2SSource">
        <Condition Expression="PLLI2SUsed=1" Diagnostic="I2S Activated and source is PLLI2S"/>
    </RefParameter>
    <RefParameter Visible="false" Name="PLLI2SSelectionARG" Comment="PLLI2SSelectionARG" Type="list" DefaultValue="null"/>
	
    <RefParameter Visible="false" Name="SDIOClockSelectionARG" Comment="SDIOClockSelectionARG" Type="list" DefaultValue="+SDIOCLockSelection">
        <Condition Expression="SDIOUsed_ForRCC" Diagnostic="I2S Activated and source is PLLI2S"/>
    </RefParameter>
    <RefParameter Visible="false" Name="SDIOClockSelectionARG" Comment="SDIOClockSelectionARG" Type="list" DefaultValue="null"/>
	
	
    <RefParameter Visible="false" Name="I2S1ClockSelectionARG" Comment="I2S1ClockSelectionARG" Type="list" DefaultValue="+I2S1CLockSelection">
        <Condition Expression="((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S1))" Diagnostic="I2S Activated and source is PLLI2S"/>
    </RefParameter>
    <RefParameter Visible="false" Name="I2S1ClockSelectionARG" Comment="I2S1ClockSelectionARG" Type="list" DefaultValue="null"/>
	
	
	
    <RefParameter Visible="false" Name="I2S2ClockSelectionARG" Comment="I2S2ClockSelectionARG" Type="list" DefaultValue="+I2S2CLockSelection">
        <Condition Expression="((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2  &amp; DFSDM2ADSourceI2S2))" Diagnostic="I2S Activated and source is PLLI2S"/>
    </RefParameter>
    <RefParameter Visible="false" Name="I2S2ClockSelectionARG" Comment="I2S2ClockSelectionARG" Type="list" DefaultValue="null"/>
	
    <RefParameter Visible="false" Name="DFSDMClockSelectionARG" Comment="DFSDMClockSelectionARG" Type="list" DefaultValue="+DFSDMSelection">
        <Condition Expression="DFSDM1Used_ForRCC" Diagnostic="DFSDM1"/>
    </RefParameter>
    <RefParameter Visible="false" Name="DFSDMClockSelectionARG" Comment="DFSDMClockSelectionARG" Type="list" DefaultValue="null"/>
    
    <RefParameter Visible="false" Name="DFSDM2ClockSelectionARG" Comment="DFSDM2ClockSelectionARG" Type="list" DefaultValue="+DFSDM2Selection">
        <Condition Expression="DFSDM2Used_ForRCC" Diagnostic="DFSDM2"/>
    </RefParameter>
    <RefParameter Visible="false" Name="DFSDM2ClockSelectionARG" Comment="DFSDM2ClockSelectionARG" Type="list" DefaultValue="null"/>
	
    <RefParameter Visible="false" Name="DFSDMADClockSelectionARG" Comment="DFSDMADClockSelectionARG" Type="list" DefaultValue="+DFSDMAudioSelection">
        <Condition Expression="DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1" Diagnostic="I2S Activated and source is PLLI2S"/>
    </RefParameter>
    <RefParameter Visible="false" Name="DFSDMADClockSelectionARG" Comment="DFSDMADClockSelectionARG" Type="list" DefaultValue="null"/>

    <RefParameter Visible="false" Name="DFSDM2ADClockSelectionARG" Comment="DFSDM2ADClockSelectionARG" Type="list" DefaultValue="+DFSDM2AudioSelection">
        <Condition Expression="DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2" Diagnostic="DFSDM2 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="DFSDM2ADClockSelectionARG" Comment="DFSDM2ADClockSelectionARG" Type="list" DefaultValue="null"/>	
	
    <RefParameter Visible="false" Name="CK48ClockSelectionARG" Comment="CK48ClockSelectionARG" Type="list" DefaultValue="+USBCLockSelection">
        <Condition Expression="(USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|RNGUsed_ForRCC|(SDIOSourceIsClock48&amp;SDIOUsed_ForRCC))" Diagnostic="PLLSAI is used for SAI"/>
    </RefParameter>
    <RefParameter Visible="false" Name="CK48ClockSelectionARG" Comment="CK48ClockSelectionARG" Type="list" DefaultValue="null"/>
	
	
    <RefParameter Visible="false" Name="RTCClockSelectionARG" Comment="RTCClockSelectionARG" Type="list" DefaultValue="+RCC_RTC_Clock_Source">
        <Condition Expression="((HSEByPass|HSEOscillator)&amp;(SEM2RCC_HSE_REQUIRED_TIM11 &amp; TIM11 &amp; Semaphore_input_Channel1TIM11))|RTCUsed_ForRCC" Diagnostic="PLLSAI is used for SAI"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RTCClockSelectionARG" Comment="RTCClockSelectionARG" Type="list" DefaultValue="null"/>
	
    <RefParameter Visible="false" Name="TIMPresSelectionARG" Comment="TIMPresSelectionARG" Type="list" DefaultValue="+RCC_TIM_PRescaler_Selection">
        <Condition Expression="TimPrescalerEnabled" Diagnostic="PLLSAI is used for SAI"/>
    </RefParameter>
    <RefParameter Visible="false" Name="TIMPresSelectionARG" Comment="TIMPresSelectionARG" Type="list" DefaultValue="null"/>
	
	
    <RefParameter Visible="false" Comment="MainPLL Is Used" DefaultValue="1" Name="PLLI2SUsed" Min="1" Type="integer">
        <Condition Expression="(MCO2Config &amp; MCOSourceIsPLLI2SP)|(I2S1SourceIsPLLI2SR&amp; ((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1 &amp; DFSDMADSourceI2S1)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2 &amp; DFSDM2ADSourceI2S1)))|(I2S2SourceIsPLLI2SR&amp; ((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1 &amp; DFSDMADSourceI2S2)|(DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2 &amp; DFSDM2ADSourceI2S2)))|((USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|RNGUsed_ForRCC|(SDIOSourceIsClock48&amp;SDIOUsed_ForRCC))&amp; USBSourceisPLLI2SQ)|SAI1ASourceIsPLLI2SR &amp; (SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|SAI1BSourceIsPLLI2SR &amp; (SAI1Used_ForRCC &amp; SAIBUsed_ForRCC)" Diagnostic="LSE is used if "/>    </RefParameter>
    <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLI2SUsed" Min="0" Type="integer"/>
	
    <RefParameter Visible="false" Name="PLLI2SNARG" Comment="PLLI2SNARG" Type="list" DefaultValue="+PLLI2SN">
        <Condition Diagnostic="PLLI2SM  used" Expression="PLLI2SUsed=1"/>
    </RefParameter>
    <RefParameter Visible="false" Name="PLLI2SNARG" Comment="PLLI2SNARG" Type="list" DefaultValue="null"/>
	

	
    <RefParameter Visible="false" Name="PLLI2SRARG" Comment="PLLI2SRARG" Type="list" DefaultValue="+PLLI2SR">
        <Condition Diagnostic="PLL not used" Expression="PLLI2SUsed=1"/>
    </RefParameter>
    <RefParameter Visible="false" Name="PLLI2SRARG" Comment="PLLI2SRARG" Type="list" DefaultValue="null"/>

    <RefParameter Visible="false" Name="PLLI2SQARG" Comment="PLLI2SQARG" Type="list" DefaultValue="+PLLI2SQ">
        <Condition Diagnostic="PLL not used" Expression="PLLI2SUsed=1"/>
    </RefParameter>
    <RefParameter Visible="false" Name="PLLI2SQARG" Comment="PLLI2SQARG" Type="list" DefaultValue="null"/>
	
	    <RefParameter Visible="false" Name="PLLI2SMARG" Comment="PLLI2SMARG" Type="list" DefaultValue="+PLLI2SM">
        <Condition Diagnostic="PLLI2SM  used" Expression="PLLI2SUsed=1"/>
    </RefParameter>
    <RefParameter Visible="false" Name="PLLI2SMARG" Comment="PLLI2SMARG" Type="list" DefaultValue="null"/>
	
	<!-- PLLDIVR -->
    <RefParameter Visible="false" Name="PLLDivRARG" Comment="PLLDivRARG" Type="list" DefaultValue="+PLLDivR">
        <Condition Expression="(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIBUsed_ForRCC)" Diagnostic="PLLDIVR used"/>
    </RefParameter>
    <RefParameter Visible="false" Name="PLLDivRARG" Comment="PLLDivRARG" Type="list" DefaultValue="null"/>

	
    <!-- PLLI2SDivR -->
    <RefParameter Visible="false" Name="PLLI2SDivRARG" Comment="PLLI2SDivRARG" Type="list" DefaultValue="+PLLI2SDivR">
        <Condition Expression="(SAI1ASourceIsPLLI2SR &amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPLLI2SR&amp;SAI1Used_ForRCC &amp; SAIBUsed_ForRCC)" Diagnostic="PLLI2SDivR used"/>
    </RefParameter>
    <RefParameter Visible="false" Name="PLLI2SDivRARG" Comment="PLLI2SDivRARG" Type="list" DefaultValue="null"/>
	
    <!-- SAI1 A/B code generation -->
    <RefParameter Visible="false" Name="SAIAClockSelectionARG" Comment="SAIAClockSelectionARG" Type="list" DefaultValue="+SAI1ACLockSourceSelection">
        <Condition Expression="SAI1Used_ForRCC &amp; SAIAUsed_ForRCC" Diagnostic="SAI1A enabled"/>
    </RefParameter>
    <RefParameter Visible="false" Name="SAIAClockSelectionARG" Comment="SAIAClockSelectionARG" Type="list" DefaultValue="null"/>
	
    <RefParameter Visible="false" Name="SAIBClockSelectionARG" Comment="SAIBClockSelectionARG" Type="list" DefaultValue="+SAI1BCLockSourceSelection">
        <Condition Expression="SAI1Used_ForRCC &amp; SAIBUsed_ForRCC" Diagnostic="SAI1B enabled"/>
    </RefParameter>
    <RefParameter Visible="false" Name="SAIBClockSelectionARG" Comment="SAIBClockSelectionARG" Type="list" DefaultValue="null"/>
	
	<!-- LPTimer code generation -->
    <RefParameter Visible="false" Name="LPTIM1lockSelectionARG" Comment="LPTIM1lockSelectionARG" Type="list" DefaultValue="+LPTIM1CLockSelection">
        <Condition Expression="LPTIMUsed_ForRCC" Diagnostic="LPTIM1 enabled"/>
    </RefParameter>
    <RefParameter Visible="false" Name="LPTIM1lockSelectionARG" Comment="LPTIM1lockSelectionARG" Type="list" DefaultValue="null"/>
    <!-- -->
    
    <RefParameter Visible="false" Comment="Hse StateARG" DefaultValue="+HSEState" Name="HSEStateARG" Type="list">
        <Condition Diagnostic="HSE used" Expression="HSEUsed=1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Hse StateARG" DefaultValue="null" Name="HSEStateARG" Type="list"/>
    <RefParameter Visible="false" Comment="Lse StateARG" DefaultValue="+LSEState" Name="LSEStateARG" Type="list">
        <Condition Diagnostic="LSE used" Expression="LSEUsed=1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Lse StateARG" DefaultValue="null" Name="LSEStateARG" Type="list"/>
    <RefParameter Visible="false" Comment="HSI StateARG" DefaultValue="+HSIState" Name="HSIStateARG" Type="list">
        <Condition Diagnostic="HSI used" Expression="HSIUsed=1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSI StateARG" DefaultValue="null" Name="HSIStateARG" Type="list"/>

    <RefParameter Visible="false" Comment="HSICalibrationValueARG" DefaultValue="RCC_HSICALIBRATION_DEFAULT" Name="HSICalibrationValueARG" Type="list">
        <Condition Diagnostic="HSI used" Expression="HSIUsed=1 &amp; HSICalibrationValue=16"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSICalibrationValueARG" DefaultValue="+HSICalibrationValue" Name="HSICalibrationValueARG" Type="list">
        <Condition Diagnostic="HSI used" Expression="HSIUsed=1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSICalibrationValueARG" DefaultValue="null" Name="HSICalibrationValueARG" Type="list"/>
    <RefParameter Visible="false" Comment="LSI StateARG" DefaultValue="+LSIState" Name="LSIStateARG" Type="list">
        <Condition Diagnostic="LSI used" Expression="LSIUsed=1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="LSI StateARG" DefaultValue="null" Name="LSIStateARG" Type="list"/>
    <RefParameter Visible="false" Comment="PLLStateARG" DefaultValue="+PLLState" Name="PLLStateARG" Type="list">
        <Condition Expression="(((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; MCO1Config)|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp; MCO2Config)|(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR &amp; SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))|SysSourceIsPLLclk|(I2S1SourceIsPllR&amp;((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)))|(I2S2SourceIsPllR&amp;((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)))|(USBSourceisPLLQ&amp; (USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|RNGUsed_ForRCC|(SDIOSourceIsClock48 &amp; SDIOUsed_ForRCC)))" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLStateARG" DefaultValue="RCC_PLL_NONE" Name="PLLStateARG" Type="list"/>
    <RefParameter Visible="false" Comment="PLLSourceARG" DefaultValue="+PLLSource" Name="PLLSourceARG" Type="list">
<Condition Expression="((I2S2SourceIsPllsrc)&amp;((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC) | (DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1 &amp; DFSDMADSourceI2S2))) | (((I2S1SourceIsPllsrc)&amp;((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1 &amp; DFSDMADSourceI2S1)))) |(MCOSourceIsPLLI2SP &amp;MCO2Config)|(((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; MCO1Config)|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp; MCO2Config)|(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR &amp; SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))|SysSourceIsPLLclk|((I2S1SourceIsPllR|I2S1SourceIsPLLI2SR|I2S1SourceIsPllsrc)&amp;((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1 &amp; DFSDMADSourceI2S1)))|((I2S2SourceIsPllR|I2S2SourceIsPLLI2SR|I2S2SourceIsPllsrc)&amp;((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1 &amp; DFSDMADSourceI2S2)))|( (USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|RNGUsed_ForRCC|(SDIOSourceIsClock48 &amp; SDIOUsed_ForRCC))&amp; (USBSourceisPLLQ))|(SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1Used_ForRCC &amp; SAIBUsed_ForRCC)" Diagnostic=""/>	<Condition Expression="(MCOSourceIsPLLI2SP &amp;MCO2Config)|(((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; MCO1Config)|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp; MCO2Config)|(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR &amp; SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))|SysSourceIsPLLclk|((I2S1SourceIsPllR|I2S1SourceIsPLLI2SR|I2S1SourceIsPllsrc)&amp;((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1 &amp; DFSDMADSourceI2S1)))|((I2S2SourceIsPllR|I2S2SourceIsPLLI2SR|I2S2SourceIsPllsrc)&amp;((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1 &amp; DFSDMADSourceI2S2)))|( (USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|RNGUsed_ForRCC|(SDIOSourceIsClock48 &amp; SDIOUsed_ForRCC))&amp; (USBSourceisPLLQ))" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLSourceARG" DefaultValue="null" Name="PLLSourceARG" Type="list"/>
    <RefParameter Visible="false" Comment="PLLMARG" DefaultValue="+PLLM" Name="PLLMARG" Type="list">
        <Condition Expression="(((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; MCO1Config)|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp; MCO2Config)|(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR &amp; SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))|SysSourceIsPLLclk|(I2S1SourceIsPllR&amp;((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)))|(I2S2SourceIsPllR&amp;((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)))|(USBSourceisPLLQ&amp; (USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|RNGUsed_ForRCC|(SDIOSourceIsClock48 &amp; SDIOUsed_ForRCC)))" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLMARG" DefaultValue="null" Name="PLLMARG" Type="list"/>
    <RefParameter Visible="false" Comment="PLLNARG" DefaultValue="+PLLN" Name="PLLNARG" Type="list">
        <Condition Expression="(((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; MCO1Config)|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp; MCO2Config)|(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR &amp; SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))|SysSourceIsPLLclk|SysSourceIsPLLR|(I2S1SourceIsPllR&amp;((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)))|(I2S2SourceIsPllR&amp;((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)))|(SPDIFSourceisPLLR&amp;SPDIFRXUsed_ForRCC)|(USBSourceisPLLQ&amp; (USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|(SDIOSourceIsClock48 &amp; SDIOUsed_ForRCC)))|RNGUsed_ForRCC" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLNARG" DefaultValue="null" Name="PLLNARG" Type="list"/>
    <RefParameter Visible="false" Comment="PLLQARG" DefaultValue="+PLLQ" Name="PLLQARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="(((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; MCO1Config)|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp; MCO2Config)|(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR &amp; SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))|SysSourceIsPLLclk|(I2S1SourceIsPllR&amp;((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)))|(I2S2SourceIsPllR&amp;((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)))|(USBSourceisPLLQ&amp; (USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|RNGUsed_ForRCC|(SDIOSourceIsClock48 &amp; SDIOUsed_ForRCC)))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLQARG" DefaultValue="null" Name="PLLQARG" Type="list"/>
    <RefParameter Visible="false" Comment="PLLPARG" DefaultValue="+PLLP" Name="PLLPARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="(((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; MCO1Config)|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp; MCO2Config)|(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR &amp; SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))|SysSourceIsPLLclk|(I2S1SourceIsPllR&amp;((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)))|(I2S2SourceIsPllR&amp;((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)))|(USBSourceisPLLQ&amp; (USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|RNGUsed_ForRCC|(SDIOSourceIsClock48 &amp; SDIOUsed_ForRCC)))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLPARG" DefaultValue="null" Name="PLLPARG" Type="list"/>
    <RefParameter Visible="false" Comment="PLLRARG" DefaultValue="+PLLR" Name="PLLRARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="(((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; MCO1Config)|((RCC_MCO2Source=RCC_MCO2SOURCE_PLLCLK)&amp; MCO2Config)|(SAI1ASourceIsPllR&amp;SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|(SAI1BSourceIsPllR &amp; SAI1Used_ForRCC &amp; SAIBUsed_ForRCC))|SysSourceIsPLLclk|(I2S1SourceIsPllR&amp;((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S1)))|(I2S2SourceIsPllR&amp;((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1  &amp; DFSDMADSourceI2S2)))|(USBSourceisPLLQ&amp; (USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|RNGUsed_ForRCC|(SDIOSourceIsClock48 &amp; SDIOUsed_ForRCC)))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLRARG" DefaultValue="null" Name="PLLRARG" Type="list"/>
	
	
    <RefParameter Visible="false" Comment="Clock TypeARG" DefaultValue="+ClockType" Name="ClockTypeARG" Type="list">
        <Condition Expression="SysClkToConfigure|HCLKtoConfigure|PCLK1toConfigure|PCLK2toConfigure" Diagnostic="at least one clock to configure"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock TypeARG" DefaultValue="null" Name="ClockTypeARG" Type="list"/>
    <RefParameter Visible="false" Comment="SysClock SourceARG" DefaultValue="+SYSCLKSource" Name="SYSCLKSourceARG" Type="list">
        <Condition Expression="SysClkToConfigure" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="SysClock SourceARG" DefaultValue="null" Name="SYSCLKSourceARG" Type="list"/>
    <RefParameter Visible="false" Comment="AHBCLKDividerARG" DefaultValue="+AHBCLKDivider" Name="AHBCLKDividerARG" Type="list">
        <Condition Expression="HCLKtoConfigure" Diagnostic=""/>
    </RefParameter>	
    <RefParameter Visible="false" Comment="AHBCLKDividerARG" DefaultValue="null" Name="AHBCLKDividerARG" Type="list"/>
    <RefParameter Visible="false" Comment="APB1CLKDividerARG" DefaultValue="+APB1CLKDivider" Name="APB1CLKDividerARG" Type="list">
        <Condition Expression="PCLK1toConfigure" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB1CLKDividerARG" DefaultValue="null" Name="APB1CLKDividerARG" Type="list"/>
    <RefParameter Visible="false" Comment="APB2CLKDividerARG" DefaultValue="+APB2CLKDivider" Name="APB2CLKDividerARG" Type="list">
        <Condition Expression="PCLK2toConfigure" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB2CLKDividerARG" DefaultValue="null" Name="APB2CLKDividerARG" Type="list"/>
    <RefParameter Comment="HSI Calibration Value" DefaultValue="16" Min="0" Max="31" Name="HSICalibrationValue" Type="integer" Group="RCC Parameters"/>
    <RefParameter Name="RCC_TIM_PRescaler_Selection" Comment="TIM Prescaler Selection" Type="list" DefaultValue="RCC_TIMPRES_DESACTIVATED" Group="RCC Parameters">
        <PossibleValue Value="RCC_TIMPRES_ACTIVATED" Comment="Enabled" Semaphore="TimPrescalerEnabled"/>
        <PossibleValue Value="RCC_TIMPRES_DESACTIVATED" Comment="Disabled"/>
    </RefParameter>
	
    <RefParameter Name="INSTRUCTION_CACHE_ENABLE" Comment="Instruction Cache" Type="list" DefaultValue="1" Group="System Parameters">
        <PossibleValue Value="1" Comment="Enabled"/>
        <PossibleValue Value="0" Comment="Disabled"/>
    </RefParameter>
    <RefParameter Name="PREFETCH_ENABLE" Comment="Prefetch Buffer" Type="list" DefaultValue="0" Group="System Parameters">
        <Condition Diagnostic="" Expression="(VDD_VALUE &lt; 2.1)"/>
        <PossibleValue Value="0" Comment="Disabled"/>
    </RefParameter>
    <RefParameter Name="PREFETCH_ENABLE" Comment="Prefetch Buffer" Type="list" DefaultValue="1" Group="System Parameters">
        <PossibleValue Value="1" Comment="Enabled"/>
        <PossibleValue Value="0" Comment="Disabled"/>
    </RefParameter>
    <RefParameter Name="DATA_CACHE_ENABLE" Comment="Data Cache" Type="list" DefaultValue="1" Group="System Parameters">
        <PossibleValue Value="1" Comment="Enabled"/>
        <PossibleValue Value="0" Comment="Disabled"/>
    </RefParameter>
      <RefParameter Name="PWR_Regulator_Voltage_Scale" Comment="Power Regulator Voltage Scale" Type="list" DefaultValue="PWR_REGULATOR_VOLTAGE_SCALE1" Group="Power Parameters">
        <Condition Diagnostic="" Expression="(HCLKFreq_Value  &gt; 84000000)"/>
        <PossibleValue Value="PWR_REGULATOR_VOLTAGE_SCALE1" Comment="Power Regulator Voltage Scale 1"/>
    </RefParameter>
    <RefParameter Name="PWR_Regulator_Voltage_Scale" Comment="Power Regulator Voltage Scale" Type="list" DefaultValue="PWR_REGULATOR_VOLTAGE_SCALE1" Group="Power Parameters">
	<Condition Diagnostic="" Expression="(HCLKFreq_Value  &gt; 64000000)"/>
        <PossibleValue Value="PWR_REGULATOR_VOLTAGE_SCALE2" Comment="Power Regulator Voltage Scale 2"/>
        <PossibleValue Value="PWR_REGULATOR_VOLTAGE_SCALE1" Comment="Power Regulator Voltage Scale 1"/>

    </RefParameter>
	 <RefParameter Name="PWR_Regulator_Voltage_Scale" Comment="Power Regulator Voltage Scale" Type="list" DefaultValue="PWR_REGULATOR_VOLTAGE_SCALE1" Group="Power Parameters">

        <PossibleValue Value="PWR_REGULATOR_VOLTAGE_SCALE2" Comment="Power Regulator Voltage Scale 2"/>
        <PossibleValue Value="PWR_REGULATOR_VOLTAGE_SCALE1" Comment="Power Regulator Voltage Scale 1"/>
        <PossibleValue Value="PWR_REGULATOR_VOLTAGE_SCALE3" Comment="Power Regulator Voltage Scale 3"/>

    </RefParameter>
    <!-- Advanced Parameters-->
 	<RefParameter Name="VDD_VALUE" Comment="VDD voltage (V)" DefaultValue="3.3" Max="3.6" Min="1.7" Type="double" Unit="V" Group="System Parameters">
		
	</RefParameter>
	
    <!--0 < HCLK <= 30  |0 < HCLK <= 24  |0 < HCLK <= 18   |0 < HCLK <= 16  -->
  <RefParameter Name="FLatency" Comment="Flash Latency(WS)" Type="uniqueElementList" DefaultValue="FLASH_LATENCY_0" Group="System Parameters">
        <Condition Diagnostic="" Expression="
		(((((VDD_VALUE &gt; 2.7)|(VDD_VALUE = 2.7)) &amp; ((VDD_VALUE &lt; 3.6)|(VDD_VALUE =3.6))) &amp; ((HCLKFreq_Value &gt; 0) &amp;((HCLKFreq_Value &lt;  25000000)|(HCLKFreq_Value =25000000))))|
		((((VDD_VALUE &gt; 2.4)|(VDD_VALUE= 2.4)) &amp; ((VDD_VALUE &lt; 2.7)|(VDD_VALUE = 2.7))) &amp; ((HCLKFreq_Value &gt; 0) &amp; ((HCLKFreq_Value &lt;  20000000)|(HCLKFreq_Value =20000000))))|
		((((VDD_VALUE &gt; 2.1)|(VDD_VALUE= 2.1)) &amp; ((VDD_VALUE &lt; 2.4)|(VDD_VALUE = 2.4))) &amp; ((HCLKFreq_Value &gt; 0) &amp; ((HCLKFreq_Value &lt;  18000000)|(HCLKFreq_Value= 18000000))))|
		((((VDD_VALUE &gt; 1.71)|(VDD_VALUE=1.71)) &amp; ((VDD_VALUE &lt; 2.1)|(VDD_VALUE = 2.1))) &amp; ((HCLKFreq_Value &gt; 0) &amp; ((HCLKFreq_Value &lt; 16000000)|(HCLKFreq_Value =16000000))))) "/>
        <PossibleValue Value="FLASH_LATENCY_0" Comment="0 WS (1 CPU cycle)"/>
    </RefParameter>
    <!--1 WS 30 < HCLK <= 60 |24 < HCLK <= 48 |18 < HCLK <= 36  |16 < HCLK <= 32 -->
    <RefParameter Name="FLatency" Comment="Flash Latency(WS)" Type="uniqueElementList" DefaultValue="FLASH_LATENCY_1" Group="System Parameters">
        <Condition Diagnostic="" Expression="
		(((((VDD_VALUE &gt; 2.7)|(VDD_VALUE = 2.7)) &amp; ((VDD_VALUE &lt; 3.6)|(VDD_VALUE =3.6))) &amp; ((HCLKFreq_Value &gt; 25000000) &amp; ((HCLKFreq_Value &lt;  50000000)|(HCLKFreq_Value= 50000000))))|
		((((VDD_VALUE &gt; 2.4)|(VDD_VALUE= 2.4)) &amp; ((VDD_VALUE &lt; 2.7)|(VDD_VALUE = 2.7))) &amp; ((HCLKFreq_Value &gt;  20000000) &amp; ((HCLKFreq_Value &lt;  40000000)|(HCLKFreq_Value= 40000000))))|
		((((VDD_VALUE &gt; 2.1)|(VDD_VALUE= 2.1)) &amp; ((VDD_VALUE &lt; 2.4)|(VDD_VALUE = 2.4))) &amp; ((HCLKFreq_Value &gt;  18000000) &amp; ((HCLKFreq_Value &lt;  36000000)|(HCLKFreq_Value =36000000))))|
		((((VDD_VALUE &gt; 1.71)|(VDD_VALUE=1.71)) &amp; ((VDD_VALUE &lt; 2.1)|(VDD_VALUE = 2.1))) &amp; ((HCLKFreq_Value &gt; 16000000) &amp; ((HCLKFreq_Value &lt;  32000000)|(HCLKFreq_Value= 32000000)))))"/>
        <PossibleValue Value="FLASH_LATENCY_1" Comment="1 WS (2 CPU cycle)"/>
    </RefParameter>
    <!--2WS(3CPU cycle) -->
   <!-- 60 < HCLK <= 84 |48 < HCLK <= 72 |36 < HCLK <= 54  |32 < HCLK <= 48 -->
    <RefParameter Name="FLatency" Comment="Flash Latency(WS)" Type="uniqueElementList" DefaultValue="FLASH_LATENCY_2" Group="System Parameters">
        <Condition Diagnostic="" Expression="
		(((((VDD_VALUE &gt; 2.7)|(VDD_VALUE = 2.7)) &amp; ((VDD_VALUE &lt; 3.6)|(VDD_VALUE =3.6))) &amp; ((HCLKFreq_Value &gt; 50000000) &amp; ((HCLKFreq_Value &lt;  75000000)|(HCLKFreq_Value= 75000000))))|
		((((VDD_VALUE &gt; 2.4)|(VDD_VALUE= 2.4)) &amp; ((VDD_VALUE &lt; 2.7)|(VDD_VALUE = 2.7))) &amp; ((HCLKFreq_Value &gt;  40000000) &amp; ((HCLKFreq_Value &lt; 60000000)|(HCLKFreq_Value = 60000000))))|
		((((VDD_VALUE &gt; 2.1)|(VDD_VALUE= 2.1)) &amp; ((VDD_VALUE &lt; 2.4)|(VDD_VALUE = 2.4))) &amp; ((HCLKFreq_Value &gt;  36000000) &amp; ((HCLKFreq_Value &lt; 54000000)|(HCLKFreq_Value=  54000000))))|
		((((VDD_VALUE &gt; 1.71)|(VDD_VALUE=1.71)) &amp; ((VDD_VALUE &lt; 2.1)|(VDD_VALUE = 2.1))) &amp; ((HCLKFreq_Value &gt; 32000000) &amp; ((HCLKFreq_Value &lt; 48000000)|(HCLKFreq_Value=  48000000)))))"/>
        <PossibleValue Value="FLASH_LATENCY_2" Comment="2 WS (3 CPU cycle)"/>
    </RefParameter>
    <!--3WS(4CPU cycle) -->
    <!--  |90 < HCLK ? 100  | 72 < HCLK ? 96   |54 < HCLK ? 72    |48 < HCLK ? 64 -->
    <RefParameter Name="FLatency" Comment="Flash Latency(WS)" Type="uniqueElementList" DefaultValue="FLASH_LATENCY_3" Group="System Parameters">
        <Condition Diagnostic="" Expression="
		(((((VDD_VALUE &gt; 2.7)|(VDD_VALUE = 2.7)) &amp; ((VDD_VALUE &lt; 3.6)|(VDD_VALUE =3.6)))&amp; ((HCLKFreq_Value &gt;  75000000) &amp; ((HCLKFreq_Value &lt; 100000000)|(HCLKFreq_Value = 100000000))))|
		((((VDD_VALUE &gt; 2.4)|(VDD_VALUE= 2.4)) &amp; ((VDD_VALUE &lt; 2.7)|(VDD_VALUE = 2.7))) &amp; ((HCLKFreq_Value &gt;60000000) &amp; ((HCLKFreq_Value &lt; 80000000)|(HCLKFreq_Value = 80000000))))|
		((((VDD_VALUE &gt; 2.1)|(VDD_VALUE= 2.1)) &amp; ((VDD_VALUE &lt; 2.4)|(VDD_VALUE = 2.4))) &amp;  ((HCLKFreq_Value &gt; 54000000) &amp; ((HCLKFreq_Value &lt; 72000000)|(HCLKFreq_Value = 72000000))))|
		((((VDD_VALUE &gt; 1.71)|(VDD_VALUE=1.71)) &amp; ((VDD_VALUE &lt; 2.1)|(VDD_VALUE = 2.1))) &amp; ((HCLKFreq_Value &gt; 48000000) &amp; ((HCLKFreq_Value &lt; 64000000)|(HCLKFreq_Value=  64000000))))) "/>
        <PossibleValue Value="FLASH_LATENCY_3" Comment="3 WS (4 CPU cycle)"/>
    </RefParameter>
    <!--4WS(5CPU cycle) -->
    <!--| 96 < HCLK ? 100  |72 < HCLK ? 90    |64 < HCLK ? 80-->
    <RefParameter Name="FLatency" Comment="Flash Latency(WS)" Type="uniqueElementList" DefaultValue="FLASH_LATENCY_4" Group="System Parameters">
        <Condition Diagnostic="" Expression="
		(((((VDD_VALUE &gt; 2.4)|(VDD_VALUE= 2.4)) &amp; ((VDD_VALUE &lt; 2.7)|(VDD_VALUE = 2.7))) &amp; ((HCLKFreq_Value &gt;  80000000) &amp; ((HCLKFreq_Value &lt; 100000000)|(HCLKFreq_Value = 100000000))))|
		((((VDD_VALUE &gt; 2.1)|(VDD_VALUE= 2.1)) &amp; ((VDD_VALUE &lt; 2.4)|(VDD_VALUE = 2.4))) &amp; (((HCLKFreq_Value &gt; 72000000) )&amp; ((HCLKFreq_Value &lt; 90000000)|(HCLKFreq_Value = 90000000))))|
		((((VDD_VALUE &gt; 1.71)|(VDD_VALUE=1.71)) &amp; ((VDD_VALUE &lt; 2.1)|(VDD_VALUE = 2.1))) &amp; ((HCLKFreq_Value &gt; 64000000) &amp; ((HCLKFreq_Value &lt;  80000000)|(HCLKFreq_Value =80000000))))) "/>
        <PossibleValue Value="FLASH_LATENCY_4" Comment="4 WS (5 CPU cycle)"/>
    </RefParameter>
    <!--5WS(6CPU cycle) -->
    <!-- |90 < HCLK ? 100   |80 < HCLK ? 96-->
    <RefParameter Name="FLatency" Comment="Flash Latency(WS)" Type="uniqueElementList" DefaultValue="FLASH_LATENCY_5" Group="System Parameters">
        <Condition Diagnostic="" Expression="(
		((((VDD_VALUE &gt; 2.1)|(VDD_VALUE= 2.1)) &amp; ((VDD_VALUE &lt; 2.4)|(VDD_VALUE = 2.4))) &amp; ((HCLKFreq_Value &gt;  90000000) &amp; ((HCLKFreq_Value &lt; 100000000)|(HCLKFreq_Value = 100000000))))|
		((((VDD_VALUE &gt; 1.71)|(VDD_VALUE=1.71)) &amp; ((VDD_VALUE &lt; 2.1)|(VDD_VALUE = 2.1))) &amp; ((HCLKFreq_Value &gt; 80000000)&amp; ((HCLKFreq_Value &lt; 96000000)|(HCLKFreq_Value = 96000000)) ))) "/>
        <PossibleValue Value="FLASH_LATENCY_5" Comment="5 WS (6 CPU cycle)"/>
    </RefParameter>
	<!--6WS(7CPU cycle) -->
    <!--  |96 < HCLK ? 100-->
    <RefParameter Name="FLatency" Comment="Flash Latency(WS)" Type="uniqueElementList" DefaultValue="FLASH_LATENCY_6" Group="System Parameters">
        <Condition Diagnostic="" Expression="(
		
		((((VDD_VALUE &gt; 1.71)|(VDD_VALUE=1.71)) &amp; ((VDD_VALUE &lt; 2.1)|(VDD_VALUE = 2.1))) &amp; (HCLKFreq_Value &gt;  96000000) &amp; ((HCLKFreq_Value &lt; 100000000)|(HCLKFreq_Value = 100000000))) )"/>
        <PossibleValue Value="FLASH_LATENCY_6" Comment="6 WS (7 CPU cycle)"/>
    </RefParameter>
    <!--Should not Happen!-->
    <RefParameter Name="FLatency" Comment="Flash Latency(WS)" Type="list" DefaultValue="FLASH_LATENCY_0" Group="System Parameters">
        <PossibleValue Value="FLASH_LATENCY_0" Comment="0 WS (1 CPU cycle)"/>
        <PossibleValue Value="FLASH_LATENCY_1" Comment="1 WS (2 CPU cycle)"/>
        <PossibleValue Value="FLASH_LATENCY_2" Comment="2 WS (3 CPU cycle)"/>
        <PossibleValue Value="FLASH_LATENCY_3" Comment="3 WS (4 CPU cycle)"/>
        <PossibleValue Value="FLASH_LATENCY_4" Comment="4 WS (5 CPU cycle)"/>
        <PossibleValue Value="FLASH_LATENCY_5" Comment="5 WS (6 CPU cycle)"/>
        <PossibleValue Value="FLASH_LATENCY_6" Comment="6 WS (7 CPU cycle)"/>
        <PossibleValue Value="FLASH_LATENCY_7" Comment="7 WS (8 CPU cycle)"/>
        <PossibleValue Value="FLASH_LATENCY_8" Comment="8 WS (9 CPU cycle)"/>
    </RefParameter>
	
	
	
	
	

	
     <RefParameter Visible="false" Comment="Clock Type" DefaultValue="+ClockTypeHCLK+|ClockTypeSysClk+|ClockTypePCLK1+|ClockTypePCLK2" Name="ClockType" Type="list"/>

    <RefParameter Visible="false" Comment="Clock Type SysClk" DefaultValue="RCC_CLOCKTYPE_SYSCLK" Name="ClockTypeSysClk" Type="list">
        <PossibleValue Comment="Sysclk" Value="RCC_CLOCKTYPE_SYSCLK" Semaphore="SysClkToConfigure"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Type AHB" DefaultValue="RCC_CLOCKTYPE_HCLK" Name="ClockTypeHCLK" Type="list">
        <PossibleValue Comment="RCC_CLOCKTYPE_HCLK" Value="RCC_CLOCKTYPE_HCLK" Semaphore="HCLKtoConfigure"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Type HCLK1" DefaultValue="RCC_CLOCKTYPE_PCLK1" Name="ClockTypePCLK1" Type="list">
        <PossibleValue Comment="PCLK1" Value="RCC_CLOCKTYPE_PCLK1" Semaphore="PCLK1toConfigure"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Type HCLK2" DefaultValue="RCC_CLOCKTYPE_PCLK2" Name="ClockTypePCLK2" Type="list">
        <PossibleValue Comment="PCLK2" Value="RCC_CLOCKTYPE_PCLK2" Semaphore="PCLK2toConfigure"/>
    </RefParameter>
	
	
    <RefParameter Visible="false" Comment="Clock Output" Name="RCC_MCO1" DefaultValue="RCC_MCO1" Type="list">
        <Condition Diagnostic="" Expression="MCO1Config"/>
        <PossibleValue Comment="Clock Output 1" Value="RCC_MCO1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Output" Name="RCC_MCO1" DefaultValue="null" Type="list"/>
    <RefParameter Visible="false" Comment="Clock Output" Name="RCC_MCO2" DefaultValue="RCC_MCO2" Type="list">
        <Condition Diagnostic="" Expression="MCO2Config"/>
        <PossibleValue Comment="Clock Output 2" Value="RCC_MCO2"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Output" Name="RCC_MCO2" DefaultValue="null" Type="list"/>


	
    <RefParameter Visible="false" Name="EnbaleCSS" Comment="Clock Security System: available only when HSE is used directly or undirectly as System Clock" Type="list" DefaultValue="false">
        <Condition Diagnostic="" Expression="((PLLSourceHSE &amp;(SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK)) |(SYSCLKSource=RCC_SYSCLKSOURCE_HSE)) &amp; (HSEOscillator | HSEByPass)"/>
        <PossibleValue Value="true"  Comment="Enabled" Semaphore="CSSEnabled"/>
        <PossibleValue Value="false" Comment="Disabled"/>
    </RefParameter>

    <RefParameter Visible="false" Name="EnbaleCSS" Comment="Clock Security System: available only when HSE is used directly or undirectly as System Clock" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="Disabled"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="sourceforDFSDMForMacro" Comment="sourceforDFSDMForMacro" Type="list" DefaultValue="+DFSDMAudioSelection">
        <Condition Diagnostic="PLLSAIP not used" Expression="DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1 "/>
    </RefParameter>
    <RefParameter Visible="false" Name="sourceforDFSDM2ForMacro" Comment="sourceforDFSDM2ForMacro" Type="list" DefaultValue="+DFSDM2AudioSelection">
        <Condition Diagnostic="PLLSAIP not used" Expression="DFSDM2Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM2 "/>
    </RefParameter>
    <RefParameter Visible="false" Name="sourceforDFSDMForMacro" Comment="sourceforDFSDMForMacro" Type="list" DefaultValue="null"/> 

	<RefParameter Visible="false" Name="PLLMARGForMacro" Comment="PLLMARGForMacro" Type="list" DefaultValue="+PLLM">
        <Condition Diagnostic="PLLSAIP not used" Expression=" ((((MCO2Config &amp; MCOSourceIsPLLI2SP)|(I2S1SourceIsPLLI2SR&amp; ((I2S2Used_ForRCC|I2S3Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1 &amp; DFSDMADSourceI2S1)))|(I2S2SourceIsPLLI2SR&amp; ((I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)|(DFSDM1Used_ForRCC &amp; SEM2RCC_SAI1_CK_REQUIRED_DFSDM1 &amp; DFSDMADSourceI2S2))))|(I2S1SourceIsPllsrc&amp;(I2S2Used_ForRCC|I2S3Used_ForRCC))|(I2S2SourceIsPllsrc&amp;(I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC))) &amp; PLLState=RCC_PLL_OFF &amp; !PLLSourceI2SEXT)"/>
    </RefParameter>
    <RefParameter Visible="false" Name="PLLMARGForMacro" Comment="PLLMARGForMacro" Type="list" DefaultValue="null"/>
	
    <RefParameter Visible="false" Name="PLLSourceMARGForMacro" Comment="PLLSourceMARGForMacro" Type="list" DefaultValue="+PLLSource">
<Condition Diagnostic="PLLSAIP not used" Expression=" ((PLLI2SUsed=1  &amp; PLLState=RCC_PLL_OFF &amp; !PLLSourceI2SEXT)|(I2S1SourceIsPllsrc&amp;(I2S2Used_ForRCC|I2S3Used_ForRCC))|SAI1ASourceIsPllsrc &amp; (SAI1Used_ForRCC &amp; SAIAUsed_ForRCC)|SAI1BSourceIsPllsrc &amp; (SAI1Used_ForRCC &amp; SAIBUsed_ForRCC)|(I2S2SourceIsPllsrc&amp;(I2S1Used_ForRCC|I2S4Used_ForRCC|I2S5Used_ForRCC)))"/>	    </RefParameter>
    <RefParameter Visible="false" Name="PLLSourceMARGForMacro" Comment="PLLSourceMARGForMacro" Type="list" DefaultValue="null"/>
	
    <RefMode Name="ClockTree">
        <ConfigForMode>RCC_PLL_PLLSOURCE_CONFIG</ConfigForMode>
        <ConfigForMode>RCC_ConfigVoltageScaling</ConfigForMode>
        <ConfigForMode>RCC_OSCConfig</ConfigForMode>        
        <ConfigForMode>PWR_ActivateOverDrive</ConfigForMode>
        <ConfigForMode>RCC_ClockConfig</ConfigForMode>        
        <ConfigForMode>RCC_MCO1Config</ConfigForMode>        
        <ConfigForMode>RCC_MCO2Config</ConfigForMode>        
        <ConfigForMode>RCC_CSS_Enable</ConfigForMode>
        <ConfigForMode>RCC_interrupt_Time_SYSTICK_Config</ConfigForMode>
        <ConfigForMode>RCC_SYSTICK_CONFIG</ConfigForMode>
        <Parameter Name="OscillatorType"/>
        <Parameter Name="PLLN"/>
     
        <Parameter Name="PLLI2SN"/>
        <Parameter Name="APB1TimCLKDivider"/>
        <Parameter Name="APB2TimCLKDivider"/>
  
        <Parameter Name="RCC_RTC_Clock_Source_FROM_HSE"/>
        <Parameter Name="RCC_MCODiv1"/>
        <Parameter Name="RCC_MCODiv2"/>
	<Parameter Name="PLLDivR"/>
	<Parameter Name="PLLI2SDivR"/>
        <Parameter Name="AHBCLKDivider"/>
        <Parameter Name="APB1CLKDivider"/>
        <Parameter Name="APB2CLKDivider"/>
        <Parameter Name="Cortex_Div"/>
        <Parameter Name="PLLM"/>
        <Parameter Name="PLLR"/>
        <Parameter Name="PLLQ"/>
        <Parameter Name="PLLP"/>
        <Parameter Name="PLLI2SM"/>
        <Parameter Name="PLLI2SR"/>
        <Parameter Name="PLLI2SQ"/>

	<Parameter Name="SAI1ACLockSourceSelection"/>
	<Parameter Name="SAI1BCLockSourceSelection"/>
 

        <Parameter Name="FMPI2C1Selection"/>
        <Parameter Name="USBCLockSelection"/>

        <Parameter Name="SDIOCLockSelection"/>
  
     
        <Parameter Name="I2S1CLockSelection"/>
        <Parameter Name="I2S2CLockSelection"/>
        <Parameter Name="PLLSource"/>
        <Parameter Name="SYSCLKSource"/>
        <Parameter Name="RCC_RTC_Clock_Source"/>
        <Parameter Name="RCC_MCO1Source"/>
        <Parameter Name="RCC_MCO2Source"/>
        <Parameter Name="HSE_VALUE"/>
        <Parameter Name="HSI_VALUE"/>
        <Parameter Name="LSE_VALUE"/>
        <Parameter Name="LSI_VALUE"/>
        <Parameter Name="EXTERNAL_CLOCK_VALUE"/>
        <Parameter Name="SYSCLKFreq_VALUE"/>
        <Parameter Name="HCLKFreq_Value"/>
        <Parameter Name="MCO1PinFreq_Value"/>
        <Parameter Name="MCO2PinFreq_Value"/>
        <Parameter Name="APB1Freq_Value"/>
        <Parameter Name="APB2Freq_Value"/>
        <Parameter Name="WatchDogFreq_Value"/>
        <Parameter Name="RTCFreq_Value"/>
        <Parameter Name="RTCHSEDivFreq_Value"/>
        <Parameter Name="FMPI2C1Freq_Value"/>
        <Parameter Name="USBFreq_Value"/>
        <Parameter Name="SDIOFreq_Value"/>

        <Parameter Name="I2S1Freq_Value"/>
        <Parameter Name="I2S2Freq_Value"/>

        <Parameter Name="PWRFreq_Value"/>
        <Parameter Name="AHBFreq_Value"/>
        <Parameter Name="CortexFreq_Value"/>
        <Parameter Name="FCLKCortexFreq_Value"/>

        <Parameter Name="APB1TimFreq_Value"/>
        <Parameter Name="APB2TimFreq_Value"/>
        <Parameter Name="VCOInputFreq_Value"/>
        <Parameter Name="VCOOutputFreq_Value"/>
        <Parameter Name="PLLCLKFreq_Value"/>
        <Parameter Name="PLLQCLKFreq_Value"/>
        <Parameter Name="PLLRCLKFreq_Value"/>
        <Parameter Name="VCOI2SInputFreq_Value"/>
        <Parameter Name="VCOI2SOutputFreq_Value"/>
        <Parameter Name="PLLI2SRCLKFreq_Value"/>
        <Parameter Name="PLLI2SQCLKFreq_Value"/>

        <Parameter Name="EnableHSE"/>
        <Parameter Name="EnableHSERTCDevisor"/>
        <Parameter Name="RTCEnable"/>
        <Parameter Name="EnableLSERTC"/>
        <Parameter Name="EnableLSE"/>

        <Parameter Name="EnableSDIO"/>

        <Parameter Name="EnableFMPI2C1"/>
        <Parameter Name="EnableUSB"/>

        <Parameter Name="EnableI2S1"/>
        <Parameter Name="EnableI2S2"/>        
        <Parameter Name="IWDGEnable"/>
        <Parameter Name="ExtClockEnable"/>
        <Parameter Name="MCO1OutPutEnable"/>
        <Parameter Name="MCO2OutPutEnable"/>
        <Parameter Name="OscillatorTypeHSE"/>
        <Parameter Name="HSEUsed"/>
        <Parameter Name="HSEState"/>
        <Parameter Name="OscillatorTypeLSE"/>
        <Parameter Name="LSEUsed"/>
        <Parameter Name="LSEState"/>
        <Parameter Name="OscillatorTypeHSI"/>
        <Parameter Name="HSIUsed"/>
        <Parameter Name="HSIState"/>
        <Parameter Name="OscillatorTypeLSI"/>
        <Parameter Name="LSIUsed"/>
        <Parameter Name="LSIState"/>
        <Parameter Name="PLLUsed"/>
        <Parameter Name="PLLState"/>
        <Parameter Name="PeriphClockSelectionARG"/>
        <Parameter Name="PeriphClockSelection"/>
        <Parameter Name="RCC_PERIPHCLK_FMPI2C1Var"/>


        <Parameter Name="RCC_PERIPHCLK_SDIOVar"/>
        <Parameter Name="RCC_PERIPHCLK_I2S1Var"/>
        <Parameter Name="RCC_PERIPHCLK_I2S2Var"/>

        <Parameter Name="RCC_PERIPHCLK_RTCVar"/>
        <Parameter Name="RCC_PERIPHCLK_TIMVar"/>
        <Parameter Name="RCC_PERIPHCLK_CK48Var"/>
        <Parameter Name="FMPI2C1ClockSelectionARG"/>
    
        <Parameter Name="SDIOClockSelectionARG"/>
        <Parameter Name="I2S1ClockSelectionARG"/>
        <Parameter Name="I2S2ClockSelectionARG"/>

        <Parameter Name="CK48ClockSelectionARG"/>
        <Parameter Name="RTCClockSelectionARG"/>
        <Parameter Name="TIMPresSelectionARG"/>
        <Parameter Name="PLLI2SMARG"/>
        <Parameter Name="PLLI2SNARG"/>
        <Parameter Name="PLLI2SDivRARG"/>
        <Parameter Name="PLLDivRARG"/>
        <Parameter Name="SAIAClockSelectionARG"/>
        <Parameter Name="SAIBClockSelectionARG"/>
     
        <Parameter Name="PLLI2SRARG"/>
        <Parameter Name="PLLI2SQARG"/>
     
        <Parameter Name="HSEStateARG"/>
        <Parameter Name="LSEStateARG"/>
        <Parameter Name="HSIStateARG"/>
        <Parameter Name="HSICalibrationValueARG"/>
        <Parameter Name="LSIStateARG"/>
        <Parameter Name="PLLStateARG"/>
        <Parameter Name="PLLSourceARG"/>
        <Parameter Name="PLLMARG"/>
        <Parameter Name="PLLNARG"/>
        <Parameter Name="PLLQARG"/>
        <Parameter Name="PLLPARG"/>
        <Parameter Name="PLLRARG"/>
        <Parameter Name="ClockTypeARG"/>
        <Parameter Name="SYSCLKSourceARG"/>
        <Parameter Name="AHBCLKDividerARG"/>
        <Parameter Name="APB1CLKDividerARG"/>
        <Parameter Name="APB2CLKDividerARG"/>
        <Parameter Name="ClockType"/>
        <Parameter Name="ClockTypeSysClk"/>
        <Parameter Name="ClockTypeHCLK"/>
        <Parameter Name="ClockTypePCLK1"/>
        <Parameter Name="ClockTypePCLK2"/>
        <Parameter Name="RCC_MCO1"/>
     
 
        <Parameter Name="EnbaleCSS"/>
    </RefMode>
   
  
	
    <RefMode Name="AdvancedSettings">
        <Parameter Name="VDD_VALUE"/>
        <Parameter Name="INSTRUCTION_CACHE_ENABLE"/>
        <Parameter Name="PREFETCH_ENABLE"/>
        <Parameter Name="DATA_CACHE_ENABLE"/>
        <Parameter Name="FLatency"/>
        <Parameter Name="HSICalibrationValue"/>
        <Parameter Name="RCC_TIM_PRescaler_Selection"/>
        <Parameter Name="PWR_Regulator_Voltage_Scale"/>
		<Parameter Name="HSE_Timout"/>
        <Parameter Name="LSE_Timout"/>
      
    </RefMode>
    <ModeLogicOperator Name="OR">
        <!-- Modes for Oscillators & Clocks -->
        <Mode Name="OSC" UserName="High Speed Clock (HSE)">
            <ModeLogicOperator Name="XOR">
                <Mode Name="HSE-External-Clock-Source" UserName="BYPASS Clock Source">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="OSC_IN"/>
                        <Signal Name="OSC_OUT"/>
                    </SignalLogicalOp>
                    <Semaphore>HSEByPass</Semaphore>
                </Mode>
                <Mode Name="HSE-External-Oscillator" UserName="Crystal/Ceramic Resonator">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="OSC_IN"/>
                        <Signal Name="OSC_OUT"/>
                    </SignalLogicalOp>
                    <Semaphore>HSEOscillator</Semaphore>
                </Mode>
            </ModeLogicOperator>
        </Mode>
        <Mode Name="OSC32" UserName="Low Speed Clock (LSE) ">
            <ModeLogicOperator Name="XOR">
                <Mode Name="LSE-External-Clock-Source" UserName="BYPASS Clock Source">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="OSC32_IN"/>
                        <Signal Name="OSC32_OUT"/>
                    </SignalLogicalOp>
                    <Semaphore>LSEByPass</Semaphore>
                </Mode>
                <Mode Name="LSE-External-Oscillator" UserName="Crystal/Ceramic Resonator">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="OSC32_IN"/>
                        <Signal Name="OSC32_OUT"/>
                    </SignalLogicalOp>
                    <Semaphore>LSEOscillator</Semaphore>
                </Mode>
            </ModeLogicOperator>
        </Mode>
        <Mode Name="Clock-out-1" UserName="Master Clock Output 1">
            <ModeLogicOperator Name="OR">
                <Mode Name="Clock-out-1">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="MCO_1"/>
                    </SignalLogicalOp>
                    <Semaphore>MCO1Config</Semaphore>
                </Mode>
            </ModeLogicOperator>
        </Mode>
        <Mode Name="Clock-out-2" UserName="Master Clock Output 2">
            <ModeLogicOperator Name="OR">
                <Mode Name="Clock-out-2">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="MCO_2"/>
                    </SignalLogicalOp>
                    <Semaphore>MCO2Config</Semaphore>
                </Mode>
            </ModeLogicOperator>
        </Mode>
        <Mode Name="Audio_ClockIn" UserName="Audio Clock Input (I2S_CKIN)">
            <ModeLogicOperator Name="OR">
                <Mode Name="Audio_ClockIn">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="$SingleInstanceI2S_CKIN"/>
                    </SignalLogicalOp>
                    <Semaphore>AudioClockConfig</Semaphore>
                </Mode>
            </ModeLogicOperator>
        </Mode>
    </ModeLogicOperator>
    <RefSignal IOMode="AlternateFunctionPushPull" Name="MCO_1"/>
    <RefSignal IOMode="AlternateFunctionPushPull" Name="MCO_2"/>
    <RefSignal IOMode="System" Name="OSC32_IN"/>
    <RefSignal IOMode="System" Name="OSC32_OUT"/>
    <RefSignal IOMode="System" Name="OSC_IN"/>
    <RefSignal IOMode="System" Name="OSC_OUT"/>
    <RefSignal IOMode="AlternateFunctionPushPull" Name="$SingleInstanceI2S_CKIN"/>
</IP>
