Comparison of Decision Diagrams for Multiple-Output Logic Functions

Size: px
Start display at page:

Download "Comparison of Decision Diagrams for Multiple-Output Logic Functions"

Transcription

1 Comparison of Decision Diagrams for Multiple-Output Logic Functions sutomu SASAO, Yukihiro IGUCHI, and Munehiro MASUURA Department of Computer Science and Electronics, Kyushu Institute of echnology Center for Microelectronic Systems, Kyushu Institute of echnology Department of Computer Science, Meiji University Abstract his paper shows four different methods to evaluate multiple-output logic functions using decision diagrams: SBDD, MBDD, BDD for characteristic functions (CF), and BDDs for ECFNs (Encoded Characteristic Function for Non-ero outputs) Methods to compute average evaluation time for each type of decision diagrams are presented By eperimental analysis using benchmark functions, the number of nodes and average evaluation time are compared Evaluation using BDDs for ECFN outperforms those using MBDDs, BDDs for CF, and SBDDs with respect to the sie of BDDs and computation time he sies of BDDs for ECFNs are smaller than ones of corresponding MB- DDs (Multi-erminal BDDs), BDDs for CFs (Characteristic Functions), and SBDDs (Shared BDDs) Introduction Various kinds of BDDs eist to represent multiple-output logic functions Among them, an MBDD (multi-terminal BDD), an SBDD (shared BDD), and a BDD representing the characteristic function (BDD for CF) are popular For a BDD for CF or an MBDD, the evaluation time is O n m, where n denotes the number of input variables, and m denotes the number of output variables For an SBDD, the evaluation time is O n m BDDs for CFs and MBDDs are suitable for high speed evaluation Unfortunately, the sies of these BDDs tend to be too large hus, we have to resort to SBDDs, which require longer evaluation time In [6], a new data structure, a BDD for ECFN (encoded characteristic function for non-ero outputs) is introduced In this paper, we show that by using BDDs for ECFNs, logic evaluation can be more than two times faster than by using SBDDs Also, the sie of the memory is smaller than by using SBDDs his method can be useful for logic simulation [, ] and embedded system [] Function Evaluation using BDDs Another method to represent a logic function is the branching program Fig shows a method to convert a BDD into a branching program For a given logic function, construct a binary decision diagram (BDD), as shown in Fig (a) hen, replace each non-terminal node by an if then else statement he result is a branching program, as shown in Fig (b) hen, by implementing this program by a computer, we can evaluate the logic function he time to evaluate a logic function for a given input is proportional to the number of non-terminal nodes that appear in the path from the root node to the terminal nodes -edge -edge v v v 5 f v v v (a) BDD v 5 : if( ) goto v ; else goto v ; v : if( ) goto v ; else goto v ; v : if( ) goto v ; else goto v ; v : if( ) goto v ; else goto v ; v : return(); v : return(); (b) Branching program generated from BDD Figure : BDD and branching program -edge -edge v v v 5 f v v v f (,,, )= v v f (,,,)= Figure : Function evaluation using BDD Eample Consider the BDD in Fig When is applied, f is evaluated, as shown in Fig Note that this involves a traverse across three edges his figure also shows that the minimum path length is two, while the maimum path length is four As shown in the above eample, the evaluation time depends on the input values o estimate the evaluation time of different DDs, we introduce a metric average path length, which measures the average evaluation time over all possible combinations We measure the average evaluation time by the average path length in the BDD We assume that each variable occurs as a with the same probability as a hat is, at any node, a -edge is as likely to be traversed as a -edge Definition he node traversing probability, denoted by P v i, is the probability of traversing the node v i when a BDD is traversed from the root node to a terminal node he edge traversing probability, denoted by P e i

2 %&'!! # $ v = 6 v v 5 f!"! # $ v v 6 v Figure : Average path length of BDD (P e i ) is the probability of traversing the edge (the edge) from the node v i Since, the probabilities that and occur are assumed to be equal and (, P e i ) P e i ) P v i *( Lemma he node traversing probability is equal to the sum of the edge traversing probabilities of the incoming edges heorem he average path length is equal to the sum of the node traversing probabilities of the non-terminal nodes Eample Let us calculate the average path length of the BDD in Fig P v 5, and we have P e 5 P e 5, ( P v, ( P e, P e - ( P v - P e 5 ) P e ( ( ( P e P e ( P v / ( P e P e - ( 6 hus, the average path length of the BDD is given by P v 5 ) P v ) P v ) P v ( ( ( ( 6 65 BDDs for Multiple-Output Functions In this part, we introduce MBDDs, SBDDs, and BDDs for CFs to represent multiple-output logic functions Evaluation using MBDDs Fig shows an eample of an MBDD representing a -variable -output logic function Since each terminal node stores all output values, the output values are obtained by just traversing the MBDD from the root node to a terminal node When the outputs are stored in -bit words, up to output values of a terminal node can be evaluated by a single memory access, and up to 6 output values can be evaluated within two memory accesses In general, the evaluation time is O n m( O n m Similar to the case of BDDs, the average evaluation time is equal to the average path length Since many outputs are evaluated by one traversal of the MBDD, the evaluation is fast Unfortunately, the number of terminal nodes can be up to m, and the number of nodes will be too large to be stored in a memory for many practical applications f = f = f f f f f = f = Figure : Average path length of the MBDD f = v v f = f = v f = v Figure : Eample of SBDD Evaluation using SBDDs An SBDD is obtained from the set of BDDs representing multiple-output functions, by sharing nodes among BDDs to reduce the number of nodes For an n-variable m-output function, m BDDs are shared o evaluate a multiple-output function for each output, traverse the edges from the root node to a constant node according to the values of the input variables hus, the evaluation time is O n m Fig is the SBDD corresponding to the MBDD in Fig o evaluate all the output values, we have to traverse all the BDDs for f, f, f, and f from the root node to the constant nodes, sequentially he average path length of an SBDD is the sum of the average path lengths of the individual BDDs in Fig, instead of the SBDD in Fig Eample he average path length of the SBDD shown in Fig is he BDD in Fig represents the multiple-output function by using auiliary variables and In this case, the average eval- f = v v f = f = v f = v :9 Figure : Average evaluation time of SBDD 9 69

