Stochastic logic allows complex arithmetic to be performed with very simple logic, but it suffers from high latency and poor precision. Furthermore, the results are always somewhat inaccurate due to random fluctuations. The random or pseudorandom sources required to generate the representation are costly, consuming a majority of the circuit area (and diminishing the overall gains in area). This chapter reexamines the foundations of stochastic computing and comes to some surprising conclusions. It demonstrates that one can compute deterministically using the same structures that are used to compute stochastically. In doing so, the latency is reduced by an exponential factor; also, the area is reduced significantly (and this correlates with a reduction in power); and finally, one obtains completely accurate results, with no errors or uncertainty. This chapter also explores an alternate view of this deterministic approach. Instead of viewing signals as digital bit streams, we can view them as periodic signals, with the value encoded as the fraction of the time that the signal is in the high (on) state compared to the low (off) state in each cycle. Thus we have a time-based encoding. All of the constructs developed for stochastic computing can be used to compute on these periodic signals, so the designs are very efficient in terms of area and power. Given how precisely values can be encoded in the time, the method could produce designs that have much lower latency that conventional ones.
|Original language||English (US)|
|Title of host publication||Stochastic Computing|
|Subtitle of host publication||Techniques and Applications|
|Publisher||Springer International Publishing|
|Number of pages||16|
|State||Published - Feb 18 2019|
Bibliographical notePublisher Copyright:
© Springer Nature Switzerland AG 2019. All rights reserved.
Copyright 2020 Elsevier B.V., All rights reserved.
- Deterministic computation
- Pulse-width modulation
- Time-based computing