Cortex-M3/M0と高性能アナログ回路がワンチップに合体。サイプレスのPSoC®が切り開く新たな可能性。

サイプレスの「PSoC」(Programmable System-on-Chip:ピーソック)はA/Dコンバータやオペアンプなどさまざまなアナログ機能を集積したユニークなマイコンチップである。アナログの諸機能や相互の接続をプログラマブルできるのが特徴で、センサーのフロントエンドなどをはじめさまざまな用途に使われている。そこで本誌では、PSoCを個人的にも活用する横河電機の加藤氏とトライポッドワークス畑氏をお招きして、PSoCの利用方法、特徴、可能性などについて伺った。

メインイメージ

偶然の再会からPSoC仲間へ

サイプレス全:サイプレスでPSoC製品を担当している全と申します。本日は、PSoCの魅力や応用についてお話を伺おうと、以前からPSoCを使われているお二人にお越しいただきました。まずは簡単に自己紹介をしていただけますか?

横河電機加藤:横河電機から参りました加藤と申します。社内ではインダストリアル・オートメーション部門に所属しプラントやコンビナートなどの自動化に必要な要素技術を研究しています。

トライポッド畑:セキュリティ製品開発と研究試作エンジニアリングを行っているトライポッドワークスの畑と申します。本社は仙台ですが、私は主に札幌市内の研究拠点で活動をしています。実は加藤君とは幼なじみで、小学生の頃に電子工作をしていた仲だったんですけど、三十数年ほど付き合いがなかったところ偶然にもFacebookで再会しまして、私たちは誕生日が一緒なんでお互いにすぐに判りました。

横河電機加藤:畑君が札幌と私が東京ですから、普通に考えたら接点はないわけで、本当に偶然でしたね。

サイプレス全:それはすごい話ですね。さて、それぞれPSoCに出会ったきっかけを教えてください。

横河電機加藤:「PSoC 5」(現「PSoC 5LP」)が出たばかりの2012年に上司からこういうデバイスがあると教えてもらって、すぐに評価キットを手に入れてみたんです。実際にいじってみるとなかなか面白くて、すぐにサイプレスに連絡を取って全さんにお会いしたのが始まりです。そのとき、全さんからPSoCにはUDB(ユニバーサル・デジタル・ブロック)としてビットスライスが24個も入っているという話を伺ったのがとても衝撃的で、このデバイスは只者じゃないぞと思って、本格的に触り始めたのはそれからですね。

トライポッド畑:私はある高校生に教えられたのがきっかけでした。ボランティアで「ロボカップ」という国際的なロボット大会のお手伝いをしていて、エントリーされたロボットのインスペクションをしていたところ、あるロボットに見慣れないデバイスが使われていたので作った少年に説明させたんですね。そうしたらこれはサイプレスの「PSoC 1」というデバイスで、赤外線センサーから入ってくるアナログ信号のノイズを除去して、そのあとデジタルに変換して云々、と講釈を垂れるわけです。

サイプレス全:高校生がですか?

トライポッド畑:当時は高校一年生で、今は北海道大学の大学生になっています。実はロボットが好きな学生や少年たちの間ではアナログ処理の中心はPSoCに移っていて、使い方などをブログに書いたりそれを真似して作ったりと、どんどん伝搬しているんです。

全:将来はぜひうちに入社してもらって(笑)。

ソフト屋でも扱える手軽さが魅力

トライポッド畑:それでPSoCを調べてみたらこれは良さそうだということに気付いて、うちの開発に使ってみたらどうだろうっていうところからスタートしたんです。ただ、トライポッドワークスはソフトウェア中心の会社でハードウェアはあまり詳しくないものですから、加藤君に頼んで友人としての立場でPSoCの使い方をいろいろと教えてもらっています。

サイプレス全:ソフトエンジニアの皆さんの反応はいかがですか?

トライポッド畑:最初のうちは、内部回路のコンフィギュレーションが何回でも書き換えられるとか、プログラマブルなのにワイヤースピードで動くとか、そういった概念がなかなかイメージできなかったようですが、わずか半日ほど加藤君にレクチャーしてもらっただけでみんなの頭の中身ががらっと変わった印象がありました。

横河電機加藤:畑君の会社のソフト屋さんを対象にレクチャーをしてくれないかと頼まれて、であれば「HELLO WORLD」などの文字列を表示させるのが判りやすいだろうと考え、CQ出版社の「ARM PSoCで作るMyスペシャル・マイコン(基板付き体験編)」というムックに付いてくる「PSoC 5LP」の基板に、秋葉原で売っている小型の有機EL基板を組み合わせた簡単な評価環境を用意したんです。有機ELに文字を表示する簡単なコンポーネント(ライブラリ)とAPIを作って持っていったら、皆さん結構喜んでくれて。

