<?xml version="1.0"?>
<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>ddr3_mc</lsccip:name>
        <lsccip:display_name>DDR3 SDRAM Controller</lsccip:display_name>
        <lsccip:version>2.3.1</lsccip:version>
        <lsccip:category>Processors_Controllers_and_Peripherals</lsccip:category>
        <lsccip:keywords>BusType_AXI4,BusType_APB</lsccip:keywords>
        <lsccip:type>cacheable</lsccip:type>
        <lsccip:min_radiant_version>2023.2</lsccip:min_radiant_version>
        <lsccip:supported_products>
        <lsccip:supported_family name="LIFCL">
          <lsccip:supported_device name="LIFCL-40">
            <lsccip:supported_speed_grade name="*">
              <lsccip:supported_package name="CABGA256"/>
              <lsccip:supported_package name="CSBGA289"/>
              <lsccip:supported_package name="CABGA400"/>
            </lsccip:supported_speed_grade>
          </lsccip:supported_device>
        </lsccip:supported_family>
        <lsccip:supported_family name="LFD2NX">
          <lsccip:supported_device name="LFD2NX-15">
            <lsccip:supported_speed_grade name="*">
              <lsccip:supported_package name="CABGA400"/>
            </lsccip:supported_speed_grade>
          </lsccip:supported_device>
          <lsccip:supported_device name="LFD2NX-25">
            <lsccip:supported_speed_grade name="*">
              <lsccip:supported_package name="CABGA400"/>
            </lsccip:supported_speed_grade>
          </lsccip:supported_device>
          <lsccip:supported_device name="LFD2NX-28">
            <lsccip:supported_speed_grade name="*">
              <lsccip:supported_package name="CABGA196"/>
              <lsccip:supported_package name="CABGA256"/>
            </lsccip:supported_speed_grade>
          </lsccip:supported_device> 
          <lsccip:supported_device name="LFD2NX-40">
            <lsccip:supported_speed_grade name="*">
              <lsccip:supported_package name="CABGA196"/>
              <lsccip:supported_package name="CABGA256"/>
            </lsccip:supported_speed_grade>
          </lsccip:supported_device>
        </lsccip:supported_family>
        <lsccip:supported_family name="LFCPNX"></lsccip:supported_family>
        <lsccip:supported_family name="LFMXO5">
          <lsccip:supported_device name="LFMXO5-15D"/>
          <lsccip:supported_device name="LFMXO5-15D-AQA"/>
          <lsccip:supported_device name="LFMXO5-15D-HBN"/>
          <lsccip:supported_device name="LFMXO5-25">
            <lsccip:supported_speed_grade name="*">
              <lsccip:supported_package name="BBG400"/>
            </lsccip:supported_speed_grade>
          </lsccip:supported_device>
          <lsccip:supported_device name="LFMXO5-55T"/>
          <lsccip:supported_device name="LFMXO5-55TD"/>
          <lsccip:supported_device name="LFMXO5-100T"/>
        </lsccip:supported_family>
        <lsccip:supported_family name="UT24C"></lsccip:supported_family>                        
        <lsccip:supported_family name="UT24CP"></lsccip:supported_family>            
      </lsccip:supported_products>
    <lsccip:supported_platforms>
      <lsccip:supported_platform name="radiant" />
      <lsccip:supported_platform name="esi" />
    </lsccip:supported_platforms>
    </lsccip:general>

    <xi:include href="settings.xml" parse="xml"/>
    <xi:include href="ports.xml" parse="xml"/>
    
    <lsccip:outFileConfigs>
      <lsccip:fileConfig name="wrapper" skip_uniquify="false" file_suffix="sv" file_description="top_level_system_verilog"></lsccip:fileConfig>
    </lsccip:outFileConfigs>

    <xi:include href="bus_interface.xml" parse="xml" />
    <xi:include href="memory_map.xml" parse="xml" />
    
    <lsccip:componentGenerators>
        <lsccip:componentGenerator>
            <lsccip:name>create_sdram_mem_defines</lsccip:name>
            <lsccip:generatorExe>testbench/create_defines.py</lsccip:generatorExe>
        </lsccip:componentGenerator>
        <lsccip:componentGenerator>
            <lsccip:name>create_top_constraint_file</lsccip:name>
            <lsccip:generatorExe>eval/create_top_constraint.py</lsccip:generatorExe>
        </lsccip:componentGenerator>
        <lsccip:componentGenerator>
          <lsccip:name>assign_pins</lsccip:name>
          <lsccip:generatorExe>eval/assign_pins.py</lsccip:generatorExe>
        </lsccip:componentGenerator>
    </lsccip:componentGenerators>

</lsccip:ip>

