The Hierarchy Browser is a specialized visualization tool tailored for VLSI (Very Large Scale Integration) engineers. It transforms flat connection data (CSV) into an interactive, hierarchical node graph, allowing engineers to visualize signal flow, timing violations (WNS/TNS), and module connectivity across complex chip designs.
- Hierarchical Visualization: Automatically nests sub-modules (e.g.,
u_core/u_cache) into parent containers to mirror the actual RTL structure. - Timing Heatmaps: Instantly spot critical paths.
- Red Intensity: Indicates Worse Negative Slack (WNS).
- Edge Thickness: Represents signal count or connection strength.
- Interactive Filtering:
- Filter by Slack (WNS/TNS) to isolate timing violations.
- Filter by Connectivity to ignore minor control signals.
- Deep Inspection:
- Isolate Mode: Focus on one module and its immediate neighbors.
- Search: Regex-supported search to jump to specific instances.
- Zero-Install Sharing: Deployable as a static web app or a standout double-click application.
The tool accepts a CSV file with the following required columns. Each row represents a connection (edge) between two hierarchical pins or modules.
| Column Name | Description | Example |
|---|---|---|
hier |
Source module path (Hierarchical) | u_top/u_core/u_alu |
connnecting_hier |
Target (Destination) module path | u_top/u_mem/u_cache_ctrl |
connections |
Number of signals/bits in this link | 32 |
direction |
Signal direction | to or from |
wns |
Worst Negative Slack (Timing) | -0.45 |
tns |
Total Negative Slack | -12.5 |
(Note: The desc column is optional but helpful for tooltips.)
If you have received the dist folder:
- Mac: Double-click
Run_App.command - Windows: Double-click
Run_App.bat - Linux: Run
./start_server.sh - The app will open at
http://localhost:8000(or similar).
- Install Node.js (v18+).
- Clone the repo:
git clone https://github.com/guptaaryan0405/Hierarchy-Browser.git cd Hierarchy-Browser - Install dependencies:
npm install
- Run locally:
npm run dev
To build for production (creates the dist folder):
npm run buildSee DEPLOYMENT.md for full server hosting instructions.
See DEVELOPMENT.md for internal workflow and architecture details.