3 v 6 v 5 (,,, )=(,,,) v f f False False f f f Figure : BDD for multiple-output function using auiliary variables able : Derivation of CF from the truth table of multipleoutput function (b) (a) f f f f CF f f CF f f uation time is 656=65 Evaluation using BDDs for CFs For fast evaluation of multiple-output functions, characteristic functions (CFs) are useful [,, 7] he CF for an n-variable m-output logic function is an n m -variable - output logic function, where CF = if and only if the combinations of the inputs and the outputs are valid Eample able (a) shows the truth table of the twooutput function f, f able (b) is the truth table for the corresponding CF For eample, since the combination f f eists in able (a), the value of CF in (b) the corresponding row is Since the combination f f ) does not eist in able (a), the value of CF in (b) the corresponding row is For an n-variable m-output function, the number of rows in the truth table for CF is n; m Among them, n rows have s and the remaining rows have s By using the BDD for CF, we can evaluate a multipleoutput logic function quickly Consider the multiple-output function from Figs and he BDD for CF for the multiple-output function is shown in Fig 5 Note that the non-terminal nodes having indices f, f, f, and f correspond to auiliary variables In a BDD for CF, the auiliary variable f i can appear only after all the input variables that depend on f i appear Also, either the -edge or the -edge f f rue f f f Figure 5: Evaluation of function using BDD for CF of each auiliary variables is connected to the constant node he net eample shows a method to evaluate a logic function by using a BDD for CF Eample (Function evaluation using BDD for CF) Using the BDD for CF in Fig 5, obtain the output values for the input ) he inde of the root node v 6 is Since the value of is, proceed to the -edge to node v 5, whose inde is Since the value of is, proceed to the -edge to reach the node v, which corresponds to auiliary variable f When we arrive at an auiliary variable, we have to proceed along either the -edge or the -edge If we proceed along the -edge and arrive at the terminal node, then the output value is non-ero, that is, the output is In this case, backtrack and proceed along the -edge On the other hand, if we proceed along the -edge and arrive at the terminal node, then the output value is non-, that is, the output is In this case, we have to backtrack and proceed along the -edge In this eample, we proceed along the -edge first and arrived at the terminal node So we have to backtrack to the -edge, because we obtained the value f If we proceed along the -edge first, we will not arrive at the terminal node, and we obtain the value f In this case, we can reduce the search time for the backtrack In this eample, when we arrive at an auiliary variable, we first proceed along the -edge Similarly, we search the remaining parts, and by traversing edges, we can determine that the output values are f f f f If the probabilities of taking values and are the same for all f i, then the evaluation time does not depend on the order of traversal As shown in Eample, the average evaluation time using a BDD for CF is obtained from the average path length of the BDD However, when we arrive at a node v i that corresponds to an auiliary variable, we have to modify the algorithm as follows: At the node v i that corresponds to an auiliary variable, either the -edge or the -edge is connected to the terminal node Let the rue

4 K 6 f f f f f f f 6 f 6 f f 6 6 Figure 6: Average path length in BDD for CF probability taking values and be the same for f i hen, the probability of traversing the edge that is connected to the constant is one half of the probability P v i Also, the other edge is always traversed hus, the sum of the passing probability for both edges is 5 P v i Eample Fig 6 shows the method to obtain the average evaluation time of the BDD for CF shown in Fig 5 It is calculated as ' 6 ' 6 ' 6 ' 6 6 < < ) In this way, BDDs for CFs evaluate a logic function in O n m time, which is faster than the corresponding SB- DDs However, when the value of n m is large, the number of nodes is ecessive, and we cannot construct the BDD for CF Function Evaluation using BDDs for ECFNs A new method to represent multiple-output functions, using a BDD for ECFN (encoded characteristic function for non-ero outputs) [6], is faster and requires smaller amount of memory than SBDDs his section shows the properties of the BDD for ECFN ECFN and Output Encoding Problem An ECFN represents the mapping: F : B n = B u > B, where log ma F CB CB ED iff f vf, where DHG v D is an integer represented by the binary vector D Eample he ECFN for the four-output function shown in Fig is F f f f f ECFNs can be used in FPGA design, logic emulation, embedded system, etc [5] A BDD for ECFN is considered as a generaliation of an SBDD Definition and Definition For an m-output function f i i EC m I mj, the ECFN is F b um uj il b um uj 6 E b f i where D able : Encoding Methods for Four-output Function Encoding Encoding Encoding f f f f f f f f f f f f Auiliary variables Input variables SBDD BDD for ECFN Auiliary variables and input variables Figure : SBDD ; and BDD for ECFN b uj b uj 6E b is a binary representation of the integer i, and u N? log ma,, EE, uj are auiliary variables In the above definition, the integer i is represented by a binary vector D using the natural encoding However, different encodings can simplify the representation Eample Consider the four-output function F f f f f, where f, f, f, and f he ECFN F generated by Encoding in able is F f f f f In this case, we have F he ECFN F generated by Encoding in able is F f f f f In this case, we have F his eample shows that encodings influence the sie of the representation Optimiation of BDDs for ECFNs he BDD shown in Fig can be considered as a special case of a BDD for ECFN From now on, such a BDD will be simply denoted by an SBDD ; As shown in Fig, in an SBDD ;, the auiliary variables appear above the input variables However, in a general BDD for ECFN, the auiliary variables and the input variables can be mied together By optimiing the ordering of the input and the auiliary variables, the BDD can be minimied Definition he number of nodes in the BDD (including both non-terminal and terminal nodes) is denoted by nodes(bdd) heorem nodes BDD for ECFN O nodes SBDD ;

5 Auiliary variables Figure : BDD for ECFN considering variable ordering Encoding Encoding Figure : Optimiation of the output encoding Eample Let the BDD in Fig be a BDD for ECFN When we optimie the ordering of the variables, the BDD for ECFN shown in Fig is obtained In this way, BDDs for ECFNs can be made smaller than corresponding SBDD ; s By optimiing both the output encoding and the variable ordering, we can obtain the BDD for ECFN having fewer nodes than the corresponding SBDD ; Eample Fig shows the BDDs for ECFNs that represent F and F in Eample Note that the numbers of nodes are 6 and 7, respectively hey use Encodings and in able his eample shows that output encodings influence the sie of the BDDs Fast Evaluation using BDDs for ECFNs By using the BDD for ECFN in Fig, we can save memory and evaluate functions faster than the corresponding SBDD ; For eample, when we apply the input P to the BDD in Fig, we can see that all the outputs f, f, f, and f are On the other hand, if we use the SBDD ; in Fig, we need to traverse the BDD four times his shows that a BDD for ECFN often evaluates several outputs at one traversal Eample 5 Consider the BDD for ECFN shown in Fig Note that not all the auiliary variables appear in a path from the root to a terminal node Consider applying the input to the BDD for ECFN shown in Fig By traversing five paths Q, we can evaluate eight outputs In fact, in the path, f is evaluated; in the path, f is evaluated; in the path, f and f are evaluated; in the path, f and f 6 are evaluated; in the path, f 5 and f 7 are evaluated From here, we will show a fast method to evaluate a BDD for ECFN During BDD traversal, when we encounter an auiliary variable, by searching both subtrees for -edge and -edge, we can evaluate all the outputs efficiently Path Path Path Path Path Figure : Method to traverse BDD In order to evaluate all the outputs for an input, we need an efficient algorithm to traverse the BDD he following algorithm produces the values of multiple-output logic functions in a compact form Note that the algorithm is more complicated than that of BDD for CF Algorithm (Evaluation of Multiple-Output Function using a BDD for ECFN) eval ER u S? log ma ; eval root u ; epand the parenthesis of the output list; evalp p lastinde ER if p, non-terminal node ER if p, node for an input variable UR if V p > indew, evalp p > edge lastinde ; else evalp p > edge lastinde ; else if p, node for an auiliary variable R currentinde X inde of the current node; printf lastindej currentindej ; printf ; evalp p > edge currentinde ; evalp p > edge currentinde ; printf ; else R /* terminal node */ printf currentinde ; printf ; printf (the value of current terminal node); printf ; return : he average evaluation time is equal to the average path length, which can be obtained similarly to the case of BDDs Change the values of to,,,6e, and, and obtain the sum of the lengths 5

