docs: cover amaranth.vendor.

This commit is contained in:
Irides 2021-12-13 03:10:40 -06:00 committed by Catherine
parent 1ee2482c6b
commit 40b92965c9
13 changed files with 96 additions and 20 deletions

View file

@ -9,8 +9,7 @@ __all__ = ["IntelPlatform"]
class IntelPlatform(TemplatedPlatform):
"""
Quartus toolchain
-----------------
.. rubric:: Quartus toolchain
Required tools:
* ``quartus_map``
@ -36,8 +35,7 @@ class IntelPlatform(TemplatedPlatform):
* ``{{name}}.rbf``: bitstream as raw binary file.
Mistral toolchain
-----------------
.. rubric:: Mistral toolchain
Required tools:
* ``yosys``

View file

@ -9,8 +9,7 @@ __all__ = ["LatticeECP5Platform"]
class LatticeECP5Platform(TemplatedPlatform):
"""
Trellis toolchain
-----------------
.. rubric:: Trellis toolchain
Required tools:
* ``yosys``
@ -39,8 +38,7 @@ class LatticeECP5Platform(TemplatedPlatform):
* ``{{name}}.bit``: binary bitstream.
* ``{{name}}.svf``: JTAG programming vector.
Diamond toolchain
-----------------
.. rubric:: Diamond toolchain
Required tools:
* ``pnmainc``

View file

@ -10,8 +10,7 @@ __all__ = ["LatticeICE40Platform"]
class LatticeICE40Platform(TemplatedPlatform):
"""
IceStorm toolchain
------------------
.. rubric:: IceStorm toolchain
Required tools:
* ``yosys``
@ -39,8 +38,7 @@ class LatticeICE40Platform(TemplatedPlatform):
* ``{{name}}.asc``: ASCII bitstream.
* ``{{name}}.bin``: binary bitstream.
iCECube2 toolchain
------------------
.. rubric:: iCECube2 toolchain
This toolchain comes in two variants: ``LSE-iCECube2`` and ``Synplify-iCECube2``.

View file

@ -10,8 +10,7 @@ __all__ = ["QuicklogicPlatform"]
class QuicklogicPlatform(TemplatedPlatform):
"""
Symbiflow toolchain
-------------------
.. rubric:: Symbiflow toolchain
Required tools:
* ``symbiflow_synth``

View file

@ -10,8 +10,7 @@ __all__ = ["XilinxPlatform"]
class XilinxPlatform(TemplatedPlatform):
"""
Vivado toolchain
----------------
.. rubric:: Vivado toolchain
Required tools:
* ``vivado``
@ -49,8 +48,7 @@ class XilinxPlatform(TemplatedPlatform):
* ``{{name}}.bit``: binary bitstream with metadata.
* ``{{name}}.bin``: binary bitstream.
ISE toolchain
-------------
.. rubric:: ISE toolchain
Required tools:
* ``xst``
@ -89,8 +87,7 @@ class XilinxPlatform(TemplatedPlatform):
* ``{{name}}.bit``: binary bitstream with metadata.
* ``{{name}}.bin``: raw binary bitstream.
Symbiflow toolchain
-------------------
.. rubric:: Symbiflow toolchain
Required tools:
* ``symbiflow_synth``

View file

@ -14,3 +14,4 @@ Language & toolchain
tutorial
lang
stdlib
platform

16
docs/platform.rst Normal file
View file

@ -0,0 +1,16 @@
Platform integration
####################
.. todo::
Write this section.
.. toctree::
:maxdepth: 2
platform/intel
platform/lattice-ecp5
platform/lattice-ice40
platform/lattice-machxo-2-3l
platform/quicklogic
platform/xilinx

10
docs/platform/intel.rst Normal file
View file

@ -0,0 +1,10 @@
Intel
#####
.. py:module:: amaranth.vendor.intel
The :mod:`amaranth.vendor.intel` package provides a base platform to support Intel toolchains.
The Quartus and Mistral toolchains are supported.
.. autoclass:: IntelPlatform

View file

@ -0,0 +1,10 @@
Lattice ECP5
############
.. py:module:: amaranth.vendor.lattice_ecp5
The :mod:`amaranth.vendor.lattice_ecp5` package provides a base platform to support Lattice ECP5 devices.
The Trellis and Diamond toolchains are supported.
.. autoclass:: LatticeECP5Platform

View file

@ -0,0 +1,10 @@
Lattice iCE40
#############
.. py:module:: amaranth.vendor.lattice_ice40
The :mod:`amaranth.vendor.lattice_ice40` package provides a base platform to support Lattice iCE40 devices.
The IceStorm and iCECube2 toolchains are supported.
.. autoclass:: LatticeICE40Platform

View file

@ -0,0 +1,19 @@
Lattice MachXO2 and MachXO3L
############################
.. py:module:: amaranth.vendor.lattice_machxo_2_3l
The :mod:`amaranth.vendor.lattice_machxo_2_3l` package provides a base platform to support Lattice
MachXO2 and MachXO3L devices.
The Diamond toolchain is supported.
.. autoclass:: LatticeMachXO2Platform
.. autoclass:: LatticeMachXO3LPlatform
.. note:: Both of the above are aliases for the actual platform below, however only the aliased
definitions are actually exported from the module for use.
.. autoclass:: LatticeMachXO2Or3LPlatform

View file

@ -0,0 +1,10 @@
Quicklogic
##########
.. py:module:: amaranth.vendor.quicklogic
The :mod:`amaranth.vendor.quicklogic` package provides a base platform to support Quicklogic toolchains.
The Symbiflow toolchain is supported.
.. autoclass:: QuicklogicPlatform

10
docs/platform/xilinx.rst Normal file
View file

@ -0,0 +1,10 @@
Xilinx
######
.. py:module:: amaranth.vendor.xilinx
The :mod:`amaranth.vendor.xilinx` package provides a base platform to support Xilinx toolchains.
The ISE, Vivado, and Symbiflow toolchains are supported.
.. autoclass:: XilinxPlatform