組込みコンピュータarシリーズの機能を拡張する 「高速メモリ … · red...
TRANSCRIPT
PFU Tech. Rev., 26, 1,pp.13-18 (09,2015) 13
組込みコンピュータARシリーズの機能を拡張する「高速メモリ共有カード」
"High Speed Data Sharing Board" for Expanding the Functions of the Embedded Computer AR Series
草野雅文 *Masafumi Kusano
彦野厚志 **Atsushi Hikono
朝倉辰伸 ***Tatsunobu Asakura
* ProDeSグループ エンベデッドプロダクト事業部 第三技術部** PFUテクノコンサル株式会社 技術センター 技術開発プロジェクト*** ProDeSグループ エンベデッドプロダクト事業部 コアプロダクト開発部
「高速メモリ共有カード」は,組込みコンピュータ AR シリーズに搭載し,ケーブル接続することで,複数の
AR シリーズ装置の主記憶(メモリ)データの転送や共有を行うオプションカードである.PFU がこれまで培っ
てきたハードウェア,ソフトウェア開発技術を活かした完全自社設計により,高信頼性と量産安定を実現する AR
シリーズオプションの第一弾製品である.
The "high speed data sharing board" is an optional card that is installed in the embedded
computer AR series and is connected with cables to transfer and share main memory data
of multiple AR series units. This is one of the first optional products for the AR series that
achieves high reliability and enables stable mass production using a design that was developed
completely in-house based on PFU's knowledge of hardware and software development
acquired over many years.
1 まえがきPFU は組込みコンピュータとして AR シリーズを幅
広い製品ラインナップで展開してきた参1).組込みコン
ピュータは通常の PC とは異なり,高信頼性や長期供給
などが要求される.また,半導体製造装置や工作機械な
どの分野では,システム全体の高機能化や高性能化に伴
い,これらを制御する組込みコンピュータも高い性能が
求められている.PFU はこれらのさらなる機能拡張や
信頼性確保の要求に応えるため,AR シリーズ専用のオ
プションカードを開発した.
2 開発の背景と狙い2.1 開発の背景
組込みコンピュータで構成されるシステムに対し,顧
客が抱えている課題は様々である.
1) システム性能を上げたいが,LAN などの一般的
なネットワークは CPU 使用率が高く,通信負荷が
システム性能向上を妨げる要因となる場合がある.
2) 組込みシステムの制御では,時間的な制約がある
処理を実行するためにリアルタイム OS注1)を使用
したコンピュータや,アプリケーションの動作環境
として Windows®注2)を使用したコンピュータが混
在しており,OS に依存しないソリューションが必
要となる.
3) 複数のコンピュータでシステム構成する場合,
万一,そのコンピュータのいずれかに問題が発生し
ても,継続稼働と早期復旧を実現したい.
4) 拡張機能を実現するためのオプションカードは,
一般的に長期供給の仕組みがなく,継続供給への懸
注1) 時間的な制約がある処理を実行するための機能や特性を備えたオペレーティングシステム.組込みシステムの制御用としてよく用いられる.
注2) Windows は,米国 Microsoft Corporation の,米国,日本お よびその他の国における登録商標または商標である.
14
組込みコンピュータARシリーズの機能を拡張する「高速メモリ共有カード」
PFU Tech. Rev., 26, 1, (09,2015)
念がある.具体的には,生産終息時のストックや代
替品評価の対応が負担となる.
そこで,これらの課題を解決するため,「高速メモリ
共有カード」を開発することとした.
2.2 狙い顧客が抱える課題を解決するため,以下の四つを狙い
とした.
(1) 通信における CPU 負荷を軽減する
専用ハードウェア技術と独自方式により,CPU に負
荷をかけずにデータの高速転送や共有を実現すること
で,顧客システムの性能向上を図ることができる.
(2) システム構築を容易にする
AR シリーズが対応している各種 OS 用のドライバを
準備し,異種 OS 間でのデータの転送や共有をすばや
く容易に実現することを可能とする.これにより顧客は
採用 OS を意識することなく,システム構築を行うこ
とができる.
(3) 信頼性を向上させる
万一,故障が発生した場合には,故障箇所を使用せず
に動作を続けることで,システムとしての継続稼働を可
能とする.また,自社設計により問題発生時の迅速な原
因究明を可能とし,AR シリーズへの搭載評価を徹底的
に行うことで装置としての可用性,信頼性を確保する.
(4) 供給性を確保する
自社製造により,AR シリーズと同期した製品ライフ
サイクルマネジメント注3)を可能とすることで,生産終
息に対する顧客の負担を軽減する.
3 製品の概要と特長3.1 概要「高速メモリ共有カード」は,AR シリーズ専用のオ
プションカードである.複数のARシリーズのメモリ間
で,CPU 軽負荷での高速データ転送及びデータ共有が
可能である.
AR シリーズの PCI Express スロットに搭載し,二
つの通信ポートを使って複数の AR シリーズ間を mini
SAS ケーブルで接続することにより,3 種類の接続構
成が可能である.また,各種 OS に対応し,自由な接
続形態を特長としており,AR シリーズの用途をさらに
注3) 製品ライフサイクルマネジメントとは,製品開発において,設計,製造,出荷後の対応など,すべての工程で製品を総合的に管理する方法.
拡大する製品である.
ハードウェアとソフトウェア(ドライバ)は自社設計,
自社製造であるため,カスタム要件への対応や問題発生
時の早期解決が可能な上,AR シリーズのライフサイク
ルに合わせた供給も可能である.
図-1に本製品の外観,表-1に仕様概要を示す.
3.2 特長(1) データの高速転送及び共有
データを高速に転送し共有する方式は次のとおりであ
る.まず,ドライバが獲得したメインメモリ内の領域を
共有メモリ領域とする.そして,送信側からデータの書
き込みを行い,その後,ドライバが提供する API(ア
プリケーションプログラミングインターフェース)注4)か
ら共有(Sync)を指示することで,受信側のメインメ
モリにデータ転送を行う.このようにシンプルなオペ
レーションで高速にメインメモリ間のデータ共有を行う
ことができる.
データ転送を行う中で,パケットの生成やエラー検
出など転送の基本部分を専用ハードウェアで実現してい
る.このことにより,通信における CPU 負荷を低減し
ている.
(2) 自由な接続形態
「高速メモリ共有カード」は二つの通信ポートを持
注4) あるプログラム(ソフトウェア)が保持する機能やデータを,外部のプログラムから呼び出して利用するための規約のこと.
◆図 -1 製品外観◆
(Fig.1-Productoutlook)
PFU Tech. Rev., 26, 1, (09,2015) 15
組込みコンピュータARシリーズの機能を拡張する「高速メモリ共有カード」
ち,1 対 1 接続,装置を数珠つなぎに接続するデイジー
チェーン接続,装置を環状に接続するリング接続の三つ
の中から用途に合わせた接続形態を選択することが可能
である.また,接続形態を自動認識することと,それぞ
れの構成で最大 16 台まで接続することを可能としてい
る.
図-2に示すデイジーチェーン接続や,図-3に示す
リング接続を使用すれば,一般的なネットワークに使用
されるスイッチの機能を専用ハードウェアが代行するた
め,高価なスイッチなどを追加接続する必要がなく,シ
ステム全体として,よりシンプルで安価に構成すること
が可能となる.
(3) 高信頼性
ケーブル異常時には,自動的に転送ルートを変更する
ことにより継続動作を可能とし,信頼性を高めている.
図-4のように,リング接続で構成していた場合に,
ある経路でケーブルや通信ポートの異常が発生すると,
その異常を検知し,別のルートからの転送に切り替える.
これにより,システムダウンを起こすことなく,データ
転送を継続することが可能となる.
転送データの信頼性を確保するため,誤り検出方式の
ひとつである巡回冗長検査(CRC)によりデータチェッ
◆表 -1 「高速メモリ共有カード」仕様概要◆
機能 内容
ホストインターフェース PCIExpressx4
最大伝送速度 10Gbps※1
接続形態 1対1,デイジーチェーン,リング
最大接続台数 16
ケーブル インターフェース MiniSAS
ケーブル長 最大10m
対応機種 AR2100モデル100J(インテル ®※2Atom™※2プロセッサE3845搭載機種のみ),AR4400モデル100H/200H,AR8300モデル300J/310J,AR8300モデル320H
対応OS※3 Windows7ProfessionalSP132bit 版 /64bit 版,WindowsEmbeddedStandard7SP132bit 版 /64bit 版,
Windows8.1Pro32bit 版 /64bit 版,WindowsEmbedded8Standard32bit版 /64bit 版,
WindowsServer®※42008R264bit 版,WindowsServer201264bit 版,
RedHat※5EnterpriseLinux6.532bit 版 /64bit 版,RedHatEnterpriseLinux764bit 版,Ubuntu14.04LTS32bit 版 /64bit 版
※1 理論上の値であり,実環境での速度ではない.※2 インテル,インテルAtomは,アメリカ合衆国およびその他の国における IntelCorporation の商標である.※3 対応機種により異なる.ドライバ及びサンプルコードを提供可能.※4 WindowsServer は,米国MicrosoftCorporation の,米国およびその他の国における登録商標または商標である.※5 RedHat は,RedHat,Inc. の米国およびその他の国における登録商標若しくは商標である.
◆図 -2 デイジーチェーン接続◆
(Fig.2-Daisychainconnection)
高速メモリ共有カード
CPU
メモリ
CPU
メモリ
CPU
メモリ
◆図 -3 リング接続◆
(Fig.3-Ringconnection)
CPU
メモリ
CPU
メモリ
CPU
メモリ
CPU
メモリ
高速メモリ共有カード
16
組込みコンピュータARシリーズの機能を拡張する「高速メモリ共有カード」
PFU Tech. Rev., 26, 1, (09,2015)
クを行っている.エラー発生時には,ハードウェアが誤
りを検出するとソフトウェアを介さずに自動的にデータ
の再送処理を行っている.
(4) 拡張性
ドライバは完全自社設計のため,AR シリーズが対応
する各種 OS のドライバを準備する.そのため,顧客
は従来採用していた OS を使用することで,アプリケー
ション資産の有効活用が可能になる.また,以下のよう
な顧客のカスタム要求への対応も可能である.
1) ドライバへの機能追加や仕様変更
2) 未サポート OS への移植
4 製品開発のポイント「高速メモリ共有カード」を実現する上で専用ハード
ウェア及びドライバを自社開発することにより,様々な
課題について対応を行っている.
4.1 CPU負荷を軽減する高速通信の実現高速通信を実現するためには,PCI Express やケー
ブルの高速伝送といったハードウェアやインターフェー
スの高速化が必要となる.一方,TCP/IP などの一般
的な通信手順でみられるように,通信を高速化すると,
ソフトウェア階層(図 -5参照)での処理が増加し,
CPU への負荷が高くなる.結果として高速通信を利用
してシステムを構築した場合,通信に多くの CPU 資源
を使い,本来実行したい処理に使用できる CPU 資源が
減ってしまうという問題が発生する.
「高速メモリ共有カード」ではこの問題を解決するた
めに,特に CPU に負荷がかかるデータの転送処理に対
してできるだけハードウェアが主体となって処理するこ
とで問題解決を行っている.
TCP/IP のようにソフトウェア階層を複数跨いで転
送している方式においては,メインメモリ内でソフト
ウェアがデータを複数回コピーすることが必要となるた
め,CPU に負荷をかけるとともに,メモリ帯域を使用
してしまう.「高速メモリ共有カード」は,図-6のよ
うにドライバ処理でメインメモリから直接専用ハード
ウェアを介してケーブルまでデータを転送する方式を
とっている.この方式によりメインメモリ内でのコピー
回数を削減している.
また,専用ハードウェア内にアドレス変換機能を持っ
ており,OS が管理するページ単位ごとに,メモリ内で
ばらばらに配置されている転送データを,1 回の転送指
示で転送可能である.転送指示は仮想アドレスを指定し,
アドレス変換機能を使うことにより物理アドレスに変換
して転送を行う.アドレス変換機能は,専用ハードウェ
アのメモリ内に変換テーブルを持ち,読み出しについて
は先読み機能を付けることにより待ち時間を無くし,連
続で高速な転送を行うことを可能とする.その結果,転
送処理におけるソフトウェアの介在の回数及び負荷を削
減している.
このような転送方式により CPU 負荷を軽減し,高速
通信を実現している.
4.2 効率的なデータ転送方式「高速メモリ共有カード」においては,構成としてデ
イジーチェーン接続やリング接続をとることが可能であ
る.これらの構成は,隣り合う装置への転送を繰り返し
て行うことですべての装置にデータを転送する方式のた
め,自装置以外へ転送されるデータも通過していくこと
となり,不要なデータ転送に時間を費やすことになる.
この構成において,効率的にデータ転送する手段として,
すべての装置に同時にデータ転送するブロードキャスト
◆図 -4 転送ルート変更による継続動作◆
(Fig.4-Continuousoperationbyswitchingthe
transmissionroute)
◆図 -5 TCP/IP階層モデル◆
(Fig.5-TCP/IPhierarchicalmodel)
ケーブル異常時も継続動作可能
異常
担当ソフトウェア階層
アプリケーションアプリケーション層
オペレーティングシステム
ドライバハードウェア階層
トランスポート層ソフトウェア階層
インターネット層
ネットワークインターフェース層
PFU Tech. Rev., 26, 1, (09,2015) 17
組込みコンピュータARシリーズの機能を拡張する「高速メモリ共有カード」
と,特定の装置を指定してデータ転送するユニキャスト
の双方の転送の機能を持たせることで対応した.
複数装置とデータを共有する場合には,ブロードキャ
スト転送によって,高速にデータ転送を行うことができ
る.一方で,特定装置だけとデータを共有する場合には,
ユニキャスト転送を行うことができるので,システム全
体として伝送路を効率的に使う転送方法を選択すること
が可能である.
4.3 信頼性向上への対応「高速メモリ共有カード」間はケーブルで接続するた
め,システムを構成する場合に接続台数が増えると,そ
れに比例してケーブルの切断や抜けなどの異常が発生す
るおそれが増える.このような異常が発生した場合でも,
システム全体としては通信や運用を続けることが求めら
れる.また,異常が発生した場合に,いかに早く異常を
検知して,復旧までの時間を短くするかも課題となる.
この問題を解決する方法として,「高速メモリ共有カー
ド」ではリング接続でのシステム構築がある.リング接
続の構成では,ある装置から別の装置にデータ転送を行
う場合,右回りと左回りの二つの経路が存在し,通常時
はどちらか片方の経路を使用して転送を行っている.各
装置の専用ハードウェアでは,通信路のリンク状態,転
送時のデータの誤り検出,転送先へのデータ到達応答確
認など複数の手段により,伝送が正常に行われているか
を確認し,早期に異常を検知できるようにしている.こ
の状態でケーブル異常などが発生した場合は,ケーブル
の両端の「高速メモリ共有カード」が異常を検知し,カー
ド内で通信を折り返して,逆回りで通信先にデータ転送
を行い,通信を継続させる(図-7参照).
また,この機能を専用ハードウェアにより実現するこ
とで,自動的に瞬時の切り替えを行うことが可能となり,
上位のアプリケーション層においては,タイムラグなし
に通信を継続して行える.
5 活用事例半導体製造や工業機械の分野での活用事例を以下に示
す.
5.1 データ分散処理の高速転送とメモリ共有(1) パイプライン型
半導体製造の分野では,製造過程のデータを分析する
ため,異なる OS(Linux と Windows など)により
処理を行う場合がある.本製品を搭載したARシリーズ
を使用することで,複数のデータ処理を分散して実行す
るシステムの構築を容易に行うことが可能になる.
例えば,図-8のように半導体製造工程を監視するカ
メラからの大量画像データや,温度センサーからの定期
データを Linux アプリケーションで受け取り,処理 A
を実行した後に,Windows アプリケーションで処理 B,
処理 C を連続実行する場合,CPU への通信負荷を軽減
するため,各装置のデータ処理は高速化され,システム
全体の性能向上が可能になる.
◆図 -6 データ転送イメージ◆
(Fig.6-Datatransferoverview)
◆図 -7 異常検知時の転送切り替え◆
(Fig.7-Transmissionswitchingwhenanerroris
detected)
メモリ
高速メモリ共有カードケーブル接続
高速メモリ共有カード
ARシリーズ
アプリケーション
ドライバ
専用ハードウェア
メモリ
ARシリーズ
アプリケーション
ドライバ
専用ハードウェア
通常時の転送
ケーブル異常時も継続動作可能
異常
18
組込みコンピュータARシリーズの機能を拡張する「高速メモリ共有カード」
PFU Tech. Rev., 26, 1, (09,2015)
(2) パラレル型
半導体製造の分野では,ラインを流れる製造物をリア
ルタイムで撮影し,その画像データをもとに製造物の良
否判定を行っていくことがある.ここでは,大量データ
の高速処理が必要になる.本製品を搭載したARシリー
ズを使用することで,データを複数装置のメモリで共有
し,各装置で別々の処理を同時実行するシステムの構築
が可能になる.
例えば,図-9のようにカメラからの大量画像データ
を Linux アプリケーションで受け取り,各装置のメモ
リでデータを共有し,Windows アプリケーションで画
像データに対して処理 A,処理 B,処理 C と別々の処
理を同時実行する場合,CPU 軽負荷でのデータ共有に
より,各処理が高速化され,システム全体の性能向上が
可能になる.
5.2 制御情報の配信工業機械の分野では,複数装置の制御を同時に行う場
合がある.本製品を搭載したARシリーズを使用するこ
とで,複数処理を高速に同時実行するシステム構築が可
能になる.
例えば,図-10のようにコントローラーから各装置
に制御情報を転送し,ロボットアーム駆動やメカ制御を
行う場合,特定装置だけとデータを共有するユニキャス
ト転送を行うことにより,各装置の CPU は通信負荷が
軽減され,本来実行したいアーム駆動やメカ制御の処理
に集中できるため,システム性能の向上が可能になる.
また,各装置の性能最適化により,システムのコスト削
減や小型化も可能となる.
6 むすび「高速メモリ共有カード」は,AR シリーズの機能を
拡張するオプションであり,PFU のハードウェア技術
とソフトウェア技術によりデータの高速転送及びメモリ
共有と,高信頼性の確保を実現した.今後も組込み市場
のニーズに応えるため,オプションカード製品の拡充を
図っていく.
参考文献参1) 組込みコンピュータ ホームページ
http://www.pfu.fujitsu.com/prodes/product/ar/
◆図 -8 パイプライン型分散処理◆
(Fig.8-Pipelinedecentralizedprocessing)
◆図 -9 パラレル型分散処理◆
(Fig.9-Paralleldecentralizedprocessing)
◆図 -10 制御情報の配信◆
(Fig.10-Controlinformationdistribution)
カメラ
センサー
定期データ
画像データ
処理ALinux
処理BWindows
処理CWindows
カメラ
画像データ
画像データを各装置が共有
Linux
処理AWindows
○○○
処理BWindows
□□□
処理CWindows
△△△
Linux
制御情報を転送
処理PC1 メカ制御同期
データ送出
データ送出処理PC2
処理PC3
10110001…
10110001…
アーム駆動