Multiple Constant Multiplication Optimization Using Common Subexpression Elimination and Redundant Numbers

Type of content
Theses / Dissertations
Publisher's DOI/URI
Thesis discipline
Electrical Engineering
Degree name
Doctor of Philosophy
Publisher
University of Canterbury. Electrical and Computer Engineering
Journal Title
Journal ISSN
Volume Title
Language
Date
2014
Authors
Al-Hasani, Firas Ali Jawad
Abstract

The multiple constant multiplication (MCM) operation is a fundamental operation in digital signal processing (DSP) and digital image processing (DIP). Examples of the MCM are in finite impulse response (FIR) and infinite impulse response (IIR) filters, matrix multiplication, and transforms. The aim of this work is minimizing the complexity of the MCM operation using common subexpression elimination (CSE) technique and redundant number representations. The CSE technique searches and eliminates common digit patterns (subexpressions) among MCM coefficients. More common subexpressions can be found by representing the MCM coefficients using redundant number representations.

A CSE algorithm is proposed that works on a type of redundant numbers called the zero-dominant set (ZDS). The ZDS is an extension over the representations of minimum number of non-zero digits called minimum Hamming weight (MHW). Using the ZDS improves CSE algorithms' performance as compared with using the MHW representations. The disadvantage of using the ZDS is it increases the possibility of overlapping patterns (digit collisions). In this case, one or more digits are shared between a number of patterns. Eliminating a pattern results in losing other patterns because of eliminating the common digits. A pattern preservation algorithm (PPA) is developed to resolve the overlapping patterns in the representations.

A tree and graph encoders are proposed to generate a larger space of number representations. The algorithms generate redundant representations of a value for a given digit set, radix, and wordlength. The tree encoder is modified to search for common subexpressions simultaneously with generating of the representation tree. A complexity measure is proposed to compare between the subexpressions at each node. The algorithm terminates generating the rest of the representation tree when it finds subexpressions with maximum sharing. This reduces the search space while minimizes the hardware complexity.

A combinatoric model of the MCM problem is proposed in this work. The model is obtained by enumerating all the possible solutions of the MCM that resemble a graph called the demand graph. Arc routing on this graph gives the solutions of the MCM problem. A similar arc routing is found in the capacitated arc routing such as the winter salting problem. Ant colony optimization (ACO) meta-heuristics is proposed to traverse the demand graph. The ACO is simulated on a PC using Python programming language. This is to verify the model correctness and the work of the ACO. A parallel simulation of the ACO is carried out on a multi-core super computer using C++ boost graph library.

Description
Citation
Keywords
Common subexpression elimination (CSE), multiple constant multiplication (MCM), multiplier block (MB), multiplierless multiple constant multiplication, adder step, logic depth (LD), logic operator (LO), lower bound and optimality, graph dependent method, radix number system, redundant number representations, pattern preservation algorithm (PPA), zero-dominant set (ZDS), polynomial ring, radix polynomials, complete residue system modulo radix, congruent relation, tree encoder, graph encoder, subexpression tree algorithm (STA), A-operation, combinatorial model of multiple constant multiplication, demand graph, dynamic capacitated arc routing problem, metaheuristics, ant colony optimization (ACO), max-min ant system (MMAS), parallel computing, computer cluster.
Ngā upoko tukutuku/Māori subject headings
ANZSRC fields of research
Rights
Copyright Firas Ali Jawad Al-Hasani