Comments (4)
This stood out to me on the README before but was removed in some re-shuffling and I couldn't see an issue for it.
I think this would probably be better as a separate project. My current thinking on this is that we feed each subckt into netlistsvg and then click the ports to open the right netlist inside the viewer.
I guess the more interesting thing to me would be to allow navigating hierarchies in an interactive fashion but that may be out of scope for this project.
I'm working on pcbsvg
currently which is preparation for such a viewer. Even if placement and routing is done in kicad, pcbsvg
should be useful to check whether electrogrammar matched a CPL part.
This looks like a starting point: https://github.com/nturley/nturley.github.io
I think that the editor component should be removed and something like browser sync used instead, so that any editor can be used.
from netlistsvg.
Interactive viewer will be very cool. Netlistsvg should be able to handle hierarchical netlists from Yosys though and output separate SVGs.
So far I haven't been able to generate any hierarchal netlists though. Can anyone tell me how to use yosys -p "prep"
on hierarchal designs? Running it on the DE2i-150 example yields:
yosys> prep;
6. Executing PREP pass.
6.1. Executing HIERARCHY pass (managing design hierarchy).
ERROR: Module `\sevenseg' referenced in module `\top' in cell `\UUD0' is not part of the design.
And I am getting a similar thing for any hierarchal designs.
from netlistsvg.
Ok, I guess I don't need to run "prep". Running yosys -p "hierarchy; write_json" top_ver.v -o top.json
on this example (taken from here) yields following JSON. I guess it doesn't actually read the bottom* Verilog files.
{
"creator": "Yosys 0.7 (git sha1 61f6811, gcc 5.4.0-6ubuntu1~16.04.4 -O2 -fstack-protector-strong -fPIC -Os)",
"modules": {
"top_ver": {
"attributes": {
"src": "top_ver.v:1"
},
"ports": {
"q": {
"direction": "input",
"bits": [ 2 ]
},
"p": {
"direction": "input",
"bits": [ 3 ]
},
"r": {
"direction": "input",
"bits": [ 4 ]
},
"out": {
"direction": "output",
"bits": [ 5 ]
}
},
"cells": {
"u2": {
"hide_name": 0,
"type": "bottom2",
"parameters": {
},
"attributes": {
"src": "top_ver.v:8"
},
"connections": {
"n": [ 5 ],
"m": [ 4 ],
"l": [ 6 ]
}
},
"u1": {
"hide_name": 0,
"type": "bottom1",
"parameters": {
},
"attributes": {
"src": "top_ver.v:7"
},
"connections": {
"c": [ 6 ],
"b": [ 3 ],
"a": [ 2 ]
}
}
},
"netnames": {
"intsig": {
"hide_name": 0,
"bits": [ 6 ],
"attributes": {
"src": "top_ver.v:5"
}
},
"out": {
"hide_name": 0,
"bits": [ 5 ],
"attributes": {
"src": "top_ver.v:4"
}
},
"r": {
"hide_name": 0,
"bits": [ 4 ],
"attributes": {
"src": "top_ver.v:3"
}
},
"p": {
"hide_name": 0,
"bits": [ 3 ],
"attributes": {
"src": "top_ver.v:3"
}
},
"q": {
"hide_name": 0,
"bits": [ 2 ],
"attributes": {
"src": "top_ver.v:3"
}
}
}
}
}
}
from netlistsvg.
#64 is more specific about how to accomplish this so I'm going to close this issue as a duplicate.
from netlistsvg.
Related Issues (20)
- netlistsvg running on PC does not create circuit svg using json file created for FPGA synthesis HOT 8
- Add skins for missing Yosys RTL cells HOT 18
- Wires laid out atop one another HOT 2
- Shorted outputs don't work in the presence of split nodes HOT 1
- Can not draw svg with a "hardcoded FPGA block" HOT 2
- Exported svg is using "physical wiring connections" instead of "signal name association" (netlists) HOT 4
- Request: Padding
- TypeError: Cannot read property 'startsWith' of undefined at built/Skin.js:11 HOT 5
- patch for correct OR and NOR gates shapes in default.svg HOT 1
- Node v12 doesn't resolve dependancies HOT 1
- Text is getting cropped
- New version? HOT 1
- Module name used instead of Instance name for generic cells
- Render attribute as label on wires
- How to decode this error message? HOT 1
- $_ANDNOT gate is rendered as $_NAND HOT 4
- The generated schematics are corrupted around the (AND) cell. HOT 2
- wires
- output pin doesn't connect to anything HOT 1
- Add css media queries to support dark themes HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from netlistsvg.