<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<IP DBVersion="V4.0" IPType="peripheral" Name="FSMC" Version="nornandmux_fsmc7_v4_0" IpGroup="Connectivity" xmlns:ns0="http://www.w3.org/2001/XMLSchema-instance" ns0:schemaLocation="http://mcd.rou.st.com/modules.php?name=mcu ../../../../../../../doc/V4/Development/Specifications/db/IP_Modes_Generated.xsd" xmlns="http://mcd.rou.st.com/modules.php?name=mcu">
    <About>FSMC: Flexible Static Memory Controller</About>
    <RefParameter Comment="Device" DefaultValue="FSMC_NORSRAM_DEVICE" Name="NORSRAM_Instance" Type="list" Visible="false">
        <PossibleValue Comment="NOR/SRAM Device" Value="FSMC_NORSRAM_DEVICE"/>
    </RefParameter>
    <RefParameter Comment="Device" DefaultValue="FSMC_NAND_DEVICE" Name="NAND_Instance" Type="list" Visible="false">
        <PossibleValue Comment="NAND Device" Value="FSMC_NAND_DEVICE"/>
    </RefParameter>
    <RefParameter Comment="Extended Device" DefaultValue="FSMC_NORSRAM_EXTENDED_DEVICE" Name="Extended" Type="list" Visible="false">
        <PossibleValue Comment="NOR/SRAM Extended Device" Value="FSMC_NORSRAM_EXTENDED_DEVICE"/>
    </RefParameter>
    
    <!-- Begin Configuration RefParameters -->
    <!-- Begin NOR Flash 1 RefParameters -->
    <RefParameter Comment="NS Coherent Pinout" DefaultValue="MEMORY_NADV_KO" Name="NSCoherentPinout1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <Condition Expression="((Address1&amp;Data1)|NorPsramDataAddress1)&amp;(NorFlash1|MuxedNorFlash1|Psram1|MuxedPsram1)&amp;NorPsramClock1&amp;!AddressValid1" Diagnostic=""/>
        <PossibleValue Comment="NADV KO" Value="MEMORY_NADV_KO"/>
    </RefParameter>
    <RefParameter Comment="NS Coherent Pinout" DefaultValue="MEMORY_PINOUT_OK" Name="NSCoherentPinout1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <Condition Expression="((Address1|OneBitAddress1)&amp;Data1)|NorPsramDataAddress1" Diagnostic=""/>
        <PossibleValue Comment="PINOUT OK" Value="MEMORY_PINOUT_OK"/>
    </RefParameter>
    <RefParameter Comment="NS Coherent Pinout" DefaultValue="MEMORY_PINOUT_KO" Name="NSCoherentPinout1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <PossibleValue Comment="PINOUT KO" Value="MEMORY_PINOUT_KO"/>
    </RefParameter>
    <RefParameter Comment="Bank" DefaultValue="FSMC_NORSRAM_BANK1" Name="NSBank1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <Condition Expression="NorPsramChipSelect1_1" Diagnostic=""/>
        <PossibleValue Comment="Bank 1 NOR/PSRAM 1" Value="FSMC_NORSRAM_BANK1"/>
    </RefParameter>
    <RefParameter Comment="Bank" DefaultValue="FSMC_NORSRAM_BANK2" Name="NSBank1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <Condition Expression="NorPsramChipSelect2_1" Diagnostic=""/>
        <PossibleValue Comment="Bank 1 NOR/PSRAM 2" Value="FSMC_NORSRAM_BANK2"/>
    </RefParameter>
    <RefParameter Comment="Bank" DefaultValue="FSMC_NORSRAM_BANK3" Name="NSBank1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <Condition Expression="NorPsramChipSelect3_1" Diagnostic=""/>
        <PossibleValue Comment="Bank 1 NOR/PSRAM 3" Value="FSMC_NORSRAM_BANK3"/>
    </RefParameter>
    <RefParameter Comment="Bank" DefaultValue="FSMC_NORSRAM_BANK4" Name="NSBank1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <Condition Expression="NorPsramChipSelect4_1" Diagnostic=""/>
        <PossibleValue Comment="Bank 1 NOR/PSRAM 4" Value="FSMC_NORSRAM_BANK4"/>
    </RefParameter>
    <RefParameter Comment="Bank" DefaultValue="" Name="NSBank1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <PossibleValue Comment="Bank 1 NOR/PSRAM 1" Value="FSMC_NORSRAM_BANK1"/>
        <PossibleValue Comment="Bank 1 NOR/PSRAM 2" Value="FSMC_NORSRAM_BANK2"/>
        <PossibleValue Comment="Bank 1 NOR/PSRAM 3" Value="FSMC_NORSRAM_BANK3"/>
        <PossibleValue Comment="Bank 1 NOR/PSRAM 4" Value="FSMC_NORSRAM_BANK4"/>
    </RefParameter>

    <!-- FSMC_BCRx -->
    <!-- FSMC_BCRx MUXEN -->
    <RefParameter Comment="Data address multiplexing" DefaultValue="FSMC_DATA_ADDRESS_MUX_DISABLE" Name="DataAddressMux1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <Condition Expression="Sram1|Rom1|Lcd1" Diagnostic=""/>
        <PossibleValue Comment="Disabled" Value="FSMC_DATA_ADDRESS_MUX_DISABLE"/>
    </RefParameter>
    <RefParameter Comment="Data address multiplexing" DefaultValue="FSMC_DATA_ADDRESS_MUX_DISABLE" Name="DataAddressMux1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <Condition Expression="Psram1|NorFlash1" Diagnostic=""/>
        <PossibleValue Comment="Disabled" Value="FSMC_DATA_ADDRESS_MUX_DISABLE"/>
    </RefParameter>
    <RefParameter Comment="Data address multiplexing" DefaultValue="FSMC_DATA_ADDRESS_MUX_ENABLE" Name="DataAddressMux1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <Condition Expression="MuxedPsram1|MuxedNorFlash1" Diagnostic=""/>
        <PossibleValue Comment="Enabled" Value="FSMC_DATA_ADDRESS_MUX_ENABLE"/>
    </RefParameter>
    <RefParameter Comment="Data address multiplexing" DefaultValue="FSMC_DATA_ADDRESS_MUX_ENABLE" Name="DataAddressMux1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control"/>
    <!-- FSMC_BCRx MTYP -->
    <RefParameter Comment="Memory type" DefaultValue="FSMC_MEMORY_TYPE_SRAM" Name="MemoryType1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <Condition Expression="Sram1" Diagnostic=""/>
        <PossibleValue Comment="SRAM" Value="FSMC_MEMORY_TYPE_SRAM"/>
    </RefParameter>
    <RefParameter Comment="Memory type" DefaultValue="FSMC_MEMORY_TYPE_SRAM" Name="MemoryType1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <Condition Expression="Rom1" Diagnostic=""/>
        <PossibleValue Comment="ROM" Value="FSMC_MEMORY_TYPE_SRAM"/>
    </RefParameter>
    <RefParameter Comment="Memory type" DefaultValue="FSMC_MEMORY_TYPE_SRAM" Name="MemoryType1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <Condition Expression="Lcd1" Diagnostic=""/>
        <PossibleValue Comment="LCD Interface" Value="FSMC_MEMORY_TYPE_SRAM"/>
    </RefParameter>
    <RefParameter Comment="Memory type" DefaultValue="FSMC_MEMORY_TYPE_PSRAM" Name="MemoryType1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <Condition Expression="Psram1|MuxedPsram1" Diagnostic=""/>
        <PossibleValue Comment="PSRAM" Value="FSMC_MEMORY_TYPE_PSRAM"/>
    </RefParameter>
    <RefParameter Comment="Memory type" DefaultValue="FSMC_MEMORY_TYPE_NOR" Name="MemoryType1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <Condition Expression="NorFlash1|MuxedNorFlash1" Diagnostic=""/>
        <PossibleValue Comment="NOR Flash" Value="FSMC_MEMORY_TYPE_NOR"/>
    </RefParameter>
    <RefParameter Comment="Memory type" DefaultValue="FSMC_MEMORY_TYPE_SRAM" Name="MemoryType1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <Condition Expression="!NorPsramChipSelect1_1" Diagnostic=""/>
    </RefParameter>
    <RefParameter Comment="Memory type" DefaultValue="FSMC_MEMORY_TYPE_NOR" Name="MemoryType1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <Condition Expression="NorPsramChipSelect1_1" Diagnostic=""/>
    </RefParameter>
    <!-- FSMC_BCRx MWID -->
    <RefParameter Comment="Data size" DefaultValue="FSMC_NORSRAM_MEM_BUS_WIDTH_8" Name="NSMemoryDataWidth1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <Condition Expression="((NorFlash1|Psram1|Sram1|Rom1|Lcd1)&amp;_8_bit_data1)|_8b_da1|_9b_da1|_10b_da1|_11b_da1|_12b_da1|_13b_da1|_14b_da1|_15b_da1" Diagnostic=""/>
        <PossibleValue Comment="8 bits" Value="FSMC_NORSRAM_MEM_BUS_WIDTH_8"/>
    </RefParameter>
    <RefParameter Comment="Data size" DefaultValue="FSMC_NORSRAM_MEM_BUS_WIDTH_16" Name="NSMemoryDataWidth1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <Condition Expression="(NorFlash1|Psram1|Sram1|Rom1|Lcd1)&amp;_16_bit_data1" Diagnostic=""/>
        <PossibleValue Comment="16 bits" Value="FSMC_NORSRAM_MEM_BUS_WIDTH_16"/>
    </RefParameter>
    <RefParameter Comment="Data size" DefaultValue="FSMC_NORSRAM_MEM_BUS_WIDTH_16" Name="NSMemoryDataWidth1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <PossibleValue Comment="8 bits" Value="FSMC_NORSRAM_MEM_BUS_WIDTH_8"/>
        <PossibleValue Comment="16 bits" Value="FSMC_NORSRAM_MEM_BUS_WIDTH_16"/>
    </RefParameter>
    <RefParameter Comment="Data size" DefaultValue="FSMC_NORSRAM_MEM_BUS_WIDTH_16" Name="NSMemoryDataWidth1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <Condition Expression="!Data1&amp;!NorPsramDataAddress1" Diagnostic="Select Data or Data/Address in the Pinout view."/>
    </RefParameter>
    <RefParameter Comment="Data size" DefaultValue="FSMC_NORSRAM_MEM_BUS_WIDTH_16" Name="NSMemoryDataWidth1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control"/>
    <!-- FSMC_BCRx BURSTEN -->
    <RefParameter Comment="Burst read" DefaultValue="FSMC_BURST_ACCESS_MODE_ENABLE" Name="BurstAccessMode1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <Condition Expression="BurstReadMode1" Diagnostic=""/>
        <PossibleValue Comment="Enabled" Value="FSMC_BURST_ACCESS_MODE_ENABLE"/>
    </RefParameter>
    <RefParameter Comment="Burst read" DefaultValue="FSMC_BURST_ACCESS_MODE_DISABLE" Name="BurstAccessMode1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <PossibleValue Comment="Disabled" Value="FSMC_BURST_ACCESS_MODE_DISABLE"/>
    </RefParameter>
    <!-- FSMC_BCRx WAITPOL -->
    <RefParameter Comment="Wait signal polarity" DefaultValue="FSMC_WAIT_SIGNAL_POLARITY_LOW" Name="WaitSignalPolarity1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <Condition Expression="NorPsramWait1" Diagnostic=""/>
        <PossibleValue Comment="Low polarity" Value="FSMC_WAIT_SIGNAL_POLARITY_LOW"/>
        <PossibleValue Comment="High polarity" Value="FSMC_WAIT_SIGNAL_POLARITY_HIGH"/>
    </RefParameter>
    <RefParameter Comment="Wait signal polarity" DefaultValue="FSMC_WAIT_SIGNAL_POLARITY_LOW" Name="WaitSignalPolarity1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <PossibleValue Comment="Low polarity" Value="FSMC_WAIT_SIGNAL_POLARITY_LOW"/>
    </RefParameter>
    <!-- FSMC_BCRx WRAPMOD -->
    <RefParameter Comment="Wrap mode" DefaultValue="FSMC_WRAP_MODE_DISABLE" Name="WrapMode1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <PossibleValue Comment="Disabled" Value="FSMC_WRAP_MODE_DISABLE"/>
    </RefParameter>
    <!-- FSMC_BCRx WAITCFG -->
    <RefParameter Comment="Wait timing configuration" DefaultValue="FSMC_WAIT_TIMING_BEFORE_WS" Name="WaitSignalActive1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <Condition Expression="(NorFlash1|MuxedNorFlash1)&amp;SynchronousWaitMode1" Diagnostic=""/>
        <PossibleValue Comment="Wait active before wait state" Value="FSMC_WAIT_TIMING_BEFORE_WS"/>
        <PossibleValue Comment="Wait active during wait state" Value="FSMC_WAIT_TIMING_DURING_WS"/>
    </RefParameter>
    <RefParameter Comment="Wait timing configuration" DefaultValue="FSMC_WAIT_TIMING_BEFORE_WS" Name="WaitSignalActive1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <PossibleValue Comment="Wait active before wait state" Value="FSMC_WAIT_TIMING_BEFORE_WS"/>
    </RefParameter>
    <!-- FSMC_BCRx WREN -->
    <RefParameter Comment="Write operation" DefaultValue="FSMC_WRITE_OPERATION_DISABLE" Name="WriteOperation1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <Condition Expression="Rom1" Diagnostic=""/>
        <PossibleValue Comment="Disabled" Value="FSMC_WRITE_OPERATION_DISABLE"/>
    </RefParameter>
    <RefParameter Comment="Write operation" DefaultValue="FSMC_WRITE_OPERATION_ENABLE" Name="WriteOperation1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <Condition Expression="Lcd1" Diagnostic=""/>
        <PossibleValue Comment="Enabled" Value="FSMC_WRITE_OPERATION_ENABLE"/>
    </RefParameter>
    <RefParameter Comment="Write operation" DefaultValue="FSMC_WRITE_OPERATION_DISABLE" Name="WriteOperation1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <PossibleValue Comment="Disabled" Value="FSMC_WRITE_OPERATION_DISABLE"/>
        <PossibleValue Comment="Enabled" Value="FSMC_WRITE_OPERATION_ENABLE"/>
    </RefParameter>
    <!-- FSMC_BCRx WAITEN -->
    <RefParameter Comment="Wait state insertion" DefaultValue="FSMC_WAIT_SIGNAL_ENABLE" Name="WaitSignal1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <Condition Expression="SynchronousWaitMode1" Diagnostic=""/>
        <PossibleValue Comment="Enabled" Value="FSMC_WAIT_SIGNAL_ENABLE"/>
    </RefParameter>
    <RefParameter Comment="Wait state insertion" DefaultValue="FSMC_WAIT_SIGNAL_DISABLE" Name="WaitSignal1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <PossibleValue Comment="Disabled" Value="FSMC_WAIT_SIGNAL_DISABLE"/>
    </RefParameter>
    <!-- FSMC_BCRx EXTMOD -->
    <RefParameter Comment="Extended mode" DefaultValue="FSMC_EXTENDED_MODE_DISABLE" Name="ExtendedMode1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <Condition Expression="MuxedNorFlash1|MuxedPsram1|Rom1" Diagnostic=""/>
        <PossibleValue Comment="Disabled" Value="FSMC_EXTENDED_MODE_DISABLE"/>
    </RefParameter>
    <RefParameter Comment="Extended mode" DefaultValue="FSMC_EXTENDED_MODE_DISABLE" Name="ExtendedMode1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <!--<Condition Expression="BurstReadMode1|BurstWriteMode1" Diagnostic="Synchronous mode"/>-->
        <Condition Expression="NorPsramClock1" Diagnostic="Synchronous mode"/>
        <PossibleValue Comment="Disabled" Value="FSMC_EXTENDED_MODE_DISABLE"/>
    </RefParameter>
    <RefParameter Comment="Extended mode" DefaultValue="FSMC_EXTENDED_MODE_DISABLE" Name="ExtendedMode1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control">
        <PossibleValue Comment="Disabled" Value="FSMC_EXTENDED_MODE_DISABLE"/>
        <PossibleValue Comment="Enabled" Value="FSMC_EXTENDED_MODE_ENABLE"/>
    </RefParameter>
    <!-- FSMC_BCRx ASYNCWAIT -->
    <RefParameter Comment="Asynchronous wait" DefaultValue="FSMC_ASYNCHRONOUS_WAIT_ENABLE" Name="AsynchronousWait1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <Condition Expression="AsynchronousWaitMode1" Diagnostic=""/>
        <PossibleValue Comment="Enabled" Value="FSMC_ASYNCHRONOUS_WAIT_ENABLE"/>
    </RefParameter>
    <RefParameter Comment="Asynchronous wait" DefaultValue="FSMC_ASYNCHRONOUS_WAIT_DISABLE" Name="AsynchronousWait1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <PossibleValue Comment="Disabled" Value="FSMC_ASYNCHRONOUS_WAIT_DISABLE"/>
    </RefParameter>
    <!-- FSMC_BCRx CBURSTRW -->
    <RefParameter Comment="Burst write" DefaultValue="FSMC_WRITE_BURST_ENABLE" Name="WriteBurst1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <Condition Expression="BurstWriteMode1" Diagnostic=""/>
        <PossibleValue Comment="Enabled" Value="FSMC_WRITE_BURST_ENABLE"/>
    </RefParameter>
    <RefParameter Comment="Burst write" DefaultValue="FSMC_WRITE_BURST_DISABLE" Name="WriteBurst1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM control" Visible="false">
        <PossibleValue Comment="Disabled" Value="FSMC_WRITE_BURST_DISABLE"/>
    </RefParameter>

    <!-- FSMC_BTRx -->
    <!-- FSMC_BTRx ADDSET -->
    <!-- Address setup time unused in synchronous mode -->
    <RefParameter Comment="Address setup time in HCLK clock cycles" DefaultValue="15" Name="AddressSetupTime1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing" Visible="false">
      <Condition Expression="BurstReadMode1|BurstWriteMode1" Diagnostic=""/>
      <PossibleValue Comment="15" Value="15"/>
    </RefParameter>
    <RefParameter Comment="Address setup time in HCLK clock cycles" DefaultValue="15" Max="15" Min="1" Name="AddressSetupTime1" Type="integer" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing">
      <Condition Expression="MuxedNorFlash1|MuxedPsram1|AccessModeD1" Diagnostic=""/>
    </RefParameter>
    <RefParameter Comment="Address setup time in HCLK clock cycles" DefaultValue="15" Max="15" Min="0" Name="AddressSetupTime1" Type="integer" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing"/>
    <!-- FSMC_BTRx ADDHLD -->
    <RefParameter Comment="Address hold time in HCLK clock cycles" DefaultValue="15" Max="15" Min="1" Name="AddressHoldTime1" Type="integer" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing">
      <Condition Expression="((MuxedNorFlash1|MuxedPsram1)&amp;!(BurstReadMode1|BurstWriteMode1))|AccessModeD1" Diagnostic=""/>
    </RefParameter>
    <RefParameter Comment="Address hold time in HCLK clock cycles" DefaultValue="15" Max="15" Min="1" Name="AddressHoldTime1" Type="integer" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing" Visible="false"/>
    <!-- FSMC_BTRx DATAST -->
    <RefParameter Comment="Data setup time in HCLK clock cycles" DefaultValue="255" Name="DataSetupTime1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing" Visible="false">
      <Condition Expression="BurstReadMode1|BurstWriteMode1" Diagnostic="Synchronous mode"/>
      <PossibleValue Comment="255" Value="255"/>
    </RefParameter>
    <RefParameter Comment="Data setup time in HCLK clock cycles" DefaultValue="255" Max="255" Min="1" Name="DataSetupTime1" Type="integer" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing"/>
    <!-- FSMC_BTRx BUSTURN -->
    <RefParameter Comment="Bus turn around time in HCLK clock cycles" DefaultValue="15" Max="15" Min="0" Name="BusTurnAroundDuration1" Type="integer" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing"/>
    <!-- FSMC_BTRx CLKDIV -->
    <RefParameter Comment="CLK clock divide ratio" DefaultValue="16" Name="CLKDivision1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing" Visible="false">
      <Condition Expression="Sram1|Rom1|Lcd1" Diagnostic=""/>
      <PossibleValue Comment="16" Value="16"/>
    </RefParameter>
    <RefParameter Comment="CLK clock divide ratio" DefaultValue="16" Name="CLKDivision1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing" Visible="false">
      <Condition Expression="!NorPsramClock1" Diagnostic="No CLK signal"/>
      <PossibleValue Comment="16" Value="16"/>
    </RefParameter>
    <RefParameter Comment="CLK clock divide ratio" DefaultValue="16" Max="16" Min="2" Name="CLKDivision1" Type="integer" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing"/>
    <!-- FSMC_BTRx DATLAT -->
    <RefParameter Comment="Data latency in CLK clock cycles" DefaultValue="17" Name="DataLatency1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing" Visible="false">
      <Condition Expression="Sram1|Rom1|Lcd1" Diagnostic=""/>
      <PossibleValue Comment="17" Value="17"/>
    </RefParameter>
    <RefParameter Comment="Data latency in CLK clock cycles" DefaultValue="17" Name="DataLatency1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing" Visible="false">
      <Condition Expression="!BurstReadMode1&amp;!BurstWriteMode1" Diagnostic=""/>
      <PossibleValue Comment="17" Value="17"/>
    </RefParameter>
    <RefParameter Comment="Data latency in CLK clock cycles" DefaultValue="2" Name="DataLatency1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing">
      <Condition Expression="(Psram1|MuxedPsram1)&amp;(BurstReadMode1|BurstWriteMode1)" Diagnostic="2 CLK clock cycles for synchronous PSRAM"/>
      <PossibleValue Comment="2" Value="2"/>
    </RefParameter>
    <RefParameter Comment="Data latency in CLK clock cycles" DefaultValue="17" Max="17" Min="2" Name="DataLatency1" Type="integer" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing">
      <Condition Expression="(NorFlash1|MuxedNorFlash1)&amp;BurstReadMode1" Diagnostic=""/>
    </RefParameter>
    <!-- in case all conditions are false -->
    <RefParameter Comment="Data latency in CLK clock cycles" DefaultValue="17" Max="17" Min="2" Name="DataLatency1" Type="integer" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing"/>
    <!-- FSMC_BTRx ACCMOD -->
    <RefParameter Comment="Access mode" DefaultValue="FSMC_ACCESS_MODE_A" Name="AccessMode1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing" Visible="false">
        <Condition Diagnostic="" Expression="ExtendedMode1=FSMC_EXTENDED_MODE_DISABLE"/>
        <PossibleValue Comment="A" Value="FSMC_ACCESS_MODE_A"/>
    </RefParameter>
    <RefParameter Comment="Access mode" DefaultValue="FSMC_ACCESS_MODE_B" Name="AccessMode1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing">
        <Condition Expression="NorFlash1" Diagnostic="Nor Flash"/>
        <PossibleValue Comment="B" Value="FSMC_ACCESS_MODE_B"/>
        <PossibleValue Comment="C" Value="FSMC_ACCESS_MODE_C"/>
        <PossibleValue Comment="D" Value="FSMC_ACCESS_MODE_D" Semaphore="AccessModeD1"/>
    </RefParameter>
    <RefParameter Comment="Access mode" DefaultValue="FSMC_ACCESS_MODE_A" Name="AccessMode1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing">
        <Condition Expression="Psram1|Sram1|Lcd1" Diagnostic="PSRAM/SRAM/LCD"/>
        <PossibleValue Comment="A" Value="FSMC_ACCESS_MODE_A"/>
        <PossibleValue Comment="D" Value="FSMC_ACCESS_MODE_D" Semaphore="AccessModeD1"/>
    </RefParameter>
    <RefParameter Comment="Access mode" DefaultValue="FSMC_ACCESS_MODE_A" Name="AccessMode1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing">
        <PossibleValue Comment="A" Value="FSMC_ACCESS_MODE_A"/>
        <PossibleValue Comment="B" Value="FSMC_ACCESS_MODE_B"/>
        <PossibleValue Comment="C" Value="FSMC_ACCESS_MODE_C"/>
        <PossibleValue Comment="D" Value="FSMC_ACCESS_MODE_D" Semaphore="AccessModeD1"/>
    </RefParameter>

    <!-- FSMC_BWTRx -->
    <!-- FSMC_BWTRx ADDSET -->
    <RefParameter Comment="Extended address setup time" DefaultValue="null" Name="ExtendedAddressSetupTime1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses" Visible="false">
        <Condition Diagnostic="" Expression="ExtendedMode1=FSMC_EXTENDED_MODE_DISABLE"/>
    </RefParameter>
    <RefParameter Comment="Extended address setup time" DefaultValue="15" Max="15" Min="1" Name="ExtendedAddressSetupTime1" Type="integer" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses">
      <Condition Expression="ExtendedAccessModeD1" Diagnostic=""/>
    </RefParameter>
    <RefParameter Comment="Extended address setup time" DefaultValue="15" Max="15" Min="0" Name="ExtendedAddressSetupTime1" Type="integer" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses"/>
    <!-- FSMC_BWTRx ADDHLD -->
    <RefParameter Comment="Extended address hold time" DefaultValue="null" Name="ExtendedAddressHoldTime1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses" Visible="false">
        <Condition Diagnostic="" Expression="ExtendedMode1=FSMC_EXTENDED_MODE_DISABLE"/>
    </RefParameter>
    <RefParameter Comment="Extended address hold time" DefaultValue="15" Max="15" Min="1" Name="ExtendedAddressHoldTime1" Type="integer" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses">
      <Condition Expression="ExtendedAccessModeD1" Diagnostic=""/>
    </RefParameter>
    <RefParameter Comment="Extended address hold time" DefaultValue="15" Max="15" Min="1" Name="ExtendedAddressHoldTime1" Type="integer" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses" Visible="false"/>
    <!-- FSMC_BWTRx DATAST -->
    <RefParameter Comment="Extended data setup time" DefaultValue="null" Name="ExtendedDataSetupTime1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses" Visible="false">
        <Condition Diagnostic="" Expression="ExtendedMode1=FSMC_EXTENDED_MODE_DISABLE"/>
    </RefParameter>
    <!-- used in asynchronous SRAM, PSRAM and NOR Flash memory accesses -->
    <RefParameter Comment="Extended data setup time" DefaultValue="255" Max="255" Min="1" Name="ExtendedDataSetupTime1" Type="integer" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses"/>
    <!-- FSMC_BWTRx BUSTURN -->
    <RefParameter Comment="Extended bus turn around time" DefaultValue="null" Name="ExtendedBusTurnAroundDuration1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses" Visible="false">
        <Condition Diagnostic="" Expression="ExtendedMode1=FSMC_EXTENDED_MODE_DISABLE"/>
    </RefParameter>
    <RefParameter Comment="Extended bus turn around time" DefaultValue="15" Max="15" Min="0" Name="ExtendedBusTurnAroundDuration1" Type="integer" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses"/>
    <!-- FSMC_BWTRx CLKDIV -->
    <RefParameter Comment="Extended CLK clock divide ratio" DefaultValue="null" Name="ExtendedCLKDivision1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses" Visible="false">
        <Condition Diagnostic="" Expression="ExtendedMode1=FSMC_EXTENDED_MODE_DISABLE"/>
    </RefParameter>
    <RefParameter Comment="Extended CLK clock divide ratio" DefaultValue="16" Name="ExtendedCLKDivision1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses" Visible="false">
        <PossibleValue Comment="16" Value="16"/>
    </RefParameter>
    <!-- FSMC_BWTRx DATLAT -->
    <RefParameter Comment="Extended data latency" DefaultValue="null" Name="ExtendedDataLatency1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses" Visible="false">
        <Condition Diagnostic="" Expression="ExtendedMode1=FSMC_EXTENDED_MODE_DISABLE"/>
    </RefParameter>
    <RefParameter Comment="Extended data latency" DefaultValue="17" Name="ExtendedDataLatency1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses" Visible="false">
        <PossibleValue Comment="17" Value="17"/>
    </RefParameter>
    <!-- FSMC_BWTRx ACCMOD -->
    <RefParameter Comment="Extended access mode" DefaultValue="null" Name="ExtendedAccessMode1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses" Visible="false">
        <Condition Diagnostic="" Expression="ExtendedMode1=FSMC_EXTENDED_MODE_DISABLE"/>
    </RefParameter>
    <RefParameter Comment="Extended access mode" DefaultValue="FSMC_ACCESS_MODE_B" Name="ExtendedAccessMode1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses">
        <Condition Expression="NorFlash1" Diagnostic="Nor Flash"/>
        <PossibleValue Comment="B" Value="FSMC_ACCESS_MODE_B"/>
        <PossibleValue Comment="C" Value="FSMC_ACCESS_MODE_C"/>
        <PossibleValue Comment="D" Value="FSMC_ACCESS_MODE_D" Semaphore="ExtendedAccessModeD1"/>
    </RefParameter>
    <RefParameter Comment="Extended access mode" DefaultValue="FSMC_ACCESS_MODE_A" Name="ExtendedAccessMode1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses">
        <Condition Expression="Psram1|Sram1|Lcd1" Diagnostic="PSRAM/SRAM/LCD"/>
        <PossibleValue Comment="A" Value="FSMC_ACCESS_MODE_A"/>
        <PossibleValue Comment="D" Value="FSMC_ACCESS_MODE_D" Semaphore="ExtendedAccessModeD1"/>
    </RefParameter>
    <RefParameter Comment="Extended access mode" DefaultValue="FSMC_ACCESS_MODE_A" Name="ExtendedAccessMode1" Type="list" TabName="NOR/PSRAM 1" Group="NOR/PSRAM timing for write accesses">
        <PossibleValue Comment="A" Value="FSMC_ACCESS_MODE_A"/>
        <PossibleValue Comment="B" Value="FSMC_ACCESS_MODE_B"/>
        <PossibleValue Comment="C" Value="FSMC_ACCESS_MODE_C"/>
        <PossibleValue Comment="D" Value="FSMC_ACCESS_MODE_D" Semaphore="ExtendedAccessModeD1"/>
    </RefParameter>
    <!-- End NOR Flash 1 RefParameters -->
    <!-- Begin NAND Flash 1 RefParameters -->
    <RefParameter Comment="Nand Coherent Pinout" DefaultValue="MEMORY_PINOUT_OK" Name="NandCoherentPinout1" Type="list" TabName="NAND 1" Group="NAND control" Visible="false">
        <Condition Expression="STM32MP1&amp;NandDataAddressMux1&amp;!NandPccWait1" Diagnostic=""/>
        <PossibleValue Comment="PINOUT KO" Value="MEMORY_WAIT_KO"/>
    </RefParameter>
    <RefParameter Comment="Nand Coherent Pinout" DefaultValue="MEMORY_PINOUT_OK" Name="NandCoherentPinout1" Type="list" TabName="NAND 1" Group="NAND control" Visible="false">
        <Condition Expression="NandDataAddressMux1" Diagnostic=""/>
        <PossibleValue Comment="PINOUT OK" Value="MEMORY_PINOUT_OK"/>
    </RefParameter>
    <RefParameter Comment="Nand Coherent Pinout" DefaultValue="MEMORY_PINOUT_KO" Name="NandCoherentPinout1" Type="list" TabName="NAND 1" Group="NAND control" Visible="false">
        <PossibleValue Comment="PINOUT KO" Value="MEMORY_PINOUT_KO"/>
    </RefParameter>
    <RefParameter Comment="Bank" DefaultValue="FSMC_NAND_BANK2" Name="NandBank1" Type="list" TabName="NAND 1" Group="NAND control">
        <PossibleValue Comment="NAND bank 2" Value="FSMC_NAND_BANK2"/>
        <PossibleValue Comment="NAND bank 3" Value="FSMC_NAND_BANK3"/>
    </RefParameter>
    <!-- FSMC_PCRx PWID -->
    <RefParameter Comment="Data size" DefaultValue="FSMC_NAND_PCC_MEM_BUS_WIDTH_8" Name="NandMemoryDataWidth1" Type="list" TabName="NAND 1" Group="NAND control" Visible="false">
        <Condition Expression="_8b_dmux1" Diagnostic=""/>
        <PossibleValue Comment="8 bits" Value="FSMC_NAND_PCC_MEM_BUS_WIDTH_8"/>
    </RefParameter>
    <RefParameter Comment="Data size" DefaultValue="FSMC_NAND_PCC_MEM_BUS_WIDTH_16" Name="NandMemoryDataWidth1" Type="list" TabName="NAND 1" Group="NAND control" Visible="false">
        <Condition Expression="_16b_dmux1" Diagnostic=""/>
        <PossibleValue Comment="16 bits" Value="FSMC_NAND_PCC_MEM_BUS_WIDTH_16"/>
    </RefParameter>
    <RefParameter Comment="Data size" DefaultValue="FSMC_NAND_PCC_MEM_BUS_WIDTH_16" Name="NandMemoryDataWidth1" Type="list" TabName="NAND 1" Group="NAND control">
        <Condition Expression="!NandDataAddressMux1" Diagnostic="Select Data/Address in the Pinout view."/>
    </RefParameter>
    <RefParameter Comment="Data size" DefaultValue="FSMC_NAND_PCC_MEM_BUS_WIDTH_16" Name="NandMemoryDataWidth1" Type="list" TabName="NAND 1" Group="NAND control"/>
    <!-- FSMC_PCRx ECCEN -->
    <RefParameter Comment="ECC computation" DefaultValue="FSMC_NAND_ECC_DISABLE" Name="EccComputation1" Type="list" TabName="NAND 1" Group="NAND control">
        <PossibleValue Comment="Disabled" Value="FSMC_NAND_ECC_DISABLE"/>
        <PossibleValue Comment="Enabled" Value="FSMC_NAND_ECC_ENABLE"/>
    </RefParameter>
    <!-- FSMC_PCRx ECCPS -->
    <RefParameter Comment="ECC page size" DefaultValue="FSMC_NAND_ECC_PAGE_SIZE_256BYTE" Name="ECCPageSize1" Type="list" TabName="NAND 1" Group="NAND control">
        <PossibleValue Comment="256 bytes" Value="FSMC_NAND_ECC_PAGE_SIZE_256BYTE"/>
        <PossibleValue Comment="512 bytes" Value="FSMC_NAND_ECC_PAGE_SIZE_512BYTE"/>
        <PossibleValue Comment="1024 bytes" Value="FSMC_NAND_ECC_PAGE_SIZE_1024BYTE"/>
        <PossibleValue Comment="2048 bytes" Value="FSMC_NAND_ECC_PAGE_SIZE_2048BYTE"/>
        <PossibleValue Comment="4096 bytes" Value="FSMC_NAND_ECC_PAGE_SIZE_4096BYTE"/>
        <PossibleValue Comment="8192 bytes" Value="FSMC_NAND_ECC_PAGE_SIZE_8192BYTE"/>
    </RefParameter>
    <!-- NAND characteristic information structure -->
    <RefParameter Comment="Page size" DefaultValue="0" Max="4294967295" Min="0" Name="NandPageSize1" Type="integer" TabName="NAND 1" Group="NAND characteristic information">
        <Description>NAND memory page size (without spare area) measured in bytes for 8-bit addressing or words for 16-bit addressing.</Description>
    </RefParameter>
    <RefParameter Comment="Spare area size" DefaultValue="0" Max="4294967295" Min="0" Name="NandSpareAreaSize1" Type="integer" TabName="NAND 1" Group="NAND characteristic information">
        <Description>NAND memory spare area size measured in bytes for 8-bit addressing or words for 16-bit addressing.</Description>
    </RefParameter>
    <RefParameter Comment="Block size" DefaultValue="0" Max="4294967295" Min="0" Name="NandBlockSize1" Type="integer" TabName="NAND 1" Group="NAND characteristic information">
        <Description>NAND memory block size expressed in number of pages.</Description>
    </RefParameter>
    <RefParameter Comment="Block number" DefaultValue="0" Max="4294967295" Min="0" Name="NandBlockNbr1" Type="integer" TabName="NAND 1" Group="NAND characteristic information">
        <Description>NAND memory number of blocks.</Description>
    </RefParameter>
    <RefParameter Comment="Plane number" DefaultValue="0" Max="4294967295" Min="0" Name="NandPlaneNbr1" Type="integer" TabName="NAND 1" Group="NAND characteristic information">
        <Description>NAND memory number of planes.</Description>
    </RefParameter>
    <RefParameter Comment="Plane size" DefaultValue="0" Max="4294967295" Min="0" Name="NandPlaneSize1" Type="integer" TabName="NAND 1" Group="NAND characteristic information">
        <Description>NAND memory plane size measured in number of blocks.</Description>
    </RefParameter>
    <RefParameter Comment="Extra command enable" DefaultValue="DISABLE" Name="NandExtraCommandEnable1" Type="list" TabName="NAND 1" Group="NAND characteristic information">
        <Description>NAND extra command needed for page reading mode. This parameter is mandatory for some NAND memories. Please check the read mode sequence in the NAND device datasheet.</Description>
        <PossibleValue Comment="Disabled" Value="DISABLE"/>
        <PossibleValue Comment="Enabled" Value="ENABLE"/>
    </RefParameter>
    <!-- End NAND Flash only 1 RefParameters -->
    <!-- Begin Compact Flash RefParameters -->
    <!-- FSMC_PCRx PWAITEN -->
    <RefParameter Comment="Wait feature" DefaultValue="FSMC_NAND_PCC_WAIT_FEATURE_ENABLE" Name="Waitfeature1" Type="list" TabName="NAND 1" Group="NAND control" Visible="false">
        <Condition Expression="NandPccWait1" Diagnostic="To disable the wait feature, switch to the Pinout view and disable the corresponding NAND 1 wait mode."/>
        <PossibleValue Comment="Enabled" Value="FSMC_NAND_PCC_WAIT_FEATURE_ENABLE"/>
    </RefParameter>
    <RefParameter Comment="Wait feature" DefaultValue="FSMC_NAND_PCC_WAIT_FEATURE_DISABLE" Name="Waitfeature1" Type="list" TabName="NAND 1" Group="NAND control" Visible="false">
        <Condition Expression="!NandPccWait1" Diagnostic="To enable the wait feature, switch to the Pinout view and enable the corresponding NAND 1 wait mode."/>
        <PossibleValue Comment="Disabled" Value="FSMC_NAND_PCC_WAIT_FEATURE_DISABLE"/>
    </RefParameter>
    <RefParameter Comment="Wait feature" DefaultValue="FSMC_NAND_PCC_WAIT_FEATURE_DISABLE" Name="Waitfeature1" Type="list" TabName="NAND 1" Group="NAND control" Visible="false">
        <PossibleValue Comment="Disabled" Value="FSMC_NAND_PCC_WAIT_FEATURE_DISABLE"/>
    </RefParameter>
    <!-- FSMC_PCRx TCLR -->
    <RefParameter Comment="CLE low to RE low delay in HCLK cycles" Name="TCLRSetupTime1" DefaultValue="0" Max="15" Min="0" Type="integer" Display="value+1" TabName="NAND 1" Group="NAND control"/>
    <!-- FSMC_PCRx TAR -->
    <RefParameter Comment="ALE low to RE low delay in HCLK cycles" DefaultValue="0" Max="15" Min="0" Name="TARSetupTime1" Type="integer" Display="value+1" TabName="NAND 1" Group="NAND control"/>

    <!-- FSMC_PMEMx -->
    <!-- FSMC_PMEMx MEMSETx -->
    <RefParameter Comment="Common space setup time" DefaultValue="252" Max="254" Min="0" Name="CommonSpaceSetupTime1" Type="integer" Display="value+1" TabName="NAND 1" Group="NAND common space timing in HCLK cycles"/>
    <!-- FSMC_PMEMx MEMWAITx -->
    <RefParameter Comment="Common space wait time" DefaultValue="252" Max="254" Min="1" Name="CommonSpaceWaitSetupTime1" Type="integer" Display="value+1" TabName="NAND 1" Group="NAND common space timing in HCLK cycles"/>
    <!-- FSMC_PMEMx MEMHOLDx -->
    <RefParameter Comment="Common space hold time" DefaultValue="252" Max="254" Min="1" Name="CommonSpaceHoldSetupTime1" Type="integer" TabName="NAND 1" Group="NAND common space timing in HCLK cycles"/>
    <!-- FSMC_PMEMx MEMHIZx -->
    <RefParameter Comment="Common space Hi-Z time" DefaultValue="252" Max="254" Min="0" Name="CommonSpaceHiZSetupTime1" Type="integer" Display="value+1" TabName="NAND 1" Group="NAND common space timing in HCLK cycles"/>

    <!-- FSMC_PATTx -->
    <!-- FSMC_PATTx ATTSETx -->
    <RefParameter Comment="Attribute space setup time" DefaultValue="252" Max="254" Min="0" Name="AttributeSpaceSetupTime1" Type="integer" Display="value+1" TabName="NAND 1" Group="NAND attribute space timing in HCLK cycles"/>
    <!-- FSMC_PATTx ATTWAITx -->
    <RefParameter Comment="Attribute space wait time" DefaultValue="252" Max="254" Min="1" Name="AttributeSpaceWaitSetupTime1" Type="integer" Display="value+1" TabName="NAND 1" Group="NAND attribute space timing in HCLK cycles"/>
    <!-- FSMC_PATTx ATTHOLDx -->
    <RefParameter Comment="Attribute space hold time" DefaultValue="252" Max="254" Min="1" Name="AttributeSpaceHoldSetupTime1" Type="integer" TabName="NAND 1" Group="NAND attribute space timing in HCLK cycles"/>
    <!-- FSMC_PATTx ATTHIZx -->
    <RefParameter Comment="Attribute space Hi-Z time" DefaultValue="252" Max="254" Min="0" Name="AttributeSpaceHiZSetupTime1" Type="integer" Display="value+1" TabName="NAND 1" Group="NAND attribute space timing in HCLK cycles"/>
    <!-- End NAND Flash 1 RefParameters -->
    <!-- Begin NOR Flash 1 RefModes -->

    <RefMode Name="HAL_NOR_SRAM1_Init" Comment="NOR SRAM Init" Abstract="true">
      <Parameter Name="NORSRAM_Instance">
        <PossibleValue>FSMC_NORSRAM_DEVICE</PossibleValue>
      </Parameter>
      <Parameter Name="Extended"/>
      <Parameter Name="MemoryType1"/>
      <Parameter Name="NSBank1"/>
      <Parameter Name="DataAddressMux1"/>
      <Parameter Name="NSMemoryDataWidth1"/>
      <Parameter Name="WriteOperation1"/>
      <Parameter Name="ExtendedMode1"/>
      <Parameter Name="BurstAccessMode1"/>
      <Parameter Name="WriteBurst1"/>
      <Parameter Name="WaitSignal1"/>
      <Parameter Name="WaitSignalActive1"/>
      <Parameter Name="AsynchronousWait1"/>
      <Parameter Name="WaitSignalPolarity1"/>
      <Parameter Name="WrapMode1"/>
      <Parameter Name="AddressSetupTime1"/>
      <Parameter Name="AddressHoldTime1"/>
      <Parameter Name="DataSetupTime1"/>
      <Parameter Name="BusTurnAroundDuration1"/>
      <Parameter Name="CLKDivision1"/>
      <Parameter Name="DataLatency1"/>
      <Parameter Name="AccessMode1"/>
      <Parameter Name="ExtendedAddressSetupTime1"/>
      <Parameter Name="ExtendedAddressHoldTime1"/>
      <Parameter Name="ExtendedDataSetupTime1"/>
      <Parameter Name="ExtendedBusTurnAroundDuration1"/>
      <Parameter Name="ExtendedCLKDivision1"/>
      <Parameter Name="ExtendedDataLatency1"/>
      <Parameter Name="ExtendedAccessMode1"/>
      <Parameter Name="NSCoherentPinout1"/>
   </RefMode>
   <RefMode Name="HAL_NOR1_Init" Comment="NOR Init" Abstract="true" BaseMode="HAL_NOR_SRAM1_Init">
      <ConfigForMode>HAL_NOR1_Init</ConfigForMode>
   </RefMode>
   <RefMode Name="HAL_SRAM1_Init" Comment="SRAM Init" Abstract="true" BaseMode="HAL_NOR_SRAM1_Init">
      <ConfigForMode>HAL_SRAM1_Init</ConfigForMode>
   </RefMode>
   <RefMode Name="NorPsramChipSelect1_1" Comment="NOR/PSRAM Chip Select 1" BaseMode="HAL_NOR_SRAM1_Init"/>
   <RefMode Name="NorPsramChipSelect2_1" Comment="NOR/PSRAM Chip Select 2" BaseMode="HAL_NOR_SRAM1_Init"/>
   <RefMode Name="NorPsramChipSelect3_1" Comment="NOR/PSRAM Chip Select 3" BaseMode="HAL_NOR_SRAM1_Init"/>
   <RefMode Name="NorPsramChipSelect4_1" Comment="NOR/PSRAM Chip Select 4" BaseMode="HAL_NOR_SRAM1_Init"/>
   <RefMode Name="Lcd1" Comment="Lcd Interface" BaseMode="HAL_SRAM1_Init" HalMode="SRAM"/>
   <!-- Begin MUX_MEMORY RefModes -->
   <RefMode Name="MuxedNorFlash1" Comment="Muxed NOR Flash" BaseMode="HAL_NOR1_Init" HalMode="NOR"/>
   <RefMode Name="MuxedPsram1" Comment="Muxed Psram" BaseMode="HAL_SRAM1_Init" HalMode="SRAM"/>
   <!-- End MUX_MEMORY RefModes -->
   <!-- End NOR Flash 1 RefModes -->
   <!-- Begin NAND Flash 1 RefModes -->

   <RefMode Name="HAL_NAND1_Init" Comment="NAND Init" Abstract="true">
      <ConfigForMode>HAL_NAND1_Init</ConfigForMode>
      <Parameter Name="NAND_Instance">
        <PossibleValue>FSMC_NAND_DEVICE</PossibleValue>
      </Parameter>
      <Parameter Name="NandBank1"/>
      <Parameter Name="NandMemoryDataWidth1"/>
      <Parameter Name="Waitfeature1"/>
      <Parameter Name="EccComputation1"/>
      <Parameter Name="ECCPageSize1"/>
      <Parameter Name="TCLRSetupTime1"/>
      <Parameter Name="TARSetupTime1"/>
      <Parameter Name="CommonSpaceSetupTime1"/>
      <Parameter Name="CommonSpaceWaitSetupTime1"/>
      <Parameter Name="CommonSpaceHoldSetupTime1"/>
      <Parameter Name="CommonSpaceHiZSetupTime1"/>
      <Parameter Name="AttributeSpaceSetupTime1"/>
      <Parameter Name="AttributeSpaceWaitSetupTime1"/>
      <Parameter Name="AttributeSpaceHoldSetupTime1"/>
      <Parameter Name="AttributeSpaceHiZSetupTime1"/>
      <Parameter Name="NandPageSize1"/>
      <Parameter Name="NandSpareAreaSize1"/>
      <Parameter Name="NandBlockSize1"/>
      <Parameter Name="NandBlockNbr1"/>
      <Parameter Name="NandPlaneNbr1"/>
      <Parameter Name="NandPlaneSize1"/>
      <Parameter Name="NandExtraCommandEnable1"/>
      <Parameter Name="NandCoherentPinout1"/>
   </RefMode>
   <RefMode Name="NandChipSelect2_1" Comment="NAND Flash" BaseMode="HAL_NAND1_Init" HalMode="NAND">
       <Parameter Name="NandBank1">
         <PossibleValue>FSMC_NAND_BANK2</PossibleValue>
       </Parameter>
   </RefMode>
   <RefMode Name="NandChipSelect3_1" Comment="NAND Flash" BaseMode="HAL_NAND1_Init" HalMode="NAND">
       <Parameter Name="NandBank1">
         <PossibleValue>FSMC_NAND_BANK3</PossibleValue>
       </Parameter>
   </RefMode>
   <!-- End NAND Flash 1 RefModes -->
  <!-- Begin ModeLogicOperator -->

  <ModeLogicOperator Name="XOR">
    <!-- Begin Modes -->
    <!-- Begin NOR Flash 1 Modes -->
    <Mode Name="NorFlash1" UserName="NOR Flash/PSRAM/SRAM/ROM/LCD 1">
      <ModeLogicOperator Name="OR">
        <Mode Name="NorPsramChipSelect1" UserName="Chip Select">
          <ModeLogicOperator Name="XOR">
            <Mode Name="NorPsramChipSelect1_1" UserName="NE1" ShrinkName="NE1 Chip Select">
              <SignalLogicalOp Name="AND">
                <Signal Name="NE1"/>
              </SignalLogicalOp>
              <Semaphore>NorPsramChipSelect1_1</Semaphore>
              <Semaphore>NE1NorPsramChipSelect</Semaphore>
            </Mode>
            <Mode Name="NorPsramChipSelect2_1" UserName="NE2" ShrinkName="NE2 Chip Select">
              <SignalLogicalOp Name="AND">
                <Signal Name="NE2"/>
              </SignalLogicalOp>
              <Semaphore>NorPsramChipSelect2_1</Semaphore>
            </Mode>
            <Mode Name="NorPsramChipSelect3_1" UserName="NE3" ShrinkName="NE3 Chip Select">
              <SignalLogicalOp Name="AND">
                <Signal Name="NE3"/>
              </SignalLogicalOp>
              <Semaphore>NorPsramChipSelect3_1</Semaphore>
            </Mode>
            <Mode Name="NorPsramChipSelect4_1" UserName="NE4" ShrinkName="NE4 Chip Select">
              <SignalLogicalOp Name="AND">
                <Signal Name="NE4"/>
              </SignalLogicalOp>
              <Semaphore>NorPsramChipSelect4_1</Semaphore>
            </Mode>
          </ModeLogicOperator>
          <Semaphore>NorPsramChipSelect1</Semaphore>
        </Mode>
        <Mode Name="MemoryType1" UserName="Memory type">
          <ModeLogicOperator Name="XOR">
            <Mode Name="Fake1" UserName="Fake">
              <SignalLogicalOp Name="AND">
                <Signal Name="FAKE"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="Lcd1" UserName="LCD Interface">
              <SignalLogicalOp Name="AND">
                <Signal Name="NOE"/>
                <Signal Name="NWE"/>
              </SignalLogicalOp>
              <Semaphore>Lcd1</Semaphore>
            </Mode>
            <!-- Begin MUX_MEMORY Modes -->
            <Mode Name="MuxedNorFlash1" UserName="Muxed NOR Flash">
              <SignalLogicalOp Name="AND">
                <Signal Name="NOE"/>
                <Signal Name="NWE"/>
              </SignalLogicalOp>
              <Semaphore>MuxedNorFlash1</Semaphore>
            </Mode>
            <Mode Name="MuxedPsram1" UserName="Muxed PSRAM">
              <SignalLogicalOp Name="AND">
                <Signal Name="NOE"/>
                <Signal Name="NWE"/>
              </SignalLogicalOp>
              <Semaphore>MuxedPsram1</Semaphore>
            </Mode>
            <!-- End MUX_MEMORY Modes -->
          </ModeLogicOperator>
          <Condition Expression="NorPsramChipSelect1" Diagnostic="Chip Select disabled"/>
        </Mode>
        <Mode Name="OneBitAddress1" UserName="LCD Register Select">
          <ModeLogicOperator Name="XOR">
            <Mode Name="A0_1" UserName="A0" ShrinkName="A0 Register Select">
              <SignalLogicalOp Name="AND">
                <Signal Name="A0"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A1_1" UserName="A1">
              <SignalLogicalOp Name="AND">
                <Signal Name="A1"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A2_1" UserName="A2">
              <SignalLogicalOp Name="AND">
                <Signal Name="A2"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A3_1" UserName="A3">
              <SignalLogicalOp Name="AND">
                <Signal Name="A3"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A4_1" UserName="A4">
              <SignalLogicalOp Name="AND">
                <Signal Name="A4"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A5_1" UserName="A5">
              <SignalLogicalOp Name="AND">
                <Signal Name="A5"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A6_1" UserName="A6">
              <SignalLogicalOp Name="AND">
                <Signal Name="A6"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A7_1" UserName="A7">
              <SignalLogicalOp Name="AND">
                <Signal Name="A7"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A8_1" UserName="A8">
              <SignalLogicalOp Name="AND">
                <Signal Name="A8"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A9_1" UserName="A9">
              <SignalLogicalOp Name="AND">
                <Signal Name="A9"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A10_1" UserName="A10">
              <SignalLogicalOp Name="AND">
                <Signal Name="A10"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A11_1" UserName="A11">
              <SignalLogicalOp Name="AND">
                <Signal Name="A11"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A12_1" UserName="A12">
              <SignalLogicalOp Name="AND">
                <Signal Name="A12"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A13_1" UserName="A13">
              <SignalLogicalOp Name="AND">
                <Signal Name="A13"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A14_1" UserName="A14">
              <SignalLogicalOp Name="AND">
                <Signal Name="A14"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A15_1" UserName="A15">
              <SignalLogicalOp Name="AND">
                <Signal Name="A15"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A16_1" UserName="A16">
              <SignalLogicalOp Name="AND">
                <Signal Name="A16"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A17_1" UserName="A17">
              <SignalLogicalOp Name="AND">
                <Signal Name="A17"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A18_1" UserName="A18">
              <SignalLogicalOp Name="AND">
                <Signal Name="A18"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A19_1" UserName="A19">
              <SignalLogicalOp Name="AND">
                <Signal Name="A19"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A20_1" UserName="A20">
              <SignalLogicalOp Name="AND">
                <Signal Name="A20"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A21_1" UserName="A21">
              <SignalLogicalOp Name="AND">
                <Signal Name="A21"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A22_1" UserName="A22">
              <SignalLogicalOp Name="AND">
                <Signal Name="A22"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A23_1" UserName="A23">
              <SignalLogicalOp Name="AND">
                <Signal Name="A23"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A24_1" UserName="A24">
              <SignalLogicalOp Name="AND">
                <Signal Name="A24"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="A25_1" UserName="A25">
              <SignalLogicalOp Name="AND">
                <Signal Name="A25"/>
              </SignalLogicalOp>
              <Semaphore>A25LcdUsed_1</Semaphore>
            </Mode>
          </ModeLogicOperator>
          <Semaphore>OneBitAddress1</Semaphore>
          <Condition Expression="Lcd1" Diagnostic="Only available for LCD Interface"/>
        </Mode>
        <Mode Name="Data1" UserName="Data">
          <SignalLogicalOp Name="AND">
            <Signal Name="D0"/>
            <Signal Name="D1"/>
            <Signal Name="D2"/>
            <Signal Name="D3"/>
            <Signal Name="D4"/>
            <Signal Name="D5"/>
            <Signal Name="D6"/>
            <Signal Name="D7"/>
          </SignalLogicalOp>
          <ModeLogicOperator Name="XOR">
            <Mode Name="8b-d1" UserName="8 bits" ShrinkName="8-bit data">
              <Semaphore>_8_bit_data1</Semaphore>
            </Mode>
            <Mode Name="16b-d1" UserName="16 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="D8"/>
                <Signal Name="D9"/>
                <Signal Name="D10"/>
                <Signal Name="D11"/>
                <Signal Name="D12"/>
                <Signal Name="D13"/>
                <Signal Name="D14"/>
                <Signal Name="D15"/>
              </SignalLogicalOp>
              <Semaphore>_16_bit_data1</Semaphore>
              <Condition Expression="!A25LcdUsed_1" Diagnostic="16 bits LCD Interface is not compatible with the use of A25"/>
            </Mode>
          </ModeLogicOperator>
          <Semaphore>Data1</Semaphore>
          <Condition Expression="OneBitAddress1" Diagnostic="LCD Register Select disabled"/>
        </Mode>
        <!-- Begin MUX_ADDRESS Modes -->
        <Mode Name="NorPsramDataAddress1" UserName="Data/Address">
          <ModeLogicOperator Name="LIST">
            <Mode Name="8b-da1" UserName="8 bits" ShrinkName="8-bit data/address">
              <SignalLogicalOp Name="AND">
                <Signal Name="DA0"/>
                <Signal Name="DA1"/>
                <Signal Name="DA2"/>
                <Signal Name="DA3"/>
                <Signal Name="DA4"/>
                <Signal Name="DA5"/>
                <Signal Name="DA6"/>
                <Signal Name="DA7"/>
              </SignalLogicalOp>
              <Semaphore>_8b_da1</Semaphore>
            </Mode>
            <Mode Name="9b-da1" UserName="9 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="DA8"/>
              </SignalLogicalOp>
              <Semaphore>_9b_da1</Semaphore>
            </Mode>
            <Mode Name="10b-da1" UserName="10 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="DA9"/>
              </SignalLogicalOp>
              <Semaphore>_10b_da1</Semaphore>
            </Mode>
            <Mode Name="11b-da1" UserName="11 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="DA10"/>
              </SignalLogicalOp>
              <Semaphore>_11b_da1</Semaphore>
            </Mode>
            <Mode Name="12b-da1" UserName="12 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="DA11"/>
              </SignalLogicalOp>
              <Semaphore>_12b_da1</Semaphore>
            </Mode>
            <Mode Name="13b-da1" UserName="13 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="DA12"/>
              </SignalLogicalOp>
              <Semaphore>_13b_da1</Semaphore>
            </Mode>
            <Mode Name="14b-da1" UserName="14 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="DA13"/>
              </SignalLogicalOp>
              <Semaphore>_14b_da1</Semaphore>
            </Mode>
            <Mode Name="15b-da1" UserName="15 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="DA14"/>
              </SignalLogicalOp>
              <Semaphore>_15b_da1</Semaphore>
            </Mode>
            <Mode Name="16b-da1" UserName="16 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="DA15"/>
              </SignalLogicalOp>
              <Semaphore>_16b_da1</Semaphore>
            </Mode>
            <Mode Name="17b-da1" UserName="17 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="A16"/>
              </SignalLogicalOp>
              <Semaphore>_17b_da1</Semaphore>
            </Mode>
            <Mode Name="18b-da1" UserName="18 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="A17"/>
              </SignalLogicalOp>
              <Semaphore>_18b_da1</Semaphore>
            </Mode>
            <Mode Name="19b-da1" UserName="19 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="A18"/>
              </SignalLogicalOp>
              <Semaphore>_19b_da1</Semaphore>
            </Mode>
            <Mode Name="20b-da1" UserName="20 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="A19"/>
              </SignalLogicalOp>
              <Semaphore>_20b_da1</Semaphore>
            </Mode>
            <Mode Name="21b-da1" UserName="21 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="A20"/>
              </SignalLogicalOp>
              <Semaphore>_21b_da1</Semaphore>
            </Mode>
            <Mode Name="22b-da1" UserName="22 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="A21"/>
              </SignalLogicalOp>
              <Semaphore>_22b_da1</Semaphore>
            </Mode>
            <Mode Name="23b-da1" UserName="23 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="A22"/>
              </SignalLogicalOp>
              <Semaphore>_23b_da1</Semaphore>
            </Mode>
            <Mode Name="24b-da1" UserName="24 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="A23"/>
              </SignalLogicalOp>
              <Semaphore>_24b_da1</Semaphore>
            </Mode>
            <Mode Name="25b-da1" UserName="25 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="A24"/>
              </SignalLogicalOp>
              <Semaphore>_25b_da1</Semaphore>
            </Mode>
            <Mode Name="26b-da1" UserName="26 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="A25"/>
              </SignalLogicalOp>
              <Semaphore>_26b_da1</Semaphore>
            </Mode>
          </ModeLogicOperator>
          <Semaphore>NorPsramDataAddress1</Semaphore>
          <Condition Expression="MuxedNorFlash1|MuxedPsram1" Diagnostic="Memory type should be multiplexed NOR Flash or multiplexed PSRAM"/>
        </Mode>
        <!-- End MUX_ADDRESS Modes -->
        <!-- Begin OTHER_MEMORY_FEATURE Modes -->
        <Mode Name="NorPsramClock1" UserName="Clock">
          <SignalLogicalOp Name="AND">
            <Signal Name="CLK"/>
          </SignalLogicalOp>
          <ModeLogicOperator Name="XOR">
            <Mode Name="BurstRead1" UserName="Burst Read">
                <Semaphore>BurstReadMode1</Semaphore>
            </Mode>
            <Mode Name="BurstWrite1" UserName="Burst Write">
                <Semaphore>BurstWriteMode1</Semaphore>
                <Condition Expression="Psram1|MuxedPsram1" Diagnostic="Only for PSRAM"/>
            </Mode>
            <Mode Name="BurstReadWrite1" UserName="Burst Read Write">
                <Semaphore>BurstReadMode1</Semaphore>
                <Semaphore>BurstWriteMode1</Semaphore>
                <Condition Expression="Psram1|MuxedPsram1" Diagnostic="Only for PSRAM"/>
            </Mode>
          </ModeLogicOperator>
          <Semaphore>NorPsramClock1</Semaphore>
          <Condition Expression="NorFlash1|MuxedNorFlash1|Psram1|MuxedPsram1" Diagnostic="Only for NOR Flash and PSRAM"/>
        </Mode>
        <Mode Name="AddressValid1" UserName="Address valid">
          <ModeLogicOperator Name="OR">
            <Mode Name="AddressValid1" UserName="Address valid">
              <SignalLogicalOp Name="AND">
                <Signal Name="NL"/>
              </SignalLogicalOp>
            </Mode>
          </ModeLogicOperator>
          <Semaphore>AddressValid1</Semaphore>
          <Condition Expression="NorFlash1|MuxedNorFlash1|Psram1|MuxedPsram1" Diagnostic="Only for NOR Flash and PSRAM"/>
        </Mode>
        <Mode Name="NorPsramWait1" UserName="Wait">
          <SignalLogicalOp Name="AND">
            <Signal Name="NWAIT"/>
          </SignalLogicalOp>
          <ModeLogicOperator Name="XOR">
            <Mode Name="AsynchronousWait1" UserName="Asynchronous" ShrinkName="Asynchronous wait">
              <Semaphore>AsynchronousWaitMode1</Semaphore>
              <Condition Expression="!NorPsramClock1|((!BurstReadMode1|!BurstWriteMode1)&amp;(Psram1|MuxedPsram1))" Diagnostic="Only for asynchronous accesses"/>
            </Mode>
            <!-- No CLK pin on DIE461 WLCSP100 -->
            <Mode Name="SynchronousWait1" UserName="Synchronous" RemoveCondition="DIE461&amp;WLCSP100">
              <Semaphore>SynchronousWaitMode1</Semaphore>
              <Condition Expression="NorPsramClock1" Diagnostic="Only for synchronous accesses"/>
            </Mode>
            <Mode Name="AsynchronousSynchronousWait1" UserName="Asynchronous Synchronous" RemoveCondition="DIE461&amp;WLCSP100">
              <Semaphore>AsynchronousWaitMode1</Semaphore>
              <Semaphore>SynchronousWaitMode1</Semaphore>
              <Condition Expression="NorPsramClock1&amp;(!BurstReadMode1|!BurstWriteMode1)&amp;(Psram1|MuxedPsram1)" Diagnostic="Only for PSRAM with either asynchronous read and synchronous write accesses or synchronous read and asynchronous write accesses"/>
            </Mode>
          </ModeLogicOperator>
          <Semaphore>NorPsramWait1</Semaphore>
          <Condition Expression="NorFlash1|MuxedNorFlash1|Psram1|MuxedPsram1|Sram1" Diagnostic="Only for NOR Flash, PSRAM and SRAM"/>
        </Mode>
        <Mode Name="Psram/Sram/ByteEnable1" UserName="Byte enable">
          <ModeLogicOperator Name="XOR">
            <Mode Name="2ByteEnable1" UserName="16-bit byte enable"><!-- 2 bytes -->
              <SignalLogicalOp Name="AND">
                <Signal Name="NBL0"/>
                <Signal Name="NBL1"/>
              </SignalLogicalOp>
              <Condition Expression="_16_bit_data1|_16b_da1|_17b_da1|_18b_da1|_19b_da1|_20b_da1|_21b_da1|_22b_da1|_23b_da1|_24b_da1|_25b_da1|_26b_da1" Diagnostic="Only for 16-bit PSRAM and SRAM"/>
            </Mode>
          </ModeLogicOperator>
          <Condition Expression="((Psram1|Sram1)&amp;_16_bit_data1)|(MuxedPsram1&amp;(_16b_da1|_17b_da1|_18b_da1|_19b_da1|_20b_da1|_21b_da1|_22b_da1|_23b_da1|_24b_da1|_25b_da1|_26b_da1))" Diagnostic="Only for 16-bit PSRAM and SRAM"/>
        </Mode>
        <!-- End OTHER_MEMORY_FEATURE Modes -->
      </ModeLogicOperator>
    </Mode>
    <!-- End NOR Flash 1 Modes -->
    <!-- Begin NAND Flash 1 Modes -->
    <Mode Name="NandFlash1" UserName="NAND Flash 1">
      <ModeLogicOperator Name="XOR">
        <Mode Name="NandChipSelect1" UserName="Chip Select">
          <ModeLogicOperator Name="XOR">
            <Mode Name="NandChipSelect2_1" UserName="NCE2" ShrinkName="NCE2 Chip Select">
              <SignalLogicalOp Name="AND">
                <Signal Name="NCE2"/>
              </SignalLogicalOp>
              <Semaphore>NandChipSelect2_1</Semaphore>
            </Mode>
            <Mode Name="NandChipSelect3_1" UserName="NCE3" ShrinkName="NCE3 Chip Select">
              <SignalLogicalOp Name="AND">
                <Signal Name="NCE3"/>
              </SignalLogicalOp>
              <Semaphore>NandChipSelect3_1</Semaphore>
            </Mode>
          </ModeLogicOperator>
          <Semaphore>NandFlash1</Semaphore>
        </Mode>
        <Mode Name="NandDataAddressMux1" UserName="Data/Address">
          <SignalLogicalOp Name="AND">
            <Signal Name="D0"/>
            <Signal Name="D1"/>
            <Signal Name="D2"/>
            <Signal Name="D3"/>
            <Signal Name="D4"/>
            <Signal Name="D5"/>
            <Signal Name="D6"/>
            <Signal Name="D7"/>
            <Signal Name="ALE"/>
            <Signal Name="CLE"/>
            <Signal Name="NOE"/>
            <Signal Name="NWE"/>
          </SignalLogicalOp>
          <ModeLogicOperator Name="XOR">
            <Mode Name="8b-dmux1" UserName="8 bits">
              <Semaphore>_8b_dmux1</Semaphore>
            </Mode>
            <Mode Name="16b-dmux1" UserName="16 bits">
              <SignalLogicalOp Name="AND">
                <Signal Name="D8"/>
                <Signal Name="D9"/>
                <Signal Name="D10"/>
                <Signal Name="D11"/>
                <Signal Name="D12"/>
                <Signal Name="D13"/>
                <Signal Name="D14"/>
                <Signal Name="D15"/>
              </SignalLogicalOp>
              <Semaphore>_16b_dmux1</Semaphore>
            </Mode>
          </ModeLogicOperator>
          <Semaphore>NandDataAddressMux1</Semaphore>
          <Condition Expression="NandFlash1" Diagnostic="Chip Select disabled"/>
        </Mode>
        <Mode Name="NandReadyOrBusy1" UserName="Ready or busy">
          <ModeLogicOperator Name="XOR">
            <Mode Name="Wait1" UserName="NWAIT" ShrinkName="NWAIT Ready/Busy">
              <SignalLogicalOp Name="AND">
                <Signal Name="NWAIT"/>
              </SignalLogicalOp>
            </Mode>
            <Mode Name="Interrupt21" UserName="INT2">
              <SignalLogicalOp Name="AND">
                <Signal Name="INT2"/>
              </SignalLogicalOp>
              <Condition Expression="NandChipSelect2_1" Diagnostic="Use NCE2 Chip Select"/>
            </Mode>
            <Mode Name="Interrupt31" UserName="INT3">
              <SignalLogicalOp Name="AND">
                <Signal Name="INT3"/>
              </SignalLogicalOp>
              <Condition Expression="NandChipSelect3_1" Diagnostic="Use NCE3 Chip Select"/>
            </Mode>
          </ModeLogicOperator>
          <Semaphore>NandPccWait1</Semaphore>
          <Condition Expression="NandFlash1" Diagnostic="Data/Address disabled"/>
        </Mode>
      </ModeLogicOperator>
    </Mode>
    <!-- End NAND Flash 1 Modes -->
    <!-- End Modes -->
  </ModeLogicOperator>
  <!-- End ModeLogicOperator -->

  <!-- Begin RefSignals -->
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A0"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A1"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A2"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A3"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A4"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A5"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A6"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A7"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A8"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A9"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A10"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A11"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A12"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A13"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A14"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A15"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A16"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A17"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A18"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A19"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A20"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A21"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A22"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A23"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A24"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="A25"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="ALE"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="CLE"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="CLK"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="D0"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="D1"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="D2"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="D3"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="D4"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="D5"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="D6"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="D7"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="D8"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="D9"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="D10"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="D11"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="D12"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="D13"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="D14"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="D15"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="DA0"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="DA1"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="DA2"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="DA3"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="DA4"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="DA5"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="DA6"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="DA7"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="DA8"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="DA9"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="DA10"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="DA11"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="DA12"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="DA13"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="DA14"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="DA15"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="NBL0"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="NBL1"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="NCE2"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="NE1"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="NL" ShareableGroupName="FSMC_NL"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="NOE"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="NWAIT"/>
  <RefSignal IOMode="AlternateFunctionPushPullHighSpeedDefault" Name="NWE"/>
  <!-- End RefSignals -->
</IP>
