Update docs: Detailed README and Defense Research Poster context
Browse files- POSTER_CONTENT.md +97 -0
- README.md +111 -80
POSTER_CONTENT.md
ADDED
|
@@ -0,0 +1,97 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Research Poster Content: AgentIC & Defense Challenges
|
| 2 |
+
|
| 3 |
+
## Title
|
| 4 |
+
**AgentIC: Autonomous Sovereign Silicon Design Framework for Defense Applications**
|
| 5 |
+
|
| 6 |
+
## Abstract
|
| 7 |
+
Modern defense systems are critically dependent on advanced semiconductors. However, reliance on foreign EDA tools and fabrication supply chains introduces severe risks, including Hardware Trojans, backdoors, and strategic denial of technology. Validating the "Trust" in hardware is expensive and time-consuming. **AgentIC** is a novel, AI-driven "Text-to-Silicon" framework designed to democratize and accelerate the design of secure, sovereign silicon. By leveraging localized Large Language Models (LLMs) and open-source EDA tools (OpenLane), AgentIC automates the RTL-to-GDSII flow, ensuring design secrecy and reducing the "Time-to-Tactical-Edge" for custom hardware solutions.
|
| 8 |
+
|
| 9 |
+
---
|
| 10 |
+
|
| 11 |
+
## 1. Problem Statement: The Defense Silicon Gap
|
| 12 |
+
|
| 13 |
+
### A. Supply Chain Vulnerability
|
| 14 |
+
* **Dependency:** Over 90% of advanced chips and EDA tools are controlled by non-domestic entities.
|
| 15 |
+
* **Risk:** In conflict scenarios, access to critical components can be cut off (Sanctions/Blockades).
|
| 16 |
+
|
| 17 |
+
### B. Hardware Security Threats
|
| 18 |
+
* **Trojans:** Malicious logic inserted during design or fabrication (e.g., "Kill Switches" or data exfiltration backdoors).
|
| 19 |
+
* **Opaque IP:** Using closed-source "Black Box" IP cores makes it impossible to verify full security coverage.
|
| 20 |
+
|
| 21 |
+
### C. Obsolescence & Agility
|
| 22 |
+
* **Legacy Systems:** Maintaining aging military hardware requires obsolete chips that are no longer manufactured.
|
| 23 |
+
* **Slow Development:** Traditional ASIC design cycles take 18-24 months, too slow for evolving asymmetric threats.
|
| 24 |
+
|
| 25 |
+
---
|
| 26 |
+
|
| 27 |
+
## 2. Proposed Solution: The AgentIC Framework
|
| 28 |
+
|
| 29 |
+
AgentIC serves as a **Sovereign Design Companion**, allowing defense engineers to generate verified, physically layout-ready silicon from high-level natural language specifications.
|
| 30 |
+
|
| 31 |
+
### Key Pillars:
|
| 32 |
+
1. **AI-Agent Crew:** Specialized AI agents act as the Design Team (Architect, RTL Coder, Verification Engineer).
|
| 33 |
+
2. **Self-Correction:** Closed-loop feedback mechanism where agents fix their own compilation and simulation errors.
|
| 34 |
+
3. **Local & Secure:** Support for on-premises LLM deployment (e.g., Llama 3 on air-gapped servers) ensures **ZERO** data leakage.
|
| 35 |
+
4. **Open Source Flow:** output is compatible with the OpenLane/SkyWater 130nm PDK, ensuring a fully auditable toolchain.
|
| 36 |
+
|
| 37 |
+
---
|
| 38 |
+
|
| 39 |
+
## 3. Methodology & Architecture
|
| 40 |
+
|
| 41 |
+
### The Workflow
|
| 42 |
+
1. **Prompt:** User inputs specs (e.g., *"Design a secure AES-256 accelerator with side-channel attack masking"*).
|
| 43 |
+
2. **Design Agent:** Generates SystemVerilog RTL.
|
| 44 |
+
3. **Verification Agent:** Generates a self-checking testbench (randomized stimuli + assertion checking).
|
| 45 |
+
4. **Simulation & Loop:**
|
| 46 |
+
* Runs `iverilog` simulation.
|
| 47 |
+
* If fail: Agents read logs -> Patch Code -> Re-run.
|
| 48 |
+
* If pass: Proceed to hardening.
|
| 49 |
+
5. **Physical Design:** Automates OpenLane scripts to generate GDSII.
|
| 50 |
+
|
| 51 |
+
### Sovereign Tech Stack
|
| 52 |
+
* **Logic:** Custom AI Agents (CrewAI/LangChain)
|
| 53 |
+
* **Simulation:** Icarus Verilog (Open Source)
|
| 54 |
+
* **Layout:** OpenLane (Open Source)
|
| 55 |
+
* **PDK:** SkyWater 130nm (Open Google/SkyWater)
|
| 56 |
+
|
| 57 |
+
---
|
| 58 |
+
|
| 59 |
+
## 4. Addressing Defense Challenges (Analysis)
|
| 60 |
+
|
| 61 |
+
| Challenge | AgentIC Solution |
|
| 62 |
+
| :--- | :--- |
|
| 63 |
+
| **IP Theft / Secrecy** | **Local Inference:** Prompts run on secure, air-gapped servers. No cloud APIs required. |
|
| 64 |
+
| **Trojan Insertion** | **Auditable Code:** AI generates human-readable SystemVerilog, not binary blobs. Easier to review. |
|
| 65 |
+
| **Rapid Field Deployment** | **Speed:** Reduces design-to-layout time from months to days for auxiliary chips. |
|
| 66 |
+
| **Talent Shortage** | **Force Multiplier:** Allows non-expert systems engineers to create functional hardware blocks. |
|
| 67 |
+
|
| 68 |
+
---
|
| 69 |
+
|
| 70 |
+
## 5. Case Study: Secure Processor Recovery
|
| 71 |
+
|
| 72 |
+
**Experiment:**
|
| 73 |
+
We tasked AgentIC to design a "Secure Lockout Mechanism" for a processor (a common need for tamper-proof hardware).
|
| 74 |
+
|
| 75 |
+
* **Input:** "Create a state machine that locks the system after 3 failed 4-digit PIN attempts."
|
| 76 |
+
* **Result:**
|
| 77 |
+
1. Agent generated an FSM (Finite State Machine) correctly handling transitions.
|
| 78 |
+
2. Initial bug: Reset logic was inverted.
|
| 79 |
+
3. **Auto-Fix:** Verification agent caught the timeout error, and the Designer agent corrected the polarity in `always_ff`.
|
| 80 |
+
4. **Final Output:** Clean, LVS-clean GDSII layout ready for fabrication.
|
| 81 |
+
|
| 82 |
+
---
|
| 83 |
+
|
| 84 |
+
## 6. Conclusion & Future Work
|
| 85 |
+
|
| 86 |
+
AgentIC demonstrates that Generative AI can bridge the gap between secure requirements and physical silicon. By keeping the "Brain" of the design process local and using open tools, India can achieve true **Atmanirbhar** status in the strategic semiconductor sector.
|
| 87 |
+
|
| 88 |
+
**Future Roadmap:**
|
| 89 |
+
* Integration with formal verification tools for mathematical security proofs.
|
| 90 |
+
* Support for FPGA bitstream generation for rapid field updates.
|
| 91 |
+
|
| 92 |
+
---
|
| 93 |
+
|
| 94 |
+
## References
|
| 95 |
+
1. *The OpenLane Project Documentation*
|
| 96 |
+
2. *DeepSeek / Llama 3 Technical Reports*
|
| 97 |
+
3. *Defense Advanced Research Projects Agency (DARPA) POSH Program*
|
README.md
CHANGED
|
@@ -1,111 +1,142 @@
|
|
| 1 |
-
# AgentIC:
|
| 2 |
|
| 3 |
-
|
| 4 |
|
| 5 |
-
|
| 6 |
|
| 7 |
-
*
|
| 8 |
-
* **Industry Standard Enforced**:
|
| 9 |
-
* Automatic usage of `logic`, `always_ff`, and `always_comb`.
|
| 10 |
-
* **Flattened I/O Ports**: Ensures compatibility with hardening tools.
|
| 11 |
-
* **Scalable Architecture**: Uses `parameters` for bus widths.
|
| 12 |
-
* **Self-Correcting Agents**:
|
| 13 |
-
* **Design Agent**: Writes the code.
|
| 14 |
-
* **Verification Agent**: Writes a self-checking Testbench (`_tb.v`).
|
| 15 |
-
* **Auto-Fix Loop**: If compilation or simulation fails, the agents read the error logs and patch the code automatically.
|
| 16 |
-
* **Physical Design (Hardening)**: Integrates directly with [OpenLane](https://github.com/The-OpenROAD-Project/OpenLane) to generate GDSII layouts.
|
| 17 |
|
| 18 |
-
|
| 19 |
|
| 20 |
-
|
|
|
|
| 21 |
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 25 |
|
| 26 |
-
|
| 27 |
-
* **
|
| 28 |
-
* **Market Benchmarking**: Compare your design's
|
| 29 |
-
* **
|
| 30 |
-
* **GDSII Viewer**: Download and inspect tapeout files.
|
| 31 |
|
| 32 |
---
|
| 33 |
|
| 34 |
-
##
|
| 35 |
|
| 36 |
-
|
|
|
|
|
|
|
|
|
|
| 37 |
|
| 38 |
-
###
|
| 39 |
-
|
| 40 |
-
```bash
|
| 41 |
-
|
| 42 |
-
|
| 43 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 44 |
```bash
|
| 45 |
-
|
| 46 |
```
|
| 47 |
-
* **Output**: Generates `src/<name>.v` and `src/<name>_tb.v`.
|
| 48 |
-
* **Action**: Runs syntax checks and simulations until `TEST PASSED` is confirmed.
|
| 49 |
|
| 50 |
-
|
| 51 |
-
|
| 52 |
```bash
|
| 53 |
-
|
| 54 |
```
|
| 55 |
|
| 56 |
-
###
|
| 57 |
-
|
| 58 |
```bash
|
| 59 |
-
|
| 60 |
```
|
| 61 |
-
* **
|
|
|
|
|
|
|
| 62 |
|
| 63 |
---
|
| 64 |
|
| 65 |
## ๐ Project Structure
|
| 66 |
|
| 67 |
```text
|
| 68 |
-
/
|
| 69 |
-
โโโ
|
| 70 |
-
|
| 71 |
-
โ โโโ
|
| 72 |
-
โ โโโ
|
| 73 |
-
|
| 74 |
-
|
| 75 |
-
โ
|
| 76 |
-
โ
|
| 77 |
-
|
| 78 |
-
|
| 79 |
-
|
| 80 |
-
โ โโโ <name>.v # SystemVerilog RTL
|
| 81 |
-
โ โโโ <name>_tb.v # Testbench
|
| 82 |
```
|
| 83 |
|
| 84 |
-
|
| 85 |
-
|
| 86 |
-
1. **Python 3.10+** & **Docker** (for OpenLane).
|
| 87 |
-
2. **Icarus Verilog (`iverilog`)**.
|
| 88 |
-
3. **LLM Configuration**:
|
| 89 |
-
You can use a local model (Ollama) or a Cloud API (Groq/DeepSeek) for faster inference.
|
| 90 |
-
|
| 91 |
-
Create a `.env` file in `AgentIC/`:
|
| 92 |
-
```dotenv
|
| 93 |
-
# Option 1: Cloud (Recommended for Speed)
|
| 94 |
-
GROQ_API_KEY=gsk_...
|
| 95 |
-
LLM_MODEL=openai/llama-3.3-70b-versatile
|
| 96 |
-
LLM_BASE_URL=https://api.groq.com/openai/v1
|
| 97 |
-
|
| 98 |
-
# Option 2: Local (DeepSeek R1 via Ollama)
|
| 99 |
-
# LLM_MODEL=ollama/deepseek-r1
|
| 100 |
-
# LLM_BASE_URL=http://localhost:11434
|
| 101 |
-
```
|
| 102 |
|
| 103 |
-
##
|
| 104 |
-
|
| 105 |
-
|
| 106 |
-
|
| 107 |
-
```
|
| 108 |
|
| 109 |
---
|
| 110 |
-
|
| 111 |
-
|
|
|
|
|
|
| 1 |
+
# AgentIC: Sovereign AI-Powered Silicon Design Framework
|
| 2 |
|
| 3 |
+
   
|
| 4 |
|
| 5 |
+
**AgentIC** is an automated, sovereign AI Agent framework that transforms natural language descriptions directly into industry-standard physical chip layouts (GDSII). Designed with the **"Atmanirbhar" (Self-Reliant)** philosophy, it empowers engineers to design secure, custom silicon locally, reducing dependency on foreign EDA tools and supply chains.
|
| 6 |
|
| 7 |
+
It acts as a **"Text-to-Silicon" Compiler**, orchestrating a crew of specialized AI agents to write SystemVerilog RTL, verify it with self-generated testbenches, and harden the design using the OpenLane open-source flow.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 8 |
|
| 9 |
+
---
|
| 10 |
|
| 11 |
+
## ๐ก๏ธ Mission: Sovereign Silicon (Atmanirbhar Bharat)
|
| 12 |
+
In the context of national defense and critical infrastructure, reliance on closed-source foreign chips and tools poses significant risks (Hardware Trojans, Supply Chain Denial, Backdoors).
|
| 13 |
|
| 14 |
+
**AgentIC addresses these challenges by:**
|
| 15 |
+
1. **Democratizing Design**: Enabling rapid creation of custom functional blocks without a full design team.
|
| 16 |
+
2. **Open Source Chain**: Utilizing **OpenLane** and standard PDKs (SkyWater 130nm), ensuring the entire flow is auditable.
|
| 17 |
+
3. **Data Privacy**: Promoting the use of **Local LLMs** (running on premises) so sensitive design prompts and logical structures never leave the secure environment.
|
| 18 |
+
|
| 19 |
+
---
|
| 20 |
+
|
| 21 |
+
## ๐ Key Capabilities
|
| 22 |
+
|
| 23 |
+
### ๐ง AI-Driven RTL Design
|
| 24 |
+
* **Natural Language โ SystemVerilog**: Simply describe the module (e.g., "A secure 32-bit RISC-V core with encrypted instruction memory").
|
| 25 |
+
* **Context-Aware Coding**: Agents use proper `logic`, `always_ff`, and `always_comb` blocks and parameterized widths.
|
| 26 |
+
* **Flattened I/O**: Generates hardware-ready ports compatible with physical implementation tools.
|
| 27 |
+
|
| 28 |
+
### ๐ Self-Correcting Verification Loop
|
| 29 |
+
* **Agent Swarm**:
|
| 30 |
+
* **Designer Agent**: Writes the RTL implementation.
|
| 31 |
+
* **Testbench Agent**: Writes a comprehensive self-checking testbench (`_tb.v`).
|
| 32 |
+
* **Verifier Agent**: Analyzes simulation logs (Icarus Verilog).
|
| 33 |
+
* **Auto-Fix**: If the simulation fails, the agents analyze the error, rewrite the RTL/Testbench, and retry automatically until `TEST PASSED`.
|
| 34 |
+
|
| 35 |
+
### ๐ญ Physical Design Automation
|
| 36 |
+
* **One-Click Hardening**: Seamless integration with **OpenLane**.
|
| 37 |
+
* **GDSII Generation**: Produces the final layout files ready for the foundry.
|
| 38 |
+
* **Artifacts**: Generates LEF, DEF, GDS, and Mag files automatically.
|
| 39 |
|
| 40 |
+
### ๐ฅ๏ธ Secure "Deep Void" Dashboard
|
| 41 |
+
* **Streamlit Operations Center**: Monitor the entire design process visually.
|
| 42 |
+
* **Market Benchmarking**: Compare your design's PPA (Power, Performance, Area) against standard metrics.
|
| 43 |
+
* **GDS Viewer**: Built-in viewer for finalized layouts.
|
|
|
|
| 44 |
|
| 45 |
---
|
| 46 |
|
| 47 |
+
## ๐ฆ Installation
|
| 48 |
|
| 49 |
+
### Prerequisites
|
| 50 |
+
* Python 3.10+
|
| 51 |
+
* [OpenLane](https://github.com/The-OpenROAD-Project/OpenLane) (installed and configured via Docker)
|
| 52 |
+
* Icarus Verilog (`iverilog`)
|
| 53 |
|
| 54 |
+
### Setup
|
| 55 |
+
1. **Clone the Repository**
|
| 56 |
+
```bash
|
| 57 |
+
git clone https://github.com/Vickyrrrrrr/AgentIC.git
|
| 58 |
+
cd AgentIC
|
| 59 |
+
```
|
| 60 |
+
|
| 61 |
+
2. **Create Virtual Environment**
|
| 62 |
+
```bash
|
| 63 |
+
python -m venv venv
|
| 64 |
+
source venv/bin/activate
|
| 65 |
+
```
|
| 66 |
+
|
| 67 |
+
3. **Install Dependencies**
|
| 68 |
+
```bash
|
| 69 |
+
pip install -r requirements.txt
|
| 70 |
+
```
|
| 71 |
+
|
| 72 |
+
4. **Configure Environment**
|
| 73 |
+
Create a `.env` file in the root directory:
|
| 74 |
+
```env
|
| 75 |
+
# Choose your provider (NVIDIA, GROQ, or OPENAI)
|
| 76 |
+
# Leave empty if using Local LLM (e.g., Ollama)
|
| 77 |
+
OPENAI_API_KEY=sk-...
|
| 78 |
+
NVIDIA_API_KEY=nvapi-...
|
| 79 |
+
GROQ_API_KEY=gsk_...
|
| 80 |
+
|
| 81 |
+
# Path to OpenLane
|
| 82 |
+
OPENLANE_ROOT=/path/to/openlane
|
| 83 |
+
PDK_ROOT=/path/to/pdk
|
| 84 |
+
```
|
| 85 |
+
|
| 86 |
+
---
|
| 87 |
+
|
| 88 |
+
## ๐ ๏ธ Usage
|
| 89 |
+
|
| 90 |
+
### 1. Command Line Interface (CLI)
|
| 91 |
+
The fastest way to build a specific module.
|
| 92 |
+
|
| 93 |
+
**Build & Verify (RTL Level):**
|
| 94 |
```bash
|
| 95 |
+
python main.py build --name secure_lock --desc "A 4-digit PIN based electronic lock with a lockout timer after 3 failed attempts."
|
| 96 |
```
|
|
|
|
|
|
|
| 97 |
|
| 98 |
+
**Full Flow (RTL + GDSII):**
|
| 99 |
+
*(Ensure OpenLane is running)*
|
| 100 |
```bash
|
| 101 |
+
python main.py harden --name secure_lock
|
| 102 |
```
|
| 103 |
|
| 104 |
+
### 2. Interactive Web Dashboard
|
| 105 |
+
Launch the Mission Control interface.
|
| 106 |
```bash
|
| 107 |
+
streamlit run app.py
|
| 108 |
```
|
| 109 |
+
* Navigate to **"Design Studio"** to chat with the AI Agents.
|
| 110 |
+
* Use **"Fabrication"** tab to trigger OpenLane flows.
|
| 111 |
+
* Check **"GDS Viewer"** to inspect final chips.
|
| 112 |
|
| 113 |
---
|
| 114 |
|
| 115 |
## ๐ Project Structure
|
| 116 |
|
| 117 |
```text
|
| 118 |
+
AgentIC/
|
| 119 |
+
โโโ artifacts/ # Generated VCD waveforms & GDSII layouts
|
| 120 |
+
โโโ designs/ # Source RTL & Testbenches
|
| 121 |
+
โ โโโ minicount/
|
| 122 |
+
โ โโโ secure_lock/
|
| 123 |
+
โโโ src/
|
| 124 |
+
โ โโโ agentic/
|
| 125 |
+
โ โโโ agents/ # AI Personas (Designer, Verifier)
|
| 126 |
+
โ โโโ tools/ # Interfaces for compilers & simulators
|
| 127 |
+
โโโ app.py # Streamlit Web Dashboard
|
| 128 |
+
โโโ main.py # CLI Entry Point
|
| 129 |
+
โโโ debug_llm.py # Utility to check LLM connectivity
|
|
|
|
|
|
|
| 130 |
```
|
| 131 |
|
| 132 |
+
---
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 133 |
|
| 134 |
+
## ๐ฎ Roadmap
|
| 135 |
+
* Support for Analog/Mixed-Signal descriptions.
|
| 136 |
+
* Integration with open-source FPGA toolchains (Yosys/Nextpnr).
|
| 137 |
+
* Formal Verification agent integration.
|
|
|
|
| 138 |
|
| 139 |
---
|
| 140 |
+
|
| 141 |
+
## โ๏ธ License
|
| 142 |
+
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
|