Commit graph

38 commits

Author SHA1 Message Date
whitequark 3e59d857e1 back.pysim: use bare ints for signal values (-5% runtime). 2018-12-14 03:05:57 +00:00
whitequark fb27c2520b back.pysim: new simulator backend (WIP). 2018-12-13 18:02:46 +00:00
whitequark 71f1f717c4 fhdl.cd: rename ClockDomain signals together with domain. 2018-12-13 15:24:55 +00:00
whitequark 07c818e077 fhdl.ir: move Fragment prepare logic from back.rtlil. 2018-12-13 14:34:07 +00:00
whitequark 90f1503c91 fhdl.ir: record port direction explicitly.
No point in recalculating this in the backend when writing RTLIL or
Verilog port directions.
2018-12-13 13:12:31 +00:00
whitequark 6251c95d4e compat.genlib.fsm: import/wrap Migen code. 2018-12-13 12:41:19 +00:00
whitequark 9661e897e6 fhdl.ir: a subfragment's input that we don't drive is also our input. 2018-12-13 11:50:56 +00:00
whitequark bb04c9e0da fhdl, back: trace and emit source locations of values. 2018-12-13 11:44:06 +00:00
whitequark b150f1915d fhdl.ir: don't crash propagataing ports in empty fragments. 2018-12-13 11:25:49 +00:00
whitequark 72257b6935 fhdl.ir: implement clock domain propagation. 2018-12-13 11:01:03 +00:00
whitequark fde2471963 fhdl.ir: remove iter_domains(). 2018-12-13 10:18:57 +00:00
whitequark f4340c19bb fhdl: cd_name→domain. 2018-12-13 10:15:01 +00:00
whitequark c5087edfa5 fhdl.cd: add tests. 2018-12-13 09:19:16 +00:00
whitequark 9bee90f1bd fhdl.xfrm: implement DomainRenamer. 2018-12-13 08:57:14 +00:00
whitequark 19aa404628 fhdl.xfrm: add tests for ResetInserter, CEInserter. 2018-12-13 08:39:02 +00:00
whitequark b1a89ef5fd fhdl.ir: add tests for port propagation. 2018-12-13 08:09:39 +00:00
whitequark d2e2d00e45 fhdl.cd: rename ClockDomain.{reset→rst}. 2018-12-13 07:27:27 +00:00
whitequark e0a81edf4d fhdl.dsl: add tests for submodules. 2018-12-13 07:24:28 +00:00
whitequark 932f1912a2 fhdl.dsl: use less error-prone Switch/Case two-level syntax. 2018-12-13 07:11:06 +00:00
whitequark f70ae3bac5 fhdl.dsl: add tests for d.comb/d.sync, If/Elif/Else. 2018-12-13 06:06:51 +00:00
whitequark 5b8708017e fhdl.ast: fix Switch._?hs_signals() for switch without statements. 2018-12-13 05:00:44 +00:00
whitequark 4df5c5de65 fhdl.ir: explain how port enumeration works. 2018-12-13 03:31:13 +00:00
whitequark bfd0011aee fhdl.ir: make sure clocks and resets of used CDs appear as inputs. 2018-12-13 02:43:22 +00:00
whitequark 22c76e5f90 compat.fhdl.module: implement finalization. 2018-12-13 02:36:15 +00:00
whitequark f0f4c0ce61 fhdl.ast: bits_sign→shape. 2018-12-13 02:06:58 +00:00
whitequark dc486ad8b9 fhdl.ast: add tests for most logic. 2018-12-13 02:06:55 +00:00
whitequark b4dab74b2e compat.fhdl.{module,structure}: import/wrap Migen code (WIP). 2018-12-12 15:47:34 +00:00
whitequark 1d4d00aac6 fhdl.ast.Signal: implement .like(). 2018-12-12 14:43:19 +00:00
whitequark ad9b45adcd fhdl.ir: fix port threading code. 2018-12-12 13:00:50 +00:00
whitequark 0fac1f8d0f fhdl.dsl: comb/sync/sync.pix→d.comb/d.sync/d.pix. 2018-12-12 12:38:24 +00:00
whitequark 00f0b950f6 fhdl.ast.Signal: fix typo. 2018-12-12 12:37:30 +00:00
whitequark aab01d9e59 fhdl.ast.Signal: implement attrs field. 2018-12-12 11:30:40 +00:00
whitequark 4eadc1629a fhdl.ast.Signal: implement width derivation from min/max. 2018-12-12 10:43:09 +00:00
whitequark 263d577323 fhdl.ast.Signal: implement reset_less signals. 2018-12-12 10:11:16 +00:00
whitequark 1d46ffb591 fhdl.ast.Signal: assign an internal name if tracer fails. 2018-12-12 10:08:56 +00:00
whitequark 6d5878a0ee fhdl.dsl: allow f.sync["dom"] as a synonym of f.sync.dom. 2018-12-12 10:00:00 +00:00
whitequark 851ed06769 ClockDomain.{rst→reset}, for consistency with ResetInserter.
nmigen.compat.ClockDomain would alias this, for Migen compatibility.
2018-12-12 09:49:02 +00:00
whitequark 4d3258013d Initial commit. 2018-12-12 03:18:44 +00:00