V Laboratoriju za računalniške metode v elektroniki gradijo odprta orodja za načrtovanje analognih integriranih vezij
Datum objave: 2. 9. 2026Načrtovanje analognih integriranih vezij je eno najzahtevnejših področij elektronike – v nasprotju z digitalnimi vezji ga je težko avtomatizirati, saj zahteva poglobljeno razumevanje fizike polprevodniških elementov in skrbno usklajevanje na desetine med seboj nasprotujočih si zahtev. Orodja, ki načrtovalcem to delo olajšajo, so bila doslej domena nekaj velikih, dragih in zaprtih komercialnih paketov. V Laboratoriju za računalniške metode v elektroniki ali EDA Laboratory (po angleški kratici EDA za Electronic Design Automation oziroma računalniško podprto načrtovanje elektronike) na Fakulteti za elektrotehniko Univerze v Ljubljani že desetletja razvijajo lastne, odprtokodne alternative. V zadnjih letih so s tremi med seboj povezanimi orodji OpenVAF, VACASK in PyOpus postavili temelje sodobnega, v celoti odprtega ekosistema za računalniško podprto načrtovanje elektronskih vezij. Najnovejši korak v tej zgodbi je vpeljava umetne inteligence – natančneje velikih jezikovnih modelov – v proces sinteze vezij, ki je bila predstavljena tudi na letošnji mednarodni konferenci Free Silicon Conference.
Dolga tradicija odprtokodnega EDA na UL FE
Laboratorij za računalniške metode v elektroniki ima na področju algoritmov za računalniško podporo načrtovanju in optimizaciji elektronskih vezij dolgo tradicijo. Njihov najbolj znan dosežek iz preteklih let je simulator SPICE OPUS – izpopolnjena in razširjena različica odprtokodnega simulatorja analognih vezij SPICE, opremljena z naprednimi optimizacijskimi algoritmi. S hitrim razvojem računalniške tehnologije in programskih jezikov pa so se v laboratoriju odločili za korak dlje: namesto da bi zgolj vzdrževali star simulator, so zasnovali povsem nov, sodoben nabor orodij, ki naslavlja težave, s katerimi se desetletja stara programska oprema tipa SPICE ne more več kosati.
Rezultat je niz treh med seboj povezanih projektov, ki pokrivajo celoten tok načrtovanja – od opisa delovanja elektronskih elementov, prek simulacije vezja, do avtomatizirane optimizacije in sinteze vezij.
Načrtovanje integriranih vezij
Izdelava prototipa integriranega vezja je draga in dolgotrajna, zato je treba njegovo delovanje preveriti s simulacijo. Ta temelji na modelih elementov – enačbah, ki opisujejo delovanje tranzistorjev in drugih polprevodniških elementov in jih danes zapisujemo v standardiziranem opisnem jeziku Verilog-A. Modele nato uporabi simulator, ki izračuna odziv celotnega vezja. Sledi vprašanje dimenzioniranja: načrtovalec izbere topologijo vezja, računalnik pa s pomočjo simulatorja poišče vrednosti elementov, s katerimi ta topologija izpolni zahtevane specifikacije – to nalogo v laboratoriju rešuje knjižnica PyOpus. Najnovejši, še zahtevnejši korak pa je, da računalnik s pomočjo umetne inteligence samodejno predlaga tudi samo topologijo vezja.

OpenVAF: prevajalnik za jezik Verilog-A
Sodobni polprevodniški elementi (tranzistorji, diode, upori …) se v industriji ne opisujejo več z ročno pisano kodo v jeziku C, temveč s standardiziranim opisnim jezikom Verilog-A, v katerem proizvajalci čipov in konzorciji, kot je Compact Model Coalition, objavljajo matematične modele svojih elementov. Da lahko simulator te modele dejansko uporabi, jih je treba prevesti v izvedljivo kodo – to je naloga prevajalnika OpenVAF.
Prevajalnik je bil izvirno razvit na Tehniški univerzi v Dresdnu, po letu 2023 pa se njegov razvoj ni več nadaljeval. Ker je OpenVAF ključna komponenta za vsak sodoben odprt simulacijski tok, so ga v Laboratoriju za računalniške metode v elektroniki prevzeli in ga v okviru veje OpenVAF-reloaded aktivno nadgrajujejo in dodajajo podporo za nove zmogljivosti. OpenVAF Verilog-A kodo prevede neposredno v strojno kodo. Taki modeli se izvajajo praktično enako hitro kot ročno napisani modeli v jeziku C.
VACASK: nov simulator analognih vezij
Na prevajalniku OpenVAF sloni VACASK (Verilog-A Circuit Analysis Kernel) – povsem nov, v laboratoriju od temeljev razvit simulator analognih vezij. VACASK je napisan v jeziku C++20 in podpira širok nabor analiz. Razvoj poteka v sodelovanju s širšo skupnostjo odprtokodnega načrtovanja vezij (med drugim s podporo sklada NLnet), simulator pa je bil predstavljen tudi na mednarodnih konferencah, kot so FOSDEM, MIDEM in Free Silicon Conference. Prek Verilog-A Distillerja – pretvornika, ki stare modele elementov, zapisane v jeziku C, samodejno pretvori v moderno kodo Verilog-A – VACASK pridobiva tudi širok nabor starejših, uveljavljenih modelov elementov, ki jih uporabljajo številne obstoječe tehnološke knjižnice.
PyOpus: avtomatizacija načrtovanja in optimizacija vezij
Tretji steber laboratorijeve orodjarne je PyOpus, knjižnica za avtomatizacijo načrtovanja v jeziku Python, ki jo v laboratoriju razvijajo in vzdržujejo že vrsto let. Medtem ko OpenVAF in VACASK poskrbita za simulacijo vezja, PyOpus reši vprašanje, kako priti do dobrega vezja – torej kako samodejno poiskati vrednosti parametrov (in v naprednejših primerih tudi topologijo), ki zagotavljajo, da vezje izpolnjuje ali presega zahteve načrtovanja.
PyOpus se prek enotnega vmesnika povezuje s številnimi simulatorji (med njimi Ngspice, Xyce, SPICE OPUS, HSpice in Spectre), modul za obdelavo rezultatov pa nato izračuna uporabniško definirane merljive lastnosti vezja, kot so ojačenje, pasovna širina, fazni razloček, čas vzpona in druge. Jedro knjižnice je nabor optimizacijskih algoritmov, od katerih nekateri za pohitritev izkoriščajo porazdeljeno računanje prek vmesnika MPI. Na tej osnovi so zgrajeni še zahtevnejši postopki: dimenzioniranje prek vogalnih točk, analiza občutljivosti, ocena izplena z metodo Monte Carlo ter analiza najslabšega primera (worst-case in worst-case distance) – orodja, s katerimi lahko načrtovalec preveri, ali bo vezje zanesljivo delovalo tudi ob upoštevanju proizvodnih variacij.
Knjižnica ni le praktično orodje, temveč tudi raziskovalna platforma: na njej temelji vrsta objav laboratorija na področju optimizacijskih algoritmov, evolucijske sinteze topologij analognih vezij in avtomatizirane ekstrakcije parametrov modelov.

