チップのデザイン ~ HDL



2019年11月6日

チップのデザイン

最近、久しぶりにチップの設計の仕事を請け負いました。
チップの設計と言うのは、実際の電気製品の中に入っている物で、FPGA/CPLDなどと呼ばれています。いろいろな回路の制御に使います。

昔はこうしたチップの設計はAND/OR/NOTなどの部品を回路図の様に繋いで設計していましたが、今ではHDL(Hardware Description Language=ハードウエア記述言語)で設計するのが主流です。よく使われるのはVerilog HDLやVHDLなどが主流の言語です。

見た目はソフトウエアのような感じがしますが、これはハードウエアの設計になります。

意外に高単価の仕事!

ソフトウエアの設計と違って、論理設計の知識がないと難しい部分があります。
しかし、仕事を受ける人が少ないのか、仕事がある場合は比較的単価の高い仕事です。

ハードウエアの開発の一部になるので、なかなか外注するケースは少ないと思います。
しかし、FPGAの高性能化や価格の低下もあって、ちょっとした機器でもFPGA・CPLDが使われるようになったため、仕事の需要は比較的多いエリアです。

求められる仕様(要求)を基にまず機能を実現する設計をします。
その後でシミュレーションをして機能の確認と問題点を見つけて修正します。
最後はFPGA/CPLDに設計データを割り当てて、タイミングの検証をすると完成です。

比較的長期間の仕事になるのと、一定の経験とスキルが必要なので報酬も高めです!

開発に必要なツールは?

FPGA/CPLDの設計に必要なツールは、ソフトウエアの開発に似ています。
設計データの入力はプログラムのコーディングの様にエディターを使います。
その後は、コーディングのエラーを修正して、シミュレーションをします。
最近はオンラインのツールがあって、HDLのコンパイルからシミュレーションも簡単な物ならば無料のツールでも出来るようになっています。少し複雑な設計の場合は有料のツールを購入した方が便利ですが、無料のツールでも簡単なFPGA/CPLDならば十分設計が可能です。

オンラインのシミュレータの例です!

設計の論理的な問題が修正出来たら、FPGA/CPLDのベンダーがサポートするツール(フィッターと呼ばれています)を使って、部品にプログラム出来るデータに変換します。
この際に、タイミング解析をして最終確認をします。

プログラムよりは少し難しい!

論理設計は基本さえ理解できれば難しいものではありませんが、プログラムよりはわかりにくい部分も多いですし、独学が少し難しいエリアでもあります。

興味がある方はシリコンバレースーパーウエアでは、論理設計のやり方も提供しています。
お問い合わせはこちら!

コメント

このブログの人気の投稿

ユーザーインターフェースの設計

足し算以外もできるようにする

改良版足し算プログラム