Content deleted Content added
→Motivation and a simple example: 1 is being used as a symbol here, not describing an amount, so is best not written out. Tags: Mobile edit Mobile app edit Android app edit |
No edit summary |
||
(4 intermediate revisions by 3 users not shown) | |||
Line 1:
{{Short description|Computing using random bit streams}}
'''Stochastic computing''' is a collection of techniques that represent continuous values by streams of random bits. Complex computations can then be computed by simple bit-wise operations on the streams. Stochastic computing is distinct from the study of [[randomized algorithm]]s.
== Motivation and a simple example ==
Line 20:
The operation above converts a fairly complicated computation (multiplication of <math>p</math> and <math>q</math>) into a series of very simple operations (evaluation of <math>a_i \land b_i</math>) on random bits.
To put in another perspective, assuming the truth table of an AND gate. Conventional interpretation is that the output is true if and only if input A and B are true. However, if the table is interpreted vertically, (0011) AND (0101) is (0001), i.e., 1/2 x 1/2 = 1/4, which is exactly an arithmetic multiplication. As the information is presented in
{| class="wikitable"
|+
Line 189:
computer only requires an [[And gate|AND gate]]. Additionally,
a digital multiplier would naively require <math>2n</math> input wires,
whereas a stochastic multiplier would only require
(If the digital multiplier serialized its output, however, it would also
require only
Additionally, stochastic computing is robust against noise; if a few
|