6 = (a), (d), (b), 6 = = = (e) (c), = Figure 5: Average path length of BDD for ECFN of paths from the auiliary variables to the terminal nodes Eample 6 Figs 5(a) (e) illustrate a method to obtain the average evaluation time of the BDD for ECFN in Fig he average evaluation time is calculated as Eperimental Results For selected MCNC benchmark functions, we constructed MBDDs, BDDs for CFs, and SBDD ; s able 5 compares the average number of nodes and evaluation time of decision diagrams o construct BDDs for ECFNs, we used the encoding method in [5] In the table, Name denotes the function name, In denotes the number of inputs, Out denotes the number of outputs, Node denotes the number of nodes, and Eva denotes the average evaluation time In the columns BDD for ECFN, Min denotes the case where the auiliary variables and the input variable are mied to reduce the BDDs 6 Summary In this paper, we presented four different methods to represent multiple-output functions by using BDDs We compared the sies and average evaluation time of the BDDs We eperimentally showed that BDDs for ECFNs require fewer nodes and require relatively short time to evaluate logic functions A future research area includes efficient method to find good encodings for ECFNs Acknowledgments his research is partly supported by the Grant in Aid for Scientific Research of he Japan Society for the Promotion 9 able 5: Average number of nodes and evaluation time of decision diagrams Name In Out MBDD BDD for SBDDY BDD for CF ECFN Nod Eva Nod Eva Nod Eva Nod Eva ape ape duke e eep k mainpla mark mise opa pdc rckl seq shift spla t table ts vg dn dn dn parc Ratio Nod: Number of terminal and non-terminal nodes Min: When the auiliary variables can be any place Eva: Average evaluation time Ratio: Average of ratios when the value for SBDD is of Science (JSPS), and the akeda Foundation Prof Jon Butler improved English presentation References [] P Ashar and S Malik, Fast functional simulation using branching programs, ICCAD, pp -, Oct 995 [] F Balarin, M Chiodo, P Giusto, H Hsieh, A Jurecska, L Lavagno, A Sangiovanni-Vincentelli, E M Sentovich, and K Suuki, Synthesis of software programs for embed-ded control applications, IEEE rans CAD, Vol, No 6, pp -9, June 999 [] P C McGeer, K L McMillan, A Saldanha, A L Sangiovanni- Vincentelli, and P Scaglia, Fast discrete function evaluation using decision diagrams, ICCAD 95, pp -7, Nov 995 [] R Rudell, Dynamic variable ordering for ordered binary decision diagrams, Proceedings of the IEEE International Conference on Computer-Aided Design, pp -7, Santa Clara, CA, November 99 [5] Sasao, Compact SOP representations for multiple-output functions: An encoding method using multiple-valued logic, International Symposium on Multiple-Valued Logic, Warsaw, Poland,, pp 7- [6] Sasao, M Matsuura, Y Iguchi, and S Nagayama, Compact BDD Representations for Multiple-Output Functions, VLSI-SOC, Montpellier, France, Dec -5, [7] C Scholl, R Drechsler, and B Becker, Functional simulation using binary decision diagrams, ICCAD 97, pp -, Nov 997 [] S Yang, Logic Synthesis and Optimiation Benchmark User Guide Version, MCNC, Jan 99 6

Bi-Partition of Shared Binary Decision Diagrams

Bi-Partition of Shared Binary Decision Diagrams Bi-Partition of Shared Binary Decision Diagrams Munehiro Matsuura, Tsutomu Sasao, on T Butler, and Yukihiro Iguchi Department of Computer Science and Electronics, Kyushu Institute of Technology Center

More information

A Parallel Branching Program Machine for Emulation of Sequential Circuits

A Parallel Branching Program Machine for Emulation of Sequential Circuits A Parallel Branching Program Machine for Emulation of Sequential Circuits Hiroki Nakahara 1, Tsutomu Sasao 1 Munehiro Matsuura 1, and Yoshifumi Kawamura 2 1 Kyushu Institute of Technology, Japan 2 Renesas

More information

A Quaternary Decision Diagram Machine and the Optimization of Its Code

A Quaternary Decision Diagram Machine and the Optimization of Its Code 39th International Symposium on Multiple-Valued Logic A Quaternary Decision Diagram Machine and the Optimization o Its Code Tsutomu Sasao, Hiroki Nakahara, Munehiro Matsuura Yoshiumi Kawamura 2, Jon T.

More information

x 1 x 2 ( x 1, x 2 ) X 1 X 2 two-valued output function. f 0 f 1 f 2 f p-1 x 3 x 4

x 1 x 2 ( x 1, x 2 ) X 1 X 2 two-valued output function. f 0 f 1 f 2 f p-1 x 3 x 4 A Method to Represent Multiple- Switching Functions by Using Multi-Valued Decision Diagrams Tsutomu Sasao Department of Computer Science and Electronics Kyushu Institute of Technology Iizuka 8, Japan Jon

More information

BINARY decision diagrams (BDDs) [5] and multivalued

BINARY decision diagrams (BDDs) [5] and multivalued IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 24, NO. 11, NOVEMBER 2005 1645 On the Optimization of Heterogeneous MDDs Shinobu Nagayama, Member, IEEE, and Tsutomu

More information

BDD Representation for Incompletely Specified Multiple-Output Logic Functions and Its Applications to the Design of LUT Cascades

BDD Representation for Incompletely Specified Multiple-Output Logic Functions and Its Applications to the Design of LUT Cascades 2762 IEICE TRANS. FUNDAMENTALS, VOL.E90 A, NO.12 DECEMBER 2007 PAPER Special Section on VLSI Design and CAD Algorithms BDD Representation for Incompletely Specified Multiple-Output Logic Functions and

More information

BDD Representation for Incompletely Specified Multiple-Output Logic Functions and Its Applications to Functional Decomposition

BDD Representation for Incompletely Specified Multiple-Output Logic Functions and Its Applications to Functional Decomposition BDD Representation for Incompletel Specified Multiple-Output Logic Functions and Its Applications to Functional Decomposition. Tsutomu Sasao and Munehiro Matsuura Department of Computer Science and Electronics,

More information

A Quaternary Decision Diagram Machine: Optimization of Its Code

A Quaternary Decision Diagram Machine: Optimization of Its Code 2026 IEICE TRANS. INF. & SYST., VOL.E93 D, NO.8 AUGUST 2010 INVITED PAPER Special Section on Multiple-Valued Logic and VLSI Computing A Quaternary Decision Diagram Machine: Optimization of Its Code Tsutomu

More information

BDD Path Length Minimization Based on Initial Variable Ordering

BDD Path Length Minimization Based on Initial Variable Ordering Journal of Computer Sciences (4): 52-529, 2005 ISSN 549-66 2005 Science Publications BDD Path Length Minimization Based on Initial Variable Ordering P.W.C. Prasad, M. Raseen, 2 A. Assi and S.M.N.A. Senanayake

More information

On Designs of Radix Converters Using Arithmetic Decompositions

