Home

当サイトではCPUやGPUでは実現できない、超リアルタイムなコンピューティングを研究しております。
そしてそれは決して特殊なデバイスを用いるのではなく、マイコンやCPUやGPUと同じ価格帯で買えてしまうFPGA(Field Programmable Gate Array)という、再構成可能な回路デバイスをプロセッサとしてプログラミングすることで達成されます。
CPU/GPUでは逆立ちしてもできない、面白い計算機とアルゴリズムをお楽しみください。

入力されたとたんに出力が更新される計算機

パソコンなどの現在の計算機は、その構造上メモリ上にあるデータに対してしか計算が行えません。
またCPUと外部装置と同期をとるために必ずバッファメモリを介してタイミング合わせを行うため、大きな遅延が生じます。スマホカメラの向こう側、少し遅れて見えちゃいますよね。
一方でFPGAを用いると、メモリを介さない演算器とデバイスの直結、デバイスタイミングに合わせたバッファレス演算、データのタイミングが保証できているから行える新しいアルゴリズムなどなど、いろんなことが起こります。
下記は、カメラ画像のAI認識に応用した例ですが、入力と同時に演算結果がディスプレイに表示されるので、まるでただのガラスの向こう側が遅れることなく表示されます。
でも、ちゃんと、AI認識して画像加工ができてしまっているのです。

リアルタイムな計算機

人間には大脳があり、難しいことを考えたり判断したりできますよね。
一方で、自転車を運転しながらバランスを取ったり、急に水しぶきが飛んできたときに目をつぶってしまったり、「考える前に対応しちゃう仕組み」も持っていますよね。人間でいうと小脳や反射神経などが担当している分野です。
これを計算機でも実現しようというのが当方の考えるリアルタイムコンピューティングです。

AIやLLMの登場でCPUやGPUで行えることは大幅に人間に近づきました。まさに大脳の機能は計算機によって大幅に代替されるようになってきています。
一方で、先に述べたようにCPUやGPUは今の計算機アーキテクチャでは、応答性を早めたりリアルタイム保証を行うことは困難です。

世の中にはリアルタイム性が重要なものが沢山あります。ぶつかってからブレーキを掛けたのではもう間に合わないのです。
また世の中は案外思っている以上に素早く変化します。スマホで秒60コマもあるはずの動画撮影をして、一時停止すると、動いているものは思った以上にブレて写ってるのがわかるかと思います。
人が歩く程度の速度でも秒速2メートル程度はあり、1コマの16.6ミリ秒の間に 3cm も移動してしまうのです。
これは不規則に動くものがある我々の生活空間にコンピュータを進出させるうえで実は大きな課題です。
しばし人間の方がコンピュータに合わせることで解決を図るため、無人レンジでバーコードを停止した状態でかざす、ラインをいちいち停止させて検査を行う、コンピューター制御の機器と人間とは区画を分けて作業する。大雑把な表示で遅延をごまかす。などといったことは私たちの周りにあふれています。

リアルタイムコンピューティングが目指す姿は

  • 動いているものを動いたまま認識してフィードバックを行う
  • 人が転倒するなど予測不能なことが起こっても咄嗟に対応できる
  • 揺れる環境、急な振動などに対処できる
  • 遅延で人に違和感を感じさせない自然なUI
  • 人の同線の中で共存できるコンピュータ

などといったものを目指しています。

タイトルとURLをコピーしました