Update documentation and changelog to reflect existing changes.

This commit is contained in:
Catherine 2023-01-31 12:48:46 +00:00
parent aaec7e0d27
commit 309f647c0e
7 changed files with 37 additions and 14 deletions

View file

@ -18,7 +18,7 @@ class IntelPlatform(TemplatedPlatform):
* ``quartus_sta``
The environment is populated by running the script specified in the environment variable
``AMARANTH_ENV_Quartus``, if present.
``AMARANTH_ENV_QUARTUS``, if present.
Available overrides:
* ``add_settings``: inserts commands at the end of the QSF file.
@ -42,7 +42,7 @@ class IntelPlatform(TemplatedPlatform):
* ``nextpnr-mistral``
The environment is populated by running the script specified in the environment variable
``AMARANTH_ENV_Mistral``, if present.
``AMARANTH_ENV_MISTRAL``, if present.
* ``verbose``: enables logging of informational messages to standard error.
* ``read_verilog_opts``: adds options for ``read_verilog`` Yosys command.

View file

@ -17,7 +17,7 @@ class LatticeECP5Platform(TemplatedPlatform):
* ``ecppack``
The environment is populated by running the script specified in the environment variable
``AMARANTH_ENV_Trellis``, if present.
``AMARANTH_ENV_TRELLIS``, if present.
Available overrides:
* ``verbose``: enables logging of informational messages to standard error.
@ -45,7 +45,7 @@ class LatticeECP5Platform(TemplatedPlatform):
* ``ddtcmd``
The environment is populated by running the script specified in the environment variable
``AMARANTH_ENV_Diamond``, if present. On Linux, diamond_env as provided by Diamond
``AMARANTH_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::

View file

@ -18,7 +18,7 @@ class LatticeICE40Platform(TemplatedPlatform):
* ``icepack``
The environment is populated by running the script specified in the environment variable
``AMARANTH_ENV_IceStorm``, if present.
``AMARANTH_ENV_ICESTORM``, if present.
Available overrides:
* ``verbose``: enables logging of informational messages to standard error.
@ -47,7 +47,7 @@ class LatticeICE40Platform(TemplatedPlatform):
* ``tclsh``
The environment is populated by setting the necessary environment variables based on
``AMARANTH_ENV_iCECube2``, which must point to the root of the iCECube2 installation, and
``AMARANTH_ENV_ICECUBE2``, which must point to the root of the iCECube2 installation, and
is required.
Available overrides:
@ -306,7 +306,7 @@ class LatticeICE40Platform(TemplatedPlatform):
if self.toolchain == "IceStorm":
return f"AMARANTH_ENV_{self.toolchain}"
if self.toolchain in ("LSE-iCECube2", "Synplify-iCECube2"):
return f"AMARANTH_ENV_iCECube2"
return f"AMARANTH_ENV_ICECUBE2"
assert False
@property

View file

@ -16,7 +16,7 @@ class LatticeMachXO2Or3LPlatform(TemplatedPlatform):
* ``ddtcmd``
The environment is populated by running the script specified in the environment variable
``AMARANTH_ENV_Diamond``, if present. On Linux, diamond_env as provided by Diamond
``AMARANTH_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::

View file

@ -21,7 +21,7 @@ class QuicklogicPlatform(TemplatedPlatform):
* ``symbiflow_write_bitstream``
The environment is populated by running the script specified in the environment variable
``AMARANTH_ENV_QLSymbiflow``, if present.
``AMARANTH_ENV_QLSYMBIFLOW``, if present.
Available overrides:
* ``add_constraints``: inserts commands in XDC file.

View file