On Designs of Radix Converters Using Arithmetic Decompositions On Designs of Radix Converters Using Arithmetic Decompositions Yukihiro Iguchi 1 Tsutomu Sasao Munehiro Matsuura 1 Dept. of Computer Science, Meiji University, Kawasaki 1-51, Japan Dept. of Computer Science

More information

Compact BDD Representations for Multiple-Output Functions and Their Application

Compact BDD Representations for Multiple-Output Functions and Their Application 8 6 IF? 8 IF 6 Compact BDD epresentations for MultipleOutput Functions an Their Application Tsutomu SASAO, Munehiro MATSUUA, Yuihiro IGUCHI, an Shinobu AGAYAMA Department of Computer Science an Electronics,

More information

Binary Decision Diagram with Minimum Expected Path Length

Binary Decision Diagram with Minimum Expected Path Length Binary Decision Diagram with Minimum Expected Path Length Yi-Yu Liu Kuo-Hua Wang TingTing Hwang C. L. Liu Department of Computer Science, National Tsing Hua University, Hsinchu 300, Taiwan Dept. of Computer

More information

A Memory-Based Programmable Logic Device Using Look-Up Table Cascade with Synchronous Static Random Access Memories

A Memory-Based Programmable Logic Device Using Look-Up Table Cascade with Synchronous Static Random Access Memories Japanese Journal of Applied Physics Vol., No. B, 200, pp. 329 3300 #200 The Japan Society of Applied Physics A Memory-Based Programmable Logic Device Using Look-Up Table Cascade with Synchronous Static

More information

Outline. Definition. 2 Height-Balance. 3 Searches. 4 Rotations. 5 Insertion. 6 Deletions. 7 Reference. 1 Every node is either red or black.

Outline. Definition. 2 Height-Balance. 3 Searches. 4 Rotations. 5 Insertion. 6 Deletions. 7 Reference. 1 Every node is either red or black. Outline 1 Definition Computer Science 331 Red-Black rees Mike Jacobson Department of Computer Science University of Calgary Lectures #20-22 2 Height-Balance 3 Searches 4 Rotations 5 s: Main Case 6 Partial

More information

Formal Verification using Probabilistic Techniques

Formal Verification using Probabilistic Techniques Formal Verification using Probabilistic Techniques René Krenz Elena Dubrova Department of Microelectronic and Information Technology Royal Institute of Technology Stockholm, Sweden rene,elena @ele.kth.se

More information

An Algorithm for the Construction of Decision Diagram by Eliminating, Merging and Rearranging the Input Cube Set

An Algorithm for the Construction of Decision Diagram by Eliminating, Merging and Rearranging the Input Cube Set An Algorithm for the Construction of Decision Diagram by Eliminating, Merging and Rearranging the Input Cube Set Prof. Sudha H Ayatti Department of Computer Science & Engineering KLS GIT, Belagavi, Karnataka,

More information

Minimization of the Number of Edges in an EVMDD by Variable Grouping for Fast Analysis of Multi-State Systems

Minimization of the Number of Edges in an EVMDD by Variable Grouping for Fast Analysis of Multi-State Systems 3 IEEE 43rd International Symposium on Multiple-Valued Logic Minimization of the Number of Edges in an EVMDD by Variable Grouping for Fast Analysis of Multi-State Systems Shinobu Nagayama Tsutomu Sasao

More information

ROBDD Optimization Using Sub Graph Complexity

ROBDD Optimization Using Sub Graph Complexity IJCSNS International Journal of Computer Science and Network Security, VOL.8 No.8, August 2008 137 ROBDD Optimization Using Sub Graph Complexity Mohamed Raseen and K.Thanushkodi Coimbatore Institute of

More information

A Boolean Paradigm in Multi-Valued Logic Synthesis

A Boolean Paradigm in Multi-Valued Logic Synthesis A Boolean Paradigm in Multi-Valued Logic Synthesis Abstract Alan Mishchenko Department of ECE Portland State University alanmi@ece.pd.edu Optimization algorithms used in binary multi-level logic synthesis,

More information

Numerical Function Generators Using Edge-Valued Binary Decision Diagrams

Numerical Function Generators Using Edge-Valued Binary Decision Diagrams Numerical Function Generators Using Edge-Valued Binary Decision Diagrams Shinobu Nagayama Tsutomu Sasao Jon T. Butler Dept. of Computer Engineering, Dept. of Computer Science Dept. of Electrical and Computer

More information

Sibling-Substitution-Based BDD Minimization Using Don t Cares

Sibling-Substitution-Based BDD Minimization Using Don t Cares 44 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 19, NO. 1, JANUARY 2000 Sibling-Substitution-Based BDD Minimization Using Don t Cares Youpyo Hong, Member, IEEE, Peter

More information

File Formats. Appendix A. A.1 Benchmarks. A.2 ESPRESSO Format

File Formats. Appendix A. A.1 Benchmarks. A.2 ESPRESSO Format Appendix A File Formats A.1 Benchmarks Tables A.1 and A.2 present benchmark parameters for two-level logic (in ESPRESSO format) set and finite-state tables (in KISS2 format) set respectively. A.2 ESPRESSO

More information

Set Manipulation with Boolean Functional Vectors for Symbolic Reachability Analysis

Set Manipulation with Boolean Functional Vectors for Symbolic Reachability Analysis Set Manipulation with Boolean Functional Vectors for Symbolic Reachability Analysis Amit Goel Department of ECE, Carnegie Mellon University, PA. 15213. USA. agoel@ece.cmu.edu Randal E. Bryant Computer

More information

TEST FUNCTION SPECIFICATION IN SYNTHESIS

TEST FUNCTION SPECIFICATION IN SYNTHESIS TEST FUNCTION SPECIFICATION IN SYNTHESIS Vishwani D. Agrawal and Kwang-Ting Cbeng AT&T Bell Laboratories Murray Hill, New Jersey 07974 ABSTRACT - We present a new synthesis for testability method in which

More information

A New Algorithm to Create Prime Irredundant Boolean Expressions

A New Algorithm to Create Prime Irredundant Boolean Expressions A New Algorithm to Create Prime Irredundant Boolean Expressions Michel R.C.M. Berkelaar Eindhoven University of technology, P.O. Box 513, NL 5600 MB Eindhoven, The Netherlands Email: michel@es.ele.tue.nl

More information

BoolTool: A Tool for Manipulation of Boolean Functions

BoolTool: A Tool for Manipulation of Boolean Functions BoolTool: A Tool for Manipulation of Boolean Functions Petr Fišer, David Toman Czech Technical University in Prague Department of Computer Science and Engineering Karlovo nám. 13, 121 35 Prague 2 e-mail:

More information

Beyond the Combinatorial Limit in Depth Minimization for LUT-Based FPGA Designs

Beyond the Combinatorial Limit in Depth Minimization for LUT-Based FPGA Designs Beyond the Combinatorial Limit in Depth Minimization for LUT-Based FPGA Designs Jason Cong and Yuzheng Ding Department of Computer Science University of California, Los Angeles, CA 90024 Abstract In this

More information

An Architecture for IPv6 Lookup Using Parallel Index Generation Units

An Architecture for IPv6 Lookup Using Parallel Index Generation Units An Architecture for IPv6 Lookup Using Parallel Index Generation Units Hiroki Nakahara, Tsutomu Sasao, and Munehiro Matsuura Kagoshima University, Japan Kyushu Institute of Technology, Japan Abstract. This

