the circuit con guration method of 3d fpga-array system ... · pdf filecalise...

6
社団法人 電子情報通信学会 THE INSTITUTE OF ELECTRONICS, INFORMATION AND COMMUNICATION ENGINEERS 信学技報 TECHNICAL REPORT OF IEICE. 3 次元 FPGA アレイ Vocalise の回路構成方法 久保 泰正 祐介 小笠原 関根 優年 東京農工大学 大学院 工学府 184-8588 東京都小金井市中町 2-14-16 E-mail: †{kubo,lijiang,atsumari,ogasawara}@sekne-lab.ei.tuat.ac.jp, ††[email protected] あらまし 制御用と演算用 2 つの FPGA を搭載した FPGA カードを多数組み合わせることで 3 次元 FPGA アレイ HPC システム,Virtual Object by Configurable Array of Little Scalable Engine Vocalise)を構築した.このシス テムは 6 方向に直接接続する I/O を持っているため高速で通信が可能である.本報告ではこの Vocalise での回路書き 込み・通信・制御方法について述べる.更に Vocalise の適応例として画層処理回路などを構成しロボットに搭載する 応用例を示す. キーワード Vocalise3 次元 FPGA アレイ,Reconfigurable HPC The Circuit Configuration method of 3D FPGA-Array System Vocalise Hiromasa KUBO , Jiang LI , Yusuke ATSUMARI , Baku OGASAWARA , and Masatoshi SEKINE The Graduate School of Engineering, Tokyo University of Agriculture and Technology Naka-Chou 2-24-16, Koganei-Shi, Tokyo, 184-8588 Japan E-mail: †{kubo,lijiang,atsumari,ogasawara}@sekne-lab.ei.tuat.ac.jp, ††[email protected] Abstract We have been developing the 3D FPGA-Array HPC system named as Vocalise(Virtual Object by Configurable Array of Little Scalable Engine) that is composed of large numbers of the FPGA card which has controller FPGA and processing FPGA. This system has 6 I/O terminals for connecting each other in 3 dimensional formations. Therefore, this system enables to achieve high speed communication among FPGAs in the FPGA arrays. We present communication and cotrol system. Furthermore, we show how to implement image processing circuit within Vocalise for the robot. Key words Vocalise3D FPGA-ArrayReconfigurable HPC 1. はじめに 現在多方面で利用されている HPCHighPerformanceCon- puting)は汎用プロセッサ(CPU)を複数搭載したノードを並 列に動作させるクラスタ型が主流である.この方式は多用途で ある一方,計算用途によっては演算速度や消費電力の面で非効 率となる.そこで汎用プロセッサに変わり GPGPUGeneral Purpose computing on GPU)や ASIC Application Specific Integrated Circuit),FPGAField Programmable Gate Ar- ray)等を用いた HPC が提案されてきた. 我々の研究室では回路を自由に設計でき,再構成可能な特長 を持つ FPGA を利用した ReconfigurableHPC を構築した [2]このシステムを Vocalise Virtual Object by Configurable Ar- ray of Little Scalable Engine)と呼び,その研究を行なってい る.Vocalise 2 枚の FPGA カードを搭載した hwModuleVS と呼ばれるカードを 3 次元方向に積層することで構成されてい る.計算用途により,積層する hwModuleVS の枚数を変える ことで任意の規模のシステムを構築することができる.最大規 模は 4 × 4 × 8 の計 128 枚となっている. FPGA をシステムとして用いる際,開発時間の長さが欠点と して挙げられる.そこで我々は hw/sw 複合体を提唱した.こ れはハードウェアをソフトウェアのオブジェクトとして捉えて 強調動作させることで双方の利点を活かすシステムである.こ hw/sw 複合体を HPC システムにも用いることで効率よく 開発を進めることが出来る. 本研究では 3 次元 FPGA アレイ HPC システムである Vo- —1—

Upload: hakhue

Post on 22-Mar-2018

227 views

Category:

Documents


7 download

TRANSCRIPT

Page 1: The Circuit Con guration method of 3D FPGA-Array System ... · PDF filecalise システムを構築し,プラットフォームとしての利用を考 えた.また,Vocalise

社団法人 電子情報通信学会

THE INSTITUTE OF ELECTRONICS,INFORMATION AND COMMUNICATION ENGINEERS

