RNLRich Netlist
繁中

The English terms are the normative ones. Glossary

RICH NETLIST語言標準 0.3 已發布 · 工具鏈預覽版

RNL

AI 時代的電路原始檔

RNL 將電路的語義寫入網表的註解:結構、意圖與畫法,採用人類與 AI 皆可讀取的純文字格式。

專案
Rich Netlist (RNL)
定位
附著於網表註解中的資料擴充
宿主格式
SPICE、Spectre 等網表,寫於註解中
目前階段
語言標準 0.3;工具鏈預覽版;第一版求解器
語言版本
0.3 · 2026-10-18
授權條款
程式碼 MIT · 規範 CC-BY-4.0 · 資料 CC0

Parts of this page are not yet available in Traditional Chinese; they are shown in English. Help translate it

01 · RNL 是什麼

富含電路語義的網表

RNL 補齊網表與原理圖之間的高層次語義缺失:結構、意圖與畫法

一個實際由 Agent 設計的 RNL 案例及渲染出的原理圖

審閱時無須逐行閱讀網表,只需檢視它所宣告的語義。精確的原理圖資訊可由求解器產生,或由模型直接輸出。

ota5t.sp 在檢視器中開啟
RNL 記錄所選項目的對應行

高層次語義檢查清單懸停或點選項目

    網表負責 器件與類型、參數、連接關係、子電路介面

    RNL 負責 結構、意圖、畫法、顯示符號;它僅引用網表

    網表描述電氣事實,而 Rich Netlist 描述如何理解與呈現該電路

    藏於註解中

    寫在宿主網表的合法註解內,例如 SPICE 的 * @RNL {…}。模擬器會直接跳過,無須事先剝除。

    絕不更動電路

    它僅引用網表中的器件、網路與端子;無法新增器件、連接或參數。

    詳略程度自由

    從「M1 與 M2 是差動對」到每個座標與轉折點,皆可在同一個檔案中自由混用。

    RNL 不是

    • 另一種網表語言
    • 第二份連接關係表
    • 強制規定唯一畫法的格式
    • 像素級的影像存檔

    02 · 為什麼需要

    網表與原理圖,各自只看到了一半的全貌

    電路模擬依賴網表;理解電路則需要原理圖。兩者單獨使用皆各有不足。

    工作項目網表原理圖(專有格式)網表 + RNL
    模擬器直接讀取 生來即為此用途 必須先匯出網表 RNL 只是註解
    一眼看懂電路結構 只有一行行文字 一目瞭然 由檢視器繪出原理圖
    純文字,可執行 diff 並納入 Git 管理 可以 二進位資料庫 可以
    AI 可直接讀寫 純文字 圖形格式 畫法同樣是純文字
    不需原始工具即可開啟 任何文字編輯器 需要相同軟體與對應版本 任何 RNL 檢視器
    承載設計意圖 無 僅停留在畫面上,機器無法解讀 差動對與對稱皆為明確敘述
    電路的唯一真相來源 可以 原理圖與網表可能不一致 連接關係完全取決於網表

    AI 驅動設計流程中的新挑戰

    AI 寫出的網表難以由人工審閱

    幾百行自動產生的網表,無法讓審閱者看出這是什麼電路。

    AI 繪製原理圖並不可靠

    逐筆繪製原理圖對大型語言模型而言十分困難,且不同模型的結果落差極大。

    Agent 只能透過 EDA 工具存取原理圖

    原理圖存放在專有的二進位資料庫中:無論讀取或修改一條連線,都必須透過工具的介面。

    目前的權宜做法

    手動重畫

    耗時費力,且每當網表修改就得重新畫過。

    自動產生原理圖

    自動佈局只知道連接關係卻不懂結構:看不出哪幾顆電晶體構成一對。

    螢幕截圖與匯出圖片

    留下了圖片卻失去了電路:既無法執行模擬,也無法繼續編輯。

    依賴 EDA 的 API

    AI 只能透過 EDA 工具的 API 編輯電路,受限於 EDA 生態系。

    RNL 的做法:採用人類與 AI 皆可直接讀取與編輯的純文字格式,不依賴任何特定的 EDA 工具

    03 · 優勢

    將語義寫下來所帶來的好處

    語義優先

    寫明哪些器件構成差動對或電流鏡、何處對稱、電流往哪裡流。無論圖面如何變動,這些敘述都會保留在檔案中。

    單一純文字檔

    模擬器照常執行;可在 Git 中執行 diff 與合併;原理圖與網表絕不脫節。

    AI 編寫,人工審閱

    AI 在編寫電路的同時一併寫出結構與畫法;審閱者在檢視器中檢視所宣告的結構與意圖。

    開放

    公開的標準與符號庫、開放原始碼工具,以及可在瀏覽器中直接開啟的檢視器。

    電路與樣式分離

    網表定義電路的本質,套件決定它的外觀,就像 HTML 負責內容、CSS 負責樣式。只要引入公開套件 eda-symbol 與 eda-style,同一個檔案就能繪製成傳統 EDA 原理圖。在範例中切換樣式。

    04 · 情境對比

    同一項任務,兩種做法

    常見情境:現在的做法,以及使用 RNL 的做法。

    現在的做法

    請幫我設計一個五電晶體 OTA。

    網表有了,但裡面沒有任何內容說明這是什麼電路。

    幾百行產生的網表無法讓審閱者看出這是什麼電路,而模型繪製原理圖也不可靠。

    使用 RNL

    請幫我設計一個五電晶體 OTA。

    Agent 在編寫電路的同時一併寫出結構與畫法;審閱者在檢視器中檢視它宣告的內容。

    人工審閱的是結構與意圖,而不必逐行閱讀網表。

    05 · 願景

    開放的生態系,以及建立於其上的設計流程

    RNL 是資料層:將電路及其語義存放在任何人皆可開啟的檔案中。

    開放的生態系

    電路與符號庫能像開放原始碼軟體一樣發布與重複使用。

    建立在 RNL 上的設計流程

    Agent 編寫與修改電路;人工審閱其結構與意圖;EDA 工具負責模擬與驗證。

    Agent

    編寫與修改電路,連同其結構與畫法。

    人類

    在檢視器中審閱所宣告的結構與意圖。

    ota5t.sp

    RNL,資料層:網表 + 語義

    EDA 工具

    執行模擬與驗證;模擬器會跳過 RNL 註解。

    06 · 現況

    目前的進展

    語言已作為標準 0.3 發布;網頁版與桌面版檢視器可讀取、繪製並編輯網表,且求解器已推出第一版。下方列出最近發布的里程碑與接下來的規劃;完整時間軸列出所有已發布的里程碑。

    1. RNL 核心 0.5.4

      Core 0.5.4: rnl solve says the solver is a preview; each object lists the usages and groups it is a member of, in the Document, the snapshot and the new rnl explain; package files and hardware-description files are known by their format; the solver tells supply, ground and port symbols by their drawing. 版本資訊

    2. RNL 核心 0.5.5

      Core 0.5.5: the Document carries the parameters of subcircuits, those a definition gives, those an instance writes and the numbers they come to, and a build can bind values to them; an instance of a subcircuit that Auto Include found defined several times lists the definitions. 版本資訊

    3. 桌面版檢視器 0.5.3

      RNL Viewer 0.5.3: entering an instance of a subcircuit that Auto Include found defined several times asks which definition to open; a subcircuit shows its parameters in a bar under the path, and a dialog changes them; entering a subcircuit of another file takes the values its instance writes. 版本資訊

    4. 完整時間軸
    5. 接下來

    常見問題

    加入 RNL 的網表會讓模擬器報錯嗎?

    不會。RNL 僅寫在宿主網表的合法註解中,模擬器無須任何前處理便會直接跳過。至於哪種標記在各家模擬器中皆安全,目前仍在驗證中。

    RNL 會改變我的電路嗎?

    不會。器件、參數與連接關係完全由網表定義;RNL 只能引用它們。僅修改 RNL 時,網表本文會原封不動地保留。

    一定要手寫座標嗎?

    不必。「M1 與 M2 是差動對,並以中軸對稱」本身就是合法的描述;座標可以交給求解器,或日後再補上。

    不同工具繪製同一份 RNL 的結果會一樣嗎?

    寫了精確幾何資訊的部分會一致。僅描述設計意圖的部分,不同求解器可能會繪出不同但皆滿足該意圖的圖面;RNL 不承諾像素級完全一致的輸出。

    這跟 Virtuoso 或 KiCad 的原理圖檔案有什麼不同?

    那些是各工具專屬的圖形格式,與網表分開儲存。RNL 則附著在網表上,任何支援 RNL 的工具都能讀取,且符號本身就是以 RNL 定義的。

    為什麼經常提到 AI?

    大型語言模型擅長讀寫像網表這樣的純文字。RNL 將電路的結構、意圖與畫法也變成純文字,讓 Agent 在同一個檔案中寫出電路及其語義,再由審閱者在檢視器中檢視它宣告的內容。敘述之間的自由文字有助於人類閱讀,但絕不會改變機器解讀的語義。

    可以用其他語言編寫 RNL 嗎?

    關鍵字與標準套件名稱可以有另一種語言的別名。檔案可在檔頭記錄中以 @ALIAS 宣告個別別名,或以 @USE-ALIASES(name=…, version=…)(自訂檔案則用 path=…)載入別名套件(集中收錄某種語言別名的套件檔案)。標準系列 0.3 目前內含一個,即中文(rnl-zh):在檔頭記錄中寫入 @USE-ALIASES(name="rnl-zh", version="0.3") 即可使用其別名。別名只是另一種拼寫方式:兩者可自由混用,機器讀取到的是相同的敘述;檔頭記錄本身則一律使用標準拼寫。

    現在就可以使用嗎?

    若要檢視原理圖與編輯網表文字,現在就能使用:檢視器可在瀏覽器或 Windows、Linux 與 macOS 上開啟帶有 RNL 的網表、繪製已指定位置的物件,並讓你在編輯文字後重新渲染。自動佈局仍處於早期階段:第一版求解器已整合於 rnl solve 中,並以預覽方式提供於桌面版檢視器。網頁版檢視器目前尚不執行求解器,因此會將未指定位置的物件列在「未繪製」檢視中。目前尚不支援拖曳編輯。