Abstract
The ever-increasing requirement for high-performance signal processing blocks in artificial intelligence, IoT, and neural networks has rendered the Logarithmic arithmetic as front runner of advanced processors. As they require complex mathematical operations such as multiplication and division but they can be quickly done in the logarithmic domain as they are reduced to addition and subtraction operations, respectively. The task, though, is to move from binary to logarithmic and vice versa. Several algorithms have been suggested for the logarithmic and antilogarithmic conversion, but there is a compromise between hardware difficulty and accuracy. Within this work, we are introducing the correction circuit for both logarithmic and antilogarithmic conversion that is based on Mitchell’s algorithm. Here the correction terms are generated using a weighted average approach and are stored using 16 X 8 ROM. The terms for correction are selected using the characteristic of the logarithmic value. Then, these converters are used to design a logarithmic multiplier. To further simplify the multiplier, an optimized multiplier is proposed. It involves only the addition of a single term to the result before performing an antilogarithm operation, which also streamlined the application of the multiplier. The proposed multiplier and optimized multiplier involves only a memory unit and an adder apart from Mitchell’s logarithmic multiplier, so the hardware metrics are closely similar to Mitchell’s logarithmic multiplier while having a peak error rate of 9.4 \(\%\) and 7.5 \(\%\) which is 11.1 \(\%\) for Mitchell’s multiplier and has nearly 95\(\%\) of input combinations have less than 5\(\%\) error when multiplication is performed using proposed multipliers.
Similar content being viewed by others
Data Availability Statement
Data sharing not applicable to this article as no datasets were generated or analysed during the current study
References
K.H. Abed, R.E. Siferd, Cmos vlsi implementation of a low-power logarithmic converter. IEEE Trans. Comput. 52(11), 1421–1433 (2003). https://doi.org/10.1109/TC.2003.1244940
K.H. Abed, R.E. Siferd, Vlsi implementation of a low-power antilogarithmic converter. IEEE Trans. Comput. 52(9), 1221–1228 (2003). https://doi.org/10.1109/TC.2003.1228517
M.S. Ansari, B.F. Cockburn, J.A. Han, Hardware-efficient logarithmic multiplier with improved accuracy. In: 2019 Design, Automation Test in Europe Conference Exhibition (DATE), pp. 928–931 (2019). https://doi.org/10.23919/DATE.2019.8714868
M.S. Ansari, B.F. Cockburn, J. Han, An improved logarithmic multiplier for energy-efficient neural computing. IEEE Trans. Comput. 70(4), 614–625 (2021). https://doi.org/10.1109/TC.2020.2992113
M.G. Arnold, C. Walter, Unrestricted faithful rounding is good enough for some lns applications. In: Proceedings 15th IEEE Symposium on Computer Arithmetic. ARITH-15 2001, pp. 237–246 (2001). https://doi.org/10.1109/ARITH.2001.930125
T.A. Brubaker, J.C. Becker, Multiplication using logarithms implemented with read-only memory. IEEE Trans. Comput. C–24(8), 761–765 (1975). https://doi.org/10.1109/T-C.1975.224307
S. Chandra, E.E. Swartzlander, S. Nagle, Sign/logarithm arithmetic for fft implementation. IEEE Trans. Comput. C–32(6), 526–534 (1983). https://doi.org/10.1109/TC.1983.1676274
V.K. Chippa, S.T. Chakradhar, K. Roy, A. Raghunathan, Analysis and characterization of inherent application resilience for approximate computing. In: 2013 50th ACM/EDAC/IEEE Design Automation Conference (DAC), pp. 1–9 (2013). https://doi.org/10.1145/2463209.2488873
M. Combet, H. Van Zonneveld, L. Verbeek, Computation of the base two logarithm of binary numbers. IEEE Trans. Electr. Comput. EC–14(6), 863–867 (1965). https://doi.org/10.1109/PGEC.1965.264080
H. Esmaeilzadeh, A. Sampson, L. Ceze, D. Burger, Architecture support for disciplined approximate programming. In: ASPLOS XVII (2012)
S. Gandhi, M.S. Ansari, B.F. Cockburn, J. Han, Approximate leading one detector design for a hardware-efficient mitchell multiplier, In 2019 IEEE Canadian Conference of Electrical and Computer Engineering (CCECE), pp. 1–4, (2019). https://doi.org/10.1109/CCECE.2019.8861800
E.L. Hall, D.D. Lynch, S.J. Dwyer, Generation of products and quotients using approximate binary logarithms for digital filtering applications. IEEE Trans. Comput. C–19(2), 97–105 (1970). https://doi.org/10.1109/T-C.1970.222874
N.G. Kingsbury, P.J.W. Rayner, Digital filtering using logarithmic arithmetic. Electron. Lett. 7(2), 56–58 (1971). https://doi.org/10.1049/el:19710039
A. Klinefelter, J. Ryan, J. Tschanz, B.H. Calhoun, Error-energy analysis of hardware logarithmic approximation methods for low power applications. In: 2015 IEEE International Symposium on Circuits and Systems (ISCAS), pp. 2361–2364 (2015). https://doi.org/10.1109/ISCAS.2015.7169158
G. Kmetz, Floating point logarithmic conversion system (1986). US Patent 4,583,180
D.K. Kostopoulos, An algorithm for the computation of binary logarithms. IEEE Trans. Comput. 40(11), 1267–1270 (1991). https://doi.org/10.1109/12.102831
I. Kouretas, C. Basetas, V. Paliouras, Low-power logarithmic number system addition/subtraction and their impact on digital filters. IEEE Trans. Comput. 62(11), 2196–2209 (2013). https://doi.org/10.1109/TC.2012.111
F. Lai, C.E. Wu, A hybrid number system processor with geometric and complex arithmetic capabilities. IEEE Trans. Comput. 40(8), 952–962 (1991). https://doi.org/10.1109/12.83639
D.M. Lewis, Interleaved memory function interpolators with application to an accurate lns arithmetic unit. IEEE Trans. Comput. 43(8), 974–982 (1994). https://doi.org/10.1109/12.295859
W. Liu, J. Xu, D. Wang, C. Wang, P. Montuschi, F. Lombardi, Design and evaluation of approximate logarithmic multipliers for low power error-tolerant applications. IEEE Trans. Circuits Syst. I Regul. Pap. 65(9), 2856–2868 (2018). https://doi.org/10.1109/TCSI.2018.2792902
R. Maenner, A fast integer binary logarithm of large arguments. IEEE Micro 7(6), 41–45 (1987). https://doi.org/10.1109/MM.1987.304914
V. Mahalingam, N. Ranganathan, Improving accuracy in mitchell’s logarithmic multiplication using operand decomposition. IEEE Trans. Comput. 55(12), 1523–1535 (2006). https://doi.org/10.1109/TC.2006.198
D.J. Mclaren, Improved mitchell-based logarithmic multiplier for low-power dsp applications. In: IEEE International [Systems-on-Chip] SOC Conference, 2003. Proceedings., pp. 53–56 (2003). https://doi.org/10.1109/SOC.2003.1241461
J.N. Mitchell, Computer multiplication and division using binary logarithms. IRE Trans. Electr. Comput. EC–11(4), 512–517 (1962). https://doi.org/10.1109/TEC.1962.5219391
R. Muscedere, Difficult operations in the multi-dimensional logarithmic number system (2003)
R. Muscedere, V. Dimitrov, G.A. Jullien, W.C. Miller, Efficient techniques for binary-to-multidigit multidimensional logarithmic number system conversion using range-addressable look-up tables. IEEE Trans. Comput. 54(3), 257–271 (2005). https://doi.org/10.1109/TC.2005.48
D. Nandan, J. Kanungo, A. Mahajan, An efficient vlsi architecture design for logarithmic multiplication by using the improved operand decomposition. Integration 58, 134–141 (2017). https://doi.org/10.1016/j.vlsi.2017.02.003
S.Z.M. Naziri, R.C. Ismail, A.Y.M. Shakaff, The design revolution of logarithmic number system architecture. In: 2014 2nd International Conference on Electrical, Electronics and System Engineering (ICEESE), pp. 5–10 (2014). https://doi.org/10.1109/ICEESE.2014.7154603
V. Paliouras, T. Stouraitis, Logarithmic number system for low-power arithmetic, International Workshop on Power and Timing Modeling, Optimization and Simulation (Springer, Berlin, 2000), pp. 285–294
H. Saadat, H. Bokhari, S. Parameswaran, Minimally biased multipliers for approximate integer and floating-point multiplication. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 37(11), 2623–2635 (2018). https://doi.org/10.1109/TCAD.2018.2857262
S.L. SanGregory, C. Brothers, D. Gallagher, R. Siferd, A fast, low-power logarithm approximation with cmos vlsi implementation. In: 42nd Midwest Symposium on Circuits and Systems (Cat. No.99CH36356), vol. 1, pp. 388–391 (1999). https://doi.org/10.1109/MWSCAS.1999.867287
E.E. Swartzlander, A.G. Alexopoulos, The sign/logarithm number system. IEEE Transactions on Computers C–24(12), 1238–1242 (1975). https://doi.org/10.1109/T-C.1975.224172
F.J. Taylor, R. Gill, J. Joseph, J. Radke, A 20 bit logarithmic number system processor. IEEE Trans. Comput. 37(2), 190–200 (1988). https://doi.org/10.1109/12.2148
L.K. Yu, D.M. Lewis, A 30-b integrated logarithmic number system processor. IEEE J. Solid-State Circuits 26(10), 1433–1440 (1991). https://doi.org/10.1109/4.90098
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Harsha, L.G.S.S., Jammu, B.R., Bodasingi, N. et al. A Low Error, Hardware Efficient Logarithmic Multiplier. Circuits Syst Signal Process 41, 485–513 (2022). https://doi.org/10.1007/s00034-021-01793-8
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00034-021-01793-8