Formal Methods for Exact Analysis of Approximate Circuits

Loading...
Thumbnail Image
Date
2019-12-21
Advisor
Referee
Mark
Journal Title
Journal ISSN
Volume Title
Publisher
Altmetrics
Abstract
Approximate circuits are digital circuits that are intentionally designed in such a way that the specification is violated in terms of functionality in order to obtain some improvements in power consumption, performance or area, in comparison with fully functional circuits.  To design the approximate circuits, the synthesis tools rely on the availability of a procedure checking, whether the synthesized circuits meet a specification and/or provides information about circuit quality. Compared to the traditional circuit design flow, the nature of the approximate circuits involves replacing the strict functional equivalence checking with a more advanced approach that enables us to quantify or guarantee the degree of similarity. The most common technique is to employ a circuit simulator for analysing responses for all input vectors. This approach allows us to simultaneously perform checking and quality assessment, but the exhaustive enumeration of the input vectors is tractable only for a small number of inputs. To avoid excessive run-times, a subset of all possible input vectors is typically used for complex circuits. This causes us, however, to lose the ability to guarantee that the quality of the synthesized circuits is within an acceptable range given in the specification.  The main goal of this paper is to show how to adopt formal methods such as binary decision diagrams and satisfiability solvers for exhaustive analysis of approximate circuits without explicit enumeration of all input vectors. We survey the methods for exact computation of the most important error parameters used in the context of approximate computing, propose improved algorithms and provide a detailed analysis of their performance.  The methods are benchmarked on a large set of key approximate circuits consisting of nearly 2,000 unique arithmetic instances with 8-, 12-, 16-, and 32-bit operands which helps us to identify the best algorithm and method for computation of a desired error parameter.
Přibližně počítající obvody jsou takové číslicové obvody, které jsou záměrně navrženy tak, aby byla porušena specifikace z pohledu funkčnosti s cílem zvýšení výkonnosti, uspoření energie, plochy na čipu apod. oproti funkčnímu řešení plně vyhovujícímu specifikaci. Při návrhu těchto obvodů je zapotřebí mít k dispozici proceduru, která je schopna prověřit, zda-li obvody splňují požadavky plynoucí z dané aplikace a kvantifikovat míru chyby, které obvody vykazují. K tomuto účelu se typicky používají obvodové simulátory, avšak tento přístup vyžaduje spočítat odezvu pro všechny vstupní kombinace, což vede na problematickou škálovatelnost. Cílem tohoto článku je ukázat, jakým způsobem lze tento problém řešit s využitím formálních technik známých z oblasti verifikace číslicových obvodů, zejména binárních rozhodovacích diagramů a tzv. SAT solverů. Článek obsahuje rešerši v literatuře dostupných řešení, navrhuje nové algoritmy a obsahuje podrobné vyhodnocení jednotlivých přístupů na více než 2000 aritmetických obvodech.
Description
Citation
IEEE Access. 2019, vol. 7, issue 1, p. 177309-177331.
https://www.fit.vut.cz/research/publication/12133/
Document type
Peer-reviewed
Document version
Published version
Date of access to the full text
Language of document
en
Study field
Comittee
Date of acceptance
Defence
Result of defence
Document licence
Creative Commons Attribution 4.0 International
http://creativecommons.org/licenses/by/4.0/
Citace PRO