More information

Application of LUT Cascades to Numerical Function Generators

Application of LUT Cascades to Numerical Function Generators Application of LUT Cascades to Numerical Function Generators T. Sasao J. T. Butler M. D. Riedel Department of Computer Science Department of Electrical Department of Electrical and Electronics and Computer

More information

Chapter 2 Part 5 Combinational Logic Circuits

Chapter 2 Part 5 Combinational Logic Circuits Universit of Wisconsin - Madison ECE/Comp Sci 352 Digital Sstems Fundamentals Kewal K. Saluja and Yu Hen Hu Spring 2002 Chapter 2 Part 5 Combinational Logic Circuits Originals b: Charles R. Kime and Tom

More information

Model Checking I Binary Decision Diagrams

Model Checking I Binary Decision Diagrams /42 Model Checking I Binary Decision Diagrams Edmund M. Clarke, Jr. School of Computer Science Carnegie Mellon University Pittsburgh, PA 523 2/42 Binary Decision Diagrams Ordered binary decision diagrams

More information

Fast Functional Simulation Using Branching Programs

Fast Functional Simulation Using Branching Programs Fast Functional Simulation Using Branching Programs Pranav Ashar CCRL, NEC USA Princeton, NJ 854 Sharad Malik Princeton University Princeton, NJ 8544 Abstract This paper addresses the problem of speeding

More information

Piecewise Arithmetic Expressions of Numeric Functions and Their Application to Design of Numeric Function Generators

Piecewise Arithmetic Expressions of Numeric Functions and Their Application to Design of Numeric Function Generators J. of Mult.-Valued Logic & Soft Computing, Vol. 0, pp. 2 203 Old City Publishing, Inc. Reprints available directly from the publisher Published by license under the OCP Science imprint, Photocopying permitted

More information

Controller Synthesis for Hardware Accelerator Design

Controller Synthesis for Hardware Accelerator Design ler Synthesis for Hardware Accelerator Design Jiang, Hongtu; Öwall, Viktor 2002 Link to publication Citation for published version (APA): Jiang, H., & Öwall, V. (2002). ler Synthesis for Hardware Accelerator

More information

Implementing Logic in FPGA Memory Arrays: Heterogeneous Memory Architectures

Implementing Logic in FPGA Memory Arrays: Heterogeneous Memory Architectures Implementing Logic in FPGA Memory Arrays: Heterogeneous Memory Architectures Steven J.E. Wilton Department of Electrical and Computer Engineering University of British Columbia Vancouver, BC, Canada, V6T

More information

Breakup Algorithm for Switching Circuit Simplifications

Breakup Algorithm for Switching Circuit Simplifications , No.1, PP. 1-11, 2016 Received on: 22.10.2016 Revised on: 27.11.2016 Breakup Algorithm for Switching Circuit Simplifications Sahadev Roy Dept. of ECE, NIT Arunachal Pradesh, Yupia, 791112, India e-mail:sdr.ece@nitap.in

More information

University of Toronto Faculty of Applied Science and Engineering Edward S. Rogers Sr. Department of Electrical and Computer Engineering

University of Toronto Faculty of Applied Science and Engineering Edward S. Rogers Sr. Department of Electrical and Computer Engineering University of Toronto Faculty of Applied Science and Engineering Edward S. Rogers Sr. Department of Electrical and Computer Engineering Final Eamination ECE 4F - Digital Systems Eaminers: S. Brown, J.

More information

Design of Framework for Logic Synthesis Engine

Design of Framework for Logic Synthesis Engine Design of Framework for Logic Synthesis Engine Tribikram Pradhan 1, Pramod Kumar 2, Anil N S 3, Amit Bakshi 4 1 School of Information technology and Engineering, VIT University, Vellore 632014, Tamilnadu,

More information

A NEW GRAPH BASED PRIME COMPUTATION TECHNIQUE

A NEW GRAPH BASED PRIME COMPUTATION TECHNIQUE 1 A NEW GRAPH BASED PRIME COMPUTATION TECHNIQUE ABSTRACT O. Coudert J.C. Madre BULL Corporate Research Center, Rue Jean Jaurès 78340 Les Clayes-sous-bois FRANCE Computing prime and essential primes of

More information

Lazy Group Sifting for Efficient Symbolic State Traversal of FSMs

Lazy Group Sifting for Efficient Symbolic State Traversal of FSMs Lazy Group Sifting for Efficient Symbolic State Traversal of FSMs Hiroyuki Higuchi Fabio Somenzi Fujitsu Laboratories Ltd. University of Colorado Kawasaki, Japan Boulder, CO Abstract This paper proposes

More information

Flexible Two-Level Boolean Minimizer BOOM-II and Its Applications

Flexible Two-Level Boolean Minimizer BOOM-II and Its Applications Flexible Two-Level Boolean Minimizer BOOM-II and Its Applications Petr Fišer, Hana Kubátová Czech Technical University Dept. of Computer Science and Engineering, Karlovo nám. 13, 121 35, Prague 2 e-mail:

More information

FPGA PLB Architecture Evaluation and Area Optimization Techniques using Boolean Satisfiability

FPGA PLB Architecture Evaluation and Area Optimization Techniques using Boolean Satisfiability IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. X, NO. XX, APRIL 2005 1 FPGA PLB Architecture Evaluation and Area Optimization Techniques using Boolean Satisfiability

More information

Efficient Computation of Canonical Form for Boolean Matching in Large Libraries

Efficient Computation of Canonical Form for Boolean Matching in Large Libraries Efficient Computation of Canonical Form for Boolean Matching in Large Libraries Debatosh Debnath Dept. of Computer Science & Engineering Oakland University, Rochester Michigan 48309, U.S.A. debnath@oakland.edu

More information

ECL: A SPECIFICATION ENVIRONMENT FOR SYSTEM-LEVEL DESIGN

ECL: A SPECIFICATION ENVIRONMENT FOR SYSTEM-LEVEL DESIGN / ECL: A SPECIFICATION ENVIRONMENT FOR SYSTEM-LEVEL DESIGN Gerard Berry Ed Harcourt Luciano Lavagno Ellen Sentovich Abstract We propose a new specification environment for system-level design called ECL.

More information

On the Relation between SAT and BDDs for Equivalence Checking

On the Relation between SAT and BDDs for Equivalence Checking On the Relation between SAT and BDDs for Equivalence Checking Sherief Reda 1 Rolf Drechsler 2 Alex Orailoglu 1 1 Computer Science & Engineering Department University of California, San Diego La Jolla,

More information

11. BACKGROUND AND NOTATION

11. BACKGROUND AND NOTATION PRIME AND NON-PRIME IMPLICANTS IN THE MINIMIZATION OF MULTIPLE-VALUED LOGIC FUNCTIONS Parthasarathy P. Tirumalai Building 52L, Mailstop 57 Hewlett-Packard Company 5301 Stevens Creek Blvd. Santa Clara,

More information

DISCRETE FUNCTION REPRESENTATIONS UTILIZING DECISION DIAGRAMS AND SPECTRAL TECHNIQUES