信学技報

TECHNICAL REPORT OF IEICE.

3次元FPGAアレイVocaliseの回路構成方法

久保 泰正† 黎 江† 集 祐介† 小笠原 麦† 関根 優年†

† 東京農工大学 大学院 工学府〒 184-8588 東京都小金井市中町 2-14-16

E-mail: †{kubo,lijiang,atsumari,ogasawara}@sekne-lab.ei.tuat.ac.jp, ††[email protected]

あらまし 制御用と演算用 2つの FPGAを搭載した FPGAカードを多数組み合わせることで 3次元 FPGAアレイ

HPCシステム,Virtual Object by Configurable Array of Little Scalable Engine (Vocalise)を構築した.このシス

テムは 6方向に直接接続する I/Oを持っているため高速で通信が可能である.本報告ではこの Vocaliseでの回路書き

込み・通信・制御方法について述べる.更に Vocaliseの適応例として画層処理回路などを構成しロボットに搭載する

応用例を示す.

キーワード Vocalise,3次元 FPGAアレイ,Reconfigurable HPC

The Circuit Configuration method of 3D FPGA-Array System

“ Vocalise”

Hiromasa KUBO†, Jiang LI†, Yusuke ATSUMARI†, Baku OGASAWARA†, and Masatoshi

SEKINE†

† The Graduate School of Engineering, Tokyo University of Agriculture and Technology Naka-Chou 2-24-16,

Koganei-Shi, Tokyo, 184-8588 Japan

E-mail: †{kubo,lijiang,atsumari,ogasawara}@sekne-lab.ei.tuat.ac.jp, ††[email protected]

Abstract We have been developing the 3D FPGA-Array HPC system named as“ Vocalise(Virtual Object by

Configurable Array of Little Scalable Engine)”that is composed of large numbers of the FPGA card which has

controller FPGA and processing FPGA. This system has 6 I/O terminals for connecting each other in 3 dimensional

formations. Therefore, this system enables to achieve high speed communication among FPGAs in the FPGA

arrays. We present communication and cotrol system. Furthermore, we show how to implement image processing

circuit within“ Vocalise”for the robot.

Key words Vocalise,3D FPGA-Array,Reconfigurable HPC

1. は じ め に

現在多方面で利用されている HPC(HighPerformanceCon-

puting)は汎用プロセッサ(CPU)を複数搭載したノードを並

列に動作させるクラスタ型が主流である.この方式は多用途で

ある一方,計算用途によっては演算速度や消費電力の面で非効

率となる.そこで汎用プロセッサに変わり GPGPU(General

Purpose computing on GPU)やASIC(Application Specific

Integrated Circuit),FPGA(Field Programmable Gate Ar-

ray)等を用いた HPCが提案されてきた.

我々の研究室では回路を自由に設計でき,再構成可能な特長

を持つ FPGAを利用した ReconfigurableHPCを構築した [2].

このシステムをVocalise(Virtual Object by Configurable Ar-

ray of Little Scalable Engine)と呼び,その研究を行なってい

る.Vocaliseは 2枚の FPGAカードを搭載した hwModuleVS

と呼ばれるカードを 3次元方向に積層することで構成されてい

る.計算用途により,積層する hwModuleVSの枚数を変える

ことで任意の規模のシステムを構築することができる.最大規

模は 4× 4× 8の計 128枚となっている.

FPGAをシステムとして用いる際,開発時間の長さが欠点と

して挙げられる.そこで我々は hw/sw複合体を提唱した.こ

れはハードウェアをソフトウェアのオブジェクトとして捉えて

強調動作させることで双方の利点を活かすシステムである.こ

の hw/sw 複合体を HPC システムにも用いることで効率よく

開発を進めることが出来る.

本研究では 3 次元 FPGA アレイ HPC システムである Vo-

— 1 —

Page 2: The Circuit Con guration method of 3D FPGA-Array System ... · PDF filecalise システムを構築し,プラットフォームとしての利用を考 えた.また,Vocalise

caliseシステムを構築し,プラットフォームとしての利用を考

えた.また,Vocaliseのスケーラブルな特長を利用したロボッ

トのサブシステムとの連携も行なっている.

2. hw/sw複合体

2. 1 hw/sw複合体の概要