Naslednji korak: umetna inteligenca pri sintezi vezij
Avtomatizacija dimenzioniranja vezja (torej iskanja pravih vrednosti parametrov za že znano topologijo) je s PyOpusom razmeroma dobro rešena naloga. Veliko težji in dlje časa odprt problem pa je sinteza topologije – torej vprašanje, katero vezje (kakšno kombinacijo in povezave elementov) sploh uporabiti, da bo zadostilo dani specifikaciji. To je področje, s katerim se v laboratoriju ukvarjajo že vrsto let – med drugim z evolucijskimi algoritmi, s katerimi so v preteklih raziskavah topologije analognih vezij gradili in izboljševali podobno kot narava z naravno selekcijo oblikuje organizme.
Najnovejši korak na tem področju so predstavili na mednarodni konferenci Free Silicon Conference 2026 (FSiC2026), ki je od 6. do 8. julija 2026 potekala prav na UL FE. V prispevku »LLMEDA: human-in-the-loop LLM-enabled analog topology synthesis with PyOPUS« so predstavili orodje LLMEDA, ki temelji na velikih jezikovnih modelih. Modelu podamo specifikacijo vezja in nabor elementov, ki jih sme uporabiti, ta pa predlaga topologijo iz teh elementov. Predlagano vezje nato PyOpus simulira in ovrednoti s številsko oceno, ki se vrne modelu kot povratna informacija za naslednji poskus.
Ključna ugotovitev predstavitve je bila, da golo vračanje ocene modelu ne zadošča – šele ko se za vsako predlagano topologijo v ozadju najprej izvede polno dimenzioniranje in se modelu vrne poročilo o najboljšem doseženem rezultatu, cikel dejansko konvergira. Na testnem primeru pasivnega nizkoprepustnega filtra (»hello world« sinteze topologij) je tak pristop hitro pripeljal zelo blizu popolne izpolnitve zahtev.
Orodje so preizkusili tudi na zahtevnejšem primeru iz resničnega proizvodnega procesa – sintezi napetostnega referenčnega vezja v tehnologiji IHP SG13G2 – kjer je v načinu »human-in-the-loop« po nekaj urah dela predlagalo CMOS vezje, ki je izpolnilo skoraj vse zahteve. Pristop ima tudi omejitve: raba jezikovnih modelov ni poceni, model tehnoloških omejitev ne preverja samodejno in po vsem sodeč (še) ne odkriva resnično novih topologij. Glavno sporočilo je torej, da umetna inteligenca ne more nadomestiti izkušenega načrtovalca, lahko pa z njim učinkovito sodeluje.
En sam, odprt in povezan tok načrtovanja
OpenVAF, VACASK in PyOpus niso trije ločeni projekti, temveč deli iste zgodbe. S tem v Laboratoriju za računalniške metode v elektroniki gradijo nekaj, kar je bilo doslej pridržano zgolj najdražjim komercialnim rešitvam – celovit, med seboj usklajen potek načrtovanja analogne elektronike, ki pa je popolnoma odprtokoden in prosto dostopen tako industriji kot izobraževanju.
Ta prizadevanja letos dobivajo tudi širšo evropsko razsežnost: laboratorij sodeluje v projektu ODE4EC-AMS (Open Design Environment for European Chips – Analog and Mixed Signal), ki ga v okviru Chips Joint Undertaking financira program Obzorje Evropa. Projekt, ki se je začel poleti 2026 in bo trajal tri leta, združuje 25 partnerjev iz 11 evropskih držav s skupnim proračunom, ki presega 15 milijonov evrov. Njegov namen je razviti in vzdrževati odprtokodna orodja za računalniško podprto načrtovanje analognih, mešanih in visokofrekvenčnih integriranih vezij ter s tem zmanjšati odvisnost evropske polprevodniške industrije od peščice dragih zaprtih komercialnih rešitev. S sodelovanjem v projektu postajajo orodja, razvita na UL FE, del širše evropske strategije za tehnološko suverenost na področju načrtovanja čipov.