<?xml version="1.0" encoding="UTF-8"?>
<lsccip:ip version="1.0"
    xmlns:lsccip="http://www.latticesemi.com/XMLSchema/Radiant/ip"
    xmlns:xi="http://www.w3.org/2001/XInclude">
    <lsccip:general>
        <lsccip:vendor>latticesemi.com</lsccip:vendor>
        <lsccip:library>ip</lsccip:library>
        <lsccip:name>qspi_flash_controller</lsccip:name>
        <lsccip:display_name>QSPI Flash Controller</lsccip:display_name>
        <lsccip:version>1.5.1</lsccip:version>
        <lsccip:category>Processors_Controllers_and_Peripherals</lsccip:category>
		<lsccip:type>cacheable</lsccip:type>
	    <lsccip:min_radiant_version>3.2</lsccip:min_radiant_version>
        <lsccip:min_esi_version>2022.1</lsccip:min_esi_version>
        <lsccip:supported_products>
           <lsccip:supported_family name="LIFCL"></lsccip:supported_family>
           <lsccip:supported_family name="LFD2NX">
		      <lsccip:supported_device name="LFD2NX-17"></lsccip:supported_device>
		      <lsccip:supported_device name="LFD2NX-40"></lsccip:supported_device>
		   </lsccip:supported_family>
           <lsccip:supported_family name="LFCPNX"></lsccip:supported_family>
           <lsccip:supported_family name="LFMXO5">
		      <lsccip:supported_device name="LFMXO5-25"></lsccip:supported_device>
		      <lsccip:supported_device name="LFMXO5-55T"></lsccip:supported_device>
		      <lsccip:supported_device name="LFMXO5-100T"></lsccip:supported_device>
		   </lsccip:supported_family>
           <lsccip:supported_family name="LAV-AT">
		      <lsccip:supported_device name="LAV-AT-E70"></lsccip:supported_device>
		      <lsccip:supported_device name="LAV-AT-G70"></lsccip:supported_device>
		      <lsccip:supported_device name="LAV-AT-X70"></lsccip:supported_device>
		   </lsccip:supported_family>
		   <lsccip:supported_family name="LN2-CT"></lsccip:supported_family>
           <lsccip:supported_family name="LN2-MH"></lsccip:supported_family>
        </lsccip:supported_products>
        <lsccip:supported_platforms>
            <lsccip:supported_platform name="esi"/>
	        <lsccip:supported_platform name="radiant" />
        </lsccip:supported_platforms>
    </lsccip:general>
    <lsccip:settings>
             <lsccip:setting              
                 id                       ="interface"
                 type                     ="input" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="string" 
                 title                    ="Main Interface" 
                 default                  ="AHB-L" 
                 options                  ="['AHB-L', 'AXI4']" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Interface Settings"
             />
			 
             <lsccip:setting
                 id                       ="INTERFACE" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Main interface" 
                 default                  ="0" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="0 if (interface == 'AHB-L') else 1" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Interface Settings"
             />
			 
             <lsccip:setting              
                 id                       ="enable_option_axi4l_for_register_access" 
                 type                     ="input" 
                 value_type               ="bool" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 title                    ="Enable AXI4-L Interface(for register access only)" 
                 editable                 ="False" 
                 value_expr               ="True if (enable_flash_address_mapping == True) else False" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Interface Settings"
             />
			 
             <lsccip:setting 
                 id                       ="ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Enable AXI4L Interface(optional for register access only)" 
                 default                  ="0" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="1 if (enable_option_axi4l_for_register_access == True) else 0" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Interface Settings"
             />
			 
             <lsccip:setting              
                 id                       = "INTERFACE_DATA_WIDTH"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 title                    = "Interface Data Width"
                 default                  = "32"
				 editable                 = "False"
                 options                  = "[32]"
                 config_groups            = "'SystemBuilder'"
                 group1                   = "Interface Settings"
             />
             
             <lsccip:setting              
                 id                       = "AXI_ID_WIDTH"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 title                    = "AXI4 ID Width"
                 default                  = "4"
                 value_range              = "(0,32)"
                 editable                 = "True if(interface == 'AXI4') else False"
                 config_groups            = "'SystemBuilder'"
                 group1                   = "Interface Settings"
             />
             
             <lsccip:setting 
                 id                       ="data_endianness"
                 type                     ="input" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="string" 
                 title                    ="Data Endianness" 
                 default                  ="Little-endian" 
                 options                  ="['Little-endian', 'Big-endian']" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Interface Settings"
             />
			 
             <lsccip:setting
                 id                       ="DATA_ENDIANNESS" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Data Endianness" 
                 default                  ="0" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="0 if (data_endianness == 'Little-endian') else 1" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Interface Settings"
             />
			 
             <lsccip:setting 
                 id                       = "PMI_FAMILY"
                 type                     = "param"
                 default                  = "LFCPNX"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "string"
                 title                    = "PMI FIFO Family"
                 value_expr               = "get_device_name(1)"
                 editable                 = "False"
                 group1                   = "Interface Settings"
                 hidden                   = "True"
             />
			 
             <lsccip:setting              
                 id                       ="enable_io_primitive" 
                 type                     ="input" 
                 value_type               ="bool" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 title                    ="Enable IO Buffer" 
                 default                  ="False"
                 editable                 ="True" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="IO Primitive"
             />
			 
             <lsccip:setting 
                 id                       ="ENABLE_IO_PRIMITIVE" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Enable IO Buffer" 
                 default                  ="0" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="1 if (enable_io_primitive == True) else 0" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="IO Primitive"
             />
			 
             <lsccip:setting 
                 id                       ="supported_protocol"
                 type                     ="input" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="string" 
                 title                    ="Supported Protocol" 
                 default                  ="Standard" 
                 options                  ="['Standard', 'Dual', 'Quad']" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="SPI Configuration and Transfer Settings"
             /> 
			 
             <lsccip:setting              
                 id                       ="SUPPORTED_PROTOCOL" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="supported protocol" 
                 default                  ="0" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="0 if (supported_protocol == 'Standard') else (1 if (supported_protocol == 'Dual') else 2)" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="SPI Configuration and Transfer Settings"
             /> 
			 
             <lsccip:setting              
                 id                       = "NUMBER_OF_SLAVE_SELECT_LINES"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 title                    = "Number of SPI Target"
                 default                  = "1"
                 value_range              = "(1,32)"
                 config_groups            = "'SystemBuilder'"
                 group1                   = "SPI Configuration and Transfer Settings"
             /> 
			 
             <lsccip:setting
                 id                       = "CLOCK_MODE"
                 type                     = "input"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 title                    = "Clock Mode"
                 default                  = "0"
                 options                  = "[0,3]"
                 config_groups            = "'SystemBuilder'"
                 group1                   = "SPI Configuration and Transfer Settings"
             />
			 
             <lsccip:setting
                 id                       = "SPI_CLOCK_POLARITY"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 title                    = "SPI Clock Polarity"
                 default                  = "0"
                 value_expr               = "0 if CLOCK_MODE==0 else 1"
                 editable                 = "False" 
                 hidden                   = "True"
                 config_groups            = "'SystemBuilder'"
                 group1                   = "SPI Configuration and Transfer Settings"
             /> 
             
             <lsccip:setting              
                 id                       = "SPI_CLOCK_PHASE"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 title                    = "SPI Clock Phase"
                 default                  = "0"
                 value_expr               = "0 if CLOCK_MODE==0 else 1"
                 editable                 = "False" 
                 hidden                   = "True"
                 config_groups            = "'SystemBuilder'"
                 group1                   = "SPI Configuration and Transfer Settings"
             />   
			 
             <lsccip:setting              
                 id                       ="first_transmitted_bit"
                 type                     ="input" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="string" 
                 title                    ="First Transmitted Bit" 
                 default                  ="MSB" 
                 options                  ="['MSB', 'LSB']" 
                 editable                 ="True if(SUPPORTED_PROTOCOL == 0) else False" 
                 hidden                   ="False"
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="SPI Configuration and Transfer Settings"
             />
			 
             <lsccip:setting
                 id                       ="FIRST_TRANSMITTED_BIT" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="First Transmitted Bit" 
                 default                  ="0" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="0 if (first_transmitted_bit == 'MSB') else 1" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="SPI Configuration and Transfer Settings"
             />  
			 
             <lsccip:setting              
                 id                       ="enable_back_to_back_transfer" 
                 type                     ="input" 
                 value_type               ="bool" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 title                    ="Enable Back To Back Transfer" 
                 default                  ="False" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="SPI Configuration and Transfer Settings"
             />
			 
             <lsccip:setting 
                 id                       ="ENABLE_BACK_TO_BACK_TRANSFER" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Enable Back To Back Transfer" 
                 default                  ="0" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="1 if (enable_back_to_back_transfer == True) else 0" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="SPI Configuration and Transfer Settings"
             />
             
             <lsccip:setting              
                 id                       = "DUMMY_CYCLES"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 title                    = "Dummy Cycles"
                 default                  = "8"
                 value_range              = "(0,32)"
                 hidden                   = "True"
                 config_groups            = "'SystemBuilder'"
                 group1                   = "SPI Configuration and Transfer Settings"
             />
             
             <lsccip:setting              
                 id                       = "cs_high_time"
                 type                     = "input"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "string"
                 title                    = "Chip Select High Time (ns)"
                 default                  = "30"
                 options                  = "['30','40','50','60','70','80','90','100']"
                 hidden                   = "False"
                 config_groups            = "'SystemBuilder'"
                 group1                   = "SPI Configuration and Transfer Settings"
             />
             
             <lsccip:setting              
                 id                       = "CS_HIGH_TIME"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 title                    = "Chip Select High Time(ns)"
                 default                  = "3"
                 value_expr               = "get_cs_high_time(cs_high_time,SYSTEM_CLOCK_FREQUENCY)"
                 hidden                   = "True"
                 config_groups            = "'SystemBuilder'"
                 group1                   = "SPI Configuration and Transfer Settings"
             />
             
             <lsccip:setting              
                 id                       = "MINIMUM_IDLE_TIME_BETWEEN_TRANSFER"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 title                    = "Minimum Idle Time Between Transfer(Number of SCK)"
                 default                  = "0"
                 value_range              = "(0,7)"
                 hidden                   = "False if(ENABLE_BACK_TO_BACK_TRANSFER == 1) else True"
                 config_groups            = "'SystemBuilder'"
                 group1                   = "SPI Configuration and Transfer Settings"
             /> 
			 
             <lsccip:setting              
                 id                       ="chip_select_behavior"
                 type                     ="input" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="string" 
                 title                    ="Chip Select Behavior" 
                 default                  ="De-assert" 
                 options                  ="['Stay_asserted', 'De-assert']" 
                 hidden                   = "False if(ENABLE_BACK_TO_BACK_TRANSFER == 1) else True"
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="SPI Configuration and Transfer Settings"
             />
			 
             <lsccip:setting
                 id                       ="CHIP_SELECT_BEHAVIOR" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Chip Select Behavior" 
                 default                  ="1" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="1 if (chip_select_behavior == 'Stay_asserted') else 0" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="SPI Configuration and Transfer Settings"
             />
             
             <lsccip:setting
                 id                       = "SYSTEM_CLOCK_FREQUENCY"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 title                    = "System Clock Frequency (MHz)"
                 default                  = "100"
                 value_range              = "(1,200)"
                 config_groups            = "'SystemBuilder'"
                 group1                   = "Clock Frequency Settings"
             />
			 
             <lsccip:setting
                 id                       = "INTERNAL_CLOCK_FREQUENCY"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 editable                 ="False" 
                 title                    = "Internal Clock Frequency (MHz)"
                 value_expr               = "get_internal_clock_freq(SYSTEM_CLOCK_FREQUENCY)"
                 config_groups            = "'SystemBuilder'"
                 group1                   = "Clock Frequency Settings"
             />    
			 
             <lsccip:setting
                 id                       = "SPI_CLOCK_FREQUENCY_DIVIDER"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 title                    = "SPI Clock Frequency Divider"
                 default                  = "2"
                 options                  = "[2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62]"
                 config_groups            = "'SystemBuilder'"
                 group1                   = "Clock Frequency Settings"
             />
			 
             <lsccip:setting
                 id                       = "SPI_CLOCK_FREQUENCY"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 editable                 ="False"
                 title                    = "SPI Clock Frequency (MHz)"
                 value_expr               = "get_spi_clock_freq(SYSTEM_CLOCK_FREQUENCY , SPI_CLOCK_FREQUENCY_DIVIDER )"
                 config_groups            = "'SystemBuilder'"
                 group1                   = "Clock Frequency Settings"
             /> 
			 
             <lsccip:setting              
                 id                       ="enable_transmit_fifo" 
                 type                     ="input" 
                 value_type               ="bool" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 title                    ="Enable Transmit FIFO" 
                 default                  ="False"
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Transmit FIFO Configuration"
             />
			 
             <lsccip:setting 
                 id                       ="ENABLE_TRANSMIT_FIFO" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Enable Transmit FIFO" 
                 default                  ="0" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="1 if (enable_transmit_fifo == True) else 0" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Transmit FIFO Configuration"
             /> 
			 
             <lsccip:setting
                 id                       = "ADDRESS_DEPTH_TX"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 title                    = "Address Depth"
                 default                  = "128"
                 options                  = "[16, 32, 64, 128]"
                 hidden                   = "False if(ENABLE_TRANSMIT_FIFO == 1) else True"                 
                 config_groups            = "'SystemBuilder'"
                 group1                   = "Transmit FIFO Configuration"
             /> 

             <lsccip:setting              
                 id                       ="enable_receive_fifo" 
                 type                     ="input" 
                 value_type               ="bool" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 title                    ="Enable Receive FIFO" 
                 default                  ="False"
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Receive FIFO Configuration"
             />
			 
             <lsccip:setting 
                 id                       ="ENABLE_RECEIVE_FIFO" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Enable Reveive FIFO" 
                 default                  ="0" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="1 if (enable_receive_fifo == True) else 0" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Receive FIFO Configuration"
             /> 
			 
             <lsccip:setting
                 id                       = "ADDRESS_DEPTH_RX"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 title                    = "Address Depth"
                 default                  = "512"
                 options                  = "[16, 32, 64, 128, 256, 512]"
                 hidden                   = "False if(ENABLE_RECEIVE_FIFO == 1) else True"                 
                 config_groups            = "'SystemBuilder'"
                 group1                   = "Receive FIFO Configuration"
             />  
			 
             <lsccip:setting              
                 id                       ="enable_flash_address_mapping" 
                 type                     ="input" 
                 value_type               ="bool" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 title                    ="Enable Flash Address Mapping" 
                 default                  ="False" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
			 
             <lsccip:setting 
                 id                       ="ENABLE_FLASH_ADDRESS_MAPPING" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Enable Flash Address Mapping" 
                 default                  ="0" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="1 if (enable_flash_address_mapping == True) else 0" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
			 
             <lsccip:setting 
                 id                       ="REGISTER_BLOCK_SIZE" 
                 type                     ="input" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Register Space Size (KB)" 
                 default                  ="1" 
                 editable                 ="False" 
                 hidden                   ="False if(ENABLE_FLASH_ADDRESS_MAPPING == 1) else True" 
                 value_expr               ="1" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
			 
             <lsccip:setting 
                 id                       ="REGISTER_BLOCK_BASE_ADDRESS" 
                 type                     ="input" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="string" 
                 title                    ="Register Map Base Address (Hex)" 
                 default                  ="00000000" 
                 editable                 ="True"
                 hidden                   ="False if(ENABLE_FLASH_ADDRESS_MAPPING == 1) else True"
				 drc                      ="addr_range_drc(REGISTER_BLOCK_BASE_ADDRESS,8,1)"
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
              
             <lsccip:setting
                 id                       = "MINIMUM_FLASH_ADDRESS_ALIGNMENT"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 title                    = "Minimum Flash Address Alignment (KB)"
                 editable                 = "True if (ENABLE_FLASH_ADDRESS_MAPPING == 1) else False"
                 value_expr               = "4 if (ENABLE_FLASH_ADDRESS_MAPPING == 1) else 0"
                 options                  = "get_tgt_mem_range(NUMBER_OF_SLAVE_SELECT_LINES, 1) if (ENABLE_FLASH_ADDRESS_MAPPING == 1) else [0]"
                 hidden                   = "False if(ENABLE_FLASH_ADDRESS_MAPPING == 1) else True"
                 config_groups            = "'SystemBuilder'"
                 group1                   = "Flash Address Mapping"
             /> 
			 
             <lsccip:setting
                 id                       = "MINIMUM_FLASH_ADDRESS_ALIGNMENT_MAP"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "string"
                 title                    = "Minimum Flash Address Alignment Register Value"
                 value_expr               = "get_size_flash_address_space_map(MINIMUM_FLASH_ADDRESS_ALIGNMENT, ENABLE_FLASH_ADDRESS_MAPPING)"
                 hidden                   = "True"  
                 output_formatter         = "nostr"				 
				 config_groups            = "'SystemBuilder'"
                 group1                   = "Flash Address Mapping"
             />
			 
             <lsccip:setting
                 id                       = "FLASH_MEMORY_MAP_SIZE"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "int"
                 title                    = "Flash Memory Map Size (KB)"
                 editable                 = "True if (ENABLE_FLASH_ADDRESS_MAPPING == 1) else False"
                 value_expr               = "get_tot_mem_size(MINIMUM_FLASH_ADDRESS_ALIGNMENT,NUMBER_OF_SLAVE_SELECT_LINES) if (ENABLE_FLASH_ADDRESS_MAPPING == 1) else 0"
                 options                  = "get_tgt_mem_range(NUMBER_OF_SLAVE_SELECT_LINES, 0) if (ENABLE_FLASH_ADDRESS_MAPPING == 1) else (0,0)"
                 hidden                   = "False if(ENABLE_FLASH_ADDRESS_MAPPING == 1) else True"      
				 config_groups            = "'SystemBuilder'"
                 group1                   = "Flash Address Mapping"
             />
			 
             <lsccip:setting
                 id                       = "SIZE_FLASH_ADDRESS_SPACE_MAP"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "string"
                 title                    = "Flash Memory Map Size Register Value"
                 value_expr               = "get_size_flash_address_space_map(FLASH_MEMORY_MAP_SIZE, ENABLE_FLASH_ADDRESS_MAPPING)"
                 hidden                   = "True"  
                 output_formatter         = "nostr"				 
				 config_groups            = "'SystemBuilder'"
                 group1                   = "Flash Address Mapping"
             />
             
             <lsccip:setting
                 id                       = "starting_offset_address"
                 type                     = "input"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "string"
                 title                    = "Starting Flash Address (Hex)"
                 value_expr               = "hex(0)[2:].rjust(8,'0')"
                 editable                 = "True if (ENABLE_FLASH_ADDRESS_MAPPING == 1) else False"
                 hidden                   = "False if(ENABLE_FLASH_ADDRESS_MAPPING == 1) else True"
                 drc                      = "addr_range_drc(starting_offset_address,8,MINIMUM_FLASH_ADDRESS_ALIGNMENT) if (ENABLE_FLASH_ADDRESS_MAPPING == 1) else 0"                 
                 output_formatter         = "nostr"                 
                 group1                   = "Flash Address Mapping"
             />
			 
             <lsccip:setting
                 id                       = "STARTING_OFFSET_ADDRESS"
                 type                     = "param"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 value_type               = "string"
                 title                    = "Starting Flash Address (Hex)"
                 value_expr               = "calc_hex_address(starting_offset_address)" 
                 hidden                   = "True"
				 output_formatter         = "nostr" 
                 config_groups            = "'SystemBuilder'"
                 group1                   = "Flash Address Mapping"
             />
             
             <lsccip:setting
                 id                       = "axi_address_map"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 type                     = "input"
                 value_type               = "string"
                 title                    = "AXI/AHB-L Address Map (Hex)"
                 editable                 = "True if (ENABLE_FLASH_ADDRESS_MAPPING == 1) else False"
                 value_expr               = "hex(4096)[2:].rjust(8,'0') if (ENABLE_FLASH_ADDRESS_MAPPING == 1) else hex(0)[2:].rjust(8,'0')"
                 hidden                   = "False if(ENABLE_FLASH_ADDRESS_MAPPING == 1) else True"
                 drc                      = "(addr_range_drc(axi_address_map,8,FLASH_MEMORY_MAP_SIZE) and
                                             check_addr_range_overlap(REGISTER_BLOCK_BASE_ADDRESS,1,axi_address_map,FLASH_MEMORY_MAP_SIZE)) if (ENABLE_FLASH_ADDRESS_MAPPING == 1) 
											 else 0"                
                 output_formatter         = "nostr"                 
                 config_groups            = "'SystemBuilder'"
                 group1                   = "Flash Address Mapping"
             />
             
             <lsccip:setting
                 id                       = "AXI_ADDRESS_MAP"
                 conn_mod                 = "lscc_qspi_flash_controller"
                 type                     = "param"
                 value_type               = "string"
                 title                    = "AXI/AHB-L Address Map (Hex)"
                 value_expr               = "calc_hex_address(axi_address_map)"
                 hidden                   = "True"
				 output_formatter         = "nostr" 
                 config_groups            = "'SystemBuilder'"
                 group1                   = "Flash Address Mapping"
             />
             
             <lsccip:setting              
                 id                       ="write_command_type"
                 type                     ="input" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="string" 
                 title                    ="Write Access Command" 
                 default                  ="Page Program" 
                 options                  ="['Page Program', 'Dual Input Fast Program', 
				                            'Extended Dual Input Fast Program', 
											'Quad Input Fast Program', 
											'Extended Quad Input Fast Program']" 
                 hidden                   = "False if(ENABLE_FLASH_ADDRESS_MAPPING == 1) else True"
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
             
             <lsccip:setting
                 id                       ="WRITE_ACCESS" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="string" 
                 title                    ="Write Access Channel" 
                 default                  ="'3'h0'" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="get_write_command(write_command_type)" 
				 output_formatter         ="nostr" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
             
             <lsccip:setting              
                 id                       ="read_command_type"
                 type                     ="input" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="string" 
                 title                    ="Read Access Command" 
                 default                  ="Fast Read" 
                 options                  ="['Read Data', 'Fast Read', 
				                             'Dual Output Fast Read', 
											 'Dual Input/Output Fast Read', 
											 'Quad Output Fast Read', 
											 'Quad Input/Output Fast Read']" 
                 hidden                   = "False if(ENABLE_FLASH_ADDRESS_MAPPING == 1) else True"
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
             
             <lsccip:setting
                 id                       ="READ_ACCESS" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="string" 
                 title                    ="Read Access Channel" 
                 default                  ="'3'h0'" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="get_read_command(read_command_type)"
				 output_formatter         ="nostr"  
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
             
             <lsccip:setting              
                 id                       ="flash_address_width"
                 type                     ="input" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Flash Address Width" 
                 default                  ="1" 
                 options                  ="[(24,0) , (32, 1)]" 
                 hidden                   = "False if(ENABLE_FLASH_ADDRESS_MAPPING == 1) else True"
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
             
             <lsccip:setting
                 id                       ="FLASH_ADDRESS_WIDTH" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Flash Address Width" 
                 default                  ="1" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="flash_address_width" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
             
             <lsccip:setting              
                 id                       ="command_lane_width"
                 type                     ="input" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Command Lane Width" 
                 default                  ="0" 
                 options                  ="[('x1', 0), ('x2', 1), ('x4', 2)]"
                 hidden                   = "False if(ENABLE_FLASH_ADDRESS_MAPPING == 1) else True"
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
             
             <lsccip:setting
                 id                       ="COMMAND_LANE_WIDTH" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Command Lane Width" 
                 default                  ="0" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="command_lane_width" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
             
             <lsccip:setting              
                 id                       ="address_lane_width"
                 type                     ="input" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Address Lane Width" 
                 default                  ="0" 
                 options                  ="[('x1', 0), ('x2', 1), ('x4', 2)]"
                 hidden                   = "False if(ENABLE_FLASH_ADDRESS_MAPPING == 1) else True"
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
             
             <lsccip:setting
                 id                       ="ADDRESS_LANE_WIDTH" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Address Lane Width" 
                 default                  ="0" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="address_lane_width" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
             
             <lsccip:setting              
                 id                       ="data_lane_width"
                 type                     ="input" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Data Lane Width" 
                 default                  ="0" 
                 options                  ="[('x1', 0), ('x2', 1), ('x4', 2)]"
                 hidden                   = "False if(ENABLE_FLASH_ADDRESS_MAPPING == 1) else True"
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
             
             <lsccip:setting
                 id                       ="DATA_LANE_WIDTH" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Data Lane Width" 
                 default                  ="0" 
                 editable                 ="False" 
                 hidden                   ="True" 
                 value_expr               ="data_lane_width" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
             
             <lsccip:setting              
                 id                       ="dummy_clock_cycles"
                 type                     ="input" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Dummy Clock Cycles" 
                 default                  ="8" 
                 options                  ="(0, 2, 4, 6, 8, 10, 12, 14)"
                 hidden                   = "False if(ENABLE_FLASH_ADDRESS_MAPPING == 1) else True"
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
             
             <lsccip:setting
                 id                       ="DUMMY_CLOCK_CYCLES" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Dummy Clock Cycles" 
                 default                  ="8" 
                 hidden                   ="True"
                 editable                 ="False"
                 value_expr               ="dummy_clock_cycles" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
             
             <lsccip:setting
                 id                       ="XIP_PATTERN" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="string" 
                 title                    ="eXecute-in-Place (XiP) Pattern" 
                 default                  ="8'hA5"
                 hidden                   ="False if(ENABLE_FLASH_ADDRESS_MAPPING == 1) else True"
                 editable                 ="True  if(ENABLE_FLASH_ADDRESS_MAPPING == 1) else False"
                 output_formatter         ="nostr"
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
			 
             <lsccip:setting              
                 id                       ="enable_qpi_mode" 
                 type                     ="input" 
                 value_type               ="bool" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 title                    ="Enable QPI Mode" 
                 default                  ="False" 
                 hidden                   ="True"
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
             
             <lsccip:setting 
                 id                       ="ENABLE_QPI_MODE" 
                 type                     ="param" 
                 conn_mod                 ="lscc_qspi_flash_controller" 
                 value_type               ="int" 
                 title                    ="Enable QPI Mode" 
                 default                  ="0" 
                 editable                 ="False" 
                 hidden                   ="True"                 
                 value_expr               ="1 if (enable_qpi_mode == True) else 0" 
                 config_groups            ="'SystemBuilder'" 
                 group1                   ="Flash Address Mapping"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "READ_STATUS_REGISTER_1" 
                type               = "param"
                default            = "8'h05"
                value_type         = "string"
                title              = "Read Status Register-1"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "READ_STATUS_REGISTER_2" 
                type               = "param"
                default            = "8'h35"
                value_type         = "string"
                title              = "Read Status Register-2"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "READ_STATUS_REGISTER_3" 
                type               = "param"
                default            = "8'h15"
                value_type         = "string"
                title              = "Read Status Register-3"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "READ_CONFIGURATION_REGISTER" 
                type               = "param"
                default            = "8'hB5"
                value_type         = "string"
                title              = "Read Configuration Register"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "READ_ID" 
                type               = "param"
                default            = "8'h9F"
                value_type         = "string"
                title              = "Read ID"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "READ_ELECTRONIC_ID" 
                type               = "param"
                default            = "8'hAB"
                value_type         = "string"
                title              = "Read Electronic ID"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "MULTIPLE_IO_READ_ID" 
                type               = "param"
                default            = "8'hAF"
                value_type         = "string"
                title              = "Multiple I/O Read ID"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "READ_MANUFACTURER_AND_DEVICE_ID" 
                type               = "param"
                default            = "8'h90"
                value_type         = "string"
                title              = "Read Manufacturer and Device ID"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "READ_MANUFACTURER_AND_DEVICE_ID_DUAL_IO" 
                type               = "param"
                default            = "8'h92"
                value_type         = "string"
                title              = "Read Manufacturer and Device ID Dual I/O"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "READ_MANUFACTURER_AND_DEVICE_ID_QUAD_IO" 
                type               = "param"
                default            = "8'h94"
                value_type         = "string"
                title              = "Read Manufacturer and Device ID Quad I/O"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "READ_DATA" 
                type               = "param"
                default            = "8'h03"
                value_type         = "string"
                title              = "Read Data"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "FAST_READ" 
                type               = "param"
                default            = "8'h0B"
                value_type         = "string"
                title              = "Fast Read"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "DUAL_OUTPUT_FAST_READ" 
                type               = "param"
                default            = "8'h3B"
                value_type         = "string"
                title              = "Dual Output Fast Read"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "DUAL_INPUT_OUTPUT_FAST_READ" 
                type               = "param"
                default            = "8'hBB"
                value_type         = "string"
                title              = "Dual Input/Output Fast Read"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "QUAD_OUTPUT_FAST_READ" 
                type               = "param"
                default            = "8'h6B"
                value_type         = "string"
                title              = "Quad Output Fast Read"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "QUAD_INPUT_OUTPUT_FAST_READ" 
                type               = "param"
                default            = "8'hEB"
                value_type         = "string"
                title              = "Quad Input/Output Fast Read"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "BLOCK_ERASE_TYPE1" 
                type               = "param"
                default            = "8'h20"
                value_type         = "string"
                title              = "Block Erase Type 1"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "BLOCK_ERASE_TYPE2" 
                type               = "param"
                default            = "8'h52"
                value_type         = "string"
                title              = "Block Erase Type 2"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "BLOCK_ERASE_TYPE3" 
                type               = "param"
                default            = "8'hD8"
                value_type         = "string"
                title              = "Block Erase Type 3"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "CHIP_ERASE" 
                type               = "param"
                default            = "8'h60"
                value_type         = "string"
                title              = "Chip Erase"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "WRITE_ENABLE" 
                type               = "param"
                default            = "8'h06"
                value_type         = "string"
                title              = "Write Enable"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "WRITE_DISABLE" 
                type               = "param"
                default            = "8'h04"
                value_type         = "string"
                title              = "Write Disable"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "WRITE_STATUS_CONFIGURATION_REGISTER" 
                type               = "param"
                default            = "8'h01"
                value_type         = "string"
                title              = "Write Status/Configuration Register"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "PAGE_PROGRAM" 
                type               = "param"
                default            = "8'h02"
                value_type         = "string"
                title              = "Page Program"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "DUAL_INPUT_FAST_PROGRAM" 
                type               = "param"
                default            = "8'hA2"
                value_type         = "string"
                title              = "Dual Input Fast Program"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "EXTENDED_DUAL_INPUT_FAST_PROGRAM" 
                type               = "param"
                default            = "8'hD2"
                value_type         = "string"
                title              = "Extended Dual Input Fast Program"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "QUAD_INPUT_FAST_PROGRAM" 
                type               = "param"
                default            = "8'h32"
                value_type         = "string"
                title              = "Quad Input Fast Program"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "EXTENDED_QUAD_INPUT_FAST_PROGRAM" 
                type               = "param"
                default            = "8'h38"
                value_type         = "string"
                title              = "Extended Quad Input Fast Program"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "ENTER_4_BYTE_ADDRESS_MODE" 
                type               = "param"
                default            = "8'hB7"
                value_type         = "string"
                title              = "Enter 4-Byte Address Mode"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "EXIT_4_BYTE_ADDRESS_MODE" 
                type               = "param"
                default            = "8'hE9"
                value_type         = "string"
                title              = "Exit 4-Byte Address Mode"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "ENTER_QUAD_INPUT_OUTPUT_MODE" 
                type               = "param"
                default            = "8'h35"
                value_type         = "string"
                title              = "Enter Quad Input/Output Mode"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "RESET_QUAD_INPUT_OUTPUT_MODE" 
                type               = "param"
                default            = "8'hF5"
                value_type         = "string"
                title              = "Reset Quad Input/Output Mode"
                output_formatter   = "nostr"
                editable           = "True"
                hidden             = "False"
                group1             = "Flash Commands"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "MAIN_INTF_MEMORY_MAP_SIZE" 
                type               = "input"
                default            = "1024"
                value_type         = "string"
                title              = "Main Interface Memory Map Size"
                editable           = "False"
                hidden             = "True"
				value_expr         = "calc_main_intf_memory_map_size(ENABLE_FLASH_ADDRESS_MAPPING, FLASH_MEMORY_MAP_SIZE)"
                group1             = "Memory Map"
             />
			 
             <lsccip:setting
                conn_mod          = "lscc_qspi_flash_controller"
                id                 = "AXI4L_INTF_MEMORY_MAP_SIZE" 
                type               = "input"
                value_expr         = "1024 if (enable_option_axi4l_for_register_access == True) else 0"
                value_type         = "string"
                title              = "AXI4L Interface Memory Map Size"
                editable           = "False"
                hidden             = "True"
				group1             = "Memory Map"
             />
			 
			 
             </lsccip:settings>
                 
             <lsccip:ports>
                 <lsccip:port
                     name                 = "a_clk_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "a_clk_i"
                     port_type            = "clock"
                 />
				 
                 <lsccip:port
                     name                 = "a_reset_n_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "a_reset_n_i"
                     port_type            = "reset"
                 />
                 
                 <lsccip:port
                     name                 = "int_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "int_o"
                     bus_interface        = "INTR"
                 />

                 <lsccip:port
                     name                 = "qspi_io0"
                     dir                  = "inout"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "qspi_io0"
                     dangling             = "ENABLE_IO_PRIMITIVE == 0"
                 />
                 <lsccip:port
                     name                 = "qspi_io1"
                     dir                  = "inout"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "qspi_io1"
                     dangling             = "ENABLE_IO_PRIMITIVE == 0"
                 />
                 <lsccip:port
                     name                 = "qspi_io2"
                     dir                  = "inout"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "qspi_io2"
                     dangling             = "ENABLE_IO_PRIMITIVE == 0 or (ENABLE_IO_PRIMITIVE == 1 and supported_protocol != 'Quad')"
                 />
                 <lsccip:port
                     name                 = "qspi_io3"
                     dir                  = "inout"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "qspi_io3"
                     dangling             = "ENABLE_IO_PRIMITIVE == 0 or (ENABLE_IO_PRIMITIVE == 1 and supported_protocol != 'Quad')"
                 />
                 
                 <lsccip:port
                     name                 = "sclk_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "sclk_o"
                 />
                 <lsccip:port
                     name                 = "ss_n_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     range                = "(NUMBER_OF_SLAVE_SELECT_LINES-1, 0)"
                     conn_port            = "ss_n_o"
                 />
                 
                 <lsccip:port
                     name                 = "io0_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "io0_i"
                     stick_low            = "ENABLE_IO_PRIMITIVE == 1"
                 />
                 <lsccip:port
                     name                 = "io0_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "io0_o"
                     dangling             = "ENABLE_IO_PRIMITIVE == 1"
                 />
                 <lsccip:port
                     name                 = "io0_oe_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "io0_oe_o"
                     dangling             = "ENABLE_IO_PRIMITIVE == 1"
                 />
                 <lsccip:port
                     name                 = "io1_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "io1_i"
                     stick_low            = "ENABLE_IO_PRIMITIVE == 1"
                 />
                 
                 <lsccip:port
                     name                 = "io1_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "io1_o"
                     dangling             = "ENABLE_IO_PRIMITIVE == 1"
                 />
                 <lsccip:port
                     name                 = "io1_oe_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "io1_oe_o"
                     dangling             = "ENABLE_IO_PRIMITIVE == 1"
                 />
                 <lsccip:port
                     name                 = "io2_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "io2_i"
                     stick_low            = "ENABLE_IO_PRIMITIVE == 1 or supported_protocol != 'Quad'"
                 />
                 
                 <lsccip:port
                     name                 = "io2_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "io2_o"
                     dangling             = "ENABLE_IO_PRIMITIVE == 1 or supported_protocol != 'Quad'"
                 />
                 <lsccip:port
                     name                 = "io2_oe_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "io2_oe_o"
                     dangling             = "ENABLE_IO_PRIMITIVE == 1 or supported_protocol != 'Quad'"
                 />
                 
                 <lsccip:port
                     name                 = "io3_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "io3_i"
                     stick_low            = "ENABLE_IO_PRIMITIVE == 1 or supported_protocol != 'Quad'"
                 />
                 <lsccip:port
                     name                 = "io3_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "io3_o"
                     dangling             = "ENABLE_IO_PRIMITIVE == 1 or supported_protocol != 'Quad'"
                 />
                 <lsccip:port
                     name                 = "io3_oe_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "io3_oe_o"
                     dangling             = "ENABLE_IO_PRIMITIVE == 1 or supported_protocol != 'Quad'"
                 />
                 <lsccip:port
                     name                 = "ahbl_hsel_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "ahbl_hsel_i"
                     range                = "(0, 0)"
                     bus_interface        = "AHBL"
                     stick_low            = "INTERFACE != 0"
                 />
                 <lsccip:port
                     name                 = "ahbl_hready_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "ahbl_hready_i"
                     range                = "(0, 0)"
                     bus_interface        = "AHBL"
                     stick_low            = "INTERFACE != 0"
                 />
                 <lsccip:port
                     name                 = "ahbl_haddr_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "ahbl_haddr_i"
                     range                = "(31, 0)"
                     bus_interface        = "AHBL"
                     stick_low            = "INTERFACE != 0"
                     
                 />
                 <lsccip:port
                     name                 = "ahbl_hburst_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "ahbl_hburst_i"
                     range                = "(2, 0)"
                     bus_interface        = "AHBL"
                     stick_low            = "INTERFACE != 0"
                     
                 />
                 <lsccip:port
                     name                 = "ahbl_hsize_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "ahbl_hsize_i"
                     range                = "(2, 0)"
                     bus_interface        = "AHBL"
                     stick_low            = "INTERFACE != 0"
                     
                 />
                 <lsccip:port
                     name                 = "ahbl_hmastlock_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "ahbl_hmastlock_i"
                     range                = "(0, 0)"
                     bus_interface        = "AHBL"
                     stick_low            = "INTERFACE != 0"
                     
                 />
                 <lsccip:port
                     name                 = "ahbl_hprot_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "ahbl_hprot_i"
                     range                = "(3, 0)"
                     bus_interface        = "AHBL"
                     stick_low            = "INTERFACE != 0"
                     
                 />
                 <lsccip:port
                     name                 = "ahbl_htrans_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "ahbl_htrans_i"
                     range                = "(1, 0)"
                     bus_interface        = "AHBL"
                     stick_low            = "INTERFACE != 0"
                     
                 />
                 <lsccip:port
                     name                 = "ahbl_hwrite_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "ahbl_hwrite_i"
                     range                = "(0, 0)"
                     bus_interface        = "AHBL"
                     stick_low            = "INTERFACE != 0"
                     
                 />
                 <lsccip:port
                     name                 = "ahbl_hwdata_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "ahbl_hwdata_i"
                     range                = "(31, 0)"
                     bus_interface        = "AHBL"
                     stick_low            = "INTERFACE != 0"
                     
                 />
                 <lsccip:port
                     name                 = "ahbl_hready_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "ahbl_hready_o"
                     range                = "(0, 0)"
                     bus_interface        = "AHBL"
                     dangling            = "INTERFACE != 0"
                     
                 />
                 <lsccip:port
                     name                 = "ahbl_hrdata_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "ahbl_hrdata_o"
                     range                = "(31, 0)"
                     bus_interface        = "AHBL"
                     dangling            = "INTERFACE != 0"
                     
                 />
                 <lsccip:port
                     name                 = "ahbl_hresp_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "ahbl_hresp_o"
                     range                = "(0, 0)"
                     bus_interface        = "AHBL"
                     dangling            = "INTERFACE != 0"
                     
                 />
                 <lsccip:port
                     name                 = "axi_awid_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_awid_i"
                     range                = "((AXI_ID_WIDTH-1), 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_awaddr_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_awaddr_i"
                     range                = "(31, 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_awlen_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_awlen_i"
                     range                = "(7, 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_awsize_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_awsize_i"
                     range                = "((3-1), 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_awburst_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_awburst_i"
                     range                = "((2-1), 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_awlock_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_awlock_i"
                     range                = "(0, 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_awcache_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_awcache_i"
                     range                = "((4-1), 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                     
                 />
                 <lsccip:port
                     name                 = "axi_awprot_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_awprot_i"
                     range                = "((3-1), 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_awvalid_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_awvalid_i"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                  <lsccip:port
                     name                 = "axi_awready_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_awready_o"
                     bus_interface        = "AXI4"
                     dangling            = "INTERFACE != 1"
                     
                 />
                
                 <lsccip:port
                     name                 = "axi_wdata_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_wdata_i"
                     range                = "(31, 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_wstrb_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_wstrb_i"
                     range                = "(3, 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_wlast_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_wlast_i"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_wvalid_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_wvalid_i"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_wready_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_wready_o"
                     bus_interface        = "AXI4"
                     dangling            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_bid_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_bid_o"
                     range                = "((AXI_ID_WIDTH-1),0)"
                     bus_interface        = "AXI4"
                     dangling            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_bresp_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_bresp_o"
                     range                = "((2-1), 0)"
                     bus_interface        = "AXI4"
                     dangling            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_bvalid_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_bvalid_o"
                     bus_interface        = "AXI4"
                     dangling            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_bready_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_bready_i"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_arid_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_arid_i"
                     range                = "((AXI_ID_WIDTH-1),0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_araddr_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_araddr_i"
                     range                = "(31, 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_arlen_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_arlen_i"
                     range                = "(7, 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_arsize_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_arsize_i"
                     range                = "((3-1), 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_arburst_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_arburst_i"
                     range                = "((2-1), 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_arlock_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_arlock_i"
                     range                = "(0, 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_arcache_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_arcache_i"
                     range                = "((4-1), 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_arprot_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_arprot_i"
                     range                = "((3-1), 0)"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_arvalid_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_arvalid_i"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_arready_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_arready_o"
                     bus_interface        = "AXI4"
                     dangling            = "INTERFACE != 1"
                     
                 />
                  <lsccip:port
                     name                 = "axi_rid_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_rid_o"
                     range                = "((AXI_ID_WIDTH-1), 0)"
                     bus_interface        = "AXI4"
                     dangling            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_rdata_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_rdata_o"
                     range                = "(31, 0)"
                     bus_interface        = "AXI4"
                     dangling            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_rresp_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_rresp_o"
                     range                = "((2-1), 0)"
                     bus_interface        = "AXI4"
                     dangling            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_rlast_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_rlast_o"
                     bus_interface        = "AXI4"
                     dangling            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_rvalid_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_rvalid_o"
                     bus_interface        = "AXI4"
                     dangling            = "INTERFACE != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axi_rready_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axi_rready_i"
                     bus_interface        = "AXI4"
                     stick_low            = "INTERFACE != 1"
                     
                 />
                 
                 
                 
                 
                 
                 
                 
                 
                 <lsccip:port
                     name                 = "axil_awaddr_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_awaddr_i"
                     range                = "(31, 0)"
                     bus_interface        = "AXI4L"
                     stick_low            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axil_awprot_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_awprot_i"
                     range                = "((3-1), 0)"
                     bus_interface        = "AXI4L"
                     stick_low            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axil_awvalid_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_awvalid_i"
                     bus_interface        = "AXI4L"
                     stick_low            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                  <lsccip:port
                     name                 = "axil_awready_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_awready_o"
                     bus_interface        = "AXI4L"
                     dangling            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                
                 <lsccip:port
                     name                 = "axil_wdata_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_wdata_i"
                     range                = "(31, 0)"
                     bus_interface        = "AXI4L"
                     stick_low            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axil_wstrb_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_wstrb_i"
                     range                = "(3, 0)"
                     bus_interface        = "AXI4L"
                     stick_low            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axil_wvalid_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_wvalid_i"
                     bus_interface        = "AXI4L"
                     stick_low            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axil_wready_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_wready_o"
                     bus_interface        = "AXI4L"
                     dangling            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axil_bresp_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_bresp_o"
                     range                = "((2-1), 0)"
                     bus_interface        = "AXI4L"
                     dangling            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axil_bvalid_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_bvalid_o"
                     bus_interface        = "AXI4L"
                     dangling            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axil_bready_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_bready_i"
                     bus_interface        = "AXI4L"
                     stick_low            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axil_araddr_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_araddr_i"
                     range                = "(31, 0)"
                     bus_interface        = "AXI4L"
                     stick_low            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axil_arprot_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_arprot_i"
                     range                = "((3-1), 0)"
                     bus_interface        = "AXI4L"
                     stick_low            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axil_arvalid_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_arvalid_i"
                     bus_interface        = "AXI4L"
                     stick_low            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axil_arready_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_arready_o"
                     bus_interface        = "AXI4L"
                     dangling            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axil_rdata_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_rdata_o"
                     range                = "(31, 0)"
                     dangling            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axil_rresp_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_rresp_o"
                     range                = "((2-1), 0)"
                     dangling            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axil_rvalid_o"
                     dir                  = "out"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_rvalid_o"
                     dangling            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
                 <lsccip:port
                     name                 = "axil_rready_i"
                     dir                  = "in"
                     conn_mod             = "lscc_qspi_flash_controller"
                     conn_port            = "axil_rready_i"
                     bus_interface        = "AXI4L"
                     stick_low            = "ENABLE_OPTION_AXI4L_FOR_REGISTER_ACCESS != 1"
                     
                 />
             </lsccip:ports>
	
    <xi:include href="bus_interface.xml" parse="xml" />
    <xi:include href="memory_map.xml" parse="xml" />
</lsccip:ip>
