Lattice MachXO2 and MachXO3L

The torii.platform.vendor.lattice.machxo_2_3l module provides a base platform to support Lattice MachXO2 and MachXO3L devices with theDiamond toolchain.


alias of MachXO2Or3LPlatform


alias of MachXO2Or3LPlatform


Both of the above are aliases for the actual platform below, however only the aliased definitions are actually exported from the module for use.

class torii.platform.vendor.lattice.machxo_2_3l.MachXO2Or3LPlatform
Required tools:
  • pnmainc

  • ddtcmd

The environment is populated by running the script specified in the environment variable TORII_ENV_DIAMOND, if present. On Linux, diamond_env as provided by Diamond itself is a good candidate. On Windows, the following script (named diamond_env.bat, for instance) is known to work:

@echo off
set PATH=C:\lscc\diamond\%DIAMOND_VERSION%\bin\nt64;%PATH%
Available overrides:
  • script_project: inserts commands before prj_project save in Tcl script.

  • script_after_export: inserts commands after prj_run Export in Tcl script.

  • add_preferences: inserts commands at the end of the LPF file.

  • add_constraints: inserts commands at the end of the XDC file.

Build products:
  • {{name}}_impl/{{name}}_impl.htm: consolidated log.

  • {{name}}.jed: JEDEC fuse file.

  • {{name}}.bit: binary bitstream.

  • {{name}}.svf: JTAG programming vector for FLASH programming.

  • {{name}}_flash.svf: JTAG programming vector for FLASH programming.

  • {{name}}_sram.svf: JTAG programming vector for SRAM programming.