DISCRETE FUNCTION REPRESENTATIONS UTILIZING DECISION DIAGRAMS AND SPECTRAL TECHNIQUES DISCRETE FUNCTION REPRESENTATIONS UTILIZING DECISION DIAGRAMS AND SPECTRAL TECHNIQUES By Whitney Jeanne Townsend A Thesis Submitted to the Faculty of Mississippi State University in Partial Fulfillment

More information

Australian Journal of Basic and Applied Sciences. Timing Analysis on Min-term Based Tabular Method for BDD Manipulations

Australian Journal of Basic and Applied Sciences. Timing Analysis on Min-term Based Tabular Method for BDD Manipulations AENSI Journals Australian Journal of Basic and Applied Sciences Journal home page: www.ajbasweb.com Timing Analysis on Min-term Based Tabular Method for BDD Manipulations 1 S. Deivanai, 2 Dr. K. Thanushkodi,

More information

Report Documentation Page

Report Documentation Page On Bi-Decompositions of Logic Functions Tsutomu Sasao Department of Computer Science and Electronics Kyushu Institute of Technology Iizuka 820, Japan Jon T. Butler Department of Electrical and Computer

More information

Boolean Function Simplification

Boolean Function Simplification Universit of Wisconsin - Madison ECE/Comp Sci 352 Digital Sstems Fundamentals Charles R. Kime Section Fall 200 Chapter 2 Combinational Logic Circuits Part 5 Charles Kime & Thomas Kaminski Boolean Function

More information

Data Structures for Symbolic Multi-Valued Model-Checking

Data Structures for Symbolic Multi-Valued Model-Checking Data Structures for Symbolic Multi-Valued Model-Checking Marsha Chechik, Arie Gurfinkel, Benet Devereux, Albert Lai and Steve Easterbrook Department of Computer Science, University of oronto, oronto, ON

More information

AN IMPROVED METHODOLOGY FOR SYSTEM THREAT ANALYSIS USING MULTIPLE-VALUED LOGIC AND CONDITIONAL PROBABILITIES

AN IMPROVED METHODOLOGY FOR SYSTEM THREAT ANALYSIS USING MULTIPLE-VALUED LOGIC AND CONDITIONAL PROBABILITIES AN IMPROVED METHODOLOGY FOR SYSTEM THREAT ANALYSIS USING MULTIPLE-VALUED LOGIC AND CONDITIONAL PROBABILITIES Theodore W. Manikas, Mitchell A. Thornton Darwin Deason Institute for Cyber Security, Dept.

More information

Placement Algorithm for FPGA Circuits

