aalto-ele / bag_ecd

Python class to take care of path and variable setups between userspace and python
Other
2 stars 0 forks source link

Template generator is broken #7

Closed mkosunen closed 1 year ago

mkosunen commented 2 years ago

There seems to be several flaws in the template generator. At least following are indentified. It does not build: Template schematics are not copied which causes build to fail. if the dependency is "inverter" string replacement doesn not work.

mkosunen commented 2 years ago

Ping @sporrasm

mkosunen commented 2 years ago

Apparenlyt this message ins not important enoght :)

IMPORTANT! In order to run the generator, first run ./configure,
refresh Virtuoso, add schematic and symbol to template library

I think this problem should be solved. As renaming seems to work without problems, we probably should just use inverter as a template and rename it .

sporrasm commented 2 years ago

@mkosunen

I made a new module with the following command ./bag_ecd/shell/init_bag_module.sh -t ringoscillator_gen -d inverter Next, I typed cd ringoscillator_gen && ./configure Then refreshed Virtuoso libs, created schematic and symbol cellviews under ringoscillator_gen_templates with name ringoscillator_gen. After this, I ran make gen in ringoscillator_gen. And everything seems to be working fine. How did you deduce that string replacement will not work if dependency is inverter?

sporrasm commented 2 years ago

Apparenlyt this message ins not important enoght :)

IMPORTANT! In order to run the generator, first run ./configure,
refresh Virtuoso, add schematic and symbol to template library

I think this problem should be solved. As renaming seems to work without problems, we probably should just use inverter as a template and rename it .

In my opinion, this is an issue of documentation, rather than implementation. I have instructed every person using the script to follow the procedure printed in the terminal. This seems to work. In addition, we could have a BAG how-to manual in the docstrings of this module, as you suggested. (I like what Okko did with spice documentation, might not be a bad idea to follow the same procedure here).

Copying the same template over and over works, but the cellviews still have to be renamed manually through Virtuoso I think. We can of course move to this convention, but I would like to point out that this current convention has worked well over the past nine months or so.

sporrasm commented 2 years ago

The last missing step for complete automation of template generation: generate template schematic and symbol automatically (and possibly refresh virtuoso). This can be achieved via command line and example is available in release_shell.sh. We should implement this functionality to init_bag_module.sh

mkosunen commented 1 year ago

Development moved to https://gitlab.com/mosaic_group/mosaic_BAG