Dan Fritchman

Results 60 issues of Dan Fritchman

The paths we *export*, which eventually (can) become `_importpath`s, could get smarter. Example: ```python import hdl21 as h m = h.Module(name="MyName") print(m._importpath) pkg = h.to_proto(m) ns = h.from_proto(pkg) print(ns.__main__.MyName._importpath) ```...

Lots of Hdl21 stuff gets built class-style, with Python identifiers serving as Hdl attribute names. E.g. in our front-page example: ```python import hdl21 as h @h.module class MyModule: i =...

On some level related to https://github.com/Vlsir/Vlsir/issues/47. It's not clear how far the current Xyce issues go, but on at least two machines, they include failing to comprehend the Hdl21 `sample_pdk`....

Some new-user intuition about how to use `Bundle`s: ```python import hdl21 as h @h.module class Inner: d = h.Diff(port=True) @h.module class Outer: # Make an `Inner` instance, and a `Diff`...

The Hdl21 half of https://github.com/Vlsir/Vlsir/issues/65. So: * VLSIR netlisting probably needs a change; the "use periods as path separators" won't work, especially since the injection of literal parameters * Hdl21...

```python @h.module class M: inp = h.Diff() out = h.Diff() bias, VSS = 2 * h.Input() pair = h.Pair(h.Nmos())(d=out, g=inp, b=VSS) nbias = h.Nmos()(g=bias, s=VSS, b=VSS, d=FIXME) #

This comes up from time to time, notably in #44. We do something like: ```python some_hdl21_thing = h.Something() h.netlist(some_hdl21_thing, dest) # OK great! Now check we got "the expected" netlist:...

Feature: automagically generate documentation tables along the lines of: --- ## MyPDK ### Mos Device Mapping | MosType | MosFamily | MosVth | Device Name | |-------- | -------- |...

Most of the content of `hdl21.Module` is arranged in dictionaries of the form: ```python things: Dict[str, Thing] ``` Where * (a) "Thing"s include all the valid `ModuleAttr`s: `Signal`s, `Instance`s, and...