hw/sw複合体とは,HostPCと FPGAや SDRAM,PCIバ

スを搭載した hwModule ボードにより構成されるシステムで

ある [1].FPGAで処理されるオブジェクトを hwObject呼び,

ソフトウェアのオブジェクトの一部として HostPC上で扱うこ

とが出来る.hwObject は hwNet と呼ばれる仮想回路として

FPGA上に実装される.hwModuleボードの SDRAMや PCI

バスの制御を行うための InterFace(I/F)回路と hwNetは分

離されているため(図 1),設計者は hwNetの中身を変更する

だけで任意の回路を実装することが出来る.

また,I/F回路と hwNetは FIB(FPGA Internal Bus)と

呼ばれるバスプロトコルを設けることで,異なる hwModule

ボードを利用する場合でも hwNetと外部との通信は同様なも

のとなるように設計されている.hw/sw複合体では設計コスト

がかかるハードウェア設計を,hwNetの設計に絞ることでコス

トの低減を行なっている.

図 1 hwNet 概要.

2. 2 hwModuleボード

hw/sw複合体のプラットフォームとして hwModuleボード

を開発し利用している.hwModule ボードには hwModuleV2

(図 2)や hwModuleVL,hwModuleVS(図 3)などがある.

hwModuleV2及び hwModuleVLは HostPCと PCIバスを介

して接続できる FPGAボードであり,基板上には FPGA(Xil-

inx XC3S4000),SDRAM(16MB),外部入出力コネクタが搭

載されている.更に,hwModuleVLには USBポートや LAN

ポートが搭載されている.

hwModuleVS は PE ボードと Sub2 ボードという 2 枚の

FPGA ボードにより構成されている.PE ボード状の FPGA

には hwModuleV2と同種の FPGAを搭載しているので,hw-

ModuleV2用に作成した hwNetを hwModuleVSでも利用する

ことが出来る.Sub2ボード上には FPGA(Xilinx XC3S700A)

が搭載されており、PEボードの制御や隣接する hwModuleVS

とのデータ通信を担っている。また,hwModuleVSは 3次元 6

方向の外部接続端子を装備しているため,複数の hwModuleVS

を直接繋ぎ合わせることで 3次元アレイを構成することが出来

る.直接接続することにより外部 I/Oの帯域幅がボトルネック

図 2 hwModuleV2 の外観.

図 3 hwModuleVS の外観.

とならないように設計されている.

Vocaliseの制御は HostPCに搭載した hwModuleV2または

hwModuleVL から行うが,本研究では hwModuleV2 を利用

した.

3. Vocalise

3. 1 Vocaliseの概要

hwModuleVSを 3次元方向に多数接続した Reconfigurable

HPC を Vocalise と呼ぶ.hwModuleVS の枚数は演算規模に

合わせて任意に変更できるスケーラブルな設計となっている.

Vocalise の制御には HostPC に搭載された hwModuleV2 と

hwModuleVS を 4 枚並べた BridgeVS を用いる.HostPC か

ら Vocaliseまでの構成を図 4に示す.

図 4 Vocalise の構成.

Vocaliseは VC bus(Vocalise Communication Bus)と VI

bus(Vocalise Internal Bus)の 2 つのバスを用いて通信を行

— 2 —

Page 3: The Circuit Con guration method of 3D FPGA-Array System ... · PDF filecalise システムを構築し,プラットフォームとしての利用を考 えた.また,Vocalise

う.また,Vocalise内の各 hwModuleVSには【BridgeVS内の

固有 ID(0~3)】-【BridgeVSから見た列数(0~3)】-【各列

内の何番目か(0~7)】という規則で固有のアドレスが割り振

られている.VC bus は hwModuleV2 から BridgeVS を通じ

て各列の hwModuleVS へ接続されている.そのため VC bus

を用いることで Vocalise内のどのボードにも通信をする事がで

きる.VI busは hwModuleVSに搭載された 6方向の外部接続

端子を利用して,隣接する hwModuleVSとの通信を行う.

3. 2 VC bus

3. 2. 1 仕 様

VC bus はアドレス・データ共有線 32 本,制御線 6 本,ク

ロック線 1 本の計 39 本により構成されたバスである [5].VC

busを使用する全ての回路がマスター・スレーブの両機能を持

ち同一バス上のあればどのボード同士でも通信が可能である.

