Downloads · 30 days
440
97% of all-time downloads
musatur/Alpona-1.0-27B
Alpona-1.0-27B is a text generation model from musatur. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as apache-2.0.
Specification in, synthesizable SystemVerilog out.
Downloads · 30 days
440
97% of all-time downloads
All-time downloads
452
Public
Parameters
27.8B
55.6 GB on disk
Likes
1
Public
Click a slice to open those files.
.safetensors55.6 GB · 100%
From the Hugging Face model README
Specification in, synthesizable SystemVerilog out.
Alpona 1.0 · 27B is an RTL generation model with a built-in five-stage generate, check and repair pipeline. It drafts a module, derives a behavioural model of the specification, writes its own testbench, and repairs the design using real compiler and simulator feedback from Icarus Verilog.
| Repository | musatur/Alpona-1.0-27B |
| Type | Language model (Qwen3_5ForConditionalGeneration) with the Alpona generate, check and repair pipeline |
| Built on | Qwen/Qwen3.8-27B |
| Parameters | 27.78B (27,781,427,952), BF16 |
| Download size | 55.6 GB (18 safetensors shards) |
| Context length | 262,144 tokens |
| Input / output | English specification in; one Verilog/SystemVerilog module out |
| License | Apache-2.0 |
| Developed by | EOI 122 project team |
| Funding | BIRDI grant under SICIP, project "LLM-Guided RTL Design and Verification" (EOI 122) |
pip install -U "transformers>=5.14.1" torch accelerate
conda install -c conda-forge iverilog # required by stages 3-5; any platform, no root
# alternatives: sudo apt-get install iverilog | brew install icarus-verilog
PATH, or passed as iverilog="/path/to/iverilog". Without it, stages 3–5 are
skipped, the result reports outcome = "no_toolchain", and the module is returned without being checked.
Icarus Verilog is GPL-2.0 and is not bundled with this repository.from transformers import pipeline
rtl = pipeline("alpona-rtl", model="musatur/Alpona-1.0-27B",
trust_remote_code=True, device_map="auto")
print(rtl("Design a 4-bit synchronous up-counter with active-high synchronous reset."))
module TopModule (
input clk, input reset,
output reg [3:0] q
);
always @(posedge clk) begin
if (reset) q <= 4'd0;
else q <= q + 4'd1;
end
endmodule
python serve_vllm.py --model musatur/Alpona-1.0-27B --tp 2 --port 8000
curl -s localhost:8000/rtl -d '{"spec": "Design an 8-bit register with synchronous reset."}'
serve_vllm.py imports alpona_stages.py, so run it from a local copy of this repository:
hf download musatur/Alpona-1.0-27B --local-dir Alpona-1.0-27B
cd Alpona-1.0-27B
python serve_vllm.py --model . --tp 2 --port 8000
The server listens on all network interfaces and has no authentication, so run it only on a trusted network.
spec = "Design an 8-bit register with synchronous reset."
out = rtl(spec, rounds=3, tb_tries=2, return_details=True)
out["rtl"] # final module
out["draft_rtl"] # first pass, before verification
out["behavioural_model"] # derived truth / state / timing table
out["testbench"] # the self-checking testbench it wrote
out["outcome"] # tb_satisfied | rounds_exhausted | repair_produced_nothing
# | no_usable_testbench | no_toolchain
out["stage_log"] # one line per stage
Built on Qwen3.8-27B. Apache-2.0.
config.json: the model configuration with the alpona-rtl pipeline registration and the Alpona defaults
(alpona_version: "1.0", alpona_rounds: 3, alpona_tb_tries: 2).pipeline_alpona.py (the Hugging Face pipeline), alpona_stages.py (the five stages and their
prompts), serve_vllm.py (a small HTTP server using vLLM) and requirements.txt.Together they make pipeline("alpona-rtl", ...) a single call that drafts, checks and repairs a module.
rounds
attempts).tb_tries attempts).rounds attempts). If the testbench never passes, the pipeline returns the last module
that compiled, not an untested edit.The pipeline never sees a reference implementation or a benchmark testbench.
Every generated module should be reviewed and verified by an engineer (simulation against an independent testbench, linting, synthesis) before it is used in real hardware.
Apache-2.0 (see LICENSE), following Qwen3.8-27B, on which this model is built. The Alpona pipeline code in this
repository is also released under Apache-2.0. Icarus Verilog, which the pipeline calls at run time, is GPL-2.0 and is
not included.
Developed under the project "LLM-Guided RTL Design and Verification" (EOI 122), funded by a BIRDI grant under SICIP.