Introduction
大约 1 分钟
Software Architecture
AiEDA follows a modular architecture built on top of the iEDA infrastructure:
AiEDA Architecture
├── AI Layer (aieda.ai)
│ ├── Net Wirelength Prediction (TabNet)
│ ├── Design Space Exploration (DSE)
│ └── ML Model Training & Inference
├── Analysis Layer (aieda.analysis)
│ ├── Design-level Analysis
│ ├── Net Analysis
│ ├── Path Analysis
│ └── Patch Analysis
├── EDA Integration Layer (aieda.eda)
│ ├── iEDA Tool Wrappers
│ ├── Flow Management
│ └── Data Extraction
├── Data Management Layer (aieda.data)
│ ├── Database Structures
│ ├── Vector Generation
│ └── Feature Engineering
├── Workspace Management (aieda.workspace)
├── Utilities (aieda.utility)
└── GUI Interface (aieda.gui)
Core Modules
aieda.ai
)
1. AI Module (- Net Wirelength Prediction: TabNet-based models for predicting wire lengths
- Design Space Exploration (DSE): Automated parameter optimization
- Model Training: Support for various ML frameworks and algorithms
aieda.analysis
)
2. Analysis Module (- Design Analysis: Cell type, core usage, pin distribution analysis
- Net Analysis: Wire distribution and metrics correlation
- Path Analysis: Delay and stage analysis
- Patch Analysis: Map analysis, wire density, and feature correlation
aieda.eda
)
3. EDA Integration (- iEDA Tool Integration: Wrappers for 11+ EDA tools
- Floorplanning (iFP)
- Placement (iPL)
- Routing (iRT)
- Clock Tree Synthesis (iCTS)
- Timing Optimization (iTO)
- Static Timing Analysis (iSTA)
- Power Analysis (iPA)
- Design Rule Checking (iDRC)
- And more...
aieda.data
)
4. Data Management (- Database Structures: Comprehensive data models for EDA features
- Vector Generation: Automated feature extraction and vectorization
- Parameters: EDA tool parameter management
aieda.flows
)
5. Flows (- iEDA Flow Management: Automated execution of EDA tool chains
- Data Generation: Automated dataset creation for ML training
- Flow Configuration: Flexible flow definition and execution
aieda.workspace
)
6. Workspace (- Project Management: Workspace creation and management
- File Organization: Structured project directory management
aieda.utility
)
7. Utilities (- Logging: Comprehensive logging system
- JSON Parsing: Configuration file management
- Permission Management: File and folder permission handling
aieda.gui
)
8. GUI (- Layout Visualization: Graphical interface for design visualization
Data Flow
The AiEDA data flow follows this pattern:
- Design Input → Workspace creation with design files
- EDA Processing → iEDA tools process the design through various stages
- Feature Extraction → Data extraction and vectorization from EDA results
- AI Analysis → ML models analyze extracted features
- Optimization → AI-guided parameter optimization and design improvements
- Validation → Results validation and iteration
Design Files → Workspace → iEDA Tools → Feature Extraction → AI Models → Optimization → Results
↑ ↓
└─────────────────── Feedback Loop ──────────────────────────────────────────┘
Key Features
- AI-Native Design: Built from ground up with AI/ML integration
- Comprehensive EDA Integration: Support for 11+ EDA tools via iEDA
- Automated Workflows: End-to-end automation from design to optimization
- Extensible Architecture: Modular design for easy extension and customization
- Production Ready: Proven with 4+ successful tape-outs
- Open Source: Fully open-source with active community support