Commit graph

190 commits

Author SHA1 Message Date
Catherine d557afdcd9 docs: avoid excessive font smallness in the sidebar. 2024-04-10 01:30:10 +00:00
Catherine 3103841eee docs/stdlib/data: use :py: role. NFC 2024-04-10 01:30:10 +00:00
Catherine 1a962cc405 docs: remove all generated WaveDrom diagrams. 2024-04-10 01:30:10 +00:00
Catherine 7dd93bea57 Document RFC 62.
This includes a few minor code changes:
- Removing redundant `lib.memory.Memory.Init = hdl.MemoryData.Init`
  re-export;
- Renaming `FrozenError` to `FrozenMemory` and moving it to `.hdl`;
- Marking `ReadPort` and `WritePort` as `@final`.
2024-04-09 15:52:34 +00:00
Catherine 6fb5f3f120 docs/memory: use wavedrom directive for diagrams. 2024-04-07 08:03:44 +00:00
Wanda 0e6d802de4 Implement RFC 58: Core support for ValueCastable formatting. 2024-04-03 19:59:19 +00:00
Wanda 767d69c703 hdl._mem: implement MemoryData._Row from RFC 62. 2024-04-03 17:15:02 +00:00
Wanda 93ef89626e docs: add links to more docs versions. 2024-04-03 16:15:25 +00:00
Catherine 967dabc2fe docs/{guide,reference}: clarify semantics of a.any() vs a.bool(). 2024-04-03 13:29:19 +00:00
Catherine 3c6f46717b lib.wiring: allow reset-less signals in interfaces.
This check was originally added out of abundance of caution, but since
then it was observed that reset-less-ness is purely an implementation
detail (see #1220), and furthermore it interferes with adaptation of
`FIFOInterface`` signals (where `[rw]_data` are reset-less) for RFC 61.
2024-04-03 12:01:48 +00:00
Wanda 0e4c2de725 Implement RFC 59: Get rid of upwards propagation of clock domains 2024-04-02 17:00:42 +00:00
Wanda 09d5540430 hdl._mem: add MemoryData class.
This implements half of RFC 62. The `MemoryData._Row` class will be
implemented later, as a follow-up.
2024-04-02 14:58:23 +00:00
Catherine f261071f7c docs/guide: clarify section on IOBufferInstance.
There is no reason to assign names to `IOBufferInstance` submodules
because it's ignored anyways.
2024-03-26 23:21:29 +00:00
Catherine 3d5c36a606 docs/reference: finish Value section. 2024-03-25 16:03:55 +00:00
Catherine 6ce82848d9 lib.memory: Memory.{r,w}_ports.{read,write}_ports.
The abbreviated form was initially added to match `lib.fifo`, but it
looks very out of place on `lib.memory`, and we may be moving away from
such heavy use of abbreviations anyway.

While technically a breaking change, these attributes have very narrow
usefulness and so this change qualifies as "minor".
2024-03-22 23:05:42 +00:00
Catherine 8d44ec513d lib.memory: improve and finish documentation. 2024-03-22 23:05:42 +00:00
Catherine e3c9296813 docs: introduce custom "Members" section, for lib.wiring signatures. 2024-03-22 23:05:42 +00:00
Catherine 6b512520ff docs: upgrade sphinx-rtd-theme, work around readthedocs/sphinx_rtd_theme#1301. 2024-03-22 23:05:42 +00:00
Wanda 456dcaeb7b lib.io: Implement *Buffer from RFC 55. 2024-03-22 01:44:25 +00:00
Catherine 81eae1dd35 docs/install: link to YoWASP. 2024-03-22 01:22:02 +00:00
Catherine 12b4b1891a docs/install: link to playground. 2024-03-22 01:22:02 +00:00
Catherine 2ab3a4a0a0 docs/install: fix Yosys version requirement. 2024-03-22 01:22:02 +00:00
Wanda 8c65a79cdd hdl._ir: Remove support for non-Elaboratable elaboratables.
Fixes #1216.
2024-03-20 08:20:23 +00:00
Wanda d6bf47d549 Implement RFC 51: Add ShapeCastable.from_bits and amaranth.lib.data.Const.
Co-authored-by: Catherine <whitequark@whitequark.org>
2024-03-19 04:01:26 +00:00
Wanda 598cf8db28 lib.io: Implement *Port from RFC 55. 2024-03-18 23:56:34 +00:00
Wanda 744576011f Implement RFC 53: Low-level I/O primitives.
Co-authored-by: Catherine <whitequark@whitequark.org>
Co-authored-by: mcclure <mcclure@users.noreply.github.com>
2024-03-18 20:33:22 +00:00
Catherine add7d70050 docs/guide: fix incorrect reference. 2024-03-14 06:10:14 +00:00
Wanda bfe541a6d7 Implement RFC 50: Print and string formatting.
Co-authored-by: Catherine <whitequark@whitequark.org>
2024-03-11 09:42:43 +00:00
Wanda 7e291a26e3 docs: Add more links for past releases. 2024-03-08 03:54:34 +00:00
Wanda c2001fe935 vendor: Rename IntelPlatform to AlteraPlatform.
Fixes #1179.
2024-03-03 22:52:58 +00:00
Catherine 6dc7c2718c docs/guide: fix a bunch of TODOs. 2024-02-27 09:10:29 +00:00
Catherine 77e41cc88a docs: add stub stdlib/memory, mark guide as done. 2024-02-27 09:10:29 +00:00
Wanda 890e099ec3 Implement RFC 45: Move hdl.Memory to lib.Memory. 2024-02-19 22:24:58 +00:00
Wanda 6058ad35cf hdl._ast: make Shape immutable and hashable.
Fixes #1127.
2024-02-16 15:21:05 +00:00
Wanda 24a392887a Implement RFC 43: Rename reset= to init=. 2024-02-15 22:52:24 +00:00
Catherine 52842ee524 docs: fix link rot. 2024-02-15 19:58:19 +00:00
Catherine b9c9948038 docs: use :py: role for inline Python code, not :pc:.
I originally picked :pc: as it is short for "python code", but it is
obscure and :py: is not taken, so a much more obvious role can be used
instead. Also, we all typo :pc: as :py: all the time anyway.
2024-02-13 10:38:36 +00:00
Wanda 5797643c9c docs: remove leftover TODO and warning from #1003, fix matches docs. 2024-02-13 06:23:23 +00:00
Catherine 0056e982c5 docs/reference: document Value, ValueCastable, ValueLike.
Co-authored-by: Wanda <wanda@phinode.net>
Co-authored-by: mcclure <mcclure@users.noreply.github.com>
2024-02-13 03:22:04 +00:00
Wanda 4014f6429c Implement RFC 27 amendment: deprecate add_sync_process, not add_process. 2024-02-12 18:26:48 +00:00
Catherine 78b90fbafa build.plat,vendor: fix toolchain environment variable check.
The bug was introduced in commit 15b6068c. A changelog entry was also
missing.

Fixes #1089.
2024-02-08 11:37:59 +00:00
Catherine 9e75962c35 Implement RFC 27: Testbench processes for the simulator.
Co-authored-by: Wanda <wanda@phinode.net>
2024-02-06 23:12:07 +00:00
Wanda 089213e19f Implement RFC 46: Change Shape.cast(range(1)) to unsigned(0). 2024-02-06 10:05:10 +00:00
Catherine b5f0295bf4 docs/changes: mention removal of Repl. 2024-01-31 04:13:31 +00:00
Catherine 357ffb680c hdl: remove Repl per RFC 10.
Closes #770.
2024-01-31 03:01:35 +00:00
Catherine ea3d6c9557 docs/reference: document compat guarantee, importing, shapes.
This commit also contains a related semantic change: it adds `Shape`
and `ShapeCastable` to the `__all__` list in `amaranth.hdl`. This is
consistent with the policy that is laid out in the new documentation,
which permits such additions without notice.

Co-authored-by: mcclure <mcclure@users.noreply.github.com>
2024-01-30 22:54:18 +00:00
Catherine c9b87a4fc5 docs: lang.rst→guide.rst, add reference.rst. 2024-01-30 22:54:18 +00:00
Catherine 5dd1223cf8 amaranth.hdl: start all private names with an underscore.
This change completes commit 9dc0617e and makes all the tests pass.
It corresponds with the ongoing langauge reference documentation effort.

Fixes #781.
2024-01-30 17:20:45 +00:00
Catherine e88ff1335e docs/start: update to track changes in the language. 2024-01-30 03:22:46 +00:00
Wanda e9299ccd0e hdl.ast: change warning on out-of-range reset to an error, improve it.
Fixes #1019.
2024-01-30 02:35:26 +00:00