スパイス  組み込み制御装置の受注製作

組み込み開発で使用するPC
平成27年 1月 9日

 開発がらみのブログばかりでは、肩の力が抜けないので組み込み開発に使用するPCの話題など、開発環境についても書いてみます。
こちらはあまり堅苦しい話にならず、むしろ個人の趣味や好みが大きく反映します。
いろんな考え方があるでしょうから、こんなやり方もある程度に参考になればという程度です。

 組み込み開発用PC(その1)
 組み込み開発用のPCでは、その業務内容によって必要なPCの性能が大きく変わってきます。
・FPGAの論理開発なら金に糸目をつけることなく、ともかく高性能のCPU・SSD・HDDが必要でしょう。そして大量のメモリを実装します。
・Cプログラムの開発なら特にCPUの性能は必要ないです。統合開発環境を使うとしても今時の最低限のPC性能で事足ります。
 (数人規模のプロジェクトが前提です。何百万行といった巨大プロジェクトは別の話)
・プリント基板の設計ではCADを使用しますが、現在のCPU性能ならCPU内蔵のGPU機能で事足ります。これも一般的なPCで十分です。
(216-06-12追記)
 CADに関しては、自動配置や自動配線に関して注意が必要です。この文書を書いた当時の状況は自動配置機能は実装されているものの使い物になるレベルではなく、配置を検討する上での参考程度といった使い方が主でした。
 自動配線に関しては、もう少しマシで配線を全て接続することは出来るのですが、一筆書きや配線の優先度を人間の希望通りに実行するのは困難です。どちらも訓練された職人の方が作業品質で勝ります。
 これらの機能はマルチタスクには対応しておらず、複数のCPUコアがあっても処理時間には影響しない状況でした。
その後、主要なCAD製品がバージョンアップを繰り返しているようです。これらの機能をマルチタスク化したソフトが出てくるのも、それ程先の話ではないでしょう。そうなるとCPUコアの数は重要になってきます。
 CADでの自動配線は製品にもよりますが、多くの時間が必要です。小規模な基板でも20分以上の配線時間がかかるものが多くあります。そのようなCAD製品が使えるなら出来るだけ多くのCPUコアを用意したいものです。
(追記ここまで)

 あと、開発用とは違いますが、経理や請求書の印刷といった事務用途でもPCを使用します。これは特に性能が問題になることはないでしょう。

 1.CPU性能の選択
 このようにしてみるとFPGAの開発を行わないなら市販のPC性能で事足りてしまいます。
実際、私が使用しているPCのCPUはCeleron G1610という型式で、同じCPUソケットで使用できるCPUの中では最低クラスです。
それでも開発業務で性能不足を感じたことはありません。
まあ、速いに越したことはないのですが無駄に速くても人間が遅いので同じ結果になります。

 2. 拡張スロットの選択
 CPU性能は問題ないとすると、次にはハードウェアに関してです。やはりPCIスロットは必須です。
これは各種のポートを維持するために必要となります。特にシリアルポートとパラレルポートは古くから電気関連の仕事をしてきた人には簡単には捨てられないのです。
 古い時代のソフトウェアには、ライセンス違反を防ぐ目的でプリンタポートに”ドングル”と呼ばれる認証装置を取り付けるものがありました。
今でも当時のソフトを使用する環境を維持する必要があれば、必然的にプリンタポートが必要です。
 他にはUSBポートを使ってプリンタポートを追加する方法もありますが、当時のソフトウェアはプリンタポートのアドレスを直接決め打ちしてアクセスしていますので、USBポート経由のプリンタポートでは正しく動作しません。
 同じことがシリアルポートに関してもあります。こちらは数は多くはないのですが、それでもUSB経由のシリアルポートでは動作しないソフトウェアがあります。

 現在ならPICeスロットに接続できるプリンタポートやシリアルポートもあります。
が、従来のPCIスロットに実装するこれらのポートと機能的に互換性があることの確認は必要です。
でないとUSBポートによるポート追加でおきたように、特定のソフトウェアIF経由でのみ互換性のある基板が紛れ込んでしまいます。
私は可能な限りPCIスロットのあるマザーボードを選択しています。

 3. チップセットの選択
 これは先のPCIスロットに関係するのですが、PCのマザーボードの構成要素であるチップセットからPCIのサポートが外されつつあります。インテル社のチップセットでは、7XシリーズまではチップセットでPCIがサポートされているそうです。
つまり現在販売されている8Xシリーズや9XシリーズではPCIスロットが実装されていても、それは基板内部でブリッジチップと呼ばれるバス変換ICを使った実装です。互換性が気になるなら7Xシリーズのマザーボートとそれに対応したCPUを確保しておいたほうが安全です。


 このようにしてみると組み込み開発用のPCは旧来のプリンタポートやシリアルポートといったIFを維持するのは困難になりつつあります。
古い環境を捨てることが出来るなら、それがベストですが、それが出来ないなら出来るだけ今のうちに古いPC環境を保管する必要がありそうです。

目次へ  前へ  次へ