NeuralForge
NeuralForge is a Gemini-powered workflow that turns machine learning models into silicon.
Core trick
Gemini writes Verilog with INT8 weights hardcoded, then Yosys synthesis and Icarus simulation are checked against a bit-exact reference of the trained network.
Description
NeuralForge is a Gemini-powered workflow that turns machine learning models into silicon.
You describe a neural network in plain English, and NeuralForge converts it into synthesizable Verilog, embedding the trained weights directly into hardware logic.
The system then runs a real RTL-to-GDS pipeline, synthesising with Yosys, verifying functionality through simulation, and implementing the design on the SkyWater 130nm PDK using open-source backend tools.
AI agents monitor tool outputs, fix design errors, and iterate until the hardware is physically valid.
The model isn’t deployed on hardware.
It becomes the hardware.
README excerpt
# NeuralForge NeuralForge is an AI chip architect demo that turns natural-language ML model requests into ASIC-oriented hardware artifacts. It uses a Gemini agent loop to: - analyze a model request - emit a hardware bill of materials - generate Verilog RTL with hardcoded INT8 weights - run Yosys synthesis against SkyWater 130nm - check the design against a bit-exact reference of the trained network in Icarus Verilog - optionally launch LibreLane hardening after a successful simulation ## Stack - Backend: FastAPI + Gemini function calling - Frontend: React + Vite - EDA: Yosys, Icarus Verilog, netlistsvg, SkyWater 130nm liberty - Optional physical flow: Nix + LibreLane ## Project Layout ```text neuralforge/ ├── backend/ │ ├── main.py agent loop and WebSocket API │ ├── eda_tools.py Yosys / Icarus / LibreLane wrappers │ ├── golden.py bit-exact integer reference of the trained networks │ ├── verifier.py source scan, generated testbench, verdict, hash ledger │ └── model_trainer.py trains and quantizes the demo models ├── frontend/ ├── pdk/ ├── tests/ ├── setup.sh └── start.sh ``` ## Quick Start ```bash git clone https://github.com/jishnuvenugopal/neuralforge.git cd neuralforge export GEMINI_API_KEY="your-key" export GEMINI_MODEL="gemini-3.1-flash-lite" bash start.sh ``` Frontend: `http://localhost:5173` Backend health: `http://localhost:8000/health` To enable physical hardening after passing simulation: ```bash export LIBRELANE_AUTO_H