Commit graph

1670 commits

Author SHA1 Message Date
Wanda a7a7d32099 hdl._ast: deprecate Value.implies. 2024-04-16 19:26:08 +00:00
Chris Baker c4370efcf4 docs: change combinatorial to combinational
- Replace occurrences of combinatorial with combinational in docstrings
- Replace occurrences of combinatorial with combinational in .rst files
- Add note to contrib.rst to document the editorial decision from #1301
2024-04-16 02:19:10 +00:00
Wanda 08aaac9a41 docs/guide: remove warning about lack of combinational loop detection. 2024-04-15 17:33:27 +00:00
Wanda f243cea0fb sim: implement Format.* for memories in VCD. 2024-04-15 14:54:44 +00:00
Wanda 625dac376a hdl._dsl: improve error message on m.domains.cd_foo = ....
Fixes #1331.
2024-04-15 00:32:09 +00:00
Catherine 8c1c9f2d26 docs: begin building the documentation style guide. 2024-04-13 20:56:55 +00:00
Wanda 877a1062a6 hdl._nir: add combinational cycle detection.
Fixes #704.
Fixes #1143.
2024-04-13 14:01:47 +00:00
Catherine 3fbed68365 pyproject: use .dev{distance}, not +{node}, for non-release builds.
At the moment this uses a git URL for pdm-backend because required PDM
functionality (pdm-project/pdm-backend#217) is not released yet.
2024-04-13 12:45:05 +00:00
Wanda 8bf4f77616 sim: use Format.* for VCD output, remove hdl._repr.
This also changes `decoder` a bit: when an enum is used as a decoder,
it is converted to a `Format.Enum` instead. The original enum is still
stored on the `decoder` attribute, so that it can be propagated
on `Signal.like`.
2024-04-13 10:00:16 +00:00
Wanda 122be7849c sim: raise an error when overriding a combinationally-driven signal.
Fixes #557.
2024-04-13 09:40:41 +00:00
Wanda 16f187e7fa test_build_res: fix naming, squash warnings. 2024-04-13 08:38:38 +00:00
Wanda eebffc15d6 sim: add eval_format function.
This will be used in an upcoming PR for VCD output.
2024-04-12 20:14:11 +00:00
Wanda 580706fafd hdl._nir, back.rtlil: use Format.* to emit enum attributes and wires for fields. 2024-04-11 22:02:26 +00:00
Wanda 4cb2dde25f lib.data: add .format() implementation. 2024-04-11 19:02:06 +00:00
Wanda 67f5b61bcc hdl._ast: add enum name argument to Format.Enum.
Turns out that RTLIL enum representation requires such, so add a place to store it.
2024-04-11 18:45:16 +00:00
Wanda 1fdd9bf4e9 lib.enum: add .format() implementation. 2024-04-11 14:23:26 +00:00
Wanda 3c870d6b73 hdl._ast: add Format.Enum, Format.Struct, Format.Array. 2024-04-11 10:02:54 +00:00
Wanda 6f5d009fad sim: fix LRHS evaluation.
Fixes #1269.
2024-04-11 09:42:14 +00:00
Wanda 49a8a942e8 lib.enum: rename EnumMeta to EnumType.
Fixes #1073.
2024-04-11 08:40:12 +00:00
Catherine 84dff93786 docs/stdlib/crc: minor phrasing improvement. 2024-04-11 06:46:27 +00:00
Wanda c59447c258 hdl._ast: make Signal.like work properly with ShapeCastables.
Fixes #1285.
2024-04-11 05:03:17 +00:00
Wanda 0be2dda656 lib.data: accept data.Const in *.const(). 2024-04-11 03:20:35 +00:00
Wanda cf534489a2 build.{plat,res}: post-lib.io cleanup. 2024-04-11 03:19:38 +00:00
Wanda 7fe62f810b Implement RFC 63: Remove amaranth.lib.coding 2024-04-11 00:15:55 +00:00
Catherine 8c02d3ef89 Bump Yosys dependency to >=0.40. 2024-04-10 21:57:30 +00:00
Wanda b36e7e0880 lib.fifo: remove dependency on lib.coding. 2024-04-10 20:50:45 +00:00
Wanda 2ca55dd4b0 build.res: handle connectors in pin reuse detection. 2024-04-10 20:19:13 +00:00
Jean-François Nguyen fd811831fd docs: remove margin around logo background. 2024-04-10 19:58:40 +00:00
Catherine 1b81a47b69 test_lib_crc: speed up tests using multiprocessing. 2024-04-10 05:08:05 +00:00
Catherine b6f51d269e lib.crc,docs/stdlib/crc: improve consistency with the rest of documentation. 2024-04-10 05:08:05 +00:00
Catherine c68f9e43f9 Add .editorconfig file.
This helps avoid inconsistent editor settings.
2024-04-10 05:08:05 +00:00
Wanda 544eeee788 build.run: fix broken link in docstring. 2024-04-10 04:51:47 +00:00
Wanda d449b0349d vendor._xilinx: implement lib.io buffer primitives. 2024-04-10 04:00:30 +00:00
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
Wanda 4f6b0f23c2 vendor.{_gowin,_lattice_*}: fix DDR buffer naming. 2024-04-10 00:15:42 +00:00
Wanda 545aee7733 vendor._lattice_ecp5: fix input domain in FFBuffer. 2024-04-09 23:42:24 +00:00
Wanda 16e80a7dcf vendor._lattice_machxo_2_3l: implement lib.io buffer primitives. 2024-04-09 22:41:23 +00:00
Sage Walker 514ff0bcbc build.run: fix execute_local_docker() not exiting docker container on SIGINT 2024-04-09 22:07:36 +00:00
Wanda cd083aac14 vendor._gowin: implement lib.io buffer primitives. 2024-04-09 19:46:19 +00:00
Catherine d28d15761d vendor: LatticeICE40Platform→SiliconBluePlatform.
Devices originally designed by SiliconBlue have one set of primitives,
and devices originally designed by AT&T, Alcatel-Lucent, or Lattice
have a different set of primitives. This is the first step in merging
the non-SiliconBlue Lattice platforms into one.
2024-04-09 19:31:51 +00:00
Wanda 0597ac08ff vendor._lattice_ecp5: implement lib.io buffer primitives. 2024-04-09 19:22:00 +00:00
Wanda 1b9290188b vendor._altera: implement lib.io buffer primitives. 2024-04-09 18:24:36 +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
Wanda 38ad35757b build.res: give a more specific error for add_clock_constraint(ClockSignal).
Fixes #542.
2024-04-07 09:54:47 +00:00
Catherine 6fb5f3f120 docs/memory: use wavedrom directive for diagrams. 2024-04-07 08:03:44 +00:00
Wanda 7936b87667 hdl._ir: add caches for Matches and PriorityMatch cells. 2024-04-06 10:25:42 +00:00
Catherine df589a54e0 _toolchain.yosys: fix amaranth-yosys version extractor. 2024-04-06 08:01:49 +00:00
Wanda 6857daff54 vendor._lattice_ice40: implement lib.io buffer primitives. 2024-04-05 04:07:29 +00:00