トライポッド畑:SPIもI2Cも知らなかったソフト屋が有機EL基板との配線をハンダ付けしてその日に作れちゃうわけですよ。こういう領域って、今まではハード屋さんが全部お膳立てしてやってくれて、たとえばA/Dコンバータから出てきた数値を受け入れてからがソフト屋の仕事だったのが、A/Dコンバータの数値を作るところにまで踏み込めると。しかもPSoCの開発ツールである「PSoC Creator™」って回路とプログラムとが両方同時に見える。ソフト屋といっても理系上がりなら学生時代に電子回路は一通り勉強していますから、加藤君にとっかかりを教えてもらったあとは、古い教科書を引っ張り出してきたりインターネットで検索しながら、自分たちでPSoCをいじり始めるわけです。

サイプレス全:私たちが拡販するときのお手本になりそうな話です。

横河電機加藤:畑君の話には重要なポイントが隠されていると思います。世の中の物理的な現象はセンサーを使ってまずはアナログで拾いますから、デジタルで処理するにはアナログからデジタルに変換するところをなんとかしないといけないんですが、そこはソフト屋さんからみると「ラスト・ワンマイル」とでも言うような手の出しようがないところだったんです。ところがPSoCを使うと、ソフト屋さんができる範囲がぐっと広がるんです。

本格的なアナログブロックを内蔵

サイプレス全:ここでPSoCの機能をおさらいしておきたいのですが、PSoCの「P」はプログラマブルを表しています。アナログ機能を内蔵したマイコンデバイスって他社からもいろいろ出ていて、たとえばアンプのゲインを変えられますとか、A/Dコンバータのスピードを設定できますっていうのがほとんどなんですけど、本当に重要なのはアナログ回路のシグナルチェーンを自由に組めることで、そこがPSoCの大きな特長だと考えています。それに他社のアナログって、こう言っては失礼なんですけど、性能的には「なんちゃってアナログ」なんですね。

横河電機加藤:PSoCのアナログ部分の機能や性能は当然気になりました。当初はアナログ回路の接続を自由に変えられるなんて性能がいいわけなかろうと思ってたんですが、試してみるとなかなか優れていて、とても「なんちゃって」レベルではなく、以前に半導体設計に携わったこともある立場からするとこれは見事にやられたなと。A/Dコンバータひとつとっても分解能が20ビットあるなど他社のとは明らかに違っていて、実性能を詳細に評価したりもしましたし、「トランジスタ技術」(CQ出版社)の2013年7月号にはPSoCのA/Dコンバータの解説記事を寄稿したりもしています。

サイプレス全:加藤さんは計測制御を担当されていることもあって本当にアナログにお詳しいので、米国本社に「こんなユーザーがいるよ」と紹介したこともありましたね。

横河電機加藤:PSoC部門のトップであるJohn Weilさんや技術の「グル」のKendall Castor-Perryさんらとお会いする機会をいただきましたが、皆さん技術レベルがとても高くて、何か課題を指摘するとその場ですぐに解決しようとするなど、オタクという言い方は適切ではないかもしれませんが私より上だなと(笑)。とくにKendallさんからはPSoCのデジタルフィルタの素晴らしさを教えてもらいました。そうした開発陣の情熱が入っているからなのかもしれませんが、PSoCって噛めば噛むほど旨みが出てくるスルメみたいなデバイスで(笑)、「攻略したぞ!」という感触がなかなか得られないんです。じゃあそんなに優れているんだったら、仮にうちの競合メーカーがPSoCを採用したら同じ性能の製品が出てくるんじゃないか、って社内でよく指摘されるんですけど、技術ってそんな安直ではなくて、使いこなしには相当のエネルギーと経験を必要とします。そこにメーカーとしての技術力の差が出るのかなと。

サイプレス全:畑さんからみてPSoCのアナログ機能はいかがですか?

トライポッド畑:うちはソフトエンジニアが中心なので、アナログを扱うような機器を試作しようとなると、どうしてもひとつのアナログに対して一個のマイコンを割り当ててしまいがちだったんです。個別に基板を起こさないといけないのでコストが掛かっていました。でもPSoCだと、複数のセンサーを接続してもひとつのPSoCで簡単に処理できることが判っているので、とても楽ですね。また、世の中で知られている定番のフィルタを実装するのもとても簡単で、失効している古い特許を調べてみると画像認識フィルタなどはいいものがたくさんあるんですよ。処理が重いとかアルゴリズムが洗練されていないといった理由があって誰からも見向きもされなかった古い技術も、今のPSoCならそれなりに動くのでとても助かっています。