図 6に VC busを用いて READ動作を行った時の波形を示す.

また,以下に VC busの各信号の詳細を示す.

図 5 VC bus の READ 動作時の動作.

CLK クロック線

REQ 送信先までの VC bus仕様権を得る際にマスター側が

アサートする信号

ACK VC bus の使用が可能となると BridegeVS によりア

サートされる信号

SEL VC busの使用権を得ている間にマスター側がアサート

する信号

MRDY データ転送時にマスター側がアサートする信号

SRDY データ転送時にスレーブ側がMRDYを受信したこと

をマスター側に通知する信号

FRAME アドレスデータ線においてアドレスを出力する際

にマスター側がアサートする信号

A/D アドレス・データ共有線

図 6 にWRITE 動作時の VC bus の動作を示し,マスター

側が VC busを利用した場合の動作を説明する.まず他のボー

ドがすでに REQ信号,SEL信号をアサートしていないかの確

認を行う.アサートしていなければ REQ 信号と FRAME 信

号をアサートし A/D線にアドレスを出力する.アドレス先の

VC bus が占有可能であれば BridegeVS より ACK 信号がア

サートされる.これを受けてマスター側は SEL信号をアサー

トする.書き込みデータの設定完了を通知するか読み出しの要

求をMRDYを用いて行う.指定したアドレスが割り振られた

ボードのスレーブ回路が書き込みデータの受信完了又は読み出

しデータの設定完了を SRDYで通知する.

図 6 VC bus のWRITE 時の動作.

3. 2. 2 VC busコマンド機能

VC busを多様なモードで利用するために,A/D線でアドレ

スを送る際,上位ビットを用いてコマンド機能を実装した(図

5・図 6).コマンド機能には,通常転送モード,SDRAM 読

み書きモード,HostPCのソフトウェアから制御を行うための

モードの 3種類がある.

3. 2. 3 バースト転送

今までの VC bus の仕様では MRDY 信号と SRDY 信号は

データ毎に一回ずつアサートとディアサートを繰り返さなけれ

ばならなかった.データを高速で転送するために,MRDY信

号と SRDY 信号をアサートしたままデータを転送するバース

ト転送機能を追加した.

3. 3 VI bus

VI busは hwModuleVSの外部接続端子を利用して隣接ボー

ド間の通信を行うためのバスである.このバスは片方向通信,

半二重通信,全二重通信の 3つの通信モードがある.片方向通

信では動作周波数が 133[MHz]で,通信速度は 4.256[Gbps]に

達することが確認済みである.

3. 4 BridgeVS

HostPCと Vocaliseの仲介と,Vocaliseの制御を行うのが,

BridgeVSである.BridgeVSを構成している hwModuleVSの

内部には Vocalise内のすべての hwModuleVSを制御できるよ

うな Arbiter回路と Selecter回路が搭載されている.また,一

つの hwModuleVSは HostPCからのバス,Vocaliseからの 4

つのバス,隣接ボードからの 2つのバスの計 7つの VC busを

制御している.BridgeVSは同時に複数の VC busをブリッジ

することも可能である.

BridgeVSは各方向から REQ信号が来るとアドレスの確認

を行い,転送先の VC busの状況を確認する.目的の VC bus

が利用可能であれば,ACK信号を返して,マスターとスレー

ブの VC busのブリッジを行う.

3. 5 Vocaliseのコンフィグレーション

3. 5. 1 回路書き込み

第 3. 2 節で示した VC bus は Vocalise 内の FPGA をコン

フィグレーションする際Configuration busとして動作する.コ

ンフィグレーション方式として SelectMAP方式を採用した [3].

FPGAのコンフィグレーションの順番は次のようになる.

— 3 —

Page 4: The Circuit Con guration method of 3D FPGA-Array System ... · PDF filecalise システムを構築し,プラットフォームとしての利用を考 えた.また,Vocalise

( 1) HostPCに搭載された hwModuleV2または hwMod-

uleVL

( 2) BridgeVSの hwModuleVS-Sub2ボード

( 3) BridgeVSの hwModuleVS-PEボード

( 4) Vocaliseの hwModuleVS-Sub2ボード

( 5) Vocaliseの hwModuleVS-PEボード

1枚から 4枚の hwModuleVSで構成された FPGAアレイをコ

