Abstract
The binary number representation has dominated digital logic for decades due to its compact storage requirements. An alternative representation is the unary number system: We use N bits, from which the first M are 1 and the rest are 0 to represent the value M/N. One-hot representation is a variation of the unary number system where it has one 1 in the N bits, where the 1’s position represents its value. We present a novel method that first converts binary numbers to unary using thermometer (one-hot) encoders and then uses a “scaling network” followed by voting gates that we call “alternator logic,” followed by a decoder to convert the numbers back to the binary format. For monotonically increasing functions, the scaling network is all we need, which essentially uses only the routing resources and flip-flops on a typical FPGA architecture. Our method is clearly superior to the conventional binary implementation: Our area×delay cost is on average only 0.4%, 4%, and 39% of the binary method for 8-, 10-, and 12-bit resolutions, respectively, in thermometer encoding scheme, and 0.5%, 15%, and 147% in the one-hot encoding scheme. In terms of power efficiency, our one-hot method is between about 69× and 114× better compared to conventional binary.
- Armin Alaghi and John P. Hayes. 2013. Survey of stochastic computing. ACM Trans. Embed. Comput. Syst. 12, 2s, Article 92 (May 2013), 19 pages. DOI:https://doi.org/10.1145/2465787.2465794Google Scholar
Digital Library
- Armin Alaghi, Cheng Li, and John P. Hayes. 2013. Stochastic circuits for real-time image-processing applications. In Proceedings of the 2013 50th ACM/EDAC/IEEE Design Automation Conference (DAC’13). IEEE, 1--6.Google Scholar
- D. Braendler, T. Hendtlass, and P. O’Donoghue. 2002. Deterministic bit-stream digital neurons. IEEE Trans. Neural Netw. 13, 6 (November 2002), 1514--1525. DOI:https://doi.org/10.1109/TNN.2002.804284Google Scholar
Digital Library
- Bradley D. Brown and Howard C. Card. 2001. Stochastic neural computation. I. Computational elements. IEEE Trans. Comput. 50, 9 (2001), 891--905.Google Scholar
Digital Library
- V. Canals, A. Morro, A. Oliver, M. L. Alomar, and J. L. Rosselló. 2016. A new stochastic computing methodology for efficient neural network implementation. IEEE Trans. Neural Netw. Learn. Syst. 27, 3 (March 2016), 551--564. DOI:https://doi.org/10.1109/TNNLS.2015.2413754Google Scholar
Cross Ref
- Brian R. Gaines. 1969. Stochastic computing systems. In Advances in Information Systems Science. Springer, 37--172.Google Scholar
- Devon Jenson and Marc Riedel. 2016. A deterministic approach to stochastic computation. In Proceedings of the 2016 IEEE/ACM International Conference on Computer-Aided Design (ICCAD’16). IEEE, 1--8.Google Scholar
Digital Library
- Soheil Mohajer, Zhiheng Wang, and Kia Bazargan. 2018. Routing magic: Performing computations using routing networks and voting logic on unary encoded data. In Proceedings of the 2018 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA’18). ACM, New York, NY, 77--86. DOI:https://doi.org/10.1145/3174243.3174267Google Scholar
Digital Library
- M. Hassan Najafi, David J. Lilja, and Marc Riedel. 2018. Deterministic methods for stochastic computing using low-discrepancy sequences. In Proceedings of the International Conference on Computer-Aided Design (ICCAD’18). ACM, New York, NY, Article 51, 8 pages. DOI:https://doi.org/10.1145/3240765.3240797Google Scholar
Cross Ref
- Weikang Qian, Xin Li, Marc D. Riedel, Kia Bazargan, and David J. Lilja. 2010. An architecture for fault-tolerant computation with stochastic logic. IEEE Trans. Comput. 60, 1 (2010), 93--105.Google Scholar
Digital Library
- Weikang Qian and Marc D. Riedel. 2008. The synthesis of robust polynomial arithmetic with stochastic logic. In Proceedings of the 45th Annual Design Automation Conference (DAC’08). ACM, New York, NY, 648--653. DOI:https://doi.org/10.1145/1391469.1391636Google Scholar
- Weikang Qian, Marc D. Riedel, and Ivo Rosenberg. 2011. Uniform approximation and Bernstein polynomials with coefficients in the unit interval. Eur. J. Combin. 32, 3 (April 2011), 448--463. DOI:https://doi.org/10.1016/j.ejc.2010.11.004Google Scholar
Digital Library
- Sayed Ahmad Salehi, Yin Liu, Marc D. Riedel, and Keshab K. Parhi. 2017. Computing polynomials with positive coefficients using stochastic logic by double-NAND expansion. In Proceedings of the on Great Lakes Symposium on VLSI 2017 (GLSVLSI’17). ACM, New York, NY, 471--474. DOI:https://doi.org/10.1145/3060403.3060410Google Scholar
- J. von Neumann. 1956. Probabilistic logics and synthesis of reliable organisms from unreliable components. In Automata Studies, C. Shannon and J. McCarthy (Eds.). Princeton University Press, 43--98.Google Scholar
- Z. Wang, S. Mohajer, and K. Bazargan. 2018. Low latency parallel implementation of traditionally-called stochastic circuits using deterministic shuffling networks. In Proceedings of the 2018 23rd Asia and South Pacific Design Automation Conference (ASP-DAC’18). 337--342. DOI:https://doi.org/10.1109/ASPDAC.2018.8297346Google Scholar
- Z. Wang, S. Mohajer, and K. Bazargan. 2018. Low latency parallel implementation of traditionally-called stochastic circuits using deterministic shuffling networks. In Proceedings of the 2018 23rd Asia and South Pacific Design Automation Conference (ASP-DAC’18). 337--342. DOI:https://doi.org/10.1109/ASPDAC.2018.8297346Google Scholar
- Zhiheng Wang, Naman Saraf, Kia Bazargan, and Arnd Scheel. 2015. Randomness meets feedback: Stochastic implementation of logistic map dynamical system. In Proceedings of the 52nd Annual Design Automation Conference (DAC’15). ACM, New York, NY, Article 132, 7 pages. DOI:https://doi.org/10.1145/2744769.2744898Google Scholar
Digital Library
- Yongsang Yoo and Minkyu Song. 2002. Design of a 1.8 V 10bit 300MSPS CMOS digital-to-analog converter with a novel deglitching circuit and inverse thermometer decoder. In Proceedings of the Asia-Pacific Conference on Circuits and Systems, Vol. 2. IEEE, 311--314.Google Scholar
Index Terms
Parallel Unary Computing Based on Function Derivatives
Recommendations
Approximate Constant-Coefficient Multiplication Using Hybrid Binary-Unary Computing for FPGAs
Multipliers are used in virtually all Digital Signal Processing (DSP) applications such as image and video processing. Multiplier efficiency has a direct impact on the overall performance of such applications, especially when real-time processing is ...
Routing Magic: Performing Computations Using Routing Networks and Voting Logic on Unary Encoded Data
FPGA '18: Proceedings of the 2018 ACM/SIGDA International Symposium on Field-Programmable Gate ArraysThe binary number representation has dominated digital logic for decades due to its compact storage requirements. However, since the number system is positional, it needs to "unpack»» bits, perform computations, and repack the bits back to binary (\...
Hybrid binary-unary hardware accelerator
ASPDAC '19: Proceedings of the 24th Asia and South Pacific Design Automation ConferenceStochastic computing has been used in recent years to create designs with significantly smaller area by harnessing unary encoding of data. However, the low area advantage comes at an exponential price in latency, making the area x delay cost ...






Comments