@ -17,7 +17,7 @@ class XilinxPlatform(TemplatedPlatform):
* ``vivado``
The environment is populated by running the script specified in the environment variable
``AMARANTH_ENV_Vivado``, if present.
``AMARANTH_ENV_VIVADO``, if present.
Available overrides:
* ``script_after_read``: inserts commands after ``read_xdc`` in Tcl script.
@ -99,7 +99,7 @@ class XilinxPlatform(TemplatedPlatform):
* ``symbiflow_write_bitstream``
The environment is populated by running the script specified in the environment variable
``AMARANTH_ENV_Symbiflow``, if present.
``AMARANTH_ENV_SYMBIFLOW``, if present.
Available overrides:
* ``add_constraints``: inserts commands in XDC file.
@ -113,7 +113,7 @@ class XilinxPlatform(TemplatedPlatform):
* ``xc7frames2bit``
The environment is populated by running the script specified in the environment variable
``AMARANTH_ENV_Xray``, if present.
``AMARANTH_ENV_XRAY``, if present.
"""
toolchain = None # selected when creating platform

View file

@ -7,7 +7,28 @@ This document describes changes to the public interfaces in the Amaranth languag
Next version
============
Support for Python 3.6 has been dropped.
Support for Python 3.6 has been dropped, and support for Python 3.11 has been added.
Features deprecated in version 0.3 have been removed.
Migrating from version 0.3
--------------------------
Apply the following changes to code written against Amaranth 0.2 to migrate it to version 0.3:
* Update shell environment to use ``AMARANTH_ENV_<TOOLCHAIN>`` (with all-uppercase ``<TOOLCHAIN>``name) environment variable names instead of ``AMARANTH_ENV_<Toolchain>`` or ``NMIGEN_ENV_<Toolchain>`` (with mixed-case ``<Toolchain>`` name).
Language changes
----------------
.. currentmodule:: amaranth.hdl
* Added: :class:`ShapeCastable`, similar to :class:`ValueCastable`.
* Added: :meth:`Value.as_signed` and :meth:`Value.as_unsigned` can be used on left-hand side of assignment (with no difference in behavior).
* Changed: :meth:`Value.cast` casts :class:`ValueCastable` objects recursively.
* Changed: :meth:`Value.cast` treats instances of classes derived from both :class:`enum.Enum` and :class:`int` (including :class:`enum.IntEnum`) as enumerations rather than integers.
* Changed: :class:`Cat` accepts instances of classes derived from both :class:`enum.Enum` and :class:`int` (including :class:`enum.IntEnum`) without warning.
Toolchain changes
@ -16,6 +37,7 @@ Toolchain changes
.. currentmodule:: amaranth
* Added: ``debug_verilog`` override in :class:`build.TemplatedPlatform`.
* Deprecated: use of mixed-case toolchain environment variable names, such as ``NMIGEN_ENV_Diamond`` or ``AMARANTH_ENV_Diamond``; use upper-case environment variable names, such as ``AMARANTH_ENV_DIAMOND``.
Platform integration changes
@ -24,6 +46,7 @@ Platform integration changes
.. currentmodule:: amaranth.vendor
* Added: ``OSCH`` as ``default_clk`` clock source in :class:`vendor.lattice_machxo_2_3l.LatticeMachXO2Or3LPlatform`.
* Added: Xray toolchain support in :class:`vendor.xilinx.XilinxPlatform`.
Version 0.3
@ -109,7 +132,7 @@ Platform integration changes
* Added: :class:`lattice_machxo_2_3l.LatticeMachXO3LPlatform`.
* Deprecated: :mod:`lattice_machxo2`; use :class:`lattice_machxo_2_3l.LatticeMachXO2Platform` instead.
* Removed: :class:`xilinx_7series.Xilinx7SeriesPlatform.grade`; this family has no temperature grades.
* Removed: and :class:`xilinx_ultrascale.XilinxUltrascalePlatform.grade`; this family has temperature grade as part of speed grade.
* Removed: :class:`xilinx_ultrascale.XilinxUltrascalePlatform.grade`; this family has temperature grade as part of speed grade.
* Added: Symbiflow toolchain support for :class:`xilinx_7series.Xilinx7SeriesPlatform`.
* Added: :class:`lattice_machxo_2_3l.LatticeMachXO2Or3LPlatform` generates separate Flash and SRAM SVF programming vectors, ``{{name}}_flash.svf`` and ``{{name}}_sram.svf``.
* Deprecated: :class:`lattice_machxo_2_3l.LatticeMachXO2Or3LPlatform` SVF programming vector ``{{name}}.svf``; use ``{{name}}_flash.svf`` instead.