Combinational logic synthesis based on the dual form of Reed-Muller representation.
Abstract
In certain applications, AND/XOR (Reed-Muller), and OR/XNOR (Dual form of Reed-Muller) logic have shown some attractive advantages over the standard Sum of Products (SOP) and Product of Sums (POS). Bidirectional conversion algorithms between SOP and AND/XOR, and also between POS and OR/XNOR based on sparse and partitioning techniques, are presented for multiple-output Boolean functions. The developed programs are tested for some benchmarks with up to 20 inputs and 40 outputs. A new direct method is presented to calculate the coefficients of the Fixed Polarity Dual Reed-Muller (FPDRM) from the truth vector of the POS. Any Boolean function can be expressed by FPDRM forms. There are 2ⁿ polarities for an n-variable function and the number of sum terms depends on these polarities. Finding the best polarity is costly in terms of CPU time, in order to search for the best polarity which will lead to the minimum number of sums for a particular function. Therefore, an algorithm is developed to compute all the coefficients of the Fixed Polarity Dual Reed-Muller (FPDRM) with polarity p from any polarity q. This technique is used to find the best polarity of FPDRM among the 2ⁿ fixed polarities. The algorithm is based on the dual-polarity property and the Gray code strategy. Therefore, there is no need to start from POS form to find FPDRM coefficients for all the polarities. The proposed methods are efficient in terms of memory size and CPU time. A fast algorithm is developed and implemented in C language which can convert between POSs and FPDRMs. The program was tested for up to 23 variables. A modified version of the same program was used to find the best polarity. For up to 13 variables, the CPU time was less than 42 seconds. To search for the optimal polarity for a large number of variables and to reduce the search time of finding the optimal polarity of the function, two new algorithms are developed and presented in this thesis. The first one is used to convert between POS and Positive Polarity Dual Reed-Muller (PPDRM) forms. The second algorithm finds the optimal fixed polarity for the FPDRM among the 2ⁿ different polarities for large n-variable functions. The most popular minimization criterion of the FPDRM form is obtained by the exhaustive search of the entire polarity vector. A non-exhaustive method for FPDRM expansions is presented. The new algorithms are based on separation of the truth vector (T) of POSs around each variable xᵢ into two groups. Instead of generating all of the polarity sets and searching for the best polarity, this algorithm finds the optimal polarity using the separation and sparse techniques, which lead to the optimal polarity. Time efficiency and computing speed are thus achieved in this technique. The algorithms do not require a large amount of memory and do not require a long CPU time. The two algorithms are implemented in C language and tested for some benchmarks. The proposed methods are fast and efficient, as shown in the experimental results, and can be used for a large number of variables.
Fields of Study & Subjects
Embedded Systems Design Techniques
VLSI and Analog Circuit Testing
VLSI and FPGA Design Techniques
Publication details
- Journal / source
- Edinburgh Napier Research Repository (Edinburgh Napier University)
- Publication date
- 30 June 2026
- Language
- EN
- Document type
- Thesis