<?xml version="1.0" encoding="UTF-8"?>
<Clock xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" savedConfig="false" xsi:noNamespaceSchemaLocation="C:/Users/ennarolf/Desktop/ToAchieve/xsd/MCU_Clock.xsd">
     <Background  imageName="STM32L4WithUSB" name="STM32L4WithUSB"  x="911" y="508">
        <Condition Diagnostic="" Expression="(USB_OTG_FS_Exist)"/>
    </Background>
	 <Background  imageName="STM32L4-withLCDBlock" name="STM32L4-withLCDBlock"  x="501" y="24">
        <Condition Diagnostic="" Expression="(LCD_Exist)"/>
    </Background>
	<Tree id="ClockTree">
        <!--Divers source-->
        <Element id="HSIRC" type="fixedSource" isKey="true" refParameter="HSI_VALUE" x="295" y="455">
            <Output signalId="HSI" to="SysClkSource"/>
            <Output signalId="HSI" to="PLLSource"/>
            <Output signalId="HSI" to="MCOMult"/>
            <Output signalId="HSI" to="USART1Mult"/>
            <Output signalId="HSI" to="USART2Mult"/>
            <Output signalId="HSI" to="USART3Mult"/>
            <Output signalId="HSI" to="UART4Mult"/>
            <Output signalId="HSI" to="UART5Mult"/>
            <Output signalId="HSI" to="LPUART1Mult"/>
            <Output signalId="HSI" to="LPTIM1Mult"/>
            <Output signalId="HSI" to="LPTIM2Mult"/>
            <Output signalId="HSI" to="I2C1Mult"/>
            <Output signalId="HSI" to="I2C2Mult"/>
            <Output signalId="HSI" to="I2C3Mult"/>
            <Output signalId="HSI" to="SWPMIMult"/>
          
        </Element>
		
	    <Element id="HSI48RC" type="fixedSource" isKey="true" refParameter="HSI48_VALUE" x="295" y="830">
            <Output signalId="HSI48" to="MCOMult"/>
            <Output signalId="HSI48" to="CK48Mult"/>
        </Element>
		
        <Element id="HSEOSC" type="variedSource" x="200" y="495" refParameter="HSE_VALUE">
            <Output signalId="HSE" to="SysClkSource"/>
            <Output signalId="HSE" to="HSERTCDevisor"/>
            <Output signalId="HSE" to="PLLSource"/>
            <Output signalId="HSE" to="MCOMult"/>
           
        </Element>
        <Element id="LSIRC" type="fixedSource" refParameter="LSI_VALUE" x="295" y="234">
            <Output signalId="LSI" to="IWDGOutput"/>
            <Output signalId="LSI" to="RTCClkSource"/>
            <Output signalId="LSI" to="LPTIM1Mult"/>
            <Output signalId="LSI" to="LPTIM2Mult"/>
            <Output signalId="LSI" to="MCOMult"/>
            <Output signalId="LSI" to="LSCOMult"/>

        </Element>
        <Element id="LSEOSC" type="variedSource" refParameter="LSE_VALUE" x="200" y="194">
            <Output signalId="LSE" to="RTCClkSource"/>
            <Output signalId="LSE" to="MCOMult"/>
            <Output signalId="LSE" to="USART1Mult"/>
            <Output signalId="LSE" to="USART2Mult"/>
            <Output signalId="LSE" to="USART3Mult"/>
            <Output signalId="LSE" to="UART4Mult"/>
            <Output signalId="LSE" to="UART5Mult"/>
            <Output signalId="LSE" to="LPUART1Mult"/>
            <Output signalId="LSE" to="LPTIM1Mult"/>
            <Output signalId="LSE" to="LPTIM2Mult"/>
            <Output signalId="LSE" to="LSCOMult"/>
        </Element>
        <Element id="MSIRC" type="distinctValsSource" isKey="true" refParameter="MSIClockRange" x="302" y="342">
            <Output signalId="MSI" to="SysClkSource"/>
            <Output signalId="MSI" to="PLLSource"/>
            <Output signalId="MSI" to="CK48Mult"/>
            <Output signalId="MSI" to="MCOMult"/>
        </Element>
        <!-- ExtPin-->
        <Element id="SAI1_EXT" type="variedSource" x="200" y="875" refParameter="EXTERNALSAI1_CLOCK_VALUE" refEnable="EnableExtClockForSAI1">
            <Output signalId="SAI1ExtClock" to="SAI1Mult"/>
        </Element>
		
        <Element id="SAI2_EXT" type="variedSource" x="200" y="940" refParameter="EXTERNALSAI2_CLOCK_VALUE" refEnable="EnableExtClockForSAI2">
            <Output signalId="SAI2ExtClock" to="SAI2Mult"/>
        </Element>
		
        <!--System clock-->
        <Element id="SysClkSource" type="multiplexor" refParameter="SYSCLKSource" x="695" y="345">
            <Input signalId="MSI"     from="MSIRC"  refValue="RCC_SYSCLKSOURCE_MSI"/>
            <Input signalId="HSI"     from="HSIRC"  refValue="RCC_SYSCLKSOURCE_HSI"    />
            <Input signalId="HSE"     from="HSEOSC" refValue="RCC_SYSCLKSOURCE_HSE"    />
            <Input signalId="PLLCLK"  from="PLLR"   refValue="RCC_SYSCLKSOURCE_PLLCLK" />
            <Output signalId="SYSCLKInput" to="SysCLKOutput"/>
           
        </Element>
        <Element id="SysCLKOutput" type="output" refParameter="SYSCLKFreq_VALUE" x="732" y="377">
            <Input signalId="SYSCLKInput" from="SysClkSource"/>
            <Output signalId="SYSCLK" to="AHBPrescaler"/>
            <Output signalId="SYSCLK" to="PWRCLKoutput"/>
            <Output signalId="SYSCLK" to="USART1Mult"/>
            <Output signalId="SYSCLK" to="USART2Mult"/>
            <Output signalId="SYSCLK" to="USART3Mult"/>
            <Output signalId="SYSCLK" to="UART4Mult"/>
            <Output signalId="SYSCLK" to="UART5Mult"/>
            <Output signalId="SYSCLK" to="LPUART1Mult"/>
            <Output signalId="SYSCLK" to="DFSDMMult"/>
            <Output signalId="SYSCLK" to="I2C1Mult"/>
            <Output signalId="SYSCLK" to="I2C2Mult"/>
            <Output signalId="SYSCLK" to="I2C3Mult"/>
            <Output signalId="SYSCLK" to="ADCMult"/>
            <Output signalId="SYSCLK" to="MCOMult"    />
            
        </Element>
        <!--Main PLL source-->
        <Element id="PLLSource" type="multiplexor" refParameter="PLLSourceVirtual" orientation="LEFT" x="402" y="427">
            <Input signalId="MSI" from="MSIRC" refValue="RCC_PLLSOURCE_MSI"/>
            <Input signalId="HSI" from="HSIRC"  refValue="RCC_PLLSOURCE_HSI"/>
            <Input signalId="HSE" from="HSEOSC" refValue="RCC_PLLSOURCE_HSE"/>
            <Output signalId="PLLSRC" to="PLLM"    />
        </Element>
        <Element id="PLLM" type="devisor" refParameter="PLLM" x="438" y="460">
            <Input signalId="PLLSRC" from="PLLSource"/>
            <Output signalId="VCOInput" to="PLLN"/>
            <Output signalId="VCOInput" to="PLLSAI1N"/>
            <Output signalId="VCOInput" to="PLLSAI2N"/>
        </Element>
    
      
        <!--IP clock-->
        <Element id="HSERTCDevisor" type="devisor" refParameter="RCC_RTC_Clock_Source_FROM_HSE" x="429" y="163" refEnable="EnableHSERTCDevisor,EnableHSELCDDevisor">
            <Input signalId="HSE" from="HSEOSC"/>
            <Output signalId="HSE_RTC"  to="RTCClkSource" />
        </Element>
        <Element id="RTCClkSource" type="multiplexor" refParameter="RTCClockSelection" x="540" y="166" refEnable="RTCEnable,LCDEnable">
            <Input signalId="HSE_RTC" from="HSERTCDevisor"    refValue="RCC_RTCCLKSOURCE_HSE_DIV32"                     />
            <Input signalId="LSE"     from="LSEOSC"           refValue="RCC_RTCCLKSOURCE_LSE"/>
            <Input signalId="LSI"     from="LSIRC"  	      refValue="RCC_RTCCLKSOURCE_LSI"/>
            <Output signalId="RTCCLK" to="RTCOutput"/>
			<Output signalId="RTCCLK"  to="LCDOutput"/>
        </Element>
        <Element id="RTCOutput" type="output" refParameter="RTCFreq_Value" x="613" y="197" refEnable="RTCEnable">
            <Input signalId="RTCCLK" from="RTCClkSource"/>
        </Element>
		<Element id="LCDOutput" type="output" refParameter="LCDFreq_Value" x="613" y="165" refEnable="LCDEnable">
            <Input signalId="RTCCLK" from="RTCClkSource"/>
        </Element>
        <Element id="IWDGOutput" type="output" refParameter="WatchDogFreq_Value" x="613" y="281" refEnable="IWDGEnable" >
            <Input signalId="LSI" from="LSIRC"/>
        </Element>
    
        <Element id="USART1Mult" type="multiplexor" refParameter="USART1CLockSelection" orientation="LEFT" x="1302" y="462" refEnable="USART1Enable">
            <Input signalId="PCLK2"    from="APB2Prescaler"  refValue="RCC_USART1CLKSOURCE_PCLK2"/>
            <Input signalId="SYSCLK"   from="SysCLKOutput"   refValue="RCC_USART1CLKSOURCE_SYSCLK"  />
            <Input signalId="HSI"      from="HSIRC"          refValue="RCC_USART1CLKSOURCE_HSI"   />
            <Input signalId="LSE"      from="LSEOSC"         refValue="RCC_USART1CLKSOURCE_LSE"/>
            <Output signalId="USART1CLK" to="USART1output"/>
        </Element>
        <Element id="USART1output" type="activeOutput" refParameter="USART1Freq_Value" x="1358" y="495"  refEnable="USART1Enable">
            <Input signalId="USART1CLK" from="USART1Mult"/>
        </Element>
        <Element id="USART2Mult" type="multiplexor" refParameter="USART2CLockSelection" orientation="LEFT" x="1184" y="524" refEnable="USART2Enable">
            <Input signalId="PCLK1"  from="APB1Prescaler" refValue="RCC_USART2CLKSOURCE_PCLK1"/>
            <Input signalId="SYSCLK" from="SysCLKOutput"  refValue="RCC_USART2CLKSOURCE_SYSCLK"  />
            <Input signalId="HSI"    from="HSIRC"         refValue="RCC_USART2CLKSOURCE_HSI"   />
            <Input signalId="LSE"    from="LSEOSC"        refValue="RCC_USART2CLKSOURCE_LSE"/>
            <Output signalId="USART2CLK" to="USART2output"/>
        </Element>
        <Element id="USART2output" type="activeOutput" refParameter="USART2Freq_Value" x="1358" y="557"  refEnable="USART2Enable">
            <Input signalId="USART2CLK" from="USART2Mult"/>
        </Element> 
        <Element id="USART3Mult" type="multiplexor" refParameter="USART3CLockSelection" orientation="LEFT" x="1302" y="606" refEnable="USART3Enable">
            <Input signalId="PCLK1"  from="APB1Prescaler" refValue="RCC_USART3CLKSOURCE_PCLK1"/>
            <Input signalId="SYSCLK" from="SysCLKOutput"  refValue="RCC_USART3CLKSOURCE_SYSCLK"  />
            <Input signalId="HSI"    from="HSIRC"         refValue="RCC_USART3CLKSOURCE_HSI"   />
            <Input signalId="LSE"    from="LSEOSC"        refValue="RCC_USART3CLKSOURCE_LSE"/>
            <Output signalId="USART3CLK" to="USART3output"/>
        </Element>
        <Element id="USART3output" type="activeOutput" refParameter="USART3Freq_Value" x="1358" y="637"  refEnable="USART3Enable">
            <Input signalId="USART3CLK" from="USART3Mult"/>
        </Element>
        <Element id="UART4Mult" type="multiplexor" refParameter="UART4CLockSelection" orientation="LEFT" x="1184" y="667" refEnable="UART4Enable">
            <Input signalId="PCLK1"  from="APB1Prescaler" refValue="RCC_UART4CLKSOURCE_PCLK1"/>
            <Input signalId="SYSCLK" from="SysCLKOutput"  refValue="RCC_UART4CLKSOURCE_SYSCLK"  />
            <Input signalId="HSI"    from="HSIRC"         refValue="RCC_UART4CLKSOURCE_HSI"   />
            <Input signalId="LSE"    from="LSEOSC"        refValue="RCC_UART4CLKSOURCE_LSE"/>
            <Output signalId="UART4CLK" to="UART4output"/>
        </Element>
        <Element id="UART4output" type="activeOutput" refParameter="UART4Freq_Value" x="1358" y="700"  refEnable="UART4Enable">
            <Input signalId="UART4CLK" from="UART4Mult"/>
        </Element>
        <Element id="UART5Mult" type="multiplexor" refParameter="UART5CLockSelection" orientation="LEFT" x="1302" y="748" refEnable="UART5Enable">
            <Input signalId="PCLK1"  from="APB1Prescaler" refValue="RCC_UART5CLKSOURCE_PCLK1"/>
            <Input signalId="SYSCLK" from="SysCLKOutput"  refValue="RCC_UART5CLKSOURCE_SYSCLK"  />
            <Input signalId="HSI"    from="HSIRC"         refValue="RCC_UART5CLKSOURCE_HSI"   />
            <Input signalId="LSE"    from="LSEOSC"        refValue="RCC_UART5CLKSOURCE_LSE"/>
            <Output signalId="UART5CLK" to="UART5output"/>
        </Element>
        <Element id="UART5output" type="activeOutput" refParameter="UART5Freq_Value" x="1358" y="780"  refEnable="UART5Enable">
            <Input signalId="UART5CLK" from="UART5Mult"/>
        </Element>
        <Element id="LPUART1Mult" type="multiplexor" refParameter="LPUART1CLockSelection" orientation="LEFT" x="1184" y="810" refEnable="LPUART1Enable">
            <Input signalId="PCLK1"  from="APB1Prescaler" refValue="RCC_LPUART1CLKSOURCE_PCLK1"/>
            <Input signalId="SYSCLK" from="SysCLKOutput"  refValue="RCC_LPUART1CLKSOURCE_SYSCLK"  />
            <Input signalId="HSI"    from="HSIRC"         refValue="RCC_LPUART1CLKSOURCE_HSI"   />
            <Input signalId="LSE"    from="LSEOSC"        refValue="RCC_LPUART1CLKSOURCE_LSE"/>
            <Output signalId="LPUART1CLK" to="LPUART1output"/>
        </Element>
        <Element id="LPUART1output" type="activeOutput" refParameter="LPUART1Freq_Value" x="1358" y="840"  refEnable="LPUART1Enable">
            <Input signalId="LPUART1CLK" from="LPUART1Mult"/>
        </Element>
        <Element id="LPTIM1Mult" type="multiplexor" refParameter="LPTIM1CLockSelection" orientation="LEFT" x="1302" y="889" refEnable="LPTIM1Enable">
            <Input signalId="PCLK1" from="APB1Prescaler" refValue="RCC_LPTIM1CLKSOURCE_PCLK"/>
            <Input signalId="LSI"   from="LSIRC"         refValue="RCC_LPTIM1CLKSOURCE_LSI"  />
            <Input signalId="HSI"   from="HSIRC"         refValue="RCC_LPTIM1CLKSOURCE_HSI"   />
            <Input signalId="LSE"   from="LSEOSC"        refValue="RCC_LPTIM1CLKSOURCE_LSE"/>
            <Output signalId="LPTIM1CLK" to="LPTIM1output"/>
        </Element>
        <Element id="LPTIM1output" type="activeOutput" refParameter="LPTIM1Freq_Value" x="1358" y="923"  refEnable="LPTIM1Enable">
            <Input signalId="LPTIM1CLK" from="LPTIM1Mult"/>
        </Element>
        <Element id="LPTIM2Mult" type="multiplexor" refParameter="LPTIM2CLockSelection" orientation="LEFT" x="1184" y="950" refEnable="LPTIM2Enable">
            <Input signalId="PCLK1" from="APB1Prescaler" refValue="RCC_LPTIM2CLKSOURCE_PCLK"/>
            <Input signalId="LSI"   from="LSIRC"         refValue="RCC_LPTIM2CLKSOURCE_LSI"  />
            <Input signalId="HSI"   from="HSIRC"         refValue="RCC_LPTIM2CLKSOURCE_HSI"   />
            <Input signalId="LSE"   from="LSEOSC"        refValue="RCC_LPTIM2CLKSOURCE_LSE"/>
            <Output signalId="LPTIM2CLK" to="LPTIM2output"/>
        </Element>
        <Element id="LPTIM2output" type="activeOutput" refParameter="LPTIM2Freq_Value" x="1358" y="983"  refEnable="LPTIM2Enable">
            <Input signalId="LPTIM2CLK" from="LPTIM2Mult"/>
        </Element>
               
        <Element id="SWPMIMult" type="multiplexor" refParameter="SWPMI1CLockSelection" orientation="LEFT" x="1300" y="1047" refEnable="SWPMIEnable">
            <Input signalId="PCLK1" from="APB1Prescaler" refValue="RCC_SWPMI1CLKSOURCE_PCLK"/>
            <Input signalId="HSI"   from="HSIRC"         refValue="RCC_SWPMI1CLKSOURCE_HSI"  />
            <Output signalId="SWPMICLK" to="SWPMIoutput"/>
        </Element>
        <Element id="SWPMIoutput" type="activeOutput" refParameter="SWPMI1Freq_Value" x="1358" y="1065"  refEnable="SWPMIEnable">
            <Input signalId="SWPMICLK" from="SWPMIMult"/>
        </Element>
		
        <Element id="DFSDMMult" type="multiplexor" refParameter="DFSDMCLockSelection" orientation="LEFT" x="877" y="1050" refEnable="DFSDMEnable">
            <Input signalId="PCLK1"  from="APB1Prescaler" refValue="RCC_DFSDM1CLKSOURCE_PCLK"/>
            <Input signalId="SYSCLK" from="SysCLKOutput"  refValue="RCC_DFSDM1CLKSOURCE_SYSCLK"  />
            <Output signalId="DFSDMCLK" to="DFSDMoutput"/>
        </Element>
        <Element id="DFSDMoutput" type="activeOutput" refParameter="DFSDMFreq_Value" x="935" y="1065"  refEnable="DFSDMEnable">
            <Input signalId="DFSDMCLK" from="DFSDMMult"/>
        </Element>
		
        <Element id="ADCMult" type="multiplexor" refParameter="ADCCLockSelection" orientation="LEFT" x="788" y="667" refEnable="ADCEnable">
            <Input signalId="PLLSAI1RCLK" from="PLLSAI1R"      refValue="RCC_ADCCLKSOURCE_PLLSAI1"/>
            <Input signalId="PLLSAI2RCLK" from="PLLSAI2R"      refValue="RCC_ADCCLKSOURCE_PLLSAI2"  />
            <Input signalId="SYSCLK"      from="SysCLKOutput"  refValue="RCC_ADCCLKSOURCE_SYSCLK"   />
            <Output signalId="ADCCLK" to="ADCoutput"/>
        </Element>
        <Element id="ADCoutput" type="activeOutput" refParameter="ADCFreq_Value" x="935" y="700"  refEnable="ADCEnable">
            <Input signalId="ADCCLK" from="ADCMult"/>
        </Element>
     
        <Element id="CK48Mult" type="multiplexor" refParameter="CK48CLockSelection" orientation="LEFT" x="788" y="526" refEnable="USBEnable,SDMMCEnable,RNGEnable">
            <Input  signalId="PLLSAI1QCLK" from="PLLSAI1Q" refValue="RCC_USBCLKSOURCE_PLLSAI1"   />
            <Input  signalId="PLLQCLK"     from="PLLQ"     refValue="RCC_USBCLKSOURCE_PLL"/>
            <Input  signalId="MSI"         from="MSIRC"    refValue="RCC_USBCLKSOURCE_MSI"/>
            <Input  signalId="HSI48"       from="HSI48RC"  refValue="RCC_USBCLKSOURCE_HSI48"/>
          
            <Output signalId="CK48CLK" to="CK48output"/>
            <Output signalId="CK48CLK" to="SDMMCoutput"/>
            <Output signalId="CK48CLK" to="RNGoutput"/>
         
        </Element>
        <Element id="CK48output" type="activeOutput"  refParameter="USBFreq_Value"   x="935" y="518" refEnable="USBEnable">
            <Input signalId="CK48CLK" from="CK48Mult"/>
        </Element>  
		<Element id="SDMMCoutput" type="activeOutput" refParameter="SDMMCFreq_Value" x="935" y="480" refEnable="SDMMCEnable">
            <Input signalId="CK48CLK" from="CK48Mult"/>
        </Element>
		<Element id="RNGoutput" type="activeOutput"   refParameter="RNGFreq_Value"   x="935" y="557" refEnable="RNGEnable">
            <Input signalId="CK48CLK" from="CK48Mult"/>
        </Element>
       
        <Element id="I2C1Mult" type="multiplexor" refParameter="I2C1CLockSelection" orientation="LEFT" x="877" y="606" refEnable="I2C1Enable">
            <Input signalId="PCLK1"  from="APB1Prescaler" refValue="RCC_I2C1CLKSOURCE_PCLK1"/>
            <Input signalId="SYSCLK" from="SysCLKOutput"  refValue="RCC_I2C1CLKSOURCE_SYSCLK"  />
            <Input signalId="HSI"    from="HSIRC"         refValue="RCC_I2C1CLKSOURCE_HSI"   />
            <Output signalId="I2C1CLK" to="I2C1output"/>
        </Element>
        <Element id="I2C1output" type="activeOutput" refParameter="I2C1Freq_Value" x="935" y="640"  refEnable="I2C1Enable">
            <Input signalId="I2C1CLK" from="I2C1Mult"/>
        </Element>
		
        <Element id="I2C2Mult" type="multiplexor" refParameter="I2C2CLockSelection" orientation="LEFT" x="877" y="747" refEnable="I2C2Enable">
            <Input signalId="PCLK1"  from="APB1Prescaler" refValue="RCC_I2C2CLKSOURCE_PCLK1"/>
            <Input signalId="SYSCLK" from="SysCLKOutput"  refValue="RCC_I2C2CLKSOURCE_SYSCLK"  />
            <Input signalId="HSI"    from="HSIRC"         refValue="RCC_I2C2CLKSOURCE_HSI"   />
            <Output signalId="I2C2CLK" to="I2C2output"/>
        </Element>
        <Element id="I2C2output" type="activeOutput" refParameter="I2C2Freq_Value" x="935" y="780" refEnable="I2C2Enable">
            <Input signalId="I2C2CLK" from="I2C2Mult"/>
        </Element>
        <Element id="I2C3Mult" type="multiplexor" refParameter="I2C3CLockSelection" orientation="LEFT" x="877" y="889" refEnable="I2C3Enable">
            <Input signalId="PCLK1"  from="APB1Prescaler" refValue="RCC_I2C3CLKSOURCE_PCLK1"/>
            <Input signalId="SYSCLK" from="SysCLKOutput"  refValue="RCC_I2C3CLKSOURCE_SYSCLK"  />
            <Input signalId="HSI"    from="HSIRC"         refValue="RCC_I2C3CLKSOURCE_HSI"   />
            <Output signalId="I2C3CLK" to="I2C3output"/>
        </Element>
        <Element id="I2C3output" type="activeOutput" refParameter="I2C3Freq_Value" x="935" y="923"   refEnable="I2C3Enable">
            <Input signalId="I2C3CLK" from="I2C3Mult"/>
        </Element>
        <Element id="SAI1Mult" type="multiplexor" refParameter="SAI1CLockSelection" orientation="LEFT" x="788" y="810" refEnable="SAI1Enable">
            <Input signalId="PLLSAI1PCLK"  from="PLLSAI1P" refValue="RCC_SAI1CLKSOURCE_PLLSAI1"/>
            <Input signalId="PLLSAI2PCLK"  from="PLLSAI2P" refValue="RCC_SAI1CLKSOURCE_PLLSAI2"  />
            <Input signalId="PLLPCLK"      from="PLLP"     refValue="RCC_SAI1CLKSOURCE_PLL"/>
            <Input signalId="SAI1ExtClock" from="SAI1_EXT" refValue="RCC_SAI1CLKSOURCE_PIN"/>
            <Output signalId="SAI1CLK" to="SAI1output"/>
        </Element>
        <Element id="SAI1output" type="activeOutput" refParameter="SAI1Freq_Value" x="935" y="840" refEnable="SAI1Enable">
            <Input signalId="SAI1CLK" from="SAI1Mult"/>
        </Element>
		
        <Element id="SAI2Mult" type="multiplexor" refParameter="SAI2CLockSelection" orientation="LEFT" x="788" y="950" refEnable="SAI2Enable">
            <Input signalId="PLLSAI1PCLK"  from="PLLSAI1P"  refValue="RCC_SAI2CLKSOURCE_PLLSAI1"   />
            <Input signalId="PLLSAI2PCLK"  from="PLLSAI2P"  refValue="RCC_SAI2CLKSOURCE_PLLSAI2"  />
            <Input signalId="PLLPCLK"  from="PLLP"          refValue="RCC_SAI2CLKSOURCE_PLL"/>
            <Input signalId="SAI2ExtClock" from="SAI2_EXT"  refValue="RCC_SAI2CLKSOURCE_PIN"/>	
            <Output signalId="SAI2CLK" to="SAI2output"/>
        </Element>
        <Element id="SAI2output" type="activeOutput" refParameter="SAI2Freq_Value" x="935" y="983"  refEnable="SAI2Enable">
            <Input signalId="SAI2CLK" from="SAI2Mult"/>
        </Element>
		      <Element id="I2C4Mult" type="multiplexor" refParameter="I2C4CLockSelection" orientation="LEFT" x="788" y="1090" refEnable="I2C4Enable">
            <Input signalId="PCLK1"  from="APB1Prescaler" refValue="RCC_I2C4CLKSOURCE_PCLK1"/>
            <Input signalId="SYSCLK" from="SysCLKOutput"  refValue="RCC_I2C4CLKSOURCE_SYSCLK"  />
            <Input signalId="HSI"    from="HSIRC"         refValue="RCC_I2C4CLKSOURCE_HSI"   />
            <Output signalId="I2C4CLK" to="I2C4output"/>
        </Element>
        <Element id="I2C4output" type="activeOutput" refParameter="I2C4Freq_Value" x="935" y="1124"   refEnable="I2C4Enable">
            <Input signalId="I2C4CLK" from="I2C4Mult"/>
        </Element>
        <!--MCO Mux-->
        <Element id="MCOMult" type="multiplexor" refParameter="RCC_MCO1Source" x="497" y="986" refEnable="MCOEnable">
            <Input signalId="LSE"    from="LSEOSC"       refValue="RCC_MCO1SOURCE_LSE"/>
            <Input signalId="LSI"    from="LSIRC"        refValue="RCC_MCO1SOURCE_LSI"/>
            <Input signalId="HSE"    from="HSEOSC"       refValue="RCC_MCO1SOURCE_HSE"/>
            <Input signalId="HSI"    from="HSIRC"        refValue="RCC_MCO1SOURCE_HSI"   />
            <Input signalId="PLLCLK" from="PLLR"         refValue="RCC_MCO1SOURCE_PLLCLK"/>
            <Input signalId="SYSCLK" from="SysCLKOutput" refValue="RCC_MCO1SOURCE_SYSCLK"   />
            <Input signalId="MSI"    from="MSIRC"        refValue="RCC_MCO1SOURCE_MSI"   />
            <Input signalId="HSI48"  from="HSI48RC"      refValue="RCC_MCO1SOURCE_HSI48"   />
			
            <Output signalId="MCO1DivInput" to="MCODiv"/>
        </Element>
        <Element id="MCODiv" type="devisor" refParameter="RCC_MCODiv" x="390" y="1075" refEnable="MCOEnable">
            <Input signalId="MCO1DivInput" from="MCOMult"/>
            <Output signalId="MCO1DivOuput" to="MCOPin"/>
        </Element>
        <Element id="MCOPin" type="output" refParameter="MCO1PinFreq_Value" x="310" y="1074" refEnable="MCOEnable">
            <Input signalId="MCO1DivOuput" from="MCODiv"/>
        </Element>
		<!--LSCO Mux-->
        <Element id="LSCOMult" type="multiplexor" refParameter="LSCOSource1" x="405" y="1140" refEnable="LSCOEnable">
            <Input signalId="LSI"    from="LSIRC"        refValue="RCC_LSCOSOURCE_LSI"/>
			<Input signalId="LSE"    from="LSEOSC"       refValue="RCC_LSCOSOURCE_LSE"/>
            
            
            <Output signalId="LSCOInput" to="LSCOOutput"/>
        </Element>
		<Element id="LSCOOutput" type="output" refParameter="LSCOPinFreq_Value" x="310" y="1153" refEnable="LSCOEnable">
            <Input signalId="LSCOInput" from="LSCOMult"/>
        </Element>
    
        <!--AHB, APB1 and APB2 main block-->
        <Element id="AHBPrescaler" type="devisor" refParameter="AHBCLKDivider" x="835" y="379">
            <Input signalId="SYSCLK" from="SysCLKOutput"/>
            <Output signalId="HCLK" to="AHBOutput"/>
        </Element>
        <Element id="PWRCLKoutput" type="activeOutput" refParameter="PWRFreq_Value" x="1360" y="174">
            <Input signalId="SYSCLK" from="SysCLKOutput"/>
        </Element>
        <Element id="AHBOutput" type="activeOutput" isKey="true" refParameter="HCLKFreq_Value" x="920" y="377">
            <Input signalId="HCLK" from="AHBPrescaler"/>
            <Output signalId="AHBCLK" to="CortexPrescaler"  />
            <Output signalId="AHBCLK" to="HCLKOutput"       />
            <Output signalId="AHBCLK" to="FCLKCortexOutput" />
            <Output signalId="AHBCLK" to="APB1Prescaler"    />
            <Output signalId="AHBCLK" to="APB2Prescaler"    />
        </Element>
        <Element id="HCLKOutput" type="activeOutput" refParameter="AHBFreq_Value" x="1360" y="205">
            <Input signalId="AHBCLK" from="AHBOutput"/>
        </Element>
        <Element id="CortexPrescaler" type="devisor" refParameter="Cortex_Div" x="1150" y="238">
            <Input signalId="AHBCLK" from="AHBOutput"/>
            <Output signalId="AHBCLK2" to="CortexSysOutput" />
        </Element>
        <Element id="CortexSysOutput" type="activeOutput" refParameter="CortexFreq_Value" x="1360" y="238">
            <Input signalId="AHBCLK2" from="CortexPrescaler"/>
        </Element>
        <Element id="FCLKCortexOutput" type="activeOutput" refParameter="FCLKCortexFreq_Value" x="1360" y="272">
            <Input signalId="AHBCLK" from="AHBOutput"/>
        </Element>
        <Element id="APB1Prescaler" type="devisor" refParameter="APB1CLKDivider" x="1020" y="310">
            <Input signalId="AHBCLK" from="AHBOutput"/>
            <Output signalId="PCLK1" to="APB1Output" />
            <Output signalId="PCLK1" to="TimPrescalerAPB1" />
            <Output signalId="PCLK1" to="USART2Mult"/>
            <Output signalId="PCLK1" to="USART3Mult"/>
            <Output signalId="PCLK1" to="UART4Mult"/>
            <Output signalId="PCLK1" to="UART5Mult"/>
            <Output signalId="PCLK1" to="LPUART1Mult"/>
            <Output signalId="PCLK1" to="LPTIM1Mult"/>
            <Output signalId="PCLK1" to="LPTIM2Mult"/>
            <Output signalId="PCLK1" to="I2C1Mult"/>
            <Output signalId="PCLK1" to="I2C2Mult"/>
            <Output signalId="PCLK1" to="I2C3Mult"/>
            <Output signalId="PCLK1" to="SWPMIMult"/>
            <Output signalId="PCLK1" to="DFSDMMult"/>
        </Element>		
        <Element id="APB1Output" type="activeOutput" refParameter="APB1Freq_Value" x="1360" y="308">
            <Input signalId="PCLK1" from="APB1Prescaler"/>
        </Element>
        <Element id="TimPrescalerAPB1" type="multiplicator" refParameter="APB1TimCLKDivider" x="1150" y="342">
            <Input signalId="PCLK1" from="APB1Prescaler"/>
            <Output signalId="TimCLK" to="TimPrescOut1"/>
        </Element>
        <Element id="TimPrescOut1" type="activeOutput" refParameter="APB1TimFreq_Value" x="1360" y="342">
            <Input signalId="TimCLK" from="TimPrescalerAPB1"/>
        </Element>
        <Element id="APB2Prescaler" type="devisor" refParameter="APB2CLKDivider" x="1020" y="379">
            <Input signalId="AHBCLK" from="AHBOutput"/>
            <Output signalId="PCLK2" to="APB2Output" />
            <Output signalId="PCLK2" to="TimPrescalerAPB2" />
            <Output signalId="PCLK2" to="USART1Mult" />
        </Element>
        <Element id="APB2Output" type="activeOutput" refParameter="APB2Freq_Value" x="1360" y="377">
            <Input signalId="PCLK2" from="APB2Prescaler"/>
        </Element>
        <Element id="TimPrescalerAPB2" type="multiplicator" refParameter="APB2TimCLKDivider" x="1150" y="409">
            <Input signalId="PCLK2" from="APB2Prescaler"/>
            <Output signalId="PeriphCLK" to="TimPrescOut2"/>
        </Element>
        <Element id="TimPrescOut2" type="activeOutput" refParameter="APB2TimFreq_Value" x="1360" y="409">
            <Input signalId="PeriphCLK" from="TimPrescalerAPB2"/>
        </Element>
        <!--Main PLL-->
        <Tree id="PLL">
            <Element id="PLLN" type="multiplicator" refParameter="PLLN" x="509" y="460" >
                <Input signalId="VCOInput" from="PLLM"/>
                <Output signalId="VCOOutput" to="PLLQ"/>
                <Output signalId="VCOOutput" to="PLLP"/>
                <Output signalId="VCOOutput" to="PLLR"/>
            </Element> 
            <Element id="PLLP" type="devisor" refParameter="PLLP" x="575" y="536" refEnable="SAI1Enable,SAI2Enable">
                <Input signalId="VCOOutput" from="PLLN"/>
                <Output signalId="PLLPCLK" to="SAI1Mult"/>
                <Output signalId="PLLPCLK" to="SAI2Mult"/>
                <Output signalId="PLLPCLK" to="PLLPoutput"/>
         
            </Element>
            <Element id="PLLPoutput" type="output" refParameter="PLLPoutputFreq_Value" x="641" y="535" refEnable="SAI1Enable,SAI2Enable">
                <Input signalId="PLLPCLK" from="PLLP"/>
            </Element>

            <Element id="PLLQ" type="devisor" refParameter="PLLQ" x="575" y="498" refEnable="USBEnable,SDMMCEnable,RNGEnable">
                <Input signalId="VCOOutput" from="PLLN"/>
                <Output signalId="PLLQCLK" to="CK48Mult"/>
                <Output signalId="PLLQCLK" to="PLLQoutput"/>
            </Element>
            <Element id="PLLQoutput" type="output" refParameter="PLLQoutputFreq_Value" x="641" y="497" refEnable="USBEnable,SDMMCEnable,RNGEnable">
                <Input signalId="PLLQCLK" from="PLLQ"/>
            </Element>
				

            <Element id="PLLR" type="devisor" refParameter="PLLR" x="575" y="460" >
                <Input signalId="VCOOutput" from="PLLN"/>
                <Output signalId="PLLCLK" to="SysClkSource"/>
                <Output signalId="PLLCLK" to="MCOMult"/>

       
            </Element>
        </Tree>
        <Tree id="PLLSAI1">
            <Element id="PLLSAI1N" type="multiplicator" refParameter="PLLSAI1N" x="509" y="591" >
                <Input signalId="VCOInput" from="PLLM"/>
                <Output signalId="VCOSAI1Output" to="PLLSAI1Q"/>
                <Output signalId="VCOSAI1Output" to="PLLSAI1P"/>
                <Output signalId="VCOSAI1Output" to="PLLSAI1R"/>
                 
            </Element>
            <Element id="PLLSAI1P" type="devisor" refParameter="PLLSAI1P" x="575" y="668" refEnable="SAI1Enable,SAI2Enable">
                <Input signalId="VCOSAI1Output" from="PLLSAI1N"/>
                <Output signalId="PLLSAI1PCLK" to="SAI1Mult"/>
                <Output signalId="PLLSAI1PCLK" to="SAI2Mult"/>
                <Output signalId="PLLSAI1PCLK" to="PLLSAI1Poutput"/>
            </Element>
            <Element id="PLLSAI1Poutput" type="output" refParameter="PLLSAI1PoutputFreq_Value" x="641" y="667" refEnable="SAI1Enable,SAI2Enable">
                <Input signalId="PLLSAI1PCLK" from="PLLSAI1P"/>
            </Element>

        
            <Element id="PLLSAI1Q" type="devisor" refParameter="PLLSAI1Q" x="575" y="630" refEnable="USBEnable,SDMMCEnable,RNGEnable">
                <Input signalId="VCOSAI1Output" from="PLLSAI1N"/>
                <Output signalId="PLLSAI1QCLK" to="CK48Mult"/>
                <Output signalId="PLLSAI1QCLK" to="PLLSAI1Qoutput"/>
            </Element>
            <Element id="PLLSAI1Qoutput" type="output" refParameter="PLLSAI1QoutputFreq_Value" x="641" y="629" refEnable="USBEnable,SDMMCEnable,RNGEnable">
                <Input signalId="PLLSAI1QCLK" from="PLLSAI1Q"/>
            </Element>
										    

            <Element id="PLLSAI1R" type="devisor" refParameter="PLLSAI1R" x="575" y="591" refEnable="ADCEnable">
                <Input signalId="VCOSAI1Output" from="PLLSAI1N"/>
                <Output signalId="PLLSAI1RCLK" to="ADCMult"/>
                <Output signalId="PLLSAI1RCLK" to="PLLSAI1Routput"/>
            </Element>
            <Element id="PLLSAI1Routput" type="output" refParameter="PLLSAI1RoutputFreq_Value" x="641" y="590" refEnable="ADCEnable">
                <Input signalId="PLLSAI1RCLK" from="PLLSAI1R"/>
            </Element>
										

            
        </Tree>
        <Tree id="PLLSAI2">
            <Element id="PLLSAI2N" type="multiplicator" refParameter="PLLSAI2N" x="509" y="738" >
                <Input signalId="VCOInput" from="PLLM"/>
               
                <Output signalId="VCOSAI2Output" to="PLLSAI2P"/>
                <Output signalId="VCOSAI2Output" to="PLLSAI2R"/>
                 
            </Element>
            <Element id="PLLSAI2P" type="devisor" refParameter="PLLSAI2P" x="575" y="791" refEnable="SAI1Enable,SAI2Enable">
                <Input signalId="VCOSAI2Output" from="PLLSAI2N"/>
                <Output signalId="PLLSAI2PCLK" to="SAI1Mult"/>
                <Output signalId="PLLSAI2PCLK" to="SAI2Mult"/>
                <Output signalId="PLLSAI2PCLK" to="PLLSAI2Poutput"/>
            </Element>
            <Element id="PLLSAI2Poutput" type="output" refParameter="PLLSAI2PoutputFreq_Value" x="641" y="790" refEnable="SAI1Enable,SAI2Enable">
                <Input signalId="PLLSAI2PCLK" from="PLLSAI2P"/>
            </Element>

        
         
            <Element id="PLLSAI2R" type="devisor" refParameter="PLLSAI2R" x="575" y="738" refEnable="ADCEnable">
                <Input signalId="VCOSAI2Output" from="PLLSAI2N"/>
                <Output signalId="PLLSAI2RCLK" to="ADCMult"/>
                <Output signalId="PLLSAI2RCLK" to="PLLSAI2Routput"/>
            </Element>
            <Element id="PLLSAI2Routput" type="output" refParameter="PLLSAI2RoutputFreq_Value" x="641" y="737" refEnable="ADCEnable">
                <Input signalId="PLLSAI2RCLK" from="PLLSAI2R"/>
            </Element>
			  


            
        </Tree>
    </Tree>
    <Signals>
        <Signal id="HSE"   refParameter="HSE_VALUE"/>
        <Signal id="LSI"   refParameter="LSI_VALUE"/>
        <Signal id="LSE"   refParameter="LSE_VALUE"/>
        <Signal id="MSI"   refParameter="MSI_VALUE"/>
        <Signal id="HSI"   refParameter="HSI_VALUE"/>
        <Signal id="HSI48" refParameter="HSI48_VALUE"/>
        <Signal id="SAI1ExtClock"/>
        <Signal id="SAI2ExtClock"/>
        <Signal id="SYSCLKInput"/>
        <Signal id="SYSCLK"/>
        <Signal id="PLLSRC"/>
        <Signal id="HSE_RTC"/>
        <Signal id="RTCCLK"/>
        <Signal id="USART1CLK"/>
        <Signal id="USART2CLK"/>
        <Signal id="USART3CLK"/>
        <Signal id="UART4CLK"/>
        <Signal id="UART5CLK"/>
        <Signal id="LPUART1CLK"/>
        <Signal id="LPTIM1CLK"/>
        <Signal id="LPTIM2CLK"/>
        <Signal id="I2C1CLK"/>
        <Signal id="I2C2CLK"/>
        <Signal id="I2C3CLK"/>
        <Signal id="I2C4CLK"/>
        <Signal id="SWPMICLK"/>
        <Signal id="DFSDMCLK"/>
        <Signal id="ADCCLK"/>
        <Signal id="CK48CLK"/>
        <Signal id="SAI1CLK"/>
        <Signal id="SAI2CLK"/>
        <Signal id="MCO1DivInput"/>
        <Signal id="MCO1DivOuput"/>
        <Signal id="HCLK"/>
        <Signal id="AHBCLK"/>
        <Signal id="AHBCLK2"/>
        <Signal id="PCLK1"/>
        <Signal id="TimCLK"/>
        <Signal id="LSCOInput"/>
        <Signal id="PCLK2"/>
        <Signal id="PeriphCLK"/>
        <Signal id="VCOInput"      refParameter="VCOInputFreq_Value"/>
        <Signal id="VCOOutput"     refParameter="VCOOutputFreq_Value"/>
        <Signal id="PLLPCLK"       refParameter="PLLPoutputFreq_Value"/>
        <Signal id="PLLQCLK"       refParameter="PLLQoutputFreq_Value"/>
        <Signal id="PLLCLK"        refParameter="PLLRCLKFreq_Value"/>
        <Signal id="VCOSAI1Output" refParameter="VCOSAI1OutputFreq_Value"/>
        <Signal id="PLLSAI1PCLK"   refParameter="PLLSAI1PoutputFreq_Value"/>
        <Signal id="PLLSAI1QCLK"   refParameter="PLLSAI1QoutputFreq_Value"/>
        <Signal id="PLLSAI1RCLK"   refParameter="PLLSAI1RoutputFreq_Value"/>
        <Signal id="VCOSAI2Output" refParameter="VCOSAI2OutputFreq_Value"/>
        <Signal id="PLLSAI2PCLK"   refParameter="PLLSAI2PoutputFreq_Value"/>
        <Signal id="PLLSAI2RCLK"   refParameter="PLLSAI2RoutputFreq_Value"/>
    </Signals>
    <!-- PLLs output 	label -->
    <Label id="PLLQPoutputLabel"     type="info" text="PLLQ"         posX="641" posY="485"/>
    <Label id="PLLPPoutputLabel"     type="info" text="PLLP"         posX="641" posY="524"/>
    <Label id="PLLSAI2RoutputLabel"  type="info" text="PLLSAI2R"     posX="641" posY="723"/>
    <Label id="PLLSAI2PoutputLabel"  type="info" text="PLLSAI2P"     posX="641" posY="775"/>
    <Label id="PLLSAI1QoutputLabel"  type="info" text="PLLSAI1Q"     posX="641" posY="615"/>
    <Label id="PLLSAI1RoutputLabel"  type="info" text="PLLSAI1R"     posX="641" posY="577"/>
    <Label id="PLLSAI1PoutputLabel"  type="info" text="PLLSAI1P"     posX="641" posY="656"/>

    <!-- freq value label -->
    <Label id="Power" type="SpecialInfo" posX="1420" posY="180" text="To Power (MHz)"/>
    <Label id="HCLK1" type="SpecialInfo" posX="1420" posY="213" text="HCLK to AHB bus, core, memory and DMA (MHz)"/>
    <Label id="HCLK2" type="SpecialInfo" posX="1420" posY="247" text="To Cortex System timer (MHz)"/>
    <Label id="HCLK3" type="SpecialInfo" posX="1420" posY="280" text="FCLK Cortex clock (MHz)"/>
    <Label id="HCLK4" type="SpecialInfo" posX="1420" posY="314" text="APB1 peripheral clocks (MHz)"/>
    <Label id="HCLK5" type="SpecialInfo" posX="1420" posY="347" text="APB1 Timer clocks (MHz)"/>
    <Label id="HCLK6" type="SpecialInfo" posX="1420" posY="383" text="APB2 peripheral clocks (MHz)"/>
    <Label id="HCLK7" type="SpecialInfo" posX="1420" posY="418" text="APB2 timer clocks (MHz)"/>
	
    <!--RTC labels-->
	<Label id="RTCMux" type="muxLabel" posX="511" posY="144" text="RTC/LCD Source Mux" refEnable="RTCEnable,LCDEnable">
	 <Condition Diagnostic="" Expression="(LCD_Exist)"/>
    </Label>
    <Label id="RTCMuxLabel"       type="muxLabel"    text="RTC Clock Mux" posX="511" posY="144" refEnable="RTCEnable,LCDEnable">
	<Condition Diagnostic="" Expression="!(LCD_Exist)"/>
    </Label>
    <Label id="RTCOutputLabel"    type="SpecialInfo" text="To RTC (KHz)"  posX="672" posY="204" refEnable="RTCEnable"/>
    <Label id="RTCOutputLabel"    type="SpecialInfo" text="To LCD (KHz)"  posX="672" posY="170" refEnable="LCDEnable"/>
    <Label id="LSEForRTCLabel"    type="signal"      text="LSE"     posX="503" posY="195" refEnable="EnableLSERTC,EnableLSELCD"/>
    <Label id="LSIForRTCLabel"    type="signal"      text="LSI"     posX="503" posY="226" refEnable="RTCEnable,LCDEnable"/>
    <Label id="HSEForRTCLabel"    type="signal"      text="HSE"     posX="385" posY="160" refEnable="EnableHSERTCDevisor,EnableHSELCDDevisor"/>
    <Label id="HSERTCForRTCLabel" type="signal"      text="HSE_RTC" posX="479" posY="160" refEnable="EnableHSERTCDevisor,EnableHSELCDDevisor"/>
    <!--sysclock labels-->
    <Label id="SystemCLKMuxLabel" type="muxLabel" posX="639" posY="312" text="System Clock Mux"/>
    <Label id="SystemHSILabel"    type="signal"   posX="662" posY="332" text="MSI"/>
    <Label id="SystemHSELabel"    type="signal"   posX="662" posY="360" text="HSI" />
    <Label id="SystemPLLCLKLabel" type="signal"   posX="662" posY="385" text="HSE"/>
    <Label id="SystemPLLCLKLabel" type="signal"   posX="652" posY="408" text="PLLCLK"/>
    <Label id="SYSCLKLabel"       type="info"     posX="729" posY="360" text="SYSCLK (MHz)"/>
    <!--PLL Source labels-->
    <Label id="PLLSourcMuxLabel"    type="muxLabel" text="PLL Source Mux" posX="375" posY="403"/>
    <Label id="PLLSourcMuxMSILabel" type="signal"   text="MSI"            posX="368" posY="420"/>
    <Label id="PLLSourcMuxHSILabel" type="signal"   text="HSI"            posX="368" posY="452"/>
    <Label id="PLLSourcMuxHSELabel" type="signal"   text="HSE"  		  posX="368" posY="488" refEnable="EnableHSE"/>
    <!--Main PLL labels-->
    <Label id="PLLMLabel"       type="info" text="PLLM"     posX="440" posY="446"/>
    <Label id="PLLNLabel"       type="info" text="*N"       posX="520" posY="483"/>
    <Label id="PLLPLabel"       type="info" text="/R"       posX="595" posY="483"/>
    <Label id="PLLQLabel"       type="info" text="/Q"       posX="595" posY="518"/>
    <Label id="PLLRLabel"       type="info" text="/P"       posX="595" posY="557"/>
    <Label id="PLLLabel"        type="info" text="PLL"      posX="510" posY="541"/>
    <!--Main PLLSAI1 labels-->
    <Label id="PLLSAINLabel"       type="info" text="*N"          posX="520" posY="610"/>
    <Label id="PLLSAIPLabel"       type="info" text="/R"          posX="595" posY="610"/>
    <Label id="PLLSAIQLabel"       type="info" text="/Q"          posX="595" posY="650"/>
    <Label id="PLLSAIRLabel"       type="info" text="/P"          posX="595" posY="688"/>
    <Label id="PLLSAILabel"        type="info" text="PLLSAI1"     posX="510" posY="670"/>

    <!--Main PLLSAI2 labels-->
    <Label id="PLLSAI2NLabel"       type="info" text="*N"           posX="520" posY="760"/>
    <Label id="PLLSAI2PLabel"       type="info" text="/R"           posX="595" posY="760"/>
    <Label id="PLLSAI2RLabel"       type="info" text="/P"           posX="595" posY="812"/>
    <Label id="PLLSAI2Label"        type="info" text="PLLSAI2"      posX="510" posY="795"/>
    <!-- source constraint label -->
    <Label id="HSIRCLabel"    type="info"       posX="302" posY="440" text="HSI RC"/>
    <Label id="HSIRCCstLabel" type="constraint" posX="302" posY="480" text="16 MHz"/>   
	
	<Label id="HSI48RCLabel"    type="info"       posX="302" posY="815" text="HSI48 RC"/>
    <Label id="HSI48RCCstLabel" type="constraint" posX="302" posY="855" text="48 MHz"/> 
	
    <Label id="MSIRCLabel"    type="info"       posX="302" posY="327" text="MSI RC"/>
    <Label id="MSIRCCstLabel" type="constraint" posX="302" posY="365" text="KHz"/>
	
    <Label id="LSI_RCLabel"   type="Info"       posX="302" posY="222" text="LSI RC"/>
    <Label id="LSI_RCcST"     type="constraint" posX="302" posY="260" text="32 KHz"/>
    <!-- IWDG -->
    <Label id="ToIWDGLabel" type="SpecialInfo" text="To IWDG (KHz)" posX="672" posY="285" refEnable="IWDGEnable"/>
	
    <!--USART1 mux-->
    <Label id="USART1MUXLabel"    type="muxLabel"    text="USART1 Clock Mux" posX="1250" posY="435" refEnable="USART1Enable"/>
    <Label id="USART1Output"      type="SpecialInfo" text="To USART1 (MHz)"  posX="1415" posY="502" refEnable="USART1Enable"/> 	
    <Label id="USART1SYSCLKLabel" type="signal"      text="PCLK2"            posX="1260" posY="453" refEnable="USART1Enable"/>
    <Label id="USART1HSILabel"    type="signal"      text="SYSCLK"           posX="1260" posY="478" refEnable="USART1Enable"/>
    <Label id="USART1LSELabel"    type="signal"      text="HSI"              posX="1260" posY="503" refEnable="USART1Enable"/>
    <Label id="USART1PCLK1Label"  type="signal"      text="LSE"              posX="1260" posY="528" refEnable="USART1Enable"/>
    <!--USART3 mux-->
    <Label id="USART3MUXLabel"    type="muxLabel"    text="USART3 Clock Mux" posX="1250" posY="575" refEnable="USART3Enable"/>
    <Label id="USART3Output"      type="SpecialInfo" text="To USART3 (MHz)"  posX="1415" posY="643" refEnable="USART3Enable"/> 	
    <Label id="USART3SYSCLKLabel" type="signal"      text="PCLK1"            posX="1260" posY="595" refEnable="USART3Enable"/>
    <Label id="USART3HSILabel"    type="signal"      text="SYSCLK"           posX="1260" posY="620" refEnable="USART3Enable"/>
    <Label id="USART3LSELabel"    type="signal"      text="HSI"              posX="1260" posY="645" refEnable="USART3Enable"/>
    <Label id="USART3PCLK1Label"  type="signal"      text="LSE"              posX="1260" posY="670" refEnable="USART3Enable"/>
    <!--UART5 mux-->
    <Label id="UART5MUXLabel"    type="muxLabel"    text="UART5 Clock Mux"  posX="1250" posY="715" refEnable="UART5Enable"/>
    <Label id="UART5Output"      type="SpecialInfo" text="To UART5 (MHz)"   posX="1415" posY="783" refEnable="UART5Enable"/> 	
    <Label id="UART5SYSCLKLabel" type="signal"      text="PCLK1"            posX="1260" posY="735" refEnable="UART5Enable"/>
    <Label id="UART5HSILabel"    type="signal"      text="SYSCLK"           posX="1260" posY="760" refEnable="UART5Enable"/>
    <Label id="UART5LSELabel"    type="signal"      text="HSI"              posX="1260" posY="785" refEnable="UART5Enable"/>
    <Label id="UART5PCLK1Label"  type="signal"      text="LSE"              posX="1260" posY="810" refEnable="UART5Enable"/> 
    <!--LPTIM1 mux-->
    <Label id="LPTIM1MUXLabel"    type="muxLabel"    text="LPTIM1 Clock Mux" posX="1250" posY="855" refEnable="LPTIM1Enable"/>
    <Label id="LPTIM1Output"      type="SpecialInfo" text="To LPTIM1 (MHz)"  posX="1415" posY="928" refEnable="LPTIM1Enable"/> 	
    <Label id="LPTIM1SYSCLKLabel" type="signal"      text="PCLK1"            posX="1260" posY="875" refEnable="LPTIM1Enable"/>
    <Label id="LPTIM1HSILabel"    type="signal"      text="LSI"              posX="1260" posY="900" refEnable="LPTIM1Enable"/>
    <Label id="LPTIM1LSELabel"    type="signal"      text="HSI"              posX="1260" posY="925" refEnable="LPTIM1Enable"/>
    <Label id="LPTIM1PCLK1Label"  type="signal"      text="LSE"              posX="1260" posY="950" refEnable="LPTIM1Enable"/>
    <!--USART2 mux-->
    <Label id="USART2MUXLabel"    type="muxLabel"    text="USART2 Clock Mux" posX="1130" posY="495" refEnable="USART2Enable"/>
    <Label id="USART2Output"      type="SpecialInfo" text="To USART2 (MHz)"  posX="1415" posY="563" refEnable="USART2Enable"/> 	
    <Label id="USART2SYSCLKLabel" type="signal"      text="PCLK1"            posX="1142" posY="515" refEnable="USART2Enable"/>
    <Label id="USART2HSILabel"    type="signal"      text="SYSCLK"           posX="1142" posY="540" refEnable="USART2Enable"/>
    <Label id="USART2LSELabel"    type="signal"      text="HSI"              posX="1142" posY="565" refEnable="USART2Enable"/>
    <Label id="USART2PCLK1Label"  type="signal"      text="LSE"              posX="1142" posY="590" refEnable="USART2Enable"/>
    <!--UART4 mux-->
    <Label id="UART4MUXLabel"    type="muxLabel"    text="UART4 Clock Mux" posX="1130" posY="635" refEnable="UART4Enable"/>
    <Label id="UART4Output"      type="SpecialInfo" text="To UART4 (MHz)"  posX="1415" posY="703" refEnable="UART4Enable"/> 	
    <Label id="UART4SYSCLKLabel" type="signal"      text="PCLK1"           posX="1142" posY="655" refEnable="UART4Enable"/>
    <Label id="UART4HSILabel"    type="signal"      text="SYSCLK"          posX="1142" posY="680" refEnable="UART4Enable"/>
    <Label id="UART4LSELabel"    type="signal"      text="HSI"             posX="1142" posY="705" refEnable="UART4Enable"/>
    <Label id="UART4PCLK1Label"  type="signal"      text="LSE"             posX="1142" posY="730" refEnable="UART4Enable"/>
    <!--LPUART1 mux-->
    <Label id="LPUART1MUXLabel"    type="muxLabel"    text="LPUART1 Clock Mux" posX="1130" posY="775" refEnable="LPUART1Enable"/>
    <Label id="LPUART1Output"      type="SpecialInfo" text="To LPUART1 (MHz)"  posX="1415" posY="843" refEnable="LPUART1Enable"/> 	
    <Label id="LPUART1SYSCLKLabel" type="signal"      text="PCLK1"             posX="1142" posY="795" refEnable="LPUART1Enable"/>
    <Label id="LPUART1HSILabel"    type="signal"      text="SYSCLK"            posX="1142" posY="820" refEnable="LPUART1Enable"/>
    <Label id="LPUART1LSELabel"    type="signal"      text="HSI"               posX="1142" posY="845" refEnable="LPUART1Enable"/>
    <Label id="LPUART1PCLK1Label"  type="signal"      text="LSE"               posX="1142" posY="870" refEnable="LPUART1Enable"/>
    <!--LPTIM2 mux-->
    <Label id="LPTIM2MUXLabel"    type="muxLabel"    text="LPTIM2 Clock Mux"  posX="1130" posY="915"  refEnable="LPTIM2Enable"/>
    <Label id="LPTIM2Output"      type="SpecialInfo" text="To LPTIM2 (MHz)"   posX="1415" posY="988"  refEnable="LPTIM2Enable"/> 	
    <Label id="LPTIM2SYSCLKLabel" type="signal"      text="PCLK1"             posX="1142" posY="935"  refEnable="LPTIM2Enable"/>
    <Label id="LPTIM2HSILabel"    type="signal"      text="LSI"               posX="1142" posY="960"  refEnable="LPTIM2Enable"/>
    <Label id="LPTIM2LSELabel"    type="signal"      text="HSI"               posX="1142" posY="985"  refEnable="LPTIM2Enable"/>
    <Label id="LPTIM2PCLK1Label"  type="signal"      text="LSE"               posX="1142" posY="1010" refEnable="LPTIM2Enable"/>
    <!--I2C1 mux-->
    <Label id="I2C1MUXLabel"    type="muxLabel"    text="I2C1 Clock Mux" posX="830" posY="575" refEnable="I2C1Enable"/>
    <Label id="I2C1Output"      type="SpecialInfo" text="To I2C1 (MHz)"  posX="993" posY="643" refEnable="I2C1Enable"/> 	
    <Label id="I2C1SYSCLKLabel" type="signal"      text="PCLK1"          posX="834" posY="597" refEnable="I2C1Enable"/>
    <Label id="I2C1HSILabel"    type="signal"      text="SYSCLK"         posX="834" posY="632" refEnable="I2C1Enable"/>
    <Label id="I2C1PCLK1Label"  type="signal"      text="HSI"            posX="834" posY="667" refEnable="I2C1Enable"/>
    <!--SAI1 mux-->
    <Label id="SAI1MUXLabel"    type="muxLabel"    text="SAI1 Clock Mux" posX="745" posY="775" refEnable="SAI1Enable"/>
    <Label id="SAI1Output"      type="SpecialInfo" text="To SAI1 (MHz)"  posX="993" posY="843" refEnable="SAI1Enable"/> 	
    <Label id="SAI1SYSCLKLabel" type="signal"      text="PLLSAI1P"       posX="738" posY="797" refEnable="SAI1Enable"/>
    <Label id="SAI1HSILabel"    type="signal"      text="PLLSAI2P"       posX="738" posY="822" refEnable="SAI1Enable"/>
    <Label id="SAI1LSELabel"    type="signal"      text="PLLP"           posX="738" posY="847" refEnable="SAI1Enable"/>
    <Label id="SAI1PCLK1Label"  type="signal"      text="SAI1_EXT"       posX="738" posY="872" refEnable="SAI1Enable"/>
    <!--I2C2 mux-->
    <Label id="I2C2MUXLabel"    type="muxLabel"    text="I2C2 Clock Mux" posX="830" posY="715" refEnable="I2C2Enable"/>
    <Label id="I2C2Output"      type="SpecialInfo" text="To I2C2 (MHz)"  posX="993" posY="783" refEnable="I2C2Enable"/> 	
    <Label id="I2C2SYSCLKLabel" type="signal"      text="PCLK1"          posX="834" posY="737" refEnable="I2C2Enable"/>
    <Label id="I2C2HSILabel"    type="signal"      text="SYSCLK"         posX="834" posY="772" refEnable="I2C2Enable"/>
    <Label id="I2C2PCLK1Label"  type="signal"      text="HSI"            posX="834" posY="807" refEnable="I2C2Enable"/>
    <!--I2C3 mux-->
    <Label id="I2C3MUXLabel"    type="muxLabel"    text="I2C3 Clock Mux" posX="830" posY="855" refEnable="I2C3Enable"/>
    <Label id="I2C3Output"      type="SpecialInfo" text="To I2C3 (MHz)"  posX="993" posY="928" refEnable="I2C3Enable"/> 	
    <Label id="I2C3SYSCLKLabel" type="signal"      text="PCLK1"          posX="834" posY="877" refEnable="I2C3Enable"/>
    <Label id="I2C3HSILabel"    type="signal"      text="SYSCLK"         posX="834" posY="912" refEnable="I2C3Enable"/>
    <Label id="I2C3PCLK1Label"  type="signal"      text="HSI"            posX="834" posY="947" refEnable="I2C3Enable"/>
    <!--SAI2 mux-->
    <Label id="SAI2MUXLabel"    type="muxLabel"    text="SAI2 Clock Mux" posX="745" posY="915"  refEnable="SAI2Enable"/>
    <Label id="SAI2Output"      type="SpecialInfo" text="To SAI2 (MHz)"  posX="993" posY="988"  refEnable="SAI2Enable"/> 	
    <Label id="SAI2SYSCLKLabel" type="signal"      text="PLLSAI1P"       posX="738" posY="938"  refEnable="SAI2Enable"/>
    <Label id="SAI2HSILabel"    type="signal"      text="PLLSAI2P"       posX="738" posY="963"  refEnable="SAI2Enable"/>
    <Label id="SAI2LSELabel"    type="signal"      text="PLLP"           posX="738" posY="988"  refEnable="SAI2Enable"/>
    <Label id="SAI2PCLK1Label"  type="signal"      text="SAI2_EXT"       posX="738" posY="1013" refEnable="SAI2Enable"/>
	   <!--I2C4 mux-->
    <Label id="I2C4MUXLabel"    type="muxLabel"    text="I2C4 Clock Mux" posX="745" posY="1055" refEnable="I2C4Enable"/>
    <Label id="I2C4Output"      type="SpecialInfo" text="To I2C4 (MHz)"  posX="993" posY="1128" refEnable="I2C4Enable"/> 	
    <Label id="I2C4SYSCLKLabel" type="signal"      text="PCLK1"          posX="738" posY="1077" refEnable="I2C4Enable"/>
    <Label id="I2C4HSILabel"    type="signal"      text="SYSCLK"         posX="738" posY="1112" refEnable="I2C4Enable"/>
    <Label id="I2C4PCLK1Label"  type="signal"      text="HSI"            posX="738" posY="1147" refEnable="I2C4Enable"/>
    <!--clk48 mux-->
    <Label id="clk48MUXLabel"    type="muxLabel"    text="CLK48 Clock Mux"    posX="745" posY="495" refEnable="USBEnable,SDMMCEnable,RNGEnable"/>
    <Label id="clk48Output"      type="SpecialInfo" text="To USB (MHz)"       posX="993" posY="523" refEnable="USBEnable"/> 	
    <Label id="clk48Output"      type="SpecialInfo" text="To SDMMC1 (MHz)"    posX="993" posY="485" refEnable="SDMMCEnable"/> 	
    <Label id="clk48Output"      type="SpecialInfo" text="To RNG (MHz)"       posX="993" posY="563" refEnable="RNGEnable"/> 	
    <Label id="clk48SYSCLKLabel" type="signal"      text="PLLSAI1Q"           posX="738" posY="517" refEnable="USBEnable,SDMMCEnable,RNGEnable"/>
    <Label id="clk48HSILabel"    type="signal"      text="PLLQ"               posX="738" posY="542" refEnable="USBEnable,SDMMCEnable,RNGEnable"/>
    <Label id="clk48PCLK1Label"  type="signal"      text="MSI"                posX="738" posY="567" refEnable="USBEnable,SDMMCEnable,RNGEnable"/>
    <Label id="clk48PCLK1Label"  type="signal"      text="HSI48"              posX="738" posY="590" refEnable="USBEnable,SDMMCEnable,RNGEnable"/>
    <!--ADC mux-->
    <Label id="ADCMUXLabel"    type="muxLabel"    text="ADC Clock Mux"  posX="745" posY="635" refEnable="ADCEnable"/>
    <Label id="ADCOutput"      type="SpecialInfo" text="To ADC (MHz)"   posX="993" posY="703" refEnable="ADCEnable"/> 	
    <Label id="ADCSYSCLKLabel" type="signal"      text="PLLSAI1R"       posX="738" posY="657" refEnable="ADCEnable"/>
    <Label id="ADCHSILabel"    type="signal"      text="PLLSAI2R"       posX="738" posY="692" refEnable="ADCEnable"/>
    <Label id="ADCPCLK1Label"  type="signal"      text="SYSCLK"         posX="738" posY="727" refEnable="ADCEnable"/>
	
	
	
    <!--DFSDM mux-->
    <Label id="DFSDMMUXLabel"    type="muxLabel"    text="DFSDM1 Clock Mux"      posX="830" posY="1015" refEnable="DFSDMEnable"/>
    <Label id="DFSDMOutput"      type="SpecialInfo" text="To DFSDM1 (MHz)"       posX="993" posY="1070" refEnable="DFSDMEnable"/> 	
    <Label id="DFSDMSYSCLKLabel" type="signal"      text="PCLK1"                posX="835" posY="1035" refEnable="DFSDMEnable"/>
    <Label id="DFSDMHSILabel"    type="signal"      text="SYSCLK"               posX="835" posY="1075" refEnable="DFSDMEnable"/>
    <!--SWPMI mux-->
    <Label id="DSWPMIMUXLabel"    type="muxLabel"    text="SWPMI1 Clock Mux" posX="1250" posY="1015" refEnable="SWPMIEnable"/>
    <Label id="SWPMIOutput"      type="SpecialInfo" text="To SWPMI1 (MHz)"   posX="1415" posY="1070" refEnable="SWPMIEnable"/> 	
    <Label id="SWPMISYSCLKLabel" type="signal"      text="PCLK1"             posX="1255" posY="1035" refEnable="SWPMIEnable"/>
    <Label id="SWPMIHSILabel"    type="signal"      text="HSI"               posX="1255" posY="1075" refEnable="SWPMIEnable"/>
    <!--MCO label-->
    <Label id="MCOLabel"       type="info"     text="(MHz) MCO"      posX="230" posY="1080" refEnable="MCOEnable"/>
    <Label id="MCOMuxLabel"    type="muxLabel" text="MCO Source Mux" posX="467" posY="960"  refEnable="MCOEnable"/>
    <Label id="MCOLSELabel"    type="signal"   text="LSE"            posX="549" posY="983"  refEnable="MCOEnable"/>
    <Label id="MCOLSILabel"    type="signal"   text="LSI"            posX="549" posY="1010"  refEnable="MCOEnable"/>
    <Label id="MCOHSELabel"    type="signal"   text="HSE"            posX="546" posY="1035"  refEnable="MCOEnable"/>
    <Label id="MCOHSILabel"    type="signal"   text="HSI 16"         posX="535" posY="1060" refEnable="MCOEnable"/>
    <Label id="MCOPLLCLKLabel" type="signal"   text="PLLCLK"         posX="533" posY="1085" refEnable="MCOEnable"/>
    <Label id="MCOSYSCLKLabel" type="signal"   text="SYSCLK"         posX="529" posY="1110" refEnable="MCOEnable"/>
    <Label id="MCOMSILabel"    type="signal"   text="MSI"            posX="545" posY="1135" refEnable="MCOEnable"/> 
    <Label id="MCOHSI48Label"  type="signal"   text="HSI 48"         posX="535" posY="1160" refEnable="MCOEnable"/> 
	
	<!--LSCO label-->
    <Label id="LSCOLabel"       type="info"     text="(MHz) LSCO"      posX="227" posY="1160" refEnable="LSCOEnable"/>
    <Label id="LSCOMuxLabel"    type="muxLabel" text="LSCO Source Mux" posX="390" posY="1105"  refEnable="LSCOEnable"/>
    <Label id="LSCOLSELabel"    type="signal"   text="LSE"             posX="440" posY="1170"  refEnable="LSCOEnable"/>
    <Label id="LSCOLSILabel"    type="signal"   text="LSI"             posX="440" posY="1130"  refEnable="LSCOEnable"/>
 
    <!-- APB label -->
    <Label id="APB1Presc" type="Info" posX="1015" posY="290" text="APB1 Prescaler"/>
    <Label id="APB2Presc" type="Info" posX="1015" posY="360" text="APB2 Prescaler"/>
	
    <Label id="ABP1labelPCLK1" type="signal" text="PCLK1" posX="1170" posY="305" />
    <Label id="ABP2labelPCLK2" type="signal" text="PCLK2" posX="1170" posY="375" />
	
    <Label id="HCLKLabel"         type="info" posX="923" posY="360" text="HCLK (MHz)"/>
    <Label id="AHBPrescalerLabel" type="info" posX="830" posY="360" text="AHB Prescaler"/>
	
    <Label id="AHBMaxLimitConstraint"  type="dynamiConstraint" posX="920"  posY="403" text="80 MHz max"/>
    <Label id="APB1MaxLimitConstraint" type="dynamiConstraint" posX="1170" posY="320" text="80 MHz max"/>
    <Label id="APB2MaxLimitConstraint" type="dynamiConstraint" posX="1170" posY="390" text="80 MHz max"/>
	
	
	<BButton id="CSSEnable" text="CSS" refParameter="EnbaleCSS" x="675" y="457">
    </BButton>
    <BButton id="CSSLSEEnable" text="CSS" refParameter="EnableCSSLSE" x="525" y="273">

    </BButton>

	
 

</Clock>


