確率を用いて演算を行う「ストカスティックコンピューティング(SC:Stochastic Computing)」は、耐故障性や小面積・低電力性から現在再注目されており、画像処理や機械学習などでの利用が期待されている。「DAシンポジウム2017 -システムとLSIの設計技術-」(2017年8月30日〜9月1日に石川県加賀市で開催)の招待講演において、市原英行氏(広島市立大学 大学院 情報科学研究科 准教授)がその魅力と研究動向を概説した。

講演する市原英行氏。同氏はSCの研究をリードする研究者の一人である。科学研究費助成事業(独立行政法人日本学術振興会)「ストカスティックロジック回路のテスト手法と信頼度/演算精度設計に関する研究(2013年〜2016年)」「次世代ストカスティックコンピューティング回路のための3つの要素技術とCAD技術(2017年〜2019年)」の支援の下、CAD(Computer-Aided Design)の立場からSCの研究を進めている。DAシンポジウムが撮影。
講演する市原英行氏。同氏はSCの研究をリードする研究者の一人である。科学研究費助成事業(独立行政法人日本学術振興会)「ストカスティックロジック回路のテスト手法と信頼度/演算精度設計に関する研究(2013年〜2016年)」「次世代ストカスティックコンピューティング回路のための3つの要素技術とCAD技術(2017年〜2019年)」の支援の下、CAD(Computer-Aided Design)の立場からSCの研究を進めている。DAシンポジウムが撮影。

ディジタル回路で確率的な計算を実行

 SCは近似計算法(Approximate Computing)の1つであり、ディジタル回路で確率的な計算を行う。具体的には、ビット系列中の1の出現確率で数の大きさを表現(ストカスティック数:SN)し、論理演算によって所望の計算を実行する。例えば、SCにおいて、乗算を行う回路はANDゲート1つで実現できる(図1)。

図1●ストカスティックコンピューティング(SC)の概要。講演者のスライド。
図1●ストカスティックコンピューティング(SC)の概要。講演者のスライド。

 一般的なSC回路は、2進数をストカスティック数に変換する回路(SNG: Stocastic Number Generator)、SC演算を行う回路(SCE: Stochastic Computing Engine)、ストカスティック数を2進数に変換する回路(CNT: Counter)の3つの要素で構成される(図2)。

図2●一般的なSC回路の構成。講演者のスライド。
図2●一般的なSC回路の構成。講演者のスライド。