Lattice IP Support

The Lattice IP Core is a pre-designed logic function and configurable design blocks that implement popular industry-standard functions.

IP Catalog

IP Catalog is a software tool included with the Lattice Radiant design software. IP Catalog is an easy way to use a collection of functional blocks from the Radiant software. There are two types of components available through IP Catalog: modules and IP. IP Catalog enables you to extensively customize these components. They can be created as part of a specific project or as a library for multiple projects. In Radiant, it is easier to identify IP on local and IP on server. You can use the IP on Server tab of IP Catalog to download and install the latest IP available from Lattice Semiconductor.


IPexpress is a software tool included with the Lattice Diamond design software. IPexpress is used to configure Lattice IP cores to your needs. For example, if you need a x16 memory width for a DDR3 Controller, you can set this in IPexpress. The output of IPexpress is a netlist you can embed into your FPGA design using Lattice Diamond.

After you complete your design in Lattice Diamond, you can generate a programming bitstream and use the IP core normally. If you have not purchased a license for the IP core, it will only operate for a limited time (usually about 30-120 minutes) before timing-out, and requiring re-programming of the FPGA. If you purchase a license for the IP core, it will run indefinitely.

When you launch IPexpress, a catalog of available IP cores will be shown. Be sure to check for updates and additions to this catalog by clicking on the IPexpress "globe" icon. This will check the Lattice web site for updates.

Clarity Designer

Clarity Designer is a tool within the Lattice Diamond software environment that addresses the need to be able to generate and plan multiple blocks together. Clarity Designer is used for configuration of blocks, building the connections between blocks, and planning the resources used by the PCS and DDR blocks in the design. For device families supported by Clarity Designer, IPexpress functionality is accomplished along with functionality for building and planning. The IPexpress tool is disabled when using a device family supported by Clarity Designer. Device families that are not supported yet by Clarity Designer still require the use of IPexpress. Clarity Designer is currently only available for the ECP5, CrossLink and CrossLinkPlus device family.

Buying/Licensing Lattice IP License

The following is an overview of the IP purchasing and licensing process in Q&A format. In essence, this process is simple:

  1. Contact Lattice sales or an authorized Lattice distributor to order the IP Core License
  2. You’ll get an e-mail with a serial number and licensing instructions
  3. Click to the Lattice website to complete the process & receive an updated software license.

But, if you have additional questions about how all this works, check the details below.

Can you give me a really basic tutorial on the terminology you're using? What do you mean by a "license"?

The terminology in the world of IP cores and licensing can be a little tricky sometimes. For example, the word "license" can mean different things in different contexts, a legal license, a licensing file, etc.

  • License: While this term can have many definitions, we try to use this to mean a "license to use the IP core". If you've purchased a Lattice IP core, what you've really purchased is an "IP core license". There are different types of IP core licenses with different terms and conditions, as defined by the IP Core License Agreement. Each of these different license types has a unique part number, so be sure to check on which you are getting.
  • IP Core License Agreement: This is the legal agreement that explains the terms and conditions of how the IP core can be used. Sometimes, people will refer to this as the "IP license agreement".
  • License.dat: This is a data file that the Diamond and Radiant software uses to turn on/off various features of the software, including various IP cores. After you purchase a Lattice IP core license, you'll need to complete the licensing and registration process on to get a new license.dat file that will enable you to use your IP core.
  • License feature line: The license.dat file contains a series of encrypted lines of code that each turn on different features of the Diamond and Radiant software. Each of these lines of code is called a "feature line". There are unique feature lines required to turn on any IP/FPGA combination.

Are there IP license bundles available? How can I buy them?

Lattice offers two types of IP license bundles to provide more flexible and cost-effective solution. (1) Bundles that are derived from specific IP categories (e.g., PCIe, Ethernet, DSP, MIPI, Memory Controller) and (2) Customizable IP bundle where customers can choose either 5 or 10 individual IP to include in the bundle. Please visit this page for more information.

How does Lattice IP "work"?

