Signex:基於Rust構建的AI優先EDA工具,相容KiCad的原理圖和PCB編輯器
Signex是一款開源的EDA工具,使用Rust編寫,支援GPU加速渲染,提供原理圖和PCB編輯、3D檢視、模擬及外掛系統。支援從KiCad遷移,分為社群版和專業版。
Signex 是一款開源的電子設計自動化(EDA)工具,完全使用 Rust 語言構建,並採用 GPU 加速渲染,提供了與 Altium Designer 相媲美的使用者介面。它整合了原理圖編輯、PCB 設計、3D 檢視器、模擬以及外掛系統,旨在為硬體工程師提供高效的設計體驗。
Signex 採用原生檔案格式(.snxsch、.snxpcb),這些格式基於 TOML 和 TSV,具有行差異可讀性,且檔案大小約為等效 JSON 格式的五分之一,非常適合 Git 版本控制。對於 KiCad 使用者,Signex 提供了一個可選的遷移工具 signex-kicad-import,可一鍵將 KiCad 專案轉換為 Signex 格式,但該工具採用 GPL-3.0 許可證,與主倉庫獨立分發。
Signex 提供兩個版本:社群版(Apache-2.0 許可證,永久免費)包含完整的原理圖和 PCB 編輯器、3D 檢視器、模擬和外掛系統;專業版(訂閱制)額外提供 Signal AI(基於 Claude 的設計助手)、即時協作和 Signex 365 雲 PLM 功能。目前專案處於早期開發階段,最新版本為 v0.11,已實現完整的庫子系統(DBLib)。下一個里程碑 v0.12 將重寫原理圖渲染器和自動佈局功能。
已實現的功能(v0.1–v0.8)包括:原生格式開啟、KiCad 檔案遷移、全面原理圖編輯(選擇、移動、連線、匯流排、標籤、元件放置等)、高階形狀工具(直線、矩形、圓、弧、多邊形)、複製貼上、100 級撤銷/重做、6 種內建主題及自定義編輯器、Altium 風格的對接面板、浮動工具欄 Active Bar、上下文選單、屬性面板、多視窗編輯、ERC 驗證(11 條 Altium 風格規則)、註釋、F5 網路顏色、F8 ERC、F9 自動聚焦、引腳連線矩陣、套索選擇模式、PDF 匯出(含書籤和主題)、BOM 預覽(支援 CSV/HTML/XLSX 匯出)、KiCad 網表匯出、多專案工作空間、髒檔案追蹤、層次化圖紙等。
架構方面,Signex 採用 Elm 架構(Iced 框架),分為多個 crate:signex-app(主二進位制)、signex-types(領域型別,無渲染依賴)、signex-render(wgpu 渲染)、signex-widgets(可複用 Iced 小部件)、kicad-parser/writer(KiCad 格式解析/寫出)。設計原則包括:KiCad 相容優先、Elm 架構、預設多視窗、奈米級座標(i64)、原理圖用 CPU 曲面細分、PCB 用 GPU 例項化渲染。型別 crate 完全無渲染依賴,確保領域與顯示分離。
硬體要求:需支援 Vulkan 1.1(Linux)、DirectX 12(Windows)或 Metal(macOS)的現代 GPU,大致為 2014 年後的 GPU(如 Intel HD 4400+、NVIDIA GeForce 600 系列及以上、AMD Radeon HD 7000 系列及以上、Apple Silicon Mac)。老舊 GPU 可能透過回退路徑啟動,但會出現渲染問題。
構建方式:需要 Rust 1.80+ 和支援 Vulkan/Metal/DX12 的 GPU。透過 git clone 後執行 cargo run -p signex-app 即可啟動。貢獻者可透過報告 Bug、新增測試用例、實現路線圖功能、修復問題或改進文件來參與。社群版採用 Apache-2.0 許可證,KiCad 匯入工具採用 GPL-3.0 許可證。