Randomizace algoritmů v systému ABC
Randomization of Algorithms in the ABC system
Typ dokumentu
bakalářská prácebachelor thesis
Autor
Lerl Jakub
Vedoucí práce
Fišer Petr
Oponent práce
Schmidt Jan
Studijní obor
Softwarové inženýrstvíStudijní program
InformatikaInstituce přidělující hodnost
katedra softwarového inženýrstvíObhájeno
2015-08-31Práva
A university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics http://www.cvut.cz/sites/default/files/content/d1dc93cd-5894-4521-b799-c7e715d3c59e/cs/20160901-metodicky-pokyn-c-12009-o-dodrzovani-etickych-principu-pri-priprave-vysokoskolskych.pdfVysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou http://www.cvut.cz/sites/default/files/content/d1dc93cd-5894-4521-b799-c7e715d3c59e/cs/20160901-metodicky-pokyn-c-12009-o-dodrzovani-etickych-principu-pri-priprave-vysokoskolskych.pdf
Metadata
Zobrazit celý záznamAbstrakt
Logická syntéza je důležitým prvkem v oboru Číslicových obvodů. Nástroj ABC pro logickou syntézu využívá plně deterministických algoritmů. Během procesu není prováděn žádný náhodný výběr. Algoritmy při stejném vstupu tedy vrátí pokaždé stejný výstup. Algoritmy jsou ovšem velmi citlivé (mimo jiné) na změnu např. pořadí vstupů. Randomizování ekvivalentních voleb v těchto algoritmech tak vede k nalezení různých řešení, která mohou být kvalitnější než u deterministického algoritmu.
V této práci jsem úspěšně randomizoval algoritmy balance a rewrite. Testování algoritmu rewrite dopadlo podle očekávání a jeho používání v syntézním procesu může přinést pozitivní výsledky. Randomizovaný balance ovšem generoval horší výsledky než deterministický, byl proto několikrát upravován do formy, která je konkurenceschopná deterministickému. Podařilo se mi dosáhnout průměrného zhoršení pouze 0.09\% oproti referenčnímu balance, což už už se dá považovat za statistickou chybu. Logic synthesis is an important topic in circuit domain. The ABC tool uses fully deterministic algorithms for logic synthesis. No random decisions are made in the process and for any input it returns the same output. Nonetheless algorithms are very sensitive to changes of variable ordering. Randomization of equal choices in the process may lead to find better results.
In this thesis I successfully implemented randomization of balance and rewrite. Testing randomized rewrite ended as expected and its use in synthesis process may bring positive results. Nonetheless testing randomized balance generated worse results than deterministic one. So I reworked it many times to achieve algorithm which is able to compete that. I implemented semi-randomized balance. It generates better results on average than fully-randomized algorithm and it is worse than deterministic balance entirely by 0.09\%. This difference can be looked at just as statistical margin for error.
Kolekce
- Bakalářské práce - 18102 [1745]