Randomization of Algorithms in the ABC system
Randomizace algoritmů v systému ABC
Authors
Supervisors
Reviewers
Editors
Other contributors
Journal Title
Journal ISSN
Volume Title
Publisher
České vysoké učení technické v Praze
Czech Technical University in Prague
Czech Technical University in Prague
Date of defense
2015-08-31
Abstract
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.
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.
Description
Citation
Permanent link
Rights/License
A university thesis is a work protected by the Copyright Act of the Czech Republic. 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.
Vysokoš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 v platném znění.
Vysokoš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 v platném znění.