RECONF Jan.25, 2012

午前中は農工大セッションだな… 関根先生の学生さんがメイン。
[WEBアプリに用いるFPGA用IP:TCP/IP回路]
ICMP と、TCP の MSS とか window scaling とか timestamp を実装。
TCP stack はSPARTAN-3 で 4598 slices か。
CardBus の FPGA Card に載ってるとかかっこいい。
TCP再整理 (到着パケットの並べ替えってこと、だそうだ) をやっているのはうちだけ、とのこと。質問したらバッファはけっこう柔軟に制御している模様。なんかすげー
アプリケーションが FPGA 上の TCP スタックを使っているときに、CPU からも TCP スタックへアクセスすることができる仕組み。
TCP offload は普通 10G とかそういう速度がターゲットだけど、この研究の野望は何かありますか? → 高速性の追求より「大規模な論理回路でなにができるか」ということに興味を持っている、とのこと。
デモ動画を延々とみせながらしゃべる、というのが斬新でよいね。これはちゃんと練習している証拠。
[シフトレジスタを用いた音声合成回路における声道形状の決定]
波形レベルでの音声合成は不自然だったりいろいろ。
発声器官を論理回路で模擬したらもっとうまくいくはず。
声道形状をモデル化し、そのパラメータをレジスタに入れて・・・
シフトレジスタで進行波と後退波を動かす。この際にパルス密度で空気密度を表現することで1ビット幅で済ませている。進行波レジスタと後退波レジスタの途中にあちこち演算器が入っている仕組み。
X 線写真に基づいて作った。
演算は
– パルス分割=進行波と後退波を透過波と反射波に分割
– パルス合成=透過波と反射波の演算
– パルス反転=固定端だったり自由端だったり
いまのところあんまりいい結果になっていない。
– 高周波成分が多い
– 第2フォルマントの影響がない。母音が違うとスペクトルの谷があるのだが…
とのこと。周波数依存でエネルギーが減衰するような仕組みがないからだと考えている。FFT/IFFT でこの処理を追加したところだいぶ改善した。
FFT/IFFT の結果から共鳴とかそういう回路を追加していきたい。つまり、X 線写真だけじゃモデル化には不十分だったということだそうです。
使っているのは XC3S4000.
[子音・母音認識システムにおける音声前処理回路]
波形がフレーム内である基準値を何度通過したかをカウントする (ゼロクロス処理)。母音は定常波形、子音は非定常なので、これで判別できる模様。ピッチ周期は話者によって違うので、メリン変換 (Mellin Transform) というのをつかって正規化する。
このあたりをごりごりやってから Haar-wavelet やってテンプレートマッチング。
前処理を HW でやって、最後はソフトウェアで処理。
ゼロクロスとか、binary tree で合計の計算やるより FIR みたいに直列でやったほうがいいんじゃない? (Virtex のドキュメントとかに書いてあるよね) → 検討してないとのこと (ゲートたくさん使ってもいいや、と思ったので。あとレイテンシ命なので)
[同期シフトデータ転送による2次元アレイ型トラッキングハードウェア]
同期シフト伝送面白いな。
2次元アレイで他のモジュールのデータを参照するときに、全体で同期して同じ方向にデータを転送することで、配線や競合を削減することができる。直接伝送するのとちがって、途中で中継してもらわないといけないオーバーヘッドはある。
これで孤立点除去とかやるの。かっけー。
類似度判定とかは難しそうだなあ。その場合はヒストグラムをやりとりするのか。
ボトルネックになっているのは block module のなかの control processor とのこと。
[階層型画像特徴の学習機能を有する画像認識システム]
木構造型テンプレートを作ることによって顔画像を分類したり。
顔画像全領域でのテンプレートだと大変なので、特徴領域と非特徴領域を自動的に。
SOM か・・・
SOM は4層。それぞれ違う解像度で入れる。だんだん高解像度になる。
[Low area and high speed logarithmic converter for DSP applications]
No shown.
[分割MTMDDs for CFマシンについて]
MTMDDは多値決定グラフ的なもの。
遅くはなるけど節点数をがっつり節約できるので、分割しないやつでは表現できないものを表現できるようになる。
(ちょっと呼ばれて会場の外に出てました。ごめんなさい…)
多分岐命令と output 命令だけで動く。
MCNC89 benchmark で評価しているがもうちょっと実用的な方向にもっていきたい。合成ツールとか。
[優先度付きSMTプロセッサにおけるリアルタイム処理用IPC制御機構]
組み込みでも性能はほしいけど、SMT とか使うとリアルタイム性の保証がむずかしい。
– WCET 解析 (worst case execution time)
– IPC 制御 (instruction per clock を制御する)
Responsive multithreaded processor: 最大8スレッド、優先度つき
ソフトウェアで目標 IPC を設定して、制御周期ごとに調整する。
命令フェッチの制御だけだとリソース不足には対応できないから、中の優先度の制御もしないと。そこはハードウェアで。
優先度はひとつ上のレベルのものから借りることができる。
制御サイクルは 10k clock cycle 。
[ITRON仕様OSのマルチスレッドプロセッサ拡張]
[ 多電源可変パイプラインルータにおける電源ドメインサイズの解析 ]
DVFS は難しいよね。せいぜい隣接するルータを整数倍の周波数にするとか・・・(いや位相が・・・)
同じ周波数でパイプライン段数を変える。2 cycle mode と 3 cycle mode. でも、あんまりしょっちゅう変えるとかえって悪くなる。
NAS Parallel Benchmark.
性能は 2.1%悪化。電力は10%改善。面積は 14% だったかな?
ルータ単位ではなくて、入力チャネルごとに電源電圧をかえるとかをかんがえる。でもあんまり粒度こまかくすると大変じゃないかなー。
電圧下げたら wormhole から virtual cut through とかにする必要があるかもね、みたいなコメントも。
[インピーダンス・リコンフィギュレーションによる超高速信号の信号品質改善の提案]
10GHz だと波長は 1.5cm なので、LSI の中でもシグナルインテグリティでが問題になるぜ。
伝送路をいくつもの線幅の区間に分けて、うまく反射させてつたえる。SPICE にかけて GA で選択淘汰。
実機評価。1GHz でやるのは難しいので scale up 法。250MHz とか 500MHz で評価する。
10GS/sec の 2GHz オシロ。アクティブプローブ。
もう50Ω配線じゃだめなのか。
4GHz くらいまでいけそう。
コネクタではインダクタンスが入るので、そういうのも試してみる。いける。
クロック信号だけじゃなくて、インパルスを入れたときの応答をみることで、ランダム信号でもちゃんと eye が開く。
表皮効果で高周波成分が抜けて波形が丸くなるのを防ぐにはふつう pre-emphasis とか equalizer が必要。STL は反射波を重ね合わせてやるのでなかなかむずかしいが、反射端をつけたしてやることでかなりきれいな波形に。
すげえ・・・
SIP とかの短い伝送路でも使えますか? (山崎先生) → 実験用の基板はスケールアップ実験のために長くなっているので、基本的には短くてもいけるはず。波長の問題もあるけど、ミリ単位でも使えそうな結果が出ている。
動作周波数がアプリケーションで変わるような場合はどうですか? (関根先生) → トランジスタをつけて、キャパシタを on/off することでできる、ということはシミュレーションで試している。
一本の線を設計するのに数時間かかるのが問題だけど、まあ、だいじょうぶか。GA で2000世代くらい。
[トラフィック解析によるオンチップルータのバンド幅制御]
組み込みとかではヘテロ NoC も出てくるよね→通信量の偏りも起きるよね。
FPGA の long line みたいなのを入れるとかいう研究もある。
で、通信量が多いところはビット幅を増やすことにした。
異なるビット幅でも通信できたり VC のあたりをちょっといじったりしてルータを作ったよ。
太いところから細いところにいくのは気をつけないとデータ壊す。
Virtual cut through なのはなぜ? → wormhole だとビット幅がかわるところで詰まっちゃう可能性が高いっす。
static な解析ができるのなら VC の数を変えてどうこう、というの、できるんじゃないかと思いますので頑張ってください的なコメント。
[リコンフィギャラブルプロセッサSTPを用いた省電力ネットワークトポロジの高速近似解法]
トラフィックの集約によりルータを落とせるようにする。問題はネットワーク性能を維持しつつ最小の消費電力になるようなトポロジを見つける方法。
80ノード200リンクで20sec が目標だけど、いまのところ2分くらいかかってる。
STP (というか DRP) なつかしい・・・
トポロジは BRITE でつくった (waxman model).
ノード数が小さいと Intel のほうが早いけど、あんまり大きいとコンテキスト数がたりない。
VLANはりかえるのも大変だから20secあればあんまり早すぎてもしかたがなく、まあ充分、ということなのか。
[マルチメディア処理に向けたリコンフィギュラブルプロセッサの実現と評価]
reconfigurable processor で浮動小数点演算をやりたい。いいね。
16×16 のALU アレイが載っている。
正規化と丸めは、ちょっと大変だけど ALU アレイでやっつけることにした。
ALU ができる演算の種類を増やしたり、スイッチのところをちょっといじって、ビット分割 (sign, exponent, fraction) をやりやすくしてある。これにより、1ブロックあたりのconfiguration bitは43から73に増加。
で、こんどは書き込みが大変なので、複数同時書き込みしたりとか。なかなかいいですね。
FLOPS どんくらいになりそうですかね? (はまださん) → まだあんまりはっきりしていません。
可変論理部にはレジスタとかFFは? (わたなべさん@岡山) → ありますあります
[動的再構成可能なSU(3)スピン回路を用いたロボット制御中枢の設計]
ソフトウェアだけでなくセンサやアクチュエータを制御するハードウェアも更新しないと。
SU(3) というのは群論がベースだそうな。閉じたベクトル空間での回転を表す群として、リー群というのがある。状態機械も閉じた状態空間のなかで状態遷移するから似てる…と。
それでこれを使って状態遷移図が成長するようなのをやりましょうと。
なんかすげえな。
[移動型ロボットに統合する知能処理回路]
全体のいろいろ。音声合成とか顔認識はここにつながってたのか!