109 lines
2.2 KiB
ReStructuredText
109 lines
2.2 KiB
ReStructuredText
.. _lattice:
|
|
|
|
Lattice notes
|
|
#############
|
|
|
|
MachXO2/MachXO3
|
|
===============
|
|
|
|
Flash memory
|
|
------------
|
|
|
|
``.jed`` file is the default format generated by *Lattice Diamond*, so nothing special must be done to generates this
|
|
file.
|
|
|
|
File load:
|
|
|
|
.. code-block:: bash
|
|
|
|
openFPGALoader [-b yourboard] [--flash-sector CFG0] impl1/*.jed
|
|
|
|
where ``yourboard`` may be:
|
|
|
|
* ``machX02EVN``
|
|
* ``machX03EVN``
|
|
* ``machXO3SK``
|
|
|
|
and where ``--flash-sector CFG0`` is needed for the MachXO3D Breakout Board.
|
|
|
|
``.bit`` may also be used for *machXO2*
|
|
|
|
SRAM
|
|
----
|
|
|
|
To generates ``.bit`` file *Bitstream file* must be checked under *Exports Files* in *Lattice Diamond* left panel.
|
|
|
|
File load:
|
|
|
|
.. code-block:: bash
|
|
|
|
openFPGALoader [-b yourboard] impl1/*.bit
|
|
|
|
where ``yourboard`` may be:
|
|
|
|
* ``machX02EVN``
|
|
* ``machX03EVN``
|
|
* ``machXO3SK``
|
|
|
|
iCE40
|
|
=====
|
|
|
|
``.bin`` is the default format generated by *nextpnr*, so nothing special must be done.
|
|
|
|
Since most ice40 boards uses the same pinout between *FTDI* and *SPI flash* a generic *ice40_generic* board is provided.
|
|
|
|
For the specific case of the *iCE40HXXK-EVB* where no onboard programmer is present, please use this:
|
|
|
|
============= ===============
|
|
FTDI iCE40HXXK-EVB
|
|
============= ===============
|
|
SI (ADBUS1) Pin 8
|
|
SCK (ADBUS0) Pin 9
|
|
SO (ADBUS2) Pin 7
|
|
CS (ABDUS4) Pin 10
|
|
RST (ADBUS6 Pin 6
|
|
DONE (ADBUS7) Pin 5
|
|
============= ===============
|
|
|
|
Bin file load:
|
|
|
|
.. code-block:: bash
|
|
|
|
openFPGALoader -b ice40_generic /somewhere/*.bin
|
|
|
|
Since it's a direct access to the flash (SPI) the ``-b`` option is required.
|
|
|
|
ECP5/ECP3/Certus-NX/CertusPro-NX/Crosslink-NX
|
|
=============================================
|
|
|
|
SRAM
|
|
----
|
|
|
|
.. code-block:: bash
|
|
|
|
openFPGALoader [-b yourBoard] [-c yourCable] -m project_name/*.bit
|
|
|
|
.. HINT::
|
|
By default, openFPGALoader loads bitstream in memory, so the ``-m`` argument is optional.
|
|
|
|
SPI Flash
|
|
---------
|
|
|
|
.. note::
|
|
|
|
SPI Flash write is not supported for ECP3 family.
|
|
|
|
BIT:
|
|
|
|
.. code-block:: bash
|
|
|
|
openFPGALoader [-b yourBoard] [-c yourCable] -f project_name/*.bit # or *.bin
|
|
|
|
MCS:
|
|
|
|
To generate ``.mcs`` file *PROM File* must be checked under *Exports Files* in *Lattice Diamond* left panel.
|
|
|
|
.. code-block:: bash
|
|
|
|
openFPGALoader [-b yourBoard] [-c yourCable] project_name/*.mcs
|