ンフィグレーションするのにかかる時間を表 1 に示す.なお,

回路データをソフトウェアから hwModuleV2の LocalMemory

に格納するまでの時間は含めていない.Vocalise内の Sub2ボー

ドは直列に接続されているため,基盤の枚数と同じコンフィグ

レーションプロセスを行う必要が有る.そのため,Sub2ボー

ド 1 枚につきコンフィグレーションに約 0.05[s] を要する.対

して,Vocalise内の PEボードはすべて Sub2ボードを経由し

て並列に行われるため,コンフィグレーションにかかる時間は

hwModuleVSの枚数によらず約 0.2[s]である.

表 1 FPGA アレイの回路書き込み時間 [s]

��� 1 枚 2 枚 3 枚 4 枚

Sub Board 0.051 0.101 0.152 0.203

PE Board 0.201 0.201 0.201 0.202

Vocaliseを構成する回路を図 7に示す.各モジュールの役割

を説明する.

図 7 Vocalise を構成する回路.

VCBusMaster

VC busを駆動するためのマスターモジュールである.FIB規

則に則って他のボードと通信を行うことが出来る.

VCBusSlave

VC busのスレーブモジュールで,アドレスが自分宛だと判断

すると自動的に駆動する.PEボードにおいては SDRAMコン

トローラに接続されている.

HNIO

HostPCのソフトウェアから hwModuleV2 や PEボードを制

御するためのモジュールである.

ConfigurationController

hwModuleV2 から Vocalise 内の hwModuleVS のコンフィグ

レーションを行うためのモジュールである.

VCus

VC busMaster,VC busSlave,HNIO,ConfigurationCon-

trollerを管理するためのモジュールである.

ConfigurationSwitch

PE ボードの選択書き込みを行うモジュールである.第 3. 5. 2

節に詳細を記す.

3. 5. 2 選択書き込み

Vocalise内のすべての PEボードにはアドレスが割り振られ

ているため,特定のPEボードの回路のみを書き換えることが可

能である.Sub2ボードに書き込まれる回路は図 7の左下 Sub2

Boardと書かれている部分である.Host側(BridegeVS側)

から送られてきたデータは「FDATA IOBUFController」に

バッファされる.隣接するVSへのデータは「BDATA IOBUF-

Controller」へ送られ,PEボードへのデータは「SIMDATA

IOBUFController」へ送られる.特定の PEボードの回路を書

き換える役割は図 7 の「ConfigurationSwitch」モジュールが

行っている.「ConfigurationSwitch」は図 8のような仕様となっ

ている.このモジュールの動作を説明する.

図 8 ConfigurationSwitch の仕様.

( 1) まず,Vocalise内の全ての PEボードに同じ回路を書

き込む.その際,PEボードのアドレスを Sub2ボード側に送

信する.

( 2) Hostから FRAME信号をアサートすると同時に,書

き込みを行いたい PEボードのアドレスを送信する.

( 3) Hostはアドレスを送信し終わったと同時に FRAME

信号をディアサートする.

( 4) Host により送られて来た PE ボードのアドレスを

Sub2ボードが確認する.送られてきた PEボードのアドレス

は隣の Sub2ボードへ送信する.

( 5) 自分の PE ボードのアドレスが送られてくれば,PE

ボードに SelectMAP 信号の PROG B 信号を送信して PE

ボードのコンフィグレーションを開始する.自分の PEボード

のアドレスがなければ,PEボードには何も信号を送らない.

( 6) 隣の Sub2ボードも,終端の Sub2ボードまで(4)と

(5)の動作を繰り返す.

— 4 —

Page 5: The Circuit Con guration method of 3D FPGA-Array System ... · PDF filecalise システムを構築し,プラットフォームとしての利用を考 えた.また,Vocalise

3. 6 動 作 試 験

3. 6. 1 VC busの動作

HostPCに hwModuleV2を搭載し,hwModuleVSを 1次元

に 3枚に並べたものを接続し,VCBbusの動作試験を行った.

図 5,図 6の流れに沿って動作を行うことで,データのバース

ト転送・読み出しを確認した.また,選択回路書き込みも図 8

の動作を行うことで,3枚あるボードの内,任意の PEボード

を書き込むことが確認出来た.

3. 6. 2 hwModuleVLによる動作