Each Lattice IP core is a set of compiled code that implements a basic function, like a DDR2 memory controller, or a Tri-speed MAC, and is targeted/optimized for a specific Lattice FPGA family. You can first use the IP tools in Diamond or Radiant to configure some parameters in the IP core (for example, with DDR2, you might configure the data word width to a particular length). The IP tool generates a compiled "netlist", which is sometimes called a "black box", because while you can connect the inputs and outputs, you can't see "inside" this compiled design. Finally, using Diamond or Radiant, you can add your custom code to it to create your final design, which can then be programmed into a Lattice FPGA. This custom code is sometimes called a "wrapper" as it "wraps around" the IP core to create the final design.

After you've completed your design, you can generate a bitstream file and program a Lattice FPGA. If you don't have a license for the IP, the software will insert a hardware timer into this bitstream file. This will allow the bitstream to run for a set period (usually 30 minutes to 4 hours). After this, the device can be reprogrammed to reset the timer. You'll need to purchase an IP license to remove this hardware timer function and fully utilize the IP. What software do I need before I can use Lattice IP cores?

You'll need either the Lattice Diamond or Radiant design software. This includes the IPexpress tool for Diamond and IP Catalog for Radiant, which are used to configure the IP core to your preferences.

If I don't have a license to use my IP core, what are the limitations of using it?

You can do nearly all your design and prototyping work without an IP license. If you do not have a license to use the IP core, the software will insert a "hardware timer" into the programming bitstream. This will cause the bitstream to "time-out" after a set period – usually from 30 minutes to about 4 hours. After the period expires, you can re-program the FPGA to reset the period. Also, without an IP license, full timing simulation is not available.

I just purchased a Lattice IP core license, where/how do I get the code?

If you have a copy of Diamond or Radiant, you already have access to all the IP core "code" via the IPexpress or IP Catalog tool. When you purchase an IP core, what you've really purchased is a license to fully utilize this code – i.e. you've purchased a "key", which comes in the form of a file called "license.dat". So, that small license.dat file is all you need. To get this file, you need to complete a license registration request via the Lattice web site. Assuming everything checks-out OK, we'll email you a new license.dat file, which works with Diamond or Radiant, and basically "unlocks" the IP core.

What's the difference between the types of IP licenses?

There are 2 ways you can purchase a license to use Lattice IP cores. The type of IP license you purchase is reflected by the part number you order; so there's only one way to license any specific IP core part number. These license types include:

  • Single Seat Annual License: use of the IP Core is limited to one (1) year from the date that Lattice issues an electronic license key to Licensee. If Licensee does not complete a Design within one (1) year from the date that Lattice issues an electronic license key to Licensee, such uncompleted Design may not be completed without the purchase of an additional license or extension for a renewal term. A node-locked Single Seat Annual License shall only be used on a unique machine with unique MAC address. A floating Single Seat Annual License shall only be used by one user at a time. Part numbers for a Single Seat Annual License will end in a suffix -US. These products are specific to a single type of IP, and a single target FPGA technology.
  • Multi-site Perpetual License: the use of the IP Core is limited to the Licensee’s Authorized Sites identified by Licensee in the IP Core Software Request Form on this website and approved by Lattice. The term of the Site Perpetual License is perpetual with respect the licensed IP Core and is a one-seat license. A node-locked Site Perpetual License shall only be used on a unique machine with unique MAC address. A floating Site Perpetual License shall only be used by one user at a time. Part numbers for a Multi-site Perpetual License will end in a suffix -UT. These products are specific to a single type of IP, and a single target FPGA technology.

We've purchased a single design license, and have a sub-contractor working on our design. Can you license them to work on this design project?

Yes. This is covered in section 2.3 of the IP Core License Agreement. Be sure to understand your obligations if you make such a licensing request.

Is there any limit to the number of "sites" I can list in a multi-site license?

No. But, all sites must be for the same corporate entity licensing the IP core (not sites for affiliated companies.)

Does Lattice sell IP source code? How can I purchase this?

We do sell source code in some instances. If you are interested in this, please contact your local Lattice Sales office.

I'm interested in an IP core developed by one of Lattice's IP partners. How do I purchase this from Lattice?

IP cores developed by Lattice's IP connection partners is sold exclusively by those partners. You will need to contact the appropriate IP partner for more details.

Who can I contact if I have a problem using the on-line licensing system?

Please raise a Support Case at