PANÁK, P. Vysokoúrovňová syntéza číslicových obvodů v oblasti síťových aplikací popsaných v jazyce P4 [online]. Brno: Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií. 2020.

Posudky

Posudek vedoucího

Fujcik, Lukáš

Posudek je založen na vyjádření externího konzultanta pana Ing. Tomáše Martínka, Ph.D. viz příloha.

Navrhovaná známka
A
Body
90

Posudek oponenta

Šťáva, Martin

Práce se zabývá vysokoúrovňovou syntézou číslicových obvodů popsaných v jazyku C/C++ (z původního jazyka P4) a její aplikací na algoritmy z oblasti počítačových sítí. Cílem práce bylo seznámení se s principy takové syntézy, seznámení se s vysokoúrovňovým jazykem P4 a převodem jeho konstrukcí do jazyka C/C++, provedení a zhodnocení experimentů s nástroji od firem Xilinx a Intel nad navrženými bloky. Zadání bylo víceméně splněno, i když bych dle zadání očekával výsledky nejen s nástrojem Intel HLS Compiler Pro, ale také s nástrojem Xilinx Vivado HLS (potom by bylo bývalo možné provést důkladnější diskusi). Formální zpracování textové části BP je velmi dobré. Práce obsahuje malé množství gramatických nedostatků (chybné koncovky slov např. v první větě kap. 1.1.6 na s. 18 nebo poslední větě na s. 33 a 49; chybějící nebo přebývající větné čárky jako např. na s. 27, 44, 46, 47, 51; přemíra užití vztažného zájmena „jenž“, a to převážně ve špatném tvaru; přemíra užívání předložky skrz/skrze, a to ne vždy vhodným způsobem) a několik málo typografických prohřešků (např. jednohlásková slova na koncích řádků na s. 10–12, 17–39 aj.; chybějící řády šestnáctkových čísel „0xA10“ a „0xaaa“ na s. 21 a 23). Obr. 1.7 na s. 20 byl převzat i s anglickými vpisky, a působí tak nesourodě s okolním českým textem. Použité literární zdroje jsou přiměřeně a vhodně citované i soupis bibliografických citací víceméně odpovídá doporučení. Rozsah práce je v doporučeném rozsahu. Prezentační úroveň textové části BP hodnotím jako zdařilou, i když určité výhrady k ní mám. V kapitole Úvod je „behaviorální úroveň“ přeložena jako „Register Transfer Level“ (RTL), což neodpovídá konvenčnímu modelu abstrakce pro číslicové obvody – jedná se o dvě odlišné úrovně (bakalářská práce se mj. zabývá vysokoúrovňovou syntézou/překladem z behaviorální úrovně do RTL). Teoretický úvod (celá kap. 1) čtenáři neznalému problematiky mnoho neobjasní, neboť postrádá systematičnost – některé podkapitoly, ba i odstavce jsou izolované bez zjevné souvislosti (dáno pravděpodobně překladem různých anglických literárních zdrojů); některé pojmy nejsou vysvětleny (např. „cena vodičů“ na s. 17, „kontrolní krok“ aj.) či jsou použity jen jednou (např. „lineární programování“ na s. 14; „kontrolní zásobník“ na s. 24), bez jakékoliv provázanosti; některé pojmy z jiných vědních oborů postrádají smysl (např. „klika“ na s. 17). Diagramy na obr. 1.1 by bylo vhodnější uvést ke konkrétnímu příkladu, jinak mají malou výpovědní hodnotu pro neznalého čtenáře (a pro znalého postrádají smysl); navíc se v něm objevuje vedle různých diagramů i diagram SSIM, jehož zkratka není uvedena ani v textu ani v seznamu zkratek na konci práce (a právě ona zkratka nese behaviorální význam tohoto dvojdiagramu). Algoritmy ASAP a ALAP na s. 14 jsou skutečně nejzákladnější pro prvotní (odhad) plánování i pro optimalizované plánování, ovšem obr. 1.3 bez jakéhokoliv dalšího vysvětlení neznalému čtenáři mnoho nesdělí, přičemž právě mobilita operátorů je tím nejpodstatnějším výstupem plánování. Některá vyjádření jsou krkolomná či těžko pochopitelná (např. „Mapování kroků kontrolních stavů na stavy automatu může být lokálního rozdělení, kde…“ na s. 18“; „Čtvrtý příkaz specifikuje o šířce paměti“ na s. 33) či nevhodná (např. „Parser obsahuje volitelnou pipeline pro /doladění/ frekvence…“ na s. 24). Seznam symbolů, veličin a zkratek není seřazen podle abecedy, a špatně se v něm proto hledá; navíc chybně obsahuje dvě stejné zkratky (TCAM) s odlišným významem. Realizační výstup je využitelný pro další průkopnickou práci s vysokoúrovňovou syntézou, především kladně hodnotím výsledky v tab. 3.6 na s. 49, z níž je zřetelně patrný rozdíl v návrhářském přístupu v softwarovém a hardwarovém smyslu. Závěrem konstatuji, že zadání práce bylo víceméně splněno. Celkově hodnotím bakalářskou práci studenta Petra Panáka známkou B (velmi dobře) s výsledným počtem bodů 81 a doporučuji k obhajobě.

Navrhovaná známka
B
Body
81

Otázky

eVSKP id 126985