Placement Algorithm for FPGA Circuits Placement Algorithm for FPGA Circuits ZOLTAN BARUCH, OCTAVIAN CREŢ, KALMAN PUSZTAI Computer Science Department, Technical University of Cluj-Napoca, 26, Bariţiu St., 3400 Cluj-Napoca, Romania {Zoltan.Baruch,

More information

Non-Heuristic Optimization and Synthesis of Parallel-Prefix Adders

Non-Heuristic Optimization and Synthesis of Parallel-Prefix Adders International Workshop on Logic and Architecture Synthesis (IWLAS, Grenoble, ecember Non-Heuristic Optimization and Synthesis of Parallel-Prefix Adders Reto Zimmermann Integrated Systems Laboratory Swiss

More information

How Much Logic Should Go in an FPGA Logic Block?

How Much Logic Should Go in an FPGA Logic Block? How Much Logic Should Go in an FPGA Logic Block? Vaughn Betz and Jonathan Rose Department of Electrical and Computer Engineering, University of Toronto Toronto, Ontario, Canada M5S 3G4 {vaughn, jayar}@eecgutorontoca

More information

SEPP: a New Compact Three-Level Logic Form

SEPP: a New Compact Three-Level Logic Form SEPP: a New Compact Three-Level Logic Form Valentina Ciriani Department of Information Technologies Università degli Studi di Milano, Italy valentina.ciriani@unimi.it Anna Bernasconi Department of Computer

More information

An Implication-based Method to Detect Multi-Cycle Paths in Large Sequential Circuits

An Implication-based Method to Detect Multi-Cycle Paths in Large Sequential Circuits An Implication-based Method to etect Multi-Cycle Paths in Large Sequential Circuits Hiroyuki Higuchi Fujitsu Laboratories Ltd. 4--, Kamikodanaka, Nakahara-Ku, Kawasaki 2-8588, Japan higuchi@flab.fujitsu.co.jp

More information

Effective Memory Access Optimization by Memory Delay Modeling, Memory Allocation, and Slack Time Management

Effective Memory Access Optimization by Memory Delay Modeling, Memory Allocation, and Slack Time Management International Journal of Computer Theory and Engineering, Vol., No., December 01 Effective Memory Optimization by Memory Delay Modeling, Memory Allocation, and Slack Time Management Sultan Daud Khan, Member,

More information

ISSN (Online), Volume 1, Special Issue 2(ICITET 15), March 2015 International Journal of Innovative Trends and Emerging Technologies

ISSN (Online), Volume 1, Special Issue 2(ICITET 15), March 2015 International Journal of Innovative Trends and Emerging Technologies VLSI IMPLEMENTATION OF HIGH PERFORMANCE DISTRIBUTED ARITHMETIC (DA) BASED ADAPTIVE FILTER WITH FAST CONVERGENCE FACTOR G. PARTHIBAN 1, P.SATHIYA 2 PG Student, VLSI Design, Department of ECE, Surya Group

More information

Optimum Alphabetic Binary Trees T. C. Hu and J. D. Morgenthaler Department of Computer Science and Engineering, School of Engineering, University of C

Optimum Alphabetic Binary Trees T. C. Hu and J. D. Morgenthaler Department of Computer Science and Engineering, School of Engineering, University of C Optimum Alphabetic Binary Trees T. C. Hu and J. D. Morgenthaler Department of Computer Science and Engineering, School of Engineering, University of California, San Diego CA 92093{0114, USA Abstract. We

More information

Optimization Method for Broadband Modem FIR Filter Design using Common Subexpression Elimination

Optimization Method for Broadband Modem FIR Filter Design using Common Subexpression Elimination Optimization Method for Broadband Modem FIR Filter Design using Common Subepression Elimination Robert Pasko 1, Patrick Schaumont 2, Veerle Derudder 2, Daniela Durackova 1 1 Faculty of Electrical Engineering

More information

Range Mode and Range Median Queries on Lists and Trees

Range Mode and Range Median Queries on Lists and Trees Range Mode and Range Median Queries on Lists and Trees Danny Krizanc 1, Pat Morin 2, and Michiel Smid 2 1 Department of Mathematics and Computer Science, Wesleyan University, Middletown, CT 06459 USA dkrizanc@wesleyan.edu

More information

Cofactoring-Based Upper Bound Computation for Covering Problems

Cofactoring-Based Upper Bound Computation for Covering Problems TR-CSE-98-06, UNIVERSITY OF MASSACHUSETTS AMHERST Cofactoring-Based Upper Bound Computation for Covering Problems Congguang Yang Maciej Ciesielski May 998 TR-CSE-98-06 Department of Electrical and Computer

More information

THE technology mapping and synthesis problem for field

THE technology mapping and synthesis problem for field 738 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 17, NO. 9, SEPTEMBER 1998 An Efficient Algorithm for Performance-Optimal FPGA Technology Mapping with Retiming Jason

More information

Application of Binary Decision Diagram in digital circuit analysis.

Application of Binary Decision Diagram in digital circuit analysis. Application of Binary Decision Diagram in digital circuit analysis. Jyoti Kukreja University of Southern California For Dr. James Ellison Abstract: Binary Decision Diagrams (BDDs) are one of the biggest

More information

The problem: given N, find all solutions of queen sets and return either the number of solutions and/or the patterned boards.

The problem: given N, find all solutions of queen sets and return either the number of solutions and/or the patterned boards. N-ueens Background Problem surfaced in 1848 by chess player Ma Bezzel as 8 queens (regulation board size) Premise is to place N queens on N N board so that they are non-attacking A queen is one of si different

More information

Exploiting On-Chip Data Transfers for Improving Performance of Chip-Scale Multiprocessors

Exploiting On-Chip Data Transfers for Improving Performance of Chip-Scale Multiprocessors Exploiting On-Chip Data Transfers for Improving Performance of Chip-Scale Multiprocessors G. Chen 1, M. Kandemir 1, I. Kolcu 2, and A. Choudhary 3 1 Pennsylvania State University, PA 16802, USA 2 UMIST,

More information

Delay and Power Optimization of Sequential Circuits through DJP Algorithm

Delay and Power Optimization of Sequential Circuits through DJP Algorithm Delay and Power Optimization of Sequential Circuits through DJP Algorithm S. Nireekshan Kumar*, J. Grace Jency Gnannamal** Abstract Delay Minimization and Power Minimization are two important objectives

More information

Optimization Method for Broadband Modem FIR Filter Design using Common Subexpression Elimination

Optimization Method for Broadband Modem FIR Filter Design using Common Subexpression Elimination Optimization Method for Broadband Modem FIR Filter Design using Common Subepression Elimination Robert Pasko *, Patrick Schaumont **, Veerle Derudder **, Daniela Durackova * * Faculty of Electrical Engineering

More information

ISSN Vol.03,Issue.29 October-2014, Pages:

ISSN Vol.03,Issue.29 October-2014, Pages: ISSN 2319-8885 Vol.03,Issue.29 October-2014, Pages:5826-5832 www.ijsetr.com Design and Implementation of 180 nm Based Cyclic Combinational Circuits in SOC Technology G.SRUJANA 1, K. SATISH BABU 2 1 PG

More information

Using Synthesis Techniques in SAT Solvers

Using Synthesis Techniques in SAT Solvers 1. Introduction Using Synthesis Techniques in SAT Solvers Rolf Drechsler Institute of Computer Science University of Bremen 28359 Bremen, Germany drechsle@informatik.uni-bremen.de Abstract In many application

More information

Int. J. Advanced Networking and Applications 1430 Volume:03 Issue:06 Pages: (2012) ISSN :

Int. J. Advanced Networking and Applications 1430 Volume:03 Issue:06 Pages: (2012) ISSN : 1430 Binary Decision Diagrams and Its Variable Ordering for Disjoint Network Manoj Singhal Associate professor, Department of Information Technology, Accurate Institute of Management & Technology, Greater

More information

Enhancing the Performance of Multi-Cycle Path Analysis in an Industrial Setting

Enhancing the Performance of Multi-Cycle Path Analysis in an Industrial Setting Enhancing the Performance of Multi-Cycle Path Analysis in an Industrial Setting Hiroyuki Higuchi Fujitsu Laboratories Ltd. / Kyushu University e-mail: higuchi@labs.fujitsu.com Yusuke Matsunaga Kyushu University

More information

MODELING OF LARGE-SCALE DISASTER-TOLERANT SYSTEMS

MODELING OF LARGE-SCALE DISASTER-TOLERANT SYSTEMS SDPS-00 Printed in the United States of America, June, 00 00 Society for Design and Process Science MODELING OF LARGE-SCALE DISASTER-TOLERANT SYSTEMS Theodore W. Manikas Department of Computer Science

More information

Efficient Static Timing Analysis Using a Unified Framework for False Paths and Multi-Cycle Paths

Efficient Static Timing Analysis Using a Unified Framework for False Paths and Multi-Cycle Paths Efficient Static Timing Analysis Using a Unified Framework for False Paths and Multi-Cycle Paths Shuo Zhou, Bo Yao, Hongyu Chen, Yi Zhu and Chung-Kuan Cheng University of California at San Diego La Jolla,

More information

A Comparison of Parallel Approaches for Algebraic Factorization in Logic Synthesis

A Comparison of Parallel Approaches for Algebraic Factorization in Logic Synthesis A Comparison of Parallel Approaches for Algebraic Factorization in Logic Synthesis Sumit Roy Coordinated Science Laboratory University of Illinois 1308 W. Main St., Urbana, IL 61801, USA sroy@crhc.uiuc.edu

More information

Binary Decision Diagrams and Beyond: Enabling Technologies for Formal Verification

Binary Decision Diagrams and Beyond: Enabling Technologies for Formal Verification Binary Decision Diagrams and Beyond: Enabling Technologies for Formal Verification Randal E. Bryant Carnegie Mellon University Pittsburgh, PA 15213 Randy.Bryant@cs.cmu.edu http://www.cs.cmu/~bryant Abstract

More information

Functional Test Generation for Delay Faults in Combinational Circuits

Functional Test Generation for Delay Faults in Combinational Circuits Functional Test Generation for Delay Faults in Combinational Circuits Irith Pomeranz and Sudhakar M. Reddy + Electrical and Computer Engineering Department University of Iowa Iowa City, IA 52242 Abstract

More information

Software Optimization Using Hardware Synthesis Techniques Bret Victor,

Software Optimization Using Hardware Synthesis Techniques Bret Victor, EE 219B LOGIC SYNTHESIS, MAY 2000 Software Optimization Using Hardware Synthesis Techniques Bret Victor, bret@eecs.berkeley.edu Abstract Although a myriad of techniques exist in the hardware design domain

More information

Simultaneous Depth and Area Minimization in LUT-based FPGA Mapping

Simultaneous Depth and Area Minimization in LUT-based FPGA Mapping Simultaneous Depth and Area Minimization in LUT-based FPGA Mapping Jason Cong and Yean-Yow Hwang Department of Computer Science University of California, Los Angeles, CA 90024 Abstract In this paper, we

More information

Design of a Totally Self Checking Signature Analysis Checker for Finite State Machines

Design of a Totally Self Checking Signature Analysis Checker for Finite State Machines Design of a Totally Self Checking Signature Analysis Checker for Finite State Machines M. Ottavi, G. C. Cardarilli, D. Cellitti, S. Pontarelli, M. Re, A. Salsano Department of Electronic Engineering University

More information

Software Implementation of Break-Up Algorithm for Logic Minimization

Software Implementation of Break-Up Algorithm for Logic Minimization vol. 2, no. 6. 2, pp. 141-145, 2017 DOI: https://doi.org/10.24999/ijoaem/02060034 Software Implementation of Break-Up Algorithm for Logic Minimization Koustuvmoni Bharadwaj and Sahadev Roy Abstract In

More information

Overview. Overview. Example: Full Adder Diagnosis. Example: Full Adder Diagnosis. Valued CSP. Diagnosis using Bounded Search and Symbolic Inference

Overview. Overview. Example: Full Adder Diagnosis. Example: Full Adder Diagnosis. Valued CSP. Diagnosis using Bounded Search and Symbolic Inference Overview Diagnosis using Bounded Search and Smbolic Inference Martin Sachenbacher and Brian C. Williams MIT CSAIL Soft Constraints Framework Characteriing Structure in Soft Constraints Eploiting Structure

More information

Driving Toward Higher I DDQ Test Quality for Sequential Circuits: A Generalized Fault Model and Its ATPG

Driving Toward Higher I DDQ Test Quality for Sequential Circuits: A Generalized Fault Model and Its ATPG Driving Toward Higher I DDQ Test Quality for Sequential Circuits: A Generalized Fault Model and Its ATPG Hisashi Kondo Kwang-Ting Cheng y Kawasaki Steel Corp., LSI Division Electrical and Computer Engineering

More information

Constraint satisfaction search

Constraint satisfaction search CS 70 Foundations of AI Lecture 6 Constraint satisfaction search Milos Hauskrecht milos@cs.pitt.edu 539 Sennott Square Search problem A search problem: Search space (or state space): a set of objects among

More information

Efficient Implementation of Single Error Correction and Double Error Detection Code with Check Bit Precomputation

Efficient Implementation of Single Error Correction and Double Error Detection Code with Check Bit Precomputation http://dx.doi.org/10.5573/jsts.2012.12.4.418 JOURNAL OF SEMICONDUCTOR TECHNOLOGY AND SCIENCE, VOL.12, NO.4, DECEMBER, 2012 Efficient Implementation of Single Error Correction and Double Error Detection

More information

Fast Generation of Lexicographic Satisfiable Assignments: Enabling Canonicity in SAT-based Applications

Fast Generation of Lexicographic Satisfiable Assignments: Enabling Canonicity in SAT-based Applications Fast Generation of Lexicographic Satisfiable Assignments: Enabling Canonicity in -based Applications Ana Petkovska 1 ana.petkovska@epfl.ch Giovanni De Micheli 1 giovanni.demicheli@epfl.ch Alan Mishchenko

More information

IEEE Transactions on computers

IEEE Transactions on computers 215 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising

More information

Efficiently Utilizing ATE Vector Repeat for Compression by Scan Vector Decomposition

Efficiently Utilizing ATE Vector Repeat for Compression by Scan Vector Decomposition Efficiently Utilizing ATE Vector Repeat for Compression by Scan Vector Decomposition Jinkyu Lee and Nur A. Touba Computer Engineering Research Center University of Teas, Austin, TX 7872 {jlee2, touba}@ece.uteas.edu

More information

A Novel SAT All-Solutions Solver for Efficient Preimage Computation

A Novel SAT All-Solutions Solver for Efficient Preimage Computation A Novel SAT All-Solutions Solver for Efficient Preimage Computation Bin Li Department of ECE Virginia Tech. Blacksburg, VA, 24061 Michael S. Hsiao Department of ECE Virginia Tech. Blacksburg, VA, 24061

More information

OPTIMIZED TASK ALLOCATION IN SENSOR NETWORKS

OPTIMIZED TASK ALLOCATION IN SENSOR NETWORKS OPTIMIZED TASK ALLOCATION IN SENSOR NETWORKS Ali Bagherinia 1 1 Department of Computer Engineering, Islamic Azad University-Dehdasht Branch, Dehdasht, Iran ali.bagherinia@gmail.com ABSTRACT In this paper

More information

Sample Solutions to Homework #2

Sample Solutions to Homework #2 National aiwan University andout #1 epartment of lectrical ngineering November, 01 lgorithms, Fall 01 : Zhi-en in and Yen-hun iu ample olutions to omework # 1. (15) (a) ee Figure 1. 3 1 3 1 3 1 3 1 1 1

More information

Optimized Design and Implementation of a 16-bit Iterative Logarithmic Multiplier

Optimized Design and Implementation of a 16-bit Iterative Logarithmic Multiplier Optimized Design and Implementation a 16-bit Iterative Logarithmic Multiplier Laxmi Kosta 1, Jaspreet Hora 2, Rupa Tomaskar 3 1 Lecturer, Department Electronic & Telecommunication Engineering, RGCER, Nagpur,India,

More information

Encoding. A thesis submitted to the Graduate School of University of Cincinnati in

Encoding. A thesis submitted to the Graduate School of University of Cincinnati in Lossless Data Compression for Security Purposes Using Huffman Encoding A thesis submitted to the Graduate School of University of Cincinnati in a partial fulfillment of requirements for the degree of Master

More information

An Area-Efficient BIRA With 1-D Spare Segments

An Area-Efficient BIRA With 1-D Spare Segments 206 IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, VOL. 26, NO. 1, JANUARY 2018 An Area-Efficient BIRA With 1-D Spare Segments Donghyun Kim, Hayoung Lee, and Sungho Kang Abstract The

More information

Transistors NODES. Time (sec) No. of Nodes/Transistors

Transistors NODES. Time (sec) No. of Nodes/Transistors Binary Tree Structure for Formal Verication of Combinational ICs FATMA A. EL-LICY, and HODA S. ABDEL-ATY-ZOHDY Microelectronics System Design Laboratory Department of Electrical and Systems Engineering

More information

Don t Cares and Multi-Valued Logic Network Minimization

Don t Cares and Multi-Valued Logic Network Minimization Don t Cares and Multi-Valued Logic Network Minimization Yunian Jiang Robert K. Brayton Department of Electrical Engineering and Computer Sciences University of California, Berkeley wiang,brayton @eecs.berkeley.edu

More information

An Algorithm for k-pairwise Cluster-fault-tolerant Disjoint Paths in a Burnt Pancake Graph

An Algorithm for k-pairwise Cluster-fault-tolerant Disjoint Paths in a Burnt Pancake Graph 2015 International Conference on Computational Science and Computational Intelligence An Algorithm for k-pairwise Cluster-fault-tolerant Disjoint Paths in a Burnt Pancake Graph Masato Tokuda, Yuki Hirai,

More information

Generating All Solutions of Minesweeper Problem Using Degree Constrained Subgraph Model

Generating All Solutions of Minesweeper Problem Using Degree Constrained Subgraph Model 356 Int'l Conf. Par. and Dist. Proc. Tech. and Appl. PDPTA'16 Generating All Solutions of Minesweeper Problem Using Degree Constrained Subgraph Model Hirofumi Suzuki, Sun Hao, and Shin-ichi Minato Graduate

More information

EUSIPCO A SPACE-VARIANT CUBIC-SPLINE INTERPOLATION

EUSIPCO A SPACE-VARIANT CUBIC-SPLINE INTERPOLATION EUSIPCO 213 1569744341 A SPACE-VARIAN CUBIC-SPLINE INERPOLAION Jianxing Jiang, Shaohua Hong, Lin Wang Department of Communication Engineering, Xiamen University, Xiamen, Fujian, 3615, P.R. China. ABSRAC

More information