Nic30 / jupyter_widget_hwt

Jupyter widget with interactive schematic for hwt circuints
MIT License
4 stars 0 forks source link

Is this an abandonded project or would you like a hand? #5

Open daquintero opened 1 year ago

daquintero commented 1 year ago

I am working on a similar thing actually using your d3 plugins, so happy to help on this if you're still keen?

Nic30 commented 1 year ago

@daquintero I would be super happy. Currently I do not have use for jupyter and I am using this instead. There are several people which are implementing some features.

My biggest problem is time (as for everyone on this planet). If you have discord please add me nic30_cz. Or write there I usually check github several times per day but previous week was an exception. I am also looking for people for some publications if you are interested.

Do you have something specific what you want to improve?

daquintero commented 1 year ago

So currently there is a problem (in industry and open source too) in the sense that there are no good ways of visualising the integration of microelectronics and photonics. I believe your toolset can be one of the key cogs of implementing this type of visualiser to see the effect of digital logic on photonic systems - mainly because everyone now is pushing towards open source. Most serious photonics design is now happening in https://github.com/gdsfactory/gdsfactory . So I am working on integrating this toolset, and am curious of the best way to do this. I thought Jupyter would be good as it's a one stop shop for all the existing opensource design plugins. What do you think? I've begun laying the very green structure of this in https://github.com/daquintero/gine and https://github.com/daquintero/oleo

I've added you on discord if you want to chat further.

Nic30 commented 1 year ago

visualising the integration of microelectronics and photonics

I think that there are actually very different problems nested inside:

I do not see any immediate problem for visualization of your circuits with d3-hwschematic. I crafted this this library for digital circuit design but I am using experimentally also for PCB design.

First we have to somehow quantify requirements of your use-case. For digital circuits basically main problem is scaling and searching in data. I do not know how it is for photonics and analog designs. Another things which must be considered is that Eclipse Layout Kit used to generate layouts have numerous limitations and imperfections.

I truly would love to have some reliable opensource general purpose tool for this task. Problem with opensource is that it needs a community of a critical mass to be truly alive and currently basically I and coworkers are using it. For me it is very hard to find time for community management.

thought Jupyter

Well I was thinking that the Jupyter widget is a best when it comes to visualization. Surely it has its benefits but Jupyter itself is basically broken when it comes to plugin development.
Various problems with state and focus issues, installation hacks, version issues, performance issues to just name few.

Personally I am using plugins for vscode rather than this Jupyter plugin because I usually need to store outputs to some files and
then load them (so there is only a little benefit from Jupyter widget vs vscode tab) For WebUI based input purposes I am using mostly gradio. But it seems to me that using some WebUI is just useless and combinations of scripts + dump files (netlist, vcd ...) works best. I had high hopes for examples written in Jupyter which will also work as a test as I was expecting that it would be easy to test that the widget rendered same thing or at least have same state. Sadly it is not. There is also problem with running Jupyter notebooks with custom extensions on services like mybinder.org because build of custom docker takes ridiculous amount of time and thus it can not be used to show repo page visitor how this library works because basically no one is willing to wait 20min.

gine/oleo

Projects are basically empty so it is hard for me to give any feedback.


Sorry for long delay. I know I can not realistically expect that anyone would like to work with me with this approach. It sounds like a joke but I am living a live a a common PhD student. Every day contains some live threatening deadline in a project with a problem which no one was able to crack from the beginning of the universe.

I do not know how much time can allocate on this project but I as I said the community is whole purpose of doing open source project. Having high quality tools for chip development is essential.

daquintero commented 1 year ago

Thanks for all your thoughts and feedback! I had to put the visualisation question on the side for now as I am integrating the full design flow through piel.

You guys are doing some great work through the visualisation toolset and good to know the general appreciation of the visualisation approaches. Haha I fully appreciate the PhD lifestyle as am on the same boat. When I get round to doing visualisation again and can get round to supporting your projects, maybe that's how I'll approach it.

Cheers!