Update documentation and changelog to reflect existing changes.
This commit is contained in:
		
							parent
							
								
									aaec7e0d27
								
							
						
					
					
						commit
						309f647c0e
					
				|  | @ -18,7 +18,7 @@ class IntelPlatform(TemplatedPlatform): | ||||||
|         * ``quartus_sta`` |         * ``quartus_sta`` | ||||||
| 
 | 
 | ||||||
|     The environment is populated by running the script specified in the environment variable |     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: |     Available overrides: | ||||||
|         * ``add_settings``: inserts commands at the end of the QSF file. |         * ``add_settings``: inserts commands at the end of the QSF file. | ||||||
|  | @ -42,7 +42,7 @@ class IntelPlatform(TemplatedPlatform): | ||||||
|         * ``nextpnr-mistral`` |         * ``nextpnr-mistral`` | ||||||
| 
 | 
 | ||||||
|     The environment is populated by running the script specified in the environment variable |     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. |         * ``verbose``: enables logging of informational messages to standard error. | ||||||
|         * ``read_verilog_opts``: adds options for ``read_verilog`` Yosys command. |         * ``read_verilog_opts``: adds options for ``read_verilog`` Yosys command. | ||||||
|  |  | ||||||
|  | @ -17,7 +17,7 @@ class LatticeECP5Platform(TemplatedPlatform): | ||||||
|         * ``ecppack`` |         * ``ecppack`` | ||||||
| 
 | 
 | ||||||
|     The environment is populated by running the script specified in the environment variable |     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: |     Available overrides: | ||||||
|         * ``verbose``: enables logging of informational messages to standard error. |         * ``verbose``: enables logging of informational messages to standard error. | ||||||
|  | @ -45,7 +45,7 @@ class LatticeECP5Platform(TemplatedPlatform): | ||||||
|         * ``ddtcmd`` |         * ``ddtcmd`` | ||||||
| 
 | 
 | ||||||
|     The environment is populated by running the script specified in the environment variable |     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``, |     itself is a good candidate. On Windows, the following script (named ``diamond_env.bat``, | ||||||
|     for instance) is known to work:: |     for instance) is known to work:: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -18,7 +18,7 @@ class LatticeICE40Platform(TemplatedPlatform): | ||||||
|         * ``icepack`` |         * ``icepack`` | ||||||
| 
 | 
 | ||||||
|     The environment is populated by running the script specified in the environment variable |     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: |     Available overrides: | ||||||
|         * ``verbose``: enables logging of informational messages to standard error. |         * ``verbose``: enables logging of informational messages to standard error. | ||||||
|  | @ -47,7 +47,7 @@ class LatticeICE40Platform(TemplatedPlatform): | ||||||
|         * ``tclsh`` |         * ``tclsh`` | ||||||
| 
 | 
 | ||||||
|     The environment is populated by setting the necessary environment variables based on |     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. |     is required. | ||||||
| 
 | 
 | ||||||
|     Available overrides: |     Available overrides: | ||||||
|  | @ -306,7 +306,7 @@ class LatticeICE40Platform(TemplatedPlatform): | ||||||
|         if self.toolchain == "IceStorm": |         if self.toolchain == "IceStorm": | ||||||
|             return f"AMARANTH_ENV_{self.toolchain}" |             return f"AMARANTH_ENV_{self.toolchain}" | ||||||
|         if self.toolchain in ("LSE-iCECube2", "Synplify-iCECube2"): |         if self.toolchain in ("LSE-iCECube2", "Synplify-iCECube2"): | ||||||
|             return f"AMARANTH_ENV_iCECube2" |             return f"AMARANTH_ENV_ICECUBE2" | ||||||
|         assert False |         assert False | ||||||
| 
 | 
 | ||||||
