Zespół R&D kończy model uczenia maszynowego dla nowego czujnika. Algorytm działa świetnie w Pythonie, ale musi działać na taniej kamerze IoT z FPGA. Tłumaczenie na Verilog zajmuje tygodnie, a każda runda symulacji i debugowania odkrywa kolejne błędy synchronizacji. Harmonogram prototypu się sypie. VeriTrace, wieloagentowy system testowany na uczelniach, zmienia ten schemat: generuje poprawny kod RTL za pierwszym razem, bez wielotygodniowego debugowania.
Dlaczego 95% poprawności kodu Verilog to wciąż za mało
W firmach IoT i startupach tworzących inteligentne urządzenia na brzegu sieci, akceleratory sprzętowe w FPGA przestają być niszą. Algorytmy wykrywania anomalii, przetwarzania audio czy inferencji wizyjnych muszą działać w czasie rzeczywistym przy minimalnym poborze energii. Problem nie leży w samych algorytmach, bo te zespół data science ma już gotowe. Problemem jest przejście od modelu w Pythonie do poprawnego opisu sprzętu w Verilog RTL.
Menedżerowie techniczni znają ten cykl: inżynier FPGA spędza dwa tygodnie na ręcznym tłumaczeniu architektury, potem tydzień na symulacjach, które pokazują błędy na magistralach, źle podłączone linie enable, przesunięcia fazowe. Poprawki. Kolejna symulacja. Nowe błędy. Po miesiącu wersja 'prawie działa', ale w laboratorium okazuje się, że układ gubi się przy specyficznej sekwencji sygnałów z czujnika. Trzy tygodnie dalej, wciąż bez działającego prototypu.
Narzędzia do automatycznego generowania Verilog RTL z opisu funkcjonalnego istnieją od lat, ale utknęły na pułapie około 95% skuteczności. Benchmark VerilogEval-V2 pokazuje, że nawet najlepsze modele AI tworzą kod, który w 5% przypadków ma subtelne błędy logiczne. Te 5% to właśnie błędy, które w FPGA wykrywają się dopiero po syntezie, na rzeczywistym sprzęcie, i kosztują kolejne tygodnie iteracji.
Agent, który debuguje sprzęt jak doświadczony inżynier
Badacze z VeriTrace zidentyfikowali, dlaczego dotychczasowe systemy nie przeskoczyły tego progu. Wszystkie ograniczały agentowi debugowania przestrzeń działań: wolno mu było sprawdzać tylko pewne sygnały, w z góry ustalonych oknach czasowych i w ograniczonej liczbie iteracji. Przypominało to debugowanie z założonymi klapkami na oczach. Agent nie mógł postawić hipotezy 'może problem pojawia się dopiero po trzecim cyklu zegara, gdy licznik się przepełnia' i samodzielnie odpytać przebiegu tego konkretnego sygnału w tym właśnie oknie.
VeriTrace wprowadza Agentic Temporal Exploration. Agent Inspector ma pełną swobodę: wybiera sygnały do inspekcji, definiuje własne okna czasowe i iteracyjnie pogłębia diagnozę, aż znajdzie źródło problemu. Gdy napotka błąd, stawia hipotezę o przyczynie, odczytuje odpowiednie fragmenty przebiegów, weryfikuje teorię i precyzuje rozwiązanie. Proces ten odzwierciedla schemat pracy doświadczonego inżyniera weryfikacji, który nie przegląda całego logu symulacji, tylko poluje na konkretny wzorzec czasowy.
Efekt? Na benchmarku VerilogEval-V2, przy użyciu dokładnie tego samego modelu AI (Claude Sonnet 4.0), który dawał wcześniej 94,9% poprawności, VeriTrace osiąga 100% Pass@1. Kod generowany w pierwszym podejściu jest funkcjonalnie w pełni poprawny.
Scenariusz: akcelerator inferencji w kamerze IoT w dwa dni zamiast miesiąca
Weźmy średniej wielkości firmę produkującą inteligentne kamery dla logistyki magazynowej. Ich zespół R&D opracował model CNN do rozpoznawania kodów kreskowych i uszkodzeń opakowań. Model musi działać lokalnie, bez łączności z chmurą, z opóźnieniem poniżej 20 ms i w budżecie energetycznym 3 W. Wybór pada na układ SoC z wbudowaną tkanką FPGA.
Dotychczasowy proces: dwóch inżynierów FPGA przez trzy tygodnie tłumaczy architekturę modelu na potok przetwarzania w Verilog. Po syntezie okazuje się, że kontroler DMA raz na kilkaset klatek wysyła dane pod zły adres. Debugowanie tego błędu, związanego z nieprawidłowym stanem maszyny w rzadkim warunku brzegowym, trwa dodatkowy tydzień. Całość: cztery tygodnie od ukończonego modelu do pierwszego działającego prototypu w laboratorium.
Z VeriTrace zespół dostarcza specyfikację funkcjonalną w języku naturalnym, uzupełnioną o diagram blokowy i oczekiwane przebiegi czasowe dla głównych interfejsów. System generuje kompletny, poprawny kod Verilog w około dwie godziny. To nie jest wersja 'do dopracowania'. To wersja gotowa do puszczenia przez syntezę. Inżynierowie spędzają dwa dni na weryfikacji i testach na płytce prototypowej, a nie miesiąc na poszukiwaniu błędów. Prototyp trafia do laboratorium w tym samym tygodniu.
Co to oznacza dla budżetu i harmonogramu projektu
Koszt inżyniera FPGA w Polsce to, według danych rynkowych z początku 2025 roku, średnio od 280 do 400 zł za roboczogodzinę przy rozliczeniu kontraktowym. Czterotygodniowy cykl debugowania generuje koszt rzędu 45-65 tysięcy złotych na jeden iteracyjny cykl prototypowania. Dla startupu pracującego nad trzema wariantami produktu, gdzie każdy przechodzi średnio dwie duże iteracje sprzętowe, mówimy o kwotach 250-400 tysięcy złotych rocznie, które idą na walkę z błędami implementacyjnymi, a nie na rozwój nowych funkcji.
VeriTrace nie zastępuje inżyniera FPGA. Przesuwa jego czas z wielotygodniowego polowania na błędy synchronizacji i przepełnienia liczników na zadania, które rzeczywiście wymagają ludzkiego doświadczenia: analizę architektury, optymalizację pod konkretny układ, balansowanie potoku przetwarzania dla docelowego budżetu energetycznego. Czas od algorytmu do działającego prototypu skraca się o 70-80%. Dla firmy wypuszczającej dwa nowe produkty rocznie, oznacza to wprowadzenie ich na rynek o kwartał wcześniej.
Startupy technologiczne działające w modelu venture, gdzie każdy miesiąc opóźnienia to dodatkowe spalanie gotówki, zyskują jeszcze więcej. Szybszy prototyp to szybsza walidacja z klientem pilotażowym, szybsze iteracje na podstawie feedbacku i krótsza droga do revenue.
Od czego zacząć, jeśli chcecie to przetestować w swojej firmie
VeriTrace jest na etapie publikacji akademickiej, ale architektura systemu opiera się na ogólnodostępnym modelu Claude Sonnet 4.0, a koncepcja Agentic Temporal Exploration nie wymaga specjalistycznego sprzętu. Zespoły, które już eksperymentują z generowaniem Verilog RTL przez LLM, mogą przetestować to podejście w konkretnym wycinku swojego pipeline'u.
Nie polecam rzucać tego na główny projekt z deadline'em. Wybierzcie algorytm, który już macie poprawnie zaimplementowany w FPGA, dla którego znacie wszystkie trudne przypadki brzegowe. Puście go przez dotychczasowe narzędzia i przez prototyp z rozszerzoną przestrzenią debugowania, z pełną swobodą odpytywania sygnałów. Porównajcie czas do uzyskania pierwszej poprawnej syntezy. Jeśli różnica jest taka, jak na benchmarku, wtedy możecie pomyśleć o wpięciu tego w pipeline dla nowych projektów, na początek dla mniej krytycznych bloków peryferyjnych.
Prawdziwy zysk przyjdzie wtedy, gdy zbudujecie własną bibliotekę przypadków testowych z Waszych specyficznych błędów implementacyjnych. Agent, który uczy się na logach symulacji Waszych konkretnych układów, będzie debugował szybciej i celniej niż agent trenowany tylko na problemach z akademickiego benchmarku.
- Skrócenie cyklu prototypowania FPGA z 4 tygodni do 2-3 dni dla typowego akceleratora inferencji
- Eliminacja 5-8% błędów implementacyjnych, które dotąd wymagały ręcznego debugowania
- Przeniesienie czasu inżynierów z poszukiwania błędów synchronizacji na optymalizację architektury dla konkretnego budżetu energetycznego
- Osiągnięcie gotowego do syntezy kodu Verilog za pierwszym podejściem (Pass@1 100%)
Informacje o artykule
Ten artykuł powstał w oparciu o paper naukowy opublikowany w serwisie arXiv.
Paper: VeriTrace: Human-Like Temporal Exploration Completes Agentic Action Space
Autorzy: Yu-Tung Liu, Cunxi Yu
Large language models have shown promise for automated Verilog RTL generation, yet state-of-the-art multi-agent systems plateau at ~95% accuracy on standard benchmarks. We trace this ceiling to an incomplete debugging action space: existing systems restrict which signals the agent can inspect, wh...
arXiv: arxiv.org/abs/2608.02878
Artykuł wygenerowany ze wsparciem sztucznej inteligencji.
