- *a=→b=*: parameter *a* renamed to *b*
- *a=∼*: parameter *a* removed
- *.a=→.b*: attribute *a* renamed to *b*
+ - *.a=∼*: attribute *a* removed
- *?*: no decision made yet
When describing renames or replacements, `mod` refers to a 3rd-party package `mod` (no nMigen implementation provided), `.mod.item` refers to `nmigen.mod.item`, and "(import `.item`)" means that, while `item` is provided under `nmigen.mod.item`, it is aliased to, and should be imported from a shorter path for readability.
- (−) `FullMemoryWE` ?
- (−) `MemoryToArray` ?
- (−) `SplitMemory` ?
- - (â\88\92) `specials` **obs**
- - (â\88\92) `Special` ?
- - (â\88\92) `Tristate` ?
- - (+) `TSTriple` → `.lib.io.TSTriple`, `bits_sign=`→`shape=`
- - (â\88\92) `Instance` ?
- - (+) `Memory` id
- - (+) `.get_port` **obs** → `.read_port()` + `.write_port()`
- - (+) `_MemoryPort` **obs**
+ - (â\8a\95) `specials` **obs**
+ - (â\8a\99) `Special` **brk**
+ - (â\8a\95) `Tristate` â\86\92 `.lib.io.Tristate`, `target=`â\86\92`io=`
+ - (⊕) `TSTriple` → `.lib.io.TSTriple`, `bits_sign=`→`shape=`
+ - (â\8a\95) `Instance` â\86\92 `.hdl.ir.Instance`
+ - (⊕) `Memory` id
+ - (⊕) `.get_port` **obs** → `.read_port()` + `.write_port()`
+ - (⊕) `_MemoryPort` **obs**
<br>Note: nMigen separates read and write ports.
- - (+) `READ_FIRST`/`WRITE_FIRST` **obs**
+ - (⊕) `READ_FIRST`/`WRITE_FIRST` **obs**
<br>Note: `READ_FIRST` corresponds to `mem.read_port(transparent=False)`, and `WRITE_FIRST` to `mem.read_port(transparent=True)`.
- - (-) `NO_CHANGE` **brk**
+ - (⊙) `NO_CHANGE` **brk**
<br>Note: in designs using `NO_CHANGE`, repalce it with an asynchronous read port and logic implementing required semantics explicitly.
- (−) `structure` → `.hdl.ast`
- (+) `DUID` id
- (+) `ResetSignal` id, `cd=`→`domain=`
- (+) `_Statement` → `Statement`
- (+) `_Assign` → `Assign`, `l=`→`lhs=`, `r=`→`rhs=`
- - (-) `_check_statement` **obs** → `Statement.wrap`
+ - (+) `_check_statement` **obs** → `Statement.wrap`
- (+) `If` **obs** → `.hdl.dsl.Module.If`
- (+) `Case` **obs** → `.hdl.dsl.Module.Switch`
- (+) `_ArrayProxy` → `.hdl.ast.ArrayProxy`, `choices=`→`elems=`, `key=`→`index=`
- (−) `genlib` → `.lib`
- (−) `cdc` ?
- (−) `MultiRegImpl` ?
- - (+) `MultiReg` id
+ - (⊕) `MultiReg` id
- (−) `PulseSynchronizer` ?
- (−) `BusSynchronizer` ?
- (−) `GrayCounter` ?
- (−) `divider` ?
- (−) `Divider` ?
- (−) `fifo` ?
- - (−) `SyncFIFO` ?
- - (−) `SyncFIFOBuffered` ?
+ - (⊕) `_FIFOInterface` → `FIFOInterface`
+ - (⊕) `SyncFIFO` id, `.fifo=`∼
+ - (⊕) `SyncFIFOBuffered` id, `.fifo=`∼
- (−) `AsyncFIFO` ?
- (−) `AsyncFIFOBuffered` ?
- - (−) `_FIFOInterface` ?
- (+) `fsm` **obs**
- (+) `AnonymousState` **obs**
- (+) `NextState` **obs**