HostPCに hwModuleVLを搭載して hwModuleVS1枚の回

路の書き込みを行った.hwModuleVL を用いた回路書き込み

回路の概要を図 9に示す.

図 10 に hwModuleVL を用いた回路書き込みの動作(図 9

内の“ SelectMapOutput”モジュールの動作)を示す.書き込

み方法は SelectMAP方式に則っており,hwModuleV2を用い

た場合とほぼ同じである.異なる点は回路データを HostPCの

MainMemoryから“CMPortControllerforSpConfig”モジュー

ルまで渡す際にDMA(Direct Memory Access)を利用した点

である.

以下に動作の流れを示す.なお,今回は書き込み対象の Sub2

ボード及び PEボードを 1枚であるので,CSI B(Chip Select

Input)信号は常にゼロである.RDWR B(Read Write)信

号に関してもライト動作のみであるので常にゼロである.

Power Up

hwModuleVSの電源を入れる.

Device Initialization

書き込みを行う Sub2ボードに PROG B信号をアサートする

と,Sub2ボードから INIT B 信号がアサートされる.

Configuration Load

INIT Bがディアサートされた後,回路データを 8[bit]で Sub2

ボード側に送信する.

Start Up

回路データを送信して 8クロック以上経過後 Sub2ボードから

書き込み完了の DONE信号がアサートされる.

Sub2ボードの書き込みが完了したら,同様に PEボードの

書き込みを行った.その結果正常に書き込みを行うことが出

来た.また,DMA を用いることで書き込みに要する時間が

hwModuleV2の場合と比べて短縮することが出来た.

4. ロ ボット

4. 1 システム構成

我々の研究室で並行して開発しているロボットは画像認識,

音声認識,音声合成,アクチュエータ制御などの研究の土台と

なるものである.ロボットの全体図を図 11に示す.システム

構成は図 12のようになっている.ロボットに統合するサブシ

ステムは以下のようになっている [4].

移動制御

 設定された目標座標に向かうように左右の車輪に接続された

ステッピングモータを制御する.また,ロボットは内部に座標

系を持っており,自分の現在座標や目標座標の情報を持つ.ロ

図 9 hwModuleVL を用いた回路書き込み回路の概要.

図 10 hwModuleVL を用いた回路書き込み動作.

図 11 ロボット全体図.

ボットに搭載されたロータリーエンコーダからのパルスにより

移動量を計算し,自己位置推定を行うことでフィードバック制

御を行う.

アーム制御

 アーム部分に搭載されたサーボモータを指定された目標角度

までになめらかに動かすための制御パルスを生成する.アーム

の先端には加速度センサが取り付けられており,センサが過大

な値を出力した際,回避行動を取るようにしている.

画像距離計測

 画像距離測定はステレオマッチングを用いてカメラ画像から

周囲の物体までの位置を検出する.左右のカメラ画像から中か

らテンプレート画像との差分絶対値和が小さくなる位置を探し,

その視差を元に物体までの動作を計測する.

画像特徴学習・認識

— 5 —

Page 6: The Circuit Con guration method of 3D FPGA-Array System ... · PDF filecalise システムを構築し,プラットフォームとしての利用を考 えた.また,Vocalise

中央制御

ユーザー

アプリケーション

(ロボット)

実装機能

(四肢制御)

専用回路

インタフェース

(移動制御)

専用回路

(移動制御

回路)

専用回路

インタフェース

(アーム制御)

専用回路

(アーム制御

回路)

ソフトウェア

処理

(条件分岐)

実装機能

(画像認識)

専用回路

インタフェース

専用回路

ソフトウェア

処理

実装機能

(音声認識)

専用回路

インタフェース

専用回路

実装機能

(音声合成)

専用回路

インタフェース

専用回路

● ● ●

実装機能

(行動計画)

SATソルバ

インタフェース

ハードウェア

SATソルバ

SSD ネットワーク

データベース

アクセス

サブシステム

swObject hardwarehwObject

言葉

図 12 ロボットのシステム構成.

 ロボットに搭載されたカメラから画像を取得し,Wavelet変

換を行う.画像認識は多重解像度解析とテンプレートマッチン

グを組み合わせ行う.低解像度画像のマッチングにより探索領

域の絞り込みを行い,高解像度画像では絞りこまれた領域に対