|     @property |     @property | ||||||
|  |  | ||||||
|  | @ -16,7 +16,7 @@ class LatticeMachXO2Or3LPlatform(TemplatedPlatform): | ||||||
|         * ``ddtcmd`` |         * ``ddtcmd`` | ||||||
| 
 | 
 | ||||||
|     The environment is populated by running the script specified in the environment variable |     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``, |     itself is a good candidate. On Windows, the following script (named ``diamond_env.bat``, | ||||||
|     for instance) is known to work:: |     for instance) is known to work:: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -21,7 +21,7 @@ class QuicklogicPlatform(TemplatedPlatform): | ||||||
|         * ``symbiflow_write_bitstream`` |         * ``symbiflow_write_bitstream`` | ||||||
| 
 | 
 | ||||||
|     The environment is populated by running the script specified in the environment variable |     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: |     Available overrides: | ||||||
|         * ``add_constraints``: inserts commands in XDC file. |         * ``add_constraints``: inserts commands in XDC file. | ||||||
|  |  | ||||||
|  | @ -17,7 +17,7 @@ class XilinxPlatform(TemplatedPlatform): | ||||||
|         * ``vivado`` |         * ``vivado`` | ||||||
| 
 | 
 | ||||||
|     The environment is populated by running the script specified in the environment variable |     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: |     Available overrides: | ||||||
|         * ``script_after_read``: inserts commands after ``read_xdc`` in Tcl script. |         * ``script_after_read``: inserts commands after ``read_xdc`` in Tcl script. | ||||||
|  | @ -99,7 +99,7 @@ class XilinxPlatform(TemplatedPlatform): | ||||||
|         * ``symbiflow_write_bitstream`` |         * ``symbiflow_write_bitstream`` | ||||||
| 
 | 
 | ||||||
|     The environment is populated by running the script specified in the environment variable |     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: |     Available overrides: | ||||||
|         * ``add_constraints``: inserts commands in XDC file. |         * ``add_constraints``: inserts commands in XDC file. | ||||||
|  | @ -113,7 +113,7 @@ class XilinxPlatform(TemplatedPlatform): | ||||||
|         * ``xc7frames2bit`` |         * ``xc7frames2bit`` | ||||||
| 
 | 
 | ||||||
|     The environment is populated by running the script specified in the environment variable |     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 |     toolchain = None # selected when creating platform | ||||||
|  |  | ||||||
|  | @ -7,7 +7,28 @@ This document describes changes to the public interfaces in the Amaranth languag | ||||||
| Next version | 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 | Toolchain changes | ||||||
|  | @ -16,6 +37,7 @@ Toolchain changes | ||||||
| .. currentmodule:: amaranth | .. currentmodule:: amaranth | ||||||
| 
 | 
 | ||||||
| * Added: ``debug_verilog`` override in :class:`build.TemplatedPlatform`. | * 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 | Platform integration changes | ||||||
|  | @ -24,6 +46,7 @@ Platform integration changes | ||||||
| .. currentmodule:: amaranth.vendor | .. currentmodule:: amaranth.vendor | ||||||
| 
 | 
 | ||||||
| * Added: ``OSCH`` as ``default_clk`` clock source in :class:`vendor.lattice_machxo_2_3l.LatticeMachXO2Or3LPlatform`. | * 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 | Version 0.3 | ||||||
|  | @ -109,7 +132,7 @@ Platform integration changes | ||||||
| * Added: :class:`lattice_machxo_2_3l.LatticeMachXO3LPlatform`. | * Added: :class:`lattice_machxo_2_3l.LatticeMachXO3LPlatform`. | ||||||
| * Deprecated: :mod:`lattice_machxo2`; use :class:`lattice_machxo_2_3l.LatticeMachXO2Platform` instead. | * 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: :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: 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``. | * 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. | * Deprecated: :class:`lattice_machxo_2_3l.LatticeMachXO2Or3LPlatform` SVF programming vector ``{{name}}.svf``; use ``{{name}}_flash.svf`` instead. | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue
	
	 Catherine
						Catherine