Cortex-M3/M0の搭載で可能性を拡大

サイプレス全:PSoCにはいくつかのサブファミリがありまして、サイプレス独自の8ビットコアを搭載した「PSoC 1」、16ビットの8051互換コアを搭載した「PSoC 3」、そしてARM® Cortex-M3コアを搭載した「PSoC 5LP」とCortex-M0コアを搭載した「PSoC 4」とでシリーズが構成されています。このうち Cortexコアを搭載した「PSoC 5LP」と「PSoC 4」はお客様からの評価も高いのですが、プロセッサコアについてはどのように捉えていらっしゃいますか?

横河電機加藤:PSoCにARMコアを入れたのはすばらしい判断だったと思います。ARM7の時代からいろいろと検討してきましたけど、ARMの性能って一回味を占めたらもうほかには戻れないんですよね。それに計測をやっている立場でいうと、32ビットアーキテクチャというのは、データ表現として数値を高速かつ正確に扱うにはとても重要なポイントなんです。

トライポッド畑:私もARMは正解だと思います。携帯電話なんかをやってきた組み込みソフトエンジニアってARMはマイコンだとは思っていなくて、プラットフォームだと思ってるんです。なので、PSoCは実はARMマイコンなんだよとうちのエンジニアに教えると、みんな、え?って意外な顔をしますよ。

サイプレス全:こうしたさまざまな魅力があるPSoCはシリーズ全体の累計出荷個数は10億個を超えているのですが、まだまだ広く浸透するまでには至っていないように感じています。

横河電機加藤:FPGAも昔はそうでしたよね。うちの会社でもFPGAが普及するまでしばらくかかりました。今みたいに民生機器にも搭載されるなんて当初は誰も思っていませんでしたけど、それと同じじゃないでしょうか。ただ、学会の研究会なんかを覗くと、自分たちで開発したアルゴリズムをPSoCを使って実証しました、といった発表をする学生も増えてきていて、アカデミー領域に浸透しつつあるのは確かです。

サイプレス全:あとはアプリケーションですね。「PSoC 1」はタッチコントローラとして広く採用されましたが、ARM Cortex-M3/M0を搭載した「PSoC 5LP」や「PSoC 4」では、たとえばモーター制御分野などを狙いたいなと考えています。そのほか、TOPPERSがすでに動いていますのでμITRON系のユーザーへの紹介も増やしていきたいなと。

トライポッド畑:ある大学とロボットの研究開発もやっていますが、二足歩行のロボットってサーボのターンアラウンドタイムが50msを超えると姿勢が安定せずに震え出すんです。理想的には全部の制御を10msでターンアラウンドしたいんだけども、なかなか低コストでは実現できない。なのでロボットの身長をある程度以上は高くできないんですね。PSoCで高速なモーター制御が低コストで実現できるのであれば、ロボット用途に限らず、マーケットは結構大きいのではないかと思いますね。

PSoCが実現する新たな可能性に期待

サイプレス全:最後に、PSoCやサイプレスに対する期待や要望があればぜひ聞かせてください。

トライポッド畑:ソフトエンジニアがPSoCを知る機会や試す機会を増やして欲しいと思います。それと、ソフトウェアがインテリジェント化していく中で、クラウドやビッグデータのようにデータを集めて集合知を得ようとするとPSoCにもリッチサイドとの接点が必要になりますから、ぜひ対応していただきたいなと。単純な話、Ethernetが入るだけでも大喜びです。

サイプレス全:実は今でも外付けPHYを接続すると10BASEは構成できるので、こうやればできるという情報をきちんとまとめてみたいと思います。

横河電機加藤:私がPSoCに惚れ込んだのは、作りたいものが作れて、しかも楽しいという、かつての「ラジオ少年」を思い起こさせる部分があったからで、これで遊んでみると若いエンジニアのマインドも変わってくるんじゃないかという期待感がありますね。また、リコンフィギュアブルな特性を生かして製品に新しい機能を追加することもできますから、これからの時代に求められる製品像を実現するポテンシャルがあるわけで、その意味でもPSoCには期待しています。

サイプレス全:今日は貴重かつ面白いお話をありがとうございました。お二人の今後のご活躍と両社の発展を願うとともに、PSoCが少しでもお役に立てれば嬉しく思います。