してマッチングを行うことで演算量の削減を行う.画像特徴学

習はWavelet変換による多重解像度解析と,自己組織化マップ

を組み合わせた多重解像度木構造型 SOMを用いる.低解像度

から高解像度化するに従い,段階的に特長領域を絞り込んで学

習を行う.

音声認識

 音声認識は蝸牛内のリンパ液による音の減衰をWavelet変換

により模擬し,多重解像度化を並列に行うことで人間のような

聴覚処理を実時間で行う.このシステムは母音認識回路と子音

認識回路に分けて,その認識結果を合わせることで音素を特定

する.

音声合成

 音声合成はシフトレジスタ列により模擬された声帯・声道・

口腔に,空気の疎密波を模擬したパルス波を流し,音声合成を

シミュレートする.シフトレジスタを用いることで回路内で仮

想的に自然現象を再現し,物理的な値を元にすることでパラ

メータ調整を行うことが出来ると考えられる.

ネットワーク通信

 ロボットがネットワークにアクセスできるように TCP/IPス

タックを用いる.我々の研究室ではフルスペックの TCP/IPス

タックをハードウェアで実現している.

動画像処理

 ロボットが取得する映像をエンコード・デコード等の動画像

処理を行い,通信量を削減する.我々の研究室ではハードウェ

アによる動画像コーデックを用いることで実時間での動画像転

送を可能にしている.

4. 2 Vocaliseへのサブシステム搭載

現在ロボットの運動制御のサブシステムがロボットに搭載さ

れた hwModuleV2に実装されている.今後画像認識や音声認

識,音声合成機能を拡張するにあたって,FPGA回路リソース

の数が hwModuleV2のみでは足りなくなる.

画像特徴学習では木構造型 SOMの階層を増やすことで分類

の精度を向上することが出来るが,その分回路規模を消費し

てしまう.hwModuleV2に搭載されている FPGAデバイスの

XC3S4000では 2層までの木構造型 SOMしか実装できないが

Vocaliseに木構造型 SOMを構築することで階層数の制限を無

くすことが出来る.そのため,階層処理を大規模に行うことが

出来る.

Vocaliseを用いることでロボットにサブシステムの統合を行

うことが出来ると考えられる.

5. む す び

本研究では,スケーラブルな Reconfigurable HPC である,

Vocaliseの通信・制御システム提案した.Vocaliseの通信方式

である VC busは Vocalise内のどの hwModuleVS間でも通信

を行うことができる.更に Vocalise内の任意の PEボードを選

択して回路のコンフィグレーションを行うことができるため,

他の PEボードが演算中でも回路を書き換えて利用することが

出来る.

これらの特長を用いることでロボットのサブシステム統合に

利用することが出来る.

今後の課題としては以下のものが挙げられる.

( 1) 遠距離 hwModuleVS間の通信を行えるようにする.

( 2) 実際に Vocalise内に画像認識回路を構成し多階層での

処理を行う.

( 3) Vocaliseを 2× 3× 2と小規模に構成しロボットのサ

ブシステムを構築する.

文 献

[1] 関根優年,佐藤季花,工藤健慈,田向権,“ hw/sw 複合体,”第

21 回回路とシステムワークショップ講演論文集,pp.207-212,

April 2008.

[2] 飯島浩晃,佐藤一輝,関根優年,“FPGAアレイを用いたスケー

ラブルな Reconfigurable HPC,”電子情報通信学会技術研究報

告,Vol.107,No.418,pp.13-18,Jan 2008.

[3] 佐藤一輝,黎江,高橋健一,田向権,小林祐一,関根優年,“FPGA

アレイに実装するポアソン方程式とCIP法演算回路の性能評価,”

電子情報通信学会技術研究報告,Vol.109,No.396,pp.19-24,

Jan 2010.

[4] 鈴木拓也,山崎優作,田向権,関根優年,“移動型ロボットに統合

する知能処理回路,”電子情報通信学会技術研究報告,Vol.111,

No.399,Jan 2012.

[5] 集祐介,黎江,久保泰正,田向権,関根優年,“ 3次元 FPGAア

レイ HPC システム Vocalise の性能評価,”電子情報通信学会

技術研究報告,Vol.112,No.321,pp.201-206,Nov 2012.

— 6 —