(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023154162
(43)【公開日】2023-10-19
(54)【発明の名称】演算処理装置
(51)【国際特許分類】
G06F 17/10 20060101AFI20231012BHJP
G06F 17/16 20060101ALI20231012BHJP
【FI】
G06F17/10 A
G06F17/16 B
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2022063290
(22)【出願日】2022-04-06
【国等の委託研究の成果に係る記載事項】(出願人による申告)2020年度 、国立研究開発法人新エネルギー・産業技術総合開発機構「高効率・高速処理を可能とするAIチップ・次世代コンピューティングの技術開発/次世代コンピューティング技術の開発/電圧駆動不揮発性メモリを用いた超省電力ブレインモルフィックシステムの研究開発」委託研究開発、産業技術力強化法第17条の適用を受ける特許出願
(71)【出願人】
【識別番号】504174135
【氏名又は名称】国立大学法人九州工業大学
(74)【代理人】
【識別番号】100149711
【弁理士】
【氏名又は名称】服部 耕市
(72)【発明者】
【氏名】川島 一郎
(72)【発明者】
【氏名】田向 権
(72)【発明者】
【氏名】森江 隆
(72)【発明者】
【氏名】立野 勝巳
(72)【発明者】
【氏名】野村 修
【テーマコード(参考)】
5B056
【Fターム(参考)】
5B056AA05
5B056BB26
5B056BB71
5B056DD11
5B056FF05
(57)【要約】 (修正有)
【課題】空間認識や物体認識などの知的処理をハードウェアとして効率的に実装する演算処理装置を提供する。
【解決手段】演算処理装置100は、複数のメモリブロック1から構成され、データの複数の組み合わせに関して、並列に読み出し処理及び書き込み処理を実行可する。メモリ回路2は、空間情報と相関を有する異なる事象又は特徴に関するデータを記憶する。演算回路3は、メモリ回路2に記憶されたデータに関して、並列に読み出したデータの複数の組み合わせに対して所定の演算処理を実行する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
複数のメモリブロックから構成され、それぞれのメモリブロックに独立にアクセスすることにより、データに並列にアクセスすることが可能なメモリ回路と、前記メモリ回路の異なるメモリブロックに保持された複数のデータに関して、並列に読み出しおよび書き込みするための制御回路と、前記並列に読み出したデータに対して所定の演算処理を実行する演算回路とを有する演算処理装置であって、前記制御回路は、前記メモリ回路の異なるメモリブロックに対して、前記所定の演算処理に対応した、データの複数の組み合わせに関して、並列に読み出し処理および書き込み処理を実行可能とすることを特徴とし、また前記メモリ回路は、空間情報と相関を有する異なる事象または特徴に関するデータを記憶し、また前記演算回路は、前記メモリ回路に記憶されたデータに関して、並列に読み出した前記データの複数の組み合わせに対して所定の演算処理を実行することを特徴とする演算処理装置。
【請求項2】
前記所定の演算処理に対応したデータの複数の組み合わせは、一つの事象または特徴に対応付けられた、所定領域に分布するデータの組み合わせと、複数の事象または特徴に対応付けられた同一位置におけるデータの組み合わせを含むことを特徴とする、請求項1に記載の演算処理装置。
【請求項3】
前記演算処理は、所定領域で分布を有する重みデータの加算処理、または加減算処理であることを特徴とする請求項1または2に記載の演算処理装置。
【請求項4】
前記所定領域で分布を有する重みデータは、中心位置から単調に減衰する分布を有することを特徴とする請求項3に記載の演算処理装置。
【請求項5】
前記所定の演算処理は、積和演算処理であることを特徴とする請求項1または2に記載の演算処理装置。
【請求項6】
前記所定の演算処理は、デプスワイズ畳み込み演算処理、およびポイントワイズ畳み込み演算処理であることを特徴とする請求項5に記載の演算処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、所定の演算処理を実行するために好適なメモリ回路および演算回路を有する演算処理装置に関するものである。
【背景技術】
【0002】
生物における知的処理をモデル化し、ロボットなどの制御に応用する研究が盛んに行われている。例えば非特許文献1では、げっ歯類の海馬の記憶機能をモデル化し空間認識システムに応用したRatSLAMアルゴリズムとして、カメラからの視覚情報と自己位置をヘブ則によって学習し、視覚情報と自己位置の相関関係を記憶することで高度な空間認識を可能とすることが報告されている。 また特許文献1では、自己位置推定アルゴリズムの一種であるSLAMの実装方法が開示されている。
【0003】
また画像などから特定のパターンを認識する知的処理アルゴリズムとして、例えば非特許文献2では、デプスワイズ畳み込み演算処理とポイントワイズ畳み込み演算処理を組み合わせた畳み込みニューラルネットワークが提案されている。
【0004】
また非特許文献3では、メモリに対する並列アクセスを可能とする技術として、メモリへの並列アクセスを局所的に可能にする実装方法としてTMEM(transpose-memory)が提案されている。このメモリでは、二次元のデータを格納する際、並列に並べられたRAMに要素をずらしながら格納することでデータの列成分、行成分への並列アクセスを可能にする。
【先行技術文献】
【特許文献】
【0005】
【非特許文献】
【0006】
【非特許文献1】Milford Michael J., et al., “RatSLAM: A hippocampal model for simultaneous localization and mapping,” IEEE International Conference on Robotics and Automation, 2004.
【非特許文献2】Andrew G. Howard, Menglong Zhu, Bo Chen, Dmitry Kalenichenko, Weijun Wang, Tobias Weyand, Marco Andreetto, Hartwig Adam, “MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications.” arXiv:1704.04861, 2017.
【非特許文献3】Li Yu, et al., Journal of Signal Processing Systems, 2008.
【非特許文献4】Joseph Redmon, Ali Farhadi, “YOLOv3: An Incremental Improvement,” arXiv:1804.02767v1, 2018.
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、上記のような視覚情報と自己位置の相関関係を記憶することで高度な空間認識を行うためには、学習に膨大な記憶容量を必要とし、ハードウェア実装を行うことが困難である。すなわち、前記処理をハードウェア実装するためには、空間内に配置されたオブジェクトに関する視覚情報を自己の位置情報と関連付けて記憶するための記憶装置を必要とする。またこの際、空間位置に曖昧性を持たせるために、所定位置を中心として、所定の広がりを有する範囲内に前記空間内に配置されたオブジェクトに関する視覚情報を記憶することが望まれる。
【0008】
この場合、記憶装置に保持された情報へのアクセス単位は、一つの事象に対応付けられた、所定領域に分布するデータの組み合わせと、複数の事象に対応付けられた同一位置におけるデータの組み合わせの、二種類の組み合わせが有り得る。従来の演算装置においては、これらの複数のデータの組み合わせに対して演算処理を実行する際に、少なくとも一方のデータの組み合わせに対しては、並列読み出しが出来なかったため、処理速度の低下を招いていた。
【0009】
またデプスワイズ畳み込み演算処理とポイントワイズ畳み込み演算処理を組み合わせた畳み込みニューラルネットワークの処理を実行する場合の特徴データへのアクセス単位は、一つの特徴に対応付けられた、所定領域に分布するデータの組み合わせと、複数の特徴に対応付けられた同一位置におけるデータの組み合わせの、二種類の組み合わせが有り得る。これらの複数のデータの組み合わせに対して演算処理を実行する際に、少なくとも一方のデータの組み合わせに対しては、記憶装置からの並列読み出しが出来なかったため、処理速度の低下を招いていた。
【0010】
また前述したTMEMは動画圧縮に際してのデータの並べ替えに用いられるものであり、メモリへの並列アクセスを局所的に可能とするものの、特定の事象または特徴に関連した所定位置のデータ全てを並列に読み出すものでは無かった。またさらに、読み出したデータに対して所定の演算処理を実行し、特定の知的処理を実現可能とするものではなかった。
【0011】
本発明は、上記事情に鑑みてなされたものであり、メモリ回路の異なるメモリブロックに対して、所定の演算処理に対応した、データの複数の組み合わせに関して、並列に読み出し処理および書き込み処理を実行し、また演算回路は、前記メモリ回路に記憶されたデータに関して、前記のように並列に読み出されたデータに対して所定の演算処理を実行することを特徴とする演算処理装置を提供することを目的とする。
【課題を解決するための手段】
【0012】
上記目的を達成するために、本発明の演算処理装置は、複数のメモリブロックから構成され、それぞれのメモリブロックに独立にアクセスすることにより、データに並列にアクセスすることが可能なメモリ回路と、前記メモリ回路の異なるメモリブロックに保持された複数のデータに関して、並列に読み出しおよび書き込みするための制御回路と、前記並列に読み出したデータに対して所定の演算処理を実行する演算回路とを有する演算処理装置であって、前記制御回路は、前記メモリ回路の異なるメモリブロックに対して、前記所定の演算処理に対応した、データの複数の組み合わせに関して、並列に読み出し処理および書き込み処理を実行可能とすることを特徴とし、また前記メモリ回路は、空間情報と相関を有する異なる事象または特徴に関するデータを記憶し、また前記演算回路は、前記メモリ回路に記憶されたデータに関して、並列に読み出した前記データの複数の組み合わせに対して所定の演算処理を実行することを特徴とするものである。
【発明の効果】
【0013】
本発明によれば、空間認識や物体認識などの知的処理をハードウェア実装する際に、演算処理において必要となるデータの複数の組み合わせに関して並列に読み出し処理および書き込み処理を実行することができるため、ロボットの制御などに必要な知的処理を高速に実行することが可能となる。
【図面の簡単な説明】
【0014】
【
図1】第1実施形態における演算処理装置のブロック図。
【
図2】第1実施形態における海馬-嗅内皮質モデルの概略図。
【
図3】第1実施形態における事象ごとの重み情報の記憶に関する図。
【
図4】第1実施形態における重み分布の例を示す図。
【
図5】第1実施形態における重み分布の値の例を示す図。
【
図6】第1実施形態における重み情報の加算に関する図。
【
図11】第1実施形態におけるメモリ回路の構成図。
【
図12】第1実施形態における事象種別検出装置および空間位置検出装置の図。
【
図13】第1実施形態における処理のフローチャート。
【
図14】第1実施形態におけるメモリ回路の構成図。
【
図15】第1実施形態におけるメモリ回路の構成図。
【
図16】第1実施形態におけるメモリ回路の構成図。
【
図17】第2実施形態における演算処理装置のブロック図。
【
図19】第3実施形態における演算処理装置のブロック図。
【
図20】第3実施形態における畳み込みニューラルネットワークの構成図。
【
図21】第3実施形態におけるメモリ回路の構成図。
【
図22】第3実施形態における積和演算回路の構成図。
【
図23】第3実施形態におけるメモリ回路の構成図。
【発明を実施するための形態】
【0015】
[第1実施形態]
図1に本実施形態で説明する演算処理装置のブロック図を示す。
図1において、本実施形態における演算処理装置100は、所定の広がりを有する空間内で生じた事象に関するデータを記憶する、複数のメモリブロック1から構成されるメモリ回路2と、さらに前記データに対して所定の演算を実行する演算回路3と、メモリ回路1に保持されたデータの読み出し、および書き込みと、演算回路3における演算処理を制御するための制御回路4を有する。ここで、演算処理装置100は後述する海馬-嗅内皮質モデルに基づいた処理を実行するものである。
【0016】
また
図1には。各メモリブロックを構成するメモリ素子の一部を、(x, y)の形式で表記された、座標に対応するラベルとともに表記している。メモリ素子より構成されるメモリブロックの構成は、
図1の煩雑化を避けるために一部にとどめ、詳細図および詳細な説明に関しては本実施形態において後述する。
【0017】
図2は、本実施形態で説明する演算処理装置100において実現する、空間内で生じた事象の情報と空間情報の相関関係を学習する演算処理モデルの基本概念となる海馬-嗅内皮質モデルの概略図を示している。
【0018】
まず
図2を用いて、本実施形態で実現する処理モデルを説明する。
図2に示すように、本実施形態で演算処理モデルとして用いる海馬-嗅内皮質モデルは、生理学的知見としてラットなどの生物の海馬と嗅内皮質に見られる海馬-嗅内皮質モデルを、ハードウェアとして実装することを目的として簡略化した、場所細胞8、キュー細胞9、および連結細胞10から構成される簡略化した海馬-嗅内皮質モデルである。
【0019】
図2の海馬-嗅内皮質モデルにおいては、速度情報と方向情報によって場所細胞8の内部状態が遷移して自己位置情報を表現する。また、特定の事象に反応するキュー細胞9が、事象の種別に関する情報を表現する。
【0020】
さらに連結細胞10においては、場所細胞8から入力される空間情報と、キュー細胞9から入力される特定の事象に関する非空間情報を組み合わせることにより、空間内で生じた事象の情報と空間情報の相関関係を学習する機能を有する。
【0021】
例えば、空間を移動しつつ事象を検知する主体をエージェントと呼ぶことにする。前述した海馬-嗅内皮質モデルでは、
図3に示すように、エージェント11は空間内の位置12~15を移動しながら事象a, bおよびcを検知し、事象を検知するごとに、その事象を検知した場所に対して、所定の空間的な広がりを有する重み情報を、空間情報と相関を有する当該事象に関する情報として記憶する。
【0022】
すなわち、エージェント11が位置12から位置15に移動する間に事象a, b, cを検知することにより、各事象の重み分布16は、
図3における(A)から(C)のように記憶される。なお
図3において、記憶された重み分布の大きさは、二次元空間に対して垂直方向の大きさで示している。
【0023】
ここで所定の空間的な広がりを有する重み情報は、
図4に示すように中心において最大の値を有し、前記所定の空間的な広がりにおいて、中心から離れるにつれて値が減衰する分布を有する。ここで重み分布は、
図4に示すような2次元ガウンシアン分布であることが多いが、必ずしもこれに限るものでは無く、空間内で生じた事象の情報と空間情報の相関関係を表し、かつ所定の空間的な広がりを有する分布であれば、その他の分布を有する重み情報であっても構わない。
【0024】
また、本実施形態における重み情報の空間的な分布を、前述したように2次元ガウンシアン分布と説明したが、
図3に示したように、エージェントが移動する空間は、本実施形態においては離散的な2次元座標として表現される。例えば、(A)から(C)に示したようにエージェントが移動する空間は、離散的な2次元座標(x, y)として表現される。そのため、重み情報の空間的な分布も離散的な2次元座標に対応して離散的な値を取る。
【0025】
図5に、本実施形態における離散的な2次元座標に対応して離散的な値を有する重み分布を示す。
図5に示すように、本実施形態における重み分布は3x3の離散的な2次元座標で定義される領域において、1, 2, 4の3種類の値を取り得る。
【0026】
なお
図3の(A)に示したように、同一の事象を別の場所において検知した場合は、複数の位置で記憶された所定の空間的な広がりを有する重み情報を、空間情報と相関を有する当該事象の情報として記憶する。この際、現時点で検知した同一の事象の重み情報は、過去の事象に関する重み情報と加算されるため、エージェントが移動するに従って、事象に関する重み情報が
図3(A)のように空間情報と相関を有する情報として記憶される。
【0027】
なお
図3(A)では、異なる位置において検出した同一の事象に関する重み分布に空間的な重なりが無いため、それぞれの重み分布が独立に記憶されているが、両者の分布が位置的に重なりを有する場合は、過去に記憶された重み分布に対して、新たに検出された重み分布の値を加算することにより、当該事象に関する重み情報が
図6(A)のように空間情報と相関を有する情報として記憶される。
【0028】
図6(A)は、2つの重み分布が加算されることにより、2つの重み分布のピークの間にさらにピークが形成された、事象に関する重み情報を示している。また、
図6(B)は、
図6(A)を二次元空間位置に対応した値として示したものである(値が0でない位置の分布のみを示す)。なお、
図6(B)ではx座標およびy座標は省略している。
【0029】
さらに複数の同一の事象が検出された場合も、当該位置における重み分布を前述したように随時加算することにより、当該事象に関する重み情報が上述したように空間情報と相関を有する情報として記憶される。
【0030】
また海馬-嗅内皮質モデルでは、異なる事象を検知した場合は、
図3の(A)から(C)に示すように、重み情報はそれぞれが異なる事象に関する記憶として、空間情報と相関を有する情報として記憶される。すなわち海馬-嗅内皮質モデルでは、事象に関する空間と相関を有する情報は、事象ごとに個別に記憶される。
【0031】
なお、
図6の(A)は、二次元分布を有した重み分布の加算を説明するために、その値を二次元空間に対する高さ方向として図示している。図面上では、重み分布に関する三次元図を二次元紙面上に表現しているため、
図6(B)の実際の重み分布とは、その分布形状が必ずしも一致していない。
【0032】
続いて、前述した海馬-嗅内皮質モデルをハードウェアとして実現する演算処理装置に関して説明する。前述したように、本実施形態における演算処理装置100は、複数のメモリブロック1から構成されるメモリ回路2と、演算回路3と、制御回路4を有する。
【0033】
ここで、前記メモリ回路2の構成例を
図7に示す。
図7に示すように、本実施形態におけるメモリ回路2は、二次元空間座標に対応したメモリブロック1を複数有する構成となっている。またさらに、各メモリブロック1は、値を記憶するメモリ素子から構成される。なお
図7においては、各メモリブロック1がメモリ回路2の各行を構成しており、メモリ回路2は合計で25行のメモリブロック1を有している。
図7において、各メモリブロック1の境界は、実線で示している。
【0034】
また、
図7に示すメモリ回路2においては、実線と破線に囲まれた1つのセルが、所定の座標位置における所定の事象種別に対応した、重み情報の値を加算した結果の値を記憶するメモリ素子に相当する。
【0035】
なお本実施形態において、事象に関する空間と相関を有するデータをメモリ回路2に記憶することは、前述した海馬-嗅内皮質モデルにおいて、空間内で生じた事象の情報と空間情報の相関関係を学習することと等価である。以降の説明においては、用語として“記憶”と“学習”を用いるが、特に断らない限り両者の意味するところは同一である。
【0036】
続いて
図7に示すように、各メモリブロック1は演算回路3との間のデータ入力ポート17と、データ出力ポート18を有している。
【0037】
また各メモリブロック1におけるメモリ素子は、それぞれが二次元空間における位置座標に対応する。
図7では、各メモリ素子のラベルとして、(x, y)の形式で表記された座標を対応させている。本実施形態においては、空間情報として5x5(=25)の位置座標に対応するデータを記憶することを想定しており、前述したエージェントが移動する二次元空間の位置は、5x5の二次元空間座標として検知される。
【0038】
なお
図7に示すように、前述した各メモリ素子が対応する二次元空間における位置座標は、メモリブロックごとに座標位置を一つずつずらしている。
また、
図7においては、初期状態として全てのメモリ素子が、値0を記憶しているものとする。
図7において、保持している値は前述した座標表記の下に数値を記載している。
【0039】
またメモリ回路2の各列は、空間内で検知される事象種別に対応している。
図7では、各列のラベルとして、0-5と表記した各事象種別の6種類のラベルを対応させている。
図7において、各事象種別のラベルの境界は、破線で示している。すなわち本実施形態においては、空間内でエージェントが検知する事象が6種類有るケースを想定している。なお
図7においては、制御回路4からの制御信号の入力ポート、および演算処理装置100の外部にデータを出力する出力ポートの記載を省略している。
【0040】
また
図8には、事象種別(4)に関して、二次元空間座標の(1, 0)、(2, 0)、(3, 0)、(1, 1) 、(2, 1) 、(3, 1)、(1、2)、(2、2)、(3、2)に対応するメモリ素子が、0では無い値を記憶している。この場合は、エージェントが前記座標位置で事象種別(4)に関する記憶を有することを意味する。なお
図8では、0では無い値を記憶しているメモリ素子は、黒色で表示している。また座標および値は白文字で示す。(以降の図でも同様に示す)
【0041】
また事象種別(4)に関して、
図6に示した2つの重み分布が加算された場合に関しては、メモリ回路には
図9に示すように、重み情報が空間情報と相関を有する情報として記憶される。(
図9は、
図8の記憶に対してさらに重み分布が加算された場合を示している。)
【0042】
ここで
図8および
図9において、所定の事象データ(ここでは事象種別(4))に対応する重み分布を加算するために、メモリ回路に既に記憶している、同一の事象データに関する重み分布の加算対象となる領域のデータに対して、アクセスする方法に関して説明する。
本実施形態における各メモリブロック1は、それぞれが独立した入力ポート17および出力ポート18を有しており、後述するように制御回路4からの制御信号に基づいて、指定された事象に関する所定の座標領域のデータを並列に読み出すことが可能である。
【0043】
すなわち
図8および
図9に示すように、重み分布の加算対象となる所定の事象に関するデータは、複数のメモリブロックに分散して保持されているため、前述した入力ポートおよび出力ポートを通じて並列にアクセスすることができる。なお、
図8および
図9において、重み分布を加算する際にデータを入力および出力するための入力ポートおよび出力ポートを黒色で示している。これらの入力ポートおよび出力ポートは、
図8および
図9に示すように各メモリブロックに独立に構成されているため、黒色の入力ポートおよび出力ポートによって、データに並列にアクセスできることが分かる。
【0044】
続いて、前記演算回路3の本実施形態における構成例を
図10を用いて説明する。本実施形態における演算回路3は、入力された複数のデータそれぞれに対して所定の値を加算する機能を有しており、複数の加算器19、入力値を保持するレジスタ20、加算結果を保持するレジスタ21、および被加算値である複数の所定値を保持するレジスタ22より構成される。また、入力値レジスタ20はメモリ回路2から読み出されたデータを入力する入力ポート23を有し、加算結果レジスタ21は加算結果をメモリ回路2に出力する出力ポート24を有する。
【0045】
演算回路3は、前記メモリ回路2から読み出され、入力ポート23から入力された複数の入力値を入力値レジスタ20に保持し、被加算値レジスタ22に保持された複数の所定値を加算した後に加算結果レジスタ21に加算結果を保持し、それを出力ポート24からメモリ回路2に対して出力する。ここで本実施形態においては、加算器19およびレジスタ20、21、22は、重み分布の空間分布に対応する3x3=9個の値に対する演算を並列に実行することが可能な構成を有する。
【0046】
続いて、前記制御回路4の本実施形態における機能を説明する。
図1に示すように本実施形態における制御回路4は、事象種別データの入力端子5と、事象検出位置データの入力端子6を有し、入力された前記データに基づいて、メモリ回路2から対応するデータを読み出して演算回路3に入力する制御を実行するための制御信号を出力する機能を有する。またさらに、演算回路3による演算結果をメモリ回路2の元の位置(読み出した位置)に書き戻す制御を実行するための制御信号を出力する機能を有する。
【0047】
またさらに、制御回路4は、二次元空間内の所定位置における全ての事象に関する記憶データを並列に出力するための制御信号を出力する機能も有している。なお
図1では、前記制御信号を一つの信号線により表記している。また制御回路4は、演算回路3における演算の実行を制御するための制御信号を出力する機能を有している。
【0048】
ここでメモリ回路においては、前述したように各メモリ素子が対応する二次元空間における位置座標は、メモリブロックごとに座標位置を一つずつずらしているため、二次元空間内の一つの所定位置における全ての事象に関する記憶データを並列に出力することが可能である。
図11は、任意の記憶を保持したメモリ回路から、所定位置(2.2)における全ての事象に関する記憶データを並列に出力することができることを示すものである。なお、
図11では所定位置(2,2)における全ての事象に関する記憶データを保持するメモリ素子を、黒色で表示している。また座標および値は白文字で示す。また、所定位置(2.2)における全ての事象に関する記憶データを並列に出力するための出力ポートを黒色で表示している。
【0049】
このように本実施形態におけるメモリ回路においては、前述したように、所定の事象に関する所定の座標領域の複数のデータと、二次元空間内の所定位置における全ての事象に関するデータを並列に読み出すことが可能である。すなわち、データの複数の組み合わせに関して、並列に入力処理および出力処理を実行することができ、それらのデータに対して所定の演算処理を並列に実行することが可能となる。
【0050】
なお、
図2に示した海馬-嗅内皮質モデルにおいて、連結細胞に入力される空間情報に相当する事象検出位置データと、非空間情報に相当する事象種別データは、本演算処理装置100においては、演算処理装置100の外部に構成された装置から入力されるものとする。
すなわち、海馬-嗅内皮質モデルに関して、本実施形態で説明する演算処理装置100が実現する機能は、前述した連結細胞に相当する。本実施形態における演算処理装置100において、海馬-嗅内皮質モデルにおける空間情報、および非空間情報を算出する機能は必須のものでは無いが、演算処理装置がこれらの機能を含むものであっても構わない。これらの機能の実施形態例に関しては、以降で説明する。
【0051】
本実施形態において、事象の種別に関するデータ、および事象を検知した位置に関するデータは、外部から入力されるものとしているが、それぞれのデータの具体例は次のように示される。まず本実施形態における事象の種別に関するデータは、カメラにより取得された画像に対して物体検出処理を実行し、所定の物体種別として認識されたものを事象種別データとする。
【0052】
例えば、非特許文献4の物体検出アルゴリズムを用い、前記画像中に写る物体の種別を判別することができる。
図12における事象種別検出装置25は、プロセッサを有し、ソフトウェアとして前記物体検出アルゴリズムを実装したものを想定している。さらに前記事象種別検出装置25に対して、事前に6種類の物体種別を設定し、該当する物体種別が検出された場合に、前述した物体種別データを演算処理装置100に出力する。
【0053】
続いて、本実施形態における演算処理装置100は、ロボットなどの空間を移動することが可能なエージェントに搭載されることを想定している。ここでエージェントは、事前に設定された空間内において、現在どこに位置するかを検知する
図12に示す空間位置検出装置26を有しているものとする。空間位置検知装置26の実現方法に関しては本発明の主眼とするものでは無く、どのような実現手段を用いても構わないが、本実施形態においては実現が容易な手段として、空間位置検知装置26は、エージェントが最初に出発した地点からの移動距離・方向を常時算出する機能を有し、現時点での空間内における位置(座標)を算出可能なものとする。
【0054】
前述した事象種別検出装置25が物体種別を検出し、物体種別の情報を演算処理装置100に出力するタイミングと同期して、空間位置検出装置26が空間内における位置(座標)を演算処理装置100に出力することにより、演算処理装置100においては、事象種別データと事象検出位置データを空間的に相関を有するデータとして学習することが可能となる。
【0055】
続いて、本実施形態における演算処理装置100の動作に関して、
図1および
図13に示すフローチャートを用いて説明を行う。
【0056】
本実施形態における演算処理装置100においては、空間内で生じた事象の種類に関するデータ(以下、事象種別データ)と、前記事象を検知した時のエージェントの位置に関するデータ(以下、事象検出位置データ)は、演算処理装置100の外部から入力される(
図13フローチャートの処理27)。ここでは、検知された事象種別のラベルを(4)とし、また事象が検出された位置座標を(2, 1)とする。
【0057】
演算処理装置100の内部では、事象種別データおよび事象検出位置データは、前記制御回路4に入力される(
図13フローチャートの処理28)。制御回路4は、前記事象種別データおよび事象検出位置データに基づき、メモリ回路2に対して、適切なデータ群を読み出すための制御信号を出力する。
【0058】
ここで適切なデータ群とは、検出された事象種別に対応した、前述した所定の空間的な広がりを有する重み情報を加算すべき複数のデータを指している。すなわち本実施形態の場合は、所定の空間的な広がりを有する重み情報は
図5に示すような2次元ガウシアン分布に相当する3x3の範囲に分布する値を有しているため、前記メモリ回路2から、事象種別データおよび事象検出位置データの座標に基づいて、前記座標の周囲3x3の領域のデータが読み出される(
図13フローチャートの処理29)。
【0059】
ここで、指定された事象に関する所定の座標領域のデータを並列に読み出すことが可能である。すなわち
図7に示したように、所定の事象に関するデータは、複数のメモリブロックに分散して保持されているため、前述した入力ポートおよび出力ポートを通じて並列にアクセスすることができる。
【0060】
読み出された3x3の領域のデータ(トータル9個のデータ)は、前述した制御回路4からの制御信号に基づいて、続いて演算回路3に入力される(
図13フローチャートの処理30)。
【0061】
なお本実施形態においては、前記演算回路3は加算器19を有し、入力された3x3の領域のデータに対して、3x3の範囲に分布する重みデータを加算する(
図13フローチャートの処理31)。
【0062】
演算回路3において加算処理が完了すると、続いて制御回路4は、加算処理結果を演算回路3から読み出した上でメモリ回路2に書き込むための制御信号を演算回路3およびメモリ回路2に入力する。
【0063】
前記制御信号に基づいて、演算回路3から読み出された演算結果は、メモリ回路2に対して、読み出された時と同じ事象に対応し、かつ同じ座標位置のメモリ素子に書き込まれる。この際、演算結果は、メモリ回路に対して並列に書き込むことが可能である。すなわち
図8に示したように、所定の事象に関するデータは、複数のメモリブロックに分散して保持されているため、前述した入力ポートを通じて並列にアクセスすることができる。
【0064】
これにより、当該事象に関する、空間情報と相関を有するデータの更新が完了する。これは、前述した海馬-嗅内皮質モデルにおける学習処理に対応する(
図13フローチャートの処理32)。結果として、メモリ回路2の値の分布は、前述した例と同様に
図8に示すようになる。
【0065】
さらに、エージェントが移動し、別の場所において同一の事象を認識した場合は、前述したのと同様に、事象種別データと、前記事象を検知した時のエージェントの位置に関するデータが、演算処理装置100に入力される。
【0066】
演算処理装置100の内部では、前述したのと同様に事象種別データおよび事象検出位置データが、前記制御回路4に入力され、制御回路4から前記メモリ回路2に対して、適切なデータ群を読み出すための制御信号が入力される。ここで、事象種別データは前述のものと同一で、一方事象検出位置データは異なる位置座標を示すものとする。ここでは、検知された事象種別のラベルを(4)とし、また事象が検出された位置座標を(2, 3)とする。従ってメモリ回路2からは、事象検出位置データの座標に基づいて、前述した場合とは異なる座標の周囲3x3のデータが並列に読み出される。
【0067】
読み出された3x3の領域のデータ(トータル9個のデータ)は、前述した制御回路からの制御信号に基づいて、続いて演算回路3に入力され、加算器19により、入力された3x3の領域のデータに対して、前述したのと同様に3x3の領域に分布する重みデータを加算する。
【0068】
加算処理が完了すると、前述した処理と同様に、事象種別データおよび事象検出位置データに基づいて、同じ事象に対応し、かつ同じメモリ位置に並列に書き込みが実行される。これにより、当該事象に関する、空間情報と相関を有するデータの更新が完了する。その結果、メモリ回路の値の分布は、前述した例と同様に
図9に示すようになる。
【0069】
またさらに、エージェントが移動し、別の場所において異なる事象(例えば、事象種別(1)とする)を認識した場合は、前述したのと同様に、事象種別データと、前記事象を検知した位置に関するデータが、演算処理装置100に入力される。
【0070】
演算処理装置100の内部では、前述したのと同様に事象種別データおよび事象検出位置データが前記制御回路4に入力され、制御回路4から前記メモリ回路2に対して、適切なデータ群を読み出すための制御信号が入力される。ここでは、検知された事象種別のラベルを(1)とし、また事象が検出された位置座標を(1, 1)とする。従って、メモリ回路2からは、事象検出位置データの座標に基づいて、前述した場合とは異なる事象に関する、事象検出位置の座標の周囲3x3の領域のデータが並列に読み出される。
【0071】
読み出された3x3の領域のデータ(トータル9個のデータ)は、前述した制御回路からの制御信号に基づいて、続いて演算回路3に入力され、加算器19により入力された3x3の領域のデータに対して、3x3の範囲に分布する重みデータを加算する。
【0072】
加算処理が完了すると、前述した処理と同様に、事象種別データおよび事象検出位置データに基づいて、メモリ回路2に演算結果が並列に書き込まれる。これにより、当該事象に関する、空間情報と相関を有するデータの更新が完了する。その結果、メモリ回路の値の分布は、
図14に示すようになる。
【0073】
以上の処理は、所定の終了タイミングまで繰り返され、メモリ回路にはエージェントの移動に伴って検出した事象に関して、空間情報と相関した情報が記憶される(
図13フローチャートの処理33)。なお前記終了タイミングは、本実施形態においては、外部から制御回路4に対して入力される終了信号により決定されるものとする。終了タイミングの決定方法、および入力方法・手段は本発明を限定するものでは無いため、
図1では終了信号の入力ポート等の図示を省略している。
【0074】
また処理が終了した後は、本実施形態においては、前記メモリ回路2に記憶した二次元空間内の所定位置における全ての事象に関する記憶データを並列に出力する。この場合は、制御回路4からメモリ回路2に対して、二次元空間内の所定位置における全ての事象に関する記憶データを並列に出力するための読み出し信号が入力され、出力ポートから当該データが並列に出力される。ここでメモリ回路においては、前述したように各メモリ素子が対応する二次元空間における位置座標は、メモリブロックごとに座標位置を一つずつずらしているため、
図11に示すように。二次元空間内の所定位置における全ての事象に関する記憶データを並列に出力することが可能である。
【0075】
なお本実施形態においては、出力されたデータは演算処理装置100の出力端子7を通して、外部にデータが出力されものとしている(
図13フローチャートの処理34)。本実施形態における出力端子7は、前記出力データを並列に外部に出力するために、トータルで6ポートを有するものとしているが、外部へのデータの出力方法に関しては、前記構成および方法に限定されるものでは無い。
【0076】
前述したように、メモリ回路2に記憶された情報は、エージェントの移動に伴って検出した事象と空間情報の相関を示す情報であるため、例えば特定の事象に関して最大値を記憶する座標を検出することにより、その事象が最も発生し易い空間内の位置座標を得ることが可能となる。なお、メモリ回路2から出力されるデータの応用に関しては、本発明の主眼とするところではないため、これ以上の詳細な説明を割愛する。
【0077】
なお前述したように、第1実施形態における事象の種別に関するデータは、カメラにより取得された画像に対して物体検出処理を実行し、所定の物体種別として認識されたものとしたが、本発明はこれに限るものではない。例えばエージェントに対して使用者から発せられた音声に関して、音声認識により命令種別を認識し、それを事象の種別とするものであっても良い。
【0078】
この場合、物体検出処理を実行する事象種別検出装置と同様に、命令種別を判別し、本実施形態における演算処理装置100に出力することが可能である。また、事象の種別に関するデータは、その他嗅覚情報、または触覚情報などのどのような事象に関するものであっても構わない。
【0079】
以上説明したように、本実施形態における演算処理装置においては、前述したように、所定の事象に関する所定の座標領域の複数のデータの組み合わせと、二次元空間内の所定位置における全ての事象に関するデータの組み合わせのそれぞれを並列に読み出すことが可能である。すなわち、データの複数の組み合わせに関して、並列に入力処理および出力処理を実行することができ、それらのデータに対して所定の演算処理を並列に実行することが可能となる。従って、本実施形態で説明した海馬-嗅内皮質モデルの演算処理を、メモリ回路からのデータ読み出しおよびデータ書き込みに起因する処理速度の低下を招くことなく実現することが可能となる。
【0080】
また以上の説明においては、メモリ回路の各メモリ素子に対応する二次元空間における位置座標は、メモリブロックごとに座標位置を一つずつずらしていたが、座標位置のずらし方はこれに限るものでは無い。例えば、
図16に示すようにメモリブロックごとに座標位置を二つずつずらすことも可能である。すなわち、前述したように、所定の事象に関する所定の座標領域の複数のデータと、二次元空間内の所定位置における全ての事象に関するデータを並列に読み出すことが可能であるデータの保持方法(保持位置の決定方法)であれば、その他の手法であっても構わない。
【0081】
その他の座標位置のずらし方に関しては、以下の式に基づいてデータを適切なメモリ位置に保持することが可能である。例えば、エージェントが移動する空間座標を(m, n)とし、またm, nは次の数式1で定義される範囲の値をとるものとする。
【0082】
【0083】
ここでM, Nは、エージェントが移動する空間の大きさに相当する値を有する(本実施形態では、M=5, N=5)。この時、
図15に示すように空間座標(m, n)および事象ラベル(cとする)を記憶するメモリ位置の行アドレスは、以下の数式2により算出される。
【0084】
【0085】
ここでsは、座標位置をずらす際のずらし幅を表している。すなわち、本実施形態のようにずらし幅を1とする場合はs=1とし、ずらし幅を2とする場合はs=2とする。
図15はs=1として場合のデータ記憶例、
図16はs=2とした場合のデータ記憶例を示す。
【0086】
図16は、s=2とした場合の任意の記憶を保持したメモリ回路から、所定位置(2.2)における全ての事象に関する記憶データを並列に出力することができることを示すものである。
なお、
図15および
図16では所定位置(2,2)における全ての事象に関する記憶データを保持するメモリ素子を、黒色で表示している。また座標および値は白文字で示す。また、所定位置(2.2)における全ての事象に関する記憶データを並列に出力するための出力ポートを黒色で表示している。
【0087】
なお、本実施形態においては、c ≦ M x Nの条件を満たすものとするが、本条件を満たさない場合においては、同一位置における異なる事象に関するデータを複数のメモリブロックに分割して記憶することで、本実施形態と同様の並列読み出しおよび並列書き込みが可能となる。なお、数式2に基づいてデータを保持するメモリ素子のアドレスを決定することは、制御回路に前記数式2を実行する回路を組み込むことで実現される。
【0088】
[第2実施形態]
図17に本実施形態で説明する演算処理装置200のブロック図を示す。
図17において、本実施形態における演算処理装置200は、第1実施形態の演算処理装置100の演算回路3が、加減算を実行する加減算回路を有する演算回路35に変更されたものである。なお本実施形態に関する演算処理装置200は、第1実施形態における演算回路3が、加算処理だけではなく減算処理も実行すること以外は、第1実施形態と同様である。そのため、本実施形態に関しては第1実施形態と異なる点についてのみ説明を行い、その他の点は第1実施形態と同様として説明を省略する。
【0089】
まず、
図18を用いて演算処理装置200における演算回路35の説明を行う。
図18に示す通り、演算処理装置200における演算回路35は加減算器36を有し、加算処理に加えて減算処理を実行可能である。すなわち、例えば海馬-嗅内皮質モデルにおいて、検知した事象に関する空間と相関を有する記憶に関して、時間の経過に従い記憶が減衰する作用を実現する場合、所定の時間経過後にメモリ回路3に保持されたデータから、所定値を減算することで実現が可能となる。また、特定の事象に関して、負の値を有する重み分布を加算することが可能となる。またこれは、所定の事象に関して、特定の条件下においては負の重み分布を設定し、正負両方の重み分布に関する記憶を加算(または減算)することが可能となる。
【0090】
以上説明したように、本実施形態により、第1実施形態と同様に、海馬-嗅内皮質モデルおける、検知した事象に関する空間と相関を有する記憶を保持および更新可能であることに加え、さらに記憶したデータに対する減算処理を実行することが可能となる。これにより、時間の経過に従い記憶が減衰する作用、および負の重み分布を有する記憶に関する処理を実現することが可能となる。
【0091】
[第3実施形態]
図19に本実施形態で説明する演算処理装置のブロック図を示す。
図19において、本実施形態における演算処理装置300は、第1実施形態の演算処理装置の演算回路が、積和演算を実行する積和演算回路37に変更されたものである。また
図19における制御回路39は、第1実施形態における制御回路4とは、一部異なる機能を有する。
【0092】
また本実施形態における演算処理装置300は、非特許文献2に示した畳み込みニューラルネットワークにおける、デプスワイズ畳み込み演算処理とポイントワイズ畳み込み演算処理を実現するものである。
【0093】
さらに、本実施形態における演算処理装置300の外部には、積和演算回路37による演算結果に対して後処理を実行する後処理回路38が構成されている。また、前記後処理回路38による演算結果は、メモリ回路2に入力される。
【0094】
本実施形態に関しては第1実施形態と異なる点についてのみ説明を行い、その他の点は第1実施形態と同様として説明を省略する。
【0095】
まず
図20を用いて、本実施形態で実現する畳み込みニューラルネットワークにおける、デプスワイズ畳み込み演算処理とポイントワイズ畳み込み演算処理に関して説明する。
図20は、前記畳み込みニューラルネットワークにおいて、階層的に繰り返し実行される畳み込み演算処理の一部を抽出して示したものである。
図20に示すように、畳み込みニューラルネットワークでは、デプスワイズ畳み込み演算処理と、ポイントワイズ畳み込み演算処理が交互に繰り返し実行される。
【0096】
図20から分かるように、デプスワイズ畳み込み演算処理は、階層nのニューロンに関する畳み込み演算として、前階層n-1のニューロンの出力値より構成される1つの特徴面の所定の空間領域(受容野:
図20では3x3の領域)に含まれるニューロン出力値と荷重値の積和演算により実現される。
【0097】
また、ポイントワイズ畳み込み演算処理は、階層n+1のニューロンに関する畳み込み演算として、前階層nのニューロンの出力値より構成される全ての特徴面の所定の位置のニューロン出力値と荷重値の積和演算により実現される。以上の畳み込み演算処理に関しては、非特許文献2に詳細な説明が記載されているため、これ以上の説明を省略する。
【0098】
続いて、前述したデプスワイズ畳み込み演算処理とポイントワイズ畳み込み演算処理を
図19の演算処理装置300で実現する場合に関して、実施形態1と対比させながら説明を行う。
【0099】
まず本実施形態における演算処理装置300における畳み込み演算において、前階層のニューロンの出力値は、
図19のメモリ回路2に保持されているものとする。ここで、ニューロン出力値の各特徴面は、実施形態1における事象種別に対応する。また、各特徴面内のニューロン出力値の空間分布は、実施形態1における各事象種別の空間分布に対応する。
【0100】
なお
図19に示したメモリ回路2には、本実施形態において説明対象となる、
図20に示した畳み込みニューラルネットワークの1つの階層に関するデータを保持する部分のみを示したが、実際には演算処理フローに応じて適当な階層分のデータを保持しているものとする。また、各メモリ素子が対応する二次元空間における位置座標は、メモリブロックごとに座標位置を一つずつずらしている。
【0101】
続いて、制御回路39の本実施形態における機能を説明する。本実施形態における制御回路39は、事前に設定された処理フローに基づいて、メモリ回路2および積和演算回路37の制御を実行する機能を有する。制御回路39は、メモリ回路2から所定の特徴面に関する所定領域のデータを並列に読み出して積和演算回路37に入力する制御を実行するための、制御信号を出力する機能を有する。またさらに、制御回路39は、二次元空間内の所定位置における全ての特徴面に関する記憶データを並列に読み出して積和演算回路37に入力する制御を実行するための、制御信号を出力する機能も有している。また制御回路39は、積和演算回路37における演算の実行を制御するための制御信号を出力する機能を有している。またさらに、制御回路39は、後処理回路38における処理の実行を制御する制御信号を出力する機能を有し、さらに後処理回路38による処理結果をメモリ回路2に書き込む処理を実行する制御信号を出力する機能を有する。
【0102】
続いて本実施形態における演算処理装置300による、デプスワイズ畳み込み演算処理の実現方法に関して説明を行う。デプスワイズ畳み込み演算処理は、前述したように前階層のニューロンの出力値より構成される、1つの特徴面の所定の空間領域(受容野)に含まれるニューロン出力値と、荷重値の積和演算により実現される。そこで演算処理装置300においては、メモリ回路2に保持された所定の特徴面に関して、積和演算対象となる二次元空間(受容野)に含まれる前階層のニューロン出力値を読み出す。
【0103】
本実施形態における各メモリブロック1は、
図21に示すように、実施形態1と同様にそれぞれが独立した入力ポート17および出力ポート18を有しており、後述するように制御回路4からの制御信号に基づいて、指定された事象に関する所定の座標領域のデータを並列に読み出すことが可能である。すなわち
図21に示すように、所定の特徴面のデータは、複数のメモリブロックに分散して保持されているため、前述した入力ポートおよび出力ポートを通じて並列にアクセスすることができる。なお、
図21において、荷重値との積和演算するためのデータを出力および入力するための出力ポートおよび入力ポートを黒色で示している。
【0104】
続いて、前記積和演算回路37の本実施形態における構成例を
図22を用いて説明する。本実施形態における積和演算回路37は、入力された複数のデータそれぞれに対して所定の値(荷重値)を乗算し、さらに乗算結果を累算する機能を有しており、複数の乗算器40、入力値を保持するレジスタ41、乗算結果を累算する累算器44、および被乗算値である複数の所定値(荷重値)を保持するレジスタ42より構成される。また、入力値レジスタ41はメモリ回路2から読み出されたデータを入力する入力ポート43を有し、累算器44は累算結果をメモリ回路2に出力する出力ポート45を有する。
【0105】
積和演算回路37は、前記メモリ回路2から読み出され、入力ポート43から入力された複数の入力値を入力値レジスタ41に保持し、荷重値レジスタ42に保持された複数の所定値(荷重値)を乗算した後に乗算結果を累算器44で累算し、それを出力ポート45からメモリ回路2に対して出力する。ここで本実施形態においては、乗算器40およびレジスタ41、42は、荷重分布(受容野)に対応する3x3=9個の値に対する演算を並列に実行することが可能な構成を有する。
【0106】
累算結果は、
図19の後処理回路38において、活性化関数などの所定の後処理を施されたのちにメモリ回路2に入力されるのであるが、後処理に関しては本発明において主眼とするものではないため、詳細な記述および説明は省略する。
【0107】
また、累算結果および累算結果に所定の演算処理を施した演算結果をメモリ回路2に保持する際には、
図19で説明したのと同様に、ニューロン出力値の各特徴面は、実施形態1における事象種別に対応し、また各特徴面内のニューロン出力値の空間分布は、実施形態1における各事象種別の空間分布に対応する。
【0108】
なお、
図21および
図23に示すように、各特徴面はメモリ回路の各列に対応しており、本実施形態の場合は、特徴面ラベル0-5が対応している。また、各メモリ素子が対応する二次元空間における位置座標は、メモリブロックごとに座標位置を一つずつずらしている。
【0109】
続いて本実施形態における演算処理装置による、ポイントワイズ畳み込み演算処理の実現方法に関して説明を行う。ポイントワイズ畳み込み演算処理は、前述したように前階層のニューロンの出力値より構成される全ての特徴面の、所定の位置のニューロン出力値と荷重値の積和演算により実現される。そこで演算処理装置300においては、メモリ回路2に保持された全ての特徴面に関して、積和演算対象となる所定位置の前階層のニューロン出力値を読み出す。
【0110】
ここでメモリ回路2においては、前述したように各メモリ素子が対応する二次元空間における位置座標は、メモリブロックごとに座標位置を一つずつずらしているため、
図23に示すように。所定位置における全ての特徴面に関する記憶データを並列に出力することが可能である。すなわち
図23に示すように、全ての特徴面の同一位置座標のデータは、複数のメモリブロックに分散して保持されているため、前述した出力ポートを通じて並列に出力することができる。
【0111】
積和演算回路37における演算処理は、前述したデプスワイズ畳み込み演算処理と同様である。
【0112】
以上説明したように、本実施形態における演算処理装置においては、前述したように、所定の特徴面に関する所定の座標領域の複数のデータの組み合わせと、二次元空間内の所定位置における全ての特徴面に関するデータの組み合わせのそれぞれを並列に読み出すことが可能である。
【0113】
すなわち、データの複数の組み合わせに関して、並列に入力処理および出力処理を実行することができ、それらのデータに対して所定の演算処理を並列に実行することが可能となる。従って、本実施形態で説明したデプスワイズ畳み込み演算処理およびポイントワイズ畳み込み演算処理の両方の演算処理を、メモリ回路からのデータ読み出しおよびデータ書き込みに起因する処理速度の低下を招くことなく実現することが可能となる。
【0114】
また以上の説明においては、メモリ回路の各メモリ素子に対応する二次元空間における位置座標は、メモリブロックごとに座標位置を一つずつずらしていたが、座標位置のずらし方はこれに限るものでは無いことは、実施形態1と同様である。
【0115】
また本実施形態では、デプスワイズ畳み込み演算処理と、ポイントワイズ畳み込み演算処理が階層的に交互に実行される例を説明したが、ニューラルネットワークの同一階層に対して、デプスワイズ畳み込み演算処理とポイントワイズ畳み込み演算処理の両方を適用することも有り得る。この場合は、メモリ回路に保持した同一階層における特徴面を構成するニューロン出力値に対して、所定の特徴面に関する所定の座標領域の複数のデータの組み合わせと、二次元空間内の所定位置における全ての特徴面に関するデータの組み合わせのそれぞれを並列に読み出すことが可能となる。
【符号の説明】
【0116】
100、200、300 演算処理装置
1 メモリブロック
2 メモリ回路
3、35 演算回路
4、39 制御回路
5、6、17、23、43 入力ポート
7、18、24、45 出力ポート
8 場所細胞
9 キュー細胞
10 連結細胞
11 エージェント
12~15 空間内の位置
16 重み分布
19 加算器
20~22、41、42 レジスタ
25 事象種別検出装置
26 空間位置検出装置
27~34 処理項目
36 加減算器
37 積和演算回路
38 後処理回路
40 乗算器
44 累算器